Home * Engines * Spark
Franklin_lightning_engraving.jpg

Spark,
an UCI compatible chess engine by Allard Siemelink written in C++. During 2008, Allard found that it became increasingly hard to improve his 0x88 engine Bright much further, and started to create a bitboard framework along with a Perft benchmark which evolved to Spark with search and evaluation developed from scratch to try as much as possible alternative search strategies and evaluation terms for the ones that are found in Bright. Spark's evaluation is data mined from a database of 700,000 high quality games [1], and runs on Windows, Linux and Mac OS.

So far Spark played the WCRCC 2009 [2] , CCT12, ICT 2010, DOCCC 2010, DOCCC 2011 and ICT 2012.
Benjamin Franklin drawing a spark [3]

Parallel Search

Like its earlier 0x88 relative Bright, Spark is able to search in parallel supporting up to 16 CPU cores, basically applying the Young Brothers Wait Concept. Since splitting is a cheap operation in Spark, avoiding an expensive copy of the board and associated data, the search tree can be split at any depth, maximizing the use of the otherwise idle cores.

LMR

Late Move Reductions as popularized by Fruit and Glaurung are used in Spark with different implementation details. The reductions are not history based, and all moves, except the first one, can be reduced by up to two plies depending on static criteria [4].

Selected Games

[5]

Rybka

DOCCC 2010, Round 6, Spark - Rybka
[Event "DOCCC 2010"]
[Site "Leiden NED"]
[Date "2010.11.27"]
[Round "6"]
[White "Spark"]
[Black "Rybka"]
[Result "1/2-1/2"]
 
1.e4 c5 2.Nf3 e6 3.d4 cxd4 4.Nxd4 Nc6 5.Nc3 Qc7 6.Be3 a6 7.Be2 b5 8.Nxc6 Qxc6 
9.O-O Bb7 10.Bf3 Qc7 11.e5 Rc8 12.Bxb7 Qxb7 13.Qd3 Ne7 14.a4 bxa4 15.Rxa4 Nc6 
16.f4 Nb4 17.Qe4 Qxe4 18.Nxe4 Rxc2 19.Rc1 Rxc1+ 20.Bxc1 Be7 21.Bd2 Nd5 22.Nd6+ 
Bxd6 23.exd6 f5 24.Rxa6 Kf7 25.Ra7 Nf6 26.Bc3 Rb8 27.g3 Rb6 28.Bxf6 Kxf6 29.Rxd7 
Rxb2 30.h4 Rd2 31.Rd8 Kg6 32.Kf1 h5 33.Ke1 Rd5 34.Rd7 Rd4 35.Rd8 Kh7 36.Ke2 Kh6 
37.Ke3 Rd1 38.d7 Kg6 39.Re8 Rxd7 40.Rxe6+ 1/2-1/2

Hiarcs

DOCCC 2010, Round 7, Hiarcs - Spark
[Event "DOCCC 2010"]
[Site "Leiden NED"]
[Date "2010.11.28"]
[Round "7"]
[White "Hiarcs"]
[Black "Spark"]
[Result "1/2-1/2"]
 
1.e4 c5 2.Nf3 d6 3.d4 cxd4 4.Nxd4 Nf6 5.Nc3 a6 6.Be3 e5 7.Nb3 Be6 8.f3 Be7 
9.Qd2 O-O 10.O-O-O Nbd7 11.g4 b5 12.g5 Nh5 13.Kb1 Nb6 14.Na5 Qc7 15.Nd5 Nxd5 
16.exd5 Bxd5 17.Qxd5 Qxa5 18.Bd3 Qd8 19.Rhg1 Rb8 20.Be4 Qc7 21.Rg4 g6 22.Qd3 
Kh8 23.Bd5 f5 24.Rgg1 a5 25.a3 Qd7 26.f4 Rfc8 27.Bb3 a4 28.Ba2 Qc7 29.c3 Bf8 
30.Rgf1 Rd8 31.h4 Bg7 32.Bd5 Re8 33.Ka2 Re7 34.Kb1 Qc8 35.Ba2 exf4 36.Bxf4 
Be5 37.Be3 f4 38.Bf2 Ng3 39.Bxg3 fxg3 40.Rde1 Qh3 41.Qf3 Qf5+ 42.Qxf5 gxf5 
43.Rxf5 Bxc3 44.Rxe7 g2 45.Rxh7+ Kxh7 46.g6+ Kg7 47.Rg5 Bf6 48.Rxg2 b4 
49.axb4 Rxb4 1/2-1/2

See also


Forum Posts


External Links

Chess Engine

Misc


References

  1. ^ Spark Chess by Allard Siemelink
  2. ^ 2009 WCRCC: Bright/Spark issue by Charles Roberson, CCC, August 13, 2009
  3. ^ An engraving of Benjamin Franklin's kite experiment, from page 159 (Fig. 82) of Le Roy Clark Cooley (1881) Natural Philosophy for Common and High Schools.
  4. ^ Interview with Allard Siemelink by Frank Quisinsky, Schachwelt, January 10, 2010 (dead link)
  5. ^ Downloads | Open Dutch Computer Chess Championships | Games

What links here?


Up one Level