Pour effectuer beaucoup de tirages facilement nous avons écrit à l’occasion d’un stage de 3e un programme en Scratch, langage d’initiation à la programmation.
Le programme effectue des tirages d'une série de 100 billes.
avantages : le tirage se fait sous forme d'une petite animation.
- les billes apparaissent une à une dans une grille 10x10 avec un commentaire s'il y a une bille autre que noire : l'aspect "séquentiel" est présent, on peut commenter le tirage au fur et à mesure ;
inconvénients : faire le bilan de plusieurs tirages n'est pas automatisé
- on ne peut pas changer le nombre de billes de la série, si on veut beaucoup de tirages il faut cliquer autant de fois que nécessaire...
- il y a un bilan des billes pour chaque série, mais pas de bilan cumulé.
Le code analogue en Python, en développement, est plus adapté aux grands tirages, et propose un bilan par série et total.
capture en cours d'exécution | capture en fin d'exécution |
---|---|
![]() |
![]() |
Principe : tirage d'un nombre de 1 à 100 et conversion en couleur
La fonction « nombre aléatoire » de Scratch permet d’affecter à une variable nommée tirage une valeur entière prise au hasard entre 1 et 100 (avec la même probabilité de tirer chacun des numéros). Ce numéro est ensuite transcrit en couleur et en « classe de crue » selon la composition établie pour le sac :
- les numéros 1 à 90 correspondent aux billes noires = « crue inférieure à la décennale »
- les numéros 91 à 98 inclus correspondent aux billes vertes = « crue entre la décennale et la cinquantennale »
- le numéro 99 correspond à la bille bleue = « crue entre la cinquantennale et la centennale »
- le numéro 100 correspond à la bille rouge = « crue supérieure ou égale à la centennale ».
Le programme permet d’effectuer un grand nombre de tirages rapidement ; ici on a défini une boucle de 100 itérations. A chaque tirage d’une bille autre que noire, un texte décrivant la classe de crue s’affiche d’autant plus longtemps que la crue est rare. Les résultats des tirages sont représentés par le dessin des billes et les valeurs finales des compteurs « nombre de billes noires », « ..vertes », « ...bleues » et « … rouges ».
Quelques résultats
Chaque tirage est aléatoire, et chaque séquence est une réalisation de 100 tirages parmi toutes celles possibles, déterminée par le hasard. Ce programme permet d’illustrer la notion de hasard et de « fenêtre d’observation » : si on ne regarde qu’une séquence, on peut avoir une vision très fausse de la probabilité de crue… Exécuter plusieurs fois le programme permet de montrer et discuter de la variabilité : 100 tirages aléatoires peuvent générer une série sans grandes crues (que des billes noires et quelques vertes) ou au contraire une série avec beaucoup de crues fortes, avec par exemple deux crues « rouge » et une « bleue » en cent ans.
Discussion : l’improbable est rare, mais pas exclu…
Pour les crues, c’est la même chose : on peut observer des périodes « sans crue » et des périodes « avec beaucoup de crues ». A contrario, et ce sera l’objet du 3, on comprend que l’on ne peut pas déduire facilement les probabilités des crues si on ne les observe que sur une courte période : peut-être est-on dans une période « sans crue » ou au contraire dans une période « avec beaucoup de crues »…
Sur 1000 tirages, nous avons compté 7 billes rouges et 14 bleues ; en poursuivant les tirages, les ratios se rapprocheront des fréquences théoriques (ici, 1/100 pour la bille rouge par exemple). Mais la même expérience montre aussi la variabilité des tirages : selon les séries, on compte zéro, une ou deux billes rouges... ou plus ! En continuant, on tombera forcément sur des séquences atypiques, comme celle de droite, avec cinq billes rouges. Ainsi, même en connaissant la composition du sac, on peut être surpris par la variabilité induite par le hasard.
Il est possible de vérifier les résultats empiriques avec des formules d'analyse combinatoire, qui donnent la probabilité de subir k crues de période de retour supérieure ou égale à T sur une fenêtre de N années...