qpOASES  3.2.1
An Implementation of the Online Active Set Strategy
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Options Class Reference

Manages all user-specified options for solving QPs. More...

#include <Options.hpp>

Public Member Functions

 Options ()
 
 Options (const Options &rhs)
 
 ~Options ()
 
Optionsoperator= (const Options &rhs)
 
returnValue setToDefault ()
 
returnValue setToReliable ()
 
returnValue setToMPC ()
 
returnValue setToFast ()
 
returnValue ensureConsistency ()
 
returnValue print () const
 

Public Attributes

PrintLevel printLevel
 
BooleanType enableRamping
 
BooleanType enableFarBounds
 
BooleanType enableFlippingBounds
 
BooleanType enableRegularisation
 
BooleanType enableFullLITests
 
BooleanType enableNZCTests
 
int_t enableDriftCorrection
 
int_t enableCholeskyRefactorisation
 
BooleanType enableEqualities
 
real_t terminationTolerance
 
real_t boundTolerance
 
real_t boundRelaxation
 
real_t epsNum
 
real_t epsDen
 
real_t maxPrimalJump
 
real_t maxDualJump
 
real_t initialRamping
 
real_t finalRamping
 
real_t initialFarBounds
 
real_t growFarBounds
 
SubjectToStatus initialStatusBounds
 
real_t epsFlipping
 
int_t numRegularisationSteps
 
real_t epsRegularisation
 
int_t numRefinementSteps
 
real_t epsIterRef
 
real_t epsLITests
 
real_t epsNZCTests
 
real_t rcondSMin
 
BooleanType enableInertiaCorrection
 
BooleanType enableDropInfeasibles
 
int_t dropBoundPriority
 
int_t dropEqConPriority
 
int_t dropIneqConPriority
 

Protected Member Functions

returnValue copy (const Options &rhs)
 

Detailed Description

This class manages all user-specified options used for solving quadratic programs.

Author
Hans Joachim Ferreau, Andreas Potschka, Christian Kirches
Version
3.2
Date
2007-2017

Constructor & Destructor Documentation

BEGIN_NAMESPACE_QPOASES Options::Options ( )

Default constructor.

References setToDefault().

Options::Options ( const Options rhs)

Copy constructor (deep copy).

Parameters
rhsRhs object.

References copy().

Options::~Options ( )

Destructor.

Member Function Documentation

returnValue Options::copy ( const Options rhs)
protected
returnValue Options::ensureConsistency ( )

Ensures that all options have consistent values by automatically adjusting inconsistent ones. Note: This routine cannot (and does not try to) ensure that values are set to reasonable values that make the QP solution work!

Returns
SUCCESSFUL_RETURN
RET_OPTIONS_ADJUSTED

References boundRelaxation, boundTolerance, BT_FALSE, BT_TRUE, enableCholeskyRefactorisation, enableDriftCorrection, EPS, epsFlipping, epsIterRef, epsLITests, epsNZCTests, epsRegularisation, finalRamping, growFarBounds, initialFarBounds, initialRamping, maxDualJump, maxPrimalJump, numRefinementSteps, numRegularisationSteps, RET_OPTIONS_ADJUSTED, SUCCESSFUL_RETURN, terminationTolerance, and THROWWARNING.

Referenced by QProblemB::setOptions().

Options & Options::operator= ( const Options rhs)

Assignment operator (deep copy).

Parameters
rhsRhs object.

References copy().

returnValue Options::print ( ) const
returnValue Options::setToDefault ( )
returnValue Options::setToFast ( )

Same as setToMPC( ), for ensuring backwards compatibility.

Returns
SUCCESSFUL_RETURN

References setToMPC().

returnValue Options::setToMPC ( )
returnValue Options::setToReliable ( )

Sets all options to values resulting in maximum reliabilty.

Returns
SUCCESSFUL_RETURN

References BT_TRUE, enableCholeskyRefactorisation, enableFullLITests, numRefinementSteps, setToDefault(), and SUCCESSFUL_RETURN.

Member Data Documentation

real_t Options::boundRelaxation

Offset for relaxing (constraints') bounds at beginning of an initial homotopy. It is also as initial value for far bounds.

Referenced by copy(), ensureConsistency(), print(), setToDefault(), QProblem::setupAuxiliaryQPbounds(), QProblemB::setupAuxiliaryQPbounds(), and QProblem::updateActivitiesForHotstart().

real_t Options::boundTolerance

Lower/upper (constraints') bound tolerance (an inequality constraint whose lower and upper bounds differ by less is regarded to be an equality constraint).

Referenced by copy(), ensureConsistency(), QProblemB::hotstart(), QProblem::hotstart(), QProblemB::obtainAuxiliaryWorkingSet(), QProblem::obtainAuxiliaryWorkingSet(), print(), setToDefault(), QProblemB::setupSubjectToType(), and QProblem::setupSubjectToType().

int_t Options::dropBoundPriority
int_t Options::dropEqConPriority
int_t Options::dropIneqConPriority
int_t Options::enableCholeskyRefactorisation

Specifies the frequency of full refactorisation of proj. Hessian (otherwise updates).

Referenced by copy(), ensureConsistency(), main(), print(), setToDefault(), setToReliable(), QProblem::solveQP(), and QProblemB::solveQP().

int_t Options::enableDriftCorrection

Specifies the frequency of drift corrections (0 = off).

Referenced by copy(), ensureConsistency(), print(), setToDefault(), setToMPC(), QProblem::solveQP(), and QProblemB::solveQP().

BooleanType Options::enableDropInfeasibles
BooleanType Options::enableEqualities

Specifies whether equalities shall be always treated as active constraints.

Referenced by copy(), print(), setToDefault(), setToMPC(), QProblemB::setupSubjectToType(), and QProblem::setupSubjectToType().

BooleanType Options::enableFarBounds
BooleanType Options::enableFlippingBounds
BooleanType Options::enableFullLITests

Specifies whether condition-hardened LI test shall be used or not.

Referenced by QProblem::addBound_checkLI(), QProblem::addConstraint_checkLI(), copy(), print(), setToDefault(), setToReliable(), and QProblem::setupAuxiliaryWorkingSet().

BooleanType Options::enableInertiaCorrection

Specifies whether the working set should be repaired when negative curvature is discovered during hotstart.

Referenced by copy(), print(), setToDefault(), SQProblemSchur::setupAuxiliaryQP(), and SQProblemSchur::setupAuxiliaryWorkingSet().

BooleanType Options::enableNZCTests
BooleanType Options::enableRamping
BooleanType Options::enableRegularisation

Specifies whether Hessian matrix shall be regularised in case semi-definiteness is detected.

Referenced by copy(), QProblemB::determineHessianType(), print(), QProblemB::regulariseHessian(), setToDefault(), setToMPC(), QProblemB::setupInitialCholesky(), and QProblem::setupInitialCholesky().

real_t Options::epsDen
real_t Options::epsFlipping

Tolerance of squared Cholesky diagonal factor which triggers flipping bound.

Referenced by copy(), ensureConsistency(), print(), QProblem::removeBound(), QProblemB::removeBound(), QProblem::removeConstraint(), and setToDefault().

real_t Options::epsIterRef
real_t Options::epsLITests
real_t Options::epsNum
real_t Options::epsNZCTests

Tolerance for nonzero curvature tests.

Referenced by copy(), ensureConsistency(), QProblem::ensureNonzeroCurvature(), print(), and setToDefault().

real_t Options::epsRegularisation
real_t Options::finalRamping

Final value for Ramping Strategy.

Referenced by copy(), ensureConsistency(), print(), QProblemB::QProblemB(), QProblemB::reset(), and setToDefault().

real_t Options::growFarBounds
real_t Options::initialFarBounds
real_t Options::initialRamping

Start value for Ramping Strategy.

Referenced by copy(), ensureConsistency(), print(), QProblemB::QProblemB(), QProblemB::reset(), and setToDefault().

SubjectToStatus Options::initialStatusBounds
real_t Options::maxDualJump
real_t Options::maxPrimalJump

Maximum allowed jump in primal variables in nonzero curvature tests.

Referenced by copy(), ensureConsistency(), QProblem::ensureNonzeroCurvature(), print(), and setToDefault().

int_t Options::numRefinementSteps
int_t Options::numRegularisationSteps
PrintLevel Options::printLevel
real_t Options::rcondSMin

Minimum reciprocal condition number of S before refactorization is triggered

Referenced by SQProblemSchur::addBound(), SQProblemSchur::addConstraint(), copy(), print(), SQProblemSchur::removeBound(), SQProblemSchur::removeConstraint(), and setToDefault().

real_t Options::terminationTolerance

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