Пока игроки с любопытством наблюдает за результатами принципиальной схватки покерного бота Libratus с четверкой известных профессионалов с хайстейкс, которую человечество пока проигрывает, исследователи трех европейских университетов заявили, что создали бота, который успешно обыгрывает покерных профессионалов в игре один на один. И это заявление не пустой звук, ведь оно основывается на результатах недавно проведенного эксперимента, в рамках которого программа DeepStack сумела со значительным перевесом обыграть команду опытных игроков, специально нанятую Международной федерацией покера.
Против бота DeepStack было выставлено 33 игрока, где помимо Фила Лаака значилось и несколько профессионалов из России: Дмитрий Лесной (бывший президент Федерации Спортивного Покера России), Роман Шапошников (автор некоскольких покерных книг) Иван Шабалин (оффлайн регуляр), Сергей Инденок (регуляр, автор покерных подкастов) и некто Pol Dmit. В результате этого состязания боту удалось обыграть про-игроков с общим винрейтом 492 (milli-big-blinds per game). Ниже вы можете ознакомиться с полными результатами:
Над разработкой этого бота работают исследователи сразу трех университетов: Альбертского, Карлова и Чешского технического. Один из основателей проекта, Ноэм Браун, в прошлом году заявил, что “познать” все тонкости безлимитного холдема ИИ в ближайшем будущем не удастся, но промежуточные итоги их работы показывают, что бот DeepStack уже способен обыгрывать профессионалов. Но зачем вообще ученые взялись за создание покерных ботов?
Почему ученые разрабатывают покерных ботов?
Создать действительно развитый ИИ действительно трудная задача, ведь человеческое поведение очень многогранно. В реальной жизни люди обманывают, а также принимают решения, основываясь на анализе действий других людей. По мнению некоторых экспертов, для создания сильного ИИ необходимо, чтобы бот научился выигрывать людей в интеллектуальные игры с неполной информацией, которые зачастую соответствуют человеческому поведению в реальной жизни. И покер отлично подходит для решения этой задачи.
«Если это правда, то DeepStack — действительно значимый шаг вперед в развитии игрового ИИ» — Майл Веллман, специалист в области теории игры и AI.
Но почему именно игры с неполной информацией? Дело в том, что ИИ уже давно проверяют на прочность в играх и с каждым годом список игр, в которых искусственный интеллект оказывается сильнее человека растет. На данный момент уже “решены” шашки, шахматы и даже го. И чтобы сделать новый эволюционный шаг в развитии ИИ, боты должны перейти на более сложный “уровень мышления” и научиться побеждать в играх с неполной информацией, решение которых требует совсем иного подхода.
В покере правильные (плюсовые) действия ИИ будут зависеть от информации, которую он получил, анализируя действия оппонента. В то же самое время, эти действия оппонента основываются на анализе предыдущих действий ИИ и той информации, что он предоставил своей игрой. Это так называемое “рекурсивное мышление”, которое так хотят освоить ученые, разрабатывая новые версии ИИ.
Покерные боты выходят на новый уровень
С каждым годом покерные боты становятся все более развитыми, постепенно подбираясь к “решению” безлимитного техасского холдема (в лимитированный покер боты уже научились выигрывать) и все больше адаптируя свою игру под действия конкретных игроков. Вот так выглядит дерево принятий решений бота DeepStack, при игре один на один в NL:
Особенность DeepStack в том, что этот бот не просто действует по какому-то простому алгоритму, по сути ИИ переоценивает свои действия на каждой улице при принятии решений. Например для оценки вэлью конкретной ставки используется специальное дерево «lookahead tree», с помощью которого бот пытается предвидеть развитие раздачи. Ответвления этого дерева решений созданы нейросетью, натренированной на случайно сгенерированных покерных ситуациях.
На входе нейросеть анализирует размер банка, открытые карты и диапазоны игроков на основании их действий (колл, рейз, чек, олл-ин и т.д.). Далее эта информация обрабатывается семью связанными и скрытыми слоями нейросети, после чего выдается оптимальное решение.
Равновесие Нэша — понятие в теории игр, обозначающее набор стратегий в игре, при которой ни один из участников не может увеличить выигрыш, изменив свою стратегию, если другие игроки не меняют свои стратегии.
Главная проблема ботов в том, что после изучения их стратегии и вычисления их древа решений, программу можно будет эксплуатировать и “наживаться” на ее слабостях. Зная как именно бот действует в определенных ситуациях, опытные игроки смогут легко использовать это против него. Создатели DeepStack пытаются этому помешать. Главное отличие новых ботов от старых в том, что они активно сопротивляются анализу собственной стратегии со стороны живых оппонентов с помощью поиска равновесия Нэша. Благодаря этому вероятность эксплуатации стратегий ИИ значительно снижается.
Вместо заключения
После публикации подробного исследования создателей бота DeepStack в их адрес полетела критика и ряд скептиков предложили проверить их детище на более сильных игроках, приводя в пример проходящий в данное время эксперимент с ботом Libratus против четырех игроков хайстейкс. Ученые согласились и в ближайшее время планируют проверить DeepStack на новой партии профессиональных игроков. Чем закончится новое состязание я не знаю, но результаты нынешнего более чем настораживают. Заглядывать вперед я не буду, но учитывая возможности новоиспеченного бота меня тревожит один вопрос: «Зачем создатели DeepStack опубликовали свое исследование и алгоритмы работы покерного бота в открытом доступе?». И не появится ли в ближайшее время новые исследователи, которые захотят испытать своих ботов в популярных покер-румах, чисто в научных целях, конечно же...
p.s. один из участников эксперимента, Роман Шапошников, опубликовал у нас на сайте пост о своем опыте игры против бота DeepStack.