#include <searchState2.h>
構成 | |
struct | UpdateWrapper |
struct | Updator |
Public 型 | |
enum | { MaxDepth = 64 } |
typedef DualDfpn | checkmate_t |
typedef FixedCapacityVector < Move, MaxDepth > | PVVector |
Public メソッド | |
SearchState2Core (const NumEffectState &s, checkmate_t &checker) | |
virtual | ~SearchState2Core () |
int | curDepth () const |
virtual void | setState (const NumEffectState &s) |
state のコピーを行う. | |
void | setHistory (const MoveStack &h) |
bool | hasLastRecord (unsigned int n=0) const |
SimpleHashRecord * | lastRecord (unsigned int n=0) |
const SimpleHashRecord * | lastRecord (unsigned int n=0) const |
SimpleHashRecord * | rootRecord () |
void | setCurrentRecord (SimpleHashRecord *r) |
void | setRootRecord (SimpleHashRecord *root) |
void | setKillerMove (Move best_move) |
void | getBigramKillerMoves (MoveVector &moves) const |
void | getKillerMoves (MoveVector &moves) const |
const BigramKillerMove & | bigramKillerMove () const |
void | setBigramKillerMove (const BigramKillerMove &killers) |
HistoryTable & | historyTable () |
const HistoryTable & | historyTable () const |
void | pushPass () |
void | popPass () |
template<Player P, class Function > | |
void | doUndoMoveOrPass (const HashKey &new_hash, Move move, Function &f) |
まともなdoUndo | |
void | makeMove (Move move) |
const Move | lastMove (int i=1) const |
const MoveStack & | history () const |
const RecordStack2 & | recordHistory () const |
const PathEncoding & | path () const |
const NumEffectState & | state () const |
const NumEffectState & | rootState () const |
void | restoreRootState () |
const checkmate_t & | checkmateSearcher () const |
const RepetitionCounter & | repetitionCounter () const |
const HashKey & | currentHash () const |
template<Player P, class Function > | |
void | doUndoMoveLight (Move move, Function &f) |
軽量化版 doUndo 千日手情報や, hash を更新しない | |
template<Player P> | |
bool | isLosingState (int node_limit) |
template<Player P> | |
bool | isWinningState (int node_limit, Move &checkmate_move, bool parallel=false) |
template<Player P> | |
bool | isWinningStateShort (int depth, Move &checkmate_move) |
FixedDepthSearcher を呼ぶ. | |
template<Player P> | |
bool | isThreatmateState (int node_limit, Move &threatmate_move, bool=false) |
P の手番でPの玉に詰めろがかかっているかどうか. | |
template<Player P> | |
bool | isThreatmateStateShort (int depth, Move &threatmate_move) |
bool | abort () const |
virtual bool | abort (Move) const |
bool | tryThreatmate () const |
void | makePV (Move m) |
void | initPV () |
void | makePV (PVVector &parent, Move m, PVVector &pv) const |
int | countCheckAfterThreatmate (Player turn, int depth=1) const |
turn の側が連続王手で詰ろを逃れている回数 | |
int | countCheckAfterThreatmateSacrifice (Player turn, int depth=1) const |
Static Public メソッド | |
template<Player P> | |
static bool | isWinningState (checkmate_t &search, NumEffectState &state, const HashKey &key, PathEncoding path, int node_limit, Move &checkmate_move, Move last_move, bool=false) |
static bool | isWinningState (checkmate_t &search, NumEffectState &state, const HashKey &key, PathEncoding path, int node_limit, Move &checkmate_move, Move last_move, bool parallel=false) |
Public 変数 | |
volatile bool | stop_tree |
beta cut in parallel search | |
Static Public 変数 | |
static CArray< int, MaxDepth > | depth_node_count_quiesce |
Protected 型 | |
enum | NodeType { PvNode = 0, AllNode = 1, CutNode = -1 } |
Protected 変数 | |
NumEffectState | current_state |
NumEffectState | root_state |
checkmate_t * | checkmate_searcher |
PathEncoding | current_path |
MoveStack | move_history |
int | root_depth |
RecordStack2 | record_stack |
RepetitionCounter | repetition_counter |
boost::shared_ptr < SearchState2Shared > | shared |
CArray< PVVector, MaxDepth > | pv |
CArray< NodeType, MaxDepth > | node_type |
Private メソッド | |
void | pushBeforeApply (Move move) |
ApplyMoveの前に行うこと. | |
void | updateRepetitionCounterAfterMove (const HashKey &new_hash) |
pushBeforeApply の後,ApplyMoveの中,Functionを呼ぶ前に呼ばれる | |
void | popAfterApply () |
ApplyMoveの後に行うこと. | |
void | makeMoveHook (Move) |
フレンド | |
class | AlphaBeta2ParallelCommon |
class | Updator |
searchState2.h の 87 行で定義されています。
typedef DualDfpn osl::search::SearchState2Core::checkmate_t |
osl::search::AlphaBeta2< EvalT >で再定義されています。
searchState2.h の 95 行で定義されています。
typedef FixedCapacityVector<Move,MaxDepth> osl::search::SearchState2Core::PVVector |
searchState2.h の 114 行で定義されています。
anonymous enum |
searchState2.h の 94 行で定義されています。
enum osl::search::SearchState2Core::NodeType [protected] |
searchState2.h の 117 行で定義されています。
osl::search::SearchState2Core::SearchState2Core | ( | const NumEffectState & | s, | |
checkmate_t & | checker | |||
) |
searchState2.cc の 54 行で定義されています。
参照先 hasLastRecord(), と setState().
osl::search::SearchState2Core::~SearchState2Core | ( | ) | [virtual] |
searchState2.cc の 63 行で定義されています。
bool osl::search::SearchState2Core::abort | ( | Move | best_move | ) | const [virtual] |
osl::search::SearchState2で再定義されています。
searchState2.cc の 127 行で定義されています。
参照先 osl::search::RecordStack2::dump(), osl::search::SimpleHashRecord::dump(), osl::RepetitionCounter::history(), history(), osl::search::RecordStack2::lastRecord(), record_stack, repetition_counter, osl::record::csa::show(), と state().
bool osl::search::SearchState2Core::abort | ( | ) | const |
const BigramKillerMove& osl::search::SearchState2Core::bigramKillerMove | ( | ) | const [inline] |
searchState2.h の 190 行で定義されています。
const checkmate_t& osl::search::SearchState2Core::checkmateSearcher | ( | ) | const [inline] |
searchState2.h の 301 行で定義されています。
参照元 osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2Tree< EvalT >::quiesceStable(), osl::search::AlphaBeta2Tree< EvalT >::testThreatmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain(), と osl::search::AlphaBeta2Tree< EvalT >::updateCheckmateCount().
int osl::search::SearchState2Core::countCheckAfterThreatmate | ( | Player | turn, | |
int | depth = 1 | |||
) | const [inline] |
turn の側が連続王手で詰ろを逃れている回数
searchState2.h の 453 行で定義されています。
参照先 osl::search::ThreatmateState::CHECK_AFTER_THREATMATE, depth, と result.
参照元 osl::search::QuiescenceSearch2< EvalT >::searchMain(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain().
int osl::search::SearchState2Core::countCheckAfterThreatmateSacrifice | ( | Player | turn, | |
int | depth = 1 | |||
) | const [inline] |
int osl::search::SearchState2Core::curDepth | ( | ) | const [inline] |
searchState2.h の 127 行で定義されています。
参照元 osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::QuiescenceSearch2< EvalT >::examineMoves(), osl::search::AlphaBeta2Tree< EvalT >::makeGenerator(), osl::search::AlphaBeta2< EvalT >::makeMove(), osl::search::AlphaBeta2Tree< EvalT >::nextMove(), osl::search::AlphaBeta2Tree< EvalT >::quiesce(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::AlphaBeta2< EvalT >::setRoot(), osl::search::AlphaBeta2Tree< EvalT >::testThreatmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain().
const HashKey& osl::search::SearchState2Core::currentHash | ( | ) | const [inline] |
searchState2.h の 305 行で定義されています。
参照先 osl::RepetitionCounter::history().
参照元 osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2< EvalT >::computeBestMoveIteratively(), osl::search::QuiescenceSearch2< EvalT >::examineMoves(), osl::search::AlphaBeta2< EvalT >::makeMove(), osl::search::QuiescenceSearch2< EvalT >::passValue(), osl::search::AlphaBeta2Tree< EvalT >::quiesceWithMove(), osl::search::QuiescenceSearch2< EvalT >::searchInternal(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::AlphaBeta2< EvalT >::setRoot(), と osl::search::QuiescenceSearch2< EvalT >::staticValue().
void osl::search::SearchState2Core::doUndoMoveLight | ( | Move | move, | |
Function & | f | |||
) | [inline] |
軽量化版 doUndo 千日手情報や, hash を更新しない
searchState2.h の 314 行で定義されています。
参照元 osl::search::QuiescenceSearch2< EvalT >::examineTakeBack(), osl::search::QuiescenceSearch2< EvalT >::examineTakeBack2(), と osl::search::QuiescenceSearch2< EvalT >::takeBackOrChase().
void osl::search::SearchState2Core::doUndoMoveOrPass | ( | const HashKey & | new_hash, | |
Move | move, | |||
Function & | f | |||
) | [inline] |
まともなdoUndo
searchState2.h の 274 行で定義されています。
参照元 osl::search::QuiescenceSearch2< EvalT >::examineMoves(), と osl::search::QuiescenceSearch2< EvalT >::passValue().
void osl::search::SearchState2Core::getBigramKillerMoves | ( | MoveVector & | moves | ) | const [inline] |
searchState2.h の 177 行で定義されています。
void osl::search::SearchState2Core::getKillerMoves | ( | MoveVector & | moves | ) | const [inline] |
searchState2.h の 185 行で定義されています。
bool osl::search::SearchState2Core::hasLastRecord | ( | unsigned int | n = 0 |
) | const [inline] |
searchState2.h の 137 行で定義されています。
参照先 osl::search::RecordStack2::hasLastRecord().
参照元 osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchInternal(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), SearchState2Core(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain().
const MoveStack& osl::search::SearchState2Core::history | ( | ) | const [inline] |
const HistoryTable& osl::search::SearchState2Core::historyTable | ( | ) | const [inline] |
searchState2.h の 195 行で定義されています。
HistoryTable& osl::search::SearchState2Core::historyTable | ( | ) | [inline] |
void osl::search::SearchState2Core::initPV | ( | ) | [inline] |
bool osl::search::SearchState2Core::isLosingState | ( | int | node_limit | ) | [inline] |
searchState2.h の 322 行で定義されています。
参照先 search_assert.
bool osl::search::SearchState2Core::isThreatmateState | ( | int | node_limit, | |
Move & | threatmate_move, | |||
bool | = false | |||
) | [inline] |
bool osl::search::SearchState2Core::isThreatmateStateShort | ( | int | depth, | |
Move & | threatmate_move | |||
) | [inline] |
bool osl::search::SearchState2Core::isWinningState | ( | int | node_limit, | |
Move & | checkmate_move, | |||
bool | parallel = false | |||
) | [inline] |
searchState2.h の 365 行で定義されています。
参照先 search_assert.
static bool osl::search::SearchState2Core::isWinningState | ( | checkmate_t & | search, | |
NumEffectState & | state, | |||
const HashKey & | key, | |||
PathEncoding | path, | |||
int | node_limit, | |||
Move & | checkmate_move, | |||
Move | last_move, | |||
bool | parallel = false | |||
) | [inline, static] |
searchState2.h の 352 行で定義されています。
参照先 osl::BLACK.
static bool osl::search::SearchState2Core::isWinningState | ( | checkmate_t & | search, | |
NumEffectState & | state, | |||
const HashKey & | key, | |||
PathEncoding | path, | |||
int | node_limit, | |||
Move & | checkmate_move, | |||
Move | last_move, | |||
bool | = false | |||
) | [inline, static] |
bool osl::search::SearchState2Core::isWinningStateShort | ( | int | depth, | |
Move & | checkmate_move | |||
) | [inline] |
FixedDepthSearcher を呼ぶ.
searchState2.h の 373 行で定義されています。
const Move osl::search::SearchState2Core::lastMove | ( | int | i = 1 |
) | const [inline] |
searchState2.h の 294 行で定義されています。
参照元 osl::search::QuiescenceSearch2< EvalT >::examineTakeBack2(), osl::search::MoveGenerator::generateTakeBack(), osl::search::AlphaBeta2Tree< EvalT >::quiesce(), osl::search::AlphaBeta2Tree< EvalT >::quiesceRoot(), osl::search::AlphaBeta2Tree< EvalT >::quiesceStable(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), osl::search::QuiescenceSearch2< EvalT >::staticValueWithThreat(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain().
const SimpleHashRecord* osl::search::SearchState2Core::lastRecord | ( | unsigned int | n = 0 |
) | const [inline] |
searchState2.h の 145 行で定義されています。
SimpleHashRecord* osl::search::SearchState2Core::lastRecord | ( | unsigned int | n = 0 |
) | [inline] |
searchState2.h の 141 行で定義されています。
参照先 osl::search::RecordStack2::lastRecord().
参照元 osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2Tree< EvalT >::nextMove(), osl::search::AlphaBeta2Tree< EvalT >::quiesceExp(), osl::search::AlphaBeta2Tree< EvalT >::quiesceRoot(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchInternal(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain().
void osl::search::SearchState2Core::makeMove | ( | Move | move | ) | [inline] |
osl::search::AlphaBeta2< EvalT >で再定義されています。
searchState2.h の 286 行で定義されています。
void osl::search::SearchState2Core::makeMoveHook | ( | Move | ) | [private] |
searchState2.cc の 170 行で定義されています。
searchState2.cc の 146 行で定義されています。
参照先 abort(), osl::Move::isPass(), と state().
void osl::search::SearchState2Core::makePV | ( | Move | m | ) | [inline] |
searchState2.h の 441 行で定義されています。
参照先 depth.
参照元 osl::search::AlphaBeta2Tree< EvalT >::addMultiPV(), osl::search::AlphaBeta2Tree< EvalT >::quiesceWithMove(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchInternal(), と osl::search::AlphaBeta2Tree< EvalT >::updateRootPV().
const PathEncoding& osl::search::SearchState2Core::path | ( | ) | const [inline] |
void osl::search::SearchState2Core::popAfterApply | ( | ) | [inline, private] |
ApplyMoveの後に行うこと.
searchState2.h の 260 行で定義されています。
参照先 osl::RepetitionCounter::pop(), と osl::search::RecordStack2::pop().
void osl::search::SearchState2Core::popPass | ( | ) | [inline] |
void osl::search::SearchState2Core::pushBeforeApply | ( | Move | move | ) | [inline, private] |
void osl::search::SearchState2Core::pushPass | ( | ) | [inline] |
const RecordStack2& osl::search::SearchState2Core::recordHistory | ( | ) | const [inline] |
searchState2.h の 296 行で定義されています。
const RepetitionCounter& osl::search::SearchState2Core::repetitionCounter | ( | ) | const [inline] |
void osl::search::SearchState2Core::restoreRootState | ( | ) |
searchState2.cc の 85 行で定義されています。
参照先 osl::search::RecordStack2::clear(), osl::RepetitionCounter::clear(), current_path, current_state, move_history, osl::RepetitionCounter::push(), record_stack, repetition_counter, root_depth, と root_state.
参照元 osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), と setState().
SimpleHashRecord* osl::search::SearchState2Core::rootRecord | ( | ) | [inline] |
const NumEffectState& osl::search::SearchState2Core::rootState | ( | ) | const [inline] |
searchState2.h の 299 行で定義されています。
void osl::search::SearchState2Core::setBigramKillerMove | ( | const BigramKillerMove & | killers | ) |
searchState2.cc の 106 行で定義されています。
参照先 shared.
void osl::search::SearchState2Core::setCurrentRecord | ( | SimpleHashRecord * | r | ) | [inline] |
void osl::search::SearchState2Core::setHistory | ( | const MoveStack & | h | ) |
searchState2.cc の 98 行で定義されています。
参照先 current_path, history(), move_history, root_depth, と osl::PathEncoding::turn().
void osl::search::SearchState2Core::setKillerMove | ( | Move | best_move | ) | [inline] |
osl::search::SearchState2で再定義されています。
searchState2.h の 166 行で定義されています。
参照先 osl::Move::isInvalid(), osl::Move::isPass(), osl::Move::player(), と search_assert.
参照元 osl::search::QuiescenceSearch2< EvalT >::examineMoves().
void osl::search::SearchState2Core::setRootRecord | ( | SimpleHashRecord * | root | ) | [inline] |
void osl::search::SearchState2Core::setState | ( | const NumEffectState & | s | ) | [virtual] |
state のコピーを行う.
this->state は探索終了後も保存されるが,探索中に exception が起こると 破壊されている
osl::search::SearchState2で再定義されています。
searchState2.cc の 68 行で定義されています。
参照先 restoreRootState(), root_state, と shared.
参照元 SearchState2Core().
const NumEffectState& osl::search::SearchState2Core::state | ( | ) | const [inline] |
searchState2.h の 298 行で定義されています。
参照元 abort(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2< EvalT >::computeBestMoveIteratively(), osl::search::QuiescenceSearch2< EvalT >::currentState(), osl::search::QuiescenceSearch2< EvalT >::currentValueWithLastThreat(), osl::search::QuiescenceSearch2< EvalT >::examineCapture(), osl::search::QuiescenceSearch2< EvalT >::examineMoves(), osl::search::QuiescenceSearch2< EvalT >::examineTakeBack(), osl::search::QuiescenceSearch2< EvalT >::examineTakeBack2(), osl::search::AlphaBeta2< EvalT >::findCheckmateInPV(), osl::search::MoveGenerator::generateAll(), osl::search::QuiescenceSearch2< EvalT >::generateAndExamineTakeBack2(), osl::search::MoveGenerator::generateBreakThreatmate(), osl::search::MoveGenerator::generateCapture(), osl::search::MoveGenerator::generateKingEscape(), osl::search::MoveGenerator::generateTakeBack(), osl::search::MoveGenerator::generateTesuji(), osl::search::AlphaBeta2< EvalT >::makeMove(), makePV(), osl::search::AlphaBeta2Tree< EvalT >::nextMove(), osl::search::AlphaBeta2Tree< EvalT >::quiesce(), osl::search::AlphaBeta2Tree< EvalT >::quiesceRoot(), osl::search::QuiescenceSearch2< EvalT >::search(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::QuiescenceSearch2< EvalT >::searchInternal(), osl::search::QuiescenceSearch2< EvalT >::searchIteratively(), osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::AlphaBeta2Tree< EvalT >::showPV(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), osl::search::QuiescenceSearch2< EvalT >::staticValueWithThreat(), osl::search::QuiescenceSearch2< EvalT >::takeBackOrChase(), osl::search::QuiescenceSearch2< EvalT >::takeBackValue(), osl::search::AlphaBeta2Tree< EvalT >::testThreatmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmateAgain(), と osl::search::AlphaBeta2Tree< EvalT >::updateRootPV().
bool osl::search::SearchState2Core::tryThreatmate | ( | ) | const [inline] |
searchState2.h の 428 行で定義されています。
参照先 osl::move_generator::addeffect8::hasEffect(), osl::search::FirstMoveThreatmate::isMember(), osl::Move::isNormal(), osl::Move::ptypeO(), と osl::Move::to().
参照元 osl::search::QuiescenceSearch2< EvalT >::searchMain(), osl::search::QuiescenceSearch2< EvalT >::staticValue(), と osl::search::AlphaBeta2Tree< EvalT >::testThreatmate().
void osl::search::SearchState2Core::updateRepetitionCounterAfterMove | ( | const HashKey & | new_hash | ) | [inline, private] |
pushBeforeApply の後,ApplyMoveの中,Functionを呼ぶ前に呼ばれる
searchState2.h の 253 行で定義されています。
friend class AlphaBeta2ParallelCommon [friend] |
searchState2.h の 92 行で定義されています。
friend class Updator [friend] |
searchState2.h の 249 行で定義されています。
searchState2.h の 106 行で定義されています。
参照元 restoreRootState(), と setHistory().
NumEffectState osl::search::SearchState2Core::current_state [protected] |
searchState2.h の 97 行で定義されています。
参照元 restoreRootState().
osl::CArray< int, osl::search::SearchState2Core::MaxDepth > osl::search::SearchState2Core::depth_node_count_quiesce [static] |
MoveStack osl::search::SearchState2Core::move_history [protected] |
searchState2.h の 107 行で定義されています。
参照元 restoreRootState(), と setHistory().
CArray<NodeType,MaxDepth> osl::search::SearchState2Core::node_type [protected] |
CArray<PVVector,MaxDepth> osl::search::SearchState2Core::pv [protected] |
searchState2.h の 116 行で定義されています。
参照元 osl::search::AlphaBeta2Tree< EvalT >::addMultiPV(), osl::search::AlphaBeta2Tree< EvalT >::AlphaBeta2Tree(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2< EvalT >::findCheckmateInPV(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::AlphaBeta2Tree< EvalT >::showPV(), と osl::search::AlphaBeta2Tree< EvalT >::updateRootPV().
searchState2.h の 110 行で定義されています。
参照元 abort(), と restoreRootState().
searchState2.h の 111 行で定義されています。
参照元 abort(), osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch(), と restoreRootState().
int osl::search::SearchState2Core::root_depth [protected] |
searchState2.h の 108 行で定義されています。
参照元 restoreRootState(), と setHistory().
NumEffectState osl::search::SearchState2Core::root_state [protected] |
searchState2.h の 97 行で定義されています。
参照元 restoreRootState(), と setState().
boost::shared_ptr<SearchState2Shared> osl::search::SearchState2Core::shared [protected] |
osl::search::AlphaBeta2Tree< EvalT >で再定義されています。
searchState2.h の 112 行で定義されています。
参照元 setBigramKillerMove(), と setState().
volatile bool osl::search::SearchState2Core::stop_tree |
beta cut in parallel search
searchState2.h の 121 行で定義されています。
参照元 osl::search::AlphaBeta2Tree< EvalT >::stopping(), と osl::search::AlphaBeta2Tree< EvalT >::testStop().