jmarkov.jmdp.solvers
Class AbstractInfiniteSolver<S extends State,A extends Action>

java.lang.Object
  extended by jmarkov.jmdp.solvers.Solver<S,A>
      extended by jmarkov.jmdp.solvers.AbstractInfiniteSolver<S,A>
Type Parameters:
S - States class
A - Actions class
All Implemented Interfaces:
JMarkovElement
Direct Known Subclasses:
AbstractAverageSolver, AbstractDiscountedSolver, AbstractTotalSolver

public abstract class AbstractInfiniteSolver<S extends State,A extends Action>
extends Solver<S,A>

Structural class to be extended by solvers in order to solve infinite horizon problems

Author:
Germán Riaño. Universidad de los Andes. (C) 2005

Field Summary
 
Fields inherited from class jmarkov.jmdp.solvers.Solver
policy, printProcessTime, printValueFunction, problem, solved, valueFunction
 
Constructor Summary
protected AbstractInfiniteSolver(CTMDP<S,A> problem)
          Creates a solver for an infinite horizon continuous time problem
protected AbstractInfiniteSolver(DTMDP<S,A> problem)
          Constructor method for Discrete Time Markov Decision Processes to be solved for discounted cost.
 
Method Summary
protected  DTMDP<S,A> getDiscreteProblem()
           
abstract  long getIterations()
           
 InfiniteMDP<S,A> getProblem()
          Returns the problem associated with this solver.
 void printSolution(java.io.PrintWriter pw)
          Prints the solution on a given PrintWriter.
 
Methods inherited from class jmarkov.jmdp.solvers.Solver
description, getOptimalPolicy, getOptimalValueFunction, getProcessTime, getValueFunction, isSolved, label, printSolution, setPrintProcessTime, setPrintValueFunction, solve, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface jmarkov.basic.JMarkovElement
equals
 

Constructor Detail

AbstractInfiniteSolver

protected AbstractInfiniteSolver(DTMDP<S,A> problem)
Constructor method for Discrete Time Markov Decision Processes to be solved for discounted cost.

Parameters:
problem - Discrete Time Markov Decision Process of type DTMDP

AbstractInfiniteSolver

protected AbstractInfiniteSolver(CTMDP<S,A> problem)
Creates a solver for an infinite horizon continuous time problem

Parameters:
problem - continuous time problem
Method Detail

getProblem

public InfiniteMDP<S,A> getProblem()
Returns the problem associated with this solver.

Overrides:
getProblem in class Solver<S extends State,A extends Action>
Returns:
the problem associated with this solver.

getDiscreteProblem

protected DTMDP<S,A> getDiscreteProblem()
Returns:
discrete time problem

getIterations

public abstract long getIterations()
Returns:
Returns the iterations in the last solve.

printSolution

public void printSolution(java.io.PrintWriter pw)
Description copied from class: Solver
Prints the solution on a given PrintWriter.

Overrides:
printSolution in class Solver<S extends State,A extends Action>
See Also:
PrintWriter