т, что для шашек решение все же было найдено. Это произошло в 2007 году и потребовало почти двадцати лет работы сотен компьютеров, которые все эти годы перебирали возможные комбинации ходов в игре. Как выяснилось, в шашках, если оба соперника играют без ошибок, партия всегда закончится ничьей. Удастся ли благодаря прогрессу технологий и программирования найти аналогичное решение для шахмат, а может быть, и для го? Время покажет.
Зато мы точно знаем, что игры типа шахмат и го, а также более простые, вроде крестиков-ноликов или точек и квадратов, – это “игры с совершенной информацией”: обдумывая ход, участник располагает всей информацией, необходимой, чтобы определить, какие ходы хорошие, а какие плохие. Никакой неопределенности, все на виду. А это значит, что в принципе, при наличии неограниченных ресурсов памяти и времени, такие игры можно просчитать. Но есть и другие игры, такие как покер, где не вся информация участникам доступна. Обдумывая свой ход, игрок в покер не знает, какие карты на руках у соперников – а ведь это решающий фактор, определяющий исход партии. Новичку, противостоящему в турнире профессионалу, конечно, может повезти – соберет роял-флеш да и выиграет партию. Но при длительной игре с большим количеством партий более опытный участник, знающий, когда делать ставку, а когда пасовать, в среднем выигрывает чаще и более крупные суммы, чем новичок.
Прежде чем говорить о просчитывании игр, подобных покеру, необходимо определиться, что же означает “просчитать”, когда речь идет об играх без “совершенной информации”. Ни один компьютер не может гарантировать стопроцентного выигрыша в покере (если не будет жульничать) – всегда ведь есть вероятность, что человеку придет роял-флеш. Поэтому “просчитыванием” в случае с покером будет выработка компьютером такой стратегии, при которой он в среднем окажется в выигрыше максимальное количество раз.
В покере еще больше усложняет задачу просчитывания возможность блефа и то, что обычно в турнирах игроков за столом значительно больше двух. Когда вместе состязаются компьютер и несколько человек, люди вполне могут объединиться против машины (причем, скорее всего, так и сделают), стремясь поставить ее в невыгодное положение. И пусть в подобной ситуации выигрыш каждого из живых участников будет менее ощутимым, чем если бы он действовал только сам за себя, – зато команда выиграет больше.
И все же для одной из разновидностей покера – техасского холдема для двух участников с лимитом – ученые уже разработали программу, которую невозможно победить в длинной серии игр. Ее появление в 2014 году стало важной вехой: впервые был найден алгоритм, способный просчитать сложную игру, в которой часть информации участникам недоступна. Эта скрытая информация и случайность розыгрыша карт не дают компьютеру выигрывать каждый раз. Но в серии из множества партий у человека практически нет шансов (так же как шахматисту, например, практически невозможно превзойти программу Stockfish) – так что эту версию игры мы вправе объявить просчитанной. Программа может не только помочь участникам усовершенствовать навыки игры; предполагается, что используемый в ней подход найдет применение в здравоохранении и системах безопасности.
Из примера с покером может возникнуть впечатление, что во всех играх с “несовершенной информацией” имеется элемент случайности, никак не зависящий от участников. Но это не так. Во всем знакомой игре “камень, ножницы, бумага” значение имеет только то, какие фигуры показывают игроки: никакой случайности, все по воле состязающихся. И все же информация в ней несовершенна. Суть игры, в которой участники делают синхронные жесты руками, ничуть не изменится, если те будут находиться в разных помещениях и записывать выбираемые фигуры на бумажке, не зная о решениях оппонента.
В игре с совершенной информацией всегда есть какая-то “чистая” стратегия – некая последовательность ходов, которая приводит к наиболее благоприятному исходу. Скажем, в любой шахматной позиции существует лучший ход или, чаще, серия выигрышных ходов, и всякий раз, когда такая позиция возникает на доске, оптимальнее разыгрывать именно их. В случае с игрой “камень, ножницы, бумага” все с точностью до наоборот. Чистая стратегия здесь не работает: если, например, каждый раз показывать “камень” или в одной и той же последовательности “камень”, “ножницы” и бумагу”, вас в два счета обыграют. Лучше всего в подобных играх использовать так называемую смешанную стратегию, при которой в каждой из возникающих позиций с разной вероятностью предпринимаются различные действия. Просчитывание такой игры, как “камень, ножницы, бумага” или покер на двоих, заключается в нахождении оптимальной смешанной стратегии, гарантирующей наиболее высокую вероятность победы. Стратегия “всегда показывать «камень»” будет иметь вероятность выигрыша 100 %, если оппонент настолько несообразителен, что всегда будет разыгрывать “ножницы”. С другой стороны, если второй игрок быстро раскусит первого (а так, скорее всего, и будет) и станет все время показывать “бумагу”, то вероятность выигрыша с помощью “каменной” стратегии тут же упадет до нуля. Так что нет ничего удивительного в том, что игра “камень, ножницы, бумага” была просчитана, причем решение совершенно тривиально. Оптимальная стратегия: треть времени разыгрывать “камень”, треть – “бумагу” и треть – “ножницы”. Если считать ничью за полпобеды, вероятность выигрыша составляет как минимум 50 % – это лучшая из всех возможных стратегий. Есть, конечно, эксперты и более высокого уровня, но они полагаются не столько на теорию игры, сколько на психологию, извлекая выгоду из того факта, что человеку, как правило, плохо удаются по-настоящему случайные ходы, как мы уже видели в третьей главе. В целом, лучшая стратегия в играх с несовершенной информацией – смешанная.
В таких играх есть понятие, которое называют равновесием Нэша – в честь американского математика и экономиста Джона Нэша, внесшего важный вклад в развитие теории игр (ему даже была посвящена книга – а позже и фильм – “Игры разума”). Сильное равновесие Нэша означает, что у каждого участника есть своя стратегия, любое отклонение от которой (в случае если остальные этого не делают) ухудшает его шансы на победу. Есть также слабое равновесие Нэша, когда игрок может отклониться от выбранной стратегии и никак не изменить этим свои шансы, однако невозможно изменением стратегии улучшить свою позицию в игре. Равновесие Нэша – ключевое понятие в теории игр.
В игре с совершенной информацией равновесие Нэша возникает, когда обе стороны придерживаются оптимальной стратегии. Оно может быть сильным или слабым, в зависимости от того, существует ли одна или несколько оптимальных стратегий. В игре с несовершенной информацией ситуация та же. Однако вполне возможно существование нескольких равновесий Нэша. Чтобы определить, все ли мы нашли, нам потребуется еще одно понятие – игра с нулевой суммой (частный случай игры с постоянной суммой).
В игре с нулевой суммой один из участников выигрывает ровно столько, сколько проигрывает другой. Более общий случай – игра с постоянной суммой, в которой общий фонд не меняется. Один из примеров – шахматы. Участники могут сыграть вничью, заработав каждый по пол-очка, или один из них выиграет – и тогда победитель получает одно очко, а проигравший – ничего. А вот футбол, в отличие от шахмат, нельзя назвать игрой с постоянной суммой, поскольку в случае ничьей каждая из команд зарабатывает по очку, но если одна из них побеждает, то она получает три очка, а проигравшая – ноль. Сумма очков, таким образом, может быть 2 или 3. Все игры с постоянной суммой можно превратить в игры с нулевой суммой, добавляя или отнимая некоторое количество очков. Например, если бы у шахматных соперников удерживалось по пол-очка, то сумма игры была бы нулевой. По этой причине результаты, применимые к играм с нулевой суммой, обычно распространяются и на игры с постоянной суммой.
В играх с нулевой или постоянной суммой равновесия Нэша возникают только тогда, когда оба участника используют оптимальную стратегию. В играх же, не относящихся к этой категории, дело обстоит иначе: в них может быть множество других равновесий Нэша. В играх с непостоянной суммой на передний план выходит другой фактор – оптимальность по Парето. Оптимальным по Парето считается такое множество стратегий, в котором невозможно изменить их все в пользу одного из игроков, не ухудшив при этом положение кого-то из других участников. В игре с нулевой суммой любое множество стратегий оптимально по Парето. Но в общем случае это не так. Даже равновесие Нэша может не быть оптимальным по Парето, что демонстрирует нам проблема, известная как “дилемма заключенного”.
Двое заключенных по отдельности осуждены за преступление, предусматривающее тюремный срок в один год. Но кроме того, есть свидетельские показания, согласно которым оба причастны к более серьезному преступлению, грозящему сроком в шесть лет. Каждому из заключенных предоставляют выбор: молчать или тайно сдать подельника. Причем ни один из них не узнает о том, что сделал другой, пока не будет вынесен окончательный приговор. Если оба предадут друг друга, каждый получит по четыре года тюрьмы (по году за первое преступление и по три – за второе, более серьезное). Если только один из них предаст второго, он выйдет на свободу, а второй получит полные семь лет за оба преступления. Если все молчат, обоих приговаривают только на один год – за менее серьезное преступление. Удивительно, но получается, что, как бы ни поступил один, другому всегда выгоднее предать его, чем молчать. Единственно возможное равновесие Нэша в этом случае – взаимное предательство и по четыре года тюрьмы для каждого. Но такой вариант не оптимален по Парето, поскольку лучшим выходом для обоих было бы смолчать и отсидеть всего по году. Дилемму заключенного можно разыгрывать подряд сколько угодно, всякий раз вырабатывая стратегию на основе предыдущего опыта (этот вариант так и называется – повторяющаяся дилемма заключенного), тогда задача становится еще сложнее. Лучшие стратегии для повторяющегося варианта обычно предусматривают упорное молчание, при условии что вторая сторона поступает так же, и ответ предательством на предательство. Такие стратегии позволяют игрокам, с одной стороны, получить преимущество оптимальности по Парето в противостоянии друг другу, а с другой – избежать наихудшего исхода, делая выбор в пользу равновесия Нэша в тех случаях, когда ясно, что стратегия второго игрока – предательство.