MultiAgentDecisionProcess
Release 0.2.1
Main Page
Namespaces
Classes
Files
File List
File Members
Interface_ProblemToPolicyDiscrete.h
Go to the documentation of this file.
1
28
/* Only include this header file once. */
29
#ifndef _INTERFACE_PROBLEMTOPOLICYDISCRETE_H_
30
#define _INTERFACE_PROBLEMTOPOLICYDISCRETE_H_ 1
31
32
/* the include directives */
33
#include <iostream>
34
#include <vector>
35
#include <cmath>
36
#include "
Globals.h
"
37
#include "
PolicyGlobals.h
"
38
48
class
Interface_ProblemToPolicyDiscrete
49
{
50
private
:
51
52
protected
:
53
54
public
:
55
// Constructor, destructor and copy assignment.
57
Interface_ProblemToPolicyDiscrete
()
58
{}
60
virtual
~Interface_ProblemToPolicyDiscrete
() {}
61
63
virtual
bool
AreCachedJointToIndivIndices
(
64
const
PolicyGlobals::IndexDomainCategory
pdc)
const
= 0;
65
67
virtual
size_t
GetNrAgents
()
const
= 0;
69
size_t
GetNrJointActions
()
const
70
{
71
size_t
nrJA = 1;
72
for
(
Index
i=0; i <
GetNrAgents
(); i++)
73
nrJA *=
GetNrActions
(i);
74
return
(nrJA);
75
}
76
78
virtual
size_t
GetNrActions
(
Index
agentI)
const
= 0;
80
virtual
size_t
GetNrPolicyDomainElements
(
Index
agentI,
81
PolicyGlobals::IndexDomainCategory
cat,
82
size_t
depth=
MAXHORIZON
)
const
= 0;
83
85
87
virtual
Index
IndividualToJointActionIndices
(
88
const
Index
* indivIndices)
const
= 0;
90
virtual
Index
IndividualToJointActionIndices
(
91
const
std::vector<Index>& indivIndices)
const
= 0;
92
94
virtual
PolicyGlobals::IndexDomainCategory
GetDefaultIndexDomCat
()
95
const
= 0;
96
98
103
virtual
std::vector<Index>
JointToIndividualPolicyDomainIndices
(
Index
jdI,
104
PolicyGlobals::IndexDomainCategory
cat)
const
= 0;
106
111
virtual
const
std::vector<Index>&
JointToIndividualPolicyDomainIndicesRef
(
112
Index
jdI,
PolicyGlobals::IndexDomainCategory
cat)
const
= 0;
116
virtual
std::string
SoftPrintPolicyDomainElement
(
Index
agentI,
Index
dIndex,
117
PolicyGlobals::IndexDomainCategory
cat )
118
const
=0;
122
virtual
std::string
SoftPrintAction
(
Index
agentI,
Index
actionI)
const
=0;
123
124
//operators:
125
126
//data manipulation (set) functions:
127
128
//get (data) functions:
129
};
130
131
132
#endif
/* !_INTERFACE_PROBLEMTOPOLICYDISCRETE_H_ */
133
134
// Local Variables: ***
135
// mode:c++ ***
136
// End: ***
src
support
Interface_ProblemToPolicyDiscrete.h
Generated on Mon Sep 23 2013 14:50:06 for MultiAgentDecisionProcess by
1.8.1.2