Classes
ProblemFormulation

The elements to formulate the solver independent optimization problem. More...

Classes

class  ifopt::ConstraintSet
 A container holding a set of related constraints. More...
class  ifopt::CostTerm
 A container holding a single cost term. More...
class  ifopt::Problem
 A generic optimization problem with variables, costs and constraints. More...
class  ifopt::VariableSet
 A container holding a set of related optimization variables. More...

Detailed Description

The elements to formulate the solver independent optimization problem.

An optimization problem usually consists of multiple sets of independent variable- or constraint-sets. Each set represents a common concept, e.g. one set of variables represents spline coefficients, another footstep positions. Similarly, each constraint-set groups a set of similar constraints.

The Nonlinear Optimization Problem to solve is defined as:

find x0, x1 (variable-sets 0 & 1) s.t x0_lower <= x0 <= x0_upper (bounds on variable-set x0 R^2)

{x0,x1} = arg min c0(x0,x1)+c1(x0,x1) (cost-terms 0 and 1)

g0_lower < g0(x0,x1) < g0_upper (constraint-set 0 R^2) g1_lower < g1(x0,x1) < g0_upper (constraint-set 1 R^1)

#### GetValues() This structure allows a user to define each of these sets independently in separate classes and ifopt takes care of building the overall problem from these sets. This is implemented by * stacking all variable-sets to build the overall variable vector * summing all cost-terms to calculate the total cost * stacking all constraint-sets to build the overall constraint vector.

#### GetJacobian() Supplying derivative information greatly increases solution speed. ifopt allows to define the derivative of each cost-term/constraint-set with respect to each variable-set independently. This ensures that when the order of variable-sets changes in the overall vector, this derivative information is still valid. These "Jacobian blocks" must be supplied through ConstraintSet::FillJacobianBlock() and are then used to build the complete Jacobian for the cost and constraints.

ifopt.png


ifopt
Author(s): Alexander W. Winkler
autogenerated on Sat May 18 2019 02:43:08