クラス テンプレート osl::eval::ProgressEvalGeneral< OpeningEval >

פȽפʬȤɾؿ. [詳細]

#include <progressEval.h>

osl::eval::ProgressEvalGeneral< OpeningEval >に対する継承グラフ

Inheritance graph
[凡例]
osl::eval::ProgressEvalGeneral< OpeningEval >のコラボレーション図

Collaboration graph
[凡例]

すべてのメンバ一覧

Public 型

typedef OpeningEval opening_eval_t
typedef endgame::AttackDefense endgame_eval_t
typedef progress::Effect5x3 progress_t
typedef progress::Effect5x3d defense_t

Public メソッド

 ProgressEvalGeneral (const NumEffectState &state)
void changeTurn ()
const Progress16 progress16 () const
const Progress16 progress16bonus (Player p) const
void invalidateCache ()
int value () const
const Progress32 progress32 () const
int expect (const NumEffectState &state, Move move) const
void update (const NumEffectState &new_state, Move last_move)
template<Player p>
int calculateAttackBonusEach (const NumEffectState &state) const
template<Player Attack, Direction Dir>
int calculateAttackBonusOne (const NumEffectState &state) const
int calculateKnightCheck (const NumEffectState &state) const
template<osl::Player P>
int calculateKnightCheckEach (const NumEffectState &state) const
template<Player p>
int calculateEnterKingBonus (const NumEffectState &state) const
template<Player p>
int calculateMiddleKingBonus (const NumEffectState &state) const
int calculateRookRankBonus (const NumEffectState &state) const
const PieceMask pins (Player player) const
int minorPieceValue () const
int openingValue () const
int endgameValue () const
ProgressDebugInfo debugInfo (const NumEffectState &state) const
int calculatePinBonus (const NumEffectState &state) const
int calculateMobilityBonus (const NumEffectState &state) const
int calculateAttackRooks (const NumEffectState &state) const
int calculateAttackBonus (const NumEffectState &state) const
int calculateSilverPenalty (const NumEffectState &state) const
int calculateGoldPenalty (const NumEffectState &state) const
int attackDefenseBonus () const

Static Public メソッド

static bool initialized ()
static bool setUp (const char *filename)
static bool setUp ()
static int attackDefenseBonusT16 (Progress16 black, Progress16 white, Progress16 black_defense, Progress16 white_defense)
 ٥ڥʥƥ16
static int composeValue (int value_opening, int value_endgame, Progress16 progress16, Progress16 black, Progress16 white, Progress16 black_defense, Progress16 white_defense, int minor_piece_bonus, int progress_independent_bonus, int progress_dependent_bonus)
static void setValues (const SimpleState &, Progress16 progress16, container::PieceValues &)
static void setValues (const SimpleState &s, container::PieceValues &o)
static int infty ()
static int captureValue (PtypeO ptypeO)
static int seeScale ()

Static Public 変数

static const int ROUND_UP = 64
 roundup 2^n Ǥ뤳

Private 型

enum  { INVALID = EvalTraits<BLACK>::MAX_VALUE+1 }

Private メソッド

template<Player P, Ptype PTYPE, Direction Dir, Direction LongDir>
void initializeCheckPieceDir (const NumEffectState &state, int count)
template<Player P, Ptype PTYPE>
void initializeCheckPiece (const NumEffectState &state)

Static Private メソッド

static void setUpInternal ()

Private 変数

opening_eval_t opening_eval
endgame_eval_t endgame_eval
progress_t current_progress
defense_t defense_effect
MinorPieceBonus minor_piece_bonus
CArray< PieceMask, 2 > pin_mask
CArray2d< int, 2, DR+1 > can_check_pieces
int progress_independent_bonus
int progress_dependent_bonus
int major_pieces
int cache

Static Private 変数

static CArray< int, PTYPEO_SIZEcapture_values


説明

template<class OpeningEval>
class osl::eval::ProgressEvalGeneral< OpeningEval >

פȽפʬȤɾؿ.

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


型定義

template<class OpeningEval>
typedef OpeningEval osl::eval::ProgressEvalGeneral< OpeningEval >::opening_eval_t

progressEval.h57 行で定義されています。

template<class OpeningEval>
typedef endgame::AttackDefense osl::eval::ProgressEvalGeneral< OpeningEval >::endgame_eval_t

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

template<class OpeningEval>
typedef progress::Effect5x3 osl::eval::ProgressEvalGeneral< OpeningEval >::progress_t

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

template<class OpeningEval>
typedef progress::Effect5x3d osl::eval::ProgressEvalGeneral< OpeningEval >::defense_t

progressEval.h60 行で定義されています。


列挙型

template<class OpeningEval>
anonymous enum [private]

列挙型の値:
INVALID 

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


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

template<class Opening>
osl::eval::ProgressEvalGeneral< Opening >::ProgressEvalGeneral ( const NumEffectState &  state  )  [inline]


関数

template<class Opening>
template<osl::Player P, osl::Ptype PTYPE, osl::Direction Dir, osl::Direction LongDir>
void osl::eval::ProgressEvalGeneral< Opening >::initializeCheckPieceDir ( const NumEffectState &  state,
int  count 
) [inline, private]

template<class Opening>
template<osl::Player P, osl::Ptype PTYPE>
void osl::eval::ProgressEvalGeneral< Opening >::initializeCheckPiece ( const NumEffectState &  state  )  [inline, private]

progressEval.cc97 行で定義されています。

template<class Opening>
void osl::eval::ProgressEvalGeneral< Opening >::setUpInternal (  )  [inline, static, private]

template<class OpeningEval>
void osl::eval::ProgressEvalGeneral< OpeningEval >::changeTurn (  )  [inline]

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

template<class OpeningEval>
static bool osl::eval::ProgressEvalGeneral< OpeningEval >::initialized (  )  [inline, static]

template<class OpeningEval>
static bool osl::eval::ProgressEvalGeneral< OpeningEval >::setUp ( const char *  filename  )  [inline, static]

progressEval.h93 行で定義されています。

template<class OpeningEval>
static bool osl::eval::ProgressEvalGeneral< OpeningEval >::setUp (  )  [inline, static]

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

template<class OpeningEval>
static int osl::eval::ProgressEvalGeneral< OpeningEval >::attackDefenseBonusT16 ( Progress16  black,
Progress16  white,
Progress16  black_defense,
Progress16  white_defense 
) [inline, static]

template<class OpeningEval>
static int osl::eval::ProgressEvalGeneral< OpeningEval >::composeValue ( int  value_opening,
int  value_endgame,
Progress16  progress16,
Progress16  black,
Progress16  white,
Progress16  black_defense,
Progress16  white_defense,
int  minor_piece_bonus,
int  progress_independent_bonus,
int  progress_dependent_bonus 
) [inline, static]

template<class OpeningEval>
const Progress16 osl::eval::ProgressEvalGeneral< OpeningEval >::progress16 (  )  const [inline]

template<class OpeningEval>
const Progress16 osl::eval::ProgressEvalGeneral< OpeningEval >::progress16bonus ( Player  p  )  const [inline]

template<class OpeningEval>
void osl::eval::ProgressEvalGeneral< OpeningEval >::invalidateCache (  )  [inline]

progressEval.h155 行で定義されています。

参照元 osl::eval::ProgressEvalGeneral< OpeningEval >::update().

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::value (  )  const [inline]

template<class OpeningEval>
const Progress32 osl::eval::ProgressEvalGeneral< OpeningEval >::progress32 (  )  const [inline]

progressEval.h178 行で定義されています。

参照元 osl::search::MoveGenerator::init(), と test_position().

template<class OpeningEval>
static void osl::eval::ProgressEvalGeneral< OpeningEval >::setValues ( const SimpleState &  ,
Progress16  progress16,
container::PieceValues  
) [static]

template<class OpeningEval>
static void osl::eval::ProgressEvalGeneral< OpeningEval >::setValues ( const SimpleState &  s,
container::PieceValues o 
) [static]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::expect ( const NumEffectState &  state,
Move  move 
) const [inline]

template<class Opening>
void osl::eval::ProgressEvalGeneral< Opening >::update ( const NumEffectState &  new_state,
Move  last_move 
) [inline]

progressEval.cc196 行で定義されています。

参照先 osl::BISHOP, osl::BLACK, osl::eval::ProgressEvalGeneral< OpeningEval >::calculateAttackBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateAttackRooks(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateGoldPenalty(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateKnightCheck(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateMobilityBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculatePinBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateRookRankBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateSilverPenalty(), osl::eval::ProgressEvalGeneral< OpeningEval >::can_check_pieces, osl::captured(), osl::Move::capturePtype(), osl::eval::ProgressEvalGeneral< OpeningEval >::current_progress, osl::D, osl::eval::ProgressEvalGeneral< OpeningEval >::defense_effect, osl::DL, osl::DR, osl::eval::ProgressEvalGeneral< OpeningEval >::endgame_eval, osl::GOLD, osl::eval::ProgressEvalGeneral< OpeningEval >::invalidateCache(), osl::Move::isDrop(), osl::isMajor(), osl::Move::isPass(), osl::L, osl::LANCE, osl::eval::ProgressEvalGeneral< OpeningEval >::major_pieces, osl::eval::ProgressEvalGeneral< OpeningEval >::minor_piece_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::opening_eval, osl::Move::player(), osl::playerToIndex(), osl::eval::ProgressEvalGeneral< OpeningEval >::progress_dependent_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::progress_independent_bonus, osl::Move::ptype(), osl::PTYPE_EMPTY, osl::R, osl::ROOK, osl::SILVER, osl::U, osl::UL, osl::unpromote(), osl::eval::MinorPieceBonus::update(), osl::progress::Effect5x3d::update(), osl::progress::Effect5x3::update(), osl::eval::endgame::AttackDefense::update(), と osl::UR.

参照元 osl::search::AlphaBeta2Tree::alphaBetaSearchAfterMove(), osl::search::AlphaBeta2::makeMove(), qsearch(), と test_record().

template<class Opening>
template<osl::Player P>
int osl::eval::ProgressEvalGeneral< Opening >::calculateAttackBonusEach ( const NumEffectState &  state  )  const [inline]

template<class Opening>
template<osl::Player Attack, osl::Direction Dir>
int osl::eval::ProgressEvalGeneral< Opening >::calculateAttackBonusOne ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateKnightCheck ( const NumEffectState &  state  )  const [inline]

template<class Opening>
template<osl::Player P>
int osl::eval::ProgressEvalGeneral< Opening >::calculateKnightCheckEach ( const NumEffectState &  state  )  const [inline]

progressEval.cc526 行で定義されています。

参照先 osl::BLACK, osl::GOLD, osl::KNIGHT, と osl::eval::PtypeEvalTraits< PAWN >::val.

template<class Opening>
template<osl::Player P>
int osl::eval::ProgressEvalGeneral< Opening >::calculateEnterKingBonus ( const NumEffectState &  state  )  const [inline]

template<class Opening>
template<osl::Player P>
int osl::eval::ProgressEvalGeneral< Opening >::calculateMiddleKingBonus ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateRookRankBonus ( const NumEffectState &  state  )  const [inline]

template<class OpeningEval>
static int osl::eval::ProgressEvalGeneral< OpeningEval >::infty (  )  [inline, static]

progressEval.h202 行で定義されています。

template<class OpeningEval>
static int osl::eval::ProgressEvalGeneral< OpeningEval >::captureValue ( PtypeO  ptypeO  )  [inline, static]

template<class OpeningEval>
static int osl::eval::ProgressEvalGeneral< OpeningEval >::seeScale (  )  [inline, static]

progressEval.h215 行で定義されています。

template<class OpeningEval>
const PieceMask osl::eval::ProgressEvalGeneral< OpeningEval >::pins ( Player  player  )  const [inline]

progressEval.h221 行で定義されています。

参照元 osl::search::MoveGenerator::init().

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::minorPieceValue (  )  const [inline]

progressEval.h225 行で定義されています。

参照元 osl::eval::ProgressEvalGeneral< OpeningEval >::debugInfo(), と show().

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::openingValue (  )  const [inline]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::endgameValue (  )  const [inline]

progressEval.h231 行で定義されています。

参照元 osl::eval::ProgressEvalGeneral< OpeningEval >::debugInfo(), と show().

template<class Opening>
osl::eval::ProgressDebugInfo osl::eval::ProgressEvalGeneral< Opening >::debugInfo ( const NumEffectState &  state  )  const [inline]

progressEval.cc745 行で定義されています。

参照先 osl::eval::ProgressEvalGeneral< OpeningEval >::attackDefenseBonus(), osl::BLACK, osl::eval::ProgressDebugInfo::black_danger, osl::eval::ProgressDebugInfo::black_defense, osl::eval::ProgressEvalGeneral< OpeningEval >::calculateAttackBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateAttackRooks(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateGoldPenalty(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateKnightCheck(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateMobilityBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculatePinBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateRookRankBonus(), osl::eval::ProgressEvalGeneral< OpeningEval >::calculateSilverPenalty(), osl::eval::ProgressEvalGeneral< OpeningEval >::current_progress, osl::eval::MinorPieceBonus::debugInfo(), osl::eval::ProgressEvalGeneral< OpeningEval >::defense_effect, osl::eval::ProgressDebugInfo::endgame, osl::eval::ProgressEvalGeneral< OpeningEval >::endgameValue(), osl::eval::ProgressDebugInfo::enter_king_bonus, osl::eval::ProgressDebugInfo::eval, osl::eval::ProgressDebugInfo::gold_penalty, osl::eval::ProgressDebugInfo::king8_attack_bonus, osl::eval::ProgressDebugInfo::knight_check_bonus, osl::eval::ProgressDebugInfo::middle_king_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::minor_piece_bonus, osl::eval::ProgressDebugInfo::minor_piece_bonus, osl::eval::ProgressDebugInfo::minor_piece_bonus_info, osl::eval::ProgressEvalGeneral< OpeningEval >::minorPieceValue(), osl::eval::ProgressDebugInfo::mobility_bonus, osl::eval::ProgressDebugInfo::opening, osl::eval::ProgressEvalGeneral< OpeningEval >::openingValue(), osl::eval::ProgressDebugInfo::pin_bonus, osl::eval::ProgressDebugInfo::progress, osl::eval::ProgressEvalGeneral< OpeningEval >::progress16(), osl::progress::Effect5x3d::progress16(), osl::progress::Effect5x3::progress16(), osl::eval::ProgressEvalGeneral< OpeningEval >::progress16bonus(), osl::progress::Effect5x3::progress16bonus(), osl::eval::ProgressDebugInfo::progress_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::progress_dependent_bonus, osl::eval::ProgressDebugInfo::progress_dependent_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::progress_independent_bonus, osl::eval::ProgressDebugInfo::progress_independent_bonus, osl::eval::ProgressDebugInfo::rook_rank_bonus, osl::eval::ProgressDebugInfo::silver_penalty, osl::eval::ProgressDebugInfo::two_rook_bonus, osl::eval::ProgressEvalGeneral< OpeningEval >::value(), osl::WHITE, osl::eval::ProgressDebugInfo::white_danger, と osl::eval::ProgressDebugInfo::white_defense.

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculatePinBonus ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateMobilityBonus ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateAttackRooks ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateAttackBonus ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateSilverPenalty ( const NumEffectState &  state  )  const [inline]

template<class Opening>
int osl::eval::ProgressEvalGeneral< Opening >::calculateGoldPenalty ( const NumEffectState &  state  )  const [inline]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::attackDefenseBonus (  )  const [inline]

progressEval.h243 行で定義されています。

参照元 osl::eval::ProgressEvalGeneral< OpeningEval >::debugInfo(), と show().


変数

template<class OpeningEval>
opening_eval_t osl::eval::ProgressEvalGeneral< OpeningEval >::opening_eval [private]

template<class OpeningEval>
endgame_eval_t osl::eval::ProgressEvalGeneral< OpeningEval >::endgame_eval [private]

template<class OpeningEval>
progress_t osl::eval::ProgressEvalGeneral< OpeningEval >::current_progress [private]

template<class OpeningEval>
defense_t osl::eval::ProgressEvalGeneral< OpeningEval >::defense_effect [private]

template<class OpeningEval>
MinorPieceBonus osl::eval::ProgressEvalGeneral< OpeningEval >::minor_piece_bonus [private]

template<class OpeningEval>
CArray<PieceMask, 2> osl::eval::ProgressEvalGeneral< OpeningEval >::pin_mask [mutable, private]

template<class OpeningEval>
CArray2d<int, 2, DR+1> osl::eval::ProgressEvalGeneral< OpeningEval >::can_check_pieces [private]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::progress_independent_bonus [private]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::progress_dependent_bonus [private]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::major_pieces [private]

template<class OpeningEval>
int osl::eval::ProgressEvalGeneral< OpeningEval >::cache [mutable, private]

template<class OpeningEval>
osl::CArray< int, osl::PTYPEO_SIZE > osl::eval::ProgressEvalGeneral< Opening >::capture_values [inline, static, private]

template<class OpeningEval>
const int osl::eval::ProgressEvalGeneral< OpeningEval >::ROUND_UP = 64 [static]

roundup 2^n Ǥ뤳

progressEval.h105 行で定義されています。

参照元 osl::eval::ProgressEvalGeneral< PiecePairPieceEval >::composeValue().


このクラスの説明は次のファイルから生成されました:

Thu Oct 8 05:01:16 2009に生成されました。  doxygen 1.5.6