Simulácia zberu jahôd (Netlogo)

From Simulace.info
Revision as of 19:49, 12 June 2020 by Bacj04 (talk | contribs)
Jump to: navigation, search

Táto stránka slúži ako výskumná správa simulácie s názvom „Simulácia zberu jahôd“ k semestrálnemu projektu pre predmet 4IT495 Simulace systémů (LS 2019/2020) na VŠE v Prahe.

Zadanie

Názov simulácie: Zber jahôd

Autor: Juraj Bačovčin

Typ modelu: Multiagentový

Modelovací nástroj: NetLogo

Popis modelu: Do prostredia tvoreného prechodnou zeleňou, ľubovoľným počtom náhodne rozmiestnených prekážok v podobe stromov a rovnako tak ľubovoľným počtom náhodne rozmiestnených jahôd sú poslaní piati vzájomne súperiaci zberači. Ako to už vyplýva z ich pomenovania, hlavným cieľom týchto zberačov je samozrejme pozbierať čo najvyšší počet jahôd skôr než sa ich zmocnia ostatní, pričom každý jeden z nich má odlišnú stratégiu. Prvý zberač menom Adam sa riadi čisto len svojimi inštinktmi a ďalšie miesto, na ktoré sa vydá, si vyberá výhradne náhodne. Bohumil k tomu pristupuje už o čosi chytrejšie a vydáva sa vždy práve za tou jahodou, ktorá sa k nemu aktuálne nachádza najbližšie. Cyril je zasa raz o niečo pripravenejší a informovanejší, vďaka čomu sa môže najskôr vybrať na miesto, kde by mal byť zhluk jahôd najväčší, všetky ich pozbierať a až tak ďalej pokračovať v zbieraní ostatných jahôd, ktoré sú pri ňom najbližšie. Denis je v porovnaní s ostatnými zákernejší a vyberá si za svoj cieľ vždy práve tú jahodu, po ktorej ide zberač nachádzajúci sa k nemu najbližšie. Na rozdiel od neho posledný zberač menom Erik postráda kompetitívneho ducha a vyberá si vždy jahodu, ktorá je k nemu najbližšie a zároveň po nej nikto iný práve nejde.

Parametre modelu:

  • Hustota / počet jahôd
  • Hustota / počet stromov
  • Veľkosť stromov (prekážok)
  • Rýchlosť pohybu zberačov

Cieľ simulácie: Hlavným cieľom tejto simulácie je porovnať rozdielne prístupy k zdanlivo všednej úlohe za účelom nájdenia optimálnej stratégie zberu jahôd (alebo prakticky akýchkoľvek iných surovín) v kompetitívnom prostredí. Okrem toho je však i možné sledovať, ktorá z menovaných stratégií sa teší najväčšiemu úspechu pri iných nastaveniach parametrov, prípadne aké nastavenie parametrov vykazuje najlepšie výsledky pre každého z definovaných zberačov.

Možnosti rozšírení: Do modelu je možné pridať i ďalšie typy objektov (napríklad prekážky s odlišnými tvarmi), parametrov (ako napríklad miera únavnosti, na základe ktorej sa všetci zberači postupne budú spomaľovať až pokiaľ nezastanú úplne za účelom krátkeho oddychu) a v neposlednom rade i zberačov (s ďalšími stratégiami).

Definícia problému

Zbieranie surovín je už od nepamäti súčasťou mnohých ľudských životov. Či už sa jedná o taktický lov a zber rôznych materiálov alebo jedlých plodov z dávnych čias, ktoré údajne tvoria minimálne až 90 percent ľudskej histórie, [1] prípadne moderné problémy spojené s algoritmami pre získavanie surovín v takzvaných strategických hrách v reálnom čase (RTS - real-time strategy), [2] rozhodne ide o tému, ktorej prieskum so sebou môže priniesť mnoho rozdielnych potenciálnych využití. Niet preto divu, že sa jej v kontexte spolupráce na dosiahnutí čo najlepších výsledkov venuje veľa odborníkov z rôznych odvetví, no podstatne menej odborných dokumentov pojednáva o rozličných stratégiách zberu surovín v kompetitívnom prostredí. Táto práca by preto mala poslúžiť ako základ pre porovnanie vybraných dominantných prístupov k zberu materiálov, nájdenie optimálnej stratégie v zjednodušenej abstrakcii danej úlohy a zistenie, ktoré základné parametre môžu mať najväčší vplyv na ich celkovú úspešnosť.

Ako to už vyplýva i z názvu tejto práce, skúmaná úloha bude mať podobu prostého zberu jahôd v neobývanom lese. Ten bude zložený z prechodnej zelene a ľubovoľného počtu náhodne rozmiestnených prekážok stvárnených stromami, ktorý bude možné aj s ich veľkosťou rôzne meniť podľa potreby. Rovnako tak bude možné nastavovať i počet samotných jahôd a rýchlosť pohybu piatich zberačov s rozdielnymi stratégiami zberu, ktorými sú:

  • Adam - jahodu, za ktorou sa vydá, si vyberá čisto len náhodne a bez rozmyslu
  • Bohumil - bez ohľadu na postup ostatných zberačov si vyberá vždy tú jahodu, ktorá sa pri ňom aktuálne vyskytuje najbližšie
  • Cyril - na začiatku v rýchlosti vyhodnotí, v ktorom z kvadrantov mapy sa nachádza najväčší počet jahôd, následne sa za predpokladu, že ho nikto iný nepredbehne, vyberá na víťazné miesto, a potom už len taktiež postupne zbiera jahody, ktoré sa pri ňom nachádzajú najbližšie
  • Denis - neriadi sa vlastnými inštinktmi ako ostatní, no namiesto toho si vyberie zberača, ktorý sa pri ňom nachádza najbližšie, a vydáva sa za rovnakou jahodou ako on v snahe predbehnúť ho (v prípade, že si daný konkurent nestihne vybrať svoj cieľ, tak medzitým ide tiež po jahodách, ktoré sú pri ňom najbližšie)
  • Erik - namiesto toho, aby priamo súperil s ostatnými konkurentmi, tak si vždy vyberie jahodu, ktorá sa pri ňom vyskytuje najbližšie, a zároveň si ju v danom čase zatiaľ nevybral žiadny iný zberač

Metóda riešenia

Existuje mnoho spôsobov, akými je možné overiť, ktorá z vyššie zmieňovaných stratégií je za rôznych okolností najúčinnejšia. Tým zdanlivo najočividnejším je prevedenie rady skutočných experimentov v reálnom svete s reálnymi ľuďmi, no jednalo by sa o pomerne časovo náročnú a finančne nákladnú metódu. Pre potreby tejto práce teda dáva o dosť väčší zmysel vytvoriť jednoduchý model, s ktorého využitím budú požadované situácie a priebehy zberov jahôd niekoľkokrát odsimulované, pričom získané výsledky môžu byť za predpokladu správnosti implementovaného modelu využité na vyvodenie cieľových záverov.

Z definície problému plynie, že model musí obsahovať niekoľko odlišných entít reprezentujúcich zberačov, ktoré sa neustále na základe ich stratégií rozhodujú, čo za jahodu si vyberú najbližšie, akú cestu k nej zvolia a jak sa vyhnú prítomným prekážkam. Zároveň musia byť schopné reagovať i na situáciu, kedy im konkurenti ich cieľovú jahodu ukradnú skôr, než sa k nej dostanú (nemalo by vonkoncom cenu, aby po nej šli i naďalej). Keď sa k tomu navyše pridá i skutočnosť, že významnú rolu v jednotlivých simuláciách budú zohrávať práve priestorové faktory prostredia (ako napríklad umiestnenie a veľkosť prekážok, pozícia jahôd alebo súradnice zberačov), je podľa názoru autora nepochybne najrozumnejšie zvoliť multiagentový systém. Najideálnejším nástrojom na vytvorenie takého modelu je s ohľadom na možnosti predstavené v rámci predmetu 4IT495 práve NetLogo.

Detailný popis modelu

(...)

Komponenty modelu

(...)

Agenty modelu

(...)

Parametre a obory hodnôt modelu

(...)

Metódy modelu

(...)

Obmedzenia modelu

(...)

Výsledky

(...)

Adamova stratégia

(...)

Bohumilova stratégia

(...)

Cyrilova stratégia

(...)

Denisova stratégia

(...)

Erikova stratégia

(...)

Zhrnutie

(...)

Záver

(...)

Referencie

  1. Hewlett, Barry S. a Lamb, Michael E. Hunter-gatherer Childhoods: Evolutionary, Developmental, and Cultural Perspectives [online]. 2005. Transaction Publishers. [cit. 2020-06-12]. Dostupné z: https://books.google.cz/books/about/Hunter_gatherer_Childhoods.html?id=FLcMONS_7AwC&redir_esc=y
  2. Christensen D., Hansen H.O., Hernandez J.P.C., Juul-Jensen L., Kastaniegaard K., Zeng Y. A Data-Driven Approach for Resource Gathering in Real-Time Strategy Games [online]. 2012. Agents and Data Mining Interaction, ADMI 2011, Lecture Notes in Computer Science, vol 7103, str. 304-315. [cit. 2020-06-12]. Dostupné z: https://link.springer.com/chapter/10.1007/978-3-642-27609-5_19

Kód modelu

doplniť súbory