ai.search
Class CannibalProblem

java.lang.Object
  extended byai.search.Problem
      extended byai.search.CannibalProblem
All Implemented Interfaces:
java.awt.event.ActionListener, java.util.EventListener, java.lang.Runnable

public class CannibalProblem
extends Problem


Field Summary
 
Fields inherited from class ai.search.Problem
algorithm, canvas, currentNode, display, goal, heuristic, initialState, numExpanded, q, search, searchResult
 
Method Summary
 java.lang.String actionToString(java.lang.Object action)
          Convert an action to a string.
 boolean equalState(java.lang.Object state1, java.lang.Object state2)
          Determine if two states are equivalent.
 boolean goalReached(java.lang.Object state)
          Is the state a goal state?
 java.lang.String stateToString(java.lang.Object state)
          Convert a state to a string.
 java.util.Vector successors(java.lang.Object state)
          Return a list of StateActionPairs.
 
Methods inherited from class ai.search.Problem
actionPerformed, edgeCost, hCost, run, solve, start, stop
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

goalReached

public boolean goalReached(java.lang.Object state)
Description copied from class: Problem
Is the state a goal state?

Overrides:
goalReached in class Problem

successors

public java.util.Vector successors(java.lang.Object state)
Return a list of StateActionPairs.

Specified by:
successors in class Problem
Parameters:
state - is the current state
Returns:
a vector of state-actions. An action is a triple of the form delta-m delta-c delta-b) where a positive delta means to move from side 1 to side 2; negative is the opposite. For example, the action (1 0 1) means move one missionary and 1 boat from side 1 to side 2.

equalState

public boolean equalState(java.lang.Object state1,
                          java.lang.Object state2)
Description copied from class: Problem
Determine if two states are equivalent.

Specified by:
equalState in class Problem
Parameters:
state1 - and states are the two states
Returns:
true if equal

stateToString

public java.lang.String stateToString(java.lang.Object state)
Description copied from class: Problem
Convert a state to a string.

Specified by:
stateToString in class Problem
Parameters:
state - is the given state
Returns:
a string expressing the state

actionToString

public java.lang.String actionToString(java.lang.Object action)
Description copied from class: Problem
Convert an action to a string.

Specified by:
actionToString in class Problem
Parameters:
action - is the given action
Returns:
a string expressing the action