HOME

TheInfoList



OR:

The Universal Chess Interface (UCI) is an open
communication protocol A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity. The protocol defines the rules, syntax, semantics and synchroniza ...
that enables
chess engine In computer chess, a chess engine is a computer program that analyzes chess or chess variant positions, and generates a move or list of moves that it regards as strongest. A chess engine is usually a back end with a command-line interface wit ...
s to communicate with
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
s.


History

In November 2000, the UCI protocol was released. Designed by Rudolf Huber and
Stefan Meyer-Kahlen Stefan Meyer-Kahlen (born 1968, in Düsseldorf) is a German programmer of the computer chess program '' Shredder''. , his program had won 18 titles as World Computer Chess Champion. Four of the titles were blitz championships, and one was a Ch ...
, the author of Shredder, UCI rivals the older "Chess Engine Communication Protocol" introduced with XBoard/WinBoard. In 2002, Chessbase, the chess software company which markets Fritz, began to support UCI, which had previously been supported by only a few interfaces and engines. , well over 300 engines are known to directly support UCI.


Design

By design, UCI assigns some tasks to the user interface (i.e., presentation layer) which have traditionally been handled by the engine (at the business layer) itself. Most notably, the opening book is usually expected to be handled by the UI, by simply selecting moves to play until it is out of book, and only then starting up the engine for calculation in the resulting position. UCI does not specify any on-disk format for the opening book. Different UIs usually have their own proprietary formats. While the UI can also take responsibility for handling endgame tablebases, this is arguably better handled in the engine itself, as having tablebase information can be useful for considering possible future positions. Stefan-Meyer Kahlen's UCI protocol in Shredder uses a variation of long algebraic notation for moves. A "nullmove" from the Engine to the GUI should be sent as 0000. ;Examples: *e2e4 *e7e5 *e1g1 (white short castling) *e7e8q (for promotion)


Features

The uci_limitstrength parameter tells engines with this feature to play at a lower level. The uci_elo parameter specifies the
Elo rating The Elo rating system is a method for calculating the relative skill levels of players in zero-sum games such as chess. It is named after its creator Arpad Elo, a Hungarian-American physics professor. The Elo system was invented as an improved c ...
at which the engine will aim to play. Engines that have implemented uci_elo include Delfi, Fritz, Hiarcs,
Houdini Harry Houdini (, born Erik Weisz; March 24, 1874 – October 31, 1926) was a Hungarian-American escape artist, magic man, and stunt performer, noted for his escape acts. His pseudonym is a reference to his spiritual master, French magician ...
, Junior,
Rybka Rybka is a computer chess engine designed by International Master Vasik Rajlich. Around 2011, Rybka was one of the top-rated engines on chess engine rating lists and won many computer chess tournaments. After Rybka won four consecutive Wo ...
, Shredder, Sjeng and
Stockfish Stockfish is unsalted fish, especially cod, dried by cold air and wind on wooden racks (which are called "hjell" in Norway) on the foreshore. The drying of food is the world's oldest known preservation method, and dried fish has a storage lif ...
.


Variants

The UCI has been modified to play some
chess variant A chess variant is a game related to, derived from, or inspired by chess. Such variants can differ from chess in many different ways. "International" or "Western" chess itself is one of a family of games which have related origins and could be co ...
s. Some of these are: * Universal Shogi Interface (USI), a dialect for
shogi , also known as Japanese chess, is a strategy board game for two players. It is one of the most popular board games in Japan and is in the same family of games as Western chess, '' chaturanga, Xiangqi'', Indian chess, and ''janggi''. ''Shōgi ...
; * Universal Chinese Chess Interface (UCCI), a dialect for
xiangqi ''Xiangqi'' (; ), also called Chinese chess or elephant chess, is a strategy board game for two players. It is the most popular board game in China. ''Xiangqi'' is in the same family of games as '' shogi'', '' janggi'', Western chess, '' ...
. Each of these protocols may also define variants of PGN and FEN. The XBoard CECP is said to require far fewer changes to support variants.


See also

* Chess Engine Communication Protocol (XBoard protocol) * Shredder *
XBoard XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows. Overview Orig ...


References


External links


List of UCI Engines (continuously updated)
Computer chess {{board-videogame-stub