Grail (C++)  1.1.1
A multi-platform, modular, universal engine for embedding advanced AI in games.
IVectorizer.hh
1 #ifndef GRAIL_IVECTORIZER_H
2 #define GRAIL_IVECTORIZER_H
3 
4 #include <vector>
5 
6 namespace grail
7 {
8  namespace simulation
9  {
10  class ISimulatedGameUnit;
11 
15  struct IVectorizer
16  {
23  virtual bool IsLearnableSituation(const ISimulatedGameUnit& unit) const = 0;
24 
28  virtual std::vector<float> Vectorize() const = 0;
29 
30  virtual ~IVectorizer()
31  {
32  };
33  };
34  }
35 }
36 
37 #endif //GRAIL_IVECTORIZER_H
grail::simulation::IVectorizer::Vectorize
virtual std::vector< float > Vectorize() const =0
Returns the current values for all consideration (conditions) that will be used in a decision tree la...
grail::simulation::IVectorizer::IsLearnableSituation
virtual bool IsLearnableSituation(const ISimulatedGameUnit &unit) const =0
Look at the state of your units and decide whether the current unit should learn in this situation....
grail::simulation::IVectorizer
Classes implementing this interface provide training data in the offline learning process.
Definition: IVectorizer.hh:15
grail::simulation::ISimulatedGameUnit
Base class of a unit in the SimulatedGame framework. A unit represents part of the game-state and pef...
Definition: ISimulatedGameUnit.hh:26