peste et choléra — Simulation d’épidémies

Ces deux programmes sont des simulation de propagation d’épidémies. Avant d’encourager des élèves en TPE à modéliser une telle chose, j’ai voulu tester ce que cela pourrait donner. Deux versions sont proposées (qui sont sans lien avec la maladie dont elles portent le nom).

Peste

Dans cette simulation, chaque individu est représenté par le nœud d’un graphe, relié par une arête à ses voisins, c’est-à-dire aux autres individus qu’il peut infecter. Il est possible d’afficher ou non le graphe avec l’option --turtle.

../_images/peste.png

Choléra

Cette simulation ne considère pas les personnes individuellement : dans celle-ci, les informations sont par exemple « 107 personnes sont malades », sans savoir précisément quelles sont leurs relations aux autres individus. Il n’est donc pas possible, contrairement à la simulation peste, d’observer des effets d’isolation (mise en quarantaine « accidentelle »).

Usage

Les options des deux programmes sont quasiment les mêmes.

Peste

usage: peste [-h] [-t BOOLEAN] [--version] [-c PROBA] [-V PROBA] [-H PROBA]
             [-s NUMBER] [-p NUMBER] [-n NUMBER] [-d INT]

Named Arguments

-t, --turtle

Enable or disable graphical display

Default: True

--version

show program’s version number and exit

-c, --contagion

Probability that sickness will propagate from one person to another.

-V, --vaccine

Probability that a particular person is vaccinated.

-H, --heal

Probability that a sick person will heal (otherwise, he will die).

-s, --sick

Number of sick people in the beginning.

-p, --population

Population size.

-n, --neighbour

Average number of neighbours of each person.

-d, --delay

Speed (the bigger the faster)

Default: 5

Choléra

usage: cholera [-h] [--version] [-c PROBA] [-V PROBA] [-H PROBA] [-s NUMBER]
               [-p NUMBER] [-n NUMBER] [-d INT]

Named Arguments

--version

show program’s version number and exit

-c, --contagion

Probability that sickness will propagate from one person to another.

-V, --vaccine

Probability that a particular person is vaccinated.

-H, --heal

Probability that a sick person will heal (otherwise, he will die).

-s, --sick

Number of sick people in the beginning.

-p, --population

Population size.

-n, --neighbour

Average number of neighbours of each person.

-d, --delay

Speed (the bigger the faster)

Default: 5