Fakultät Informatik, Institut für Angewandte Informatik, Professur Modellierung und Simulation

Einführung in die Simulation

Dr. Christoph Laroque Wintersemester 11/12

Dresden, 11.10.2011 01.11.2011

Einführung in die Simulation Wintersemester 11/12

ERZEUGUNG VON ZUFALLSVERTEILTEN EINGABEDATEN 01.11.2011

Einführung in die Simulation

Folie Nr. 2

Wozu noch mal zufallsverteilte Eingabedaten? Die Realität unterliegt Unsicherheit. Aufgezeichneter Daten bilden nur eine (vielleicht unwahrscheinliche) Möglichkeit des Verhaltens ab. Mittel zu Abstraktion Wo werden diese Eingabedaten verwendet: • Bearbeitungszeiten • Terminierung von Störfällen und seltenen Ereignissen • Vom modellierten System nicht beeinflussbare externe Einflüsse (Ankunftszeiten von Kunden, Aufträgen, etc…) Einführung in die Simulation

Folie Nr. 3

Grundbegriffe • • • • •

Zufallsexperiment Ereignis Wahrscheinlichkeit Zufallsvariable Wahrscheinlichkeitsverteilung

Nachzulesen in: • • •

Teschl, G. und Teschl, S.: Mathematik für Informatiker, Band 2 Bamberg, G. und Baur, F.: Statistik Law, A. M. und Kelton, W. D.: Simulation Modeling and Analysis

Einführung in die Simulation

Folie Nr. 4

Wichtige Form- und Lageparameter Erwartungswert (Lage der Dichtefunktion) 𝜇 Varianz (Ausbreitung der Dichtefunktion) 𝜎 2 Standardabweichung

𝜎

Median (Variationskoeffizient (Normierung der Varianz)

𝜎 𝜇

Schiefe)

Einführung in die Simulation

Folie Nr. 5

𝐹 𝑥 = 𝑃(𝑋 ≤ 𝑥)

Verteilungsfunktion 𝐹 𝑥 = 𝑃(𝑋 ≤ 𝑥) Wächst monoton von 0 bis 1 Rechtsseitig stetig X ist stetig (kontinuierlich), wenn F(x) stetig ist Springt F(x) an einer Stelle x0, dann ist die Sprunghöhe die Wahrscheinlichkeit für X=x0

Einführung in die Simulation

Folie Nr. 7

Empirische Verteilungen (a) Diskrete, empirische Verteilungen (b) Kontinuierliche, empirische Verteilungen Vorteile • • •

Alle möglichen Formen möglich Direkte Integration von Realdaten Anpassung einer theoretischen Verteilung mit all ihren Tücken nicht nötig

Nachteile • • •

Große Speicheranforderungen Keine Zufallszahlen über die beobachtete Realität hinaus Bei kontinuierlichen Verteilungen komplexe Abbildung durch stückweise zusammengesetzte Funktion Einführung in die Simulation

Folie Nr. 8

Empirische Verteilungen (Erzeugung) Ergebnisse einer Klausur: 1, 2, 2, 3, 4, 4, 5, 5, 5, 1, 2, 2, 5, 5, 3, 3, 3, 1, 2, 5, 5

Einführung in die Simulation

Folie Nr. 9

Theoretische Verteilungen Diskrete theoretische Verteilungen • • • • •

Bernoulli Gleichverteilung Binomial Geometrisch Poisson

Kontinuierliche theoretische Verteilungen • • • • • • • •

Gleichverteilung Exponential Gamma Weibull Normal Log-Normal Beta Dreieck Einführung in die Simulation

Folie Nr. 10

Binomialverteilung binom(p,t) Anwendung bei der Bestimmung der Erfolge in t unabhängigen Bernoulliexperimenten mit P(x)=p • Anzahl fehlerhafter Teile in einem Los der Größe t, bei P(fehlerhaft)=p  Wahrscheinlichkeit für kein fehlerhaftes Teil?  Wahrscheinlichkeit für ein fehlerhaftes Teil?  Wahrscheinlichkeit für höchstens ein fehlerhaftes Teil?

Einführung in die Simulation

Folie Nr. 11

Gleichverteilung uniform(a,b) Anwendung zur: • Erzeugung von Zufallszahlen aller anderen Verteilungen, wenn a=0 und b=1 • Das Verhalten eines Elements zufällig erscheint, aber keine weiteres Wissen vorliegt  0te-Näherung

Einführung in die Simulation

Folie Nr. 12

Exponentialverteilung expo(𝛽 ) Anwendung bei: • Zeiten zwischen Ankünften von Kunden/ Aufträgen/ … im modellierten System • Zeit bis zum Ausfall eines Teils Wichte Beziehungen zur Warteschlangentheorie und PoissonProzessen

Einführung in die Simulation

Folie Nr. 13

Normalverteilung norm(

𝜇 , 𝜎2 )

Anwendung zur • Beschreibung von Messgrößen natürlicher Prozesse (Körpergröße von Menschen, …) Achtung: • Gilt als Verallgemeinerung nur bei sehr großen Stichprobenumfang (Gesetzt der großen Zahlen), wenn zusätzlich die Stichproben unabhängig voneinander sind -> Meist gilt dies nicht! Lästig: • Generierte Zufallszahlen liegen immer im Intervall von

−∞ bis +∞ .

Hilfreich: • Viele mathematischen Theorien sind mit Normalverteilung einfach zu 𝜇 𝜎 rechnen 3𝜎 2𝜎 Zufallszahlen liegen im Abstand • ca. 68% aller zu . Ca. 95% im Abstand und ca. 99,7% im Abstand . Einführung in die Simulation

Folie Nr. 14

Vor- und Nachteile theoretischer Verteilung • Bestimmung und Parametrisierung einer passenden Verteilung ist schwierig • Verteilung lässt sich leicht ändern, da meist nur ein oder zwei Parameter • Kompakte Formulierung • Großer Wertebereich

Einführung in die Simulation

Folie Nr. 15

Auswahl einer passenden Verteilung

1. Realdaten auf Unabhängigkeit prüfen 2. Auswahl der richtigen Verteilungsfamilie 3. Schätzen der richtigen Parameter 4. Bewerten der gewählten Verteilung

Einführung in die Simulation

Folie Nr. 16

Wozu Zufallszahlen? Simulation  Mittels automatisch generierter Zufallszahlen lassen sich realitätsnahe Inputdaten aus beliebigen Verteilungen generieren  Ergo: Gute Zufallszahlen sind für die diskrete Simulation sehr wichtig Kryptographie  Zur Verschlüsselung von Nachrichten, z. B. Enigma Computerprogrammierung  Um Zufall in Spielen zu implementieren, z. B. die Kartenverteilung im Skat oder intelligentere Gegner…

Einführung in die Simulation

Folie Nr. 17

Zufallszahlen: Stichproben und Generatoren Bisher wurden Zufallszahlen als gegeben hingenommen Aber: Aus Wahrscheinlichkeitsverteilungen müssen Stichproben, d.h. eine zufällige und repräsentative Auswahl endlich vieler Werte aus der Grundgesamtheit, gewonnen werden

Wie erzeugt man Zufall? Prozessgenerator: Verfahren, das aus einer gegebenen Verteilung eine Stichprobe ermittelt

Einführung in die Simulation

Folie Nr. 18

Generierung von Zufallszahlen Gute Zufallszahlen sind für die diskrete Simulation sehr wichtig Definition: Ein Bitfolge ist „zufällig”, wenn sie nicht mit weniger Bits, als die Folge selbst hat, beschrieben werden kann • 01010000001010011011... vs. 01010101010101... „Bibel”: Donald E. Knuth: The Art of Computer Programming, Vol. 2, Seminumerical Algorithms Alle Entwicklungsumgebungen für Simulation haben eingebaute Zufallszahlengeneratoren Zufallszahlen werden gleichverteilt zwischen 0 und 1 generiert und in die gewünschte Verteilung transformiert

Einführung in die Simulation

Folie Nr. 19

Anforderungen an Zufallszahlen Die Zahlen sollen gleichverteilt sein (zw. 0 und 1) Die produzierten Zahlen sollen statistisch unabhängig sein – eine Zahl darf den Wert der nächsten Zufallszahl nicht beeinflussen Eine Folge von Zufallszahlen soll reproduzierbar sein, um Simulationsexperimente wiederholen zu können Aber: die Folge soll sich für jede beliebige Länge nicht wiederholen (keine Periodizität) (in der Praxis: Wiederholungszyklus muss sehr lang sein) Die Generierung muss sehr schnell sein – meist wird eine große Anzahl von Zufallszahlen benötigt Der Generator sollte speichereffizient sein

Einführung in die Simulation

Folie Nr. 20

Echte Zufallszahlen Beispiele:  Ergebnis bei Lotto oder Roulette  die letzten (unbedeutendsten) Ziffer einer (elektronischen) Uhrzeit  Zähler der kosmischen Strahlung  Web-Adresse: ... Suchanfragen-Trefferquoten bei Google?  … Nachteil: Sequenzen von echten Zufallszahlen sind nicht reproduzierbar Echte Zufallszahlen können gekauft werden!

Einführung in die Simulation

Folie Nr. 21

Pseudozufallszahlen deterministische Erzeugung von Zufallszahlen:  eine Zahl wird aus ihrem unmittelbaren Vorgänger erzeugt  dabei wird ein Algorithmus mit einem Startwert (seed) benutzt  der gleiche Startwert erzeugt den gleichen Strom von Zufallszahlen  Frühe Methoden: Fibonacci, Mid-Square  Neuere Methoden: Lineare/Multiplikative Kongruenzmethoden

Methoden prinzipiell periodisch, aber mit geeigneten Startwerten ist die Periode ausreichend lang

Einführung in die Simulation

Folie Nr. 22

Mid-Square-Methode Nur historische Bedeutung Vorgeschlagen von John von Neumann 8234  8234²  67798756  7987  7921, 7422, 0860, ... Qualität ist sehr abhängig vom Startwert  0  0, 0, 0, 0, ...  2-stellige Zahl  alle nachfolgenden Zahlen sind 2-

stellig

Einführung in die Simulation

Folie Nr. 23

Fibonacci-Methode Auch nur historische Bedeutung Sei Xi die i-te generierte Zahl und m Modulus:  Xi = (Xi-1 + Xi-2) mod m.

Beispiel: m = 1000, X0 = 1, X1 = 1

Wer mag, kann das mal schnell ausprobieren…

Einführung in die Simulation

Folie Nr. 24

Lineare Kongruenzmethode Seien a, c und m positiv und ganzzahlig. Pseudozufallszahl Xi+1 ergibt sich aus dem Vorgänger Xi durch die Operation

 Xi+1 = (a Xi + c) mod m wobei Seed X0 natürliche Zahl  Beispiel: Xi+1 = (2 Xi + 3) mod 10 mit Startwert X0 = 0 ? Die statistische Qualität der Zufallszahlen hängt von den Parametern a, c und m ab Wenn c = 0  multiplikative Kongruenzmethode Einführung in die Simulation

Folie Nr. 25

Tests für Pseudozufallszahlen Frequenz-Test (Gleichverteilung der Zahlen): Zahlenfolge mit n Zahlen wird in m Teilintervalle s zerlegt Berechnung der erwarteten Häufigkeit: Eingetroffene Häufigkeit YS zählen Die Ergebnisse sollten gleichverteilt sein Test z. B. mit einem χ2 –Anpassungstest

Einführung in die Simulation

Folie Nr. 26

Generierung anderer Verteilungen Transformation in eine stetige Gleichverteilung im Intervall [a,b]:  Transformation y = a + (b - a) x. Transformation in eine diskrete Gleichverteilung im Bereich [0,b]:  stetige Zufallszahlen zwischen 0 und b + 1 werden generiert  Nachkommastellen werden abgeschnitten.

Einführung in die Simulation

Folie Nr. 27

Inversion der Wahrscheinlichkeitstransformation Jede Verteilung kann auf eine Gleichverteilung im Intervall [0,1] zurückgeführt werden Dabei wird die kumulative Verteilungsfunktion C(x) [cdf, cumulative distribution function] invertiert! Funktioniert für stetige und diskrete Verteilungen! Kann   

für jede Verteilung eingesetzt werden Insbesondere, wenn die cdf „analytisch erfasst“ ist z.B. bei Exponentialverteilung Schwieriger bei Normalverteilung, weil die cdf nicht analytisch umkehrbar (und auch schwer zu ermitteln) ist  numerische Lösung notwendig

Einführung in die Simulation

Folie Nr. 28

Einführung in die Simulation Wintersemester 11/12

FRAGEN? [email protected]

01.11.2011

Einführung in die Simulation

Folie Nr. 29