Одна из недавних статей Ноама и Туомаса, в которой они описали методы решений игр с неполной информацией [PDF], была признана лучшей на ежегодной конференции NIPS-2017 (Neural Information Processing Systems), а другая, посвященная победе «Либратуса» над профессионалами, была опубликована в журнале Science.
– Планируете ли вы замахнуться на 6-макс?
– Короткий ответ: наши методы будут работать и в 6-максе (покажут сверхчеловеческие результаты). Решение игр с тремя и более участниками – интересная научная задача, но покер – не самая оптимальная область для этого. Есть игры, которые подходят лучше.
Подробный ответ: игры с тремя и более участниками предоставляют множество интересных теоретических и практических научных задач для существующих подходов. Начать стоит с того, что приближенное решение равновесия Нэша больше невозможно просчитать. Даже если вы его найдете, не факт, что захотите по нему играть. В игре для двух человек с нулевой суммой равновесие Нэша гарантирует, что вы не проиграете по ожиданию, вне зависимости от действий оппонента. В играх с 3+ участниками это уже не так. Можно проиграть, даже если вы играли по Нэшу. Поэтому для таких игр нужны новые методы, и важно понять, как в них оценивать эффективность.
При этом все наши методы хорошо себя зарекомендовали в играх для 3 и более человек. У этого есть две основные причины:
1. В покере игроки часто выбрасывают, и чем больше человек за столом, тем выше вероятность, что нужно выбрасывать. В результате большинство банков все равно разыгрываются один на один.
2. В покере нет командной игры. Нельзя объединиться с другим игроком, чтобы обыграть третьего. Это будет сговором и нарушением правил.
Разработчики покерных ботов для работы над игрой (во всяком случае, так они говорят), рассказывали мне, что по этим причинам наши методы применимы и для 6-макса. Для всех популярных разновидностей покера, в которые сейчас играют в онлайне, уже существуют боты (сверхчеловеческий искусственный интеллект). А объективное соревнование в 6-максе устроить практически невозможно, потому что сложно контролировать сговор между людьми (в том числе подсознательный).
– Вы говорите, что игра по Нэшу в игре с 3+ участниками не гарантирует беспроигрышный результат. Разве это возможно? Ведь беспроигрышность – это основа равновесия Нэша.
– Нэш гарантирует отсутствие проигрыша по ожиданию только в игре с нулевой суммой для двух человек. В игре с 3+ участниками равновесие Нэша гарантирует лишь то, что ваш результат не улучшится, если вы в одностороннем порядке измените стратегию. То есть вы можете проиграть, даже если все будут играть по одному равновесию Нэша, потому что соперники могут против вас объединиться (осознанно или нет).
Также может возникнуть «проблема выбора равновесия». Это когда возможны несколько равновесий Нэша, и вы будете играть по одному, а соперники по другому. Поэтому невозможно просто посчитать равновесие Нэша и играть по нему, так как вы не можете быть уверены, что оппоненты будут играть по тому же равновесию. В играх с нулевой суммой для двух игроков этой проблемы не существует.
Один из читателей предположил, что ботам будет гораздо сложнее овладеть омахой.
Ноам Браун с этим не согласен:
– Я подозреваю, что преимущество ИИ над человеком в омахе будет даже больше, чем в холдеме. Дело в том, что ИИ гораздо лучше учитывает блокеры (по крайней мере, такие выводы я сделал в холдеме), а в омахе их влияние еще более существенно. Величина древа игры проблемой не является. В холдеме мы работаем с величинами 10161. Ничего принципиально не изменится, если добавить еще пару нулей.
– С какой частотой «Либратус» выбрасывает тузов на префлопе?
– 0%
– Как думаете, в ближайшие 6 лет боты смогут убить онлайн-покер?
– Да, вероятность этого увеличивается. Но у меня есть некоторые идеи, как выявлять ботов. Так что пока непонятно, к чему приведет эта угроза.
– Сравнимы ли «Либратус» и AlphaZero?
– AlphaZero создан для игр с полной информацией (например, го и шахматы), а «Либратус» – с неполной. Это главное отличие. В играх с несовершенной информацией у игроков могут быть различные секреты и предпочтения. Почти все взаимодействия в реальном мире – это игры с неполной информацией.
При одинаковом объеме данных игры с неполной информацией решить гораздо сложнее, потому что нужно балансировать стратегии в «подыграх». Например, в покере нельзя всегда ставить с хорошими руками, а плохие всегда выбрасывать. А в играх с полной информацией для решения достаточно информации из конкретной подыгры, с другими подыграми его можно не балансировать. В нашем докладе на NIPS-17 и в недавней статье в Science мы предлагаем теоретические варианты решений для подыгр с неполной информацией.
– Это очень субъективно, поэтому я выскажу лишь свое мнение. Не думаю, что в ближайшие 10 лет ИИ сможет написать оригинальную, заставляющую задуматься книгу. Такой ИИ меня очень сильно напугает.
– На решении каких задач/игр вы планируете сосредоточиться в ближайшее время?
– У нас очень много интересных направлений! Какое-то одно мы еще не выбрали. Нас интересуют «полукооперативные» игры. Например, переговоры. У игроков есть стимул работать вместе, но при этом каждый пытается использовать свой потенциал по-максимуму. Существующие методы совершенно не подходят для таких игр, что оставляет обширное поле для исследований. Эту динамику можно оценить во множестве рекреационных игр, например, в «Колонизаторах» (трейдинг) и «Дипломатии» (переговоры).
RTS-игры, например, Dota 2 и Starcraft – тоже очень интересная область. Это тоже игры с неполной информацией, и наши покерные разработки отлично подойдут для создания неэксплуатируемой стратегии, которая сможет стабильно обыгрывать лучших игроков.
Еще одна интересная задача, на мой взгляд – сокращение разрыва между программами типа AlphaZero и «Либратусом». Нам известны очень хорошие способы решения го или шахмат, а также совершенно другие подходы в играх, подобных покеру. Нам необходимо получить единый алгоритм, который будет хорошо играть во все игры. Сейчас это два совершенно разных подхода и непонятно, как эту разницу сокращать.
– Можно ли как-то незначительно модифицировать покер, чтобы он стал неуязвим перед ИИ?
– Отличный вопрос! Судя по нашим исследованиям и беседам с другими разработчиками в этой области, сейчас боты есть во всех популярных видах покера. Омаха тоже в опасности, и даже 9-макс.
Очень эффективным может оказаться введение в игру какого-то элемента полукооперативности. По аналогии с трейдингом в «Колонизаторах» или переговорами в «Дипломатии». Например, формат, в котором у игроков будет возможность поменяться картами. Конечно, большой вопрос, останется ли такая игра покером.
Успешных решений для полукооперативных игр до сих пор не существует. В будущем это будет очень интересной областью исследований, но думаю, что пройдет еще несколько лет, прежде чем мы увидим хорошую производительность в таких играх.
– ИИ играет по равновесию Нэша и ему все равно, как играют оппоненты. Поэтому игроки с низких лимитов не поставят его в тупик, если вы намекаете на это. Не думаю, что будет интересно следить, какой винрейт покажет ИИ, 50BB/100 или 100BB/100.
– В наши планы не входит превращать «Либратуса» в человека. Я поддерживаю защиту живых игроков в покере. При этом «Либратус» – очень интересный соперник. Считаю, что ботам нужно разрешить играть в онлайне при условии, что будет четко указано, что это боты.
– Несколько моментов:
1. ИИ использует множество разных сайзингов и хорошо их балансирует. В арсенале живых игроков обычно один или два вида сайзингов.
2. ИИ использует смешанную стратегию (принимает различные действия с разными вероятностями). Люди, как правило, придерживаются одной стратегии. По этим причинам человеку очень сложно определить диапазон ИИ в сложных спотах, потому что там может оказаться что угодно.
3. ИИ часто использовал необычные сайзинги. В частности, огромные овербеты регулярно ставили людей в тупик. Я потом слышал от профессионалов, что после тех матчей многие топ-игроки стали чаще использовать этот прием.
– Различий много. «Либратус» использует нечто, намного превосходящее PioSOLVER. Последний нельзя применять в подобных соревнованиях по нескольким причинам. (Предупреждаю, что я недостаточно хорошо знаком с PioSOLVER'ом, но постараюсь ответить наилучшим образом.)
1. В PioSOLVER'е человеку необходимо самостоятельно вносить предполагаемые распределения для обоих игроков. «Либратус» определяет их без посторонней помощи.
2. PioSOLVER можно обмануть, если выбрать действия, вероятность которых по равновесию должна быть равна нулю. Например, если вы ставите 10% банка, а PioSOLVER считает такое действие недопустимым, то у него не будет вариантов распределения для вашей руки, и ответы будут лишены смысла. Кажется, в PioSOLVER'е даже есть предупреждение, что ему нельзя верить, если соперник играет «странно». Очевидно, это будет большой проблемой в игре против топ-игроков, перед которыми стоит задача обнаружить уязвимости в стратегии ИИ. У «Либратуса» этого недостатка нет. Даже если вы выберете действия, вероятность которых по равновесию равняется нулю, у него найдется надежный и правильный ответ.
– До соревнования мы не представляли, насколько тяжело будет обыграть лучших игроков. Вместо того, чтобы пытаться угадать, какая производительность нам понадобится, мы собрали все, что смогли. Так в нашем распоряжении появился суперкомпьютер. Думаю, что достичь сверхчеловеческой производительности можно и на обычном компьютере. Винрейт 15ВВ/100 как бы намекает, что можно было обойтись и без суперкомпьютера. Вы правы, пришлось бы пожертвовать точностью некоторых действий и сократить число сайзингов, но это бы вряд ли сильно отразилось на результате.
Мне кажется, что с развитием методов в этой области цена производительности будет падать. Мы наблюдаем впечатляющий прогресс ИИ в играх с неполной информацией. Нет причин ожидать, что в ближайшие годы он замедлится. Думаю, что в течение пяти лет ИИ, сравнимый по мощности с «Либратусом», можно будет запустить на смартфоне.