Lesní požáry
- Proč se pro zkoumání světa využívají simulace a co to znamená.
- Popisovat chování některých systémů pomocí jednoduchých pravidel.
- Provést s pomocí simulace jednoduchý experiment.
- Uvědomovat si základní omezení simulací a jejich vypovídací hodnoty.
Úvod
Udělejme na chvíli od informatiky úkrok stranou: jak vlastně poznáváme svět? Jak mu můžeme porozumět? Díváme se kolem sebe (jablko padá ze stromu k zemi) a svá pozorování zobecňujeme (všechny věci padají k zemi). Když zpozorujeme něco nového (balonky s heliem letí vzhůru!), znalosti aktualizujeme (to už necháme na vás). Řečí vědy experimentujeme a podle výsledků experimentů (pozorování, měření) formulujeme teorie.
Například můžeme hledat způsoby, jak ovlivnit šíření lesních požárů.
Vědecká metoda by velela ověřovat naše nápady experimentálně.
V informatice ostatně řešení také testujeme.
Tentokrát ale narazíme na problémy.
Z hořících lesů unikají zplodiny, jejich hašení je obtížné, na opakování experimentu bychom čekali desítky let, celá logistika by byla extrémně náročná a asi vás napadnou i další nepříjemnosti.
Podobnými případy jsou klimatické změny, zavádění nových léků, pandemie či ekonomická opatření. Zde také experimenty ze zjevných důvodů nepadají v úvahu. Nemáme dost času, peněz, materiálu, nebo je experiment nebezpečný či neetický. Na řadu přichází třetí pilíř vědy: simulace.
Simulace, mezi něž patří i mnohé počítačové hry (závodní, letecké nebo simulátory fungování měst), představují výřez reality. Každá z nich nějakým způsobem komplexnost reality zjednodušuje, zároveň ale může stačit k tomu, abychom naše teorie přiměřeně spolehlivě ověřili (nebo vyvrátili).
V našem případě prozkoumáme simulaci hořícího lesa. Ta by mohla, v případě požáru, pomoci zamezit zbytečně velkým škodám, kterým by se dalo jinak vyhnout.
Simulace s emoji
Příklad: Výchozí model lesních požárů
Prozkoumenjte zobrazenou simulaci. Zkuste odhadnout, jak funguje.
{{todo|lépe vyřešit škálování iframu - max velikosti, při zachování poměrů stran... a co když je to telefon na výšku...|jde ř}
Aplikace, kterou jsme k simulaci použili, modeluje svět jako objekty (emoji) v políčkách čtvercové sítě. Každé políčko v našem lese může obsahovat jeden objekt (být v jednom stavu): prázdno, strom, záblesk, oheň. V každém kroku simulace se vyhodnotí situace každého políčka a podle pravidel v panelu napravo se může jeho obsah (stav, emoji) změnit.
Les tedy funguje následujícím způsobem:
- Na volném políčku může (s nějakou pravděpodobností) vyrůst strom.
- Do stromu může (opět náhodně) udeřit blesk.
- Když udeří blesk, dané políčko začne hořet.
- V následujícím kroku oheň zase zhasne (změní se na prázdné pole), předtím od něj ale mohou chytit (změnit se na oheň) okolní stromy.
Dole pod lesem najdete odvládací tlačítka. S jejich pomocí můžete simulaci zastavit a po jednotlivých krocích sledovat, jak pravidla vpravo ovlivňují chování jednoho každého políčka a tím i celého lesa. Funkci dalších tlačítek si vyzkoušejte sami a zkuste kliknout i na políčko, uvidíte, co se stane.
Věrnost simulace
Asi jste si všimli, že dění v simulaci jako skutečný lesní požár nevypadá.
Jmenujte aspekty lesa (a požáru), které simulace zjednodušuje nebo dokonce vůbec nezohledňuje.
Rozdělte je podle toho, jak jsou významné pro chování požáru.
Nehledejte v tom složitosti. Prostě si vzpomeňte, jak to vypadá v lese a co víte o jeho fungování. Srovnejte to s naší simulací a pojmenujte rozdíly.
Řešení
Můžete dojít k opravdu dlouhému seznamu:
- V lese je řada dalších objektů kromě stromů
- Různé rostliny v různých patrech.
- Mezi stromy vedou kořeny.
- Lesní živočichové.
- Potoky, řeky, jezera.
- Oplocení, posedy, krmelce, vedení vysokého napětí, turistické stezky...
- V lese se mění roční období (a s tím i teploty, úhly slunečního svitu, vydatnost srážek, četnost bouřek...).
- Simulace ignoruje počasí - vítr, déšť, sucho, vedra...
- V lese někdy probíhají činnosti jako je těžba dřeva.
- Stromy v lese nejsou rozmístěny pravidelně.
- Ve zdravém lese není jen jediný druh stromů.
- Skutečné lesy rostou mnohem pomaleji, než naznačuje simulace.
- I jednotlivé stromy mají své fáze růstu, ze semena neklíčí okamžitě dospělé stromy.
- Ohořelý strom není totéž, co prázdné místo.
- Les není nutně na rovině.
Tučně jsme označili faktory s nejvýznamějším vlivem na požáry.
Jednoduchá úprava chování simulace
Jeden z intuitivních nápadů na omezení vlivu požárů spočívá ve zrychlení obnovy stromů. V realitě by to znamenalo např. výsadbu odrůd, které rychleji dospívají a snáze se množí.
- Rozmyslete si dopad takového opatření. Jak předpokládáte, že se chování lesních požárů změní? Bude něčeho (stromů, ohně...) více? Nebo méně? Proč si to myslíte?
- Načrtněte od ruky graf vývoje počtu stromů v čase. Nejdřív podle současné simulace, následně váš odhad při upraveném chování.
Příklad: Jak zrychlit růst stromů?
Jak zrychlení růstu realizovat? V naší simulaci stromy nerostou, prostě se rovnou objeví v plné velikosti. To, co potřebujeme nastavit, je rychlost tohoto objevování. Na strom se prázdné pole mění s nastavenou pravděpodobností. Když tuto pravděpodonost zvýšíme, prázdná pole se budou častěji měnit na stromy a les se tím bude rychleji obnovovat.
Zkusme dosadit např. dvojnásobek, tedy hodnotu 0.6 % (skutečně s destinnou tečkou, autor aplikace je z Kanady). Jaké pozorujeme chování?
Rozbalte příklad se zrychleným růstem stromů
Vidíme, že stromy skutečně dorůstají rychleji a dříve se dostáváme na velikost lesa před požárem.
Zároveň ale větší množství stromů vede k tomu, že požár obvykle spálí celý les.
Můžete si opět vyzkoušet načrtnout graf vývoje počtu stromů v čase.
Uvidíte, že ve výsledku nemáme stabilnější populaci lesa, právě naopak.
Počet stromů v lese vykazuje mnohem výraznější výkyvy.
Les se sice rychleji obnovuje, ale také mnohem rychleji hoří.
Jestli jste zvědaví, zkuste pravděpodobnost změny prázdného pola na strom nastavit na 100 %. S lesem to už sice nemá nic společného, ale třeba to bude zajímavé.
Zkuste si, jak by dopadl les s ještě rychleji rostoucími stromy. Zvyšujte příslušnou pravděpodobnost třeba až na 10 %.
Je populace stromů stabilnější? A je to dobře?
Pozor na slovíčka. Například jestli se les málo mění svým tvarem (stromy zůstávají na svých místech), nebo se v něm málo mění počet stromů, je velký rozdíl.
Řešení
Vidíme, že situace postupně přechází ze střídání fází obnovy a požáru do stálého požáru a průběžného obnovování stromů, které probíhající požár přiživují. Kdybychom situaci vyhodnocovali jen počtem stromů, viděli bychom, že se jejich počet příliš nemění (přibývají podobně rychle, jako hoří). Stálý požár je ale sotva výsledek, o který bychom stáli.
I průběžný požár má různé formy.
Někdy vidíme velké a zřetelné vlny šíření požáru.
Když ale stromy přibývají ještě rychleji, umožní nové stromy požáru okamžitý návrat do míst, kde právě dohořel, a tím otočení směru šíření. Přehled o jednotlivých vlnách pak ztrácíme a požár se zdá být všude zároveň.
Najdete hodnoty, při kterých se chování požáru výrazně mění? (Není tam ostrý předěl, lze ale mluvit o převažujícím chování.)
Můžete zkusit pravděpodobnost postupně zvyšovat. Při studiu informatiky už jste se ale setkali i s rychlejším postupem, jak systematicky najít hledanou hodnotu (ani příliš vysokou, ani příliš nízkou).
Můžete také zkusit simulaci pro hledání přizpůsobit:
- Co nejvíce ji zrychlit, aby bylo vidět, že požáry ani po delší době nevyhasínají.
- Zamezit vzniku nových požárů (abyste je nezaměnili za požáry trvalé).
Viděli jsme, že i poměrně přímočará změna jednoho parametru simulace může způsobit těžko předvídatelné a zároveň zásadní změny chování a výsledku celé simulace. Zkusíme si i další příklady.
Další experimenty
Vymyslete další způsoby, jak by bylo možné požáry ovlivnit v náš prospěch (kromě urychlování růstu stromů).
Uvažujte, co o fungování požárů víte a co by mohlo s požáry reálně pomoci.
U jednotlivých nápadů zkuste předpovědět, jak chování lesa a požárů ovlivní.
Řešení
Škála opatření je široká. Mezi časté nápady patří např.:
- V lese roste také (nebo jenom) druh stromů, které se nevznítí tak snadno.
- V lese jsou vodní plochy, přes které se požár nešíří.
- Vodní plochy by mohly proti ohni chránit i sousedící stromy (nebudou totiž proschlé).
- Hasiči, kteří požár hasí. Chodí pěšky, jezdí, nebo třeba létají s drony nezávisle na terénu.
- Lesem prochází dřevorubci, kteří jej prořezávají (ubírají palivo) a tím znesnadňují šíření požáru.
- V lese jsou vybudovány protipožární bariéry.
- Po dohoření za sebou strom nechá hromádku popela, která nemůže znovu vzplanout, a také na ní tak rychle nevyroste další strom.
Zrealizujte váš další nápad, jak šíření požárů omezit. Předem ještě odhadněte, jak asi vaše úprava chování lesa ovlivní. Můžete opět načrtnout graf vývoje velikosti lesa (počtu stromů) v čase.
Jednou z častých myšlenek je rozdělit les bariérami na menší oblasti, mezi nimiž se požár nešíří. Upravte simulaci tak, aby tohle chování umožnila.
Všimněte si, že z našeho hlediska nezáleží na tom, jestli se jedná o protipožární zeď, potok, nebo prostou vykácenou mezeru mezi stromy.
Předtím, než se pustíte do úprav, rozmyslete, na čem záleží chování jednotlivých prvků simulace.
- Co je potřeba nastavit, upravit.
- Bude se nějak měnit chování stávajících prvků, tedy prázdné plochy, stromů, blesku, ohně?
- Budeme přidávat nějaký nový druh políčka (emoji)?
- Jaká by měl mít nastavená pravidla? Bude něco dělat, nějak se měnit, nějak reagovat na okolní políčka?
Řešení
Dosavadní objekty se budou chovat stejně. Přibude ale nový prvek, samotná bariéra (např. potok 🌊). Ta vlastně nedělá vůbec nic, nemění se, stačí, že nemůže vzplanout a nemůže na ní vyrůst strom (to by potom nebránila šíření požáru). Postavíme ji předem (kreslením myší přímo na plochu simulace) a potom už jen ovlivňuje šíření ohně.
Pozorujte upravenou simulaci. Chová se požár podle vašeho očekávání?
Při pozorném sledování si možná všimnete, že oheň vaší bariérou proskočí. Proč? Jak? Jak to opravit?
Patrně si všimnete, že je průběh simulace klidnější. Populace lesa se nemění tak dramaticky. Plynule roste, jako předtím. K požárů, stále dochází, ale vypálí vždy jen menší část lesa, nikoliv všechny stromy.
Další náměty
Kromě lesních požárů lze samozřejmě simulovat a zkoumat i jiné systémy:
- Šíření bakterií a jeho omezování antibiotiky.
- Šíření virového onemocnění v populaci a jeho omezování pomocí očkování.
- Pastvina s trávou, kterou požírají ovce, které se tím pádem množí a trávy ubývá. Tím pádem mohou ovce hynout. Nebo je možné zapojit i vlky, kteří prospívají tím lépe, čím více je ovcí.
- Města.
- Počasí.
- Život.
Cvičně můžete hledat takové nastavení vašich systémů, při kterém si zachovají nějak zajímavé chování co nejdelší dobu (místo aby např. pastvinu po chvíli zcela pohltila tráva).
Shrnutí
- Některé experimenty jsou obtížně proveditelné: příliš drahé, dlouhé, nebo třeba prostě neetické. Nebo jich potřebujeme rychle provést více, než si můžeme dovolit. V takových případech můžeme využít simulace.
- Simulace umožní sledovat chování daného modelu a ověřovat související hypotézy.
- Výsledky simulací je nutné interpretovat obezřetně a vždy je vztahovat k předpokladům a zjednodušením, ze kterých použitý model vychází.
- Složité systémy lze někdy překvapivě věrně simulovat pomocí jednoduchých pravidel.
- Jinými slovy: často je obtížné předvídat důsledky byť i jednoduchých pravidel. Například v systémech se vzájemně provázanými zpětnovazebními smyčkami.
- Když se definovaný systém nechová podle očekávání, snažíme se najít původ rozporu. Sledujeme konkrétní malé části systému a jednotlivé kroky. Procházíme pravidla systému a kontrolujeme, že všechna odpovídají naším požadavkům.
Námět na simulaci lesních požárů vychází z předchozí práce autora simulátoru.