Code is based on Thomas R. Lincke's paper "Strategies for the Automatic Construction of Opening Books" published in 2001.
We make the following adjustments:
We also think there is a typo with respect to the formula of epo_i on page 80. Namely, since p_i is the negamax of p_{s_j}s, then we should sum the values to find the distance from optimal, not subtract. That is, we use epo_i = 1 + min(s_j) (epb_{s_j} + alpha*(p_i + p_{s_j}) instead.
Classes | |
class | SgBookNode |
State in the Opening Book. More... | |
class | SgBookBuilder |
Base class for automated book building. More... |
Refreshing the book forces these propagations.
SgBookBuilder::Refresh() computes the correct propagation value for all internal nodes given the current set of leaf nodes. A node in which SgBookNode::IsLeaf() is true is treated as a leaf even if it has children in the book (ie, children from transpositions)