aima.search.framework
Class Problem

java.lang.Object
  extended by aima.search.framework.Problem
Direct Known Subclasses:
BidirectionalMapProblem

public class Problem
extends java.lang.Object

Artificial Intelligence A Modern Approach (2nd Edition): page 62. A problem can be defined formally by four components: 1) Initial State. 2) Successor Function. 3) Goal Test. 4) Path Cost.


Field Summary
protected  GoalTest goalTest
           
protected  HeuristicFunction heuristicFunction
           
protected  java.lang.Object initialState
           
protected  StepCostFunction stepCostFunction
           
protected  SuccessorFunction successorFunction
           
 
Constructor Summary
protected Problem()
           
  Problem(java.lang.Object initialState, SuccessorFunction successorFunction, GoalTest goalTest)
           
  Problem(java.lang.Object initialState, SuccessorFunction successorFunction, GoalTest goalTest, HeuristicFunction heuristicFunction)
           
  Problem(java.lang.Object initialState, SuccessorFunction successorFunction, GoalTest goalTest, StepCostFunction stepCostFunction)
           
  Problem(java.lang.Object initialState, SuccessorFunction successorFunction, GoalTest goalTest, StepCostFunction stepCostFunction, HeuristicFunction heuristicFunction)
           
 
Method Summary
 HeuristicFunction getHeuristicFunction()
           
 java.lang.Object getInitialState()
           
 StepCostFunction getStepCostFunction()
           
 SuccessorFunction getSuccessorFunction()
           
 boolean isGoalState(java.lang.Object state)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

initialState

protected java.lang.Object initialState

successorFunction

protected SuccessorFunction successorFunction

goalTest

protected GoalTest goalTest

stepCostFunction

protected StepCostFunction stepCostFunction

heuristicFunction

protected HeuristicFunction heuristicFunction
Constructor Detail

Problem

protected Problem()

Problem

public Problem(java.lang.Object initialState,
               SuccessorFunction successorFunction,
               GoalTest goalTest)

Problem

public Problem(java.lang.Object initialState,
               SuccessorFunction successorFunction,
               GoalTest goalTest,
               StepCostFunction stepCostFunction)

Problem

public Problem(java.lang.Object initialState,
               SuccessorFunction successorFunction,
               GoalTest goalTest,
               HeuristicFunction heuristicFunction)

Problem

public Problem(java.lang.Object initialState,
               SuccessorFunction successorFunction,
               GoalTest goalTest,
               StepCostFunction stepCostFunction,
               HeuristicFunction heuristicFunction)
Method Detail

getInitialState

public java.lang.Object getInitialState()

isGoalState

public boolean isGoalState(java.lang.Object state)

getStepCostFunction

public StepCostFunction getStepCostFunction()

getSuccessorFunction

public SuccessorFunction getSuccessorFunction()

getHeuristicFunction

public HeuristicFunction getHeuristicFunction()