All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes
osl::eval::ml::OpenMidEndingEval Class Reference

#include <openMidEndingEval.h>

Collaboration diagram for osl::eval::ml::OpenMidEndingEval:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 OpenMidEndingEval (const NumEffectState &state, bool limit_progress_independent_value=!OslConfig::hasByoyomi())
void changeTurn ()
int progressIndependentValue () const
void debug () const
MultiInt stageValue () const
int openingValue () const
int midgameValue () const
int midgame2Value () const
int endgameValue () const
void invalidateCache ()
int composeOpenMidEndgame () const
int value () const
const Move suggestMove (const NumEffectState &state) const
int expect (const NumEffectState &state, Move move) const
template<Player P>
void updateSub (const NumEffectState &new_state, Move last_move)
void update (const NumEffectState &new_state, Move last_move)
const Progress32 progress32 () const
const Progress16 progress16 () const
int progressValue () const
int progressMax () const
OpenMidEndingEvalDebugInfo debugInfo (const NumEffectState &state)
bool progressIndependentValueLimit () const

Static Public Member Functions

static bool initialized ()
static bool setUp (const char *filename)
static bool setUp ()
static std::string defaultFilename ()
static int progressIndependentValueAdjusted (int value, int progress, int progress_max)
static int infty ()
static int captureValue (PtypeO ptypeO)
static int seeScale ()
static void setRandom ()
static void resetWeights (const int *w, size_t length)

Static Public Attributes

static OpenMidEndingPtypeTable Piece_Value

Private Types

enum  { INVALID = EvalTraits<BLACK>::MAX_VALUE+1 }
enum  { ProgressIndependentValueLimit = 4000 }
enum  LoadStatus { Zero = 0, Loaded, Random }
typedef
osl::progress::ml::NewProgress 
progress_t

Private Member Functions

void updateGoldSilverNearKing (const NumEffectState &state)

Static Private Member Functions

static int roundUp (int v)
template<class Reader >
static void doResetWeights (Reader &reader)

Private Attributes

progress_t progress
MultiIntPair kingx_blocked
MultiIntPair king25_effect_each
MultiIntPair king25_both_side
MultiIntPair king_rook_bishop
MultiIntPair piece_stand_turn
MultiIntPair non_pawn_attacked
MultiIntPair non_pawn_attacked_ptype
MultiIntPair piece_fork_turn
MultiInt ptypey
MultiInt ptypex
MultiInt king_table_value
MultiInt piece_stand_value
MultiInt recalculated_stage_value
MultiInt pawn_advance
MultiInt rook_mobility
MultiInt bishop_mobility
MultiInt lance_mobility
MultiInt knight_advance
MultiInt pawn_drop
MultiInt promoted_minor_piece
MultiInt rook_pawn
MultiInt rook_effect
MultiInt bishop_effect
MultiInt bishop_head
MultiInt nosupport
MultiInt ptype_yy
MultiInt king3pieces
MultiInt rook_promote_defense
MultiInt piece_stand_combination
MultiInt piece_stand_y
MultiInt knight_check
MultiInt knight_head
MultiInt pawn_ptypeo
MultiInt ptype_count_value
MultiInt lance_effect_piece
MultiInt ptype_y_pawn_y
MultiInt bishop_and_king
MultiInt rook_silver_knight
MultiInt bishop_silver_knight
CArray< BoardMask, 2 > knight_fork_squares
CArray< PieceMask, 2 > effect25
CArray< PieceMask, 2 > effect25_supported
CArray< PieceMask, 2 > effected_mask
CArray< PieceMask, 2 > effected_mask_for_attacked
CArray< PieceMask, 40 > attacked_mask
CArray< int, 5 > black_vertical
CArray< int, 5 > white_vertical
CArray< int, 5 > black_king_vertical
CArray< int, 5 > white_king_vertical
CArray< int, 2 > piece_pair_king_value
CArray< int, 2 > non_pawn_stand_count
CArray2d< int, 2, 3 > gs_near_king_count
CArray2d< int, 2, PTYPE_SIZEptype_count
CArray2d< int, 2, PTYPE_SIZEptype_board_count
CArray< std::pair< Square, int >, 2 > knight_drop
CArray< std::pair< Square, int >, 2 > silver_drop
CArray< std::pair< Square, int >, 2 > bishop_drop
CArray< std::pair< Square, int >, 2 > rook_drop
CArray2d< int, 2, 9 > pawns
int progress_independent_value
int recalculated_value
int piece_pair_value
int black_pawn_count
int black_major_count
int black_gold_count
int black_attack_effect
int black_attack_piece
int white_attack_effect
int white_attack_piece
int black_attack_supported_piece
int white_attack_supported_piece
int black_defense_effect
int black_defense_piece
int white_defense_effect
int white_defense_piece
int cache
Player turn
unsigned int ptypeo_mask
CArray< bool, 2 > can_check
bool use_progress_independent_value_limit

Static Private Attributes

static volatile LoadStatus initialized_flag = osl::eval::ml::OpenMidEndingEval::Zero
static Weights piece_pair_weights
static const int ROUND_UP = 2

Detailed Description

Definition at line 122 of file openMidEndingEval.h.


Member Typedef Documentation

Definition at line 134 of file openMidEndingEval.h.


Member Enumeration Documentation

anonymous enum [private]
Enumerator:
INVALID 

Definition at line 125 of file openMidEndingEval.h.

anonymous enum [private]
Enumerator:
ProgressIndependentValueLimit 

one should attack king after when he captured almost all pieces

Definition at line 126 of file openMidEndingEval.h.

Enumerator:
Zero 
Loaded 
Random 

Definition at line 130 of file openMidEndingEval.h.


Constructor & Destructor Documentation

osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval ( const NumEffectState &  state,
bool  limit_progress_independent_value = OslConfig::hasByoyomi() 
) [explicit]

Definition at line 502 of file openMidEndingEval.cc.

References attacked_mask, bishop_and_king, bishop_drop, bishop_effect, bishop_head, bishop_mobility, bishop_silver_knight, osl::BLACK, black_attack_effect, black_attack_piece, black_attack_supported_piece, black_defense_effect, black_defense_piece, black_gold_count, black_king_vertical, black_major_count, black_pawn_count, black_vertical, can_check, effect25, effect25_supported, effected_mask, effected_mask_for_attacked, osl::eval::ml::PieceEval::eval(), osl::eval::ml::PiecePairKing::eval(), osl::eval::ml::PiecePair::eval(), osl::eval::ml::PieceStand::eval(), osl::eval::ml::RookMobilityAll::eval(), osl::eval::ml::PinPtypeAll::eval(), osl::eval::ml::KingPieceRelative::eval(), osl::eval::ml::NonPawnPieceStand::eval(), osl::eval::ml::KingPieceRelativeNoSupport::eval(), osl::eval::ml::NonPawnPieceStandCombination::eval(), osl::eval::ml::RookPawnY::eval(), osl::eval::ml::PtypeYY::eval(), osl::eval::ml::CheckShadowPtype::eval(), osl::eval::ml::PawnDropBoth::eval(), osl::eval::ml::NonPawnPieceStandTurn::eval(), osl::eval::ml::BishopMobilityAll::eval(), osl::eval::ml::AllMajor::eval(), osl::eval::ml::LanceMobilityAll::eval(), osl::eval::ml::PieceStandY::eval(), osl::eval::ml::RookEffectBase::eval(), osl::eval::ml::PieceStandCombinationBoth::eval(), osl::eval::ml::King25EffectAttack::eval(), osl::eval::ml::KingXBlocked::eval(), osl::eval::ml::King25EffectDefense::eval(), osl::eval::ml::KingXBlockedY::eval(), osl::eval::ml::King25EffectYAttack::eval(), osl::eval::ml::KingXBothBlocked::eval(), osl::eval::ml::King25EffectYDefense::eval(), osl::eval::ml::RookPromoteDefense::eval(), osl::eval::ml::KingXBlocked3::eval(), osl::eval::ml::BishopEffectBase::eval(), osl::eval::ml::AnagumaEmpty::eval(), osl::eval::ml::King25EffectSupported::eval(), osl::eval::ml::King25EffectSupportedY::eval(), osl::eval::ml::BishopHead::eval(), osl::eval::ml::NoPawnOnStand::eval(), osl::eval::ml::NumPiecesBetweenBishopAndKing::eval(), osl::eval::ml::BishopBishopPiece::eval(), osl::eval::ml::PawnAdvance::eval(), osl::eval::ml::SilverFeatures::eval(), osl::eval::ml::RookRook::eval(), osl::eval::ml::GoldFeatures::eval(), osl::eval::ml::King25EffectEachBoth::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::BishopStandFile5::eval(), osl::eval::ml::King3Pieces::eval(), osl::eval::ml::MajorCheckWithCapture::eval(), osl::eval::ml::RookSilverKnight::eval(), osl::eval::ml::BishopSilverKnight::eval(), osl::eval::ml::AttackMajorsInBase::eval(), osl::eval::ml::KnightAdvance::eval(), osl::eval::ml::AllGold::eval(), osl::eval::ml::KingMobility::eval(), osl::eval::ml::PtypeY::eval(), osl::eval::ml::PtypeX::eval(), osl::eval::ml::KingMobilitySum::eval(), osl::eval::ml::KnightCheck::eval(), osl::eval::ml::KnightHead::eval(), osl::eval::ml::PawnPtypeOPtypeO::eval(), osl::eval::ml::King25Mobility::eval(), osl::eval::ml::PromotedMinorPieces::eval(), osl::eval::ml::King25Effect3::eval(), osl::eval::ml::NonPawnAttacked::eval(), osl::eval::ml::King25EffectCountCombination::eval(), osl::eval::ml::BishopExchangeSilverKing::eval(), osl::eval::ml::EnterKingDefense::eval(), osl::eval::ml::NonPawnAttackedPtype::eval(), osl::eval::ml::NonPawnAttackedPtypePair::eval(), osl::eval::ml::PtypeCount::eval(), osl::eval::ml::LanceEffectPieceKingRelative::eval(), osl::eval::ml::PtypeYPawnY::eval(), osl::eval::ml::GoldAndSilverNearKing::eval(), osl::eval::ml::PtypeCombination::eval(), osl::eval::ml::SilverFork::eval(), osl::eval::ml::BishopRookFork::eval(), osl::eval::ml::KnightFork::eval(), osl::eval::ml::SilverAdvance26::eval(), osl::eval::ml::Promotion37::eval(), gs_near_king_count, osl::PtypeTraits< GOLD >::indexMin, osl::PtypeTraits< PAWN >::indexMin, osl::PtypeTraits< BISHOP >::indexMin, osl::PtypeTraits< ROOK >::indexMin, initialized_flag, invalidateCache(), osl::Piece::isOnBoard(), osl::Piece::isPromoted(), osl::KING, king25_both_side, king25_effect_each, king3pieces, king_rook_bishop, king_table_value, kingx_blocked, knight_advance, knight_check, knight_drop, knight_fork_squares, knight_head, lance_effect_piece, lance_mobility, non_pawn_attacked, non_pawn_attacked_ptype, non_pawn_stand_count, nosupport, osl::PieceStand::order, osl::Piece::owner(), osl::PAWN, pawn_advance, pawn_drop, pawn_ptypeo, pawns, piece_fork_turn, piece_pair_king_value, piece_pair_value, piece_pair_weights, piece_stand_combination, piece_stand_turn, piece_stand_value, piece_stand_y, progress_independent_value, promoted_minor_piece, osl::Piece::ptype(), ptype_board_count, ptype_count, ptype_count_value, ptype_y_pawn_y, ptype_yy, osl::Piece::ptypeO(), ptypeo_mask, osl::PTYPEO_MIN, ptypex, ptypey, recalculated_stage_value, recalculated_value, rook_drop, rook_effect, rook_mobility, rook_pawn, rook_promote_defense, rook_silver_knight, silver_drop, osl::Piece::SIZE, osl::Piece::square(), turn, updateGoldSilverNearKing(), osl::WHITE, white_attack_effect, white_attack_piece, white_attack_supported_piece, white_defense_effect, white_defense_piece, white_king_vertical, white_vertical, osl::Square::x(), osl::Square::y(), and Zero.


Member Function Documentation

static int osl::eval::ml::OpenMidEndingEval::captureValue ( PtypeO  ptypeO) [inline, static]

Definition at line 226 of file openMidEndingEval.h.

Definition at line 1282 of file openMidEndingEval.cc.

References osl::BLACK, DEBUGPRINT, and osl::WHITE.

Definition at line 1124 of file openMidEndingEval.cc.

References osl::eval::ml::OpenMidEndingEvalDebugInfo::ALL_GOLD, osl::eval::ml::OpenMidEndingEvalDebugInfo::ALL_MAJOR, osl::eval::ml::OpenMidEndingEvalDebugInfo::ANAGUMA_EMPTY, osl::eval::ml::OpenMidEndingEvalDebugInfo::ATTACK_MAJORS_IN_BASE, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_AND_KING, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_BISHOP_PIECE, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_EFFECT, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_EXCHANGE_SILVER_KING, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_HEAD, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_MOBILITY, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_SILVER_KNIGHT, osl::eval::ml::OpenMidEndingEvalDebugInfo::BISHOP_STAND_FILE5, osl::BLACK, osl::eval::ml::OpenMidEndingEvalDebugInfo::ENTER_KING_DEFENSE, osl::eval::ml::PinPtypeAll::eval(), osl::eval::ml::NonPawnPieceStand::eval(), osl::eval::ml::AllMajor::eval(), osl::eval::ml::King25EffectBoth::eval(), osl::eval::ml::King25EffectDefense::eval(), osl::eval::ml::King25EffectYDefense::eval(), osl::eval::ml::KingXBlocked3::eval(), osl::eval::ml::King25EffectY::eval(), osl::eval::ml::AnagumaEmpty::eval(), osl::eval::ml::King25EffectSupported::eval(), osl::eval::ml::King25EffectSupportedY::eval(), osl::eval::ml::NoPawnOnStand::eval(), osl::eval::ml::BishopBishopPiece::eval(), osl::eval::ml::SilverFeatures::eval(), osl::eval::ml::RookRook::eval(), osl::eval::ml::GoldFeatures::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::BishopStandFile5::eval(), osl::eval::ml::MajorCheckWithCapture::eval(), osl::eval::ml::AttackMajorsInBase::eval(), osl::eval::ml::AllGold::eval(), osl::eval::ml::KingMobility::eval(), osl::eval::ml::KingMobilitySum::eval(), osl::eval::ml::King25Mobility::eval(), osl::eval::ml::King25Effect3::eval(), osl::eval::ml::King25EffectCountCombination::eval(), osl::eval::ml::BishopExchangeSilverKing::eval(), osl::eval::ml::EnterKingDefense::eval(), osl::eval::ml::NonPawnAttackedPtypePair::eval(), osl::eval::ml::GoldAndSilverNearKing::eval(), osl::eval::ml::PtypeCombination::eval(), osl::eval::ml::SilverAdvance26::eval(), osl::eval::ml::OpenMidEndingEvalDebugInfo::GOLD_AND_SILVER_NEAR_KING, osl::eval::ml::OpenMidEndingEvalDebugInfo::GOLD_RETREAT, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_BOTH_SIDE, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT3, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT_ATTACK, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT_COUNT_COMBINATION, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT_DEFENSE, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT_EACH, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_EFFECT_SUPPORTED, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING25_MOBILITY, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING3PIECES, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING_MOBILITY, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING_PIECE_RELATIVE, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING_PIECE_RELATIVE_NOSUPPORT, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING_ROOK_BISHOP, osl::eval::ml::OpenMidEndingEvalDebugInfo::KING_X_BLOCKED3, osl::eval::ml::OpenMidEndingEvalDebugInfo::KNIGHT_CHECK, osl::eval::ml::OpenMidEndingEvalDebugInfo::KNIGHT_HEAD, osl::eval::ml::OpenMidEndingEvalDebugInfo::LANCE_EFFECT_PIECE, osl::eval::ml::OpenMidEndingEvalDebugInfo::LANCE_MOBILITY, osl::eval::ml::OpenMidEndingEvalDebugInfo::MAJOR_CHECK_WITH_CAPTURE, osl::eval::ml::OpenMidEndingEvalDebugInfo::NO_PAWN_ON_STAND, osl::eval::ml::OpenMidEndingEvalDebugInfo::NON_PAWN_ATTACKED, osl::eval::ml::OpenMidEndingEvalDebugInfo::NON_PAWN_ATTACKED_PTYPE, osl::eval::ml::OpenMidEndingEvalDebugInfo::NON_PAWN_ATTACKED_PTYPE_PAIR, osl::eval::ml::OpenMidEndingEvalDebugInfo::NON_PAWN_PIECE_STAND, osl::eval::ml::OpenMidEndingEvalDebugInfo::PAWN_ADVANCE, osl::eval::ml::OpenMidEndingEvalDebugInfo::PAWN_DROP, osl::eval::ml::OpenMidEndingEvalDebugInfo::PAWN_PTYPEO, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_FORK_TURN, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_PAIR, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_PAIR_KING, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_STAND, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_STAND_COMBINATION, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_STAND_TURN, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIECE_STAND_Y, osl::eval::ml::OpenMidEndingEvalDebugInfo::PIN_PTYPE_ALL, osl::eval::ml::OpenMidEndingEvalDebugInfo::progress, osl::eval::ml::OpenMidEndingEvalDebugInfo::progress_independent_values, osl::eval::ml::OpenMidEndingEvalDebugInfo::PROMOTED_MINOR_PIECE, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPE_COMBINATION, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPE_COUNT, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPE_Y_PAWN_Y, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPE_YY, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPEX, osl::eval::ml::OpenMidEndingEvalDebugInfo::PTYPEY, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_EFFECT, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_MOBILITY, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_PAWN, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_PROMOTE_DEFENSE, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_ROOK, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_ROOK_PIECE, osl::eval::ml::OpenMidEndingEvalDebugInfo::ROOK_SILVER_KNIGHT, osl::eval::ml::OpenMidEndingEvalDebugInfo::SILVER_ADVANCE26, osl::eval::ml::OpenMidEndingEvalDebugInfo::SILVER_RETREAT, osl::eval::ml::OpenMidEndingEvalDebugInfo::stage_values, osl::eval::ml::OpenMidEndingEvalDebugInfo::value, and osl::WHITE.

Referenced by show().

Definition at line 489 of file openMidEndingEval.cc.

References osl::OslConfig::home().

Referenced by osl::OslConfig::healthCheck().

template<class Reader >
void osl::eval::ml::OpenMidEndingEval::doResetWeights ( Reader &  reader) [static, private]

Definition at line 269 of file openMidEndingEval.h.

References osl::EndgameIndex.

Referenced by show().

int osl::eval::ml::OpenMidEndingEval::expect ( const NumEffectState &  state,
Move  move 
) const
static int osl::eval::ml::OpenMidEndingEval::infty ( ) [inline, static]
static bool osl::eval::ml::OpenMidEndingEval::initialized ( ) [inline, static]

Definition at line 227 of file openMidEndingEval.h.

Definition at line 273 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 265 of file openMidEndingEval.h.

Referenced by show().

Definition at line 261 of file openMidEndingEval.h.

Referenced by show().

Definition at line 257 of file openMidEndingEval.h.

Referenced by show().

const Progress16 osl::eval::ml::OpenMidEndingEval::progress16 ( ) const [inline]

Definition at line 406 of file openMidEndingEval.h.

Referenced by show().

const Progress32 osl::eval::ml::OpenMidEndingEval::progress32 ( ) const [inline]

Definition at line 401 of file openMidEndingEval.h.

References osl::BLACK, and osl::WHITE.

Definition at line 234 of file openMidEndingEval.h.

References osl::BLACK, and osl::WHITE.

static int osl::eval::ml::OpenMidEndingEval::progressIndependentValueAdjusted ( int  value,
int  progress,
int  progress_max 
) [inline, static]

Definition at line 274 of file openMidEndingEval.h.

Definition at line 445 of file openMidEndingEval.h.

Definition at line 408 of file openMidEndingEval.h.

Definition at line 407 of file openMidEndingEval.h.

void osl::eval::ml::OpenMidEndingEval::resetWeights ( const int *  w,
size_t  length 
) [static]

Definition at line 200 of file openMidEndingEval.cc.

static int osl::eval::ml::OpenMidEndingEval::roundUp ( int  v) [inline, static, private]

Definition at line 182 of file openMidEndingEval.h.

static int osl::eval::ml::OpenMidEndingEval::seeScale ( ) [inline, static]

Definition at line 1319 of file openMidEndingEval.cc.

References osl::EndgameIndex, and initialize_mutex.

bool osl::eval::ml::OpenMidEndingEval::setUp ( const char *  filename) [static]

Definition at line 206 of file openMidEndingEval.cc.

References initialize_mutex.

Definition at line 496 of file openMidEndingEval.cc.

Referenced by osl::OslConfig::healthCheck(), main(), and osl::OslConfig::setUp().

Definition at line 240 of file openMidEndingEval.h.

References osl::BLACK, and osl::WHITE.

const Move osl::eval::ml::OpenMidEndingEval::suggestMove ( const NumEffectState &  state) const [inline]

Definition at line 366 of file openMidEndingEval.h.

References osl::BISHOP, osl::KNIGHT, osl::ROOK, and osl::SILVER.

void osl::eval::ml::OpenMidEndingEval::update ( const NumEffectState &  new_state,
Move  last_move 
)
void osl::eval::ml::OpenMidEndingEval::updateGoldSilverNearKing ( const NumEffectState &  state) [inline, private]
template<osl::Player P>
void osl::eval::ml::OpenMidEndingEval::updateSub ( const NumEffectState &  new_state,
Move  last_move 
)

Definition at line 772 of file openMidEndingEval.cc.

References osl::alt(), osl::BISHOP, osl::BLACK, osl::container::Board_Mask_Table5x5, osl::captured(), osl::Move::capturePtype(), osl::eval::ml::RookMobilityAll::eval(), osl::eval::ml::PinPtypeAll::eval(), osl::eval::ml::NonPawnPieceStand::eval(), osl::eval::ml::RookPawnY::eval(), osl::eval::ml::CheckShadowPtype::eval(), osl::eval::ml::BishopMobilityAll::eval(), osl::eval::ml::AllMajor::eval(), osl::eval::ml::LanceMobilityAll::eval(), osl::eval::ml::RookEffectBase::eval(), osl::eval::ml::PieceStandCombinationBoth::eval(), osl::eval::ml::King25EffectAttack::eval(), osl::eval::ml::King25EffectDefense::eval(), osl::eval::ml::King25EffectYAttack::eval(), osl::eval::ml::King25EffectYDefense::eval(), osl::eval::ml::RookPromoteDefense::eval(), osl::eval::ml::KingXBlocked3::eval(), osl::eval::ml::BishopEffectBase::eval(), osl::eval::ml::AnagumaEmpty::eval(), osl::eval::ml::King25EffectSupported::eval(), osl::eval::ml::King25EffectSupportedY::eval(), osl::eval::ml::BishopHead::eval(), osl::eval::ml::NoPawnOnStand::eval(), osl::eval::ml::NumPiecesBetweenBishopAndKing::eval(), osl::eval::ml::BishopBishopPiece::eval(), osl::eval::ml::SilverFeatures::eval(), osl::eval::ml::RookRook::eval(), osl::eval::ml::GoldFeatures::eval(), osl::eval::ml::RookRookPiece::eval(), osl::eval::ml::BishopStandFile5::eval(), osl::eval::ml::MajorCheckWithCapture::eval(), osl::eval::ml::RookSilverKnight::eval(), osl::eval::ml::BishopSilverKnight::eval(), osl::eval::ml::AttackMajorsInBase::eval(), osl::eval::ml::KnightAdvance::eval(), osl::eval::ml::AllGold::eval(), osl::eval::ml::KingMobility::eval(), osl::eval::ml::KingMobilitySum::eval(), osl::eval::ml::KnightCheck::eval(), osl::eval::ml::KnightHead::eval(), osl::eval::ml::King25Mobility::eval(), osl::eval::ml::King25Effect3::eval(), osl::eval::ml::King25EffectCountCombination::eval(), osl::eval::ml::BishopExchangeSilverKing::eval(), osl::eval::ml::EnterKingDefense::eval(), osl::eval::ml::NonPawnAttackedPtypePair::eval(), osl::eval::ml::LanceEffectPieceKingRelative::eval(), osl::eval::ml::GoldAndSilverNearKing::eval(), osl::eval::ml::PtypeCombination::eval(), osl::eval::ml::SilverFork::eval(), osl::eval::ml::BishopRookFork::eval(), osl::eval::ml::SilverAdvance26::eval(), osl::eval::ml::Promotion37::eval(), osl::eval::ml::KingPieceRelativeNoSupport::evalWithUpdate(), osl::eval::ml::NonPawnPieceStandCombination::evalWithUpdate(), osl::eval::ml::PtypeYY::evalWithUpdate(), osl::eval::ml::King25EffectEachBoth::evalWithUpdate(), osl::eval::ml::King3Pieces::evalWithUpdate(), osl::eval::ml::PromotedMinorPieces::evalWithUpdate(), osl::eval::ml::KingXBlockedBoth::evalWithUpdateBang(), osl::eval::ml::PiecePair::evalWithUpdateCompiled(), osl::Move::from(), osl::GOLD, osl::Move::isDrop(), osl::isMajorBasic(), osl::isMajorNonPieceOK(), osl::Move::isPromotion(), osl::KING, osl::KNIGHT, osl::LANCE, osl::container::BoardMaskTable5x5::mask(), osl::eval::max(), osl::PAWN, osl::PBISHOP, osl::Move::player(), osl::PPAWN, osl::PROOK, osl::Move::ptype(), osl::PTYPE_EMPTY, osl::ROOK, osl::SILVER, osl::Move::to(), osl::unpromote(), osl::WHITE, osl::Square::x(), and osl::Square::y().

Definition at line 344 of file openMidEndingEval.h.

Referenced by osl::search::AlphaBeta3::generateAllMoves(), make1(), make2(), and show().


Member Data Documentation

CArray<PieceMask, 40> osl::eval::ml::OpenMidEndingEval::attacked_mask [private]

Definition at line 157 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray<std::pair<Square,int>, 2> osl::eval::ml::OpenMidEndingEval::bishop_drop [private]

Definition at line 165 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 145 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 174 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 174 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 170 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 158 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 170 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 169 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 158 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 176 of file openMidEndingEval.h.

Definition at line 179 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray<PieceMask, 2> osl::eval::ml::OpenMidEndingEval::effect25 [private]

Definition at line 153 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 154 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray<PieceMask, 2> osl::eval::ml::OpenMidEndingEval::effected_mask [private]

Definition at line 155 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 156 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 163 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 131 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 140 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 139 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 140 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 143 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 139 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray<std::pair<Square,int>, 2> osl::eval::ml::OpenMidEndingEval::knight_drop [private]

Definition at line 165 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 152 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 145 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 141 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 141 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 162 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 144 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray2d<int, 2, 9> osl::eval::ml::OpenMidEndingEval::pawns [private]

Definition at line 166 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 141 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 161 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 167 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 132 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 141 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 144 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 444 of file openMidEndingEval.h.

Definition at line 138 of file openMidEndingEval.h.

Definition at line 167 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 164 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 164 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 178 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 143 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 143 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 144 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 167 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

CArray<std::pair<Square,int>, 2> osl::eval::ml::OpenMidEndingEval::rook_drop [private]

Definition at line 165 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 145 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 146 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 148 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 149 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

const int osl::eval::ml::OpenMidEndingEval::ROUND_UP = 2 [static, private]

Definition at line 181 of file openMidEndingEval.h.

CArray<std::pair<Square,int>, 2> osl::eval::ml::OpenMidEndingEval::silver_drop [private]

Definition at line 165 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 177 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 180 of file openMidEndingEval.h.

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 171 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 174 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 174 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 158 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().

Definition at line 158 of file openMidEndingEval.h.

Referenced by OpenMidEndingEval().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines