Chess+Position


 * Home * Chess * Position**
 * [[image:DuchampGlassBoard.jpg width="280" height="279" link="http://www.slu.edu/x29638.xml"]] ||~  || The **Chess Position** describes how pieces are placed on the chessboard, as printed as chess diagram, image or photograph from a game of chess. In 1996 Shirish Chinchalkar determined 10 46 as upper bound for the number of reachable chess positions . The maximum number of moves per chess position seems 218.

Of course, the information of any arbitrary chess position which occurs inside the game of chess, might be determined from a certain initial starting position and a sequence of moves (half-moves), which leads to this position. Anyway, an efficient data structure for a chess position, which is incrementally updated during game play and search is essential for a chess playing program. || toc =Specifying a Chess Position= Except the determination of three fold repetitions, which requires the whole move record, at least from the last irreversible move (half-move) played, the chess position should keep track of various informations related to the position also for efficiency reasons. Another issue is to make chess positions persistent with a maximum of information required, but without the whole game history, as specified by the Forsyth-Edwards Notation or Extended Position Description.
 * Marcel Duchamp ||~   ||^   ||

Beside piece placement, as considered by the board representation, the side to move is essential, which might take only one bit inside an appropriate data structure for a chess position. Additionally, the Castling ability for both sides, as reflected by the castling rights and a possible en passant target square (or file) is needed to further completely specify the position, as well as the halfmove clock to cover the fifty-move rule.

=Summary= A chess positions consists of
 * Piece placement on the Chessboard as considered by the Board Representation
 * Side to move
 * Castling rights
 * En passant target square
 * Halfmove Clock

=Positions inside the Search= In the context of Search, a position is the node inside a search tree. To completely determine the position with respect to repetitions, one additionally needs a move list or any other appropriate data structure, to keep up to 100 reversible half-moves, likely associated with Zobrist keys of the intermediate positions.
 * Incremental Updates
 * Copy-Make

=Positions=
 * Initial Position
 * Test-Positions

=Notations=
 * Extended Position Description (EPD)
 * Forsyth-Edwards Notation (FEN)
 * Forsyth-Edwards Expanded Notation (FEEN)

=Flipping and Mirroring=
 * Color Flipping
 * Diagonal Mirroring
 * Horizontal Mirroring
 * Vertical Flipping

=See Also= > Piece Recognition
 * Board Representation
 * Chess Game
 * Chess Maxima
 * Chessboard
 * Diagrams
 * Graphics Programming
 * Moves
 * Node
 * Pieces
 * Transposition
 * User Interface

=Publications=
 * Jürg Nievergelt (**1977**). //Information content of chess positions.// ACM SIGART Newsletter 62, pp. 13-14. Reprinted as: //Information content of chess positions: Implications for game-specific knowledge of chess players//, pp. 283-289. [|Machine Intelligence 12] (eds. Jean Hayes Michie, Donald Michie, [|E. Tyugu]). Clarendon Press, Oxford, 1991. ISBN 0-19-853823-5.
 * Bernhard Balkenhol (**1994**). //Data Compression in Encoding Chess Positions.// ICCA Journal, Vol. 17, No. 3, [|zipped ps]
 * Shirish Chinchalkar (**1996**). //An Upper Bound for the Number of Reachable Positions//. ICCA Journal, Vol. 19, No. 3
 * Alex de Voogt (**2002**). //[|Reproducing board game positions: Western Chess and African Bao]//. [|Swiss Journal of Psychology], Vol 61, No. 4

=Forum Posts=

1980 ...

 * [|compact representation of a position] by Bill Vaughan, net.chess, January 5, 1982
 * [|compact representation of chess positions] by Tom Truscott, net.chess, January 7, 1982 » Zobrist Hashing

1990 ...
> [|Re: number of moves in position] by Leonid, CCC, September 21, 1999
 * [|entropy of chess positions] by John Tromp, rgc, April 15, 1991
 * [|estimated number of chesspositions] by Vincent Diepeveen, rgcc, October 27, 1995
 * [|number of moves in position] by Leonid, CCC, September 19, 1999

2000 ...

 * [|Min # of bits needed to store a chess position] by James Robertson, CCC, April 20, 2000
 * [|Minimum bits to encode a chess position] by Ken Payson, [|The Math Forum @ Drexel University], February 8, 2002
 * [|Making positions in eps] by Renze Steenhuisen, CCC, October 27, 2003 » Fen2eps

2010 ...

 * [|allowing invalid positions] by Eric Langedijk, CCC, August 13, 2013
 * [|Counting endgame positions] by Kirill Kryukov, CCC, January 08, 2014
 * [|Total possible chess positions?] by Matthew R. Brades, CCC, March 26, 2014 » Chess Maxima

2015 ...

 * [|Binary FEN] by J. Wesley Cleveland, CCC, July 24, 2015
 * [|Max moves in a position] by Laurie Tunnicliffe, CCC, October 22, 2016 » Chess Maxima, Move List

=External Links=
 * [|Programmer Puzzle: Encoding a chess board state throughout a game] from [|Stack Overflow]
 * [|Chess Position Trainer] by Stefan Renzewitz and Gregory Prentice
 * [|NULP in chess endgames] by Kirill Kryukov

=References= =What links here?= include page="Chess Position" component="backlinks" limit="200"
 * Up one Level**