Klamp't  0.9.0
Public Member Functions | Public Attributes | List of all members
Klampt::DynamicPerturbationPlanner Class Reference

A planner that perturbs the current configuration to get an improved path. More...

#include <RealTimeIKPlanner.h>

Inheritance diagram for Klampt::DynamicPerturbationPlanner:
Klampt::DynamicMotionPlannerBase

Public Member Functions

virtual void SetGoal (shared_ptr< PlannerObjectiveBase > newgoal)
 
virtual int PlanFrom (ParabolicRamp::DynamicPath &path, Real cutoff)
 
- Public Member Functions inherited from Klampt::DynamicMotionPlannerBase
virtual void Init (CSpace *space, RobotModel *robot, WorldPlannerSettings *settings)
 
virtual void SetTime (Real tstart)
 
virtual void SetDefaultLimits ()
 
virtual void SetLimits (Real qScale=1.0, Real vScale=1.0, Real aScale=1.0)
 
bool LogBegin (const char *fn="realtimeplanner.log")
 
bool LogEnd ()
 
int PlanFrom (const Config &qstart, Real cutoff, ParabolicRamp::DynamicPath &result)
 Plans from a start configuration.
 
bool StopPlanning ()
 
int Shortcut (ParabolicRamp::DynamicPath &path, Real timeLimit)
 Performs shortcutting up until the time limit.
 
int SmartShortcut (Real tstart, ParabolicRamp::DynamicPath &path, Real timeLimit)
 
bool GetMilestoneRamp (const Config &q0, const Vector &dq0, const Config &q1, ParabolicRamp::DynamicPath &ramp) const
 Helper.
 
bool GetMilestoneRamp (const ParabolicRamp::DynamicPath &curPath, const Config &q, ParabolicRamp::DynamicPath &ramp) const
 Helper.
 
bool CheckMilestoneRamp (const ParabolicRamp::DynamicPath &curPath, const Config &q, ParabolicRamp::DynamicPath &ramp) const
 
Real EvaluateDirectPathCost (const ParabolicRamp::DynamicPath &curPath, const Config &q)
 returns the cost of going straight to q (assuming no collision detection)
 
Real EvaluatePathCost (const ParabolicRamp::DynamicPath &path, Real tStart=-1.0)
 
Real EvaluateTerminalCost (const Config &q, Real tEnd)
 returns the terminal cost for a path ending at q at time tEnd
 

Public Attributes

Real perturbationStep
 
int perturbLimit
 
int iteration
 
- Public Attributes inherited from Klampt::DynamicMotionPlannerBase
RobotModelrobot
 
WorldPlannerSettingssettings
 
CSpace * cspace
 
shared_ptr< PlannerObjectiveBasegoal
 
ParabolicRamp::Vector qMin
 
ParabolicRamp::Vector qMax
 
ParabolicRamp::Vector velMax
 
ParabolicRamp::Vector accMax
 
Real tstart
 
bool stopPlanning
 
FILE * flog
 

Additional Inherited Members

- Public Types inherited from Klampt::DynamicMotionPlannerBase
enum  { Failure =0, Success =1, Timeout =2 }
 

Detailed Description

A planner that perturbs the current configuration to get an improved path.

Member Function Documentation

virtual int Klampt::DynamicPerturbationPlanner::PlanFrom ( ParabolicRamp::DynamicPath path,
Real  cutoff 
)
virtual

DynamicMotionPlanner subclasses should override this. Plans from the start of 'path', and returns the result in 'path'. The planning duration should not exceed 'cutoff', if possible.

Must return Success if successful, Failure if planning fails.

Subroutines may maintain a timer, and stop and return Timeout planning time exceeds the cutoff. This is not strictly necessary; the caller should check whether the planning time exceeds the cutoff.

Reimplemented from Klampt::DynamicMotionPlannerBase.


The documentation for this class was generated from the following file: