| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > метод монте-карло |
| Автор: redwhite90 21.2.2012, 19:21 |
| Написал покерный калькулятор, основанный на методе монте-карло. Если в кратце алгоритм таков: сначала пользователь выставляет карты себе и своим соперникам, затем, по его желанию, выставляет карты на стол. таким образом, остается некоторое количество неизвестных карт. Я моделирую ситуацию случайного выбора карты из оставшейся колоды и, таким образом, заполняю неизвестные карты. Далее смотрю у кого, что получилось и оцениваю, кто победил. Этот процесс повторяется n-ое количество раз. Таким образом можно сказать кто, с какой вероятностью победит. Проблема в следующем: мои проценты не идеально совпадают с процентами покерных оналайн-калькуляторов. Я предположил, что может я взял мало итераций -увеличил. 5 минут компьютер работал. Проценты не сильно изменились, хоть и незначительно приблизились. не знаете, в чём может быть проблема? Добавлено через 1 минуту и 56 секунд вот пример: http://www.pokerlistings.ru/odds-calculator |
| Автор: bsa 21.2.2012, 21:14 |
| redwhite90, может проблема в том, что онлайн-калькуляторы используют теоретический рассчитанный процент, а ты эмпирически? |
| Автор: sQu1rr 21.2.2012, 21:22 |
Уверены ли вы что калькулятор, ссылку которого вы выложили работает по этому же методу. На мой взгляд он основан на чистой воды теории вероятности, где проработаны все возможные варианты. |
| Автор: redwhite90 21.2.2012, 22:01 | ||
| дело в том, что я читал, что все калькуляторы используют метод монте-карло + какие то заранее просчитанные зависимости. Добавлено через 3 минуты и 2 секунды в подтверждении своих слов могу привести ссылку http://ru.pokernews.com/poker-tools/poker-odds-calculator.htm прочитайте описание Добавлено через 8 минут и 19 секунд кому лень:
|
| Автор: boostcoder 21.2.2012, 22:14 |
"во дворе стоИт сарай. на нем написаны три буквы. но там дрова!" (с) |
| Автор: redwhite90 21.2.2012, 23:30 |
| boostcoder, Читай выше |
| Автор: boostcoder 22.2.2012, 00:28 | ||
-
|
| Автор: redwhite90 22.2.2012, 10:24 | ||
boostcoder,
это популярный калькулятор http://ru.pokernews.com/poker-tools/poker-odds-calculator.htm |
| Автор: bsa 22.2.2012, 13:00 |
| redwhite90, да мало ли что там написано. ты что, серьезно думаешь, что тебе в онлайне считают этим методом? Да сервер бы давно повесился бы. |
| Автор: Sahab 22.2.2012, 15:09 |
| (facepalm) |
| Автор: boostcoder 22.2.2012, 17:17 |
| жесть покерный калькулятор - эталон доверия)) |
| Автор: redwhite90 23.2.2012, 02:21 |
| bsa, а зачем им врать? Добавлено через 8 минут и 2 секунды boostcoder, на чём основаны ваши сомнения? |
| Автор: boostcoder 23.2.2012, 02:36 |
на том, что имею самое непосредственное отношение к производству онлайн игр ;) карточные игры - приоритет номер один по количеству лжи ;) |
| Автор: redwhite90 23.2.2012, 13:50 |
| boostcoder, тогда буду считать, что я правильно всё сделал))) |
| Автор: redwhite90 23.2.2012, 15:04 |
| а если серьезно, то чьи цифры точнее ? |
| Автор: bsa 24.2.2012, 12:26 |
| redwhite90, самые точные числа - теоретические. Так как они не зависят от фазы луны и т.п. Для получения таких же значений необходимо провести бесконечное число опытов. Ты этого сделать в реальной жизни не сможешь. |
| Автор: EgoBrain 24.2.2012, 14:20 | ||
Так видно же, что на обоих приводимых калькуляторах вычисления происходят на строне клиента. Я опробовал несколько комбинаций с участием двух игроков и разных раскладах на столе, мой Athlon 3500+ с гигом оперативы ни на миллисекунду не задумался, результаты мгновенно отображаются. А какие необходимы нагрузки, чтобы была хоть сколько заметная задержка, легко проверить.. Вобщем либо метод Монте-Карло не так уже тяжел в вычислениях, либо там действительно приблизительные псевдо вероятности. redwhite90, если Вы утверждаете что компьютер вычислял минутами задачу, и Ваш метод математически верен, значит и впрям эти калькуляторы фигня полная. |
| Автор: redwhite90 24.2.2012, 20:51 |
| EgoBrain, Я исправил пару мелких ошибок и результаты стали на порядок ближе(при работе порядка 5-10 секунд). Так что наверное в этих калькуляторах всё-таки просто более оптимизированы вычисления и использованы какие-то таблицы Добавлено через 1 минуту и 11 секунд и ещё в них обоих получаются идентичеые цифры, а это о чём-то да говорит |
| Автор: Sahab 29.2.2012, 02:25 | ||
одной конторой запилены) |
| Автор: bsa 29.2.2012, 10:01 |
| redwhite90, метод монте-карло невозможно применять быстро. Так как для адекватного качества результата необходимо провести огромное количество опытов. Поэтому быстро он работать по определению не может. Если "калькуляторы" считают быстро и без значительной загрузки машины, то они считают по теоретическим формулам (возможно, выведенным с помощью монте-карло). |