Monte Carlo

Si l’on cherche à calculer une quantité déterministe (comme la valeur d’une intégrale complexe ou l’espérance d’une variable aléatoire), on peut reformuler le problème sous la forme de l’espérance mathématique d’une fonction $f(X)$ d’une variable aléatoire $X$. En générant un très grand nombre $N$ de réalisations indépendantes et identiquement distribuées $(x_1, x_2, \dots, x_N)$ de la variable $X$, la moyenne empirique converge presque sûrement vers la valeur théorique recherchée grâce à la Loi des Grands Nombres : $$\lim_{N \to \infty} \frac{1}{N} \sum_{i=1}^N f(x_i) = \mathbb{E}[f(X)]$$

Dans la deuxième partie de la vidéo, on cherche à répondre à la grande question suivante : comment s’assurer d’avoir suffisamment d’échantillons pour obtenir des statistiques fiables ? Ou plus prosaïquement : à partir de combien est-ce suffisant ?

Grâce au Théorème Central Limite, on sait que la distribution de la moyenne empirique $\bar{X}_N = \frac{1}{N} \sum f(x_i)$ se répartit selon une courbe en cloche autour de la cible $\mathbb{E}[f(X)]$. On va donc pouvoir quantifier les fluctuations autour de la cible. On construit pour cela un estimateur à partir de l’inégalité de Bienaymé-Tchebychev.

Monte Carlo pour l’estimation d’incertitudes-types en science expérimentale

La méthode de Monte Carlo permet d’obtenir empiriquement une incertitude-type composée (sans en passer par une formule de propagation.

Prenons l’exemple de la détermination de l’incertitude-type sur la concentration d’une solution obtenue par un titrage.
Supposons que la concentration mystère $C_A$ soit donnée par la formule : $C_A = C_B\times\frac{V_E}{V_A}$

  • Volume $V_A$ : il est mesuré à l'aide d'une pipette jaugée de $\pu{10,000 mL}$ de classe A. Le fabricant indique une tolérance $a = 0,020 \text{ mL}$. On considère que la distribution des erreurs suit une loi uniforme sur l'intervalle $[V_A - a \, ; \, V_A + a]$. L'incertitude-type associée est donc :

    $$\mathrm{u}(V_A) = \frac{a}{\sqrt{3}} \approx 0{,}012 \text{ mL}$$

  • Volume à l'équivalence $V_E$ : lu sur une burette graduée de $\pu{25 mL}$, il est de $\pu{12,50 mL}$. Compte tenu de la tolérance de la burette et des erreurs de lecture (double lecture du zéro et de la graduation), l'incertitude-type globale estimée expérimentalement est $\mathrm{u}(V_E) = 0{,}05 \text{ mL}$.
  • Concentration $C_B$ : la solution titrante a une concentration de $C_B = \pu{1,00e-2mol*L-1}$ avec une incertitude-type $\mathrm{u}(C_B) = \pu{5e-5 mol*L-1}$.

Écrire le résultat de $C_A$ (avec son incertitude-type).

On obtient $C_A=\pu{1,250e-2 mol*L-1}$.

La formule de propagation des incertitudes donne alors :

$$ \begin{aligned} \mathrm{u}(C_A) &= C_A\cdot \sqrt{\left(\frac{\mathrm{u}(V_A) }{V_A}\right)^2+\left(\frac{\mathrm{u}(V_E) }{V_E}\right)^2+\left(\frac{\mathrm{u}(C_B) }{C_B}\right)^2}\\ &=1,25\cdot 10^{-2}\sqrt{\left(\frac{0{,}0115}{10{,}00}\right)^2 + \left(\frac{0{,}05}{12{,}50}\right)^2 + \left(\frac{5\times 10^{-5}}{1{,}00\times 10^{-2}}\right)^2}\\ &\approx 8,131968\ldots \cdot 10^{-5}\, \pu{mol*L-1} \\ &\approx 9 \cdot 10^{-5}\, \pu{mol*L-1} \end{aligned} $$

Finalement, en ne gardant qu’un seul chiffre significatif pour l’incertitude-type :

$$C_A=(1,250 \pm 0,009)\cdot 10^{-2}\; \pu{mol*L-1}$$

Voyons maintenant comment obtenir la même chose avec le petit programme ci-dessous implémentant la méthode de Monte Carlo :