Home * Engines * Superpawn
superpawn_logo.jpg

Superpawn,
an UCI conform, experimental open source chess engine by John Byrd, written in C++, licensed under Creative Commons 3.0 Attribution Unported, and first released in January 2015 [1] . Superpawn comes with a single C++ source file [2] , requires a C++11 compiler, and provides a CMake implementation to target builds using Microsoft VC 2013, GCC 3.8.2 (or higher) or Clang compilers, to run Superpawn on Windows, Linux or Mac OS respectively.
Superpawn logo [3]

Description

The program features a principal variation search with transposition table, and a basic material and mobility evaluation, considering middlegame and endgame piece-square tables, tapered by current game stage. The board is represented as array of 64 pointersto piece objects. A piece is an abstract class with pure virtual PieceValue and GenerateMoves methods, implemented in the concrete, derived piece classes including NoPiece for empty squares.

Quote

by Superpawn's author, John Byrd [4] :
Superpawn is an excellent example of the “objects gone wild” style of programming, in which Everything Is An Object. Even the pieces themselves are objects; they know how to move, capture, etc. This of course slows down the move generation and evaluation process immensely, making this program irredeemably slow in tournament conditions. However, its logic is easy to follow and extend as you see fit.

See also


Forum Posts


External Links

Chess Engine

Misc


References

  1. ^ Greetings, and a new engine by John Byrd, OpenChess Forum, January 25, 2015
  2. ^ superpawn/Chess.cpp at master · johnwbyrd/superpawn · GitHub
  3. ^ Superpawn logo designed by Angela M. Eads
  4. ^ Superpawn

What links here?


Up one Level