18 #ifndef HPP_MANIPULATION_STEERING_METHOD_CROSS_STATE_OPTIMIZATION_HH 19 # define HPP_MANIPULATION_STEERING_METHOD_CROSS_STATE_OPTIMIZATION_HH 21 # include <hpp/core/steering-method.hh> 22 # include <hpp/core/config-projector.hh> 24 # include <hpp/manipulation/config.hh> 31 namespace manipulation {
32 namespace steeringMethod {
90 struct OptimizationData;
107 sameRightHandSide_ ()
109 gatherGraphConstraints ();
114 index_ (other.index_), sameRightHandSide_
115 (other.sameRightHandSide_), weak_ ()
120 void init (CrossStateOptimizationWkPtr_t weak)
128 struct GraphSearchData;
131 void gatherGraphConstraints ();
135 bool findTransitions (GraphSearchData& data)
const;
138 graph::Edges_t getTransitionList (GraphSearchData& data,
const std::size_t& i)
const;
141 bool buildOptimizationProblem
145 bool solveOptimizationProblem (OptimizationData& d)
const;
147 bool checkConstantRightHandSide (OptimizationData& d,
152 bool contains (
const Solver_t& solver,
const ImplicitPtr_t&
c)
const;
157 std::map < std::string, std::size_t > index_;
161 std::map <ImplicitPtr_t, ImplicitPtr_t> sameRightHandSide_;
164 CrossStateOptimizationWkPtr_t weak_;
168 template <
typename T>
173 gsm->innerSteeringMethod (
T::create (problem));
180 #endif // HPP_MANIPULATION_STEERING_METHOD_CROSS_STATE_OPTIMIZATION_HH boost::shared_ptr< Path > PathPtr_t
std::vector< EdgePtr_t > Edges_t
Definition: fwd.hh:46
static CrossStateOptimizationPtr_t create(const Problem &problem)
pinocchio::ConfigurationIn_t ConfigurationIn_t
Definition: fwd.hh:38
Definition: problem.hh:32
void init(SteeringMethodWkPtr_t weak)
Definition: graph.hh:53
Definition: cross-state-optimization.hh:86
const Problem & problem() const
constraints::ImplicitPtr_t ImplicitPtr_t
Definition: fwd.hh:105
core::NumericalConstraints_t NumericalConstraints_t
Definition: fwd.hh:117
static GradientBasedPtr_t create(const Problem &problem)
CrossStateOptimization(const CrossStateOptimization &other)
Definition: cross-state-optimization.hh:112
core::size_type size_type
Definition: fwd.hh:80
boost::shared_ptr< PathVector > PathVectorPtr_t
boost::shared_ptr< SteeringMethod > SteeringMethodPtr_t
boost::shared_ptr< CrossStateOptimization > CrossStateOptimizationPtr_t
Definition: fwd.hh:32
void init(CrossStateOptimizationWkPtr_t weak)
Definition: cross-state-optimization.hh:120
CrossStateOptimization(const Problem &problem)
Definition: cross-state-optimization.hh:105
void impl_compute(result_ref, const_argument_ref) const
virtual SteeringMethodPtr_t copy() const