Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Úvod
Prostredie
Genetika
Fyfziológia
Nervový systém a učenie
Správanie
Simulátor
Linky
Literatúra



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


Simulátor

Pôvodný Yaegerov simulátor beží na platforme Silicon Graphic. Jeho vykonateľný program je možné stiahnuť na stránke PolyWorldu spolu s používateľskou príručkou. Prístupný je aj zdrojový kód PolyWorld simulátora, ktorý je pôvodne písaný pre kompilátor SGI C++ bežiaci pod operačným systémom Irix. Bez väčších problémov by sa mal dať skompilovať aj na Linuxoch.

Existuje podobný simulátor životného prostredia Achilles, ktorý je založený na tých istých Yaegerových genetických algoritmoch a neurónových sieťach. Stiahnuť a vyskúšať ho je možné na domovskej stránke. Na stránke je tiež k dispozícii jeho zdrojový kód.

Achilles zobrazuje všetky objekty ako 3D (čo sa týka tvaru), pohyb je však možný iba v 2 rozmeroch. Organizmy nadobúdajú rôzne farby, ktorých význam je rovnaký ako v pôvodnom simulátore, to znamená:

  • červená farba bojachtivý organizmus
  • modrá farba organizmus, ktorý sa chce páriť
  • žltou farbou sú znázornené mŕtve organizmy (sú vlastne potravou)

Prejavy správania ako jedenie, párenie a boj sa graficky znázorňujú prúžkami vychádzajúcimi z organizmu, prípadne prebleskujúcimi medzi organizmami. Aj tu majú farby svoj význam:

  • červený prúžok znamená boj
  • modrý prúžok znamená párenie
  • žltý prúžok znamená prijímanie potravy

Simulátor sa spúšťa z príkazového riadku s prípadnými parametrami:

achilles [ -v | -h | -x n | -z n | -f n | n ]

-v - vypíše číslo verzie
-h - vypíše voľby a implicitné nastavenia
-x n - rozmer sveta v osi x
-z n - rozmer sveta v osi z
-f n - minimálne množstvo jedla
n - minimálny počet organizmov

Odporúčané voľby sú:

achilles -x 16 -z 16 -f 10 10

Ovládanie počas simulácie:

  • šípkami sa ovláda rotácia pohľadu okolo vertikálnej osi y a posun dopredu a dozadu
  • PageUp a PageDown ovláda vertikálny posun (hore/dole)
  • P pozastaví a opäť spustí simuláciu
  • S uloží snímku sveta do grafického súboru
  • Esc ukončí simuláciu





Príklady

Ukážky snímok simulácie (kliknutím na obrázok sa zobrazí jeho väčšia verzia):

Na následujúcom obrázku je vidieť rôzne organizmy rozložené po životnej ploche. Organizmy sa líšia svojou veľkosťou a sfarbením. Je vidieť modro sfarbené organizmy (párenie), červeno sfarbené organizmy (bojová agresia) a žlto sfarbené pozostatky organizmov. Platí, že čím jasnejšie modré sfarbenie, tým má organizmus väčší sklon k páreniu, analogicky čím jasnejšie červené sfarbenie, tým je väčšia bojová agresia organizmu.

Na ďalšom obrázku je vidieť prejavy správania organizmov. Naľavo sa jeden organizmus „kŕmi“ pozostatkami iného organizmu – medzi ním a potravou je žltý prúžok. V strede môžeme pozorovať boj dvoch organizmov, z útočníka vedie k napadnutému červený prúžok. Ešte je možné pozorovať párenie dvoch organizmov, ktoré by sa graficky prejavilo modrým prúžkom medzi páriacimi sa organizmami.

Hore
Kontakt: Marek Bundzel