igorchem Опубликовано 4 Марта, 2021 в 10:42 Поделиться Опубликовано 4 Марта, 2021 в 10:42 Добрый день, посоветуйте, пожалуйста, сабж. Условия таковы: есть две молекулы, которые надо сравнить, для каждой имеется насчитанных несколько конформеров, причем число конформеров и точность их расчетов могут сильно варьироваться. По задаче предполагается, что одна молекула является как-бы составной частью другой, например радикалом. А может и не сильно повезти, то есть радикал с замещенным чем-то. Грубо говоря в сравнении может попасть что-то типа фенилбензоата C6H5 - COO - C6H5, с толуолом и надо найти, что у фенилбензоата есть C6H5-С группа, которая сильно похожа на такую же у толуола (толуол без трех водородов у метила). Поиск нужен не по графам, а именно по геометрии, то есть если в одной молекуле есть какая-то хиральная группа, а в другой - есть его стериоизомер - то это различные вещества, хотя графы могут быть довольно схожими или одинаковыми. На графов алгоритмов полно и многие мне известны, но они-то как раз мне не сильно интересны. Нужна именно нечеткая логика, "примерно равно", "почти точно равно", "почти точно не равно", и т.д. и я планирую напускать огромный набор радикалов на сравнение с искомой молекулой, и хочу найти тот радикал, что наиболее похож. Иногда у меня нет связей, есть только координаты атомов. В принципе связи построить не сильно сложно, но, так как координаты заданы не точно, то граф связей может получиться очень дурацким. Сам вижу решение - искать трансформацию каждого атома первой молекулы во вторую, сравнивать эти трансформации, и, если найдено много очень похожих трансформаций, то ее применить к первой молекуле, и сравнить поатомно на сколько все совпало. Я его попробовал - пока если конформеров много, считается довольно медленно, хотя более-менее надежно. Скажите, пожалуйста, как такие алгоритмы правильно называются если они есть в природе, где о них можно почитать и что Вы бы могли бы посоветовать в качестве альтернативы? Спасибо! Ссылка на комментарий
Trepetsky Опубликовано 4 Марта, 2021 в 12:37 Поделиться Опубликовано 4 Марта, 2021 в 12:37 1 час назад, igorchem сказал: Добрый день, посоветуйте, пожалуйста, сабж. Условия таковы: есть две молекулы, которые надо сравнить, для каждой имеется насчитанных несколько конформеров, причем число конформеров и точность их расчетов могут сильно варьироваться. По задаче предполагается, что одна молекула является как-бы составной частью другой, например радикалом. А может и не сильно повезти, то есть радикал с замещенным чем-то. Грубо говоря в сравнении может попасть что-то типа фенилбензоата C6H5 - COO - C6H5, с толуолом и надо найти, что у фенилбензоата есть C6H5-С группа, которая сильно похожа на такую же у толуола (толуол без трех водородов у метила). Поиск нужен не по графам, а именно по геометрии, то есть если в одной молекуле есть какая-то хиральная группа, а в другой - есть его стериоизомер - то это различные вещества, хотя графы могут быть довольно схожими или одинаковыми. На графов алгоритмов полно и многие мне известны, но они-то как раз мне не сильно интересны. Нужна именно нечеткая логика, "примерно равно", "почти точно равно", "почти точно не равно", и т.д. и я планирую напускать огромный набор радикалов на сравнение с искомой молекулой, и хочу найти тот радикал, что наиболее похож. Иногда у меня нет связей, есть только координаты атомов. В принципе связи построить не сильно сложно, но, так как координаты заданы не точно, то граф связей может получиться очень дурацким. Сам вижу решение - искать трансформацию каждого атома первой молекулы во вторую, сравнивать эти трансформации, и, если найдено много очень похожих трансформаций, то ее применить к первой молекуле, и сравнить поатомно на сколько все совпало. Я его попробовал - пока если конформеров много, считается довольно медленно, хотя более-менее надежно. Скажите, пожалуйста, как такие алгоритмы правильно называются если они есть в природе, где о них можно почитать и что Вы бы могли бы посоветовать в качестве альтернативы? Спасибо! Ну я, в таком случае, делал бы классификацию нейронкой, а для входного слоя переводил бы декартовы координаты в какую-нибудь другую инвариантную систему отсчёта. Там на выходном слое и циферку будет насколько похожи молекула с радикалом. 1 Ссылка на комментарий
igorchem Опубликовано 4 Марта, 2021 в 12:45 Автор Поделиться Опубликовано 4 Марта, 2021 в 12:45 Только что, Trepetsky сказал: Ну я, в таком случае, делал бы классификацию нейронкой, а для входного слоя переводил бы декартовы координаты в какую-нибудь другую инвариантную систему отсчёта. Там на выходном слое и циферку будет насколько похожи молекула с радикалом. Да, полностью с Вами согласен, что-то именно такое и хочется сделать. Пока думаю о том, чтобы как-то описать каждое окружение атомов каким-то сферически инвариантным классификатором, но как-то быстро в голову еще не пришло каким. Если сделать что-то типа тип атома помноженный на леннарда-джонса, то может сработать, но, с другой стороны, как описать тип атома. Еще была идея - воткнуть как классификатор - какую-то интегральную характеристику электронной плотности вероятности, сдвинутой на каждый атом. Ссылка на комментарий
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти