Este es un famoso problema estadístico que la gente ha discutido mucho debido a lo pico lógico que parece, así que echaré mano al asunto para demostrar su punto y veracidad haciendo uso de python
El problema va así
En un programa de televisión te hacen escoger entre 3 puertas, en una hay un carro deportivo y en 2 hay cabras, escoges una puerta, el presentador abre otra puerta mostrandote una de las cabras, el te pregunta "deseas cambiar tu puerta?".... aquí viene el problema...
Mucha gente dice "nah da igual cambiar puerta, el chance en este punto es 50/50", sin embargo la estadística dice algo diferente... dice que "originalmente tenias 1/3 de probabilidad de ganar, y ahora sigues solo con 1/3 , si cambias la puerta tienes 2/3 debido que la probabilidad de victoria colapsó en la otra puerta"...
aquí entra la lógica y dice "eso no tiene sentido... son 2 puertas así que debe ser 50/50...
Ahora quien está en lo correcto? Por su puesto que la estadística., si cambias tienes el doble de chance de ganar
Por qué? Imaginemos 3 universos donde escoges cada puerta diferente... en todos seguimos el mismo procedimiento, te muestran la cabra, decides no cambiar.... entonces en dos pierdes (los que no escogiste el carro) y uno ganas.... pero si decidimos cambiar, en dos ganas(los que no escogiste el carro) y uno pierdes...
Si schrodinger hubiera conocido esto seguro lo hubiera escogido, en lugar de un gato hipotético... cuando la realidad colapsa, al igual que la física cuántica, quedas en uno de 3 universos probables...
Muchos aún dirán... "si ya pasamos el hecho de la puerta abierta y nos fijamos en el ahora, sigue siendo 50/50", pero el problema es que era una ecuación donde se agregó informacion, así que el pasado es importante...
Si aun no me creen y consideran que es ilógico y sin sentido, me remito al ejemplo.... hice un programa de python que 'juega' a esto sin hacer trampa y muestra como la realidad se define más allá de lo simplemente lógico
from random import randint #yeap vamos a generar int random
def colocarPremio():
puertas = [0,0,0] #establecemos 3 puertas
puertas[randint(0,2)] = 1 #colocamos premio en una
return puertas
def seleccionJugador():
return randint(0,2) #el jugador escoge una puerta
def mostrarPuerta(jugador, puertas):
presentador = 0 #el presentador entra y saluda a todos
for i in range(3):
if puertas[i] == 0 and not i == jugador: #el presentador escoge una puerta que no sea la del jugador y no tenga premio
presentador = i #y se queda con esa puerta
break #porque no tiene que seguir buscando
return presentador
def cambiarPuerta(presentador, jugador):
for i in range(3):
if not i == presentador and not i == jugador: #el jugador escoge la otra puerta cerrada
jugador = i #y se queda con esa
break #porque no tiene que seguir buscando
return jugador
def juego(cambiar):
puertas = colocarPremio() #ponemos las puertas y el premio
jugador = seleccionJugador() #el jugador escoge
presentador = mostrarPuerta(jugador, puertas) #el presentador muestra
if cambiar: jugador = cambiarPuerta(presentador, jugador) #debo cambiar?
return puertas[jugador] #tendra premio?
jugadas = 100 #cuantas veces te lo tengo que repetir para convencerte?
cambio = True #cambiar o no cambiar, he alli el dilema
contador = 0 #contador victorias
for i in range(jugadas): contador += juego(cambio) #el momento de la verdad... juguemos
if not cambio: cambio = 'no ' #formateo cadena bonita
else: cambio = '' #y por si...
print 'en {} jugadas hubo {} victorias si el jugador {}cambiaba de puerta'.format(jugadas,contador,cambio) #resultado
Para aquellos curiosos sin python instalado, pueden ejecutar online en paginas como
esta