Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Ilustracja obliczania całek oznaczonych metodą Monte Carlo Paweł Kopeć Paweł Dymacz Michał Marzyński Piotr Moroń Askaniusz Gołdys.

Podobne prezentacje


Prezentacja na temat: "Ilustracja obliczania całek oznaczonych metodą Monte Carlo Paweł Kopeć Paweł Dymacz Michał Marzyński Piotr Moroń Askaniusz Gołdys."— Zapis prezentacji:

1 Ilustracja obliczania całek oznaczonych metodą Monte Carlo Paweł Kopeć Paweł Dymacz Michał Marzyński Piotr Moroń Askaniusz Gołdys

2 Metoda Monte Carlo Metoda Monte Carlo jest stosowana do modelowania matematycznego procesów zbyt złożonych, aby można było przewidzieć ich wyniki za pomocą podejścia analitycznego. Należą do nich całki oraz łańcuchy stochastyczne. Istotną rolę w metodzie MC odgrywa losowanie (wybór przypadkowy) wielkości charakteryzujących proces, przy czym losowanie dokonywane jest zgodnie z rozkładem, który musi być znany.

3 Zastosowanie i dokładność Metoda MC używana jest w przypadkach, kiedy szybkość otrzymania wyniku jest ważniejsza od jego dokładności (np. obliczenia inżynierskie). Dokładność wyniku uzyskanego tą metodą jest zależna od liczby sprawdzeń i liczb, które są używane do obliczania. Zwiększanie liczby prób nie zawsze zwiększa dokładność wyniku, ponieważ jest skończenie wiele liczb losowych.

4 Algorytm do oblicznia przybliżonej wartości całki oznaczonej 1.Weźmy dowolna całkę oznaczoną: 2.Następnie losujemy niezależne liczby u 1,u 2,…,u n z rozkładu jednostajnego U[0,1]; 3.Obliczamy x k : x k = a + (b – a)u k dla k=0,1,2,…,n; 4.Przybliżoną wartość całki obliczamy ze wzoru:

5 Przykład obliczeń Poniższą całkę obliczamy korzystając z twierdzenia Newtona – Leibniza oraz dokonując odpowiednich podstawień :

6 Przykład obliczeń Do obliczenia tej całki metodą M-C został napisany program w języku C++. Za funkcją losującą liczby z rozkładu jednostajnego N[0,1] posłużyła funkcja random() z biblioteki standardowej.

7 Przykład obliczeń Otrzymane wyniki Ilość losowańWynik M-C Różnica pomiędzy wynikami obu metod 1000, , , , , , , , , , , , , , Jeśli przyjąć wynik obliczony metoda Newtona – Leibniza za najdokładniejszy to wartości obliczane metodą Monte Carlo dla coraz większych rzędów n różnią się o coraz większe wartości od wartości prawdziwej całki. Jest to dowód na to, ze ogromny wpływ na dokładność tej metody ma generator liczb pseudolosowych.

8 Przykład obliczeń Spróbujmy najpierw obliczyć tą całkę metodą Newtona- Leibniza, a następnie metodą Monte Carlo i porównać otrzymane wyniki..

9 Przykład obliczeń Metoda Monte Carlo. Wybieramy na początek n=10. Losujemy 10 liczb niezależnie z rozkładu jednostajnego z przedziału[0,1] : Skalujemy przedział [0,1] na zgodnie ze wzorem. Obliczamy teraz wartość funkcji w podanych wyżej punktach : Teraz sumujemy te wartości :.

10 Przykład obliczeń I otrzymujemy wynik całki : Zatem błąd metody Monte Carlo względem metody Newtona-Leibniza jest dość duży, bo rzędu..

11 Przykład obliczeń Spróbujemy teraz zwiększyć dokładność losując większą ilość liczb (np. n=1000) Wynik całki : Jak widać, dla n=1000 różnica pomiędzy wynikiem z metody Monte Carlo a wynikiem metody Newtona-Leibniza zaczyna się dopiero na 4. miejscu po przecinku. Wniosek : im większy parametr n, tym dokładniejszy wynik..

12 Całka z logarytmu

13 Sprawdźmy jak wygląda samo rozwiązanie całki nieoznaczonej: Nie wygląda aż tak źle...

14 Obliczenia pomocnicze: (Jak widać trochę tego jest...) Całka z logarytmu

15 Stosując Metodę Monte Carlo możemy oszczędzić sobie tych obliczeń...:) Całka z logarytmu

16 Przykład obliczeń

17 gdzieto sinus całkowy Obliczenie przy pomocy metod numerycznych programu MATLAB: - quad - kwadratura adaptacyjna oparta o interpolacje wielomianem 2 stopnia (metoda parabol Simpsona) Wynik: quadl - kwadratura adaptacyjna oparta o aproksymacje wielomianem 8 stopnia (metoda Newtona-Cotesa) Wynik: Przykład obliczeń

18 Niech u będzie wektorem liczb wylosowanych niezależnie z rozkładu jednostajnego U[0,1].

19 Przykład obliczeń Niech u będzie wektorem liczb wylosowanych niezależnie z rozkładu jednostajnego U[0,1]. Przenosimy i skalujemy przedział na przedział :

20 Przykład obliczeń Niech u będzie wektorem liczb wylosowanych niezależnie z rozkładu jednostajnego U[0,1]. Przenosimy i skalujemy przedział na przedział : Obliczamy teraz wartości funkcji w tych punktach:

21 Przykład obliczeń Niech u będzie wektorem liczb wylosowanych niezależnie z rozkładu jednostajnego U[0,1]. Przenosimy i skalujemy przedział na przedział : Obliczamy teraz wartości funkcji w tych punktach: Sumujemy wyrazy wektora:

22 Przykład obliczeń Niech u będzie wektorem liczb wylosowanych niezależnie z rozkładu jednostajnego U[0,1]. Przenosimy i skalujemy przedział na przedział : Obliczamy teraz wartości funkcji w tych punktach: Sumujemy wyrazy wektora: I ostatecznie:

23 Wnioski Dokładność wyniku uzyskanego tą metodą jest zależna od liczby sprawdzeń i jakości użytego generatora liczb pseudolosowych. Zwiększanie liczby prób nie zawsze zwiększa dokładność wyniku, ponieważ generator liczb pseudolosowych ma skończenie wiele liczb losowych w cyklu. Ta metoda całkowania jest używana w przypadkach, kiedy szybkość otrzymania wyniku jest ważniejsza od jego dokładności (np. obliczenia inżynierskie). Poprawność metody Monte Carlo w przypadku liczenia pól lub całek można udowodnić stosując twierdzenie Picka (lub jego wielowymiarowe uogólnienia) do najlepszego wielokąta wpisanego w figurę, której pole chcemy obliczyć w przybliżeniu tzw. kryształu wirtualnego, tzn. regularnej siatki punktów o stałej sieci równej średniej odległości między wylosowanymi punktami. W nieskończonej granicy tych wielokątów i siatek metoda jest dokładna dla dowolnego kształtu.

24 Koniec


Pobierz ppt "Ilustracja obliczania całek oznaczonych metodą Monte Carlo Paweł Kopeć Paweł Dymacz Michał Marzyński Piotr Moroń Askaniusz Gołdys."

Podobne prezentacje


Reklamy Google