Monty Hall paradox (driedeurenprobleem)

Het driedeurenprobleem is een leuke brain teaser die gaat over een onlogisch klinkende kansberekening. Mensen zijn denk ik van nature niet goed in statistiek en abstract denken, waardoor dit een breinkraker kan zijn. Ik hoorde er 10 jaar geleden voor het eerst over en denk dat ik het nog steeds niet helemaal snap.

De stelling

Stel dat er een spelshow is waarin je als deelnemer kunt kiezen tussen drie deuren. Achter één willekeurige deur bevindt zich de hoofdprijs, achter de andere twee deuren niets.

Nadat je bijvoorbeeld deur drie gekozen hebt, elimineert de presentator van de spelshow één van de andere deuren waarachter de prijs zich niet bevindt. Laten we zeggen deur twee.

Deur één en drie zijn nu over. Je krijgt nu de mogelijkheid om bij je initiële keuze te blijven of te wisselen naar deur één. Is het verstandig om je keuze te wijzigen?

Je zou denken dat je 50/50 kans hebt of je nou wisselt of niet, er zijn immers maar twee deuren over. Het blijkt statistisch gezien echter dat de andere overgebleven deur een kans heeft van 2/3 op de hoofdprijs en je initiële keuze slechts 1/3. Het is dus verstandig om altijd te wisselen van deur.

Of je vindt dit super logisch en dan ben je misschien wel net zo geniaal als Marilyn vos Savant, of je bent misschien ‘mind blown’ zoals ik. Het blijft lastig te beredeneren waarom dit zo is, maar het is wel simpel te simuleren met een stukje Python-code:

import random


def open_a_door(contestant_switches_door):
    # Define 3 doors and put a prize behind one of them
    doors = [0, 0, 0]
    door_with_prize = random.randint(0, 2)
    doors[door_with_prize] = 1

    # Pick a door number as the contestant
    door_chosen = random.randint(0, 2)

    # Determine doors that can be eliminated by the host and randomly select one
    doors_in_play = [door_chosen, door_with_prize]
    doors_that_can_be_eliminated = [door_number 
                                    for door_number, door in enumerate(doors) 
                                    if door_number not in doors_in_play]
    door_eliminated = random.choice(doors_that_can_be_eliminated)

    # Door that the contestant can switch to
    non_switchable_doors = [door_eliminated, door_chosen]
    door_to_switch_to = [door_number 
                        for door_number, door in enumerate(doors) 
                        if door_number not in non_switchable_doors][0]

    # Return the result of the contestant choice when either switching doors or staying with the original choice
    return doors[door_to_switch_to] if contestant_switches_door else doors[door_chosen]

# Simulate a 1000 attempts where the contestant has switched doors which leads to 2/3 chance:
results = [open_a_door(contestant_switches_door=True) for i in range(1000)]
correct_attempts = sum(results)
print('Times picked right when switching door: ', correct_attempts)

# And the other way around it ofcourse means 1/3 chance of being right:
results = [open_a_door(contestant_switches_door=False) for i in range(1000)]
correct_attempts = sum(results)
print('Times picked right when staying with initial choice: ', correct_attempts)

Als je dit uitvoert in een Python interpreter (bijv. online door te zoeken naar ‘Python3 REPL’) dan zul je zien dat het resultaat ongeveer het volgende is bij 1000 iteraties:

Times picked right when switching door:  666
Times picked right when staying with initial choice:  337

De kans van je initiële keuze is dus inderdaad maar 1/3 ten opzichte van de overgebleven deur die een 2/3 kans heeft.

Wikipedia kan je beter uitleggen waarom dit precies zo is. De sleutel is dat je initiële keuze is gemaakt met 1/3 kans en dat daarna de presentator een deur elimineert die geen prijs bevat wat je kans vergroot om nogmaals beter te kiezen.

Dus het klopt, maar voor mij voelt het nog steeds niet helemaal logisch. Ik heb het maar geaccepteerd als zijnde een feit, en jij?

Update: naar aanleiding van opmerkingen op tweakers.net heb ik 2 manieren van uitleggen bijgevoegd

Uitleg 1

Er zijn eigenlijk 3 startsituaties:

Situatie#1: 33% kans dat je goed kiest

Situatie#2: 33% kans dat je fout kiest

Situatie#3: 33% kans dat je fout kiest

In zowel situatie #2 en #3 zal de presentator de enige andere foute deur elimineren. Dus als je dan wisselt dan kies je goed. Alleen in situatie #1 zal het wisselen van deur verkeerd uitpakken.

Dus eigenlijk zijn er 2/3 meer situaties waarin je zult winnen bij het wisselen. Volgens mij legt Wikipedia het ook zo uit, maar dat landde nog niet direct. Nu klinkt het ineens heel logisch voor mij. Los van de voorbeelden die zijn genoemd met meerdere deuren.

Uitleg 2

Je kunt het voor jezelf logischer maken door het aantal deuren te vergroten: in plaats van drie, zijn er tien. Je kiest een deur en dus blijven er negen over. Van die negen, opent Monty er acht en laat zien dat er niets achter zit. Wat denk je, ga je wisselen?