Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Difference between revisions of "Representation of Chess Game"


 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
* [[Bitboard]]
+
The representation of a chess game includes representation of positions and moves. Positions represent states of game and moves represent operators which are used to achieve transition from one position to another. Both of these representations must be able to do the following operations:
* [[Zobrist keys]]
+
 
* [[Move representation]]
+
* make move
* [[The Chess Move Generator]]
+
* unmake move
 +
* generate a list of all possible moves
 +
* generate a list of all possible capture moves
 +
* evaluate a position
 +
* store moves
 +
* compare positions
 +
* set position
 +
* check if position has been repeated 3 times
 +
* check rule of 50 moves
 +
* check if king is in check
 +
 
 +
All of these operations must be very time efficient because they take place inside the search algorithm. Efficient representation of chess game will therefore exhibit an efficient chess program and have to contains the following concepts:
 +
 
 +
* [[Position Representation]]
 +
* [[Move Representation]]
 +
* [[Position keys]]
 +
* [[Chess Move Generator]]
 +
 
 +
[[Category:Borko Bošković]]
 +
[[Category:Research activity]]
 +
[[Category:Chess program BBChess]]
 +
 
 +
[[sl:Predstavitev šahovske igre]]

Latest revision as of 14:21, 19 October 2006

The representation of a chess game includes representation of positions and moves. Positions represent states of game and moves represent operators which are used to achieve transition from one position to another. Both of these representations must be able to do the following operations:

  • make move
  • unmake move
  • generate a list of all possible moves
  • generate a list of all possible capture moves
  • evaluate a position
  • store moves
  • compare positions
  • set position
  • check if position has been repeated 3 times
  • check rule of 50 moves
  • check if king is in check

All of these operations must be very time efficient because they take place inside the search algorithm. Efficient representation of chess game will therefore exhibit an efficient chess program and have to contains the following concepts: