Рис. 5
Простіше простого відбирати конкретну генетичну формулу, якщо маєш змогу читати гени всіх тварин. Але природний відбір не обирає гени безпосередньо, він обирає впливи, які ці гени мають на тіла, що називаються фенотиповими ефектами. Як показують численні породи собак, корів і голубів, а також (з вашого дозволу) рисунок 5, людське око добре вміє обирати фенотипові ефекти. Щоб змусити комп’ютер обирати фенотипові ефекти безпосередньо, нам довелося б написати дуже складну програму розпізнавання образів. Такі програми існують. Вони використовуються для зчитування друкованих і навіть рукописних текстів. Але це складні сучасні програми, що потребують дуже великих і швидких комп’ютерів. Навіть якби така програма розпізнавання образів не виходила за межі моїх здібностей як програміста та можливостей мого маленького 64-кілобайтного комп’ютера, я би за неї не взявся. Це завдання легше виконати людським оком у поєднанні з (що важливіше) 10-гіганейронним комп’ютером усередині черепа.
Було б не надто складно змусити комп’ютер проводити відбір за розпливчастими загальними рисами, такими як, скажімо, «високий і тонкий», «низький і широкий», «вигнутий», «кутастий», — та хоч із прикрасами в стилі рококо. Можна було б запрограмувати комп’ютер запам’ятовувати типи якостей, яким люди віддали перевагу в минулому, і весь час відбирати той самий загальний тип у майбутньому. Але це геть не наближає нас до імітації природного відбору. Важливим моментом є те, що природа не потребує для здійснення відбору обчислювальних потужностей, окрім як в особливих випадках, таких як вибір павичів павами. У природі чинник відбору зазвичай прямий, нічим не прикрашений і простий. Це сама смерть із косою. Звісно, причини виживання геть не прості, саме тому природний відбір може створювати тварин і рослини такої величезної складності. Але в смерті як такій є щось дуже грубе й примітивне. І невипадкової смерті в природі цілком достатньо для відбору фенотипів, а отже, й генів, які вони містять.
Для імітації природного відбору в комп’ютері у спосіб, що нас цікавить, треба забути про прикраси в стилі рококо та всі інші видимі оку якості. Замість цього слід зосередитися на імітації невипадкової смерті. Біоморфи в комп’ютері мають взаємодіяти з імітацією ворожого навколишнього середовища. Виживуть вони в цьому середовищі чи ні, має визначатись якоюсь особливістю їхньої форми. В ідеалі вороже навколишнє середовище має охоплювати інші біоморфи, що еволюціонують, — «хижаків», «здобич», «паразитів», «конкурентів». Специфічна форма біоморфа-здобичі має визначати його вразливість до вловлення, наприклад, специфічною формою біоморфа-хижака. Такі критерії вразливості не має задавати програміст. Вони мають виникати, так само, як виникли самі ці форми. Отоді у комп’ютері справді розпочалася б еволюція, бо склалися б умови для самопідкріплюваної «гонитви озброєнь» (див. розділ 7), і я не візьму на себе сміливість робити припущення стосовно того, чим усе це закінчилося б. На жаль, боюся, що створення такого несправжнього світу виходить за межі моїх можливостей як програміста.
Якщо і є хтось достатньо розумний для такої роботи, то це програмісти, що розробляють ці галасливі й вульгарні аркадні ігри — похідні «Космічних загарбників». У цих програмах якраз імітується несправжній світ. Він має власну географію, часто в трьох вимірах, а також швидкозмінний вимір часу. Персонажі зближуються в імітованому тривимірному просторі, вступають у суперечки, стріляють один в одного, ковтають один одного, здіймаючи жахливий галас. Така імітація може бути настільки доброю, що гравець, який тримає джойстик, перебуває в цілковитій ілюзії, що він сам є частиною цього несправжнього світу. Вершиною такого типу програмування, на мою думку, є спеціальні камери для тренування пілотів літаків і космічних кораблів. Але навіть ці програми є дрібницею порівняно з тією, яку треба було б написати для імітації «гонитви озброєнь» між хижаками й здобиччю, що є складовими повноцінної імітаційної екосистеми. Однак це, безумовно, можна зробити. Якщо якийсь професійний програміст готовий до спільної праці над таким завданням, я буду радий поспілкуватися з ним чи з нею.
Тим часом є дещо інше, значно легше, що я маю намір випробувати, коли настане літо. Я поставлю комп’ютер у якомусь тінистому куточку саду. Екран його може відображати колір. Я вже маю версію програми, що використовує кілька додаткових «генів» для контролю кольору таким самим чином, як інші дев’ять контролюють форму. Я почну з будь-якого більш-менш компактного та яскраво забарвленого біоморфа. Комп’ютер одночасно відображатиме низку мутантних нащадків цього біоморфа, що відрізнятимуться від нього за формою та/чи кольоровою схемою. Я сподіваюся, що бджоли, метелики та інші комахи підлітатимуть до екрана й «робитимуть вибір», б’ючись у конкретне місце на ньому. Після реєстрації певної кількості виборів комп’ютер очистить екран, «розведе» біоморф, якому віддавали перевагу, і продемонструє наступне покоління мутантних нащадків.
Дуже сподіваюся, що через багато поколінь дикі комахи справді зумовлять у комп’ютері еволюцію квітів. Якщо вони це зроблять, комп’ютерні квіти еволюціонуватимуть під таким самісіньким тиском відбору, який зумовив еволюцію справжніх квітів у дикій природі. У моїх сподіваннях мене підтримує той факт, що комахи часто підлітають до яскравих кольорових плям на жіночих сукнях, а також опубліковані дані більш систематичних експериментів. Альтернативна можливість, яку я вважаю ще цікавішою, полягає в тому, що дикі комахи могли б зумовити еволюцію комахоподібних форм. Прецедентом — а отже, й підставою для сподівань — є те, що в минулому бджоли вже зумовили еволюцію одного з сортів орхідеї — офрису бджолоносного. Упродовж багатьох поколінь накопичувальної еволюції орхідей самці бджіл спричинили появу бджолоподібної форми, намагаючись спаруватися з квітами, а отже, розносячи пилок. Уявіть собі квітку офриса бджолоносного з рисунка 5 у кольорі. Чи не сподобалася б вона вам, якби ви були бджолою?
Головною причиною мого песимізму є те, що зір комах влаштований зовсім не так, як наш. Відеоекрани розраховані на людські очі, а не на бджолині. Це легко могло б означати, що, хоча ми з бджолами, кожен по-своєму, бачимо офрис бджолоносний схожим на бджолу, зображення на екрані бджоли можуть взагалі не побачити. Вони можуть не побачити нічого, крім 625 рядків розгортки! І все ж спробувати варто. До часу виходу цієї книжки я вже знатиму відповідь.
Існує популярне кліше, що зазвичай вимовляється тоном, який Стівен Поттер назвав би «занудним»: від комп’ютерів не можна отримати нічого поза тим, що ви в них заклали. Інакше кажучи, комп’ютери роблять лише те, що їм наказують, а отже, неспроможні творити. Це кліше є справедливим лише у жахливо тривіальному сенсі, у тому самому, в якому Шекспір ніколи не писав нічого, крім того, чого його навчив перший шкільний учитель, — слів. Я запрограмував у комп’ютері ЕВОЛЮЦІЮ, але я не планував «своїх» комах, скорпіона, літачок чи місяцехід. Я не мав анінайменшої гадки, що вони виникнуть, і саме тому «виникнуть» тут є правильним словом. Щоправда, мої очі проводили відбір, який спрямовував їхню еволюцію, але на всіх етапах я обмежувався невеличким виводком нащадків, пропонованих випадковою мутацією, а «стратегія» мого відбору, хоч якою б вона була, була пристосувальницькою, непостійною й короткостроковою. Я не мав якоїсь далекосяжної мети, як не має її й природний відбір.
Я можу додати трохи драматизму, описавши випадок, коли я таки спробував поставити перед собою якусь далекосяжну мету. Насамперед мушу де в чому зізнатися. Ви б усе одно здогадалися. Еволюційна історія на рисунку 4 є реконструкцією. Це був не перший випадок, коли я побачив «своїх» комах. Коли вони вперше з’явилися під звуки фанфар, я ще не мав засобів реєстрації їхніх генів. Вони були там, сиділи на екрані, а я не міг до них дістатися, не міг розшифрувати їхні гени. Я відклав вимикання комп’ютера і довго сушив мізки, намагаючись вигадати якийсь спосіб зберегти їх, але на думку ніщо не спадало. Гени були заховані надто глибоко, як і в реальному житті. Я зумів роздрукувати зображення тіл комах, але втратив їхні гени. Я одразу ж модифікував програму так, аби в майбутньому вона вела доступні записи генетичних формул, але було запізно. Я втратив своїх комах.
Я розпочав спроби «знайти» їх знову. Вони вже виникли один раз, тож здавалося, що має існувати можливість вивести їх знову. Вони переслідували мене, неначе втрачений акорд. Я блукав Землею біоморфів, пробираючись нескінченним ландшафтом дивних створінь та об’єктів, але знайти своїх комах не міг. Я знав, що вони мають десь там ховатися. Я знав гени, з яких почалася еволюція минулого разу. Я мав зображення тіл моїх комах. Я навіть мав зображення еволюційної послідовності тіл, що дуже повільно веде до моїх комах від предка-крапки. Але я не знав їхньої генетичної формули.
Ви, мабуть, гадаєте, що відтворити цей еволюційний шлях можна доволі легко, але це було не так. Причиною, до якої я ще повернуся, є просто астрономічна кількість можливих біоморфів, яку пропонує достатньо довгий еволюційний шлях, навіть коли варіюють лише дев’ять генів. Декілька разів упродовж своїх подорожей Землею біоморфів я, здавалося, наближався до попередника своїх комах, але потім, попри всі мої зусилля як чинника відбору, еволюція збивалася на манівці. Урешті-решт під час моїх еволюційних блукань Землею біоморфів — навряд чи відчуття тріумфу було меншим, ніж першого разу, — я таки загнав їх у кут знову. Я не знав (і досі не знаю), чи були ці комахи точно такими самими, як попередні, «втрачені акорди Заратустри», чи вони були лише поверхово «конвергентними» (див. наступний розділ), але був цілком задоволений. Цього разу я вже не припустився помилки: я записав їхню генетичну формулу й тепер можу «еволюціонувати» комах щоразу, як захочу.
Так, я трохи драматизую, але тут простежується одна важлива річ. Суть цієї історії в тому, що, хоча комп’ютер програмував я сам, дуже детально вказуючи йому, що робити, тим не менш я не планував тварин, які виникли внаслідок еволюції, і був надзвичайно здивований, коли вперше побачив їхніх попередників. Я був настільки неспроможний контролювати цю еволюцію, що, навіть коли дуже хотів відтворити конкретний еволюційний шлях, зробити це виявилось абсолютно неможливим. Я не вірю, що колись знайшов би своїх комах знову, якби не мав повного набору роздрукованих зображень їхніх еволюційних попередників, і навіть за їх наявності це виявилося складним і виснажливим процесом. Чи не здається вам парадоксальною неспроможність програміста контролювати чи передбачати хід еволюції в комп’ютері? Чи не означає це, що всередині комп’ютера відбувається щось загадкове, навіть містичне? Звісно ні. Як і в еволюції справжніх тварин і рослин. Ми можемо використати для розв’язання цього парадоксу комп’ютерну модель, дізнавшись у процесі дещо про справжню еволюцію.
Забігаючи наперед, скажу, що виявиться основою розв’язання цього парадоксу. Існує певний набір біоморфів, кожен з яких постійно займає своє власне унікальне місце в математичному просторі. Він постійно сидить там — у тому сенсі, що, знаючи його генетичну формулу, його одразу можна знайти; більше того, його сусідами в цьому особливому типі простору є біоморфи, що відрізняються від нього лише одним геном. Тепер, знаючи генетичну формулу моїх комах, я можу відтворити їх за бажанням і наказати комп’ютеру «еволюціонувати» до них з будь-якої довільної відправної точки. Коли ви вперше виводите нове створіння шляхом штучного відбору в комп’ютерній моделі, це переживається як творчий процес. По суті, так воно й є. Але насправді ви лише шукаєте це створіння, бо в математичному сенсі воно вже сидить на своєму власному місці в генетичному просторі Землі біоморфів. Причина ж того, що це справді творчий процес, полягає в тому, що пошук будь-якого конкретного створіння — надзвичайно складне завдання хоча б тому, що Земля біоморфів дуже й дуже велика, а загальна кількість створінь, що там «сидять», мало не нескінченна. Немає сенсу просто шукати його безцільно й навмання. Для цього слід задіяти якусь ефективнішу (творчу) пошукову процедуру.
Деякі люди наївно вірять, що комп’ютери для гри в шахи працюють, послідовно випробовуючи всі можливі комбінації шахових ходів. Ця віра втішає їх, коли комп’ютер перемагає, але вона абсолютно помилкова. Можливих шахових ходів надто багато — зона пошуку в мільярди разів перевищує ту, яка дала б змогу досягти успіху за сліпого добору. Мистецтво написання гарної шахової програми полягає в продумуванні ефективних коротких шляхів крізь цю зону пошуку. Накопичувальний відбір (чи то штучний, як у комп’ютерній моделі, чи природний — у реальному світі) є ефективною пошуковою процедурою, і його результати дуже нагадують плоди творчого інтелекту. Саме на цьому, зрештою, і ґрунтується аргумент від задуму Вільяма Пейлі. З технічного погляду, граючи в комп’ютерну гру за участю біоморфів, ми лише шукаємо тварин, які в математичному сенсі тільки й чекають, аби їх знайшли. І схоже це на процес художньої творчості. Пошук у невеличкому просторі, де є лише кілька сутностей, зазвичай не викликає переживання творчого процесу. Дитяча гра «Знайди наперсток» не сприймається як творча. Перевертання речей навмання в надії наштовхнутися на предмет пошуку зазвичай спрацьовує, коли зона пошуку мала. У міру того, як вона розширюється, стають необхідними дедалі складніші пошукові процедури. Ефективні ж процедури, коли зона пошуку є достатньо великою, неможливо відрізнити від справжньої творчості.
Комп’ютерні моделі за участю біоморфів чітко це показують і являють собою повчальний місток між творчими процесами людини, такими як планування переможної стратегії в шахах, і еволюційною творчістю природного відбору — роботою сліпого годинникаря. Щоб зрозуміти це, ми повинні розвинути ідею Землі біоморфів як математичного «простору», безкінечної, але впорядкованої низки морфологічного розмаїття, в якій кожне створіння сидить на своєму власному місці, очікуючи, коли його знайдуть. Сімнадцять створінь на рисунку 5 розташовані на сторінці без якогось особливого порядку. Однак на Землі біоморфів кожне з них займає своє власне унікальне положення, визначене його генетичною формулою, в оточенні цілком конкретних сусідів. Між усіма створіннями на Землі біоморфів існують певні просторові відношення. Що це означає? Яке значення можна вкласти в їхнє просторове положення?
Ми зараз говоримо про генетичний простір. Кожна тварина має в цьому просторі своє власне положення. Близькими сусідами в такому просторі є тварини, що відрізняються одна від одної лише однією-єдиною мутацією. На рисунку 3 базове дерево в центрі оточене вісьмома з 18 його безпосередніх сусідів у генетичному просторі. За правилами нашої комп’ютерної моделі, 18 сусідками тієї чи іншої тварини є 18 різних типів дитинчат, яких вона здатна породити, та 18 різних типів предків, від яких вона могла б походити. На відстані одного коліна кожна тварина має 324 (18 × 18 без урахування зворотних мутацій, для простоти) сусідів — набір з її можливих онучок, бабусь, тіток чи племінниць. На відстані ж іще одного коліна кожна тварина має вже 5832 (18 × 18 × 18) сусідів — набір із її можливих правнучок, прабабусь, двоюрідних сестер тощо.
У чому суть мислення з погляду генетичного простору? Куди воно нас веде? Воно дає нам можливість зрозуміти еволюцію як поступовий, накопичувальний процес. Згідно з правилами комп’ютерної моделі, в будь-якому поколінні можна просунутись у генетичному просторі лише на один-єдиний крок. За 29 поколінь у цьому просторі неможливо відійти від початкового предка далі ніж на 29 кроків. Кожна еволюційна історія являє собою конкретний шлях (траєкторію) руху крізь генетичний простір. Наприклад, еволюційна історія, зображена на рисунку 4, є конкретною звивистою траєкторією крізь генетичний простір, що з’єднує крапку з комахою і проходить 28 проміжних стадій. Ось що я маю на увазі, коли метафорично говорю про «блукання» Землею біоморфів.
Я хотів спробувати представити цей генетичний простір у формі зображення. Проблема в тому, що зображення є двовимірними. Генетичний же простір, у якому сидять біоморфи, не є двовимірним. Він навіть не тривимірний. Це дев’ятивимірний простір! (Про математику важливо запам’ятати, що її не слід боятися. Вона не така складна, як іноді намагаються показати її адепти. Щоразу, як мені стає трохи лячно, я завжди згадую вислів Сільвануса Томпсона з його книжки «Прості обчислення»: «Що може зробити один дурень, зможе й інший».) Якби ми тільки вміли малювати в дев’яти вимірах, то змогли б зробити так, аби кожен вимір відповідав одному з дев’яти генів. Положення конкретної тварини, скажімо скорпіона, кажана чи комахи, зафіксоване в генетичному просторі числовими значеннями його дев’яти генів. Еволюційні зміни складаються з покрокового просування крізь дев’ятивимірний простір. Величина генетичної відмінності між однією твариною й іншою, а отже, й час, потрібний для еволюції, та складність еволюціонування з однієї тварини в іншу вимірюються в дев’ятивимірному просторі як відстань між цими тваринами.
На жаль, малювати в дев’яти вимірах ми не вміємо. Я шукав спосіб обійти цю перепону, намалювавши двовимірне зображення, що хоч якось могло б передати відчуття переміщення від точки до точки в дев’ятивимірному генетичному просторі Землі біоморфів. Зробити це можна було різними способами, і я обрав той, який назвав фокусом із трикутником. Подивіться на рисунок 6. На кутах трикутника розташовані три довільно обрані біоморфи. Той, що вгорі, — це базове дерево, ліворуч — одна з «моїх» комах, а праворуч — гарненький, на мій погляд, біоморф без назви. Як і всі біоморфи, кожен із цих трьох має свою власну генетичну формулу, що визначає його унікальне положення в дев’ятивимірному генетичному просторі.