GS1 - Разработка покерного робота

GS1 агент использует теорию игр для игры в хедз-апХедз-ап - является способом игры в покер, когда за столом играет только два человека. Кроме того, хедз-апом называется круг торговли, когда из всех игроков только двое остались в игре ("остались в хедз-апе") [1].. Покер - игра с достаточно враждебной средой, где целью каждого игрока является максимизация его прибыли. Теория игр представляет собой основу для объяснения рационального поведения в таких условиях. Разработчики GS1 попытались применить методы теории игр к реальной игре с неполной информацией. В отличие от своих предшественников, которые использовали теорию игр, GS1 требует очень мало конкретных знаний, вместо этого он анализирует дерево игры и определяет лучшие абстракции.

GS1 использует алгоритм "сжатия игры" [3]. Данные алгоритм получая на входе некое описание игры, на выходе проектирует абстракцию для этой игры, по которой в дальнейшем принимаются равновесные решения. Грубость абстракции зависит от порогового параметра. В первом раунде торговли есть 1326 (С252) различных возможных рук. В то же время есть только 169 стратегически разных рук, так как большая часть находится в одном классе эквивалентности. При оценке рук для следующего раунда используется уже пороговый параметр и стратегические классы уменьшаются до 2465. Оценка руки состоящей из 7 карт вычисляется заранее и хранится в базе данных под названием которая имеет 133 784 560 (С752) записей и используется во многих местах алгоритма. Еще одна база данных хранит ожидаемое количество побед и поражений (при условии нормального распределения) для рук из пяти карт 25989600 (С252 * С350) содержащая карты на флопе и на руках. Эта база используется для стратегического сравнения двух рук, похожих друг на друга.

GS1 тестировался на играх против Sparbot Sparbot - разработан Университетом Альберты. Его особенность состоит в том, что он сам по себе не является выигрывающим роботом. Он скорее следит за действиями игрока, и при обнаружении слишком пассивной или слишом активной игры, использует это в своих целях [3]., алгоритм принятия решений которого такжы был основан на теории игр. Особенность Sparbot является то, что все вычисления карт на руках протекают заранее и карты на префлопе никогда не сбрасываются. В результате после сыгранных 10000 раздач GS1 в среднем выигрывал 0.07 больших блайндов за раздачу.

Также оппонентом GS1 был и другой робот - Vexbot, разработанный также исследовательской группой Университета Альберта. Отличительной особенностью этого агента было то, что он использовал дерево игры для поиска оптимального решения. Также он мог подстраиваться под различных соперников, моделируя их поведение (например того же GS1), и опираясь на это, улучшать свою стратегию. После сыгранных 5000 раздач, матч завершился в ничью. На рисунке 2 приведены результаты обоих тестирований.

Рис. 2. Результаты тестирований GS1 против Sparbot и Vexbot [3]

Похожие статьи




GS1 - Разработка покерного робота

Предыдущая | Следующая