Улучшить рецепт сложного блюда — дело тонкое, особенно если пробовать можно лишь несколько вариантов в день. Менять ингредиенты наугад рискованно: уберёшь соль или разрыхлитель — и основа испорчена. Похожая история с белками: случайные мутации часто ломают жизненно важные части, а каждая проверка в лаборатории стоит времени и денег.
Новый подход под названием SILO действует иначе. Он разбивает каждое изменение на два шага: сначала выбирает позицию в цепочке белка, а потом — какую аминокислоту туда поставить. Это напоминает ремонт двигателя: механик не меняет все детали подряд, а ищет конкретный узел, который барахлит, и подбирает к нему подходящую запчасть. При этом SILO использует хитрый приём — «аланиновый тест»: временно заменяет позицию на простейший кирпичик (аланин), чтобы понять, насколько она важна для работы белка. Так алгоритм не трогает критически важные места.
Во время поиска SILO накапливает опыт. Каждый раунд он генерирует несколько вариантов, тестирует их в компьютерной модели и запоминает самые удачные. Затем он учится подражать этим успешным ходам, не пытаясь предсказать точную «оценку» каждого изменения — ведь такие оценки часто шумят и сбивают с толку. Этот подход похож на обучение повара: вместо того чтобы высчитывать идеальную температуру духовки по формулам, он просто повторяет движения шеф-повара, когда тот готовит лучший вариант блюда.
Итог прост: чтобы создать идеальный белок, не нужно перебирать всё подряд. Достаточно помнить свои лучшие шаги и аккуратно обходить хрупкие места — как опытный мастер, который знает свой инструмент и не портит заготовку.
Аланиновый тест, используемый в SILO, придумали ещё в 1980-х: биологи заменяли аминокислоты на аланин одну за другой, чтобы найти «горячие точки», важные для работы белка. Это как проверять, какая кнопка в лифте сломана, нажимая их по очереди.