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

#include <piecePair.h>

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

List of all members.

Classes

struct  IndexTable

Public Types

enum  { plain_table_size = 1338, x_table_size = 4901, y_table_size = 7057, DIM = plain_table_size + x_table_size + y_table_size }
typedef CArray< int, 3 > index_t

Static Public Member Functions

static int eval (const NumEffectState &, const Weights &)
template<int Direction, int Offset>
static int sum12One (const Piece *basePtr, const int *xbase, const int *ybase)
static int sum12 (NumEffectState const &state, Square base, PtypeO ptypeO)
template<int Direction, int Offset>
static int adjust12One (const Piece *basePtr, const int *xbase1, const int *ybase1, const int *xbase2, const int *ybase2)
static int adjust12 (NumEffectState const &state, Square base, PtypeO pos, PtypeO neg)
static int evalWithUpdate (const NumEffectState &state, Move moved, int last_value, const Weights &values)
static int evalWithUpdateCompiled (const NumEffectState &state, Move moved, int last_value)
static int pieceValue (const NumEffectState &state, Piece p, const Weights &values)
static int pieceValueDouble (const NumEffectState &state, Piece p, const Weights &)
static int weight (Player attack, int index, const Weights &values)
static index_t index (int offset_id, Piece p, Piece q)
static index_t index (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1)
static int value (int offset_id, Piece p, Piece q, const Weights &values)
static int value (int offset_id, Piece p, Square p1, PtypeO o1, const Weights &values)
static int value (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1, const Weights &values)
static void init ()
static void sanitize (Weights &values)
static void compile (const Weights &values)
 values を展開してクラス全体で使う
static int valueCompiled (int offset_id, Piece p, Square p1, PtypeO o1)
static int valueCompiled (int offset_id, Square p0, PtypeO o0, Square p1, PtypeO o1)

Static Public Attributes

static IndexTable plain_table
static CArray< IndexTable, 10 > x_table
static CArray< IndexTable, 10 > y_table
static const CArray< const
Offset, 12 > 
offsets

Detailed Description

Definition at line 18 of file piecePair.h.


Member Typedef Documentation

typedef CArray<int,3> osl::eval::ml::PiecePair::index_t

Definition at line 45 of file piecePair.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
plain_table_size 
x_table_size 
y_table_size 
DIM 

Definition at line 21 of file piecePair.h.


Member Function Documentation

int osl::eval::ml::PiecePair::adjust12 ( NumEffectState const &  state,
Square  base,
PtypeO  pos,
PtypeO  neg 
) [inline, static]
template<int Direction, int Offset>
int osl::eval::ml::PiecePair::adjust12One ( const Piece basePtr,
const int *  xbase1,
const int *  ybase1,
const int *  xbase2,
const int *  ybase2 
) [inline, static]
void osl::eval::ml::PiecePair::compile ( const Weights values) [static]
int osl::eval::ml::PiecePair::eval ( const NumEffectState &  state,
const Weights values 
) [static]

Definition at line 451 of file piecePair.cc.

References osl::Piece::SIZE.

Referenced by osl::eval::ml::OpenMidEndingEval::OpenMidEndingEval().

int osl::eval::ml::PiecePair::evalWithUpdate ( const NumEffectState &  state,
Move  moved,
int  last_value,
const Weights values 
) [static]
int osl::eval::ml::PiecePair::evalWithUpdateCompiled ( const NumEffectState &  state,
Move  moved,
int  last_value 
) [static]
osl::eval::ml::PiecePair::index_t osl::eval::ml::PiecePair::index ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1 
) [static]
void osl::eval::ml::PiecePair::init ( ) [static]
int osl::eval::ml::PiecePair::pieceValue ( const NumEffectState &  state,
Piece  p,
const Weights values 
) [static]

Definition at line 670 of file piecePair.cc.

int osl::eval::ml::PiecePair::pieceValueDouble ( const NumEffectState &  state,
Piece  p,
const Weights values 
) [static]
void osl::eval::ml::PiecePair::sanitize ( Weights values) [static]
int osl::eval::ml::PiecePair::sum12 ( NumEffectState const &  state,
Square  base,
PtypeO  ptypeO 
) [inline, static]
template<int Direction, int Offset>
int osl::eval::ml::PiecePair::sum12One ( const Piece basePtr,
const int *  xbase,
const int *  ybase 
) [inline, static]
static int osl::eval::ml::PiecePair::value ( int  offset_id,
Piece  p,
Piece  q,
const Weights values 
) [inline, static]

Definition at line 49 of file piecePair.h.

References osl::Piece::isOnBoard(), osl::Piece::ptypeO(), and osl::Piece::square().

Referenced by value().

static int osl::eval::ml::PiecePair::value ( int  offset_id,
Piece  p,
Square  p1,
PtypeO  o1,
const Weights values 
) [inline, static]

Definition at line 54 of file piecePair.h.

References osl::Piece::ptypeO(), osl::Piece::square(), and value().

static int osl::eval::ml::PiecePair::value ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1,
const Weights values 
) [inline, static]

Definition at line 58 of file piecePair.h.

References index(), and osl::eval::ml::Weights::value().

static int osl::eval::ml::PiecePair::valueCompiled ( int  offset_id,
Piece  p,
Square  p1,
PtypeO  o1 
) [inline, static]

Definition at line 73 of file piecePair.h.

References osl::Piece::ptypeO(), and osl::Piece::square().

int osl::eval::ml::PiecePair::valueCompiled ( int  offset_id,
Square  p0,
PtypeO  o0,
Square  p1,
PtypeO  o1 
) [static]
static int osl::eval::ml::PiecePair::weight ( Player  attack,
int  index,
const Weights values 
) [inline, static]

Definition at line 41 of file piecePair.h.

References osl::eval::delta(), and osl::eval::ml::Weights::value().


Member Data Documentation

const osl::CArray< const osl::Offset, 12 > osl::eval::ml::PiecePair::offsets [static]
Initial value:
 
{{
  
  DirectionPlayerTraits<UUL, BLACK>::offset(), 
  DirectionPlayerTraits<UL, BLACK>::offset(), 
  DirectionPlayerTraits<L, BLACK>::offset(), 
  DirectionPlayerTraits<DL, BLACK>::offset(), 
  DirectionPlayerTraits<UUR, WHITE>::offset(), 
  DirectionPlayerTraits<D, BLACK>::offset(), 
  
  DirectionPlayerTraits<UUL, WHITE>::offset(), 
  DirectionPlayerTraits<DR, BLACK>::offset(), 
  DirectionPlayerTraits<R, BLACK>::offset(), 
  DirectionPlayerTraits<UR, BLACK>::offset(), 
  DirectionPlayerTraits<UUR, BLACK>::offset(), 
  DirectionPlayerTraits<U, BLACK>::offset(), 
}}

Definition at line 96 of file piecePair.h.

Referenced by osl::eval::ml::ppair::makeOffsetIndex(), osl::eval::ml::ppair::makeTableX(), and osl::eval::ml::ppair::makeTableY().

Definition at line 94 of file piecePair.h.

Definition at line 95 of file piecePair.h.

Definition at line 95 of file piecePair.h.


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