MtdfPlayer と AlphaBetaPlayer の共通部分 More...
#include <searchPlayer.h>


| Classes | |
| struct | Config | 
| Public Member Functions | |
| SearchPlayer () | |
| SearchPlayer (const SearchPlayer &) | |
| ~SearchPlayer () | |
| void | setDepthLimit (int limit, int initial_limit, int deepening_step) | 
| void | setNodeLimit (size_t node_limit) | 
| void | setNodeCountHardLimit (size_t node_limit) | 
| void | setTableLimit (size_t size, int record_limit) | 
| void | setVerbose (int verbose=1) | 
| void | setDrawCoef (double new_value) | 
| void | setNextIterationCoefficient (double new_value) | 
| double | nextIterationCoefficient () const | 
| void | enableSavePV (bool enable=true) | 
| void | enableMultiPV (int width) | 
| void | addMonitor (const boost::shared_ptr< search::SearchMonitor > &) | 
| void | resetRecorder (search::CountRecorder *new_recorder) | 
| 所有権移転  More... | |
| void | pushMove (Move m) | 
| void | popMove () | 
| void | swapTable (SearchPlayer &other) | 
| other の局面表と取り替える  More... | |
| const search::SimpleHashTable * | table () const | 
| const search::CountRecorder & | recorder () const | 
| bool | stopSearchNow () | 
| 探索をとめる  More... | |
| bool | canStopSearch () | 
| const MoveWithComment | selectBestMove (const GameState &, int limit, int elapsed, int byoyomi) | 
| searchWithSecondsForThisMove を呼び出す  More... | |
| const MoveWithComment | selectBestMoveInTime (const GameState &, const search::TimeAssigned &) | 
| const search::TimeAssigned | assignTime (const GameState &state, int limit, int elapsed, int byoyomi) const | 
| void | saveSearchResult (const GameState &, const MoveWithComment &) | 
| virtual const MoveWithComment | searchWithSecondsForThisMove (const GameState &, const search::TimeAssigned &)=0 | 
| void | setRootIgnoreMoves (const MoveVector *rim, bool prediction) | 
| const Config & | getConfig () const | 
| int | secondsForThisMove (const GameState &state, int limit, int elapsed, int byoyomi) const | 
| void | setTimeAssign (const search::TimeAssigned &new_assign) | 
| const MilliSeconds | startTime () const | 
| template<class Searcher > | |
| osl::game_playing::ComputerPlayer * | cloneIt (const Searcher ©) const | 
| template<class Searcher > | |
| int | pawnValue () | 
| template<class Searcher > | |
| int | pawnValueOfTurn (Player turn) | 
| template<class Searcher > | |
| const osl::search::MoveWithComment | search (const GameState &state, const search::TimeAssigned &msec) | 
|  Public Member Functions inherited from osl::game_playing::ComputerPlayer | |
| ComputerPlayer () | |
| virtual | ~ComputerPlayer () | 
| virtual ComputerPlayer * | clone () const =0 | 
| new したものを返す  More... | |
| virtual bool | isReasonableMove (const GameState &, Move move, int pawn_sacrifice) | 
| virtual void | setInitialState (const NumEffectState &) | 
| virtual void | allowSpeculativeSearch (bool value) | 
| 相手時間の探索を許可する (GameManager が操作)  More... | |
| virtual void | setRootIgnoreMoves (const container::MoveVector *rim, bool prediction) | 
|  Public Member Functions inherited from osl::game_playing::ComputerPlayerSelectBestMoveInTime | |
| virtual | ~ComputerPlayerSelectBestMoveInTime () | 
| Static Public Member Functions | |
| static const search::TimeAssigned | assignTime (const GameState &state, int limit, int elapsed, int byoyomi, int verbose) | 
| static int | secondsForThisMove (const GameState &state, int limit, int elapsed, int byoyomi, int verboseness) | 
| Protected Member Functions | |
| template<class Searcher > | |
| ComputerPlayer * | cloneIt (const Searcher &) const | 
| const MilliSeconds::Interval | setUpTable (const GameState &, int pawn_value) | 
| template<class Searcher > | |
| const MoveWithComment | search (const GameState &, const search::TimeAssigned &) | 
| template<class Searcher > | |
| bool | isReasonableMoveBySearch (Searcher &, Move move, int pawn_sacrifice) | 
| const search::TimeAssigned | adjust (const search::TimeAssigned &org, const MilliSeconds::Interval &elapsed) | 
| Static Protected Member Functions | |
| template<class Searcher > | |
| static int | pawnValue () | 
| template<class Searcher > | |
| static int | pawnValueOfTurn (Player turn) | 
| Protected Attributes | |
| Config | config | 
| boost::shared_ptr < search::SimpleHashTable > | table_ptr | 
| boost::shared_ptr < checkmate::DualDfpn > | checkmate_ptr | 
| boost::scoped_ptr < search::CountRecorder > | recorder_ptr | 
| volatile bool | searching | 
| boost::scoped_ptr < search::SearchTimer > | searcher | 
| volatile bool | plan_stop | 
| 探索に入る前に止める  More... | |
| const MoveVector * | root_ignore_moves | 
| bool | prediction_for_speculative_search | 
| boost::scoped_ptr< PVHistory > | pv_history | 
| int | almost_resign_count | 
|  Protected Attributes inherited from osl::game_playing::ComputerPlayer | |
| bool | speculative_search_allowed | 
MtdfPlayer と AlphaBetaPlayer の共通部分
Definition at line 36 of file searchPlayer.h.
| osl::game_playing::SearchPlayer::SearchPlayer | ( | ) | 
Definition at line 49 of file searchPlayer.cc.
| osl::game_playing::SearchPlayer::SearchPlayer | ( | const SearchPlayer & | copy) | 
Definition at line 59 of file searchPlayer.cc.
| osl::game_playing::SearchPlayer::~SearchPlayer | ( | ) | 
Definition at line 71 of file searchPlayer.cc.
| void osl::game_playing::SearchPlayer::addMonitor | ( | const boost::shared_ptr< search::SearchMonitor > & | m) | 
Definition at line 233 of file searchPlayer.cc.
| 
 | protected | 
Definition at line 110 of file searchPlayer.cc.
References osl::search::SearchTimer::adjustMemoryUseLimit(), osl::search::TimeAssigned::max, osl::eval::min(), and osl::search::TimeAssigned::standard.
| 
 | static | 
Definition at line 328 of file searchPlayer.cc.
References osl::eval::max(), and osl::eval::min().
| const osl::search::TimeAssigned osl::game_playing::SearchPlayer::assignTime | ( | const GameState & | state, | 
| int | limit, | ||
| int | elapsed, | ||
| int | byoyomi | ||
| ) | const | 
Definition at line 320 of file searchPlayer.cc.
| bool osl::game_playing::SearchPlayer::canStopSearch | ( | ) | 
Definition at line 82 of file searchPlayer.cc.
| osl::game_playing::ComputerPlayer* osl::game_playing::SearchPlayer::cloneIt | ( | const Searcher & | copy) | const | 
Definition at line 40 of file searchPlayer.tcc.
| 
 | protected | 
| 
 | inline | 
Definition at line 95 of file searchPlayer.h.
References config, osl::game_playing::SearchPlayer::Config::multi_pv_width, and width.
| 
 | inline | 
Definition at line 94 of file searchPlayer.h.
References config, and osl::game_playing::SearchPlayer::Config::save_pv.
| 
 | inline | 
Definition at line 147 of file searchPlayer.h.
References config.
| 
 | protected | 
Definition at line 146 of file searchPlayer.tcc.
| 
 | inline | 
Definition at line 90 of file searchPlayer.h.
References config, and osl::game_playing::SearchPlayer::Config::next_iteration_coefficient.
Referenced by osl::game_playing::SpeculativeAllMoves::SearchAllMoves::setUp().
| int osl::game_playing::SearchPlayer::pawnValue | ( | ) | 
Definition at line 47 of file searchPlayer.tcc.
References osl::BLACK, osl::newPtypeO(), and osl::PAWN.
| 
 | staticprotected | 
| int osl::game_playing::SearchPlayer::pawnValueOfTurn | ( | Player | turn) | 
Definition at line 54 of file searchPlayer.tcc.
References osl::eval::delta().
| 
 | staticprotected | 
| 
 | virtual | 
Implements osl::game_playing::ComputerPlayer.
Definition at line 247 of file searchPlayer.cc.
| 
 | virtual | 
Implements osl::game_playing::ComputerPlayer.
Definition at line 240 of file searchPlayer.cc.
| 
 | inline | 
Definition at line 110 of file searchPlayer.h.
References recorder_ptr.
| void osl::game_playing::SearchPlayer::resetRecorder | ( | search::CountRecorder * | new_recorder) | 
所有権移転
Definition at line 104 of file searchPlayer.cc.
| void osl::game_playing::SearchPlayer::saveSearchResult | ( | const GameState & | state, | 
| const MoveWithComment & | best_move | ||
| ) | 
Definition at line 359 of file searchPlayer.cc.
References osl::game_playing::GameState::moveHistory(), and osl::container::MoveStack::size().
| const osl::search::MoveWithComment osl::game_playing::SearchPlayer::search | ( | const GameState & | state, | 
| const search::TimeAssigned & | msec | ||
| ) | 
Definition at line 61 of file searchPlayer.tcc.
References osl::Move::isNormal(), osl::eval::min(), osl::game_playing::GameState::moveHistory(), osl::playerToMul(), osl::search::TimeAssigned::standard, and osl::game_playing::GameState::state().
| 
 | protected | 
| 
 | pure virtual | 
| 
 | static | 
Definition at line 263 of file searchPlayer.cc.
References osl::BLACK, osl::eval::max(), osl::eval::min(), osl::game_playing::GameState::moveHistory(), moves, osl::search::TimeControl::secondsForThisMove(), osl::container::MoveStack::size(), osl::game_playing::GameState::state(), and osl::WHITE.
| int osl::game_playing::SearchPlayer::secondsForThisMove | ( | const GameState & | state, | 
| int | limit, | ||
| int | elapsed, | ||
| int | byoyomi | ||
| ) | const | 
Definition at line 255 of file searchPlayer.cc.
| 
 | virtual | 
searchWithSecondsForThisMove を呼び出す
Implements osl::game_playing::ComputerPlayer.
Definition at line 341 of file searchPlayer.cc.
Referenced by main().
| 
 | virtual | 
Implements osl::game_playing::ComputerPlayerSelectBestMoveInTime.
Definition at line 348 of file searchPlayer.cc.
References osl::Move::DeclareWin(), osl::search::TimeAssigned::max, osl::search::TimeAssigned::standard, and osl::game_playing::GameState::state().
| void osl::game_playing::SearchPlayer::setDepthLimit | ( | int | limit, | 
| int | initial_limit, | ||
| int | deepening_step | ||
| ) | 
Definition at line 188 of file searchPlayer.cc.
| 
 | inline | 
Definition at line 88 of file searchPlayer.h.
References config, and osl::game_playing::SearchPlayer::Config::draw_coef.
| void osl::game_playing::SearchPlayer::setNextIterationCoefficient | ( | double | new_value) | 
Definition at line 225 of file searchPlayer.cc.
Referenced by search().
| void osl::game_playing::SearchPlayer::setNodeCountHardLimit | ( | size_t | node_limit) | 
Definition at line 202 of file searchPlayer.cc.
| void osl::game_playing::SearchPlayer::setNodeLimit | ( | size_t | node_limit) | 
Definition at line 196 of file searchPlayer.cc.
| 
 | inline | 
Definition at line 141 of file searchPlayer.h.
References prediction_for_speculative_search, and root_ignore_moves.
| void osl::game_playing::SearchPlayer::setTableLimit | ( | size_t | size, | 
| int | record_limit | ||
| ) | 
Definition at line 208 of file searchPlayer.cc.
| void osl::game_playing::SearchPlayer::setTimeAssign | ( | const search::TimeAssigned & | new_assign) | 
Definition at line 365 of file searchPlayer.cc.
| 
 | protected | 
Definition at line 121 of file searchPlayer.cc.
References osl::game_playing::HistoryToTable::adjustTable(), osl::BLACK, osl::game_playing::GameState::counter(), osl::ctime_r(), osl::OslConfig::evalRandom(), osl::game_playing::GameState::moveHistory(), osl::game_playing::HistoryToTable::setPV(), osl::game_playing::GameState::state(), osl::WHITE, and osl::search::FixedEval::winByLoop().
| void osl::game_playing::SearchPlayer::setVerbose | ( | int | verbose = 1) | 
Definition at line 217 of file searchPlayer.cc.
Referenced by search().
| const osl::MilliSeconds osl::game_playing::SearchPlayer::startTime | ( | ) | const | 
Definition at line 373 of file searchPlayer.cc.
| 
 | virtual | 
探索をとめる
Reimplemented from osl::game_playing::ComputerPlayer.
Definition at line 88 of file searchPlayer.cc.
References osl::ctime_r().
| void osl::game_playing::SearchPlayer::swapTable | ( | SearchPlayer & | other) | 
other の局面表と取り替える
Definition at line 76 of file searchPlayer.cc.
References table_ptr.
Referenced by osl::game_playing::SpeculativeAllMoves::waitResult().
| 
 | inline | 
| 
 | protected | 
Definition at line 77 of file searchPlayer.h.
| 
 | protected | 
Definition at line 68 of file searchPlayer.h.
| 
 | protected | 
Definition at line 66 of file searchPlayer.h.
Referenced by enableMultiPV(), enableSavePV(), getConfig(), nextIterationCoefficient(), and setDrawCoef().
| 
 | protected | 
探索に入る前に止める
Definition at line 73 of file searchPlayer.h.
| 
 | protected | 
Definition at line 75 of file searchPlayer.h.
Referenced by setRootIgnoreMoves().
| 
 | protected | 
Definition at line 76 of file searchPlayer.h.
| 
 | protected | 
Definition at line 69 of file searchPlayer.h.
Referenced by recorder().
| 
 | protected | 
Definition at line 74 of file searchPlayer.h.
Referenced by setRootIgnoreMoves().
| 
 | protected | 
Definition at line 71 of file searchPlayer.h.
| 
 | protected | 
Definition at line 70 of file searchPlayer.h.
| 
 | protected | 
Definition at line 67 of file searchPlayer.h.
Referenced by swapTable(), and table().
 1.8.4
 1.8.4