Студент Мэттью Лаи из Имперского колледжа в Лондоне создал шахматную компьютерную программу Giraffe, которая полностью построена на принципах машинного обучения и не использует вручную настроенные инструменты для анализа партии, пишет портал N+1. Описание программы опубликовано на сайте arXiv.org.
Программа Giraffe обучалась шахматам, играя сама с собой, и за рекордные 72 часа достигла уровня, соответствующего двум верхним процентам рейтинга по версии Международной шахматной ассоциации.
При создании программы ее автор использовал два подхода, которые принципиально отличают Giraffe от других шахматных программ. Во-первых, для оценки позиции на доске алгоритм автоматически отбирал наиболее значимые признаки в ходе игр с самим собой. При этом программа не имела доступа к предварительно заложенным рекомендациям, созданным при помощи шахматных экспертов или на основании анализа большого числа партий.
Во-вторых, в Giraffe был применен качественно новый подход к анализу дерева решений. Обычно в ходе типичной партии может возникнуть огромное число допустимых вариантов хода. Для анализа всех таких вариантов необходимы вычислительные мощности, доступные только на суперкомпьютерах, поэтому, чтобы снизить объем вычислений, алгоритм на каждом ходе анализирует лишь часть дерева решений.
Существующие шахматные программы применяют метод, основанный на максимальной длине ветвей. Например, перед каждым ходом обычная программа анализирует все доступные ветви не далее чем на 10 ходов.
Создатель Giraffe вместо длины ветви использовал значение вероятности того, что данная ветвь приведет к наиболее длинной цепочке ходов. Таким образом, анализировались только те ветви, в которых эта вероятность была выше определенного порога. Применение такого метода объясняется тем, что поиск наилучшего хода предполагает, что противник также выберет наилучший ход, и в результате партия будет продолжаться настолько долго, насколько возможно.
Программа Giraffe обучалась шахматам в течение 72 часов, после чего прошла проверку на специальном наборе из 15000 позиций на доске, в котором все доступные ходы проранжированы от 0 до 10, где 10 соответствует лучшему ходу. По итогам теста программа заняла второе место среди девяти популярных алгоритмов для настольных компьютеров, обнаружив 9641 "правильный" ход из 15000 возможных. Первое место в этом рейтинге заняла программа Stockfish 5, которая нашла 10505 наилучших решений.
По словам Лаи, основная цель разработки Giraffe заключалась в том, чтобы создать программу, способную обучаться независимо от "ручных" настроек или участия экспертов-шахматистов. Предполагается, что обобщенный подход к обучению позволит Giraffe столь же эффективно играть и в другие настольные игры.