Corrigé ESSEC 2002 par Pierre Veuillez

probabilités et simulation informatique



On considère une suite de lancers successifs (supposés indépendants) d'une pièce de monnaie, pour laquelle la probabilité d'apparition de pile , noté P, est p et celle de face, noté F, est q , avec 0 < p < 1 et p + q = 1 , et on s'intéresse à l'apparition de deux piles consécutifs.
Par exemple, si l'on considère les seize premiers lancers suivants :

F P P F P P P F P F P P P P P F
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

deux piles consécutifs sont réalisés aux rangs 3, 6, 12 et 14, mais non aux rangs 7, 13 et 15 (car un pile ne peut pas participer à la réalisation de deux piles consécutifs plus d'une fois).
On notera, pour tout entier naturel n non nul :
A n l'événement : `` deux piles consécutifs sont réalisés au rang n ''.
B n l'événement: `` deux piles consécutifs sont pour la première fois réalisés au rang n ''.
Enfin on désigne par a n et b n les probabilités de ces événements A n et B n .

  1. Calcul des probabilités a n

    1. On a bien sûr a 1 = 0 .

      A 2 = P 1 P 2 et a 2 = P ( P 1 ) P ( P 2 ) = p 2 car les lancers sont indépendants.

      A 3 = F 1 P 2 P 3 car il faut P 2 P 3 et pas de pile en 1 , sinon, on a deux piles de suite en P 1 P 2

      D'où a 3 = q p 2

      A 4 = ( F 1 F 2 P 1 P 2 P 1 F 2 ) P 3 P 4 en listant tous les cas possibles.

      C'est une réunion d'incompatibles donc a 4 = ( q 2 + p 2 + p q ) p 2

      et en remarquant que 1 = ( p + q ) 2 = p 2 + q 2 + 2 p q on peut le réécrire : a 4 = ( 1 p q ) p

      Conclusion :

      a 2 = p 2 : a 3 = q p 2 : a 4 = ( q 2 + p 2 + p q ) p 2

    2. On décompose l'événement A n + 2

      Il doit se finir par P n + 1 P n + 2 et on regarde ce qui peut les précéder :

      Soit il y avait F n , soit il y avait P n , mais alors dans un bloc A n . (sinon, P n + 1 donnerait les deux piles de suite)

      A n + 2 = P n + 1 P n + 2 ( F n A n ) incdépendants donc

      a n + 2 = P ( P n + 1 ) P ( P n + 2 ) P ( F n A n ) incompatibles

      a n + 2 = p 2 ( P ( F n ) + P ( A n ) ) = p 2 ( q + a n )

      Conclusion :

      pour tout nombre entier naturel n non nul : a n + 2 = p 2 a n + q p 2 .

    3. On pose, pour tout entier naturel n non nul : u n = a n c c vérifie c = p 2 c + q p 2 .
      * On calcule u n + 2 en fonction de u n + 1 et u n :

      u n + 2 = a n + 2 c = p 2 a n + q p 2 ( p 2 c + q p 2 ) = p 2 ( a n c ) = p 2 u n Conclusion :

      u n + 2 = p 2 u n et ( u n ) est une suite récurrente linéaire d'ordre 2.

      * Son équation caractéristique est r 2 p 2 = 0 de racines ± p

      Donc pour tout entier n , u n = α p n + β ( p ) n avec α et β qui sont les solutions de :

      ( 1 ) { u 1 = α p β p u 2 = α p 2 + β p 2 { c = α p β p p 2 c = α p 2 + β p 2 L 2 + p L 1 ,

      { c = α p β p p 2 c p c = 2 α p 2 { β = 1 p ( c + α p ) α = 1 2 p 2 ( p 2 c p c )

      on arrange avec c = p 2 c + q p 2 c = q p 2 ( 1 p 2 ) = q p 2 ( 1 p ) ( 1 + p ) = p 2 ( 1 + p ) donc

      p 2 c p c = p 2 p 2 1 + p p 3 ( 1 + p ) = 0 donc

      ( 1 ) { β = 1 p p 2 ( 1 + p ) = p 1 + p α = 0

      Finalement, pour tout entier n : u n = p 1 + p ( p ) n et a n = u n + c = p 1 + p ( p ) n + p 2 1 + p

      Conclusion :

      n * : a n = p 1 + p ( p + ( p ) n )

      Remarque :

      Comme a n est donné, il peut être plus rapide de tester directement si a n = p 1 + p ( p + ( p ) n ) est la solution de a n + 2 = p 2 a n + q p 2 :

      Récurrence à deux termes, donc hypothèse sur deux termes successifs :

      • a 1 = 0 et p 1 + p ( p + ( p ) 1 ) = 0 d'où égalité

        a 2 = p 2 et p 1 + p ( p + ( p ) 2 ) = p 1 + p ( p + p 2 ) = p 2 d'où égalité.

      • Soit n tel que a n = p 1 + p ( p + ( p ) n ) et a n + 1 = p 1 + p ( p + ( p ) n + 1 ) alors

        a n + 1 = \dots par hypothèse de récurrence et

        a n + 2 = p 2 a n + q p 2 = p 2 p 1 + p ( p + ( p ) n ) + ( 1 p ) p 2 = p 2 1 + p [ p ( p + ( p ) n ) + ( 1 p ) ( 1 + p ) ] = p 2 1 + p [ p 2 + p ( p ) n + 1 p 2 ] = p 1 + p [ p 2 ( p ) n + p ]  et  p 2 = ( p ) 2  donc  = p 1 + p [ ( p ) n + 2 + p ]

      • Donc la prorpiété est vraie pour tout entier n .

      Au final, la rédaction est toute aussi longue.

  2. Nombre moyen de réalisations de deux piles consécutifs en n lancers
    Pour tout entier naturel n non nul , on note X n la variable aléatoire prenant la valeur 1 lorsque l'événement A n est réalisé, et 0 sinon.

    1. On a X n suit une loi de Bernouilli de paramètre P ( X n = 1 ) = P ( A n ) = a n donc

      Conclusion :

      X n ( a n ) et E ( X n ) = a n

    2. Quand A n est réalisé, A n + 1 ne peut pas l'être, car P n ne peut pas reservir pour réalisé le deouble pile P n P n + 1 .

      Donc Si X n = 1 alors X n = 0. Et si X n = 0 le produit est également nul.

      Conclusion :

      X n X n + l = 0

    3. X n X n + 2 prend les valeurs 0 et 1. Il ne vaut 1 que si les deux variables prennent cette valeur.

      ( X n = 1 ) ( X n + 2 = 1 ) = ( X n = 1 ) ( P n + 1 P n + 2 ) ca rle P n + 1 n'entre pas dans le double pécédent.

      et comme les tirages ( n 1 , n ) et ( n + 1 , n + 2 ) sont indépendants,

      P [ ( X n = 1 ) ( X n + 2 = 1 ) ] = P ( X n = 1 ) p 2 = p 2 a n

      Conclusion :

      X n X n + 2 . ( p 2 a n )

    4. Interprètation :

      quand X n = 1 , on a eu un doublé P n 1 P n donc il n'y aura pas de doublé entre P n et P n + 1 .

      On se retrouve donc dans la situtation initiale avec un décalage de n lancers.

      La loi de la variable aléatoire X n + k conditionnée par l'événement X n = 1 , est donc la même que celle de X k

      Conclusion :

      P X n = 1 ( X n + k = 1 ) = a k et P X n = 1 ( X n + k = 0 ) = 1 a k

    5. Interprètation classique : somme de variables de Bernouilli.

      X k est le nombre de doublé (0 ou 1) pour le lancer k .

      X 1 + X 2 + + X n est le nombre total de doublés en n lancers.

      Le nombre moyen m n de réalisations de deux piles consécutifs parmi n lancers est donc m n = E ( X 1 + + X n ) = E ( X 1 ) + + E ( X n ) = a 1 + + a n Reste à trouver un équivalent simple de cette somme.

      k = 1 n a k = p 1 + p k = 1 n ( p + ( p ) k ) = p 1 + p [ k = 1 n p + k = 1 n ( p ) k ] = p 1 + p [ n p + 1 + ( p ) n + 1 1 p ]  et  n p  prépondérant dans  [ ] = n p 2 1 + p [ 1 + 1 + ( p ) n + 1 ( 1 p ) n p ] et comme 1 + ( p ) n + 1 1 p 1 alors [ ] 1 et k = 1 n a k n p 2 1 + p

      Conclusion :

      m n n + n p 2 1 + p

  3. Calcul récursif des probabilités b n

    1. Quand A n est réalisé, le premier doublé est réalisé au plus tard au n e ` m e lancer.

      Donc A n = A n ( k = 1 n B k ) = k = 1 n ( A n B k )

      et comme les ( B k ) sont incompatibles (le premier n'arrive qu'une seule fois)

      Conclusion :

      P ( A n ) = k = 1 n P ( A n B k ) .

    2. Soit k un nombre entier tel que 1 k n .

      Tout d'abbord, P B k ( A k ) = 1 car on a un (le premier) doublé en k .

      Et pour n > k , P B k ( A n ) = a n k car on a eu un doublé P k 1 P k donc on se retrouve dans la situation initialle avec k tirages de décalage.

      Conclusion :

      P B k ( A k ) = 1 et pour n > k : P B k ( A n ) = a n k

    3. On reprend la formule P ( A n ) = k = 1 n P ( A n B k ) = k = 1 n P ( B k ) P B k ( A n ) = P ( B n ) P B n ( A n ) + k = 1 n 1 b n a n k = b n + k = 1 n 1 b k a n k On a ainsi (avec b 1 = 0 et a 1 = 0 )

      • a 2 = b 2 + k = 1 1 b k a 2 k = b 2 + b 1 a 1 = b 2

        Donc b 2 = p 2

      • a 3 = b 3 + k = 1 2 b k a 3 k = b 3 + b 1 a 2 + b 2 a 1

        Donc b 3 = a 3 b 1 a 2 b 2 a 1 = a 3 = q p 2

      • a 4 = b 4 + k = 1 3 b k a 4 k = b 4 + b 1 a 3 + b 2 a 2 + b 3 a 1

        Donc b 4 = a 4 b 1 a 3 b 2 a 2 b 3 a 1 = q p 2 0 p 4 = p 2 ( q p 2 )

      • a 5 = b 5 + k = 1 3 b k a 5 k = b 5 + b 1 a 4 + b 2 a 3 + b 3 a 2 + b 4 a 1

        Donc b 5 = a 5 b 2 a 3 b 3 a 2

        et on se souvient que a n + 2 = p 2 a n + q p 2 donc a 5 = p 2 a 3 + q p 2 = p 4 q + q p 2 = q p 2 ( 1 + p 2 )

        et b 5 = p 4 q + q p 2 p 2 q p 2 q p 2 p 2 = q p 2 q p 4 = q p 2 ( 1 p 2 )

      Conclusion :

      b 2 = p 2 : b 3 = q p 2 : b 4 = p 2 ( q p 2 ) : b 5 = q p 2 ( 1 p 2 )

  4. N.B. la donnée de ce résultat permet de vérifier la cohérence avec les calculs prépcédents :

    on avait : b 5 = 1 3 ( 2 3 ) 2 ( 1 ( 2 3 ) 2 ) = 20 3 5

    et la formule donne : b 5 = 4 9 [ ( 2 3 ) 4 ( 1 3 ) 4 ] = 20 3 5

    1. T associant à toute suite de lancers successifs le numéro du jet où l'on obtient pour la première fois un double pile est une variable aléatoire si la probabilité que T ne soit pas définie est nulle. (elle doit être définie presque surmement) ou encore si la somme des termes de la loi vaut 1 .

      n = 1 M P ( T = n ) = n = 1 M 4 9 [ ( 2 3 ) n 1 ( 1 3 ) n 1 ] = 4 9 [ n = 1 M ( 2 3 ) n 1 n = 1 M ( 1 3 ) n 1 ] = 4 9 [ k = 1 M 1 ( 2 3 ) k k = 1 M 1 ( 1 3 ) k ] M + 4 9 [ 1 1 2 3 1 1 + 1 3 ] = 4 9 9 4 = 1 car | 2 3 | < 1 et | 1 3 | < 1.

      Conclusion :

      n = 1 + P ( T = n ) = 1 et T est bien une variable aléatoire

    2. T a une espérance si n = 1 + n P ( T = n ) est absolument convergente.

      et comme les termes sont tous positifs, celà équivaut à la convergence simple. n = 1 M n P ( T = n ) = n = 1 M n 4 9 [ ( 2 3 ) n 1 ( 1 3 ) n 1 ] = 4 9 [ n = 1 M n ( 2 3 ) n 1 n = 1 M n ( 1 3 ) n 1 ] = 4 9 [ n = 1 M n ( 2 3 ) n 1 n = 1 M n ( 1 3 ) n 1 ] M + 4 9 [ 1 ( 1 2 3 ) 2 1 ( 1 + 1 3 ) 2 ] = 15 4

      car | 2 3 | < 1 et | 1 3 | < 1.

      Doinc la série est absolument convergente et T a une espérance.

      L'espérance de T est alors la somme (simple) de la série

      Conclusion :

      T a une espérance et E ( T ) = 15 4

    3. Le programme Pascal suivant dans lequel on code Pile par 1 et Face par 0 fournit (dans le cas p=2/3) une simulation de l'expérience aléatoire précédente.
      On signale de plus que :
      random(3) fournit un nombre entier aléatoire parmi 0, 1, 2.
      les lignes d'instruction notées ++++++ sont volontairement incomplètes.

      1. On considère l'instruction y:=lancer; dans

        function lancer : integer;

        var z : integer;

        begin

        if random(3)=0 then z:=0

        else z:=1;

        lancer:=z;

        end;

        lancer=1 si random(3) ne vaut pas 0.

        Or les valeurs 0, 1 et 2 sont équiprobables.

        Conclusion :

        y contient 1 avec une probabilité de 2 3

        function attente:integer;

        var x,y,k:integer;

        begin

        x:=lancer; y:=lancer; k:=2;

        while x*y=0 do

        begin

        ++++++

        ++++++

        ++++++;

        end;

        attente: = k;

        end;

      2. On affecte à x le résultat 1 si pile au lancer précédent et à y 1 pour pile au lancer présent (0 sinon)

        On aura un double pile si ni x ni y ne sont nuls : si le produit x*y n'est pas nul.

        k lui comptera le nombre de lancers

        function attente:integer;

        var x,y,k:integer;

        begin

        x:=lancer; y:=lancer; k:=2;

        while x*y=0 do

        begin

        x:=y;

        y:=lancer;

        k:=k+1;

        end;

        attente: = k;

        end;

      3. Pour calculer la moyenne, il faut calculer l'attente totale (m:=m+attente)

        puis la diviser par le nombre n d'essais (m: =m / n)

        e nombre total de lancer (Compléter la boucle for du programme principal de façon que le programme ESSEC2002 affiche la moyenne du rang d'apparition du premier double pile sur n expériences, le nombre entier naturel non nul n étant fourni par 1'utilisateur.

        begin

        randomize;

        write('Nombre de simulations ?');

        readln(n);

        m:=0;

        for k:=l to n do m:=m+attente;

        m: =m / n;

        write('Moyenne : ' ,m:0:2);

        End.
        Pour de grandes valeurs de n , autour de quelle valeur fluctue le contenu de la variable m ?

      4. Pour attendre un triple pile, il faut se souvenir des 2 lancers précédents.

        D'où l'utilisation d'une troisième variable.

        x pour le rang n 2

        y pour le rang n 1

        z pour le rang n

        function attente:integer;

        var x,y,z,k:integer;

        begin

        x:=lancer; y:=lancer; z:=lancer; k:=3;

        while x*y*z=0 do

        begin

        x:=y;

        y:=z;

        z:=lancer;

        k:=k+1;

        end;

        attente: = k;

        end;