詰までの手数を数える. [詳細]
#include <proofTreeDepthDfpn.h>
構成 | |
| struct | Table |
| 深さを記憶するテーブル. [詳細] | |
Public メソッド | |
| ProofTreeDepthDfpn (const DfpnTable &table) | |
| ~ProofTreeDepthDfpn () | |
| int | depth (const HashKey &key, const state::NumEffectState &state, bool is_or_node) const |
| void | retrievePV (const state::NumEffectState &state, bool is_or_node, vector< Move > &pv) const |
Private メソッド | |
| int | orNode (const HashKey &key, Move &best_move, int height=0) const |
| int | andNode (const HashKey &key, Move &best_move, int height=0) const |
Private 変数 | |
| boost::scoped_ptr< Table > | table |
詰までの手数を数える.
詰将棋ルーチン次第で,無駄合なども含まれるため 人間の感覚と一致するとは限らない.
proofTreeDepthDfpn.h の 24 行で定義されています。
| osl::checkmate::ProofTreeDepthDfpn::ProofTreeDepthDfpn | ( | const DfpnTable & | table | ) | [explicit] |
proofTreeDepthDfpn.cc の 76 行で定義されています。
| osl::checkmate::ProofTreeDepthDfpn::~ProofTreeDepthDfpn | ( | ) |
proofTreeDepthDfpn.cc の 82 行で定義されています。
| int osl::checkmate::ProofTreeDepthDfpn::andNode | ( | const HashKey & | key, | |
| Move & | best_move, | |||
| int | height = 0 | |||
| ) | const [private] |
proofTreeDepthDfpn.cc の 180 行で定義されています。
参照先 osl::alt(), osl::BLACK, depth(), osl::checkmate::Dfpn::MaxDepth, moves, orNode(), result, table, と osl::WHITE.
参照元 orNode().
| int osl::checkmate::ProofTreeDepthDfpn::depth | ( | const HashKey & | key, | |
| const state::NumEffectState & | state, | |||
| bool | is_or_node | |||
| ) | const |
| int osl::checkmate::ProofTreeDepthDfpn::orNode | ( | const HashKey & | key, | |
| Move & | best_move, | |||
| int | height = 0 | |||
| ) | const [private] |
proofTreeDepthDfpn.cc の 119 行で定義されています。
参照先 andNode(), osl::checkmate::DfpnRecordBase::best_move, depth(), osl::checkmate::FixedDepthSearcher::hasCheckmateMoveOfTurn(), osl::checkmate::ProofDisproof::isCheckmateSuccess(), osl::Move::isNormal(), osl::checkmate::Dfpn::MaxDepth, osl::PieceStand::nextStand(), osl::checkmate::DfpnRecordBase::proof_disproof, table, と osl::WHITE.
参照元 andNode().
| void osl::checkmate::ProofTreeDepthDfpn::retrievePV | ( | const state::NumEffectState & | state, | |
| bool | is_or_node, | |||
| vector< Move > & | pv | |||
| ) | const |
proofTreeDepthDfpn.cc の 96 行で定義されています。
参照先 depth, osl::Move::isNormal(), と osl::checkmate::Dfpn::MaxDepth.
boost::scoped_ptr<Table> osl::checkmate::ProofTreeDepthDfpn::table [private] |
proofTreeDepthDfpn.h の 26 行で定義されています。
1.6.3