www.infos-aus-germanien.infoBy Germanien | Startseite | Impressum | Sitemap | Webtips
 

Pseudozufallszahl

www.infos-aus-germanien.info



Als Pseudozufallszahlen bezeichnet man Zahlenfolgen, die durch einen deterministischen Algorithmus (Pseudozufallszahlengenerator) berechnet werden (und somit nicht zufällig sind), aber (für hinreichend kurze Sequenzen) zufällig aussehen. Bei jedem Start der Zufallszahlenberechnung mit gleichem Startwert wird die gleiche Zahlenfolge erzeugt (weswegen diese Zahlen weit davon entfernt sind, wirklich zufällig zu sein). Pseudozufallszahlen erzeugt man mit Pseudozufallszahlengeneratoren.

Die Zufälligkeit wird durch statistische Eigenschaften der Zahlenfolge bestimmt, wie Gleichwahrscheinlichkeit der einzelnen Zahlen und statistische Unabhängigkeit verschiedener Zahlen der Folge. Wie gut diese statistischen Forderungen erfüllt sind, bestimmt die Güte eines Pseudozufallszahlengenerators.

Eine Folge von Pseudozufallszahlen wird mittels deterministischer Algorithmen ausgehend von einem echt zufällig gewählten Startwert berechnet. Ein solcher Startwert kann z.B. die Systemzeit des Computers in Millisekunden im Moment des letzten Einschaltens sein. Diese Folge besitzt die Eigenschaft, dass es schwer ist, anhand einiger Zahlen die nächsten Zahlen der Folge vorherzusagen. Eine Folge von Pseudozufallszahlen "sieht zufällig aus".


Inhaltsverzeichnis

Eigenschaften von Pseudozufallszahlalgorithmen

Einige Zufallszahlenalgorithmen sind periodisch. Auch wenn es meist besser wäre nicht-periodische Algorithmen zu verwenden, sind die periodischen oft deutlich schneller. Durch geschickte Wahl der Parameter kann man die Periode beliebig groß machen, weshalb sie in der Praxis den nicht-periodischen oft deutlich überlegen sind. Einige Pseudozufallszahlengeneratoren sind auch nur endlich, d.h. man kann mit ihnen nicht beliebig viele Zahlen erzeugen (von daher sind sie in gewissem Sinne verwandt mit den periodischen).

Drei Beispiele für Pseudozufallszahlengeneratoren

(mehr dazu unter Pseudozufallszahlengenerator)

endlicher Generator

Um eine Folge von <math>N<math> Zahlen zwischen <math>0<math> und <math>m<math> zu erzeugen, wähle man ein <math>k<math> größer als <math>m^2<math>, ein <math>p<math> größer als <math>(k+N)^2<math> und nicht durch kleine Primzahlen teilbar (wobei klein hier bedeutet: kleiner als <math>m<math>).

<math>a_n = (p \mod (k + n)) \mod m<math>

periodischer Generator

Man nehme Startzahlen <math>a_0<math>, <math>p<math>, <math>b<math> und <math>m<math>, wobei <math>m<math> die größte dieser Zahlen ist.

<math>a_n = (a_{n-1} p + b) \mod m<math>

Ein weiteres Beispiel stellt der Mersenne Twister dar.

nicht-periodischer/unendlicher Generator

Man nehme die Nachkommastellen einer Wurzel einer ganzen Zahl als Zufallszahlen

Verwendung von Pseudozufallszahlen

Pseudozufallszahlen werden u.a. in der Rechnersimulation angewandt, bei der statistische Prozesse mit Hilfe von Software simuliert werden. Pseudozufallszahlen können auch bei der Fehlersuche in Computerprogrammen nützlich sein. Andererseits macht diese Eigenschaft Pseudozufallszahlen für bestimmte Anwendungen unbrauchbar (so muss man beispielsweise in der Kryptographie aufpassen, dass man Pseudozufahlszahlen nicht an den falschen Stellen verwendet). Anwendung finden Pseudozufallszahlen auch in Rauschgeneratoren.


Ein weiterer Vorteil der Pseudozufallszahlen ist, dass sie auf jedem Rechner ohne Rückgriff auf externe Daten erzeugt werden können (was sie für bestimmte Bereiche der Kryptographie trotz oben genannter Nachteile wieder interessant macht). Zur Erzeugung echter Zufallszahlen braucht man entweder einen echten Zufallsgenerator (z.B. durch Digitalisieren von Rauschen oder durch Ausnutzen von Quanteneffekten) oder zumindest eine Quelle quasizufälliger (normalerweise nicht vorhersagbarer) Ereignisse wie Zeiten von Benutzereingaben oder Netzwerkaktivität.






Info Hinweis: Dieser Artikel basiert auf dem Ursprungsartikel Pseudozufallszahl aus der Wiki pedia und er steht unter der GNU-Lizenz link fuer freie Dokumentation, eine Autoren-Liste ist ebenfalls verfuegbar.