クラス osl::ntesuki::NtesukiSearcher

#include <ntesukiSearcher.h>

osl::ntesuki::NtesukiSearcherのコラボレーション図
Collaboration graph
[凡例]

すべてのメンバ一覧

構成

class  AttackHelper
class  CallSimulationAttack
class  CallSimulationDefense
class  CallSimulationDefenseDisproof
class  DefenseHelper

Public 型

typedef NumEffectState State

Public メソッド

 NtesukiSearcher (State &state, NtesukiMoveGenerator *mg, unsigned int table_limit, volatile int *stop_flag, bool verbose, int maxPass=NtesukiRecord::SIZE, NtesukiRecord::IWScheme iwscheme=NtesukiRecord::pn_iw, NtesukiRecord::PSScheme psscheme=NtesukiRecord::no_ps, NtesukiRecord::ISScheme isscheme=NtesukiRecord::no_is, int tsumero_cost=0, int tsumero_estimate=0, double gc_ratio=0.33)
 ~NtesukiSearcher ()
template<Player T>
int search ()
int searchSlow (Player attacker, int rnl=160000)
NtesukiTablegetTable ()
int getNodeCount () const
bool exceedReadNodeLimit () const

Static Public 変数

static bool delay_non_pass = false
 探索のふるまいを制御する変数.
static bool ptt_invalid_defense = false
static bool delay_interpose = false
static bool delay_nopromote = false
static bool delay_non_attack = false
static bool read_attack_only = false
static bool ptt_non_attack = false
static bool ptt_siblings_fail = false
static bool ptt_siblings_success = false
static bool ptt_uncle = false
static bool ptt_aunt = false
static unsigned int dynamic_widening_width = 0
static const int NtesukiNotFound = -1
static const int ReadLimitReached = -2
static const int TableLimitReached = -3

Private 型

typedef std::vector< Movemoves_t
 ルートから現在探索中のノードまでの move.
typedef std::vector
< NtesukiRecord * > 
nodes_t
 ルートから現在探索中のノードまでの局面.

Private メソッド

template<Player T>
NtesukiResult attack (NtesukiRecord *record, const NtesukiRecord *oracle_attack, const NtesukiRecord *oracle_defense, unsigned int proofLimit, unsigned int disproofLimit, int pass_left, const Move last_move)
 攻撃側の処理
template<Player T>
void attackWithOrder (NtesukiRecord *record, const NtesukiRecord *oracle_attack, const NtesukiRecord *oracle_defense, unsigned int proofLimit, unsigned int disproofLimit, int pass_left, const Move last_move)
template<Player T>
NtesukiMoveselectMoveAttack (NtesukiRecord *record, unsigned int &best_proof, unsigned int &sum_disproof, unsigned int &second_proof, unsigned int &best_disproof, unsigned int &step_cost, NtesukiMoveList &moves, const int pass_left)
template<Player T>
NtesukiResult defense (NtesukiRecord *record, const NtesukiRecord *oracle_attack, const NtesukiRecord *oracle_defense, unsigned int proofLimit, unsigned int disproofLimit, int pass_left, const Move last_move)
 防御に関する計算
template<Player T>
void defenseWithPlayer (NtesukiRecord *record, const NtesukiRecord *oracle_attack, const NtesukiRecord *oracle_defense, unsigned int proofLimit, unsigned int disproofLimit, int pass_left, const Move last_move)
template<Player T>
NtesukiMoveselectMoveDefense (NtesukiRecord *record, unsigned int &best_disproof, unsigned int &sum_proof, unsigned int &second_disproof, unsigned int &best_proof, unsigned int &step_cost, NtesukiMoveList &moves, const int pass_left, const Move last_move)
template<Player T>
void simulateSiblingsSuccess (NtesukiRecord *record, NtesukiRecord *record_best, int pass_left, unsigned int &success_count, unsigned int &total_count)
 受け手番で,ある手が Success だとわかった場合, 他の手も同様に Success にならないか Simulaition で調べる.
template<Player T>
void simulateSiblingsFail (NtesukiRecord *record, NtesukiRecord *record_best, int pass_left, unsigned int &success_count, unsigned int &total_count)
 攻め手番で,ある手が Fail だとわかった場合, 他の手も同様に Fail にならないか Simulaition で調べる.
template<Player T>
void handleNonAttack (NtesukiRecord *record, int pass_left)
 攻めになっていない手を除く.
template<Player T>
void handleTonshi (NtesukiRecord *record, int pass_left, const Move last_move)
 頓死がないか調べる.
template<Player T>
void handleInterpose (NtesukiRecord *record, int pass_left)
 無駄合候補が本当に無駄合が調べる.

Private 変数

Statestate
NtesukiMoveGeneratormg
 手生成器.
NtesukiTable table
 トランスポジションテーブル.
NtesukiSimulationSearcher simulator
 シミュレーション探索器.
unsigned int node_count
 現在までに何ノード読んだか.
unsigned int read_node_limit
 最大何ノードまで読むか.
bool verbose
 経過をどこまで表示するか.
volatile int * stop_flag
 探索を途中で強制的に終了させるための flag.
PathEncoding path
 ルートから現在探索中のノードまでの path の hash値.
moves_t moves_played
nodes_t nodes_played
unsigned int max_pass
 λオーダ.
NtesukiRecord::IWScheme iwscheme
 Iterative widening の scheme.
NtesukiRecord::PSScheme psscheme
 Player selection の scheme.
NtesukiRecord::ISScheme isscheme
 Inversion searching の scheme.
int tsumero_cost
 詰めろな手に関する cost
int tsumero_estimate
 詰めろな手に関する証明数の予測値
double gc_ratio
 GC の際にテーブル をどこまで小さくするか.
unsigned int blockByAttackBack
unsigned int blockByPass
unsigned int attack_node_count
unsigned int attack_node_under_attack_count
unsigned int attack_node_moves_count
unsigned int defense_node_count
unsigned int defense_node_under_attack_count
unsigned int defense_node_moves_count
unsigned int pass_count
unsigned int pass_success_count
unsigned int pass_attack_count
unsigned int pass_attack_success_count
unsigned int sibling_defense_count
unsigned int sibling_defense_success_count
unsigned int sibling_attack_count
unsigned int sibling_attack_success_count
unsigned int isshogi_defense_count
unsigned int isshogi_defense_success_count
unsigned int isshogi_attack_count
unsigned int isshogi_attack_success_count
unsigned int immediate_win
unsigned int immediate_lose
unsigned int attack_back_count
unsigned int proof_without_inversion_count
unsigned int proof_AND_count
unsigned int disproof_by_inversion_count

Static Private 変数

static const unsigned int INITIAL_PROOF_LIMIT
static const unsigned int INITIAL_DISPROOF_LIMIT

説明

ntesukiSearcher.h20 行で定義されています。


型定義

typedef std::vector<Move> osl::ntesuki::NtesukiSearcher::moves_t [private]

ルートから現在探索中のノードまでの move.

ntesukiSearcher.h54 行で定義されています。

typedef std::vector<NtesukiRecord *> osl::ntesuki::NtesukiSearcher::nodes_t [private]

ルートから現在探索中のノードまでの局面.

ntesukiSearcher.h58 行で定義されています。

typedef NumEffectState osl::ntesuki::NtesukiSearcher::State

ntesukiSearcher.h24 行で定義されています。


コンストラクタとデストラクタ

osl::ntesuki::NtesukiSearcher::NtesukiSearcher ( State state,
NtesukiMoveGenerator mg,
unsigned int  table_limit,
volatile int *  stop_flag,
bool  verbose,
int  maxPass = NtesukiRecord::SIZE,
NtesukiRecord::IWScheme  iwscheme = NtesukiRecord::pn_iw,
NtesukiRecord::PSScheme  psscheme = NtesukiRecord::no_ps,
NtesukiRecord::ISScheme  isscheme = NtesukiRecord::no_is,
int  tsumero_cost = 0,
int  tsumero_estimate = 0,
double  gc_ratio = 0.33 
)
osl::ntesuki::NtesukiSearcher::~NtesukiSearcher (  ) 

関数

template<Player T>
NtesukiResult osl::ntesuki::NtesukiSearcher::attack ( NtesukiRecord record,
const NtesukiRecord oracle_attack,
const NtesukiRecord oracle_defense,
unsigned int  proofLimit,
unsigned int  disproofLimit,
int  pass_left,
const Move  last_move 
) [inline, private]
template<Player T>
void osl::ntesuki::NtesukiSearcher::attackWithOrder ( NtesukiRecord record,
const NtesukiRecord oracle_attack,
const NtesukiRecord oracle_defense,
unsigned int  proofLimit,
unsigned int  disproofLimit,
int  pass_left,
const Move  last_move 
) [inline, private]
template<Player T>
NtesukiResult osl::ntesuki::NtesukiSearcher::defense ( NtesukiRecord record,
const NtesukiRecord oracle_attack,
const NtesukiRecord oracle_defense,
unsigned int  proofLimit,
unsigned int  disproofLimit,
int  pass_left,
const Move  last_move 
) [inline, private]
template<Player T>
void osl::ntesuki::NtesukiSearcher::defenseWithPlayer ( NtesukiRecord record,
const NtesukiRecord oracle_attack,
const NtesukiRecord oracle_defense,
unsigned int  proofLimit,
unsigned int  disproofLimit,
int  pass_left,
const Move  last_move 
) [inline, private]

ntesukiSearcher.tcc1322 行で定義されています。

参照先 addWithSaturation(), osl::ntesuki::NtesukiTable::allocateWithMove(), CATCH_DFPN, defense_node_count, defense_node_moves_count, defense_node_under_attack_count, delay_non_pass, disproof_by_inversion_count, osl::ntesuki::NtesukiRecord::do_oracle_attack, osl::ntesuki::NtesukiRecord::do_oracle_aunt, osl::ntesuki::NtesukiTable::findWithMove(), osl::ntesuki::NtesukiRecord::generateMoves(), osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiRecord::getValueOr(), osl::ntesuki::NtesukiRecord::getValueWithPath(), osl::ntesuki::NtesukiMove::INVALID(), osl::ntesuki::NtesukiMove::isCheck(), osl::ntesuki::NtesukiMove::isCheckmateFail(), osl::ntesuki::NtesukiRecord::isLoopWithPath(), osl::ntesuki::NtesukiMove::isPass(), isshogi_attack_count, isshogi_attack_success_count, osl::ntesuki::NtesukiRecord::isVisited(), iwscheme, osl::eval::min(), moves, moves_played, ntesuki_assert, osl::Move::PASS(), osl::ntesuki::NtesukiRecord::pass_count, pass_count, pass_success_count, path, ptt_invalid_defense, ptt_siblings_success, ptt_uncle, RETURN_ON_STOP, osl::ntesuki::NtesukiMove::setBySimulation(), osl::ntesuki::NtesukiMove::setCheckmateFail(), osl::ntesuki::NtesukiMove::setCheckmateSuccess(), osl::ntesuki::NtesukiRecord::setLoopWithPath(), osl::ntesuki::NtesukiRecord::setNtesuki(), osl::ntesuki::NtesukiRecord::setResult(), sibling_defense_count, sibling_defense_success_count, simulator, state, stop_flag, table, TableLimitReached, と TRY_DFPN.

bool osl::ntesuki::NtesukiSearcher::exceedReadNodeLimit (  )  const [inline]

ntesukiSearcher.h272 行で定義されています。

int osl::ntesuki::NtesukiSearcher::getNodeCount (  )  const [inline]

ntesukiSearcher.h271 行で定義されています。

NtesukiTable & osl::ntesuki::NtesukiSearcher::getTable (  ) 

ntesukiSearcher.cc188 行で定義されています。

参照先 table.

template<Player T>
void osl::ntesuki::NtesukiSearcher::handleInterpose ( NtesukiRecord record,
int  pass_left 
) [inline, private]
template<Player T>
void osl::ntesuki::NtesukiSearcher::handleNonAttack ( NtesukiRecord record,
int  pass_left 
) [inline, private]
template<Player T>
void osl::ntesuki::NtesukiSearcher::handleTonshi ( NtesukiRecord record,
int  pass_left,
const Move  last_move 
) [inline, private]
template<Player A>
template int osl::ntesuki::NtesukiSearcher::search< WHITE > (  )  [inline]
int osl::ntesuki::NtesukiSearcher::searchSlow ( Player  attacker,
int  rnl = 160000 
) [inline]

ntesukiSearcher.h261 行で定義されています。

参照先 osl::BLACK.

template<Player T>
osl::ntesuki::NtesukiMove * osl::ntesuki::NtesukiSearcher::selectMoveAttack ( NtesukiRecord record,
unsigned int &  best_proof,
unsigned int &  sum_disproof,
unsigned int &  second_proof,
unsigned int &  best_disproof,
unsigned int &  step_cost,
NtesukiMoveList moves,
const int  pass_left 
) [inline, private]

ntesukiSearcher.tcc801 行で定義されています。

参照先 addWithSaturation(), CATCH_DFPN, delay_non_attack, delay_nopromote, osl::ntesuki::NtesukiRecord::distance, dynamic_widening_width, osl::ntesuki::NtesukiTable::findWithMove(), osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiMove::getOrder(), osl::ntesuki::NtesukiRecord::getValueAnd(), osl::ntesuki::NtesukiRecord::getValueWithPath(), osl::ntesuki::NtesukiMove::h_a_disproof, osl::ntesuki::NtesukiMove::h_a_proof, osl::ntesuki::NtesukiMove::INVALID(), osl::ntesuki::NtesukiRecord::is_split, osl::ntesuki::NtesukiMove::isCheck(), osl::ntesuki::NtesukiMove::isCheckmateFail(), osl::ntesuki::NtesukiMove::isLameLong(), osl::ntesuki::NtesukiMove::isNoPromote(), osl::ntesuki::NtesukiMove::isPass(), osl::ntesuki::NtesukiMove::isPawnDropCheckmate(), osl::ntesuki::NtesukiRecord::isVisited(), iwscheme, osl::eval::max(), osl::ntesuki::NtesukiRecord::max_for_split, osl::eval::min(), ntesuki_assert, path, psscheme, ptt_non_attack, read_attack_only, osl::ntesuki::NtesukiRecord::readNonAttack(), RETURN_ON_STOP, osl::ntesuki::NtesukiRecord::rzone_move_generation, osl::ntesuki::NtesukiMove::setCheckmateFail(), osl::ntesuki::NtesukiMove::setCheckmateSuccess(), osl::ntesuki::NtesukiRecord::setLoopWithPath(), osl::ntesuki::NtesukiMove::setPawnDropCheckmate(), osl::ntesuki::NtesukiRecord::setReadNonAttack(), osl::ntesuki::NtesukiRecord::setResult(), osl::ntesuki::NtesukiRecord::setUseOld(), sorter(), table, TRY_DFPN, tsumero_cost, tsumero_estimate, と osl::ntesuki::NtesukiRecord::useOld().

template<Player T>
osl::ntesuki::NtesukiMove * osl::ntesuki::NtesukiSearcher::selectMoveDefense ( NtesukiRecord record,
unsigned int &  best_disproof,
unsigned int &  sum_proof,
unsigned int &  second_disproof,
unsigned int &  best_proof,
unsigned int &  step_cost,
NtesukiMoveList moves,
const int  pass_left,
const Move  last_move 
) [inline, private]

ntesukiSearcher.tcc1676 行で定義されています。

参照先 addWithSaturation(), CATCH_DFPN, delay_interpose, osl::ntesuki::NtesukiRecord::delay_is, delay_non_pass, disproof_by_inversion_count, osl::ntesuki::NtesukiRecord::distance, dynamic_widening_width, osl::ntesuki::NtesukiTable::findWithMove(), osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiRecord::getValueOr(), osl::ntesuki::NtesukiRecord::getValueWithPath(), osl::ntesuki::NtesukiMove::h_d_disproof, osl::ntesuki::NtesukiMove::h_d_proof, osl::ntesuki::NtesukiMove::INVALID(), osl::ntesuki::NtesukiRecord::is_split, osl::ntesuki::NtesukiMove::isCheck(), osl::ntesuki::NtesukiMove::isCheckmateFail(), osl::ntesuki::NtesukiMove::isCheckmateSuccess(), osl::ntesuki::NtesukiMove::isInterpose(), osl::ntesuki::NtesukiMove::isLameLong(), osl::ntesuki::NtesukiRecord::isLoopWithPath(), osl::ntesuki::NtesukiMove::isPass(), isscheme, osl::ntesuki::NtesukiRecord::isVisited(), iwscheme, osl::eval::max(), osl::ntesuki::NtesukiRecord::max_for_split, osl::eval::min(), osl::ntesuki::NtesukiRecord::no_is, osl::ntesuki::NtesukiRecord::normal_is, ntesuki_assert, osl::Move::PASS(), pass_count, pass_success_count, path, proof_without_inversion_count, ptt_invalid_defense, ptt_siblings_success, osl::ntesuki::NtesukiRecord::readCheckDefense(), osl::ntesuki::NtesukiRecord::readInterpose(), RETURN_ON_STOP, osl::ntesuki::NtesukiMove::setCheckmateFail(), osl::ntesuki::NtesukiMove::setCheckmateSuccess(), osl::ntesuki::NtesukiRecord::setLoopWithPath(), osl::ntesuki::NtesukiRecord::setNtesuki(), osl::ntesuki::NtesukiRecord::setReadInterpose(), osl::ntesuki::NtesukiRecord::setResult(), osl::ntesuki::NtesukiRecord::setUseOld(), sibling_defense_count, sibling_defense_success_count, sorter(), state, table, osl::ntesuki::NtesukiRecord::tonshi_is, TRY_DFPN, と osl::ntesuki::NtesukiRecord::useOld().

template<Player T>
void osl::ntesuki::NtesukiSearcher::simulateSiblingsFail ( NtesukiRecord record,
NtesukiRecord record_best,
int  pass_left,
unsigned int &  success_count,
unsigned int &  total_count 
) [inline, private]
template<Player T>
void osl::ntesuki::NtesukiSearcher::simulateSiblingsSuccess ( NtesukiRecord record,
NtesukiRecord record_best,
int  pass_left,
unsigned int &  success_count,
unsigned int &  total_count 
) [inline, private]

受け手番で,ある手が Success だとわかった場合, 他の手も同様に Success にならないか Simulaition で調べる.

現在 $^n$ 探索中の場合には,原則 $^(n-1)$ move の場合には調べない.

e.g. 必至探索中には王手は調べない.

ntesukiSearcher.tcc2090 行で定義されています。

参照先 osl::ntesuki::NtesukiTable::allocateWithMove(), CATCH_DFPN, osl::ntesuki::NtesukiMoveGenerator::generate(), osl::ntesuki::NtesukiMove::getMove(), osl::ntesuki::NtesukiRecord::getValue(), osl::ntesuki::NtesukiRecord::getValueWithPath(), osl::ntesuki::NtesukiRecord::isVisited(), mg, moves, ntesuki_assert, path, RETURN_ON_STOP, osl::ntesuki::NtesukiMove::setBySimulation(), osl::ntesuki::NtesukiMove::setCheckmateSuccess(), simulator, state, stop_flag, table, TableLimitReached, と TRY_DFPN.


変数

ntesukiSearcher.h125 行で定義されています。

参照元 handleTonshi(), と ~NtesukiSearcher().

ntesukiSearcher.h112 行で定義されています。

参照元 attackWithOrder(), と ~NtesukiSearcher().

ntesukiSearcher.h114 行で定義されています。

参照元 attackWithOrder(), と ~NtesukiSearcher().

ntesukiSearcher.h113 行で定義されています。

参照元 attackWithOrder(), と ~NtesukiSearcher().

ntesukiSearcher.h107 行で定義されています。

ntesukiSearcher.h111 行で定義されています。

ntesukiSearcher.h115 行で定義されています。

参照元 defenseWithPlayer(), と ~NtesukiSearcher().

ntesukiSearcher.h117 行で定義されています。

参照元 defenseWithPlayer(), と ~NtesukiSearcher().

ntesukiSearcher.h116 行で定義されています。

参照元 defenseWithPlayer(), と ~NtesukiSearcher().

ntesukiSearcher.h72 行で定義されています。

参照元 NtesukiSearcher(), と selectMoveDefense().

ntesukiSearcher.h74 行で定義されています。

参照元 NtesukiSearcher(), と selectMoveAttack().

探索のふるまいを制御する変数.

ntesukiSearcher.h69 行で定義されています。

参照元 defenseWithPlayer(), NtesukiSearcher(), と selectMoveDefense().

ntesukiSearcher.h73 行で定義されています。

参照元 NtesukiSearcher(), と selectMoveAttack().

ntesukiSearcher.h126 行で定義されています。

参照元 defenseWithPlayer(), selectMoveDefense(), と ~NtesukiSearcher().

ntesukiSearcher.h84 行で定義されています。

参照元 selectMoveAttack(), と selectMoveDefense().

GC の際にテーブル をどこまで小さくするか.

ntesukiSearcher.h101 行で定義されています。

ntesukiSearcher.h124 行で定義されています。

参照元 defense(), と ~NtesukiSearcher().

ntesukiSearcher.h124 行で定義されています。

参照元 attack(), と ~NtesukiSearcher().

const unsigned int osl::ntesuki::NtesukiSearcher::INITIAL_DISPROOF_LIMIT [static, private]
初期値:
      ProofDisproof::DISPROOF_LIMIT / 4

ntesukiSearcher.h135 行で定義されています。

参照元 search().

const unsigned int osl::ntesuki::NtesukiSearcher::INITIAL_PROOF_LIMIT [static, private]
初期値:
      ProofDisproof::PROOF_LIMIT / 4

ntesukiSearcher.h133 行で定義されています。

参照元 handleTonshi(), と search().

Inversion searching の scheme.

ntesukiSearcher.h92 行で定義されています。

参照元 selectMoveDefense().

ntesukiSearcher.h123 行で定義されています。

参照元 defenseWithPlayer(), と ~NtesukiSearcher().

ntesukiSearcher.h123 行で定義されています。

参照元 defenseWithPlayer(), と ~NtesukiSearcher().

ntesukiSearcher.h122 行で定義されています。

参照元 ~NtesukiSearcher().

ntesukiSearcher.h122 行で定義されています。

参照元 ~NtesukiSearcher().

Iterative widening の scheme.

ntesukiSearcher.h88 行で定義されています。

参照元 attack(), defense(), defenseWithPlayer(), selectMoveAttack(), と selectMoveDefense().

λオーダ.

ntesukiSearcher.h62 行で定義されています。

参照元 search().

手生成器.

ntesukiSearcher.h30 行で定義されています。

参照元 handleInterpose(), handleNonAttack(), simulateSiblingsFail(), と simulateSiblingsSuccess().

ntesukiSearcher.h55 行で定義されています。

参照元 attackWithOrder(), と defenseWithPlayer().

現在までに何ノード読んだか.

ntesukiSearcher.h39 行で定義されています。

参照元 attackWithOrder(), defense(), handleTonshi(), search(), と ~NtesukiSearcher().

ntesukiSearcher.h59 行で定義されています。

ntesukiSearcher.h129 行で定義されています。

参照元 search().

ntesukiSearcher.h119 行で定義されています。

ntesukiSearcher.h119 行で定義されています。

ntesukiSearcher.h118 行で定義されています。

参照元 defenseWithPlayer(), selectMoveDefense(), と ~NtesukiSearcher().

ntesukiSearcher.h118 行で定義されています。

参照元 defenseWithPlayer(), selectMoveDefense(), と ~NtesukiSearcher().

ルートから現在探索中のノードまでの path の hash値.

ntesukiSearcher.h51 行で定義されています。

参照元 attack(), attackWithOrder(), defense(), defenseWithPlayer(), handleInterpose(), handleNonAttack(), handleTonshi(), selectMoveAttack(), selectMoveDefense(), simulateSiblingsFail(), と simulateSiblingsSuccess().

ntesukiSearcher.h126 行で定義されています。

参照元 ~NtesukiSearcher().

ntesukiSearcher.h126 行で定義されています。

参照元 selectMoveDefense(), と ~NtesukiSearcher().

Player selection の scheme.

ntesukiSearcher.h90 行で定義されています。

参照元 defense(), と selectMoveAttack().

ntesukiSearcher.h82 行で定義されています。

参照元 attackWithOrder().

ntesukiSearcher.h70 行で定義されています。

参照元 defenseWithPlayer(), NtesukiSearcher(), と selectMoveDefense().

ntesukiSearcher.h76 行で定義されています。

参照元 NtesukiSearcher(), と selectMoveAttack().

ntesukiSearcher.h78 行で定義されています。

参照元 attackWithOrder(), と NtesukiSearcher().

ntesukiSearcher.h79 行で定義されています。

参照元 defenseWithPlayer(), NtesukiSearcher(), と selectMoveDefense().

ntesukiSearcher.h81 行で定義されています。

参照元 defenseWithPlayer(), と NtesukiSearcher().

ntesukiSearcher.h75 行で定義されています。

参照元 NtesukiSearcher(), と selectMoveAttack().

最大何ノードまで読むか.

ntesukiSearcher.h42 行で定義されています。

参照元 handleTonshi(), search(), と ~NtesukiSearcher().

ntesukiSearcher.h130 行で定義されています。

参照元 search().

ntesukiSearcher.h121 行で定義されています。

参照元 attackWithOrder(), と ~NtesukiSearcher().

ntesukiSearcher.h121 行で定義されています。

参照元 attackWithOrder(), と ~NtesukiSearcher().

ntesukiSearcher.h120 行で定義されています。

参照元 defenseWithPlayer(), selectMoveDefense(), と ~NtesukiSearcher().

ntesukiSearcher.h120 行で定義されています。

参照元 defenseWithPlayer(), selectMoveDefense(), と ~NtesukiSearcher().

探索を途中で強制的に終了させるための flag.

ntesukiSearcher.h48 行で定義されています。

参照元 attackWithOrder(), defenseWithPlayer(), handleInterpose(), handleNonAttack(), search(), simulateSiblingsFail(), と simulateSiblingsSuccess().

詰めろな手に関する cost

ntesukiSearcher.h95 行で定義されています。

参照元 selectMoveAttack().

詰めろな手に関する証明数の予測値

ntesukiSearcher.h98 行で定義されています。

参照元 selectMoveAttack().

経過をどこまで表示するか.

ntesukiSearcher.h45 行で定義されています。

参照元 search(), と ~NtesukiSearcher().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義
Sun May 16 09:58:27 2010に生成されました。  doxygen 1.6.3