Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

ws1819:epidemiesimulation

Dies ist eine alte Version des Dokuments!


Thema: Epidemiesimulation

Mitglieder: Philipp, Max, Jan und Lena

Erste Schritte:

(-Turtle-Feld aufbauen -mehrere Turtles laufen lassen -bei Kontakt Infektion (100% Ansteckung)

  1. durch unterschiedliche Farben anzeigen lassen
    1. bestimmte Zeit (bsp. zu Beginn eine Stunde))

-mit Tkinter 10×10 Raster in weiß, in anderen Farben die Erkrankung von Menschen darstellen (rot=kranke Menschen), die Ausbreitung der roten Farbe simuliert die Krankheitsausbreitung

- zuerst ohne Inkubationszeit und die Menschen können wieder gesund werden

- Rechnungen von der Seite: http://www.mathe.tu-freiberg.de/~wegert/Lehre/Seminar3/moehler.pdf schreiben wir in Python

Weitere Änderungen:

-andere Grafik

-unterschiedliche Resistenz

-unterschiedliche Geschwindigkeit

-Infektionswahrscheinlichkeit ändern

-unterschiedliche Krankheiten

-mehrere Generationen,Resistenssimulation

-grafische Darstellung der Anzahl der Kranken

-unterschiedlich Zeitintervalle

-Krankheitsverlauf, Ansteckungsgefahr, Inkubationszeit, etc.

Internetseiten: [https://www.stern.de/digital/computer/epidemien-mit-dem-simulator-seuchen-bekaempfen-3297438.html]

[https://books.google.de/books?id=u8pwDwAAQBAJ&pg=PA122&lpg=PA122&dq=python+simulation+epidemie&source=bl&ots=SHBp_fkazQ&sig=1-1VhatRx2rnke5k44fzgBrwte0&hl=de&sa=X&ved=2ahUKEwj_8qCL1-_eAhUJ0RoKHXbzABoQ6AEwAnoECAcQAQ#v=onepage&q=python%20simulation%20epidemie&f=false]

- die Bibliothek epydemic benutzen, von der Seite: https://pythonhosted.org/epydemic/

ps.bwii.at/topic/calc/epidemy/epidemy.html#epidemy_formula

https://de.wikipedia.org/wiki/Epidemiologie

06.12.2018

Das SI-Modell wurde geschrieben in einem Nebenprogramm. Wir können das Programm jetzt plotten, aber uns fehlen noch die Eingaben. Die Krankheit ist nicht heilbar, aber sie führt auch nicht zum Tod. Außerdem werden keine neuen Menschen geboren.

Dazu wurde noch ein Nebenprogramm für die Achsen geschrieben, nur haben wir die Schrittweise an den Achsen noch nicht geändert.

Außerdem haben wir versucht uns mit der „Epydemic“-Bibliothek auseinanderzusetzen, allerdings gibt es im Internet ziemlich wenige Informationen dazu, wie man mit der Bibliothek umgeht.

Am Ende der Stunde haben wir mit dem Hauptprogramm begonnen.

In der nächsten Stunde wollen wir aus dem SI-Modell ein SIS-Modell machen und dieses auch ausgeben.

Des Weiteren wollen wir die Parameter zu einer Eingabe umschreiben.

13.12.2018

Neben der Achsenkonstruktion haben wir eine neue Funktion erstellt bei der alle y-Werte der Funktionen im Graphen geplottet werden egal wie viele Gleichungen wir haben. Die X-Werte bleiben bei allen Gleichungen erhalten. Nur die Y-Werte ändern sich, je nachdem welche Gleichung verwendet wird. Am Ende werden alle Graphen der Gleichungen geplottet.

Außerdem versuchen wir die Werte für die gesunden Menschen zu berechnen, aber es gibt ein paar Probleme bei der Berechnung, da die eine Liste nicht richtig erkannt wird. Ohne diese Liste können wir aber nicht weiterarbeiten. Update: Das Problem wurde behoben. Es lag ein Schleifenfehler vor.

Mit der Bibliothek von „Epydemic“ haben wir uns nicht weiter beschäftigt, da wir uns mit „heatmaps“ beschäftigt haben. Bei einer „Heatmap“ können wir einzelne Kästchen in verschiedenen Farben erscheinen lassen, damit neben dem Graphen eine weitere Visualisierung stattfindet. Die gleichfarbigen Kästchen sollen eine bestimmte Personengruppe angeben. In unserem ersten Fall sollen die Infizierten und Gesunden gezeigt werden. Noch sind wir aber in der Erarbeitung dieser Art von Veranschaulichung. Update: Mit „Randomzahlen“ können „heatmaps“ erstellt werden.

Das SI-Modell wurde fertiggestellt. Es fehlen nur noch die Eingaben, die wir in der nächsten Woche hinzufügen werden.

Beim SIS-Modell gab es einige Probleme. Das erste Problem war, dass es keinen Unterschied gab zwischen dem Gesundheits- und Erkrankungswachstum. Das zweite Problem entstand durch falsche Testbeispiele, da diese keinen Aufschluss über die Berechnungen gab(zur Lösung dieses Problems wurden über 2 Stunden gebraucht).

Ziele für die nächste Woche:

- herausfinden wie man ganz bestimmte Zahlen in „Heatmap“ eintragen kann und diese ausgegeben werden

- eine Legende für die Graphen erstellen (Internetseiten:-https://pythonspot.com/matplotlib-legend/ -https://matplotlib.org/tutorials/intermediate/legend_guide.html)

- Eingaben erstellen für die bereits vorhandenen Modelle

- Verknüpfungen zwischen den Nebenprogrammen und dem Hauptprogramm herstellen

- evtl. SIR-Modell anfangen

20.12.2018

Wir haben das SIS-Modell fertig gestellt mit ein paar Änderungen. Neben der neuen Achsenkonstruktion haben wir die Skalierung der Y-Achse in Abhängigkeit der Werte erstellt.

Außerdem haben wir eine Legende und eine Plotfunktion hinzugefügt, damit wir die für alle Modelle verwenden können.

Im Hauptprogramm stehen lediglich vorgegebene Parameter und die Aufrufe der Funktionen. Somit ist das Hauptprogramm sehr übersichtlich und kurz gefasst.

In der Stunde wurde auch das SIR-Modell fertig erstellt mit der allgemeinen Plotfunktion aus dem SIS-Modell und den speziellen Berechnungsfunktionen für die einzelnen Personengruppen und deren „Gesundheit“. Unsere Diagramme besitzen seit heute auch Beschriftungen, welcher Graph welche Entwicklung darstellt.

Des Weiteren haben wir mit dem SIRS-Modell angefangen, allerdings stimmen die Testwerte nicht bzw. ergeben keinen Sinn, da Menschen ihre Resistenz schneller verlieren als gesund zu werden. EDIT: Das SIRS-Modell wurde beendet, es wurde nur das falsche Berechnungsprogramm importiert. Das dynamische SIRS-Modell, also mit Geburten und Toden, wurde übertragen, funktioniert aber noch nicht. Es funktioniert nun doch. Grund war das Missverstehen der Parameter des Modells.

Wir haben Schieberegler programmiert, die leichte und vor allem live Veränderungen aller Parameter der Krankheit und Beobachtungsgrößen ermöglichen. Beim nächsten Mal werden wir diese dann in die einzelnen Hauptprogramme überführen.

In den nächsten Stunden werden wir versuchen weitere Modelle zu erstellen und neue Grafikmöglichkeiten überlegen. Bis jetzt haben wir nur die Graphendarstellung mit „matplotlib“. Allerdings wollen wir noch weitere Möglichkeiten finden und ausprobieren. Möglich wären zum Beispiel Heatmaps, die dann auch räumliche Krankheitsverbreitungen miteinbeziehen könnten.

Wir werden auch überlegen, ob wir unsere bestehenden Programme sinnvollerweise nur als diskrete Funktionen plotten. An der endgültigen Umsetzung des dynamischen SIRS-Modells wird beim nächsten Mal schon weitergearbeitet. Voraussichtlich werden wir es dann auch beenden.

10.01.2019

Mit unseren Modellen sind wir fertig. Jetzt geht es nur noch um Verbesserungen und Verfeinerungen. Es wurden unabhängige Geburten- und Sterberaten erstellt. Außerdem haben wir uns weiter über eine Live-Schieberegler erkundigt, allerdings gibt es dort noch einige Probleme.

Mit Heatmaps haben wir eine Alternative zur Grafikdarstellung gefunden, allerdings sind wir auch hier noch nicht fertig. Das Programm ist noch unabhängig von den ausgerechteten Daten der Modelle und es ist bis jetzt nur ein Standbild, heißt es verändern sich noch nicht die Quadrate.

Für die Grafik haben wir versucht eine Achsenbeschriftung hinzuzufügen, aber die Beschriftung steht nicht links neben der Achse. Des Weiteren stimmt die Eingabe nicht.

Ziele für die nächsten Stunden:

  • Heatmap mit dem Hauptprogramm verbinden
  • Achsenbeschriftung hinzufügen
  • weitere Grafikmöglichkeiten ausprobieren
  • Schieberegler

17.1.2019 Philipp: Diskrete Version des dynamischen SIRS-Modells Jan: Heatmapfarbsortierung Max: Slider weiterbearbeitet

24.01.19

Wir sind mit mit der diskreten Version des dynamischen SIRS- Modells fertig. Wir kennen uns besser mit den Slidern aus, haben aber noch Probleme es mit dem Hauptprogramm zu verbinden. Dazu kommt, dass sich das Hauptprogramm noch bearbeitet wird, welches dasverbinden mit den Slidern erschwert. Bei der Heatmapfarbsortierung gibt es noch einige Probleme zu bewältigen, bevor man diese dann mit dem Hauptprogramm verbinden können.

_Ziele für nächste Woche:_

* Slider mit dem Hauptprogramm verbinden * weiterhin Heatmapfarbsortierung

31.01.2019

Wir haben uns weiter mit den Slidern beschäftigt, allerdings gibt es immer noch Probleme. Die Heatmap für das SI-Modell ist fertiggestellt. Außerdem haben wir es geschafft, dass die Achsen eine passende Beschriftung haben.

Ziele für die nächste Woche:

  • Heatmap für das SIRS-Modell
  • Slider in das Hauptprogramm integrieren

07.02.2019

Die Heatmap muss neu geschrieben werden, da der Quellcode unübersichtlich wurde. Die Heatmap ist für das SI-Modell. Wenn das Programm fertig ist, müssen wir das für die anderen Programme erweitern. Das Grundgerüst bleibt aber das Gleiche.

Bei der Slidder ist die Verbindung mit dem Hauptprogramm sehr schwierig. An sich funktioniert die Slider, aber es gibt noch ein paar Probleme mit dem Hauptprogramm. „Der Slider geht, ist aber nicht benutzerfreundlich“.

Als Alternative wollen wir eine Eingabe einrichten, aber da müssen wir noch die Grenzen ausrechnen. Da wir in unseren Modellen mit bestimmten Zahlen rechnen, kann die Eingabe auch nur bestimmte Zahlen bekommen, damit unser Programm immer noch rechnen kann.

14.02.2019

Heute wurde die Heatmap für das SI-Modell fertiggestellt. Allerdings gibt es nur „Gesunde“, „frisch Infizierte“ & „Infizierte“.

Für die anderen Modelle müssen wir herausfinden, ob es eine einfache Möglichkeit gibt um mit Wahrscheinlichkeiten zu rechnen und dafür die Heatmap einzurichten. Wir versuchen die Heatmaps für die Modelle gleichzeitig zu erstellen, aber ohne die Wahrscheinlichkeitsrechnung können die anderen Programme nicht zu Ende geschrieben werden.

Bei der Slider ist immer noch ein Fehler drin, aber das soll auch heute behoben werden. Der Slider ist fertig, aber die Startzahl der Infizierten muss in Prozenten angegeben bzw. umgerechnet werden. Ansonsten funktioniert das Programm.

ws1819/epidemiesimulation.1550158232.txt.gz · Zuletzt geändert: 2019/02/14 16:30 von Lena00