Optimization problems

Optimization problem without constraints. More...

Classes

class  roboptim::Problem< F, boost::mpl::vector<> >
class  roboptim::Problem< F, CLIST >
class  roboptim::ResultWithWarnings
 Represents the solution of an optimization problem when errors occurred during the solving process. More...
class  roboptim::Result
 Represents the solution of an optimization problem. More...
class  roboptim::SolverError
 Base exception class for solving errors. More...
class  roboptim::SolverFactory< T >
 Define a solver factory that instanciate the plug-ins. More...
struct  roboptim::StateParameter< F >
 Solver state parameters type. More...
class  roboptim::SolverState< P >
 State of the solver. More...
class  roboptim::SolverWarning
 Exception used for non-critical errors during optimization. More...
struct  roboptim::Parameter
 Solver parameter type. More...
class  roboptim::Solver< F, C >
 Solver for a specific problem class. More...

Typedefs

typedef boost::mpl::vector roboptim::Problem< F, boost::mpl::vector<> >::constraintsList_t
typedef F roboptim::Problem< F, boost::mpl::vector<> >::function_t
 Function type.
typedef function_t::value_type roboptim::Problem< F, boost::mpl::vector<> >::value_type
typedef function_t::vector_t roboptim::Problem< F, boost::mpl::vector<> >::vector_t
 Vector type.
typedef function_t::argument_t roboptim::Problem< F, boost::mpl::vector<> >::argument_t
 Argument type.
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::interval_t roboptim::Problem< F, boost::mpl::vector<> >::interval_t
typedef function_t::intervals_t roboptim::Problem< F, boost::mpl::vector<> >::intervals_t
typedef std::vector< value_type > roboptim::Problem< F, boost::mpl::vector<> >::scaling_t
 Scaling vector.
typedef scaling_t scales_t roboptim::Problem< F, boost::mpl::vector<> >::ROBOPTIM_CORE_DEPRECATED
 Scaling vector (deprecated typedef).
typedef function_t::names_t roboptim::Problem< F, boost::mpl::vector<> >::names_t
 Vector of names (e.g. for arguments).
typedef detail::list_converter
< CLIST >::type 
roboptim::Problem< F, CLIST >::constraintsList_t
 Constraints types list.
typedef F roboptim::Problem< F, CLIST >::function_t
 Function type.
typedef
detail::shared_ptr_variant
< constraintsList_t >::type 
roboptim::Problem< F, CLIST >::constraint_t
 Constraint's type.
typedef function_t::value_type roboptim::Problem< F, CLIST >::value_type
 Import function's value_type type.
typedef function_t::vector_t roboptim::Problem< F, CLIST >::vector_t
 Vector type.
typedef function_t::argument_t roboptim::Problem< F, CLIST >::argument_t
 Argument type.
typedef function_t::size_type roboptim::Problem< F, CLIST >::size_type
 Size type.
typedef std::vector< constraint_t > roboptim::Problem< F, CLIST >::constraints_t
 Constraints are represented as a vector of constraints.
typedef boost::optional
< argument_t > 
roboptim::Problem< F, CLIST >::startingPoint_t
 Optional vector defines a starting point.
typedef function_t::interval_t roboptim::Problem< F, CLIST >::interval_t
 Interval type (e.g. for bounds).
typedef function_t::intervals_t roboptim::Problem< F, CLIST >::intervals_t
 Intervals type.
typedef std::vector< value_type > roboptim::Problem< F, CLIST >::scaling_t
 Scaling vector.
typedef scaling_t scales_t roboptim::Problem< F, CLIST >::ROBOPTIM_CORE_DEPRECATED
 Scaling vector (deprecated typedef)
typedef function_t::names_t roboptim::Problem< F, CLIST >::names_t
 Vector of names (e.g. for arguments).
typedef std::vector< intervals_t > roboptim::Problem< F, CLIST >::intervalsVect_t
 Vector of interval vectors.
typedef std::vector< scaling_t > roboptim::Problem< F, CLIST >::scalingVect_t
 Vector of scaling vectors.
typedef scalingVect_t scalesVect_t roboptim::Problem< F, CLIST >::ROBOPTIM_CORE_DEPRECATED
 Vector of scaling vectors (deprecated typedef).

Functions

std::ostream & roboptim::Problem< F, boost::mpl::vector<> >::print (std::ostream &o) const
 Display the problem on the specified output stream.
std::ostream & roboptim::Problem< F, CLIST >::print (std::ostream &o) const
 Display the problem on the specified output stream.
template<typename F >
std::ostream & roboptim::operator<< (std::ostream &o, const Problem< F, boost::mpl::vector<> > &pb)
 Override operator<< to handle problem display.
template<typename F , typename CLIST >
std::ostream & roboptim::operator<< (std::ostream &o, const Problem< F, CLIST > &pb)
 Override operator<< to handle problem display.
template<typename F >
std::ostream & roboptim::operator<< (std::ostream &o, const StateParameter< F > &parameter)
 Override operator<< to display ``parameters'' objects.
template<typename P >
std::ostream & roboptim::operator<< (std::ostream &o, const SolverState< P > &state)
 Override operator<< to display ``parameters'' objects.
ROBOPTIM_DLLAPI std::ostream & roboptim::operator<< (std::ostream &o, const Parameter &parameter)
 Override operator<< to display ``parameters'' objects.

Friends

class roboptim::Problem< F, boost::mpl::vector<> >::Problem
class roboptim::Problem< F, CLIST >::Problem

Constructors and destructors.

 roboptim::Problem< F, boost::mpl::vector<> >::Problem (const function_t &)
 roboptim::Problem< F, boost::mpl::vector<> >::Problem (const Problem< F, boost::mpl::vector<> > &)
 Copy constructor.
template<typename F_ >
 roboptim::Problem< F, boost::mpl::vector<> >::Problem (const Problem< F_, boost::mpl::vector<> > &)
 Copy constructor (convert from another class of problem).
virtual roboptim::Problem< F, boost::mpl::vector<> >::~Problem ()
 Virtual destructor.

Cost function.

const function_t & roboptim::Problem< F, boost::mpl::vector<> >::function () const
 Retrieve cost function.
intervals_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentBounds ()
 Retrieve arguments bounds.
const intervals_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentBounds () const
 Retrieve arguments bounds.
scaling_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScaling ()
 Retrieve arguments scaling.
const scaling_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScaling () const
 Retrieve arguments scaling.
scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales () ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
const scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales () const ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
names_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentNames ()
 Retrieve arguments names.
const names_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentNames () const
 Retrieve arguments names.

Starting point (initial guess).

startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint ()
 Set the initial guess.
const startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint () const
 Get the initial guess.

Constructors and destructors.

 roboptim::Problem< F, CLIST >::Problem (const function_t &cost)
 roboptim::Problem< F, CLIST >::Problem (const Problem< F, CLIST > &pb)
 Copy constructor.
template<typename F_ , typename CLIST_ >
 roboptim::Problem< F, CLIST >::Problem (const Problem< F_, CLIST_ > &pb)
 Copy constructor (convert from another class of problem).
virtual roboptim::Problem< F, CLIST >::~Problem ()
 Virtual destructor.

Cost function.

const function_t & roboptim::Problem< F, CLIST >::function () const
 Retrieve cost function.
intervals_t & roboptim::Problem< F, CLIST >::argumentBounds ()
 Retrieve arguments bounds.
const intervals_t & roboptim::Problem< F, CLIST >::argumentBounds () const
 Retrieve arguments bounds.
scaling_t & roboptim::Problem< F, CLIST >::argumentScaling ()
 Retrieve arguments scaling.
const scaling_t & roboptim::Problem< F, CLIST >::argumentScaling () const
 Retrieve arguments scaling.
scales_t & roboptim::Problem< F, CLIST >::argumentScales () ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
const scales_t & roboptim::Problem< F, CLIST >::argumentScales () const ROBOPTIM_CORE_DEPRECATED
 Retrieve arguments scaling (deprecated version).
names_t & roboptim::Problem< F, CLIST >::argumentNames ()
 Retrieve arguments names.
const names_t & roboptim::Problem< F, CLIST >::argumentNames () const
 Retrieve arguments names.

Constraints.

const constraints_t & roboptim::Problem< F, CLIST >::constraints () const
 Retrieve constraints.
template<typename C >
void roboptim::Problem< F, CLIST >::addConstraint (boost::shared_ptr< C > constraint, interval_t interval, value_type scale=1.)
 Add a constraint to the problem.
template<typename C >
void roboptim::Problem< F, CLIST >::addConstraint (boost::shared_ptr< C > constraint, intervals_t intervals, scaling_t scaling)
 Add a constraint to the problem.
const intervalsVect_t & roboptim::Problem< F, CLIST >::boundsVector () const
 Retrieve constraints bounds vector.
const scalingVect_t & roboptim::Problem< F, CLIST >::scalingVector () const
 Retrieve constraints scaling vector.
const scalesVect_t & roboptim::Problem< F, CLIST >::scalesVector () const ROBOPTIM_CORE_DEPRECATED
 Retrieve constraints scaling vector (deprecated version).

Starting point (initial guess).

startingPoint_t & roboptim::Problem< F, CLIST >::startingPoint ()
 Set the initial guess.
const startingPoint_t & roboptim::Problem< F, CLIST >::startingPoint () const
 Get the initial guess.

Detailed Description

Optimization problem without constraints.

Optimization problem.

An optimization problem is defined as:

The goal of the optimization process is finding a point which minimizes the cost function

To use the class, one has to instantiate a problem with a reference to a cost function. method: a reference to a function and an interval is needed.

The cost function is immutable.

Unlike other classes which just copy functions, pointers are used here in order to allow sub-classes of constraints to be inserted in the problem. For instance, a twice derivable function can be inserted in a problem which expects a derivable function.

Template Parameters:
Ffunction type

An optimization problem is defined as:

The goal of the optimization process is finding a point which minimizes the cost function and which respects the constraints (i.e. the result of some functions is inside of specific interval).

To use the class, one has to instantiate a problem with a reference to a cost function. Then, constraints can be added through the addConstraint method: a reference to a function and an interval is needed.

The cost function is immutable.

Constraints are stored as a Boost.Variant of smart pointers (i.e. more precisely using a boost::shared_ptr) representing all the different possibles constraint types.

It is recommended to add a constraint using the following syntax:

 problem.addConstraint<C> (boost::make_shared<MyFunction> (...), ...);

where C is the constraint type and MyFunction the function type.

Unlike other classes which just copy functions, pointers are used here in order to allow sub-classes of constraints to be inserted in the problem. For instance, a twice-differentiable function can be inserted in a problem which expects a differentiable function.

Template Parameters:
Ffunction type
CLISTtype list satisfying MPL's sequence concept

Typedef Documentation

template<typename F >
typedef function_t::argument_t roboptim::Problem< F, boost::mpl::vector<> >::argument_t

Argument type.

template<typename F, typename CLIST>
typedef function_t::argument_t roboptim::Problem< F, CLIST >::argument_t

Argument type.

template<typename F, typename CLIST>
typedef detail::shared_ptr_variant<constraintsList_t>::type roboptim::Problem< F, CLIST >::constraint_t

Constraint's type.

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

template<typename F, typename CLIST>
typedef std::vector<constraint_t> roboptim::Problem< F, CLIST >::constraints_t

Constraints are represented as a vector of constraints.

template<typename F >
typedef boost::mpl::vector roboptim::Problem< F, boost::mpl::vector<> >::constraintsList_t
template<typename F, typename CLIST>
typedef detail::list_converter<CLIST>::type roboptim::Problem< F, CLIST >::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.).

template<typename F >
typedef F roboptim::Problem< F, boost::mpl::vector<> >::function_t

Function type.

This has to be either Function or one of its sub-classes.

template<typename F, typename CLIST>
typedef F roboptim::Problem< F, CLIST >::function_t

Function type.

This has to be either Function or one of its sub-classes.

template<typename F >
typedef function_t::interval_t roboptim::Problem< F, boost::mpl::vector<> >::interval_t
template<typename F, typename CLIST>
typedef function_t::interval_t roboptim::Problem< F, CLIST >::interval_t

Interval type (e.g. for bounds).

template<typename F >
typedef function_t::intervals_t roboptim::Problem< F, boost::mpl::vector<> >::intervals_t
template<typename F, typename CLIST>
typedef function_t::intervals_t roboptim::Problem< F, CLIST >::intervals_t

Intervals type.

template<typename F, typename CLIST>
typedef std::vector<intervals_t> roboptim::Problem< F, CLIST >::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.

template<typename F >
typedef function_t::names_t roboptim::Problem< F, boost::mpl::vector<> >::names_t

Vector of names (e.g. for arguments).

template<typename F, typename CLIST>
typedef function_t::names_t roboptim::Problem< F, CLIST >::names_t

Vector of names (e.g. for arguments).

template<typename F >
typedef scaling_t scales_t roboptim::Problem< F, boost::mpl::vector<> >::ROBOPTIM_CORE_DEPRECATED

Scaling vector (deprecated typedef).

template<typename F, typename CLIST>
typedef scaling_t scales_t roboptim::Problem< F, CLIST >::ROBOPTIM_CORE_DEPRECATED

Scaling vector (deprecated typedef)

template<typename F, typename CLIST>
typedef scalingVect_t scalesVect_t roboptim::Problem< F, CLIST >::ROBOPTIM_CORE_DEPRECATED

Vector of scaling vectors (deprecated typedef).

template<typename F >
typedef std::vector<value_type> roboptim::Problem< F, boost::mpl::vector<> >::scaling_t

Scaling vector.

template<typename F, typename CLIST>
typedef std::vector<value_type> roboptim::Problem< F, CLIST >::scaling_t

Scaling vector.

template<typename F, typename CLIST>
typedef std::vector<scaling_t> roboptim::Problem< F, CLIST >::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.

template<typename F >
typedef function_t::size_type roboptim::Problem< F, boost::mpl::vector<> >::size_type

Size type.

template<typename F, typename CLIST>
typedef function_t::size_type roboptim::Problem< F, CLIST >::size_type

Size type.

template<typename F >
typedef boost::optional<argument_t> roboptim::Problem< F, boost::mpl::vector<> >::startingPoint_t

Optional vector defines a starting point.

template<typename F, typename CLIST>
typedef boost::optional<argument_t> roboptim::Problem< F, CLIST >::startingPoint_t

Optional vector defines a starting point.

template<typename F >
typedef function_t::value_type roboptim::Problem< F, boost::mpl::vector<> >::value_type
template<typename F, typename CLIST>
typedef function_t::value_type roboptim::Problem< F, CLIST >::value_type

Import function's value_type type.

template<typename F >
typedef function_t::vector_t roboptim::Problem< F, boost::mpl::vector<> >::vector_t

Vector type.

template<typename F, typename CLIST>
typedef function_t::vector_t roboptim::Problem< F, CLIST >::vector_t

Vector type.


Function Documentation

template<typename F , typename CLIST >
template<typename C >
void roboptim::Problem< F, CLIST >::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

References ASSERT_CONSTRAINT_TYPE.

template<typename F , typename CLIST >
template<typename C >
void roboptim::Problem< F, CLIST >::addConstraint ( boost::shared_ptr< C >  constraint,
intervals_t  intervals,
scaling_t  scaling 
)

Add a constraint to the problem.

The constraint can be multidimensional.

Parameters:
constraintthe constraint that will be added
intervalsinterval vector in which the constraint is satisfied
scalingconstraint scaling
Template Parameters:
Cconstraint type (has to be in CLIST)
Exceptions:
std::runtime_error

References ASSERT_CONSTRAINT_TYPE, and ROBOPTIM_DEBUG_ONLY.

template<typename F >
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.

Returns:
arguments bounds
template<typename F >
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.

Returns:
arguments bounds
template<typename F , typename CLIST >
Problem< F, CLIST >::intervals_t & roboptim::Problem< F, CLIST >::argumentBounds ( )

Retrieve arguments bounds.

Arguments bounds define in which interval each argument is valid.

Returns:
arguments bounds

Referenced by roboptim::Problem< F, CLIST >::print().

template<typename F , typename CLIST >
const Problem< F, CLIST >::intervals_t & roboptim::Problem< F, CLIST >::argumentBounds ( ) const

Retrieve arguments bounds.

Arguments bounds define in which interval each argument is valid.

Returns:
arguments bounds
template<typename F >
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. Note: memory is not allocated by default since this is optional.

Returns:
arguments names
template<typename F >
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. Note: memory is not allocated by default since this is optional.

Returns:
arguments names
template<typename F , typename CLIST >
Problem< F, CLIST >::names_t & roboptim::Problem< F, CLIST >::argumentNames ( )

Retrieve arguments names.

Arguments names define a name for each argument. This is particularly useful when logging data.

Returns:
arguments names

Referenced by roboptim::Problem< F, CLIST >::print().

template<typename F , typename CLIST >
const Problem< F, CLIST >::names_t & roboptim::Problem< F, CLIST >::argumentNames ( ) const

Retrieve arguments names.

Arguments names define a name for each argument. This is particularly useful when logging data.

Returns:
arguments names
template<typename F >
Problem< F, boost::mpl::vector<> >::scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales ( )

Retrieve arguments scaling (deprecated version).

template<typename F >
const Problem< F, boost::mpl::vector<> >::scales_t & roboptim::Problem< F, boost::mpl::vector<> >::argumentScales ( ) const

Retrieve arguments scaling (deprecated version).

template<typename F , typename CLIST >
Problem< F, CLIST >::scales_t & roboptim::Problem< F, CLIST >::argumentScales ( )

Retrieve arguments scaling (deprecated version).

References roboptim::Problem< F, CLIST >::argumentScaling().

template<typename F , typename CLIST >
const Problem< F, CLIST >::scales_t & roboptim::Problem< F, CLIST >::argumentScales ( ) const

Retrieve arguments scaling (deprecated version).

References roboptim::Problem< F, CLIST >::argumentScaling().

template<typename F >
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.

Returns:
arguments scaling
template<typename F >
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.

Returns:
arguments scaling
template<typename F , typename CLIST >
Problem< F, CLIST >::scaling_t & roboptim::Problem< F, CLIST >::argumentScaling ( )

Retrieve arguments scaling.

Arguments scaling define which scale factor is applied for each argument.

Returns:
arguments scaling

Referenced by roboptim::Problem< F, CLIST >::argumentScales(), and roboptim::Problem< F, CLIST >::print().

template<typename F , typename CLIST >
const Problem< F, CLIST >::scaling_t & roboptim::Problem< F, CLIST >::argumentScaling ( ) const

Retrieve arguments scaling.

Arguments scaling define which scale factor is applied for each argument.

Returns:
arguments scaling
template<typename F , typename CLIST >
const Problem< F, CLIST >::intervalsVect_t & roboptim::Problem< F, CLIST >::boundsVector ( ) const

Retrieve constraints bounds vector.

Returns:
constraints bounds vector
template<typename F , typename CLIST >
const Problem< F, CLIST >::constraints_t & roboptim::Problem< F, CLIST >::constraints ( ) const

Retrieve constraints.

Returns:
constraints

Referenced by roboptim::Problem< F, CLIST >::print().

template<typename F >
const Problem< F, boost::mpl::vector<> >::function_t & roboptim::Problem< F, boost::mpl::vector<> >::function ( ) const

Retrieve cost function.

Returns:
cost function
template<typename F , typename CLIST >
const Problem< F, CLIST >::function_t & roboptim::Problem< F, CLIST >::function ( ) const

Retrieve cost function.

Returns:
cost function
template<typename F >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const StateParameter< F > &  parameter 
)

Override operator<< to display ``parameters'' objects.

Parameters:
ooutput stream used for display
parameterparameter to display
Template Parameters:
Ffunction type.
Returns:
output stream
template<typename P >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const SolverState< P > &  state 
)

Override operator<< to display ``parameters'' objects.

Parameters:
ooutput stream used for display
statesolver state to display
Template Parameters:
Pproblem type.
Returns:
output stream
std::ostream & roboptim::operator<< ( std::ostream &  o,
const Parameter &  parameter 
)

Override operator<< to display ``parameters'' objects.

Parameters:
ooutput stream used for display
nsNoSolution object, ignored
Returns:
output stream

References roboptim::Parameter::description, and roboptim::Parameter::value.

template<typename F >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const Problem< F, boost::mpl::vector<> > &  pb 
)

Override operator<< to handle problem display.

Parameters:
ooutput stream used for display
pbproblem to be displayed
Returns:
output stream
template<typename F , typename CLIST >
std::ostream & roboptim::operator<< ( std::ostream &  o,
const Problem< F, CLIST > &  pb 
)

Override operator<< to handle problem display.

Parameters:
ooutput stream used for display
pbproblem to be displayed
Returns:
output stream
template<typename F >
std::ostream & roboptim::Problem< F, boost::mpl::vector<> >::print ( std::ostream &  o) const

Display the problem on the specified output stream.

Parameters:
ooutput stream used for display
Returns:
output stream

References roboptim::decindent(), roboptim::fg::fail(), roboptim::iendl(), roboptim::incendl(), roboptim::fg::ok(), roboptim::fg::reset(), and roboptim::fg::warn().

template<typename F , typename CLIST >
std::ostream & roboptim::Problem< F, CLIST >::print ( std::ostream &  o) const
template<typename F >
roboptim::Problem< F, boost::mpl::vector<> >::Problem ( const function_t f) [explicit]
Precondition:
costfunction $\mathbb{R}^n \rightarrow \mathbb{R}$
template<typename F >
roboptim::Problem< F, boost::mpl::vector<> >::Problem ( const Problem< F, boost::mpl::vector<> > &  pb) [explicit]

Copy constructor.

template<typename F >
template<typename F_ >
roboptim::Problem< F, boost::mpl::vector<> >::Problem ( const Problem< F_, boost::mpl::vector<> > &  pb) [explicit]

Copy constructor (convert from another class of problem).

template<typename F , typename CLIST >
roboptim::Problem< F, CLIST >::Problem ( const function_t cost) [explicit]
Precondition:
costfunction $\mathbb{R}^n \rightarrow \mathbb{R}$
Parameters:
costcost function.
template<typename F , typename CLIST >
roboptim::Problem< F, CLIST >::Problem ( const Problem< F, CLIST > &  pb) [explicit]

Copy constructor.

Parameters:
pbproblem to copy.
template<typename F , typename CLIST >
template<typename F_ , typename CLIST_ >
roboptim::Problem< F, CLIST >::Problem ( const Problem< F_, CLIST_ > &  pb) [explicit]

Copy constructor (convert from another class of problem).

Parameters:
pbproblem to copy and convert.
template<typename F , typename CLIST >
const Problem< F, CLIST >::scalesVect_t & roboptim::Problem< F, CLIST >::scalesVector ( ) const

Retrieve constraints scaling vector (deprecated version).

References roboptim::Problem< F, CLIST >::scalingVector().

template<typename F , typename CLIST >
const Problem< F, CLIST >::scalingVect_t & roboptim::Problem< F, CLIST >::scalingVector ( ) const

Retrieve constraints scaling vector.

Returns:
constraints scaling vector

Referenced by roboptim::Problem< F, CLIST >::scalesVector().

template<typename F >
Problem< F, boost::mpl::vector<> >::startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint ( )

Set the initial guess.

Returns:
reference on the initial guess
Exceptions:
std::runtime_error
template<typename F >
const Problem< F, boost::mpl::vector<> >::startingPoint_t & roboptim::Problem< F, boost::mpl::vector<> >::startingPoint ( ) const

Get the initial guess.

Returns:
reference on the initial guess
Exceptions:
std::runtime_error
template<typename F , typename CLIST >
Problem< F, CLIST >::startingPoint_t & roboptim::Problem< F, CLIST >::startingPoint ( )

Set the initial guess.

Returns:
reference on the initial guess
Exceptions:
std::runtime_error
template<typename F , typename CLIST >
const Problem< F, CLIST >::startingPoint_t & roboptim::Problem< F, CLIST >::startingPoint ( ) const

Get the initial guess.

Returns:
reference on the initial guess
Exceptions:
std::runtime_error
template<typename F >
roboptim::Problem< F, boost::mpl::vector<> >::~Problem ( ) [virtual]

Virtual destructor.

One may want to inherit from Problem to provide extra information to a solver plugin.

template<typename F , typename CLIST >
roboptim::Problem< F, CLIST >::~Problem ( ) [virtual]

Virtual destructor.

One may want to inherit from Problem to provide extra information to a solver plugin.


Friends

template<typename F >
friend class Problem [friend]
template<typename F, typename CLIST>
friend class Problem [friend]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines