Tartalomjegyzék:

(Nagyon egyszerű) Betegségmodellezés (Scratch használatával): 5 lépés
(Nagyon egyszerű) Betegségmodellezés (Scratch használatával): 5 lépés

Videó: (Nagyon egyszerű) Betegségmodellezés (Scratch használatával): 5 lépés

Videó: (Nagyon egyszerű) Betegségmodellezés (Scratch használatával): 5 lépés
Videó: Bernardo Kastrup Λ John Vervaeke a metatudatról 2024, November
Anonim
(Nagyon egyszerű) Betegségmodellezés (Scratch használatával)
(Nagyon egyszerű) Betegségmodellezés (Scratch használatával)

Ma egy betegség kitörését szimuláljuk, bármilyen betegséggel, nem feltétlenül a COVID-19-vel. Ezt a szimulációt a 3blue1brown videója ihlette, amelyre linkelni fogok. Mivel ez drag and drop, nem tudunk annyit tenni, mint a JS vagy a Python, de a scratch használatának is vannak előnyei, ezért ha látni szeretné, hogyan modellezheti a járványt a JS segítségével, megtekintheti a cikk, amelyet a betegségek kitörésének modellezéséről írtam itt. Most kezdjük el!

Megjegyzés: A fenti kép a quantum9innovation szimulációjából származik (nem Instructables felhasználó), amelyet itt tekinthet meg.

Kellékek:

Szükséged lesz:

  • Scratch fiók (itt regisztrálhat
  • Alapvető ismeretek a drag and drop -ról (de akkor is átnézem a kódot)
  • Számítógép vagy eszköz, amellyel programozhat (ami valószínűleg megvan, mivel ezt olvassa)
  • Választható - Nézze meg a 3b1b videót, ez némi képet ad arról, hogy mit programozunk.

1. lépés: Alapbeállítás

Alapbeállítás
Alapbeállítás

Először hozzunk létre egy projektet, nevezzük el, amit akarunk, majd töröljük a vásznon lévő meglévő sprite -ot. Ezt megteheti a sprite kukája gombra kattintva. Most van egy üres vászonunk, és a háttérszínt tetszés szerint módosíthatja.

Ezután hozzon létre egy új sprite -ot, és a meglévő sprite használata helyett fesse le a sajátját. Legyen kék pont. Ez a sprite a közösség fogékony populációját képviseli, és lesz egy felépült/eltávolított és fertőzött populációnk is, innen származik a modell neve, a SIR (fogékony, fertőzött, helyreállított/eltávolított). Győződjön meg róla, hogy a sprite -t "nem fertőzött" -nek nevezte el.

Most hozzon létre egy új sprite -t (újra), és nevezze el sprite1 -nek, amelyet mi magunk is megfestünk. Adja meg a "Sprite1" címet, és hozzon létre 2 jelmezt, az egyik legyen piros, a másik szürke. Tedd őket jelmez1 és jelmez2 sorrendben. Ez a kettő a fertőzött (a piros pont) és a helyreállított/eltávolított (a szürke pont) populációt képviseli.

2. lépés: A fogékony populáció kódjának beállítása

A kód beállítása a fogékony népesség számára
A kód beállítása a fogékony népesség számára

Most beállítottuk a fogékony populációs kódot. Először két változót hozunk létre: emberek és fertőzöttek. Az "Emberek" változó a lakosságot képviseli, és aszerint módosítható, hogy hány embert szeretnénk a szimulációnkba, és a szimuláció ennek megfelelően változik. Létrehozunk egy fertőzött változót is, és ez a betegségben szenvedő/volt populációt képviseli. Mindkét változónak globális változónak kell lennie, vagyis minden sprite -ban használható.

Ezután másolja a fenti kódot a nem fertőzött sprite -ba. Nézzük végig, mit csinál. Amikor a program elindul, a sprite el van rejtve, és ez azt jelenti, hogy nem kell ugyanazt a kódot klónokhoz behelyezni a sprite -ba, ami segít. Ezután a két változót (fertőzöttet és embert) úgy állítjuk be, ahogyan szeretnénk, ebben az esetben a fertőzötteket 1 -re, az embereket pedig 100 -ra. Ez azt jelenti, hogy egy fertőzött személlyel és összesen 100 emberrel kezdjük. beleértve a fertőzött személyt. Ezután egy ciklust futtatunk, amely az emberek változójának az összegét futtatja, ebben az esetben 100. Véletlenszerű pozícióba megyünk, majd létrehozzuk a sprite klónját. Véletlen helyzetbe megyünk, mert így nem egy irányban mozognak a pontok, hanem véletlenszerű helyzetekben szaporodunk.

3. lépés: A kód beállítása a fertőzött és eltávolított Sprite számára

A kód beállítása a fertőzött és eltávolított Sprite számára
A kód beállítása a fertőzött és eltávolított Sprite számára

Most váltson a "Sprite1" sprite -re, majd másolja a fenti kódot. Menjünk át rajta. Amikor a program elindul, a sprite el van rejtve, majd ciklus fut a fertőzött mennyiségre. Véletlenszerű helyzetbe kerül, és klónt hoz létre önmagából.

4. lépés: A fogékony népesség kódjának kitöltése

A fogékony népesség kódjának kitöltése
A fogékony népesség kódjának kitöltése

Nézzük végig a tennivalókat:

  • Fertőzi
  • Mozog

Váltson a nem fertőzött sprite -re, másolja a fenti kódot, és nézzük meg, hogyan fejezi be a fertőzést és a mozgást. Először is, az egyik jelmezre vonatkozik, és ez valóban nem szükséges, de ott van, így ha úgy döntünk, hogy többet adunk hozzá, nem kell attól tartanunk, hogy jelmezeket cserélünk az újakra. Ezután megmutatja magát. Ha emlékszel, elrejtettük az eredeti sprite -ot, így a klónok is el lesznek rejtve, amit nem akarunk. Ezután futtatunk egy örökkévalós ciklust, amely az egész programot lefuttatja mindaddig, amíg valaki rákattint a stop jelre. 1 másodpercig véletlenszerű helyzetbe csúszunk, majd ellenőrizzük, hogy a szélén vagyunk -e, ilyenkor ugrálunk. Ezután, ha a piros színhez érünk, akkor klónozzuk a Sprite1 -et (a fertőzött/eltávolított populációt), és növeljük a fertőzött változót 1 -gyel, majd töröljük a sprite -t.

5. lépés: A fertőzött/eltávolított kód kitöltése

A fertőzött/eltávolított kód kitöltése
A fertőzött/eltávolított kód kitöltése

A Sprite1 -re váltva létrehozunk egy új listát, az időzítőt. Ez a lista nyomon követi, hogy egy pont mennyi ideig fertőzött, és egy bizonyos idő elteltével vagy elpusztul, vagy felépül, az eltávolított/helyreállított populáció része lesz, és egy szürke pont jelzi, amelyet nem lehet újra megfertőzni.

Másolja a fenti kódot, és nézzük végig. Amikor klónként kezdjük, az időzítők listájába beillesztjük a program által futó összes másodpercet, és ezt ellenőrizzük, hogy megnézzük, mennyi ideig fertőzött, és módosítjuk, hogy ennek megfelelően helyreállítsuk. Elrejtjük az időzítők listáját, majd minden esetre átkapcsoljuk a klón jelmezt a fertőzött jelmezre, majd megmutatjuk a sprite -t. Most egy örökké tartó ciklust futtatunk, amelyben több dolog történik: azt mondjuk a klónnak, hogy másodpercenként véletlenszerű helyzetbe sikljon, ellenőrizze, hogy a fertőzött változó nagyobb -e, mint maga a populáció, ebben az esetben a populációhoz állítjuk be, és végül elmegyünk, és ellenőrizzük az időzítő lista első elemét, hogy eltelt -e több mint 5 másodperc, és ha igaz, akkor átváltjuk a jelmezt a visszanyert jelmezre, nehogy megfertőzzük, majd töröljük az elemet az időmérőből.

Ajánlott: