[Algorithmique] Ordinateur gagnant probabilit

asg63 -  
blux Messages postés 27127 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je voudrais savoir s'il existe un (ou plusieurs) algorithmes qui permettent d'étudier cette consigne :

Il y a 20 boules, divisées en 2 catégorie x et y, et 2 cases. Les boules doivent êtres reparties (pas obligatoirement équitablement) dans les cases. Alors une boule est piochée. Si elle est de catégorie x, c'est gagné. Au contraire, avec y c'est perdu.

Le but est de repartir les boules afin que le "piocheur" ait le plus de chance de tirer une boule de catégorie x, donc de gagner.

Le but est de faire faire à l'ordinateur une simulation, de trouver la meilleur solution possible.

J'espère que je me suis bien expliqué...

Merci, bonne journée !



A voir également:

4 réponses

blux Messages postés 27127 Date d'inscription   Statut Modérateur Dernière intervention   3 360
 
Salut,

pas tout compris, mais comme a priori, le piocheur a le choix entre l'une ou l'autre des deux cases, celles-ci ne comptent pas dans le calcul des probabilités...

Donc pour moi, il a x/y chances de ne pas perdre...
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
"20 boules, divisées en 2 catégorie x et y", ça veut dire 10 dans x, et 10 dans y ?
"une boule est piochée", où ? dans une des deux cases ? laquelle ?

Après oui, on peut faire un algo, mais ça se fait aussi à la main...
0
blux Messages postés 27127 Date d'inscription   Statut Modérateur Dernière intervention   3 360
 
C'est pour ça que je me disais que le problème est simple et se résume à 20 boules dans un sac, tant qu'on aura pas plus de renseignements...
Et qu'un algo pour tricher ne sert à rien, dans ce cas...
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Moi je vois, que si en case 1 il y a x1 boules "x" et y1 boules "y", (x2 et y2 en case 2)
La probabilité de gagner est de x1/(x1+y1) dans la première case et x2/(x2+y2) dans la deuxième, s'il y a une chance sur deux de choisir l'une des deux cases ça fait x1/(2(x1+y1))+x2/(2(x2+y2)) au total.

Algorithmiquement, il s'agit de faire deux boucles for pour déterminer les valeurs de x1 et y1 (x2=10-x1 et y2=10-y1), et calculer avec quelle combinaison la probabilité est maximale.

Sans faire le calcul je dirais que ça doit être quelque chose comme x1=1, y1=0, x2=9, y2=10, ça donnerait 100% de chance de gagner en case 1, et presque 50% dans la case 2, soit environ 75% de chances de gagner.
0
asg63
 
Merci ! C'est cela ! Mon but aurait été de tester un actuel algorithme...
0
asg63
 
Bonjour,

Merci pour vos rapides réponses...

En fait (ca fait un peu gamin) il y a 10 boules rouges et 10 boules bleues...

Ce n'est pas pour triche, c'est pour tester justement le fiabilité.
Je connais déja la réponse :

Il suffit de mettre 1 seule boule bleu (gagant si tirée) dans une case (1) et de mettre le reste dans la seconde case (2).

La probabilité de tirer une boule bleu dans la case (1) est de 100%.
La proba de tirer une boule bleu dans la case (2) est d'environ 24%
(1)=9 boules bleues + 10 boules rouges
(2)=1 boule bleue

Étant donné qu'on a 50/50 de tirer soit dans la case (1), soit dans la case (2), on arrive à 74% de chance de tirer une boule bleue et de gagner !

Humain, nous avons tendance à tous symétriser : pour la plupart, on aurait fait 50/50 en partageant équitablement le nombre de boules dans les deux cases :
(1)=(2)=5 boules bleues + 5 boules rouges
Or on aurait seulement 50% de chance !
0
blux Messages postés 27127 Date d'inscription   Statut Modérateur Dernière intervention   3 360
 
Bon ben, à la lumière des explications données, c'est bien ce que j'ai dit au départ : j'avais pas tout compris...
0