Модель Tierra является одним из удобных средств изучения эволюции искусственных организмов на уровне генома. Здесь создается среда, в которой эволюция по Ч. Дарвину может происходить на компьютере без вмешательства человека.
Автор модели Tierra – Т. Рэй проводит различия между моделированием и реализацией искусственной жизни. Популяции структур данных при моделировании представлены в компьютерной программе как совокупности биологических объектов (муравьев, клеток и пр.). В реализации искусственной жизни популяции структур данных уже не соотносятся с каким-либо живым организмом или жизненным процессом, а скорее подчиняются искусственным законам.
Итак, в Tierra организмы – это компьютерные программы, реализованные на машинном языке. Каждый отдельный организм — это строка команд. При функционировании организма указатель выполнения команд перемещается по организму, последовательно исполняя встречаемые команды.
Главной концептуальной особенностью модели Tierra является конструкция устойчивого набора команд на машинном языке. Программа (организм), написанная с помощью такого набора команд, может быть изменена путем случайной мутации или перестановки, но все же остается выполнимой. Иными словами, организмы способны эволюционировать благодаря применению генетических операторов (подробнее об генетических алгоритмах см. в этом разделе). Хорошо известно, что для наборов команд машинного языка, используемых в традиционном программировании, это совсем не так.
Лучше всего модель Tierra можно представить как виртуальную биосферу, управляемую в соответствии со своими собственными искусственными законами, а не как точную копию любой реальной биологической функции.
Машинный код системы Tierra составляют 32 команды. Каждая из них определена пятиразрядным числом. Таким образом, программа представляет собой конкатенацию этих чисел. Исходная программа может быть преобразована в другую программу путем применения генетического оператора, например, точечной мутации. Зеркальное отражение одного бита дает новую программу. Новая программа может, к примеру, содержать команду «no operation» там, где старая программа имела активную операцию типа перехода. Это не представляет опасности на уровне операционной системы: программа все еще остается выполнимой, хотя и может потерять свои функциональные характеристики и полезность.
Это свойство изменчивости используется операционной системой Tierra, чтобы, управлять процессом эволюции. Операционные системы контролируют распределение циклов центрального процессора и памяти для каждой популяции организмов. На некоторой (определенной пользователем) скорости операционная система случайным образом вводит мутации в организмы. При обычном моделировании операционная система «инфицирована» одним организмом; способным к самовоспроизведению (созданию собственной копии в другой части памяти). Операционная система многократно обрабатывает организм, позволяя ему воспроизвести себя. Иногда в потомство вводятся мутации, что приводит либо к созданию особей, не способных к дальнейшему размножению, либо чаще к созданию потомства, которое воспроизводится намного быстрее своих предков.
Когда память заполняется организмами, некоторые из них должны быть уничтожены, иначе процесс моделирования остановится. Операция система выбирает, какой из организмов уничтожить в соответствии с тем, насколько хорошо выполняется программа. Например, некоторые команды в определенных условиях генерируют погрешности. Каждый раз, когда это происходит, операционная система фиксирует «недостаток». Соответственно, организм удаляется, как только он накопит некоторое число недостатков (относительно других организмов в популяции). Результатом является то, что организмы с быстрым самовоспроизведением и выполнением с малыми погрешностями преобладают.
Следует отметить, что в среде Tierra нет нужды в явном виде определять функцию приспособленности (fitness). В рамках Tierra существуют два ресурса: время вычислений («энергия») и величина памяти («территория»). Очевидно, что организмы, которые захватывают большее количество этих ресурсов, имеют более высокий потенциал выживания.
Модель Tierra — типичный пример восходящего подхода в искусственной жизни.