Difference between revisions of "Universe 25"
(Založení stránky, vložení první várky závěrečné zprávy) |
(Dopsán text - potřeba doplnit obrázky, soubory a zacitovat.) |
||
Line 78: | Line 78: | ||
*'''Agresivní''' – „Směle trvám na tom, že moje práva a potřeby mají přednost“ – ve Fázi D by se tento popis dal přiřadit k myším, které vyvolávají násilí a jsou agresivní | *'''Agresivní''' – „Směle trvám na tom, že moje práva a potřeby mají přednost“ – ve Fázi D by se tento popis dal přiřadit k myším, které vyvolávají násilí a jsou agresivní | ||
+ | ===Akce myší=== | ||
+ | U každého typu chování je pro myš každý den určen stejný seznam dostupných akcí | ||
+ | '''Jiné akce a iterace, než zde zmíněné NEJSOU SOUČÁSTÍ MODELU''' | ||
+ | *'''Eating''' – myš se pohybuje na krajní rampě a stravuje se | ||
+ | *'''Sleeping''' – myš spí. Tuto činnost by měla vykonávat až půl dne (viz nahoře) | ||
+ | *'''Sneaking''' – Myš prozkoumává. Pokud se při této činnosti potká samiček a samička, může dojít k oplodnění. | ||
+ | *'''Avoiding''' – Myš se asocializuje. Běhá po krajích a vyhýbá se kontaktu. | ||
+ | *'''Parenting''' – Speciální akce pro samičky, když porodí. Samička porodila a kojí. Nehýbe se z hnízda, které brání. | ||
+ | |||
+ | |||
+ | ====Iterace mezi akcemi==== | ||
+ | *'''Eating x Eating''' – pokud jsou myši při stravování na stejném políčku. Hrozí souboj s vyšší pravděpodobností. | ||
+ | *'''Sneaking x Sneaking''' – může dojít k oplodnění, nebo k souboji | ||
+ | *'''Sneaking x Sleeping''' – dojde k probuzení myši a může dojít s větší pravděpodobností k souboji | ||
+ | *'''Sneaking x Parenting''' – dojde ke konfrontaci hnízda a může dojít s vyšší pravděpodobností k souboji. Pokud matka zemře, zemřou i mladé | ||
+ | *'''Avoiding x Avoiding''' – i u myší, které se nechtějí socializovat, může dojít k souboji. Tentokrát se sníženou pradepodobností. | ||
+ | *'''Sneaking x Lifephase 0''' – mláďata nemají akce, proto je tuto situaci potřeba zohlednit. Najde se matka mláděte a je vykonána stejná akce jako Sneaking x Parenting, protože matka mládě brání | ||
+ | |||
+ | |||
+ | ==Konkrétní hodnoty a postupy== | ||
+ | ===Inicializace modelu=== | ||
+ | Nejprve je v Netlogu potřeba nastavit prostředí do formy klece. Velikost klece je spočtena tak, aby jeden agent byl na jednom poli. | ||
+ | Délka_reálné_klece / délka_myši * počet_myší_vedle_sebe = Obě_hrany ... (Obě_hrany - Délka_reálné_klece) / 2 = Délka_pro_každou_stranu .... Délka_jedné_strany_simulace = Délka_reálné_klece / délka_myši + Délka_pro_každou_stranu | ||
+ | |||
+ | 256.4 / 8,5 * 2,5 = 75 … 75 / 2 = 23 … 256.4 / 8,5 +23 = 53x53 | ||
+ | |||
+ | Mastavení světa viz obrázek | ||
+ | (OBRÁZEK) | ||
+ | |||
+ | ===Atributy myší=== | ||
+ | *věk - int | ||
+ | *životní fáze - Enum[Newborn,Child,Productive,Old] | ||
+ | *pohlaví- Enum[Male,Female] | ||
+ | *možnost rozmnožování - bool | ||
+ | *čas těhotenství - int | ||
+ | *čas potřebný po další těhotenství - int | ||
+ | *čas starání se o novorozené - int | ||
+ | *chování - Enum[Assertive,Passive/Aggressive,Passive,Aggressive] | ||
+ | *počítadlo traumat - int | ||
+ | *den přirozeného úmrtí - int | ||
+ | *akce pro danou část dne - one of ''dostupné akce pro den'' | ||
+ | *dostupné akce pro den - list | ||
+ | |||
+ | |||
+ | ===Svět=== | ||
+ | V NetLogu je jeden tick = jedna část dne. Den má celkem 7 částí. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | ====Nový den==== | ||
+ | Vyhodnocuje se pokaždé, když je 7. část dne. | ||
+ | |||
+ | *Přičtení +1 do counteru pro dny. | ||
+ | *Myši, jejichž den úmrtí je stejný jako den v counteru zemřou. | ||
+ | *Těhotným myším se přičte den do porodu | ||
+ | *Těhotné myši, které mají porodit porodí 5-6 mláďat na stejnou pozici, kde se teď nachází. Po porodu se u matky nastaví, že nemůže otěhotnět 21-58 dní | ||
+ | *Narozené myši mají následující hodnoty atributů: | ||
+ | **věk - 0 | ||
+ | **životní fáze - Newborn | ||
+ | **pohlaví- 50% Male; 50% Female | ||
+ | **možnost rozmnožování - false | ||
+ | **čas těhotenství - 0 | ||
+ | **čas potřebný po další těhotenství - 0 | ||
+ | **čas starání se o novorozené - 0 | ||
+ | **chování - Assertive | ||
+ | **počítadlo traumat - 0 | ||
+ | **den přirozeného úmrtí - 548-913 dní (1,5-2,5 let) | ||
+ | **akce pro danou část dne - 0 | ||
+ | **dostupné akce pro den - 0 | ||
+ | |||
+ | *Aktualizuje se životní fáze myši podle aktuálního věku dle tabulky: | ||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Aktualizace životní faze myši | ||
+ | |- | ||
+ | ! Dny!! Životní faze + další parametry | ||
+ | |- | ||
+ | | 0-21|| Newborn | ||
+ | |- | ||
+ | | 22-45|| Child | ||
+ | |- | ||
+ | | 46-474|| Productive; atribut: možnost rozmnožování = true | ||
+ | |- | ||
+ | | 475+|| Old; atribut: možnost rozmnožování = false | ||
+ | |- | ||
+ | |||
+ | |} | ||
+ | |||
+ | |||
+ | *Každé myši se přiřadí nový list dostupných akcí pro den podle tabulky: | ||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+ Dostupné akce pro den | ||
+ | |- | ||
+ | ! Typ chování myši/speciální charakteristika !! List dostupných akcí | ||
+ | |- | ||
+ | | Assertive|| [Eating, Sleeping, Sleeping, Sneaking, Sneaking, Sneaking, Sneaking] | ||
+ | |- | ||
+ | | Passive/Aggressive || [Eating, Sleeping, Sleeping, Avoiding, Sneaking, Sneaking, Sneaking] | ||
+ | |- | ||
+ | | Passive|| [Eating, Sleeping, Sleeping, Avoiding, Avoiding, Sneaking, Sneaking] | ||
+ | |- | ||
+ | | Aggressive|| [Eating, Sleeping, Sleeping, Avoiding, Sneaking, Sneaking, Sneaking] | ||
+ | |- | ||
+ | | životní faze = Newborn|| [] | ||
+ | |- | ||
+ | | pohlaví = Female and doba těhotenství >= 16|| [Avoiding, Avoiding, Avoiding, Avoiding, Avoiding, Avoiding, Avoiding] | ||
+ | |- | ||
+ | | pohlaví = Female and čas starání se o novorozené <= 21|| [Parenting, Parenting, Parenting, Parenting, Parenting, Parenting, Parenting] | ||
+ | |||
+ | |} | ||
+ | *Každé myši se přičte 1 den života | ||
+ | *Každé myší se určí, zda dojde ke změně chování podle počítadla traumatu. | ||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Změna chování podle počítadla traumatu | ||
+ | |- | ||
+ | ! Hodnota !! Popis změny | ||
+ | |- | ||
+ | | 0-44|| Assertive | ||
+ | |- | ||
+ | | 45-349|| Passive/Aggressive | ||
+ | |- | ||
+ | | 350+|| 50% Aggressive nebo 50% Passive | ||
+ | |} | ||
+ | |||
+ | |||
+ | |||
+ | ---- | ||
+ | ====Průběh dne==== | ||
+ | *Pro každou '''část dne''' se u myší vybere '''jedna akce''' z dostupných akcí myši, kterou budou provádět. | ||
+ | |||
+ | *Dojde k '''pohybu myší''' podle akce z předchozího kroku podle následující tabulky: | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+ Pohyb myší podle akce | ||
+ | |- | ||
+ | ! Akce !! Pole | ||
+ | |- | ||
+ | | Eating|| rampa s jídlem | ||
+ | |- | ||
+ | | Sleeping|| 1/3 střed; 2/3 kraj klece | ||
+ | |- | ||
+ | | Sneaking|| střed nebo kraj klece | ||
+ | |- | ||
+ | | Avoiding|| 1/3 střed; 2/3 kraj klece | ||
+ | |- | ||
+ | | Parenting|| bez pohybu | ||
+ | |} | ||
+ | |||
+ | * Dojde k vyřešení konfliktů dvou nejbližších myší podle tabulek níže | ||
+ | **Oboum myším se odebere akce pro tuto část dne - aby nedocházelo k duplikacím | ||
+ | |||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+ Řešení konfliktů myší | ||
+ | |- | ||
+ | ! Akce !! Průběh | ||
+ | |- | ||
+ | | Eating x Eating|| Vyhodnocení zda bude souboj s násobitelem 2 | ||
+ | |- | ||
+ | | Sneaking x Sneaking|| Stejná pohlaví - vyhodnotí se možnost souboje s násobitelem 1 ; Různá pohlaví a schopnost reprodukce – vyhodnotí se, zda dojde k oplodnění. Pokud nedojde k oplodnění, vyhodnotí se možnost souboje s násobitelem 1 | ||
+ | |- | ||
+ | | Sneaking x Sleeping|| Vyhodnocení zda bude souboj s násobitelem 1.5 | ||
+ | |- | ||
+ | | Sneaking x Parenting|| Vyhodnocení zda bude souboj s násobitelem 1.3 | ||
+ | |- | ||
+ | | Avoiding x Avoiding|| Vyhodnocení zda bude souboj s násobitelem 0.6 | ||
+ | |- | ||
+ | | Sneaking x Lifephase 0|| Pokud se potká myš s novorozencem, je nalezena matka a je provedena větev '''Sneaking x Parenting''' s matkou namísto novorozence | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Vyhodnocení, zda bude souboj | ||
+ | |- | ||
+ | ! Typ chování alespoň jedné myši!! Výpočet, zda bude Souboj | ||
+ | |- | ||
+ | | Assertive|| 1% * násobitel z Řešení konfliktů myší | ||
+ | |- | ||
+ | | Passive/Aggressive || 7% * násobitel z Řešení konfliktů myší | ||
+ | |- | ||
+ | | Passive|| 15% * násobitel z Řešení konfliktů myší | ||
+ | |- | ||
+ | | Aggressive|| 20% * násobitel z Řešení konfliktů myší | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Souboj – zda dojde k úmrtí | ||
+ | |- | ||
+ | ! Životní faze myší!! Výpočet, zda dojde k oplodnění | ||
+ | |- | ||
+ | | (Child x Productive) or (Child x Old)|| 0.5%, že dojde k úmrtí Child | ||
+ | |- | ||
+ | | (Productive x Productive) or (Productive x Old)|| 0.05%, že dojde k úmrtí; 4/5 pro alespoň jednu myš, 1/5 pro obě myši ; pokud zemře matka s mláďaty, zemřou I mláďata | ||
+ | |} | ||
+ | |||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Vyhodnocení, zda dojde k oplodnění | ||
+ | |- | ||
+ | ! Typ chování samice!! Výpočet, zda dojde k oplodnění | ||
+ | |- | ||
+ | | Assertive|| 10.5% | ||
+ | |- | ||
+ | | Passive/Aggressive || 6% | ||
+ | |- | ||
+ | | Passive|| 0.15% | ||
+ | |- | ||
+ | | Aggressive|| 0.25% | ||
+ | |} | ||
+ | |||
+ | *Pokud je toto sedmá část dne. Načte se '''Nový den'''. Jinak se pokračuje novou částí dne. | ||
+ | ---- | ||
+ | |||
+ | ===Regulace v průběhu simulace === | ||
+ | V některých případech je potřeba "nahodilosti" trochu pomoci, proto byly do modelu simulace přidány 2 aspekty, které "korigují" přiblížení simulace do reálného světa. | ||
+ | ====Konflikty myší v počáteční fázi simulace==== | ||
+ | Jelikož se myši pohybují zcela nahodile, je opravdu malá pravděpodobnost, že na sebe na počátku simulace natrefí. Proto je při nízkém počtu myší zvednut okruh "in range" pro myš provádějící akci. | ||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Vzdálenosti dvou nejbližších myší pro vyhodnocení konfliktu | ||
+ | |- | ||
+ | ! Počet myší v kleci!! Vzdálenost okruhu pro myš s akcí | ||
+ | |- | ||
+ | | 0-55|| radius = 4 | ||
+ | |- | ||
+ | | 56-65|| radius = 3 | ||
+ | |- | ||
+ | | 66+|| radius = 1 | ||
+ | |} | ||
+ | ====Počítadlo traumat==== | ||
+ | Pro myši, co spolu bojují, se počítadlo traumat zvedá o 7 bodů. | ||
+ | |||
+ | Nejen myši, co spolu bojují, tak zažívají nepříjemné pocity. Z tohoto důvodu byla vybrána oblast kolem zápasících myší, a všem ostatním myším se zvedá počítadlo traumat. | ||
+ | {| class="wikitable" style="margin:left" | ||
+ | |+Počítadlo traumat pro myši v okruhu | ||
+ | |- | ||
+ | ! Radius !! Počet bodů přičtených do traumatu | ||
+ | |- | ||
+ | | 4|| 2.5 | ||
+ | |- | ||
+ | | 5|| 2 | ||
+ | |- | ||
+ | | 6 || 0.5 | ||
+ | |} | ||
+ | |||
+ | ==Omezení modelu / Abstrakce== | ||
− | |||
=Výsledky= | =Výsledky= | ||
+ | Jediná zjištěná možnost, jak lze vyhodnotit správnost výsledků, je srovnat originální graf z roku 1972 z experimentu Universe 25 a s grafem hodnot z provedené simulace z představeného modelu. | ||
+ | |||
+ | Bylo provedeno 150 simulací tohoto modelu. Výsledky z průběhů byly zprůměrovány a byl vytvořen graf porovnávající počty myší / dny. | ||
+ | |||
+ | (obrázek) | ||
+ | |||
+ | ==Cíl simulace - Vytvořit "počítačovou kopii" experimentu Universe 25== | ||
+ | Z grafu je patrné, že se to v poslední fázi D nepovedlo. Počet myší klesá o mnoho více, než v původním experimentu. | ||
+ | |||
+ | Důvodem je pravděpodobně nevhodně nastavený parametr pro věk myší. Calhoun uvádí, že jedna z jeho myší se dožila až věku 2,7 let, což je v rozporu s encyklopedickými údaji o myších. Encyklopedických 1,5-2,5 let pro myši v domácím prostředí je evidentně málo a měla by být použita vyšší hodnota. | ||
+ | |||
+ | V nejlepším případě je vhodné tento fakt konzultovat s expertem – zoologem. | ||
+ | |||
+ | ==Cíl simulace - Sestavit verzi úpravou sociálního chování, aby nedošlo k myší apokalypse== | ||
+ | I když byla porodnost Agresivních myší a Pasivních na velice malých hodnotách – Calhoun popisoval, že došlo k úplnému zastavení množení - tak lze tento fakt pozorovat ode dne cca 900, že se populace začíná mírně obnovovat – je to způsobeno právě onou minimální hodnotou rozmnožování. Čím vyšší je hodnota rozmnožování u pasivních a Agresivních myší, tím se křivka začne srovnávat rychleji. | ||
=Závěr= | =Závěr= | ||
− | + | Přestože se daly odvodit nějaké výsledky, a cíle simulace byly zdůvodněny, tak se výsledný model nemůže brát jako důvěryhodný, protože nastavovaná procenta u vyhodnocování akcí založených na sociálním chování nejsou v literatuře zdokumentována. Jedná se pouze o dedukci z původního článku o experimentu Universe 25. Věřím, že se s různou obměnou parametrů u sociálního chování bude možné dostat k podobným, ne-li lepším výsledkům. Simulace založené na nahodilém odvozování parametrů nejsou vhodné. Bohužel jsem si toho neuvědomoval při tvorbě zadání. | |
=Kód= | =Kód= |
Revision as of 20:18, 12 June 2022
TATO VERZE NENÍ PŘIPRAVENA K ODEVZDÁNÍ
Název: Universe 25
Autor: Tomáš Karásek, kart08
Nástroj: NetLogo
Metoda: Agenti, MonteCarlo
Úvod
Etolog John B. Calhoun provedl v letech 1968 až 1972 experiment na myších. Nazval ho Universe 25.
Jedná se o čtvercovou klec o rozměrech 101 x 101 palců pro myši s postupně doplňovaným jídlem a vodou. Mělo dojít k vytvoření a podpoření přirozeného nárůstu populace bez vlivu vnějšího prostředí. Kapacita klece byla pro 3000 myší. V den kolonizace byly do klece umístěny 4 páry myší. Když populace dosáhla počtu 2 200, mnoho myší přestalo mít zájem o rozmnožování, docházelo k formování do agresivních skupin, které pravidelně napadaly další skupiny. Nízká porodnost, vysoká úmrtnost mláďat společně s násilím vedly k zániku celé kolonie.
Autor experimentu se domnívá, že je experiment aplikovatelný i na lidi v kontextu přelidnění na planetě. Mnoho odpůrců se proti experimentu ohrazuje, že nelze srovnávat lidské a myší sociální chování.
Contents
Definice problému
Cíl simulace
Vytvořit "počítačovou kopii" experimentu Universe 25. Cílem je napodobit populační křivku (zdroj) se zapojením 4 druhů chování u lidí (zdroj) – autor Universe 25 srovnával myši s lidmi.
Sestavit verzi úpravou sociálního chování, aby nedošlo k myší apokalypse.
Metoda
Myši by se mohli abstrahovat do agentů a klec do prostředí, ve kterém budou agenti působit. Jejich chování bude abstrahováno do různých metod a vyhodnocování chování bude záviset na nahodilosti. Jedná se tedy o agentní simulace založené na principu Monte Carlo.
NetLogo je pro tyto potřeby jeden z možných nástrojů pro vytvoření simulačního modelu a následného provedení simulace.
Detailní popis modelu
Slovní popis
Svět
Den je rozdělen na 7 částí. Pro každý den je pro myš definováno 7 různých akcí, které může vykonávat. Tyto akce jsou různé pro každý typ sociálního chování, případně pro daný stav myši. V každé části dne je náhodně vybrána je vybrána jedna akce. Akce se z dostupných akcí odebírá a na konci dne dojde k obnovení akcí.
Agent - Myš
- Délka myši 7 – 10 cm (zdroj)
- Věk v domácích podmínkách až 2,5 roku
- Doba těhotenství cca 19 – 21 dní
- 5 – 6 mláďat
- Myš může otěhotnět 5 - 10 krát za rok
- 3 týdny kojení, mláďata jsou v tuto dobu závislá na matce
- Rozmnožovací systém funguje od 1,5 měsíce
- Myš spí v průměru 12h denně.
Klec
Klec je velká 101x101 palců -> 256.4x256.4 cm. Rozměrově je vhodná pro 3000 myší.
Dimenze pro prostředí NetLogo je potřeba nastavit tak, aby cca jeden agent byl velikostně 1 pole.
Na okrajích klece jsou umístěny rampy s doplňovači jídla a pití.
Chování ve fázích experimentu
Calhoun v projektu Universe 25 zmínil, že chování myší je srovnatelné s lidským chováním. Jedna možnost jak rozdělit lidské chování podle charakteristik je Asertivní; Pasivní/Agresivní; Pasivní; Agresivní (zdroj)
4 fáze experimentu
(OBRAZEK?)
- Fáze A
- Na začátku, v době kolonizace byly do klece umístěny 4 páry myší s věkem cca 48 dnů.
- Fáze B
- Myši se přizpůsobily novému prostředí, označily své území a začaly hnízdit. Myši se nadměrně množili. V 315. den bylo v Universe 25 620 myší.
- Fáze C
- Samci se rozdělovali na alfa samce a beta samce. Alfa samci byli agresivní a vyvolávali násilí, oproti tomu beta samci se drželi stranou a snažili se co nejméně socializovat.
- Samci přestávali sociálně fungovat jako otcové a nebránili svá hnízda, tak samice se stávaly agresivnější. A odmítaly se dále pářit.
- Fáze byla ukončena 560 den kdy bylo v kleci 2200 myší a zároveň nejvíce vůbec.
- Fáze D
- Do 560. dne se přírůstek populace úplně zastavil. Vystupňovala se situace z Fáze C natolik, že myši neměli žádnou touhou pářit se, vychovávat mladé nebo zakládat sociální roli ve společnosti. Vše vedlo k zániku Universe 25.
Chování myší
- Asertivní - „Jasně vyjadřuji, že oba máme práva a potřeby“ – tento popis byl vybrán pro myši ve Fázi B
- Pasivní/Agresivní – „Nenápadně dávám najevo, že převažují moje práva a potřeby“ – tento popis byl vybrán pro myši ve Fázi C – myši přestávají sociálně fungovat
- Pasivní – „Práva a potřeby jiných mají přednost před mými“ – ve Fázi D by se tento popis dal přiřadit k myším, co se vyhýbají kontaktu a odmítají se jakkoliv socializovat
- Agresivní – „Směle trvám na tom, že moje práva a potřeby mají přednost“ – ve Fázi D by se tento popis dal přiřadit k myším, které vyvolávají násilí a jsou agresivní
Akce myší
U každého typu chování je pro myš každý den určen stejný seznam dostupných akcí Jiné akce a iterace, než zde zmíněné NEJSOU SOUČÁSTÍ MODELU
- Eating – myš se pohybuje na krajní rampě a stravuje se
- Sleeping – myš spí. Tuto činnost by měla vykonávat až půl dne (viz nahoře)
- Sneaking – Myš prozkoumává. Pokud se při této činnosti potká samiček a samička, může dojít k oplodnění.
- Avoiding – Myš se asocializuje. Běhá po krajích a vyhýbá se kontaktu.
- Parenting – Speciální akce pro samičky, když porodí. Samička porodila a kojí. Nehýbe se z hnízda, které brání.
Iterace mezi akcemi
- Eating x Eating – pokud jsou myši při stravování na stejném políčku. Hrozí souboj s vyšší pravděpodobností.
- Sneaking x Sneaking – může dojít k oplodnění, nebo k souboji
- Sneaking x Sleeping – dojde k probuzení myši a může dojít s větší pravděpodobností k souboji
- Sneaking x Parenting – dojde ke konfrontaci hnízda a může dojít s vyšší pravděpodobností k souboji. Pokud matka zemře, zemřou i mladé
- Avoiding x Avoiding – i u myší, které se nechtějí socializovat, může dojít k souboji. Tentokrát se sníženou pradepodobností.
- Sneaking x Lifephase 0 – mláďata nemají akce, proto je tuto situaci potřeba zohlednit. Najde se matka mláděte a je vykonána stejná akce jako Sneaking x Parenting, protože matka mládě brání
Konkrétní hodnoty a postupy
Inicializace modelu
Nejprve je v Netlogu potřeba nastavit prostředí do formy klece. Velikost klece je spočtena tak, aby jeden agent byl na jednom poli. Délka_reálné_klece / délka_myši * počet_myší_vedle_sebe = Obě_hrany ... (Obě_hrany - Délka_reálné_klece) / 2 = Délka_pro_každou_stranu .... Délka_jedné_strany_simulace = Délka_reálné_klece / délka_myši + Délka_pro_každou_stranu
256.4 / 8,5 * 2,5 = 75 … 75 / 2 = 23 … 256.4 / 8,5 +23 = 53x53
Mastavení světa viz obrázek (OBRÁZEK)
Atributy myší
- věk - int
- životní fáze - Enum[Newborn,Child,Productive,Old]
- pohlaví- Enum[Male,Female]
- možnost rozmnožování - bool
- čas těhotenství - int
- čas potřebný po další těhotenství - int
- čas starání se o novorozené - int
- chování - Enum[Assertive,Passive/Aggressive,Passive,Aggressive]
- počítadlo traumat - int
- den přirozeného úmrtí - int
- akce pro danou část dne - one of dostupné akce pro den
- dostupné akce pro den - list
Svět
V NetLogu je jeden tick = jedna část dne. Den má celkem 7 částí.
Nový den
Vyhodnocuje se pokaždé, když je 7. část dne.
- Přičtení +1 do counteru pro dny.
- Myši, jejichž den úmrtí je stejný jako den v counteru zemřou.
- Těhotným myším se přičte den do porodu
- Těhotné myši, které mají porodit porodí 5-6 mláďat na stejnou pozici, kde se teď nachází. Po porodu se u matky nastaví, že nemůže otěhotnět 21-58 dní
- Narozené myši mají následující hodnoty atributů:
- věk - 0
- životní fáze - Newborn
- pohlaví- 50% Male; 50% Female
- možnost rozmnožování - false
- čas těhotenství - 0
- čas potřebný po další těhotenství - 0
- čas starání se o novorozené - 0
- chování - Assertive
- počítadlo traumat - 0
- den přirozeného úmrtí - 548-913 dní (1,5-2,5 let)
- akce pro danou část dne - 0
- dostupné akce pro den - 0
- Aktualizuje se životní fáze myši podle aktuálního věku dle tabulky:
Dny | Životní faze + další parametry |
---|---|
0-21 | Newborn |
22-45 | Child |
46-474 | Productive; atribut: možnost rozmnožování = true |
475+ | Old; atribut: možnost rozmnožování = false |
- Každé myši se přiřadí nový list dostupných akcí pro den podle tabulky:
Typ chování myši/speciální charakteristika | List dostupných akcí |
---|---|
Assertive | [Eating, Sleeping, Sleeping, Sneaking, Sneaking, Sneaking, Sneaking] |
Passive/Aggressive | [Eating, Sleeping, Sleeping, Avoiding, Sneaking, Sneaking, Sneaking] |
Passive | [Eating, Sleeping, Sleeping, Avoiding, Avoiding, Sneaking, Sneaking] |
Aggressive | [Eating, Sleeping, Sleeping, Avoiding, Sneaking, Sneaking, Sneaking] |
životní faze = Newborn | [] |
pohlaví = Female and doba těhotenství >= 16 | [Avoiding, Avoiding, Avoiding, Avoiding, Avoiding, Avoiding, Avoiding] |
pohlaví = Female and čas starání se o novorozené <= 21 | [Parenting, Parenting, Parenting, Parenting, Parenting, Parenting, Parenting] |
- Každé myši se přičte 1 den života
- Každé myší se určí, zda dojde ke změně chování podle počítadla traumatu.
Hodnota | Popis změny |
---|---|
0-44 | Assertive |
45-349 | Passive/Aggressive |
350+ | 50% Aggressive nebo 50% Passive |
Průběh dne
- Pro každou část dne se u myší vybere jedna akce z dostupných akcí myši, kterou budou provádět.
- Dojde k pohybu myší podle akce z předchozího kroku podle následující tabulky:
Akce | Pole |
---|---|
Eating | rampa s jídlem |
Sleeping | 1/3 střed; 2/3 kraj klece |
Sneaking | střed nebo kraj klece |
Avoiding | 1/3 střed; 2/3 kraj klece |
Parenting | bez pohybu |
- Dojde k vyřešení konfliktů dvou nejbližších myší podle tabulek níže
- Oboum myším se odebere akce pro tuto část dne - aby nedocházelo k duplikacím
Akce | Průběh |
---|---|
Eating x Eating | Vyhodnocení zda bude souboj s násobitelem 2 |
Sneaking x Sneaking | Stejná pohlaví - vyhodnotí se možnost souboje s násobitelem 1 ; Různá pohlaví a schopnost reprodukce – vyhodnotí se, zda dojde k oplodnění. Pokud nedojde k oplodnění, vyhodnotí se možnost souboje s násobitelem 1 |
Sneaking x Sleeping | Vyhodnocení zda bude souboj s násobitelem 1.5 |
Sneaking x Parenting | Vyhodnocení zda bude souboj s násobitelem 1.3 |
Avoiding x Avoiding | Vyhodnocení zda bude souboj s násobitelem 0.6 |
Sneaking x Lifephase 0 | Pokud se potká myš s novorozencem, je nalezena matka a je provedena větev Sneaking x Parenting s matkou namísto novorozence |
Typ chování alespoň jedné myši | Výpočet, zda bude Souboj |
---|---|
Assertive | 1% * násobitel z Řešení konfliktů myší |
Passive/Aggressive | 7% * násobitel z Řešení konfliktů myší |
Passive | 15% * násobitel z Řešení konfliktů myší |
Aggressive | 20% * násobitel z Řešení konfliktů myší |
Životní faze myší | Výpočet, zda dojde k oplodnění |
---|---|
(Child x Productive) or (Child x Old) | 0.5%, že dojde k úmrtí Child |
(Productive x Productive) or (Productive x Old) | 0.05%, že dojde k úmrtí; 4/5 pro alespoň jednu myš, 1/5 pro obě myši ; pokud zemře matka s mláďaty, zemřou I mláďata |
Typ chování samice | Výpočet, zda dojde k oplodnění |
---|---|
Assertive | 10.5% |
Passive/Aggressive | 6% |
Passive | 0.15% |
Aggressive | 0.25% |
- Pokud je toto sedmá část dne. Načte se Nový den. Jinak se pokračuje novou částí dne.
Regulace v průběhu simulace
V některých případech je potřeba "nahodilosti" trochu pomoci, proto byly do modelu simulace přidány 2 aspekty, které "korigují" přiblížení simulace do reálného světa.
Konflikty myší v počáteční fázi simulace
Jelikož se myši pohybují zcela nahodile, je opravdu malá pravděpodobnost, že na sebe na počátku simulace natrefí. Proto je při nízkém počtu myší zvednut okruh "in range" pro myš provádějící akci.
Počet myší v kleci | Vzdálenost okruhu pro myš s akcí |
---|---|
0-55 | radius = 4 |
56-65 | radius = 3 |
66+ | radius = 1 |
Počítadlo traumat
Pro myši, co spolu bojují, se počítadlo traumat zvedá o 7 bodů.
Nejen myši, co spolu bojují, tak zažívají nepříjemné pocity. Z tohoto důvodu byla vybrána oblast kolem zápasících myší, a všem ostatním myším se zvedá počítadlo traumat.
Radius | Počet bodů přičtených do traumatu |
---|---|
4 | 2.5 |
5 | 2 |
6 | 0.5 |
Omezení modelu / Abstrakce
Výsledky
Jediná zjištěná možnost, jak lze vyhodnotit správnost výsledků, je srovnat originální graf z roku 1972 z experimentu Universe 25 a s grafem hodnot z provedené simulace z představeného modelu.
Bylo provedeno 150 simulací tohoto modelu. Výsledky z průběhů byly zprůměrovány a byl vytvořen graf porovnávající počty myší / dny.
(obrázek)
Cíl simulace - Vytvořit "počítačovou kopii" experimentu Universe 25
Z grafu je patrné, že se to v poslední fázi D nepovedlo. Počet myší klesá o mnoho více, než v původním experimentu.
Důvodem je pravděpodobně nevhodně nastavený parametr pro věk myší. Calhoun uvádí, že jedna z jeho myší se dožila až věku 2,7 let, což je v rozporu s encyklopedickými údaji o myších. Encyklopedických 1,5-2,5 let pro myši v domácím prostředí je evidentně málo a měla by být použita vyšší hodnota.
V nejlepším případě je vhodné tento fakt konzultovat s expertem – zoologem.
Cíl simulace - Sestavit verzi úpravou sociálního chování, aby nedošlo k myší apokalypse
I když byla porodnost Agresivních myší a Pasivních na velice malých hodnotách – Calhoun popisoval, že došlo k úplnému zastavení množení - tak lze tento fakt pozorovat ode dne cca 900, že se populace začíná mírně obnovovat – je to způsobeno právě onou minimální hodnotou rozmnožování. Čím vyšší je hodnota rozmnožování u pasivních a Agresivních myší, tím se křivka začne srovnávat rychleji.
Závěr
Přestože se daly odvodit nějaké výsledky, a cíle simulace byly zdůvodněny, tak se výsledný model nemůže brát jako důvěryhodný, protože nastavovaná procenta u vyhodnocování akcí založených na sociálním chování nejsou v literatuře zdokumentována. Jedná se pouze o dedukci z původního článku o experimentu Universe 25. Věřím, že se s různou obměnou parametrů u sociálního chování bude možné dostat k podobným, ne-li lepším výsledkům. Simulace založené na nahodilém odvozování parametrů nejsou vhodné. Bohužel jsem si toho neuvědomoval při tvorbě zadání.