Loading...
Searching...
No Matches
roboptim::Problem< F, boost::mpl::vector<> > Class Template Reference

#include <roboptim/core/problem.hh>

Public Types

typedef boost::mpl::vector constraintsList_t
typedef F function_t
 Function type.
typedef function_t::value_type value_type
typedef function_t::vector_t vector_t
 Vector type.
typedef function_t::argument_t argument_t
 Argument type.
typedef function_t::size_type size_type
 Size type.
typedef boost::optional< argument_tstartingPoint_t
 Optional vector defines a starting point.
typedef function_t::interval_t interval_t
typedef function_t::intervals_t intervals_t
typedef std::vector< value_typescaling_t
 Scaling vector.
typedef scaling_t scales_t ROBOPTIM_CORE_DEPRECATED
 Scaling vector (deprecated typedef).
typedef function_t::names_t names_t
 Vector of names (e.g. for arguments).
typedef detail::shared_ptr_variant< constraintsList_t >::type constraint_t
 Constraint's type.
typedef std::vector< constraint_tconstraints_t
 Constraints are represented as a vector of constraints.
typedef std::vector< intervals_tintervalsVect_t
 Vector of interval vectors.
typedef std::vector< scaling_tscalingVect_t
 Vector of scaling vectors.

Public Member Functions

std::ostream & print (std::ostream &o) const
 Display the problem on the specified output stream.
Constructors and destructors.
 Problem (const function_t &)
 Problem (const Problem< F, boost::mpl::vector<> > &)
 Copy constructor.
template<typename F_>
 Problem (const Problem< F_, boost::mpl::vector<> > &)
 Copy constructor (convert from another class of problem).
virtual ~Problem ()
 Virtual destructor.
Cost function.
const function_tfunction () const
 Retrieve cost function.
intervals_targumentBounds ()
 Retrieve arguments bounds.
const intervals_targumentBounds () const
 Retrieve arguments bounds.
scaling_targumentScaling ()
 Retrieve arguments scaling.
const scaling_targumentScaling () const
 Retrieve arguments scaling.
scales_t & argumentScales () ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
const scales_t & argumentScales () const ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
names_targumentNames ()
 Retrieve arguments names.
const names_targumentNames () const
 Retrieve arguments names.
Starting point (initial guess).
startingPoint_tstartingPoint ()
 Set the initial guess.
const startingPoint_tstartingPoint () const
 Get the initial guess.
Constraints.
const constraints_tconstraints () const
 Retrieve constraints.
void addConstraint (boost::shared_ptr< C > constraint, interval_t interval, value_type scale=1.)
 Add a constraint to the problem.
const intervalsVect_tboundsVector () const
 Retrieve constraints bounds vector.
const scalingVect_tscalingVector () const
 Retrieve constraints scaling vector.
const scalesVect_t & scalesVector () const ROBOPTIM_CORE_DEPRECATED
 Retrieve constraints scaling vector (deprecated version).

Friends

template<typename F_, typename CLIST_>
class Problem

Member Typedef Documentation

◆ constraint_t

typedef detail::shared_ptr_variant<constraintsList_t>::type roboptim::Problem< F, boost::mpl::vector<> >::constraint_t

Constraint's type.

Generate a Boost.Variant of shared pointers from the static constraints types list.

◆ constraints_t

typedef std::vector<constraint_t> roboptim::Problem< F, boost::mpl::vector<> >::constraints_t

Constraints are represented as a vector of constraints.

◆ intervalsVect_t

typedef std::vector<intervals_t> roboptim::Problem< F, boost::mpl::vector<> >::intervalsVect_t

Vector of interval vectors.

This type is used to take into account the fact that constraints can have output values in $\mathbb{C}^{m}$.

If $m=1$, then the associated interval vector contains only one element of interval_t type.

◆ scalingVect_t

typedef std::vector<scaling_t> roboptim::Problem< F, boost::mpl::vector<> >::scalingVect_t

Vector of scaling vectors.

This type is used to take into account the fact that constraints can have output values in $\mathbb{R}^m$.

If $m=1$, then the associated scaling vector contains only one element of scaling_t type.

Member Function Documentation

◆ addConstraint()

void roboptim::Problem< F, boost::mpl::vector<> >::addConstraint ( boost::shared_ptr< C > constraint,
interval_t interval,
value_type scale = 1. )

Add a constraint to the problem.

Useful only when $m=1$, use addConstraint (boost::shared_ptr<C> constraint, intervals_t intervals, scaling_t scaling) instead.

Parameters
constraintthe constraint that will be added
intervalinterval in which the constraint is satisfied
scaleconstraint scale
Template Parameters
Cconstraint type (has to be in CLIST)
Exceptions
std::runtime_error

◆ boundsVector()

const Problem< F, boost::mpl::vector<> >::intervalsVect_t & roboptim::Problem< F, boost::mpl::vector<> >::boundsVector ( ) const

Retrieve constraints bounds vector.

Returns
constraints bounds vector

◆ constraints()

const Problem< F, boost::mpl::vector<> >::constraints_t & roboptim::Problem< F, boost::mpl::vector<> >::constraints ( ) const

Retrieve constraints.

Returns
constraints

◆ scalesVector()

const Problem< F, boost::mpl::vector<> >::scalesVect_t & roboptim::Problem< F, boost::mpl::vector<> >::scalesVector ( ) const

Retrieve constraints scaling vector (deprecated version).

◆ scalingVector()

const Problem< F, boost::mpl::vector<> >::scalingVect_t & roboptim::Problem< F, boost::mpl::vector<> >::scalingVector ( ) const

Retrieve constraints scaling vector.

Returns
constraints scaling vector