OpenANN  1.1.0
An open source library for artificial neural networks.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ActionSpace.h
Go to the documentation of this file.
1 #ifndef OPENANN_RL_ACTION_SPACE_H_
2 #define OPENANN_RL_ACTION_SPACE_H_
3 
4 #include <Eigen/Core>
5 #include <vector>
6 
7 namespace OpenANN
8 {
9 
18 {
19 public:
20  typedef Eigen::VectorXd Action;
21  typedef std::vector<Action> A;
22  virtual ~ActionSpace() {}
23  virtual int actionSpaceDimension() const = 0;
24  virtual bool actionSpaceContinuous() const = 0;
25  virtual int actionSpaceElements() const = 0;
26  virtual const Action& actionSpaceLowerBound() const = 0;
27  virtual const Action& actionSpaceUpperBound() const = 0;
28  virtual const A& getDiscreteActionSpace() const = 0;
29 };
30 
31 } // namespace OpenANN
32 
33 #endif // OPENANN_RL_ACTION_SPACE_H_