玉の周囲5x3の領域の利きの数と持駒から計算した進行度. More...
#include <effect5x3.h>
Public Member Functions | |
Effect5x3 (const NumEffectState &state) | |
void | changeTurn () |
int | progress (Player p) const |
const Progress16 | progress16 () const |
const Progress16 | progress16 (Player p) const |
Effect5x3 | expect (const NumEffectState &state, Move move) const |
void | update (const NumEffectState &new_state, Move last_move) |
Static Public Member Functions | |
static void | updateStand (int &old_stand, Move last_move) |
static int | makeProgressAll (Player defense, const NumEffectState &state, Square king) |
static int | makeProgressArea (Player attack, const NumEffectState &state, Square king) |
static int | makeProgressStand (Player attack, const NumEffectState &state) |
static int | makeProgress (Player defense, const NumEffectState &state) |
王の位置を指定したprogressの計算. More... | |
static int | makeProgress (const NumEffectState &state) |
static const Progress16 | progress16 (int progress) |
0-15 の値を返す More... | |
static const Progress16 | progress16each (int progress) |
0-15 の値を返す. More... | |
Protected Attributes | |
CArray< int, 2 > | progresses |
CArray< int, 2 > | stand_progresses |
CArray< int, 2 > | area_progresses |
玉の周囲5x3の領域の利きの数と持駒から計算した進行度.
5x3領域は盤面内になるように補正する. 黒と白の両方の進行度を持つ. 持駒の重みは PAWN 1 LANCE 4 KNIGHT,SILVER,GOLD 8 BISHOP,ROOK 12 利きの数は8の重みを持つ.
Definition at line 26 of file effect5x3.h.
|
explicit |
Definition at line 9 of file effect5x3.cc.
References osl::BLACK, and osl::WHITE.
|
inline |
Definition at line 74 of file effect5x3.h.
osl::progress::Effect5x3 osl::progress::Effect5x3::expect | ( | const NumEffectState & | state, |
Move | move | ||
) | const |
Definition at line 100 of file effect5x3.cc.
References osl::alt(), osl::Move::capturePtype(), old, osl::Move::player(), progresses, osl::PTYPE_EMPTY, and stand_progresses.
|
inlinestatic |
王の位置を指定したprogressの計算.
defense | - こちらの玉に注目したprogress |
state | - 盤面 |
king | - 玉の位置がここにあるとする. 一般には,盤面から玉の位置は特定できるが,差分計算の途中では 一致しないとして呼び出すことがある. |
Definition at line 44 of file effect5x3.h.
References makeProgressAll().
Referenced by makeProgress().
|
inlinestatic |
Definition at line 47 of file effect5x3.h.
References osl::BLACK, makeProgress(), and osl::WHITE.
|
static |
Definition at line 28 of file effect5x3.cc.
References center, osl::progress::Effect5x3_Table, osl::progress::Effect5x3Table::getAttackEffect(), target, osl::Square::x(), and osl::Square::y().
|
static |
Definition at line 52 of file effect5x3.cc.
References osl::BISHOP, osl::GOLD, osl::KNIGHT, osl::LANCE, osl::PAWN, osl::ROOK, and osl::SILVER.
|
inline |
|
inlinestatic |
0-15 の値を返す
Definition at line 54 of file effect5x3.h.
References osl::eval::min().
Referenced by osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::attackBonusScale(), osl::eval::ProgressEvalGeneral< OpeningEval >::expect(), osl::rating::RatingEnv::make(), osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::progress16(), osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::progress32(), and show().
|
inline |
Definition at line 76 of file effect5x3.h.
References progresses.
|
inline |
Definition at line 80 of file effect5x3.h.
References progress(), and progress16each().
|
inlinestatic |
0-15 の値を返す.
プレイヤ個人毎
Definition at line 64 of file effect5x3.h.
References osl::eval::min().
Referenced by progress16(), and osl::progress::Effect5x3WithBonus::progress16bonus().
void osl::progress::Effect5x3::update | ( | const NumEffectState & | new_state, |
Move | last_move | ||
) |
Definition at line 82 of file effect5x3.cc.
References osl::alt(), osl::BLACK, osl::container::Board_Mask_Table5x3_Center, osl::KING, osl::container::BoardMaskTable5x3Center::mask(), osl::Move::player(), osl::Move::ptype(), and osl::WHITE.
Referenced by main(), and osl::progress::Effect5x3WithBonus::update().
|
static |
Definition at line 67 of file effect5x3.cc.
References osl::Move::capturePtype(), osl::progress::Effect5x3_Table, osl::Move::isDrop(), osl::progress::Effect5x3Table::piecesOnStand(), osl::Move::ptype(), osl::PTYPE_EMPTY, and osl::unpromote().
Referenced by osl::progress::Effect5x3WithBonus::updateStand().
|
protected |
Definition at line 71 of file effect5x3.h.
|
protected |
Definition at line 71 of file effect5x3.h.
Referenced by expect(), osl::progress::Effect5x3WithBonus::expect(), progress(), and progress16().
|
protected |
Definition at line 71 of file effect5x3.h.
Referenced by expect(), osl::progress::Effect5x3WithBonus::expect(), osl::progress::Effect5x3WithBonus::progress16bonus(), and osl::progress::Effect5x3WithBonus::updateStand().