y Náhodná proměnná D Téma 3: Simulační metody typu Monte Carlo Přednáška z předmětu: Spolehlivost a bezpečnost staveb 4. ročník bakalářského studia 1,0 1,00 0,80 0,60 0,40 0,0 0,00 0,00 0,0 0,40 0,60 0,80 1,00 1,0 x Katedra stavební mechaniky Fakulta stavební Vysoká škola báňská Technická univerzita Ostrava
Osnova přednášky Začlenění metody Monte Carlo do přehledu pravděpodobnostních metod Historie metody Monte Carlo Buffonova jehla První systematické využití metody Monte Carlo Využití metody Monte Carlo k numerické integraci Výhody a nevýhody metody Monte Carlo Zákon velkých čísel Generátory (pseudo)náhodných čísel Kongruenční generátory pseudonáhodných čísel Vliv vstupních konstant na vygenerovaná pseudonáhodná čísla Názorná ukázka elementárního výpočtu metodou Monte Carlo Pravděpodobnostní metoda SBRA Metoda Monte Carlo 1 / 34
Pravděpodobnostní metody Simulační metody Prostá simulace Monte Carlo Stratifikované simulační techniky Latin Hypercube Sampling LHS Stratified Sampling -SC Pokročilé simulační metody: Importance Sampling IS Adaptive Sampling AS Directional Sampling DS Line Sampling LS Aproximační metody Přehled např. [Novák, 005] First (Second) Order Reliability Method - FORM (SORM) Metody výběru vhodného rozdělení pravděpodobnosti založené na náhodném výběru rezervy spolehlivosti Perturbační techniky Metody plochy odezvy Response Surface -RS Numerické metody Přímý Optimalizovaný Pravděpodobnostní Výpočet - POPV Přehled pravděpodobnostních metod / 34
Buffonova jehla Jedním z nejstarších popsaných případů využití metody je problém tzv. Buffonovy jehly, nazvaný po francouzském matematikovi Georges-Louis Leclerc Comte de Buffonovi, který se roku 1777 pokoušel odhadnout hodnotu Ludolfova čísla náhodným vrháním jehly na linkovaný papír. Georges-Louis Leclerc, Comte de Buffon (1707-1788) Pravděpodobnost jevu, kdy jehla stejné délky, jako je vzdálenost mezi linkami, po dopadu na papír zůstane ležet na papíře tak, že protíná některou z linek, je rovna: p Historie metody Monte Carlo 3 / 34
Výpočet Ludolfova čísla Podobně lze stanovit hodnotu Ludolfova čísla následujícím způsobem: Obsah čtvrtkružnice: S 1. r 4 Obsah čtverce: Poměr obou ploch: S r Základem výpočtu je čtverec o straně r, do kterého se náhodně hází malý předmět. Výsledný poměr počtu všech hodů a hodů do čtvrtkruhu stanoví hodnotu Ludolfova čísla. Historie metody Monte Carlo 4 / 34 S S. r 4. r 1 4 Ludolfovo číslo je S1 4. pak rovno: S
První systematické využití metody Enrico Fermi (1901-1954) Pravděpodobně první systematické využití metody Monte Carlo s reálnými výsledky je datováno až k roku 1930, kdy Nobelovou cenou oceněný italský fyzik Enrico Fermi tento přístup využíval ke generování náhodných čísel k výpočtu vlastností v té době nově objevené částice neutronu. Stanislaw Ulam (1909-1984) Dodnes jsou tak počátky rozvoje metody Monte Carlo spojovány se jmény Stanislaw Marcin Ulam a John von Neumann nebo Nicholas Metropolis. Oba prvně jmenovaní např. s využitím metody Monte Carlo zkoumali v americké Národní laboratoři Los Alamos chování neutronů (jaké množství neutronů projde různými materiály, např. nádrží vody). Historie metody Monte Carlo 5 / 34
První systematické využití metody Autoři již pracovali v době, kdy mohly používat pro simulování náhodných jevů jednoduché počítače. Název metody pochází právě od Stanislawa Ulama, který ji pojmenoval podle známého kasina v Monaku (Ulamův strýc zde sázel). Metoda se dříve používala pod označením statistical sampling statistický výběr. Náhodnost jevů a opakování jejich výskytu jsou identické k činnostem prováděných v kasinech (ruleta je jednoduchý fyzikální generátor náhodných čísel, podobně jako např. hrací kostka). Metoda Monte Carlo hrála klíčovou roli při simulacích, kterými se odhadovala štěpná reakce při vývoji atomové bomby v rámci projektu Manhattan (krycí název pro utajený americký vývoj atomové bomby za. světové války). Historie metody Monte Carlo 6 / 34
Využití metody Monte Carlo k numerickému integrování Metoda je využívána zejména pro výpočet integrálů hustot pravděpodobností spojitých náhodných veličin, zejména vícerozměrných, kde běžné metody nejsou efektivní. Metoda Monte Carlo má široké využití od simulaci náhodných experimentů přes numerickou integraci určitých integrálů po numerické řešení diferenciálních rovnic. Z principů prosté simulační metody Monte Carlo vychází řada pravděpodobnostních postupů např. SBRA. Historie metody Monte Carlo 7 / 34
Výhody a nevýhody metody MC Metoda Monte Carlo je založena na provádění náhodných experimentů s modelem systému a jejich vyhodnocení. Výsledkem provedení velkého množství experimentů je obvykle pravděpodobnost určitého jevu. Výhodou je jednoduchá implementace, nevýhodou relativně malá přesnost. err B N kde N je počet náhodných experimentů (simulací, simulačních kroků, historií) a B je konstanta, vyjadřující povahu konkrétního příkladu Pro zvýšení přesnosti výsledku o jeden řád je tedy nutno zvýšit počet simulací alespoň o dva řády. Princip simulačních metod typu Monte Carlo 8 / 34
Chyba výpočtu simulací Monte Carlo Při pravděpodobnostním posouzení a výpočtu pravděpodobnosti poruchy p f závisí přesnost odhadu nejenom na celkovém počtu simulací N, ale také na řádu určované pravděpodobnosti poruchy p f. Variační koeficient pravděpodobnosti poruchy lze pro malé pravděpodobnosti definovat ve tvaru: 1 v p f N. p f Princip simulačních metod typu Monte Carlo 9 / 34
Chyba výpočtu simulací Monte Carlo Např.: Pokud se bude odhad pravděpodobnosti poruchy p f pohybovat v řádu 10-4 a výpočet byl proveden s počtem simulačních kroků N=10 4, variační koeficient pravděpodobnosti poruchy se rovná: v p f 10 Odhad chyby výsledné pravděpodobnosti poruchy p f je tedy 100%. 1 4.10 Zvýšením počtu simulací N=10 6 pak variační koeficient pravděpodobnosti poruchy dosahuje příznivější hodnoty: 4 1 v p f 10 1 6.10 4 0,1 a výsledek by se neměl oproti přesnému řešení lišit o 10%. Princip simulačních metod typu Monte Carlo 10 / 34
Zákon velkých čísel Při velkém počtu nezávislých pokusů je možné téměř jistě očekávat, že relativní četnost se bude blížit teoretické hodnotě pravděpodobnosti. Lze popsat s pomocí střední hodnoty náhodné veličiny: X 1 X... N N 1 X N kde X 1, X,..., X N představuje nekonečnou posloupnost vzájemně nezávislých náhodných čísel s konečnou střední hodnotou. Se zvyšujícím se počtem historií N bude střední hodnota vygenerované posloupnosti konvergovat ke střední hodnotě X n, což lze demonstrovat na jednoduchém příkladu s hrací kostkou. Princip simulačních metod typu Monte Carlo 11 / 34
Zákon velkých čísel V případě hrací kostky o šesti stranách je aritmetický průměr součtu čísel na jednotlivých stranách roven: 1 3 4 5 6 6 1 6 3,5 Střední hodnota vržených čísel 5,0 4,5 4,0 Střední hodnota 3,5 3,0,5,0 0 000 4000 6000 8000 10000 1000 14000 16000 18000 0000 Počet hodů Vývoj vypočtené střední hodnoty 0000 vržených čísel Princip simulačních metod typu Monte Carlo 1 / 34
Zákon velkých čísel 10000 Počty zastoupení jednotlivých čísel v 50000 hodech kostkou 806 8385 83 8383 8458 8345 8000 6000 4000 000 0 1 3 4 5 6 Počty zastoupení vržených čísel v 50000 hodech kostkou Princip simulačních metod typu Monte Carlo 13 / 34
Zákon velkých čísel 30,00% 5,00% 0,00% 15,00% Procentuální zastoupení 10,00% 1 3 5,00% Číslo 4 5 6 100 10 Procentuální zastoupení jednotlivých čísel 1000 50000 10000 6558 Celkový počet hodů 0,00% Procentuální zastoupení vržených čísel (celkové maximum počtu hodů 6558 je limitováno kapacitními možnostmi tabulkového procesoru Excel) Princip simulačních metod typu Monte Carlo 14 / 34
Generátory (pseudo)náhodných čísel Fyzikální generátory náhodných čísel Kongruenční generátory pseudonáhodných čísel U AU Cmod M n1 n Princip simulačních metod typu Monte Carlo 15 / 34
Kongruenční generátory pseudonáhodných čísel Nejpoužívanější generátory náhodných čísel, poprvé zavedené americkým matematikem Lehmerem v roce 1948. Slouží pro generování posloupností náhodných veličin s rovnoměrným rozdělením. Derrick Henry Lehmer (1905-1991) Generování pseudonáhodných čísel s pomocí rekurentního vztahu: U AU Cmod M n1 n kde konstanty A, C, a M určují statistickou kvalitu generátoru (žádoucí nesoudělnost A a M). Princip simulačních metod typu Monte Carlo 16 / 34
Vliv vstupních konstant na vygenerovaná čísla U AU Cmod M n1 n 7 6 5 4 3 Vstupní údaje 1 x 0 1 A 1 0 C 3 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 M 7 Princip simulačních metod typu Monte Carlo 17 / 34
Vliv vstupních konstant na vygenerovaná čísla U AU Cmod M n1 n 5 0 15 10 Vstupní údaje 5 x 0 1 A 7 0 C 3 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 M 3 Princip simulačních metod typu Monte Carlo 18 / 34
Vliv vstupních konstant na vygenerovaná čísla U AU Cmod M n1 n 100 1000 800 600 400 Vstupní údaje 00 x 0 1 A 7 0 C 10 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 M 1011 Princip simulačních metod typu Monte Carlo 19 / 34
Vliv vstupních konstant na vygenerovaná čísla 1,00 U AU Cmod M n1 n 0,75 Setříděno 0,50 1,00 0,5 0,75 0,00 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 0,50 Vstupní údaje: x 0 0,5 A 758 0,5 C 0,333 M 1 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 0,00 Princip simulačních metod typu Monte Carlo 0 / 34
Numerická integrace metodou Monte Carlo Metoda Monte Carlo se využívá nejčastěji k řešení vícerozměrných integrálů. I x x h d y y h d f x, y,... dxdy... f x, y,... kde f představuje střední hodnotu funkce f, vypočtenou v N náhodných bodech. V dxdy... Numerické integrování s využitím metody Monte Carlo spočívá ve stanovení hodnoty funkce f v N náhodných bodech, ležících v integrované oblasti V. Výsledný integrál pak lze definovat: I V N f ; N V. f. N i1 f i Princip simulačních metod typu Monte Carlo 1 / 34
Numerická integrace metodou Monte Carlo Odchylku od střední hodnoty funkce f zachycuje směrodatná odchylka: f ; N N i1 f N f i Podobně lze stanovit i odchylku od střední hodnoty výsledného integrálu I: N I; N f f i což lze považovat za ukazatel nepřesnosti výpočtu. V N i1 Princip simulačních metod typu Monte Carlo / 34
Numerická integrace metodou Monte Carlo Algoritmus výpočtu integrálu metodou Monte Carlo lze zefektivnit. Integrační oblast se může uzavřít do oblasti se známým objemem, ve které lze snadno generovat náhodné body. Zavedená funkce pak nabývá hodnot: ~ f f 0 x x V x V Po vygenerování N náhodných bodů, ležících v oblasti, pak bude přibližná hodnota výsledného integrálu rovna: I V N N i1 ~ f x Pro demonstraci postupu numerického integrování s využitím simulace Monte Carlo poslouží následující příklad. ~ f V V Princip simulačních metod typu Monte Carlo 3 / 34
Názorná ukázka elementárního výpočtu metodou Monte Carlo 4 / 34 Výpočet objemu polokoule a směrodatná odchylka vypočteného odhadu integrálu se bude rovnat: Je dána funkce:, y x r y x f Oblastí V pak je kružnice s poloměrem r, oblast představuje čtverec o straně.r, v němž bude kružnice vepsaná. Funkce pak bude mít tvar: V f ~, která představuje rovnici polokoule., 0 ~ r y x y x f r y x f n i f i f N V N I 1 ~ ~, Ukázkový výpočet byl proveden pro 1000 pseudonáhodných čísel. Poloměr polokoule r se rovná 1 m.
Vygenerované dvojice pseudonáhodných čísel Náhodná proměnná D 1,0 1,00 y 0,80 0,60 0,40 0,0 0,00 0,00 0,0 0,40 0,60 0,80 1,00 1,0 x Tisíc vygenerovaných pseudonáhodných dvojic čísel pro výpočet objemu polokoule, zobrazených jako graf D náhodné proměnné (vstupní parametry: x 0 =0,5; A=758; C=0,333 a M=1; y 0 =0,5; A=39; C=0,666 a M=1) Názorná ukázka elementárního výpočtu metodou Monte Carlo 5 / 34
~ Graf hodnot funkce f v N=1000 vygenerovaných bodech Výsledná hodnota odhadu integrálu: I =,17707 Přesná hodnota:,09440. Směrodatná odchylka odhadu integrálu = 0,04347, tedy 4,35%. f x, y r x y Názorná ukázka elementárního výpočtu metodou Monte Carlo 6 / 34
Princip simulační metody SBRA Generování omezených rozdělení a transformace na požadované rozdělení U AU Cmod M n1 n Metoda Simulation Based Reliability Assessment (SBRA) 7 / 34
Posudek spolehlivosti metodou SBRA Např. Marek a kol. CRC Press, 1995. Vstupní proměnné charakterizují useknuté histogramy s neparametrickým rozdělením pravděpodobnosti. Analýza funkce spolehlivosti metodou Monte Carlo. Spolehlivost je vyjádřena jako p f < p d, kde p f je pravděpodobnost poruchy, a p d je v normová návrhová pravděpodobnost poruchy: p f = Σ / Σ < p d Účinek zatížení S Odolnost R Metoda Simulation Based Reliability Assessment (SBRA) 8 / 34
Náhodné veličiny Proměnné hodnoty zatížení, variability průřezu a pevnostní charakteristiky Stálé hd Dlouhodobé nahodilé hl Sníh hsn Dlouhodobé nahodilé hl 1 Krátkodobé nahodilé hs Vítr hs Napětí na mezi kluzu f y Reprezentace náhodně proměnných veličin histogramem s neparametrickým (empirickým) rozdělením pravděpodobnosti Metoda Simulation Based Reliability Assessment (SBRA) 9 / 34
Výpočet metodou SBRA, program AntHill Pracovní plocha programu Anthill Metoda Simulation Based Reliability Assessment (SBRA) 30 / 34
Výpočet metodou SBRA, program AntHill Nápověda programu Anthill (tvorba matematického modelu s využitím aritmetických výrazů a funkcí) Metoda Simulation Based Reliability Assessment (SBRA) 31 / 34
Koncepty posudku spolehlivosti Koncept Design Pointu (PFD) Pravděpodobnostní alternativa P f = (modré)/(zelené) body R d > S d R R d S d S Metoda Simulation Based Reliability Assessment (SBRA) 3 / 34
Podstata metody, závěry Vstupní náhodné veličiny jsou vyjádřeny useknutými histogramy s neparametrickým rozdělením pravděpodobnosti, Pravděpodobnost poruchy p f je získána analýzou funkce spolehlivosti RF (Reliability function, Safety function) s využitím simulační techniky Monte Carlo, Spolehlivost je posouzena na základě nerovnosti p f < p d, kde p d je návrhová pravděpodobnost daná normou, např. ČSN EN 1990, Výsledek se pokaždé liší, důležité zvolit dostatečný počet simulačních kroků, Metoda univerzální, pro složitější výpočty málo efektivní. Metoda Simulation Based Reliability Assessment (SBRA) 33 / 34
Závěry 5 0 15 10 Přednáška: 5 0 0 4 8 1 16 0 4 8 3 36 40 44 48 5 56 60 64 68 7 76 80 byla zaměřena na základní pravděpodobnostní metodu prostou simulační metodu Monte Carlo, ukázala historii vývoje této pravděpodobnostní metody, vysvětlila podstatu kongruenčních generátorů pseudonáhodných čísel, které se uplatňují při výpočtu simulační metodou Monte Carlo, metodiku výpočtu simulační metodou Monte Carlo demonstrovala na elementárním příkladu, zmínila pravděpodobnostní metodu SBRA, která umožňuje provádět pravděpodobnostní výpočty simulací Monte Carlo. Závěry 34 / 34
y Náhodná proměnná D Děkuji za pozornost! 1,0 1,00 0,80 0,60 0,40 0,0 0,00 0,00 0,0 0,40 0,60 0,80 1,00 1,0 x