Выбрать главу

Хотите получать высокие надои — на много порядков выше, чем требуется корове, чтобы выкормить теленка? Пожалуйста, к вашим услугам искусственный отбор. Можно добиться того, чтобы вымя коровы увеличивалось до огромных размеров и продолжало вырабатывать молоко еще долго после окончания естественного периода кормления. «Молочных» лошадей никто не выводил, но есть ли у кого-либо сомнения в том, что если бы мы захотели, мы смогли бы? Это же, кстати, справедливо для «молочных» людей, если бы кому-нибудь это понадобилось. Слишком много женщин, сведенных с ума мифом о том, что огромные, как дыни, груди привлекательны, платят хирургам огромные деньги за имплантанты, добиваясь весьма непривлекательных — для меня, во всяком случае — результатов. Неужели кто-либо сомневается, что подобное искажение человеческого тела может быть достигнуто за несколько поколений путем искусственного отбора, как это было проделано, например, с коровами фризской породы?

Лет двадцать пять назад я придумал компьютерную модель, прекрасно иллюстрирующую мощь искусственного отбора: компьютерную игру, имитирующую выращивание выставочных роз, собак или коров. Игрок видит на экране девять фигур-биоморфов, средняя из которых — «родитель» остальных восьми. Все формы образованы на основании примерно дюжины «генов» — набора чисел, передающегося от «родителя» «потомству» с небольшой вероятностью «мутации» — малого изменения численного значения. Каждая форма, таким образом, моделируется на основании уникального набора генов. Игрок, в свою очередь, о генах не знает; он видит девять форм на экране и может выбрать форму, которую он хочет размножать дальше. Остальные биоморфы пропадают с экрана. Отобранная форма перемещается в центр и «порождает» восьмерых «потомков». Игра продолжается так долго, как позволяет время или запас терпения. Внешний вид «организмов» на экране с каждым «поколением» меняется. «Потомкам» передаются только «гены», и игрок, отбирая биоморфов по внешним признакам, неосознанно выделяет и определенный комплект «генов». Точно так поступают и селекционеры.

Биоморфы, созданные программой «Слепой часовщик»

С генетикой, пожалуй, все. Игра становится еще интереснее, если ввести в нее «эмбриологическую» составляющую. «Эмбриология» биоморфа — это процесс, при помощи которого численные значения «генов» влияют на форму биоморфа. Можно представить себе множество эмбриологических схем, и немалое их количество я перепробовал. «Слепой часовщик» — первая программа, которую я написал, — основывается на модели бинарного дерева: «ствол» разделяется на две «ветви», каждая из них — еще на две, и так далее. Количество ветвей, их длина и угол соединения со стволом определяются численными значениями «генов». Важно отметить, что неотъемлемым свойством бинарных деревьев является их рекурсивность. Читателю, желающему узнать об этом больше, следует вооружиться книгой об информатике. Скажу только, что рекурсивность подразумевает: мутация влияет на все дерево, а не на отдельный его участок.

Несмотря на то, что мой «Слепой часовщик» начинает с простого бинарного дерева, он довольно быстро порождает целый калейдоскоп эволюционно развитых форм, многие из которых по-своему красивы, а некоторые (в зависимости от устремлений игрока) могут сильно походить на знакомых нам насекомых, пауков и морских звезд. На иллюстрации вы видите бестиарий, собранный в потаенных уголках компьютерной страны чудес одним-единственным игроком (мною). В следующих версиях программы эмбриологические алгоритмы были усовершенствованы. Это позволило «генам» изменять окраску и форму «ветвей» при помощи мутаций.

Следующую, более сложную программу — «Артроморфы» — я написал вместе с Тедом Келером (тогда он работал в «Эппл»). Эмбриологический алгоритм этой программы учитывает особенности строения насекомых, пауков, многоножек, других членистоногих и предназначен для создания артроморфов — существ, сходных с членистоногими. В книге «Восхождение на пик Невероятности» я подробно описал артроморфов, биоморфов, конхоморфов (компьютерных моллюсков) и подобных им существ.