Brainless
Brainless,
a Chess Engine Communication Protocol compliant open source chess engine under the GNU General Public License, written in C++ by Matthew Lai and Wieland Belka with contributions by Pawel Koziol.
Brainless started as project from Matthew 's high school years and has been abandoned in about 2008, when German chess master Wieland Belka and Pawel Koziol contributed to the evaluation to play the First Italian Open Chess Software Cup, 2010 in Carugate.
It played on FICS under the handle BrainlessChess(C) [1]. The opening book is converted from Beowulf.
Contents
Photos
IOCSC 2010: Dolphin and Brainless operated by local chess players [2]
Description
Board Representation
Brainless is a bitboard engine and uses rotated bitboards indexed by 6-bit line occupancy to determine sliding piece attacks, and uses the GCC builtins trailing zero count and population count [3] for bitboard serialization and mobility.
Search
The search is PVS alpha-beta with transposition table inside an iterative deepening framework with aspiration windows. Selectivity is applied by adaptive null move pruning (R=2 + depth >= 7), LMR, IID and check extensions, the quiescence search considers captures and promotions only. Along with the killer heuristic, static exchange evaluation improves move ordering, and also prunes bad captures near the tips.
Evaluation
The evaluation function, written by Wieland Belka, with contributions from Pawel Koziol, consists mainly of material, piece-square tables, cached pawn structure, king safety and various evaluation patterns.
Namesake
Forum Posts
- Re: resources on how to write an eval function? by cyberfish, CCC, March 14, 2008
External Links
Chess Engine
- waterreaction / Brainless — Bitbucket
- Piece of Mind » Blog Archive » Computer Chess Tournament?! by Matthew Lai » IOCSC 2010
Misc
- brainless - Wiktionary
- Brainless from Wikipedia
- no-brainer - Wiktionary
- Brainless - Mr Freezer, YouTube Video