File StateTimeAStar.h#

Definition (server/inc/backup_planners/StateTimeAStar.h)#

Includes#

Included By#

Classes#

Full File Listing#

class StateTimeAStarNode#

Subclassed by SIPPNode

Public Functions

inline StateTimeAStarNode()#
inline StateTimeAStarNode(const State &state, double g_val, double h_val, StateTimeAStarNode *parent, int conflicts)#
inline double getFVal() const#

Public Members

State state#
double g_val#
double h_val#
StateTimeAStarNode *parent#
int conflicts#
int depth#
bool in_openlist#
int goal_id#
fibonacci_heap<StateTimeAStarNode*, compare<StateTimeAStarNode::compare_node>>::handle_type open_handle#
fibonacci_heap<StateTimeAStarNode*, compare<StateTimeAStarNode::secondary_compare_node>>::handle_type focal_handle#
struct compare_node#

Public Functions

inline bool operator()(const StateTimeAStarNode *n1, const StateTimeAStarNode *n2) const#
struct EqNode#

Public Functions

inline bool operator()(const StateTimeAStarNode *n1, const StateTimeAStarNode *n2) const#
struct Hasher#

Public Functions

inline std::size_t operator()(const StateTimeAStarNode *n) const#
struct secondary_compare_node#

Public Functions

inline bool operator()(const StateTimeAStarNode *n1, const StateTimeAStarNode *n2) const#
class StateTimeAStar : public SingleAgentSolver#

Public Functions

Path run(const BasicGraph &G, shared_ptr<HeuristicTableBase> heuristic_table, const State &start, const vector<Task> &goal_location, ReservationTable &RT, const int agent_waited_time = 0) override#
inline string getName() const override#
void findTrajectory(const BasicGraph &G, shared_ptr<HeuristicTableBase> heuristic_table, const State &start, const vector<Task> &goal_locations, const unordered_map<int, double> &travel_times, list<pair<int, int>> &path)#
inline StateTimeAStar()#

Private Functions

inline void releaseClosedListNodes()#
Path updatePath(const StateTimeAStarNode *goal)#
list<pair<int, int>> updateTrajectory(const StateTimeAStarNode *goal)#

Private Members

fibonacci_heap<StateTimeAStarNode*, compare<StateTimeAStarNode::compare_node>> open_list#
fibonacci_heap<StateTimeAStarNode*, compare<StateTimeAStarNode::secondary_compare_node>> focal_list#
unordered_set<StateTimeAStarNode*, StateTimeAStarNode::Hasher, StateTimeAStarNode::EqNode> allNodes_table#