Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Adaptívne algoritmy
Neadaptívne algoritmy
Optimalizačné metódy a grafové algoritmy
Expertné systémy
Fuzzy logika
Konečné automaty
Skupinové správanie



Ostatné kapitoly
Freemanove K modely
Umelé imunitné systémy
Biomimicry - Biomimetics
Umelé chémie
Chemické vlny
DNK počítače
Artificial Music
Memetika
Artificial Life Games
Artificial Art
Väzenská dilema


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


Skupinové správanie

Staré pravidlo hovorí, "keď nevieš, čo robíš, rob to, čo ostatní". Je staršie než útek pred revízorom, alebo skupinou policajtov, starší než veľké revolučné hnutia i rebélie, staršie než ľudstvo samo - používajú ho všetky skupinovo žijúce zvieratá. Pomerne jednoduchá sada pravidiel a parametrov dokáže vykúzliť prekvapivo zložité chovanie celku, ktoré nielen dáva zmysel, ale je aj efektívne, Tomuto javu sa hovorí "emergencia" a znamená vynorenie zložitého radu chaosu. Neustále prúdiaci dav pri tom znižuje šancu zásahu jednotlivca, ale zvyšuje údernú silu celku.

Pokiaľ ste niekedy zažili prípad, keď na vás v realtime stratégii synchrónne zaútočia z dvoch strán veľké skupiny nepriateľských jednotiek, alebo ste v prírode zažili útok roja včiel, mravcov, vtákov, novinárov či iných primitívnych zvierat, chápete silu skupinového chovania. Príklad inštrukcií pre skupinové chovanie môže byť napríklad takýto:

IF "vidis nepriatela" THEN "zacni kricat"
IF "vidis nepriatela" AND "si silny" THEN "zautoc"
IF "niekto blizko teba krici" AND "si slaby" THEN "utekaj smerom od neho"
IF "niekto blizko teba krici" AND "si silny" THEN "utekaj smerom k nemu a zacni tiez kricat"

Niekoľko týchto inštrukcií spôsobí zázraky, a to zvlášť v prípade, že sú vyvedené vo fuzzy variante a ovládateľné niekoľkými jednoduchými parametrami. Uvedený príklad spôsobí. že pri zbadaní nepriateľa sa na neho zosypú silné jednotky a slabé utečú, pričom UTEČÚ pozoruhodne organizovane, a to i v komplexnom teréne.

Zbiehajúci sa útočníci kričia, a tým vlastne vymedzujú PLOCHU alebo HRANICU, od ktorej pobežia slabé jednotky preč. Jediná divná vec, na ktorú pri programovaní narazíte, je fakt, že sa efekt emergentného chovania prejaví i v prípade, že ste ho do hry cieľavedomým spôsobom nenaprogramovali. Pokiaľ je v hre dosť jednotiek, ktoré sa riadia samostatne, začne aj tvorca občas žasnúť, čo sa to deje.

Pokiaľ pridá schopnosť modulovať pravidlá parametrami, a každý element si bude pamätať a skúsenosťami meniť svoje parametre, získa nielen systém so silnou schopnosťou emergencie, ale tiež celkom slušný a realisticky fungujúci umelý život. V rámci emergencie sa ale môže vynoriť i chovanie, ktoré je nežiadané (pri prvej zničenej jednotke všetci hromadne utečú až na koniec mapy a možno ešte ďalej), a preto má skupinové chovanie svoje medze.

Hore
Kontakt: Marek Bundzel