Explication intuitive qui ne repose pas sur la formule du problème de Monty Hall et simulation avec Python

Le problème de Monty Hall est un problème bien connu en tant que paradoxe de probabilité. Dans cet article, je vais vous donner une explication intuitive qui ne repose pas sur les formules les plus convaincantes que j'ai proposées.

Problème de Monty Hall

[Wikipédia](https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%B3%E3%83%86%E3%82%A3%E3%83%BB%E3%83 Extrait de% 9B% E3% 83% BC% E3% 83% AB% E5% 95% 8F% E9% A1% 8C)

Il y a trois portes fermées devant le joueur, derrière une porte se trouve une nouvelle voiture de prix, et derrière les deux portes se trouve une chèvre, ce qui veut dire éteint. Les joueurs peuvent obtenir une nouvelle voiture en frappant la porte de la nouvelle voiture. Une fois que le joueur a sélectionné une porte, le modérateur Monty ouvre la porte restante avec la chèvre et montre la chèvre. Le joueur est maintenant informé qu'il peut remplacer la première porte qu'il choisit par la porte restante non ouverte. Le joueur devrait-il changer la porte ici?

Réponse "Les joueurs devraient changer la porte car s'ils ne changent pas, la chance de frapper est $ \ frac {1} {3} $, tandis que s'ils la changent, la chance de frapper est $ \ frac {2} {3 } $. "

Commentaire

Lorsque le joueur choisit une porte pour la première fois, la probabilité de gagner une porte doit être de $ \ frac {1} {3} $. Pourquoi cela change-t-il après que le modérateur en montre un à l'extérieur?

Pour comprendre cela, considérez le problème suivant, qui est similaire au problème de Monty Hall.

  1. Le joueur sélectionne une porte
  2. Le joueur est invité à choisir entre la "porte sélectionnée" et les "deux portes restantes".

Dans ce cas, chacun choisirait ces dernières "deux portes restantes". En effet, la probabilité de toucher le premier est $ \ frac {1} {3} $, tandis que le second est $ \ frac {2} {3} $.

La différence décisive entre ce problème et le problème de Monty Hall est la présence ou l'absence de l'acte de «montrer l'une des portes non sélectionnées qui est à l'écart». Dans le problème de Monty Hall, cette action établit l'une des «deux portes restantes» avec une probabilité de coup nul. Pour organiser cela,

D'après ce qui précède, la probabilité que la dernière porte non sélectionnée restante soit un succès est $ \ frac {2} {3} $.

Erreur commune

Les chances de frapper n'importe quelle porte devraient être les mêmes. Par conséquent, si une porte est confirmée, la probabilité que les deux portes restantes gagnent est de $ \ frac {1} {2} $, respectivement.

Cette idée est correcte pour les problèmes suivants.

  1. Le joueur sélectionne une porte
  2. Le modérateur montre aléatoirement l'une des trois portes (y compris celle choisie par le joueur).
  3. Le joueur sélectionne l'une des deux portes restantes

La différence décisive entre ce problème et celui de Monty Hall est ** "si le modérateur peut montrer la porte que le joueur choisit" **. Le problème de Monty Hall ne permet pas ce qui précède. Cette différence n'a pas d'importance si la porte sélectionnée par le joueur est un succès, mais si c'est raté, cela a un grand impact. Si la porte choisie par le joueur est sortie, le problème de Monty Hall révèle toujours l'autre porte extérieure. D'autre part, dans le problème ci-dessus, quel extérieur est choisi est complètement aléatoire, et aucun indice n'est donné pour frapper la porte gagnante.

Ce qui précède est une explication intuitive, mais je pense qu'il est compréhensible que la probabilité de frapper ne soit pas $ \ frac {1} {2} $ pour le moment.

Simulation par Python

Voici un exemple de simulation utilisant Python. Nous avons joué au jeu 10 000 fois et calculé les taux de gain lorsque la porte a été changée et quand elle n'a pas été changée.

import random
random.seed(1)
doors = ["Frappé", "Chèvre", "Chèvre"]
stay_wins, change_wins = 0, 0

#Répétez suffisamment d'essais
loop = 10000
for _ in range(loop):
    #Choisissez d'abord la porte
    choose = random.choice(doors)
    #Gagne pour le gagnant avec ou sans changement de porte+1
    if choose == "Frappé":
        stay_wins += 1
    else:
        change_wins += 1

print("---Taux de réussite---")
print(f"Si vous ne changez pas la porte: {stay_wins / loop}")
print(f"Lors du changement de porte: {change_wins / loop}")

Résultat de sortie


---Taux de réussite---
Si vous ne changez pas la porte: 0.3323
Lors du changement de porte: 0.6677

finalement

C'est le premier message de Qiita. Tous les commentaires sont les bienvenus! !!

Recommended Posts

Explication intuitive qui ne repose pas sur la formule du problème de Monty Hall et simulation avec Python
Écrivons un programme de simulation simple pour le "problème de Monty Hall"
Solution de contournement pour sys.argv non transmise lors de l'exécution d'un script Python avec uniquement le nom de fichier sur Python2.7 sous Windows
À propos du problème que la version python de Google App Engine ne maille pas
Une histoire dont j'ai été très convaincu lorsque j'ai écrit le code du problème Monty Hall et calculé le taux de gain
Solution de contournement pour Flask-Mail n'envoyant pas de courrier japonais UTF-8 (Python3)
[systemd] Comment faire face au problème que fancontrol ne fonctionne pas après la suspension
Entrée clé qui n'attend pas l'entrée clé en Python
LiNGAM (version ICA) à comprendre avec des formules mathématiques et Python
Informations pour contrôler les moteurs avec Python sur RaspberryPi
Comment résoudre le problème selon lequel APL ne démarre pas après le transfert vers l'appareil réel sur Kivy-iOS
Comprendre les probabilités et les statistiques qui peuvent être utilisées pour la gestion des progrès avec un programme python
Résolvez le problème de Monty Hall
Résolvez le problème du sac à dos Python avec la méthode de branche et liée