Penny-код - забытое и переизобретенное #хемоинформатика #дескриптор #представлениемолекул #химическийпоиск Рич Аподака написал статью о старом-добром способе создания кода, свойственного отдельным атомам - коды Penny. Штуку изобрели аж в 1965 году и умудрились почти полностью забыть (как минимум только Рич о них и вспомнил). Чтобы вы понимали контекст, 1965 - это год, когда Морган предложил алгоритм (Моргана) для канонизации порядка атомов 10.1021/c160017a018, а Суссенгут - что поиск по структуре это изоморфизм графа (!) 10.1021/c160016a007. 8 годами ранее Рэй и Кирш рассказали о первой электронной базе данных, которая имеет структурный и подструктурный поиск и предложили современный алгоритм последнего 10.1126/science.126.3278.814. То есть компьютеры только начали использоваться. Задачу, которую решали с помощью Penny code, простая - создать уникальный идентификатор каждого атома. Дальше, если мы объединим их для всех атомов молекулы, у нас появится идентификатор молекулы, а его можно использовать для поиска по структуре: создаем такой код для запроса и ищем молекулу с идентичным кодом - скорее всего, это она и есть. Для подструктурного поиска их тоже можно использовать - создаем такие коды для запроса (а также используем декомпозицию кодов) и выкидываем молекулы, которые не имеют таких кодов - они нам точно не подходят. Забавно, что получается, Penny code забыли настолько, что переизобрели несколько раз: очень похожую идею использует ECFP фингерпринты и Signature фингерпринты системы DARC. Ни в одной из этих работ не ссылаются на Penny code. В общем почитайте саму статью Рича. Она очень хорошая и понятная даже новичку. Зато в ней рассказывается хорошо и про историю и про современное состояние дел в 2D структурном поиске молекул. https://depth-first.com/articles/2022/01/12/penny-codes/