monte carlo. metodi stocastici o metodi monte carlo qualunque metodo che usa numeri casuali. dal...
Post on 01-May-2015
223 Views
Preview:
TRANSCRIPT
Monte Carlo
Metodi stocastici o metodi Monte Carlo
Qualunque metodo che usa numeri casuali.
Dal greco stochasticos: aleatorio, dovuto al caso.
Il carattere stocastico deriva dall’uso di numeri casuali.
Origine del nome
Metropolis coniò il nome “Monte Carlo” dal casinò
Monte Carlo, Monaco
Metropolis, Rosenbluth, Ulam, Fermi, Von Neumann Metropolis, Rosenbluth, Ulam, Fermi, Von Neumann
((~~1945)1945)
Nicholas Metropolis (1915-1999)
L’algoritmo di Metropolis (e A Rosenbluth, M Rosenbluth, A Teller e E Teller, 1953) è stato citato tra i primi 10 algoritmi che hanno avuto “la più grande influenza sullo sviluppo e la pratica della scienza e dell’ingegneria nel ventesimo secolo."
Ago di Buffon
Georges-Louis LeclercConte di Buffon (1707-1788)
Ago di lunghezza =1Distanza linee = 1Lancio casuale pincrocio = 2/ Stima di dalla proporzione di aghi che incrociano una linea.
2
5.0
sin5.00
sin5.0
d
p nx
Si ha incrocio se la distanza dal centro dell’ago ad una linea è < 0.5 sin
I metodi Monte Carlo forniscono soluzioni approssimate ad una gamma di problemi chimici, fisici e matematici mediante esperimenti di campionamento statistico su un calcolatore.
I metodi si applicano a problemi con intrinseca struttura probabilistica (diffusione
di neutroni all’interno di un materiale) a problemi intrinsecamente deterministici, ma che si possono
formulare in termini di distribuzioni di probabilità.
Fra tutti i metodi numerici che dipendono dalla valutazione di N-punti in uno spazio M-dimensionale per produrre una soluzione approssimata, il metodo Monte Carlo ha un errore assoluto della stima che decresce come N-1/2, mentre tutti gli altri hanno errori che decrescono al più come N-1/M.
Scienza Studio della conformazione di molecole complesseSimulazione dei liquidiSimulazione dell’equazione di SchröödingerDisegno di reattori nucleariApplicazioni mediche: trasporto di elettroni, neutroni,
fotoni attraverso il corpoEvoluzione delle stelleProspezioni petrolifereFlusso del traffico
EconomiaPrevisioni Dow-Jones
Sociologia
Numeri casuali
• Un singolo numero non è casuale, solo una sequenza infinita può essere descritta come casuale.
• Casuale significa assenza di ordine.
• Numeri veramente casuali: risultati di un processo fisico.
• Numeri pseudo-casuali: sequenza deterministica, appaiono casuali se non si conosce l’algoritmo con cui sono generati.
Anyone who consider arithmetical methods of producing random digits is, of course, in a state of sin.
John Von Neumann
Matematicamente, la sequenza di numeri casuali dovrebbe possedere le seguenti proprietà:• Sequenze non correlate - Le sequenze di numeri
casuali non dovrebbero essere correlate serialmente. Qualsiasi sequenza parziale di numeri casuali non dovrebbe essere correlata con qualsiasi altra sequenza parziale.
Per esempio, se stiamo usando un generatore di numeri casuali per generare traiettorie di uscita di molecole da un foro per riempire lo spazio emisferico sovrastante, non dovremmo generare uno schema ordinato (anche solo parzialmente).
Generatori di numeri casuali
• Periodo lungo – Il generatore dovrebbe avere un periodo lungo (in teoria non dovrebbe ripetersi; in pratica, la ripetizione dovrebbe avvenire solo dopo la generazione di un numero molto grande di numeri casuali).
• Uniformità - La sequenza di numeri casuali dovrebbe essere uniforme. Cioè frazioni uguali di numeri casuali dovrebbero cadere in ”aree" uguali dello spazio.
Per esempio volendo generare numeri casuali nell’intervallo [0, 1], non vorremmo trovarne più di metà in [0, 0.5], preso un campione sufficientemente grande.
• Efficienza – Il generatore dovrebbe essere efficiente.
Generatori moltiplicativi, lineari, congruenziali
I più comunemente usati per generare interi casuali
),(
)( 1
MBAmod
o
MmoduloBA
ii
ii
""semeo
19
481
5
)2,(
praticain
M
Mmod ii )(
realea interoda
Mfloati
i
Esempio: calcolo di un integrale
Ad ogni coppia di numeri casuali 1 2 con distribuzione uniforme nell’intervallo 0-1 associamo un punto.Se 1 > 2 punto entro il triangolo.
Punti dentro / punti totali = 1/2
1
0 2
1xdxI
Esempio: calcolo di
r = 1
r = 1
Area settore circolare = 1/4 r2
Area quadrato = r2
Rapporto aree = /4
Ad ogni coppia di numeri casuali 1 2 con distribuzione uniforme nell’intervallo 0-1 associamo un punto.Se 1
2 +22 1 punto entro il
cerchio.Punti dentro / punti totali = /4
Esempio: calcolo di un integraleVogliamo integrare una funzione con un picco pronunciato usando numeri casuali con distribuzione uniforme. I punti nella coda della funzione danno contributi piccoli.
Convergenza scarsa
2.05
0
5 dxeI x
Campionamento per importanzaPossiamo riscrivere l’integrale come integrale “pesato”
dove p(x) è una funzione peso.
Il campionamento uniforme usa una p(x) costante.
Data una generica p(x), campioniamo di più le regioni in cui p(x) è grande.
Se siamo in grado di campionare secondo la distribuzione p(x)
dxxpxgdxxpxp
xfdxxfI )()()(
)(
)()(
N
iixg
NI
1
)(1
DUE ALTERNATIVE
1. Integrando originale e punti distribuiti uniformemente
efficienza molto scarsa.
2. Integrando modificato, ma punti distribuiti secondo una funzione densità di probabilità opportuna, legata al problema.
La chiave dei metodi MC è la nozione di CAMPIONAMENTO CASUALE di una distribuzione
Data una densità di probabilità, f(x), produrre una sequenza casuale di x che siano distribuiti come f(x).
)(xf
x
L’uso del campionamento casuale distingue Monte Carlo da tutti gli altri metodi.
Come si produce una sequenza casuale di x distribuiti come f(x) ?
Markov
Una catena di Markov consiste di stati e di probabilità di transizione.
Le catene di Markov (cammini casuali) permettono di campionare qualsiasi distribuzione basandosi sul bilancio dettagliato e sulle regole di transizione.
Catene di Markov
Proprietà
– Una sequenza di stati scelti casualmente.
– La probabilità di transizione tra xt e xt-1 dipende solo da xt-1 (è indipendente dalla storia, non c’è memoria).
– Le probabilità di transizione sono le stesse per qualunque t.
– L’intera catena rappresenta una distribuzione di probabilità stazionaria.
1 2 1, , , ,n nx x x x
-20 -10 10 20 30 40
-40
-30
-20
-10
Scelta una probabilità di transizione P, la probabilità che il sistema sia nello stato 1 è data dap(1) = P p(0)
p(2) = P p(1) = P P p(0) ……………p(m) = Pm p(0)
Dopo un numero elevato di passi p(m+1) – p(m) 0
cioè si raggiunge una distribuzione di probabilità di equilibrio p* tale che p* = P p*
p* è una conseguenza di P
Bilancio dettagliato
Che tipo di catena di Markov genera distribuzioni stazionarie? I processi all’equilibrio hanno distribuzioni stazionarie
Quando siamo in equilibrio ? Reversibilità Il bilancio dettagliato collega probabilità stazionarie alle
transizioni:
p x x y p y y x
p(x) probabilità che il sistema si trovi nello stato x
(xy) probabilità di transizione dallo stato x allo stato y
Metropolis Monte Carlo
• Come si realizza la condizione di bilancio dettagliato?
La probabilità di transizione viene decomposta in una probabilità di campionare la transizione per la probabilità di accettare la transizione
p x x y p y y x
)()(
)()(
)(
)(
)()()()()()(
)()()(
xyTyp
yxTxp
yxA
xyA
xyAxyTypyxAyxTxp
yxAyxTyx
Non si definisce la probabilità di accettazione, ma solo un rapporto libertà di scelta.
Metropolis propose:
)()()()( xyTypyxTxp
)()(
)()(,1min)(
xyTyp
yxTxpxyA
Verifichiamo che questa scelta soddisfa la condizione di reversibilità microscopica
)()(
)()(
)(
)(
)()(
)()()(
1)(
xyTyp
yxTxp
yxA
xyA
yxTxp
xyTypyxA
xyA
Se
)()()()( xyTypyxTxp
)()(
)()(
)(
)(
1)(
)()(
)()()(
xyTyp
yxTxp
yxA
xyA
yxA
xyTyp
yxTxpxyA
Se
L’algoritmo di Metropolis
muovimuovi
rifiutorifiuto accettoaccettoRRi RRprova
RRi+1i+1==RRii RRi+1i+1==RRprovprov
aa
??
Calcola le medie
Calcolato p (la sua espressione dipende dal problema in esame)
• Se p > 1 accetta
• Se 0 < p < 1 accetta con probabilità p
preso un numero casuale
se p > accetta
se p < rifiuta
??)()(
)()(
xyTyp
yxTxpp
L’algoritmo di Metropolis
3 concetti chiave
1. Campionare mediante un cammino casuale
2. Determinare lo stato di equilibrio mediante il bilancio dettagliato
3. Ottenere il bilancio dettagliato mediante il meccanismo di accettazione/rifiuto
Il metodo MC fornisce un metodo robusto e versatile di integrazione su uno spazio a d dimensioni.
Campionamento stocastico
Errore 1 / N½
Il campionamento per importanza riduce la varianza
Il metodo di Metropolis è un metodo molto utilizzato di campionamento per importanza Soddisfa il criterio di bilancio dettagliato Si adatta facilmente a tanti problemi diversi
Analisi statistica dei risultati
Accuratezza
Precisione
DEFINIZIONI
N
iix
Nx
dxxfxxE
1
1
)()(
Varianza della popolazione
stimata della popolazione
2222 ))(()()()( xExEdxxfxEx
Media vera
stimata
N
ii
N
ii x
Nxxxxx
N2222
1
22 1 dove
1
1
La varianza è una misura della dispersione statistica.Deviazione standard: 2
Accuratezza: misura di quanto il valore medio è vicino al VALORE VERO (alla quantità fisica) che si vuole stimare.
Accuratezza : talora chiamata “errore sistematico”.
Monte Carlo non può stimare direttamente l’accuratezza.
Spazio delle fasi
Risultati delle simulazioni
Valore Vero
Valore medio - Xn
Spazio delle fasi
Risultati delle simulazioni
Valore Vero
Valore medio - Xn
Precisione : l’incertezza in Xn dovuta alle fluttuazioni statistiche dei valori xj campionati
alta accuratezzabassa precisione
bassa accuratezzaalta precisione
Valore diriferimento
accuratezza
Precisione
Problemi con il campionamento Metropolis
Le energie di questi punti sono correlate!
222 )( EEE La varianza non correlata è:
ji
ji EEN
EE ),cov(2
)()( 22
La probabilità che una mossa sia accettata è legata alla probabilità di transizione T(AB) Le energie di punti successivi sono serialmente correlate.
Mossa rifiutata
Mossa accettata
Algoritmo di Decorrelazione
x1 x2 x4x3 x5 x6 x7 x9x8 xn-3 xn-1xn-2 xnDati Originali
x1 x2 x4x3 x5 x6 x7 x9x8Dati a blocchi
•••••••••••••
Medie su blocchi dei dati originali elementi dei nuovi dati.
Se i blocchi di dati sono sufficientemente grandi, i punti dei dati a blocchi sono non correlati e si può usare l’equazione standard:
222 )( EEE
PRINCIPI
dte
n
xEXP tn 2/2
2
1
/
)(
Teorema del Limite Centrale
La distribuzione della somma di n variabili casuali indipendenti, identicamente distribuite, è gaussiana.
Distribuzione uniforme R1 + R2
R1 + R2 + R3 R1 + R2 + R3 + R4
Intervalli di confidenza
95.02)(2
68.01)(1
nn
nn
XxEXP
XxEXP
~2/3 del tempo la risposta corretta è entro una dalla media
Funzioni distribuzioni di probabilità
P(x) dx probabilità di osservare un valore nell’intervallo (x, x+dx)
0)( 1)(
xPdxxP
x può essere una variabile discreta o continua
Funzione densità di probabilità discretan eventi discreti
........1 2 n
p2
p1
pn
pi = probabilità per evento
p(x)
x
p(x) = probabilità per unità di x
Funzione densità di probabilità continua
Esempio: dimensioni multiple Quale è la media di una variabile per una distribuzione di
probabilità Ndimensionale?
Integrazione numerica
• Discretizzare ciascuna dimensione con un insieme di n punti
• Per una funzione ragionevolmente liscia, l’errore decresce come n-N/2
Monte Carlo
• Campionare m punti dello spazio
• Se possibile pesare i punti campionati basandosi sulla funzione di riferimento
• L’errore decresce come m-1/2
Parafrasando Churchill (1947) e la sua affermazione sulla democrazia.
Il metodo Monte Carlo è il peggior metodo, eccetto tutti quegli altri che sono stati provati di tanto in tanto.
VMC: Monte Carlo Variazionale
RRR
RR
RRR
R
RR
RRR
dEP
d
dH
d
dHH
L )()(
)(
)()(
)(
)(
)()(2
2
2
)(
)()(
)(
)()(
2
2
R
RR
RR
RR
HE
dP L
Riformuliamo il Principio Variazionale Riformuliamo il Principio Variazionale nel linguaggio Monte Carlo
• E è la media statistica dell’energia locale EL
• P(R) è la probabilità associata alla configurazione R• Se scegliamo i punti distribuiti secondo P(R)
)(~)(1
1
RRR PEN
HE i
N
iiL
RRR dEPHE L )()( RRR dEPHE L )()(
Ricetta: scelta una funzione d’onda di prova distribuire N punti secondo P(R) calcolare la media dell’energia locale
• Come campionare
RR
RR
dP
)(
)()(
2
2
Il calcolo dei pesi assoluti P(R) richiede il calcolo dell’integrale di normalizzazione.
L’algoritmo di Metropolis (M(RT)2 1953) implica il calcolo del rapporto P(R)/P(R’) e permette di evitare questo problema.
??
VMC: Monte Carlo Variazionale • Non è necessario calcolare analiticamente integrali:
completa libertà nella scelta della funzione d’onda di prova
r1
r2
r12
He
Non occorre fare l’approssimazione orbitale
Si possono usare funzioni d’onda esplicitamente correlate
Si possono soddisfare le condizioni di cuspide
i
rgrbrai
iiiec 1221
i
rgrbrai
iiiec 1221 E19 termini = -2.9037245(2) a.u.Eesatta = -2.90372437 a.u.
Vantaggi del metodo VMC
Si può andare al di là dell’approssimazione di Born-Oppenheimer, con qualsiasi potenziale, in qualsiasi numero di dimensioni.
molecola Ps2 (e+e+e-e-) in 2D e 3Dmolecola Ps2 (e+e+e-e-) in 2D e 3D
M+m+M-m- in funzione di M/m M+m+M-m- in funzione di M/m
222 HH
Si possono calcolare limiti inferiori
HEH 0
Primi calcoli VMC Calcolo VMC dello stato fondamentale di 4He liquido
(McMillan, 1964)
Generalizzzato a sistemi di fermioni da Ceperley, Chester e Kalos, PRB 16, 3081 (1977).
Problemi del metodo VMC
• La barra dell’errore decresce come N-1/2.• Il costo computazionale è elevato.• L’ottimizzazione di diventa difficile al crescere
del numero di parametri non lineari.• Dipende criticamente dalla qualità di .
• Esiste un altro metodo per ottenere migliori funzioni d’onda, al limite esatte.
EEquazione di Schrödinger dipendente dal tempo
La soluzione è
rifEVmt
i )(2
1 2 R
Monte Carlo diffusivo
nn
tEEin
rifnect )(),( RR
Cambio di variabile i t
Nel tempo immaginario l’equazione diventa
m
DEVD rif 2
1con )(2
R
La soluzione ora è
nn
EEn
rifnect )(),( RR
rifEVD )(2 R
Se il potenziale è nullo equazione analoga
alla seconda legge della diffusione di Fick
Se il termine diffusivo è nullo
equazione analoga all’eq. cinetica del primo ordine
Complessivamente l’eq. di Schrödinger dipendente dal tempo nel tempo immaginario è analoga all’eq. generalizzata della diffusione in presenza di pozzi e sorgenti
2D
rifEV )(R
CDC 2
kCC
kCCDt
C
2
L’equazione di Schrödinger dipendente dal tempo nel tempo immaginario è analoga all’equazione generalizzata della diffusione.
kCCDt
C
2
Evoluzione Diffusione Ramificazione
temporale
rifEVD )(2 R
CASO CLASSICO
Dinamica di
Newton
Dinamica di
LangevinEquazione della
diffusione
F = m a
Molecole che diffondono + molecole del mezzo: forze reali
Fluttuazioni
Molecole che diffondono: forze casuali
Fluttuazioni
Mezzo continuo
Comportamento medio delle molecoleNessuna fluttuazione
CASO QUANTISTICO
Monte Carlo diffusivo
Equazione di Schrödinger
Particelle fittizie che diffondono
Modello continuo
Spazio dei camminatori
X La popolazione dei camminatori è proporzionale alla soluzione (X).
come concentrazione
è interpretata come una concentrazione di particelle fittizie, dette camminatori.
L’ equazione di SchrL’ equazione di Schröödinger è simulata mediante dinger è simulata mediante un processo di diffusione, crescita e scomparsa di un processo di diffusione, crescita e scomparsa di camminatori.camminatori.
VD 2
L’analogia è solo formale.
è una quantità complessa, mentre C è reale e positiva.
Se il tempo Se il tempo tt è immaginario, allora è immaginario, allora è reale è reale
n
tEEinn
rifnec )()(),( RR
RRR 2)(
21)(
1000201, EEEE ececcR
Soluzione a Stato fondamentale Stati eccitati
Al passare del tempo la funzione d’onda decade allo stato fondamentale
n
EEnn
rifnec )()(),( RR
c0
c1
c2
I coefficienti degli stati eccitati decadono esponenzialmente rispetto al coefficiente dello stat fondamentale.
Approssimazione a tempi brevi
• Processo cinetico (ramificazione)
2D
De 4/)( 20),( RRR
))(( rifEV R
)0,(),( ))(( RR R rifEVe
• Processo diffusivoProcesso diffusivo
Dividiamo il tempo Dividiamo il tempo in n intervalli in n intervalli = = /n/n In un In un piccolo il potenziale piccolo il potenziale è ~~ costante. costante.
Separiamo il processo in un processo puramente diffusivo seguito da un processo cinetico ed alterniamo i due processi.
Il processo diffusivo può essere simulato R' = R + dove è un numero casuale a distribuzione gaussiana.
Il processo cinetico può essere simulato interpretando l’esponenziale
come un peso da assegnare al camminatore.
)0,(),( ))(( RR R rifEVe
Si preferisce considerare l'esponenziale come la molteplicità da assegnare al camminatore ed utilizzare un meccanismo di copie, cioè camminatori che muovono verso zone a potenziale favorevole si moltiplicano, altrimenti vengono eliminati.
The DMC algorithmVecchie Generazione Molteplicità Nuoveconfigurazioni di nuove configurazioni
configurazioni
Algoritmo DMC
1. Inizializzare una popolazione di camminatori {Xi}
2. Diffondere X’ = X + 3. Duplicare X’ in M copie
M = int[ξ + exp(V(R)-Erif)]
4. Calcolare le statistiche
5. Modificare Erif per rendere la popolazione media constante
dove E è l'Energia esatta del sistema.(H è un operatore Hermitiano, operando a sinistra sulla funzione d'onda esatta dà l'Energia esatta)Se i camminatori sono distribuiti secondo 0(R):
CALCOLO DELL'ENERGIA
RRR
RRR
d
dHE
T
T
)()(
)()(
0
0
M
iiT
M
iiTH
E)(
)(
R
R
0(R) = funzione d'onda esattaT(R) = funzione d'onda di prova
stimatore misto
Problema con questo semplice algoritmo
Il potenziale Coulombiano ha grandi variazioni e può andare a -.
Si hanno ampie fluttuazioni della popolazione di camminatori.
Algoritmo inefficiente ed instabile.
Per aumentare l’efficienza, si introduce una nuova funzione
f(R,) è soluzione dell'equazione
CAMPIONAMENTO PER IMPORTANZA
RRR T ,,f 0
,f,f,f,f 2 RRRRRR LocTQ EEFDD
Il termine di deriva muove i camminatori verso le zone in cui la T è grande.La propagazione viene simulata mediante l’equazione di Langevin: R = R’ + DFQ(R) + è un numero casuale estratto da una distribuzione gaussiana.
diffusione deriva moltiplicazione
Nel termine cinetico il potenziale è sostituito dall'Energia locale.
R
RR
T
TLocE
ˆ
)(
Se la funzione di prova fosse esatta, l'Energia locale sarebbe costante ed il termine cinetico scomparirebbe. In generale comunque le variazioni dell'Energia locale sono ridotte rispetto alle variazioni del potenziale e quindi le fluttuazioni della popolazione di camminatori sono più ridotte.
R
RRFQ
)( Forza quantica muove i camminatori
verso le zone con grande.
CALCOLO DELL'ENERGIA
RR
RRR
RRR
RRR
RR
RRR
RRR
df
dEf
d
dH
d
dHE
Loc
T
T
TT
T
T
)(
)()(
)()(
)()(
)()(
)()(
)()(
Distribuendo i camminatori secondo f(R), E viene stimata mediante
M
iiLocE
ME )(
1R
Se T(R) = (R) EL(Ri) = E varianza nulla.Tanto più accurata è la funzione di prova, tanto minore è la varianza.
CALCOLO DELLE PROPRIETA’
RRR
RRR
R
RRR
RRR
d
dA
d
dAA
)()(
)()(
)(
)()(
)()(2
Il calcolo delle proprietà richiede il campionamento di (R)2
Non abbiamo campionato (R)2, ma f(R) = (R) T(R)
Il problema del segno
Problema del segnoProblema del segno
L’analogia con l’equazione della diffusione è valida se la funzione d’onda è positiva, cioè per lo stato fondamentale di un insieme di bosoni.Per esempio un cluster di atomi di 4He.
Per gli stati eccitati di un insieme di bosoni e per sistemi di fermioni la funzione è in parte positiva ed in parte negativa.L’analogia con l’equazione della diffusione è persa.
Le funzioni d’onda hanno nodi.
Possiamo recuperare l’analogia con l’equazione generalizzata della diffusione se vincoliamo il incoliamo il cammino casuale entro una regione positiva cammino casuale entro una regione positiva limitata dai nodi. limitata dai nodi.
Sfortunatamente Sfortunatamente i nodi i nodi esattiesatti non sono noti non sono noti..
In uno spazio a 3N dimensioni i nodi sono una In uno spazio a 3N dimensioni i nodi sono una superficie a 3N-1 dimensioni.superficie a 3N-1 dimensioni.
La condizione di antisimmetria La condizione di antisimmetria (1,2) = -(1,2) = -(2,1) (2,1) non definisce completamente il nodo, perché non definisce completamente il nodo, perché scambiamo simultaneamente x, y, z delle 2 scambiamo simultaneamente x, y, z delle 2 particelle: definiamo un iperpunto di dimensione particelle: definiamo un iperpunto di dimensione 3N-3.3N-3.
Otteniamo la soluzione esatta entro il volume nodale.
Il metodo diventa variazionale, al tendere dei nodi della funzione di prova verso i nodi esatti l’Energia tende all’Energia esatta.
Enodi fissi Eesatta
Usiamo i nodi approssimati di una di prova. Eliminiamo i camminatori che attraversano un nodo.
++ --
Approssimazione a nodi fissi
Funzione di prova ed errore nodale
COSTO COMPUTAZIONALE
Teoria del funzionale della densità ~ N3
Metodi ab initio > N6
Monte Carlo quantistico ~ N3 N4
top related