29.01.2014 Aufrufe

Einführung in die Simulation Dr. Christoph ... - Fakultät Informatik

Einführung in die Simulation Dr. Christoph ... - Fakultät Informatik

Einführung in die Simulation Dr. Christoph ... - Fakultät Informatik

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Fakultät</strong> <strong>Informatik</strong>, Institut für Angewandte <strong>Informatik</strong>, Professur Modellierung und <strong>Simulation</strong><br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong><br />

<strong>Dr</strong>. <strong>Christoph</strong> Laroque<br />

W<strong>in</strong>tersemester 11/12<br />

<strong>Dr</strong>esden, 11.10.2011<br />

01.11.2011


<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong><br />

W<strong>in</strong>tersemester 11/12<br />

ERZEUGUNG VON<br />

ZUFALLSVERTEILTEN<br />

EINGABEDATEN<br />

01.11.2011<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 2


Wozu noch mal zufallsverteilte E<strong>in</strong>gabedaten?<br />

Die Realität unterliegt Unsicherheit.<br />

Aufgezeichneter Daten bilden nur e<strong>in</strong>e (vielleicht<br />

unwahrsche<strong>in</strong>liche) Möglichkeit des Verhaltens ab.<br />

Mittel zu Abstraktion<br />

Wo werden <strong>die</strong>se E<strong>in</strong>gabedaten verwendet:<br />

• Bearbeitungszeiten<br />

• Term<strong>in</strong>ierung von Störfällen und seltenen Ereignissen<br />

• Vom modellierten System nicht bee<strong>in</strong>flussbare externe<br />

E<strong>in</strong>flüsse<br />

(Ankunftszeiten von Kunden, Aufträgen, etc…)<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 3


Grundbegriffe<br />

• Zufallsexperiment<br />

• Ereignis<br />

• Wahrsche<strong>in</strong>lichkeit<br />

• Zufallsvariable<br />

• Wahrsche<strong>in</strong>lichkeitsverteilung<br />

Nachzulesen <strong>in</strong>:<br />

• Teschl, G. und Teschl, S.: Mathematik für <strong>Informatik</strong>er, Band 2<br />

• Bamberg, G. und Baur, F.: Statistik<br />

• Law, A. M. und Kelton, W. D.: <strong>Simulation</strong> Model<strong>in</strong>g and Analysis<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 4


Wichtige Form- und Lageparameter<br />

Erwartungswert (Lage der Dichtefunktion)<br />

μ<br />

Varianz (Ausbreitung der Dichtefunktion)<br />

σ 2<br />

Standardabweichung<br />

σ<br />

Median<br />

(Variationskoeffizient (Normierung der Varianz)<br />

σ<br />

μ<br />

Schiefe)<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 5


F x = P(X ≤ x)<br />

Verteilungsfunktion<br />

F x = P(X ≤ x)<br />

Wächst monoton von 0 bis 1<br />

Rechtsseitig stetig<br />

X ist stetig (kont<strong>in</strong>uierlich), wenn F(x) stetig ist<br />

Spr<strong>in</strong>gt F(x) an e<strong>in</strong>er Stelle x 0 , dann ist <strong>die</strong> Sprunghöhe <strong>die</strong><br />

Wahrsche<strong>in</strong>lichkeit für X=x 0<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 7


Empirische Verteilungen<br />

(a) Diskrete, empirische Verteilungen<br />

(b) Kont<strong>in</strong>uierliche, empirische Verteilungen<br />

Vorteile<br />

• Alle möglichen Formen möglich<br />

• Direkte Integration von Realdaten<br />

• Anpassung e<strong>in</strong>er theoretischen Verteilung mit all ihren Tücken<br />

nicht nötig<br />

Nachteile<br />

• Große Speicheranforderungen<br />

• Ke<strong>in</strong>e Zufallszahlen über <strong>die</strong> beobachtete Realität h<strong>in</strong>aus<br />

• Bei kont<strong>in</strong>uierlichen Verteilungen komplexe Abbildung durch<br />

stückweise zusammengesetzte Funktion<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 8


Empirische Verteilungen (Erzeugung)<br />

Ergebnisse e<strong>in</strong>er Klausur:<br />

1, 2, 2, 3, 4, 4, 5, 5, 5, 1, 2, 2, 5, 5, 3, 3, 3, 1, 2, 5, 5<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 9


Theoretische Verteilungen<br />

Diskrete theoretische Verteilungen<br />

• Bernoulli<br />

• Gleichverteilung<br />

• B<strong>in</strong>omial<br />

• Geometrisch<br />

• Poisson<br />

Kont<strong>in</strong>uierliche theoretische Verteilungen<br />

• Gleichverteilung<br />

• Exponential<br />

• Gamma<br />

• Weibull<br />

• Normal<br />

• Log-Normal<br />

• Beta<br />

• <strong>Dr</strong>eieck<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 10


B<strong>in</strong>omialverteilung<br />

b<strong>in</strong>om(p,t)<br />

Anwendung bei der Bestimmung der Erfolge <strong>in</strong> t<br />

unabhängigen Bernoulliexperimenten mit P(x)=p<br />

• Anzahl fehlerhafter Teile <strong>in</strong> e<strong>in</strong>em Los der Größe t, bei<br />

P(fehlerhaft)=p<br />

Wahrsche<strong>in</strong>lichkeit für ke<strong>in</strong> fehlerhaftes Teil?<br />

Wahrsche<strong>in</strong>lichkeit für e<strong>in</strong> fehlerhaftes Teil?<br />

Wahrsche<strong>in</strong>lichkeit für höchstens e<strong>in</strong> fehlerhaftes Teil?<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 11


Gleichverteilung<br />

uniform(a,b)<br />

Anwendung zur:<br />

• Erzeugung von Zufallszahlen aller anderen<br />

Verteilungen, wenn a=0 und b=1<br />

• Das Verhalten e<strong>in</strong>es Elements zufällig ersche<strong>in</strong>t, aber<br />

ke<strong>in</strong>e weiteres Wissen vorliegt<br />

0te-Näherung<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 12


Exponentialverteilung<br />

expo( β )<br />

Anwendung bei:<br />

• Zeiten zwischen Ankünften von Kunden/ Aufträgen/ …<br />

im modellierten System<br />

• Zeit bis zum Ausfall e<strong>in</strong>es Teils<br />

Wichte Beziehungen zur Warteschlangentheorie und Poisson-<br />

Prozessen<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 13


Normalverteilung<br />

μ σ 2<br />

norm( , )<br />

Anwendung zur<br />

• Beschreibung von Messgrößen natürlicher Prozesse (Körpergröße von<br />

Menschen, …)<br />

Achtung:<br />

• Gilt als Verallgeme<strong>in</strong>erung nur bei sehr großen Stichprobenumfang<br />

(Gesetzt der großen Zahlen), wenn zusätzlich <strong>die</strong> Stichproben<br />

unabhängig vone<strong>in</strong>ander s<strong>in</strong>d -> Meist gilt <strong>die</strong>s nicht!<br />

Lästig:<br />

• Generierte Zufallszahlen liegen immer im Intervall von bis .<br />

−∞ +∞<br />

Hilfreich:<br />

• Viele mathematischen Theorien s<strong>in</strong>d mit Normalverteilung e<strong>in</strong>fach zu<br />

rechnen<br />

σ μ<br />

• ca. 68% aller 2σ Zufallszahlen liegen im Abstand 3σ zu . Ca. 95% im<br />

Abstand und ca. 99,7% im Abstand .<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 14


Vor- und Nachteile theoretischer Verteilung<br />

• Bestimmung und Parametrisierung e<strong>in</strong>er passenden<br />

Verteilung ist schwierig<br />

• Verteilung lässt sich leicht ändern, da meist nur e<strong>in</strong> oder<br />

zwei Parameter<br />

• Kompakte Formulierung<br />

• Großer Wertebereich<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 15


Auswahl e<strong>in</strong>er passenden Verteilung<br />

1. Realdaten auf Unabhängigkeit prüfen<br />

2. Auswahl der richtigen Verteilungsfamilie<br />

3. Schätzen der richtigen Parameter<br />

4. Bewerten der gewählten Verteilung<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 16


Wozu Zufallszahlen?<br />

<strong>Simulation</strong><br />

• Mittels automatisch generierter Zufallszahlen lassen sich<br />

realitätsnahe Inputdaten aus beliebigen Verteilungen<br />

generieren<br />

• Ergo: Gute Zufallszahlen s<strong>in</strong>d für <strong>die</strong> diskrete <strong>Simulation</strong><br />

sehr wichtig<br />

Kryptographie<br />

• Zur Verschlüsselung von Nachrichten, z. B. Enigma<br />

Computerprogrammierung<br />

• Um Zufall <strong>in</strong> Spielen zu implementieren, z. B. <strong>die</strong><br />

Kartenverteilung im Skat oder <strong>in</strong>telligentere Gegner…<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 17


Zufallszahlen: Stichproben und Generatoren<br />

Bisher wurden Zufallszahlen als gegeben h<strong>in</strong>genommen<br />

Aber:<br />

Aus Wahrsche<strong>in</strong>lichkeitsverteilungen müssen Stichproben,<br />

d.h. e<strong>in</strong>e zufällige und repräsentative Auswahl endlich<br />

vieler Werte aus der Grundgesamtheit, gewonnen werden<br />

Wie erzeugt man Zufall?<br />

Prozessgenerator: Verfahren, das aus e<strong>in</strong>er gegebenen<br />

Verteilung e<strong>in</strong>e Stichprobe ermittelt<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 18


Generierung von Zufallszahlen<br />

Gute Zufallszahlen s<strong>in</strong>d für <strong>die</strong> diskrete <strong>Simulation</strong> sehr wichtig<br />

Def<strong>in</strong>ition:<br />

E<strong>in</strong> Bitfolge ist „zufällig”, wenn sie nicht mit weniger Bits, als <strong>die</strong><br />

Folge selbst hat, beschrieben werden kann<br />

• 01010000001010011011... vs. 01010101010101...<br />

„Bibel”:<br />

Donald E. Knuth:<br />

The Art of Computer Programm<strong>in</strong>g, Vol. 2, Sem<strong>in</strong>umerical Algorithms<br />

Alle Entwicklungsumgebungen für <strong>Simulation</strong> haben e<strong>in</strong>gebaute<br />

Zufallszahlengeneratoren<br />

Zufallszahlen werden gleichverteilt zwischen 0 und 1<br />

generiert und <strong>in</strong> <strong>die</strong> gewünschte Verteilung transformiert<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 19


Anforderungen an Zufallszahlen<br />

Die Zahlen sollen gleichverteilt se<strong>in</strong> (zw. 0 und 1)<br />

Die produzierten Zahlen sollen statistisch unabhängig se<strong>in</strong> – e<strong>in</strong>e<br />

Zahl darf den Wert der nächsten Zufallszahl nicht bee<strong>in</strong>flussen<br />

E<strong>in</strong>e Folge von Zufallszahlen soll reproduzierbar se<strong>in</strong>, um<br />

<strong>Simulation</strong>sexperimente wiederholen zu können<br />

Aber: <strong>die</strong> Folge soll sich für jede beliebige Länge nicht wiederholen<br />

(ke<strong>in</strong>e Periodizität)<br />

(<strong>in</strong> der Praxis: Wiederholungszyklus muss sehr lang se<strong>in</strong>)<br />

Die Generierung muss sehr schnell se<strong>in</strong> – meist wird e<strong>in</strong>e große<br />

Anzahl von Zufallszahlen benötigt<br />

Der Generator sollte speichereffizient se<strong>in</strong><br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 20


Echte Zufallszahlen<br />

Beispiele:<br />

• Ergebnis bei Lotto oder Roulette<br />

• <strong>die</strong> letzten (unbedeutendsten) Ziffer e<strong>in</strong>er<br />

(elektronischen) Uhrzeit<br />

• Zähler der kosmischen Strahlung<br />

• Web-Adresse: ... Suchanfragen-Trefferquoten bei<br />

Google?<br />

• …<br />

Nachteil: Sequenzen von echten Zufallszahlen s<strong>in</strong>d nicht<br />

reproduzierbar<br />

Echte Zufallszahlen können gekauft werden!<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 21


Pseudozufallszahlen<br />

determ<strong>in</strong>istische Erzeugung von Zufallszahlen:<br />

• e<strong>in</strong>e Zahl wird aus ihrem unmittelbaren Vorgänger erzeugt<br />

• dabei wird e<strong>in</strong> Algorithmus mit e<strong>in</strong>em Startwert (seed)<br />

benutzt<br />

• der gleiche Startwert erzeugt den gleichen Strom von<br />

Zufallszahlen<br />

• Frühe Methoden:<br />

Fibonacci, Mid-Square<br />

• Neuere Methoden:<br />

L<strong>in</strong>eare/Multiplikative Kongruenzmethoden<br />

Methoden pr<strong>in</strong>zipiell periodisch, aber mit geeigneten Startwerten<br />

ist <strong>die</strong> Periode ausreichend lang<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 22


Mid-Square-Methode<br />

Nur historische Bedeutung<br />

Vorgeschlagen von John von Neumann<br />

8234 8234² 67798756 7987<br />

7921, 7422, 0860, ...<br />

Qualität ist sehr abhängig vom Startwert<br />

• 0 0, 0, 0, 0, ...<br />

• 2-stellige Zahl alle nachfolgenden Zahlen s<strong>in</strong>d 2-<br />

stellig<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 23


Fibonacci-Methode<br />

Auch nur historische Bedeutung<br />

Sei X i <strong>die</strong> i-te generierte Zahl und m Modulus:<br />

• X i = (X i-1 + X i-2 ) mod m.<br />

Beispiel: m = 1000, X 0 = 1, X 1 = 1<br />

Wer mag, kann das mal schnell ausprobieren…<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 24


L<strong>in</strong>eare Kongruenzmethode<br />

Seien a, c und m positiv und ganzzahlig.<br />

Pseudozufallszahl X i+1 ergibt sich aus dem Vorgänger X i durch<br />

<strong>die</strong> Operation<br />

• X i+1 = (a X i + c) mod m<br />

wobei Seed X 0 natürliche Zahl<br />

• Beispiel: X i+1 = (2 X i + 3) mod 10 mit<br />

Startwert X 0 = 0 ?<br />

Die statistische Qualität der Zufallszahlen hängt von den<br />

Parametern a, c und m ab<br />

Wenn c = 0 multiplikative Kongruenzmethode<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 25


Tests für Pseudozufallszahlen<br />

Frequenz-Test (Gleichverteilung der Zahlen):<br />

Zahlenfolge mit n Zahlen wird <strong>in</strong> m Teil<strong>in</strong>tervalle s zerlegt<br />

Berechnung der erwarteten Häufigkeit:<br />

E<strong>in</strong>getroffene Häufigkeit Y S zählen<br />

Die Ergebnisse sollten gleichverteilt se<strong>in</strong><br />

Test z. B. mit e<strong>in</strong>em<br />

χ 2 –Anpassungstest<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 26


Generierung anderer Verteilungen<br />

Transformation <strong>in</strong> e<strong>in</strong>e stetige Gleichverteilung<br />

im Intervall [a,b]:<br />

• Transformation y = a + (b - a) x.<br />

Transformation <strong>in</strong> e<strong>in</strong>e diskrete Gleichverteilung<br />

im Bereich [0,b]:<br />

• stetige Zufallszahlen zwischen 0 und b + 1 werden<br />

generiert<br />

• Nachkommastellen werden abgeschnitten.<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 27


Inversion der Wahrsche<strong>in</strong>lichkeitstransformation<br />

Jede Verteilung kann auf e<strong>in</strong>e Gleichverteilung im Intervall [0,1]<br />

zurückgeführt werden<br />

Dabei wird <strong>die</strong> kumulative Verteilungsfunktion C(x) [cdf,<br />

cumulative distribution function] <strong>in</strong>vertiert!<br />

Funktioniert für stetige und diskrete Verteilungen!<br />

Kann für jede Verteilung e<strong>in</strong>gesetzt werden<br />

• Insbesondere, wenn <strong>die</strong> cdf „analytisch erfasst“ ist<br />

• z.B. bei Exponentialverteilung<br />

• Schwieriger bei Normalverteilung, weil <strong>die</strong> cdf nicht<br />

analytisch umkehrbar (und auch schwer zu ermitteln) ist<br />

numerische Lösung notwendig<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 28


<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong><br />

W<strong>in</strong>tersemester 11/12<br />

FRAGEN?<br />

CHRISTOPH.LAROQUE@MAILBOX.TU-DRESDEN.DE<br />

01.11.2011<br />

<strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> <strong>Simulation</strong> Folie Nr. 29

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!