3#ifndef OSL_MOVE_PROBABILITY_FEATURESET_H
4#define OSL_MOVE_PROBABILITY_FEATURESET_H
9#include <boost/ptr_container/ptr_vector.hpp>
10#include <boost/scoped_array.hpp>
15 namespace move_probability
39 bool load(
const char *base_filename,
double *weights)
const;
40 bool load_binary(
const char *base_filename,
double *weights)
const;
68 bool setUp(
bool verbose=
false);
double generateRating(const StateInfo &state, WeightedMoveVector &out, const double *weights) const
double matchExp(const StateInfo &, Move, const double *weights) const
double matchNoExp(const StateInfo &, Move, const double *weights) const
void generateLogProb(const StateInfo &state, MoveLogProbVector &out, const double *weights) const
bool load_binary(const char *base_filename, double *weights) const
std::vector< int > offsets
double matchLight(const StateInfo &, Move, const double *weights) const
void analyze(const StateInfo &state, Move move, const double *weights) const
bool load(const char *base_filename, double *weights) const
void showSummary(const double *weights) const
boost::ptr_vector< Feature > features
static void ratingToLogProb(const WeightedMoveVector &rating, double sum, MoveLogProbVector &out)
std::vector< int > light_features
void pushBack(Feature *, bool light=false)
static boost::scoped_array< double > tactical_weights
void generateLogProb(const StateInfo &state, MoveLogProbVector &out) const
static boost::scoped_array< double > weights
bool setUp(bool verbose=false)
int logProbTakeBack(const StateInfo &state, Move target) const
void generateLogProb2(const StateInfo &state, MoveLogProbVector &out) const
int logProbSeePlus(const StateInfo &state, Move target) const
static bool healthCheck()
static const StandardFeatureSet & instance(bool verbose=false)
double matchLight(const StateInfo &, Move) const
double matchExp(const StateInfo &, Move) const
int tacticalLogProb(int offset, double sum) const
double matchNoExp(const StateInfo &, Move) const
std::pair< double, Move > WeightedMove
FixedCapacityVector< WeightedMove, Move::MaxUniqMoves > WeightedMoveVector