43
Appunti su Metodi Monte Carlo (draft) Giuseppe Boccignone 12 maggio 2010

Giuseppe Boccignone 12 maggio 2010

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Giuseppe Boccignone 12 maggio 2010

Appunti su Metodi Monte Carlo (draft)

Giuseppe Boccignone

12 maggio 2010

Page 2: Giuseppe Boccignone 12 maggio 2010

2

Page 3: Giuseppe Boccignone 12 maggio 2010

Indice

1 Monte Carlo e inferenza Bayesiana 5

2 Tecniche semplici di campionamento 72.1 Campionamento per inversione . . . . . . . . . . . . . . . . . 7

Campionamento mediante trasformazione inversa . . . 72.2 Metodo di accettazione-rigetto (Rejection sampling) . . . . 9

Rejection sampling . . . . . . . . . . . . . . . . . . . . 92.3 Metodo di campionamento ad importanza . . . . . . . . . . 10

2.3.1 Idea di base . . . . . . . . . . . . . . . . . . . . . . . . 112.3.2 Importance sampling . . . . . . . . . . . . . . . . . . . 122.3.3 Proprieta . . . . . . . . . . . . . . . . . . . . . . . . . 13

Esempio MATLAB . . . . . . . . . . . . . . . . . . . 14

3 MCMC: brevi richiami di Meccanica statistica 173.1 Elementi di fisica statistica . . . . . . . . . . . . . . . . . . . 17

3.1.1 Da Newton a Hamilton . . . . . . . . . . . . . . . . . 173.1.2 Formulazione Hamiltoniana . . . . . . . . . . . . . . . 18

3.2 Lo spazio delle fasi . . . . . . . . . . . . . . . . . . . . . . . . 193.3 Distribuzione di Maxwell-Boltzmann-Gibbs . . . . . . . . . . 20

4 L’algoritmo di Metropolis 254.1 Formulazione originale (1953) . . . . . . . . . . . . . . . . . . 254.2 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . 27

5 Da Metropolis all’inferenza statistica. 295.1 Connessioni con la statistica . . . . . . . . . . . . . . . . . . . 29

5.1.1 Metropolis con distribuzione di proposta simmetrica . 30Algoritmo di Metropolis . . . . . . . . . . . . . . . . . 30Esempio MATLAB . . . . . . . . . . . . . . . . . . . 31

5.1.2 Metropolis-Hastings . . . . . . . . . . . . . . . . . . . 32

3

Page 4: Giuseppe Boccignone 12 maggio 2010

4 INDICE

5.1.3 Metropolis per componenti . . . . . . . . . . . . . . . 345.1.4 Campionatore di Gibbs (Gibbs sampler) . . . . . . . . 35

Campionatore di Gibbs . . . . . . . . . . . . . . . . . 35

6 Monte Carlo ibrido 376.1 Momenti come variabili ausiliarie . . . . . . . . . . . . . . . . 376.2 Dinamica hamiltoniana in un tempo fittizio . . . . . . . . . . 38

6.2.1 Reversibilita temporale . . . . . . . . . . . . . . . . . 386.2.2 Conservazione dell’energia . . . . . . . . . . . . . . . 396.2.3 Teorema di Liouville . . . . . . . . . . . . . . . . . . 396.2.4 Discretizzazione Leapfrog . . . . . . . . . . . . . . . . 41

6.3 Hybrid Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . 426.3.1 Perche HMC funziona . . . . . . . . . . . . . . . . . . 42

Page 5: Giuseppe Boccignone 12 maggio 2010

Capitolo 1

Monte Carlo e inferenzaBayesiana

I metodi Monte Carlo sono tecniche computazionali che fanno uso di numericasuali. Nel quadro dell’ inferenza, il loro scopo, e la soluzione di uno deiseguenti problemi (o entrambi)

Problema 1 . Campionamento x(n) ∼ P (x), ovvero la generazione di uninsieme di campioni {x(n)}Nn=1 da una distribuzione di probabilita P (x)

Problema 2 . Stima dei momenti di una generica funzione φ(x) rispettoalla distribuzione di probabilita P (x), e.g., la media :

E[φ(x)] =∫φ(x)P (x)dpx

5

Page 6: Giuseppe Boccignone 12 maggio 2010

6 CAPITOLO 1. MONTE CARLO E INFERENZA BAYESIANA

Page 7: Giuseppe Boccignone 12 maggio 2010

Capitolo 2

Tecniche semplici dicampionamento

Introduciamo alcune tecniche standard per la soluzione del Problema 1(campionamento) e del Problema 2 (integrazione)

2.1 Campionamento per inversione

Il piu semplice motore per generare numeri casuali a partire da una di-stribuzione di cui si sappia calcolare l’inversa F−1

X della sua funzione diripartizione, e il campionamento per inversione.

Il campionamento per inversione si puo effettuare mediante la seguenteprocedura:

Campionamento mediante trasformazione inversa

{REPEAT

{u ∼ Unif(0, 1)x← F−1(u)}

UNTIL condizioneRETURN x}

7

Page 8: Giuseppe Boccignone 12 maggio 2010

8 CAPITOLO 2. TECNICHE SEMPLICI DI CAMPIONAMENTO

dove Unif(0, 1) e la distribuzione uniforme nell’intervallo [0, 1]Il seguente teorema ne giustifica la correttezza:

Teorema 1. Sia X una v.a. (continua) e FX(X) la sua funzione di ripar-tizione, strettamente crescente in R.

Allora la v.a. U = FX(X) ha distribuzione uniforme in [0, 1]

Dimostrazione Poiche FX(X) strettamente crescente in R, esiste l’in-versa F−1

X .Per definizione U = u(X) = FX(X) con 0 6 U 6 1 e la sua funzione di

ripartizione e concentrata in [0, 1], ovvero FU (u) = 0 se u 6 0 e FU (u) = 1se u > 1. Allora, nell’intervallo [0, 1]:

FU (u) = P (U 6 u) = P (FX(X) 6 u) == P (X 6 F−1

X (u)) = FX(F−1X (u)) = u.

Pertanto:PU (u) = dFU (u)

du = 1in [0, 1] ed e dunque uniforme.

Dal precedente segue banalmente che:

Lemma 2. Se U ∼ Unif(0, 1), allora X = F−1(U) ha funzione di distri-buzione F

Esempio 3. Supponiamo di voler generare 1000 campioni dalla distribuzio-ne esponenziale, F (x|λ) = 1− exp(−λx), λ > 0. L’inversa della funzione diripartizione risulta essere F−1(u|λ) = − log(1− u)/λ. Allora:

{n← 1REPEAT

{u ∼ Unif(0, 1)x← − log(1− u)/λn← n+ 1 }

UNTIL n 6 1000RETURN x}

Page 9: Giuseppe Boccignone 12 maggio 2010

2.2. METODO DI ACCETTAZIONE-RIGETTO (REJECTION SAMPLING) 9

2.2 Metodo di accettazione-rigetto (Rejection sam-pling)

In molti casi non e possibile applicare il metodo di inversione perche risultadifficile calcolare la funzione di ripartizione o la sua inversa. Un metodoalternativo e quello di accettazione-rigetto, posto che sia possibile valutarela densita P (x) per un qualunque valore x L’idea e molto semplice (dovuta aVon Neumann). Per campionare dalla densita di probabilit P (x), si definisceuna densita di prova o di proposta Q(x) (proposal density) piu semplice P (x)da cui sappiamo certamente campionare (e.g., mediante inversione) e taleche

cQ(x) ≥ P (x) per qualche costante c > 1 e per qualunque x(cq e l’inviluppo di f).

Il metodo consiste nel generare campioni con densit’niforme sotto il grafodi inviluppo e accettare i campioni che cadono sotto il grafico di f rifiutandoquelli generati fra f e il suo inviluppo.

Figura 2.1: Rejection Sampling (da MacKay (1))

Formalmente:

Teorema 4. Se P e Qsono densita in Rp con, P (x) ≤ cQ(x) per qualunquex ∈ Rp, ed esiste c ≥ 1, allora il seguente algoritmo

Rejection sampling

{REPEAT

{x ∼ gu ∼ Unif(0, 1)y ← cQ(x)

P (x)

Page 10: Giuseppe Boccignone 12 maggio 2010

10 CAPITOLO 2. TECNICHE SEMPLICI DI CAMPIONAMENTO

}

UNTIL uy ≤ 1RETURN x }

generera un campione X = x di densita P (x).

Per dimostrare il teorema introduciamo i seguenti:

Lemma 5. Sia X un vettore aleatorio di dimensione p di densita P (x). SiaU ∼ Unif(0, 1) una v.a. independente da X, e sia c > 0. Allora,

I. (X, cUP (x)) e uniforme in A = {(x, u) : x ∈ Rp, 0 ≤ u ≤ cP (x)}

II. Se (X,U) e uniforme in A, allora X ha densita P (x).

Lemma 6. Siano X1, X2, . . . vettori aleatori iid in Rp. Sia A ⊂ Rp doveP [X ∈ A] = α > 0. Sia Y il primo Xi ∈ A. Allora, ∀B ⊂ Rp misurabile,

P [Y ∈ B] =P [X1 ∈ A

⋂B]

α. (2.1)

Inoltre, se X1 e uniforme in A0 ⊃ A, allora Y e uniforme in A.

Possiamo ora dimostrare perche il campionamento per rigetto funziona.Dimostrazione (Il metodo di accettazione-rigetto e valido). Al pri-mo passo l’algoritmo genera (per il Lemma 5, I) (X, cUQ(x)) uniformesu C = {(x, u) : x ∈ Rp, 0 ≤ u ≤ cQ(x)}. In uscita (per il Lemma 6),(X, cUQ(x)) e uniforme su C = {(x, u) : x ∈ Rp, 0 ≤ u ≤ P (x)}. Sottol’ipotesi che P (x) ≤ cQ(x), C ⊃ A. Pertanto, (Lemma 5, II) X ha densitaP (x).

Osservazione 7. Il metodo lavorera meglio se Q(x) una buona approssima-zione di f . In caso contrario, affinche possa valere P (x) ≤ cQ(x) ovunque,richiedera una c grande e la frequenza di rigetto sara elevata.

2.3 Metodo di campionamento ad importanza

E’ un metodo che serve sostanzialmente a risolvere il Problema 2, ovveroil calcolo di un integrale rispetto ad una qualunque distribuzione P (x)

Page 11: Giuseppe Boccignone 12 maggio 2010

2.3. METODO DI CAMPIONAMENTO AD IMPORTANZA 11

2.3.1 Idea di base

Si vuole calcolare l’integrale di una qualunque funzione reale integrabile φ

I =∫φ(x)dx (2.2)

.Sia x ∈ Rp, e si scelga una opportuna funzione Q(x) > 0 con∫

Q(x)dx = 1. (2.3)

L’integrale si puo scrivere come:

I =∫φ(x)dx =

∫φ(x)Q(x)

Q(x)dx =∫

φ(x)Q(x)

dQ(x) (2.4)

La funzione g puo essere pensata come una densita di probabilita. Allora

I = Eg

[φ(X)Q(x)

](2.5)

Possiamo affermare che la media del campione tende al valore atteso: in-fatti, la Legge (forte) dei Grandi Numeri assicura che per n sufficientementegrande,

I ≈ 1n

n∑t=1

φ(Xt)Q(Xt)

= In (2.6)

con probabilita quasi 1, dove X0, X1, . . . sono iid con distribuzione g.Vale inoltre il Teorema del Limite Centrale:

Zn =n1/2(In − I)

σ(2.7)

converge in legge alla Gaussiana standardizzata, posto che σ (la deviazionestandard della v.a.. Y = P (x)/Q(x)), sia finita e diversa da zero.

La σ controlla l’accuratezza dell’approssimazione. Piu piccola σ, piuaccurato In come stimatore di I.

Osservazione 8. Se Q(x) e scelta uniforme, abbiamo come caso particola-re il metodo di campionamento uniforme detto Monte Carlo grezzo (crudeMonte Carlo). Infatti, posto ad esempio Q(x) = 1

b−a :

I =∫ b

aφ(x)dx = (b− a)

∫ b

a

φ(x)b− a

dx = (b− a) < φ(x) > (2.8)

Page 12: Giuseppe Boccignone 12 maggio 2010

12 CAPITOLO 2. TECNICHE SEMPLICI DI CAMPIONAMENTO

ovvero

I ≈ b− an

n−1∑t=0

φ(Xt) = In (2.9)

dove Xt ∼ Unif(a, b)

Osservazione 9. La funzione Q(x) deve essere il piu possibile vicina a φ(x).

2.3.2 Importance sampling

Estendiamo il ragionamento della sezione precedente e supponiamo di volercalcolare il valore atteso della funzione φ(x) rispetto alla distribuzione P (x)da cui non sappiamo campionare. Allora:

Ep[φ(x)] =∫φ(x)P (x)dx =

∫φ(x)

P (x)Q(x)

Q(x)dx (2.10)

≈ 1n

n∑t=1

P (Xt)Q(Xt)

φ(Xt) =1n

n∑t=1

wtφ(Xt) = I[φ],

dove

wt =P (Xt)Q(Xt)

(2.11)

sono detti pesi di importanza, il cui scopo e correggere il bias introdotto dalfatto di campionare dalla distribuzione di prova anziche dalla distribuzioneesatta.

Si noti che P (X), Q(X) sono spesso in pratica non normalizzate, ovveroP (X) = 1

ZPP (X) and Q(X) = 1

ZQQ(X) cosı che

w =P (Xt)Q(Xt)

=ZQZP

P (Xt)Q(Xt)

dove

ZPZQ

=∫P (X)dXZQ

=∫P (X)Q(X)

q(X)

' 1N

N∑t=1

p(X)q(X)

, (2.12)

Page 13: Giuseppe Boccignone 12 maggio 2010

2.3. METODO DI CAMPIONAMENTO AD IMPORTANZA 13

dove abbiamo usato l’insieme di campioni da Q(X) per stimare il fattoredi normalizazione in (2.12). Ne scaturiscono due forme di approssimazione,dove (2.14) e semplicemente l’approssimazione derivata in (2.11)

I1[φ] =N∑t=1

wtφ(Xt), wt =P (X(t))/Q(X(t))∑Nk=1 P (X(k))/Q(X(k))

(2.13)

I2[φ] =1N

N∑t=1

P (Xt)Q(Xt)

φ(Xt) (2.14)

E’ importante notare che (2.13) e un’approssimazione dove Q(X) e stataapprossimata due volte: una volta per il termine principale e una volta peri pesi (2.12). Tale approssimazione e necessaria qualora non vi sia garanziache P (X) o Q(X) siano normalizzate. La seconda forma (2.14) assumeinvece che entrambe le distribuzioni siano normalizzate.

2.3.3 Proprieta

Nell’importance sampling la varianza della stima I[f ] decresce all’aumen-tare del numero di campioni. Poiche {I[φ]} = I[φ], si definisccela varianzaasintotica σ2

f ,

var(I[φ]) =σ2φ

N=

1N

{∫φ2(X)P 2(X)

Q(X)dX − I2[f ]

}, (2.15)

e la densita Q∗(X) che minimizza (2.15) e proporzionale a |φ(X)|P (X). Siconsideri infatti il caso φ(X) > 0,. Allora il numeratore in (2.15) tende azero piu lentamente di Q(X), var(I[φ]) → ∞. Pertanto, la selezione dellaQ(X) ha un notevole impatto sull’accuratezza dell’approssimazione: unascelta non ponderata conduce ad una stima di elevata varianza.

Anzitutto e importante selezionare Q(X) con supporto diverso da zerodove P (X) supporto diverso da zero. Cio puo essere ottenuto scegliendo unaQ che minimizza la α-divergenza1

Dα(P ||Q) =4

1− α2

(1−

∫P (X)

1+α2 Q(X)

1−α2 dX

), (2.16)

per α ≥ 1. La Kullback-Leibler Dα(P ||Q) che e per definizione zero-avoidingseleziona tipicamente una Q che copre P .

1Bishop pag. 470

Page 14: Giuseppe Boccignone 12 maggio 2010

14 CAPITOLO 2. TECNICHE SEMPLICI DI CAMPIONAMENTO

Inoltre se scegliamo una distribuzione di campionamento come nel rejec-tion sampling dove P (X) ≤ kQ(X) con k costante, allora vi e garanzia dimantenere una varianza limitata. L’approssimazione (2.13) garantisce cheQ non dbba essere nortmalizzata affinche il metodo funzioni.

Un ultimo punto critico e la determinazione del numero sufficiente dicampioni,. In (? ), Kong et al. suggerisce l’ effective sample size definitocome:

ESS ,N

1 + var(wi)

per valutare l’impatto sulla varianza al crescere del numero di campioni.

Esempio MATLAB

Calcoliamo il valore atteso di

f(x) = 2 sin(π

1.5x), x ≥ 0 (2.17)

dove X e’ distribuito secondo una distribuzione di tipo ma con parame-tro di gradi di liberta (gdl) non intero. Q e una distribuzione normale scalataN [x|0.8, 1.5] dove i parametri sono tali per cui P (x) < kQ(x), ∀x ≥ 0.

P (x) = x(1.65)−1e−x2

2 , x ≥ 0 (2.18)

Q(x) =2√

2π(1.5)e− ((0.8)−x)2

2(1.5) (2.19)

(2.20)

Page 15: Giuseppe Boccignone 12 maggio 2010

2.3. METODO DI CAMPIONAMENTO AD IMPORTANZA 15

0 1 2 3 4 5 6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

x

p(x)q(x)p(x)f(x)

Figura 2.2: Grafico di p(x), q(x) e di p(x)f(x)

clear all;

mu = 0.8; % media gaussiana

sigma = sqrt(1.5); % deviazione standard

k=1.65; % gdl della Chi

c=2; % costante moltiplicativa per p < cq

num_iter = 100; % numero di Monte Carlo runs

p = @(x) x^(k-1)*exp(-x^2/2); % distribuzione target

q = @(x) c/sqrt(2*pi*sigma^2)... % distribuzione di sampling

*exp(-(mu-x)^2/(2*sigma^2));

f = @(x) 2*sin(pi/1.5*x); % funzione di cui ottenere la media

for iter=1:num_iter

samp_size = 1000; % numero iniziali di campioni da q

X = normrnd(mu,sigma,[samp_size 1]); % X ~ q(X)

for i=1:length(X)

if X(i)>=0 % elimina X fuori dal supporto di p

W(i) = p(X(i))/q(X(i)); % importance weight

I(i) = W(i)*f(X(i)); % pesa la funzione

else

W(i)=0; % valori ignorati

I(i)=0;

samp_size = samp_size - 1;

end

end

I_hat = sum(I)/sum(W); % approssimazione

[tmp tmp2 non_zero_weights] = find(W); % elimina pesi scartati

variance = var(non_zero_weights); % calcula varianza pesi

eff_samp_size = samp_size/(1 + variance); % calcola l’ effective sample size

format short g % memorizza il run

results(iter,:) = [I_hat variance samp_size eff_samp_size];

end

% stampa risultati

totals = [mean(results(:,1)) mean(results(:,2)) mean(results(:,3)) mean(results(:,4));...

var(results(:,1)) var(results(:,2)) var(results(:,3)) var(results(:,4))]

Page 16: Giuseppe Boccignone 12 maggio 2010

16 CAPITOLO 2. TECNICHE SEMPLICI DI CAMPIONAMENTO

Page 17: Giuseppe Boccignone 12 maggio 2010

Capitolo 3

MCMC: brevi richiami diMeccanica statistica

Il primo metodo Monte Carlo basato su Catene di Markov (Markov ChainMonte Carlo, MCMC ), l’algoritmo di Metropolis fu introdotto nell’ambitodella fisica statistica. Il suo obiettivo era la simulazione dell’evoluzione di unsistema fisico (un solido) in un bagno di calore verso l’equilibrio termico. Nelseguito, richiamiamo alcuni concetti fondamentali della Meccanica Statisticache verranno poi utilizzati nella formulazione dei vari algoritmi MCMC.

3.1 Elementi di fisica statistica

3.1.1 Da Newton a Hamilton

La formulazione della meccanica classica ha alla base le leggi di Newton, dicui la piu famosa e la seconda:

F = ma (3.1)

, dove F e la forza, m la massa e a l’accelerazione (omettiamo nel segutol’uso dei simboli di vettore per semplicita notazionale). L’accelerazione e laderivata seconda della posizione q rispetto al tempo:

a = q. (3.2)

Per una particella singola, q indica il vettore di posizione (e.g. (x, y, z)in coordinate cartesiane); per un sistema di particelle, e il vettore q =(q1, q2, · · · ) i cui elementi rappresentano le coordinate delle singole particelle.

17

Page 18: Giuseppe Boccignone 12 maggio 2010

18CAPITOLO 3. MCMC: BREVI RICHIAMI DI MECCANICA STATISTICA

In generale i campi di forze sono arbitrarie funzioni a valori vettorialidella posizione e della velocita; poiche le quattro forze fondamentali pre-senti in natura (gravitazionale, elettromagnetica, debole e forte) conservanol’energia, considereremo forze esprimibili come il gradiente di una qualchefunzione potenziale (campo scalare) V = V (q, q)

F = −∂V∂q

(3.3)

.La seconda legge di Newton ci dice che l’evoluzione di un sistema di

particelle e governata da un sistema di equazioni differenziali del secondoordine:

F (q, q) = mq (3.4)

Per un sistema di N particelle in assenza di vincoli, ci sono 3N equazionidifferenziali da risolvere. Sotto opprtune condizioni di regolarita delle fun-zioni F e q(t), il sistema ha soluzione unica per un insieme dato di condizioniiniziali (e.g., valori iniziali di posizione e velocita).

Un sistema del second’ordine puøsempre essere ridotto ad un sistema delprim’ordine raddoppiando il numero di equazioni. Si introduca il momentoo quantita di moto p,

p = mq (3.5)

possiamo rimpiazzare il sistema di 3N equazioni differenziali del se-cond’ordine con un sistema di 6N equazione del primo ordine nelle variabilip e q:

p = F (q, p/m). (3.6)

q =p

m; (3.7)

3.1.2 Formulazione Hamiltoniana

Si introduca la funzione hamiltoniana H(q, p) che rappresenta l’energia to-tale del sistema, dunque la somma delle energie cinetica e potenziale,

Page 19: Giuseppe Boccignone 12 maggio 2010

3.2. LO SPAZIO DELLE FASI 19

H(q, p) = Energia = Cinetica+ Potenziale

=12mq2 + V

=p2

2m+ V.

Le equazioni di Hamilton si ottengono esprimendo il sistema di 6Nequazioni mediante l’hamiltoniana H:

p = −∂H∂q

q =∂H∂p

La formulazione Hamiltoniana e equivalente alla formulazione newtonia-na (stessa informazione); pertanto, note le condizioni iniziali q(0), p(0) altempo t = 0, le eq. di Hamilton predicono il passato e il futuro del sistemacon certezza.

Hic sunt leones: per un sistema macroscopico il numero di particelle, Ne dell’ordine del numero di Avogadro

N ∼ 1024; (3.8)

di conseguenza abbiamo 6∗1024 condizioni iniziali ed un numero equivalentedi eq. diff. del prim’ordine da risolvere.

Nella complessita di questo problema, risiede l’origine della fisica stati-stica.

3.2 Lo spazio delle fasi

E’ conveniente visualizzare un sistema dinamico come un punto nello spazioa 6N dimensioni di tutte le posizioni e i momenti (q, p) delle N particelle.

Rinunciando all’utilizzo di condizioni iniziali precise (sconosciute), lafisica statistica descrive il sistema mediante una distribuzione di probabilitasullo spazio delle fasi, che indichiamo con ρ(q, p) al tempo t = 0. Anticipiamoche le equazioni di Hamilton equations implicano la conservazione, ad ogniistante, di questa distribuzione iniziale (Teorema di Liouville).

Il primo passo dunque e la determinazione di ρ.

Page 20: Giuseppe Boccignone 12 maggio 2010

20CAPITOLO 3. MCMC: BREVI RICHIAMI DI MECCANICA STATISTICA

Figura 3.1: Due traiettorie nello spazio delle fasi

3.3 Distribuzione di Maxwell-Boltzmann-Gibbs

Tra le varie forme di ρ ci concentreremo sulla distribuzione canonica.Assumiamo che il sistema non sia isolato ma in equilibrio termico con

una riserva o bagno di calore a temeperatura costante T . Statisticamentequest’assunzione e equivalente a richiedere che l’energia media delle molecolesia costante.

Ciascuma particella ha momento e posizione definite. Suddividiamo lospazio delle fasi in m cellette (a 6 dimensioni) di uguale volume. Si assu-ma inoltre che le cellette siano abbastanza piccole in modo che l’energia inciascuna cella sia pressoche costante (a meno di fluttuazioni) Sia Ej l’ener-gia nella j-sima cella. Ciascuna cella, benche piccola contiene un numeroabbastanza elevato di particelle considerate le dimensioni atomiche (∼ 10−8

cm), il numero elevato di particelle N , e la liscezza delle superfici di energia.Questa suddivisione conduce ad una discretizzazione dello spazio delle fasiin mN celle di uguale dimensione. Lo stato del sistema s e specificato come,

s ∈ {1, 2, . . . ,m}N (3.9)

e indica a quale cella appartiene ciascuna particella.Se queste sono identiche e indistinguibili, le possibili permutazioni delle

molecole con un certo indice di cella non hanno conseguenze fisiche Cio che

Page 21: Giuseppe Boccignone 12 maggio 2010

3.3. DISTRIBUZIONE DI MAXWELL-BOLTZMANN-GIBBS 21

(a) (b) (c)

Figura 3.2: Esempio di traiettorie nello spazio delle fasi: (a) un sistemache oscilla intorno a una configurazione di equilibrio stabile; (b) rappresen-tazione del moto del sistema nello spazio delle fasi (in assenza di attrito);(c) traiettoria in presenza di attrito

conta e quante molecole sono in una certa cella. Pertanto l’insieme deglistati realizzabili e distinguibili e molto inferiore a mN , nella fattispecie,

(N +m− 1)!N !(m− 1)!

(3.10)

corrispondente al numero di modi di configurare N nelle m celle. Ci sono,

N !n1!n2! . . . nm!

(3.11)

modi di disporre le N molecule nelle m celle in maniera tale che n1 sianonella cella j = 1, n2 nella cella j = 2, ecc.

Se si assume a priori che le molecole abbiano la stessa probabilita dicollocarsi in qualunque cella, allora il numero di disposizioni puo esserericondotto alla probabilita dello stato s = (n1, . . . , nm),

P =N !

n1!n2! . . . nm!× cost (3.12)

La distribuzione piu probabile delle molecole fra le celle si puo ricavaremediante una massimizzazione vincolata di P dove i vincoli formalizzano lanostra conoscenza del sistema.

Se l’unico parametro noto e la temperatura T , massimizziamo P sottoil vincolo she l’energia media sia fissata a kT , dove k e la costante di Bol-tzmann, una costante fenomenologica utile per convertire le unita di misurada ergs (energia) a gradi (temperatura),

Page 22: Giuseppe Boccignone 12 maggio 2010

22CAPITOLO 3. MCMC: BREVI RICHIAMI DI MECCANICA STATISTICA

k = 1.380× 10−14erg/gradi (3.13)

Per N e nj grandi utilizziamo l’approssimazione di Stirling,

log n! ∼ n log n− n (3.14)

per ottenere,

logP = N logN −∑j

(nj log nj − nj) + cost

= −N∑j

pj log pj + cost

dove,

pj =njN. (3.15)

Pertanto, P e la probabilita di osservare la probabilia (p1, . . . , pm) (un apriori)

P ∝ e−NPj pj log pj (3.16)

E’ noto anche come a priori entropico (per il termine, −∑

j pj log pj ).Se assumiamo che pj siano delle densita di probabilita, la distribuzione

a priori piu probabile si ottiene risolvendo,

maxs.t.−∑j

pj log pj∑j

pj = 1

∑j

pjEj = kT

Usando i moltiplicatori Lagrange per trattare i vincoli, massimizziamo

L =∑j

pj log pj − α−∑j

pj − β∑j

pjEj (3.17)

Derivando,

Page 23: Giuseppe Boccignone 12 maggio 2010

3.3. DISTRIBUZIONE DI MAXWELL-BOLTZMANN-GIBBS 23

∂L∂pi

= 0⇒ log pi − 1− βEi − α = 0 (3.18)

da cui,

pi =1Ze−βEi (3.19)

dove la costante di normalizzazione,

Z =∑i

e−βEi (3.20)

e detta funzione di partizione. Per soddisfare il vincolo di energia mediacostante, ∑

iEie−βEi∑

i e−βEi

≈∫ ∞

0Eβe−βEdE = kT. (3.21)

Poiche l’integrale la media della distribuzione esponenziale, si ottiene larelazione

β =1kT

. (3.22)

Page 24: Giuseppe Boccignone 12 maggio 2010

24CAPITOLO 3. MCMC: BREVI RICHIAMI DI MECCANICA STATISTICA

Page 25: Giuseppe Boccignone 12 maggio 2010

Capitolo 4

L’algoritmo di Metropolis

4.1 Formulazione originale (1953)

L’idea originale e quella di simulare l’evoluzione di un sistema in un bagnodi calore verso l’equilibrio termico. Dallo stato i di energia Ei, si genera unnuovo stato j di energia Ej mediante una piccola perturbazione, applicataper esempio alle coordinate di posizione di una delle particelle. Se lo statoproposto j ha un’ energia minore dello stato i allora j viene accettato toutcourt, altrimenti viene accettato con probabilita

Aij(T ) = exp(−(Ej − Ei)/kT ) (4.1)

dove T e la temperatura del bagno di calore.Dopo un certo numero (sufficientemente grande) di iterazioni ci si aspet-

ta che l’algoritmo visiti stati di energia differente secondo la distribuzionecanonica. Cio e giustificabile rigorosamente mostrando che la sequenza distati visitata, forma una catena di Markov (Markov Chain, MC) ergodica ela distribuzione canonica e la distribuzione stazionaria della catena.

Richiamiamo brevemente alcuni concetti sulle MC. Sia,

Xt = stato del sistema al tempo t (4.2)

Le probabilitdi transizione per un passo di Metropolis sono,

pij(T ) = P [Xt+1 = j|Xt = i] ={Gij(T )Aij(T ) if i 6= j1−

∑k 6=j pij(T ) if i = j

(4.3)

where,

25

Page 26: Giuseppe Boccignone 12 maggio 2010

26 CAPITOLO 4. L’ALGORITMO DI METROPOLIS

Gij(T ) = prob. di generare j da iAij(T ) = prob. accettare j da i

Le probabilita di accettazione per Metropolis sono,

Aij(T ) = exp(−(Ej − Ei)+/kT ) (4.4)

where,

x+ ={x se x > 00 altrimenti

(4.5)

Qualsiasi distribuzione π sull’insieme degli stati che soddisfi la condizione direversibilita detta di bilancio dettagliato,

pijπi = pjiπj (4.6)

e una distribuzione stazionaria per la MC con probabilita di transizione pijcome si puo vedere sommando su j nell’eq. precedente,

P [Xt = j] = πi =∑j

pijπi

=∑j

pjiπi = P [Xt+1 = j]

Quando le G sono simmetriche ,

Gij(T ) = Gji(T ) (4.7)

abbiamo un bilancio dettagliato con,

πi =1Z

exp(−Ei/kT ) (4.8)

ovvero la distribuzione canonica.Questo e vero per i = j; per i 6= j con Ei < Ej il bilancio dettagliato si

riduce all’identita,

exp(−(Ej − Ei)/kT ) exp(−Ei/kT ) = exp(−Ej/kT ); (4.9)

Il caso che inverte i con j, e ovviamente vero.Si noti che questo non dimostra che la catena e ergodica, e cioe che la

distribuzione di Xt converge alla distribuzione canonica.

Page 27: Giuseppe Boccignone 12 maggio 2010

4.2. SIMULATED ANNEALING 27

4.2 Simulated Annealing

L’ Annealing e un processo fisico utilizzato per eliminare fratture e impuritada un solido: si riscalda il solido fino alla fusione poi si riduce lentamentela temperatura per consentire la redisposizione delle particelle nello stato diminima energia.

Puo essere utile pensare l’annealing come un modo di utilizzare la naturaper risolvere un difficile problema di minimizzazione. Puo essere simulatodall’algoritmo di Metropolis utilizzando una sequenza decrescente di tem-perature e convergente a 0. Se si esegue Metropolis per ciascun valore ditemperatura e per un tempo sufficientemente lungo che consente di raggiun-gere la distribuzione canonica, allora nel limite T → 0 il sistema the systemsi trovera nello stato i con probabilita,

limT→0

πi(T ) = limT→0

exp{−Ei/kT}∑j exp{−Ej/kT}

= limT→0

exp{E∗−EikT

}∑

j exp{E∗−EikT

}dove,

E∗ = miniEi = Min. globale di energia (4.10)

Si noti che gli esponenti sono sempre o zero o negativi; nel limite T → 0, itermini con esponenti negativi si annullano ,

limT→0

πi(T ) ={

1N∗ if Ei = E∗

0 otherwise(4.11)

dove,

N∗ = |{i : Ei = E∗}| (4.12)

Pertanto, limT→0 πi(T ) e uniformemente distribuita su un insieme di statidi energia minima.

Il Simulated annealing e uno dei pochi algoritmi che in teoria assicurinola convergenza ad un minimo assoluto , in pratica la performance dipendedalla schedulazione della procedura di raffreddamento (cooling schedule), edal criterio di fermata.

Page 28: Giuseppe Boccignone 12 maggio 2010

28 CAPITOLO 4. L’ALGORITMO DI METROPOLIS

Page 29: Giuseppe Boccignone 12 maggio 2010

Capitolo 5

Da Metropolis all’inferenzastatistica.

5.1 Connessioni con la statistica

Per campionare da un v.a X ∈ Rp con pdf P (x) si riformula quest’ultima co-me una distribuzione canonica scegliendo T e Z(T ) e si definisce la funzioneenergia

E(x) = −T log P (x)− T log Z(T ) (5.1)

tale che,

P (x) =1

Z(T )exp

{−E(x)

T

}(5.2)

Normalmente conosciamo P (x) a meno di una costante indipendente da x,i.e.

P (x) =1cp(x) con c =

∫p(x)dx (5.3)

Si assume che p(x) sia nota e computabile, ma c potrebbe non essere deter-minata. Intal caso si pone T = 1 e,

E(x) = − log p(x) (5.4)

Cio e sufficiente per campionare da P (x). Per calcolare la moda di P (x),si puo piu semplicemente usare tale energia con un qualunque valore di T .

29

Page 30: Giuseppe Boccignone 12 maggio 2010

30 CAPITOLO 5. DA METROPOLIS ALL’INFERENZA STATISTICA.

5.1.1 Metropolis con distribuzione di proposta simmetrica

L’algoritmo base genera un sequenza stocastica di stati, a partire da x0, ela seguente regola dinamica per passare dall stato x a y:

1. Propone un candidato ya partire da Q(y|x) che potrebbe dipendere dax. Q(y|x) e simmetrica in x and y, i.e.,

Q(y|x) = Q(x|y) (5.5)

La generazione del candidato si puo implementare come

y = x+ ε (5.6)

dove ε e un vettore aleatorio simmetrico radialmente rispetto a 0.Possibili scelte per la disribuzione di ε sono distribuzioni di Cauchy,Gaussiane, o T con pochi gradi di liberta.

2. se y usa meno energia dello stato corrente x si accetta con probabilita 1.Altrimenti si accetta con una probabilita esponenzialmente decrescentenella differenza di energia; formalmente;

α(x, y) = exp{−(E(y)− E(x))+

T

}= min{1, P (y)

P (x)} (5.7)

Algoritmo di Metropolis

{X0 ← x0 (arbitrario)for t = 0, 1, 2, . . .

{y ∼ Q(·|xt)u ∼ Unif(0, 1)if u ≤ min{1, P (y)/P (xt)} then Xt+1 ← yelse Xt+1 ← xt}

}

Page 31: Giuseppe Boccignone 12 maggio 2010

5.1. CONNESSIONI CON LA STATISTICA 31

Esempio MATLAB

Si assuma di voler campionare da una densita’ di Cauchy non normalizzata

y =1

1 + x2,

implementabile in Matlab mediante la funzione:

function y = cauchy( x )

%% Ritorna la densita’ non normalizzata della distribuzione di Cauchy

y = 1 ./ (1 + x.^2)

L’implementazione dell’algoritmo di Metropolis e realizzabile con il se-guente codice:

T = 500; % Numero massimo di iterazioni

sigma = 1; % Deviazione standard della Q(x)= Normal(x | mu, sigma)

xmin = -30; xmax = 30; % range per i valori iniziali di x

x = zeros( 1 , T ); % Buffer per i campioni

seed=1; rand( ’state’ , seed ); randn(’state’,seed ); % fissa il random seed

x(1) = unifrnd( xmin , xmax ); % genera i valori di partenza

%% Inizia campionamento

t = 1;

while t < T % Itera fino a T campioni

t = t + 1;

% Propone un nuovo valore per x usando Q(x)=Normale

x_star = normrnd( x(t-1) , sigma );

% Calcola l’acceptance ratio

alpha = min( [ 1 cauchy( x_star ) / cauchy( x(t-1) ) ] );

% Campiona da Unif[ 0 1 ]

u = rand;

% Accettare la proposta?

if u < alpha

x(t) = x_star; % SI: setta il nuovo stato

else

x(t) = x(t-1); % NO: usa il vecchio stato

end

end

%% Mostra l’istogramma dei campioni

figure( 1 ); clf;

subplot( 3,1,1 );

nbins = 200;

xbins = linspace( xmin , xmax , nbins );

counts = hist( x , xbins );

bar( xbins , counts/sum(counts) , ’k’ );

xlim( [ xmin xmax ] );

xlabel( ’x’ ); ylabel( ’p(x)’ );

%% Sovrappone la densita’ teorica

y = cauchy( xbins );

hold on;

plot( xbins , y/sum(y) , ’r--’ , ’LineWidth’ , 3 );

set( gca , ’YTick’ , [] );

%% Mostra la storia dei campioni

Page 32: Giuseppe Boccignone 12 maggio 2010

32 CAPITOLO 5. DA METROPOLIS ALL’INFERENZA STATISTICA.

subplot( 3,1,2:3 );

stairs( x , 1:T , ’k-’ );

ylabel( ’t’ ); xlabel( ’x’ );

set( gca , ’YDir’ , ’reverse’ );

xlim( [ xmin xmax ] );

Un risultato della simulazione e mostrato in Figura 5.1.

Figura 5.1: Campionamento da una distribuzione di Cauchy usando il me-todo di Metropolis. La figura in alto mostra l’istogramma dei campioni (500)con sovrapposta la densita teorica; la figura in basso, mostra la sequenza dicampioni in una catena

5.1.2 Metropolis-Hastings

Una semplice riscrittura della probabilita di accettazione (Eq. 5.7), con-sente l’uso di una distribuzione non simmetrica, mantenendo le propreta dibilancio :

Page 33: Giuseppe Boccignone 12 maggio 2010

5.1. CONNESSIONI CON LA STATISTICA 33

α(x, y) = min{

1,Q(x|y)P (y)Q(y|x)P (x)

}(5.8)

Infatti per quanto attiene alla propieti. bilancio :

P (y|x)P (x) = P (x|y)P (y)per tutti x, y (5.9)

quando x = y vera banalmente; per x 6= y l’unico modo per arrivare a y eaccettrlo come candidato. Cio implica

α(x, y)Q(y|x)P (x) = α(y, x)Q(x|y)P (y) (5.10)

ovvero,

min{

1,Q(x|y)P (y)Q(y|x)P (x)

}Q(y|x)P (x) = min

{1,Q(y|x)P (x)Q(x|y)P (y)

}Q(x|y)P (y)

(5.11)che e vera, quando il min. a sinistra vale 1, il min. sull’altro termine

non vale 1 e il termine a denominatore si cancella con quello fuori parentesiIl bilancio dettagliato assicura che p e stazionaria per la catena, ma non

e condizione necessaria. Per la stazionarieta e sufficiente che

P (x) =∫P (x|y)P (y)dy (5.12)

i.e., che p sia il punto fisso dell’operatore T , definito dal kernel di transizione,

T : P (·)→∫P (·|y)P (y)dy (5.13)

Questo pero non e sufficiente per garantire che la catena campioni glistati dalla densita P , ma assicura che se a qualche istante t la densita diXt e P allora rimarra P ai tempi successivi giacche la dinamica di Xt+1 eT P = P . Dal teorema di punto fisso dell’analisi funzionale sappiamo chese le P appartengono a uno spazio metrico completo con metrica d, e T econtrattivo,

d(T P, T Q) ≤ λd(P,Q) con λ < 1 (5.14)

allora le iterazioni P0, T (P0), T (T (P0)), . . . converge geometricamentenella metrica dello spazio all’unico punto fisso per T , posto che la P0 inizialenon sia troppo distante dal punto fisso.

Page 34: Giuseppe Boccignone 12 maggio 2010

34 CAPITOLO 5. DA METROPOLIS ALL’INFERENZA STATISTICA.

La MC avra dunque il punto fisso quale distribuzione a lungo termine Inrealta tali condizioni sono eccessivamente restrittive: dietro a condizioni diregolarita del kernel piu rilassate . (e.g. T contrattivo in media) un’ampiaclasse di MC avrcomportamento ergodico.

5.1.3 Metropolis per componenti

Quando la dimensionalita di X e grande, e piu efficiente raggruppare lecoordinate diX e utilizzare distribuzioni di prova che aggioornano un gruppodi coordinate per volta.

Sia I = {1, 2, . . . , p} l’insieme di indici delle coordinate di x. Scriviamo,

x = {x1, x2, . . . , xp} ≡ xI (5.15)

Se J ⊂ I, denotiamo con x−J l’insieme di coordinate non appartenentia J , i.e. x−J = xI\J . Inoltre, sia I1, I2, . . . , Im una partizione di I tale chex sia separato in m gruppi,

x = {xI1 , . . . , xIm} (5.16)

Si inizi Metropolis-Hastings da qualche parte e si supponga che al tempot si visiti lo stato x, allora al tempo t+ 1 possiamo rimanere in x o passarea y modificando solo una delle m componenti di x, i.e.,

xt+1 = y = {x−Ik , yIk} per qualche k (5.17)

Il valore di k puo essere scelto in modo casuale tra {1, 2, . . . ,m} oppurein modo ciclico, nel qual caso per avere una catena omogenea si consideraconclusa un’iterazione dopo aver visitato tutte le m componenti. La sceltarandom delle componenti elimina questo problema, ma nel tempo alcunedi esse potrebbero risultare trascurate Una soluzione intermedia e la ran-domizzazione dell’ordine e l’aggiornamento delle componenti nel medesimoordine.

In ogni caso la probabilita di accettazione e quella classica di Metropolis-Hastings ma quando x differisce da y nella k-sima componente abbiamoche,

min{

1,Q(x|y)P (y)Q(y|x)P (x)

}= min

{1,Qk(xIk |yIk , x−Ik)P (yIk |x−Ik)Qk(yIk |xIk , x−Ik)P (xIk |x−Ik)

}(5.18)

dove Qk e la funzione di prova q per aggiornare k e il rapporto P (y)/P (x)scritto come il rapporto delle condizionali, dove,

Page 35: Giuseppe Boccignone 12 maggio 2010

5.1. CONNESSIONI CON LA STATISTICA 35

P (xIk |x−Ik) =P (xIk , x−Ik)∫P (yIk , x−Ik)dyIk

(5.19)

Da quest’ultima si vede che la MC associata alla sequenza di aggiorna-menti della componente k, con tutte le altre fissate a x−Ik , ha tale condi-zionale come distribuzione stazionaria. In conclusione, tutte le componentifiniscono con il campionare dalle condizionali corrette.

5.1.4 Campionatore di Gibbs (Gibbs sampler)

Quando la distribuzione condizionale per la k-sima componente di x e uti-lizzata tout court come distribuzione di prova abbiamo il Gibbs Sampler(GS):

Qk(yIk |xIk , x−Ik) = p(yIk |x−Ik) (5.20)

In tal caso la probabilita di accettazione e uguale a 1 e il GS accettatutte le mosse. Dunque GS e un caso speciale di Metropolis. Una formu-lazione intuitivadel GS: per campionare da una distribuzione congiunta, esufficiente campionare in maniera ripetuta da ciascuna delle condizionaliunidimensionali.

Campionatore di Gibbs

{X0 ← x0 (arbitrario)for t = 0, 1, 2, . . .

{k ∼ Unif{1, 2, . . . , p}yk ∼ P (xk|x−{k}t )Xt+1 ← {yk, x−{k}t } }

}

Page 36: Giuseppe Boccignone 12 maggio 2010

36 CAPITOLO 5. DA METROPOLIS ALL’INFERENZA STATISTICA.

Figura 5.2: Comportamento del campionatore di Gibbs (da MacKay (1))

Page 37: Giuseppe Boccignone 12 maggio 2010

Capitolo 6

Monte Carlo ibrido

6.1 Momenti come variabili ausiliarie

Ricordiamo che per campionare dalla distribuzione

P (x) =1Z

exp{−(− logP (x))} (6.1)

utilizziamo Metropolis algorithm con funzione energia − logP (x).Possiamo interpretare le x ∈ Rn come variabili di posizione q = (q1, . . . , qn)

in maniera tale che la log-likelihood giochi il ruolo di un’energia potenziale.Introduciamo come variabili ausiliarie i momenti p = (p1, . . . , pn), i.i.d.

secondo una distribuzione Gaussiana standardizzata. Possiamo cosı aggiun-gere un termine di energia cinetica all’energia potenziale per costruire unafunzione Hamiltoniana (energia totale) relativa a uno spazio delle fasi fittizio,

H(q, p) = − logP (q) +12

∑i

p2i (6.2)

con distribuzione canonica

π(q, p) =1ZH

exp{−H(q, p)} (6.3)

da cui possiamo campionare sfruttando una combinazione di Gibbs e Me-tropolis. Al termine del campionamento, scartiamo le variabili ausiliariemantenendo le variabili di posizione che per costruzione sono generate dalladistribuzione marginale corretta, cioe p(q).

Il costo dell’ampliamento dello spazio di campionamento e ripagato dalbeneficio di un’esplorazione piu efficiente di ampie regioni dello spazio delle

37

Page 38: Giuseppe Boccignone 12 maggio 2010

38 CAPITOLO 6. MONTE CARLO IBRIDO

fasi mediante la simulazione di una dinamica Hamiltoniana in un tempofittizio. E’ infatti possibile proporre degli spostamenti distanti dallo statocorrente, ancorche accettabili in termini probabilistici.

La validita del Monte Carlo Ibrido (Hybrid Monte Carlo, HMC) trovaragione in tre proprita della dinamica hamiltoniana:

1. Reversibilita temporale: t→ −t, p→ −p.

2. Conservazione dell’energia: , H(q, p) e costante nel tempo.

3. Teorema di Liouville: i volumi si conservano nello spazio delle fasi.

6.2 Dinamica hamiltoniana in un tempo fittizio

Sia τ il tempo fittizio nel corso del quale un sistema evolve secondo le equa-zioni di Hamilton, che scriviamo per componenti, e utilizzando l’Hamilto-niana prima definita:

dqidτ

= qi =∂H∂pi

= pi (6.4)

dpidτ

= pi = −∂H∂qi

=∂ logP (q)

∂qi(6.5)

Si noti che in questa legge dinamica il campo di forze e specificato intermini di una funzione obiettivo le derivate log-likelihood. logP (q)

6.2.1 Reversibilita temporale

Il sistema in Eq. 6.4 e invariante per la trasformazione

τ → −τ = τ ′

p → −p = p′

q → q = q′

Infatti:

H′(q′, p′) = − log f(q′) +12

∑i

(p′i)2

= − logP (q) +12

∑i

pi2

= H(q, p)

Page 39: Giuseppe Boccignone 12 maggio 2010

6.2. DINAMICA HAMILTONIANA IN UN TEMPO FITTIZIO 39

e le equazioni sono identiche,

dq′

dτ ′=∂H′

∂p′←→ −dq

dτ= −∂H

∂p

dp′

dτ ′= −∂H

∂q′←→ −dp

dτ=∂H∂q

(Le equazioni della meccanica classica sono cieche rispetto alla direzione deltempo).

6.2.2 Conservazione dell’energia

Mediante le equazioni di Hamilton possiamo calcolare la derivata temporaledi qualsiasi funzione F (q, p)definita sullo spazioe delle fasi. Derivando acatena,

d

dτF (q, p) =

∂F

∂qq +

∂F

∂pp (6.6)

Usando le equazioni di Hamilton:

d

dτF (q, p) =

∂F

∂q

∂H∂p− ∂F

∂p

∂H∂q≡ {H, F} (6.7)

dove {H, F} sono le classiche parentesi di Poisson. In buona sostanzala d

dτ F (q, p) e computabile calcolando le parentesi di Poisson di F conl’Hamiltoniana del sistema H. Se F = H

d

dτH(q, p) = 0 (6.8)

ovvero l’energia totale H si conserva nel tempo.

6.2.3 Teorema di Liouville

Si consideri un volumetto v nello spazio delle fasi: ciascun punto nell’ele-mento v rappresenta un sistema con la stessa Hamiltoniana ma con diffe-renti condizioni iniziali. I sistemi (punti) evolvono nel tempo obbedendoalle equazioni di Hamilton. Dopo un certo tempo, i punti saranno soggettiad una dispersione/diffusione: tuttavia il volume che racchiude l’insieme dipunti considerato rester costante nel tempo. Questa e in sintesi il Teoremadi Liouville.

Piu formalmente, si consideri un tempo arbitrario τ0 e una regione ar-bitraria nello spazio delle fasi, D0. Sia assuma, senza perdere in generalita

Page 40: Giuseppe Boccignone 12 maggio 2010

40 CAPITOLO 6. MONTE CARLO IBRIDO

τ0 = 0 . Sia D(τ) la regione al tempo τ occupata dagli stessi punti che eranoinizialmente in D(0) = D0 (Fig. 6.1

Figura 6.1: Conservazione delle traiettorie nello spazio delle fasi

Il volume di D(τ)es,

v(τ) =∫D(τ)

dq′dp′ =∫D(0)

det(I + τM)dqdp+O(τ) (6.9)

dove e stato utilizzato il cambiamento di variabili,

q′ = q + τ q + o(τ)p′ = p+ τ p+ o(τ)

La matrice M ie la parte dello Jacobiano con derivate q and p. Si ha che

det(I + τM) = 1 + τTrM + o(τ) (6.10)

dove Tr e la traccia, che mediante le Eq. di Hamilton puo essere scrittacome,

TrM =∂q

∂q+∂p

∂p=

∂q

(∂H

∂p

)− ∂

∂p

(∂H

∂q

)= 0 (6.11)

dove si e assunto che le derivate parziali del secon’ordine siano continue peravere derivate parziali miste identiche. Allora,

v(τ) =∫D(0)

(1 + 0)dqdp+ o(τ) = v(0) + o(τ) (6.12)

Page 41: Giuseppe Boccignone 12 maggio 2010

6.2. DINAMICA HAMILTONIANA IN UN TEMPO FITTIZIO 41

da cui,

d

dτv(τ)

∣∣∣∣0

= 0 (6.13)

Poiche τ0 = 0 e arbitrario, la relazione vale in qualunque istante, percui ilvolume si conserva.

6.2.4 Discretizzazione Leapfrog

Per simulare la dinamica Hamiltoniana, discretizziamo le equazioni di moto.La discretizzazione deve essere effettuata in maniera tale da non introdur-re errori che comprometterebbero la reversibilita temporale., richiesta daMetropolis. Un schema che gode di questa proprieta e la discretizzazioneleapfrog. Un’iterazione dello schema leapfrog aggiorna le coordinate qi, pi intre tempi.

Per iniziare viene effettuato un mezzo passo per aggiornare pi,

pi(τ + ε/2) = pi(τ)− ε

2∂ logP∂qi

(q(τ)); (6.14)

poi viene compiuto un passo intero per aggiornare le posizioni,

qi(τ + ε) = qi(τ) + εpi(τ + ε/2); (6.15)

infine, un secondo mezzo passo per i momenti,

pi(τ + ε) = pi(τ + ε/2)− ε

2∂ logP∂qi

(q(τ + ε)) (6.16)

Al termine dell’iterazione si ottiene un’approssimazione di qi, pi al tempoτ + ε partendo da τ . la discretizzazione leapfrog gode dunque delleseguentiproprieta

1. Preserva H, a meno di fattori trascurabili (dell’ordine di O(ε2)).

2. Conserva i volumi, poiche le trasformazioni effettuate sono solo defor-mazioni.

3. E’ reversibile.

Page 42: Giuseppe Boccignone 12 maggio 2010

42 CAPITOLO 6. MONTE CARLO IBRIDO

6.3 Hybrid Monte Carlo

HMC e sostanzialmente un Metropolis eseguito nello spazio delle fasi

1. Si sceglie una direzione casuale del tempo, i.e., con probabilita 1/2 persimulare una dinamica in avanti o all’indietro.

2. dato lo stato corrente (q, p) = (q(0), p(0)) di energia H, si eseguonoun numero casuale L di iterazioni dello schema leapfrog con passodi discretizzazione ε casuale, nella direzione casuale scelta al passoprecedente. Questo produce uno stato candidato (q′, p′) di energia H′.

Lo stato proposto viene accettato con la regola di Metropolis,

min{1, exp[−(H′ −H)]} (6.17)

La probabilita di accettazione puo essere resa arbitrariamente prossima a1, diminuendo ε. In pratica la discretizzazione introduce un piccolo erroreH′ −H.

6.3.1 Perche HMC funziona

La ragione del suo funzionamento risiede nella simmetria del procedimento.Si consideri la probabilitdi proporre una nuova regione D′ posto che lo statocorrente e situato in una piccola regione D di volume dv nello spazio dellefasi. Poiche la dinamica simulata e invariante per inversione temporale econserva i volumi, D′ avra anch’esso volumedv e la probabilita di raggingereD partendo da D′ e la stessa di quella che si ha nel passaggio D′ → D.

Il beneficio di seguire una traiettoria nello spazio delle fasi consiste nelpoter esplorare velocemente regioni che sono lontane dallo stato corrente,riducendo dunque il cammino erratico della catena di Markov, pur mante-nendo un basso tasso di rigetto delle mosse proposte. La possibilita divisi-tare regioni lontane aumenta ovviamente l’accuratezza con cui si campionala distribuzione iniziale.

Page 43: Giuseppe Boccignone 12 maggio 2010

Bibliografia

[1] D.J.C. MacKay, Information Theory, Inference and LearningAlgorithms, Cambridge University Press, Cambridge, UK, 2002.

43