Шахматный движок
Шахматный движок (англ. Chess engine) — компьютерная программа, предназначенная для расчёта шахматных вариантов.
Содержание |
[править] Интерфейс
Большинство шахматных движков не имеют собственного графического интерфейса пользователя (GUI), но существуют дополнительные приложения, которые его формируют, такие, как XBoard под Linux и WinBoard под Windows.
[править] Протоколы
Интерфейс командной строки GNU Chess стал фактически начальным стандартом, названным Chess Engine Communication Protocol, и он впервые был поддержан в XBoard. Когда XBoard был портирован под операционную систему Windows под названием WinBoard, этот протокол был переименован в «Протокол WinBoard». Протокол WinBoard был самостоятельно модернизирован, и две версии протоколов упоминаются как «Протокол 1 WinBoard» (исходная версия) и «Протокол 2 WinBoard» (более новая версия). Есть другой протокол — универсальный шахматный интерфейс (Universal Chess Interface, UCI). Некоторые программы поддерживают оба протокола, но у каждого из них есть свои сторонники. Протокол Winboard в прошлом был популярен, но в настоящее время стандартом де-факто является UCI, множество разработчиков шахматных программ полагают, что универсальный шахматный интерфейс легче использовать. Некоторые интерфейсные программы (например, Arena) поддерживают оба протокола, тогда как другие поддерживают только один и зависят от дополнений, например, такого, как Polyglot.[1]
[править] Турниры
Результаты компьютерных турниров дают возможность сравнения силы шахматных движков. Вероятно, турниры не содержат достаточного количества игр для точной оценки их силы. Фактически, число необходимых игр между справедливо участвующими программами при соблюдении достоверности достигает тысячи, поэтому на практике в турнирах не используется.[2] Большинство турниров также позволяют использовать любые виды аппаратных средств, таким образом сравниваются только комбинации программ и аппаратных средств.[стиль!]
Исторически, наиболее сильными стали коммерческие шахматные движки. В 2007, 2008 и 2009 годах чемпионат мира по шахматам среди компьютерных программ выиграла Rybka, что было в некоторой степени сбывшимся прогнозом. Если любительская программа выигрывает турнир или выступает хорошо, как например Zappa в 2005 году, то позже программа может стать коммерческой. Титулы, полученные на турнирах после победы, дают престиж и используются для последующего маркетинга.
- Чемпионат мира по шахматам среди компьютерных программ (WCCC)
- Открытый чемпионат Нидерландов по шахматам среди компьютерных программ (ODCCC)
- Интернет-чемпионат по шахматам среди компьютерных программ (CCT)
- Международный чемпионат по шахматам в Падерборне среди компьютерных программ (IPCCC)
- Североамериканский чемпионат по шахматам среди компьютерных программ
[править] Рейтинг-листы шахматных движков
Целью рейтинг-листов шахматных движков является сравнение статистически значимой относительной силы программ. В таких листах проводят многократные игры между программами на стандартных аппаратных платформах, чтобы различия в процессорах не учитывались. Некоторые листы стандартизируют дебютные книги в попытке измерить различие силы только программ. В листах также указываются пределы погрешности оценок. Листы, как правило, постоянно обновляются, обновления к ним выпускаются несколько раз в год, независимо от турниров, которые проходят только раз в год.
Существует много факторов, различающих рейтинг-листы шахматных движков:
- Контроль времени. Более долгий контроль времени, такой, как 40 ходов в течение 120 минут, лучше подходит для определения силы игры в турнире, но отнимает больше времени на тестирование.
- Используемые аппаратные средства и операционная система: 64-битные или 32-битные аппаратные средства, мультипроцессорные или однопроцессорные системы, быстродействие процессоров и объём памяти. Более быстрые аппаратные средства с большей памятью позволяют сильнее играть.
- Настройки параметра расчётов (возможность анализа во время хода соперника).
- Размеры таблиц перестановок (повторяющихся шахматных позиций).
- Настройки дебютных книг (начал шахматных партий).
Различия в этих факторах влияют на результат и усложняют прямое сравнение оценок рейтинг-листов.
На сентябрь 2011 года лучшими шахматными движками в различных листах были (показаны только лучшие версии для каждой программы):
| Рейтинг-лист | Контроль времени (ходы/минуты) |
Год начала |
Последнее обновление |
Движок/ кол-во платформ |
Сыграно игр |
Лучшие три движка | Рейтинг |
|---|---|---|---|---|---|---|---|
| CCRL[3] | 40/40[4] | 2005 | 23 августа 2011 | 1032 | 337 684 | Houdini 1.5a 64-bit 4CPU Rybka 4.1 64-bit 4CPU Stockfish 2.1.1 64-bit 4CPU |
3310 3274 3247 |
| CEGT[5] | 40/20[6] | 2006 | 14 августа 2011 | 926 | 531 817 | Houdini 1.5a x64 6CPU Deep Rybka 4.1 x64 4CPU Critter 1.2 x64 4CPU |
3292 3245 3242 |
| SSDF[7] | 40/120 | 1984 | 11 мая 2011 | 311 | 120 010 | Deep Rybka 4 x64 Deep Rybka 3 x64 Naum 4.2 MP x64 |
3216 3207 3155 |
| WBEC[8] | 40/40 | 2001 | 15 мая 2011 | 226 | 106 614 | Deep Rybka 4 x64 2cpu Stockfish 2.0.1 x64 2cpu Thinker 5.5.4A1 x64 2cpu |
3124 3121 3114 |
Эти рейтинги не имеют прямого отношения к обычным рейтингам ФИДЕ или другим рейтингам шахматных федераций, хотя и посчитаны с использованием системы рейтинга Эло или подобных расчётных методов. За исключением нескольких шахматистов, игравших против шахматных программ, использованных много лет назад SSDF, в настоящее время нет связи между этими рейтинг-листами. В то же время последние матчи человека против программ показали, что лучшие программы по рейтингу находятся на уровне гроссмейстерской элиты и даже превосходят этот уровень.
[править] Компьютерные игры
[править] См. также
[править] Примечания
- ↑ PolyGlot
- ↑ Lo Zibaldone di Nicola: How to test a chess engine?
- ↑ CCRL 40/40 — Complete list. ??? (3 апреля 2009). Архивировано из первоисточника 3 апреля 2012. Проверено 20 апреля 2009.
- ↑ Также доступно: 40 ходов за 4 минуты.
- ↑ CEGT 40/20. Chess Engines Grand Tournament (12 апреля 2009). Архивировано из первоисточника 3 марта 2012. Проверено 20 апреля 2009.
- ↑ Также доступно: 40 ходов за 4 минуты, 40 ходов за 120 минут.
- ↑ The SSDF Rating List. Swedish Chess Computer Association (10 апреля 2009). Архивировано из первоисточника 3 марта 2012. Проверено 20 апреля 2009.
- ↑ BayesianElo Ratinglist of WBEC Ridderkerk. // WBEC. Архивировано из первоисточника 3 апреля 2012. Проверено 20 июля 2008.
[править] Литература
- Корнилов Е. Н. Программирование шахмат и других логических игр. — СПб.: БХВ-Петербург, 2005. — ISBN 5-94157-497-5

