Skip to content
Recursing edited this page Jul 26, 2019 · 2 revisions

Sunfish

Sunfish is a a simple open source chess engine under the GPL written by Thomas Dybdahl Ahle in Python for didactic purposes, inspired by Harm Geert Muller's Micro-Max and other engines [1]. Without the code lines of the piece-square tables and its simple command line interface, it takes up just 111 lines of code.

Description

Sunfish applies MTD-bi, the binary search version of MTD(f), also known as NegaC* as proposed by Jean-Christophe Weill in 1990, which is based on C*, introduced by Kevin Coplan in 1981 at Advances in Computer Chess 3. MTD-bi is embedded inside an iterative deepening framework.

Its fail-soft scout originally lacked the quiescence search, which made it blunder pretty badly in some positions [2], but a version of this was later added [3]. The rudimentary evaluation considers point values and piece-square tables - an aggregated score is incrementally updated during make move.

Etymology

Sunfish is named after the Pygmy Sunfish, which is among the very few fish to start with the letters 'Py', and refers other famous fish engines such as Stockfish and Rybka

Postings

Clone this wiki locally