SARTRE - Разработка покерного робота
SARTRE агент основан на использовании памяти для принятия решений в хедз-ап играх [3]. Этот робот использует историю рук, сыгранных предыдущими игроками для принятия собственных решений, вместо использования системы, принимающий решения относительно равновесных стратегий. Она использует историю раздач, сыгранную сильными игроками, для обучения и принятия дальнейших решений. База знаний этого агента основана на предыдущих играх AAAI CPC AAAI CPC - соревнование по покеру (Техасский холдем) среди компьютеров. . В 2008 робот Университета Альберты Hyperborean выиграл эти соревнования. База данных SARTRE была построена как раз на истории рук агента Hyperborean.
Каждый раунд торговли этого клиента представляется как путь в дереве, которые проверяет все возможные комбинации до текущего узла. Представляя два различных дерева, автор сделал попытку представить их разницу и объяснить свой выбор одного из двух путей. На рисунке 3 представлено это дерево, на котором "с" означает call, "f" - fold, and "r" - raise.
Рис. 3. Дерево последовательности действий [3]
Возможные комбинации рук данного агента разбиты на 10 возможных категории, а именно: старшая карта, пара, две пары, тройка, стрит, флеш, фулл-хаус, каре, стирт флеш, роял флеш. После того как на столе появляются первые три карты, данный агент уже может сформировать свою руку и определить ее силу. После терна и ривера данная рука может быть улучшена, так как заранее не было известно какие карты выйдут на стол. Также данный робот в процессе игры различает такие комбинации как стирт и флеш на предмет их старшинства. Например, если получился флеш, и туз, который также участвует в этой комбинации находится не на столе, а у вас на руках, то система также это определяет. Это позволяет ей делать выводы о том, что у вас самый старший флеш из возможных и наоборот.
База знаний SARTRE основана на играх проведенных на CPC роботом Hyperborean. После каждой сыгранной руки, информация о ней добавлялась в базу SARTRE. Всего в данной базе накопилось около миллиона всевозможных случаев, которые включали 201335 различных вариантов префлопа, 300577 флопа, 281559 терна и 216597 ривера. Во время игры, когда ход переходил в агенту SARTRE, он обращался к своей базе знаний, и на их основе выбирал наиболее похожие на текущую ситуацию. После чего строилось дерево вероятностей, такое как на рисунке 3, и SARTRE принимал решение, основываясь на вероятностях в этом дереве.
Для тестирования данного агента, он участвовал в играх против робота FellOmen2 FellOmen2 - робот, занявший второе место на соревнованиях CPC 2008. В основе стратегии данного робота лежит эволюционный метод нахождения равновесного решения. и BluffBot BluffBot - робот, занявший второе место на соревнованиях CPC 2008. Стратегия игры этого агента основана на поиска равновесного решения по Нэшу.. Всего было проведено 6 игр, каждая из которых состояла из 6000 раздач против FellOmen2. Каждая такая игра, состояла из 3000 раздач, в которых роботам выдавались определенные карты, для снижения элемента случайности. После 3000 раздач, память обоих роботов очищалась, и следующие 3000 раундов, им выдавались на руки карты, другого робота. Таким образом, после сыгранных 36000 раздач SARTRE в среднем проигрывал 2.92 больших блайндов каждые 100 раздач. Как уже было отмечено, агент SARTRE играл по истории раздач робота Hyperborean, который в свою очередь выиграл матч против FellOmen2. Разработчики, говоря о поражении SARTRE против FellOmen2, ссылались на недостаточно точную работу алгоритма по определению категории рук и достаточно грубую выборку похожих вариантов дальнейших действий.
Что касается игр против BluffBot, то всего было сыграно 30000 раздач в обычном режиме, и результаты получились положительными. В среднем SARTRE выигрывал 7.48 больших блайндов каждые 100 раздач.
Исходя из информации о приведенных выше аналогах, можно сделать вывод, что существует два основных принципа, построения стратегии игры покерного агента:
- 1. Основанная на поиске равновесного решения используя текущую информацию о раздаче; 2. Основанная на запоминании история раздач, для дальнейшего применения на практике.
По приведенным выше аналогам, нельзя с уверенностью сказать, какая из данных стратегий является более выигрышной - моделирование поведения игрока по истории раздач или использование равновесных стратегий. Скорее всего, качество стратегии зависит от качества ее реализации. Основной задачей данной работы является реализация и оценка эффективности стратегии игры в Техасский холдем, основанной на методах теории вероятностей, предложенных различными авторами.
Похожие статьи
-
GS1 - Разработка покерного робота
GS1 агент использует теорию игр для игры в хедз-апХедз-ап - является способом игры в покер, когда за столом играет только два человека. Кроме того,...
-
Обзор имеющихся аналогов - Разработка покерного робота
В наши дни тема большое число людей всерьез занимаются разработкой покерных роботов, но каждый это делает для своих собственных целей. Однако разработка...
-
Введение - Разработка покерного робота
Сегодня автоматизированные системы применяются практических во всех сферах нашей жизни. В связи с этим в качестве темы выпускной квалификационной работы...
-
Программный алгоритм визуальный гаусс В программу включены следующие процедуры: "gauss1", "gaussj", "New1Click", "Button1Click", "Button2Click",...
-
Правила Техасского холдема Блайнды. В Техасском холдеме баттоном (от англ. "button" - "кнопка") отмечается номинальный дилер раздачи. Перед началом...
-
В ходе разработки было создано пять форм, обеспечивающих взаимодействие между пользователем и приложением: - начальное окно выбора учебного года, курса и...
-
Организация парольной защиты - Проектирование и разработка базы данных "Прокат автомобилей"
По мере того как деятельность организаций все больше зависит от компьютерных информационных технологий, проблемы защиты баз данных становятся все более...
-
Введение - Разработка корпоративной сети на основе технологий xDSL
Корпоративный сеть интерфейс Любая организация - это совокупность взаимодействующих структурных элементов (подразделений), каждый из которых может иметь...
-
Чтобы не заканчивать эту главу на такой печальной ноте, я решил включить в последний раздел избранные максимы о построении экспертных систем, почерпнутые...
-
Обоснование выбора СУБД База данных - это совокупность сведений о реальных объектах, процессах, событиях или явлениях, относящихся к определенной теме...
-
В данной главе рассмотрены основные проблемы, решение которым будет предложено в данной работе. Помимо этого, описаны основные понятия и принципы...
-
Задача составления расписаний являются предметом научных исследований с середины прошлого века. Область их применения включает в себя различные сферы...
-
Введение - Разработка объектов Хранилища
Ни для кого не секрет, что проблема хранения и обработки информации является одной из самых важных на данный момент во всем мире. Особенно актуальной эта...
-
Рис. 7 Пример двоичного дерева поиска Двоичное дерево поиска (binary search tree, BST) -- это двоичное дерево, для которого выполняются следующие...
-
Данный процесс отражает регламент работ по разработке программных продуктов в рамках учебных проектов, который будет использован при создании исполяемой...
-
Основание для разработки Основанием для разработки является задание, выданное преподавателем Плужниковым И. М. на курсовой проект от 14.01.2016,...
-
Предметная область IoT (Интернет вещей) - это сеть физических объектов - устройств, транспортных средств, зданий и других вещей со встроенной...
-
Домашнее использование чаще всего представляет из себя набор сенсоров, собирающих информацию об индивидах, которые напрямую владеют этой сетью. Это могут...
-
Для реализации вышеописанных пользовательских историй опишем функциональные требования, на которые будет опираться процесс разработки. Во-первых, самый...
-
В программе присутствуют следующие основные модули: - PlatformManager - DeviceManager - ScenariosManager - ScenarioEngine - ExportManager - ImportManager...
-
CMS Joomla - Разработка интернет-магазина компьютерной техники
Название Joomla появилось сравнительно недавно. Сегодня так называется популярная система управления содержимым (CMS), она написана на PHP - и...
-
Разработка концептуальной модели АИС - Проектирование автоматизированной информационной системы
Любая деятельность компании отражается в документах, и, чтобы улучшить качество рабочих бизнес-процессов, необходимо улучшить документооборот, т. е....
-
Разработка интерфейса, Разработка запросов - Высокоуровневые методы информатики и программирования
Программа, будет начинать работу с вывода главной формы, на которой будет располагаться самое главное меню, т. е. другими словами "панель навигации"....
-
Введение - Разработка интернет-магазина компьютерной техники
Сайт (веб-сайт англ. website, от web -- паутина, "веб" и site -- "место") - это место во всемирной сети (интернете), которое имеет свой адрес,...
-
Заключение - Методика моделирования основных процессов разработки программного обеспечения
В рамках данной работы был рассмотрен процесс разработки ПО как части учебных проектов в НИУ ВШЭ - Пермь. Учебные проекты отличаются от реальных,...
-
3.1 Описание программного модуля Jadex - это агент, ориентированный на собственный механизм принятия решений, взаимодействуя с XML и Java файлами,...
-
Обзор рынка Dashboard-приложений - Разработка аналитического приложения
На рисунке ниже (рис.4.3) показано соотношение приложений на "магическом секторе Гартнера" ( Gartner's magic quadrant). Рис. 4.3 Положение рынка...
-
Общие требования Прежде чем начинать формулировать требования к пользовательскому интерфейсу, было принято решение, что необходимо ознакомиться с...
-
СУБД Teradata имеет встроенный оптимизатор, который отвечает за выбор: интерфейс teradata парсер ? Способа доступа к данным - будет ли обращение к...
-
Введение - Разработка программного средства, позволяющего оптимизировать SQL-скрипты
Актуальность. В настоящее время трудно найти фирму, которая не использовала бы базы данных в той или иной форме - учет сотрудников, клиентов, продаж....
-
CSS - Разработка сайта рекламного агентства "ART"
CSS (Cascading Style Sheets) - это еще один язык программирования, называемый еще формальным языком, который применяется для описания внешнего вида...
-
Серверная программа, Инструменты разработки - Визуализация графа цитирования
Серверная программа - это веб-сервер, необходимый для получения и хранения графов. Сервер может создавать графы цитрования из библиотеки IEEE Xplore...
-
Пользовательский интерфейс должен позволять заводить в базе данных информацию о новых охранниках, обслуживаемых объектах, автоматизировать составление...
-
Разработка сайта, Среда разработки web-сайта - Разработка сайта для компании
Среда разработки web-сайта При разработке web-сайта используются: - HTML - язык разметки web-страниц; - CSS - формальный язык описания внешнего...
-
Архитектура построения баз данных - Разработка базы данных
СУБД имеют свою архитектуру. В процессе разработки и совершенствования СУБД предлагались различные архитектуры, но самой удачной оказалась трехуровневая...
-
Основные понятия баз данных. Цели использования баз данных - Разработка базы данных
В широком смысле слова база данных (БД) - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области. Для удобной...
-
Типы и виды сайтов - Разработка Web-сайта предприятия (ООО "Полтава")
Сегодня во всемирной паутине содержится огромное количество самых разных сайтов. Все они отличаются по большому числу параметров. Если Вы решили создать...
-
Greenstone - это цифровая библиотека, которая обеспечивает новый способ организации информации и делает ее доступной через Интернет. Коллекции информации...
-
Введение, Общие сведения о локальных сетях - Разработка локальной сети для ОАО "Корпорация Монстров"
Общие сведения о локальных сетях Локальный сеть вычислительный сервер Локальная Сеть (локальная вычислительная сеть, ЛВС) - это комплекс оборудования и...
-
Web of Science -- платформа, на которой размещены авторитетная политематическая реферативно-библиографическая и библиометрическая базы данных. В ней...
SARTRE - Разработка покерного робота