Spike
Spike,
a chess engine by Ralf Schäfer and Volker Böhm, developed since early 2004 from scratch, incorporating ideas from two former programs by both authors, Cheetah and IceSpell. As a pure engine without a GUI, Spike supports both the Chess Engine Communication Protocol and the UCI protocol. Spike is Arena partner engine.
Contents
Etymology
The program's name was coined by the Spike character of the Buffy the Vampire Slayer TV series [2] .
Javanizer
Spike's special design characteristic is multi programming language development - it has been written in C++ and Java simultaneously, restricted to a common subset of both languages, and using a so called Javanizer to transform some classes from C++ to Java and vice versa. While using objects is required due to the Plain Old Java Object, Spike itself is not considered object-oriented [3].
Description
Spike relies on a 16x14 mailbox array for vector attacks, which combines 0x88 features with the advantage of the 10x12 board. It applies PVS with adaptive null move pruning, fractional extensions of ¼ ply granularity for check-evasions, recaptures, and pawn advances to the seventh rank, LMR aka history pruning, and futility pruning. Staged move generation considers classical move ordering by PV-move, Hash move, SEE-ordered captures, two killers from the current ply, and two killers from the grand parent's ply, as well as four remaining moves sorted by history heuristic. Beside lots of other stuff, a tapered evaluation takes pawn structure and king safety issues into account, as well as mobility, trapped rooks, rook on open file, rook or queen on seventh rank, and knight outposts [4]. Spike 1.4, released in February 2011, comes with a parallel search, improved futility pruning, extensive usage of late move reductions, and in parts rewritten evaluation concerning material tables and passed pawns in [Rook Endgame|rook endgames]] and pawn endgames [5].
Tournaments
Spike is able to play Chess960, and surprised the scene in winning the first Livingston Chess960 Computer World Championship 2005 in Mainz [6]. Further, Spike played a strong WCCC 2006 in Turin, and various IPCCC, Dutch Open, and CCT Tournaments. Spike's opening book is compiled by Timo Haupt (né Klaustermeyer), who also operated Spike in Turin.
Photos
2006
WCCC 2006 Blitz: Timo Klaustermeyer and Alex Brunetti, Delfi - Spike [7] [8]
2010
DOCCC 2010: Ralf Schäfer, Volker Böhm, Silver trophy for Spike, Cock de Gorter [9]
Games
IPCCC 2005 b, round 2, Spike - Rybka [10] [11]
[Event "15. IPCCC"] [Site "Paderborn"] [Date "2005.12.26"] [Round "2"] [White "Spike 1.1 X1"] [Black "Rybka"] [Result "1-0"] 1.d4 Nf6 2.c4 e6 3.Nc3 Bb4 4.Qc2 c5 5.dxc5 O-O 6.a3 Bxc5 7.Nf3 Nc6 8.Bg5 b6 9.Rd1 Bb7 10.e4 h6 11.Bh4 g5 12.Bg3 Nh5 13.b4 Be7 14.b5 Na5 15.Ne5 d6 16.Ng4 Qc7 17.Nxh6+ Kg7 18.Ng4 Nxg3 19.hxg3 Rh8 20.Rxh8 Rxh8 21.Nb1 Qc5 22.Qc3+ f6 23.f3 Rh1 24.Ne3 a6 25.a4 g4 26.Rd3 gxf3 27.gxf3 Qg5 28.g4 Kg6 29.Nd2 Qe5 30.Qd4 Qxd4 31.Rxd4 Rh8 32.Rd3 Kf7 33.f4 axb5 34.axb5 Rh2 35.f5 Bc8 36.Bg2 Bb7 37.fxe6+ Kxe6 38.Kf2 Rh8 39.Nd5 Bd8 40.Rc3 Kf7 41.Nf1 Ke6 42.Ng3 Ba8 43.Nf5 Bb7 44.Rd3 Bxd5 45.exd5+ Kd7 46.Rc3 Be7 47.Bf1 Bf8 48.Re3 Nb7 49.Ra3 Na5 50.Nd4 Rh2+ 51.Kg3 Rh1 52.Kg2 Rh4 53.Be2 Be7 54.Re3 Bd8 55.Re6 Rh8 56.Nc6 Nxc6 57.bxc6+ Kc7 58.Bd3 Rf8 59.Bf5 Rf7 60.Re8 Re7 61.Rf8 Re3 62.Be6 b5 63.Rf7+ Kb6 64.Rb7+ Kc5 65.c7 Bxc7 66.Rxc7+ Kb4 67.cxb5 Kxb5 68.Rf7 Kc5 69.Rxf6 1-0
Publications
- Arno Nickel (2012). Die schöne neue Welt der Schachengines. SCHACH 2,3,5,6 2012, pdf (German) [12]
Forum Posts
2004 ...
- Spike´s first public availiable version by Volker Böhm, CCC, September 10, 2004
- Spike by Gabor Szots, CCC, February 27, 2005
- Spike 0.9 is availiable for download! by Volker Böhm, CCC, March 20, 2005
- Spike 1.0 Mainz released! by Volker Böhm, CCC, August 16, 2005
- Spike-Rybka 1-0! Congrats by Rolf Tüschen, CCC, December 27, 2005 » IPCCC 2005 b
- Spike-Rybka by Vasik Rajlich, CCC, December 28, 2005 » IPCCC 2005 b
- Spike News or update? by Howard E, CCC, March 30, 2009
2010 ...
- fulitiy + lmr; funny results by Volker Böhm, CCC, December 28, 2010
- Spike 1.4 is available by Ralf Schäfer, CCC, February 01, 2011
- Any 64-bit (window) version of Spike 1.4 Leiden by Kohflote, CCC, July 17, 2012
External Links
Chess Engine
- Spike home
- Spike's ICGA Tournaments
- Spike 0.9 released, Interview with Volker Böhm and Ralf Schäfer by Frank Quisinsky, hosted by Arena Chess GUI 3.0 - Welcome to Arena, March 20, 2005 (German)
- Spike in CCRL 40/40
Misc
- Spike (disambiguation) from Wikipedia
- SPIKE algorithm from Wikipedia
- Voltage spike from Wikipedia
- Spike (company) from Wikipedia
- Spike Island from Wikipedia
- Golden spike from Wikipedia
- Liberty spikes from Wikipedia
- Spike (Buffy the Vampire Slayer) from Wikipedia
- Spike - Buffy the Vampire Slayer and Angel Wiki
- Spike and Tyke (characters) from Wikipedia
- The Spike (1997) from Wikipedia
- Spike (given name)
- Spike Milligan - The Fresh Fruit Song, Q7 1977, YouTube Video
References
- ↑ Spike fights alongside Buffy against the demon hordes, Spike - Buffyverse Wiki, FANDOM powered by Wikia
- ↑ Spike | Background
- ↑ Spike | Background | Programming Stuff
- ↑ Description largely based on the information provided by the authors: Spike | Background | Programming Stuff
- ↑ Spike 1.4 is available by Ralf Schäfer, CCC, February 01, 2011
- ↑ Spike - Mainz 2005 Report (German)
- ↑ Photo by Gerd Isenberg
- ↑ 14th World Computer Chess Championship (Blitz) - Turin 2006
- ↑ 30th ODCCC Final Results - Images
- ↑ Paderborn: Spike vs Rybka (1-0) PGN by Kurt Utzinger, CCC, December 27, 2005
- ↑ Spike-Rybka by Vasik Rajlich, CCC, December 28, 2005
- ↑ Part 1 covers Houdini, Rybka, Komodo, Stockfish, Critter, Naum, Chiron and Spike