Changes

Jump to: navigation, search

Opening Book

29 bytes added, 03:57, 20 July 2020
no edit summary
[[FILE:380px-Modern_Chess_Openings_Second_Edition.jpg|border|right|thumb|link=https://en.wikipedia.org/wiki/File:Modern_Chess_Openings_Second_Edition.jpg|[https://en.wikipedia.org/wiki/Modern_Chess_Openings Modern Chess Openings] <ref>Worn copy of second edition of Modern Chess Openings (1913) by [https://en.wikipedia.org/wiki/Richard_Griffith_%28chess_player%29 Richard Clewin Griffith] (1872–1955) and [https://en.wikipedia.org/wiki/John_Herbert_White John Herbert White] (1880–1920), with an introduction by [https://en.wikipedia.org/wiki/Henry_Ernest_Atkins Henry Ernest Atkins] (1872–1955), [https://en.wikipedia.org/wiki/Modern_Chess_Openings Modern Chess Openings from Wikipedia]</ref> ]]
Chess programs often look up the positions at the [[Opening|beginning of the game]] in an '''Opening Book'''. Chess programs could use [[Search|search]] The opening database can then be used as long as the opponent plays a new move from the beginning and look through all possible continuations in detail to find the best next movedatabase, but as this is quite time-consuming and there already exists a lot of [https://en.wikipedia.org/wiki/Chess_opening_book_%28literature%29 literature] about different so usually more common opening lines, opening books save time and provide will be stored to a much higher quality of playdepth than the uncommon ones. Another reason that opening books are used commonly As soon as the program is "out of book" it has to provide variety, as book moves are usually chosen [[Pseudorandom Number Generator|randomly]], whereas searches are more or less deterministiccontinue using the normal search routines.
This opening database can then be used as long as =Purposes= * Save time: Chess programs could use [[Search|search]] from the beginning and look through all possible continuations in detail to find the opponent plays a new best next move from the database, so usually more common but as this is quite time-consuming and there already exists a lot of [https://en.wikipedia.org/wiki/Chess_opening_book_%28literature%29 literature] about different opening lines will be stored to , opening books save time.* Provide a much higher depth than the uncommon onesquality of play. Searching only can't deep tactics and strategy. As soon * Provide variety, as the program is "out of book" it has to continue using the normal search routinesmoves are usually chosen [[Pseudorandom Number Generator|randomly]], whereas searches are more or less deterministic.
=Types=
There are three ways to store an opening database:
* Opening lines
* Last positions
* All positions
The first two options are probably easier to implement. They =Types=Opening books are usually typically stored as text files, such as files of PGN format (for openings lines) or EDP format (for last positions). in two formats:==Text==The most advantage is that by using text form they are readable, understandable , and editable by human humans without any special software. However, the main disadvantage is that they may take too much space as well as time for searching since an item may take from 50 bytes (for FEN strings) to hundreds of bytes (for PGN text). If we store openings "continuously" (all possible opening positions) both data size and searching time become too huge and become unacceptable for playing. In practice, those opening books are usually very small with some lines or positions only, they cannot be used for real game playing but for testing.
The third has They are stored in typical ways for games and positions:* [[EDP]]: They are the last positions of opening lines* [[PGN]]: Opening lines are stored as individual games ==Binary==Binary books have some important advantages, especially for computer chess engines. Opening databases built on all positions are usually more space -efficient and overcome the problem of [[Transposition|transpositions]]. Often these positions are stored as hash value values to allow fast access. Some opening database formats store with each position as well as some information about it. (e.g. number of times occurred, number of games won by white/black / drawn with this position, average/maximum Elo of players playing to this opening position, chess program's success with the position). So when a chess program has to decide on a move, it will look up all positions that could arise after moving in the database and then make a decision upon the information given with each position. Depends on designs, an item may take 10 - 16 bytes. To build and/or edit those opening books, users need to use special software. The most popular format is [[Polyglot]].
=Generation=

Navigation menu