*** Welcome to piglix ***

Chess engines


In computer chess, a chess engine is a computer program that analyses chess or chess variant positions and makes decisions on the best chess moves.

The chess engine decides what moves to make, but typically does not interact directly with the user. Most chess engines do not have their own graphical user interface (GUI) but are rather console applications that communicate with a GUI such as XBoard, WinBoard or Gnome Chess via a standard protocol. This allows the user to play against multiple engines without learning a new user interface for each, and allows different engines to play against each other.

The command-line interface of GNU Chess became the initial de facto standard, called the and was first supported by XBoard. When XBoard was ported to the Windows operating system as WinBoard, this protocol was popularly renamed to 'WinBoard Protocol'. The WinBoard Protocol was itself upgraded and the two versions of the protocols are referred to as: 'WinBoard Protocol 1' (original version) and 'WinBoard Protocol 2' (newer version). There is another protocol, the Universal Chess Interface. Some engines support both major protocols, and each protocol has its supporters. The Winboard Protocol is more popular but many chess engine developers feel that the Universal Chess Interface is easier to implement. Some interfaces support both protocols, while others, such as WinBoard, support only one and depend on subsidiary interpreters to translate.

Chess engines increase in playing strength each year. This is partly due to the increase in processing power that enables calculations to be made to ever greater depths in a given time. In addition, programming techniques have improved, enabling the engines to be more selective in the lines that they analyze and to acquire a better positional understanding. According to one survey,, the top engines have been increasing in strength by an average of 67 Elo per year since 1986.


...
Wikipedia

...