Согласно Далю, обиняк - одно из значений слова "метафора". То есть вместо того, чтобы прямо сказать: давайте научимся писать такие программки, которые будут находить друг друга в памяти, обмениваться кусками кода, записывать результат в другие участки памяти, по очереди передавать управление друг другу и т. д., нам говорят: давайте организуем в машине искусственную жизнь (Artificial Life, ALife).
Поразительно, что это заклинание действительно вносит некое новое качество в подобную деятельность. В отличие от наивной бионики, модной в годы моего детства, которая (без обиняков!) нацеливалась срисовывать инженерные решения прямо с бабочек, стрекоз, летучих мышей и прочих обитателей лесов, полей и рек, ALife предполагает имитацию не столько результата эволюции, сколько самого ее процесса.
Но как и, главное, что следует имитировать? Я хочу кратко коснуться двух сюжетов, идущих по касательной к основной теме.
Фанера-1959
В последние годы жизни, в конце 40-х, Джон фон Нейман отдал много сил конструированию самовоспроизводящегося клеточного автомата. Этот труд завершил после смерти фон Неймана его сотрудник Артур Бэркс (Arthur Burks). Описание и строгое доказательство правильной работы этого монстра (каждая из двухсот тысяч клеток находится в одном из 29 состояний, в зависимости от состояния пяти ее соседей, все это реализует машину Тьюринга с лентой и читающей головкой, универсальный конструктор считывает данные с ленты и специальной рукой строит то, что предписано...) занимает целую книгу. Принцип действия напоминает принцип копирования ДНК (в то время еще не открытый биологами!).
В дальнейшем были созданы гораздо более простые самовоспроизводящиеся программы (репликаторы) - например, "Tierra", содержавшая всего 80 команд на специальном ассемблере. Джон Коза (John Koza) продемонстрировал даже такую удивительную вещь, как стабильное "самозарождение" самовоспроизводящихся программ в "море" из хаотически перемешанных обрывков кода.
Однако сразу после работ фон Неймана были сделаны попытки реализовать одну из основных отличительных черт живого - самовоспроизведение - при помощи подручного материала. Например, Гомер Джекобсон (Homer Jacobson) построил довольно сложный репликатор из элементов игрушечной железной дороги. А известный английский генетик Лионель Пенроуз (Lionel Penrose), отец того самого Роджера Пенроуза, о работах которого по проблемам естественного и искусственного интеллекта КТ писала в 1998 году в #268 (тема номера "Физическая личность"), подошел к этой задаче совершенно неожиданным образом. В журнале "Scientific American" (том 200, номер 6, июнь 1959 года) он рассказал о своих экстравагантных опытах, в которых ему помогал тогда еще совсем молодой сын Роджер: "В нашем воображении процесс механического самовоспроизведения рисовался примерно таким. Предположим, у нас имеется мешок или какая-нибудь другая емкость, наполненная деталями, которые, если мешок хорошенько потрясти и покрутить, беспорядочно сталкиваются. Развязав мешок, мы видим, что детали остались в прежнем беспорядке и не соединились друг с другом. Затем мы помещаем в мешок некую конструкцию-зародыш, собранную из точно таких же деталей. Разумеется, она могла возникнуть и случайно, но вероятность этого, как и при генетической мутации, крайне мала. После этого повторяем опыт с энергичным встряхиванием мешка, при этом зародыш активно сталкивается с нейтральными деталями. На этот раз мы обнаруживаем, что в мешке образовалось множество копий зародыша, собранных из прежде "безжизненного" материала..."