Was ist der beste Weg, um aus identischen voreingenommenen Münzen einen fairen Münzwurf zu erzielen?


21

(Von Neumann gab einen Algorithmus an, der eine faire Münze simuliert, wenn der Zugang zu identischen voreingenommenen Münzen gegeben ist. Der Algorithmus erfordert möglicherweise eine unendliche Anzahl von Münzen (obwohl erwartungsgemäß endlich viele ausreichen). Diese Frage betrifft den Fall, wenn die Anzahl der erlaubten Münzwürfe beträgt begrenzt.)

Angenommen, wir haben identische Münzen mit Bias . Ziel ist es, einen einzelnen Münzwurf zu simulieren und gleichzeitig die Verzerrung zu minimieren.nδ=P[Head]P[Tail]

Die Simulation muss in folgendem Sinne effizient sein: Ein Algorithmus, der in polynomialer Zeit abläuft, betrachtet zufällige Bits und gibt ein einzelnes Bit aus. Die Vorspannung des Algorithmus ist definiert alswobei die Erwartung die durch iid Bits definierte Verteilung übernimmt so dass .B i a s ( A ) = | E [ A = 0 ] - E [ A = 1 ] | n x 1 , ... , x n P R o b [ x i = 1 ] - P R o b [ x i = 0 ] = δnBias(A)=|E[A=0]E[A=1]|nx1,,xnProb[xi=1]Prob[xi=0]=δ

Welcher Algorithmus , der in Polynomzeit läuft, hat die geringste Vorspannung ?B i a s ( A )ABias(A)

Diese Frage erscheint mir sehr natürlich und es ist sehr wahrscheinlich, dass sie schon einmal in Betracht gezogen wurde.

Was ist über dieses Problem bekannt? Ist etwas bekannt, wenn eine schwächere Klasse (in usw.) von Algorithmen berücksichtigt wird?AC0

Antworten:


15

Das Werfen von n voreingenommenen Münzen und das Nehmen der Parität von Köpfen nähert sich exponentiell .12

[Betrachten Sie als Beweis eine Zufallsvariable, die -1 ist, wenn Heads und 1, wenn Tails, dann ist die Wahrscheinlichkeit, dass es eine ungerade Anzahl von Heads gibt, nur das ]E[12+12iXi]=12+12δn

Vielleicht ist dies auch aus folgendem Grund optimal. Sei eine beliebige Zusammensetzungsfunktion dieser Bits. Dann das und das beste die Paritätsfunktion zu sein (nicht wahr?).Bias ( f ) = Σ S f ( S ) & dgr; | S | ffBias(f)=Sf^(S)δ|S|f

Wenn Sie sich für Kompositionsfunktionen mit geringerer Komplexität interessieren, ist möglicherweise ein Artikel von Ryan O'Donnell über die Härtemessung im NP von großer Relevanz. Dort nutzt er monotone Kompositionsfunktionen zur Härteverstärkung und die Funktionen, die funktionieren, zeichnen sich durch ihre Geräuschempfindlichkeit aus.


Könnten Sie bitte erläutern, warum Parität die beste Funktion sein sollte? (Auch nicht, dass es asymptotisch wichtig ist, aber sollte das nicht in der Fourier-Expansion sein, da ?). Danke für den Hinweis auf das Papier! E [ x i ] = δdelta|S|E[xi]=δ
Hrushikesh

Oh, tut mir leid, du hast recht. Der Ausdruck war falsch und wurde jetzt korrigiert. Ich habe keinen Beweis für die Optimalität (vielleicht ist es nicht optimal), aber der Grund, den ich vermutete, war, dass es wahr wäre, wenn der Ausdruck stattdessen da dies dann eine konvexe Kombination ist. Sf^(S)2δ|S|
Ramprasad

Vielleicht könnte dies etwas Licht ins Dunkel bringen. Nach Cauchy-Schwarz wissen wir, dass . Eine Möglichkeit zur Optimierung wäre, die Obergrenze so weit wie möglich zu minimieren. Dies geschieht, wenn die Funktion die Paritätsfunktion ist und in diesem Fall die Menge, an der wir interessiert sind, auch mit der Obergrenze übereinstimmt. Es kann jedoch sein, dass der Vektor der Fourier-Koeffizienten vollständig orthogonal zum -Vektor ist, in welchem ​​Fall die LHS gerade Null ist! Gibt es spezielle Werte von für die wir solche Beispiele kennen? fδδSf^(S)S:f^(S)0δ2|S|fδδ
Ramprasad

Tatsächlich ist, wenn man eine nicht-triviale monotone Funktion annehmen würde , bei die Erwartung, dass ist, 0 und bei es . Daher muss es für ein Zwischenprodukt den Wert annehmen . Es ist daher nicht fair zu erwarten, dass die Paritätsfunktion für jedes optimal ist. δ = - 1 f ( x 1 , , x n ) = 1 δ = 1 1 δ 1fδ=1f(x1,,xn)=1δ=11δ δ12δ
Ramprasad,

Können Sie den letzten Kommentar näher erläutern? Ungeachtet der Komplexität von f ist Ihre Schlussfolgerung nicht nur wahr, wenn für ein da die Parität von nach ist ? & dgr; 1E[f]=1/2δ121/nδδn
Hrushikesh

12

Sie sagen nicht, ob die Tendenz bekannt oder unbekannt ist. Die Magie von Neumanns Algorithmus ist, dass er in beiden Fällen funktioniert.

Angenommen, es ist bekannt. Die beste Antwort hängt dann entscheidend von den zahlentheoretischen Merkmalen des Bias ab. Nehmen wir p = 2/3. Wirf die Münze zweimal und ordne HH 0 und TH und HT 1 zu. Wiederhole das Experiment, wenn das Ergebnis TT ist. Dann sind 0 und 1 gleich wahrscheinlich und die Wahrscheinlichkeit einer Wiederholung beträgt bei von Neumanns Algorithmus nur 1/9 statt 5/9. Oder, um es in Ihren Begriffen auszudrücken, Sie verzerren eines der Ergebnisse nur um 1/9, wenn Ihr Iterationslimit 2 beträgt.

Dies alles hängt eng mit der Informationstheorie und der Codierungstheorie zusammen. Wenn p ein Bruchteil mit einem komplizierteren Zähler und Nenner ist, erfordert der beste Algorithmus eine längere Blocklänge als 2. Sie können ein Existenzargument nach Shannon-Art verwenden, um zu zeigen, dass es für eine gegebene Verzerrung eine Prozedur gibt, die so optimal wie ist Sie möchten, aber die Blocklänge kann sehr groß werden.

Peres in seiner Arbeit Iterating Von Neumanns Procedure for Extracting Random Bits beweist, dass eine Version von Neumanns Algorithmus willkürlich gut an die Shannon-Grenze heranreichen kann. Ein Großteil der Arbeit in diesem Bereich scheint von Informationstheoretikern und Statistikern geleistet worden zu sein, daher kann ich mir keine Arbeit mit einer komplexitätstheoretischen Ausrichtung vorstellen, die Ihnen eine direkte Antwort auf Ihre Frage geben würde.

Es gibt ein mit Spaß verbundenes Problem, das das Gegenteil fragt: Wenn Sie eine Quelle für faire Bits haben, wie können Sie effizient eine gleichmäßige Verteilung über eine Nicht-Zweierpotenz-Menge erzeugen? Die iterationsbegrenzte Version des Problems, die Ihrer Frage ähnelt, fordert Sie auf, die Entropie mit n Würfen einer fairen Münze zu maximieren (dh die Verteilung so gleichmäßig wie möglich zu gestalten).


1
Mir ist der Gedanke gekommen, dass die Optimierung der Laufzeit ohne Verzerrung (was das Papier leistet) Lagrange Dual ist, um die Verzerrung je nach Laufzeit zu optimieren. Ich denke also, dass das Papier Ihre Frage tatsächlich beantwortet!
Per Vognsen

5

Ich ziehe es vor, an die Frage in der folgenden verallgemeinerten Form zu denken: Wir haben einen vollständigen binären Baum der Höhe n, wobei jedem Knoten eine Zahl zugeordnet ist. Die Summe der Zahlen ist 1. Können wir die Blätter in zwei Mengen der Summen von teilen? Zahlen sind sie nah?

Wenn wir die Münze mit dem Parameter und q = 1 - p voreingenommen haben , haben die Knoten die Werte p i q n - i .pq=1ppiqni

Wie in anderen Antworten angemerkt, ist es für die meisten Piratenzwecke gut, die Parität der Bits zu nehmen. Die Abweichung ist .i(ni)parity(x)piqni=i(ni)(p)iqni=(qp)n

Wenn wir über genügend Rechenressourcen verfügen (z. B. in Anzahl der Zufallsbits), können wir die Knoten im Allgemeinen partitionieren.PSpace

BEARBEITEN "Dies ist im Grunde das Shannon-Codierungsproblem." (Dank an Per Vognsen.) ENDE DER BEARBEITUNG

Wenn wir dagegen nur , ist es nicht schwer zu zeigen, dass wir aufgrund des Lemmawechsels nicht viel erreichen können. Die Schaltung wird von einem CNF exponentiell gut angenähert, und es ist nicht schwer zu zeigen, dass ein CNF keine Antwort mit einer guten Vorspannung berechnen kann.AC0

(Diese Antwort kann Fehler enthalten, ich habe die Details nicht überprüft.)


2
"Können wir die Blätter in zwei Sätze aufteilen, wenn die Summe der Zahlen nahe beieinander liegt?" Dies ist im Grunde das Shannon-Codierungsproblem. Der Shannon-Fano-Algorithmus ist top-down und beginnt mit einer Reihe von wahrscheinlichkeitsgewichteten Elementen und fordert eine möglichst gleichmäßige Zweiteilung an. Wenn Sie dies rekursiv anwenden, erhalten Sie einen integralen Code ohne Präfix. Der Huffman-Algorithmus ist Bottom-up: Er beginnt mit Singleton-Bäumen und führt Paare mit größter Wahrscheinlichkeit wiederholt zusammen. Wenn Sie sich mit arithmetischer Codierung auskennen, empfiehlt es sich zu Recht, mehrere faire Bits gleichzeitig und nicht einzeln zu generieren.
Per Vognsen

4

Sie können auch viele zufällige Bits aus voreingenommenen Münzen ziehen. Weitere Informationen finden Sie in Gabizons Artikel Derandomisierungsalgorithmen unter Produktverteilungen (http://sites.google.com/site/arielgabizon1/).



1

Wenn Sie möchten, dass eine gerade Anzahl von Münzwürfen unabhängig von einer voreingenommenen Münze ist, können Sie die Voreingenommenheit auf einfache Weise beseitigen, indem Sie das Ergebnis jedes anderen Wurfs umkehren.


1
Dies führt natürlich nicht zu einer gleichmäßig zufälligen Reihenfolge. Stellen Sie sich den Grenzfall vor, wenn die Vorspannung der Münze auf 1 steigt - Sie erhalten nur eine deterministische alternierende Folge von Bits.
Aaron Roth

Bei jeder Strategie, die die Ergebnisse bijektiv neu abbildet, bleibt die Entropie erhalten, sodass die Verteilung nicht von nicht maximaler Entropie (voreingenommen) zu maximaler Entropie (unvoreingenommen) geändert werden kann.
Per Vognsen
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.