01 package dk.deepthought.sidious.planner;
02 
03 import dk.deepthought.sidious.supportsystem.State;
04 
05 /**
06  * This class represents the heuristic function.
07  <p>
08  * The heuristic method returns an estimated cost of getting to the goal from
09  * this vertex.
10  */
11 public interface Heuristic {
12 
13     /**
14      * Method calculates an approximate cost from <code>state</code> to the
15      * goal state.
16      
17      @param state
18      *            the input state for the calculation
19      @return an approximate cost
20      */
21     public double h(State state);
22 }