#include <checkmateSearcher.h>
Public 型 | |
typedef NumEffectState | state_t |
typedef Table | table_t |
Public メソッド | |
CheckmateSearcher (Player attacker, Table &t, size_t limit=CHECKMATE_DEFAULT_TOTAL_NODE_LIMIT) | |
~CheckmateSearcher () | |
size_t | totalNodeCount () const |
size_t | totalNodeLimit () const |
bool | verbose () const |
void | setVerbose (bool verbose=true) |
template<Player P> | |
const ProofDisproof | hasCheckmateMove (state_t &state, const HashKey &key, const PathEncoding &path, size_t search_node_limit, Move &best_move) |
stateP̤֤ͤ. | |
const ProofDisproof | hasCheckmateMove (state_t &state, const HashKey &key, const PathEncoding &path, size_t limit, Move &best_move) |
template<Player P> | |
const ProofDisproof | hasEscapeMove (state_t &state, const HashKey &, const PathEncoding &path, size_t search_node_limit, Move last_move) |
statePˤäƵͤǤ̤֤ ΤȤǤͤˤбƤʤ ꤬äƤʤˤϸƤФʤ stateμ֤alt(P)ȰפƤȤ statePˤäƲ꤬äƤȤ | |
const ProofDisproof | hasEscapeMove (state_t &state, const HashKey &key, const PathEncoding &path, size_t limit, Move last_move) |
template<Player P> | |
void | attack (unsigned int proofLimit, unsigned int disproofLimit, CheckHashRecord *parent, CheckHashRecord *record) |
attack¦ | |
template<Player P> | |
void | defense (unsigned int proofLimit, unsigned int disproofLimit, CheckHashRecord *parent, CheckHashRecord *record) |
ͤߤƨ alt(P)ˤ | |
const table_t & | getTable () const |
Private メソッド | |
void | clearNodeCount () |
template<Player P> | |
bool | setUpAttackNode (CheckHashRecord *record) |
attack ν: ˬ̤ǡήåǡݡʤɤԤ | |
template<Player P> | |
bool | setUpDefenseNode (CheckHashRecord *record) |
defense ν: ˬ̤ǡήåǡݡʤɤԤ | |
bool | exceedNodeCount (unsigned int futureCost) const |
Static Private メソッド | |
static bool | exceedRootTolerance (unsigned int proofNumber, unsigned int disproofNumber, unsigned int continuousNoExpandLoop) |
Private 変数 | |
state_t * | state |
Table & | table |
FixedDepthSearcher | fixed_searcher |
HashKey | key |
PathEncoding | path |
int | depth |
size_t | node_count |
ߤõǾΡɿ | |
size_t | search_node_limit |
ߤõǾǽʥΡɿ | |
size_t | total_node_count |
objectƤΡɿ | |
const size_t | total_node_limit |
objectƤǽʥΡɿ | |
bool | verbose_destructor |
const Player | attacker |
Table | SimpleCheckHashTable Ȥ ArrayCheckHashTable ʤ |
checkmateSearcher.h の 39 行で定義されています。
typedef NumEffectState osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state_t |
checkmateSearcher.h の 42 行で定義されています。
typedef Table osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table_t |
checkmateSearcher.h の 43 行で定義されています。
osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::CheckmateSearcher | ( | Player | attacker, | |
Table & | t, | |||
size_t | limit = CHECKMATE_DEFAULT_TOTAL_NODE_LIMIT | |||
) | [inline] |
attacker | ¦ץ쥤䡼 (֥Ȥϥץ쥤) |
checkmateSearcher.tcc の 119 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, と check_assert.
osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher | ( | ) | [inline] |
checkmateSearcher.tcc の 129 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount(), osl::checkmate::CheckmateRecorder::stat(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_limit, と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::verbose_destructor.
void osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount | ( | ) | [inline, private] |
checkmateSearcher.h の 61 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count.
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().
size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::totalNodeCount | ( | ) | const [inline] |
checkmateSearcher.h の 69 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count.
参照元 osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isLosingState(), osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState(), と osl::checkmate::DualCheckmateSearcher< >::mainNodeCount().
size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::totalNodeLimit | ( | ) | const [inline] |
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::verbose | ( | ) | const [inline] |
checkmateSearcher.h の 71 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::verbose_destructor.
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setVerbose(), と osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::~DualCheckmateSearcher().
void osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setVerbose | ( | bool | verbose = true |
) | [inline] |
const osl::checkmate::ProofDisproof osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove | ( | state_t & | state, | |
const HashKey & | key, | |||
const PathEncoding & | path, | |||
size_t | search_node_limit, | |||
Move & | best_move | |||
) | [inline] |
stateP̤֤ͤ.
stateμ֤PȰפƤȤ
search_node_limit | õnodeܰ Successλbest_moveˤμ |
checkmateSearcher.tcc の 833 行で定義されています。
参照先 osl::checkmate::CheckTableUtil::allocate(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, osl::checkmate::CheckHashRecord::bestMove, check_assert, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount(), osl::checkmate::CheckHashRecord::disproof(), osl::checkmate::CheckHashRecord::distance, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedRootTolerance(), osl::checkmate::CheckHashRecord::findLoop(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::fixed_searcher, osl::PathEncoding::getDepth(), osl::checkmate::CheckHashRecord::hasBestMove(), osl::checkmate::ProofDisproof::isFinal(), osl::Move::isValid(), osl::checkmate::CheckHashRecord::isVisited, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key, osl::checkmate::ProofDisproof::LoopDetection(), osl::eval::min(), osl::checkmate::CheckMoveCore::move, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, osl::checkmate::CheckHashRecord::parent, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path, osl::checkmate::CheckHashRecord::proof(), osl::checkmate::CheckHashRecord::proofDisproof(), ROOT_DISPROOF_TOL, ROOT_PROOF_TOL, osl::checkmate::CheckmateRecorder::rootLog(), osl::checkmate::CheckmateRecorder::setNextMove(), osl::checkmate::FixedDepthSearcher::setState(), osl::checkmate::CheckmateRecorder::setState(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_limit, osl::checkmate::ProofDisproof::Unknown(), と osl::WHITE.
const ProofDisproof osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove | ( | state_t & | state, | |
const HashKey & | key, | |||
const PathEncoding & | path, | |||
size_t | limit, | |||
Move & | best_move | |||
) | [inline] |
const osl::checkmate::ProofDisproof osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove | ( | state_t & | state, | |
const HashKey & | root_key, | |||
const PathEncoding & | path, | |||
size_t | search_node_limit, | |||
Move | last_move | |||
) | [inline] |
statePˤäƵͤǤ̤֤ ΤȤǤͤˤбƤʤ ꤬äƤʤˤϸƤФʤ stateμ֤alt(P)ȰפƤȤ statePˤäƲ꤬äƤȤ
search_node_limit | õnodeܰ | |
last_move | ǤͤȽɬ |
checkmateSearcher.tcc の 920 行で定義されています。
参照先 osl::checkmate::CheckTableUtil::allocate(), osl::alt(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, osl::checkmate::CheckMoveListBase::begin(), osl::checkmate::CheckHashRecord::bestMove, check_assert, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount(), osl::checkmate::CheckHashRecord::distance, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedRootTolerance(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::fixed_searcher, osl::PathEncoding::getDepth(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key, osl::checkmate::ProofDisproof::LoopDetection(), osl::eval::min(), osl::checkmate::CheckHashRecord::moves, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path, osl::checkmate::ProofDisproof::PawnCheckmate(), ROOT_DISPROOF_TOL, ROOT_PROOF_TOL, osl::checkmate::CheckmateRecorder::rootLog(), osl::checkmate::CheckmateRecorder::setNextMove(), osl::checkmate::CheckMoveListBase::setOne(), osl::checkmate::FixedDepthSearcher::setState(), osl::checkmate::CheckmateRecorder::setState(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_limit, osl::checkmate::ProofDisproof::Unknown(), と osl::WHITE.
const ProofDisproof osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove | ( | state_t & | state, | |
const HashKey & | key, | |||
const PathEncoding & | path, | |||
size_t | limit, | |||
Move | last_move | |||
) | [inline] |
void osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack | ( | unsigned int | proofLimit, | |
unsigned int | disproofLimit, | |||
CheckHashRecord * | parent, | |||
CheckHashRecord * | record | |||
) | [inline] |
attack¦
record | ΥΡɤ CheckHashRecord Υǡ 0 ʳϤ attack ǥơ֥ҤѤ 0 Ϥ attack ǿ˥쥳ɤä礽Υݥ ݥλȤʤΤ ProofDisproof record->proofDisproof() ˳ǼƵ | |
parent | ƥΡɤΥݥήåѡ |
checkmateSearcher.tcc の 209 行で定義されています。
参照先 osl::stat::Ratio::add(), osl::checkmate::MoveFilter::addTarget(), osl::checkmate::CheckHashRecord::addToSolvedInAttack(), osl::checkmate::addWithSaturation(), osl::checkmate::TwinAgeEntry::age, osl::checkmate::CheckTableUtil::allocate(), osl::alt(), osl::checkmate::DisproofPieces::attack(), osl::checkmate::CheckMoveListBase::begin(), osl::checkmate::CheckHashRecord::bestMove, osl::checkmate::CheckHashRecord::bestResultInSolved, osl::BISHOP, check_assert, osl::checkmate::ProofDisproof::Checkmate(), osl::checkmate::TwinList::clear(), osl::checkmate::CheckHashRecord::confirmParent(), osl::checkmate::CheckMove::cost_proof, osl::checkmate::ProofDisproof::disproof(), osl::checkmate::CheckHashRecord::disproof(), osl::checkmate::ProofDisproof::DISPROOF_LIMIT, osl::checkmate::CheckHashRecord::distance, osl::checkmate::CheckMoveListBase::end(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount(), osl::checkmate::CheckHashRecord::filter, osl::checkmate::CheckMove::findLoop(), osl::checkmate::CheckHashRecord::findLoop(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::fixed_searcher, osl::checkmate::CheckMove::flags, osl::checkmate::FixedDepthSearcher::hasCheckmateMove(), osl::checkmate::PawnCheckmateMoves::hasParingNoPromote(), osl::checkmate::CheckHashRecord::hasProofPieces(), osl::checkmate::TwinAgeEntry::hasTwinEntry(), osl::checkmate::MoveFlags::ImmediateCheckmate, osl::checkmate::CheckHashRecord::initialProofDisproof(), osl::checkmate::ProofDisproof::isCheckmateFail(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::checkmate::CheckHashRecord::isConfluence, osl::checkmate::CheckHashRecord::isConsistent(), osl::Move::isDrop(), osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::ProofDisproof::isLoopDetection(), osl::checkmate::ProofDisproof::isPawnDropFoul(), osl::checkmate::ProofDisproof::isUnknown(), osl::Move::isValid(), osl::checkmate::DisproofOracleAttack< Attacker >::isValid(), osl::checkmate::CheckHashRecord::isVisited, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key, osl::eval::max(), osl::checkmate::TwinEntry::move, osl::checkmate::CheckMoveCore::move, osl::checkmate::CheckHashRecord::moves, osl::checkmate::CheckHashRecord::needMoveGeneration(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, osl::Move::noPromote(), osl::checkmate::MoveFlags::NoPromote, osl::checkmate::CheckHashRecord::parent, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path, osl::checkmate::ProofDisproof::PawnCheckmate(), osl::checkmate::ProofDisproof::proof(), osl::checkmate::CheckHashRecord::proof(), osl::checkmate::ProofDisproof::PROOF_LIMIT, osl::checkmate::CheckHashRecord::proofDisproof(), osl::checkmate::CheckHashRecord::propagateCheckmate(), osl::checkmate::CheckHashRecord::propagateNoCheckmate(), osl::Move::ptype(), ratio, osl::checkmate::CheckMoveCore::record, osl::ROOK, osl::checkmate::CheckHashRecord::sameBoards, osl::checkmate::CheckHashRecord::selectBestAttackMove(), osl::checkmate::MoveFlags::set(), osl::checkmate::CheckHashRecord::setDisproofPieces(), osl::checkmate::CheckmateRecorder::setLeaveReason(), osl::checkmate::CheckHashRecord::setLoopDetection(), osl::checkmate::CheckHashRecord::setLoopDetectionInAttack(), osl::checkmate::CheckmateRecorder::setNextMove(), osl::checkmate::CheckHashRecord::setProofDisproof(), osl::checkmate::CheckHashRecord::setProofPieces(), osl::checkmate::CheckHashRecord::setProofPiecesAttack(), osl::checkmate::TwinList::size(), osl::checkmate::CheckHashRecord::stand(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, osl::checkmate::CheckHashRecord::twins, と osl::checkmate::CheckHashRecord::useMaxInsteadOfSum.
void osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense | ( | unsigned int | proofLimit, | |
unsigned int | disproofLimit, | |||
CheckHashRecord * | parent, | |||
CheckHashRecord * | record | |||
) | [inline] |
ͤߤƨ alt(P)ˤ
record | ΥΡɤ CheckHashRecord Υǡ 0 ʳϤ attack ǥơ֥ҤѤ 0 Ϥ attack ǿ˥쥳ɤä礽Υݥ ProofDisproof record->proofDisproof() ˳ǼƵ |
checkmateSearcher.tcc の 576 行で定義されています。
参照先 osl::stat::Ratio::add(), osl::checkmate::MoveFilter::addTarget(), osl::checkmate::addWithSaturation(), osl::checkmate::TwinAgeEntry::age, osl::checkmate::CheckTableUtil::allocate(), osl::alt(), osl::checkmate::CheckMoveListBase::begin(), osl::checkmate::CheckHashRecord::bestMove, osl::checkmate::CheckHashRecord::bestResultInSolved, osl::checkmate::MoveFlags::BlockingBySacrifice, check_assert, osl::checkmate::TwinList::clear(), osl::checkmate::CheckHashRecord::confirmParent(), osl::checkmate::CheckMove::cost_disproof, osl::checkmate::ProofPieces::defense(), osl::checkmate::CheckHashRecord::disproof(), osl::checkmate::ProofDisproof::DISPROOF_LIMIT, osl::checkmate::CheckHashRecord::distance, osl::checkmate::CheckMoveListBase::end(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount(), osl::checkmate::CheckHashRecord::filter, osl::checkmate::CheckHashRecord::finalByDominance(), osl::checkmate::CheckMove::findLoop(), osl::checkmate::CheckHashRecord::findLoop(), osl::checkmate::TwinAgeEntry::hasTwinEntry(), osl::checkmate::CheckHashRecord::initialProofDisproof(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::checkmate::CheckHashRecord::isConfluence, osl::checkmate::CheckHashRecord::isConsistent(), osl::Move::isDrop(), osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::MoveFilter::isTarget(), osl::checkmate::DisproofOracleDefense< Attacker >::isValid(), osl::checkmate::CheckHashRecord::isVisited, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key, osl::checkmate::CheckMoveCore::move, osl::checkmate::CheckHashRecord::moves, osl::checkmate::CheckHashRecord::needMoveGeneration(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, osl::checkmate::CheckHashRecord::parent, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path, osl::checkmate::ProofDisproof::proof(), osl::checkmate::CheckHashRecord::proof(), osl::checkmate::ProofDisproof::PROOF_LIMIT, osl::checkmate::CheckHashRecord::proofDisproof(), osl::checkmate::CheckHashRecord::propagateCheckmate(), osl::checkmate::CheckHashRecord::propagateNoCheckmate(), ratio, osl::checkmate::CheckMoveCore::record, osl::checkmate::CheckHashRecord::sameBoards, osl::checkmate::CheckHashRecord::selectBestDefenseMove(), osl::checkmate::CheckHashRecord::setDisproofPiecesDefense(), osl::checkmate::CheckmateRecorder::setLeaveReason(), osl::checkmate::CheckHashRecord::setLoopDetection(), osl::checkmate::CheckHashRecord::setLoopDetectionTryMerge(), osl::checkmate::CheckmateRecorder::setNextMove(), osl::checkmate::CheckHashRecord::setProofDisproof(), osl::checkmate::CheckHashRecord::setProofPieces(), osl::checkmate::TwinList::size(), osl::checkmate::MoveFlags::Solved, osl::checkmate::CheckHashRecord::stand(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, osl::checkmate::CheckHashRecord::twins, osl::checkmate::MoveFlags::Upward, と osl::checkmate::CheckHashRecord::useMaxInsteadOfSum.
const table_t& osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::getTable | ( | ) | const [inline] |
checkmateSearcher.h の 140 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table.
参照元 osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isLosingState(), と osl::checkmate::DualCheckmateSearcher< Table, HEstimator, CostEstimator >::isWinningState().
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode | ( | CheckHashRecord * | record | ) | [inline, private] |
attack ν: ˬ̤ǡήåǡݡʤɤԤ
record | ƤӽФ0, ƤӽФϳݤǡؤΥݥ |
checkmateSearcher.tcc の 149 行で定義されています。
参照先 osl::PieceStand::add(), osl::alt(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, osl::checkmate::CheckMoveListBase::begin(), osl::checkmate::CheckHashRecord::bestMove, check_assert, osl::checkmate::ProofDisproof::Checkmate(), osl::checkmate::CheckMoveListBase::empty(), osl::checkmate::CheckMoveListBase::end(), osl::checkmate::CheckMove::flags, osl::checkmate::MoveFlags::ImmediateCheckmate, osl::checkmate::DisproofPieces::leaf(), osl::checkmate::CheckHashRecord::moves, osl::checkmate::CheckHashRecord::needMoveGeneration(), osl::checkmate::ProofDisproof::NoCheckmate(), osl::checkmate::ProofDisproof::PawnCheckmate(), osl::checkmate::CheckHashRecord::propagateCheckmate(), osl::checkmate::CheckHashRecord::propagateNoCheckmate(), osl::checkmate::MoveFlags::set(), osl::checkmate::CheckHashRecord::setDisproofPieces(), osl::checkmate::CheckMoveListBase::setOne(), osl::checkmate::CheckHashRecord::setProofPieces(), osl::checkmate::CheckHashRecord::stand(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table, と osl::checkmate::CheckHashRecord::updateBestResultInSolvedAttack().
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode | ( | CheckHashRecord * | record | ) | [inline, private] |
defense ν: ˬ̤ǡήåǡݡʤɤԤ
record | ƤӽФ0, ƤӽФϳݤǡؤΥݥ |
checkmateSearcher.tcc の 505 行で定義されています。
参照先 osl::alt(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker, osl::checkmate::CheckMoveListBase::begin(), osl::checkmate::CheckHashRecord::bestMove, check_assert, osl::checkmate::ProofDisproof::disproof(), osl::checkmate::CheckMoveListBase::empty(), osl::checkmate::CheckMoveListBase::end(), osl::checkmate::CheckHashRecord::false_branch_candidate, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::fixed_searcher, osl::checkmate::FixedDepthSearcher::hasEscapeByMove(), osl::checkmate::ProofDisproof::isCheckmateFail(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::checkmate::CheckHashRecord::isConsistent(), osl::checkmate::ProofDisproof::isFinal(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key, osl::checkmate::ProofPieces::leaf(), osl::checkmate::CheckMoveCore::move, osl::checkmate::CheckHashRecord::moves, osl::checkmate::CheckHashRecord::needMoveGeneration(), osl::checkmate::ProofDisproof::NoEscape(), osl::checkmate::CheckHashRecord::parent, osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path, osl::checkmate::ProofDisproof::proof(), osl::checkmate::CheckHashRecord::proofDisproof(), osl::checkmate::CheckHashRecord::propagateCheckmate(), osl::checkmate::CheckMoveListBase::setOne(), osl::checkmate::CheckHashRecord::setProofPieces(), osl::checkmate::CheckHashRecord::stand(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state, と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table.
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount | ( | unsigned int | futureCost | ) | const [inline, private] |
checkmateSearcher.tcc の 140 行で定義されています。
参照先 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count, と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::search_node_limit.
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove().
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedRootTolerance | ( | unsigned int | proofNumber, | |
unsigned int | disproofNumber, | |||
unsigned int | continuousNoExpandLoop | |||
) | [inline, static, private] |
state_t* osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::state [private] |
checkmateSearcher.h の 45 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode().
Table& osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::table [private] |
checkmateSearcher.h の 46 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::getTable(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().
FixedDepthSearcher osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::fixed_searcher [private] |
checkmateSearcher.h の 47 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode().
HashKey osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::key [private] |
checkmateSearcher.h の 48 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode().
PathEncoding osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::path [private] |
checkmateSearcher.h の 49 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode().
int osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::depth [private] |
checkmateSearcher.h の 50 行で定義されています。
size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::node_count [private] |
ߤõǾΡɿ
checkmateSearcher.h の 52 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attack(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::defense(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove().
size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::search_node_limit [private] |
ߤõǾǽʥΡɿ
checkmateSearcher.h の 54 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::exceedNodeCount().
size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_count [private] |
objectƤΡɿ
checkmateSearcher.h の 56 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::clearNodeCount(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::totalNodeCount(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().
const size_t osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::total_node_limit [private] |
objectƤǽʥΡɿ
checkmateSearcher.h の 58 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::totalNodeLimit(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().
bool osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::verbose_destructor [private] |
checkmateSearcher.h の 59 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setVerbose(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::verbose(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().
const Player osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::attacker [private] |
checkmateSearcher.h の 60 行で定義されています。
参照元 osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::CheckmateSearcher(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasCheckmateMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::hasEscapeMove(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpAttackNode(), osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::setUpDefenseNode(), と osl::checkmate::CheckmateSearcher< Table, HEstimator, CostEstimator >::~CheckmateSearcher().