Monte-Carlo-integrálás
A matematikában a Monte-Carlo-integrálás egy olyan numerikus integrálási módszer, mely véletlen számokat használva számol. A többi integrálási algoritmus általában egy szabályos rácson értékeli ki az integrandust, míg a Monte-Carlo-módszerrel véletlen pontokban végez függvénykiértékelést. Ez a módszer különösen hasznos többdimenziós integrálok számításakor.
Áttekintés
[szerkesztés]Numerikus integrálás esetén egyes módszerek, például a trapézszabály a feladatot determinisztikus módon közelítik meg. Ezzel ellentétben a Monte-Carlo integrálás egy nem determinisztikus (sztochasztikus) módszer: minden végrehajtás után különböző eredményt kapunk, ami a pontos érték egy megközelítése.
A determinisztikus numerikus integrálási módszerek kevés dimenzióban jól működnek, viszont sokváltozós függvények esetében két probléma lép fel. A szükséges függvénykiértékelések száma gyorsan nő a dimenziók számával (hogyha 10 kiértékelés nyújt megfelelő pontosságot egy dimenzióban, akkor 100 dimenzióban 10100 pontban kell értéket kiszámolnunk). A második nehézséget a többdimenziós integrálási tartomány határa jelenti, a feladat legtöbbször nem vezethető vissza egymásba ágyazott egydimenziós integrálok kiszámítására.
A számítási idő exponenciális növekedése áthidalható a Monte-Carlo-módszerek alkalmazásával. Ha a függvény „jól viselkedik”, az integrált megbecsülhetjük a 100 dimenziós térben véletlenszerűen felvett pontokban számolt függvényértékek súlyozott átlagával. A centrális határeloszlás-tétel alapján a módszer konvergenciája (pl.: a mintapontok számát négyszeresére növelve a hiba feleződik, a dimenziók számától függetlenül).
Az algoritmus javítására egy lehetőség a statisztikában fontossági mintavételként ismert módszer, aminek lényege, hogy a mintapontokat véletlenszerűen választjuk ki, de ott, ahol az integrandus értéke nagyobb, sűrűbben veszünk mintát. Ennek pontos végrehajtásához előre ismernünk kéne az integrált, viszont megközelíthetjük azt egy hasonló függvény integráljával. Adaptív módszerek alkalmazása is hatékonyabbá teszi az algoritmust, ilyenek a rétegzett mintavétel, a rekurzív rétegzett mintavétel, az adaptív esernyő-mintavételi technika vagy a VEGAS algoritmus.
A kvázi Monte-Carlo-módszerek alacsony diszkrepanciájú sorozatokat használnak, melyek egyenletesebben „kitöltik” a tartományt. Egy tartományban véletlen bolyongás módszereivel (Markov-lánc Monte-Carlo MCMC) is generálhatunk véletlenszám-sorozatot. Erre példa a Metropolis-Hastings algoritmus, Gibbs-mintavétel valamint a Wang és Landau algoritmus.
Története
[szerkesztés]A Monte-Carlo-módszer története az 1930-as évektől ismert, Enrico Fermi nevéhez fűződik, majd az 1940-es években Neumann János és Stanisław Ulam foglalkozott vele, a Manhattan projekt keretein belül.
A módszer kifejlesztése előtt a szimulációkat a már megértett folyamatok ellenőrzésére használták, véletlen mintákkal a determinisztikus modell bizonytalanságait becsülték fel. A második világháború után a Los Alamos-i kutatóintézetben a neutronok szabad úthosszának meghatározása különböző anyagokban, analitikus módszerekkel nem volt megoldható. Stanislaw Ulam javasolta a véletlen értékekkel végzett kísérleteket, melyekből következtetéseket lehetett levonni a jelenségre vonatkozóan.
Monte Carlo szimuláció
[szerkesztés]Valószínűség-eloszlás mintavételezése. A minták alapján lehetséges kimenetek meghatározása. A lehetséges kimenetek valószínűségének számítása.
Többszörös integrálok értékének meghatározása
[szerkesztés]A többszörös integrál transzformálása
[szerkesztés]Legyen az függvény folytonos egy zárt S tartományon.
A feladat az integrál értékének meghatározása.
Az I integrált olyan alakra hozzuk, hogy az új integrálási tartomány egy m dimenziós egységélű hiperkockán belülre kerüljön.
Ha az S tartomány a következő m dimenziós paralelepipedonon belül helyezkedett el változócserét végzünk a következőképpen:
A transzformáció Jacobi-determinánsát felhasználva
ahol
az alábbi jelöléseket bevezetve:
A fenti integrált két véletlen mintavételen alapuló módszerrel számolhatjuk ki:
Az integrál kiszámolása Mote-Carlo-módszerrel
[szerkesztés]Első módszer
[szerkesztés]Generáljunk a [0,1] intervallumon m darab, N elemből álló véletlen számsorozatot egyenletes eloszlással. A számsorokból az m dimenziós hiperkockán belül N pontot kapunk:
Elegendő mintapont felvétele után megszámoljuk azokat a pontokat, melyek a σ tartományon belül találhatók. Ha a tartomány határa bonyolult, különösen fontos feltételeket szabni arra, mikor tekintjük a pontot tartományon belülinek. Ha n pont esett a tartományon belülre, y átlagértéke:
A kiszámolandó integrál értéke:
behelyettesítési értéket csak abban az esetben számolunk, ha a pont az integrálási tartományon belül található.
Második módszer
[szerkesztés]Ha az F függvény nemnegatív, az integrál felírható alakban, aminek geometriai jelentése egy m+1 dimenziós térfogat.
- változócserével, ahol
a ν tartomány az m+1 dimenziós egységoldalú hiperkockán belül helyezkedik el. Ezúttal az Oξ1ξ2...ξmη térben vesszük fel a mintapontokat. Ha N pontból n tartozik a ν térfogathoz, elegendően nagy N értékre az integrál:
Források
[szerkesztés]- Computational Mathematics B.P. Demidovich, I. A. Maron, Mir Publishers, Moscow, 1981