Gullydeckel

Home * Engines * Gullydeckel



Gullydeckel, (Gullydeckel2, Gully) a Chess Engine Communication Protocol (CEPT) compliant open source engine under the GNU General Public License by Martin Borriss, written in C. A first version, Gullydeckel 1, has been developed in 1994/1995. Gullydeckel 2 was written mainly in 1996, while Windows 32 support, analysis, pondering, WinBoard protocol version 2 aka CEPT and ChessBase GUI compatibility was finally realized in 2002/2003. Beside Windows, supported platform is Linux.

=Features=

Board Representation

 * Piece-Lists
 * 0x88

Search

 * Iterative Deepening
 * Aspiration Windows
 * Alpha-Beta
 * Transposition Table
 * Null Move Pruning, R=2
 * Check Extensions
 * Quiescence Search
 * Static Exchange Evaluation
 * Killer Heuristic
 * History Heuristic

Evaluation

 * Material
 * Imbalance Table
 * Lazy Evaluation
 * Piece-Square Tables
 * Rooks on (Semi) Open Files
 * Rook on 7th Rank
 * Pawn Structure
 * Pawn Hash Table
 * Weak Pawns
 * Passed Pawn
 * King Safety

=0x88 Difference= The pre-initialized static int vector[256] in "attacks.c" with ray directions encoded, which is indexed by 0x88 square difference plus offset, somehow reminds on a Gullydeckel, the colloquial German name for Manhole cover : /* if we find that two squares are related according to matrix SqRel, we use another matrix to look up the direction of the move required ('to walk the vector') if it is a sliding piece (R,B,Q)

static int vector[256] = { 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,UR,0 ,0 ,0 ,0 ,0 ,0 , UP ,0 ,0 ,0 ,0 ,0 ,0 ,UL,0 ,0 ,UR,0 ,0 ,0 ,0 ,0 , UP ,0 ,0 ,0 ,0 ,0 ,UL,0 ,0 ,0 ,0 ,UR,0 ,0 ,0 ,0 , UP ,0 ,0 ,0 ,0 ,UL,0 ,0 ,0 ,0 ,0 ,0 ,UR,0 ,0 ,0 , UP ,0 ,0 ,0 ,UL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,UR,0 ,0 , UP ,0 ,0 ,UL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,UR,0 , UP ,0 ,UL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,UR, UP ,UL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,RI,RI,RI,RI,RI,RI,RI, 0 ,LE,LE,LE,LE,LE,LE,LE,0 ,0 ,0 ,0 ,0 ,0 ,0 ,DR, DN ,DL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,DR,0 , DN ,0 ,DL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,DR,0 ,0 , DN ,0 ,0 ,DL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,DR,0 ,0 ,0 , DN ,0 ,0 ,0 ,DL,0 ,0 ,0 ,0 ,0 ,0 ,DR,0 ,0 ,0 ,0 , DN ,0 ,0 ,0 ,0 ,DL,0 ,0 ,0 ,0 ,DR,0 ,0 ,0 ,0 ,0 , DN ,0 ,0 ,0 ,0 ,0 ,DL,0 ,0 ,DR,0 ,0 ,0 ,0 ,0 ,0 , DN ,0 ,0 ,0 ,0 ,0 ,0 ,DL,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 }; =Forum Posts=
 * Re: Deep Quiesence Searching by Martin Borriss, rgcc, February 24, 1997
 * Re: Deep Quiesence Searching by Martin Borriss, rgcc, February 25, 1997
 * Gullydeckel - move generator by Thomas Mayer, CCC, December 20, 2000

=External Links=

Chess Engine

 * Gullydeckel Chess Program
 * GitHub - borriss/gully: Gullydeckel Chess Program
 * Gullydeckel 2.16pl1 in CCRL 40/4

Misc

 * Gullydeckel – Wiktionary.de (German)
 * Schachtdeckel Wikipedia.de (German)
 * Manhole cover from Wikipedia
 * Storm drain from Wikipedia
 * Sanitary sewer from Wikipedia
 * Gully (disambiguation) from Wikipedia
 * Manhole cover - Wikimedia Commons

=References= Up one Level