Activité

Des fréquences vers une probabilité

Simulations

Une expérience aléatoire consiste à tirer au hasard dans [0 ; 1] deux nombres \( a \text{ et } b \) et à placer sur une droite graduée les points \( A \text{ et } B \) d’abscisses \( a \text{ et } b \). On s’intéresse à la réalisation de l’événement E : « La longueur AB est supérieur ou égale à 0,5 »

intervalle
  1. Simulation de l’expérience :
    1. A l’aide de la console de Python et de la fonction random() du module random, procéder au tirage de \( a \text{ et } b \), puis calculer l’écart positif d entre \( a \text{ et } b \). Expliquer ce que l’on vient de simuler.
    2. Répéter 4 fois cette simulation et observer si l’événement E est réalisé.
    3. Que diriez-vous, sans calcul, de la probabilité p de l’événement E : p = 0,5 ou p < 0,5 ou p > 0,5 ?
    1. Compléter les cinq lignes du script suivant afin d’obtenir le graphique en dessous :
    2. # -*- coding: utf-8 -*-
      import matplotlib.pyplot as plt
      from random import *
      
      def abs(x):
          if x >=0:return x
          else:return -x
      
      
      def frequenceE(nb_tirages) :
          plt.axis([0,nb_tirages,0,1])
          plt.grid(True)
          plt.xlabel('Nombre de tirages')
          plt.ylabel('Frequence (bleue)' )
          plt.plot([0,nb_tirages],[0.25,0.25],'m-')
          realisationE = 0
          frequence = 0
          for n in range(1,nb_tirages+1):
              # à compléter
              # à compléter
              # à compléter
                  # à compléter
              # à compléter
              plt.plot(n,frequence,'b.')
          plt.show()
      
      frequenceE(1000)
      fréquence

      Sur le graphique ci-dessus est représentée l’évolution de la fréquence de l’événement E lors de la répétition de l’expérience 1000 fois.

    3. Vers quelle valeur tend à se stabiliser cette fréquence ?
    4. Comparer avec la réponse du 1.c.
    5. .

Une proposition de réponse :

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
from random import *

def abs(x):
    if x >=0:return x
    else:return -x


def frequenceE(nb_tirages) :
    plt.axis([0,nb_tirages,0,1])
    plt.grid(True)
    plt.xlabel('Nombre de tirages')
    plt.ylabel('Frequence (bleue)' )
    plt.plot([0,nb_tirages],[0.25,0.25],'m-')
    realisationE = 0
    frequence = 0
    for n in range(1,nb_tirages+1):
        a = random()
        b = random()
        if abs(a-b)>0.5:
            realisationE = realisationE + 1
        frequence = realisationE/n
        plt.plot(n,frequence,'b.')
    plt.show()

frequenceE(1000)

Etude mathématique

On s’intéresse à la probabilité de l’événement E : « La longueur AB est supérieur ou égale à 0,5 » A chaque tirage au hasard de \(a \text{ et de } b \), on associe le point \( M(a ; b) \) dans un repère orthonormé \( (O, I, J) \).

  1. Reproduire le carré ci-dessous ; y faire figurer les points \( M_1(0,9 ; 0,35) \text{ et } M_2(0,4 ; 0,6). \) Préciser dans chaque cas si E est réalisé ou non.
  2. fréquence
      On admet que des points situés dans une même partie colorée du carré correspondent tous à des issues qui, soit réalisent E soit ne réalisent pas E.
    1. Quelles parties correspondent à la réalisation de E ?
    2. Compléter les six lignes du script suivant afin d’obtenir le graphique en dessous :
    # -*- coding: utf-8 -*-
    import matplotlib.pyplot as plt
    from random import*
    from math import *
    
    def nuageDePoints(nb_tirages) :
        plt.axis([0,1,0,1])
        plt.title('Elément de E (rouge), Elément de non E (bleu)')
        for i in range(1,nb_tirages+1):
            # à compléter
            # à compléter
            # à compléter
                # à compléter
            # à compléter
                # à compléter
        plt.show()
    nuageDePoints(1000)
    fréquence
  3. Les probabilités des événements sont proportionnelles aux aires des parties qui leur sont associées. Quelle est la probabilité de E ? Comparer avec l’estimation obtenue dans la partie A.

Une proposition de réponse :

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
from random import*
from math import *

def abs(x):
    if x >=0:return x
    else:return -x
	
def nuageDePoints(nb_tirages) :
    plt.axis([0,1,0,1])
    plt.title('Elément de E (rouge), Elément de non E (bleu)')
    for i in range(1,nb_tirages+1):
        a = random()
        b = random()
        if abs(a-b)>0.5:
            plt.plot(a,b,'r.')
        else:
            plt.plot(a,b,'b.')
    plt.show()
nuageDePoints(1000)

Cliquer ici pour télécharger le document en word

Cliquer ici pour télécharger le document en pdf