влияют на развитие и переходят в следующие поколения. У реальных животных и растений имеются десятки тысяч генов, но мы скромно ограничим нашу компьютерную модель девятью. Каждый из этих девяти генов просто представлен неким числом в компьютере, которое мы будем называть его значением. Значение конкретного гена может быть, скажем, 4 или -7.[8]
Как наши гены будут влиять на развитие? Они могут делать много чего. Основная идея состоит в том, что они должны оказывать какое-то небольшое количественное влияние на правило рисования, которое и есть РАЗВИТИЕ. Например, один ген мог бы влиять на угол ветвления, другой мог бы влиять на длину некоторых конкретных ветвей. Ещё очевидная задача для гена — влиять на глубину рекурсии (количество последовательных ветвлений). Я поручил этот эффект гену 9. Таким образом, вы можете расценивать рисунок 2 как картину родственных организмов, идентичных друг другу во всём, кроме значения гена 9. Я не буду подробно описывать, что делает каждый из других восьми генов. Вы можете получить общие представления об этом, изучая рисунок 3. В середине рисунка — основное дерево, одно из деревьев рисунка 2. Окружают это центральное дерево восемь других. Все они совпадают с центральным деревом, за исключением того, что какой-то один ген из восьми у них был изменён — «мутировал». Например, дерево справа от центрального показывает, что будет, если ген 5 мутирует, увеличиваясь на +1 относительно его прежнего значения. Если б было достаточно места, я бы с удовольствием напечатал кольцо из 18 мутантов вокруг центрального дерева. Почему именно 18? Потому, что каждый из 9 генов может мутировать как в «восходящем» (на единицу больше его значения), так и «нисходящем» направлении (на единицу меньше его значения). Так что кольца из 18 деревьев было бы достаточно, чтобы отобразить всех возможных одношаговых мутантов, которых вы можете произвести от одного центрального дерева.
У каждого из этих деревьев есть своя собственная, уникальная «генетическая формула» — числовые значения всех его девяти генов. Я не записывал генетических формул, потому что они, сами по себе для вас ничего не значили бы. Это справедливо и для реальных генов. Гены только тогда начинают означать что-то, когда они транслированы посредством синтеза белка, в правила роста развивающегося эмбриона. Также и в нашей компьютерной модели, числовые значения этих девяти генов только тогда что-то значат, когда они транслированы в правила роста ветвящегося дерева. Но вы можете понять роль каждого гена, сравнивая тела двух организмов с известными к отличиями конкретного гена. Например, сравнив основное дерево в середине рисунка с двумя деревьями справа и слева, и вы получите некоторое представление о функции гена 5.
Это как раз то, что делают генетики, изучающие реальную жизнь. Генетики обычно не знают, какие эффекты гены оказывают на рост эмбриона. Как и не знают полной генетической формулы животного. Но сравнивая тела двух взрослых животных, о которых известно, что они отличаются одним геном, они могут увидеть, какой эффект этот ген оказывает. Картина усложняется тем, что эффекты генов взаимодействуют друг с другом, причём сложнее, чем просто складываются. Это же самое справедливо и для компьютерных деревьев. И даже очень — что покажут дальнейшие рисунки.
Заметьте, что все очертания симметричны относительно вертикальной оси. Это есть ограничение, которое я наложил на процедуру РАЗВИТИЕ. Я сделал это отчасти по эстетическим соображениям, отчасти — чтобы сэкономить на количестве необходимых генов (если бы гены не оказывали зеркально-симметричных эффектов на обе стороны дерева, нам были бы нужны отдельные гены для левой и правой сторон); а частично потому, что я надеялся получить очертания, похожие на животных, а большинство тел животных весьма симметричны. Поэтому я с этого момента перестану называть эти создания «деревьями» и буду называть их «тела» или «биоморфы». Биоморф — название, предложенное Десмондом Моррисом для образов, напоминающих каких-то смутных животных в его сюрреалистических картинах. Эти картины занимают особое место в моих привязанностях, потому что одна из них была воспроизведена обложке моей первой книги. Десмонд Моррис заявлял, что его биоморфы «эволюционировали» в его воображении, и что их эволюцию можно проследить в его последовательных картинах.
Вернёмся к компьютерным биоморфам и к кольцу из 18 возможных мутантов. 8 наиболее интересных из них нарисованы на рисунке 3. Так как каждый член кольца отстоит только на один мутационный шаг от центрального биоморфа, то нам легко видеть, что это — дети центрального родителя. Здесь мы имеем аналог ВОСПРОИЗВОДСТВА, которое, как и РАЗВИТИЕ, мы можем оформить в другую маленькую компьютерную программу, готовую к включению в нашу большую программу под названием ЭВОЛЮЦИЯ. Обратите внимание на две вещи в нашем ВОСПРОИЗВОДСТВЕ. Первая: здесь нет никаких полов; воспроизводство асексуально. Я представляю себе биоморфы самками, потому что асексуальные животные, такие, как тли, почти всегда пребывают в форме самок. Вторая: все мои мутации ограничены одной штукой за раз. Ребёнок отличается от своего родителя в только в одном из девяти генов; кроме того, мутации всегда прибавляют или убавляют единицу из значения соответствующего родительского гена. Всё это — лишь произвольные соглашения; они могли быть другими, но всё ещё оставались бы биологически реалистичными.
Но есть ещё одна, совсем не произвольная особенность модели, которая реализует фундаментальный биологический принцип. Форма каждого ребёнка не отталкивается от самой по себе формы родителя. Форма каждого ребёнка вырабатывается исходя из значений его девяти генов (влияющих на углы, длины и так далее). И каждый ребёнок получает свои девять генов от девяти генов его родителя. Именно это и происходит в реальной жизни. Тела не переходят в следующее поколение — только гены. Гены влияют на эмбриональное развитие тела, в котором они находятся.
И эти же гены или переходят в следующее поколение, или нет. Значения генов никак не меняются от их участия в развитии тела, но вероятность того, что они будут переданы в следующее поколение, будет зависеть от успешности тела, которое они помогали создавать. Вот почему в компьютерной модели было важно, чтобы эти две процедуры с названиями РАЗВИТИЕ и ВОСПРОИЗВОДСТВО были написаны, как две герметичные капсулы. Они взаимонепроницаемы, за исключением того, что ВОСПРОИЗВОДСТВО передаёт значения гена РАЗВИТИЮ, где они влияют на правила роста. РАЗВИТИЕ категорически не передаёт значения генов назад в ВОСПРОИЗВОДСТВО — иное было бы равносильно «ламаркизму» (см. главу 11).
Мы оттранслировали эти два наших программных модуля под теми же идентификаторами: РАЗВИТИЕ и ВОСПРОИЗВОДСТВО. ВОСПРОИЗВОДСТВО передаёт гены в следующее поколение, с вероятностью мутации. РАЗВИТИЕ считывает гены, предоставленные ВОСПРОИЗВОДСТВОМ в любом данном поколении, и транслирует эти гены в правила рисования, и следовательно — в очертания тела на компьютерном экране. Настало время свести эти два модуля в одну большую программу под названием ЭВОЛЮЦИЯ.
Работа ЭВОЛЮЦИИ в основном состоит из бесконечного повторяющегося вызова ВОСПРОИЗВОДСТВА. ВОСПРОИЗВОДСТВО в каждом поколении считывает гены, которые предоставлены ему предыдущим поколением, и передаёт их в следующее поколение, однако с небольшой случайной ошибкой — мутацией. Мутация состоит лишь в прибавлении или отъятии единицы из значения наугад выбранного гена. Это означает, что по мере смены поколений, отличие значения гена от его первоначального значения может стать очень большим, накапливаясь по одному маленькому шагу за поколение. Мутации случайны, однако накопленное изменение через многие поколения — нет. Потомок в любом поколении отличается от своего родителя в случайную сторону. Но для перехода в следующее поколение из этих потомков отбирается неслучайный экземпляр. Именно так и происходит дарвиновский отбор. Субъекты отбора — не сами гены, но тела, на форму которых гены влияют посредством РАЗВИТИЯ.
Кроме репродуцирования, гены в каждом поколении управляют РАЗВИТИЕМ, которое, повинуясь строго установленным правилам, выращивает соответствующее тело на экране. В каждом поколении присутствует весь «выводок» «детей» (то есть — особей следующего поколения). Все эти дети являются мутантными потомками одного родителя, отличающиеся от своего родителя одним геном. Это очень высокий темп мутаций — откровенно искусственная особенность компьютерной модели. Вероятность мутирования гена в реальной жизни — обычно меньше одного против миллиона. Столь высокая частота мутаций в модели выбрана потому, что вся эта деятельность происходит на компьютерном экране для наблюдения глазом человека, а у людей нет терпения ждать одну мутацию миллион поколений!
Человек играет активную роль в этой истории. Он — отбирающий агент. Он рассматривает выводок потомков и выбирает один для размножения. Каждый выбранный затем становится родителем следующего поколения, и выводок его мутировавших детей одновременно отображаются на экране. Человек выполняет