Hauptseminar: Einfache Monte Carlo-Algorithmen

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Lösung nichtlinearer Gleichungssysteme
Definition [1]: Sei S eine endliche Menge und sei p eine Abbildung von S in die positiven reellen Zahlen Für einen Teilmenge ES von S sei p definiert.
Eine dynamische Menge, die diese Operationen unterstützt,
Simulation komplexer technischer Anlagen
Schnelle Matrizenoperationen von Christian Büttner
im Rahmen der Vorlesung
Kapitel 6: Klassifizierung von Sortiertechniken
Genetische Algorithmen für die Variogrammanpassung
Grundlagen der Simulation: Übungsaufgabe
Mathematik des Bridge Tanja Schmedes.
Numerik partieller Differentialgleichungen
Algorithmentheorie 04 –Hashing
WS 03/04 Algorithmentheorie 03 - Randomisierung Prof. Dr. S. Albers Prof. Dr. Th. Ottmann.
Computerkurs: Quantitative Auswertung biochemischer Experimente Guten Morgen.
Konfidenzintervalle für Parameter
Portfoliomodelle Faktormodelle
handlungsorientierte Zugänge zur Algebra
Treibstoff für den Optimierungsmotor Evolutionsstrategie.
Konfidenzintervalle Intervallschätzung
Die Student- oder t-Verteilung
Konfidenzintervalle Intervallschätzung Jeder Beobachtung wird ein Intervall C( ) der reellen Zahlen zugeordnet Niveau Dabei ist die Wahrscheinlichkeit,
Achtung Vorlesung am Montag, den 21. Juni Zeit: Uhr Ort: Kiste.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
§14 Basis und Dimension (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
ITAP Teeseminar, , Seite 1U. Koschella: Konzepte von DecaDeco (MC-Code von M. Mihalkovič) Konzepte von DecaDeco Monte-Carlo Code für dekagonale.
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Ideen der Informatik Suchen und Sortieren [Ordnung muss sein…]
Effiziente Algorithmen
Ausgleichungsrechnung I
Die Finalisten für den Advanced Encryption Standard Advanced Encryption Standard Herbert Frohner Sebastian Hegenbart Joachim Kerschbaumer.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Polynome und schnelle Fourier-Transformation
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Knowledge Discovery Erzeugung künstlicher Telekommunikationsdaten
Institut für Theoretische Informatik
AES – Advanced Encryption Standard
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Mathematik 1. Studienjahr Modul M1: Elemente der Mathematik
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
Erzeugung und Verwendung von Zufallszahlen
Toleranzanalyse und Simulation Beispiel 1, Montage von Einzelteilen
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Statistik – Regression - Korrelation
Analyse der Laufzeit von Algorithmen
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Zufallsprogrammierung
Der A*-Algorithmus.
K. Desch - Statistik und Datenanalyse SS05
Der Wiener Prozess und seltene Ereignisse
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Es ist ein ORANGER KREIS
 Präsentation transkript:

Hauptseminar: Einfache Monte Carlo-Algorithmen Zufallszahlen (Kapitel 1.1 & 1.3, Müller-Gronbach, T., Novak & Ritter, K. (2012). Monte Carlo-Algorithmen) 17.10.2013, Vincent Höhn

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen 17.10.2013, Vincent Höhn

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen 17.10.2013, Vincent Höhn

Definition (randomisierter Algorithmus): „Ein Algorithmus, der im Laufe seiner Ausführung gewisse Entscheidungen zufällig trifft, heißt randomisierter Algorithmus" Algorithmen, die neben den „normalen“ Befehlen auch Befehle der Art Wähle x [0,1] zufällig Wähle x {0,.1,…,N-1} zufällig erlauben Definition (Monte Carlo Algorithmus): „Monte Carlo-Algorithmen sind randomisierte Algorithmen, die mit einer kleinen Wahrscheinlichkeit ein falsches Ergebnis liefern dürfen.“ 1.1 Was sind Monte Carlo-Algorithmen?

Literatur: ‚stochastische Algorithmen‘ = ‚Monte Carlo Algorithmen‘ = ‚randomisierte Algorithmen‘ Randomisierter Algorithmus Las Vegas-Algorithmus Monte Carlo-Algorithmus Suchprobleme Entscheidungsprobleme Einseitiger Fehler Zweiseitiger Fehler 1.1 Was sind Monte Carlo-Algorithmen?

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Vor- & Nachteile von Monte Carlo-Algorithmen + - Einfachheit: Implementierung & Verständnis Unkorrektheit: Ergebnis nicht zwangsläufig richtig 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Worum geht‘s?: Zufällige, aber gleichverteilte Erzeugung von Punkten innerhalb eines Quadrats Wie viele Punkte sind innerhalb des vom Quadrat eingeschlossenen Kreises? z.B. pro Durchlauf jeweils drei Punkte Startsituation: 1.3 Kurzes motivierendes Beispiel

Ablauf/Durchführung: Treffer: 3 Gesamt: 3 Treffer: 4 Gesamt: 6 Treffer: 7 Gesamt: 9 Laufzeit: 3000 erzeugte Punkte: 0.000446 s 3.000.000.000 erzeugte Punkte: 3m 31s Treffer: 9 Gesamt: 12 Treffer: 12 Gesamt: 15

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Enrico Fermi John von Neumann Stanislaw Ulam 1930er: Erste signifkante wissenschaftliche Verwendung von MC- Simulationen durch Enrio Fermi zum Neutronentransport in spaltbarem Material. 1940er: Entwicklung des ersten numerischen Verfahrens zur Lösung hyperbolischer partieller Differentialgleichungen durch John von Neumann und Stanislaw Ulam. 2.1 Pioniere der randomisierten Algorithmen

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

nichtdeterministisch (‚echte‘ Zufallszahlen) Zufallsgenerator nichtdeterministisch (‚echte‘ Zufallszahlen) deterministisch (Pseudozufallszahlen) Physikalisch z.B.: radioaktiver Zerfallsvorgang quasizufällige Ereignisse z.B.: Systemzeit Ein deterministischer Zufallsgenerator erzeugt eine Zahlenfolge, die zwar zufällig aussieht, es aber nicht ist. Die Folgen sind periodisch und bei selbem Startwert liefert der Generator immer dieselbe Folge. => Reproduzierbarkeit => Für M.C. Algorithmen werden deterministische Pseudozufallsgeneratoren verwendet. 2.2 Arten von Zufallsgeneratoren

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Abbildungen g: A B f:B B h:B Z Bestandteile eines Pseudozufallszahlengenerator in Z=[0;1] oder Z={0,…,N-1}: Endliche Menge A und B Abbildungen g: A B f:B B h:B Z Typischer Wert für Kardinalität von B: |B|= Vorgehen: Wahl eines Startwerts definiert Folge in B Sukzessive Aufrufe des Generators (x:=rand(), werden Pseudo-Zufallszahlen erzeugt Stets Startwert s und verwendeten Generator angeben Mersenne Twister: |B|= 2.3 Wie funktioniert ein Pseudozufallszahlengenerator?

Zwei Möglichkeiten zur Wahl des Startwerts (=‚seed‘): Benutzer gibt ihn vor (R: set.seed() ) System erzeugt ihn Es sollten nur Zufallszahlengeneratoren benutzt werden, die sich für ähnliche Probleme bereits gut bewährt haben. Darüber hinaus sollten wichtige Rechnungen nach Möglichkeit mit verschiedenen Generatoren durchgeführt werden. MATLAB: resettet Startwert bei jedem Start von MATLAB. R: generiert Startwert basierend auf der Systemzeit 2.3 Wie funktioniert ein Pseudozufallszahlengenerator?

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Mersenne Twister & Generator TT800: 1997 entwickelt von Makoto Matsumoto und Takuji Nishimura Extrem lange Periode: Algorithmus: Startwerte Zählt zur Gruppe der linearen Generatoren Nicht für kryptographische Zwecke geeignet Sehr schnell & Zufallszahlen hoher Güte Standard-Generator in MATLAB, R und MAPLE „kleiner Bruder“ TT800: Periodenlänge: - 1 gleiches Funktionsprinzip, weniger Startwerte 2.4 Beispiele für Zufallsgeneratoren

Advanced Encryption Standard (AES) 1997/1998 entwickelt von Joan Daemen und Vincent Rijmen Nachfolger des ‚Data Encryption Standard‘ Basiert auf dem Rijndael-Verschlüsselungsalgorithmus Sehr sicherer Kryptologie-Algorithmus Verwendung für Dokumente höchster Geheimhaltungsstufe 2.4 Beispiele für Zufallsgeneratoren

Betrachtung der Nachkommastellen einer irrationalen Zahl: Betrachtung von , e, ln(2) oder Nicht-periodische Zahlenfolge(!) Gleichverteilung wird vermutet, aber ist nicht bewiesen Kurzer Exkurs: Normalität von : Sequenzen jeglicher Länge sind jeweils gleichverteilt (P(1)=P(2), P(1 2 3)=P (3 8 5)) David Bailey: Umrechnung in quartäres Zahlensystem = 3,0210033…(www.mathisfun.com) Anschließend Simulation als Random-Walk Färbung anhand der Position der Dezimalstelle gigapan.com/gigpans/106803 ersten 100 Mrd. Stellen (rot, orange, grün, kurz vor 100 Mrd.ster Stelle blau violett) 2.4 Beispiele für Zufallsgeneratoren

1.1 Was sind Monte Carlo-Algorithmen?

1 Allgemeines 1. 1 Was sind Monte Carlo-Algorithmen. 1 1 Allgemeines 1.1 Was sind Monte Carlo-Algorithmen? 1.2 Vor- & Nachteile von Monte Carlo-Algorithmen 1.3 kurzes motivierendes Beispiel 2 Zufallszahlengeneratoren 2.1 Pioniere der randomisierten Algorithmen 2.2 Arten von Zufallsgeneratoren 2.3 Wie funktioniert ein Pseudozufallszahlengenerator? 2.4 Beispiele für Zufallsgeneratoren 3 Zufallszahlen und gleichverteilte Zufallsvariablen Vincent Höhn, 17.10.2013

Zufallszahlen aus [0;1]: d-dim. Zufallsvektor X ist gleichverteilt auf falls er die Lebesgue- Dichte besitzt. & Konstruktion eines d-dim. auf gleichverteilten Zufallsvektor durch Zusammenfassen von d unabhängigen auf [0;1] gleichverteilten Zufallsvariablen. Zerlegungssatz: „Unterteilt man eine unabhängige Folge von n*d reellwertigen auf [0;1] gleichverteilten Zufallsvariablen in die disjunkten Blöcke , so erhält man eine unabhängige Folge von n Zufallsvektoren der Dimension d, die jeweils auf gleichverteilt sind. idealer Generator auf [0;1]: unabhängige Folge von jeweils auf [0;1] gleichverteilten Zufallsvariablen. 3 Zufallszahlen und gleichverteilte Zufallsvariablen

Zufallszahlen aus {0,…,N-1}: Zufallsvariable X gleichverteilt auf endlicher Menge B mit N Elementen, falls alle Elemente aus B dasselbe Gewicht 1/N besitzen. Idealer Generator auf {0,…N-1}: unabhängige Folge von von jeweils auf B gleichverteilten Zufallsvariablen. n-maliger Aufruf des Generators liefert uns n Zufallszahlen aus B. Konstruktion von auf {0,…,N-1} gleichverteilten Zufallszahlen durch auf [0;1] gleichverteilten Zufallszahlen mit Hilfe der floor-Funktion. 3 Zufallszahlen und gleichverteilte Zufallsvariablen

Q&A