AIToolbox
A library that offers tools for AI problem solving.
ChengD35.hpp
Go to the documentation of this file.
1
#ifndef AI_TOOLBOX_POMDP_CHENGD35_HEADER_FILE
2
#define AI_TOOLBOX_POMDP_CHENGD35_HEADER_FILE
3
4
#include <
AIToolbox/MDP/Model.hpp
>
5
#include <
AIToolbox/POMDP/Model.hpp
>
6
7
namespace
AIToolbox::POMDP
{
11
Model<MDP::Model>
makeChengD35
() {
12
using
PModel =
Model<MDP::Model>
;
13
constexpr
size_t
S = 3, A = 3, O = 3;
14
15
MDP::Model::TransitionMatrix
t(A);
16
MDP::Model::RewardMatrix
r(S, A);
17
PModel::ObservationMatrix o(A);
18
19
for
(
size_t
a = 0; a < A; ++a) {
20
t[a] =
AIToolbox::Matrix2D
(S, S);
21
o[a] =
AIToolbox::Matrix2D
(S, O);
22
}
23
24
t[0] <<
25
0.445, 0.222, 0.333,
26
0.500, 0.173, 0.327,
27
0.204, 0.553, 0.243;
28
29
t[1] <<
30
0.234, 0.064, 0.702,
31
0.549, 0.218, 0.233,
32
0.061, 0.466, 0.473;
33
34
t[2] <<
35
0.535, 0.313, 0.152,
36
0.114, 0.870, 0.016,
37
0.325, 0.360, 0.315;
38
39
o[0] <<
40
0.686, 0.182, 0.132,
41
0.138, 0.786, 0.076,
42
0.279, 0.083, 0.638;
43
44
o[1] <<
45
0.698, 0.131, 0.171,
46
0.283, 0.624, 0.093,
47
0.005, 0.202, 0.793;
48
49
o[2] <<
50
0.567, 0.234, 0.199,
51
0.243, 0.641, 0.116,
52
0.186, 0.044, 0.770;
53
54
r <<
55
5.2, 0.8, 9.0,
56
4.6, 6.8, 9.3,
57
4.1, 6.9, 0.8;
58
59
return
PModel(
AIToolbox::NO_CHECK
, O, std::move(o),
AIToolbox::NO_CHECK
, S, A, std::move(t), std::move(r), 0.999);
60
}
61
}
62
63
#endif
AIToolbox::POMDP
Definition:
AMDP.hpp:14
Model.hpp
AIToolbox::NO_CHECK
struct AIToolbox::NoCheck NO_CHECK
Model.hpp
AIToolbox::POMDP::makeChengD35
Model< MDP::Model > makeChengD35()
This function returns a POMDP model of the chengD35 problem.
Definition:
ChengD35.hpp:11
AIToolbox::Matrix2D
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor|Eigen::AutoAlign > Matrix2D
Definition:
Types.hpp:18
AIToolbox::POMDP::Model
This class represents a Partially Observable Markov Decision Process.
Definition:
Model.hpp:15
AIToolbox::MDP::Model::TransitionMatrix
Matrix3D TransitionMatrix
Definition:
Model.hpp:72
AIToolbox::MDP::Model::RewardMatrix
Matrix2D RewardMatrix
Definition:
Model.hpp:73