Simulieren Sie einen fairen Würfel mit einem vorgespannten Würfel


18

Wie kann bei einem vorgespannten seitigen Die eine Zufallszahl im Bereich gleichmäßig erzeugt werden? Die Wahrscheinlichkeitsverteilung der Würfelflächen ist nicht bekannt. Es ist lediglich bekannt, dass jede Fläche eine Wahrscheinlichkeit ungleich Null aufweist und dass die Wahrscheinlichkeitsverteilung bei allen Würfen gleich ist (insbesondere sind die Würfe unabhängig). Dies ist die offensichtliche Verallgemeinerung von fairen Ergebnissen mit unfairen Folgen .N[1,N]

Computerwissenschaftlich ausgedrückt haben wir ein Orakel, das die Würfelwürfe darstellt: so dass ungleich Null und unabhängig von . Wir suchen nach einem deterministischen Algorithmus der durch parametrisiert ist (dh kann ), so dass . Der Algorithmus muss mit der Wahrscheinlichkeit 1 enden, dh der Wahrscheinlichkeit, dass mehr alsD:N[1,N]pi=P(D(k)=i)kADADP(A()=i)=1/NAn Anrufe D konvergieren muss 0 als n .

Für N=2 (simulieren Sie eine faire Münze aus Münzwürfen mit einer voreingenommenen Münze) gibt es einen bekannten Algorithmus:

  • Wiederholen Sie den Vorgang zweimal, bis die beiden Würfe unterschiedliche Ergebnisse liefern ((Kopf, Zahl) oder (Zahl, Zahl)). Mit anderen Worten, Schleife für k=0.. bis D(2k+1)D(2k)
  • Gibt 0 zurück, wenn das letzte Paar von Flips war (Heads, Tails) und 1, wenn es war (Tails, Heads). Mit anderen Worten, gebe D(2k) wobei k der Index ist, an dem die Schleife beendet wurde.

Ein einfacher Weg, um einen unverfälschten Würfel aus einem voreingenommenen Würfel zu machen, ist die Verwendung der Münzwurf-Unbiasing-Methode, um eine faire Münze zu erstellen, und einen fairen Würfel mit Ablehnungsabtastung, wie beim Unbiasing von Sequenzen . Aber ist das optimal (für generische Werte der Wahrscheinlichkeitsverteilung)?

Insbesondere ist meine Frage: Was ist ein Algorithmus, der die kleinste erwartete Anzahl von Anrufen an das Orakel erfordert ? Wenn die Menge der erreichbaren erwarteten Werte offen ist, wie lautet die untere Schranke und welche Klasse von Algorithmen konvergiert gegen diese untere Schranke?

Für den Fall, dass verschiedene Algorithmusfamilien für verschiedene Wahrscheinlichkeitsverteilungen optimal sind, konzentrieren wir uns auf fast faire Würfel: Ich suche einen Algorithmus oder eine Algorithmusfamilie, die für Verteilungen wie optimal ist p i - 1 / N | < ϵi,|pi1/N|<ϵ für einige ϵ>0 .


p1=1ϵpi=ϵ/(N1)i>1maxipi1ϵ

@usul Ich verstehe deinen Kommentar nicht. Es gibt effizientere Algorithmen für einige Werte von (z. B. wenn ), aber ich frage nur nach Algorithmen, die nicht von abhängen . Was ist der Sinn von ? pii,pi=1/N(pi)ϵ
Gilles 'SO- hör auf böse zu sein'

Wie misst man die Effizienz eines Algorithmus, der nicht von abhängt ? Wahrscheinlich gibt es für einen solchen Algorithmus keine Obergrenze für die erwartete Anzahl der Anrufe, die benötigt werden, wenn man mein Beispiel mit . Das meine ich mit "das Höchste des Optimums ... ist wahrscheinlich grenzenlos". Wenn also alle Algorithmen in Erwartung beliebig viele Würfelwürfe erfordern können, wie entscheiden wir dann, welcher der besten ist? (pi)ϵ0
USUL

@usul Es gibt natürlich keine Obergrenze für die Anzahl der Würfe, aber ich frage nach dem erwarteten Wert (dh der durchschnittlichen Anzahl der Würfe). Für eine gegebene Verteilung ist der erwartete Wert für den Algorithmus, der eine faire Münze erzeugt und diese für die Zurückweisungsabtastung verwendet, endlich, nicht wahr? Es ist wahr, dass die Erwartung von der Verteilung abhängt, so dass verschiedene (Familien von) Algorithmen für verschiedene Verteilungen optimal sein könnten. Wenn das der Fall ist, nehmen wir an, ich interessiere mich für fast faire Würfel. (pi)
Gilles 'SO- hör auf böse zu sein'

Nicht genau die Frage, aber möchten Sie nur ein Ergebnis , das nahezu einheitlich ist (in / Gesamtabstand der Abweichungen)? Wenn ja, abhängig von der Garantie, die Sie von der Originaldistribution verlangen, wird dies in einem kürzlich erschienenen Artikel (in Submission) unter dem Namen "Sampling Improver for Uniformity" untersucht. Dies zeigt insbesondere, dass Sie unabhängig von eine Anzahl von Ziehungen erhalten können von distance zu distance verbessern . 1N1εε
Clement C.

Antworten:


3

Der folgende Aufsatz beantwortet eine nahe Variante dieser Frage: Die effiziente Konstruktion einer nicht voreingenommenen Zufallssequenz, Elias 1972 .

Die Frage scheint folgende zu sein: Wenn Sie Zugriff auf diese voreingenommene unabhängige Quelle haben, geben Sie eine Folge von Zufallszahlen in (beachten Sie den Unterschied zu Ihrer Frage, in der nur ein Ausgabesymbol angefordert wird). Da die Länge der gewünschten Ausgabe unendlich ist, ist die "Effizienz" des Schemas in der Arbeit (die wie eine natürliche Verallgemeinerung von Neumanns aussieht) gleich , was meiner Meinung nach bedeutet, dass eine Eingabe mit der Entropie in konvertiert wird eine Ausgabe der Entropie nähert sich .[1,N]1hh

Die Frage scheint sich bei dieser Formulierung viel besser zu verhalten, als eine einzelne Ausgangsziffer anzufordern, da zum Beispiel, wenn wir Abtastwerte zeichnen und am Ende eine Ausgabe mit vielen Informationen erhalten (zum Beispiel sind alle Eingangssymbole verschieden). Dann können wir all diese Informationen verwenden, um viele Ausgabesymbole zu erzeugen, während mit der hier formulierten Frage alle Informationen, die über die Informationen hinausgehen, die zur Erzeugung eines Ausgabesymbols verwendet wurden, verloren gehen.NN

Ich glaube, dass das Schema wiederholt Draws nimmt, sich die Sequenz ansieht und einige Ausgaben oder die leere Zeichenkette abbildet. Vielleicht gibt es eine Möglichkeit, das Schema für Ihre Frage zu verbessern, indem Sie sich Präfixe ansehen und anhalten, wenn wir "genug" Informationen haben, um ein Symbol auszugeben. Ich weiß es nicht.N


Ich habe nicht nach Folgearbeiten oder Arbeiten gesucht, in denen ich die Zeitung zitiert habe, daher weiß ich nicht, aber vielleicht hat jemand das Schema verbessert, eine andere angeboten, Ihre Frage beantwortet usw.
usul

2

Die Methode, die Sie für verallgemeinert. Wir verwenden, dass alle Permutationen von auch mit einem vorgespannten Würfel gleich wahrscheinlich sind (da die Walzen unabhängig sind). Daher können wir so lange rollen, bis wir eine Permutation wie die letzten Rollen sehen und die letzte Rolle ausgeben.N=2[1..N]N

Eine allgemeine Analyse ist schwierig; Es ist jedoch klar, dass die erwartete Anzahl von Rollen in schnell da die Wahrscheinlichkeit, dass bei einem bestimmten Schritt eine Permutation auftritt, gering ist (und nicht unabhängig von den Schritten davor und danach, was schwierig ist). Es ist jedoch größer als für festes , sodass die Prozedur fast sicher (dh mit der Wahrscheinlichkeit ) beendet wird.N0N1

Für festes wir eine Markov-Kette über der Menge der Parikh-Vektoren konstruieren, die sich zu summieren , die Ergebnisse der letzten Würfe zusammenfassen und die erwartete Anzahl von Schritten bestimmen, bis wir zum ersten mal . Dies ist ausreichend, da alle Permutationen, die einen Parikh-Vektor gemeinsam haben, gleich wahrscheinlich sind. Die Ketten und Berechnungen sind auf diese Weise einfacher.NNN(1,,1)

Angenommen , wir im Zustand sind mit . Dann ist die Wahrscheinlichkeit , ein Element (dh der nächste Wurf ist ), immer gegeben durchv=(v1,,vN)i=1nviNii

Pr[gain i]=pi .

Andererseits ist die Wahrscheinlichkeit gegeben , ein Element aus der Geschichte fallen zu lassen durchi

Prv[drop i]=viN

Immer wenn (und sonst ), weil alle Permutationen mit dem Parikh-Vektor gleich wahrscheinlich sind. Diese Wahrscheinlichkeiten sind unabhängig (da die Rollen unabhängig sind), sodass wir die Übergangswahrscheinlichkeiten wie folgt berechnen können:i=1nvi=N0v

Pr[v(v1,,vj+1,,vN)]={Pr[gain j],v<N0, else,Pr[v(v1,,vi1,vj+1,,vN)]={0,v<Nvi=0vj=NPrv[drop i]Pr[gain j], else andPr[vv]={0,v<Nvi0Prv[drop i]Pr[gain i], else;

Alle anderen Übergangswahrscheinlichkeiten sind Null. Der einzelne absorbierende Zustand ist , der Parikh-Vektor aller Permutationen von .(1,,1)[1..N]

Für die resultierende Markov-Kette¹N=2

Markovkette für N = 2
[ Quelle ]

mit der erwarteten Anzahl von Schritten bis zur Absorption

Esteps=2p0p12+i3(p0i1p1+p1i1p0)i=1p0+p02p0p02,

zur Vereinfachung gilt . Wenn nun, wie vorgeschlagen, für etwas , dannp1=1p0p0=12±ϵϵ[0,12)

Esteps=3+4ϵ214ϵ2 .

Für und Gleichverteilungen (der beste Fall) habe ich die Berechnungen mit Computeralgebra² durchgeführt; da der zustandsraum schnell explodiert, sind größere werte schwer zu bewerten. Die Ergebnisse (aufgerundet) sindN6

NormalPlot LogPlot
Plots zeigen als Funktion von ; links eine regelmäßige und rechts eine logarithmische Darstellung.EstepsN

Das Wachstum scheint exponentiell zu sein, aber die Werte sind zu klein, um gute Schätzungen zu liefern.

In Bezug auf die Stabilität gegen Störungen des wir die Situation für :piN=3

Erwartete Anzahl von Schritten für N = 3 und verschiedene Auswahlmöglichkeiten
Der Plot zeigt als Funktion von und ; natürlich ist .Estepsp0p1p2=1p0p1

Unter der Annahme, dass ähnliche Bilder für größere (Kernel stürzt ab und berechnet symbolische Ergebnisse auch für ), scheint die erwartete Anzahl von Schritten für alle außer den extremsten Auswahlen ziemlich stabil zu sein (fast alle oder keine Masse bei einigen ).NN=4pi

Zum Vergleich ist es höchstens erforderlich , eine durch ein beeinflusste Münze zu simulieren (z. B. indem die Ergebnisse so gleichmäßig wie möglich auf und werden), um eine faire Münze zu simulieren und schließlich eine bitweise Zurückweisungsabtastung durchzuführenϵ01

2logN3+4ϵ214ϵ2

Würfel rollen in Erwartung - du solltest dich wahrscheinlich daran halten.


  1. Da die Kette in absorbiert, werden die grau unterlegten Kanten niemals durchlaufen und beeinflussen die Berechnungen nicht. Ich füge sie nur der Vollständigkeit halber und zur Veranschaulichung hinzu.(11)
  2. Implementierung in Mathematica 10 ( Notebook , Bare Source ); Entschuldigung, es ist das, was ich für diese Art von Problemen weiß.

1

Nur eine kurze Bemerkung zum Fall . Nimm eine große Anzahl und probiere Würfe des Würfels. Wenn Sie Köpfe haben, können Sie Bits extrahieren . Unter der Annahme , die Form wird vorgespannt ist , ist die durchschnittliche Menge von Informationen Um diese Schätzung zu erhalten, verwenden Sie die Tatsache, dass die Binomialvariable zusammen mit der Schätzung um konzentriert ist . Wenn größer wird, erhalten wir die optimale Rate vonN=2mmklog(mk)p

k=0mpk(1p)mk(mk)log(mk)mh(p).
k=pmlog(mk)mh(k/m)mh(p) pro Münzwurf (dies ist aus informationstheoretischen Gründen optimal, zum Beispiel der asymptotischen Äquipartitionseigenschaft).

Sie können dieselbe Methode für allgemeines , und Sie werden wahrscheinlich dasselbe . Diese Algorithmen sind nur im Grenzbereich optimal, und es kann Algorithmen geben, die den Grenzbereich schneller erreichen als diese. Tatsächlich habe ich es versäumt, die Geschwindigkeit der Konvergenz zu berechnen - es könnte eine interessante Übung sein.NH(p)


1

Ich würde die folgende Antwort riskieren.

Der spezielle Fall von 2, den Sie oben erwähnt haben, ist der spezielle Fall der Erweiterung (wobei prob von Kopf und prob von Schwanz ist), der Ihnen einen Term Dies bedeutet, dass Sie für einen Fall und erhalten können für den anderen fall. Sie müssen die Abtastung wiederholen, bis entweder oder (Kopf-Schwanz oder Schwanz-Kopf) angezeigt wird. Wenn Sie diese als Simulation verwenden, geben Sie die gleiche Wahrscheinlichkeit an.(p+q)2pq2pqpqqppqqp

Wenn , haben Sie die Erweiterung die Ihnen den Term . In diesem Fall tun Sie dasselbe, indem Sie in drei aufeinanderfolgenden Versuchen alle drei Ergebnisse , , in einer bestimmten Reihenfolge abtasten .N=3(p+q+r)3pqrqpr

Gleiches gilt für den allgemeinen Fall. Wenn ich sorgfältig überlege, muss ich sagen, dass der Fall 2 der beste Fall ist, in dem man die Dinge in der Erweiterung herausarbeiten kann. Wenn gibt es 6 verschiedene Sequenzen für und es gibt viele andere Terme in der Erweiterung. Ich würde mich mit anderen Begriffen, bei denen es viel mehr Ergebnisse gibt, ziemlich unwohl fühlen.N=3pqr

.

Extra:

Dies bringt mich dazu, über die Idee nachzudenken, einfach eine Menge abzutasten, um die Wahrscheinlichkeit jedes Würfelergebnisses abzuschätzen. In diesem einfachsten Fall eines Ein-Schicht-Modells ohne versteckte Schicht (ein bekanntes Modell) können wir eine Grenze ausarbeiten, um zu folgern, dass die Schätzung schnell konvergiert. Tatsächlich zeigt uns die Chernoff-Grenze, dass der Fehler exponentiell abnimmt, wenn die Abtastung (linear) zunimmt.

Nun, da eine gute Schätzung der Wahrscheinlichkeiten für jede Seite der Würfel bekannt ist, gibt es viele Optionen. Eine Möglichkeit besteht darin, dass wir die obige Erweiterung erneut durchführen können, aber dieses Mal können wir möglicherweise viele andere Begriffe in der Erweiterung verwenden, die denselben Wert haben wie (oder ein beliebiger Begriff, der diesen Wert hat) Sie verwenden als basierte Sequenz). Dies wird ein bisschen effizienter sein, da mehr Begriffe in der Erweiterung verwendet werden. Aber ich gebe zu, ich weiß nicht, ob dies die geringste Anzahl von Anrufen beim Orakel zur Folge hat, um eine Garantie für die jeweiligen Voraussetzungen (z. B. Vertrauensparameter) zu erhalten, sofern diese gegeben sind.i=1i=npi

Trotzdem ist dieser Ansatz eine Antwort auf verschiedene Aspekte der Frage. Die Frage stellt die Frage nach einer garantierten vollkommenen Unparteilichkeit auf Kosten einer potenziell großen Stichprobe (obwohl die Wahrscheinlichkeit gering ist). Bei diesem Ansatz wird nur die endliche Stichprobe mit dem Parameter "An das Vertrauen gebunden" verwendet. Daher halte ich diesen Ansatz nicht für angemessen, obwohl er sehr interessant ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.