Бот легко обыграет человека в любой вид покера

Бот легко обыграет человека в любой вид покера

Ноам Браун – ведущий специалист по разработке систем, основанных на искусственном интеллекте, и создатель популярных покерных ботов Либратус и Плурибус – стал гостем подкаста Лекса Фридмана.

В интервью, продолжавшемся 2.5 часа, Браун подробно рассказал о том, как несколько лет назад ему удалось создать софт, который без шансов обыграл сильнейших регуляров.

– Ты руководил тремя потрясающими проектами в области AI – Либратус в хедз-ап покере, Плурибус в 6-максе, а в последнее время переключился на программу Cicero, которая на равных сражается с людьми в популярную настольную игру «Дипломатия». Сегодня я хотел бы обсудить покер. Расскажи для обычных слушателей, что это вообще за игра – безлимитный техасский холдем?

– Это самая популярная разновидность покера, в которую играют во всех казино и во многих популярных фильмах. Главная особенность в том, что игрок сам выбирает размер ставок. Одна из ключевых стратегий в покере – поставить соперника в сложное положение, если вам это стабильно удается, значит вы хороший игрок.

– Когда ты создаешь свои проекты, что тебя привлекает в первую очередь? Красота покера или желание решать глобальные проблемы с помощью AI?

– Красота игры. Сам я начал играть в покер, когда учился в школе. Я быстро понял, что в теории существует некая правильная стратегия, следуя которой можно всех обыгрывать. Уже в 16 я был поражен многообразием покера, а работать над AI начал гораздо позже.

– Ты уже тогда понимал, что покер можно решить, как шахматы или шашки? Они же решены?

– Да, в эти игры AI обыграть невозможно. Покер тоже можно решить. В основе лежит равновесие Нэша. В любой конечной игре с нулевой суммой существует оптимальная стратегия. Если один из игроков будет играть по ней, то по ожиданию он проиграть не может, независимо от действий оппонента. Для покера все это тоже справедливо, но только для хедз-апа, в 6-максе все сложнее.

– Что ты имеешь в виду, когда говоришь «по ожиданию».

– В покере огромная дисперсия. Даже идеальная стратегия не гарантирует, что вы будете выигрывать все раздачи. Но оптимальная стратегия гарантирует, что на дистанции вы будете играть как минимум в ноль.

– Как посчитать это равновесие?

– Есть несколько способов. Мы используем алгоритм минимизации контрфактуального сожаления, который основан на самообучении. То есть две копии AI начинают играть друг с другом совершенно рандомно, но в процессе игры обучаются. По итогам матча они анализирует свои действия и проводят «исследования», как на результат повлияли бы другие решения, например, рейз вместо колла. В следующий раз они выбирают более выгодное действие. На большой дистанции такая игра приходит к совпадению с равновесием Нэша. Это работает как в шахматах, так и в покере.

– Что сложнее – шахматы, покер или, может, вообще го?

– Я назову покер. В первую очередь, из-за неполной информации. Это приводит к тому, что мы должны думать не только о том, как именно сыграть с нашими картами, но и с какой частотой выбрать такой розыгрыш. Самый простой пример – игра «Камень, ножницы, бумага». Нельзя все время показывать «камень», соперник это сразу заметит. Что не менее важно, ценность наших действий напрямую зависит от частоты их применения. Баланс – один из самых важных элементов покера. В шахматах совершенно неважно будете вы играть ферзевый гамбит во всех партиях или только в 10%, ожидание от этого никак не изменится.

– Если мы все время играем с одним соперником, то в каждой раздаче получаем новую информацию. Насколько это значимо для AI?

– Такой подход в покере, действительно, существует. Но для ботов это не имеет значения. Они играют так, будто соперник и так уже знает их стратегию. Суть оптимальной игры в том, что можно сыграть десятки тысяч раздач, досконально все проанализировать, но побить ее все равно невозможно. Это и есть идеальный баланс или, другими словами, равновесие Нэша. Лучшие игроки мира тоже стремятся играть по Нэшу, но могут отклоняться, когда замечают ошибки у соперников.

– Кто величайший игрок всех времен, и почему это Фил Хельмут? Его игра далека от оптимальной, но он все равно всех обыгрывает. То есть его хаотичная игра делает его стратегию непредсказуемой?

– В первую очередь важно понять, что равновесие Нэша не имеет ничего общего с предсказуемостью. Его суть как раз в непредсказуемости. Вполне допускаю, что Фил Хельмут – очень успешный игрок. Но его непредсказуемость к этому никакого отношения не имеет. Предположу, что его сильная сторона – умение использовать слабости соперников. Покерное комьюнити годами спорило, что лучше – GTO или эксплойт. И до 2017-го года у эксплойта было больше сторонников, пока наш Libratus не сыграл против сильнейших специалистов хедз-апа. Бот не пытался подстраиваться, не играл в игры разума, он просто в каждом своем действии старался максимально приблизиться к Нэшу. И в результате разорвал соперников, на дистанции 120,000 раздач бот выиграл у людей около $2 млн при блайндах $100/$200.

30 января 2017 года программа Либратус пробила оборону человечества в безлимитном холдеме один на один, разгромив команду четырёх друзей Дага Полка с винрейтом 14.7 бб/100. Ни один из соперников бота не смог сыграть в плюс.
Читать

– Расскажи про этот матч подробнее.

– Когда я учился в аспирантуре, над покерным AI работали сразу несколько групп и в конце каждого года мы проводили чемпионат по покеру среди ботов. Наш бот стал чемпионом в 2014-м и 2016-м, и позже он лег в основу Либратуса. В 2017-м мы бросили вызов лучшим хедз-ап специалистам мира, предложили им сыграть 120,000 раздач. Выделили на матч $200,000 призовых, которые люди поделили между собой в зависимости от результата.

– В 2014-16 годах ты хотя бы задумывался о том, что компьютер может обыграть человека в покер?

– Первый подобный матч состоялся еще в 2015-м, и тогда бот потерпел довольно тяжелое поражение. Но за два года многое изменилось. Первый бот играл по заранее разработанной стратегии, нацеленной на решение покера. Во время матча он просто обращался к своей обширной базе и искал решение для каждой конкретной ситуации. А бот 2017-го в реальном времени пытался построить стратегию, которая работает лучше, чем заложенные в него алгоритмы.

Однако матч 2015-го дал мне очень много пищи для размышлений. Я понял, что у людей и ботов совершенно разный подход. У нашего бота уже была наиграна определенная дистанция с самим собой. В матче с людьми он моментально находил решения против человека, основываясь на своем предыдущем опыте. Так происходило всегда. А профессионалы в некоторых ситуациях могли по 5 минут думать на ривере, выбирая выбрасывать или коллировать. Мне пришла в голову идея, что именно этого не хватает нашему боту. Мы проанализировали первый матч и выяснили, что именно эти ситуации оказали огромное влияние на итоговый результат.

– Ты про продолжительность раздумий?

– Да, но дело не в таймингах. Проблема бота была в том, что он всегда действовал мгновенно и не пытался подобрать более выгодное решение по сравнению с тем, что в него было заложено до игры. А люди прямо во время раздачи пользуются своим умением перестраиваться, думать и планировать. Часто это помогает найти более выгодное действие, чем изначально подсказывала интуиция. Нейронная сеть выдает результат за миллисекунды, но если заставить ее учитывать даже незначительные дополнительные данные, результат многократно улучшится. Если представить заложенную в бота стратегию, как аналог нейронной сети, то даже малейшие исследования дополнительной информации сделают ее в тысячи раз больше. Это дало невероятный толчок нашим разработкам.

– Можешь на пальцах объяснить, в чем именно заключается эти исследования?

– В холдеме игрокам раздают по две закрытые карты, это 1,326 возможных комбинаций. На самом деле около 1,000, потому что можно не учитывать открытые карты. Бот начинает перебирать все возможные варианты и ищет стратегию, которая работает лучше, чем то, что было в него заложено изначально. Важно, что проводить эти исследования он начинал только на терне, две первые улицы играл мгновенно по заранее рассчитанной стратегии.

– В стратегии Либратуса были какие-то особенности, которые сразу бросились вам в глаза?

– Ставки, которые делает человек, как правило зависят от размера банка. А для Либратуса это было совершенно неважно, он играл абсолютно любыми сайзингами. В какой-то момент он вдруг начал ставить огромные овербеты по 10 банков. До матча мы вообще не думали о таком варианте, поэтому немного заволновались. На практике никто раньше не применял такую стратегию, и мы сами не знали, чего ожидать, вдруг регуляры сумеют этим воспользоваться? Но почти сразу стало понятно, что это отлично работает, так как постоянно загоняет соперника в затруднительное положение. Но бот делал это исключительно потому, что в конкретной ситуации такая ставка казалась ему самой выгодной, а то что люди не знали, как этому противостоять оказалось приятным бонусом.

– Ты когда-нибудь обсуждал ваши разработки, например, с Даниэлем Негреану?

– Да, меня приглашали на Остров Мэн в офис PokerStars, когда он еще с ними работал. Он присутствовал на общем ужине, сказал, что все это очень интересно и можно использовать для работы над игрой.

– То есть он не был напуган?

– Наоборот. Он даже проявлял интерес к матчу против бота, утверждал, что у него неплохой шанс выиграть. Это было несколько лет назад, когда еще не все понимали, что в хедз-апе у человека нет никаких шансов против AI. Думаю, сейчас это стало очевидно уже всем.

– А какая ситуация в 6-максе?

– Современные боты обыграют людей и там. Дискутировать можно лишь на тему, актуально ли это для всех разновидностей покера. Я уверен, что при желании и достаточных ресурсах для любой игры можно написать бота, который без проблем обыграет человека. Но мы сосредоточены только на самой популярной – NLHE.

– Ты не задумывался, в чем основные отличия в методах работы человеческого мозга и AI?

– Конечно, задумывался, это очень важный вопрос. В основе расчетов AlphaGo и других известных ботов лежит метод Монте-Карло. Он отлично зарекомендовал себя в играх с полной информацией – шахматы и го. Но в покере он совершенно не годится, потому что не понимает концепцию скрытой информации, не знает, что такое баланс, с какими частотами те или иные руки нужно фолдить или коллировать. Человеческий мозг способен составить поверхностный план для любой игры. Этого очень не хватает искусственному интеллекту – способности планировать и рассуждать в общем.

– Раньше многим казалось, что в покере настолько важен человеческий фактор, что компьютер никогда не выиграет. Что ты почувствовал в тот момент, когда Либратус все-таки обыграл людей?

– Для меня весь проект был очень стрессовым. До начала матча я несколько лет без выходных занимался только им. Во время подготовки, мы вообще не представляли, насколько высокий уровень потребуется, чтобы обыграть человека. Либратус играл с предыдущими версиями самого себя, но это лишь давало нам общее представление, что мы движемся в верном направлении. Какой максимум нам нужен, мы не знали, поэтому бросили на разработку все ресурсы. В нашем распоряжении были мощности тысячи компьютеров. Сейчас этим никого не удивить, но для аспиранта в 2016-м все происходящее было очень впечатляюще. В первый день поединка я безумно нервничал. Перед началом оценивал шансы на победу как примерно равные. Я понимал, что на бумаге бот сильнее и должен победить, но боялся, что профессионалы заметят какие-то слабости и сумеют ими воспользоваться. Именно так было в нашем первом матче 2015 года. Его первая половина прошла без явного преимущества, но затем игроки просто разорвали бота, потому что заметили его недостатки и сумели ими эффективно воспользоваться. Самыми проблемными стали ситуации, когда игроки ставили олл-ины. Например, для бота не было никакой разницы между K-хай и А-хай флешами, он играл их совершенно одинаково. Иногда это не играет никакой роли, но в некоторых ситуациях может стоить очень дорого, и профессионалы легко выявляли такие моменты.

– Как игроки вели себя во время второго матча?

– Как я уже сказал, их призовые напрямую зависели от результата. Я надеялся, что они не будут объединять усилия, чтобы найти недостатки бота. Но регуляры сразу дали понять, что их главная цель – обыграть бота. Они вместе анализировали раздачи. По итогам каждого дня мы отправляли им всю историю с открытыми картами. Сам не знаю, почему решил пойти на это, в покере это бесценная информация. Но сейчас даже рад этому, потому что в итоге мы все равно выиграли. Матч продолжался 20 дней. Бот выиграл три первых сессии подряд, но я все еще продолжал оценивать шансы примерно 50 на 50. Потом люди немного отыграли и поверили, что опять заметили в игре бота некоторые недостатки, которые такими на самом деле не являлись. Уже к восьмому дню стало понятно, что у них нет шансов.

– Как ты воспринял победу?

– Я посвятил этому проекту 5 лет жизни, поэтому первой реакцией было огромное удовлетворение, что моя работа оказалась успешной.

– Расскажи про бота для 6-макс.

– Как я уже говорил, если в игре с нулевой суммой один из участников действует «по Нэшу», он, как минимум, не проиграет по ожиданию. При этом совершенно неважно, что будет делать соперник. Все это справедливо для хедз-апа. В покерном и научном комьюнити долго шли жаркие споры, будет ли это работать в 6-максе. Я сразу был уверен, что будет, потому что стратегия слишком уж эффективная, и количество игроков не окажет большого влияния.

Успешный переход в 6-макс нам удался, когда мы ограничили исследовательскую работу бота. Либратус заранее просчитывал все возможные ходы на следующих улицах до самого конца. В 6-максе это невозможно, так как игра гораздо разнообразнее. Поэтому мы ограничили бота лишь парой ходов вперед, и это оказалось очень эффективным. 6-макс покер остается индивидуальной игрой, в которой никто из игроков не сотрудничает друг с другом. Правила вообще это запрещают. Это позволило нам успешно применить на практике упрощенное равновесие Нэша. Причем в теории до сих пор не доказано, что оно должно работать в 6-максе. Для некоторых игр уже есть научные подтверждения, что приближенное равновесие Нэша отлично работает за пределами игры один на один. К 6-макс покеру это пока не относится, но мне уже очевидно, что оно работает как минимум неплохо.

– Расскажи про основные отличия Плурибуса и Либратуса.

– Плурибус оказался намного дешевле. Если оценить все ресурсы, которые нам понадобились на создание бота, то Либратус обошелся примерно в $100,000, а Плурибус – меньше $150. Понятно, что с каждым годом компьютеры дешевеют, но все-таки разница не такая огромная. Главная причина – это изменение алгоритма. То самое ограничение исследовательской работы бота, о которой я уже говорил.

– А для Либратуса такое ограничение тоже возможно?

– Конечно. Сначала мы проверяли эффективность работы на хедз-ап боте. Если раньше Либратусу нужна была мощность тысяч компьютеров, то новый алгоритм позволил запустить его на любом ноутбуке.

– Как человек, который сам любит покер, кого ты все-таки считаешь величайшим игроком всех времен? Кстати, с помощью AI можно оценить уровень игры человека? В покере вообще возможно какое-то подобие рейтинга Эло?

– В теории возможно, но на практике малореально. Все из-за огромной дисперсии. Даже плохой игрок может закончить год в плюс, а топ-рег сыграет эту же дистанцию в минус. Но в современном покере, как и в шахматах, сейчас невозможно представить работу над игрой без софта.

– Меня впечатлило, как ловко ты проигнорировал вопрос про лучшего игрока всех времен.

– Это сложный вопрос. В шахматах мы не можем сравнить Магнуса Карлсена и Гарри Каспарова. Игра слишком сильно эволюционировала. В покере современные игроки по скиллу многократно превосходят даже тех, кто играл всего 5-10 лет назад. Если говорить откровенно, почти звезды ESPN времен покерного бума играют довольно посредственно.

По крайней мере, с технической стороны, допускаю, что в чтении соперников они по-прежнему сильны. С учетом этого я назову Даниэля Негреану. Он один из сильнейших игроков прошлого, старается идти в ногу со временем и следит за развитием AI, много работает над теорией. Почти все игроки его поколения уже давно сдались и вообще не смотрят в этом направлении. За это я очень уважаю Даниэля.

Следите за обновлениями GipsyTeam вконтакте, на фейсбуке, на YouTube, в твиттере, телеграме и инстаграме.
Поделиться новостью:
Еще по теме
Лучшие комментарии
13 комментариев
  • Покеру осталось 2 года...

    Ответить Цитировать
    20
  • Мы используем алгоритм контрфактуального сожаления, который основан на самообучении.

    Наверное имелось ввиду "алгоритм минимизации контрфактических сожалений" (Counterfactual Regret Minimization, CFR).

    Ответить Цитировать
    6
  • хорошая реклама

    Ответить Цитировать
    3
  • поэтому в минус и катаю на нл20( гребаные боты

    Ответить Цитировать
    13
  • Кто величайший игрок всех времен, и почему это Фил Хельмут

    отличный вопрос!

    Ответить Цитировать
    6
  • Сегодня, оно нас в покер обыгрывает, а завтра решит судный день устроить. Программист хуев.

    Ответить Цитировать
    35
  • Сообщение от khrisanfov

    Наверное имелось ввиду "алгоритм минимизации контрфактических сожалений" (Counterfactual Regret Minimization, CFR).

    khrisanfov, он произносит algorithm вместо minimization

     

    видимо, пропустил слово, добавим сейчас в русском тексте

    Ответить Цитировать
    2
  • Сообщение от GR25

    Сегодня, оно нас в покер обыгрывает, а завтра решит судный день устроить. Программист хуев.

    А почему по-умолчанию считается что сильный (т.е. настоящий) искусственный интеллект обязательно несет угрозу человечеству? Далеко не факт. 

    Здесь будет скорее угроза что ИИ позже , спустя время, может перестать помогать.

    Принимая во внимание тот факт, что это будет самое умное существо на планете (которая прочитает все книги и просмотрит весь контент и т.д.) я считаю что не должно быть ничего криминального. Ты много знаешь образованных и культурных людей (например среди профессоров), которые способны творить жестокие убийства?

    Вот примерно так оно будет

    https://www.youtube.com/watch?v=pggioNclMO0

    https://www.youtube.com/watch?v=IZexCYKzdOE

    Ответить Цитировать
    0
  • Листопад, Согласен, это стереотип моего поколения, росшего на фильмах вроде Терминатор 2. Угрозу человечеству несет само человечество. И даже если пофантазировать о сильно развитом ИИ, то все равно у одного или группы людей его создавших, будет над ним власть и в случае всеобщего звездеца, будут виноваты они, а не ИИ.

    На счет "образованных и культурных людей, которые способны творить жестокие убийства" - правительство (наверное любого) государства. С профессурой, к сожалению, не знаком ни чего сказать не могу, кроме того, что один профессор создал атомную бомбу.

    Ответить Цитировать
    2
  • "Бот легко обыграет человека в любой вид инвокерапокера".

     

    Фух, блин, чего только не почудится....

    Ответить Цитировать
    0
  • Сообщение от Листопад

    Ты много знаешь образованных и культурных людей (например среди профессоров), которые способны творить жестокие убийства?

     

    Доктор Менгеле? Разработчики иприта, ядерного оружия, etc.

     

    Рабовладельцы северной и южной Америк. Устроители человеческих зоопарков в Бельгии. Ну это та, навскидку.

    Ответить Цитировать
    3
  • Если раньше Либратусу нужна была мощность тысяч компьютеров, то новый алгоритм позволил запустить его на любом ноутбуке.

    это, конечно, печально - получается бот с технической точки зрения доступен практически каждому ((((

    добавились подозрения в отношении некоторых людей, которые через чур уж резко на хай лимиты перешли )))

    Ответить Цитировать
    1
  • Странно, что сам автор бота упоминает 1000 комбинаций и с некоторым удивлением говорит про вариантивность сайзинга..

     

    В покере помимо собственно карт по сути такое же значение имеют стеки всех участников раздачи и сайзинги (с шагом 1бб) по отношению к каждому участнику, возможному дереву вариантов на каждый 1 бб размера ставки. Это очень и очень большое число вариантов.

    Это в упрощенной схеме есть 2\3 банка, полбанка итд.  А в расширенной может быть и микро-бет (5-10%) и мини-бет итд до биг овербета 10 банков.  И даже овербет в 10 банков и овербет в 10 банков + 1 бб - это _разные_ овербеты.  И это все в отношении банка, стека своего и стека других участников раздачи.

    Т.е. по сути мы чисто карточные вариации перемножаем на те вариации которые дают комбинации стеков\сайзингов с шагом 1 бб для каждого стека\остатка стека. Как бы там триллион вариаций не вылез...

    Ответить Цитировать
    0
1
Зачем регистрироваться на GipsyTeam?
  • Вы сможете оставлять комментарии, оценивать посты, участвовать в дискуссиях и повышать свой уровень игры.
  • Если вы предпочитаете четырехцветную колоду и хотите отключить анимацию аватаров, эти возможности будут в настройках профиля.
  • Вам станут доступны закладки, бекинг и другие удобные инструменты сайта.
  • На каждой странице будет видно, где появились новые посты и комментарии.
  • Если вы зарегистрированы в покер-румах через GipsyTeam, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.