|
My Project
|
#include <majorPiece.h>
Public Types | |
| enum | { ONE_DIM = 256 , DIM = ONE_DIM * EvalStages } |
| Public Types inherited from osl::eval::ml::RookEffectBase | |
| enum | { ONE_DIM = 612 , DIM = ONE_DIM * 2 } |
Static Public Member Functions | |
| static void | setUp (const Weights &weights) |
| static MultiInt | eval (const NumEffectState &state) |
| Static Public Member Functions inherited from osl::eval::ml::RookEffectBase | |
| static MultiInt | eval (const NumEffectState &state) |
Static Private Attributes | |
| static CArray< MultiInt, 256 > | promote_defense_table |
| static CArray< MultiInt, 144 > | promote_defense_rook_table |
Friends | |
| class | RookPromoteDefenseRookH |
Additional Inherited Members | |
| Static Protected Member Functions inherited from osl::eval::ml::RookEffectBase | |
| template<Player P> | |
| static MultiInt | evalOne (const NumEffectState &state, Square rook, Square myKing, Square opKing, Square up, Square dp, Square rp, Square lp, bool isP) |
| static int | index (int abs_x_diff, int y_diff, bool horizontal, bool is_promoted) |
| (abs_x_diff, y_diff) - 玉を原点とした時の空マスの相対位置 horizontal - 飛車の横利きがある場合 is_promoted - 竜の場合 | |
| static int | index0 (int abs_x_diff, int y_diff, PtypeO ptypeO, bool horizontal, bool promoted) |
| 黒の飛車(竜)から利きのある駒 (abs_x_diff, y_diff) - 駒を基準にした玉の相対位置 abs_x_diffは絶対値 ptypeO - 駒のptypeO, 白からの場合は反転 horizontal - 飛車の横利きがある場合 is_promoted - 竜の場合 | |
| static int | index1 (Square king, Square from, PtypeO ptypeO, bool isP) |
| 黒の飛車(竜)からの利きのある駒のindex {attack,defense}_{u,r,l,d} へのアクセスに使う from - 駒の位置 king - 玉の位置 ptypeO - 駒の種類,白からの利きの場合は反転. (BLACK,PTYPE_EDGE)もあり得る isP - 竜の場合 | |
| static int | index1 (int x_diff, int y_diff, PtypeO ptypeO, bool isP) |
| 黒の飛車(竜)からの利きのある駒のindex {attack,defense}_{u,r,l,d} へのアクセスに使う (x_diff, y_diff) - 玉を基準に見た駒の相対位置 ptypeO - 駒の種類,白からの利きの場合は反転. (BLACK,PTYPE_EDGE)もあり得る isP - 竜の場合 | |
| static int | index2 (Square king, Square from, bool isP) |
| 黒の飛車(竜)がある場所は空マスでないのでその分を補正するテーブル {attack,defense}_nospace へのアクセス king - 玉の位置 from - 飛車(竜)の位置 isP - 竜の場合 | |
| static int | index2 (int x_diff, int y_diff, bool isP) |
| 黒の飛車(竜)がある場所は空マスでないのでその分を補正するテーブル {attack,defense}_nospace へのアクセス (x_diff, y_diff) - 玉を基準にしてみた飛車(竜)の相対位置 isP - 竜の場合 | |
| Static Protected Attributes inherited from osl::eval::ml::RookEffectBase | |
| static CArray< MultiInt, 612 > | attack_table |
| static CArray< MultiInt, 612 > | defense_table |
| static CArray< MultiInt, 32 > | piece_table |
| static CArray< MultiInt, 23104 > | attack_u |
| static CArray< MultiInt, 23104 > | attack_d |
| static CArray< MultiInt, 23104 > | attack_l |
| static CArray< MultiInt, 23104 > | attack_r |
| static CArray< MultiInt, 23104 > | defense_u |
| static CArray< MultiInt, 23104 > | defense_d |
| static CArray< MultiInt, 23104 > | defense_l |
| static CArray< MultiInt, 23104 > | defense_r |
| static CArray< MultiInt, 722 > | attack_nospace |
| static CArray< MultiInt, 722 > | defense_nospace |
Definition at line 286 of file majorPiece.h.
| anonymous enum |
| Enumerator | |
|---|---|
| ONE_DIM | |
| DIM | |
Definition at line 290 of file majorPiece.h.
|
static |
Definition at line 397 of file majorPiece.cc.
References osl::BLACK, osl::Piece::canMoveOn(), osl::mobility::RookMobility::countHorizontalAll(), osl::D, osl::NumEffectState::effectSetAt(), osl::eval::ml::RookEffectBase::index(), osl::Piece::isOnBoardNotPromoted(), osl::NumEffectState::mobilityOf(), osl::Piece::owner(), osl::SimpleState::pieceAt(), osl::SimpleState::pieceOf(), osl::NumEffectState::piecesOnBoard(), promote_defense_rook_table, promote_defense_table, osl::Piece::ptype(), osl::ROOK, osl::Piece::square(), osl::container::PieceMask64::takeOneBit(), osl::U, osl::WHITE, osl::Square::x(), and osl::Square::y().
Referenced by osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval(), and osl::eval::ml::OpenMidEndingEval::updateSub().
|
static |
Definition at line 378 of file majorPiece.cc.
References osl::NStages, ONE_DIM, promote_defense_table, and osl::eval::ml::Weights::value().
|
friend |
Definition at line 288 of file majorPiece.h.
References RookPromoteDefenseRookH.
Referenced by RookPromoteDefenseRookH.
|
staticprivate |
Definition at line 295 of file majorPiece.h.
Referenced by eval(), and osl::eval::ml::RookPromoteDefenseRookH::setUp().
|
staticprivate |
Definition at line 294 of file majorPiece.h.