SearchFramework のうち,template parameter を含まない部分. [詳細]
#include <searchState2.h>
Public メソッド | |
SearchState2 (const NumEffectState &s, checkmate_t &checker) | |
virtual | ~SearchState2 () |
void | setState (const NumEffectState &s) |
state のコピーを行う. | |
void | setKillerMove (Move best_move) |
int | curLimit () const |
bool | abort (Move) const |
Static Public 変数 | |
static const int | ReSearchLimitMargin = 80 |
再探索や,指手生成でより確率の高い手があったときに無視する範囲 | |
Protected メソッド | |
void | setRoot (int limit) |
root で limitを閾値に探索を始めることを設定 | |
void | addLimit (int limit) |
void | subLimit (int limit) |
int | countSacrificeCheck2 (int history_max) const |
王手の捨て駒の連続を2ループまで数える | |
void | checkPointSearchAllMoves () |
debug 用途 | |
Protected 変数 | |
int | root_limit |
int | cur_limit |
SearchFramework のうち,template parameter を含まない部分.
searchState2.h の 494 行で定義されています。
osl::search::SearchState2::SearchState2 | ( | const NumEffectState & | s, | |
checkmate_t & | checker | |||
) |
searchState2.cc の 179 行で定義されています。
osl::search::SearchState2::~SearchState2 | ( | ) | [virtual] |
searchState2.cc の 185 行で定義されています。
bool osl::search::SearchState2::abort | ( | Move | best_move | ) | const [virtual] |
osl::search::SearchState2Coreを再定義しています。
searchState2.cc の 203 行で定義されています。
参照先 osl::search::SearchState2Core::abort(), cur_limit, と root_limit.
void osl::search::SearchState2::addLimit | ( | int | limit | ) | [inline, protected] |
searchState2.h の 527 行で定義されています。
参照先 cur_limit, と search_assert.
void osl::search::SearchState2::checkPointSearchAllMoves | ( | ) | [protected] |
debug 用途
searchState2.cc の 212 行で定義されています。
int osl::search::SearchState2::countSacrificeCheck2 | ( | int | history_max | ) | const [protected] |
王手の捨て駒の連続を2ループまで数える
history_max | これ以上を逆上らない |
searchState2.cc の 197 行で定義されています。
参照先 osl::search::SacrificeCheck::count2(), osl::search::SearchState2Core::history(), と osl::search::SearchState2Core::recordHistory().
参照元 osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearch().
int osl::search::SearchState2::curLimit | ( | ) | const [inline] |
searchState2.h の 514 行で定義されています。
参照先 cur_limit.
参照元 osl::search::AlphaBeta2Tree< EvalT >::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2< EvalT >::alphaBetaSearchRoot(), osl::search::AlphaBeta2< EvalT >::makeMove(), osl::search::AlphaBeta2Tree< EvalT >::nextMove(), osl::search::AlphaBeta2Tree< EvalT >::searchAllMoves(), osl::search::AlphaBeta2Tree< EvalT >::testThreatmate(), と osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate().
void osl::search::SearchState2::setKillerMove | ( | Move | best_move | ) | [inline] |
void osl::search::SearchState2::setRoot | ( | int | limit | ) | [inline, protected] |
root で limitを閾値に探索を始めることを設定
osl::search::AlphaBeta2< EvalT >で再定義されています。
searchState2.h の 522 行で定義されています。
参照先 cur_limit, と root_limit.
void osl::search::SearchState2::setState | ( | const NumEffectState & | s | ) | [virtual] |
state のコピーを行う.
this->state は探索終了後も保存されるが,探索中に exception が起こると 破壊されている
osl::search::SearchState2Coreを再定義しています。
searchState2.cc の 190 行で定義されています。
参照先 cur_limit, と root_limit.
void osl::search::SearchState2::subLimit | ( | int | limit | ) | [inline, protected] |
searchState2.h の 528 行で定義されています。
参照先 cur_limit, と search_assert.
int osl::search::SearchState2::cur_limit [protected] |
searchState2.h の 501 行で定義されています。
参照元 abort(), addLimit(), curLimit(), setRoot(), setState(), と subLimit().
const int osl::search::SearchState2::ReSearchLimitMargin = 80 [static] |
再探索や,指手生成でより確率の高い手があったときに無視する範囲
searchState2.h の 498 行で定義されています。
int osl::search::SearchState2::root_limit [protected] |
searchState2.h の 500 行で定義されています。
参照元 abort(), osl::search::AlphaBeta2Tree< EvalT >::addMultiPV(), osl::search::AlphaBeta2< EvalT >::computeBestMoveIteratively(), osl::search::AlphaBeta2< EvalT >::findCheckmateInPV(), setRoot(), setState(), osl::search::AlphaBeta2Tree< EvalT >::testThreatmate(), osl::search::AlphaBeta2Tree< EvalT >::tryCheckmate(), と osl::search::AlphaBeta2Tree< EvalT >::updateRootPV().