Архивы: по дате | по разделам | по авторам

Обиняк alife

Архив
автор : ИВАР ФЕДОУЗ    16.03.1999

Согласно Далю, обиняк - одно из значений слова "метафора". То есть вместо того, чтобы прямо сказать: давайте научимся писать такие программки, которые будут находить друг друга в памяти, обмениваться кусками кода, записывать результат в другие участки памяти, по очереди передавать управление друг другу и т. д., нам говорят: давайте организуем в машине искусственную жизнь (Artificial Life, ALife).

Согласно Далю, обиняк - одно из значений слова "метафора". То есть вместо того, чтобы прямо сказать: давайте научимся писать такие программки, которые будут находить друг друга в памяти, обмениваться кусками кода, записывать результат в другие участки памяти, по очереди передавать управление друг другу и т. д., нам говорят: давайте организуем в машине искусственную жизнь (Artificial Life, ALife).


   Поразительно, что это заклинание действительно вносит некое новое качество в подобную деятельность. В отличие от наивной бионики, модной в годы моего детства, которая (без обиняков!) нацеливалась срисовывать инженерные решения прямо с бабочек, стрекоз, летучих мышей и прочих обитателей лесов, полей и рек, ALife предполагает имитацию не столько результата эволюции, сколько самого ее процесса.

   Но как и, главное, что следует имитировать? Я хочу кратко коснуться двух сюжетов, идущих по касательной к основной теме.

   Фанера-1959
   В последние годы жизни, в конце 40-х, Джон фон Нейман отдал много сил конструированию самовоспроизводящегося клеточного автомата. Этот труд завершил после смерти фон Неймана его сотрудник Артур Бэркс (Arthur Burks). Описание и строгое доказательство правильной работы этого монстра (каждая из двухсот тысяч клеток находится в одном из 29 состояний, в зависимости от состояния пяти ее соседей, все это реализует машину Тьюринга с лентой и читающей головкой, универсальный конструктор считывает данные с ленты и специальной рукой строит то, что предписано...) занимает целую книгу. Принцип действия напоминает принцип копирования ДНК (в то время еще не открытый биологами!).

   В дальнейшем были созданы гораздо более простые самовоспроизводящиеся программы (репликаторы) - например, "Tierra", содержавшая всего 80 команд на специальном ассемблере. Джон Коза (John Koza) продемонстрировал даже такую удивительную вещь, как стабильное "самозарождение" самовоспроизводящихся программ в "море" из хаотически перемешанных обрывков кода.

   Однако сразу после работ фон Неймана были сделаны попытки реализовать одну из основных отличительных черт живого - самовоспроизведение - при помощи подручного материала. Например, Гомер Джекобсон (Homer Jacobson) построил довольно сложный репликатор из элементов игрушечной железной дороги. А известный английский генетик Лионель Пенроуз (Lionel Penrose), отец того самого Роджера Пенроуза, о работах которого по проблемам естественного и искусственного интеллекта КТ писала в 1998 году в #268 (тема номера "Физическая личность"), подошел к этой задаче совершенно неожиданным образом. В журнале "Scientific American" (том 200, номер 6, июнь 1959 года) он рассказал о своих экстравагантных опытах, в которых ему помогал тогда еще совсем молодой сын Роджер: "В нашем воображении процесс механического самовоспроизведения рисовался примерно таким. Предположим, у нас имеется мешок или какая-нибудь другая емкость, наполненная деталями, которые, если мешок хорошенько потрясти и покрутить, беспорядочно сталкиваются. Развязав мешок, мы видим, что детали остались в прежнем беспорядке и не соединились друг с другом. Затем мы помещаем в мешок некую конструкцию-зародыш, собранную из точно таких же деталей. Разумеется, она могла возникнуть и случайно, но вероятность этого, как и при генетической мутации, крайне мала. После этого повторяем опыт с энергичным встряхиванием мешка, при этом зародыш активно сталкивается с нейтральными деталями. На этот раз мы обнаруживаем, что в мешке образовалось множество копий зародыша, собранных из прежде "безжизненного" материала..."


Рис. 1.


   В статье подробно описана технология, позволившая реализовать эту картину на практике (правда, лишь в одном и двух измерениях). Чуть не написал "в железе" - на самом деле детали были сделаны из... фанеры. Пенроуз объясняет, как с помощью этой технологии можно создать сколь угодно сложные зародыши и даже устроить среди них подобие естественного отбора. На рис. 1 приведен пример одной из конструкций; (a) зародыш в центре, нейтральные блоки (пища) - справа и слева; (b) зародыш сцепляется с левым блоком; (c) полученная структура сталкивается с правым блоком, при этом возникшая структура из четырех блоков автоматически расщепляется посередине; (d) образовались две копии зародыша. А на рис. 2 показано, на какие основания нужно поставить эти блоки, чтобы при хаотическом движении по плоскости они, сталкиваясь, могли принять необходимую для взаимодействия ориентацию.


Рис. 2.


   На мой взгляд, такая работа могла появиться только и исключительно в интеллектуальной традиции, давшей миру Льюиса Кэрролла. А с другой стороны, выбор в качестве материала не чего-нибудь, а фанеры... что-то в этом есть очень наше, здешнее. Попутно заметим, что в качестве одного из перспективных направлений развития ALife называют создание самовоспроизводящихся конструкций для строительства в космосе.

   Дарвин сегодня
   Ну, а теперь несколько слов об идеях человека, чье имя обязательно должно быть названо, когда речь идет об эволюции. Настоящей, биологической эволюции на основе естественного отбора, которая с момента выхода в 1859 году книги Чарльза Дарвина "Происхождение видов" остается единственным предложенным в рамках науки объяснением разнообразия живой природы. Точнее, даже не объяснением, а концепцией, на основе которой пока не получено ни одного подробно прослеженного по шагам "графика" возникновения того или иного реального вида. Однако Ричард Докинз (Richard Dawkins), крупнейший современный дарвинист, сумел вывести из своего знаменитого постулата об эгоистичном гене очень многие реально наблюдаемые в сообществах животных (и даже у человека) поведенческие стереотипы, стратегии выживания, принципы взаимоотношений между поколениями, полами, близкими и дальними родственниками и т. д.

   В предисловии к русскому переводу (прекрасно выполненному Н. Фоминой) его классического бестселлера "Эгоистичный ген" ("The Selfish Gene"). (М.: "Мир", 1993 год) известный эволюционист Б. Медников дает теории Докинза весьма высокую оценку, упоминая, конечно, и о ряде спорных моментов. Это невероятно увлекательное чтение, и я очень рекомендую всем, кто еще не знаком с этим и другими произведениями Докинза (например, "The Blind Watchmaker" - одна из культовых книг в сообществе адептов ALife), ознакомиться с ними как можно скорее. А пока - сверхкраткий дайджест.

   Каковы движущие силы биологической эволюции? Докинз утверждает, что главная такая сила - стремление генов (а отнюдь не видов!) к бессмертию. Это достигается тем, что гены создают для себя "машины выживания" - живые организмы, в том числе и наши с вами тела. Цитирую: "Обезьяна служит машиной для сохранения генов на деревьях, рыба - для сохранения их в воде; существует даже маленький червячок, сохраняющий гены в кружочках, подставляемых в Германии под кружки с пивом". Разумеется, ген как таковой, крошечный кусочек крошечной молекулы ДНК, не может ни построить никаких машин, ни управлять ими. Однако, говорит Докинз, развитие происходит как если бы это было так. Это опять метафора, обиняк - и опять очень плодотворный.

   На уровне отдельного гена единственной правильной стратегией является "беспощадный эгоизм". Например, гены, кодирующие различные признаки, объединяются в цепочки-хромосомы только потому, что так возникает оптимальное для выживания каждого из них сочетание признаков. Гены, находящиеся в наших телах, выжили в условиях жесточайшей борьбы на протяжении множества поколений. Следовательно, они великолепно владеют приемами этой борьбы, ее тактикой и стратегией. А дальше происходит поразительная вещь: Докинз демонстрирует, как хорошо тренированный эгоизм гена может приводить к формированию различных и очень сложных, реально наблюдаемых на уровне семьи, вида, сообщества стратегий. Иногда - альтруистических, а иногда и наоборот... Здесь хочется цитировать бесконечно, но так как делать этого нельзя, ограничусь тем, что может прямо сейчас пригодиться в повседневной жизни: "...мы должны учить наших детей альтруизму, ибо нельзя ожидать, что он составляет часть их биологической природы..."

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

   Будет ли наблюдаться что-либо подобное непостижимому разнообразию живой природы в рамках ALife? Пока программы-репликаторы демонстрируют только элементарный паразитизм и некоторые другие сравнительно несложные типы взаимоотношений. Что ж, поживем (естественной жизнью) - увидим.

   Источники
  • lslwww.epfl.ch/~moshes - страница Моше Сиппера (Moshe Sipper) из Swiss Federal Institute of Technology. Содержит большой набор ссылок по моделированию репродукции и по ALife в целом. По некоторым из них можно загрузить работающие под Unix или DOS конструкторы в фон-неймановском духе; есть ссылки на все хиты, такие как "Tierra" или работы Дж. Козы и т. д.
  • www.spacelab.net/~catalj - страница, посвященная Ричарду Докинзу.

  • © ООО "Компьютерра-Онлайн", 1997-2024
    При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.