4 > Do chess engines dream of electric guitar?
10 Purple Haze is a free chess engine compatible with the Xboard protocol. It is
11 written by Vincent Ollivier and distributed under the terms of the GNU General
12 Public License version 3.
14 The development of Purple Haze started in the winter of 2006-2007 as a pet
15 project to learn the Java programming language by a student in Computer
16 Science. It was terribly slow and rapidly put aside for two years before
17 benefiting from a regained interest after much research and reading of papers
20 A new version was written in C++11 between the summer of 2009 and the beginning
21 of 2010 but it was full of bugs and not well engineered so a second major
22 rewriting started during the winter of 2010-2011. This time it was only
23 slightly faster but it would prove to be a lot easier to maintain and the
24 overall code quality was enhanced by using a test-driven development practice.
25 The goal is to end up with something reasonably good and free of bugs.
27 Most of its concepts or algorithms are inspired from scientific papers and
28 Open Source engines, notably TSCP, CPW, Fruit, Crafty and Stockfish. A lot of
29 the ideas used for the implementation of theses concepts also comes from
30 reading the [Computer Chess Club Forums](http://talkchess.com/forum/) and the
31 [Chess Programming Wiki](http://chessprogramming.wikispaces.com/). Without
32 them Purple Haze would not be able to do more than moving the pieces around
39 See INSTALL for detailed installation instructions or just type the following
40 commands in a terminal:
42 $ git clone git://github.com/vinc/purplehaze.git
52 * 0x88 Board Representation
56 * Lazy Move Generation
57 * Best Move from Iterative Deepening or Transposition Table
58 * Most Valuable Victim / Least Valuable Aggressor
62 * Principal Variation Search
67 * Adaptive Null Move Pruning
68 * Extended Futility Pruning
74 * Move Ordering (via MVV/LVA)
79 * Opening and Ending Piece-Square Tables
98 You are free to read it, run it and modify it. If you choose to do so, drop me
99 an email at <contact@vincentollivier.com>, it is not yet a mature project so
100 any feedback will be really appreciated.