#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_t > | startingPoint_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_type > | scaling_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::list_converter< boost::mpl::vector<> >::type | constraintsList_t |
Constraints types list. | |
typedef F | function_t |
Function type. | |
typedef detail::shared_ptr_variant< constraintsList_t >::type | constraint_t |
Constraint's type. | |
typedef function_t::value_type | value_type |
Import function's value_type 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 std::vector< constraint_t > | constraints_t |
Constraints are represented as a vector of constraints. | |
typedef boost::optional< argument_t > | startingPoint_t |
Optional vector defines a starting point. | |
typedef function_t::interval_t | interval_t |
Interval type (e.g. for bounds). | |
typedef function_t::intervals_t | intervals_t |
Intervals type. | |
typedef std::vector< value_type > | scaling_t |
Scaling vector. | |
typedef scaling_t scales_t | ROBOPTIM_CORE_DEPRECATED |
Scaling vector (deprecated typedef) | |
typedef scalingVect_t scalesVect_t | ROBOPTIM_CORE_DEPRECATED |
Vector of scaling vectors (deprecated typedef). | |
typedef function_t::names_t | names_t |
Vector of names (e.g. for arguments). | |
typedef std::vector< intervals_t > | intervalsVect_t |
Vector of interval vectors. | |
typedef std::vector< scaling_t > | scalingVect_t |
Vector of scaling vectors. | |
Public Member Functions | |
std::ostream & | print (std::ostream &o) const |
Display the problem on the specified output stream. | |
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_t & | function () const |
Retrieve cost function. | |
intervals_t & | argumentBounds () |
Retrieve arguments bounds. | |
const intervals_t & | argumentBounds () const |
Retrieve arguments bounds. | |
scaling_t & | argumentScaling () |
Retrieve arguments scaling. | |
const scaling_t & | argumentScaling () 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_t & | argumentNames () |
Retrieve arguments names. | |
const names_t & | argumentNames () const |
Retrieve arguments names. | |
Starting point (initial guess). | |
startingPoint_t & | startingPoint () |
Set the initial guess. | |
const startingPoint_t & | startingPoint () const |
Get the initial guess. | |
Constructors and destructors. | |
Problem (const function_t &cost) | |
Problem (const Problem< F, boost::mpl::vector<> > &pb) | |
Copy constructor. | |
Problem (const Problem< F_, CLIST_ > &pb) | |
Copy constructor (convert from another class of problem). | |
virtual | ~Problem () |
Virtual destructor. | |
Cost function. | |
const function_t & | function () const |
Retrieve cost function. | |
intervals_t & | argumentBounds () |
Retrieve arguments bounds. | |
const intervals_t & | argumentBounds () const |
Retrieve arguments bounds. | |
scaling_t & | argumentScaling () |
Retrieve arguments scaling. | |
const scaling_t & | argumentScaling () 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_t & | argumentNames () |
Retrieve arguments names. | |
const names_t & | argumentNames () const |
Retrieve arguments names. | |
Constraints. | |
const constraints_t & | constraints () const |
Retrieve constraints. | |
void | addConstraint (boost::shared_ptr< C > constraint, interval_t interval, value_type scale=1.) |
Add a constraint to the problem. | |
void | addConstraint (boost::shared_ptr< C > constraint, intervals_t intervals, scaling_t scaling) |
Add a constraint to the problem. | |
const intervalsVect_t & | boundsVector () const |
Retrieve constraints bounds vector. | |
const scalingVect_t & | scalingVector () const |
Retrieve constraints scaling vector. | |
const scalesVect_t & | scalesVector () const ROBOPTIM_CORE_DEPRECATED |
Retrieve constraints scaling vector (deprecated version). | |
Starting point (initial guess). | |
startingPoint_t & | startingPoint () |
Set the initial guess. | |
const startingPoint_t & | startingPoint () const |
Get the initial guess. | |
Friends | |
template<typename F_, typename CLIST_> | |
class | Problem |
class | Problem |
typedef function_t::argument_t roboptim::Problem< F, boost::mpl::vector<> >::argument_t |
Argument type.
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.
typedef std::vector<constraint_t> roboptim::Problem< F, boost::mpl::vector<> >::constraints_t |
Constraints are represented as a vector of constraints.
typedef detail::list_converter<boost::mpl::vector<>>::type roboptim::Problem< F, boost::mpl::vector<> >::constraintsList_t |
Constraints types list.
CLIST is converted to a boost::mpl::vector to ensure a similar behavior for codes using different random access sequences (vector, list, etc.).
typedef F roboptim::Problem< F, boost::mpl::vector<> >::function_t |
typedef function_t::interval_t roboptim::Problem< F, boost::mpl::vector<> >::interval_t |
Interval type (e.g. for bounds).
typedef function_t::intervals_t roboptim::Problem< F, boost::mpl::vector<> >::intervals_t |
Intervals type.
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
If
typedef function_t::names_t roboptim::Problem< F, boost::mpl::vector<> >::names_t |
Vector of names (e.g. for arguments).
typedef scaling_t scales_t roboptim::Problem< F, boost::mpl::vector<> >::ROBOPTIM_CORE_DEPRECATED |
Scaling vector (deprecated typedef)
typedef scalingVect_t scalesVect_t roboptim::Problem< F, boost::mpl::vector<> >::ROBOPTIM_CORE_DEPRECATED |
Vector of scaling vectors (deprecated typedef).
typedef std::vector<value_type> roboptim::Problem< F, boost::mpl::vector<> >::scaling_t |
Scaling vector.
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
If
typedef function_t::size_type roboptim::Problem< F, boost::mpl::vector<> >::size_type |
Size type.
typedef boost::optional<argument_t> roboptim::Problem< F, boost::mpl::vector<> >::startingPoint_t |
Optional vector defines a starting point.
typedef function_t::value_type roboptim::Problem< F, boost::mpl::vector<> >::value_type |
Import function's value_type type.
typedef function_t::vector_t roboptim::Problem< F, boost::mpl::vector<> >::vector_t |
Vector type.
|
explicit |
cost | cost function. |
|
explicit |
Copy constructor.
pb | problem to copy. |
|
explicit |
Copy constructor (convert from another class of problem).
pb | problem to copy and convert. |
|
virtual |
Virtual destructor.
One may want to inherit from Problem to provide extra information to a solver plugin.
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
constraint | the constraint that will be added |
interval | interval in which the constraint is satisfied |
scale | constraint scale |
C | constraint type (has to be in CLIST) |
std::runtime_error |
void roboptim::Problem< F, boost::mpl::vector<> >::addConstraint | ( | boost::shared_ptr< C > | constraint, |
intervals_t | intervals, | ||
scaling_t | scaling ) |
Add a constraint to the problem.
The constraint can be multidimensional.
constraint | the constraint that will be added |
intervals | interval vector in which the constraint is satisfied |
scaling | constraint scaling |
C | constraint type (has to be in CLIST) |
std::runtime_error |
Problem< F, boost::mpl::vector<> >::intervals_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentBounds | ( | ) |
Retrieve arguments bounds.
Arguments bounds define in which interval each argument is valid.
const Problem< F, boost::mpl::vector<> >::intervals_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentBounds | ( | ) | const |
Retrieve arguments bounds.
Arguments bounds define in which interval each argument is valid.
Problem< F, boost::mpl::vector<> >::names_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentNames | ( | ) |
Retrieve arguments names.
Arguments names define a name for each argument. This is particularly useful when logging data.
const Problem< F, boost::mpl::vector<> >::names_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentNames | ( | ) | const |
Retrieve arguments names.
Arguments names define a name for each argument. This is particularly useful when logging data.
const Problem< F, boost::mpl::vector<> >::scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales | ( | ) | const |
Retrieve arguments scaling (deprecated version).
Problem< F, boost::mpl::vector<> >::scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales | ( | ) |
Retrieve arguments scaling (deprecated version).
Problem< F, boost::mpl::vector<> >::scaling_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScaling | ( | ) |
Retrieve arguments scaling.
Arguments scaling define which scale factor is applied for each argument.
const Problem< F, boost::mpl::vector<> >::scaling_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScaling | ( | ) | const |
Retrieve arguments scaling.
Arguments scaling define which scale factor is applied for each argument.
const Problem< F, boost::mpl::vector<> >::intervalsVect_t & roboptim::Problem< F, boost::mpl::vector<> >::boundsVector | ( | ) | const |
Retrieve constraints bounds vector.
const Problem< F, boost::mpl::vector<> >::constraints_t & roboptim::Problem< F, boost::mpl::vector<> >::constraints | ( | ) | const |
Retrieve constraints.
const Problem< F, boost::mpl::vector<> >::function_t & roboptim::Problem< F, boost::mpl::vector<> >::function | ( | ) | const |
Retrieve cost function.
std::ostream & roboptim::Problem< F, boost::mpl::vector<> >::print | ( | std::ostream & | o | ) | const |
Display the problem on the specified output stream.
o | output stream used for display |
const Problem< F, boost::mpl::vector<> >::scalesVect_t & roboptim::Problem< F, boost::mpl::vector<> >::scalesVector | ( | ) | const |
Retrieve constraints scaling vector (deprecated version).
const Problem< F, boost::mpl::vector<> >::scalingVect_t & roboptim::Problem< F, boost::mpl::vector<> >::scalingVector | ( | ) | const |
Retrieve constraints scaling vector.
Problem< F, boost::mpl::vector<> >::startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint | ( | ) |
Set the initial guess.
std::runtime_error |
const Problem< F, boost::mpl::vector<> >::startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint | ( | ) | const |
Get the initial guess.
std::runtime_error |
|
friend |