|
selfdriving
|
#include <mpp/algos/TPS_Astar.h>
Classes | |
| struct | Node |
| struct | NodeCoords |
| struct | NodeCoordsHash |
| struct | NodePtr |
| struct | path_to_neighbor_t |
Public Member Functions | |
| TPS_Astar () | |
| virtual | ~TPS_Astar ()=default |
| PlannerOutput | plan (const PlannerInput &in) override |
| mrpt::containers::yaml | params_as_yaml () override |
| void | params_from_yaml (const mrpt::containers::yaml &c) override |
| cost_t | default_heuristic (const SE2_KinState &from, const SE2orR2_KinState &goal) const |
| cost_t | default_heuristic_SE2 (const SE2_KinState &from, const mrpt::math::TPose2D &goal) const |
| cost_t | default_heuristic_R2 (const SE2_KinState &from, const mrpt::math::TPoint2D &goal) const |
Public Member Functions inherited from mpp::Planner | |
| Planner ()=default | |
| ~Planner () | |
| mrpt::system::CTimeLogger & | profiler_ () |
| void | attachExternalProfiler_ (mrpt::system::CTimeLogger &p) |
| cost_t | cost_path_segment (const MoveEdgeSE2_TPS &edge) const |
Public Attributes | |
| TPS_Astar_Parameters | params_ |
| astar_heuristic_t | heuristic |
Public Attributes inherited from mpp::Planner | |
| std::vector< CostEvaluator::Ptr > | costEvaluators_ |
| planner_progress_callback_t | progressCallback_ |
| duration_seconds_t | progressCallbackCallPeriod_ = 0.1 |
Private Types | |
| using | nodes_with_desired_speed_t = std::unordered_map< NodeCoords, normalized_speed_t, NodeCoordsHash > |
| using | absolute_cell_index_t = size_t |
| using | list_paths_to_neighbors_t = std::vector< path_to_neighbor_t > |
Private Member Functions | |
| absolute_cell_index_t | nodeCoordsToAbsIndex (const NodeCoords &n) const |
| Node & | getOrCreateNodeByPose (const mpp::SE2_KinState &p, mrpt::graphs::TNodeID &nextFreeId) |
| NodeCoords | nodeGridCoords (const mrpt::math::TPose2D &p) const |
| throws on out of grid limits. More... | |
| NodeCoords | nodeGridCoords (const mrpt::math::TPoint2D &p) const |
| list_paths_to_neighbors_t | find_feasible_paths_to_neighbors (const Node &from, const TrajectoriesAndRobotShape &trs, const SE2orR2_KinState &goalState, const std::vector< mrpt::maps::CPointsMap::Ptr > &globalObstacles, double MAX_XY_OBSTACLES_CLIPPING_DIST, const nodes_with_desired_speed_t &nodesWithSpeed) |
| mrpt::maps::CPointsMap::Ptr | cached_local_obstacles (const mrpt::math::TPose2D &queryPose, const std::vector< mrpt::maps::CPointsMap::Ptr > &globalObstacles, double MAX_PTG_XY_DIST) |
Private Attributes | |
| mrpt::poses::CPose2DGridTemplate< Node > | grid_ |
Uses a SE(2) lattice to run an A* algorithm to find a kinematicaly feasible path from "A" to "B" using a set of trajectories in the form of PTGs.
|
private |
|
private |
|
private |
| mpp::TPS_Astar::TPS_Astar | ( | ) |
|
virtualdefault |
|
private |
| cost_t mpp::TPS_Astar::default_heuristic | ( | const SE2_KinState & | from, |
| const SE2orR2_KinState & | goal | ||
| ) | const |
| cost_t mpp::TPS_Astar::default_heuristic_R2 | ( | const SE2_KinState & | from, |
| const mrpt::math::TPoint2D & | goal | ||
| ) | const |
| cost_t mpp::TPS_Astar::default_heuristic_SE2 | ( | const SE2_KinState & | from, |
| const mrpt::math::TPose2D & | goal | ||
| ) | const |
|
private |
This generates a list of many potential neighbor cells to visit, subject to kinematic and dynamic limitations, and obstacle checking.
|
inlineprivate |
throws on out of grid limits. Returns a ref to the node.
|
inlineprivate |
|
inlineprivate |
throws on out of grid limits.
|
inlineprivate |
|
inlineoverridevirtual |
Implements mpp::Planner.
|
inlineoverridevirtual |
Implements mpp::Planner.
|
overridevirtual |
Implements mpp::Planner.
|
private |
| astar_heuristic_t mpp::TPS_Astar::heuristic |
| TPS_Astar_Parameters mpp::TPS_Astar::params_ |
1.8.13