Simuler une variable aléatoire en Python, moyenne d’un échantillon de taille n et fluctuation, proportion des échantillons tels que |m − μ| ⩽ 2σ/√n, effet de la taille de l’échantillon.
À propos de cette page
Des exercices corrigés sur la simulation d’échantillons, classés par cas et par difficulté : probabilités avec random et randint, seuils à compléter, fonction moyenne et fréquence, intervalle centré sur l’espérance, fréquence d’ampoules défectueuses, taille minimale arrondie à l’entier supérieur, lecture d’un programme qui compte les échantillons. Chaque cas contient une question à justifier, avec la rédaction attendue.
20 exercices, classés par cas comme le cours. Écris ta réponse, puis « Vérifier ».
Cas 1Simuler une variable aléatoire en Python
Réflexe — je traduis la loi en seuils cumulés ; randint(a, b), comme ALEA.ENTRE.BORNES(a;b) au tableur, renvoie un entier de a à b, bornes comprises. Revoir la méthode →
Exercice 1★★★Facile
Donne chaque réponse sous forme décimale ou de fraction (exemple : 3/8).
Probabilité que random() < 0.42 soit vrai :
random() tombe dans avec une probabilité égale à la longueur de cet intervalle : .
Probabilité que 0.4 <= random() < 0.9 soit vrai :
Longueur de l’intervalle : .
Nombre de valeurs différentes que peut renvoyer randint(3, 7) :
Les deux bornes sont comprises : , , , , , soit valeurs.
Probabilité que randint(3, 7) renvoie :
Les entiers sont équiprobables : la probabilité vaut .
Probabilité que la formule de tableur =ALEA.ENTRE.BORNES(1;8)<=2 renvoie VRAI :
=ALEA.ENTRE.BORNES(1;8) renvoie l’un des entiers de à , bornes comprises, comme randint(1, 8) ; et rendent le test vrai : .
Exercice 2★★★Facile
Aux fléchettes, le nombre de points marqués par un lancer est simulé par la fonction suivante.
def Z():
u = random()
if u < 0.1:
return 20
elif u < 0.45:
return 5
else:
return 0
La fonction renvoie quand , intervalle de longueur .
Justifier la valeur de :
Rédaction attendue. La fonction renvoie lorsque le premier test est faux et le second vrai, c’est-à-dire lorsque . La probabilité que random() tombe dans est la longueur de cet intervalle : . Donc .
La fonction renvoie quand , de longueur .
Exercice 3★★★Moyen
Une variable prend les valeurs , , , avec les probabilités ; ; ; . Complète les seuils s2 et s3 (écris un nombre décimal).
def W():
u = random()
if u < 0.15:
return 1
elif u < s2:
return 2
elif u < s3:
return 3
else:
return 4
s2 =
Seuil cumulé : . L’intervalle a bien pour longueur .
s3 =
: l’intervalle a pour longueur , et le reste a pour longueur .
Si random() renvoie , la fonction renvoie
et , mais : c’est la branche qui renvoie .
Exercice 4★★★Difficile
On veut simuler un événement de probabilité à l’aide de randint. Donne les probabilités sous forme décimale ou de fraction.
Probabilité que randint(1, 10) < 3 soit vrai :
Seuls et rendent le test vrai (l’inégalité est stricte) : , et non .
Probabilité que randint(0, 10) <= 3 soit vrai :
randint(0, 10) renvoie l’un des entiers de à ; , , , rendent le test vrai : , et non .
Démontrer que le test randint(1, 20) <= k est vrai avec la probabilité pour un seul entier :
Rédaction attendue.randint(1, 20) renvoie l’un des entiers de à , tous avec la probabilité . Pour un entier entre et , le test est vrai pour les entiers : sa probabilité vaut . Or . Le test randint(1, 20) <= 6 simule donc un événement de probabilité .
Cas 2Moyenne d’un échantillon de taille n
Réflexe — s = 0 avant la boucle, s = s + valeur dans la boucle, return s / n après ; m fluctue, μ est fixe. Revoir la méthode →
Exercice 5★★★Facile
Une usine contrôle ses pièces par échantillons de pièces prises au hasard. Le premier échantillon contient pièces défectueuses, le second .
Fréquence de pièces défectueuses du premier échantillon :
, soit .
Fréquence du second échantillon :
, soit .
Le responsable conclut que la qualité s’est dégradée. Le phénomène qu’il oublie s’appelle la fluctuation d’
Deux échantillons tirés au hasard dans la même production n’ont aucune raison d’avoir la même fréquence : c’est la fluctuation d’échantillonnage. Un écart de entre deux échantillons de pièces n’a rien d’anormal ; pour juger, il faudrait comparer chaque fréquence au modèle (la proportion annoncée par l’usine), pas les deux échantillons entre eux.
La proportion de pièces défectueuses de toute la production est inconnue. Son estimation à partir des deux échantillons réunis ( pièces) :
On réunit les deux échantillons : . C’est une estimation de la proportion de la production, pas sa valeur exacte ; un échantillon plus grand donne en général une estimation plus fiable.
Exercice 6★★★Facile
On lance un dé équilibré à quatre faces, numérotées de à . La fonction suivante simule un échantillon de lancers.
from random import randint
def moyenne(n):
s = 0
for k in range(n):
s = s + randint(1, 4)
return s / n
Nombre total de lancers simulés par moyenne(30) puis moyenne(50) :
Chaque appel fait tours de boucle, un lancer par tour : lancers.
Si les lancers simulés sont , , , , , alors moyenne(5) renvoie
, puis .
Espérance de la variable simulée :
Les quatre faces ont la probabilité : . Les moyennes d’échantillons fluctuent autour de cette valeur fixe.
Exercice 7★★★Moyen
La fonction suivante doit renvoyer la fréquence des « succès » sur essais, un succès ayant la probabilité . Deux lignes sont à compléter (écris le code Python).
def freq(n):
c = 0
for k in range(n):
if random() < 0.15:
c = ...
return ...
Ligne 5 : c =
À chaque succès, le compteur augmente de : c = c + 1.
Dernière ligne : return
La fréquence est le nombre de succès divisé par le nombre d’essais : return c / n, écrit après la boucle.
Justifier que freq(200) est la moyenne d’un échantillon. Elle a renvoyé : nombre de succès dans cet échantillon :
Rédaction attendue. Notons la variable qui vaut en cas de succès et sinon. Chaque tour de boucle simule une valeur de , et c compte les valeurs égales à : c’est la somme . Donc freq(200) est la moyenne d’un échantillon de taille de la loi de . Comme , on obtient succès.
Exercice 8★★★Difficile
On simule des échantillons de la variable égale à randint(1, 9) (entier au hasard de à ). Une exécution a donné les moyennes suivantes.
Espérance de :
Les entiers de à sont équiprobables : .
Écart pour :
. Pour , l’écart n’est plus que : il se resserre quand augmente.
Démontrer que, pour tout échantillon, ne peut pas dépasser une certaine valeur, et donner la plus grande valeur possible :
Rédaction attendue. Chaque valeur vérifie . En additionnant ces encadrements puis en divisant par : . Donc , soit : . La valeur est atteinte quand toutes les valeurs tirées valent (ou toutes ). C’est rarissime pour grand : en pratique, l’écart est bien plus petit.
Cas 3L’écart 2σ/√n
Réflexe — μ, σ, n ; 2σ/√n ; intervalle centré sur μ ; je situe la moyenne observée et je calcule son écart à μ. Revoir la méthode →
Exercice 9★★★Facile
Dans une exploitation, la hauteur (en cm) d’un plant de maïs a pour espérance et pour écart type . On mesure des échantillons de plants.
, donc .
Dans environ des échantillons, la hauteur moyenne est comprise entre et cm.
.
La hauteur moyenne relevée sur un échantillon est cm. Écart cm
: la moyenne sort de l’intervalle. Un tel écart n’arrive que dans environ des échantillons si : en approfondissement, l’exploitant met en doute cette valeur pour la parcelle, ou vérifie la façon dont les plants ont été choisis.
Exercice 10★★★Facile
Traduis chaque condition. Écris des nombres décimaux.
équivaut à
, puis on ajoute : .
s’écrit avec et
Le centre est le milieu : ; la demi-largeur est .
Exercice 11★★★Moyen
Un fabricant annonce que de ses ampoules présentent un défaut. Pour une ampoule prise au hasard, vaut si elle a un défaut et sinon. On contrôle un échantillon de ampoules.
Démontrer la valeur de l’écart type de :
Rédaction attendue. suit une loi de Bernoulli de paramètre , donc et . L’écart type est .
: la fréquence sort de l’intervalle. En approfondissement, l’annonce du fabricant est mise en doute (avec un risque de se tromper d’environ ).
Exercice 12★★★Difficile
Le temps (en minutes) passé par un visiteur sur un site a pour espérance et pour écart type . Pour des échantillons d’une certaine taille , la moyenne se trouve, dans environ des cas, dans .
Demi-largeur de cet intervalle :
.
Démontrer la valeur de la taille :
Rédaction attendue. La demi-largeur vaut . Donc .
Avec cette même taille, quel écart type donnerait une demi-largeur de ?
: à taille fixée, la demi-largeur est proportionnelle à .
Cas 4Effet de la taille n sur la précision
Réflexe — d(n) = 2σ/√n ; n multiplié par k² divise d par k ; taille minimale (approfondissement) : n ≥ (2σ/a)², arrondi à l’entier supérieur. Revoir la méthode →
Exercice 13★★★Facile
Une variable a pour écart type . On note .
.
.
.
De à , est multiplié par et est divisé par
: la demi-largeur est divisée par la racine carrée du facteur.
Exercice 14★★★Facile
Le temps de cuisson (en minutes) d’un produit a pour espérance et pour écart type . On contrôle la production par échantillons de taille .
La demi-largeur s’écrit avec
.
Approfondissement : plus petite taille pour une demi-largeur au plus égale à min :
.
Pour cette taille, intervalle : entre et minutes
: dans environ des échantillons, la moyenne y appartient.
Exercice 15★★★Moyen
On note . On donne .
Démontrer que pour un entier :
Rédaction attendue. Pour tout entier , . Donc .
Pour diviser la demi-largeur par , on multiplie par
Règle des carrés : , donc on multiplie par .
Si l’on double , est multiplié par environ (au centième)
: une baisse d’environ seulement, et non de moitié.
Exercice 16★★★Difficile
Le temps de réponse (en ms) d’un serveur a pour espérance et pour écart type , selon l’hébergeur. On mesure des échantillons de requêtes. Les questions 3 à 5 (taille minimale) sont un approfondissement.
Pour des échantillons de requêtes : ms
et : l’intervalle est .
Sur requêtes, le temps moyen relevé est ms. Écart ms
: la moyenne sort de l’intervalle ; un tel écart n’arrive que dans environ des échantillons. En approfondissement, l’annonce de l’hébergeur est mise en doute (le serveur semble plus lent qu’annoncé).
Pour une demi-largeur au plus égale à ms :
.
Démontrer la valeur de la plus petite taille :
Rédaction attendue. Pour , , et . Les deux membres sont positifs et la fonction carré est croissante sur : . Le plus petit entier qui convient est (et non , qui ne vérifie pas l’inégalité).
Plus petite taille pour une demi-largeur au plus égale à ms :
, donc : le plus petit entier est .
Cas 5Simuler N échantillons : la proportion des cas
Réflexe — abs(m - mu) <= e s’écrit |m − μ| ≤ 2σ/√n ; c compte les échantillons qui passent le test ; c / N est une proportion d’échantillons. Revoir la méthode →
Exercice 17★★★Facile
Une variable d’espérance et d’écart type est simulée, et moyenne(n) renvoie la moyenne d’un échantillon de taille . On étudie la fonction suivante.
def proportion(N, n):
c = 0
for i in range(N):
m = moyenne(n)
e = 2 * 1.5 / sqrt(n)
if abs(m - 4) <= e:
c = c + 1
return c / N
Valeur de e pour :
: c’est .
Nombre total de valeurs de simulées par proportion(500, 36) :
échantillons de valeurs : .
proportion(500, 36) a renvoyé . Nombre d’échantillons qui ont passé le test :
échantillons ont une moyenne entre et : environ , comme l’annonce le cours.
Exercice 18★★★Facile
Une simulation de échantillons place moyennes dans l’intervalle .
Proportion des échantillons dans l’intervalle :
.
Nombre d’échantillons hors de l’intervalle :
.
Pourcentage d’échantillons hors de l’intervalle : %
, soit : proche des attendus.
Exercice 19★★★Moyen
On considère le programme suivant ( est la probabilité d’un succès).
from random import random
from math import sqrt
def frequence(n, p):
s = 0
for k in range(n):
if random() < p:
s = s + 1
return s / n
def etude(N, n, p):
sigma = sqrt(p * (1 - p))
e = 2 * sigma / sqrt(n)
c = 0
for i in range(N):
f = frequence(n, p)
if abs(f - p) <= e:
c = c + 1
return c / N
On exécute etude(2000, 100, 0.5).
Valeur de sigma :
: c’est l’écart type d’une variable de Bernoulli de paramètre .
Valeur de e :
.
Justifier que le test abs(f - p) <= e équivaut à « le nombre de succès vérifie ».
Rédaction attendue. Ici , et . Le test s’écrit , c’est-à-dire , soit en multipliant par . La fonction renvoie donc la proportion des échantillons simulés qui comptent entre et succès : une valeur de l’ordre de (ici plutôt autour de , car ne prend que des valeurs entières), qui change d’une exécution à l’autre car random() produit de nouveaux tirages à chaque appel.
Exercice 20★★★Difficile
Avec le programme de l’exercice précédent, on exécute etude(1000, 4, 0.5).
Valeur de e :
.
Démontrer que la fonction renvoie toujours la même valeur :
Rédaction attendue. Une fréquence vérifie toujours , donc , c’est-à-dire . Tous les échantillons passent le test, , et la fonction renvoie à chaque exécution. Le constat « environ » suppose assez grand : avec essais, la demi-largeur est si grande que le test ne sert à rien.
Bloqué sur ce chapitre ?
Moi c'est Ben, j'ai créé ce site pour aider le plus d'élèves possible, partout en France. Je peux aussi reprendre avec toi ce qui coince en cours particulier : en visio, ou à domicile si tu es à Marseille.