next up previous contents
Next: Diagnostiikkamenetelmät Up: MCMC-menetelmät Previous: Stokastisen dynamiikan menetelmä

Hybridi Monte Carlo

Hybridi Monte Carlo -menetelmä on hyvin samankaltainen kuin stokastisen dynamiikan menetelmä . Perusmenetelmässä stokastinen transitio on kaavan (2.21) mukainen, mutta $\alpha = 0$,jolloin transitio on ekvivalentti Gibbs-otannan kanssa. Dynaamisessa transitiossa on erona se, että jokaisella askeleella arvotaan simuloidaanko Hamiltonin dynamiikkaa eteenpäin vai taaksepäin ajassa. Lisäksi jokainen dynaaminen transitio on Metropolis -algoritmin tapaan vain kandidaatti, joka hyväksytään tai hylätään kokonaisenergian muutokseen verrannollisella todennäköisyydellä. Tällä saadaan korjattua äärellisen askelkoon biasoiva vaikutus.

Olkoon annettuna askelkoko $\epsilon_0$, sekä leapfrog-iteraatioiden määrä L. Algoritmi toimii seuraavasti:

1.
Arvotaan ajan suunta $\lambda$, joka saa arvon $\lambda = 1$ tai $\lambda = -1$, riippuen siitä kuljetaanko ajassa eteen vai taaksepäin. Kumpikin suunta on yhtä todennäköinen.
2.
Aloitetaan tämänhetkisestä tilasta (q,p) ja suoritetaan L kappaletta leapfrog-iteraatioita askelkoolla $\epsilon = \lambda \epsilon_0$. Olkoon uusi tila (q*,p*).
3.
Tulkitaan uusi tila (q*,p*) kandidaattitilana Metropolis -algoritmille ja hyväksytään se todennäköisyydellä
\begin{displaymath}
A((q,p),(q^*,p^*)) = \min(1, \exp(-(H(q^*,p^*) - H(q,p)))).\end{displaymath} (16)

Muussa tapauksessa uusi tila on sama kuin vanha tila.

4.
Arvotaan jakaumasta N(0,1) uudet arvot momenteille pi ja palataan kohtaan 1.

Toimivuuden todistamiseksi menetelmä voidaan tulkita variaatioksi Metropolis-Hastings -algoritmista. Tässä menetelmässä hyväksymistodennäköisyys on teoriassa 1, koska ehdokasjakauma on aina tarkka, mutta diskretointivirheestä johtuen näin ei aina ole käytännössä. Ajan suunnan arpominen aiheuttaa syntyvälle Markovin ketjulle ajassa kääntyvyys -ominaisuuden (arpomisen takia virhe ei aiheuta biasoitumista). Diskretointivirheen aiheuttamien muutosten suhde voidaan laskea suoraan tilatodennäköisyyksien suhteena, mikä mahdollistaa virheen korjaamisen Metropolis-Hastings -askeleella.

Joskus on hyödyksi arpoa $\epsilon$ ja L jostakin sopivasta jakaumasta, jolloin saadaan hieman satunnaisuutta mukaan myös dynaamisiin transitioihin. Hiukkasen radan määräävä Hamiltonin funktio ei myöskään tarvitse olla sama kuin kohdejakauman määräävä funktio. Riittää kun Metropolis -askeleella on käytössä todellinen Hamiltonin funktio.

Algoritmista käytetään usein myös variaatiota, jossa yhtälön % latex2html id marker 1209
$(\ref{transitio})$ parametria $\alpha$ ei asetetakaan nollaksi, vaan sille annetaan jokin lähellä ykköstä oleva arvo. Tällöin L voi olla hyvin pieni, ehkä jopa 1.

Kuitenkaan, johtuen vaihtevasta ajan suunnasta, menetelmä ei ilman muita muutoksia ole kovin hyvä. Voidaan ajatella, että momenttitermi auttaa hiukkasta väärään suuntaan aina kun ajan suunta vaihtuu. Tämän korjaamiseksi voidaan tehdä niin, että ei arvotakaan ajan suuntaa joka askeleella, vaan sen sijaan käännetäänkin momentti negatiiviseksi:

1.
Aloita tämänhetkisestä tilasta (q,p) ja suorita L kappaletta leapfrog-iteraatioita askelkoolla $\epsilon_0$.Olkoon uusi tila (q*,p*).
2.
Tulkitaan uusi tila (q*,p*) kandidaattitilana Metropolis -algoritmille ja hyväksytään se todennäköisyydellä
\begin{displaymath}
A((q,p),(q^*,p^*)) = \min(1, \exp(-(H(q^*,p^*) - H(q,p)))).\end{displaymath} (17)

Muussa tapauksessa uusi tila on vanha tila momentti negatoituna eli (q,-p).

3.
Arvo uudet momentit pi' vanhojen momenttien pi avulla seuraavasti:

\begin{displaymath}
p_i' = \alpha p_i + n_i \sqrt{1 - \alpha^2},\end{displaymath} (18)

jossa $\alpha \in [0,1[$ ja $n_i \sim N(0,1)$.

Momentti muuttuu siis negatiiviseksi vain jos uutta tilaa ei hyväksytä.

Kirjallisuudessa esiintyy myös Langevinin menetelmä . Kyseessä on erikoistapaus Hybridi Monte Carlo -menetelmästä, jossa yhden iteraation leapfrog-askeleiden määrä L=1.


next up previous contents
Next: Diagnostiikkamenetelmät Up: MCMC-menetelmät Previous: Stokastisen dynamiikan menetelmä
Simo Särkkä
8/23/1999