Trouver une pièce biaisée en utilisant quelques lancers de pièces

29

Le problème suivant est survenu lors de la recherche et il est étonnamment propre:

Vous avez une source de pièces. Chaque pièce a un biais, à savoir une probabilité qu'elle tombe sur la "tête". Pour chaque pièce indépendamment, il y a une probabilité 2/3 qu'elle ait un biais d'au moins 0,9, et avec le reste de la probabilité, son biais peut être n'importe quel nombre dans [0,1]. Vous ne connaissez pas les biais des pièces. Tout ce que vous pouvez faire à n'importe quelle étape est de lancer une pièce et d'observer le résultat.

Pour un n donné, votre tâche consiste à trouver une pièce avec un biais d'au moins 0,8 avec une probabilité d'au moins . Pouvez-vous faire cela en utilisant uniquement des lancers de pièces O (n)?1exp(n)

Dana Moshkovitz
la source
1
Cela me semble très improbable, car les lancers semblent être nécessaires juste pour déterminer si une pièce donnée est à biais élevé ou non avec confiance . (Nous pouvons aussi supposer que chaque pièce a un biais de ou .) Avez-vous quelque chose de mieux que des lancers ? 1 - exp ( - n ) 0,9 0,8 - ϵ O ( n 2 )O(n)1exp(n)0.90.8ϵO(n2)
usul
1
Je n'ai pas vérifié les calculs, mais l'idée suivante semble prometteuse: pour chaque pièce (successivement), faites le test suivant. Choisissez un paramètre , disons et effectuez une marche aléatoire sur la ligne à l'aide de la pièce. À chaque étape , si l'écart à partir de est inférieur à , jetez la pièce. Les pièces avec un biais de .9 devraient réussir ce test avec une probabilité constante, et les pièces défaillantes devraient échouer après O (1) pas dans l'attente, sauf pour les pièces avec un biais très proche de . Choisir au hasard entre et pour chaque pièce pourrait résoudre ce problème. 0,85 i 0 p i p p .84 0,86p0.85i0pipp.84.86
daniello
1
Would est d' accord? Connaissez-vous une solution avec des lancers o ( n 2 ) ? O(nlogn)o(n2)
Robin Kothari
4
Observation # 1: Si vous saviez que toutes les pièces ont un biais d'au moins 0,9 ou au plus 0,8, il aurait été possible de trouver une pièce avec un biais d'au moins 0,9 avec une probabilité 1-exp (-n) en utilisant des lancers O (n) : prendre une pièce, pour i = 1,2,3, ..., lancer la pièce 2 ^ i fois et vérifier si la fraction de têtes est d'au moins 0,89. Sinon, redémarrez avec une nouvelle pièce. Le lemme clé: si redémarrage à la phase i, il y avait alors moins de 2 ^ {i + 1} lancers de pièces, et le prob est au plus exp (- \ Omega (i)).
Dana Moshkovitz
1
Il est tout à fait possible que les flips O (nlogn) soient nécessaires et suffisants - mais nous n'avons pas encore de preuve pour cela.
Dana Moshkovitz

Réponses:

10

Ce qui suit est un algorithme de lancer O(nlogn) assez simple .

Supposons que 1exp(n) est la probabilité d'erreur que nous visons. Soit N une puissance de 2 comprise entre, disons, 100n et 200n (juste quelques temps constants assez grands n ). Nous maintenons un ensemble candidat de pièces de monnaie, C . Dans un premier temps , nous avons mis N pièces en C .

Maintenant, pour i=1,,logN , procédez comme suit:
Mélangez chaque pièce en C pour Di=2i1010 fois (juste une assez grande constante).
Gardez les pièces N/2i avec la plupart des têtes.

La preuve est basée sur quelques bornes de Chernoff. L'idée principale est que nous divisons par deux le nombre de candidats à chaque fois et que nous pouvons ainsi nous permettre de lancer deux fois plus de pièces.

Kasper Green Larsen
la source
2
(1) Ce serait bien d'écrire la preuve plus en détail - une grande partie de la difficulté de ce problème est de savoir où placer le seuil pour la borne Chernoff (combien de têtes prévoyez-vous voir avec les pièces de 0,9 biais?) . (2) Pouvez-vous montrer que des lancers de pièces nlogn sont nécessaires?
Dana Moshkovitz
3
La subtilité est la suivante: vous commencez avec n pièces, et sauf avec prob exp petit en n, il y a au moins 0,6n pièces de biais 0,9. Maintenant, il y a une probabilité constante que les pièces de 0,9 biais perdent la concurrence pour: 1 pièce avec un biais inférieur à 0,8 (peut tomber sur la tête tout le temps!), 2 pièces avec un biais de 0,8 + 1 / logn, ..., n / 10 pièces avec biais 0,9 - 1 / log n. Continuez de la même manière, où le biais des pièces choisies se dégrade à chaque itération, jusqu'à ce que vous ayez la pièce de biais <0,8.
Dana Moshkovitz
3
O(n)
2
Merci pour la référence! Je suis intéressé par le nombre maximum de lancers de pièces dont on a besoin, et dans ce cas, ils affichent une borne inférieure n ^ 2. Cependant, le problème qu'ils considèrent est différent du mien. Ils ont n pièces, il n'y en a peut-être qu'une qui est la plus biaisée, et ils veulent trouver une pièce avec un biais similaire. Dans ma configuration, je sais qu'il existe au moins 0,6 n de pièces avec un biais acceptable (sauf avec un prob exponentiellement petit en n).
Dana Moshkovitz
2
O(n)m=Θ(n)Θ()0.85m1exp(n)2/3i(1/2)ii=0m/2i=O(m)=O(n)