Эволюция. Классические идеи в свете новых открытий. Александр Марков
случайного поиска (случайных блужданий) найти в необозримой «белковой вселенной» одну конкретную точку, соответствующую оптимальному выполнению белком данной функции, совершенно нереально. К счастью, такие оптимумы, как правило, – не точки, а обширные области. А главное, поиск оптимума в ходе эволюции осуществляется вовсе не методом случайных блужданий. Он идет методом направленного отбора. Направленность возникает благодаря тому, что случайные отклонения в «неправильную» сторону, ухудшающие рабочие качества белка, отбраковываются, отменяются и забываются, тогда как случайные отклонения в «правильную» сторону запоминаются и сохраняются.
Если исходная последовательность уже находится у подножия некоей возвышенности на ландшафте приспособленности – там, где уже есть хотя бы небольшой наклон (это значит, что белок хотя бы в минимальной степени, но уже выполняет какую-то функцию), отбор загоняет последовательность на вершину горы с поразительной эффективностью. Это можно показать с помощью компьютерной программы, впервые описанной Ричардом Докинзом в книге «Слепой часовщик». Пусть в роли исходной последовательности выступает произвольный набор букв, например, такой:
weiusdhsdklj dfg dfgghkjhjh qnlsvtnxuvsf qw kjhgj jfdjkfflmc
Программа размножит эту последовательность в тысяче экземпляров, внося в нее случайные мутации с заданной частотой. Например, пусть каждая буква в каждой копии с вероятностью 0,05 мутирует, т. е. заменяется другой случайной буквой. В результате каждая двадцатая (в среднем!) буква у каждого потомка будет отличаться от родительской. Зададим оптимум, к которому нужно стремиться, – некую осмысленную фразу. Попробуем сначала прийти к оптимуму без помощи отбора, методом случайных блужданий. Для этого из 1000 потомков выберем одного наугад и снова размножим в 1000 экземпляров с мутациями. И еще раз, и еще.
Вот что у нас получилось. Справа указаны номер поколения и степень отличия от целевой последовательности, т. е. удаленность от оптимума:
weiusdhsdklj efg dfgghkjhjh qnlsvtnxuvsfuqt kjhgj jfdjkfflmc 1 1101
weiusdhshklj efg dfgghkchjh qnlsvtxxuvmfuqt kjhgj jfdjkfflmc 2 1102
weiusdhshqxj efg dfgghkchjh qnudvtxxuvnfuqt kjhgj jfdjkfflmc 3 1073
weiusdhshqxj efg dfgghkchjh pnudvnxxuvnfuqt kjhgj jfdjkfflmc 4 1068
weiuydhshqxjmefg dfgghgchjh pnudvnxxuvnfuqt kjhgj jfdjkfflmc 5 995
…
miokytvohujkuefhjefghhgcajtrjnfdqnxxutdzuftfihfgz ufdjkfszyc 21 1179
miokytvohuwtuefhjefghhgcajyrjnfdqnxxutdzuftfiufgz ufdjkfszyc 22 1173
…
jzvsztfxtuggublusgidhpgxauyranrwqbwsjtdoxykfinfzvyufdoluszyh 51 1152
jzvsztfxtuggublusgidhpgxauyranrwqjwsjtdoxykfinfzvyufdoluszyh 52 1144
…
pkvlrqsxoqrewqoidyofypjlsjvwcjxdjlkhbzdyonhdeyuydlusjzbmeeiu 99 1078
pkvlrqsxoqoewqoidyofysjlsjvwcjxdjlkhbzdyonhdeyuydlusjubmeeiu 100 1073
Бесполезно! За 100 поколений – ни малейшего прогресса, никакого приближения к оптимуму. Фраза осталась такой же бессмысленной, какой и была. Случайное блуждание в пространстве последовательностей, которое мы сейчас смоделировали, практически не дает шанса найти конкретную точку в белковой вселенной.
Нет, конечно, будь у нас бесконечный запас времени, когда-нибудь мы все же наткнулись бы на оптимум. Когда, вот в чем вопрос. Мы использовали 26 букв латинского алфавита и пробел, итого 27 знаков. Длина фразы – 60 знаков. Оптимум – это