Вскоре Фоллек дал
Начиная с 2004 года благодаря появлению дешевого программного обеспечения, позволяющего желающим самостоятельно конструировать ботов, роботы-картежники становятся все популярнее. Меняя настройки, игрок может решить, каким инструкциям будет следовать программа. Боты с хорошо подобранными инструкциями способны победить даже нескольких соперников. Но, как убедился Фоллек, программы, ограниченные жестким сводом правил, в принципе не способны играть лучше своих создателей. А судя по результатам этих ботов на покерных сайтах, большинство их авторов – игроки довольно посредственные.
Поскольку тактика, основанная на наборе жестких правил, оказалась далека от совершенства, авторы покерных программ обратились за помощью к теории игр. Однако найти оптимальную тактику для техасского холдема непросто. Из-за большого количества возможных комбинаций рассчитать идеальную стратегию на основе равновесия Нэша очень трудно. Решить эту проблему можно методом упрощения, создав условную версию игры. Так же как «урезанный» покер помог фон Нейману и Фергюсону понять основной принцип игры, упрощение способно подсказать тактику, близкую к подлинно оптимальной стратегии.
Самый распространенный прием заключается в сборе и группировке схожих рук по «корзинам»[3]
. Например, можно просчитать вероятность того, что определенная пара карманных карт побьет другую пару карт, и объединить ее с руками, имеющими схожий потенциал. Подобная аппроксимация позволяет существенно снизить число потенциальных сценариев, нуждающихся в анализе.Группирование данных встречается и в других азартных играх. Поскольку главное в блек-джеке – максимальное приближение к числу 21, – знание достоинства следующей карты дает игроку существенное преимущество. Бетторы, которые занимаются подсчетом карт, пытаются угадать достоинство следующей карты, отслеживая, какие карты крупье уже раздал и, следовательно, какие остались в колоде. Но в казино при игре используется до шести колод одновременно, и запоминать появление каждой карты бессмысленно. Вместо этого счетчики карт группируют их по категориям. Например, они разбивают их на три корзины – старшие, младшие и нейтральные. Во время игры они следят за тем, карты какого типа уже выходили. Если сдается старшая карта – счетчик прибавляет в уме единицу, если младшая – вычитает.
В блек-джеке группирование данных обеспечивает лишь приблизительный подсчет: чем меньше корзин использует игрок, тем меньше точность прогноза. Идеальной стратегии группирование не дает, оно скорее приводит к «почти равновесным стратегиям», из которых одни ближе к оптимуму, чем другие. Так же как отклонение от чистой стратегии дает пенальтистам больше шансов забить мяч, эти не-совсем-идеальные покерные стратегии, каждая по-своему, помогают игроку победить, меняя тактику.
Но даже с учетом группирования данных разработчику почти равновесной покерной стратегии предстоит много работы. Справиться с ней помогает техника «минимизации сожалений». Вначале мы создаем виртуального игрока и заставляем его придерживаться случайно выбранной первоначальной стратегии. Например, в заданной ситуации он может половину игры сбрасывать карты, а вторую половину – делать ставки, при этом ни разу не пропуская ход. Затем мы моделируем множество игр и предоставляем нашему герою возможность корректировать стратегию на основе сделанных ошибок. Скажем, если противник преждевременно сбросил карты, игрок пожалеет, что сделал большую ставку. Спустя какое-то время виртуальный покерист минимизирует количество своих сожалений и приблизится к оптимальной стратегии.