Public Member Functions | Protected Member Functions | List of all members

User-interface to formulate and solve optimal control problems and static NLPs. More...

#include <optimization_algorithm.hpp>

Inheritance diagram for OptimizationAlgorithm:
Inheritance graph
[legend]

Public Member Functions

virtual returnValue init ()
 
OptimizationAlgorithmoperator= (const OptimizationAlgorithm &arg)
 
 OptimizationAlgorithm ()
 
 OptimizationAlgorithm (const OCP &ocp_)
 
 OptimizationAlgorithm (const OptimizationAlgorithm &arg)
 
virtual returnValue solve ()
 
virtual ~OptimizationAlgorithm ()
 
- Public Member Functions inherited from OptimizationAlgorithmBase
returnValue getAlgebraicStates (VariablesGrid &xa_) const
 
returnValue getAlgebraicStates (const char *fileName) const
 
returnValue getControls (VariablesGrid &p_) const
 
returnValue getControls (const char *fileName) const
 
returnValue getDifferentialStates (VariablesGrid &xd_) const
 
returnValue getDifferentialStates (const char *fileName) const
 
returnValue getDisturbances (VariablesGrid &w_) const
 
returnValue getDisturbances (const char *fileName) const
 
double getEndTime () const
 
virtual uint getNP () const
 
virtual uint getNU () const
 
virtual uint getNW () const
 
virtual uint getNX () const
 
virtual uint getNXA () const
 
double getObjectiveValue (const char *fileName) const
 
double getObjectiveValue () const
 
returnValue getParameters (VariablesGrid &u_) const
 
returnValue getParameters (DVector &u_) const
 
returnValue getParameters (const char *fileName) const
 
returnValue getSensitivitiesP (BlockMatrix &_sens) const
 
returnValue getSensitivitiesU (BlockMatrix &_sens) const
 
returnValue getSensitivitiesW (BlockMatrix &_sens) const
 
returnValue getSensitivitiesX (BlockMatrix &_sens) const
 
returnValue getSensitivitiesXA (BlockMatrix &_sens) const
 
double getStartTime () const
 
returnValue initializeAlgebraicStates (const char *fileName, BooleanType autoinit=BT_FALSE)
 
returnValue initializeAlgebraicStates (const VariablesGrid &xa_init_, BooleanType autoinit=BT_FALSE)
 
returnValue initializeControls (const char *fileName)
 
returnValue initializeControls (const VariablesGrid &p_init_)
 
returnValue initializeDifferentialStates (const char *fileName, BooleanType autoinit=BT_FALSE)
 
returnValue initializeDifferentialStates (const VariablesGrid &xd_init_, BooleanType autoinit=BT_FALSE)
 
returnValue initializeDisturbances (const char *fileName)
 
returnValue initializeDisturbances (const VariablesGrid &w_init_)
 
returnValue initializeParameters (const char *fileName)
 
returnValue initializeParameters (const VariablesGrid &u_init_)
 
OptimizationAlgorithmBaseoperator= (const OptimizationAlgorithmBase &arg)
 
 OptimizationAlgorithmBase ()
 
 OptimizationAlgorithmBase (const OCP &ocp_)
 
 OptimizationAlgorithmBase (const OptimizationAlgorithmBase &arg)
 
returnValue simulateStatesForInitialization ()
 
virtual ~OptimizationAlgorithmBase ()
 
- Public Member Functions inherited from UserInteraction
virtual int addPlotWindow (PlotWindow &_window)
 
virtual int operator<< (PlotWindow &_window)
 
virtual int operator<< (LogRecord &_record)
 
UserInteractionoperator= (const UserInteraction &rhs)
 
 UserInteraction ()
 
 UserInteraction (const UserInteraction &rhs)
 
virtual ~UserInteraction ()
 
- Public Member Functions inherited from Options
returnValue addOptionsList ()
 
returnValue ensureConsistency ()
 
returnValue ensureConsistency ()
 
returnValue get (OptionsName name, int &value) const
 
returnValue get (OptionsName name, double &value) const
 
returnValue get (OptionsName name, std::string &value) const
 
returnValue get (uint idx, OptionsName name, int &value) const
 
returnValue get (uint idx, OptionsName name, double &value) const
 
returnValue get (uint idx, OptionsName name, std::string &value) const
 
uint getNumOptionsLists () const
 
Options getOptions (uint idx) const
 
Optionsoperator= (const Options &rhs)
 
Optionsoperator= (const Options &rhs)
 
 Options ()
 
 Options ()
 
 Options (const Options &rhs)
 
 Options (const Options &rhs)
 
 Options ()
 
 Options (const OptionsList &_optionsList)
 
returnValue print () const
 
returnValue print () const
 
returnValue printOptionsList () const
 
returnValue printOptionsList (uint idx) const
 
returnValue set (OptionsName name, int value)
 
returnValue set (OptionsName name, double value)
 
returnValue set (OptionsName name, const std::string &value)
 
returnValue set (uint idx, OptionsName name, int value)
 
returnValue set (uint idx, OptionsName name, double value)
 
returnValue set (uint idx, OptionsName name, const std::string &value)
 
returnValue setOptions (const Options &arg)
 
returnValue setOptions (uint idx, const Options &arg)
 
returnValue setToDefault ()
 
returnValue setToDefault ()
 
returnValue setToFast ()
 
returnValue setToFast ()
 
returnValue setToMPC ()
 
returnValue setToReliable ()
 
returnValue setToReliable ()
 
 ~Options ()
 
 ~Options ()
 
virtual ~Options ()
 
- Public Member Functions inherited from Logging
int addLogRecord (LogRecord &record)
 
returnValue getAll (LogName _name, MatrixVariablesGrid &values) const
 
returnValue getFirst (LogName _name, DMatrix &firstValue) const
 
returnValue getFirst (LogName _name, VariablesGrid &firstValue) const
 
returnValue getLast (LogName _name, DMatrix &lastValue) const
 
returnValue getLast (LogName _name, VariablesGrid &lastValue) const
 
returnValue getLogRecord (LogRecord &_record) const
 
uint getNumLogRecords () const
 
 Logging ()
 
int operator<< (LogRecord &record)
 
returnValue printLoggingInfo () const
 
returnValue printNumDoubles () const
 
returnValue setAll (LogName _name, const MatrixVariablesGrid &values)
 
returnValue setLast (LogName _name, const DMatrix &value, double time=-INFTY)
 
returnValue setLast (LogName _name, VariablesGrid &value, double time=-INFTY)
 
returnValue updateLogRecord (LogRecord &_record) const
 
virtual ~Logging ()
 
- Public Member Functions inherited from Plotting
int addPlotWindow (PlotWindow &_window)
 
uint getNumPlotWindows () const
 
returnValue getPlotWindow (uint idx, PlotWindow &_window) const
 
returnValue getPlotWindow (PlotWindow &_window) const
 
int operator<< (PlotWindow &_window)
 
Plottingoperator= (const Plotting &rhs)
 
virtual returnValue plot (PlotFrequency _frequency=PLOT_IN_ANY_CASE)
 
 Plotting ()
 
 Plotting (const Plotting &rhs)
 
virtual returnValue replot (PlotFrequency _frequency=PLOT_IN_ANY_CASE)
 
virtual ~Plotting ()
 

Protected Member Functions

virtual returnValue allocateNlpSolver (Objective *F, DynamicDiscretization *G, Constraint *H)
 
virtual returnValue initializeNlpSolver (const OCPiterate &_userInit)
 
virtual returnValue initializeObjective (Objective *F)
 
virtual returnValue setupLogging ()
 
virtual returnValue setupOptions ()
 
- Protected Member Functions inherited from OptimizationAlgorithmBase
returnValue clear ()
 
virtual returnValue determineDimensions (Objective *const _objective, DifferentialEquation **const _differentialEquation, Constraint *const _constraint, uint &_nx, uint &_nxa, uint &_np, uint &_nu, uint &_nw) const
 
virtual returnValue extractOCPdata (Objective **objective, DifferentialEquation ***differentialEquation, Constraint **constraint, Grid &unionGrid)
 
returnValue init (UserInteraction *_userIteraction)
 
virtual returnValue initializeOCPiterate (Constraint *const _constraint, const Grid &_unionGrid, uint nx, uint nxa, uint np, uint nu, uint nw)
 
BooleanType isLinearQuadratic (Objective *F, DynamicDiscretization *G, Constraint *H) const
 
virtual returnValue setupDifferentialEquation (Objective *objective, DifferentialEquation **differentialEquation, Constraint *constraint, Grid unionGrid)
 
virtual returnValue setupDynamicDiscretization (UserInteraction *_userIteraction, Objective *objective, DifferentialEquation **differentialEquation, Constraint *constraint, Grid unionGrid, DynamicDiscretization **dynamicDiscretization)
 
virtual returnValue setupObjective (Objective *objective, DifferentialEquation **differentialEquation, Constraint *constraint, Grid unionGrid)
 
- Protected Member Functions inherited from UserInteraction
virtual returnValue getPlotDataFromMemberLoggings (PlotWindow &_window) const
 
BlockStatus getStatus () const
 
returnValue setStatus (BlockStatus _status)
 
- Protected Member Functions inherited from Options
returnValue addOption (OptionsName name, int value)
 
returnValue addOption (OptionsName name, double value)
 
returnValue addOption (OptionsName name, const std::string &value)
 
returnValue addOption (uint idx, OptionsName name, int value)
 
returnValue addOption (uint idx, OptionsName name, double value)
 
returnValue addOption (uint idx, OptionsName name, const std::string &value)
 
returnValue clearOptionsList ()
 
returnValue copy (const Options &rhs)
 
returnValue copy (const Options &rhs)
 
returnValue declareOptionsUnchanged ()
 
returnValue declareOptionsUnchanged (uint idx)
 
BooleanType haveOptionsChanged () const
 
BooleanType haveOptionsChanged (uint idx) const
 

Additional Inherited Members

- Public Attributes inherited from Options
real_t boundRelaxation
 
real_t boundTolerance
 
int dropBoundPriority
 
int_t dropBoundPriority
 
int dropEqConPriority
 
int_t dropEqConPriority
 
int dropIneqConPriority
 
int_t dropIneqConPriority
 
int enableCholeskyRefactorisation
 
int_t enableCholeskyRefactorisation
 
int enableDriftCorrection
 
int_t enableDriftCorrection
 
BooleanType enableDropInfeasibles
 
BooleanType enableEqualities
 
BooleanType enableFarBounds
 
BooleanType enableFlippingBounds
 
BooleanType enableFullLITests
 
BooleanType enableInertiaCorrection
 
BooleanType enableNZCTests
 
BooleanType enableRamping
 
BooleanType enableRegularisation
 
real_t epsDen
 
real_t epsFlipping
 
real_t epsIterRef
 
real_t epsLITests
 
real_t epsNum
 
real_t epsNZCTests
 
real_t epsRegularisation
 
real_t finalRamping
 
real_t growFarBounds
 
real_t initialFarBounds
 
real_t initialRamping
 
SubjectToStatus initialStatusBounds
 
real_t maxDualJump
 
real_t maxPrimalJump
 
int numRefinementSteps
 
int_t numRefinementSteps
 
int numRegularisationSteps
 
int_t numRegularisationSteps
 
PrintLevel printLevel
 
real_t rcondSMin
 
real_t terminationTolerance
 
- Protected Attributes inherited from OptimizationAlgorithmBase
OCPiterate iter
 
NLPsolvernlpSolver
 
OCPocp
 
OCPiterate userInit
 
- Protected Attributes inherited from UserInteraction
BlockStatus status
 
- Protected Attributes inherited from Options
std::vector< OptionsListlists
 
- Protected Attributes inherited from Logging
std::vector< LogRecordlogCollection
 
int logIdx
 
- Protected Attributes inherited from Plotting
PlotCollection plotCollection
 

Detailed Description

User-interface to formulate and solve optimal control problems and static NLPs.

The class OptimizationAlgorithm serves as a user-interface to formulate and solve optimal control problems and static nonlinear programming (NLP) problems.

Note
Time is normalised to [0,1] when doing time optimal control.
Author
Boris Houska, Hans Joachim Ferreau

Definition at line 54 of file optimization_algorithm.hpp.

Constructor & Destructor Documentation

BEGIN_NAMESPACE_ACADO OptimizationAlgorithm::OptimizationAlgorithm ( )

Default constructor.

Definition at line 46 of file optimization_algorithm.cpp.

OptimizationAlgorithm::OptimizationAlgorithm ( const OCP ocp_)

Default constructor.

Definition at line 55 of file optimization_algorithm.cpp.

OptimizationAlgorithm::OptimizationAlgorithm ( const OptimizationAlgorithm arg)

Copy constructor (deep copy).

Definition at line 62 of file optimization_algorithm.cpp.

OptimizationAlgorithm::~OptimizationAlgorithm ( )
virtual

Destructor.

Definition at line 68 of file optimization_algorithm.cpp.

Member Function Documentation

returnValue OptimizationAlgorithm::allocateNlpSolver ( Objective F,
DynamicDiscretization G,
Constraint H 
)
protectedvirtual

Implements OptimizationAlgorithmBase.

Definition at line 203 of file optimization_algorithm.cpp.

returnValue OptimizationAlgorithm::init ( )
virtual

Initializes the (internal) optimization algorithm part of the RealTimeAlgorithm.

Returns
SUCCESSFUL_RETURN,
RET_OPTALG_INIT_FAILED

Definition at line 86 of file optimization_algorithm.cpp.

returnValue OptimizationAlgorithm::initializeNlpSolver ( const OCPiterate _userInit)
protectedvirtual
returnValue OptimizationAlgorithm::initializeObjective ( Objective F)
protectedvirtual
OptimizationAlgorithm & OptimizationAlgorithm::operator= ( const OptimizationAlgorithm arg)

Assignment operator (deep copy).

Definition at line 74 of file optimization_algorithm.cpp.

returnValue OptimizationAlgorithm::setupLogging ( )
protectedvirtual

Sets-up default logging information.

Returns
SUCCESSFUL_RETURN

Reimplemented from Logging.

Definition at line 191 of file optimization_algorithm.cpp.

returnValue OptimizationAlgorithm::setupOptions ( )
protectedvirtual

Sets-up default options.

Returns
SUCCESSFUL_RETURN

Reimplemented from Options.

Reimplemented in MultiObjectiveAlgorithm.

Definition at line 138 of file optimization_algorithm.cpp.

returnValue OptimizationAlgorithm::solve ( )
virtual

Starts execution.

Reimplemented in MultiObjectiveAlgorithm.

Definition at line 100 of file optimization_algorithm.cpp.


The documentation for this class was generated from the following files:


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Mon Jun 10 2019 12:35:25