Prírodou inšpirované algoritmy

študijné materiály pre projekt mobilnej triedy umelej inteligencie

Späť ku kurzom triedy
Obsah
Úvod
Evolúcia v Tierre
Sieťová Tierra
Experiment - interakcia kreatúr s látkou v prostredí
Linky
Literatúra
O tejto kapitole



Ostatné kapitoly
LEE
Framsticks
EINSTein
Nerve garden
Poly World
Simulácia evolúcie rozhodovania
Nornovia
Creatures 3
Primordial Life
Core War
Desktop Garp
Tierra
Avida


Tutoriály
 Celulárne automaty
 Morfogenéza
 Simulátory
 Evolučné algoritmy
 Chaos
 Roboty
 Rôzne


Evolúcia v Tierre

Evolvabilita

Kreatúry bojujú o „životný priestor“ v pamäti a „potravu“, ktorou je procesorový čas. Pri vykonávaní kódu kreatúr a najmä pri jeho kopírovaní sa náhodne vyvolávajú chyby (ktorých je niekoľko druhov). Zabezpečujú sa tým mutácie umelých organizmov a tak rôznorodosť populácie. Vďaka tomu bolo možné pozorovať napr. vznik „parazitov“, ktoré využívali pre svoje rozmnožovanie časť kódu „hostiteľa“, pritom ich vlastný kód bol veľmi krátky a preto rýchlo skopírovaťeľný. Potom sa v populácii objavili a rozmnožili organizmy imúnne voči parazitom, čím takmer vytlačili z prostredia parazity. Zakrátko však parazity zmutovali a celý cyklus sa opakoval.

Teda samovoľne prebiehala koevolúcia – jej prítomnosť v tomto digitálnom svete bolo jedným z významných prínosov Tierry.

Prvá pokusná inštrukčná sada Tierry vznikla narýchlo a bez hlbšej analýzy. Neskôr k nej pribudli ďalšie tri sady navrhnuté už dôslednejšie. Takto boli vytvorené štyri umelé svety s rôznymi životnými podmienkami. Hoci sa inštrukčné sady líšili len veľmi málo, bolo možné pozorovať dramatické rozdiely vo vlastnostiach evolúcie (v jej kvantite i kvalite). Avšak nebolo nijako možné odvodiť, ktorá zmena inštrukčnej sady spôsobuje ktorý rozdiel vo vlastnostiach evolúcie. Zatiaľ neexistuje teória, ktorá by opisovala reláciu medzi štruktúrou evolvujúceho systému a bohatosťou, či inými vlastnosťami evolúcie.



Príklady vývoja genómov v populáciách s rôznymi inštrukčnými sadami. Na horizontálnej osi je nanesený diskrétny čas, na vertikálnej osi je dĺžka genómu jedinca. Bod v grafe znamená, že sa v populácii vyskytol relevantný počet jedincov s genómom danej dĺžky.

Mnohobunkové pokusy

Vo všetkých predchádzajúcich pokusoch s Tierrou sa dali digitálne organizmy prirovnať k pozemským jednobunkovým organizmom. No za jednu z najväčších výziev pri výskume samovoľne sa vyvíjajúcich umelých systémov považuje prechod od jednobunkových organizmov k mnohobunkovým, preto sa pokúsili zaviesť aj do systému Tierra digitálnu analógiu mnohobunkovosti.

Podstata rozdielu pozemského mnohobunkového života od jednobunkového leží v tom, že viacero spolupracujúcich buniek tvoriacich jeden organizmus „vykonáva“ rovnaký genetický kód. V digitálnom svete Tierry živú bunku, resp. jednobunkový organizmus predstavuje jeden virtuálny procesor vykonávajúci príslušný kód v pamäti. Z toho teda vychádza, že mnohobunkový organizmus by mohol byť zrealizovaný ako niekoľko virtuálnych procesorov bežiacich nad tým istým kódom.

Príklad vývoja genómu vo viacbunkových experimentoch. Približne v čase 220 sa začína línia, kde sa organizmom zdvojnásobil počet buniek, čím sa síce genotyp mierne predĺžil, ale celkový čas na jeho skopírovanie sa skrátil, pretože ho vykonávalo viac buniek. (Horizontálna os – diskrétny čas, vertikálna – dĺžka genotypu.)

Na tejto myšlienke založili autori mnohobunkový koncept Tierry. Do inštrukčnej sady pridali niekoľkých inštrukcií, medzi nimi inštrukciu split, po vykonaní ktorej sa procesor rozdelí na dva paralelné procesory (analógia delenia buniek) zdieľajúce pôvodný kód. Každý zo vzniknutých procesorov dostáva svoje označenie a môže vykonávať ľubovoľnú časť kódu. Tak bola teoreticky umožnená diferenciácia buniek – teda každý z procesorov organizmu mohol vykonávať inú časť spoločného kódu. Avšak pri experimentoch sa žiadna diferenciácia neobjavila. Do prostredia bol vsadený funkčný dvojbunkový organizmus, pričom každá z jeho buniek kopírovala polovicu kódu do potomkov. Časom sa objavili štvor- aj viacbunkové organizmy, v ktorých si bunky opäť iba podelili prácu s kopírovaním kódu. Očakávaný vznik buniek s odlišnými funkciami však nenastal.

Hore
Kontakt: Marek Bundzel