My Project
|
#include <progress.h>
Public Types | |
enum | { ProgressScale = 2 } |
Public Member Functions | |
NewProgress (const NumEffectState &state) | |
int | progress () const |
template<Player P> | |
void | updateSub (const NumEffectState &new_state, Move last_move) |
void | update (const NumEffectState &new_state, Move last_move) |
NewProgressDebugInfo | debugInfo () const |
const Progress16 | progress16 () const |
const Progress16 | progress16 (Player p) const |
const Progress16 | progressAttack (Player p) const |
const Progress16 | progressDefense (Player p) const |
const NewProgressData | rawData () const |
Static Public Member Functions | |
static int | maxProgress () |
static bool | initialized () |
static bool | setUp (const char *filename) |
static bool | setUp () |
static std::string | defaultFilename () |
Private Member Functions | |
void | updatePieceKingRelativeBonus (const NumEffectState &state) |
void | updateNonPawnAttackedPtypePair (const NumEffectState &state) |
template<Player Owner> | |
void | updateNonPawnAttackedPtypePairOne (const NumEffectState &state) |
void | updatePawnFacing (const NumEffectState &state) |
template<Player Attack> | |
void | promotion37One (const NumEffectState &state, int rank) |
void | updatePromotion37 (const NumEffectState &state) |
void | updatePieceStand7 (const NumEffectState &state) |
template<Player P> | |
void | updateAttack5x5PiecesAndState (const NumEffectState &state) |
template<Player P> | |
void | updateAttack5x5Pieces (PieceMask, const NumEffectState &) |
template<Player P> | |
int | attack5x5Value (const NumEffectState &state) const |
template<Player P> | |
void | updateMain (const NumEffectState &new_state, Move last_move) |
Static Private Member Functions | |
template<Player P> | |
static void | progressOne (const NumEffectState &state, int &attack, int &defense) |
template<Player P> | |
static int | index (Square king, Square target) |
template<Player P> | |
static int | indexX (Square king, Square target) |
template<Player P> | |
static int | indexY (Square king, Square target) |
static int | index5x5 (int rook, int bishop, int gold, int silver, int promoted) |
static int | index5x5x (int rook, int bishop, int gold, int silver, int promoted, int king_x) |
static int | index5x5y (int rook, int bishop, int gold, int silver, int promoted, int king_y) |
template<Player P> | |
static int | indexPerEffect (Square king, Square target, int count) |
template<Player P> | |
static int | indexPerEffectY (Square king, Square target, int count) |
template<Player P> | |
static int | indexPerEffectX (Square king, Square target, int count) |
template<Player P> | |
static int | indexRelative (const Square king, const Ptype ptype, const Square pos) |
static int | indexRelative (const Player player, const Square king, const Piece piece) |
Static Private Attributes | |
static bool | initialized_flag |
static CArray< int, Piece::SIZE > | stand_weight |
static CArray< int, 1125 > | attack5x5_weight |
static CArray< int, 5625 > | attack5x5_x_weight |
static CArray< int, 10125 > | attack5x5_y_weight |
static CArray< int, 75 > | effectstate_weight |
static CArray< int, 81 *15 *10 > | attack_relative |
static CArray< int, 81 *15 *10 > | defense_relative |
static CArray< int, 4284 > | king_relative_weight |
static CArray< int, 262144 > | attacked_ptype_pair_weight |
static CArray< int, 10 > | pawn_facing_weight |
static CArray< int, 16 > | promotion37_weight |
static CArray< int, 56 > | piecestand7_weight |
static int | max_progress |
Additional Inherited Members | |
![]() | |
CArray< MultiInt, 2 > | non_pawn_ptype_attacked_pair_eval |
MultiInt | promotion37_eval |
CArray< int, 2 > | progresses |
CArray< int, 2 > | attack5x5_progresses |
CArray< int, 2 > | stand_progresses |
CArray< int, 2 > | effect_progresses |
CArray< int, 2 > | defenses |
CArray< int, 2 > | rook |
CArray< int, 2 > | bishop |
CArray< int, 2 > | gold |
CArray< int, 2 > | silver |
CArray< int, 2 > | promoted |
CArray< int, 2 > | king_relative_attack |
CArray< int, 2 > | king_relative_defense |
CArray< int, 2 > | non_pawn_ptype_attacked_pair |
int | pawn_facing |
int | promotion37 |
int | piecestand7 |
Definition at line 75 of file progress.h.
anonymous enum |
Enumerator | |
---|---|
ProgressScale |
Definition at line 78 of file progress.h.
osl::progress::ml::NewProgress::NewProgress | ( | const NumEffectState & | state | ) |
Definition at line 546 of file progress.cc.
References osl::BLACK, osl::SimpleState::countPiecesOnStand(), osl::PtypeTable::getIndexMin(), osl::PieceStand::order, osl::Ptype_Table, and osl::WHITE.
|
private |
Definition at line 386 of file progress.cc.
References osl::alt(), osl::BISHOP, osl::BLACK, osl::SimpleState::countPiecesOnStand(), osl::GOLD, osl::SimpleState::kingSquare(), osl::ROOK, and osl::SILVER.
osl::progress::ml::NewProgressDebugInfo osl::progress::ml::NewProgress::debugInfo | ( | ) | const |
Definition at line 726 of file progress.cc.
References osl::progress::ml::NewProgressDebugInfo::ATTACK5X5, osl::progress::ml::NewProgressDebugInfo::ATTACK_5X3, osl::progress::ml::NewProgressDebugInfo::black_values, osl::progress::ml::NewProgressDebugInfo::DEFENSE_5X3, osl::progress::ml::NewProgressDebugInfo::EFFECT5X5, osl::progress::ml::NewProgressDebugInfo::KING_RELATIVE_ATTACK, osl::progress::ml::NewProgressDebugInfo::KING_RELATIVE_DEFENSE, osl::progress::ml::NewProgressDebugInfo::NON_PAWN_ATTACKED_PAIR, osl::progress::ml::NewProgressDebugInfo::STAND, and osl::progress::ml::NewProgressDebugInfo::white_values.
|
static |
Definition at line 288 of file progress.cc.
References osl::OslConfig::home().
Referenced by osl::OslConfig::healthCheck().
|
inlinestaticprivate |
Definition at line 113 of file progress.h.
References osl::BLACK, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
Definition at line 167 of file progress.h.
References osl::BLACK, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
Definition at line 187 of file progress.h.
References osl::BLACK, osl::WHITE, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
Definition at line 177 of file progress.h.
References osl::BLACK, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
Definition at line 209 of file progress.h.
References osl::BLACK, osl::Piece::ptype(), and osl::Piece::square().
|
inlinestaticprivate |
Definition at line 201 of file progress.h.
References osl::BLACK, osl::PTYPE_PIECE_MIN, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
Definition at line 121 of file progress.h.
References osl::BLACK, osl::WHITE, osl::Square::x(), and osl::Square::y().
|
inlinestaticprivate |
Definition at line 138 of file progress.h.
References osl::BLACK, osl::Square::x(), and osl::Square::y().
|
inlinestatic |
Definition at line 304 of file progress.h.
References initialized_flag.
|
inlinestatic |
Definition at line 243 of file progress.h.
References max_progress, and ProgressScale.
Referenced by osl::eval::ml::OpenMidEndingEval::composeOpenMidEndgame(), osl::eval::ml::OpenMidEndingEval::expect(), osl::eval::ml::OpenMidEndingEval::infty(), progress16(), progress16(), progressAttack(), progressDefense(), and osl::eval::ml::OpenMidEndingEval::seeScale().
|
inline |
Definition at line 225 of file progress.h.
References osl::progress::ml::NewProgressData::attack5x5_progresses, osl::progress::ml::NewProgressData::defenses, osl::progress::ml::NewProgressData::effect_progresses, osl::progress::ml::NewProgressData::king_relative_attack, osl::progress::ml::NewProgressData::king_relative_defense, max_progress, osl::progress::ml::NewProgressData::non_pawn_ptype_attacked_pair, osl::progress::ml::NewProgressData::pawn_facing, osl::progress::ml::NewProgressData::piecestand7, osl::progress::ml::NewProgressData::progresses, ProgressScale, osl::progress::ml::NewProgressData::promotion37, and osl::progress::ml::NewProgressData::stand_progresses.
Referenced by osl::eval::ml::OpenMidEndingEval::composeOpenMidEndgame(), and progress16().
|
inline |
Definition at line 257 of file progress.h.
References maxProgress(), and progress().
|
inline |
Definition at line 261 of file progress.h.
References osl::alt(), osl::progress::ml::NewProgressData::attack5x5_progresses, osl::progress::ml::NewProgressData::defenses, osl::progress::ml::NewProgressData::effect_progresses, osl::progress::ml::NewProgressData::king_relative_attack, osl::progress::ml::NewProgressData::king_relative_defense, max_progress, maxProgress(), osl::progress::ml::NewProgressData::non_pawn_ptype_attacked_pair, osl::playerToIndex(), osl::progress::ml::NewProgressData::progresses, ProgressScale, and osl::progress::ml::NewProgressData::stand_progresses.
|
inline |
Definition at line 278 of file progress.h.
References osl::alt(), osl::progress::ml::NewProgressData::attack5x5_progresses, osl::progress::ml::NewProgressData::effect_progresses, osl::progress::ml::NewProgressData::king_relative_attack, max_progress, maxProgress(), osl::progress::ml::NewProgressData::progresses, ProgressScale, and osl::progress::ml::NewProgressData::stand_progresses.
|
inline |
Definition at line 292 of file progress.h.
References osl::alt(), osl::progress::ml::NewProgressData::defenses, osl::progress::ml::NewProgressData::king_relative_defense, max_progress, maxProgress(), osl::progress::ml::NewProgressData::non_pawn_ptype_attacked_pair, and ProgressScale.
|
staticprivate |
Definition at line 296 of file progress.cc.
References osl::Centering5x3::adjustCenter(), osl::alt(), osl::BLACK, osl::NumEffectState::countEffect(), osl::SimpleState::kingSquare(), osl::Square::rotate180(), osl::WHITE, osl::Square::x(), and osl::Square::y().
|
private |
Definition at line 491 of file progress.cc.
References osl::alt(), osl::NumEffectState::countEffect(), osl::NumEffectState::findCheapAttack(), osl::effect_util::AdditionalEffect::hasEffect(), osl::isPiece(), osl::isPromoted(), osl::Piece::ptype(), osl::PTYPE_BASIC_MIN, osl::PTYPE_MAX, and osl::sign().
|
inline |
Definition at line 311 of file progress.h.
Referenced by osl::progress::ml::operator==().
|
static |
Definition at line 283 of file progress.cc.
Referenced by osl::OslConfig::healthCheck(), and osl::OslConfig::setUp().
|
static |
Definition at line 54 of file progress.cc.
References osl::Centering5x3::adjustCenter(), attack5x5_weight, attack5x5_x_weight, attack5x5_y_weight, attack_relative, attacked_ptype_pair_weight, osl::progress::ml::NewProgressData::bishop, defense_relative, osl::eval::ml::Weights::dimension(), effectstate_weight, osl::progress::ml::NewProgressData::gold, osl::eval::ml::NonPawnAttackedPtypePair::index2(), initialized_flag, king_relative_weight, max_progress, pawn_facing_weight, piecestand7_weight, ProgressScale, osl::progress::ml::NewProgressData::promoted, promotion37_weight, osl::PTYPE_SIZE, osl::eval::ml::Weights::resetDimension(), osl::progress::ml::NewProgressData::rook, osl::progress::ml::NewProgressData::silver, osl::Piece::SIZE, stand_weight, osl::Square::x(), and osl::Square::y().
|
inline |
Definition at line 246 of file progress.h.
References osl::BLACK, and osl::SimpleState::turn().
|
private |
Definition at line 367 of file progress.cc.
References osl::alt(), osl::BISHOP, osl::PieceMask::clearBit(), osl::container::PieceMask64::countBit(), osl::GOLD, osl::NumEffectState::piecesOnBoard(), osl::NumEffectState::promotedPieces(), osl::ROOK, and osl::PieceMask::selectBit().
|
private |
Definition at line 336 of file progress.cc.
References osl::alt(), osl::effect::NumBitmapEffect::countEffect(), osl::NumEffectState::effectSetAt(), osl::SimpleState::kingSquare(), osl::WHITE, osl::Square::x(), and osl::Square::y().
|
inlineprivate |
Definition at line 590 of file progress.cc.
References osl::alt(), osl::container::BoardMask::anyInRange(), osl::BLACK, osl::captured(), osl::Move::capturePtype(), osl::NumEffectState::changedEffects(), osl::SimpleState::countPiecesOnStand(), osl::Move::from(), osl::PtypeTable::getIndexMin(), osl::Move::isDrop(), osl::KING, osl::SimpleState::kingSquare(), osl::container::BoardMaskTable5x3Center::mask(), osl::Move::oldPtype(), osl::Move::player(), osl::Move::ptype(), osl::PTYPE_EMPTY, osl::Ptype_Table, osl::Move::to(), osl::SimpleState::turn(), osl::unpromote(), and osl::WHITE.
|
private |
Definition at line 468 of file progress.cc.
|
private |
Definition at line 435 of file progress.cc.
References osl::alt(), osl::PieceMask::any(), osl::BLACK, osl::PieceMask::clearBit(), osl::NumEffectState::effectedMask(), osl::PieceMask::getMask(), osl::SimpleState::kingPiece(), osl::Piece::number(), osl::PieceMask::orMask(), osl::PAWN, osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), osl::NumEffectState::promotedPieces(), osl::FixedCapacityVector< T, Capacity >::push_back(), osl::PieceMask::reset(), osl::PieceMask::selectBit(), osl::FixedCapacityVector< T, Capacity >::size(), and osl::container::PieceMask64::takeOneBit().
|
private |
Definition at line 475 of file progress.cc.
References osl::BLACK, osl::NumEffectState::effectedMask(), osl::PieceMask::getMask(), osl::NumEffectState::hasEffectByPtypeStrict(), osl::PAWN, osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), osl::NumEffectState::promotedPieces(), osl::PieceMask::selectBit(), osl::Piece::square(), and osl::WHITE.
|
private |
Definition at line 410 of file progress.cc.
References osl::alt(), osl::BLACK, osl::Piece::isOnBoard(), osl::KING, osl::SimpleState::kingSquare(), osl::Piece::owner(), osl::SimpleState::pieceOf(), osl::Piece::ptype(), osl::Piece::SIZE, and osl::WHITE.
|
private |
Definition at line 531 of file progress.cc.
References osl::SimpleState::hasPieceOnStand(), osl::indexToPlayer(), osl::PieceStand::order, and osl::PTYPE_BASIC_MIN.
|
private |
Definition at line 522 of file progress.cc.
void osl::progress::ml::NewProgress::updateSub | ( | const NumEffectState & | new_state, |
Move | last_move | ||
) |
Definition at line 684 of file progress.cc.
References osl::alt(), osl::container::BoardMask::anyInRange(), osl::BLACK, osl::captured(), osl::Move::capturePtype(), osl::NumEffectState::changedEffects(), osl::Move::isDrop(), osl::Move::isPass(), osl::KING, osl::SimpleState::kingSquare(), osl::container::BoardMaskTable5x5::mask(), osl::Move::ptype(), osl::PTYPE_EMPTY, osl::SimpleState::turn(), and osl::WHITE.
|
staticprivate |
Definition at line 82 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 83 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 84 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 86 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 89 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 87 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 85 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 80 of file progress.h.
Referenced by initialized(), and setUp().
|
staticprivate |
Definition at line 88 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 93 of file progress.h.
Referenced by maxProgress(), progress(), progress16(), progressAttack(), progressDefense(), and setUp().
|
staticprivate |
Definition at line 90 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 92 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 91 of file progress.h.
Referenced by setUp().
|
staticprivate |
Definition at line 81 of file progress.h.
Referenced by setUp().