Adloun

La méthode de Monte-Carlo

Exercice · informatique (tronc commun des prépas scientifiques), chapitre 4 — Modules, fichiers et données

Énoncé

Estimer la valeur de en simulant points uniformément répartis dans le carré unité et en calculant la proportion de points se situant dans le quart de disque unité . Étudier l'erreur pour .

Corrigé

La probabilité pour qu'un point tombe dans le quart de disque de surface à l'intérieur du carré de surface 1 vaut . La fréquence observée permet d'estimer .

import random
random.seed(2)

def estime_pi(n: int) -> float:
    dans_disque = 0
    for _ in range(n):
        x = random.random()
        y = random.random()
        if x*x + y*y <= 1.0:
            dans_disque += 1
    return 4.0 * dans_disque / n

import math
for n in (100, 10_000, 1_000_000):
    pi_est = estime_pi(n)
    print(f"n={n:<7} estimation={pi_est:<10} erreur={abs(pi_est - math.pi):.6f}")

L'erreur décroit proportionnellement à . Multiplier la précision par 10 nécessite d'augmenter le nombre de tirages par un facteur 100.

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.