hpp-core: hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder > Class Template Reference

hpp-core 9.0.2 Implement basic classes for canonical path planning for kinematic chains.

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder > Class Template Reference
Path Optimization

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

Inheritance diagram for hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >:
[legend]
Collaboration diagram for hpp::core::pathOptimization::SplineGradientBased< _PolynomeBasis, _SplineOrder >:
[legend]

## Public Types
enum | { PolynomeBasis = _PolynomeBasis , SplineOrder = _SplineOrder }
typedef SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder > | Base
typedef shared_ptr< SplineGradientBased > | Ptr_t
typedef path::Spline< PolynomeBasis, SplineOrder > | Spline
typedef Spline::Ptr_t | SplinePtr_t
typedef std::vector< SplinePtr_t > | Splines_t
Public Types inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
enum | { PolynomeBasis = _PolynomeBasis , SplineOrder = _SplineOrder }
typedef path::Spline< PolynomeBasis, SplineOrder > | Spline
typedef Spline::Ptr_t | SplinePtr_t
typedef std::vector< SplinePtr_t > | Splines_t

## Public Member Functions
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
| Get problem.
void | interrupt ()
| Interrupt path optimization.
void | maxIterations (const unsigned long int &n)
| Set maximal number of iterations.
void | timeOut (const double &timeOut)
| set time out (in seconds)

## Static Public Member Functions
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)
| Copy a vector of Spline.
static void | interpolate (const Splines_t &a, const Splines_t &b, const value_type &alpha, Splines_t &res)
| Returns res = (1 - alpha) * a + alpha * b.

## Public Attributes
value_type | alphaInit
bool | alwaysStopAtFirst
| If true, consider only one (not all) collision constraint per iteration.
size_type | costOrder
bool | usePathLengthAsWeights
| If true, the initial path length is used to weight the splines.
bool | reorderIntervals
| If true, intervals in collision are checked first at the next iteration.
bool | linearizeAtEachStep
| If true, collision constraint will be re-linearized at each iteration.
bool | checkJointBound
| If true, joint bounds are enforced.
bool | returnOptimum
value_type | costThreshold
value_type | guessThreshold
value_type | QPAccuracy
| Accuracy of QP solver (only used by proxqp).

## Protected Types
typedef Eigen::RowBlockIndices | RowBlockIndices
typedef std::vector< SplineOptimizationData > | SplineOptimizationDatas_t
Protected Types inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
typedef steeringMethod::Spline< PolynomeBasis, SplineOrder > | SSM_t
| Spline steering method.
typedef std::vector< std::pair< PathValidationReportPtr_t, std::size_t > > | Reports_t
typedef Eigen::RowBlockIndices | RowBlockIndices
typedef std::vector< bool > | Bools_t
typedef std::vector< size_type > | Indices_t
typedef std::vector< SplineOptimizationData > | SplineOptimizationDatas_t

## Protected Member Functions
| SplineGradientBased (const ProblemConstPtr_t &problem)
Constraint creation
virtual void | addProblemConstraints (const PathVectorPtr_t &init, const Splines_t &splines, LinearConstraint &lc, SplineOptimizationDatas_t &sods) 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
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
virtual void | initializePathValidation (const Splines_t &splines)
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
| Unused.
Indices_t | validateBounds (const Splines_t &splines, const LinearConstraint &lc) const
| Mostly for debugging purpose.
void | addContinuityConstraints (const Splines_t &splines, const size_type maxOrder, const SplineOptimizationDatas_t &ess, LinearConstraint &continuity)
| Add the linear constraint to connect consecutive splines together.
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 ()

## Protected Attributes
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_t > | validations_
Protected Attributes inherited from hpp::core::PathOptimizer
bool | interrupt_

## Additional Inherited Members
Static Protected Member Functions inherited from hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >
static PathVectorPtr_t | cleanInput (const PathVectorPtr_t &input)
| Flatten path and remove path of zero length.

## Member Typedef Documentation

## ◆ RowBlockIndices

template<int _PolynomeBasis, int _SplineOrder>

typedef Eigen::RowBlockIndices hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::RowBlockIndices
| protected

## ◆ Spline

template<int _PolynomeBasis, int _SplineOrder>

typedef path::Spline<PolynomeBasis, SplineOrder> hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::Spline

## ◆ SplineOptimizationDatas_t

template<int _PolynomeBasis, int _SplineOrder>

typedef std::vector<SplineOptimizationData> hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::SplineOptimizationDatas_t
| protected

## ◆ SplinePtr_t

template<int _PolynomeBasis, int _SplineOrder>

typedef Spline::Ptr_t hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::SplinePtr_t

## ◆ Splines_t

template<int _PolynomeBasis, int _SplineOrder>

typedef std::vector<SplinePtr_t> hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::Splines_t

## Member Data Documentation

## ◆ robot_

template<int _PolynomeBasis, int _SplineOrder>

DevicePtr_t hpp::core::pathOptimization::SplineGradientBasedAbstract< _PolynomeBasis, _SplineOrder >::robot_
| protected

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

- include/hpp/core/path-optimization/spline-gradient-based.hh