Simulation einer Pandemie

In Infizieristan ist ein besonders schweres Virus ausgebrochen. In dem Land leben 100 Menschen, von denen anfangs nur zwei Person infiziert sind. Mit Hilfe der Simulation soll es möglich sein, die folgende Frage zu beantworten:
Wie viel Prozent der Bevölkerung sollten zuhause bleiben, damit das Gesundheitssystem nicht überlastet wird?

 

Öffnen Sie dazu die Vorlage und modellieren Sie das Verhalten einer Person!

 

Lesen Sie dazu die Tipps aufmerksam durch!

In der Vorlage werden sie dazu das untenstehende Skript finden. Ihre Aufgabe ist es, das Verhalten einer Person zu modellieren. Erweitern Sie dazu die Vorlage an den kommentierten Stellen.
Wir unterscheiden hierbei drei Fälle (vgl. Kommentare im Skript):

  • Im Falle, dass die Person nicht zuhause bleibt, sollte sie sich zufällig bewegen.
  • Im Falle, dass die Person gesund ist und Kontakt zu einer kranken Person hat, sollten wir ihren Zustand auf krank ändern.
  • Im Falle, dass die Person krank ist, sollten wir die Variable erholung um 1 ändern. Hat die Variable erholung einen Wert > 100 erreicht, so sollten wir den Zustand der Person auf immun setzen.
Skript

Hinweis: mit Runde ist ein Durchlauf der fortlaufend-Wiederholung gemeint.

 

Sie merken, wir treffen dabei einige Annahmen:

 

  • Personen, die nicht zuhause bleiben bewegen sich zufällig,
  • bei Kontakt mit Kranken infizieren sich gesunde Personen sofort,
  • nach 100 Zeiteinheiten werden kranke Personen immun.

Ein Klick auf die grüne Fahne rechts oben startet die Simulation, ein Klick auf das rote Stoppschild setzt sie zurück.

Grüne Flagge

Um die Person zu bewegen, sind die folgenden Blöcke aus der Kategorie Bewegung hilfreich.

Block Drehen Block Gehen Block Abprallen

 

Damit das Verhalten weniger vorhersagbar wird, hilft dieser Block aus der Kategorie Operatoren.Block Zufallszahlen

Wollen Sie wissen, ob die Person gerade eine kranke Person berührt, können Sie diesen Block aus der Kategorie Fühlen verwenden.

berühre kranke Person

Die spitzen Klammern des Blocks weisen darauf hin, dass hier ein Wahrheitswert zurückgeliefert wird.

Welchen Block können wir dann verwenden, wenn wir etwas nur tun wollen, wenn eine bestimmte Bedingung erfüllt wird? Erinnern Sie sich?

Um den Zustand einer Person zu ändern, müssen wir die Variable zustand und ihr Kostüm ändern.

Setze Zustand auf "krank"

Ziehe Kostüm "krank" an

Mithilfe der Variable erholung können wir den Fortschritt im Genesungsprozess modellieren. Für unser Modell gehen wir davon aus, dass Personen zum Zeitpunkt der Infizierung eine erholung von 0 haben und sich diese jede Runde in der die Person krank bleibt um 1 erhöht.

 

Dazu können wir die Blöcke zum Setzen und Verändern von Variablen nutzen:

 

erholung-1

erholung-2

 

Dann müssen wir nur noch die Bedingung, ob der Wert größer als 100 ist, prüfen und den Zustand der Person entsprechend anpassen. Aber Sie wissen ja bereits, wie das geht.

Okay, wir helfen Ihnen 🙂

Lösungshinweis

Mögliche Lösung

 

Hier finden Sie das fertige Projekt.