|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjmarkov.jmdp.MDP<S,A>
jmarkov.jmdp.InfiniteMDP<S,A>
jmarkov.jmdp.CTMDP<S,A>
S
- The state classA
- The Action classpublic abstract class CTMDP<S extends State,A extends Action>
This class represents a continuous time MDP. It should ONLY be used in INFINITE horizon Problems. It must be extended in order to represent the appropriate structure for each INFINITE horizon MDP problem. The user must implement at least the functions that have been declared abstract. It is also necessary to create one of the extensions of the class Solver. By default, the program includes PolicyIterationSolver and ValueIterationSolver classes to solve infinite horizon problems. The FiniteSolver class is only for finite horizon problems. To solve the problem follow the instructions in each of the solvers's instructions.
PolicyIterationSolver
,
ValueIterationSolver
Field Summary | |
---|---|
protected S |
activeState
No earthly idea what this is for.. |
protected CT2DTConverter<S,A> |
converter
The converter used to map the problem to a DTMDP. |
protected double |
maxRate
Tha maxRate used for uniformization |
Fields inherited from class jmarkov.jmdp.InfiniteMDP |
---|
absorbingStates, explorationTime, hasAbsorbingState, numStates, probability, probabilitySolver, states |
Fields inherited from class jmarkov.jmdp.MDP |
---|
finite, initial, reporter |
Constructor Summary | |
---|---|
CTMDP(States<S> initial)
Creates a new continuous time infinite horizon MDP Problem. |
Method Summary | |
---|---|
abstract double |
continuousCost(S i,
A a)
Cost incurred continuously in time until the next transition from state i given that action a is taken. |
protected StatesSet<S> |
generate()
|
StatesSet<S> |
getAllStates()
Complete set of states explored |
double |
getMaxRate()
|
ValueFunction<S> |
getSteadyStateProbabilities()
|
abstract double |
lumpCost(S i,
A a)
Cost incurred instantaneously in the moment when action a is taken from state i. |
protected StatesSet<S> |
oneStageReachable(States<S> initSet)
Finds the states reachable in one step. |
abstract double |
rate(S i,
S j,
A a)
Rate of going from state i to state j by taking the action a |
abstract States<S> |
reachable(S i,
A a)
Set of States that can be reached from this state i, after taking the action a. |
void |
setConverter(CT2DTConverter<S,A> converter)
Sets the class in charge of making a DTMDP equivalent to the CTMDP |
Solution<S,A> |
solve(double interestRate)
Solves the problem with the given interest rate |
Methods inherited from class jmarkov.jmdp.InfiniteMDP |
---|
feasibleActions, getDefaultAverageSolver, getDefaultDiscountedSolver, getDefaultSolver, getNumStates, getSolver, setInterestRate |
Methods inherited from class jmarkov.jmdp.MDP |
---|
debug, debug, debug, getDebugLevel, getOptimalPolicy, getOptimalValueFunction, getReporter, isFinite, isSolved, operation, printSolution, printSolution, setDebugLevel, setReporter, setSolver, solve |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected double maxRate
protected S extends State activeState
protected CT2DTConverter<S extends State,A extends Action> converter
Constructor Detail |
---|
public CTMDP(States<S> initial)
initial
- set of initial states for the exploration
algorithmMethod Detail |
---|
public StatesSet<S> getAllStates()
getAllStates
in class InfiniteMDP<S extends State,A extends Action>
public void setConverter(CT2DTConverter<S,A> converter)
converter
- class that makes a DTMDP equivalent to the
CTMDPpublic double getMaxRate()
protected StatesSet<S> oneStageReachable(States<S> initSet)
initSet
-
protected StatesSet<S> generate()
generate
in class InfiniteMDP<S extends State,A extends Action>
public ValueFunction<S> getSteadyStateProbabilities() throws SolverException
SolverException
public Solution<S,A> solve(double interestRate) throws SolverException
interestRate
- the interest rate parameter to solve the
problem.
SolverException
public abstract double lumpCost(S i, A a)
i
- Statea
- Action
public abstract double continuousCost(S i, A a)
i
- Statea
- Action
public abstract States<S> reachable(S i, A a)
i
- current Statea
- action taken
public abstract double rate(S i, S j, A a)
i
- current statej
- Destination state.a
- Action taken
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |