24 const int depth_threshold = 60, visit_threshold = 4, scale = 16;
25 const int visit =
book.blackWinCount(index)+
book.whiteWinCount(index);
26 if (depth > depth_threshold ||
table.find(key) !=
table.end()
27 || visit < visit_threshold)
29 const std::vector<book::WMove>& moves =
book.moves(index);
31 for (
WMove move: moves)
35 if (cv < visit_threshold || cv*scale < visit || move.weight == 0)
37 children.
push_back(std::make_pair(cv, move.move));
41 std::sort(children.
begin(), children.
end());
42 std::reverse(children.
begin(), children.
end());
43 if (! children.
empty()) {
46 for (
size_t i=0; i<children.
size(); ++i) {
47 store[i] = children[i].second;
48 if (i+1 == store.
size())