gleichverteilte Zufallszahlen
-
Das mit dem modulo bringt doch auch wieder ähnliche Probleme mit sich.
Einfaches Beispiel: ich erzeuge Zufallszahlen von 0 bis 2. Möchte aber nur 0 und 1 haben. Also modulo 2. Und schon erzeuge ich die 0 doppelt so wahrscheinlich wie die 1. Für größere Zahlen ist der Effekt nicht mehr ganz so dramatisch, aber ganz gleichverteilt isses nicht.
MfG Jester
-
Klar, das 1. Modulo für die lineare Kongruenzmethode sollte möglichst groß gewählt werden, was zudem (wenn ich es richtig in Erinnerung habe) den Vorteil hat, dass die Zufallssequenzen größere Periodenlängen haben.
Ob eine Zufallszahlensequenz wirklich gleichverteilt ist, kann man sowieso recht schwer beweisen, da man dies erst sieht, wenn man das Zufallsexperiment unendlich oft wiederholt.
Die Aussage "Ich kann 0 und 1 gleichverteilt erzeugen" ist meiner Meinung nach nur eine Behauptung, die man nicht beweisen kann.
Ich denke es reicht, wenn man weiß, dass alle Zahlen nahezu gleichwahrscheinlich auftreten. Die genannte Methode wurde lange untersucht und erfüllt diese Eigenschaft, wenn man sie mit den richtigen Werten anwendet.
-
Turing schrieb:
Die Aussage "Ich kann 0 und 1 gleichverteilt erzeugen" ist meiner Meinung nach nur eine Behauptung, die man nicht beweisen kann.
Ich wüsste gerade keine prinzipiellen Gründe, die gegen einen solchen Beweis sprechen, sofern du keine Blackbox meinst. Die Mathematik gestattet auch Aussagen über unendlich oft ausgeführte Algorithmen.
Bei der linearen Kongruenz ist die Gleichverteilung bestimmt längst gezeigt bzw. widerlegt worden, laut Wikipedia ist die Gleichverteilung sogar für den Mersenne-Twister-Algorithmus in gewissen Grenzen bewiesen.
-
Man kann die Zufälligkeit nur testen und dann eine Aussage darüber machen, mit welcher Wahrscheinlichkeit die Realisierung den Annahmen genügt.
-
Wieso sollte ich bei einer bestimmten Realisierung deren Aufbau ich kenne nicht auch direkt etwas über die Eigenschaften aussagen können?
Ich weiß doch auch, daß 1 + 1/2 + 1/4 + 1/8 + ... als Grenzwert 1 hat. Dazu muß ich auch nicht solange addieren bis mal 2 rauskommt (was nach endlich vielen Schritten nie der Fall ist).
-
Jester schrieb:
Wieso sollte ich bei einer bestimmten Realisierung deren Aufbau ich kenne nicht auch direkt etwas über die Eigenschaften aussagen können?
Ich weiß doch auch, daß 1 + 1/2 + 1/4 + 1/8 + ... als Grenzwert 1 hat. Dazu muß ich auch nicht solange addieren bis mal 2 rauskommt (was nach endlich vielen Schritten nie der Fall ist).
Entschuldige die dumme Frage, aber warum ist der Grenzwert dieser Folge 1? Ich hätte spontan auf 2 getippt.
-
Das erinnert mich irgendwie jetzt an die Geschichte bei der man sich seinem Ziel immer um genau die Hälfte nähert aber doch nie ankommt...
Aber zurück zum Thema: Was für Aussage außer statistischen Momenten kannst Du denn machen? Und für statistische Momente brauchst Du nunmal Realisierungen.
Bei Pseudo-Zufallszahlen magst Du recht haben, dass ich eine Art "Pseudo-Gleichverteilung" nachweise, indem ich z.B. im Falle der Linearen Kongruenz mit allen möglichen Startwerten solange Zufallszahlen erzeuge bis sie sich wiederholen und dann histogrammmäßig anschaue. Wenngleich ein solche Beweis nur niederdimensional und eher theoretischer Natur ist.
-
die 1 ist ein typo, jester schreibt doch spaeter selbst 2.
-
..
-
Erhard Henkes schrieb:
class Random_aus_Stdlib_geklaut
göttlich
-
schrieb:
Erhard Henkes schrieb:
class Random_aus_Stdlib_geklaut
göttlich
Erhard Henkes schrieb:
return(((seed_ = seed_ * 214013L + 2531011L) >> 16) & 0x7fff);
grottig
-
Greif Dir doch einfach die Systemzeit ab. Ist die gerade -> 0 bei ungerade -> 1. Das dürfte wohl mit das einfachste sein.
-
Das ist ja auch super zufällig.
-
aber schoen eine zufaellige zeit vergehen lassen zwischen den abgriffen.