Difference between revisions of "Cassandre"

From Chessprogramming wiki
Jump to: navigation, search
Line 11: Line 11:
 
[[BitScan|bitscan]] aka first- and last one by conditional 16-bit lookups, and [[Population Count|population count]] by eight byte lookups credited to [[Dann Corbit]] <ref>[http://cassandre.sourceforge.net/about.html Cassandre - Chess Engine - About]</ref>.  
 
[[BitScan|bitscan]] aka first- and last one by conditional 16-bit lookups, and [[Population Count|population count]] by eight byte lookups credited to [[Dann Corbit]] <ref>[http://cassandre.sourceforge.net/about.html Cassandre - Chess Engine - About]</ref>.  
 
Cassandre greatly lacks any [[Move Ordering|move ordering]] except generating [[Captures|captures]] before [[Quiet Moves|quiet moves]].  
 
Cassandre greatly lacks any [[Move Ordering|move ordering]] except generating [[Captures|captures]] before [[Quiet Moves|quiet moves]].  
The structure of the [[Move Generation|move generation]] [[Bitboard Serialization|serialization loops]] are an instructive counter example, of how one should not write a bitboard engine.
+
The structure of the [[Move Generation|move generation]] [[Bitboard Serialization|serialization loops]] is an instructive counterexample of how one shouldn't write a bitboard engine.
  
 
=See also=
 
=See also=

Revision as of 16:26, 30 December 2019

Home * Engines * Cassandre

Cassandra [1]

Cassandre,
an Chess Engine Communication Protocol and UCI compliant open source chess engine under the terms of the GNU General Public License (GPL) by Raphael Grundrich, Thomas Adolph and Jean-Francois Romang, written in C++ and first released in March 2003. Cassandre started as a student project at Louis Pasteur University, Strasbourg [2].

Description

Cassandre is a bitboard engine using rotated bitboards with 256 occupancy states to determine sliding piece attacks, bitscan aka first- and last one by conditional 16-bit lookups, and population count by eight byte lookups credited to Dann Corbit [3]. Cassandre greatly lacks any move ordering except generating captures before quiet moves. The structure of the move generation serialization loops is an instructive counterexample of how one shouldn't write a bitboard engine.

See also

External Links

Chess Engine

Misc

References

  1. Evelyn De Morgan - Cassandra (1898, London). Cassandra in front of the burning city of Troy at the peak of her insanity, Wikimedia Commons
  2. Cassandre - Chess Engine
  3. Cassandre - Chess Engine - About

Up one level