Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Popis funkčnosti simulátora
Rozhodovacie procedúry
Evolúcia (genetický algoritmus)
Ukážky
Download
Linky



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


Rozhodovacie procedúry

Rozhodovanie sprevádza každú činnosť "žijúcich" entít. To, čo daná životná forma kedykoľvek robí, závisí od mnohých vplyvov. Tie môžeme rozdeliť do dvoch kategórií: vnútorné a vonkajšie. V základnej simulácii (BD, Basic Demo) sú len dva : množstvo energie DMT (vnútorný vplyv) a potrava v mriežke (vonkajší vplyv). Všetky vlastnosti definujeme ako binárne, každá môže mať iba dve hodnoty. Pri prvej vlastnosti, DMT má buď "veľa" alebo "málo" energie ("veľa" a "málo" sú zadefinované už na začiatku simulácie). Takéto zadanie vedie k štyrom možným podmienkam :

  1. málo energie/potrava neprítomná
  2. málo energie/potrava prítomná
  3. veľa energie/potrava neprítomná
  4. veľa energie/potrava prítomná

Ak tieto podmienky nahradíme binárnymi číslicami dostaneme 00, 01, 10 a 11 (alebo 0, 1, 2 a 3 v desiatkovej sústave). Z toho vyplýva, že DMT sa zakaždým ocitne v jednom z týchto štyroch prípadov a DMT sa musí rozhodnúť, čo za daných podmienok vykoná. Na základe zoznamu týchto podmienok je takisto špecifikovaný zoznam činností, ktoré môže DMT vykonať. V simulácii zoznam obsahuje nasledujúce činnosti:

  1. nič - DMT je pasívna
  2. zrýchlenie - DMT zrýchli pohyb o jednu jednotku rýchlosti
  3. spomalenie - DMT spomalí pohyb o jednu jednotku rýchlosti
  4. zastavenie - DMT nastaví rýchlosť na nulu
  5. smerovanie k potrave - DMT smeruje k susednému miestu v mriežke s najväčším množstvom potravy. Každé miesto v mriežke má 8 susedných miest. Ak má miesto, v ktorom sa DMT nachádza viac potravy než všetky ostatné susedné miesta v mriežke DMT nespraví nič.
  6. smerovanie k cieľu - táto možnosť sa využíva len pri cieľových simuláciách (GBS, viď Goal Based Demo). DMT smeruje k jednému z červených štvorcov, ak sa tento nachádza na jednom z ôsmich susedných štvorcov.
  7. otočenie - DMT sa otočí o 180 stupňov
  8. náhodné otočenie - DMT sa otočí o náhodný počet stupňov, od 1 do 360
  9. smerovanie k susedným korytnačkám - DMT smeruje k susednému miestu v mriežke, na ktorom je najväčší počet DMT. Ak je DMT na mieste, na ktorom sa práve nachádza viac korytnačiek, ako na ktoromkoľvek z ôsmich susedných miest DMT nespraví nič.
  10. vzdialenie sa od susedných korytnačiek - DMT smeruje preč od susedného miesta s najväčším počtom DMT. Ak je na mieste, na ktorom sa práve nenachádza viac korytnačiek ako na ktoromkoľvek z ôsmich susedných miest DMT nespraví nič.

Ešte nám ostáva prepojiť podmienky s činnosťami. Každej DMT je priradený "genóm", čo je vlastne zoznam, ktorý špecifikuje činnosti, ktoré majú byť vykonané za jednotlivých podmienok. V tejto simulácii DMT môže vykonať až dve činnosti v danej podmienke. Na začiatku sa genóm každej DMTs náhodne vygeneruje buď s jednou, alebo dvoma činnosťami na jednu podmienku. Príklad náhodného genómu: [3,4] [7,3] [5] [4].

Prvá množina [3,4] súhlasí s vyššie uvedenou prvou podmienkou, málo energie - potrava neprítomná. Keď má DMT málo energie a práve sa nenachádza na mieste s jedlom, najprv o jednu jednotku rýchlosti spomalí a potom zastaví. Činnosti sa môžu navzájom vynulovať ak sú vykonávané pod rovnakou podmienkou, ako napríklad zrýchli a spomaľ.
Tento genóm sa počas života DMT nemení, takže DMT so slabými genómami zahynú skôr než tie s výhodnejším genómom. Populácia DMTs sa môže počas evolúcie genetickým algoritmom zdokonaľovať. Množina podmienok a činností môže byť pre štúdium rôznych aspektov virtuálneho prostredia modifikovaná. Tak je to aj pri Goal Based Demo, na Demo stránke. V Goal Based Demo existujú dve ďalšie vlastnosti okrem Veľa/Málo energie a potrava Prítomná/Neprítomná. Prvá doplnková vlastnosť je "Cieľ blízko/žiadny" a druhá je "Počet dosiahnutých cieľov". Ciele sú označené červenými miestami v mriežke. Ak sa DMT dostane na cieľové miesto, pridá tento cieľ do zoznamu dosiahnutých cieľov. Cieľ je "blízko" ak je cieľom jedno z ôsmich susedných miest. Počet dosiahnutých cieľov je buď "vysoký" alebo "nízky" ("vysoký" a "nízky", sú zadefinované už na začiatku simulácie). Táto DMT sa teraz kedykoľvek môže ocitnúť v jednej zo 16-ich podmienok. Genóm je teraz 4 krát dlhší, ale stále je vytváraný a používaný rovnako. Evolúcia DMTs, ktoré prežijú a nájdu ciele, bude trvať dlhšie než základná simulácia (Basic Demo). Tento evolučný proces je pomalší kvôli zväčšenému priestoru hľadania.

Hore
Kontakt: Marek Bundzel