Erzeugen einer uniformen Verteilung

Neue Frage »

schlauchsteher123 Auf diesen Beitrag antworten »
Erzeugen einer uniformen Verteilung
Meine Frage:
Sei A ein probabilistischer Algorithmus, welcher immer nach einer endlichen Anzahl Schritte terminiert und dessen Ausgabe eine uniform verteilte Zufallsvariable
U_{n} \in {1, . . . , n}
ist, d.h., mit
P_{U_{n}}(u) = \frac{1}{n} für u ? {1, . . . , n}.
Algorithmus A hat eine Quelle von beliebig vielen uniform zufälligen Bits zur Verfügung aber keine anderen Zufallsquellen.
Beweisen Sie, dass kein solcher Algorithmus A existiert, ausser wenn n = 2^{k} für ein k ? \mathbb N.

Meine Ideen:
Also ich komme zum Ansatz, dass ich eine Funktion denfienieren müsste die von einer Menge mit m = 2^{k} Elementen, für ein k ? \mathbb N, auf eine andere Menge mit n Elementen, sodass n nicht m teilt oder umgekehrt. Aber aus der Definition erschliesst es sich, dass ich eine Funktion erstellen müsste die mit einer W'keit 1/p für jedes Element in der Grundmenge auf mehrere Elemente der Zielmenge gehen müsste. Für das p gilt eigentlich nur die Forderung, dass p \neq 2^{k} für alle k \in \mathbb Z. Dies geht aber nicht, solange ich nicht eine beliebige Zufallsvariable generieren kann, sodass ich alle Primzahlen uniform abbilden kann. Wie ich dies nun mathematisch formulieren kann? Hier komme ich nicht weiter...
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von schlauchsteher123
Algorithmus A hat eine Quelle von beliebig vielen uniform zufälligen Bits zur Verfügung aber keine anderen Zufallsquellen.

Beliebig viel soll aber doch heißen endlich viel in dem Sinne, dass man eine obere Schranke für die zur Verfügung stehene Bitzahl hat.

Das bedeutet dann, dass man sich in einem Laplaceschen Wahrscheinlichkeitsraum mit bewegt, in dem alle - ausnahmslos alle - Ereignisse dann eine Wahrscheinlichkeit aufweisen, die ein ganzzahliges Vielfaches von ist.

Für die diskrete Gleichverteilung auf benötigen wir Ereignisse mit Wahrscheinlichkeit . Nun bedeutet umgestellt , was nur für Zweierpotenzen möglich ist.


Praktisches Beispiel: Wenn man aus einem 32Bit-Integer-Randomwert (d.h. ) eine Gleichverteilung auf generieren will, dann geht man gewöhnlich so vor:



Das Ergebnis ist dann aber NICHT für , sondern stattdessen

und .

Der "Fehler" ist vermutlich für die meisten Belange tolerierbar, aber er ist da.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »