Как работают покерные сольверы: алгоритм CFR+, лежащий в основе решений GTO

CFR+ — сходимость итерацийИтерацииУравнение Нэша

Каждый раз, когда ваше программное обеспечение для GTO-стратегий рекомендует повышение ставки, колл или фолд, за кулисами работает математический движок. Этот движок основан на методе минимизации контрфактуального сожаления (CFR+), — том же алгоритме, на котором работает практически каждый современный покерный сольвер. Понимание принципа работы CFR+ поможет вам понять, почему программа GTO принимает именно такие решения и почему эти решения сходятся к равновесию Нэша.


Что такое контрфактуальное сожаление?

В теории игр «сожаление» измеряет, насколько лучше был бы ваш результат, если бы вы выбрали другое действие в конкретный момент принятия решения. Контрфактуальное сожаление расширяет эту концепцию — оно задает вопрос, сколько вы бы выиграли, если бы выбрали действие X вместо действия Y, при условии, что ваш соперник действовал бы точно так же. CFR+ просчитывает миллионы гипотетических покерных сценариев, отслеживая сожаление для каждого возможного действия на каждом узле принятия решения. В ходе тысяч итераций он постепенно смещает стратегию в сторону действий с меньшим совокупным сожалением. Результатом становится профиль стратегии, которым ни один соперник не сможет воспользоваться — равновесие Нэша.

От итераций к равновесию

Каждая итерация CFR+ моделирует полную покерную руку со всех возможных точек зрения. Алгоритм оценивает каждую комбинацию закрытых карт, вариантов раздачи на столе и действий соперников, а затем соответствующим образом обновляет значения сожаления. Ранние итерации дают крайне несбалансированные стратегии, но по мере увеличения количества итераций — как правило, до десятков миллиардов — стратегия сходится к математически оптимальному решению. Профессиональным настольным решателям, таким как PioSolver или GTO+, требуются минуты или часы, чтобы сходиться к одной точке. Наше программное обеспечение для GTO-стратегий заранее вычисляет эти решения на основе обширной базы данных и дополняет их выводами нейронной сети в режиме реального времени, обеспечивая получение результатов менее чем за 200 миллисекунд во время живой игры.

Почему нейронные сети ускоряют GTO

Выполнение полных расчетов по методу CFR+ во время реальной покерной раздачи вычислительно невозможно — дерево решений для безлимитного холдема содержит примерно 10 в степени 160 узлов принятия решений. Вместо этого программное обеспечение для GTO-стратегий обучает нейронные сети на основе результатов просчитанных сценариев. Сеть учится приблизительно воспроизводить решения уровня решателя на основе исходных данных о состоянии игры: вашей руки, общего стола, размера банка, размеров стеков и поведения соперников. Такой подход позволяет обменять незначительную потерю точности (как правило, менее 2 % уязвимости) на огромный прирост скорости, что делает игру по GTO в реальном времени практичной при игре за несколькими столами одновременно.

Практическая сторона дела

Для игрока техническое различие между решением по методу CFR+ и аппроксимацией с помощью нейронных сетей за игровым столом не имеет значения — оба подхода приводят к действиям, которые являются функционально оптимальными. Важен результат: последовательное, беспристрастное принятие решений на уровне, для воспроизведения которого вручную потребовались бы тысячи часов обучения. Программное обеспечение на основе стратегии GTO объединяет результаты работы целой фермы решателей в одно приложение, которое работает параллельно с вашим покерным клиентом и точно подсказывает, что делать в каждой раздаче и на каждом улице.


Часто задаваемые вопросы

Что такое равновесие Нэша в покере?

Равновесие Нэша — это состояние, при котором ни один из игроков не может увеличить свою ожидаемую выгоду, односторонне изменив свою стратегию. В терминах покера стратегия GTO в равновесии Нэша гарантирует неотрицательный процент выигрышей против любого соперника — никакая контрстратегия не может извлечь из неё выгоду. CFR+ — это алгоритм, который вычисляет эту точку равновесия.

Насколько точное приближение с помощью нейронной сети по сравнению с полным решением?

Аппроксимации на основе нейронных сетей, используемые в современном программном обеспечении GTO, как правило, демонстрируют уровень эксплойтируемости менее 2 % по сравнению с результатами точного решателя. На практике это означает, что рекомендуемое действие совпадает с действием, полученным в результате полного решения, примерно в 94–97 % сценариев — такой запас точности незаметен за игровым столом и значительно превосходит точность человеческого решения.

Почему я не могу просто использовать настольный решатель во время игры?

Настольные программы для решения задач требуют от вас вручную вводить игровой сценарий, дожидаться сходимости (часто это занимает несколько минут на каждый вариант) и затем интерпретировать полученные результаты. Такой процесс невозможно осуществить во время реальной раздачи, когда на принятие решения отводится всего 15–30 секунд. Программное обеспечение для GTO-стратегий автоматизирует весь процесс — анализ экрана, расчёты и отображение рекомендаций — в режиме реального времени, без необходимости ручного ввода данных.