Форум программистов, компьютерный форум, киберфорум
Programma_Boinc
Войти
Регистрация
Восстановить пароль
Рейтинг: 1.00. Голосов: 5.

О заданиях к 22-й мишени в проекте SiDock@home.

Запись от Programma_Boinc размещена 16.04.2023 в 07:58

О заданиях к 22-й мишени в проекте SiDock@home.

О заданиях к 22-й мишени. Длительность их обработки самая большая из тех, что были до сих пор. На Ryzen 3900X большая часть обрабатывается за время от 16 до 36 часов, значительно меньшая - менее, чем за 16 часов или наоборот - больше 36. Самое длинное из тех, что считалось у меня на компьютере - 46 часов. В связи с этим срок ожидания результатов был увеличен с 6 до 14 дней. Для BOINC-проектов - далеко не рекорд, но и больше среднего, конечно.

Причин несколько.

Во-первых - большой размер области в которой нужно моделировать взаимодействие атомов и молекул - 7887 A^3;
Во-вторых, (исключительно моё предположение) - какие-то дополнительные свойства самой области;
В-третьих - мы пробуем увеличить качество результатов. Здесь, думаю, надо рассказать, что подробнее.

В библиотеке лигандов, проверяемой на связывание с мишенью - около миллиарда соединений, энергия связывания которых с ней различается в разы даже в рамках среднестатистического произвольно взятого задания. Для небольшой выборки, которую мы использовали для оценки времени выполнения и объёма результатов, она различалась где-то в 4 - 5 раз. По библиотеке в целом различие будет ещё больше. Поэтому, ни отправлять на сервер результаты по всем лигандам из задания, ни тем более - передавать их все в лабораторию - нет смысла. Значит, из всего набора результатов моделирования надо оставлять только те, от которых может быть какая-то польза, чтобы уже из них научная группа могла бы отобрать наиболее интересные.
Но моделирование взаимодействия каждого лиганда с мишенью - процесс вероятностный. Вычислительный модуль (в том числе с использованием генератора случайных чисел) пытается найти положение лиганда относительно мишени, при котором его энергия связи будет наиболее отрицательной (то есть, молекулярные связи будут как можно сильнее).

Самый простой вариант - взять и каждый лиганд попробовать "подоткнуть" к мишени N раз и те лиганды, энергия связи которых будет ниже некоего порога - отправлять на сервер. Но это не лучший вариант, потому что из миллиарда лигандов, на выходе, должно получиться их относительно небольшое число (сотые или тысячные доли процента, а то и меньше), которые, однако, надо ещё и про ранжировать между собой - кто лучше, а кто хуже, а, чтобы провести такое ранжирование уже между "хорошими молекулами" моделирование взаимодействия для каждой из них надо провести много раз (лучше, если несколько десятков).

А если каждый лиганд обсчитывать, например, 30 или 50 раз, то обработка данных всей библиотеки может потребовать несколько лет. Задать же число N небольшим (например, 5 раз) - тоже не очень хороший вариант, так как мы можем пропустить какой-то "хороший лиганд", которому просто не повезло в эти первые 5 раз. Да и тот самый "пик" лигандов, которые в итоге пойдут в лабораторию, будет в некоторой степени случайным из-за слишком малого числа попыток, не давших достаточно точных данных по энергии связи. Но при этом хочется ещё и результат получать не очень большой, и чтобы "не подходящие" соединения в него не попали, а "перспективные" - не были отсеяны.

Поэтому делается "лесенка фильтров". Для каждого лиганда выполнятся некоторое обязательное число попыток моделирования реакции с мишенью. Затем, на основании наименьшей полученной энергии связи (ну, она же отрицательная, чем меньше - тем сильнее!) лиганд либо отбрасывается, если не проходит самый "большой фильтр", либо моделирование продолжается, после чего идёт сравнение с более "низким фильтром". Для наиболее сильно связывающихся молекул ограничивается уже просто число "прогонов".

Подобная лестница из фильтров позволяет довольно быстро отбросить около 40% - 50% лигандов из задания, которые либо ну очень уж невезучие (теоретически такое может быть, но вероятность этого мала, так как первый фильтр значительно слабее итогового), либо они просто не походят к данной мишени. После, ещё двумя ступеньками отфильтровываются те, что не попадут в файл результата, а вот те, что попадут - обрабатываются ещё, моделирование их взаимодействия ограничено уже максимально допустимым числом "прогонов".

И, наконец, чтобы уменьшить вероятность того, что мы что-то пропустим из-за невезучести, или сбоя машины или чего-то ещё, каждый кусочек библиотеки обрабатывается в двух разных workunit-ах. В итоге, мы имеем очень большую вычислительную задачу, на решение которой при нынешней мощности проекта уйдёт года полтора - два. Или даже больше. Так что если у кого есть мощные (да и вообще любые) CPU-молотилки, то айда к нам, заданий хватит надолго.
Миниатюры
Нажмите на изображение для увеличения
Название: diffusion_protein_gradient_2.jpg
Просмотров: 142
Размер:	62.9 Кб
ID:	8025  
Размещено в Без категории
Показов 1129 Комментарии 2
Всего комментариев 2
Комментарии
  1. Старый комментарий
    Аватар для Hretgir
    Алгоритмы засекречены, или считается профитным делать беспредметные публикации? Выкладывайте алгоритмы или агитируйте о своих вычислениях там где и положено заниматься агитацией. Сказки о белом бычке нужны только самому белому бычку, для его повышения ЧСВ.
    Запись от Hretgir размещена 16.04.2023 в 08:07 Hretgir вне форума
    Обновил(-а) Hretgir 16.04.2023 в 10:20
  2. Старый комментарий
    Аватар для Hretgir
    Единственным аргументов в Вашу пользу могло-бы быть то, что Вы действуете в интересах свободной науки, но Ваша наука закрыта, так как не раскрыты алгоритмы. Поэтому - тупо лохотрон, поиск дураков за чей счёт можно поюзать вычислительные ресурсы.
    Запись от Hretgir размещена 16.04.2023 в 16:35 Hretgir вне форума
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru