Von den Zufallszahlen und ihrem Gebrauch J. Baumeister∗ und Tania Garfias Macedo† Im Mai 2011 Zusammenfassung Zufallszahlen sind aus vielen Anwendungsgebieten heute nicht mehr wegzudenken: Computerspiele wären schnell langweilig, wenn nicht durch eingebauten Zufall der Ablauf innerhalb des Spiels bzw. von Spiel zu Spiel variiert würde. Das Binomialmodell zur Ermittlung von fairen Optionspreisen bedient sich des Zufalls in der Simulation des Auf und Ab von Aktienkursen. Um die Sicherheit bei der Übertragung von Daten im Internet zu gewährleisten, werden kryptografische Programme verwendet, die sichere Zufallszahlen verwenden. Viele Einträge im Internet zum Thema Zufallszahlen“ sind aufgelistet unter dem ” Stichwort echte Zufallszahlen. Doch kann es echte Zufallszahlen geben? Oder anders gefragt, wie soll man solche Zahlen in ihrer Echtheit/Verwendbarkeit bewerten, und wie kann man brauchbare Zufallszahlen erzeugen? Bereits vom Pionier der Computertechnik, John von Neumann, gab es ein erstes Verfahren zur Konstruktion von Zufallszahlen auf einem Rechner. Aber er schreibt auch: Any one who considers arithmetical methods of producing random digits is of course in a state of sin. Die ersten Überlegungen sollten einer ganz einfachen Fragestellung gelten: was ist ein Zufallsexperiment? Dies sind Experimente, die unterschiedliche Ergebnisse haben können, deren Ausgang vor der Ausführung aber nicht vorausgesagt werden kann. Als Beispiele für Zufallsexperimente sehr unterschiedlicher Natur können zur Veranschaulichung etwa herangezogen: Münzwurf, Würfeln, Ziehen einer Kugel aus einer Urne, Zeitpunkt des Zerfalls eines radioaktiven Materials, 2. Stelle nach dem Komma der Laufzeit eines Programms auf dem Rechner. Man kann sich unschwer vorstellen, dass jedes dieser angeführten Experimente zu einem Zufallsgenerator umdefiniert werden kann. Einen komplizierteren Zufallsmechanismus erhält man, wenn man ein Zufallsexperiment mehrmals unabhängig voneinander wiederholt. Nun steht die Frage im Raum, was unabhängig“ heißen soll. Alle diese Umstände und ” Fragen werden wir im Folgenden vertiefen. Dies sind Aufzeichnungen zur Vorbereitung auf den Kurs J.1 der Juniorakademie Meisenheim vom 30. Juni -16. Juli 2011. Eine Juniorakademie ist eine Fördermaßnahme auf Bundesländerebene für begabte Schülerinnen und Schüler der 8. und 9. Klassen. Im Kurs werden Erzeugungsmethoden für Zufallszahlen untersucht und Beispiele für die Verwendung kennengelernt. Wir werden sehen, dass neben den zentralen Fragen viele interessante Themen berührt werden: schlechte Würfel, Benford-Zahlen, euklidischer Algorithmus, statistische Tests. Zum Verständnis all dieser Fragen sind ∗ Prof. Dr. Baumeister, Fachbereich Informatik und Mathematik, Goethe-Universität, Robert Mayer– Str. 6–10, 60054 Frankfurt am Main, Germany, [email protected]. † Mathematisches Institut, Georg-August-Universität Göttingen, Bunsenstr. 3-5 37073 Göttingen 1 elementare Kenntnisse über die Behandlung des Zufalls und das modulare Rechnen erforderlich. Zentral für das Verständnis der Erzeugung von (Pseudo-)Zufallszahlen ist die Arithmetik in den ganzen Zahlen. Die Tatsache, dass Division in den ganzen Zahlen nicht uneingeschränkt möglich ist, kann erfolgreich dabei verwendet werden. Die Hilfsmittel für die algebraischen Überlegungen, die bereitgestellt werden müssen, sind Teilbarkeit, Division mit Rest und euklidischer Algorithmus. Als Grundlagen für die Zufälligkeitstest benötigen wir den Wahrscheinlichkeitsbegriff für endliche Ereignisräume und Verteilungsstests. Die Möglichkeiten der Erzeugung von Zufallszahlen berühren insbesondere das Thema Benfordzahlen“, das einige besonders ” reizvolle Facetten bereithält. Diese Aufzeichnungen sind im ganzen keine Vorlage für die Dokumentation, die die Kursteilnehmer anzufertigen haben, lediglich Teile werden zur Vorbereitung zur Verfügung stehen. In den Abschnitten 6,7 werden Vorbereitungsaufgaben formuliert und eine mögliche Liste von Vorträgen ausgearbeitet. Mit dem Literaturverzeichnis liefern wir einen ziemlich umfassenden Überblick über Monographien, Übersichtsartikel und Originalarbeiten zur Thematik. 1 Vor der Computerzeit Gott würfelt nicht ! Zufall ist nur der Ausdruck unserer Unfähigkeit, den Dingen auf den Grund zu kommen Albert Einstein 1.1 In der Bibel Und da sie ihn gekreuziget hatten, teileten sie seine Kleider, und warfen das Los drum, welcher was überkäme. (Markus-Evangelium 15,24; siehe Abbildung 11 ) Was heißt das Los werfen“, um eine Zufallsentscheidung herbeizuführen? In einer alttes” tamentarischen Losentscheidung werden die zur Wahl stehenden verschiedenen Kleidungsstücke, Namen, Zeitpunkte . . . auf ein Stück Holz, eine Tonscherbe oder etwas ähnliches geschrieben. Diese Lose“ werden dann in einem Gefäß oder einem Kleidungsstück zusam” men durchgeschüttelt, bis eines herausfällt. Jesus hatte zwölf engste“ Jünger. Ei” ner davon (Judas Ischariot) hatte Jesus verraten und sich dann erhängt. Die anderen elf Jünger wollten ein altes Wort aus den Psalmen erfüllen und ihre Zahl wieder auf zwölf erhöhen. Dazu machten sie nach Christi Himmelfahrt eine Versammlung. Zwei Anhänger wurden als Kandidaten ausgeguckt - Barsabbas und Matthias und das Gottes-Los über sie geworfen. So wurde Matthias zwölfter Jünger. Abbildung 1: Würfeln um die Kleider Aus dem Alten Testament gibt es folgende Aufzeichnung einer Zufallsentscheidung: Mose hatte den Rat der ältesten aus 70 Mitgliedern zu bestimmen: Aus jedem der 12 Stämme wurden zunächst 6 Kandidaten ausgewählt. Aus der Schar dieser 72 Kandidaten waren nun zwei zu eliminieren. Dazu wurden 72 Kugeln vorbereitet; 70 davon wurden markiert, zwei blieben unmarkiert. Die Kugeln wurden in eine Urne gelegt und gemischt. Jeder Kandidat hatte ein Kugel zu ziehen; jene beiden, die die unmarkierten zogen, wurden eliminiert. 1.2 Zufall und Wahrscheinlichkeit Hier skizzieren wir die Begriffe, die wir aus dem Bereich der Wahrscheinlichkeitstheorie für die Diskussion unserer Ergebnisse benötigen. Beispiele für die Begriffe führen wir hier im Allgemeinen nicht an, sie folgen in ausreichender Auswahl in den nächsten Abschnitten. Literatur zum Thema: [1, 2, 5]. 1 Bild von U. Leive 1 Zufall Wie reden wir über den Zufall? Wir wollen uns nicht lange dabei aufhalten. Mögliche Definitionsschnipsel“ sind: ” • Wenn im Bereich der Geschehnisse, die im strengen Sinn wegen etwas eintreten und deren Ursache außer ihnen liegt, etwas geschieht, das mit dem Ergebnis nicht in eine Deswegen-Beziehung zu bringen ist, dann nennen wir das zufällig (Aristoteles) 2 • Zufall ist das Eintreten unvorhergesehener und unbeabsichtigter Ereignisse. • Das, wobei unsere Rechnungen versagen, nennen wir Zufall (Albert Einstein). • Jemandem fällt etwas (unverdientermaßen) zu. Die Spannung bei der Verwendung des Zufalls resultiert wesentlich aus der naturwissenschaftlichen Sicht vom Eintreten von Ereignissen: das Kausalitätsprinzip lässt Nicht– ” Determiniertes“ nicht zu. Ein Ausweg ist, dass wir unterstellen, die Umstände (Anfangsbedingungen) des Greifens von naturwissenschaftlichen Gesetzen nicht vollständig kennen zu können. Beispiele für das Wirken von Zufall“ sind etwa: ” • Ergebnis beim Münzwurf • Eintreten von Augenzahlen beim Würfeln • Radioaktiver Zerfall • Gesund trifft auf krank in der U-Bahn • Ein Blatt fällt von einem Baum zu Boden, landet es auf der Voderseite oder Rückseite? • Männlicher oder weiblicher Nachwuchs Ergebnis und Ereignismenge In der Wahrscheinlichkeitsrechnung betrachtet man so genannte Zufallsexperimente (Lottoziehung, Würfeln, Ergebnis einer Befragung). Bei all diesen Experimenten gibt es eine Menge möglicher Ereignisse, üblicherweise mit dem griechischen Großbuchstaben Omega bezeichnet: Ω = {ω1 , ω2 , . . . , ωn } . Ω ist die Ereignismenge, jedes ωi heißt ein Elementarereignis. Eine Teilmenge von Ω heißt ein zusammengesetztes Ereignis. Wahrscheinlichkeit Nun gehen wir daran, das Nichtwissenkönnen des Ausgangs eines Zufallsexperiments zu quantifizieren. Jedem Ereignis soll eine Zahl aus [0, 1] zugeordnet werden, die uns gestattet, die Unsicherheit über den Ausgang anzugeben: 1 sollte für absolute Sicherheit, 0 für vollständige Unsicherheit stehen. Als Maßzahl für die Chance für das Eintreten eines Elementarereignisses ωi sehen wir eine nichtnegative (reelle) Zahl pi an. Diese Maßzahl pi nennen wir die Wahrscheinlichkeit für das Eintreten des Elementarereignisses ωi . Als Normierung betrachtet man die Bedingung, dass sich diese Elementarwahrscheinlichkeiten zu Eins aufsummieren. Dies ist in Übereinstimmung mit der Sichtweise, dass ein sicheres Eintreten eines Ereignisses mit der Chance Eins bewertet wird. 2 Von Aristoteles ist auch überliefert (Quelle: [4], S. 183): . . . . . . Alle Gebilde, bei deren Entstehen ” sich alle gerade so ergeben habe, wie es auch ein zweckbestimmtes Werden hervorgebracht haben würde, hätten sich nun am Leben erhalten können, da sie dank dem blinden Zufall einen lebensdienlichen Aufbau besessen hätten. Das Übrige aber sei zugrunde gegangen und gehe stets zugrunde.“ 2 Laplace-Versuch Manchmal sind alle Ergebnisse gleichwahrscheinlich, d.h. als Ausgang des Experiments kann jedes Elementarereigniss mit der gleichen Chance eintreten. Dann ist die Wahrscheinlichkeit pi für jedes Ereignis natürlich der n-te Teil der Gesamtwahrscheinlichkeit Eins, also pi = 1/n für alle i = 1, . . . , n . Man spricht dann von einem Laplace-Experiment. Mehrstufige Zufallsexperimente und Baumdiagramme Etwas komplexer wird eine Experimentsituation, wenn man sich mehrstufige Zufallsexperimente anschaut, wie etwa die N -malige Wiederholung eines Experiments. Die Wahrscheinlichkeiten für das mehrstufige Experiment soll ermittelt werden aus den Wahrscheinlichkeiten, die auf jeder Stufe bekannt seien. Eine Möglichkeit, eine solche Situation zu veranschaulichen, besteht darin, ein Baumdiagramm zu zeichnen. Ein Baumdiagramm ist ein verzweigtes Diagramm, bei dem jeder Stufe des Zufallsexperimentes eine Ebene“ ” entspricht. Man zeichnet Blasen, die mit den jeweiligen Stufen–Ereignissen gekennzeichnet sind und schreibt die Wahrscheinlichkeiten für ihr Eintreten an die Verbindungslinien (siehe Abbildung 2 und siehe dazu Beispiel 1.1). Dieses Diagramm wird von links nach rechts gelesen. Zwei Regeln werden zur Berechnung der Wahrscheinlichkeit des mehrstufigen Experiments herangezogen. 1. Pfadregel: Multiplikationsregel Die Wahrscheinlichkeit eines Ereignisses bei einem mehrstufigen Zufallsexperiment, die sich aus einem Pfad des Diagramms ergibt, ist gleich dem Produkt der Wahrscheinlichkeiten längs des Pfades, der zu diesem Ergebnis führt! Begründung: Diese Regel ist einsichtig, etwa wenn man an die Häufigkeitsinterpretation denkt. 2. Pfadregel: Additionsregel Setzt sich ein mehrstufiges Ereignis aus verschiedenen Pfaden eines Baumdiagramms zusammen, so erhält man seine Wahrscheinlichkeit durch Addition der einzelnen Pfadwahrscheinlichkeiten. 2 4/6 4/6 2/6 2 2/6 4/6 6 p= 16/36 6 p=8/36 2 p=8/36 6 p=4/36 2/6 1. Stufe 2. Stufe (1. Wurf) (2. Wurf) Abbildung 2: Würfelexperiment Example 1.1 Wir würfeln mit einem Würfel, der auf 4 Seiten die Zahl 2 und auf den übrigen 2 Seiten die Zahl 6 zeigt. Er wird 2-mal geworfen. Wir machen dazu eine Pfaddiagramm; siehe Abbildung 2. An den Pfadenden können wir Wahrscheinlichkeiten ablesen. Die Wahrscheinlichkeit, dass zweimal eine Sechs gewürfelt wird, ergibt sich nach der ersten Pfadregel zu 4/36, die Wahrscheinlichkeit, dass nach zwei Würfen die Augensumme 8 vorliegt, ergibt sich nach der zweiten Pfadregel zu 8/36 + 8/36 = 16/36. Häufigkeitsinterpretation der Wahrscheinlichkeit Jetzt haben wir schon viel von Wahrscheinlichkeit gesprochen, aber was soll man sich darunter vorstellen? Eine Möglichkeit bietet die Häufigkeitsinterpretation. Sie fasst Wahrscheinlichkeit etwa so: 3 Wenn man ein Zufallsexperiment N -mal wiederholt, möge man das Ergebnis ωi etwa mi mal erhalten. Ist nun pi die (theoretische) Wahrscheinlichkeit für das Eintreten von ωi , so sollte die Häufigkeit mi etwa gleich N · pi sein; je größer die Zahl der Wiederholungen N ist, desto genauer sollte das Ergebnis mi an die erwartete Anzahl N · pi herankommen (Gesetz der großen Zahl). Hilfsmittel zur Realisierung von Laplace-Experimenten Ein Mechanismus, der eine Zufallswahl bewerkstelligt, die zwei Ergebnisse mit der Wahrscheinlichkeit 21 als Ausgang hat, ist der Münzwurf. Wir unterstellen also, dass wir es mit einer fairen“ Münze zu tun haben, bei der jede der beiden Seiten – wir bezeichnen sie mit ” Kopf und Zahl – die gleiche Chance hat, oben zu liegen. Wenn wir Kopf die Zahl Eins (1) und Zahl die Zahl Null (0) zuordnen, erzeugen wir also bei mehrmaliger Wiederholung des Münzwurfes eine Folge von Nullen und Einsen. Man nennt eine solche Folge auch ein Wort über dem (einfachen) Alphabet {0, 1} . Für eine solches Wort haben wir die Interpretation als Dualzahlen. Betrachten wir etwa den Ausgang 00101011. Dieses Wort entspricht dann der Dualzahl, die die Zahl 43 im Dezimalsystem darstellt. Jede dieser achtstelligen Dualzahlen hat als Wahrscheinlichkeit, geworfen zu werden, den Wert ( 12 )8 = 1/256, wie man sich über ein Baumdiagramm mit 8 Stufen mittels der 1. Pfadregel überzeugt.3 Der Wurf eines Reißnagels kommt dem Münzwurf zwar als Experiment mit zwei Ausgängen sehr nahe, er ist aber ein Beispiel eines Zufallsgenerators mit ungleicher Zufallsverteilung: die Ausgänge sind: Lage auf der Kappe, Spitze nach oben; Lage auf der Spitze und der Kante der Kappe. Unter Würfeln“ verstehen wir die zufällige Auswahl einer Zahl aus 1,2,. . . ,6. Natürlich ” stellt diese Darstellung die historische Wahrheit auf den Kopf: ein Würfel mit seinen gleichen sechs Seiten stellt die einfache Realisierung der zufälligen Auswahl von Zahlen dar, die Gleichverteilung der Auswahl der Zahlen ist eine Konsequenz der unterstellten geometrischen Gestalt des Würfels.4 Beim Würfelexperiment (mit einem fairen Würfel), betrachtet als Laplace–Experiment, haben wir als Ereignismenge Ω = {1, . . . , 6} und jedes Elementarereignis hat die Wahrscheinlichkeit pi = 1 , i = 1, 2, . . . , 6 6 Für das zusammengesetzte“ Ereignis, eine Eins, Zwei oder Drei zu würfeln, errechnen wir ” eine Wahrscheinlichkeit 21 mit der zweiten Pfadregel; anschaulich ist das Ergebnis natürlich klar, denn die erste Hälfte“ der Augen ist gleichwahrscheinlich mit der zweiten Hälfte“ ” ” der Augen. Beim Würfeln mit zwei (fairen) Würfeln, betrachtet als Laplace–Experiment, haben wir: Ω = {(i, j) ∈ N × N|1 ≤ i, j ≤ 6} ; p(i,j) = 1 , 1 ≤ i, j ≤ 6 . 36 Bemerkung 1.2 Wir haben das Würfeln mit einem fairen Würfel, guten Würfel beschrieben. Wir benötigen diesen Würfel, um aus sechs Zahlen eine zu wählen, ohne die 3 Diese kleine Zahl entspricht der Wahrscheinlichkeit, dass der Kracke Paul für acht Spiele der Weltmeisterschaft den Ausgang richtig voraussagt, wenn man eine Irrtumswahrscheinlichkeit von 21 unterstellt. 4 Siehe http://de.wikipedia.org/wiki/Spielwürfel 4 anderen zu benachteiligen“. Der schlechte Würfel ist ein geometrischer“ Körper, der ” ” zwar von sechs Seiten berandet ist, aber keineswegs in einer regelmäßigen Art. Wir verweisen auf den Aufsatz [6] von Riemer und Stoyan, in dem der Versuch einer Berechnung der Wahrscheinlichkeiten der Augen mittels einer speziellen Verteilung gemacht wird. In [3] betrachtet Ineichen den Spezialfall prismatischer Würfel und diskutiert eine physikalische Modellierung zur Berechnung der Wahrscheinlichkeiten der Augen. Bei der Beschriftung eines Würfels mit den Augenzahlen“ 1,2,3,4,5,6 gibt es viele ” Möglichkeiten. Unter diesen Möglichkeiten werden aber in der Praxis nur die so genannten 7er-Beschriftung realisiert. Sie sind dadurch ausgezeichnet, dass die Beschriftung zweier gegenüberliegender Seiten so gewählt wird, dass die Augensumme 7 ergibt. Darunter haben sich genau 2 Möglichkeiten durchgesetzt. Sie sind dargestellt durch folgende Würfel” netze“: 3 4 6 5 1 2 6 5 1 2 4 3 Wie kann man mit Hilfe eines Münzwurfes einen Würfel simulieren? Hier kommen uns die Dualzahlen zu Hilfe, denn mit einem dreifachen Münzwurf können wir die Dualzahlen 000, 001, 010, 100, 011, 110, 101, 111 (0 entspricht Kopf, 1 entspricht Zahl) auswürfeln“. ” Aus diesen 8 Möglichkeiten müssen wir nun 6 machen, also 2 streichen“; wir sollten 000 ” (entspricht 0) und 111 (entspricht 7) streichen Dies kann so geschehen: S1 Werfe dreimal die Münze. S2 Ist das Ergebnis 000 oder 111, gehe zu S1, sonst S3 notiere das Ergebnis als Würfelwurfergebnis. Ein beliebtes Bild von einem Laplace–Mechanismus ist das Urnenmodell. Eine Urne ist ein Gefäß, in dem Gegenstände versteckt“ werden, die man dann wieder – nach ausrei” chendem Mischen – herausholen kann. Beispiel 1.3 In einer Urne liegen drei schwarze Kugeln und eine weiße Kugel. Auf gut Glück werden zwei Kugeln der Urne entnommen. Welche Wahrscheinlichkeit ist größer, zwei schwarze Kugeln oder eine weiße und eine schwarze Kugel herauszunehmen? Man ist auf Grund der Tatsache, dass dreimal soviele schwarze wie weiße Kugeln in der Urne liegen zu vermuten, dass die erste Möglichkeit wahrscheinlicher ist. Dem ist aber nicht so, denn es gibt drei Möglichkeiten, zwei schwarze Kugeln herauszunehmen und drei Möglichkeiten eine schwarze und eine weiße Kugel herauszunehmen. Es lässt sich dies auch rechnerisch begründen: Wahrscheinlichkeit für das Ziehen zweier schwarzer Kugeln Wahrscheinlichkeit für das Ziehen einer weißen und einer schwarzer Kugel Man fertige dazu ein Baumdiagramm! 3 4 1 4 · 32 = 12 · 1 + 34 · 13 = 12 . Zufallsvariable, Erwartungswert und Verteilung Man bezeichnet eine Funktion, die den Ergebnissen eines Zufallsexperiments numerische Werte (so genannte Realisationen) zuordnet, nennt man eine Zufallsvariable. Die Bedeutung der Zufallsvariable liegt darin, dass durch sie die Verbindung zwischen dem Resultat eines Zufallsexperiments und seiner mathematischen Darstellung (Realisation) hergestellt 5 wird. Bei einer diskreten Zufallsvariablen – und nur solche betrachten wir hier – sind nur endlich viele Realisierungen möglich. Zum Beispiel kann das Zufallsexperiment des Münzwurfs als Zufallsvariable X modelliert werden: X bildet die Menge der Wurfergebnisse Kopf,Zahl auf die Menge der Realisationen {0, 1} ab: ( 0, wenn ω = Kopf, X(ω) = 1, wenn ω = Zahl. Das Zufallsexperiment Wurf mit drei (fairen) Würfeln“ und die Frage nach der Augen” summe kann so mit Hilfe einer Zufallsvariablen modelliert werden: Z((ω1 , ω2 , ω3 )) := ω1 + ω2 + ω3 , ωi ∈ {1, 2, . . . , 6} . Sei X eine Zufallsvariable. Die Wahrscheinlichkeitsfunktion Ws(X = x) , x Realisierung gibt die Wahrscheinlichkeit der Realisierungen an. Die Verteilungsfunktion von X ist definiert durch F (x) := Ws(X ≤ x) . Der Erwartungswert der Zufallsvariablen X ist jener Wert, der sich (in der Regel) bei oftmaligem Wiederholen des zugrunde liegenden Experiments als Mittelwert der Ergebnisse ergibt. Ein Erwartungswert muss kein mögliches Ergebnis des zugrunde liegenden Zufallsexperiments sein. Er wird als gewichtetes Mittel – die Gewichte sind die Wahrscheinlichkeiten für das Eintreten der Elementarereignisse – der Werte der Zufallsvariablen berechnet. Beispielsweise ist der Erwartungswert der Augen beim Würfelwurf gegeben durch 1 1 1 7 1 · + 2 · + ··· + 6 · = . 6 6 6 2 Das Galton-Brett Das Galtonbrett5 besteht aus einer regelmäßigen Anordnung von Hindernissen, an denen eine von oben eingeworfene Kugel jeweils nach links oder rechts abprallen kann. Nach dem Passieren der Hindernisse werden die Kugeln in Fächern aufgefangen, um dort gezählt zu werden; siehe Abbildung 3(vergleiche mit einem Flipperspiel). Jedes Aufprallen einer Kugel auf eines der Hindernisse ist ein Bernoulli-Versuch. Die beiden möglichen Ausgänge sind Kugel fällt nach rechts und Kugel fällt nach links. Bei symmetrischem Aufbau ist die Wahrscheinlichkeit, nach rechts zu fallen, p = 12 und die Wahrscheinlichkeit, nach links zu fallen, q = 1 − p = 12 . Durch unsymmetrischen Aufbau oder durch Schiefstellen des Brettes kann man auch einen anderen Wert für p erreichen, wobei aber natürlich weiterhin q = 1 − p ist, denn die Kugeln, die nicht nach rechts fallen, fallen nach links. Indem die Kugel nach Passieren des ersten Hindernisses auf ein neues trifft, bei dem die gleichen Voraussetzungen gelten, wird hier ein weiterer Bernoulli-Versuch durchgeführt; das Durchlaufen des ganzen Gerätes ist also eine mehrstufige Bernoulli-Kette, wobei die Zahl der waagrechten Reihen von Hindernissen, die Ebenen, die Länge dieser Kette ist. In der Abbildung 3 handelt es sich demnach um ein Galtonbrett mit 6 Ebenen und um eine 6-malige Wiederholung eines Bernoulli-Versuchs, d.h. eine Bernoulli-Kette der Länge 6. 5 Sir Francis Galton, 1822-1911; Cousin von C.R. Darwin 6 Sei n die Anzahl der Ebenen eines Galtonbretts. Die Anzahl der Fächer, in die die Kugeln fallen können, ist dann n + 1 . Jeden Durchlauf einer Kugel kann man mit einem Wort der Länge n über dem Alphabet {L, R} in Verbindung bringen, wobei wir festlegen, dass L (links) bzw. R (rechts) mit der Draufsicht gemeint ist. Beispielsweise ist der in der Abbildung 3 eingezeichnete Durchlauf beschrieben durch das Wort RLLRRR . Sei nun ein Wort der Länge n betrachtet, in dem l-mal der Buchstabe L vorkommt. Dann ist die Wahrscheinlichkeit für dieses Wort ( 12 )l ( 12 )n−l = ( 21 )n . Wenn wir die Fächer von links nach rechts durchnummerieren mit den Nummern 0, 1, . . . , n, dann haben wir nach der Pfadregel für die Wahrscheinlichkeit, dass eine Kugel in das Fach mit der Nummer m fällt, die Wahrscheinlichkeiten aller Pfade, die zum Fach m führen, aufzusummieren. Das Fach mit der Nummer m kann erreicht werAbbildung 3: Das Galtonbrett den durch einen Durchlauf, der durch die Worte n beschrieben wird, die m-mal den Buchstaben R enthalten. Dies sind m -viele, denn es ist ja m-mal der Buchstabe R auf n vorhandene Position zu verteilen. Damit ergibt sich für die Wahrscheinlichkeit b(m, n), dass eine Kugel in das Fach m fällt als n n 1 b(m, n) = (1) 2 m An der Abbildung 3 erkennen wir, dass die Füllung der Fächer für großes n sehr schön die Gaußsche Glockenkurve (siehe den ehemaligen 10 DM-Schein) annähert. Diese Approximationsgüte lässt sich analytisch erklären. 1.3 Zufallszahlen und deren Ersatz Das Thema dieser Ausarbeitung sind Zahlen, die als echte“ Zufallszahlen, als Pseudo” oder Quasi-Zufallszahlen betrachtet werden können. Die zugehörigen Erzeugungsmechanismen nenen wir (Pseudo-)Zufallszahlen-Generatoren. Der Wunsch, zufällige Ereignisse zu generieren, ist zwar keine ausschließliche Erscheinung des Computerzeitalters, er wurde aber durch die Rechenmöglichkeiten doch stark in den Vordergrund gerückt. Zur Geschichte: • 1938: Kendall und Babington-Smith erzeugen mit einer schnell drehenden Scheibe 100 000 zufällige Ziffern. • Seit 1940/50 werden numerische und arithmetische Verfahren verwendet, um Zufallszahlen zu generieren. • 1957: Das 1. ERNIE-Projekt (Electronic Random Number Indicator Equipment) wurde durch Sidney Broadhurst, Tommy Flowers and Harry Fensom realisiert. Es wurden mit Hilfe von Vakuumröhren bis zu 50 Zufallsziffern pro Sekunde erzeugt. • 1955: Die Rand-Corporation veröffentlicht ein Buch mit ca. 1 Million Zufallsziffern. • 1983: Miyatake baut eine Vorrichtung, um durch das Zählen von Gammastahlen zufällige Ergebnisse zu generieren. 7 • 1995 Marsaglia produziert eine CD-ROM, auf der ca. 4.8 Milliarden Zufallszahlen gespeichert sind.6 Was ist die Motivation für das Bestreben, (Pseudo-)Zufallszahlen zu erzeugen? Warum zu Generatoren von Pseudozufallszahlen greifen, also zu Generatoren, die nicht den “echten Zufall“ verwenden? Es sind die vielfältigen Anwendungsbereiche, die nach Zufallszahlen fragen: Experimente, die Gerechtigkeit produzieren, Erzeugung zufälliger Ereignisse entsprechend statistischer Vorgaben, Verfahren, die die Echtheit von Meßdaten überprüfen, kryptographische Anwendungen (Erzeugung von Schlüsselzahlen,. . . ), Monte Carlo Simulation (insbesondere in Computational Finance), Simulation von Abläufen der realen Welt (Ampelschaltungen), Globale Optimierung, Spiele (wo taucht der Bösewicht auf ?),. . . ; siehe [7]. i 0 1 2 3 ... 12 13 14 ... zi ui := 0.zi 7182 −−− 5811 0.5811 7677 0.7677 9363 0.9363 ... ... 0012 0.0012 0001 0.0001 0000 0.0000 ... ... zi2 51 5811 24 33 7677 21 58 9363 29 87 6657 69 ... 00 0001 44 00 0000 01 00 0000 00 ... Abbildung 4: Middle-Square Das Problem jeden Vorgehens, Zufallszahlen (auf dem Computer) mittels eines Algorithmus zu erzeugen, ist offenbar, dass Erzeugen“ und Zufall“ ein Widerspruch in ” ” sich ist. Da der Determinismus schon per Definition eine Eigenschaft eines Algorithmus ist, steht jeder Nachfolger einer Zufallszahl deterministisch fest. Für die oben genannten Anwendungsgebiete genügen jedoch diese Pseudozufallszahlen“. Wir lassen das Präfix ” Pseudo“ meist weg. ” Wir beschränken uns fast ausschließlich auf die Generierung von Zufallszahlen, die gleichverteilt sind im Einheitsintervall [0, 1] der reellen Zahlengeraden. Diese Einschränkung kann man überwinden, wir werden später Anmerkungen dazu machen. Was soll man unter einer Folge von Zufallszahlen verstehen? Der österreichische Mathematiker Richard von Mises versuchte es in der ersten Hälfte des 20. Jahrhunderts mit fehlender Vorhersehbarkeit: Eine 0-1-Sequenz sollte als zufällig gelten, wenn es keine Regel gibt, die an irgendeiner Stelle das nächste Glied aus den vorhergehenden mit einer Wahrscheinlichkeit größer als 50 Prozent prognostiziert. Für den Münzwurf bedeutet das: Systeme, die dem Spieler einen Vorteil versprechen, existieren nicht. Erst in den sechziger Jahren des letzten Jahrhunderts fanden der Russe Andrej Nikolajewitsch Kolmogorow und der Amerikaner Gregory Chaitin unabhängig voneinander mit einer speziellen Komplexitätstheorie einen Ausweg: Eine Zahlenfolge ist ihrer Meinung nach zufällig, wenn sie sich nicht mit einer kürzeren Zeichensequenz beschreiben lässt. Die Folge 11111. . . etwa kann man knapp ausdrücken mithilfe des mit Nullen und Einsen geschriebenen Computerbefehls für Schreibe lauter Einsen!, 01010101. . . mit einem entsprechenden wiederhole 01!. Bei Zufallsfolgen darf es keine solche Umschreibung in Kurzform geben. Pseudozufallszahlen sollen Zahlenfolgen sein, die zufällig“ sind, d.h. die Eigenschaften ” besitzen, die dem echten Zufall nahe kommen. Also ist man gezwungen, den Zufall deterministisch möglichst gut nachzustellen. Um die umständliche Verwendung von Tabellen zu vermeiden, werden Zufallszahlen verwendet, die im Allgemeinen durch Iterationen nach einer Formel ad hoc hergestellt werden. Die so erzeugten Zufallszahlen haben den Vorteil, 6 random.org brüstet sich, seit 1998 857 Milliarden Zufallsbits, also zufällige Nullen und Einsen, erzeugt zu haben. 8 dass sie konstruierbar sind, und haben den Nachteil, dass sie vollkommen deterministischen Charakter besitzen. Alles, was wir hier zunächst zur Sprechweise Zufallszahl“ sagen ” können, ist, dass jedenfalls kein Muster, keine Struktur in der Folge erkennbar sein soll. Die Wahrscheinlichkeitstheorie und Statistik stellt Hilfsmittel bereit, solche Folgen auf ihre Zufälligkeit zu testen. Im Lichte dieser Begriffsbildungen können wir nun Forderungen formulieren, die an einen Zufallszahlen-Generator zu stellen sind. Er soll Zahlen erzeugen, die folgende Eigenschaften haben: Gleichverteilung Die Zufallsfolge genügt der Gleichverteilung in [0, 1] . Unvorhersagbarkeit Kennt man eine Zufallszahl (Vorgänger), sollte die nächste konstruierte Zufallszahl (Nachfolger) nicht vorhersagbar sein. Dies bedeutet, dass der Konstruktionsmechanismus komplex genug ist, um zu vermeiden, dass das Konstruktionsprinzip abgelesen werden kann. Reproduzierbarkeit Um die Fehlersuche zu erleichtern und verschiedene Simulationen einfacher miteinander vergleichen zu können, ist es wichtig, dass eine einmal erzeugte Zufallsfolge immer wieder reproduziert werden kann. Bei Spielen (der Bösewicht soll nicht immer zur selben Zeit auf der Bildfläche erscheinen) und in der Kryptologie steht dem gegenüber die Forderung nach Irreproduzierbarkeit. In der Kryptographie ist diese Forderung unverzichtbar“. ” Effizienz Dazu kommen die Forderungen, dass der Generator schnell ist und möglichst wenig Speicherplatz auf dem Computer belegt. Wie soll man nun gute und weniger gute Generatoren auseinanderhalten? Klar, indem man neben der Ausschöpfung“ des zur Verfügung stehenden Zahlraumes [0, 1] die ” obigen Forderungen abprüft. Dies geschieht im Allgemeinen mit theoretischen und empirischen Tests für die Güte von Generatoren. Theoretische Tests setzen am Generator selbst an, empirische Tests nehmen sich die erzeugten Zahlenfolgen vor. Wir gehen auf die Kriterien Gleichverteiltheit, Unkorreliertheit ein, die Effizienz übergehen wir. 1.4 Die middle square-Methode von J. von Neumann Eine erste Realisierung der Pseudozufallserzeugung bestand in der Nutzung der Dezimalziffern transzendenter Zahlen. Die Zahl π wurde 1873 mit 703, 1960 mit 100 000 und 1986 mit 107 Dezimalstellen berechnet. Die Analyse ergab, dass kein signifikanter Mangel zu erkennen war, was die Zufälligkeit der Dezimalstellen hinsichtlich Gleichverteilung in 0, 1, . . . , 9 betrifft. Da die Algorithmen zur Berechnung transzendenter Zahlen in der Regel sehr kompliziert sind, werden in der Praxis meist andere Algorithmen benutzt. Einer der ältesten Generatoren ist die Middle-Square-Methode, die um 1940 von von J. von Neumann, Metropolis und Ulam entwickelt wurde7 und die wie folgt durchgeführt wird. Wähle eine 4-stellige Zahl, quadriere sie, man erhält eine höchstens 8-stellige Zahl. Ist das Ergebnis nicht 8-stellig, füllt man sie links mit Nullen auf 8 Stellen auf. Die mittleren 4 Ziffern wählt man nun als erste Zufallszahl und als neuen Startwert für das Vorgehen. 7 Diese Methode wurde um 1946 im Rahmen des Los-Alamos-Projekts zur Entwicklung der Wasserstoffbombe für Computer-Simulationen eingesetzt. 9 Ist man unvorsichtigt“ bei der Wahl des Startwertes, bekommt man eine nicht sehr ” brauchbare Folge. Etwa erhält man mit dem Startwert 8441: 8441, 2504, 2700, 2900, 4100, 8100, 6100, 2100, 4100, 8100, . . . . Es ist sogar noch schlimmer“, wie das Beispiel ” in der Tabelle 4 andeutet: die ersten Schritte des Middle-square-Algorithmus scheinen brauchbare Zufallszahlen zu liefern, die Fortsetzung bei i = 12 zeigt aber, dass die Iteration bei der Zu” fallszahl“ Null endet. In der Tat tendiert der Algorithmus in vielen Fällen dazu, bei Null zu enden. Also scheint der Algorithmus unbrauchbar zu sein, Zufallszahlen zu erzeugen. Anderenfalls ist das obige kurze Stück 8100, 6100, . . . , 8100 das periodische Stück einer doch recht langen nichtperiodischen Zahlensequenz, die mit dem Startwert 6239 beginnt (man rechne dies nach). 1.5 Zufallszahlen der Natur entnommen Abbildung 5: RAND-Tabelle Bei den Generatoren für echte Zufallszahlen unterscheidet man zwischen physikalischen Generatoren und Tabellenwerken. Physikalische Generatoren beruhen in der Regel auf der nicht exakten Reproduzierbarkeit von physikalischen Ereignissen. Man verwendet nicht deterministische physikalische Prozesse als Zufallszahlenquelle. Beispiele für physikalische Generatoren sind: • Die Beobachtung der Zeit zwischen der Emission von Partikeln beim radioaktiven Zerfall • Die Messung thermischen Rauschen • Die Messung der Ladungsdifferenz zweier eng benachbarter Halbleiter • Die Beobachtung von Frequenzschwankungen aufgrund der Instabilität eines frei laufenden Oszillators • Die Messung des Betrags, um den ein Halbleiter während einer festen Zeitspanne geladen werden kann • Die Aufzeichnung von Klang mit einem Mikrofon oder von Bildern mit einer Videokamera. • Laufzähler mit Stoppereignissen. Dabei kommt ein modulo n-Zähler“ zum Einsatz, ” der laufend von 0 bis (n−1) zählt. Beim Auftreten eines zufälligen zählerunabhängigen Stoppereignisses wird der Zählerstand ausgelesen. Man nennt solche physikalische Effekte nutzende Generatoren Hardware-Generatoren8 . Hier steht natürlich die Frage im Raume, ob das physikalische Phänomen wirklich den Zufall simuliert, wie es etwa die Quantenmechanik voraussagt. Die Vorteile solcher HardwareGeneratoren sind: 8 http://www.westphal-electronic.com/ZrandomUSB− Manual.pdf 10 • Keine Periodizität (siehe Kongruenzgeneratoren) • Generation basiert nicht auf einem Algorithmus • Keine Voraussagbarkeit der Zahlen • Sehr gute statistische Eigenschaften der Zufallszahlen. 1.6 RAND-Tabelle Bereits 1955, als Computer noch neu“ waren, ” veröffentlichte die RAND-Corporation ein Buch mit einer Million Zufallsziffern. Darin wird Ziffer Häufigkeit in % die Vorgehensweise beschrieben, wie man zu 0 5 den Zufallszahlen kam: Die Zufallszahlen wur1 10 den durch erneute Randomisierung“ einer 2 13 ” Grundtabelle erzeugt, die mit einer elektro3 8 nischen Roulettscheibe generiert wurde. Eine 4 8 Pulsquelle mit zufälliger Frequenz wurde et5 10 wa einmal pro Sekunde von einem Puls 6 10 konstanter Frequenz durchlaufen. Standard7 15 isierungsschaltkreise leiteten den Puls durch 8 13 einen fünfstelligen Binärzähler. Die Anord9 7 nung entsprach im Prinzip einer Roulettscheibe mit 32 Plätzen, die pro Versuch durchschnitAbbildung 6: 1. Ziffer in RAND tlich 3000 Umdrehungen machte und eine Zahl pro Sekunde produzierte. Ein Binär/DezimalKonverter wandelte 20 der 32 Zahlen um (der Rest wurde verworfen) und behielt nur die letzte Stelle der zweistelligen Zahlen. Diese letzte Stelle steuerte einen IBMLochkartenstanzer, der schließlich eine Lochkartentabelle mit Zufallsziffern ausgab. Der Hauptteil des Buches umfasst die Tabelle der Zufallsziffern“. Sie werden in Gruppen zu ” je fünf Ziffern aufgelistet. Die Häufigkeit der ersten Ziffern in den Blöcken sind in der Tabelle 6 aufgelistet. Sie werden im Folgenden noch eine Rolle spielen. Hier kann man festhalten, dass die Zufälligkeit“ der ersten Ziffer – in Anbetracht des kleinen Ausschnitts der Zufallstabelle ” – nicht sehr ausgeprägt ist. 11 Literatur [1] J. Bewersdorff. Glück, Logik und Bluff. Vieweg, Braunschweig, 1998. [2] N. Henze. Stochastik für Einsteiger. Vieweg, Braunschweig, 1997. [3] R. Ineichen. Der schlechte Würfel – ein selten behandeltes Problem in der Geschichte der Stochastik. Historia Mathematica, 18:253–261, 1991. [4] L. Russio. Die vergessene Revolution. Springer, New York, 2003. [5] L. Tarassow. Berlin, 1998. Wie der Zufall will? Vom Wesen der Wahrscheinlichkeit. [6] W. Riemer und D. Stoyan. Springer, Würfeln“ mit Quadern - die Gibbs-Verteilung, 2010. ” . http://www.studienseminare-ge-gym.nrw.de/K/riemer/mathematik/quader/quader-gibbs.pdf [7] C. Weizel. Erzeugung sicherer Zufallszahlen. Universität Koblenz, 2004. https://www.uni-koblenz.de/∼steigner/seminar-asym-krypt/weizel.pdf. 12