1ʳᵉ spé · Chapitre 11 · Probabilités et statistiques

Devoir surveillé — Échantillonnage et simulation

Sujet type, 60 min, barème sur 20 points. À faire en conditions réelles avant de regarder le corrigé.

Sujet type DS — 60 min, barème sur 20 points. Faites-le en conditions réelles avant de regarder le corrigé (PDF).

Exercice 1 (6 points) — Python : simulation et listes

Dans tout l'exercice, on suppose exécutée l'instruction from random import random, randint, choice.

  1. Répondre aux questions suivantes.

    a. Quelles valeurs peut renvoyer randint(2, 5) ?

    b. Dans quel intervalle se trouve le nombre renvoyé par random() ?

    c. Quelles valeurs peut renvoyer choice([1, 1, 1, 3]), et avec quelles probabilités ?

    d. On pose L = [7, 3, 9, 3]. Que valent L[1], len(L) et sum(L) ?

    e. Qu'affiche l'instruction print([2*k for k in range(4)]) ?

    f. Écrire un test utilisant random() qui vaut True avec probabilité 0,35.

  2. Une variable aléatoire X a pour loi de probabilité :

    xi 0 2 5
    P(X=xi) 0,6 0,3 0,1

    Recopier et compléter la fonction suivante pour qu'elle simule la variable aléatoire X par la méthode du cumul des probabilités :

from random import random

def simule_X():
    r = random()
    if r < ...:
        return ...
    elif r < ...:
        return 2
    else:
        return 5
  1. Recopier et compléter la fonction suivante pour qu'elle construise la liste d'un échantillon de taille n de X (en réutilisant la fonction simule_X) et renvoie la moyenne de cet échantillon :
def moyenne_echantillon(n):
    echantillon = []
    for k in range(n):
        echantillon.append(...)
    return ... / ...

Exercice 2 (7 points) — Le temps d'attente à la borne de retrait

Un magasin installe une borne automatique de retrait des commandes. Selon l'affluence, un client qui se présente à la borne attend 0 minute (borne libre), 5 minutes ou 10 minutes. On note X la variable aléatoire égale au temps d'attente, en minutes, d'un client pris au hasard. Sa loi de probabilité est :

xi 0 5 10
P(X=xi) 0,3 0,5 0,2
  1. Calculer l'espérance E(X) et interpréter ce résultat dans le contexte.

  2. Calculer E(X2), puis en déduire la variance V(X) à l'aide de la formule de König-Huygens, et enfin l'écart type σ(X).

  3. Un employé écrit le programme Python suivant, dans lequel la fonction attente() simule la variable aléatoire X :

from random import random

def attente():
    r = random()
    if r < 0.3:
        return 0
    elif r < 0.8:
        return 5
    else:
        return 10

def moyenne_echantillon(n):
    echantillon = [attente() for k in range(n)]
    return sum(echantillon) / n

for n in [10, 100, 1000, 10000]:
    print(n, moyenne_echantillon(n))

Une exécution de ce programme a affiché :

10 5.5
100 4.85
1000 4.53
10000 4.5065

a. Aucune de ces quatre moyennes n'est égale à E(X), et une autre exécution du programme donnerait quatre valeurs différentes. Comment s'appelle ce phénomène ?

b. Décrire l'évolution des moyennes affichées lorsque n augmente, et énoncer le principe général qui permet d'estimer une espérance à partir d'un échantillon.

  1. Sur son site, le magasin annonce : « à la borne de retrait, moins de 5 minutes d'attente en moyenne ». En vous appuyant sur les questions précédentes, dire si cette annonce est crédible, en distinguant bien ce qui se passe en moyenne de ce qui peut arriver à un client donné.

Exercice 3 (7 points) — Contrôle qualité sur une chaîne d'embouteillage

Une machine remplit des briquettes de jus de pomme. Lorsque la machine est bien réglée, le volume versé dans une briquette est une variable aléatoire d'espérance μ=240 mL et d'écart type σ=6 mL (valeurs admises dans tout l'exercice).

Pour contrôler le réglage, le responsable qualité prélève chaque heure un échantillon de n=100 briquettes et calcule la moyenne m des volumes mesurés.

On rappelle le constat expérimental vu en cours : pour environ 95% des échantillons de taille n, la moyenne m vérifie mμ2σn.

  1. Calculer 2σn pour n=100, puis en déduire un encadrement de m vérifié par environ 95% des échantillons de 100 briquettes lorsque la machine est bien réglée.

  2. a. Lors du contrôle de 9 h, le responsable obtient m=240,7 mL. Que peut-il conclure ?

    b. Lors du contrôle de 15 h, il obtient m=237,9 mL. Que peut-il conclure ? On attend une conclusion prudente : ce résultat prouve-t-il que la machine est déréglée ?

  3. Le responsable veut automatiser le contrôle. Recopier et compléter la fonction suivante, qui reçoit la liste L des 100 volumes mesurés et renvoie True si la moyenne de l'échantillon sort de la zone de la question 1, et False sinon :

def alerte(L):
    # L est la liste des volumes d'un echantillon
    m = ... / len(L)
    return abs(m - 240) > ...
  1. Le responsable envisage de prélever désormais n=400 briquettes à chaque contrôle. Calculer le nouvel écart 2σn, puis expliquer ce que ce choix apporte au contrôle et ce qu'il coûte en contrepartie.

Bloqué sur « Échantillonnage et simulation » ?

On peut le travailler ensemble dès cette semaine. La première heure est offerte — on fait le point honnêtement, et vous repartez au minimum avec une méthode.