Simuler une expérience et estimer une probabilité

Définition, méthode pas à pas, exemple corrigé et exercice type contrôle de Seconde.

Maths Seconde Lecture : 5 min Programme officiel 2019

Simuler une expérience aléatoire consiste à reproduire cette expérience un grand nombre de fois, généralement à l'aide d'un programme informatique ou d'une calculatrice. L'objectif est d'observer la fréquence d'apparition d'un événement. Plus le nombre de répétitions (appelé nombre de tirages ou d'essais) est grand, plus la fréquence observée se rapproche de la probabilité théorique de l'événement. On parle alors d'estimation de la probabilité.

Bon réflexe : Pour estimer une probabilité, pense toujours à simuler l'expérience un très grand nombre de fois et à calculer la fréquence de l'événement.
1

Modéliser l'expérience

Identifier les issues possibles de l'expérience aléatoire et leur probabilité si elles sont connues. Si les issues ne sont pas équiprobables, il faut adapter la simulation.

2

Choisir un outil de simulation

Utiliser une calculatrice (fonction randint ou rand) ou un logiciel de programmation (Python avec random.randint ou random.random) pour générer des nombres aléatoires.

3

Associer les nombres aux issues

Établir une correspondance entre les nombres aléatoires générés et les issues de l'expérience. Par exemple, pour un dé à 6 faces, les nombres $1, 2, 3, 4, 5, 6$ peuvent représenter les faces du dé.

4

Répéter la simulation

Effectuer un grand nombre de répétitions (tirages) de l'expérience. Plus le nombre de répétitions est élevé, plus l'estimation de la probabilité sera précise. On compte le nombre de fois où l'événement étudié se réalise.

5

Calculer la fréquence et estimer la probabilité

La fréquence d'un événement est le rapport du nombre de réalisations de l'événement sur le nombre total de répétitions. Cette fréquence est une estimation de la probabilité de l'événement. $$\text{Fréquence} = \frac{\text{Nombre de réalisations de l'événement}}{\text{Nombre total de répétitions}}$$

On lance deux dés à six faces équilibrés et on s'intéresse à la somme des deux faces. On veut estimer la probabilité d'obtenir une somme égale à $7$.
1
Modéliser l'expérience
Les issues de chaque dé sont les entiers de $1$ à $6$. La somme des deux dés peut varier de $1+1=2$ à $6+6=12$. L'événement étudié est "la somme des deux dés est égale à $7$".
2
Choisir un outil et associer les nombres
On utilise un programme Python. Pour chaque dé, on génère un entier aléatoire entre $1$ et $6$ (inclus) avec random.randint(1, 6).
3
Répéter la simulation
On simule $10000$ lancers de deux dés. On compte le nombre de fois où la somme est $7$.
import random

nombre_simulations = 10000
compteur_somme_7 = 0

for _ in range(nombre_simulations):
    de1 = random.randint(1, 6)
    de2 = random.randint(1, 6)
    somme = de1 + de2
    if somme == 7:
        compteur_somme_7 += 1
4
Calculer la fréquence et estimer la probabilité
Après exécution du programme, supposons que compteur_somme_7 soit égal à $1650$. La fréquence est alors : $$\text{Fréquence} = \frac{1650}{10000} = 0{,}165$$
L'estimation de la probabilité d'obtenir une somme de $7$ est $0{,}165$. La probabilité théorique est $\frac{6}{36} = \frac{1}{6} \approx 0{,}1666...$, ce qui est proche de notre estimation.
  1. La fréquence est un résultat observé lors d'une série d'expériences. Elle varie d'une série à l'autre.
  2. La probabilité est une valeur théorique, fixe, qui caractérise l'expérience aléatoire elle-même.
  3. Une simulation permet d'ESTIMER une probabilité, mais la fréquence obtenue n'est jamais exactement la probabilité (sauf par hasard ou pour un nombre infini de tirages).
Une urne contient $3$ boules rouges et $2$ boules bleues, toutes indiscernables au toucher. On tire une boule au hasard, on note sa couleur, puis on la remet dans l'urne. On répète cette expérience un grand nombre de fois. On souhaite estimer la probabilité de tirer une boule rouge.
  1. Quelle est la probabilité théorique de tirer une boule rouge ?
  2. Proposer un protocole de simulation pour estimer cette probabilité à l'aide d'une calculatrice ou d'un programme Python.
  3. On réalise $5000$ tirages et on obtient $3015$ boules rouges. Quelle est l'estimation de la probabilité de tirer une boule rouge ?
  1. Il y a $3$ boules rouges et $2$ boules bleues, soit un total de $3+2=5$ boules. Les boules étant indiscernables au toucher, le tirage est équiprobable. La probabilité théorique de tirer une boule rouge est donc : $P(\text{Rouge}) = \frac{\text{Nombre de boules rouges}}{\text{Nombre total de boules}} = \frac{3}{5} = 0{,}6$.
  2. Protocole de simulation :

    • On peut associer les nombres $1, 2, 3$ au tirage d'une boule rouge, et les nombres $4, 5$ au tirage d'une boule bleue.
    • On utilise la fonction random.randint(1, 5) en Python (ou une fonction équivalente sur calculatrice) pour générer un entier aléatoire entre $1$ et $5$.
    • On répète cette génération un grand nombre de fois (par exemple, $10000$ fois).
    • À chaque tirage, si le nombre généré est $1, 2$ ou $3$, on incrémente un compteur pour les boules rouges.
    • À la fin de la simulation, on divise le nombre de boules rouges obtenues par le nombre total de tirages pour obtenir la fréquence, qui sera notre estimation de la probabilité.
  3. On a réalisé $5000$ tirages et obtenu $3015$ boules rouges. L'estimation de la probabilité de tirer une boule rouge est la fréquence observée :

    $$ \text{Fréquence} = \frac{\text{Nombre de boules rouges}}{\text{Nombre total de tirages}} = \frac{3015}{5000} = 0{,}603 $$

    L'estimation est $0{,}603$, ce qui est très proche de la probabilité théorique de $0{,}6$.

Questions fréquentes

Pourquoi faut-il un grand nombre de répétitions ?
La loi des grands nombres stipule que plus le nombre de répétitions d'une expérience aléatoire est grand, plus la fréquence d'un événement se rapproche de sa probabilité théorique. Avec peu de répétitions, les résultats peuvent être très éloignés de la réalité.
Comment choisir les nombres pour la simulation si les issues ne sont pas équiprobables ?
Il faut que la proportion des nombres associés à chaque issue corresponde à la probabilité de cette issue. Par exemple, si une issue a une probabilité de $0{,}25$ ($25\%$), on lui associera $25\%$ des nombres générés. Pour une urne avec $3$ rouges et $2$ bleues, on a $P(\text{Rouge}) = 0{,}6$ et $P(\text{Bleue}) = 0{,}4$. On peut générer un nombre entre $1$ et $10$. Si le nombre est $1, 2, 3, 4, 5, 6$, c'est rouge. Si c'est $7, 8, 9, 10$, c'est bleu.
Est-ce que la simulation donne toujours la probabilité exacte ?
Non, la simulation donne une estimation de la probabilité. C'est une valeur approchée qui tend vers la probabilité exacte à mesure que le nombre de répétitions augmente. Il y aura toujours une petite variation due au caractère aléatoire de la simulation.
Quelle est la différence entre random.randint() et random.random() en Python ?
random.randint(a, b) génère un entier aléatoire $N$ tel que $a \leq N \leq b$ (bornes incluses). random.random() génère un nombre flottant aléatoire $x$ tel que $0 \leq x \lt 1$ (borne inférieure incluse, borne supérieure exclue). Pour simuler des probabilités, on peut utiliser random.random() et vérifier si le nombre est inférieur à une certaine probabilité (par exemple, if random.random() < 0.6: pour une probabilité de $0{,}6$). Les deux sont valables, le choix dépend de la modélisation.

Le passage en Seconde est difficile ?

Adil accompagne les élèves de Seconde, à domicile dans le Val d'Oise ou en ligne. Un seul prof, du premier cours jusqu'au Bac.

06 20 13 00 82 Cours de maths en Seconde →