Prinzipien zur Erzeugung von Zufallszahlen in der Informatikhinze/fv-hinze.pdf · Prinzip...

21
Technische Universit ¨ at Dresden Fakult ¨ at Informatik Prinzipien zur Erzeugung von Zufallszahlen in der Informatik Vortragender: Dipl.-Inform. Thomas Hinze 1. Motivation 2. Grundlegende Begriffe und Zusammenh ¨ ange 3. Klassifikation der Prinzipien 4. Prinzipien zur Erzeugung echter Zufallszahlen 5. Pseudozufallszahlengeneratoren 6. Statistische Tests zur Bewertung der einzelnen Prinzipien 7. Zusammenfassung, Literatur T. Hinze 1/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Transcript of Prinzipien zur Erzeugung von Zufallszahlen in der Informatikhinze/fv-hinze.pdf · Prinzip...

Technische Universitat Dresden Fakultat Informatik

Prinzipien zur Erzeugung von

Zufallszahlen in der Informatik

Vortragender: Dipl.-Inform. Thomas Hinze

1. Motivation

2. Grundlegende Begriffe und Zusammenhange

3. Klassifikation der Prinzipien

4. Prinzipien zur Erzeugung echter Zufallszahlen

5. Pseudozufallszahlengeneratoren

6. Statistische Tests zur Bewertung der einzelnen Prinzipien

7. Zusammenfassung, Literatur

T. Hinze 1/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Motivation

Zufallszahlen

� besitzen mannigfaltige Anwendungen in der Informatik

� ermoglichen den effizienten computergestutzten Einsatz und

� beschleunigte Bearbeitung zahlreicher Aufgabenstellungen

wichtige Anwendungsgebiete und -beispiele in der Informatik

� probabilistische Algorithmen

� z.B. Monte-Carlo- und Las-Vegas-Methoden

� Simulation

� Generierung zufalliger Ereignisse entsprechend statistischerVorgaben

� Kryptographie / Kryptoanalyse

� z.B. Schlussel- und Parametererzeugung, Verschlusselungsver-fahren, Verfahren zur digitalen Signatur, Dummy Traffic, Angriffeauf kryptographische Verfahren

� Test

� Generierung von Testsatzen

T. Hinze 2/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Grundlegende Begriffe und Zusammenhange

zufalliges Ereignis

� Ereignis, dessen Eintrittszeitpunkt und Wirkung nicht mitabsoluter Sicherheit vorhergesagt werden kann

� setzt eine unvollstandige Beschreibung des Systems, in demdas zufallige Ereignis stattfinden kann, voraus

� Zufall � � Ausdruck von Unwissenheit

Zufallsgroße

� meßbare / analysierbare Reprasentation der Gesamtheit allerzufalligen Ereignisse der zugrundeliegenden Systemkomponente

� Wertebereich, Wertevorrat

diskret � � endlicher oder abzahlbar unendlicher Wertevorrat

Zufallszahl

� Wert, den eine Zufallsgroße bei ihrer Bestimmung annimmt

Zufallszahlenfolge

� Folge voneinander moglichst unabhangiger Zufallszahlen, dieeiner gegebenen statistischen Verteilung genugen

T. Hinze 3/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Vereinbarungen und Forderungen in der Informatik� Verarbeitung der Zufallszahlen (ZZ) in jedem Fall durch Computer

� Erzeugung der ZZ entweder durch Computer oder extern

Grundanforderungen an Zufallszahlengeneratoren

� Uniformitat – Gleichvert. der ZZ innerhalb jeder erzeugten Folge

� Unabhangigkeit – keine Autokorrelation zwischen den ZZinnerhalb jeder erzeugten Folge

zusatzliche Wunsche/Erfordernisse fur Anwendungen der Informatik

� diskrete Zufallsgroßen

� anwendungsabhangig: Reproduzierbarkeit/Irreproduzierbarkeitder Zufallszahlenfolgen

� Gleichvert. der Zufallszahlen oft im Intervall � � ��� � , � � �� � , � � ��� � � � �

� Schnelligkeit, Effizienz, Unvorhersagbarkeit des Generators

Bemerkungen

� Transformation Gleichverteilung � andere bekannte Verteilungenmathematisch herleitbar und berechenbar

� Intervall � � ��� � gequantelt entspr. computerinterner Zahlendarst.

T. Hinze 4/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Definitionen aus der mathematischen Statistik

diskret gleichverteilte ZufallsgroßeEine diskrete Zufallsgroße � heißt gleichverteilt auf den Ereignissen

� � � � � � � � � , wenn fur ��� � ��� � � ��� gilt:

� Gleichwahrscheinlichkeit der Ereignisse: � � � � � � ��

� Erwartungswert: � � � ���

� �� �

� Streuung: ��� � � ���

� � � � � � � ��

Korrelation

� Grad des Zusammenhangs zwischen Zufallsgroßen

Korrelationskoeffizient

� zweier Zufallsgroßen � und � : � � � � ��� � � ��� � � ��� � � � � �

�� � �� �

� Es gilt: � � � � � �!

"#

� � $% &' ( $) � � � � � � � � � � � unkorreliert

*� � � � � � � voneinander abhangigAutokorrelation

� Korrelation einer Zufallsgroße � mit sich selbst � � � � � �T. Hinze 5/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Rauschgrößen−messung

Rand Corporation

ZiffernfolgentranszendenterZahlen

e,

linear

gemischt linear

multiplikativ

nichtlinear

x mod n

mehrfach rek.

allgemein

π

binär

dual (Galois)Laufzähler mitStoppereignis

Glücksspiele 2

Generatoren fürechte Zufallszahlen

Pseudozufallszahlen−generatoren

Zufallszahlen−generatoren

Tabellen−werke

Kongruenz−generatoren

Linear rückgek.Schieberegister

PhysikalischeGeneratoren

Klassifikation der Prinzipien

T. Hinze 6/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

a(t i)

t1 t2 t3 t4 t5 t6 t7t

physikalischeZufallsgröße

Meßzeitpunkte

Zufallszahlenfolge 0 1 0 0 1 0

Rauschgroßenmessung

Prinzip

� zeitquantisierte Erfassung einer zugrundeliegenden physikali-schen Zufallsgroße und Transformation in Zufallszahlenfolge

� Transformation z.B.: � �� � � � � �� �� � �

� � Ausgabe � � � � � �

� �� � ��� � �� �� � �

� � Ausgabe � � � � � �

Vorteile

� optimale statistische Eigenschaften

� ohne Speich. keineReproduzierbarkeit

Nachteile

� Auswirkungen vonMeßfehlern

� Verfugbarkeit undmax. Abtastrateabhangig vonphys. Zufallsgroße

T. Hinze 7/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

t

Zählerstand

Stoppereignisse

Zufallszahlenfolge 5 1

12

0

3456789

Laufzahler mit Stoppereignis

Prinzip

� Zahler modulo� , der in schneller Folge fortlaufend von � bis� � �

zahlt und jeweils bei Eintreten des zufalligen zahlerunabhangigenStoppereignisses sofort den aktuellen Zahlerwert als Zufallszahlbereitstellt

Vorteile

� optimale statistischeEigenschaften

� ohne Speich. keineReproduzierbarkeit

Nachteile

� Organisation derStoppereignisse

� Stoppereignisse nicht zeitlich aquidistant

� mehrfaches vollstandiges Durchzahlen zwischen aufeinander-folgenden Stoppereignissen sicherzustellen

T. Hinze 8/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Rand Corporation

Prinzip

� Tabellenwerk (Buch) von Zufallszahlen, entstanden 1955

� enthalt 1.000.000 Zufallszahlen

� 400 Seiten zu 50 Zeilen mit je 50 Zufallszahlen (Dezimalziffern)

� Buch zufallig aufschlagen, Folge wahlen und

� als genutzt kennzeichnen

� Zufallszahlen mittels physikalischem Generator erzeugt

Vorteile

� leichte Verfugbarkeit

� optimale statistische Eigenschaften

� Reproduzierbarkeit/Irreproduzierbarkeitleicht vom Anwender steuerbar

Nachteile

� endlicher Vorrat an Zufallszahlen

� Ubertragung Buch � � Computer

� Bekanntheit des Buches

T. Hinze 9/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

3, 141 592 6532, 718 281 828

589 793 238 ......

Ziffernfolgen transzendenter Zahlen

Definition transzendente ZahlenZahlen, die nicht algebraisch sind, d.h. die nicht als Nullstellen beliebi-ger Polynome � �� � � � � � �� � � � � � � � � � �� � � � mit � �� � und

� � � � ��� � � ��� � ,� � � � � � � vorkommen konnen. (z.B. � , � )

Prinzip

� Berechnung und Tabellierung der gewunschten transzendentenZahl auf hinreichend viele zuverlassige Nachkommastellen(z.B. mittels Spigotalgorithmen)

� zufallige Auswahl einer Ziffernfolge, Nutzung als Zufallszahlenfolgeund Kennzeichnung als bereits genutzt

Vorteile

� leichte rechnergestutzte Realisierbarkeit

� leichte Vorabgen. fur spatere Nutzung

Nachteile

� keine gesicherten statistischen Eigenschaften, nur Annahmen

� hoher Bekanntheitsgrad der Ziffernfolgen

T. Hinze 10/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Pseudozufallszahlengeneratoren� Gewinnung der Zahlenfolgen durch deterministische Berechnung

� Zufall � � Pseudozufall: Wegfall der generellen Unvorhersagbarkeit

gemeinsames Prinzip

� ausgehend von einem zufallig gewahlten Startwert undgeeigneten Parameterbelegungen erfolgt Bestimmung derPseudozufallszahlenfolge durch spezifische rekursiveBerechnungsvorschrift

Forderung fur perfekten Pseudozufallszahlengenerator

� Es soll keinen effizienten (polynomiellen) Algorithmus geben, dereine Pseudozufallszahlenfolge ohne Kenntnis der Berechnungs-vorschrift, des Startwertes und der Parameterbelegungen signifi-kant von einer echten Zufallszahlenfolge unterscheiden kann.

gemeinsame Eigenschaft

� Periodizitat: zyklische Wiederholung der Pseudozufallszahlen-folge (PZZ-Folge) nach endlicher Lange

� Ziel: Maximierung der Periodenlange

T. Hinze 11/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Multiplikativer Kongruenzgenerator

PrinzipParameter: � ��� � � mit � ��� , � � � ,� � �

Startwert: � � � � � ��� � � ��� � � �

Rekursion: � �� ��� � �� � � � $% �

PZZ-Folge: �� � � � Es gilt: �� � � �� �

maximale Periodenlange

� � unter folgenden Bedingungen (Kobayashi):

� � � � � oder� � � � � mit � ungerade Primzahl, �� � � � � �

� ��� � � � � � $% �

� � ��� � � ��� � � �

� Minimierung der Autokorrelation: �� � �Vorteile

� Schnelligkeit des Verfahrens und leichte Implementierbarkeit

Nachteile

� keine optimalen statistischen Eigenschaften, kleine Periodenlange

� leichte Vorhersagbarkeit der PZZ-Folge (nicht perfekt)

T. Hinze 12/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Gemischt linearer Kongruenzgenerator

PrinzipParameter: � ��� ��� � � mit � � � , � �� ,� � � ,� � � ,� � �

Startwert: � � � � � ��� � � ��� � � �

Rekursion: � �� ��� � �� � � � � � $% �

PZZ-Folge: �� � � � Es gilt: �� � � �� �

maximale Periodenlange

� � unter folgenden Bedingungen (Lehmer):

� � ��� � ��� � � �

� � � � � $% � fur jeden Elementarteiler � von�

� � � � � $% � falls � Teiler von� ist

� Minimierung der Autokorr. (Fishman/Greenb.): � � � � �� �� � �

Vorteile

� Schnelligkeit des Verfahrens und leichte Implementierbarkeit

Nachteile

� keine optimalen statistischen Eigenschaften, kleine Periodenlange

� leichte Vorhersagbarkeit der PZZ-Folge (nicht perfekt)

T. Hinze 13/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Mehrfach rekursiver Kongruenzgenerator

PrinzipParameter: �� � � � � � � � � � � � � mit � � , � �� � � ��� � � �� � � � ,� � �

Startwerte: � � � � � � � � � � � � ��� � � � � � � � mit � � � � � ��� � � � � � �� *� �

Rekursion: � ��

�� �

� �� � �� � � $% �

PZZ-Folge: �� � � � Es gilt: �� � � �� �

� Spezialfall: Fibonacci-Generator

maximale Periodenlange

� � � � �

Belegungsvorschrift der Parameter fur max. Periodenlangeandert sich mit jedem Vorgabewert fur , keine geschl. Darst.

Vorteile

� großere maximale Periodenlange, schwierigere Vorhersagbarkeit

� Schnelligkeit des Verfahrens und leichte Implementierbarkeit

Nachteile

� keine optimalen statistischen Eigenschaften, nicht perfekt

� hoher Aufwand zum Finden geeigneter Parameterbelegungen

T. Hinze 14/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

��� � �� � Generator� Verfahren nach Blum, Shub

PrinzipParameter: � � � � � � � mit � � � prim, � � � , � � � � � � $% � ,

� � � � � � , � ��� � � � � � � �

Startwert: � � � �� � $% � � �

Rekursion: � �� �� �� � � $% � � �

PZZ-Folge: �� � � � $% � Es gilt: �� � � �� �

maximale Periodenlange

� � �

Vorteile

� perfekter Pseudozufallszahlengenerator

� leichte Implementierbarkeit

� leichte Wahl geeigneter Parameterbelegungen

Nachteile

� nur ein Bit pro Rekursionsschritt � � langsam

� kleine Periodenlange

T. Hinze 15/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Schieberegister

Initialbelegung entspricht Startwert

Rückkopplungsfunktion

f : {0,1}r {0,1}

rk

... PZZ−Folge

Parameter

zk−zk−r+zk−r+zk−r zk

(Rückkopp−lungspolynom)

121

Linear ruckgekoppeltes Schieberegister

Prinzip

� Schieberegister mitBitfolge *� � �

initialisiert

� jede Zelle spei-chert ein Bit fureinen Takt (D1)

� Bits schiebensich taktweisedurch die Kaskade

� Bit der letzten Zelle als Pseudozufallsbit taktweise ausgegeben

� Bit der ersten Zelle mittels Ruckkopplungsfunktion berechnet

� Ruckkopplungsfunktion und ihre Parameter bestimmen wesentlichdie Qualitat der statistischen Eigenschaften der PZZ-Folge

� gleichwertige Notation auch als Rekursionsschema moglichmaximale Periodenlange

� � � � � Bit, unabhangig von der gewahlten zulassigen Initialisierung

T. Hinze 16/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

1

& & & & &

Schieberegister

Initialbelegung entspricht Startwert

2 2 1

rk

zk−r

br br−

... �� � � � �� ���zk−zk−r+zk−r+ zk

br− b b

...

121

Binares linear ruckgekoppeltes Schieberegister

Prinzip

� Ruckkopplungs-funktion ist mitden Parametern

�� � � � � � mit

� � � � ��� � � � �

behaftet

� Parameter � bil-den Koeffizienten descharakt. Polynoms

� � � �� � � � � �� �

� � � �� � � � � � � � � �� � � � � � �

� zum Erreichen der maximalen Periodenlange� � � � mußcharakteristisches Polynom irreduzibel sein

Vorteile Nachteile

� leicht in Hardware implementierbar � nicht perfekt

� sehr schnell, einfache Parameterwahl

T. Hinze 17/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

& 1 &2&

Schieberegister

Initialbelegung entspricht Startwert

bbbr

zk−r

rkzkzk−

......

�� � � �� � ���

...

1

Duales linear ruckgekoppeltes Schieberegister

Galois-Schieberegister

Prinzip

� entspricht dembinaren linearruckgekoppel-ten Schiebe-register (SR)

� Einsparungeiner � -Operation

� zum Erreichen dermaximalen Perioden-lange� � � � muß charakteristisches Polynom irreduzibel sein

� Transformation duales binares linear ruckgek. SR moglich

Vorteile Nachteile

� leicht in Hardware implementierbar � nicht perfekt

� sehr schnell, einfache Parameterwahl

T. Hinze 18/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Statistische Tests zur Bewertung der Prinzipien� basieren auf konkreten erzeugten (Pseudo)Zufallszahlenfolgen

� Generatoren selbst nicht herangezogen

� Aufschluß daruber, ”wie gut“ Unabhangigkeit und Uniformitat eingehalten werden

� Hypothese (Vorliegen Gleichverteilung, keine Autokorrelation) auf definiertemSignifikanzniveau (z.B. � � , � � Fehlertoleranz) akzeptiert oder verworfen

� Tests als Algorithmen der mathematischen Statistik notiert und angewendet, z.B.:

� -Test (u.a. auf Gleichverteilung)

� Standardverfahren der mathematischen Statistik

� fur lange (Pseudo)Zufallszahlenfolgen ( � 50 Zahlen) empfohlenKolmogorov-Smirnov-Test (auf Gleichverteilung)

� Standardverfahren der mathematischen Statistik

� i.a. genauer als � -Test, aber aufwendiger, auch fur kurze (Pseudo)Zufallszahlenfolgen

Gap-Test (auf Autokorrelation)

� Uberprufung der Intervallangen bis zum Wiedererscheinen der gleichen Zahl unter

� Anwendung des Kolmogorov-Smirnov-TestsPoker-Test (auf Autokorrelation)

� analysiert die Haufigkeit, mit der sich die Ziffern in der (Pseudo)ZZ-Folge wiederholenMustersuche (auf Autokorrelation)

� graphische Darstellung und Auswertung der (Pseudo)Zufallszahlenfolge

� Gibt es wiederkehrende regelmaßige Muster oder zyklische Variationen?

T. Hinze 19/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Zusammenfassung

Resumee

� vorgestellte Prinzipien i.a. seit mehreren Jahrzehnten bekannt und

� im praktischen Einsatz bewahrt

� Prinzipien decken ein großes Spektrum nutzbarer undeigenstandiger Strategien ab

� Repertoire umfaßt Prinzipien, die bevorzugt hardware- odersoftwarebasiert implementiert werden konnen

� Pseudozufallszahlengeneratoren, die ublicherweise inProgrammiersprachen oder von Computer-Algebra-Systemenbereitgestellt werden, sind vorgestellt worden undspezialisieren sich durch ihre Parameterbelegungen

Ausblick

� weiterfuhrende aufbauende Arbeiten beschaftigen sich u.a. mitder Untersuchung

� von Zufallsfunktionen (Orakeln)

� von chaotischen Systemen

T. Hinze 20/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik

Technische Universitat Dresden Fakultat Informatik

Ausgewahlte Literatur

L. Blum, M. Blum, M. Shub. A Simple Unpredictable Pseudo-RandomNumber Generator. SIAM J. on Computing 15(2):364–383, 1986

W. Gohler. Hohere Mathematik. Deutscher Verlag fur Grundstoff-industrie Leipzig, 1986

A. Grube. Moderne Erzeugung von Zufallszahlen.S.-Toeche-Mittler-Verlag Darmstadt, 1975

D. Knuth. The Art of Computer Programming. Vol. 2: SeminumericalAlgorithms. Addison-Wesley Ontario, 1998

N. Schmitz, F. Lehmann. Monte-Carlo-Methoden I.Verlag Anton Hain Meisenheim, 1976

B. Schneier. Applied Cryptography. John Wiley and Sons Inc.New York, 1994

R. Zielinski. Erzeugung von Zufallszahlen. Verlag Harri Deutsch

Frankfurt/M., 1978

T. Hinze 21/21 Prinzipien zur Erzeugung von Zufallszahlen in der Informatik