Implements the online active set strategy for QPs with varying matrices. More...
#include <SQProblem.hpp>
Public Member Functions | |
returnValue | hotstart (const real_t *const H_new, const real_t *const g_new, const real_t *const A_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (SymmetricMatrix *H_new, const real_t *const g_new, Matrix *A_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const H_new, const real_t *const g_new, const real_t *const A_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (SymmetricMatrix *H_new, const real_t *const g_new, Matrix *A_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
virtual SQProblem & | operator= (const SQProblem &rhs) |
SQProblem & | operator= (const SQProblem &rhs) |
SQProblem () | |
SQProblem () | |
SQProblem (int_t _nV, int_t _nC, HessianType _hessianType=HST_UNKNOWN) | |
SQProblem (int _nV, int _nC, HessianType _hessianType=HST_UNKNOWN) | |
SQProblem (const SQProblem &rhs) | |
SQProblem (const SQProblem &rhs) | |
virtual | ~SQProblem () |
virtual | ~SQProblem () |
Public Member Functions inherited from QProblem | |
returnValue | getA (real_t *const _A) const |
returnValue | getA (int number, real_t *const row) const |
returnValue | getA (real_t *const _A) const |
returnValue | getA (int number, real_t *const row) const |
returnValue | getConstraints (Constraints *const _constraints) const |
returnValue | getConstraints (Constraints *const _constraints) const |
returnValue | getConstraints (Constraints &_constraints) const |
returnValue | getConstraints (Constraints &_constraints) const |
returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getDualSolution (real_t *const yOpt) const |
virtual returnValue | getDualSolution (real_t *const yOpt) const |
virtual returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getFreeVariablesFlags (BooleanType *varIsFree) |
returnValue | getLBA (real_t *const _lbA) const |
returnValue | getLBA (int number, real_t &value) const |
returnValue | getLBA (real_t *const _lbA) const |
returnValue | getLBA (int number, real_t &value) const |
int | getNAC () |
int | getNAC () |
int_t | getNAC () const |
int | getNAC () const |
int | getNC () const |
int | getNC () const |
int_t | getNC () const |
int | getNC () const |
int | getNEC () const |
int | getNEC () const |
int_t | getNEC () const |
int | getNEC () const |
int | getNIAC () |
int | getNIAC () |
int_t | getNIAC () const |
int | getNIAC () const |
int | getNZ () |
int | getNZ () |
virtual int_t | getNZ () const |
virtual int | getNZ () const |
returnValue | getUBA (real_t *const _ubA) const |
returnValue | getUBA (int number, real_t &value) const |
returnValue | getUBA (real_t *const _ubA) const |
returnValue | getUBA (int number, real_t &value) const |
virtual returnValue | getWorkingSet (real_t *workingSet) |
virtual returnValue | getWorkingSetBounds (real_t *workingSetB) |
virtual returnValue | getWorkingSetConstraints (real_t *workingSetC) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const real_t *const _R=0) |
returnValue | init (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const real_t *const _R=0) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const Constraints *const guessedConstraints=0, const char *const R_file=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
QProblem & | operator= (const QProblem &rhs) |
QProblem & | operator= (const QProblem &rhs) |
virtual QProblem & | operator= (const QProblem &rhs) |
QProblem & | operator= (const QProblem &rhs) |
virtual returnValue | printProperties () |
virtual returnValue | printProperties () |
QProblem () | |
QProblem () | |
QProblem (int _nV, int _nC) | |
QProblem (int _nV, int _nC) | |
QProblem (const QProblem &rhs) | |
QProblem () | |
QProblem () | |
QProblem (const QProblem &rhs) | |
QProblem (int_t _nV, int_t _nC, HessianType _hessianType=HST_UNKNOWN) | |
QProblem (int _nV, int _nC, HessianType _hessianType=HST_UNKNOWN) | |
QProblem (const QProblem &rhs) | |
QProblem (const QProblem &rhs) | |
returnValue | reset () |
returnValue | reset () |
virtual returnValue | reset () |
virtual returnValue | reset () |
returnValue | setConstraintProduct (ConstraintProduct *const _constraintProduct) |
returnValue | setConstraintProduct (ConstraintProduct *const _constraintProduct) |
returnValue | solveCurrentEQP (const int_t n_rhs, const real_t *g_in, const real_t *lb_in, const real_t *ub_in, const real_t *lbA_in, const real_t *ubA_in, real_t *x_out, real_t *y_out) |
returnValue | solveCurrentEQP (const int n_rhs, const real_t *g_in, const real_t *lb_in, const real_t *ub_in, const real_t *lbA_in, const real_t *ubA_in, real_t *x_out, real_t *y_out) |
returnValue | writeQpDataIntoMatFile (const char *const filename) const |
returnValue | writeQpWorkspaceIntoMatFile (const char *const filename) |
~QProblem () | |
~QProblem () | |
virtual | ~QProblem () |
virtual | ~QProblem () |
Public Member Functions inherited from QProblemB | |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds *const _bounds) const |
returnValue | getBounds (Bounds &_bounds) const |
returnValue | getBounds (Bounds &_bounds) const |
uint_t | getCount () const |
returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getDualSolution (real_t *const yOpt) const |
returnValue | getG (real_t *const _g) const |
returnValue | getG (real_t *const _g) const |
returnValue | getH (real_t *const _H) const |
returnValue | getH (real_t *const _H) const |
HessianType | getHessianType () const |
HessianType | getHessianType () const |
HessianType | getHessianType () const |
HessianType | getHessianType () const |
returnValue | getLB (real_t *const _lb) const |
returnValue | getLB (int number, real_t &value) const |
returnValue | getLB (real_t *const _lb) const |
returnValue | getLB (int number, real_t &value) const |
int | getNFR () |
int | getNFR () |
int_t | getNFR () const |
int | getNFR () const |
int | getNFV () const |
int | getNFV () const |
int_t | getNFV () const |
int | getNFV () const |
int | getNFX () |
int | getNFX () |
int_t | getNFX () const |
int | getNFX () const |
int | getNV () const |
int | getNV () const |
int_t | getNV () const |
int | getNV () const |
int | getNZ () |
int | getNZ () |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
real_t | getObjVal () const |
real_t | getObjVal (const real_t *const _x) const |
Options | getOptions () const |
Options | getOptions () const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
returnValue | getPrimalSolution (real_t *const xOpt) const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
PrintLevel | getPrintLevel () const |
QProblemStatus | getStatus () const |
QProblemStatus | getStatus () const |
QProblemStatus | getStatus () const |
QProblemStatus | getStatus () const |
returnValue | getUB (real_t *const _ub) const |
returnValue | getUB (int number, real_t &value) const |
returnValue | getUB (real_t *const _ub) const |
returnValue | getUB (int number, real_t &value) const |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int_t &nWSR, real_t *const cputime=0, const Bounds *const guessedBounds=0) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime) |
returnValue | hotstart (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds) |
returnValue | hotstart (const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime, const Bounds *const guessedBounds) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const real_t *const _R=0) |
returnValue | init (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, const real_t *const yOpt=0, real_t *const cputime=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const real_t *const _R=0) |
returnValue | init (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file, int_t &nWSR, real_t *const cputime=0, const real_t *const xOpt=0, const real_t *const yOpt=0, const Bounds *const guessedBounds=0, const char *const R_file=0) |
returnValue | init (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
returnValue | init (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file, int &nWSR, real_t *const cputime, const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds) |
BooleanType | isInfeasible () const |
BooleanType | isInfeasible () const |
BooleanType | isInfeasible () const |
BooleanType | isInfeasible () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isInitialised () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isSolved () const |
BooleanType | isUnbounded () const |
BooleanType | isUnbounded () const |
BooleanType | isUnbounded () const |
BooleanType | isUnbounded () const |
QProblemB & | operator= (const QProblemB &rhs) |
QProblemB & | operator= (const QProblemB &rhs) |
QProblemB & | operator= (const QProblemB &rhs) |
virtual QProblemB & | operator= (const QProblemB &rhs) |
returnValue | printOptions () const |
returnValue | printOptions () const |
QProblemB () | |
QProblemB () | |
QProblemB (int _nV) | |
QProblemB (int _nV) | |
QProblemB (const QProblemB &rhs) | |
QProblemB (const QProblemB &rhs) | |
QProblemB () | |
QProblemB () | |
QProblemB (int_t _nV, HessianType _hessianType=HST_UNKNOWN) | |
QProblemB (int _nV, HessianType _hessianType=HST_UNKNOWN) | |
QProblemB (const QProblemB &rhs) | |
QProblemB (const QProblemB &rhs) | |
returnValue | reset () |
returnValue | reset () |
returnValue | resetCounter () |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setHessianType (HessianType _hessianType) |
returnValue | setOptions (const Options &_options) |
returnValue | setOptions (const Options &_options) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
returnValue | setPrintLevel (PrintLevel _printlevel) |
BooleanType | usingRegularisation () const |
BooleanType | usingRegularisation () const |
~QProblemB () | |
~QProblemB () | |
virtual | ~QProblemB () |
virtual | ~QProblemB () |
Protected Member Functions | |
virtual returnValue | setupAuxiliaryQP (const real_t *const H_new, const real_t *const A_new) |
virtual returnValue | setupAuxiliaryQP (SymmetricMatrix *H_new, Matrix *A_new) |
virtual returnValue | setupNewAuxiliaryQP (SymmetricMatrix *H_new, Matrix *A_new, const real_t *lb_new, const real_t *ub_new, const real_t *lbA_new, const real_t *ubA_new) |
virtual returnValue | setupNewAuxiliaryQP (const real_t *const H_new, const real_t *const A_new, const real_t *lb_new, const real_t *ub_new, const real_t *lbA_new, const real_t *ubA_new) |
Protected Member Functions inherited from QProblem | |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
virtual returnValue | addBound (int_t number, SubjectToStatus B_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addBound_checkLI (int number) |
returnValue | addBound_checkLI (int number) |
virtual returnValue | addBound_checkLI (int_t number) |
returnValue | addBound_checkLI (int number) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
virtual returnValue | addBound_ensureLI (int_t number, SubjectToStatus B_status) |
returnValue | addBound_ensureLI (int number, SubjectToStatus B_status) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky) |
virtual returnValue | addConstraint (int_t number, SubjectToStatus C_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addConstraint (int number, SubjectToStatus C_status, BooleanType updateCholesky, BooleanType ensureLI=BT_TRUE) |
returnValue | addConstraint_checkLI (int number) |
returnValue | addConstraint_checkLI (int number) |
virtual returnValue | addConstraint_checkLI (int_t number) |
returnValue | addConstraint_checkLI (int number) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
virtual returnValue | addConstraint_ensureLI (int_t number, SubjectToStatus C_status) |
returnValue | addConstraint_ensureLI (int number, SubjectToStatus C_status) |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_lbA, const real_t *const delta_ubA) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_lbA, const real_t *const delta_ubA) const |
returnValue | areBoundsConsistent (const real_t *const lb, const real_t *const ub, const real_t *const lbA, const real_t *const ubA) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) |
virtual returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | backsolveT (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | changeActiveSet (int_t BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | changeActiveSet (int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | checkKKTconditions () |
returnValue | checkKKTconditions () |
returnValue | clear () |
returnValue | clear () |
returnValue | computeInitialCholesky () |
virtual returnValue | computeProjectedCholesky () |
returnValue | copy (const QProblem &rhs) |
returnValue | copy (const QProblem &rhs) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
virtual returnValue | determineStepDirection (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | determineStepDirection (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | dropInfeasibles (int_t BC_number, SubjectToStatus BC_status, BooleanType BC_isBound, real_t *xiB, real_t *xiC) |
returnValue | ensureNonzeroCurvature (BooleanType removeBoundNotConstraint, int_t remIdx, BooleanType &exchangeHappened, BooleanType &addBoundNotConstraint, int_t &addIdx, SubjectToStatus &addStatus) |
returnValue | ensureNonzeroCurvature (BooleanType removeBoundNotConstraint, int remIdx, BooleanType &exchangeHappened, BooleanType &addBoundNotConstraint, int &addIdx, SubjectToStatus &addStatus) |
real_t | getRelativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const int *const AC_idx, const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const int *const AC_idx, const real_t *const g_new, const real_t *const lbA_new, const real_t *const ubA_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lbA, real_t *const delta_ubA, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bC_isZero, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | hotstart_determineStepDirection (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, BooleanType Delta_bC_isZero, BooleanType Delta_bB_isZero, real_t *const delta_xFX, real_t *const delta_xFR, real_t *const delta_yAC, real_t *const delta_yFX) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, real_t *const delta_Ax, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | hotstart_determineStepLength (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, real_t *const delta_Ax, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, const real_t *const delta_Ax, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | hotstart_performStep (const int *const FR_idx, const int *const FX_idx, const int *const AC_idx, const int *const IAC_idx, const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, const real_t *const delta_Ax, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new, real_t *const lbA_new, real_t *const ubA_new) const |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new, real_t *const lbA_new, real_t *const ubA_new) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, Bounds *auxiliaryBounds, Constraints *auxiliaryConstraints) const |
virtual returnValue | performDriftCorrection () |
returnValue | performDriftCorrection () |
returnValue | performPlainRatioTest (int_t nIdx, const int_t *const idxList, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int_t &BC_idx) const |
returnValue | performPlainRatioTest (int nIdx, const int *const idxList, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int &BC_idx) const |
virtual returnValue | performRamping () |
virtual returnValue | performRamping () |
returnValue | performStep (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, int_t &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | performStep (const real_t *const delta_g, const real_t *const delta_lbA, const real_t *const delta_ubA, const real_t *const delta_lb, const real_t *const delta_ub, const real_t *const delta_xFX, const real_t *const delta_xFR, const real_t *const delta_yAC, const real_t *const delta_yFX, int &BC_idx, SubjectToStatus &BC_status, BooleanType &BC_isBound) |
returnValue | printIteration (int_t iter, int_t BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound, real_t homotopyLength, BooleanType isFirstCall=BT_TRUE) |
returnValue | printIteration (int iteration, int BC_idx, SubjectToStatus BC_status, BooleanType BC_isBound) |
real_t | relativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
virtual returnValue | removeBound (int_t number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeBound (int number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeConstraint (int number, BooleanType updateCholesky) |
returnValue | removeConstraint (int number, BooleanType updateCholesky) |
virtual returnValue | removeConstraint (int_t number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | removeConstraint (int number, BooleanType updateCholesky, BooleanType allowFlipping=BT_FALSE, BooleanType ensureNZC=BT_FALSE) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (int number, const real_t *const value) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (int number, const real_t *const value) |
returnValue | setA (Matrix *A_new) |
returnValue | setA (const real_t *const A_new) |
returnValue | setA (Matrix *A_new) |
returnValue | setA (const real_t *const A_new) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int_t number, real_t value) |
returnValue | setLBA (const real_t *const lbA_new) |
returnValue | setLBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int_t number, real_t value) |
returnValue | setUBA (const real_t *const ubA_new) |
returnValue | setUBA (int number, real_t value) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
virtual returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, const Constraints *const auxiliaryConstraints, BooleanType setupAfresh) |
returnValue | setupCholeskyDecompositionProjected () |
returnValue | setupCholeskyDecompositionProjected () |
returnValue | setupCholeskyDecompositionProjected () |
virtual returnValue | setupInitialCholesky () |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, Matrix *_A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _A, const real_t *const _lb, const real_t *const _ub, const real_t *const _lbA, const real_t *const _ubA) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const A_file, const char *const lb_file, const char *const ub_file, const char *const lbA_file, const char *const ubA_file) |
returnValue | setupSubjectToType () |
returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
virtual returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | setupTQfactorisation () |
returnValue | setupTQfactorisation () |
virtual returnValue | setupTQfactorisation () |
returnValue | setupTQfactorisation () |
BooleanType | shallRefactorise (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) const |
BooleanType | shallRefactorise (const Bounds *const guessedBounds, const Constraints *const guessedConstraints) const |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, const real_t *const _R, int_t &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, const Constraints *const guessedConstraints, int &nWSR, real_t *const cputime) |
returnValue | solveQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime, int_t nWSRperformed=0, BooleanType isFirstCall=BT_TRUE) |
returnValue | solveQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, int nWSRperformed=0) |
returnValue | solveRegularisedQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int_t &nWSR, real_t *const cputime, int_t nWSRperformed=0, BooleanType isFirstCall=BT_TRUE) |
returnValue | solveRegularisedQP (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new, int &nWSR, real_t *const cputime, int nWSRperformed=0) |
virtual returnValue | updateActivitiesForHotstart (const real_t *const lb_new, const real_t *const ub_new, const real_t *const lbA_new, const real_t *const ubA_new) |
returnValue | updateFarBounds (real_t curFarBound, int_t nRamp, const real_t *const lb_new, real_t *const lb_new_far, const real_t *const ub_new, real_t *const ub_new_far, const real_t *const lbA_new, real_t *const lbA_new_far, const real_t *const ubA_new, real_t *const ubA_new_far) const |
Protected Member Functions inherited from QProblemB | |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
returnValue | addBound (int number, SubjectToStatus B_status, BooleanType updateCholesky) |
void | applyGivens (real_t c, real_t s, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
void | applyGivens (real_t c, real_t s, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
void | applyGivens (real_t c, real_t s, real_t nu, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
void | applyGivens (real_t c, real_t s, real_t nu, real_t xold, real_t yold, real_t &xnew, real_t &ynew) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub) const |
BooleanType | areBoundsConsistent (const real_t *const delta_lb, const real_t *const delta_ub) const |
returnValue | areBoundsConsistent (const real_t *const lb, const real_t *const ub) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) |
virtual returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) const |
virtual returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, real_t *const a) const |
returnValue | backsolveR (const real_t *const b, BooleanType transposed, BooleanType removingBound, real_t *const a) const |
returnValue | checkForIdentityHessian () |
returnValue | checkForIdentityHessian () |
returnValue | clear () |
returnValue | clear () |
virtual returnValue | computeCholesky () |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
void | computeGivens (real_t xold, real_t yold, real_t &xnew, real_t &ynew, real_t &c, real_t &s) const |
returnValue | copy (const QProblemB &rhs) |
returnValue | copy (const QProblemB &rhs) |
SymSparseMat * | createDiagSparseMat (int_t n, real_t diagVal=1.0) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
returnValue | determineDataShift (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
returnValue | determineHessianType () |
returnValue | determineHessianType () |
real_t | getRelativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
returnValue | hotstart_determineDataShift (const int *const FX_idx, const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new, real_t *const delta_g, real_t *const delta_lb, real_t *const delta_ub, BooleanType &Delta_bB_isZero) |
BooleanType | isBlocking (real_t num, real_t den, real_t epsNum, real_t epsDen, real_t &t) const |
BooleanType | isBlocking (real_t num, real_t den, real_t epsNum, real_t epsDen, real_t &t) const |
BooleanType | isCPUtimeLimitExceeded (const real_t *const cputime, real_t starttime, int_t nWSR) const |
BooleanType | isCPUtimeLimitExceeded (const real_t *const cputime, real_t starttime, int nWSR) const |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new) const |
returnValue | loadQPvectorsFromFile (const char *const g_file, const char *const lb_file, const char *const ub_file, real_t *const g_new, real_t *const lb_new, real_t *const ub_new) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | obtainAuxiliaryWorkingSet (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, Bounds *auxiliaryBounds) const |
returnValue | performRatioTest (int_t nIdx, const int_t *const idxList, const SubjectTo *const subjectTo, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int_t &BC_idx) const |
returnValue | performRatioTest (int nIdx, const int *const idxList, const SubjectTo *const subjectTo, const real_t *const num, const real_t *const den, real_t epsNum, real_t epsDen, real_t &t, int &BC_idx) const |
returnValue | regulariseHessian () |
returnValue | regulariseHessian () |
real_t | relativeHomotopyLength (const real_t *const g_new, const real_t *const lb_new, const real_t *const ub_new) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | removeBound (int number, BooleanType updateCholesky) |
returnValue | setG (const real_t *const g_new) |
returnValue | setG (const real_t *const g_new) |
returnValue | setG (const real_t *const g_new) |
returnValue | setG (const real_t *const g_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setH (SymmetricMatrix *H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setH (SymmetricMatrix *H_new) |
returnValue | setH (const real_t *const H_new) |
returnValue | setInfeasibilityFlag (returnValue returnvalue, BooleanType doThrowError=BT_FALSE) |
returnValue | setInfeasibilityFlag (returnValue returnvalue) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int_t number, real_t value) |
returnValue | setLB (const real_t *const lb_new) |
returnValue | setLB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int_t number, real_t value) |
returnValue | setUB (const real_t *const ub_new) |
returnValue | setUB (int number, real_t value) |
virtual returnValue | setupAuxiliaryQP (const Bounds *const guessedBounds) |
returnValue | setupAuxiliaryQPbounds (BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPbounds (BooleanType useRelaxation) |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPgradient () |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryQPsolution (const real_t *const xOpt, const real_t *const yOpt) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, BooleanType setupAfresh) |
returnValue | setupAuxiliaryWorkingSet (const Bounds *const auxiliaryBounds, BooleanType setupAfresh) |
returnValue | setupCholeskyDecomposition () |
returnValue | setupCholeskyDecomposition () |
returnValue | setupCholeskyDecomposition () |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _R, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (SymmetricMatrix *_H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdata (const real_t *const _H, const real_t *const _g, const real_t *const _lb, const real_t *const _ub) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file) |
returnValue | setupQPdataFromFile (const char *const H_file, const char *const g_file, const char *const lb_file, const char *const ub_file) |
returnValue | setupSubjectToType () |
returnValue | setupSubjectToType () |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new) |
virtual returnValue | setupSubjectToType (const real_t *const lb_new, const real_t *const ub_new) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, int &nWSR, real_t *const cputime) |
returnValue | solveInitialQP (const real_t *const xOpt, const real_t *const yOpt, const Bounds *const guessedBounds, int &nWSR, real_t *const cputime) |
returnValue | updateFarBounds (real_t curFarBound, int_t nRamp, const real_t *const lb_new, real_t *const lb_new_far, const real_t *const ub_new, real_t *const ub_new_far) const |
Friends | |
class | SolutionAnalysis |
Implements the online active set strategy for QPs with varying matrices.
A class for setting up and solving quadratic programs with varying QP matrices. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
A class for setting up and solving quadratic programs with varying QP matrices. The main feature is the possibily to use the newly developed online active set strategy for parametric quadratic programming.
Definition at line 59 of file qpOASES-3.0beta/include/qpOASES/SQProblem.hpp.
BEGIN_NAMESPACE_QPOASES SQProblem::SQProblem | ( | ) |
Default constructor.
Definition at line 51 of file qpOASES-3.0beta/src/SQProblem.cpp.
SQProblem::SQProblem | ( | int | _nV, |
int | _nC, | ||
HessianType | _hessianType = HST_UNKNOWN |
||
) |
Constructor which takes the QP dimension and Hessian type information. If the Hessian is the zero (i.e. HST_ZERO) or the identity matrix (i.e. HST_IDENTITY), respectively, no memory is allocated for it and a NULL pointer can be passed for it to the init() functions.
_nV | Number of variables. |
_nC | Number of constraints. |
_hessianType | Type of Hessian matrix. |
Definition at line 59 of file qpOASES-3.0beta/src/SQProblem.cpp.
SQProblem::SQProblem | ( | const SQProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
Definition at line 67 of file qpOASES-3.0beta/src/SQProblem.cpp.
|
virtual |
Destructor.
Definition at line 75 of file qpOASES-3.0beta/src/SQProblem.cpp.
SQProblem::SQProblem | ( | ) |
Default constructor.
SQProblem::SQProblem | ( | int_t | _nV, |
int_t | _nC, | ||
HessianType | _hessianType = HST_UNKNOWN |
||
) |
Constructor which takes the QP dimension and Hessian type information. If the Hessian is the zero (i.e. HST_ZERO) or the identity matrix (i.e. HST_IDENTITY), respectively, no memory is allocated for it and a NULL pointer can be passed for it to the init() functions.
_nV | Number of variables. |
_nC | Number of constraints. |
_hessianType | Type of Hessian matrix. |
SQProblem::SQProblem | ( | const SQProblem & | rhs | ) |
Copy constructor (deep copy).
rhs | Rhs object. |
|
virtual |
Destructor.
returnValue SQProblem::hotstart | ( | const real_t *const | H_new, |
const real_t *const | g_new, | ||
const real_t *const | A_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised SQProblem using online active set strategy.
H_new | Hessian matrix of neighbouring QP to be solved. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_new | Gradient of neighbouring QP to be solved. |
A_new | Constraint matrix of neighbouring QP to be solved. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 97 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | SymmetricMatrix * | H_new, |
const real_t *const | g_new, | ||
Matrix * | A_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence with matrix shift using the online active set strategy.
H_new | Hessian matrix of neighbouring QP to be solved (a shallow copy is made). If Hessian matrix is trivial, a NULL pointer can be passed. |
g_new | Gradient of neighbouring QP to be solved. |
A_new | Constraint matrix of neighbouring QP to be solved (a shallow copy is made). If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spen for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
Definition at line 98 of file qpOASES-3.2.0/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | A_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised SQProblem using online active set strategy reading QP data from files.
H_file | Name of file where Hessian matrix is stored. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
A_file | Name of file where constraint matrix is stored. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 140 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const real_t *const | H_new, |
const real_t *const | g_new, | ||
const real_t *const | A_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence with matrix shift using the online active set strategy.
H_new | Hessian matrix of neighbouring QP to be solved (a shallow copy is made). If Hessian matrix is trivial, a NULL pointer can be passed. |
g_new | Gradient of neighbouring QP to be solved. |
A_new | Constraint matrix of neighbouring QP to be solved (a shallow copy is made). If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
Definition at line 149 of file qpOASES-3.2.0/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | SymmetricMatrix * | H_new, |
const real_t *const | g_new, | ||
Matrix * | A_new, | ||
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised SQProblem using online active set strategy.
H_new | Hessian matrix of neighbouring QP to be solved. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_new | Gradient of neighbouring QP to be solved. |
A_new | Constraint matrix of neighbouring QP to be solved. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 226 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const char *const | H_file, |
const char *const | g_file, | ||
const char *const | A_file, | ||
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence with matrix shift using the online active set strategy, where QP data is read from files.
H_file | Name of file where Hessian matrix is stored. If Hessian matrix is trivial, a NULL pointer can be passed. |
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
A_file | Name of file where constraint matrix is stored. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
Definition at line 197 of file qpOASES-3.2.0/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised SQProblem (without matrix shift) using online active set strategy. Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 275 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence (without matrix shift) using the online active set strategy. By default, QP solution is started from previous solution. If a guess for the working set is provided, an initialised homotopy is performed.
Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
returnValue SQProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime | ||
) |
Solves an initialised SQProblem (without matrix shift) using online active set strategy reading QP data from files. Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
Definition at line 289 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int_t & | nWSR, | ||
real_t *const | cputime = 0 , |
||
const Bounds *const | guessedBounds = 0 , |
||
const Constraints *const | guessedConstraints = 0 |
||
) |
Solves an initialised QP sequence (without matrix shift) using the online active set strategy, where QP data is read from files. By default, QP solution is started from previous solution. If a guess for the working set is provided, an initialised homotopy is performed.
Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spent for QP solution (or to perform nWSR iterations). |
guessedBounds | Optimal working set of bounds for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of bounds is kept!) |
guessedConstraints | Optimal working set of constraints for solution (xOpt,yOpt). (If a null pointer is passed, the previous working set of constraints is kept!) |
returnValue SQProblem::hotstart | ( | const real_t *const | g_new, |
const real_t *const | lb_new, | ||
const real_t *const | ub_new, | ||
const real_t *const | lbA_new, | ||
const real_t *const | ubA_new, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Solves an initialised SQProblem (without matrix shift) using online active set strategy (using an initialised homotopy). Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_new | Gradient of neighbouring QP to be solved. |
lb_new | Lower bounds of neighbouring QP to be solved. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | Upper bounds of neighbouring QP to be solved. If no upper bounds exist, a NULL pointer can be passed. |
lbA_new | Lower constraints' bounds of neighbouring QP to be solved. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | Upper constraints' bounds of neighbouring QP to be solved. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
guessedBounds | Initial guess for working set of bounds. A null pointer corresponds to an empty working set! |
guessedConstraints | Initial guess for working set of constraints. A null pointer corresponds to an empty working set! |
Definition at line 303 of file qpOASES-3.0beta/src/SQProblem.cpp.
returnValue SQProblem::hotstart | ( | const char *const | g_file, |
const char *const | lb_file, | ||
const char *const | ub_file, | ||
const char *const | lbA_file, | ||
const char *const | ubA_file, | ||
int & | nWSR, | ||
real_t *const | cputime, | ||
const Bounds *const | guessedBounds, | ||
const Constraints *const | guessedConstraints | ||
) |
Solves an initialised SQProblem (without matrix shift) using online active set strategy (using an initialised homotopy) reading QP data from files. Note: This functions just forwards to the corresponding QProblem::hotstart member function.
g_file | Name of file where gradient, of neighbouring QP to be solved, is stored. |
lb_file | Name of file where lower bounds, of neighbouring QP to be solved, is stored. If no lower bounds exist, a NULL pointer can be passed. |
ub_file | Name of file where upper bounds, of neighbouring QP to be solved, is stored. If no upper bounds exist, a NULL pointer can be passed. |
lbA_file | Name of file where lower constraints' bounds, of neighbouring QP to be solved, is stored. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_file | Name of file where upper constraints' bounds, of neighbouring QP to be solved, is stored. If no upper constraints' bounds exist, a NULL pointer can be passed. |
nWSR | Input: Maximum number of working set recalculations; Output: Number of performed working set recalculations. |
cputime | Input: Maximum CPU time allowed for QP solution. Output: CPU time spend for QP solution (or to perform nWSR iterations). |
guessedBounds | Initial guess for working set of bounds. A null pointer corresponds to an empty working set! |
guessedConstraints | Initial guess for working set of constraints. A null pointer corresponds to an empty working set! |
Definition at line 318 of file qpOASES-3.0beta/src/SQProblem.cpp.
Assignment operator (deep copy).
rhs | Rhs object. |
Definition at line 83 of file qpOASES-3.0beta/src/SQProblem.cpp.
Assignment operator (deep copy).
rhs | Rhs object. |
|
protectedvirtual |
Sets new matrices and calculates their factorisations. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one. Afterwards, all QP vectors are transformed in order to start from an optimal solution.
H_new | New Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
A_new | New constraint matrix. If QP sequence does not involve constraints, a NULL pointer can be passed. |
Definition at line 350 of file qpOASES-3.0beta/src/SQProblem.cpp.
|
protectedvirtual |
Sets new matrices and calculates their factorisations. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one. Afterwards, all QP vectors are transformed in order to start from an optimal solution.
H_new | New Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
A_new | New constraint matrix. If QP sequence does not involve constraints, a NULL pointer can be passed. |
Definition at line 371 of file qpOASES-3.0beta/src/SQProblem.cpp.
|
protectedvirtual |
Sets new matrices and calculates their factorisations. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one. Afterwards, all QP vectors are transformed in order to start from an optimal solution.
H_new | New Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
A_new | New constraint matrix. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | New lower bounds. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | New upper bounds. If no lower bounds exist, a NULL pointer can be passed. |
lbA_new | New lower constraints' bounds. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | New lower constraints' bounds. If no lower constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 334 of file qpOASES-3.2.0/src/SQProblem.cpp.
|
protectedvirtual |
Sets new matrices and calculates their factorisations. If the current Hessian is trivial (i.e. HST_ZERO or HST_IDENTITY) but a non-trivial one is given, memory for Hessian is allocated and it is set to the given one. Afterwards, all QP vectors are transformed in order to start from an optimal solution.
H_new | New Hessian matrix. If Hessian matrix is trivial, a NULL pointer can be passed. |
A_new | New constraint matrix. If QP sequence does not involve constraints, a NULL pointer can be passed. |
lb_new | New lower bounds. If no lower bounds exist, a NULL pointer can be passed. |
ub_new | New upper bounds. If no lower bounds exist, a NULL pointer can be passed. |
lbA_new | New lower constraints' bounds. If no lower constraints' bounds exist, a NULL pointer can be passed. |
ubA_new | New lower constraints' bounds. If no lower constraints' bounds exist, a NULL pointer can be passed. |
Definition at line 515 of file qpOASES-3.2.0/src/SQProblem.cpp.
|
friend |
Definition at line 62 of file qpOASES-3.0beta/include/qpOASES/SQProblem.hpp.