Search
Write a publication
Pull to refresh
3
0
Шаймарданов Булат @mrbus

User

Send message

Теория игр и покер. Подсчитываем число возможных стратегий

Reading time4 min
Views11K
Согласно теории игр, чистая стратегия предусматривает все ходы всех противников и на каждую комбинацию таких ходов однозначно задает наш ход. Можно ли победить покер полным анализом дерева игры и перебором всех чистых стратегий? Давайте для начала хотя бы подсчитаем число чистых стратегий каждого игрока.

Общая идея такова. Если у нас есть построенное дерево игры, то для подсчета числа чистых стратегий в «наших» узлах мы складываем результаты по поддеревьям Fold, Call, Bet/Raise, а в узлах противников умножаем. Если нужно подсчитать число стратегий для другого игрока, можно использовать то же самое дерево, изменится только операция (сложение/умножение) в каждом узле.
Конечно, если задача — только посчитать число стратегий, можно обойтись и без прямого построения дерева (как это и сделано в приведенном коде).

Рассматривается Fixed Limit Texas Hold'em, где ставки повышаются не более 4 раз. Вычисления ведем только для префлопа!

Код и результаты — под катом.
Читать дальше →

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

Reading time5 min
Views50K

Короткое предисловие


Комбинаторные алгоритмы применяются достаточно часто. В интернете можно найти много информации касательно комбинаторных алгоритмов. Однако русскоязычный интернет, в основном, выдает простейшие задачи сплошного перебора (генерации) комбинаторных объектов в цикле. Например:
Пример
// Сочетания по 3 из 52
for (int i1 = 0; i1 < 50; ++i1)
  for (int i2 = i1+1; i2 < 51; ++i2)
    for (int i3 = i2+1; i3 < 52; ++i3)
      // ...


Индекс сочетания


Каждому сочетанию, перестановке, размещению и другим комбинаторным объектам можно сопоставить индекс — это номер, в котором он появляется при переборе данным алгоритмом.

Здесь мы рассмотрим более сложную задачу, решения которой в рунете я не нашел (впрочем, приведу одну ссылку, но та формула явно неверная) — исходя из самого сочетания (в данном случае набора трех чисел) найти его индекс.
Читать дальше →

Information

Rating
Does not participate
Location
Казань, Татарстан, Россия
Date of birth
Registered
Activity