GNU Chess
GNU Chess (/ˈgnuː ʧɛs/) — бесплатная свободная шахматная программа, написанная на языке C++.
GNU Chess | |
---|---|
Тип | Шахматный движок |
Разработчик | Проект GNU |
Написана на | C++[1] |
Операционная система | Linux, OS X и др. UNIX-подобные, Windows |
Языки интерфейса | Русский и др. |
Первый выпуск | 1984 |
Аппаратная платформа | Intel P6[2] и x86_64[2] |
Последняя версия | 6.2.9[3] (14 июля 2021 ) |
Лицензия | GNU GPL |
Сайт | gnu.org/software/… (англ.) |
Медиафайлы на Викискладе |
GNU Chess сама по себе имеет текстовый интерфейс, и для комфортной игры нужно использовать одну из графических оболочек, например glChess, XBoard или WinBoard, PyChess.
Поиск следующего хода
Основан на модификации профессора Тони Марсланда, внесённой им в алгоритм альфа-бета минимакса, и называемой Поиском Основных Отклонений (Principal Variation Search — PVS). Этот алгоритм работает надёжно и достоверно.
Оценка позиции начиная с 5-х версий программы немного отличается от более ранних. Ранние версии использовали таблицы «фигура-поле» с неполной оценкой конечных узлов (end-leaf). Это таблицы, заполненные значениями, которые соответствуют важности присутствия фигур на данном поле. Таблица заполнялась один раз в начале поиска хода.
Недостаток таблиц «фигура-поле» в том, что информация обычно становится менее и менее значимой по мере роста глубины поиска, потому что позиция на доске меняется слишком быстро. С увеличением быстродействия компьютеров становится возможен всё более глубокий поиск, и таким образом таблицы могут вводить программу в заблуждение, выдавая ходы, не соответствующие позиции.
Совсем недавно произошёл возврат к идее, которую поддерживают разработчики GNU Chess: полный обсчёт конечных узлов. Далее, GNU Chess использует битовые доски для представления свойств шахматной доски. Это напоминает нам прошлое на заре компьютерных шахмат, когда гигантские электронно-вычислительные машины 1960-х использовали растровые изображения (битовые карты) для описания позиций.
При оценке хода помимо стандартных оценок полученных, исходя из комбинирования битовых досок, используются более ресурсоёмкие, но очень важные вычисления возможных перемещений короля и пешек.
Рейтинг
GNU Chess не имеет официального рейтинга Эло. На бесплатном шахматном интернет-сервере freechess.org, блиц-рейтинг GNU Chess версии 5.04, работающей на компьютере на базе процессора Cyrix 166 MHz (эквивалент Pentium 200 MHz), с настройками по умолчанию превысил 2100 пунктов (рейтинги сильнейших шахматистов превышают 2700).
GNU Chess на других платформах
Разработчики GNU Chess получали отзывы, что их детище действительно компилируется и запускается также на платформах DOS и OS/2 c использованием инструментария EMX.
Компьютерные шахматы на основе GNU Chess
- glChess (входящие в набор игр GNOME).
- Chess (Apple)
См. также
- Компьютерные шахматы
- UCI (англ. Universal Chess Inteface) — свободно распространяемый коммуникационный протокол, позволяющий движкам шахматных программ взаимодействовать с их графическим интерфейсом.
Примечания
- The gnuchess Open Source Project on Open Hub: Languages Page — 2006.
- Guix
- Antonio Ceballos. GNU Chess 6.2.9 released (англ.). lists.gnu.org (2020-05-9). Дата обращения: 14 июля 2021.
Ссылки
- GNU Chess (англ.) (недоступная ссылка). — Официальный сайт. Дата обращения: 31 октября 2008. Архивировано 17 февраля 2012 года.
- M. Shuaib Khan. Chess engines for Linux (англ.) (недоступная ссылка). VA Software (22 марта 2007). Дата обращения: 31 октября 2008. Архивировано 26 июня 2007 года.