(C++)  1.0.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
DatasetSample.hh
1 #ifndef GRAIL_DATASET_SAMPLE_H
2 #define GRAIL_DATASET_SAMPLE_H
3 
4 #include "../DT/DTConsiderationType.hh"
5 #include "../ISimulatedGameAction.hh"
6 
7 #include <vector>
8 #include <string>
9 #include <memory>
10 
11 namespace grail
12 {
13  namespace simulation
14  {
15  template <class T> class IDecisionStringSerializer;
16 
22  {
23  virtual ~DatasetSample();
24 
25  DatasetSample(const DatasetSample& sample);
26 
28  DatasetSample(std::unique_ptr<ISimulatedGameAction> decision, std::initializer_list<float> data);
29 
31  DatasetSample(std::unique_ptr<ISimulatedGameAction> decision, std::vector<float> data);
32 
33  ISimulatedGameAction* GetDecision() const;
34 
35  std::string ToString(IDecisionStringSerializer<ISimulatedGameAction>& actionSerializer) const;
36 
38  std::vector<float> data;
39 
40  private:
41  std::unique_ptr<ISimulatedGameAction> decision = nullptr;
42  };
43  }
44 }
45 #endif //GRAIL_DATASET_SAMPLE_H
Definition: IDecisionSerializers.hh:17
Base class for all actions in SimulatedGame. Derive from it for your actions.
Definition: ISimulatedGameAction.hh:41
Represents elements stored in DataSet. They consist of a vector of consideration values and decision ...
Definition: DatasetSample.hh:22
std::vector< float > data
Values measured for considerations.
Definition: DatasetSample.hh:38