Houdini (chess)
Encyclopedia
Houdini is a chess engine for Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

, by Belgian
Belgium
Belgium , officially the Kingdom of Belgium, is a federal state in Western Europe. It is a founding member of the European Union and hosts the EU's headquarters, and those of several other major international organisations such as NATO.Belgium is also a member of, or affiliated to, many...

 programmer
Computer programming
Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...

 Robert Houdart. Free for non-commercial use (through version 1.5a), later versions are not free. Since the release of version 1.5 on 15 December 2010, it has taken the top spot in every rating list that includes it. When GM Peter Svidler
Peter Svidler
Peter Veniaminovich Svidler is a Russian chess grandmaster.He is six-time Russian champion ....

 was asked which one player he would choose to represent Earth in a hypothetical match against aliens, he answered "Houdini".

According to the author: "The name Houdini was chosen because of the engine's positional style, its tenacity in difficult positions and its ability to defend stubbornly and escape with a draw
Draw (chess)
In chess, a draw is when a game ends in a tie. It is one of the possible outcomes of a game, along with a win for White and a win for Black . Usually, in tournaments a draw is worth a half point to each player, while a win is worth one point to the victor and none to the loser.For the most part,...

 – sometimes by the narrowest of margins. On the other hand Houdini will often use razor-sharp tactics to deny its opponents escape routes when it has the better position".The author lists open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 engines Ippolit/RobboLito (UCI
Universal Chess Interface
The Universal Chess Interface is an open communication protocol that enables a chess program's engine to communicate with its user interface....

 engines), Stockfish
Stockfish (chess)
Stockfish is an open source chess engine, developed by Tord Romstad, Joona Kiiski and Marco Costalba and licensed under the GNU General Public License version 3. The current version 2.1.1 is available as C++ source code, and also has precompiled versions for Microsoft Windows, Mac OS X Snow...

 (UCI engine), and Crafty
Crafty
Crafty is a chess program written by UAB professor Dr. Robert Hyatt. It is directly derived from Cray Blitz, winner of the 1983 and 1986 World Computer Chess Championships....

 (WinBoard engine) as major influences, but Houdini is a closed source UCI engine.

Technical information

Houdini works in 32-bit
32-bit
The range of integer values that can be stored in 32 bits is 0 through 4,294,967,295. Hence, a processor with 32-bit memory addresses can directly access 4 GB of byte-addressable memory....

 and 64-bit
64-bit
64-bit is a word size that defines certain classes of computer architecture, buses, memory and CPUs, and by extension the software that runs on them. 64-bit CPUs have existed in supercomputers since the 1970s and in RISC-based workstations and servers since the early 1990s...

 OS
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

, gaining 30% speed in 64-bit, and supports multi-core systems. As other UCI
Universal Chess Interface
The Universal Chess Interface is an open communication protocol that enables a chess program's engine to communicate with its user interface....

 engines, it comes with no GUI
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

, so a chess GUI is essential for running the engine. Houdini implements an advanced alpha-beta search and uses bitboard
Bitboard
A bitboard is a data structure commonly used in computer systems that play board games.A bitboard, often used for boardgames such as chess, checkers and othello, is a specialization of the bitset data structure, where each bit represents a game position or state, designed for optimization of speed...

 and Late Move Reductions
Late Move Reductions
Late Move Reductions is a non-game specific enhancement to the alpha-beta algorithm and its variants which attempts to examine a game search tree more efficiently. It uses the assumption that good game-specific move ordering causes a program to search the most likely moves early...

, among other things. Houdini has Gaviota tablebases
Endgame tablebase
An endgame tablebase is a computerized database that contains precalculated exhaustive analysis of a chess endgame position. It is typically used by a computer chess engine during play, or by a human or computer that is retrospectively analysing a game that has already been played.The tablebase...

 support since version 1.5.

Version 2

Houdini 2 has a strength limit feature - from 0 (beginner) to 100 (full strength), is more user-friendly in analysis, has position learning, supports Chess960
Chess960
Chess960 is a chess variant invented and advocated by former World Chess Champion Bobby Fischer, originally announced on June 19, 1996 in Buenos Aires, Argentina. It employs the same board and pieces as standard chess, but the starting position of the pieces is randomized along the players' home...

 games and is available in NUMA
Non-Uniform Memory Access
Non-Uniform Memory Access is a computer memory design used in Multiprocessing, where the memory access time depends on the memory location relative to a processor...

-aware version for high-end, multi-socket
CPU socket
A CPU socket or CPU slot is a mechanical component that provides mechanical and electrical connections between a microprocessor and a printed circuit board . This allows the CPU to be replaced without soldering....

 servers.

Houdini 2 was released on September 2, 2011. According with the info provided at the official web, Houdini 2 (Standard version, up to six cores and 4 GB of for a hash table
Hash table
In computer science, a hash table or hash map is a data structure that uses a hash function to map identifying values, known as keys , to their associated values . Thus, a hash table implements an associative array...

) is about 25 Elo stronger than Houdini 1.5a, while Houdini 2 (Pro version, up to 32 cores and 32 GB of hash) is about 40 Elo stronger than Houdini 1.5ab-16. (A special compilation of Houdini 1.5a fr up to 16 cores could be acquired if the client makes a donation for Houdini project.)

Houdini 2 also incorporates a 'Mate
Checkmate
Checkmate is a situation in chess in which one player's king is threatened with capture and there is no way to meet that threat. Or, simply put, the king is under direct attack and cannot avoid being captured...

Search' function that helps to solve long mates faster than without this option.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK