virtual double HCost(const MountainCarState &node) const
Heuristic value between node and the stored goal.
virtual MountainCarAction GetAction(const MountainCarState &s1, const MountainCarState &s2) const
virtual bool GoalTest(const MountainCarState &node, const MountainCarState &goal) const
static bool operator==(const MountainCarState &l1, const MountainCarState &l2)
virtual double HCost(const MountainCarState &node1, const MountainCarState &node2) const
Heuristic value between two arbitrary nodes.
virtual bool InvertAction(MountainCarAction &a) const
virtual uint64_t GetStateHash(const MountainCarState &node) const
double GetHeightAtPosition(double queryPosition) const
MountainCarState searchGoal
virtual void ApplyAction(MountainCarState &s, MountainCarAction a) const
virtual void GetSuccessors(const MountainCarState &nodeID, std::vector< MountainCarState > &neighbors) const
virtual void GetActions(const MountainCarState &nodeID, std::vector< MountainCarAction > &actions) const
virtual bool GoalTest(const MountainCarState &node) const
Goal Test if the goal is stored.
virtual uint64_t GetActionHash(MountainCarAction act) const
virtual void OpenGLDraw() const
double accelerationFactor
virtual double GCost(const MountainCarState &node1, const MountainCarState &node2) const
virtual void GetNextState(const MountainCarState &, MountainCarAction, MountainCarState &) const
double GetSlope(double queryPosition) const
bool fequal(double a, double b, double tolerance=TOLERANCE)
Nodes to be stored within a Graph.