AIToolbox
A library that offers tools for AI problem solving.
Policy.hpp
Go to the documentation of this file.
1
#ifndef AI_TOOLBOX_MDP_POLICY_HEADER_FILE
2
#define AI_TOOLBOX_MDP_POLICY_HEADER_FILE
3
4
#include <vector>
5
#include <tuple>
6
7
#include <
AIToolbox/MDP/Types.hpp
>
8
#include <
AIToolbox/MDP/Policies/PolicyWrapper.hpp
>
9
10
namespace
AIToolbox::MDP
{
28
class
Policy
:
public
PolicyWrapper
{
29
public
:
30
using
PolicyMatrix
=
Matrix2D
;
31
45
Policy
(
size_t
s,
size_t
a);
46
61
Policy
(
const
PolicyInterface::Base
& p);
62
80
Policy
(
const
PolicyInterface
& p);
81
94
Policy
(
size_t
s,
size_t
a,
const
ValueFunction
& v);
95
107
Policy
(
const
PolicyMatrix
& p);
108
109
private
:
110
PolicyMatrix
policy_;
111
112
friend
std::istream&
operator>>
(std::istream &is,
Policy
& p);
113
};
114
137
std::istream&
operator>>
(std::istream &is,
Policy
& p);
138
}
139
140
#endif
AIToolbox::MDP::Policy::PolicyMatrix
Matrix2D PolicyMatrix
Definition:
Policy.hpp:30
AIToolbox::MDP::Policy
This class represents an MDP Policy.
Definition:
Policy.hpp:28
AIToolbox::MDP::Policy::operator>>
friend std::istream & operator>>(std::istream &is, Policy &p)
This function reads a policy from a file.
AIToolbox::Matrix2D
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor|Eigen::AutoAlign > Matrix2D
Definition:
Types.hpp:18
AIToolbox::MDP::ValueFunction
Definition:
Types.hpp:47
AIToolbox::PolicyInterface< size_t, size_t, size_t >
AIToolbox::MDP
Definition:
DoubleQLearning.hpp:10
AIToolbox::MDP::PolicyWrapper
This class provides an MDP Policy interface around a Matrix2D.
Definition:
PolicyWrapper.hpp:29
AIToolbox::MDP::Policy::Policy
Policy(size_t s, size_t a)
Basic constructor.
PolicyWrapper.hpp
Types.hpp
AIToolbox::MDP::PolicyInterface
Simple typedef for most of MDP's policy needs.
Definition:
PolicyInterface.hpp:11
AIToolbox::MDP::operator>>
std::istream & operator>>(std::istream &is, Model &m)