Package shortestPath

Class ScotlandYardHeuristic

java.lang.Object
shortestPath.ScotlandYardHeuristic
All Implemented Interfaces:
Heuristic<Integer>

public class ScotlandYardHeuristic extends Object implements Heuristic<Integer>
Klasse für Scotland Yard Heuristik. Bietet eine Methode estimatedCost an, die die Distanz zweier Knoten im Scotland-Yard-Spielplan schätzt. Die Heuristik wird für A* benötigt.
Since:
30.06.2024
  • Constructor Details

    • ScotlandYardHeuristic

      public ScotlandYardHeuristic() throws FileNotFoundException
      Der Konstruktor liest die (x,y)-Koordinaten (Pixelkoordinaten) aller Knoten von der Datei ScotlandYard_Knoten.txt in eine Map ein.
      Throws:
      FileNotFoundException
  • Method Details

    • estimatedCost

      public double estimatedCost(Integer u, Integer v)
      Liefert einen skalierten Euklidischen Abstand zwischen Knoten u und v zurück. Da die Koordinaten von x und y in Pixeleinheiten sind, wird der Euklidische Abstand mit einem Faktor zwischen 0.02 bis 0.1 skaliert.
      Specified by:
      estimatedCost in interface Heuristic<Integer>
      Parameters:
      u - Knoten
      v - Knoten
      Returns:
      skalierter Euklidischer Abstand als geschätze Kosten