Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Abstrakt
Pravidlá života
Vyvíjajúci sa floyi
Implementácia v Jave
Prehľad appletov
Floyi - applet
Individuálni Floyi - applet
Vyvíjajúci sa Floyi - applet
Súperiaci floyi - applet
Aquarium - applet
O tejto kapitole



Ostatné kapitoly
Výpočtové schopnosti celulárnych automatov
Celulárne automaty - úvod
Samoreprodukujúce sa celulárne automaty
Kryštálove výpocty
HAL
Boidi
Floyi
Aplikácie celulárnych automatov
CAPOW
LIFE - Hra života
Fredkinov biliardový automat


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


Súperiaci floyi - applet

Download zdrojákov

Applet simuluje dve skupiny navzájom súperiacich floyov. Jedince sa riadia základnými pravidlami pre pohyb a život podľa Ariena Dolana, ku ktorým je pridaných niekoľko ďalších pravidiel. Hlavný rozdiel je, že existujú dve skupiny úplne rovnocenných jedincov. Obe majú svoje teritórium, ktorého stredom je hniezdo. To si bránia a útočia na votrelcov - narušiteľov.

K dispozícii je viacero scenárov pre správanie. Líšia sa :

  1. Vzájomnou polohou hniezd :
    1. hniezda v protiľahných rohoch
    2. hniezda na stranách oproti sebe
    3. hniezda v tesnej blízkosti
    4. prekrývajúce sa hniezda v strede
  2. Rozhodovaním, kto je v danom bode domáci a kto votrelec
    1. vzdialenejší z domu je votrelec - ak je vzdialenosť prvého jedinca od svojho domova menšia ako vzdialenosť druhého jedinca od jeho domova, prvý jedinec je domáci a druhý votrelec.
    2. hranica 40% a 60%, víťaz berie energiu porazenému - tento model definuje hranice. Vypočíta sa vzdialenosť hniezd a do 40% tejto vzdialenosti sa jedinec považuje za domáceho, nad 60% za votrelca. V intervale medzi 40 až 60 % sa v každom kroku náhodne vyberie, kto je votrelcom a kto domácim. Votrelcovi uberie energiu, domácemu pridá. Simuluje to súboj rovnocenných súperov, keď raz vyhráva jeden, inokedy druhý (súboj dravcov).
    3. hranica 40% a 60%, energia klesne obom podobný ako predchádajúcci model, s tým rozdielom, že na hranici klesne energia obom, pričom veľkosť zmeny sa generuje náhodne od 0 až po 3násobok koeficientu zmeny energie. Je to, akoby súboje spôsobovali únavu a žiaden prínos (súboj napríklad dvoch jeleňov).
    4. modrí sú predátori - modrí útočia na červených (vzťah vlk a zajac) bez ohľadu na vzdialenosť od hniezda.
    5. červení sú predátori< - červení útočia na modrých
    6. hranice presne v strede - existuje len jedna hranica 50% a pred ňou sú domáci, za ňou votrelci, energia sa mení podľa koeficientu zmeny energie.
    7. Poznámka : Hranice sú prispôsobené pre ohraničený model prostredia, nie pre toroid.

Veľkosť populácie

Aktuálny stav populácie, ktorý je možné za behu meniť. Maximálna populácia je 50 jedincov oboch druhov.

Farebné označenie

Energia jedinca ovplyvňuje jeho farbu nasledovne :

  • jedinec s energiou viac ako 50% maximálnej energie je tmavší
  • jedinec s energiou medzi 25% a 50% maximálnej energie má pôvodnú farbu
  • jedinec s energiou menej ako 25% maximálnej energie je svetlejší
  • Po narodení ma jedinec presne 50% maximálnej energie.

Energia

Predstavuje zdravie jedinca. Energia jedincom klesá priamo úmerne s rýchlosťou pohybu, takže napríklad jedinec naháňajúci súpera stráca energiu rýchlešie ako len potulujúci sa jedinec. Uhryznutie od súpera tiež spôsobí pokles energie. Po poklese na nulu jedinec zomiera. Energiu si môže zvýšiť pri hniezde (viď nižšie) alebo uhryznutím súpera. Po dosiahnutí maximálnej energie energia už ďalej nerastie. V prípade, že je povolené množenie, jedinec sa s maximálnou energiou rozmnoží a energia mu tak poklesne. Zdravie neovplyvňuje rýchlosť ani žiadnu vlastnosť, či správanie jedinca.

Rozmnožovanie

Sa zaviedlo, aby bolo umožnené populácii rásť. Pod dosiahnutí maximálnej energie sa jedinec rozmnoží - jeho energia klesne na polovicu a vedľa neho pribudne nový jedinec.

Hniezdo lieči

Hniezdo zvyšuje energiu jedincom, ktorý sú v jeho blízkosti.

Zranení do hniezda

Zranení jedinci s energiou pod 10 % maximálnej majú pud sebazáchovy a miesto útočenia sa vracajú do hniezda načerpať novú energiu. Toto správanie jedincovi výrazne predľžuje život.

V noci do hniezda

Čas bol zavedený spestrenie správania sa kŕdľa. Takto sa v noci jedince vracajú do hniezda, oddýchnuť si a načerpať energiu. Je to spôsobené namierením ich pohybu na hniezdo, no keďže v hniezde nezastavujú, spôsobuje to krúženie okolo neho. Cez deň hniezdo ich pohyb neovplyvňuje.

Pridané vlastnosti :

Zmena energie - energia o ktorú jedincovi útočníkovi stúpne a obäti klesne energia po vzájomnom súboji.

Maximálna energia - maximum energie, aké môže jedinec dosiahnuť. Po jej dosiahnutí už ďalej energia nerastie a jedinec sa môže rozmnožiť.

Bonus hniezda - energia, ktorú dodáva hniezdo jedincovi v svojej blízkosti.

Dosah hniezda - vzdialenosť, v ktorej ešte hniezdo pridáva jedincom energiu.

Penalizácia rýchlosti - koeficient, ktorým sa prenásobi rýchlosť a výsledok sa odráta od energie. Vyjadruje únavu z rýchleho pohybu.

Zobraziť hranice - zobrazí hranice 40 % silnejšiou čiarou a 60 % slabšiou. Tieto čiary sú rovnaké pre všetky modely scenáre

Hore
Kontakt: Marek Bundzel