hpp-manipulation 6.1.0
Classes for manipulation planning.
Loading...
Searching...
No Matches
hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder > Class Template Reference

#include <hpp/manipulation/path-optimization/spline-gradient-based.hh>

Inheritance diagram for hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >:
Collaboration diagram for hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >:

Public Types

enum  { PolynomeBasis = _PolynomeBasis , SplineOrder = _SplineOrder }
 
typedef core::pathOptimization::SplineGradientBased< PolynomeBasis, SplineOrderParent_t
 
typedef shared_ptr< SplineGradientBasedPtr_t
 
typedef path::Spline< PolynomeBasis, SplineOrderSpline
 
typedef Spline::Ptr_t SplinePtr_t
 
typedef std::vector< SplinePtr_tSplines_t
 
- Public Types inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
typedef SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder > Base
 
typedef SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder > Base
 
typedef shared_ptr< SplineGradientBasedPtr_t
 
typedef shared_ptr< SplineGradientBasedPtr_t
 
typedef path::Spline< PolynomeBasis, SplineOrder > Spline
 
typedef Spline::Ptr_t SplinePtr_t
 
typedef std::vector< SplinePtr_tSplines_t
 
- Public Types inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
typedef path::Spline< PolynomeBasis, SplineOrder > Spline
 
typedef path::Spline< PolynomeBasis, SplineOrder > Spline
 
typedef Spline::Ptr_t SplinePtr_t
 
typedef Spline::Ptr_t SplinePtr_t
 
typedef std::vector< SplinePtr_tSplines_t
 
typedef std::vector< SplinePtr_tSplines_t
 

Static Public Member Functions

static Ptr_t create (const ProblemConstPtr_t &problem)
 Return shared pointer to new object.
 
static Ptr_t createFromCore (const core::ProblemConstPtr_t &problem)
 
- Static Public Member Functions inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
static Ptr_t create (const ProblemConstPtr_t &problem)
 
- Static Public Member Functions inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
static void copy (const Splines_t &in, Splines_t &out)
 
static void interpolate (const Splines_t &a, const Splines_t &b, const value_type &alpha, Splines_t &res)
 

Protected Types

typedef hpp::core::pathOptimization::LinearConstraint LinearConstraint
 
typedef std::vector< SplineOptimizationDataSplineOptimizationDatas_t
 
- Protected Types inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
typedef Eigen::RowBlockIndices RowBlockIndices
 
typedef std::vector< SplineOptimizationDataSplineOptimizationDatas_t
 
- Protected Types inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
typedef steeringMethod::Spline< PolynomeBasis, SplineOrder > SSM_t
 
typedef steeringMethod::Spline< PolynomeBasis, SplineOrder > SSM_t
 
typedef std::vector< std::pair< PathValidationReportPtr_t, std::size_t > > Reports_t
 
typedef std::vector< std::pair< PathValidationReportPtr_t, std::size_t > > Reports_t
 
typedef Eigen::RowBlockIndices RowBlockIndices
 
typedef Eigen::RowBlockIndices RowBlockIndices
 
typedef std::vector< bool > Bools_t
 
typedef std::vector< bool > Bools_t
 
typedef std::vector< size_typeIndices_t
 
typedef std::vector< size_typeIndices_t
 
typedef std::vector< SplineOptimizationDataSplineOptimizationDatas_t
 
typedef std::vector< SplineOptimizationDataSplineOptimizationDatas_t
 

Protected Member Functions

 SplineGradientBased (const ProblemConstPtr_t &problem)
 
virtual void initializePathValidation (const Splines_t &splines)
 
virtual void addProblemConstraints (const core::PathVectorPtr_t &init, const Splines_t &splines, LinearConstraint &lc, SplineOptimizationDatas_t &sods) const
 
virtual void constrainEndIntoState (const core::PathPtr_t &path, const size_type &idxSpline, const SplinePtr_t &spline, const graph::StatePtr_t state, LinearConstraint &lc) const
 
virtual void constraintDerivativesAtEndOfSpline (const size_type &idxSpline, const SplinePtr_t &spline, LinearConstraint &lc) const
 
- Protected Member Functions inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
 SplineGradientBased (const ProblemConstPtr_t &problem)
 
void addProblemConstraintOnPath (const PathPtr_t &path, const size_type &idxSpline, const SplinePtr_t &spline, LinearConstraint &lc, SplineOptimizationData &sod) const
 
void addProblemConstraintOnPath (const PathPtr_t &path, const size_type &idxSpline, const SplinePtr_t &spline, LinearConstraint &lc, SplineOptimizationData &sod) const
 
Eigen::RowBlockIndices computeActiveParameters (const PathPtr_t &path, const constraints::solver::BySubstitution &hs, const value_type &guessThr=-1, const bool &useExplicitInput=false) const
 
Eigen::RowBlockIndices computeActiveParameters (const PathPtr_t &path, const constraints::solver::BySubstitution &hs, const value_type &guessThr=-1, const bool &useExplicitInput=false) const
 
- Protected Member Functions inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
 SplineGradientBasedAbstract (const ProblemConstPtr_t &problem)
 
PathVectorPtr_t buildPathVector (const Splines_t &splines) const
 
void appendEquivalentSpline (const StraightPathPtr_t &path, Splines_t &splines) const
 
void appendEquivalentSpline (const InterpolatedPathPtr_t &path, Splines_t &splines) const
 
void appendEquivalentSpline (const PathVectorPtr_t &path, Splines_t &splines) const
 
Reports_t validatePath (const Splines_t &splines, std::vector< std::size_t > &reordering, bool stopAtFirst, bool reorder) const
 
void jointBoundConstraint (const Splines_t &splines, LinearConstraint &lc) const
 
std::size_t addBoundConstraints (const Indices_t &bci, const LinearConstraint &bc, Bools_t &activeConstraint, LinearConstraint &constraint) const
 
Indices_t validateBounds (const Splines_t &splines, const LinearConstraint &lc) const
 
void addContinuityConstraints (const Splines_t &splines, const size_type maxOrder, const SplineOptimizationDatas_t &ess, LinearConstraint &continuity)
 
- Protected Member Functions inherited from hpp::core::PathOptimizer
 PathOptimizer (const ProblemConstPtr_t &problem)
 
PathPtr_t steer (ConfigurationIn_t q1, ConfigurationIn_t q2) const
 
void monitorExecution ()
 
void endIteration ()
 
bool shouldStop () const
 
void initFromParameters ()
 

Additional Inherited Members

- Public Member Functions inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
virtual PathVectorPtr_t optimize (const PathVectorPtr_t &path)
 
- Public Member Functions inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
void updateSplines (Splines_t &spline, const vector_t &param) const
 
void updateParameters (vector_t &param, const Splines_t &spline) const
 
- Public Member Functions inherited from hpp::core::PathOptimizer
virtual ~PathOptimizer ()
 
ProblemConstPtr_t problem () const
 
void interrupt ()
 
void maxIterations (const unsigned long int &n)
 
void timeOut (const double &timeOut)
 
- Public Attributes inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
 PolynomeBasis
 
 SplineOrder
 
- Public Attributes inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
 PolynomeBasis
 
 SplineOrder
 
- Public Attributes inherited from hpp::core::PathOptimizer
bool enabled
 
size_type iteration
 
boost::posix_time::ptime timeStart
 
- Static Protected Member Functions inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
static PathVectorPtr_t cleanInput (const PathVectorPtr_t &input)
 
- Protected Attributes inherited from hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >
bool checkOptimum_
 
DevicePtr_t robot_
 
- Protected Attributes inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
DevicePtr_t robot_
 
SSM_t::Ptr_t steeringMethod_
 
std::vector< PathValidationPtr_tvalidations_
 
- Protected Attributes inherited from hpp::core::PathOptimizer
bool interrupt_
 

Member Typedef Documentation

◆ LinearConstraint

template<int _PolynomeBasis, int _SplineOrder>
typedef hpp::core::pathOptimization::LinearConstraint hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::LinearConstraint
protected

◆ Parent_t

template<int _PolynomeBasis, int _SplineOrder>
typedef core::pathOptimization::SplineGradientBased<PolynomeBasis, SplineOrder> hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::Parent_t

◆ Ptr_t

template<int _PolynomeBasis, int _SplineOrder>
typedef shared_ptr<SplineGradientBased> hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::Ptr_t

◆ Spline

template<int _PolynomeBasis, int _SplineOrder>
typedef path::Spline< PolynomeBasis, SplineOrder > hpp::core::pathOptimization::SplineGradientBased< int _PolynomeBasis, int _SplineOrder >::Spline

◆ SplineOptimizationDatas_t

template<int _PolynomeBasis, int _SplineOrder>
typedef std::vector< SplineOptimizationData > hpp::core::pathOptimization::SplineGradientBased< int _PolynomeBasis, int _SplineOrder >::SplineOptimizationDatas_t
protected

◆ SplinePtr_t

template<int _PolynomeBasis, int _SplineOrder>
typedef Spline::Ptr_t hpp::core::pathOptimization::SplineGradientBased< int _PolynomeBasis, int _SplineOrder >::SplinePtr_t

◆ Splines_t

template<int _PolynomeBasis, int _SplineOrder>
typedef std::vector< SplinePtr_t > hpp::core::pathOptimization::SplineGradientBased< int _PolynomeBasis, int _SplineOrder >::Splines_t

Member Enumeration Documentation

◆ anonymous enum

template<int _PolynomeBasis, int _SplineOrder>
anonymous enum
Enumerator
PolynomeBasis 
SplineOrder 

Constructor & Destructor Documentation

◆ SplineGradientBased()

template<int _PolynomeBasis, int _SplineOrder>
hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::SplineGradientBased ( const ProblemConstPtr_t & problem)
protected

Member Function Documentation

◆ addProblemConstraints()

template<int _PolynomeBasis, int _SplineOrder>
virtual void hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::addProblemConstraints ( const core::PathVectorPtr_t & init,
const Splines_t & splines,
LinearConstraint & lc,
SplineOptimizationDatas_t & sods ) const
protectedvirtual

◆ constrainEndIntoState()

template<int _PolynomeBasis, int _SplineOrder>
virtual void hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::constrainEndIntoState ( const core::PathPtr_t & path,
const size_type & idxSpline,
const SplinePtr_t & spline,
const graph::StatePtr_t state,
LinearConstraint & lc ) const
protectedvirtual

◆ constraintDerivativesAtEndOfSpline()

template<int _PolynomeBasis, int _SplineOrder>
virtual void hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::constraintDerivativesAtEndOfSpline ( const size_type & idxSpline,
const SplinePtr_t & spline,
LinearConstraint & lc ) const
protectedvirtual

◆ create()

template<int _PolynomeBasis, int _SplineOrder>
static Ptr_t hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::create ( const ProblemConstPtr_t & problem)
static

Return shared pointer to new object.

◆ createFromCore()

template<int _PolynomeBasis, int _SplineOrder>
static Ptr_t hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::createFromCore ( const core::ProblemConstPtr_t & problem)
static

This is only for compatibility purpose (with ProblemSolver). problem is statically casted to an object of type const manipulation::Problem& and method create(const Problem&) is called.

◆ initializePathValidation()

template<int _PolynomeBasis, int _SplineOrder>
virtual void hpp::manipulation::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >::initializePathValidation ( const Splines_t & splines)
protectedvirtual

Get path validation for each spline

Parameters
splines,vectorof splines

for each spline in the input vector, retrieve the path validation method of the transition the spline comes from. If no edge is found, use path validation in problem.

Note
path validation methods are stored in member hpp::core::pathOptimization::SplineGradientBasedAbstract::validations_

Reimplemented from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >.


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