4.év Mérnoki Informatika BBTE Matematika és Informatika
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.
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
á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
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 összes random kezteti állapotból hány állatotban lehet sikeresen kirakni a menetet. Ez nagyok bonyolult kombinatorikai számításhoz vezet.
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.
Enrico Fermi Stanislaw Ulam, János Neumann , Manhattan Project Los Alamos
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)
Neumann programozta be az első ilyen szimulációt az ENIAC-on
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)
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)
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)
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
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 MSB sokkal jobb mint: rand() % m a legkisebb biteket használja LSB
Egy példa a Monte Carlo módszerre Buffon tűje ezt 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)
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 metszi is a vonalat
Egy integrálást végzünk el Erre ma is használják az MC-t sok dimenziós int., irreguláris határfeltételek
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
A körbe eső és a négyzetbe eső kövek számának az aránya fogja megadni π-t
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?
egy nő kidob egy követ a területről mit tegyen? (c pontnál van)
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
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
A csecsemők és a felnőttek játéka Markov chainDirect SamplingSampling
a felnőttek játékszabályok szerint mennek de ők is szeretnének egyenletes eloszlást generálni
Condition of detailed balance
Hogyan teljesülhet ez a felnőttek játékánál?
Condition of detailed balance Hogyan teljesülhet ez a felnőttek játékánál?
Condition of detailed balance Hogyan teljesülhet ez a felnőttek játékánál?
Condition of detailed balance Az egyik mód ahogy ezt a feltételt teljesíteni lehet, az a Metropolis Monte Carlo
mikrokankonikus sokaság kanonikus sokaság makrokanonikus 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)
mikrokankonikus sokaság kanonikus sokaság makrokanonikus 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)
mikrokankonikus sokaság kanonikus sokaság makrokanonikus sokaság makrokanonikus sokaságban N is változhat, de a kémiai potenciál állandó
kanonikus sokaság π(a) ~ e^(-E a /kt) π(b) ~ e^(-E b /kt) π(b)/π(a) ~ e^-((E b -E a )/kt) = e^-ΔE/kT tehát a Metropolis algoritmusban a ΔE fog számítani
Emberek csoportosítása optimális társaságokra Kölcsönhatási mátrix Szomszédsági mátrix az elsőből kiszámolni a másodikat (NP hard)
Simulated annealing miért szükséges hogy működik alkalmazva a csoportosítás példára mi a hőmérséklet, mi az energia (cost function)