Шаг назад, два - вперед
АрхивБиология и МедицинаСовместные усилия биологов и специалистов по компьютерному моделированию могут приводить к весьма любопытным результатам. Так, например, удалось подтвердить теорию эволюции.
Когда вместе собираются биолог и специалист из сферы компьютерных технологий, их совместные интеллектуальные усилия порой могут давать весьма любопытные результаты. Неплохим тому примером является совместный проект группы исследователей из Университета штата Мичиган (Michigan State University) и Калифорнийского института технологий (California Institute of technology). Они предложили метод "культивирования" компьютерного кода, чтобы наблюдать вживую эволюционные процессы, происходящие в естественных условиях на протяжении сотен тысяч лет.
В статье, которая на днях была опубликована журналом Nature, Ричард Ленски (Richard Lenski), Чарльз Офрия (Charles Ofria), Роберт Пеннок (Robert Pennock) и Кристоф Адами (Christoph Adami) сообщают о результатах, которые были получены в ходе исследований.
В своих научных изысканиях они использовали программу под названием Avida. Она представляет собой программную платформу для исследования цифровых организмов - нечто наподобие электронной "чашки Петри", в которой "культивируются" участки программного кода (сама программа, кстати, доступна для скачивания).
Схема исследований была следующей. Сначала были созданы исходные "организмы" – небольшие программки, способные самореплицироваться. Для лучшего понимания можно сравнить их с компьютерными вирусами, которые также, как известно, способны к самоудвоению. "Геном" такой программы представляет собой циклическую последовательность команд 26 видов. Сначала все организмы были одинаковыми, и ни один не был способен совершать какие-либо операции, кроме самоудвоения. Avida в случайном порядке вносит "мутации" – изменения в исходный код программ, тем самым создавая аналог мутационной изменчивости, которая поставляет материал для естественного отбора в реальном мире. Поэтому, например, если при каждой новой репликации дочерние программы в 20 % случаев могли содержать случайные изменения, несколько поколений спустя появились формы кода, способные производить определённые вычислительные операции. "Вознаграждением" за решение заданий было больше времени для самоудвоения. Таким образом, при прочих равных показателях более "приспособленные" формы получали преимущества и со временем могли вытеснять программы, не способные производить аналогичных операций. Короче говоря, всё как в настоящей жизни. Однако главное в ином.
Было отмечено, что даже спустя 15 000 генераций с мутациями цифровые организмы не могли решать задач высшего уровня сложности. С другой стороны, всё было совсем иначе, если на протяжении этого периода программки существовали в условиях, которые требовали от них выполнения других, намного более простых операций (аналог естественного отбора). В таком случае развивающиеся программы видоизменялись постепенно и, в конце концов, преодолевали предел сложности и справлялись даже с наиболее сложными заданиями.
Таким образом, ключевой вывод, к которому пришли в ходе исследований ученые, это то, что сложные системы не возникают внезапно, и путь к сложной функции состоит из длинной серии более простых, каждая из которых, будучи рассмотрена по отдельности, может быть весьма незначительной. По словам самих учёных "Наша работа позволила увидеть, как наиболее сложные функции возникают из более простых. Мы также убедились в том, что некоторые мутации казались весьма вредными, когда впервые возникали, однако становились действительно необходимыми для эволюции популяции на более длительном временном отрезке".
Чарльз Офрия отмечает, что одним из наиболее любопытных аспектов данных исследований является возможность узнать, каким образом природа преодолевает трудности при решении сложных задач. "Далее, - говорит он, – можно попытаться применить данные принципы в решении вычислительных задач, исполняемых компьютером".
Примеры принципа "от простого – к сложному" можно найти в самых различных деталях строения нашего организма, более того, без него вообще невозможно объяснить формирование таких сложных образований, как, в частности, человеческий глаз. Сложно себе представить, каким образом могли одномоментно появиться хрусталик, сетчатка, роговица и т.д. и организоваться в столь сложную и совершенную систему. В действительности же в этом нет ничего таинственного, если учесть, что указанные составляющие в той или иной форме могли появиться ещё задолго до появления самого глаза. Так, например, было установлено, что кристалины – белки, из которых состоит хрусталик, в своё время имели каталитические свойства и выполняли функции, никак не связанные со зрением.
Заключение
В своё время американский астроном Фред Хойл высказал мнение, что мысль о возникновении жизни из простых молекул "столь же нелепа и неправдоподобна, как и утверждение, что ураган, пронесшийся над мусорной свалкой, может привести к сборке Боинга -747". С этим действительно можно легко согласиться, если держать в одной руке сосуд со смесью аминокислот, а в другой – живую мышь. Однако вероятность формирования столь сложного организма посредством длинной цепочки более простых промежуточных стадий видится более реалистичной. По словам Кристофа Адами, "дарвиновская эволюция проявляется аналогично как в случае ДНК, так и компьютерного кода". Так что не исключено, что принципы развития, показанные на примере развития компьютерных программ, в своё время позволят построить более полную картину эволюционного пути.
P.S. Вот только для полного счастья не хватает, чтоб компьютерные вирусы обрели способность эволюционировать в качественно более совершенные формы… Хотя, с другой стороны, представить интернет как большую экосистему, в которой циркулируют и развиваются такие цифровые организмы, было бы весьма любопытно.
С комментариями к этим исследованиям можно ознакомиться в материале "Искусство жить". Насколько глубока аналогия между обычной жизнью и жизнью “цифровой”? Насколько правомочно переносить результаты описанных выше экспериментов в биологию? Эти и другие подобные вопросы вы можете обсудить на нашем форуме.