|
Simox
2.3.74.0
|
A simple sampling based, single rrt planner using the extend or connect method. More...
Public Types | |
| enum | RrtMethod { eExtend, eConnect, eConnectCompletePath } |
| enum | ExtensionResult { eError, eFailed, eSuccess, ePartial } |
Public Member Functions | |
| Rrt (CSpacePtr cspace, RrtMethod mode=eConnect, float probabilityExtendToGoal=0.1f, float samplingSize=-1) | |
| ~Rrt () override | |
| bool | plan (bool bQuiet=false) override |
| void | printConfig (bool printOnlyParams=false) override |
| void | reset () override |
| reset the planner More... | |
| bool | setStart (const Eigen::VectorXf &c) override |
| set start configuration More... | |
| bool | setGoal (const Eigen::VectorXf &c) override |
| set goal configuration More... | |
| void | setProbabilityExtendToGoal (float p) |
| CSpaceTreePtr | getTree () |
Public Member Functions inherited from Saba::MotionPlanner | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW | MotionPlanner (CSpacePtr cspace) |
| virtual | ~MotionPlanner () |
| destructor More... | |
| CSpacePathPtr | getSolution () |
| void | setMaxCycles (unsigned int mc) |
| Eigen::VectorXf | getStartConfig () |
| return start configuration More... | |
| Eigen::VectorXf | getGoalConfig () |
| return goal configuration More... | |
| unsigned int | getNrOfCycles () |
| check that planner is initialized More... | |
| CSpacePtr | getCSpace () |
| The CSpace. More... | |
| virtual void | stopExecution () |
| void | setName (std::string sName) |
| Give the planner a name. More... | |
| std::string | getName () |
| The name of the planner. More... | |
| float | getPlanningTimeMS () |
| virtual bool | isInitialized () |
| returns true, when start and goal config have been set More... | |
| void | setPlanningTimeout (float timeoutMs) |
Protected Member Functions | |
| bool | createSolution (bool bQuiet=false) override |
| create the solution More... | |
| virtual ExtensionResult | extend (Eigen::VectorXf &c, CSpaceTreePtr tree, int &storeLastAddedID) |
| virtual ExtensionResult | connectComplete (Eigen::VectorXf &c, CSpaceTreePtr tree, int &storeLastAddedID) |
| virtual ExtensionResult | connectUntilCollision (Eigen::VectorXf &c, CSpaceTreePtr tree, int &storeLastAddedID) |
Protected Attributes | |
| CSpaceTreePtr | tree |
| the rrt on which are operating More... | |
| CSpaceNodePtr | startNode |
| start node (root of RRT) More... | |
| CSpaceNodePtr | goalNode |
| goal node (set when RRT weas successfully connected to goalConfig) More... | |
| Eigen::VectorXf | tmpConfig |
| tmp config More... | |
| float | extendGoToGoal |
| the probability that the goal config is used instead of a randomly created configuration More... | |
| float | extendStepSize |
| step size for one rrt extend (copied from cspace) More... | |
| int | lastAddedID |
| ID of last added node. More... | |
| RrtMethod | rrtMode |
Protected Attributes inherited from Saba::MotionPlanner | |
| CSpacePtr | cspace |
| the cspace on which are operating More... | |
| CSpacePathPtr | solution |
| the solution More... | |
| bool | stopSearch |
| indicates that the search should be interrupted More... | |
| unsigned int | dimension |
| dimension of c-space More... | |
| Eigen::VectorXf | startConfig |
| start config More... | |
| bool | startValid |
| Eigen::VectorXf | goalConfig |
| goal config More... | |
| bool | goalValid |
| unsigned int | maxCycles |
| maximum cycles for searching More... | |
| unsigned int | cycles |
| current cycles done in the run method More... | |
| std::string | name |
| Name of this planner (standard: "Motion Planner") More... | |
| float | planningTime |
| float | planningTimeout |
| Planning time in milliseconds. More... | |
A simple sampling based, single rrt planner using the extend or connect method.
Rrt-related algorithms are known to allow efficient motion planning in high dimensional configuration spaces. Complex setups can be specified via the used c-space classes. The number of degrees of freedom (DoF/dimension) is defined via the c-space. Also the collision detection is handled by the c-space classes.
| enum Saba::Rrt::RrtMethod |
| Saba::Rrt::Rrt | ( | CSpacePtr | cspace, |
| RrtMethod | mode = eConnect, |
||
| float | probabilityExtendToGoal = 0.1f, |
||
| float | samplingSize = -1 |
||
| ) |
Constructor
| cspace | A cspace, defining the used joints (the dimension/DoF) and the collision detection setup. |
| mode | Specify the RRT method that should be used |
| probabilityExtendToGoal | Specify how often the goal node should be used instead of a random config (value must be between 0 and 1) |
|
overridedefault |
|
protectedvirtual |
Reimplemented in Saba::GraspRrt.
|
protectedvirtual |
|
overrideprotectedvirtual |
create the solution
Implements Saba::MotionPlanner.
|
protectedvirtual |
| Saba::CSpaceTreePtr Saba::Rrt::getTree | ( | ) |
|
overridevirtual |
Do the planning (blocking method). On success the Rrt can be accessed with the getTree() method and the found solution with getSolution().
| bQuiet | Print some info or not. |
Implements Saba::MotionPlanner.
|
overridevirtual |
Print setup of planner.
| printOnlyParams | If set the decorating start and end is skipped (can be used to print derived classes). |
Reimplemented from Saba::MotionPlanner.
|
overridevirtual |
reset the planner
Reimplemented from Saba::MotionPlanner.
|
overridevirtual |
set goal configuration
Reimplemented from Saba::MotionPlanner.
| void Saba::Rrt::setProbabilityExtendToGoal | ( | float | p | ) |
|
overridevirtual |
set start configuration
Reimplemented from Saba::MotionPlanner.
|
protected |
the probability that the goal config is used instead of a randomly created configuration
|
protected |
step size for one rrt extend (copied from cspace)
|
protected |
goal node (set when RRT weas successfully connected to goalConfig)
|
protected |
ID of last added node.
|
protected |
|
protected |
start node (root of RRT)
|
protected |
tmp config
|
protected |
the rrt on which are operating