Why doesn't the solution to the Monty Hall problem make sense?

  • Thread starter r0bHadz
  • Start date

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
Let's work this another way.

You choose a door, Monty opens another door (big surprise no car) and offers you the chance to change doors.

If the door you are offered has a 50% chance of having the car behind it, then the door you selected must also have a 50% chance of having the car behind it. The sum of probabilities is after all 100%.

If, as supposed by so many, the door you selected has a 1/3 (33.33%) chance of having the door behind it then the sum of probabilities is 83.33%. If you believe the door that was opened also had a 1/3 (33.33%) chance of having the car behind it, then the sum of probabilities is 116.66% which is also problematic.
This is one of those things where it really isn't a matter of opinion. There is a correct answer and an incorrect answer, and yours is incorrect. One way to demonstrate that it's incorrect instead of using mathematics is to actually play the game a bunch of times, and see how often you win with the strategy of always switch.
 
You are saying play the game, and not arguing about the probability matrix. Seems like a weak position.

So the whole probabilities add to 100% thing is bunk . . .
 

StoneTemplePython

Science Advisor
Gold Member
1,069
508
That is the reason for my second post. If the door I am offered after one has already been opened has a 50/50 chance of having the car, then what is the sum of probabilities? Are you saying that the sum of probabilities doesn't have to be 100%?

When you say that Monty opens one door you and shows it to be empty, you are ignoring the fact that if you chose the correct door then he has two options and not just one.
You are saying play the game, and not arguing about the probability matrix.
Do you know what a Markov Chain is? I originally thought it was overkill, but I can show the correct result pretty easily with an (absorbing state) markov chain, including a nice little state diagram picture of what's going on. Note: the correct result contradicts your solution.

On the other hand, if you don't know what a Markov Chain is, that's ok -- but it's a sign that you shouldn't be arguing with people who do understand basic probability concepts.
 

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
You are saying play the game, and not arguing about the probability matrix. Seems like a weak position.
I'm just asking you: Do you think that you will win half the time with the strategy of always keeping your first choice?

So the whole probabilities add to 100% thing is bunk . . .
Your analysis is bunk, yes. You are making the assumption that because there are 12 possibilities, that all 12 have to be equally likely. That is what's bunk.

The correct analysis is that there are 9 possibilities for the situation (x,y) where x is the location of the car (behind doors 1, 2, or 3) and y is the door you pick.
All 9 possibilities are equally likely (if everybody plays randomly). They are:
  1. (1,1)
  2. (1,2)
  3. (1,3)
  4. (2,1)
  5. (2,2)
  6. (2,3)
  7. (3,1)
  8. (3,2)
  9. (3,3)
The strategy of always switching wins in cases 2, 3, 4, 6, 7, 8. It loses in cases 1, 5, 9. That's the correct analysis.

Now, all of those possibilities have probability 1/9. Now, let's take possibility 1. It has two subcases:
1A: Monty opens door 2.
1B: Monty opens door 3.

The probabilities for those two subcases have to add up to the probability for case 1. They are equally likely. So we have:
P(1A) = P(1B) = 1/2 P(1)

Similarly, there are two subcases for 5 and 9.

So the complete probability matrix looks like this:

##\left( \begin{array} \\ choice & car & open & probability \\ 1 & 1 & 2 & \frac{1}{18} \\ 1 & 1 & 3 & \frac{1}{18} \\ 1 & 2 & 3 & \frac{1}{9} \\ 1 & 3 & 2 & \frac{1}{9}
\\ 2 & 1 & 3 & \frac{1}{9} \\ 2 & 2 & 1 & \frac{1}{18} \\ 2 & 2 & 3 & \frac{1}{18} \\ 2 & 3 & 1 & \frac{1}{9} \\ 3 & 1 & 2 & \frac{1}{9} \\ 3 & 2 & 1 & \frac{1}{9}
\\ 3 & 3 & 1 & \frac{1}{18} \\ 3 & 3 & 2 & \frac{1}{18} \end{array} \right)##

I think that all the probabilities add up to 1.
 
So if the door I am offered has a 50% chance of having the car and the door I originally selected has a 33.3% chance of having the car you are OK with that?
Please tell me how the probability of winning does not add to 100%. Also show your chain, because unless the fundamentals of probability have changed, then the probability of all outcomes adds to 100%.

Pay attention to the information available as the game progresses. There may be a 1/3 chance of selecting the right door at the beginning of the game, but if one door is opened and two remain then the odds of the car being behind either remaining door are equal. Your argument that the chance of the remaining door hiding the car is 2/3 ignores that one door has been eliminated. If I chose the correct door then Monty has two doors to chose from. If I chose the wrong door then he has no choice.

I wrote a program to "play the game". (Actually I put it into an Excel spreadsheet since it makes it easy to plot as well.)

Assign a random number (1, 2, 3) to selection
Assign a random number (1, 2, 3) to car
Determine door to open (if selection = 1 and car = 1 then randomly assign 2 or 3, etc.)
If stay and selection = car then "win" else "loose"

10,000 iterations = 50.07% win
50,000 iteration = 49.73% win
 

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
So if the door I am offered has a 50% chance of having the car and the door I originally selected has a 33.3% chance of having the car you are OK with that?
No, the chance of the remaining door having the car is 66.66%.
 

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
Pay attention to the information available as the game progresses. There may be a 1/3 chance of selecting the right door at the beginning of the game
So, if you follow the strategy of "never switch", then it doesn't matter which door Monty opens. You're keeping your original choice. So whatever Monty does is irrelevant. Right? How could it be relevant if you never take him up on his offer to switch?

So how did your 1/3 chance turn into a 50% chance? How can Monty doing irrelevant things affect your probability of guessing the right door the first time?
 
So the door I selected has a 1/3 chance of being correct, so did the door that was open and the door that remains.
Monty opens one door and my door still has the original 1/3 chance of being correct, but the other door has a 2/3 chance of being correct. That's one special door.

If my chance remains 1/3 and can't go to 50%, then how come Monty's offer goes from 1/3 to 2/3? Information theory has a problem here.

At the end of the game there are two doors. Monty eliminated one.

Feel free to write your own code. I can send the spreadsheet if you like.
 

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
So the door I selected has a 1/3 chance of being correct, so did the door that was open and the door that remains.
Monty opens one door and my door still has the original 1/3 chance of being correct, but the other door has a 2/3 chance of being correct. That's one special door.
Yes, it's special because Monty knows where the car is. He NEVER opens the door with the car. That's important. If he randomly opened a door, not caring where the car was, and it just happened to be empty, than that would be different.

Suppose you always pick door number 1. Why not? They're all the same. Then you know that there is a 2/3 chance that you guessed wrong. That means that there is a 2/3 chance of one of the following happening:

1. The car is behind door number 3 and Monty opens door number 2.
2. The car is behind door number 2 and Monty opens door number 3.

Those are equally likely. So they have 1/3 chance each. So the probability that "Monty opens door number 2 and the car is behind door number 3" is 1/3. Right?

The way that probabilities adjust in light of new information is according to the following rule:

P(X | Y) = P(X and Y)/P(Y)

The probability of X given Y is the probability of X and Y divided by the probability of Y.

Let X be "the car is behind door number 3". Let Y be "Monty opens door number 2".

The probability of X and Y is 1/3, as we established above. What is the probability of Y?

If you always pick door number 1, then Monty will always either open door number 2 or door number 3. So there's a 50/50 chance that he will open either one. So the probability that Monty will open door number 2 is 50%. So P(Y) = 1/2

Now, using our formula:

P(X | Y) = P(X and Y)/P(Y) = (1/3)/(1/2) = 2/3.
 

stevendaryl

Staff Emeritus
Science Advisor
Insights Author
8,400
2,569
If my chance remains 1/3 and can't go to 50%, then how come Monty's offer goes from 1/3 to 2/3? Information theory has a problem here.
Do you agree that your chance can't possibly go to 50%? Suppose you always choose door number 1 (why not? they're all the same). And, since you think there is no reason to switch, let's suppose that you always keep door number 1. Then you think that half the time, you'll be right, that the car is behind door number 1?
 

FactChecker

Science Advisor
Gold Member
2018 Award
4,868
1,673
So the door I selected has a 1/3 chance of being correct, so did the door that was open and the door that remains.
Monty opens one door and my door still has the original 1/3 chance of being correct, but the other door has a 2/3 chance of being correct. That's one special door.

If my chance remains 1/3 and can't go to 50%, then how come Monty's offer goes from 1/3 to 2/3? Information theory has a problem here.

At the end of the game there are two doors. Monty eliminated one.

Feel free to write your own code. I can send the spreadsheet if you like.
Your probability calculations are wrong and your simulation is wrong. @stevendaryl has been asking a very basic question that I don't think you have directly answered: If you never switch, then everything Monte does is irrelevant, so how can you claim that your probability increases from 1/3 to 1/2?
 
663
294
You are saying play the game, and not arguing about the probability matrix. Seems like a weak position.
Trying it out, in a way that you recognize as a valid equivalent of the problem, is one way for you to overcome your initial resistance to recognizing the correct answer to be correct. Doing the probability analysis is easier for some people than for others. You can find many simulations from trustworthy sources by searching on "monty hall simulation" or similar terms.
So the whole probabilities add to 100% thing is bunk . . .
I estimate that there's at least a 2/3 chance that you're trying to be sarcastic here.
So if the door I am offered has a 50% chance of having the car and the door I originally selected has a 33.3% chance of having the car you are OK with that?
Please tell me how the probability of winning does not add to 100%. Also show your chain, because unless the fundamentals of probability have changed, then the probability of all outcomes adds to 100%.

Pay attention to the information available as the game progresses. There may be a 1/3 chance of selecting the right door at the beginning of the game, but if one door is opened and two remain then the odds of the car being behind either remaining door are equal. Your argument that the chance of the remaining door hiding the car is 2/3 ignores that one door has been eliminated. If I chose the correct door then Monty has two doors to chose from. If I chose the wrong door then he has no choice.

I wrote a program to "play the game". (Actually I put it into an Excel spreadsheet since it makes it easy to plot as well.)

Assign a random number (1, 2, 3) to selection
Assign a random number (1, 2, 3) to car
Determine door to open (if selection = 1 and car = 1 then randomly assign 2 or 3, etc.)
If stay and selection = car then "win" else "loose"

10,000 iterations = 50.07% win
50,000 iteration = 49.73% win
Unless you're playing the "Monty doesn't know where the car is" version of the game, and disregarding the cases in which Monty reveals the car, a correct simulation doesn't result in a 50% probability of winning regardless of whether the contestant switches.
No I don't agree, because Monty's choice isn't random, unless I chose the correct door.

If I choose the wrong door then Monty has no choice on which door to open and if I change I win. If I choose the correct door then he has a 50% chance of choosing either remaining door, but my changing results in a loss.
That matters only if the opening of the door, or something else, somehow discloses to the contestant whether Monty had 2 doors to choose from or only 1 door. The contrary of that is an operative assumption in the now-standard version of the game. In the now-standard version of the game, the doors not originally chosen have a 2/3 chance of having the car behind them, including after 1 of them has been opened.
Because ignoring Monty changes the situation entirely - it becomes a different game. My choice is random, Monty's isn't so you can't apply the normal rules of probability to him.
That's an insufficient representation to justify your 50-50 scenario.
I am still waiting for you to refute my "experimental" result. Run your own code.View attachment 238927
At n = 500,000 I get a win probability = 50.0148%
Any code that produces such a result is not correctly simulating the now-standard version of the game.
Respectfully you haven't written your own simulation code and neither has anyone else (at least not that they have admitted) I wrote mine three times in FORTRAN, C++ and VBA (4 times if you count Excel as separate from VBA).
Please post your code then. The output you posted is of no probative value without the code. Please post the program or Excel formula you used to generate the output.
Of course my PC has an Intel CPU, so maybe they never really fixed their problems from the days of the original Pentium CPU.
A Pentium CPU is an Intel CPU.
It's not simply a matter of choosing one door at random out of three. That's my point. It's choosing one door at random out of three and then eliminating one door from consideration in a non-random manner. Probability doesn't apply equally in all scenarios.
Again, that's an insufficient representation to justify your 50-50 scenario.

If this program is not imaginary or hypothetical, it's an incorrect simulation, and if you'll please show your code, I'll be glad to point out at least one error in it.

Here's a correct simulation (in Javascript, so you can copy it, paste it into an html file, and run it in your browser -- you can right-click, select Inspect, and see the results in the console) that simulates playing the game 10,000 times (you can change that number in the first line), copied from https://rosettacode.org/wiki/Monty_Hall_problem#Basic_Solution

That site has correct simulations for the now-standard version of the Monty Hall problem written in 80 different computer languages. There's no Excel version there at present, and you can presumably post yours there if you actually have one and you care to do so, but if it's incorrect, it will be corrected or removed.
JavaScript:
var totalGames = 10000,
    selectDoor = function () {
    return Math.floor(Math.random() * 3); // Choose a number from 0, 1 and 2.
    },
    games = (function () {
    var i = 0, games = [];
 
    for (; i < totalGames; ++i) {
        games.push(selectDoor()); // Pick a door which will hide the prize.
    }
 
    return games;
    }()),
    play = function (switchDoor) {
    var i = 0, j = games.length, winningDoor, randomGuess, totalTimesWon = 0;
 
    for (; i < j; ++i) {
        winningDoor = games[i];
        randomGuess = selectDoor();
        if ((randomGuess === winningDoor && !switchDoor) ||
        (randomGuess !== winningDoor && switchDoor))
        {
        /*
         * If I initially guessed the winning door and didn't switch,
         * or if I initially guessed a losing door but then switched,
         * I've won.
         *
         * I lose when I initially guess the winning door and then switch,
         * or initially guess a losing door and don't switch.
         */
 
        totalTimesWon++;
        }
    }
    return totalTimesWon;
    };
 
/*
* Start the simulation
*/
 
console.log("Playing " + totalGames + " games");
console.log("Wins when not switching door", play(false));
console.log("Wins when switching door", play(true));
Output:

Playing 10000 games
Wins when not switching door 3326
Wins when switching door 6630
If you read the code, you might notice that it doesn't actually simulate the part about Monty revealing what's behind 1 of the doors, that part being of no consequence to the probability distribution, and instead employs the expedient of simply counting wins on not switching and on switching, based on the 1/3 to 2/3 probability as returned by the random function.

Some might call that an illegitimate shortcut, but the simulations that graphically display the opening of one of the doors, or that correctly generate the individual probabilities of each of the possible outcomes and correctly sum them, will produce the same results.

The part of the code that checks for wins is:
Code:
if ((randomGuess === winningDoor && !switchDoor) ||
        (randomGuess !== winningDoor && switchDoor))
In ordinary English, that means: if, by 1/3 chance, the contestant's originally chosen door is the winning door, and he doesn't switch, or, by 2/3 chance, the contestant's originally chosen door is not the winning door, and he does switch, he wins.

The 2nd comment after that point in the code says that the contestant loses if he originally picked the wrong door and doesn't switch, or originally picked the correct door and does switch. I edited the 2nd condition into the comment, because it had incorrectly been excluded as a losing condition in the pre-edited version, which had expressly specified the first condition as the only losing condition. I didn't write any of that code. The code itself actually individually counts and reports only wins.

Here's a Fortran version, also from rosettacode:
https://rosettacode.org/wiki/Monty_Hall_problem#Fortran
This version bothers to include Monty deciding which door to open.
Fortran:
PROGRAM MONTYHALL
 
  IMPLICIT NONE
 
  INTEGER, PARAMETER :: trials = 10000
  INTEGER :: i, choice, prize, remaining, show, staycount = 0, switchcount = 0
  LOGICAL :: door(3)
  REAL :: rnum
 
  CALL RANDOM_SEED
  DO i = 1, trials
     door = .FALSE.
     CALL RANDOM_NUMBER(rnum)
     prize = INT(3*rnum) + 1
     door(prize) = .TRUE.              ! place car behind random door
 
     CALL RANDOM_NUMBER(rnum)
     choice = INT(3*rnum) + 1          ! choose a door
 
     DO
        CALL RANDOM_NUMBER(rnum)
        show = INT(3*rnum) + 1
        IF (show /= choice .AND. show /= prize) EXIT       ! Reveal a goat
     END DO
 
     SELECT CASE(choice+show)          ! Calculate remaining door index
       CASE(3)
          remaining = 3
       CASE(4)
          remaining = 2
       CASE(5)
          remaining = 1
     END SELECT
 
     IF (door(choice)) THEN           ! You win by staying with your original choice
        staycount = staycount + 1
     ELSE IF (door(remaining)) THEN   ! You win by switching to other door
        switchcount = switchcount + 1
     END IF
 
  END DO
 
  WRITE(*, "(A,F6.2,A)") "Chance of winning by not switching is", real(staycount)/trials*100, "%"
  WRITE(*, "(A,F6.2,A)") "Chance of winning by switching is", real(switchcount)/trials*100, "%"
 
END PROGRAM MONTYHALL
Sample Output

Chance of winning by not switching is 32.82%
Chance of winning by switching is 67.18%
The part of that code that emulates Monty choosing and opening a door is this:
Fortran:
DO
   CALL RANDOM_NUMBER(rnum)
   show = INT(3*rnum) + 1
   IF (show /= choice .AND. show /= prize) EXIT       ! Reveal a goat
END DO
You can see that the random function is called again for Monty's choice, and that the DO loop does an EXIT when the number produced by that function call is that of a non-prohibited door.

The following code example, also from rosettacode.org, and located at https://rosettacode.org/wiki/Monty_Hall_problem#ALGOL_68
is written in Algol 68, which, as the name of the language suggests, could run on computers from 1968, when Let's Make A Deal was in its 5th year on the air.

The program not only faithfully reflects Monty randomly making a legal choice between 2 doors if he has one, and selecting the only legal door to open if he doesn't, and opening the selected door; it also shows the result of a 3rd strategy for the contestant, other than always switch (2/3 wins) or never switch (1/3 wins): randomly choose whether to switch or not; that strategy results in 1/2(1/3) + 1/2(2/3) = 1/2 wins, which should surprise no-one, including those who already incorrectly suppose that there is no advantage or disadvantage to the other 2 strategies.
Code:
INT trials=100 000;
 
PROC brand = (INT n)INT: 1 + ENTIER (n * random);
 
PROC percent = (REAL x)STRING: fixed(100.0*x/trials,0,2)+"%";
 
main:
(
  INT prize, choice, show, not shown, new choice;
  INT stay winning:=0, change winning:=0, random winning:=0;
  INT doors = 3;
  [doors-1]INT other door;
 
  TO trials DO
     # put the prize somewhere #
     prize := brand(doors);
     # let the user choose a door #
     choice := brand(doors);
     # let us take a list of unchoosen doors #
     INT k := LWB other door;
     FOR j TO doors DO
        IF j/=choice THEN other door[k] := j; k+:=1 FI
     OD;
     # Monty opens one... #
     IF choice = prize THEN
     # staying the user will win... Monty opens a random port#
       show := other door[ brand(doors - 1) ];
       not shown := other door[ (show+1) MOD (doors - 1 ) + 1]
     ELSE # no random, Monty can open just one door... #
       IF other door[1] = prize THEN
           show := other door[2];
           not shown := other door[1]
       ELSE
           show := other door[1];
           not shown := other door[2]
       FI
     FI;
 
     # the user randomly choose one of the two closed doors
        (one is his/her previous choice, the second is the
        one not shown ) #
     other door[1] := choice;
     other door[2] := not shown;
     new choice := other door[ brand(doors - 1) ];
     # now let us count if it takes it or not #
     IF choice = prize THEN stay winning+:=1 FI;
     IF not shown = prize THEN change winning+:=1 FI;
     IF new choice = prize THEN random winning+:=1 FI
  OD;
 
  print(("Staying: ", percent(stay winning), new line ));
  print(("Changing: ", percent(change winning), new line ));
  print(("New random choice: ", percent(random winning), new line ))
)
Sample output:

Staying: 33.62%
Changing: 66.38%
New random choice: 50.17%
Even if you don't specifically know Algol, the code is straightforward enough and well-commented enough that you should be able to see well enough what it's doing.
 
Last edited:

FactChecker

Science Advisor
Gold Member
2018 Award
4,868
1,673
We know that Monte had the opportunity of opening the unpicked door that he did not open. There is a good chance that he did that because that door had the prize. The same can not be said of the door that you picked. He is not allowed to open your door. Therefore, we should not expect the probabilities of the two doors to remain equal. Your door's probability remains at 1/3 and the other door's probability increases to 2/3. It's as simple as that.
 

PeroK

Science Advisor
Homework Helper
Insights Author
Gold Member
2018 Award
9,402
3,431
So the door I selected has a 1/3 chance of being correct, so did the door that was open and the door that remains.
Monty opens one door and my door still has the original 1/3 chance of being correct, but the other door has a 2/3 chance of being correct. That's one special door.

If my chance remains 1/3 and can't go to 50%, then how come Monty's offer goes from 1/3 to 2/3? Information theory has a problem here.

At the end of the game there are two doors. Monty eliminated one.

Feel free to write your own code. I can send the spreadsheet if you like.
Eric, what about this? The car is randomly behind doors 1, 2 and 3 with equal probability. Your strategy is to pick door 1 and stick with door 1. You play the game 50000 times and you win 25000 times. So, the car was really behind door 1 50% of the time?

Meanwhile, another friend has a strategy to pick door 2 and stick with door 2. He/she also wins 50% of the time?

And, a third friend picks door 3 and sticks with door 3 and he/she also wins 50% of the time?

Or, to put it another way. Let's assume that the car is behind door 2. Only one of those three players can win. The one whose strategy is door #2. The other two players cannot possibly win. If the car is behind door #2 you cannot possibly win by picking door #1 and sticking with door #1. Similarly, if the car is behind door #3, you cannot possibly win by picking door #1 and sticking with door #1.

It's clear, therefore, that sticking with door #1 wins precisely 1/3 of games, as it must.

As others have said, your spreadsheet must have a mistake in it.
 
10,599
4,129
Since we've completely covered every possible aspect of this problem and the Donkey behind door #2 is getting mighty ornery, I think it's time to close this thread and thank everyone for their fine contributions.


For further information on the theory and practice of not being the donkey or deer who selects the human behind door #2, please refer to these articles:

https://www.realclearscience.com/articles/2013/06/14/how_to_avoid_the_goat_behind_door_2_106562.html

https://betterexplained.com/articles/understanding-the-monty-hall-problem/

https://en.wikipedia.org/wiki/Monty_Hall_problem

and remember even Paul Erdos had a problem with this before a computer simulation convinced him otherwise and that Monty Hall was the real winner in every case (https://en.wikipedia.org/wiki/Monty_Hall)

Cheers,
Jedi
 

Physics Forums Values

We Value Quality
• Topics based on mainstream science
• Proper English grammar and spelling
We Value Civility
• Positive and compassionate attitudes
• Patience while debating
We Value Productivity
• Disciplined to remain on-topic
• Recognition of own weaknesses
• Solo and co-op problem solving
Top