Pseudozufallszahlen
Für die Simulation stochastischer Prozesse werden im Allgemeinen eine große Anzahl von Zufallszahlen (Zufallsziffern) benötigt.
Man benutzt deshalb häufig sogenannte Pseudozufallszahlen, die zwar mit deterministischen Algorithmen erzeugt werden, bei geigneter Parameterwahl aber weitgehend dieselben Eigenschaften wie „echte“ Zufallszahlen besitzen.
Zur Untersuchung der Güte solcher Pseudozufallszahlen gibt es eine Reihe von Tests.
Um möglichst gerecht und objektiv vorzugehen, nutzt Lehrer Stochasius die Randomfuktion seines Taschencomputers, um einen Schüler für eine mündliche Leistungskontrolle zu bestimmen. Trotzdem haben einige Schüler Zweifel an diesem Verfahren (vor allem dann, wenn ein Schüler zweimal hintereinander „ausgewürfelt“ wurde). Der Klassenprimus stellt überhaupt infrage, dass ein solch streng deterministisch arbeitendes Gerät wie ein Rechner Zufallsziffern erzeugen könne.
Vor diesem Problem standen die Entwickler von Computern ursprünglich auch. Man versuchte anfangs, Zufallsziffern mithilfe realer Vorgänge mit zufälligem Ergebnis (z.B. radioaktiver Zerfall), die in einen Computer eingebaut wurden, zu erzeugen. Dem war aber kein großer Erfolg beschieden, zumal man herausfand, dass es auch mit deterministischen (rekursiven) Algorithmen möglich ist, Ziffernfolgen, sogenannte Pseudozufallszahlen, zu erstellen, die weitgehend dieselben Eigenschaften wie echte Zufallszahlen besitzen.
Im Folgenden wird ein Algorithmus zum Erzeugen fünfstelliger Pseudozufallszahlen angegeben:
- Startzahl zwischen 0 und 1 mit fünf Stellen nach dem Komma, z.B. 0,62347
- ...
Dieser Algorithmus – es gibt auch andere – ist ein periodischer Pseudozufallsgenerator, d.h. nach einer gewissen Anzahl von Schritten wiederholen sich die Startzahl (es gibt nur verschiedene infrage kommende Zufallszahlen aus mit fünf Dezimalstellen, also kehrt die Startzahl spätestens als wieder) und damit auch die folgenden Zahlen.
Es sollte deshalb das Bestreben sein, die in den Algorithmus eingehenden Konstanten so zu wählen, dass es möglichst lange dauert, bis sich die Startzahl wiederholt und dass die Zufallszahlen gewissen Gütekriterien genügen. Als günstig hat sich in diesem Sinne der Faktor 173 erwiesen. Positiv wirken sich als Faktoren auch die Zahlen 117, 123, 133, 147, 163, 187 oder 197 aus. Die Startzahl sollte als letzte Ziffer eine 1, 3, 7 oder 9 haben. Fatale Auswirkungen hätte die 0,5, was man auch interaktiv überprüfen könnte.
Nicht weniger wichtig als das Gewinnen von Zufallszahlen ist die Überprüfung ihrer Güte, denn aus der Analyse einer zufälligen Stichprobe werden oftmals weitreichende Entscheidungen getroffen, sei es in Politik, Wirtschaft oder Gesellschaft. So entscheidet z.B. die durch eine zufällige Stichprobe gewonnene Einschaltquote über das Wohl und Wehe von Fernsehsendungen.
Zu den häufig angewandten Gütekriterien zählen die folgenden:
- Für die relativen Häufigkeiten des Auftretens der zehn Ziffern müsste gelten:
- Für die relativen Häufigkeiten des Auftretens der Ziffernpaare müsste gelten:
- Die Zifferntripel, die Ziffernquadrupel, ... besitzen die analogen Eigenschaften wie die in (1) und (2) genannten.
- Beim Maximumtest, für den die Zufallszahl als Folge von Zifferntripel dargestellt worden ist, müsste gelten:
- Beim Pokertest, für den die Zufallszahl als Folge von 5-Tupeln dargestellt worden ist, müssten die nachfolgenden Näherungen für die Ziffern des 5-Tupels gelten:
- Beim Run-Test stimmen die relativen Häufigkeiten für das Auftreten langer Sequenzen von geraden Ziffern, von Primzahlen o.Ä. mit den entsprechenden zu berechnenden Wahrscheinlichkeiten gut überein.
Um die Güte einer Zufallszahl zu bestimmen, genügt es nicht, nur einen der obigen Tests (oder einen ähnlichen Test) durchzuführen.
Die Zufallszahl beispielsweise genügt zwar hervorragend (1), ist aber nach (2) als eine sehr schlechte Zufallszahl einzustufen.