Bonmin 1.8.9
|
Class for storing warm start informations for Ipopt. More...
#include <BonIpoptWarmStart.hpp>
Public Member Functions | |
IpoptWarmStart (bool empty=1, int numvars=0, int numcont=0) | |
Default constructor. | |
IpoptWarmStart (const Ipopt::SmartPtr< TMINLP2TNLP > tnlp, Ipopt::SmartPtr< IpoptInteriorWarmStarter > warm_starter) | |
Usefull constructor, stores the current optimum of ipopt. | |
IpoptWarmStart (int primal_size, int dual_size, const double *primal, const double *dual) | |
Another usefull constructor, stores the passed point. | |
IpoptWarmStart (const IpoptWarmStart &other, bool ownValues=1) | |
Copy constructor. | |
IpoptWarmStart (const CoinWarmStartPrimalDual &pdws) | |
A constructor from a CoinWarmStartPrimalDual. | |
virtual | ~IpoptWarmStart () |
Abstract destructor. | |
virtual CoinWarmStart * | clone () const |
‘Virtual constructor’ | |
virtual CoinWarmStartDiff * | generateDiff (const CoinWarmStart *const oldCWS) const |
Generate the "differences" between two IpoptWarmStart. | |
virtual void | applyDiff (const CoinWarmStartDiff *const cwsdDiff) |
Apply 'differences' to an Ipopt warm start. | |
Ipopt::SmartPtr< IpoptInteriorWarmStarter > | warm_starter () const |
Accessor to warm start information obecjt. | |
void | flushPoint () |
flush the starting point | |
bool | empty () const |
Is this an empty warm start? | |
![]() | |
int | dualSize () const |
const double * | dual () const |
int | primalSize () const |
const double * | primal () const |
void | assign (int primalSize, int dualSize, double *&primal, double *&dual) |
CoinWarmStartPrimalDual () | |
CoinWarmStartPrimalDual (int primalSize, int dualSize, const double *primal, const double *dual) | |
CoinWarmStartPrimalDual (const CoinWarmStartPrimalDual &rhs) | |
CoinWarmStartPrimalDual & | operator= (const CoinWarmStartPrimalDual &rhs) |
void | clear () |
void | swap (CoinWarmStartPrimalDual &rhs) |
virtual | ~CoinWarmStartPrimalDual () |
![]() | |
virtual | ~CoinWarmStart () |
![]() | |
int | getNumStructural () const |
int | getNumArtificial () const |
int | numberBasicStructurals () const |
Status | getStructStatus (int i) const |
void | setStructStatus (int i, Status st) |
char * | getStructuralStatus () |
const char * | getStructuralStatus () const |
char * | getArtificialStatus () |
Status | getArtifStatus (int i) const |
void | setArtifStatus (int i, Status st) |
const char * | getArtificialStatus () const |
virtual void | setSize (int ns, int na) |
virtual void | resize (int newNumberRows, int newNumberColumns) |
virtual void | compressRows (int tgtCnt, const int *tgts) |
virtual void | deleteRows (int rawTgtCnt, const int *rawTgts) |
virtual void | deleteColumns (int number, const int *which) |
virtual void | mergeBasis (const CoinWarmStartBasis *src, const XferVec *xferRows, const XferVec *xferCols) |
CoinWarmStartBasis () | |
CoinWarmStartBasis (int ns, int na, const char *sStat, const char *aStat) | |
CoinWarmStartBasis (const CoinWarmStartBasis &ws) | |
virtual | ~CoinWarmStartBasis () |
virtual CoinWarmStartBasis & | operator= (const CoinWarmStartBasis &rhs) |
virtual void | assignBasisStatus (int ns, int na, char *&sStat, char *&aStat) |
virtual void | print () const |
bool | fullBasis () const |
bool | fixFullBasis () |
CoinWarmStartBasis::Status | getStatus (const char *array, int i) |
void | setStatus (char *array, int i, CoinWarmStartBasis::Status st) |
const char * | statusName (CoinWarmStartBasis::Status status) |
int | getNumStructural () const |
int | getNumArtificial () const |
int | numberBasicStructurals () const |
Status | getStructStatus (int i) const |
void | setStructStatus (int i, Status st) |
char * | getStructuralStatus () |
const char * | getStructuralStatus () const |
char * | getArtificialStatus () |
Status | getArtifStatus (int i) const |
void | setArtifStatus (int i, Status st) |
const char * | getArtificialStatus () const |
virtual void | setSize (int ns, int na) |
virtual void | resize (int newNumberRows, int newNumberColumns) |
virtual void | compressRows (int tgtCnt, const int *tgts) |
virtual void | deleteRows (int rawTgtCnt, const int *rawTgts) |
virtual void | deleteColumns (int number, const int *which) |
virtual void | mergeBasis (const CoinWarmStartBasis *src, const XferVec *xferRows, const XferVec *xferCols) |
CoinWarmStartBasis () | |
CoinWarmStartBasis (int ns, int na, const char *sStat, const char *aStat) | |
CoinWarmStartBasis (const CoinWarmStartBasis &ws) | |
virtual | ~CoinWarmStartBasis () |
virtual CoinWarmStartBasis & | operator= (const CoinWarmStartBasis &rhs) |
virtual void | assignBasisStatus (int ns, int na, char *&sStat, char *&aStat) |
virtual void | print () const |
bool | fullBasis () const |
bool | fixFullBasis () |
Additional Inherited Members | |
![]() | |
enum | Status |
typedef CoinTriple< int, int, int > | XferEntry |
typedef std::vector< XferEntry > | XferVec |
![]() | |
isFree | |
basic | |
atUpperBound | |
atLowerBound | |
superBasic | |
![]() | |
int | numStructural_ |
int | numArtificial_ |
int | maxSize_ |
char * | structuralStatus_ |
char * | artificialStatus_ |
Class for storing warm start informations for Ipopt.
This class inherits from CoinWarmStartPrimalDual, because that's what this warmstart really is.
For practical reason (integration in Cbc) this class also inherits from CoinWarmStartBasis.
This class stores a starting point (primal and dual values) for Ipopt.
The primal part of the base class contains the value of each primal variable.
The dual part of the base class consists of three sections (the number of values is 2*numcols+numrows):
Definition at line 46 of file BonIpoptWarmStart.hpp.
Bonmin::IpoptWarmStart::IpoptWarmStart | ( | bool | empty = 1, |
int | numvars = 0, | ||
int | numcont = 0 ) |
Default constructor.
Bonmin::IpoptWarmStart::IpoptWarmStart | ( | const Ipopt::SmartPtr< TMINLP2TNLP > | tnlp, |
Ipopt::SmartPtr< IpoptInteriorWarmStarter > | warm_starter ) |
Usefull constructor, stores the current optimum of ipopt.
Bonmin::IpoptWarmStart::IpoptWarmStart | ( | int | primal_size, |
int | dual_size, | ||
const double * | primal, | ||
const double * | dual ) |
Another usefull constructor, stores the passed point.
Bonmin::IpoptWarmStart::IpoptWarmStart | ( | const IpoptWarmStart & | other, |
bool | ownValues = 1 ) |
Copy constructor.
Bonmin::IpoptWarmStart::IpoptWarmStart | ( | const CoinWarmStartPrimalDual & | pdws | ) |
A constructor from a CoinWarmStartPrimalDual.
|
virtual |
Abstract destructor.
|
inlinevirtual |
‘Virtual constructor’
Reimplemented from CoinWarmStartPrimalDual.
Definition at line 67 of file BonIpoptWarmStart.hpp.
|
virtual |
Generate the "differences" between two IpoptWarmStart.
Reimplemented from CoinWarmStartPrimalDual.
|
virtual |
Apply 'differences' to an Ipopt warm start.
What this actually does is get a copy to the vector of values stored in IpoptWarmStartDiff.
Reimplemented from CoinWarmStartPrimalDual.
|
inline |
Accessor to warm start information obecjt.
Definition at line 82 of file BonIpoptWarmStart.hpp.
void Bonmin::IpoptWarmStart::flushPoint | ( | ) |
flush the starting point
|
inline |
Is this an empty warm start?
Definition at line 91 of file BonIpoptWarmStart.hpp.