Changes

Jump to: navigation, search

Endgame Tablebases

146 bytes added, 10:52, 12 June 2021
Data
=Data=
An EGTB is a set of endgames. Each endgame is a set of records about positions’ information. All involving positions in an endgame must have the same material. Each Typically each position 's record associates with an integer number which informs how far that position is from mating/being mated or converting (depends on the type of its metrics).
Based on values of those integer numbers it can answer directly two questions of the EGTB: 1) for a given position it is a draw or a win/loss position and 2) how far it is from mating/being mated or converting. From those numbersTo answer the 3rd question, the best move of a position can be indirectly calculated as below part mentions: generate all legal moves, make them, probe all new positions, compare probing scores for the highest one and the associated move is the best one.
Theoretically, we can add more information to each position’s record. However, due to large numbers of involving positions, any additional information may make the whole EGTB becomes significantly larger. Thus so far none of popular EGTBs store any extra information for each item and each record their records actually contains that integer contain those integers only.
All records of an endgame are simply organized as two arrays (one array for one side/color). In other words, each item in those arrays is an integer and its index on an array is mapped to a unique position. For a given chess position, we will calculate its index then access its data record/integer via that index without searching.
==Endgame files==
Those arrays of an endgame can be stored in files. Typically each array is stored in one file. However, sometimes they can be combined into one larger file or splitted into more files to easier copy or manage. Those files may be in the form of none compressed or compresseduncompressed forms. If they are compressed, they are typically divided and compressed by small blocks thus they don't need to load and decompress all data to extract just a position.
==In memory==

Navigation menu