задача по мотивам рассуждения Петера Гача
Jul. 15th, 2012 12:39 pmМы стоим у ленты транспортёра, по которой мимо нас проезжают одинаковые на вид шары. Они могут быть стеклянными или ледяными. Когда шар мимо нас проезжает, мы можем его взять себе, на этом игра заканчивается, мы выигрываем, если шар ледяной, и проигрываем, если стеклянный. Уже проехавшие шары мы взять не можем, но видим, какие из них растаяли (ледяной шар обязательно растает рано или поздно, и мы это увидим - но время это неизвестно, и для разных шаров может быть разным).
Требуется придумать вероятностный алгоритм с такими свойствами:
1) для любой последовательности шаров на ленте вероятность того, что мы возьмём стеклянный шар, не больше 1%
2) Если все шары ледяные, то с вероятностью 1 мы рано или поздно возьмём шар (и он окажется ледяным, так что мы выиграем)
Лента может быть произвольной, но наша монета гарантированно честная (при любой ленте)
---
(Математический вопрос, из которого это происходит: построить вероятностный алгоритм, который с вероятностью 99% печатает бесконечную последовательность натуральных чисел, не ограниченную никакой всюду определённой вычислимой функцией)
P.S. Решение buddha239, приведённое в одном из комментариев, наводит на мысль, что формулировка задачи недостаточно очищена, чтобы условие и решение выглядели просто. Мы можем взять любой шар, но можем также и не взять шар, а вместо этого наблюдать за ним, пока он не растает (если этого не случится никогда, то требования выполняются). Тем самым задача сводится к такой:
Мы покупаем пиротехнику для праздника у ненадёжного продавца. Он предлагает нам изделие, мы можем либо купить его, либо потребовать, чтобы его при нас запустили. Если не сработает, то разоблачённый продавец закрывает лавку. Если сработает, то это изделие, естественно, уже больше использовать нельзя, но можно получить у продавца новое изделие. Требуется вероятностная стратегия наших действий, при которой [1] мы всегда либо разоблачаем продавца, либо уносим некоторое (неопробованное) изделие с собой, и [2] при любой стратегии продавца (вероятностной или детерминированной) вероятность унести неисправное изделие не больше 1/100.
Проверка изделия соответствует тому, что мы обратили внимание на какой-то шар и ждём его таяния.
В такой формулировке, видимо, решение уже придумать совсем просто.
Требуется придумать вероятностный алгоритм с такими свойствами:
1) для любой последовательности шаров на ленте вероятность того, что мы возьмём стеклянный шар, не больше 1%
2) Если все шары ледяные, то с вероятностью 1 мы рано или поздно возьмём шар (и он окажется ледяным, так что мы выиграем)
Лента может быть произвольной, но наша монета гарантированно честная (при любой ленте)
---
(Математический вопрос, из которого это происходит: построить вероятностный алгоритм, который с вероятностью 99% печатает бесконечную последовательность натуральных чисел, не ограниченную никакой всюду определённой вычислимой функцией)
P.S. Решение buddha239, приведённое в одном из комментариев, наводит на мысль, что формулировка задачи недостаточно очищена, чтобы условие и решение выглядели просто. Мы можем взять любой шар, но можем также и не взять шар, а вместо этого наблюдать за ним, пока он не растает (если этого не случится никогда, то требования выполняются). Тем самым задача сводится к такой:
Мы покупаем пиротехнику для праздника у ненадёжного продавца. Он предлагает нам изделие, мы можем либо купить его, либо потребовать, чтобы его при нас запустили. Если не сработает, то разоблачённый продавец закрывает лавку. Если сработает, то это изделие, естественно, уже больше использовать нельзя, но можно получить у продавца новое изделие. Требуется вероятностная стратегия наших действий, при которой [1] мы всегда либо разоблачаем продавца, либо уносим некоторое (неопробованное) изделие с собой, и [2] при любой стратегии продавца (вероятностной или детерминированной) вероятность унести неисправное изделие не больше 1/100.
Проверка изделия соответствует тому, что мы обратили внимание на какой-то шар и ждём его таяния.
В такой формулировке, видимо, решение уже придумать совсем просто.
no subject
Date: 2012-07-15 11:36 am (UTC)no subject
Date: 2012-07-15 12:13 pm (UTC)no subject
Date: 2012-07-15 12:26 pm (UTC)no subject
Date: 2012-07-15 12:26 pm (UTC)Я сомневаюсь, что есть работающий алгоритм выбора ледяного шара, если противник кидает двустороннюю честную монетку для выбора ледяного/стеклянного шара с вероятностью 1/2. Очень удивлюсь, что замена честной монеты на псевдослучайную сколь угодно сложную - окажется принципиальной для решения.
no subject
Date: 2012-07-15 12:27 pm (UTC)no subject
Date: 2012-07-15 12:31 pm (UTC)И еще непонятно про разные времена таяния: получается, что про любой проехавший нерастаявший шар мы не можем быть уверены, что он не ледяной? А противник может управлять не только материалом, но им временем таянья?
no subject
Date: 2012-07-15 12:46 pm (UTC)Более тонкий вопрос - если следующие шары на ленте противник выбирает по нашим ходам, то наша задача усложняется (но решение всё равно работает)
no subject
Date: 2012-07-15 12:47 pm (UTC)no subject
Date: 2012-07-15 12:48 pm (UTC)да - про любой нерастаявший шар мы не можем быть уверены ни в какой момент, что он не ледяной (но мы вполне можем ждать, пока он растает - это не нарушает условий)
no subject
Date: 2012-07-15 02:53 pm (UTC)А если случайная и при этом процесс марковский?
no subject
Date: 2012-07-15 02:53 pm (UTC)Вот я беру по тем или иным причинам текущий шар, всё что мы видели про предыдущие шары - не даёт информации о том, какой шар нам попался сейчас?
Такое ощущение, что я не понял условие и не увидел какого-то ограничения на противника, выкладыющего шары.
Попробовал составить программку на питоне, которая ведёт как описанный алгоритм, таки в половине случаев она берёт стеклянный шар:
no subject
Date: 2012-07-15 03:11 pm (UTC)no subject
Date: 2012-07-15 03:12 pm (UTC)no subject
Date: 2012-07-15 03:12 pm (UTC)no subject
Date: 2012-07-15 03:27 pm (UTC)no subject
Date: 2012-07-15 03:29 pm (UTC)no subject
Date: 2012-07-15 03:57 pm (UTC)Я, вроде, видел загруженные растровые карты в новые garmin'ы - но совсем издалека и, кажется, там было что-то типа oregon'а или 62-го. Про etrex 20 в первый раз услышал от тебя.
no subject
Date: 2012-07-15 06:58 pm (UTC)no subject
Date: 2012-07-15 06:59 pm (UTC)no subject
Date: 2012-07-15 07:18 pm (UTC)no subject
Date: 2012-07-15 07:19 pm (UTC)no subject
Date: 2012-07-15 07:38 pm (UTC)no subject
Date: 2012-07-15 07:50 pm (UTC)no subject
Date: 2012-07-15 07:55 pm (UTC)Сам испаользую еще черно-белый map60. etrex vista и etrex legend (со всякими буковками), тоже хорошие (и относительно дешевые), цветной 60-й - тоже хорошо.
no subject
Date: 2012-07-15 08:45 pm (UTC)Но некоторые программисты не могут быстро и безошибочно реализовать его на питоне
no subject
Date: 2012-07-15 08:53 pm (UTC)и в чуть более общей формулировке http://dl.acm.org/citation.cfm?id=1772779
несмотря на то, что алгоритм, по большому счету тривиальный, аккуратный анализ оказался достаточно сложным в связи с тем что продавец (пользователь) может менять свою стратегию.... Было бы интересно ваше мнение о статье.
no subject
Date: 2012-07-23 08:16 pm (UTC)