MTDF と SearchFramework に共通の 小物のメソッド. [詳細]
#include <searchBase.h>
Public 型 | |
typedef Eval | eval_t |
typedef Probabilities | Probabilities_t |
Public メソッド | |
SearchBase (Recorder &r, Table *t) | |
virtual | ~SearchBase () |
virtual bool | abort (Move) const |
bool | validTableMove (const NumEffectState &state, const MoveLogProb &move, int limit) const |
テーブルの指手の正しさを確かめる | |
void | recordLowerBound (Player P, SimpleHashRecord *record, int limit, const MoveLogProb &best_move, int val) const |
void | recordUpperBound (Player P, SimpleHashRecord *record, int limit, const MoveLogProb &best_move, int val) const |
void | recordWinByCheckmate (Player P, SimpleHashRecord *record, Move check_move) const |
詰将棋の見つけた勝 | |
void | recordLoseByCheckmate (Player P, SimpleHashRecord *record) const |
詰将棋の見つけた敗 | |
Protected 変数 | |
Recorder & | recorder |
Table * | table |
Private メソッド | |
void | recordCheckmateResult (Player P, SimpleHashRecord *record, int val, Move move) const |
MTDF と SearchFramework に共通の 小物のメソッド.
searchBase.h の 28 行で定義されています。
typedef Eval osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::eval_t |
osl::search::AlphaBeta2Tree< EvalT >で再定義されています。
searchBase.h の 31 行で定義されています。
typedef Probabilities osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::Probabilities_t |
searchBase.h の 33 行で定義されています。
osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::SearchBase | ( | Recorder & | r, | |
Table * | t | |||
) | [inline] |
searchBase.h の 38 行で定義されています。
virtual osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::~SearchBase | ( | ) | [inline, virtual] |
searchBase.h の 44 行で定義されています。
virtual bool osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::abort | ( | Move | ) | const [inline, virtual] |
searchBase.h の 45 行で定義されています。
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordCheckmateResult | ( | Player | P, | |
SimpleHashRecord * | record, | |||
int | val, | |||
Move | move | |||
) | const [inline, private] |
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordLoseByCheckmate | ( | Player | P, | |
SimpleHashRecord * | record | |||
) | const [inline] |
詰将棋の見つけた敗
searchBase.h の 130 行で定義されています。
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordLowerBound | ( | Player | P, | |
SimpleHashRecord * | record, | |||
int | limit, | |||
const MoveLogProb & | best_move, | |||
int | val | |||
) | const [inline] |
searchBase.h の 74 行で定義されています。
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordUpperBound | ( | Player | P, | |
SimpleHashRecord * | record, | |||
int | limit, | |||
const MoveLogProb & | best_move, | |||
int | val | |||
) | const [inline] |
searchBase.h の 91 行で定義されています。
void osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recordWinByCheckmate | ( | Player | P, | |
SimpleHashRecord * | record, | |||
Move | check_move | |||
) | const [inline] |
詰将棋の見つけた勝
searchBase.h の 123 行で定義されています。
bool osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::validTableMove | ( | const NumEffectState & | state, | |
const MoveLogProb & | move, | |||
int | limit | |||
) | const [inline] |
テーブルの指手の正しさを確かめる
ついでに実現確率のチェックもする HashKey のconflict があるとtable から牽いた move が不正であることがある conflict で turn の違いがあると isAlmostValidMove ではチェックできない ことに注意
searchBase.h の 55 行で定義されています。
Recorder& osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::recorder [protected] |
searchBase.h の 35 行で定義されています。
参照元 osl::search::SearchBase< EvalT, SimpleHashTable, CountRecorder, RealizationProbability >::recordCheckmateResult(), osl::search::SearchBase< EvalT, SimpleHashTable, CountRecorder, RealizationProbability >::recordLowerBound(), osl::search::SearchBase< EvalT, SimpleHashTable, CountRecorder, RealizationProbability >::recordUpperBound(), と osl::search::SearchBase< EvalT, SimpleHashTable, CountRecorder, RealizationProbability >::validTableMove().
Table* osl::search::SearchBase< Eval, Table, Recorder, Probabilities >::table [protected] |