Nalman'у пришел ключ в бету!
Marek
17 окт 2013
ну, раз пошли объяснения "почему" с уже известным решением, приведу понравившийся мне хинт для понимания решения.
Вы выбираете 1 из Х. Ясно, что вероятность - 1/X. Останьтесь при своем решении - и никакие внешние действия на эту вероятность не влияют.
Чтобы было проще дальше, представьте, что Х - это миллион. Миллион дверей, и вы тыкаете в одну из них.
Какова вероятность, что вы угадали? 1 / 1000000, очевидно - вы выбирали из миллиона одну.
Теперь наш добрый дух открыл 999998 дверей, за которыми точно ничего. Остались ваша дверь и еще одна, и сокровище либо за вашей дверью, либо за оставшейся.
Вот сейчас, пока вы ничего еще не решили, какова вероятность?
Конечно, та же самая, что и в начале - 1 / 1000000. И пока вы не выберите другую дверь, она остается такой же - 1 / 1000000.
А если вы выберите ?
Вы выбираете 1 из Х. Ясно, что вероятность - 1/X. Останьтесь при своем решении - и никакие внешние действия на эту вероятность не влияют.
Чтобы было проще дальше, представьте, что Х - это миллион. Миллион дверей, и вы тыкаете в одну из них.
Какова вероятность, что вы угадали? 1 / 1000000, очевидно - вы выбирали из миллиона одну.
Теперь наш добрый дух открыл 999998 дверей, за которыми точно ничего. Остались ваша дверь и еще одна, и сокровище либо за вашей дверью, либо за оставшейся.
Вот сейчас, пока вы ничего еще не решили, какова вероятность?
Конечно, та же самая, что и в начале - 1 / 1000000. И пока вы не выберите другую дверь, она остается такой же - 1 / 1000000.
А если вы выберите ?

kapxapot
17 окт 2013
Marek (17 Октябрь 2013 - 11:46) писал:
Вот сейчас, пока вы ничего еще не решили, какова вероятность?
Конечно, та же самая, что и в начале - 1 / 1000000.
Конечно, та же самая, что и в начале - 1 / 1000000.
Не факт. Если открывать все эти двери одну за другой, то с каждым разом вероятность, что ты выбрал верную, будет все больше и больше. Вопрос не в этом, а в том, почему вероятность выбрать новую будет еще выше?
Wolferrr
17 окт 2013
Потому что когда ты пикаешь первую дверь, там вероятнее дырка от бублика. Соответственно, ко второй двери эта вероятность уже снижается)
Lukoil
17 окт 2013
kapxapot (17 Октябрь 2013 - 11:53) писал:
Не факт. Если открывать все эти двери одну за другой, то с каждым разом вероятность, что ты выбрал верную, будет все больше и больше. Вопрос не в этом, а в том, почему вероятность выбрать новую будет еще выше?
Опять картинку рисую
[x] [][] - твой изначальный выбор
[] [x][x] - тебе предлагают этот выбор и сразу открывают 1-ну неверную дверь. Её могут и после твоего выбора открыть - какая разница она все равно будет неверной вне зависимости от твоего первого выбора. Среди этих двух дверей всегда будет одна неверная она твои шансы никак не увеличивает.
В примере выше с 100000 дверей аналогично. ТВои шансы не увеличиваются от того что открыли 99998 дверей, они все равно были бы неверными. у тебя был выбор 1/100000 и он таким и остался.
Wolferrr
17 окт 2013
Давайте пример веселее. Из жизни, так сказать.
Итак, на следующую карту мы имеем чуть больше 25% вероятности. Скажите мне, какова вероятность получить нужную карту в следующие три хода =)
Lukoil (17 Октябрь 2013 - 08:58) писал:
Собственно топ игроки так и делают. Считают вероятность получения нужных карт на следующем ходу. Например на столе 2 юнита 3/2, в колоде 2 залпа и две взрывных ловушки - осталось 15 карт. Шанс вытянуть на след ходу нужную карту 4/15, довольно высокий, поэтому возможно их не стоит убивать сейчас, а стоит бить прямо героя.
Итак, на следующую карту мы имеем чуть больше 25% вероятности. Скажите мне, какова вероятность получить нужную карту в следующие три хода =)
Marek
17 окт 2013
kapxapot (17 Октябрь 2013 - 11:53) писал:
Если открывать все эти двери одну за другой, то с каждым разом вероятность, что ты выбрал верную, будет все больше и больше.
Даже если ты откроешь все двери и точно знаешь, что сокровище именно за твоей, это не означает, что вероятность вдруг скакнула на 100%. Она осталась 1/миллионной.
kapxapot (17 Октябрь 2013 - 11:53) писал:
Вопрос не в этом, а в том, почему вероятность выбрать новую будет еще выше?
NALMAN
17 окт 2013
Мне кажется, что kapxapot вас троллит 
Но в целом, вы так объясняете, что и я бы ничего не понял.
Выше уже привели такой пример, но я постараюсь изложить понятнее: допустим дверей 100, а добрый дух открывает нам 98 неправильных дверей после выбора. Шанс, что первая выбранная дверь правильная - 1%. Однако после того, как нам откроют 98 неправильных дверей, шансы того, что оставшаяся правильная - 99%.
А выбор между 99% и одним... это куда нагляднее, чем между 66 и 33.
А вообще в википедии же расписано подробно всё

Но в целом, вы так объясняете, что и я бы ничего не понял.
Выше уже привели такой пример, но я постараюсь изложить понятнее: допустим дверей 100, а добрый дух открывает нам 98 неправильных дверей после выбора. Шанс, что первая выбранная дверь правильная - 1%. Однако после того, как нам откроют 98 неправильных дверей, шансы того, что оставшаяся правильная - 99%.
А выбор между 99% и одним... это куда нагляднее, чем между 66 и 33.
А вообще в википедии же расписано подробно всё

Wolferrr
17 окт 2013
Marek
17 окт 2013
на коленке слабал симулятор нашей ситуации.
Это питон, можно прям в консоли запускать у кого есть.
Скопировали, обозвали например doors_sim.py, запускаем python doors_sim.py
Спросит кол-во дверей (3 или больше). Начинайте с 3, 4, 5 и т.д. Миллион не надо - уж больно низкая вероятность
Вводим 3.
Спросит кол-во симуляций - вводите тысячу или больше, чтобы усреднить. Можете поиграться и вводить меньше.
Спросит тип симуляции - менять решение или не менять. 1 или 2.
Что будет происходить:
Тысячу раз или сколько вы задали, с тем кол-вом дверей что вы задали будет происходить точно то, что в задаче,
и условный вы будет либо менять решение, либо не менять - как вы задали.
И результат будет выводиться в виде
correct = правильных_ответов from кол_во_симуляций, percent = процент
Ну либо поменяйте сообщения на русский - там все просто.
Это питон, можно прям в консоли запускать у кого есть.
Скопировали, обозвали например doors_sim.py, запускаем python doors_sim.py
Спросит кол-во дверей (3 или больше). Начинайте с 3, 4, 5 и т.д. Миллион не надо - уж больно низкая вероятность

Вводим 3.
Спросит кол-во симуляций - вводите тысячу или больше, чтобы усреднить. Можете поиграться и вводить меньше.
Спросит тип симуляции - менять решение или не менять. 1 или 2.
Что будет происходить:
Тысячу раз или сколько вы задали, с тем кол-вом дверей что вы задали будет происходить точно то, что в задаче,
и условный вы будет либо менять решение, либо не менять - как вы задали.
И результат будет выводиться в виде
correct = правильных_ответов from кол_во_симуляций, percent = процент
Ну либо поменяйте сообщения на русский - там все просто.
import random doors_amount = int(raw_input('doors amount (enter 3 or more)\n-->')) simulation_number = int(raw_input('simulations amount (well, some 10000 or so should be enought\n just be resonable)\n-->')) guessed_correctly = 0 simulation_type = int(raw_input('simulation type?:\n 1 - always keep \n 2 - always change\n-->')) doors = range(1,doors_amount+1) for i_sim in xrange(simulation_number): treasure_door = doors[random.randint(0,len(doors)-1)] guessed_door = doors[random.randint(0,len(doors)-1)] if simulation_type == 1: # no changes in guessing guessed_correctly = guessed_correctly + 1 if guessed_door == treasure_door else guessed_correctly else: # changing in guessing if guessed_door == treasure_door: # guess were correct, so hero will miss treasure pass else: # host knows guess were incorrect and randomly select one of the other empty doors. # In case of 3 doors it's obvious that hero will get treasure, # but we can have more then 3, so let's simulate doors_to_exclude_from = filter(lambda i: i not in [treasure_door, guessed_door], doors) excluded_door = doors_to_exclude_from[random.randint(0, len(doors_to_exclude_from)-1)] doors_to_guess_from = filter(lambda i: i not in [excluded_door, guessed_door], doors) new_guessed_door = doors_to_guess_from[random.randint(0, len(doors_to_guess_from)-1)] guessed_correctly = guessed_correctly + 1 if new_guessed_door == treasure_door else guessed_correctly print 'correct = %s from %s, percent = %s' % (guessed_correctly, simulation_number, float(guessed_correctly)/float(simulation_number))
Marek
17 окт 2013
ну просто мне вовсе не кажется, что он нас троллит 
У меня вопросы по задаче, когда я скрипел над ней остатком мозга, были точно такие же

У меня вопросы по задаче, когда я скрипел над ней остатком мозга, были точно такие же

NALMAN
17 окт 2013
А ты можешь для простых смертных скомпилировать этот код в прогу и выложить куда-нибудь?
Поиграться хочется, а возможности нет.
Поиграться хочется, а возможности нет.

kapxapot
17 окт 2013
Я никого не троллю. Я совершенно серьезен.
Прога эта нам очень поможет. 8)
До меня наконец-то дошло, где тут ошибка.
А ошибка тут в том, что вот тут:
В том-то и дело, что есть не только третий, но и четвертый раз. Ибо при выборе верной двери с самого начала есть два варианта следующего шага, ведь открыть могут как одну, так и вторую дверь. Это разные события, у которых одинаковая вероятность. Так что выходит 50/50!
Вот и попробуйте меня переубедить на пальцах.
Прога эта нам очень поможет. 8)
Wolferrr (17 Октябрь 2013 - 11:19) писал:
Тут на пальцах довольно легко объяснить. Во первых, нас интересует результат на дистанции. Поскольку это чистая теория, сделаем три открывания дверей, который покроет 100% спектр вариантов.
Первый вариант(если мы меняем выбор):
дважды из трех мы выбираем пустую дверь, после чего нам открывают заведомо ложную и при смене нашего выбора у нас есть верная дверь.
третий раз мы выбираем верную дверь, нам открывают заведомо ложную и при смене выбора у нас неверная дверь. Итого 66% успеха.
Второй вариант(если не меняем выбор):
дважды из трех выбираем пустую дверь, после чего нам открывают заведомо ложную, но мы остаемся при своем мнении
третий раз выбираем верную дверь, нам открывают заведомо ложную, мы остаемся при своем мнении. Итого обычные 33% успеха.
Первый вариант(если мы меняем выбор):
дважды из трех мы выбираем пустую дверь, после чего нам открывают заведомо ложную и при смене нашего выбора у нас есть верная дверь.
третий раз мы выбираем верную дверь, нам открывают заведомо ложную и при смене выбора у нас неверная дверь. Итого 66% успеха.
Второй вариант(если не меняем выбор):
дважды из трех выбираем пустую дверь, после чего нам открывают заведомо ложную, но мы остаемся при своем мнении
третий раз выбираем верную дверь, нам открывают заведомо ложную, мы остаемся при своем мнении. Итого обычные 33% успеха.
До меня наконец-то дошло, где тут ошибка.
А ошибка тут в том, что вот тут:
Wolferrr (17 Октябрь 2013 - 11:19) писал:
третий раз мы выбираем верную дверь, нам открывают заведомо ложную и при смене выбора у нас неверная дверь. Итого 66% успеха.
В том-то и дело, что есть не только третий, но и четвертый раз. Ибо при выборе верной двери с самого начала есть два варианта следующего шага, ведь открыть могут как одну, так и вторую дверь. Это разные события, у которых одинаковая вероятность. Так что выходит 50/50!
Вот и попробуйте меня переубедить на пальцах.
NALMAN
17 окт 2013
Хех, не троллит он 
И всё-таки: есть 100 дверей. Тебе предлагают выбрать одну, а затем убирают 98 заведомо неправильных вариантов и предлагают шанс сменить свой первоначальный выбор. И ты бы менять решение не стал?

И всё-таки: есть 100 дверей. Тебе предлагают выбрать одну, а затем убирают 98 заведомо неправильных вариантов и предлагают шанс сменить свой первоначальный выбор. И ты бы менять решение не стал?
NALMAN
17 окт 2013
Цитата
В том-то и дело, что есть не только третий, но и четвертый раз. Ибо при выборе верной двери с самого начала есть два варианта следующего шага, ведь открыть могут как одну, так и вторую дверь. Это разные события, у которых одинаковая вероятность. Так что выходит 50/50!

Сообщение отредактировал NALMAN: 17 Октябрь 2013 - 14:18