Class VertexContextEpsilonAdmissibleHeuristic

java.lang.Object
org.drip.graph.astar.VertexContextEpsilonAdmissibleHeuristic

public class VertexContextEpsilonAdmissibleHeuristic
extends java.lang.Object
VertexContextEpsilonAdmissibleHeuristic computes the Reese (1999) Epsilon-Admissible Heuristic in the Alpha A* Heuristic Function. The References are:

  • Dechter, R., and J. Pearl (1985): Generalized Best-first Search Strategies and the Optimality of A* Journal of the ACM 32 (3) 505-536
  • Hart, P. E., N. J. Nilsson, and B. Raphael (1968): A Formal Basis for the Heuristic Determination of the Minimum Cost Paths IEEE Transactions on Systems Sciences and Cybernetics 4 (2) 100-107
  • Kagan, E., and I. Ben-Gal (2014): A Group Testing Algorithm with Online Informational Learning IIE Transactions 46 (2) 164-184
  • Russell, S. J. and P. Norvig (2018): Artificial Intelligence: A Modern Approach 4th Edition Pearson
  • Wikipedia (2020): A* Search Algorithm https://en.wikipedia.org/wiki/A*_search_algorithm




Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • VertexContextEpsilonAdmissibleHeuristic

      public VertexContextEpsilonAdmissibleHeuristic​(FHeuristic fHeuristic, VertexContextWeightHeuristic vertexContextWeightHeuristic) throws java.lang.Exception
      VertexContextEpsilonAdmissibleHeuristic Constructor
      Parameters:
      fHeuristic - The F Heuristic
      vertexContextWeightHeuristic - The Vertex Context Weight Heuristic
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • AlphaAStar

      public static final VertexContextEpsilonAdmissibleHeuristic AlphaAStar​(VertexFunction gHeuristic, VertexFunction hHeuristic, double smallLambda, double bigLambda)
      Construct the Reese (1999) Alpha A* Epsilon-Admissible Heuristic Function
      Parameters:
      gHeuristic - The G Heuristic
      hHeuristic - The H Heuristic
      smallLambda - The Small Lambda
      bigLambda - The Big Lambda
      Returns:
      The Reese (1999) Alpha A* Epsilon-Admissible Heuristic Function
    • fHeuristic

      public FHeuristic fHeuristic()
      Retrieve the F Heuristic
      Returns:
      The F Heuristic
    • vertexContextWeightHeuristic

      public VertexContextWeightHeuristic vertexContextWeightHeuristic()
      Retrieve the Vertex Context Weight Heuristic
      Returns:
      The Vertex Context Weight Heuristic
    • evaluate

      public double evaluate​(VertexContext vertexContext) throws java.lang.Exception
      Compute the Epsilon-Admissible Heuristic for the Specified Vertex Context
      Parameters:
      vertexContext - The vertex Context
      Returns:
      The Epsilon-Admissible Heuristic for the Specified Vertex Context
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid