Quo vAIdis - ebook
Od programów sprytniejszych od swoich twórców po jednorożce rysowane przez sieci neuronowe – jest tu wszystko, czego potrzeba, by samodzielnie myśleć o AI. Autor nie moralizuje, tylko grzebie, dziwi się i pokazuje, jak działa świat opisywany równaniami i kodem. To jedna z tych książek, po których świat widzi się trochę wyraźniej.
- Wojciech Zaremba, współzałożyciel OpenAI
AI nabiera głębszego sensu wraz z książką Andrzeja Dragana. Czy to tylko funkcja matematyczna, mnożenie macierzy odtwarzające kolejne słowa jak stochastyczna papuga, bezduszny twór informatyków? Czy jednak modele wykazują cechy prawdziwej inteligencji, rozumują i są kreatywne? Ta książka to panoramiczny obraz, ale też świeże spojrzenie na tematykę AI. Niezwykle przystępnie opisuje mechanizmy działania modeli językowych. Poruszy niejeden neuron w naszych głowach.
- Remek Kinas, współtwórca polskiego modelu językowego Bielik
Andrzej Dragan jest profesorem fizyki na Uniwersytecie Warszawskim oraz National University of Singapore, zajmuje się łączeniem teorii względności z teorią kwantową. Laureat nagród i stypendiów European Science Foundation, ministra edukacji, Fundacji na rzecz Nauki Polskiej, Narodowego Centrum Nauki i tygodnika „Polityka”, zdobywca tytułu Wizjoner Roku Digital Shapers. Stypendysta University of Oxford. Pracował w Imperial College London i na University of Nottingham. Autor trzech książek i ponad sześćdziesięciu artykułów naukowych. Zdobył też tytuł Fotografa Roku brytyjskiego pisma „Digital Camera” i statuetkę Fryderyka, był nominowany do Złotego Lwa na festiwalu reklamowym w Cannes. Twórca fotograficznego efektu Dragana – jego prace wystawiano w kilkunastu krajach. Zdobywca nagrody głównej na London Fashion Film Festival, Popkillera oraz wyróżnienia Best in Show magazynu „Creative Review”, a także nagród na festiwalach Berlin Music Video Awards, Epica Awards, Script Fiesta i ponad dwudziestu nagród w konkursie KTR, w tym Best of Culture. Jako nastolatek wygrywał liczne konkursy muzyki elektronicznej w ramach demosceny. Nigdy nie pił kawy.
Dragan bada AI jak nieznane zwierzę, dziwny fenomen przyrody. Ogląda z różnych stron. Testuje. Dźga i przekłuwa. Ucząc siebie – i czytelnika – tej rzeczywistości z ciekawością ADHD-owego dzieciaka, właściwą naukowcom-odkrywcom.
- Jacek Dukaj, pisarz
AI wpłynie na każdy aspekt naszego życia, a „Quo vAIdis” przystępnie – i zaskakująco dogłębnie – wyjaśnia kluczowe pojęcia tej dziedziny. To niezbędnik do każdej poważnej rozmowy o AI.
-prof. Aleksander Mądry, MIT, OpenAI
Warto przeczytać, aby zrozumieć, czym jest inteligencja. Ta „prawdziwa” i ta „sztuczna”.
- prof. Piotr Sankowski, UW, Ideas NCBR
Ta publikacja spełnia wymagania dostępności zgodnie z dyrektywą EAA.
| Kategoria: | Literatura faktu |
| Zabezpieczenie: |
Watermark
|
| ISBN: | 978-83-8399-515-1 |
| Rozmiar pliku: | 1,4 MB |
FRAGMENT KSIĄŻKI
Czy sztuczna inteligencja to prawdziwa inteligencja, czy tylko imitacja? Czy AI potrafi być naprawdę kreatywna, czy tylko papuguje po nas, ludziach, bo jest fundamentalnie ograniczona tym, czego się od nas nauczyła, a sama niczego nigdy nie wymyśli? Czy modele językowe naprawdę rozumują, czy tylko recytują? No i czy AI może nas kiedyś intelektualnie przekroczyć, czy też nigdy nie będzie mieć do nas podjazdu, bo jest tylko sekwencją matematycznych obliczeń? I dokąd cały ten cyrk w ogóle zmierza? Takie pytania krążą ludziom w głowach jak podpalone ptaki.
Nie jestem fanem ludzkich opinii, a już na pewno nie w takich sprawach. Im mniej opinii, tym rzadziej ludzie jedzą z podłogi. Dlatego będę się tu skupiać na różnych prostych obserwacjach i frapujących faktach, a z opiniami dam sobie na wstrzymanie, pozostawiając wygłaszanie ich ekspertom i pozostałym czcigodnym zainteresowanym.
Fizyka to najskuteczniejsza metoda docierania do prawdy o wszystkim, co ciekawe. Poprzez eksperymentowanie z rzeczywistością. A że sztuczna inteligencja jest przecież piekielnie ciekawa, to sobie z nią trochę poeksperymentujemy, pogrzebiemy pod maską, tu i ówdzie wsadzimy palec i sprawdzimy, czym AI jest, czym nie jest, i tak dalej. I oby ta książka do momentu wydrukowania nie zdążyła się nadmiernie zdezaktualizować. W najgorszym razie zostanie z niej tymczasowe świadectwo naszej, albo mojej raczej, ignorancji. No i przełomowych czasów, gdy ludzie wciąż jeszcze mieli wątpliwości co do nieprzewidywalnej przyszłości, która przed nami.
Wielkie dzięki dla Kasi Kausy, Tomka Czajki, Remka Kinasa, Aleksandra Mądrego, Piotrka Sankowskiego, Wojtka Zaremby i Roberta Chojnackiego za przeczytanie i pożyteczne dokuczanie autorowi. A za wszelkie popełnione błędy, tradycyjnie, niechaj diabeł poniesie mnie na oklep w otchłań hańby!ROZDZIAŁ 1
PROGRAM SPRYTNIEJSZY OD PROGRAMISTY
Był sobie las. W lesie rosło drzewo. A na drzewie wisiał liść. Liść łapał światło, a Kanadyjczycy znani z uprzejmości zrobili sobie z niego swój symbol narodowy. Tymczasem w lesie toczy się debata na temat fajności liścia i okazuje się, że zdania są cokolwiek podzielone. Trawy i krzaki rosnące nisko podnoszą, że nie da się gromadzić światła bez rzucania gdzieś cienia, a cień drzew pozbawia światła wszystkich, co siedzą na spodzie lasu. Drzewa odpowiadają, że trzeba było jeść kaszkę na śniadanie i szybciej rosnąć, no i zaczyna się awantura.
Nie da się ukryć, że z perspektywy roślin żyjących w leśnych nizinach społecznych liście wysokich drzew są śmiertelnym zagrożeniem. A cały ten las to nie świeże powietrze ani miła atmosfera, tylko morderczy wyścig o to, kto komu zabierze więcej światła. My takiego lasu nie dostrzegamy, bo nam go drzewa zasłaniają, ale wychodzi na to, że sympatyczny liść z kanadyjskiej flagi to dla tych spod spodu symbol gorszy od swastyki. Kwestia perspektywy.
A czy my, ludzie, karmiący się produkowanym przez las tlenem, powinniśmy darzyć drzewa sympatią, skoro nas tak bezinteresownie dożywiają? Otóż i to jest kwestią dyskusyjną. A co, jeśli drzewa tuczą nas tlenem tylko po to, żeby w przyszłości miały co pożreć swoimi korzeniami, gdy w końcu trafimy do gleby? Kto tu więc kogo hoduje?
Jak widać, sprawa niby prosta, ale ciosy w beret trudne do uniknięcia. Wracając do liścia – jakież to substancje odżywcze tkwią w świetle, że liść tak się o nie bije? Energia może? „Energia to życie”, czy tak? Jeśli to właśnie energia jest zasobem, którego ziemskie życie tak potrzebuje, to jak wyjaśnić fakt, że Ziemia wypluwa tę życiodajną energię w kosmos w formie promieniowania cieplnego dokładnie w takiej samej ilości, w jakiej pobiera ją od Słońca? Czemuż to tak chętnie pozbawiamy się owej życiodajnej pożywki? No bo przecież gdyby Ziemia pobierała od Słońca więcej energii, niż oddaje z powrotem kosmosowi, konsekwencje byłyby dla nas opłakane: Ziemia by się podgrzewała, a całe życie zagotowałoby się na amen. W naszym żywotnym interesie jest więc, żeby bilans energii był dokładnie zerowy. No i na szczęście jest.
Tylko skoro liście walczą o dostęp do światła, to jaki cel im w tym przyświeca, jeśli nie potrzeba pobierania energii? Otóż całkowity bilans energetyczny Ziemi jest rzeczywiście w zasadzie zerowy, natomiast niezerowy jest bilans czego innego: ilości bałaganu wytwarzanego w całym tym procesie. Ziemia połyka od Słońca wysokoenergetyczne światło widzialne składające się z małych, kwantowych porcji nazywanych fotonami. Jako że powierzchnia Ziemi jest o parę tysięcy stopni chłodniejsza od powierzchni Słońca, to wypluwamy w kosmos światło zrobione z „zimnych” fotonów niskoenergetycznych. Na ten rodzaj światła mówi się potocznie „podczerwień” albo „promieniowanie cieplne”. Żeby energia „się zgadzała”, wypluwanych fotonów musi więc być więcej niż połykanych i dlatego w całym tym procesie pochłaniania i wypluwania światła – fotonów w kosmosie przybywa. Czyli we wszechświecie robi się coraz większy bałagan. Ten bałagan fizycy nazywają entropią – i twierdzą, że entropia rośnie. Jedna z podstawowych zasad fizyki mówi, że sumaryczny bałagan we wszechświecie, czyli entropia, może tylko wzrastać, nie może maleć. I dzięki temu, że zaśmiecamy kosmos fotonami, to u nas, na Ziemi, może tworzyć się porządek, a z niego rozwija się życie. Jeśli na Ziemi mają się tworzyć uporządkowane struktury, czyli porządek ma się zwiększać, to trzeba za to zapłacić robieniem bałaganu gdzieś indziej. Mówienie, że Ziemia zużywa energię Słońca, jest więc chyba nadmiernym skrótem myślowym. Energii nie da się zużywać, bo jej ilość w przyrodzie w ogóle się nie zmienia. „Zużywamy” natomiast niską entropię zasysaną od Słońca.
Tymczasem na liściu siedzi ślimak. Ślimak wystawił rogi i już za rogiem czai się kolejna intryga. Ślimak nadgryzł bowiem kawałek liścia i wcale nie wyjdzie mu to na zdrowie. To dlatego, że na tym liściu znalazło się akurat jajo przywry _Leucochloridium paradoxum_ – mikroskopijnego stworzenia bożego, które ślimak razem z kawałkiem liścia pożarł. Teraz przywra jest szczęśliwa, bo wewnątrz ślimaka może rozwinąć skrzydła, póki co tylko metaforycznie. Przywra najpierw atakuje wątrobę ślimaka, blokując jego rozród, a zrabowane zasoby pożywienia sama pochłania. Dzięki temu nabiera nie tylko masy, ale i kolorów. Dosłownie! Stwór, który zalągł się w ślimaku, staje się tak kolorowy, że jego jaskrawe paski walą po oczach nawet na zewnątrz ślimaka, co widać przez cienką skórę. Do tego pasożyt zaczyna się rozpychać i wciska się do środka ślimaczych rogów! Ślimak, pokaż rogi! Biedny ślimak! Teraz jego rogi zaczynają puchnąć, pulsować jaskrawymi kolorami i przypominać dwie pełzające gąsienice. I to podobieństwo nie jest wcale przypadkowe. Przywra, która wywołuje wszystkie te powikłania kolorystyczne, zabiera się teraz do paraliżowania układu nerwowego bezbronnego ślimaka. Przez to ślimak, który zazwyczaj unika światła, zaczyna pełznąć w jego kierunku. Tego światła jest oczywiście najwięcej na czubkach roślin skierowanych ku niebu, więc tam właśnie brnie ślimak, wystawiając swoje pulsujące rogi na widok publiczny. Co dzieje się potem? Ślimak zwraca uwagę przebywających w okolicy ptaków, które tylko czekają, aż gdzieś pojawi się jakaś gąsienica. A że pulsujące rogi są już niemal nieodróżnialne od pulchnych gąsienic, kończy się wydziobywaniem ślimakowi jego rogów przez ptaki.
Czy pisałem, że przywra wewnątrz ślimaka rozwija skrzydła metaforyczne? Otóż skrzydła przestają być metaforyczne i stają się dosłowne, bo przywra przesiada się do wnętrza ptaka. Ptak czy owad, przywra uzyskuje tam dojrzałość, produkuje kolejne jaja, które wydalają się z ptaka jego przeciwległym końcem i lądują na kolejnym liściu, gdzie czeka już następny ślimak. Cykl się zamyka, smacznego.
I co tu się w ogóle wydarzyło?! Czy przywra jest aż tak inteligentna, żeby wszystko to sobie starannie obmyśleć i zaplanować? No jak ma być inteligentna, skoro nie ma czym – nie dysponuje przecież żadnym mózgiem. Czy to więc w ogóle inteligencja? A może jakiś inteligentny projektant przywry tak ją sobie sprytnie obmyślił? Na to również nie wygląda, bo ewolucja biologiczna zachodzi bez udziału jakiegokolwiek projektanta. Ale skoro tak, to skąd się wzięła cała ta przemyślna strategia? Sama się wymyśliła? Dla osób rozumiejących mechanizmy ewolucyjne sprawa jest w miarę jasna – w pewnym sensie cała ta strategia rzeczywiście wymyśliła się sama. Zresztą w ramach mechanizmu ewolucyjnego powstała także nasza ludzka inteligencja. Natomiast dyskusja o tym, co to jest inteligencja, a co nie, jak i czym to mierzyć, wraca w dzisiejszych czasach o wiele intensywniej niż kiedykolwiek, na okoliczność nowej formy inteligencji. Tak zwanej sztucznej inteligencji. Tylko czy cała ta sztuczna inteligencja to w ogóle jakakolwiek „prawdziwa” inteligencja? A jeśli tak, to czy jej źródłem jest mądrość programisty?
W czasach podstawówki, w Koninie, chciałem zostać programistą. W końcu jednak zacząłem nadmiernie grzebać w podręcznikach do fizyki, więc skończyło się inaczej. Ale zanim do tego doszło, pierwszą nieuczciwie zarobioną kasę wydałem na laptopa, żeby móc sobie nieco poprogramować. Laptop był używany, z połamaną obudową i grubszy od cegły, a do tego ważył więcej niż kilo i pół cegły, ale do moich celów się świetnie nadawał. Wcześniej, w szóstej czy siódmej klasie, kodowałem trochę w asemblerze na starej amidze. Wystarczyło na tyle, żeby odpalić skomponowaną wcześniej elektroniczną muzykę na kradzionych samplach, wyświetlić 32-kolorowy obrazek poskładany z pięciu bitplanów, puścić w tle ruchome piksele udające lecące gwiazdy i jakiś napis. Film _Star Wars_ to może nie był (chyba że chodzi o ciężarówkę Star i wagon Wars), ale skompilowałem swój wytwór, nagrałem na dyskietkę i zaniosłem pochwalić się kumplom na konińskiej giełdzie komputerowej. Pech chciał, że zamiast cudownej 8-bitowej muzyki słychać było tylko ciąg trzasków, rysunek tworzony przez parę dni spontanicznie przepoczwarzył swoje kolory, a zamiast lecących z tyłu sprajtów wyświetliły się losowe fragmenty bitmapy i latały po ekranie z lewa na prawo. Zapomniałem zainicjować czyszczenie pamięci – szyderstwa kolegów trwały jeszcze długie, bolesne tygodnie.
Dzisiejsi programiści marudzą, że asembler jest językiem dla psychopatów, bo nie ma w nim żadnych „normalnych” komend, tylko trzeba bezpośrednio adresować rejestry w procesorze. No, mają rację. Tak mniej więcej wygląda pierwszy z brzegu kawałek kodu:
SECTION code, code_c
start:
lea dosName(pc), a1
moveq #0, d0
move.l a1, d1
moveq #0, d2
jsr -552(a6)
tst.l d0
beq exit
move.l d0, a6
lea helloString(pc), a1
moveq #13, d0
jsr -660(a6)
move.l a6, a1
jsr -414(a6)
exit:
rts
helloString:
dc.b “Amiga rulez”, 0
dosName:
dc.b “dos.library”, 0
Dziś nikt przy zdrowych zmysłach nie będzie w czymś takim się babrać, nawet żeby oprogramować kasę fiskalną. Te dwadzieścia parę linijek bełkotliwego kodu było potrzebnych, żeby amiga wypluła napis „Amiga rulez”. Obecnie z dwudziestu linijek kodu w języku wysokiego poziomu to można wykręcić nawet trening sieci neuronowej do rozpoznawania pisma odręcznego:
import tensorflow as tf
from tensorflow.keras.datasets import mnist
from tensorflow.keras.utils import to_categorical
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
y_train, y_test = to_categorical(y_train), to_categorical(y_test)
model = tf.keras.Sequential()
model.compile(optimizer=’adam’, loss=’categorical_crossentropy’, metrics=)
model.fit(x_train, y_train, epochs=5, batch_size=64, validation_split=0.1)
print(“Test accuracy:”, model.evaluate(x_test, y_test, verbose=0))
Różnica w stopniu złożoności obu problemów to coś jak różnica pomiędzy budową młotka a schematem najnowszego iPhone’a. Oczywiście wszystkie brudne szczegóły zostały poupychane w bibliotece wczytywanej w pierwszej linijce kodu. Tylko że do takich bibliotek co bardziej leniwym programistom nie chce się nawet zaglądać… W każdym razie trenowanie sieci neuronowych można dziś sobie odpalać bez odrywania się intelektualnie od żucia gumy. Tylko się potem nie ma co dziwić, jak weterani programowania zaczynają jęczeć, że prawdziwi mężczyźni kodują tylko w asemblerze.
Tak czy owak, ptak czy owad, przesiadłem się z amigi na „nowego” laptopa, a z kodowania w asemblerze na programowanie w Pascalu. Zacząłem sobie symulować ruchy planet w Układzie Słonecznym albo generować rozkłady linii pól elektromagnetycznych w przestrzeni. Coś pięknego. Przyszło mi do głowy, że jak pójdę na studia, to zamiast robić notatki w zeszycie, będę sobie wszystko notować na swoim pięknym laptopie. Potrzebny mi był do tego edytor pozwalający wstawiać do tekstu wzory matematyczne. Jako że zwykły Word tego wtedy nie umiał, uznałem, że sam sobie taki edytor zrobię. Tylko nikt mi nie powiedział, że coś takiego już od dawna istnieje, nazywa się LaTeX i robi wszystko, co chciałem, tylko sto razy lepiej. I tym sposobem 15 tysięcy linijek kodu, który cyzelowałem przez parę miesięcy, poszło do piachu.
Mniej więcej w tym czasie natrafiłem na fantastyczną książkę – _Samolubny gen_ Richarda Dawkinsa, w której było o różnych, zadziwiająco inteligentnych mechanizmach ewolucyjnych. Fajnie by było coś takiego zasymulować na laptopie. Więc stworzyłem sobie płaski, dwuwymiarowy mikrokosmos podobny do kartki papieru w kratkę. Chciałem, żeby po tych kratkach biegały sobie różne prymitywne mikroorganizmy i ze sobą oddziaływały. Zrobiłem kilka pikselowanych rysunków przedstawiających ludziki dwóch płci i napisałem program, który umieścił parędziesiąt takich osobników na chybił trafił w różnych kratkach tego sztucznego świata. Dorysowałem do tego jeszcze „owoce” oraz „trucizny” i pozwoliłem im pojawiać się w przypadkowych chwilach w losowych punktach kratkowanej mapy. W ten sposób powstał dwuwymiarowy świat wypełniony ludzikami, owocami i truciznami. No fajnie, ale teraz trzeba to było jakoś ożywić.
Większość bożych stworzeń steruje swoimi organizmami w taki sposób, żeby zmniejszać odległość od pożywienia, a zwiększać od źródeł problemów. Pytanie, co trzeba by było zrobić, żeby nauczyć podobnego zachowania komputerowe ludziki. Z tego, co pisał Dawkins, wynikało, że niewiele było trzeba. Wystarczyło podobno tylko stworzyć odpowiednie warunki, zainicjować autoreplikację i poczekać, aż zrobi się samo. Tak to przynajmniej działało w świecie żywych stworzeń.
No to najpierw uznałem, że ludziki trzeba napędzać jakąś formą energii (a może raczej entropii?), żeby nie robić z nich perpetuum mobile. Każdy dostał więc pewien zapas „energii”, który zmniejszał się przy kolejnych turach gry. Gdy energia spadała do zera, ludzik był eliminowany z planszy. W każdej turze ludziki mogły się przesuwać wyłącznie na sąsiednie pola – pozwoliłem im „widzieć” tylko sąsiednie kratki, i nic więcej. Gdyby tak się akurat złożyło, że ludzik przeszedłby na pole, na którym znajdował się owoc, owoc zostałby pożarty, a ludzik zyskiwałby nieco energii. Wejście na pole z trucizną kończyłoby się natomiast zmniejszeniem energii. Takie sobie wprowadziłem reguły, tyle że ludziki ich nie znały, za to mogły działać w pełni autonomicznie i samodzielnie eksperymentować z okoliczną fauną i florą. Na przykład, gdy ludzik właził na pole zajmowane przez innego ludzika o tej samej płci, zarządzany był pojedynek. Zwyciężał automatycznie ten okaz, który miał akurat wyższy poziom energii. Wygrany pożerał pokonanego i podwyższał zapas swej energii. Wejście na pole z przedstawicielem płci przeciwnej prowadziło natomiast do wirtualnej kopulacji i rozmnożenia.
Jak ludziki „decydowały”, w którą stronę mają się poruszać? Każdy dostał indywidualne „DNA”, determinujące jego preferencje logistyczne. Owo „DNA” stanowiło listę priorytetów decydującą o tym, dokąd dany ludzik będzie chciał się przemieszczać najbardziej, a dokąd najmniej: od pól najbardziej pożądanych, na które ludzik przesunie się w pierwszej kolejności, jeśli tylko trafi się taka możliwość, do najmniej pożądanych, na które wejdzie tylko wtedy, gdy nie będzie nic innego do wyboru. Lista ta warunkowała zachowanie każdego egzemplarza. W przypadku spotkania z przedstawicielem przeciwnej płci dochodziło do rozmnożenia: w pobliżu pojawiało się na planszy potomstwo, które dziedziczyło po rodzicach ich sposób poruszania się. A dziedziczyło na podobnych zasadach, co nagie małpy: po równo od każdego rodzica.
W tym momencie docieramy do najważniejszego pytania: jak należało wybrać mechanizm zachowania ludzików? Jakiś „inteligentny projektant” mógłby wyznaczyć optymalną strategię i wyposażyć w nią każdego osobnika, tak jak sobie wyobrażają powstanie życia kreacjoniści. Ale żeby takiego scenariusza uniknąć, „DNA” każdego ludzika zostało wybrane kompletnie losowo, bez jakiegokolwiek zaprojektowanego sensu. I zaczęła się zabawa.
Ludziki zaczęły biegać po ekranie – w każdej turze każdemu przypadał jeden ruch, zgodny z jego indywidualnym „DNA”. Wyglądało to jak mrowisko na sterydach. Nikogo zapewne nie zdziwi, że większość istot zachowywała się kompletnie bezrozumnie. To znaczy bezrozumne były wszystkie, bo nie kierował nimi żaden rozum, tylko losowo wybrane „DNA”, które doprowadziło większość populacji do błyskawicznej zagłady. No bo ludziki albo omijały jedzenie, albo właziły na truciznę i przyspieszały swoją śmierć, albo atakowały się wzajemnie i ginęły w pojedynkach… W początkowej fazie eksperymentu pogłowie zostało przetrzebione. Ale garstka, która przetrwała, zaczęła wykazywać coś na kształt oznak rozsądku. No bo przeżyły tylko te organizmy, których „DNA” dyktowało im rozsądne zachowania: żreć owoce, omijać trucizny, a w wolnych chwilach się rozmnażać. Eksperyment zaczynał wyglądać obiecująco.
Zaprogramowałem sobie osobne okno, w którym na żywo mogłem śledzić statystykę „DNA” organizmów z ocalałej populacji. Coś jak analiza kolektywnej duszy. Po każdym resecie nowo wylosowana populacja najpierw zachowywała się irracjonalnie, ale z czasem jej zachowanie nabierało sensu, a na czubek listy priorytetów wspinały się cele służące przeżyciu. Teraz zmodyfikowałem organizmy w taki sposób, żeby działanie „DNA” zależało od tego, czy dany egzemplarz był głodny (miał mało energii), czy najedzony (dużo energii). Dzięki temu ludziki miały możliwość zmiany swojego zachowania w zależności od stopnia najedzenia. No i znów okazało się, że selekcja naturalna prowadzi do zadziwiająco rozsądnych zachowań. Okazy głodne intensywniej poszukiwały pożywienia (owoc na czubku listy priorytetów), a nażarte były bardziej skore do kopulowania (na górę listy wskakiwało przemieszczanie się na pole zajmowane przez płeć przeciwną). Wyszło na to, że ewolucja dość szybko „zapładniała myślowo” materiał genetyczny sterujący ludzikami. Oczywiście nie poprzez procesy edukacyjne, tylko bardziej prymitywnie i skutecznie – poprzez beznamiętną eliminację organizmów zachowujących się w sposób zagrażający ich genom.
Istnieją swoją drogą co najmniej trzy interesujące argumenty dotyczące tego, czy zainicjowanie prawdziwych biologicznych procesów ewolucyjnych jest rzeczą łatwą, czy wprost przeciwnie. Znamy co prawda tylko jeden przykład życia w kosmosie – swój własny, ale na szczęście jest on dość pouczający. Otóż po pierwsze, nasze organizmy zbudowane są ze składników powszechnie występujących we wszechświecie. Do życia nie są wymagane jakieś specjalnie rzadkie pierwiastki. Wystarczy wodór, tlen i węgiel, i w pierwszym przybliżeniu to tyle. Ta obserwacja sugeruje, że życie może powstawać z tego, co akurat znalazło się pod ręką. Czyli z byle czego. Po drugie – podejrzewa się, że pierwsze ewoluujące organizmy pojawiły się na Ziemi jakieś setki milionów lat po tym, jak jej powierzchnia się ochłodziła na tyle, żeby związki chemiczne mogły być trwałe. Ten czas to w skalach kosmicznych raczej mało, co sugeruje, że inicjacja ewolucji w stabilnych warunkach nie wydaje się szczególnie trudna. Wreszcie po trzecie, do powstania istot myślących podobnych do nagich małp trzeba było poczekać parę miliardów lat, a to już sporo. Niewykluczone, że te trzy wskazówki mogą być pomocne w odpowiedzi na pytanie, czy życie jest w kosmosie rzadkie, czy może powszechne, oraz ile tego życia jest skażone objawami inteligencji.
Tymczasem zmodyfikowałem program w taki sposób, żeby śmierć osobników następowała nie tylko z głodu, ale również ze starości. Każdy ludzik dostał swój biologiczny zegar ustawiony najpierw na długowieczność, ale co jakiś czas któryś nowo narodzony okaz dziedziczył długość życia skróconą o jeden „dzień”. Czy stopniowe skracanie doprowadziło do unicestwienia populacji?
Zgodnie z oczekiwaniami średnia długość życia osobników w populacji systematycznie malała. A jednak skracanie się życia w pewnym momencie wyhamowało! Zacząłem przeprowadzać eksperyment od początku, ale efekt wciąż się powtarzał: średni żywot osobników za każdym razem osiągał ten sam minimalny pułap i populacja jakimś cudem unikała zagłady. Jakim cudem? Otóż osiągany dolny pułap długości życia był w przybliżeniu równy przeciętnemu czasowi potrzebnemu do znalezienia sobie w okolicy partnera do kopulacji. Osobniki, które umarły, nie zdążywszy się rozmnożyć, po prostu nie przekazywały dalej swoich marnych genów! A zostawały tylko te egzemplarze, które miały dość czasu na osiągnięcie sukcesu reprodukcyjnego. Populacja zaczęła zachowywać się jak Woody Allen, który nieraz powtarzał: „w sprawie śmierci moje stanowisko pozostaje niezmienione – jestem przeciw”.
Trudno nie zauważyć, że ten skrajnie uproszczony modelik przypomina okoliczności znane z prawdziwej biologii: większość objawów fenotypowych starzenia się obserwowanych u zwierząt rozpoczyna się dopiero po osiągnięciu dojrzałości płciowej. Egzemplarze starzejące się lub umierające za wcześnie są po prostu eliminowane z puli genetycznej. Biologowie nazywają to mądrze plejotropią i zgodnie z hipotezą Georga Williamsa to z jej powodu jesteśmy skazani na umieranie.
Majstrowałem sobie w najlepsze w zabawkowym mikrokosmosie, aż tu nagle przy którejś modyfikacji powstało pokolenie zachowujące się kompletnie bez sensu. Ni stąd, ni zowąd osobniki robiły się bardziej agresywne, jednak nie wtedy, gdy były najedzone, ale dopiero wówczas, gdy robiły się głodne. Było to absurdalne, bo zgodnie z regułami gry w pojedynku zwyciężał zawsze osobnik bardziej najedzony. Czyli szansa na zwycięstwo głodnego była statystycznie marna… Wyglądało to wręcz jak tendencja do ataków samobójczych. Co gorsza, sytuacja wcale nie była incydentem. Restart mikrokosmosu niemal za każdym razem prowadził do podobnego zachowania. To osobniki głodne, a nie najedzone, atakowały swoich towarzyszy, skazując się na statystyczną śmierć. Było ewidentne, że gdzieś w kodzie, który przybrał już monstrualne rozmiary, musiał tkwić błąd. No i spędziłem upojne dni na szukaniu tego błędu, co okazało się błędem. Bo jak wiadomo, każdy skomplikowany problem ma proste rozwiązanie i jest ono błędne. Okazało się, że w programie nie było żadnego błędu.
Mikrokosmos „wpadł” na przebiegłą strategię adaptacyjną. Zgodnie z tym, co pisał Dawkins, ewolucja dąży wcale nie do tego, by zapewniać przetrwanie organizmów, lecz żeby zapewniać przetrwanie genów transportowanych przez te organizmy. Różnica niby mało istotna, no bo w końcu dobro organizmu i dobro jego genów są zazwyczaj zbieżne. Ale zazwyczaj to nie to samo co zawsze.
Otóż populacja wyhodowana w stabilnym środowisku stawała się po pewnym czasie „jednorodna genetycznie”. Czyli wszystkie ludziki były prawie takie same, bo dostosowywały się do optymalnej strategii w swoim środowisku. A przy którejś modyfikacji kodu stała się rzecz następująca: bez głębszego namysłu ustawiłem parametry programu akurat tak, że zwycięzca pojedynku zdobywał więcej punktów energii, niż tracił statystyczny pokonany. Z tego powodu samobójczy atak wyglądający na kompletnie bezsensowne poświęcanie życia okazywał się w rzeczywistości aktem „altruizmu”, bo jeden organizm oddawał co prawda resztkę swojej energii, ale za to drugi zyskiwał jej o wiele więcej. No i sumaryczna strategia zdobywania energii przez jednorodną genetycznie populację okazywała się opłacalna. Niechcący stworzyłem świat, w którym autodestrukcja miała ewolucyjny sens i mieszkańcy mikrokosmosu tę lukę „wykryli”.
No i dobrnęliśmy do morału całej historii. Powstał bowiem prosty program, który ewolucyjnie „nauczył się” sprytnego zachowania, na które nie wpadłem, choć byłem autorem całego programu. Właśnie na takie sytuacje, w których program komputerowy wykazuje pozorne oznaki czegoś, co u ludzi nazwalibyśmy inteligencją, wprowadzono specjalne określenie: sztuczna inteligencja_._
Wnioski ze szkolnego eksperymentu zaprogramowanego w języku C __ utkwiły mi w głowie na długo. Ani sprytne ludziki z symulacji, ani przywra _Leucochloridium paradoxum_ nie potrzebowały do szczęścia inteligentnego programisty. Opisany powyżej prymitywny mikrokosmos zawierał tylko kilkaset osobników i ewoluował przez 20 minut, a przywra powstawała przez miliony lat chłostających selekcją naturalną nieprzebrane legiony nieudanych osobników. Ale choć skala nie do porównania, efekty okazały się zbliżone. W sprzyjających okolicznościach inteligentnie wyglądające strategie mogą zrobić się „same”, bez twórczego wkładu programisty. Pytanie, jak tworzyć te „sprzyjające okoliczności”, żeby rzeczy chciały się wymyślać same? I jak daleko może sięgać wytworzona w ten sposób „inteligencja”? I czy w ogóle jest to prawdziwa inteligencja, czy tylko bezmyślny program?
Te pytania stały się refrenem nowej ery, która rodzi się na naszych oczach. Bo dotarło do nas, jak tworzyć na zawołanie takie „sprzyjające okoliczności” w sposób zaplanowany i systematyczny. Nauczyliśmy się hodować nową kategorię programów komputerowych ochrzczonych mianem „sztuczna inteligencja”, a czy słusznie, czy nie, będziemy dyskutować.