Универсальный Шахматный интерфейс ( UCI ) является открытым протоколом связи , который позволяет движки взаимодействовать с пользовательскими интерфейсами . [1] [2]
История [ править ]
В ноябре 2000 года был выпущен протокол UCI. Разработанный Рудольфом Хубером и Стефаном Мейер-Каленом , автором Shredder , UCI конкурирует со старым « протоколом связи шахматного двигателя », представленным в XBoard / WinBoard .
В 2002 году Chessbase , компания по разработке программного обеспечения для шахмат, которая продает Fritz , начала поддерживать UCI, который ранее поддерживался лишь несколькими интерфейсами и механизмами.
По состоянию на 2007 год известно [Обновить]более 100 двигателей, напрямую поддерживающих UCI.
Дизайн [ править ]
По замыслу, UCI назначает некоторые задачи пользовательскому интерфейсу (т. Е. Уровню представления), которые традиционно обрабатывались самим механизмом (на бизнес-уровне). [ необходима цитата ]
В частности, ожидается , что начальная книга обычно обрабатывается пользовательским интерфейсом , просто выбирая ходы для воспроизведения до тех пор, пока она не закончится, и только затем запускает движок для расчета в результирующей позиции. UCI не определяет дисковый формат для вводной книги. Разные пользовательские интерфейсы обычно имеют собственные проприетарные форматы. [ необходима цитата ]
Хотя пользовательский интерфейс также может нести ответственность за обработку базовых таблиц эндшпиля , это, возможно, лучше обрабатывать в самом движке, поскольку информация о базовых таблицах может быть полезна для рассмотрения возможных будущих позиций. [3]
Протокол UCI Стефана-Мейера Калена в Shredder использует длинные алгебраические обозначения для ходов. «Нулевой ход» от Engine до GUI должен быть отправлен как 0000. [4]
- Примеры
- e2e4
- e7e5
- e1g1 (короткая рокировка белых)
- e7e8q (для продвижения)
Особенности [ править ]
Параметр uci_limitstrength указывает движкам с этой функцией играть на более низком уровне. Параметр uci_elo указывает рейтинг Elo, на который движок будет стремиться играть.
Варианты [ править ]
UCI был изменен для игры в некоторые варианты шахмат . Вот некоторые из них: [5]
- Универсальный интерфейс сёги (USI), диалект сёги ; [6]
- Универсальный китайский шахматный интерфейс (UCCI), диалект для сянци . [7]
Каждый из этих протоколов может также определять варианты PGN и FEN. Говорят, что XBoard CECP требует гораздо меньше изменений для поддержки вариантов. [5]
См. Также [ править ]
- Протокол обмена данными Chess Engine (протокол XBoard)
- Измельчитель
- XBoard
Ссылки [ править ]
- ^ "Шахматные паровозы" . Деловой мир онлайн . 2017-04-06 . Проверено 14 июня 2018 .
- ^ Torres, JC (2014-06-23). «Lichess предлагает слепым игрокам новые возможности шахматного сайта» . SlashGear . Проверено 14 июня 2018 .
- ^ Шахматная жизнь . Шахматная федерация США. 2003 г.
- ^ "Протокол UCI" . wbec-ridderkerk.nl . Проверено 14 июня 2018 .
- ^ а б Эверт. «Протокол UCI для шахматных вариантов» . TalkChess.com .
- ^ «Универсальный интерфейс сёги (USI)» . hgm.nubati.net .
- ^ "中国 象棋 电脑 应用 规范 (五) : 中国 象棋 通用 引擎 协议" . www.xqbase.com .
Внешние ссылки [ править ]
- Последние двигатели UCI (февраль 2014 г.)
- Страница загрузки технических спецификаций UCI