Adloun

La ruine du joueur

Exercice d'entraînement · niveau 2 · mathématiques appliquées (ECG 1re année), chapitre 11 — Informatique et algorithmique · Simulation

Énoncé

Un joueur possède jetons, mise jeton par partie, gagne avec la probabilité et s'arrête quand il est ruiné ou quand il atteint jetons. Simuler parties pour estimer la probabilité de ruine et la durée moyenne du jeu.

Corrigé

Le code.

import numpy.random as rd

def partie(depart=10, cible=20, p=0.48):
    # renvoie (ruine ?, nombre de coups joues)
    fortune = depart
    coups = 0
    while 0 < fortune < cible:
        if rd.random() < p:
            fortune = fortune + 1
        else:
            fortune = fortune - 1
        coups = coups + 1
    return fortune == 0, coups

N = 10000
resultats = [partie() for _ in range(N)]
ruines = sum(1 for r, c in resultats if r)
duree = sum(c for r, c in resultats) / N
print(ruines / N)      # ~0.69
print(duree)           # ~87

Ce que la simulation montre. Avec un désavantage minime — au lieu de —, la probabilité de ruine avoisine : le joueur perd tout dans plus de deux cas sur trois, alors qu'il partait à mi-chemin entre et sa cible. À , la symétrie du problème donnerait exactement ; le passage de à fait donc bondir le risque de à près de .

La durée. Elle avoisine coups. La partie est donc longue au regard des jetons de départ : la fortune fait de nombreux allers-retours avant d'atteindre l'une des deux bornes.

Terminaison. La boucle s'arrête dès que fortune atteint ou . Elle n'est pas garantie en un nombre fini de coups fixé d'avance, mais l'arrêt est presque sûr : sur coups consécutifs, la suite « toujours perdre » suffit à ruiner le joueur, et sa probabilité , quoique petite, est non nulle et se représente indéfiniment.

Le test d'arrêt s'écrit 0 &lt; fortune &lt; cible. L'écrire fortune != 0 seul ferait jouer indéfiniment un joueur ayant atteint sa cible ; fortune &gt; 0 seul ferait de même. Les deux conditions de sortie doivent figurer.

L'écart attendu. La fréquence de ruine sur parties a un écart-type d'environ : lire ou est normal.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.