Determining the heuristic value by calculating a 2D path from each grid cell of the map to the goal and using the path length as expected distance. More...
#include <path_cost_heuristic.h>
Public Member Functions | |
bool | calculateDistances (const State &from, const State &to) |
Calculates for each grid cell of the map a 2D path to the cell (to.x, to.y). For forward planning 'to' is supposed to be the goal state, for backward planning 'to' is supposed to be the start state. | |
double | getHeuristicValue (const State &from, const State &to, const State &start, const State &goal) const override |
bool | loadParams (const vigir_generic_params::ParameterSet ¶ms=vigir_generic_params::ParameterSet()) override |
PathCostHeuristic () | |
void | updateMap (vigir_gridmap_2d::GridMap2DPtr map) |
~PathCostHeuristic () | |
Protected Member Functions | |
void | resetGrid () |
Protected Attributes | |
double | ivAngleBinSize |
double | ivCellSize |
double | ivDiffAngleCost |
int | ivGoalX |
int | ivGoalY |
boost::shared_ptr < SBPL2DGridSearch > | ivGridSearchPtr |
double | ivInflationRadius |
vigir_gridmap_2d::GridMap2DPtr | ivMapPtr |
double | ivMaxStepWidth |
int | ivNumAngleBins |
unsigned char ** | ivpGrid |
double | ivStepCost |
Static Protected Attributes | |
static const int | cvObstacleThreshold = 200 |
Determining the heuristic value by calculating a 2D path from each grid cell of the map to the goal and using the path length as expected distance.
The heuristic value consists of the following factors:
+ The expected distance retreived from the 2D path.
+ The expected path costs.
+ The difference between the orientation of the two states multiplied by some cost factor.
Definition at line 57 of file path_cost_heuristic.h.
Definition at line 9 of file path_cost_heuristic.cpp.
Definition at line 17 of file path_cost_heuristic.cpp.
bool vigir_footstep_planning::PathCostHeuristic::calculateDistances | ( | const State & | from, |
const State & | to | ||
) |
Calculates for each grid cell of the map a 2D path to the cell (to.x, to.y). For forward planning 'to' is supposed to be the goal state, for backward planning 'to' is supposed to be the start state.
Definition at line 83 of file path_cost_heuristic.cpp.
double vigir_footstep_planning::PathCostHeuristic::getHeuristicValue | ( | const State & | from, |
const State & | to, | ||
const State & | start, | ||
const State & | goal | ||
) | const [override] |
Definition at line 40 of file path_cost_heuristic.cpp.
bool vigir_footstep_planning::PathCostHeuristic::loadParams | ( | const vigir_generic_params::ParameterSet & | params = vigir_generic_params::ParameterSet() | ) | [override] |
TODO ivInflationRadius
Definition at line 23 of file path_cost_heuristic.cpp.
void vigir_footstep_planning::PathCostHeuristic::resetGrid | ( | ) | [protected] |
Definition at line 146 of file path_cost_heuristic.cpp.
Definition at line 111 of file path_cost_heuristic.cpp.
const int vigir_footstep_planning::PathCostHeuristic::cvObstacleThreshold = 200 [static, protected] |
Definition at line 84 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivAngleBinSize [protected] |
Definition at line 90 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivCellSize [protected] |
Definition at line 88 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivDiffAngleCost [protected] |
Definition at line 93 of file path_cost_heuristic.h.
int vigir_footstep_planning::PathCostHeuristic::ivGoalX [protected] |
Definition at line 97 of file path_cost_heuristic.h.
int vigir_footstep_planning::PathCostHeuristic::ivGoalY [protected] |
Definition at line 98 of file path_cost_heuristic.h.
boost::shared_ptr<SBPL2DGridSearch> vigir_footstep_planning::PathCostHeuristic::ivGridSearchPtr [protected] |
Definition at line 101 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivInflationRadius [protected] |
Definition at line 95 of file path_cost_heuristic.h.
Definition at line 100 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivMaxStepWidth [protected] |
Definition at line 94 of file path_cost_heuristic.h.
int vigir_footstep_planning::PathCostHeuristic::ivNumAngleBins [protected] |
Definition at line 89 of file path_cost_heuristic.h.
unsigned char** vigir_footstep_planning::PathCostHeuristic::ivpGrid [protected] |
Definition at line 86 of file path_cost_heuristic.h.
double vigir_footstep_planning::PathCostHeuristic::ivStepCost [protected] |
Definition at line 92 of file path_cost_heuristic.h.