Quand on lance une pièce, on ne peut pas prévoir le résultat du prochain lancer. Pourtant, on peut décrire les résultats possibles et mesurer leurs chances. Les probabilités ne suppriment pas le hasard : elles construisent un modèle pour raisonner malgré l'incertitude.
On note \(M\) : « la personne est malade » et \(T\) : « le test est positif ».
Fréquences et loi des grands nombres
Observer avec Python
On simule un évènement de probabilité \(0{,}4\) grâce à random(), qui fournit un nombre pseudo-aléatoire entre \(0\) et \(1\).
from random import random
n = 10000
succes = 0
for _ in range(n):
if random() < 0.4:
succes = succes + 1
frequence = succes / n
print(frequence)
Pour aller plus loin - Accessible à tous
Inverser un conditionnement : formule de Bayes
Indépendance de deux évènements
Deux tests conditionnellement indépendants
Si deux tests sont indépendants une fois l'état \(M\) connu, et si chacun est positif avec probabilité \(0{,}95\) parmi les malades, alors
\[P_M(T_1\cap T_2)=0{,}95^2=0{,}9025.\]
Cette hypothèse doit être annoncée : deux tests réalisés de la même façon peuvent partager des sources d'erreur et ne pas être indépendants.
Boîte à outils et erreurs à éviter
Exercices progressifs
Exercice 1 ★☆☆ : Décrire une expérience
On lance une pièce puis un dé à quatre faces numérotées de 1 à 4.
Écrire l'univers sous forme de couples.
Donner son cardinal.
Écrire l'évènement \(A\) : « obtenir pile et un nombre pair ».
Exercice 2 ★☆☆ : ET, OU, NON
On lance un dé équilibré à six faces. Soit \(A\) : « obtenir un nombre pair » et \(B\) : « obtenir au moins 4 ». Écrire \(A\), \(B\), \(A\cap B\), \(A\cup B\) et \(\overline A\), puis calculer leurs probabilités.
Exercice 3 ★☆☆ : Compléter une loi
Une variable aléatoire prend quatre issues \(a,b,c,d\) avec
Calculer \(P(\overline A)\), \(P(A\cup B)\) et la probabilité que ni \(A\) ni \(B\) ne se réalise.
Exercice 6 ★★☆ : Conditionner dans un tableau
On choisit au hasard un élève dans le tableau suivant.
Musique
Pas musique
Total
Sport
72
48
120
Pas sport
28
52
80
Total
100
100
200
Calculer et interpréter \(P_S(M)\), \(P_M(S)\), \(P_{\overline S}(M)\) et \(P_M(\overline S)\).
Exercice 7 ★★☆ : Traduire sans inverser
Dans un établissement, \(40\,\%\) des élèves sont demi-pensionnaires. Parmi eux, \(30\,\%\) participent à un atelier ; parmi les externes, \(18\,\%\) participent à un atelier.
Définir deux évènements \(D\) et \(A\).
Traduire les trois données en probabilités.
Expliquer pourquoi aucune donnée ne fournit directement \(P_A(D)\).
Calculer \(P(A\cap B)\), puis déterminer \(P_{\overline A}(B)\) à l'aide d'un arbre.
Exercice 10 ★★☆ : Comprendre un test
Sur 1 000 personnes, \(4\,\%\) sont malades. Un test a une sensibilité de \(90\,\%\) et une spécificité de \(95\,\%\).
Construire le tableau d'effectifs.
Calculer la fréquence des personnes malades parmi les tests positifs.
Comparer ce résultat à la sensibilité et expliquer la différence.
Exercice 11 ★★☆ : De l'arbre au tableau
Une entreprise reçoit \(60\,\%\) de ses colis du fournisseur \(F\). Parmi les colis de \(F\), \(3\,\%\) sont endommagés ; parmi les autres, \(7\,\%\) le sont.
Construire l'arbre.
Sur une base de 10 000 colis, dresser le tableau d'effectifs attendu.
Calculer la probabilité qu'un colis soit endommagé.
Exercice 12 ★★☆ : Lire une simulation
On exécute le programme suivant.
from random import random
n = 5000
compteur = 0
for _ in range(n):
if random() < 0.27:
compteur = compteur + 1
print(compteur / n)
Que simule-t-il ? Autour de quelle valeur la sortie doit-elle généralement se situer ? Que changerait le remplacement de \(5\,000\) par \(50\) ?
Une usine utilise la machine \(X\) pour \(70\,\%\) de sa production et la machine \(Y\) pour le reste. Les taux de défaut sont respectivement \(1\,\%\) et \(4\,\%\). Un objet choisi au hasard est défectueux. Calculer la probabilité qu'il provienne de \(Y\).
Que deviendrait la conclusion si \(P(A\cap B)=0{,}15\) ?
Problème défi : comprendre un dépistage rare
On modélise une campagne concernant 20 000 personnes. On suppose que \(1\,\%\) sont malades. Un test est positif pour \(95\,\%\) des personnes malades et négatif pour \(98\,\%\) des personnes non malades.
On note \(M\) : « malade » et \(T\) : « test positif ».
Partie A - Construire le modèle
Traduire les trois pourcentages par \(P(M)\), \(P_M(T)\) et \(P_{\overline M}(\overline T)\).
Calculer \(P(\overline M)\), \(P_M(\overline T)\) et \(P_{\overline M}(T)\).
Construire l'arbre pondéré complet.
Nommer les chemins correspondant à un vrai positif, un faux positif, un vrai négatif et un faux négatif.
Partie B - Raisonner sur 20 000 personnes
Calculer le nombre de personnes malades et non malades.
Parmi les malades, calculer les nombres de tests positifs et négatifs.
Parmi les non-malades, calculer les nombres de tests positifs et négatifs.
Dresser le tableau croisé complet.
Calculer \(P(T)\) de deux manières : avec le tableau, puis avec l'arbre.
Calculer \(P_T(M)\) et l'interpréter par une phrase.
Expliquer pourquoi \(P_T(M)\) est très différent de la sensibilité \(P_M(T)\).
Partie C - Deux tests positifs
On effectue un second test identique sur un nouvel échantillon. On suppose que, lorsque l'état de santé est fixé, les deux résultats sont indépendants.
Expliquer le rôle de cette nouvelle hypothèse.
Calculer \(P_M(T_1\cap T_2)\) et \(P_{\overline M}(T_1\cap T_2)\).
Calculer \(P(M\cap T_1\cap T_2)\) et \(P(\overline M\cap T_1\cap T_2)\).
En déduire la probabilité d'être malade sachant que les deux tests sont positifs.
Comparer avec la réponse à la question 10.
Partie D - Le taux de base change
Dans une population plus exposée, on suppose maintenant que \(5\,\%\) des personnes sont malades. Les performances du test restent les mêmes.
Sur 20 000 personnes, construire les quatre effectifs du nouveau tableau.
Calculer la probabilité d'être malade parmi les tests positifs.
Expliquer pourquoi cette probabilité a changé alors que le test est identique.
Partie E - Simuler et garder un esprit critique
Compléter les deux conditions manquantes du programme ci-dessous pour simuler la situation initiale.
from random import random
n = 20000
positifs = 0
malades_parmi_positifs = 0
for _ in range(n):
malade = random() < ...
if malade:
test_positif = random() < ...
else:
test_positif = random() < 0.02
if test_positif:
positifs = positifs + 1
if malade:
malades_parmi_positifs += 1
print(malades_parmi_positifs / positifs)
Quelle valeur la sortie doit-elle approcher lorsque \(n\) est grand ?
Pourquoi les résultats changent-ils d'une exécution à l'autre ?
Donner deux raisons pour lesquelles ce modèle ne suffit pas à prendre une décision médicale réelle.
Corrigés détaillés
Corrigé 1
Corrigé 2
Corrigé 3
Corrigé 4
Corrigé 5
Corrigé 6
Corrigé 7
Corrigé 8
Corrigé 9
Corrigé 10
Corrigé 11
Corrigé 12
Corrigé 13
Corrigé 14
Corrigé 15
Corrigé du problème défi
Partie A - Construire le modèle
Partie B - Raisonner sur 20 000 personnes
Partie C - Deux tests positifs
Partie D - Le taux de base change
Partie E - Simuler et garder un esprit critique
Fiche-mémoire
Schéma : Fiche-mémoire
Maîtrise du chapitre
Validation contrôlée
Réponds aux QCM, sélectionne les bonnes propositions ou remets les étapes dans l'ordre. Le site vérifie chaque réponse avant d'ouvrir la balise suivante.