Upload
aram
View
40
Download
0
Embed Size (px)
DESCRIPTION
4.év Mérnoki Informatika BBTE Matematika és Informatika. Szimulációs Módszerek : Monte Carlo Szimuláció. Szimuláció – Monte Carlo. Monte Carlo szimuláció - PowerPoint PPT Presentation
Citation preview
Szimulációs Módszerek: Monte Carlo Szimuláció
4.év Mérnoki InformatikaBBTE Matematika és Informatika
Szimuláció – Monte Carlo
Monte Carlo szimuláció
Egy másik nagy módszer a Molekuláris Dinamika módszer mellett
Los Alamosból ered a módszer: Stanislaw Ulam fizikus találta ki, Neumann Jánossal együtt, a Manhatten projekt keretén belül.
Szimuláció – Monte Carlo
Radioaktív anyagok-meg kell oldani az árnyékolást. Milyen vastag pajzs kell ahhoz hogy leárnyékolják az anyagot?
Attól függ hogy milyen sugárzásról van szó
ők konkrétan a neutron sugárzást akarták
Szimuláció – Monte Carlo
átlag távolság amíg a neutron ütközik egy atommal
átlag energia amit egy neutron elveszít egy ilyen ütközéskor
bár a részleteket ismerték, az analitikus számítás mégis nagyon nehéz volt, nem tudták elvégezni
Szimuláció – Monte Carlo
Solitaire játék (Ulam is ezt használta példának)
Ismerjük az összes szabályt
tudjuk pontosan hány kártya
van a pakliban az a kérdés hogy az
összesrandom kezteti állapotból hány állatotban lehet sikeresen kirakni a menetet. Ez nagyok bonyolult kombinatorikai számításhoz vezet.
Szimuláció – Monte Carlo
Egy gyakorlati megoldás: rakjuk ki 100-szor a játékot. Számoljuk meg hányszor sikeres a kirakás. Ebből tudunk következtetni arra hogy mi lehet a valószínűsége annak hogy ki lehet rakni a játékot.
Hasonló módszerrel számolták a neutron elnyelődést is: elindítottak egy neutront a szimulációban és követték. Sokszor megcsinálták ezt (más kezdeti sebesség stb.)Ebből ki lehetett következtetni azt a valószínűséget amire kíváncsiak voltak.
Szimuláció – Monte Carlo
Enrico Fermi Stanislaw Ulam, János Neumann1930 1946, Manhattan ProjectLos Alamos
Szimuláció – Monte Carlo
Monte Carlo: kódnevet kellett találni rá, mert egy titkos projekt volt(a Manhattan része)Neumann tudta hogy Ulam nagybátyja sok pénzt veszített a Monaco-i kaszinóban(Monte Carlo)
Szimuláció – Monte Carlo
Neumann programozta be az első ilyen szimulációt az ENIAC-on
Szimuláció – Monte Carlo
Monte Carlo módszer: véletlenszerű mintavételezésen alapul, sokszor futtatják le azért hogy valószínűségeket számoljanak ki
akkor használják amikor nem lehet zárt formájú megoldást találni a feladatra vagy amikor nem éri meg determinisztikus algoritmust alkalmazni (pl. Molekuláris Dinamika, numerikus számítások)
Szimuláció – Monte Carlo
Monte Carlo: optimizáció numerikus integrálás mintavételezés valamilyen eloszlásból
sok csatolt szabadsági fokkal rendelkező rendszerek: folyadékok, rendezetlen anyagok (üveg, granuláris anyagok), csatolt elemekből álló modellek mint a Potts modell (erre látunk majd példát amit ezzel oldunk meg)
Szimuláció – Monte Carlo
Monte Carlo: rizikó számítása üzleti életben multidimenzionális határozott integrálok
elvégzése bonyolult határfeltételekkel űrkutatás, olajmezők feltárása
az alap egy véletlenszám-generátor, egy nagyon jó véletlenszám-generátorra van szükség az MC-hez (jobbra mint a sima rand)
Szimuláció – Monte Carlo
sima rand() használata C-ben
a rand() ad egy számot 0 és RAND_MAX között
m*rand()/(RAND_MAX+1.0)
sokkal jobb mint:
rand() % m
Szimuláció – Monte Carlo
sima rand() használata C-ben
a rand() ad egy számot 0 és RAND_MAX között
m*rand()/(RAND_MAX+1.0) legfontosabb biteket használja MSBsokkal jobb mint:rand() % ma legkisebb biteket használja LSB
Szimuláció – Monte Carlo
Egy példa a Monte Carlo módszerre Buffon tűjeezt már nagyon jól ismeritek a statisztika óráról
mi köze ennek a valószínűségnekπ-hez?
(+3 pont quiz)
Szimuláció – Monte Carlo
A tű közepének a poziciója és a szög is egyenletes eloszlásból jön, vagyis x: 0 – t/2 1/(t/2) 2/tθ: 0 – π 1/π
ezek közül nekünk csak azok az esetek kellenek ahol metsziis a vonalat
Szimuláció – Monte Carlo
Egy integrálást végzünk elErre ma is használják az MC-tsok dimenziós int., irreguláris határfeltételek
Szimuláció – Monte Carlo
Ahhoz hogy megértsük a különböző mintavételezési módokat, játsszunk egy pár játékot: a gyerekek játéka Monte Carlo-ban
Szimuláció – Monte Carlo
A körbe eső és a négyzetbe eső kövek számának az aránya fogja megadni π-t
Szimuláció – Monte Carlo
A felnőttek is játszanak egy játékot, de ők egy sokkal nagyobb terepen játszanak amit nem tudnak egyszerűen bejárni
egy nő kidob egy követ a területről
mit tegyen?
Szimuláció – Monte Carlo
egy nő kidob egy követ a területről
mit tegyen? (c pontnál
van)
Szimuláció – Monte Carlo
Szimuláció – Monte Carlo
A direct sampling az nagyon könnyűvé teszi a munkát, nem is kell olyan sok mintát venni. A probléma az hogy a legtöbb feladatnál nem látjuk be egyszerre az egész eseményteret és/vagy nem tudunk egyenletes valószínűséggel állapotokat generálni benne.
Példa a cipősdoboz esete a pénzérmékkel
Szimuláció – Monte Carlo
Szimuláció – Monte Carlo
Random sequential adsorption (RSA) ez nem direkt mintavételezés azt még senki se tudott csinálni
ehhez a problémához egy Markov-chainnel lehet így
mintavételezni ezzel az a probléma hogy nagyon
sok mintát kell venni ahhoz hogy az annak megfelelőt kapjuk mintha tényleg direct sampling lenne
Szimuláció – Monte Carlo
A csecsemők és a felnőttek játéka
Markov chain Direct Sampling Sampling
Szimuláció – Monte Carlo
a felnőttek játékszabályok szerint mennekde ők is szeretnének egyenletes eloszlást generálni
Szimuláció – Monte Carlo
Condition of detailed balance
Szimuláció – Monte Carlo
Condition of detailed balance
Szimuláció – Monte Carlo
Condition of detailed balance
Szimuláció – Monte Carlo
Condition of detailed balance
Hogyan teljesülhet ez a felnőttek játékánál?
Szimuláció – Monte Carlo
Condition of detailed balance
Hogyan teljesülhet ez a felnőttek játékánál?
Szimuláció – Monte Carlo
Condition of detailed balance
Hogyan teljesülhet ez a felnőttek játékánál?
Szimuláció – Monte Carlo
Condition of detailed balance
Az egyik mód ahogy ezt a feltételt teljesíteni lehet, az a Metropolis Monte Carlo
Szimuláció – Monte Carlo
Szimuláció – Monte Carlo
mikrokankonikus sokaság kanonikus sokaságmakrokanonikus sokaság
amikor arról beszélünk hogy minden állapot egyenlő valószínűséggel fordul elő az a mikrokanonikus sokaság
N,V,E konstans (izolált rendszer)
Szimuláció – Monte Carlo
mikrokankonikus sokaság kanonikus sokaságmakrokanonikus sokaság
amikor arról beszélünk hogy állandó a hőmérséklet akkor már nem minden állapot fordul elő egyenlő valószínűséggel (ez a kanonikus sokaság)N,V,T konstans (termosztatált rendszer)
Szimuláció – Monte Carlo
mikrokankonikus sokaság kanonikus sokaságmakrokanonikus sokaság
makrokanonikus sokaságban N is változhat, de a kémiai potenciál állandó
Szimuláció – Monte Carlo
kanonikus sokaság
π(a) ~ e^(-Ea/kt) π(b) ~ e^(-Eb/kt)π(b)/π(a) ~ e^-((Eb-Ea)/kt) = e^-ΔE/kTtehát a Metropolis algoritmusban a ΔE fog számítani
Szimuláció – Monte Carlo
Emberek csoportosítása optimális társaságokra
Kölcsönhatási mátrixSzomszédsági mátrix
az elsőből kiszámolni a másodikat (NP hard)
Szimuláció – Monte Carlo
Simulated annealing
miért szükséges hogy működikalkalmazva a csoportosítás példára
mi a hőmérséklet, mi az energia (cost function)