GNU Chess
GNU Chess | |
---|---|
Тип | Шахматный движок |
Разработчик | Проект GNU |
Написана на | C++[2] |
Операционные системы | Linux, OS X и др. UNIX-подобные, Windows |
Языки интерфейса | Русский и др. |
Первый выпуск | 1984 |
Аппаратные платформы | Intel P6[3] и x86-64[3] |
Последняя версия | 6.2.9[1] (14 июля 2021 ) |
Репозиторий | git.savannah.gnu.org/cgi… |
Лицензия | GNU GPL |
Сайт | gnu.org/software/… (англ.) |
Медиафайлы на Викискладе |
GNU Chess (/ˈgnuː ʧɛs/) — бесплатная свободная шахматная программа, написанная на языке C++.
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) — свободно распространяемый коммуникационный протокол, позволяющий движкам шахматных программ взаимодействовать с их графическим интерфейсом.
Примечания
[править | править код]- ↑ Antonio Ceballos. GNU Chess 6.2.9 released (англ.). lists.gnu.org (9 мая 2020). Дата обращения: 14 июля 2021. Архивировано 10 мая 2021 года.
- ↑ The gnuchess Open Source Project on Open Hub: Languages Page — 2006.
- ↑ 1 2 Guix
Ссылки
[править | править код]- GNU Chess (англ.). — Официальный сайт. Дата обращения: 31 октября 2008. Архивировано из оригинала 17 февраля 2012 года.
- M. Shuaib Khan. Chess engines for Linux (англ.). VA Software (22 марта 2007). Дата обращения: 31 октября 2008. Архивировано 26 июня 2007 года.