Vous êtes sur la page 1sur 33

Méthodes Monte Carlo

William Nicolazzi

Laboratoire de Chimie de coordination (LCC, CNRS)

Email : william.nicolazzi@lcc-toulouse.fr
I. Introduction
I.1 Origines-contextes
Méthodes Monte Carlo Essor à la fin de la 2ème guerre mondiale
(projet américain « manhattan »)
Développement de l’arme nucléaire

Pionniers (?) : Von Neumann, Ulam, Metropolis… Monte Carlo : Jeu de hasard (Monaco)

Application de ces méthodes :

• Physique médicale
• Physique statistique : calculs de moyennes thermodynamiques
• Origines (?) : - estimation d’intégrales multidimensionnelles (rien d’aléatoire)
- trajectoire de particules (diffusion, colllisions, etc…) Fermiac
I. Introduction
I.2 Exemple introductif : aiguille de Buffon (1777)

Lignes équidistantes de D

Une aiguille de longueur L 𝐿

𝐷
n lancées ? Avec 𝑁 étudiants 𝑖 ∈ [1, 𝑁]

M réalisations

𝑁 𝑁 2
1 𝑀𝑖 1 𝑀𝑖
Valeur moyenne : 𝑚= ෍ variance: 2
𝜎𝑁 =
𝑁−1

𝑛
−𝑚
𝑁 𝑛 𝑖=1
𝑖=1
I. Introduction
I.2 Exemple introductif : aiguille de Buffon (1777)

Expérience aléatoire : ensemble de résultats possible parmi Ω

Ω : toutes les positions possibles 𝜔


Parmi elles : évènement aléatoire : sous ensemble A : « l’aiguille coupe la ligne »

On répète l’expérience un très grand nombre de fois


𝑀
: tend vers une constante qui correspond à 𝑝(𝐴)
𝑛

On définit deux variables aléatoires dans ℝ pour une position 𝜔: Θ


𝐿
0≤ Θ(𝜔) < 𝜋 pour une position 𝜔 𝑌
𝐷
0 ≤ 𝑌(𝜔) < la distance du centre de l’aiguille à la ligne
2

𝐷
I. Introduction
I.2 Exemple introductif : aiguille de Buffon (1777)

𝐷
𝑌 et Θ sont uniformes sur 0, et[0, 𝜋]
2

On définit la probabilité de trouver le centre de l’aiguille à la position y a dy près

2𝑑𝑦
𝑑𝑝𝑦 = 𝑝𝑟𝑜𝑏[ {𝑦 ≤ 𝑌 𝜔 < 𝑦 + 𝑑𝑦} ] =
𝐷
On définit la probabilité que l’aiguille soit orienté d’un angle 𝜃 à 𝑑𝜃 près
𝑑𝜃
𝑑𝑝𝜃 = 𝑝𝑟𝑜𝑏[ {𝜃 ≤ Θ 𝜔 < 𝜃 + 𝑑𝜃} ] =
𝜋

On peut utiliser une autre variable aléatoire plus pratique


𝐿
𝑍 𝜔 ∈ [0,1] fonction des deux précédentes 𝑍 𝜔 = 1 si 𝑌 𝜃 < 2 sin 𝜃

𝑍 𝜔 = 0 sinon
I. Introduction
I.2 Exemple introductif : aiguille de Buffon (1777)

On définit l’espérance 𝐸(𝑍) 𝐼 = 𝐸(𝑍) = ඵ 𝑍 𝑌, Θ 𝑑𝑝𝑦 𝑑𝑝𝜃


𝐷

1 𝐿 2𝑑𝑦𝑑𝜃 𝜋
𝐿
𝑠𝑖𝑛𝜃
𝑦<2𝑠𝑖𝑛𝜃 2 2𝑑𝑦 2𝐿
𝐼=𝐸 𝑍 =ඵ = න 𝑑𝜃 න 𝐼= Si on connait et 𝐿 et D, on peut trouver 𝜋
𝐷 𝜋D 0 0 𝜋𝐷 𝜋𝐷

Si on répète N fois l’expérience et que l’on effectue la somme de 𝑆𝑁 des N résultats (0 ou 1) pour Z. 𝑆𝑁 : nouvelle variable
aléatoire, somme de N variables aléatoires indépendantes et équivalentes 𝑍1 , 𝑍2 , 𝑍3 , … 𝑍𝑁

𝑆𝑁
𝑆𝑁 = 𝑍1 + 𝑍2 + ⋯ + 𝑍𝑁 →𝐼 Pour N grand
𝑁

On calcule des intégrales avec des variables aléatoires!

Question : vitesse de convergence de la méthode?


I. Introduction
I.3 comparaison avec les autres méthodes d’estimation d’intégrales multidimensionnelles

Méthodes usuelles de quadrature (Simpson, Gauss etc…) : efficaces pour le calcul d’intégrales à une dimension et se
généralise facilement aux intégrales à plusieurs dimensions, si le domaine d’intégration est simple

1
Méthode de Simpson 𝐼 = න 𝑓 𝑥 𝑑𝑥
0 1 0
ℎ = 1/𝑁
𝑑𝑓 𝑥 1 𝑑2𝑓 𝑥
𝑓 𝑥 =𝑓 0 + ቤ 𝑥+ อ 𝑥 2 + ℴ(𝑥 3 )
𝑑𝑥 𝑥=0 2 𝑑𝑥 2
𝑥=0

Si on intègre sur un pas h le premier Le terme suivant : Erreur pour N pas


terme d’erreur

ℎ 5
𝑥 2 1
4
𝑥 2 ℴ 𝑥4 = ∼ ℎ5 𝑒𝑟𝑟𝑒𝑢𝑟 𝑡𝑜𝑡𝑎𝑙𝑒 ∼ 𝑁ℎ5 ∼ 4
ℴ 𝑥3 = =0 5 ℎ
𝑁
4 ℎ −2
−2
I. Introduction
I.3 comparaison avec les autres méthodes d’estimation d’intégrales multidimensionnelles

À deux dimensions : même principe


1
𝑁 𝑐𝑎𝑟𝑟é𝑠 ℎ=
𝑁 1/2
1
𝑁2
𝑓 𝑥, 𝑦
𝜕𝑓(𝑥, 𝑦) 𝜕𝑓(𝑥, 𝑦)
= 𝑓 0,0 + 𝑥+ y
𝜕𝑥 𝜕𝑦
2
1 𝜕2𝑓
+ ෍ 𝛼 2−𝛼 𝑥 𝛼 𝑦 2−𝛼 + ℴ
2 𝜕𝑥 𝜕y 1
𝛼=0
𝑁2

Si on intègre le terme d’erreur non nul Erreur totale sur les N carrés Généralisation à d dimensions
sur un petit carré de côté h
𝑒𝑟𝑟𝑒𝑢𝑟 𝑡𝑜𝑡𝑎𝑙𝑒 ∼ 𝑁ℎ6 ∼ 1/𝑁 2 𝑒𝑟𝑟𝑒𝑢𝑟 𝑡𝑜𝑡𝑎𝑙𝑒 ∼ 1/𝑁 4/𝑑
4 ℎ ℎ
1 𝜕4𝑓 2 2
෍ 𝛼 4−𝛼 න 𝑥 𝑑𝑥 න 𝑦 4−𝛼 𝑑𝑦 ∼ ℎ6
𝛼
4! 𝜕𝑥 𝜕y −ℎ/2 −

𝛼=0 2
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales
II.1 Echantillonnage aléatoire

𝑓(𝑥) 𝑏
𝐼 = න 𝑓 𝑥 𝑑𝑥
𝑎

𝐼 ≈ (𝑏 − 𝑎)〈𝑓 𝑥 〉

𝑎 𝑥 〈𝑓 𝑥 〉 est la moyenne de 𝑓 𝑥 sur l’intervalle 𝑥 ∈ [𝑎, 𝑏]


𝑏

𝑥 est une variable tirée aléatoirement et uniformément sur l’intervalle [𝑎, 𝑏] 𝑥𝑖

𝑁
1 Variables aléatoires, indépendantes, et équivalentes
𝑓 𝑥 = ෍ 𝑓(𝑥𝑖 )
𝑁
𝑖=1 Le théorème centrale limite s’applique
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales
II.1 Echantillonnage aléatoire

Le théorème centrale limite s’applique

𝑥𝑖 Variables aléatoires, indépendantes, et équivalentes


𝑥𝑖 = 0 (non restrictifs…) 𝑥𝑖2 = 𝜎𝑥2 la variance existe et est bornée
𝑁

𝑋 = ෍ 𝑥𝑖 𝑋 2 = 𝑁𝜎𝑥2 = 𝜎𝑋2
𝑖=1

Pour N grand, la distribution des variables 𝑥𝑖 𝑒𝑡 𝑋 tendent vers une distribution gaussienne

1 2 1 −X2 /2N𝜎𝑥2
−X2 /2𝜎𝑋 pX X = e
pX X = e 2𝜋𝑁𝜎𝑥
2𝜋𝜎𝑋

𝜎𝑋
𝜎𝑥 =
N
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales
II.1 Echantillonnage aléatoire
𝑁 𝑁
Revenons aux calculs d’intégrale
𝑁𝜎𝑥2 = 〈෍ ෍(𝑓 𝑥𝑖 − 〈𝑓 𝑥𝑖 〉)(𝑓 𝑥𝑗 − 〈𝑓 𝑥𝑗 )〉
𝑖=1 𝑗=1

𝑁 𝑁

𝑁𝜎𝑥2 = ෍ 𝑓 𝑥𝑖 − 𝑓 𝑥𝑖 2
+ 〈෍ ෍(𝑓 𝑥𝑖 − 〈𝑓 𝑥𝑖 〉)(𝑓 𝑥𝑗 − 𝑓 𝑥𝑗 〉
𝑖=1 𝑖=1 𝑗≠i
Variables indépendantes et équivalentes

𝑁
1
𝜎𝑥2 = ෍[ 𝑓 𝑥𝑖 2 − 𝑓 𝑥𝑖 2]
𝑁
𝑖=1
II.2 Echantillonnage d’importance

𝑏
𝐼 = න 𝑓 𝑥 𝑑𝑥 Soit 𝑝(𝑥) densité de probabilité arbitraire
𝑎
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales

II.2 Echantillonnage d’importance

𝑏
𝐼 = න 𝑓 𝑥 𝑑𝑥 Soit 𝑝(𝑥) densité de probabilité arbitraire
𝑎
𝑏 𝑏 𝑝(𝑏)
𝑓 𝑥
𝑓 𝑥 𝐼=න 𝑝 𝑥 𝑑𝑥 = න 𝑔(𝑥)𝑝 𝑥 𝑑𝑥 = න 𝑔 𝑥 𝑑𝑃
On définit 𝑔 𝑥 = 𝑝 𝑎 𝑝 𝑥 𝑎 𝑝(𝑎)
𝑥

𝑁
𝐼 est une moyenne stochastique de la variable aléatoire 𝑌 = 𝑔 𝑥
𝐼 = 𝑌 = ෍ 𝑔 𝑥𝑖 𝑃(𝑥𝑖 )
𝑖=1

N tirages de 𝑥𝑖 𝑆𝑁 𝑌1 + 𝑌2 + ⋯ + 𝑌𝑁
= →𝐼 Pour N grand
𝑁 𝑁

2
𝑓 𝑥
𝜎𝑝2 = න 𝑔 𝑥 − 𝑔 𝑥 2 𝑝 𝑥 𝑑𝑥 = න
−𝐼 𝑝 𝑥 𝑑𝑥
𝑝 𝑥
𝜎𝑝
𝜎=
𝑁
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales

II.3 réduction de la variance


1
𝑒 𝑥 −1
Exemple : 𝑓 𝑥 = 2 𝑒−1 𝑥 ∈ [0,1] 𝐼 = න 𝑓 𝑥 𝑑𝑥 = 0,836 …
0

1er choix intuitif : loi uniforme 𝑝𝑢 𝑥 = 1, 𝑥 ∈ [0,1]

2𝜎𝑢
𝜎𝑢2 = න 𝑓 𝑥 − 𝐼 2 𝑑𝑥 = 0,57262 … Si on souhaite un intervalle de confiance à = 0,01
95% avec une précision de 1% N𝐼

𝑁 = 18800 tirages

Premier choix peu astucieux car on a autant de probabilité de tirer une valeur de x correspondant à une valeur de f(x) qui
ne contribue pas de manière significative dans la valeur de I
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales

II.3 réduction de la variance

Deuxième choix : densité de probabilité linéaire 𝑝𝑙 𝑥 = 2𝑥 , 𝑥 ∈ [0,1]


2
𝑓 𝑥
𝜎𝑙2 = න −𝐼 2𝑥𝑑𝑥 = 0,10482 … 𝑁 = 630
2𝑥

Remarque : les méthodes stochastiques pour l’estimation des intégrales unidimensionnelles peu intéressantes

II.4 réduction de la variance-intégrale multidimensionnelle

𝑑 dimensions : 1 1
𝜎𝑆𝑖𝑚𝑝𝑠𝑜𝑛 ∼ 4 𝜎𝑀𝐶 ∼ 1 quelque soit la dimension de I !
𝑁𝑑 𝑁2

Pour d>8 , les méthodes Monte Carlo convergent plus rapidement vers la valeur de l’intégrale que les méthodes de
quadrature!
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales
II.4 réduction de la variance-intégrale multidimensionnelle

Exemple précédent étendu à d dimensions 𝑓𝑑 𝑥1 , … , 𝑥𝑑 = 𝑓 𝑥1 × ⋯ × f(xd )


𝑝 𝑥1 , … , 𝑥𝑑 = 𝑝 𝑥1 × ⋯ × p(xd )

𝑥𝛼 indépendantes pour séparer les intégrales Id = I d


𝑑 2 𝑑 2
2 𝑓 𝑥𝑖 2 𝑑
𝜎𝑑,𝑝 = ෑන 𝑝 𝑥𝑖 𝑑𝑥𝑖 − [ෑ න 𝑓(𝑥𝑖 )𝑝 𝑥𝑖 𝑑𝑥𝑖 ] = (𝜎1,𝑝 +𝐼 2 − 𝐼 2𝑑 𝑑
𝑝 𝑥𝑖
2
𝜎𝑑,𝑝 /𝐼 2𝑑 = (𝜎1,𝑝
2
/𝐼 2 + 1 −1
𝑖=1 𝑖=1

Densité de probabilité uniforme Densité de probabilité linéaire d grand

𝜎𝑑,𝑢 d
= 1,4691 2 𝜎𝑑,𝑙 d
Id = 1,01572
Id
𝜎𝑑,𝑙
Pour d=100 (encore modeste pour un calcul Monte Carlo) = 108
𝜎𝑑,𝑢
II. Echantillonnage aléatoire et d’importance : application aux calculs d’intégrales
II.4 réduction de la variance-intégrale multidimensionnelle

Si on souhaite un intervalle de confiance à 95% avec une précision de 1%

2𝜎𝑑,𝑢 2𝜎𝑑,𝑙
= 0,01 𝑁 = 2. 1021 = 0,01 𝑁 = 2. 105
N𝐼 N𝐼

Une évaluation de la fonction 𝑓𝑑 prend 10−7 𝑠

𝜏𝑢 = 6 𝑚𝑖𝑙𝑙𝑖𝑜𝑛𝑠 𝑑 ′ 𝑎𝑛𝑛é𝑒𝑠! 𝜏𝑙 = 20𝑚𝑠!


III. Applications à la physique statistique
III.1 Problématique

En physique statistique, on doit déterminer la fonction de partition du problème

Ω = ensemble des microétats accessibles au système 1


−𝛽𝐸(𝑞) 𝛽=
𝑍 𝛽 = ෍𝑒
𝑘𝐵 𝑇
𝑞∈Ω

La fonction de partition correspond à une intégrale multidimensionnelle dans l’espace des phases (d gigantesque)

‫𝑟 ׬‬Ԧ ∈𝑉 𝑁
𝑑 3𝑁 𝑟Ԧ ‫ 𝑑 ׬‬3𝑁 𝑝Ԧ
𝑍 𝛽 = ෍ 𝑒 −𝛽𝐻( 𝑟Ԧ , 𝑝Ԧ ,{𝑄𝛼 })
ℎ3𝑁
𝑄𝛼 𝛼∈𝑆

1
𝐴 = ෍ 𝐴 𝑞 𝑒 −𝛽𝐸(𝑞) Exemple modèle d’Ising : deux états possible +1 et-1 pour N sites
𝑍(𝛽)
𝑞∈Ω
2𝑁 microétats accessibles!

N=1000 10301 microétats accessibles!


III. Applications à la physique statistique
III.1 Problématique

• Calcul d’intégrales multimensionnelles avec d>>8 (pas de méthode de quadrature)

1 𝑒 −𝛽𝐸 𝑞
𝐴 = ෍ 𝐴 𝑞 𝑒 −𝛽𝐸(𝑞) 𝑃𝑒𝑞𝑢 𝑞 =
𝑍(𝛽) 𝑍
𝑞∈Ω

Méthodes Monte Carlo indispensables


𝑝 𝐸 ∼ 𝑔 𝐸 𝑒 −𝛽𝐸

• Le poids de Boltzmann est une distribution d’équilibre très étroite :

Échantillonnage d’importance (éviter l’échantillonnage aléatoire)


∼𝑇

𝐸
〈𝐸〉
III. Applications à la physique statistique
III.2 chaîne de Markov pour échantillonner l’espace des configurations

1 Analogie avec le calcul précédent


𝐴 = ෍ 𝐴 𝑞 𝑒 −𝛽𝐸(𝑞) 〈𝐴〉 ↔ 𝐼
𝑍(𝛽)
𝑞∈Ω
𝐴 𝑞 𝑒 −𝛽𝐸 𝑞
↔ 𝑓(𝑥)
𝐼 = න 𝑓 𝑥 𝑑𝑥 𝑍 𝛽

Estimateur de la moyenne <A> sur N configurations ≪ Ω


On sélectionne les configurations qui contribuent le
σ𝑁
𝑞=1 𝐴 𝑞 𝑒
−𝛽𝐸(𝑞) × 𝑝−1 (𝑞)
plus dans l’estimation de <A>
𝐴 𝑒𝑠𝑡 =
σ𝑁
𝑞=1 𝑒
−𝛽𝐸(𝑞) × 𝑝−1 (𝑞)
𝑝 𝑞 = 𝑒 −𝛽𝐸(𝑞)

𝑁
1 Le calcul de la moyenne thermodynamique ne passe pas par le calcul de la fonction de
𝐴 𝑒𝑠𝑡 = ෍ 𝐴(𝑞)
𝑁 partition!
𝑞=1

Problématique : On ne connaît pas la courbe à intégrer (on ne sait pas ou se trouve le maximum de la fonction!)
III. Applications à la physique statistique
III.2 chaîne de Markov pour échantillonner l’espace des configurations

Idée de Metropolis Rosenbluth et Teller (1953): Générer une dynamique stochastique markovienne stationnaire entre
configurations successives qui tend vers la distribution d’équilibre

Evolution temporelle de la probabilité gouvernée par l’équation maîtresse:

𝜕𝑃 𝑞, 𝑡
= ෍ 𝑊 𝑞 ′ → 𝑞 𝑃 𝑞 ′ , 𝑡 − 𝑊 𝑞 → 𝑞 ′ 𝑃 𝑞, 𝑡 𝑊 𝑞 ′ → 𝑞 : probabilité conditionnelle (taux de transition):
𝜕𝑡 ′ Probabilité que le système soit dans le microétat 𝑞′ à
{𝑞 }
l’instant 𝑡 et qu’il passe dans le microétat 𝑞 à l’instant 𝑡 + 𝑑𝑡

𝑊 𝑞′ → 𝑞 ≥ 0 ෍ 𝑊 𝑞 → 𝑞′ = 1
{𝑞′}

Tout le domaine de l’espace des microétats doit pouvoir être visité (ergodicité)

∀ 𝑞𝑖 , 𝑞𝑓 ∈ ℝ2 ∃ 𝑛 , 𝑞𝑖+1 , 𝑞𝑖+2 , … . , 𝑞𝑖+𝑛 \ 𝑊 𝑞𝑖 → 𝑞𝑖+1 𝑊 𝑞𝑖+1 → 𝑞𝑖+2 … 𝑊 𝑞𝑖+𝑛 → 𝑞𝑓 > 0


III. Applications à la physique statistique
III.3 Critère de balance-bilan détaillé

A l’état stationnaire, 𝜕𝑃𝑠𝑡𝑎𝑡 𝑞,𝑡


=
𝜕𝑃𝑒𝑞𝑢 𝑞,𝑡
=0 ෍ 𝑊 𝑞′ → 𝑞 𝑃𝑒𝑞𝑢 (𝑞′, 𝑡) = ෍ 𝑊 𝑞 → 𝑞 ′ 𝑃𝑒𝑞𝑢 (𝑞, 𝑡)
𝜕𝑡 𝜕𝑡
{𝑞′ } {𝑞′}

Critère de balance

Cas particulier important : le bilan détaillé (conditions suffisantes mais pas nécessaires (micro réversibilité)

𝑊 𝑞′ → 𝑞 𝑃𝑒𝑞𝑢 (𝑞′, 𝑡) = 𝑊 𝑞 → 𝑞 ′ 𝑃𝑒𝑞𝑢 (𝑞, 𝑡)

1 −𝛽𝐸(𝑞)
Dans l’ensemble canonique 𝑃𝑒𝑞𝑢 (𝑧) = 𝑒
𝑍 𝛽

𝑊 𝑞′ → 𝑞 𝑞′ −𝐸 𝑞 )
Il existe une infinité de taux de transition qui vérifie le critère de bilan détaillé
′ = 𝑒 𝛽(𝐸
𝑊 𝑞→𝑞
III. Applications à la physique statistique
III.4 incertitude de l’expérience aléatoire
Si les configurations successivement visitées sont décorrélées temporellement (variables aléatoires indépendantes et
équivalentes)
𝑁 𝑁
1 1 1
1 2 2 𝜎𝐴 𝐴 𝑒𝑠𝑡 = ෍ 𝐴(𝑞) 𝐴2 𝑒𝑠𝑡 = ෍ 𝐴2 (𝑞)
𝜎𝑁→∞ = 𝐴2 𝑒𝑠𝑡 − 𝐴 𝑒𝑠𝑡 = 𝑁
𝑞=1
𝑁
𝑁 𝑁 𝑞=1

En réalité, les variables ne sont pas indépendantes (corrélations temporelles)

2
1 2 (𝑞) − 𝐴 2 ) +
2
𝜎𝑐,𝑁→∞ = 2 ෍(𝐴 2 ෍ ෍ (𝐴 𝑞 𝐴 𝑞 ′ − 𝐴 2 )
𝑁 𝑁 ′
𝑞 𝑞 𝑞 =𝑞+1

2
1 2 𝑞 − 𝐴 2) +
2
𝜎𝑐,𝑁→∞ = 2
෍(𝐴 ෍(1 − 𝑞/𝑁)(〈𝐴 0 𝐴(𝑞)〉− 𝐴 2 )
𝑁 𝑁
𝑞 𝑞
On définit la fonction d’autocorrélation temporelle : 𝐺 𝑞, 𝑞 ′ = 𝐴 𝑞 𝐴 𝑞 ′ − 𝐴 2 = 𝐺( 𝑞 ′ − 𝑞 )

On pose le temps d’autocorrélation intégré


1
𝜏𝐴 = 2 ෍(1 − 𝑞/𝑁)(〈𝐴 0 𝐴(𝑞)〉− 𝐴 2 )
𝜎𝐴
𝑞
III. Applications à la physique statistique
III.4 incertitude de l’expérience aléatoire

2
𝜎𝐴2 Les configurations sont considérées comme indépendantes au bout d’un temps 1 + 2𝜏𝐴
𝜎𝑐,𝑁→∞ = (1 + 2𝜏𝐴 )
𝑁

III.5 Premier Algorithme local : la dynamique de Metropolis dans l’ensemble canonique

𝑊 𝑞 → 𝑞 ′ = 𝛼 𝑞 → 𝑞 ′ × 𝐴(𝑞 → 𝑞′)

𝛿 3𝑟
𝛼 ∶ probabilité de choix (local)

𝐴: probabilité d’acceptance

1 𝛿 3𝑟
𝛼= Choix parmi M sites
𝑀 𝑉

𝐴 = min(1, χ)
III. Applications à la physique statistique
III.5 Premier Algorithme local : la dynamique de Metropolis dans l’ensemble canonique

Critère de balance dans l’ensemble (M,V,T)

𝑒 −𝛽𝐸 𝑞
1 𝛿 3𝑟 𝑒 −𝛽𝐸 𝑞′
1 𝛿 3𝑟
𝑑 3𝑀 𝑟Ԧ ×𝜒= 𝑑 3𝑀 𝑟Ԧ ×1 𝜒 = 𝑒 −𝛽(𝐸 𝑞′ −𝐸(𝑞))
𝑍 𝑀 𝑉 𝑍 𝑀 𝑉

III.6 déroulement d’une simulation de type algorithme local (Metropolis)

1. Définir le système et la structure pour un Hamiltonien donné ainsi que la configuration initiale (on n’est pas à l’équilibre)
2. Définir l’environnement des motifs élémentaires en interaction (tableau des voisins)
3. Initialiser les grandeur physiques dont on veut connaître la moyenne
4. Boucle sur le temps (do temps=1, tmax,1)
i. choix d’un site au hasard
ii. Proposer aléatoirement une nouvelle configuration d’énergie 𝐸 𝑞 ′
iii. Δ𝐸 = 𝐸 𝑞 ′ − 𝐸 𝑞
iv. Si Δ𝐸 < 0, on accepte la nouvelle configuration (𝑞 → 𝑞′)
Si Δ𝐸 > 0, on accepte la nouvelle configuration (𝑞 → 𝑞′) avec une probabilité 𝑝 = 𝑒 −𝛽Δ𝐸
5. On répète M fois les étapes i),ii),iii) et iv)
6. Si temps>tw (temps de retour à l’équilibre) on peut utiliser les configurations générées pour calculer une moyenne
thermodynamique
III. Applications à la physique statistique
III.5 Premier Algorithme local : la dynamique de Metropolis dans l’ensemble canonique

Remarque : les configurations refusées doivent être prises en compte dans le calcul de la moyenne

𝐴𝑠𝑡𝑜𝑐𝑘 = 𝐴𝑠𝑡𝑜𝑐𝑘 + 𝐴(𝑡𝑒𝑚𝑝𝑠)

7. Fin de la boucle sur le temps

Astock
𝐴 𝑒𝑠𝑡 = 𝑁 = 𝑡𝑚𝑎𝑥 − 𝑡𝑤
N
III.7 Moyenne d’ensemble

Précédemment moyenne temporelle (configurations générées corrélées)


𝑑𝑜 𝑁𝑐𝑜𝑛𝑓 = 1, Nconf,max
1.
2.
3.
4. i , ii, iii, iv,
5.
6. on fait des moyennes à tout temps (hors équilibre)
III. Applications à la physique statistique
III.7 Moyennes d’ensemble

𝐴𝑠𝑡𝑜𝑐𝑘 (𝑡𝑒𝑚𝑝𝑠) = 𝐴𝑠𝑡𝑜𝑐𝑘 (𝑡𝑒𝑚𝑝𝑠) + 𝐴(𝑡𝑒𝑚𝑝𝑠)

7. Fin de la boucle sur le temps


8. Fin de la boucle sur les configurations
Pour chaque temps :
𝑑𝑜 𝑡𝑒𝑚𝑝𝑠 = 1, 𝑡𝑚𝑎𝑥 , 1
𝐴𝑠𝑡𝑜𝑐𝑘 𝑡𝑒𝑚𝑝𝑠
𝐴𝑚𝑜𝑦𝑒𝑛𝑛𝑒 𝑡𝑒𝑚𝑝𝑠 =
𝑁𝑐𝑜𝑛𝑓,𝑚𝑎𝑥
III.8 remarques importantes

• Le temps des simulations Monte Carlo n’est pas réel il dépend du choix arbitraire du contenu d’un pas Monte Carlo (Monte
Carlo step étape i,ii,iii,iv). On peut toutefois simuler des systèmes hors équilibre (forme des courbes mais pas de fit possible)
• On ne peut pas calculer de vitesse (la température n’est pas reliée à la vitesse quadratique moyenne!)
• Chaque entité est en contact de manière individuelle avec un thermostat parfait à la température T (expérience de diffusion
thermique compliquée à simuler)
• On ne peut pas comparer les fonctions thermodynamiques à deux temps <A(s,t)> avec l’expérience
III. Applications à la physique statistique
III.9 Autres algorithmes locaux

• Algorithme de Glauber

𝑒 𝛽Δ𝐸 1
𝑊 𝑞 → 𝑞′ = 𝑊 𝑞′ → 𝑞 =
1 + 𝑒𝛽Δ𝐸 1 + 𝑒𝛽Δ𝐸

• Dynamique de type Arrhénius (one step dynamics)

𝑞′ −𝐸 𝑞
1 −𝛽ቆ𝐸 −𝐸𝑇 ቇ
𝑊 𝑞 → 𝑞′ = 𝑒 2
2𝜏

• Dynamique de Kawasaki (conservation du paramètre d’ordre) modèle de spin sur un réseau

Echange spatiale de spin

On choisit deux spin premiers voisins (qui n’ont pas le même spin …) au hasard on les échange selon un critère de Metropolis
III. Applications à la physique statistique
III.10 Algorithme de Metropolis dans les autres ensembles de Gibbs

Ensemble isobare isotherme (M, P, T)

L’énergie et le volume fluctue 𝑒 −𝛽𝐸 𝑞 −𝛽𝑃𝑉


𝑑𝑃 = 𝑑 3𝑀 𝑟𝑑𝑉
Ԧ
𝑍
𝛿 = [−𝛿𝑉, 𝛿𝑉]
1/𝑑 Changement de variable pour le critère de balance
𝑛𝑒𝑤
𝑉
𝑉 𝑛𝑒𝑤 = 𝑉 𝑜𝑙𝑑 + 𝛿𝑉 𝑟𝑛𝑒𝑤 = 𝑟𝑜𝑙𝑑 ൭ 𝑜𝑙𝑑 ൱
𝑉 𝑟Ԧ
𝑠Ԧ =
𝑉

𝑒 −𝛽𝐸 𝑞 −𝛽𝑃𝑉 𝑜𝑙𝑑 1 𝛿 3 𝑟𝑜𝑙𝑑 1 𝑒 −𝛽𝐸 𝑞′ −𝛽𝑃𝑉 𝑛𝑒𝑤 1 𝛿 3 𝑟𝑛𝑒𝑤 1


𝑑 3𝑀 𝑠(𝑉
Ԧ 𝑜𝑙𝑑 )𝑀 𝑑𝑉 × ×𝜒= 𝑑 3𝑀 𝑠(𝑉
Ԧ 𝑛𝑒𝑤 )𝑀 𝑑𝑉 × ×1
𝑍 𝑀 𝑉 𝑜𝑙𝑑 2𝛿𝑉 𝑍 𝑀 𝑉 𝑛𝑒𝑤 2𝛿𝑉

𝑉 𝑛𝑒𝑤
−𝛽(Δ𝐸+𝑃 𝑉 𝑛𝑒𝑤 −𝑉 𝑜𝑙𝑑 +𝑘𝐵 𝑇𝑀 ln( 𝑜𝑙𝑑 ))
𝜒=𝑒 𝑉
III. Applications à la physique statistique
III.10 Algorithme de Metropolis dans les autres ensembles de Gibbs

Ensemble de grand canonique : on peut échanger des particules avec l’extérieur


On doit considérer la partie énergie cinétique car elle dépend de M

1 𝛼(𝑞 → 𝑞 ′ ) = 𝛼𝑐 𝛼𝑑 (𝑞 → 𝑞 ′ )
𝑑𝑃(𝑞) = 𝑒 −𝛽𝐸 𝑞
𝜆𝑀
𝜆=𝑒 𝛽𝜇
/Λ 𝑑
𝑍

𝑐 𝑐
1 𝛿𝑟 1
𝛼𝑖𝑛𝑠 = 𝛼𝑠𝑢𝑝 = 𝛼𝑑 = 𝛼𝑠𝑢𝑝 =
2 𝑉 𝑀+1
Insertion
𝑒 −𝛽𝐸 𝑞 𝛿 3𝑟 1 𝑒 −𝛽𝐸 𝑞′ 1 1 𝜆𝑉 −𝛽Δ𝐸
𝑑 3𝑀 𝑟Ԧ 𝜆𝑀 × ×𝜒= 𝑑 3𝑀+1 Ԧ 𝑀+1
𝑟𝜆 × × 𝜒= 𝑒
𝑍 𝑉 2 𝑍 2 𝑀+1 𝑀+1

Suppression

𝑒 −𝛽𝐸 𝑞 1 1 𝑒 −𝛽𝐸 𝑞′ 1 𝛿𝑟 𝑀 −𝛽Δ𝐸


𝑑 3𝑀 𝑟Ԧ 𝜆𝑀 × × ×𝜒= 𝑑 3 𝑀−1 𝑟𝜆
Ԧ 𝑀−1 × × 𝜒= 𝑒
𝑍 𝑀 2 𝑍 2 𝑉 𝜆𝑉
III. Applications à la physique statistique
III.11 limites des algorithmes locaux

Dynamiques peu coûteuses en temps de calcul mais converge lentement vers la distribution d’équilibre
Deux situations catastrophiques :
𝑀/𝑀𝑠
• Ralentissement critique Transition de phase du second ordre :
𝑚 0 𝑚 𝑡 − 𝑚2 −
t point critique=singularité
2 2
≈ e 𝜒𝑇 Δ𝑡
𝑚 − 𝑚 𝑡→∞
𝑒𝑥𝑝
𝜏𝐴 = 𝜒𝑇 Δ𝑡
𝑇𝐶 𝑇

𝑡
𝜎𝐴2 ∞
𝑡 − 𝑒𝑥𝑝 𝜎𝐴2 𝑒𝑥𝑝
2
𝜎𝑐,𝑁→∞ = 1 + 2 න (1 − )𝑒 𝜏𝐴 𝑑𝑡 ≈ ቀ1 + 2𝜏𝐴 ቁ
𝑁 0 𝑁Δ𝑡 𝑁

A la température critique, le temps de relaxation diverge au point critique


III. Applications à la physique statistique
III.11 limites des algorithmes locaux

Ralentissement critique dans le cas d’une dynamique locale (information qui propage comme une marche au hasard
(actualisation locale)

𝜏 = 𝜉 𝑧 = Lz 𝑧 exposant dynamique (𝑧 = 2 si marche aléatoire)

Solution : Algorithmes d’amas : Algorithme de Swendsen-Wang (modèle de Potts, Ising), Algorithme de Wolff

• Super ralentissement critique


Transition du premier ordre : existence d’énergies de barrières
Δ𝐹 = −2𝜎o,𝑑 𝐿𝐷−1

𝐷−1
𝑊𝑜→𝑑 = 𝑒 −Δ𝐹 = 𝑒 𝛽2𝜎𝑜,𝑑 𝐿

𝐷 𝐷−1
𝜏∼ 𝐿 2 𝑒 𝛽2𝜎𝑜,𝑑 𝐿 Faible perméabilité de la barrière d’énergie
III. Applications à la physique statistique
III.11 limites des algorithmes locaux

𝐷 𝐷−1
𝜏∼ 𝐿 2 𝑒 𝛽2𝜎𝑜,𝑑 𝐿 Faible perméabilité de la barrière d’énergie

Solutions : algorithme multicanonique, repondération des histogrammes

III.9 Méthode Monte Carlo moderne

• Réduction des erreurs : waste-recycling (2004)


• Echantillonnage préférentiel
• Jump walking (1990)
• Parallel tempering
III. Modèle d’Ising
𝑀/𝑀𝑠 Transition de phase du second ordre :
point critique=singularité

𝑇𝐶 𝑇
𝑇 > 𝑇𝐶
𝑇 < 𝑇𝐶 𝑇 = 𝑇𝐶

Vous aimerez peut-être aussi