Simulation mit der Monte Carlo-Methode

Ähnliche Dokumente
Simulierte Daten: die Monte Carlo - Methode

Rechnernutzung in der Physik Block 3: Datenanalyse Simulation mit Zufallszahlen: die Monte Carlo-Methode

Rechnernutzung in der Physik Teil 3 Statistische Methoden der Datenanalyse

Simulation mit der Monte-Carlo-Methode

Monte Carlo Simulationen

Vorlesung: Computergestützte Datenauswertung Einige (wichtige) Verteilungen

Mehrdimensionale Verteilungen und Korrelation

Statistics, Data Analysis, and Simulation SS 2015

Monte-Carlo-Methode. mit Pseudo- und Quasizufallszahlen

Von den Grundlagen der Monte-Carlo-Methode zur Simulation von Teilchenreaktionen und Teilchendetektoren

Programmiertechnik II

7 Zufallszahlen, Simulation

Monte Carlo Simulationen Erkenntnisse durch die Erschaffung einer virtuellen Welt

Moderne Methoden der Datenverarbeitung in der Physik I

Zufallszahlen. Diskrete Simulation. Zufallszahlengeneratoren - Zufallszahlen

Die Maximum-Likelihood-Methode

Zufallszahlenerzeugung

Informationssicherheit III

5. Spezielle stetige Verteilungen

das ROOT-Framework Datenanaufnahme, Speicherung, Visualisierung & Analyse

Inhaltsverzeichnis. 4 Statistik Einleitung Wahrscheinlichkeit Verteilungen Grundbegriffe 98

Statistik - Fehlerrechnung - Auswertung von Messungen

Einführung in die Simulation. Dr. Christoph Laroque Wintersemester 11/12. Dresden,

Simulation von Zufallszahlen. Grundlage: zufällige Quelle von Zufallszahlen, durch einfachen rekursiven Algorithmus am Computer erzeugt

1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben?

Monte Carlo-Simulation

Wahrscheinlichkeitsrechnung und Statistik

Simulation von Zufallsvariablen und Punktprozessen

Zufallszahlen in AntBrain

Monte-Carlo-Verfahren nach GUM Supplement 1. Gerd Wübbeler Physikalisch-Technische Bundesanstalt

Numerische Methoden und Algorithmen in der Physik

Inhaltsverzeichnis. Vorwort zur fünften Auflage. Liste der Beispiele. Häufig benutzte Symbole und Bezeichnungen

Modellbildung und Simulation

Theorie Parameterschätzung Ausblick. Schätzung. Raimar Sandner. Studentenseminar "Statistische Methoden in der Physik"

Die Monte-Carlo-Methode zur Simulation von Teilchenreaktionen

Vorwort zur fünften Auflage. Liste der Beispiele. Häufig benutzte Symbole und Bezeichnungen

1 Zufallszahlen jede Zahl gleichen Wahrscheinlichkeit Zufallszahlenfolge unabhängiger, identisch ver- teilter

Einführung (1) In der Praxis finden Sie viele Anwendungsfelder für Zufallszahlen. Beispiele

Pseudozufallsgeneratoren

Mathematik für Informatiker III im WS 05/06 Musterlösung zur 4. Übung

Nr. 4: Pseudo-Zufallszahlengeneratoren

Grundlagen der Monte-Carlo-Methode

Die Monte-Carlo-Methode mit Pseudo- und Quasi-Zufallszahlen

Was ist Physik? Modell der Natur universell es war schon immer so

Einführungsseminar S1 Elemente der Fehlerrechnung. Physikalisches Praktikum der Fakultät für Physik und Astronomie Ruhr-Universität Bochum

Introduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016

5. Numerische Differentiation. und Integration

Einführung in die Theorie der Messfehler

Bestimmte Zufallsvariablen sind von Natur aus normalverteilt. - naturwissenschaftliche Variablen: originär z.b. Intelligenz, Körpergröße, Messfehler

Datenanalyse für Naturwissenschaftler und Ingenieure

Statistische Methoden der Datenanalyse

Probabilistische Algorithmen

4.1 Stichproben, Verteilungen und Schätzwerte. N(t) = N 0 e λt, (4.1)

Schätzung von Parametern

15 Über Zufallsgeneratoren (fakultativ)

das ROOT-Framework Datenanaufnahme, Speicherung, Visualisierung & Analyse

Statistics, Data Analysis, and Simulation SS 2017

1 Messfehler. 1.1 Systematischer Fehler. 1.2 Statistische Fehler

Anpassungsrechnungen mit kleinsten Quadraten und Maximum Likelihood

Physikalisches Institut

Erzeugung von Pseudozufallszahlen mit Computern

Operations Research (OR) II

Monte-Carlo- Simulation. Seminar zur Vorlesung Teilchendetektoren und Experiment an ELSA

4 Absolutstetige Verteilungen und Zufallsvariablen 215/1

Statistische Software (R)

I Grundbegriffe 1 1 Wahrscheinlichkeitsräume Bedingte Wahrscheinlichkeiten und Unabhängigkeit Reellwertige Zufallsvariablen...

Der Weg eines Betrunkenen

Statistik für Ingenieure Vorlesung 2

Wahrscheinlichkeitsrechnung und Quantentheorie

Stichwortverzeichnis. Chi-Quadrat-Verteilung 183, 186, 189, 202 ff., 207 ff., 211 Testen von Zufallszahlen 294 Cărtărescu, Mircea 319

Wahrscheinlichkeitsrechnung und Statistik

Practical Numerical Training UKNum

5. Meßfehler. Zufällige Messfehler machen das Ergebnis unsicher - ihre Abschätzung ist nur unter Verwendung statistischer Methoden durchführbar

Anfänger-Praktikum I WS 11/12. Michael Seidling Timo Raab Enrico Mank. Praktikumsbericht: Galton-Brett

Statistik und Wahrscheinlichkeitsrechnung

WAHRSCHEINLICHKEITSRECHNUNG

Motivation. Benötigtes Schulwissen. Übungsaufgaben. Wirtschaftswissenschaftliches Zentrum 10 Universität Basel. Statistik

1 Grundprinzipien statistischer Schlußweisen

1.1.1 Ergebnismengen Wahrscheinlichkeiten Formale Definition der Wahrscheinlichkeit Laplace-Experimente...

Die Monte-Carlo-Methode mit Pseudound Quasi-Zufallszahlen

Statistische Methoden in den Umweltwissenschaften

Klausur Stochastik und Statistik 31. Juli 2012

Pocket Cards (Winning Probabilities) 6.1 Anzahl der Kombinationen Monte Carlo Simulation Ergebnisse 6

Vorlesung Stetige Verteilungen / Mathematische Behandlung

Marcus Hudec. Statistik 2 für SoziologInnen. Normalverteilung. Univ.Prof. Dr. Marcus Hudec. Statistik 2 für SoziologInnen 1 Normalverteilung

Praktikum zur Vorlesung Einführung in die Geophysik

Lineare Kongruenzgeneratoren und Quicksort

Statistics, Data Analysis, and Simulation SS 2017

Zufallsvariablen [random variable]

Chemie wässriger Lösungen. Vorlesung zum Modul Chemie wässriger Lösungen

1. Was ist eine Wahrscheinlichkeit P(A)?

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen

OLS-Schätzung: asymptotische Eigenschaften

Statistische Methoden der Datenanalyse Wintersemester 2012/2013 Albert-Ludwigs-Universität Freiburg

Verteilung von Summen

Messprotokoll: Aufnahme der Quantenzufallszahl

Was machen Physikerinnen und Physiker mit einer Rechnerfarm?

Statistische Methoden in den Umweltwissenschaften

RRL GO- KMK EPA Mathematik. Ulf-Hermann KRÜGER Fachberater für Mathematik bei der Landesschulbehörde, Abteilung Hannover

Transkript:

Vorlesung: Rechnernutzung in der Physik Simulation mit der Monte Carlo-Methode Günter Quast Fakultät für Physik Institut für Experimentelle Teilchenphysik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft WS 17/18 www.kit.edu

Übersicht Grundsätzliches zur MC-Methode MC als Integrationsverfahren Zufallszahlen aus dem Computer Zufallszahlen mit beliebiger Verteilungsdichte Anwendungsbeispiele

Monte Carlo - Methode Numerisches Verfahren aus der Stochastik, um analytisch nicht oder nur aufwändig lösbare Probleme mit Hilfe der Wahrscheinlichkeitstheorie zu lösen. Anwendungsgebiete: Numerische Mathematik (Integration, Optimierung, Faltung, ). Angewandte Statistik (Bestimmung von Korrelationen, Fehlerfortpflanzung, Hypothesentests, ). Nachbildung komplexer Prozesse mit statistischem Verhalten (Vielteilchensysteme, Teilchenphysik, ). (1) Historie: Erste Idee: Enrico Fermi 1930er Jahre. Erste Ausführung: Stanislaw Ulam, John von Neumann 1947 (Los Alamos Projekt). Namensgebung durch John von Neumann (als code Name innerhalb des Projektes ).

Monte Carlo - Methode MC-Methode beginnt mit einer Reihe gleichverteilter Zufallszahlen. Diese Reihe kann entweder physikalisch bestimmt werden (z.b. Werfen eines Würfels, Zeitspanne zwischen zwei Zerfällen eines radioaktiven Präparats, ), oder mit Hilfe eines Zufallszahlengenerators als Pseudo-Zufallszahlen. (Pseudo-)Zufallszahlen : Ergebnis einer deterministischen Sequenz (insb. reproduzierbar) Innerhalb eines vorgegebenen Intervalls nach bester Möglichkeit gleichverteilt. In einem zweiten Schritt werden die gleichverteilten Zufallszahlen in beliebige Wahrscheinlichkeitsdichte transformiert.

Grundsätzliches Verfahren I. Erzeuge Folge von Zufallszahlen r1, r2,, rm, gleichverteilt in ]0,1]. II. Transformiere diese zur Erzeugung einer anderen Sequenz x1, x2,, xn, die einer Verteilungsdichte f(x) folgen (Anm.: x, xi können auch Vektoren sein!) III. Aus den xi werden dann Eigenschaften von f(x) bestimmt (z.b. Anteil der xi mit a xi b ergibt a b f(x) dx ) Grundsätzlich ist die MC-Methode eine Integrationsmethode in einer Dimension natürlich anderen Verfahren unterlegen!

Beispiel: Bestimmung von Script pi.py import numpy as np import matplotlib.pyplot as plt import sys npoints=10000 π Gleichmäßig über die Einheitsfläche verteilte Zufallszahlen, dann abzählen, wie viele davon innerhalb bzw. außerhalb des Viertelkreises liegen inx=[] iny=[] outx=[] outy=[] for i in range(npoints): rvec=np.random.rand(2) if (np.sum(rvec**2)<=1.): inx.append(rvec[0]) iny.append(rvec[1]) else: outx.append(rvec[0]) outy.append(rvec[1]) plt.scatter(inx, iny, s=1, color='g') plt.scatter(outx, outy, s=1, color='r') pi=4.*float(len(inx)) / \ float((len(inx)+len(outx))) plt.show() *==* script pi.py executing Total number of random points: 10000 Points inside circle: 7848 ==> pi= 3.139

Beispiel 2 Aus der Geometrie: Schnittvolumen eines Kegels und eins Torus - definiere Quader, der Schnittvolumen einschließt - zufällig gleichverteilte Punkte im Quadervolumen erzeugen - feststellen, ob Punkt im Schnittvolumen liegt, also im Torus UND im Kegel (relativ einfach zu machen!) - Anzahl der Punkte im Schnittvolumen zählen Verhältnis zur Gesamtzahl der Versuche entspricht dem Verhältnis des gesuchten Volumens zum Quader-Volumen schon fertig! Recht geringe intellektuelle Anstrengung, die Arbeit macht der Rechner! Nachteil: die Methode hat einen statistischen Fehler, berechenbar aus Binomialveterteilung P(N; n): Genauigkeit steigt mit N Methode ist ohne viel Aufwand auch auf mehr als drei Raumdimensionen zu erweitern, statistischer Fehler hängt nach wie vor nur von N ab - bei anderen Integrationsverfahren steigt die Anzahl der notwendigen Rechenschritte exponentiell mit der Zahl der Dimensionen!

MC ist eine Integrationsmethode Berechnung von Integralen: Verwende N gleichverteilte Zufallszahlen xi [a,b], Erwartungswert Mittelwert Insgesamt also

Statistische Unsicherheit von I Varianz von IMC: (Zentraler Grenzwertsatz) statistische Unsicherheit V[IMC] ist proportional zu V[Φ] und 1/N, d. h. Genauigkeit verbessert sich mit 1/ N Methode funktioniert auch in mehreren Dimensionen; Unsicherheit skaliert weiter mit N!

Beispiel: Bestimmung von π über Kreisfläche Beispiel: calc_pi.c Zahl der Punkte N Genauigkeit wird mit 1/ N besser

Vergleich mit Trapezmethode Trapezregel: Integration durch Summation über Funktionswerte f in n Intervallen der Länge h=(b-a)/n Abschätzung des Fehlers ΔIT (durch Taylor-Entwicklung von I und IT): In einer Dimension: n Intervalle pro Dimension ΔIT nimmt mit 1/n2 = n 2 ab In d Dimensionen: n1/d Intervalle pro Dimension ΔIT nimmt mit 1 / n2/d = n --2/d ab. MC-Methode ist dann besser, wenn gilt: -2/d < -1/2, also für d > 4 In hochdimensionalen Räumen ist Monte Carlo-Integration anderen Methoden überlegen Blobel/Lohrmann Abschnitt 5.6

weitere Beispiele Anwendung MC-Methode Aus Thermodynamik/Chemie: Zwei Sorten von Molekülen in einem Behälter bei einer bestimmten Temperatur stoßen miteinander und erzeugen neue Moleküle, wenn die Schwerpunktsenergie ausreicht. Gesucht ist die Zusammensetzung des Gases als Funktion der Zeit. Bei begrenzter Anzahl von Teilchen können Teilchenbahnen, Stöße und Umwandlungen verfolgt werden; durch Abzählen der Molekülsorten erhält man das Ergebnis. Aus der Physik: Messung der Lebensdauer von Teilchen mit Digitaluhr bei bestimmter Genauigkeit und Maximalzeit - zufällige Lebensdauer eines Teilchens aus Zerfallsgesetz (Exponentialverteilung) - zufälligen Messfehler addieren simulierter Messwert - Messwerte innerhalb der Maximalzeit akzeptieren Prozedur N-mal wiederholen Aus dem Mittelwert der erhaltenen Messwerte und Vergleich mit der wahren Lebensdauer erhält man eine Korrektur der durch das Messverfahren verfälschten Messwerte.

Simulierte Daten Zufallskomponente z bei der Gewinnung empirischer Daten ebenfalls mit Zufallszahlen modellierbar: gemessener Wert wahrer Wert m = w + z zufälliger Beitrag Funktion (=Modell) des wahren Wertes, y = f(x), und Modellierung der Messwerte mit MC: my = f( wx + zx ) + zy zx und zy entsprechen den Unsicherheiten der Messgrößen x und y

Beispiel: Faltungsintegral Grundsätzlich ist die MC-Methode ein Integrationsverfahren, bei der Simulation von Messwerten die Auswertung eines Faltungsintegrals : statt eines wahren Werts x wird ein durch Auflösungseffekte t(x',x) verschmierter Wert x' gemessen: Im Beispiel Lebensdauermessung ist f(x) die Verteilung der wahren Lebensdauern, t(x,x') beschreibt die Auflösung und Systematik des Messapparates. Bei der MC-Simulation werden zufällige Störungen der Reihe nach aufaddiert. Vorteil: einfach zu berechnende Summe von Zufallsvariablen entspricht einer Serie von komplizierten Faltungsintegralen In der Praxis werden Messwerte in der Regel von einer großen Zahl von Effekten verfälscht (Auflösung des Messgerätes, Rauschen, Digitalisierung, systematische Effekte usw.), d.h. die zu bestimmenden Faltungsintegrale sind hoch-dimensional. Simulierte Signale im CMS-Detektor

Zufallszahlen aus dem Computer

Zufallszahlen aus dem Computer Auf Computern (hoffentlich) nur deterministische Zahlenfolgen => auf Rechnern werden Pseudo-Zufallszahlen verwendet Anforderungen: zufällig verteilt mit langer Periode k(l)eine Korrelation zwischen aufeinanderfolgenen Werten Erzeugung muss schnell sein Reproduzierbarkeit solcher Zahlenfolgen oft erwünscht (nicht bei Spielen ) Einfacher Zufallszahlengenerator basiert auf Xn+1 = (a xn) mod 2k d. h. die letzten k bits (Bit-weises AND mit 2k-1) Allgemeiner (und besser): Xn+1 = (a xn +c ) mod m, ri= xi/m [0,1[ Linear Congruent Generator LCG m Modulus 0<a<m Multiplikator 0<c<m Inkrement 0 x0<m Startwert oder Seed Peridodenlänge ist höchstens m, im ungünstigen Fall viel kleiner a und c müssen geeignet gewählt werden!!!! Es gibt eine Vielzahl von Algorithmen und Implementierungen TIPP: Professionellen Zufallszahlen-Generator aus Standard-Bibliothek verwenden

es kann auch schief gehen. Sind die Zufallszahlen gut? - innerhalb der Folge zufällig verteilt? Differenzen von Zufallszahlen anschauen - gibt es Korrelationen zwischen aufeinander folgenden Zahlen? Betrachte Paare, Triplets, n-tuples von benachbarten Zahlen, einfache Kontrolle durch Auftragen als n-dim. Histogramm, auf Muster achten! s. Beispiel myrand.c Nur auf den ersten Blick ok Bei genauerem Hinsehen (Drehen) liegen alle ri auf Flächen im 3-dimensionalen Raum damit könnte man kein Kugelvolumen integrieren! Allgemein gilt ( siehe z.b. Brandt, Datenanalyse): N-Tuples von so erzeugten Zufallszahlen liegen auf Hyperebenen im n-dim Raum mit Ebenenabstand d ( ungefähr ) m -1/n Im obigen Beispiel wird die theoretische Grenze aber weit unterschritten!

Beispiel LCG: Um Zahlen zwischen 0 und 1 zu erhalten tansformiere: NB: as implemented in ROOT::TRandom::Rndm(). Es gibt aber noch bessere Generatoren mit (garantiert) längerer Periode z.b. Mersenne-Twister : 219927 1 (verfügbar in ROOT und und Standard in python) Periode:. Korrelation zwischen n-ten Nachbarn <10% bis n=25

Mersenne-Twister Algorithmus Matsumoto, Nishimura (1998) basiert auf Mersenne-Primzahlen (2n-1) Zustand wird beschrieben durch 624 Integer Zahlen (32 bit), die als Startwerte mit einem einfachen Generator initialisiert werden können. Extrem lange Periode (219937-1 106000) Gute Gleichverteilung bis zu 623 Dimensionen (bewiesen) Hinreichend schnell Root-Klasse TRandom3 Standard-Generator in Python

Qualität von Zufallszahlen wirklich zufällige Zufallszahlen sind auch das Herz einer jeden Verschlüsselungstechnik es gibt eine täglich wachsende Zahl neuer Generatoren, Algorithmen und Verfahren, bis hin zu physikalischen Quantensystemen Testverfahren, um Schwächen oder absichtliche Manipulation (ja, auch die gibt es) aufzudecken Testverfahren (kleine Auswahl): Trivialer Test: Histogramm der Zufallszahlen und Anpassung Summe der Abstandsquadrate χ2 sollte nahe 1 / d.o.f sein Moderne, fortgeschrittene Tests: G.Marsaglia, DieHard Battery of Tests of Randomness (1995) 15 verschiedene Tests P.L Ecuyer und R.Simard: TestU01 (2007) Small Crush (10 Tests), Crush (96 Tests), Big Crush (106 Tests) Es gibt Generatoren, die TestU01 überstehen Mersenne-Twister erfüllt nicht alle Tests der Big Crush Suite, gilt inzwischen als kryptographisch unsicher, da vorhersagbar Diese Einschränkungen für MT sind für unsere (wissenschaftlichen) Zwecke nicht relevant.

Quasi-Zufallszahlen Eine gleichmäßigere Abdeckung eines n-dimensionalen Raumes als mit Pseudo-Zufallszahlen lässt sich mit Quasi-Zufallszahlen erreichen Pseudo-Zufallszahlen klumpen MersenneTwister SobolSequenz Konvergenz ~1/N, besser als für Pseudo-Zufallszahlen S.Press et al Quasi-Zufallszahlen sind korreliert. Nur für Integration! Sequenz muß fortgesetzt werden. Dimension nachträglich nicht veränderbar

Erzeugung von Zufallszahlen mit beliebiger Verteilungsdichte

Funktionen von Zufallszahlen Computerexperiment: Häufigkeitsverteilung von... r = np.random.rand(10000) t = -np.log(1-r) plt.hist(t, 30, normed=1) plt.show() Wir erhalten exponentiell verteilte Zufallszahlen t! Erklärung: Erhalt der Wahrscheinlichkeit Regel für die Transformation von Verteilungsdichten Anm.: t=log(r) statt t=log(1-r) ergibt identisches Ergebnis (warum?)