Couenne 0.5.8
|
This is class provides an Osi interface for a Mixed Integer Linear Program expressed as a TMINLP (so that we can use it for example as the continuous solver in Cbc). More...
#include <CouenneMINLPInterface.hpp>
Public Member Functions | |
void | setObj (int index, expression *newObj) |
REMOVE — backward compatibility sets objective[index] at newObj More... | |
void | setInitSol (const CouNumber *sol) |
sets the initial solution for the NLP solver More... | |
CouNumber | solve (CouNumber *solution) |
solves and returns the optimal objective function and the solution More... | |
CouenneProblem * | problem () const |
return pointer to Couenne problem More... | |
Ipopt::OptionsList * | options () const |
return pointer to options More... | |
![]() | |
virtual void | initialSolve ()=0 |
virtual void | resolve ()=0 |
virtual void | branchAndBound ()=0 |
virtual bool | setIntParam (OsiIntParam key, int value) |
virtual bool | setDblParam (OsiDblParam key, double value) |
virtual bool | setStrParam (OsiStrParam key, const std::string &value) |
virtual bool | setHintParam (OsiHintParam key, bool yesNo=true, OsiHintStrength strength=OsiHintTry, void *=NULL) |
virtual bool | getIntParam (OsiIntParam key, int &value) const |
virtual bool | getDblParam (OsiDblParam key, double &value) const |
virtual bool | getStrParam (OsiStrParam key, std::string &value) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo, OsiHintStrength &strength, void *&otherInformation) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo, OsiHintStrength &strength) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo) const |
void | copyParameters (OsiSolverInterface &rhs) |
double | getIntegerTolerance () const |
virtual bool | isAbandoned () const=0 |
virtual bool | isProvenOptimal () const=0 |
virtual bool | isProvenPrimalInfeasible () const=0 |
virtual bool | isProvenDualInfeasible () const=0 |
virtual bool | isPrimalObjectiveLimitReached () const |
virtual bool | isDualObjectiveLimitReached () const |
virtual bool | isIterationLimitReached () const=0 |
virtual CoinWarmStart * | getEmptyWarmStart () const=0 |
virtual CoinWarmStart * | getWarmStart () const=0 |
virtual CoinWarmStart * | getPointerToWarmStart (bool &mustDelete) |
virtual bool | setWarmStart (const CoinWarmStart *warmstart)=0 |
virtual void | markHotStart () |
virtual void | solveFromHotStart () |
virtual void | unmarkHotStart () |
virtual int | getNumCols () const=0 |
virtual int | getNumRows () const=0 |
virtual CoinBigIndex | getNumElements () const=0 |
virtual int | getNumIntegers () const |
virtual const double * | getColLower () const=0 |
virtual const double * | getColUpper () const=0 |
virtual const char * | getRowSense () const=0 |
virtual const double * | getRightHandSide () const=0 |
virtual const double * | getRowRange () const=0 |
virtual const double * | getRowLower () const=0 |
virtual const double * | getRowUpper () const=0 |
virtual const double * | getObjCoefficients () const=0 |
virtual double | getObjSense () const=0 |
virtual bool | isContinuous (int colIndex) const=0 |
virtual bool | isBinary (int colIndex) const |
virtual bool | isInteger (int colIndex) const |
virtual bool | isIntegerNonBinary (int colIndex) const |
virtual bool | isFreeBinary (int colIndex) const |
const char * | columnType (bool refresh=false) const |
void | setColumnType (int iColumn, char type) |
virtual const char * | getColType (bool refresh=false) const |
virtual const CoinPackedMatrix * | getMatrixByRow () const=0 |
virtual const CoinPackedMatrix * | getMatrixByCol () const=0 |
virtual CoinPackedMatrix * | getMutableMatrixByRow () const |
virtual CoinPackedMatrix * | getMutableMatrixByCol () const |
virtual double | getInfinity () const=0 |
virtual const double * | getColSolution () const=0 |
virtual const double * | getStrictColSolution () |
virtual const double * | getRowPrice () const=0 |
virtual const double * | getReducedCost () const=0 |
virtual const double * | getRowActivity () const=0 |
virtual double | getObjValue () const=0 |
virtual int | getIterationCount () const=0 |
virtual std::vector< double * > | getDualRays (int maxNumRays, bool fullRay=false) const=0 |
virtual std::vector< double * > | getPrimalRays (int maxNumRays) const=0 |
virtual OsiVectorInt | getFractionalIndices (const double etol=1.e-05) const |
virtual void | setObjCoeff (int elementIndex, double elementValue)=0 |
virtual void | setObjCoeffSet (const int *indexFirst, const int *indexLast, const double *coeffList) |
virtual void | setObjective (const double *array) |
virtual void | setObjSense (double s)=0 |
virtual void | setColLower (int elementIndex, double elementValue)=0 |
virtual void | setColLower (const double *array) |
virtual void | setColUpper (int elementIndex, double elementValue)=0 |
virtual void | setColUpper (const double *array) |
virtual void | setColBounds (int elementIndex, double lower, double upper) |
virtual void | setColSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowLower (int elementIndex, double elementValue)=0 |
virtual void | setRowUpper (int elementIndex, double elementValue)=0 |
virtual void | setRowBounds (int elementIndex, double lower, double upper) |
virtual void | setRowSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowType (int index, char sense, double rightHandSide, double range)=0 |
virtual void | setRowSetTypes (const int *indexFirst, const int *indexLast, const char *senseList, const double *rhsList, const double *rangeList) |
virtual void | setColSolution (const double *colsol)=0 |
virtual void | setRowPrice (const double *rowprice)=0 |
virtual int | reducedCostFix (double gap, bool justInteger=true) |
virtual std::string | dfltRowColName (char rc, int ndx, unsigned digits=7) const |
virtual std::string | getObjName (unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual void | setObjName (std::string name) |
virtual std::string | getRowName (int rowIndex, unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual const OsiNameVec & | getRowNames () |
virtual void | setRowName (int ndx, std::string name) |
virtual void | setRowNames (OsiNameVec &srcNames, int srcStart, int len, int tgtStart) |
virtual void | deleteRowNames (int tgtStart, int len) |
virtual std::string | getColName (int colIndex, unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual const OsiNameVec & | getColNames () |
virtual void | setColName (int ndx, std::string name) |
virtual void | setColNames (OsiNameVec &srcNames, int srcStart, int len, int tgtStart) |
virtual void | deleteColNames (int tgtStart, int len) |
void | setRowColNames (const CoinMpsIO &mps) |
void | setRowColNames (CoinModel &mod) |
void | setRowColNames (CoinLpIO &mod) |
virtual void | addCol (const CoinPackedVectorBase &vec, const double collb, const double colub, const double obj)=0 |
virtual void | addCol (const CoinPackedVectorBase &vec, const double collb, const double colub, const double obj, std::string name) |
virtual void | addCol (int numberElements, const int *rows, const double *elements, const double collb, const double colub, const double obj) |
virtual void | addCol (int numberElements, const int *rows, const double *elements, const double collb, const double colub, const double obj, std::string name) |
virtual void | addCols (const int numcols, const CoinPackedVectorBase *const *cols, const double *collb, const double *colub, const double *obj) |
virtual void | addCols (const int numcols, const CoinBigIndex *columnStarts, const int *rows, const double *elements, const double *collb, const double *colub, const double *obj) |
void | addCols (const CoinBuild &buildObject) |
int | addCols (CoinModel &modelObject) |
virtual void | deleteCols (const int num, const int *colIndices)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const double rowlb, const double rowub)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const double rowlb, const double rowub, std::string name) |
virtual void | addRow (const CoinPackedVectorBase &vec, const char rowsen, const double rowrhs, const double rowrng)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const char rowsen, const double rowrhs, const double rowrng, std::string name) |
virtual void | addRow (int numberElements, const int *columns, const double *element, const double rowlb, const double rowub) |
virtual void | addRows (const int numrows, const CoinPackedVectorBase *const *rows, const double *rowlb, const double *rowub) |
virtual void | addRows (const int numrows, const CoinPackedVectorBase *const *rows, const char *rowsen, const double *rowrhs, const double *rowrng) |
virtual void | addRows (const int numrows, const CoinBigIndex *rowStarts, const int *columns, const double *element, const double *rowlb, const double *rowub) |
void | addRows (const CoinBuild &buildObject) |
int | addRows (CoinModel &modelObject) |
virtual void | deleteRows (const int num, const int *rowIndices)=0 |
virtual void | replaceMatrixOptional (const CoinPackedMatrix &) |
virtual void | replaceMatrix (const CoinPackedMatrix &) |
virtual void | saveBaseModel () |
virtual void | restoreBaseModel (int numberRows) |
virtual ApplyCutsReturnCode | applyCuts (const OsiCuts &cs, double effectivenessLb=0.0) |
virtual void | applyRowCuts (int numberCuts, const OsiRowCut *cuts) |
virtual void | applyRowCuts (int numberCuts, const OsiRowCut **cuts) |
void | deleteBranchingInfo (int numberDeleted, const int *which) |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub)=0 |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, double *&rowlb, double *&rowub)=0 |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const char *rowsen, const double *rowrhs, const double *rowrng)=0 |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, char *&rowsen, double *&rowrhs, double *&rowrng)=0 |
virtual void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub)=0 |
virtual void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const char *rowsen, const double *rowrhs, const double *rowrng)=0 |
virtual int | loadFromCoinModel (CoinModel &modelObject, bool keepSolution=false) |
virtual int | readMps (const char *filename, const char *extension="mps") |
virtual int | readMps (const char *filename, const char *extension, int &numberSets, CoinSet **&sets) |
virtual int | readGMPL (const char *filename, const char *dataname=NULL) |
virtual void | writeMps (const char *filename, const char *extension="mps", double objSense=0.0) const=0 |
int | writeMpsNative (const char *filename, const char **rowNames, const char **columnNames, int formatType=0, int numberAcross=2, double objSense=0.0, int numberSOS=0, const CoinSet *setInfo=NULL) const |
virtual void | writeLp (const char *filename, const char *extension="lp", double epsilon=1e-5, int numberAcross=10, int decimals=9, double objSense=0.0, bool useRowNames=true) const |
virtual void | writeLp (FILE *fp, double epsilon=1e-5, int numberAcross=10, int decimals=5, double objSense=0.0, bool useRowNames=true) const |
int | writeLpNative (const char *filename, char const *const *const rowNames, char const *const *const columnNames, const double epsilon=1.0e-5, const int numberAcross=10, const int decimals=5, const double objSense=0.0, const bool useRowNames=true) const |
int | writeLpNative (FILE *fp, char const *const *const rowNames, char const *const *const columnNames, const double epsilon=1.0e-5, const int numberAcross=10, const int decimals=5, const double objSense=0.0, const bool useRowNames=true) const |
virtual int | readLp (const char *filename, const double epsilon=1e-5) |
int | readLp (FILE *fp, const double epsilon=1e-5) |
int | differentModel (OsiSolverInterface &other, bool ignoreNames=true) |
void | statistics (double &minimumNegative, double &maximumNegative, double &minimumPositive, double &maximumPositive, int type=3) const |
void | setApplicationData (void *appData) |
void | setAuxiliaryInfo (OsiAuxInfo *auxiliaryInfo) |
void * | getApplicationData () const |
OsiAuxInfo * | getAuxiliaryInfo () const |
virtual void | passInMessageHandler (CoinMessageHandler *handler) |
void | newLanguage (CoinMessages::Language language) |
void | setLanguage (CoinMessages::Language language) |
CoinMessageHandler * | messageHandler () const |
CoinMessages | messages () |
CoinMessages * | messagesPointer () |
bool | defaultHandler () const |
void | findIntegers (bool justCount) |
virtual int | findIntegersAndSOS (bool justCount) |
int | numberObjects () const |
void | setNumberObjects (int number) |
OsiObject ** | objects () const |
const OsiObject * | object (int which) const |
OsiObject * | modifiableObject (int which) const |
void | deleteObjects () |
void | addObjects (int numberObjects, OsiObject **objects) |
double | forceFeasible () |
virtual void | activateRowCutDebugger (const char *modelName) |
virtual void | activateRowCutDebugger (const double *solution, bool enforceOptimality=true) |
const OsiRowCutDebugger * | getRowCutDebugger () const |
OsiRowCutDebugger * | getRowCutDebuggerAlways () const |
virtual int | canDoSimplexInterface () const |
virtual void | enableFactorization () const |
virtual void | disableFactorization () const |
virtual bool | basisIsAvailable () const |
bool | optimalBasisIsAvailable () const |
virtual void | getBasisStatus (int *cstat, int *rstat) const |
virtual int | setBasisStatus (const int *cstat, const int *rstat) |
virtual void | getReducedGradient (double *columnReducedCosts, double *duals, const double *c) const |
virtual void | getBInvARow (int row, double *z, double *slack=NULL) const |
virtual void | getBInvRow (int row, double *z) const |
virtual void | getBInvACol (int col, double *vec) const |
virtual void | getBInvCol (int col, double *vec) const |
virtual void | getBasics (int *index) const |
virtual void | enableSimplexInterface (bool doingPrimal) |
virtual void | disableSimplexInterface () |
virtual int | pivot (int colIn, int colOut, int outStatus) |
virtual int | primalPivotResult (int colIn, int sign, int &colOut, int &outStatus, double &t, CoinPackedVector *dx) |
virtual int | dualPivotResult (int &colIn, int &sign, int colOut, int outStatus, double &t, CoinPackedVector *dx) |
OsiSolverInterface () | |
virtual OsiSolverInterface * | clone (bool copyData=true) const=0 |
OsiSolverInterface (const OsiSolverInterface &) | |
OsiSolverInterface & | operator= (const OsiSolverInterface &rhs) |
virtual | ~OsiSolverInterface () |
virtual void | reset () |
virtual void | setContinuous (int index)=0 |
virtual void | setInteger (int index)=0 |
virtual void | setContinuous (const int *indices, int len) |
virtual void | setInteger (const int *indices, int len) |
virtual void | initialSolve ()=0 |
virtual void | resolve ()=0 |
virtual void | branchAndBound ()=0 |
virtual bool | setIntParam (OsiIntParam key, int value) |
virtual bool | setDblParam (OsiDblParam key, double value) |
virtual bool | setStrParam (OsiStrParam key, const std::string &value) |
virtual bool | setHintParam (OsiHintParam key, bool yesNo=true, OsiHintStrength strength=OsiHintTry, void *=NULL) |
virtual bool | getIntParam (OsiIntParam key, int &value) const |
virtual bool | getDblParam (OsiDblParam key, double &value) const |
virtual bool | getStrParam (OsiStrParam key, std::string &value) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo, OsiHintStrength &strength, void *&otherInformation) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo, OsiHintStrength &strength) const |
virtual bool | getHintParam (OsiHintParam key, bool &yesNo) const |
void | copyParameters (OsiSolverInterface &rhs) |
double | getIntegerTolerance () const |
virtual bool | isAbandoned () const=0 |
virtual bool | isProvenOptimal () const=0 |
virtual bool | isProvenPrimalInfeasible () const=0 |
virtual bool | isProvenDualInfeasible () const=0 |
virtual bool | isPrimalObjectiveLimitReached () const |
virtual bool | isDualObjectiveLimitReached () const |
virtual bool | isIterationLimitReached () const=0 |
virtual CoinWarmStart * | getEmptyWarmStart () const=0 |
virtual CoinWarmStart * | getWarmStart () const=0 |
virtual CoinWarmStart * | getPointerToWarmStart (bool &mustDelete) |
virtual bool | setWarmStart (const CoinWarmStart *warmstart)=0 |
virtual void | markHotStart () |
virtual void | solveFromHotStart () |
virtual void | unmarkHotStart () |
virtual int | getNumCols () const=0 |
virtual int | getNumRows () const=0 |
virtual CoinBigIndex | getNumElements () const=0 |
virtual int | getNumIntegers () const |
virtual const double * | getColLower () const=0 |
virtual const double * | getColUpper () const=0 |
virtual const char * | getRowSense () const=0 |
virtual const double * | getRightHandSide () const=0 |
virtual const double * | getRowRange () const=0 |
virtual const double * | getRowLower () const=0 |
virtual const double * | getRowUpper () const=0 |
virtual const double * | getObjCoefficients () const=0 |
virtual double | getObjSense () const=0 |
virtual bool | isContinuous (int colIndex) const=0 |
virtual bool | isBinary (int colIndex) const |
virtual bool | isInteger (int colIndex) const |
virtual bool | isIntegerNonBinary (int colIndex) const |
virtual bool | isFreeBinary (int colIndex) const |
const char * | columnType (bool refresh=false) const |
void | setColumnType (int iColumn, char type) |
virtual const char * | getColType (bool refresh=false) const |
virtual const CoinPackedMatrix * | getMatrixByRow () const=0 |
virtual const CoinPackedMatrix * | getMatrixByCol () const=0 |
virtual CoinPackedMatrix * | getMutableMatrixByRow () const |
virtual CoinPackedMatrix * | getMutableMatrixByCol () const |
virtual double | getInfinity () const=0 |
virtual const double * | getColSolution () const=0 |
virtual const double * | getStrictColSolution () |
virtual const double * | getRowPrice () const=0 |
virtual const double * | getReducedCost () const=0 |
virtual const double * | getRowActivity () const=0 |
virtual double | getObjValue () const=0 |
virtual int | getIterationCount () const=0 |
virtual std::vector< double * > | getDualRays (int maxNumRays, bool fullRay=false) const=0 |
virtual std::vector< double * > | getPrimalRays (int maxNumRays) const=0 |
virtual OsiVectorInt | getFractionalIndices (const double etol=1.e-05) const |
virtual void | setObjCoeff (int elementIndex, double elementValue)=0 |
virtual void | setObjCoeffSet (const int *indexFirst, const int *indexLast, const double *coeffList) |
virtual void | setObjective (const double *array) |
virtual void | setObjSense (double s)=0 |
virtual void | setColLower (int elementIndex, double elementValue)=0 |
virtual void | setColLower (const double *array) |
virtual void | setColUpper (int elementIndex, double elementValue)=0 |
virtual void | setColUpper (const double *array) |
virtual void | setColBounds (int elementIndex, double lower, double upper) |
virtual void | setColSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowLower (int elementIndex, double elementValue)=0 |
virtual void | setRowUpper (int elementIndex, double elementValue)=0 |
virtual void | setRowBounds (int elementIndex, double lower, double upper) |
virtual void | setRowSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowType (int index, char sense, double rightHandSide, double range)=0 |
virtual void | setRowSetTypes (const int *indexFirst, const int *indexLast, const char *senseList, const double *rhsList, const double *rangeList) |
virtual void | setColSolution (const double *colsol)=0 |
virtual void | setRowPrice (const double *rowprice)=0 |
virtual int | reducedCostFix (double gap, bool justInteger=true) |
virtual std::string | dfltRowColName (char rc, int ndx, unsigned digits=7) const |
virtual std::string | getObjName (unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual void | setObjName (std::string name) |
virtual std::string | getRowName (int rowIndex, unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual const OsiNameVec & | getRowNames () |
virtual void | setRowName (int ndx, std::string name) |
virtual void | setRowNames (OsiNameVec &srcNames, int srcStart, int len, int tgtStart) |
virtual void | deleteRowNames (int tgtStart, int len) |
virtual std::string | getColName (int colIndex, unsigned maxLen=static_cast< unsigned >(std::string::npos)) const |
virtual const OsiNameVec & | getColNames () |
virtual void | setColName (int ndx, std::string name) |
virtual void | setColNames (OsiNameVec &srcNames, int srcStart, int len, int tgtStart) |
virtual void | deleteColNames (int tgtStart, int len) |
void | setRowColNames (const CoinMpsIO &mps) |
void | setRowColNames (CoinModel &mod) |
void | setRowColNames (CoinLpIO &mod) |
virtual void | addCol (const CoinPackedVectorBase &vec, const double collb, const double colub, const double obj)=0 |
virtual void | addCol (const CoinPackedVectorBase &vec, const double collb, const double colub, const double obj, std::string name) |
virtual void | addCol (int numberElements, const int *rows, const double *elements, const double collb, const double colub, const double obj) |
virtual void | addCol (int numberElements, const int *rows, const double *elements, const double collb, const double colub, const double obj, std::string name) |
virtual void | addCols (const int numcols, const CoinPackedVectorBase *const *cols, const double *collb, const double *colub, const double *obj) |
virtual void | addCols (const int numcols, const CoinBigIndex *columnStarts, const int *rows, const double *elements, const double *collb, const double *colub, const double *obj) |
void | addCols (const CoinBuild &buildObject) |
int | addCols (CoinModel &modelObject) |
virtual void | deleteCols (const int num, const int *colIndices)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const double rowlb, const double rowub)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const double rowlb, const double rowub, std::string name) |
virtual void | addRow (const CoinPackedVectorBase &vec, const char rowsen, const double rowrhs, const double rowrng)=0 |
virtual void | addRow (const CoinPackedVectorBase &vec, const char rowsen, const double rowrhs, const double rowrng, std::string name) |
virtual void | addRow (int numberElements, const int *columns, const double *element, const double rowlb, const double rowub) |
virtual void | addRows (const int numrows, const CoinPackedVectorBase *const *rows, const double *rowlb, const double *rowub) |
virtual void | addRows (const int numrows, const CoinPackedVectorBase *const *rows, const char *rowsen, const double *rowrhs, const double *rowrng) |
virtual void | addRows (const int numrows, const CoinBigIndex *rowStarts, const int *columns, const double *element, const double *rowlb, const double *rowub) |
void | addRows (const CoinBuild &buildObject) |
int | addRows (CoinModel &modelObject) |
virtual void | deleteRows (const int num, const int *rowIndices)=0 |
virtual void | replaceMatrixOptional (const CoinPackedMatrix &) |
virtual void | replaceMatrix (const CoinPackedMatrix &) |
virtual void | saveBaseModel () |
virtual void | restoreBaseModel (int numberRows) |
virtual ApplyCutsReturnCode | applyCuts (const OsiCuts &cs, double effectivenessLb=0.0) |
virtual void | applyRowCuts (int numberCuts, const OsiRowCut *cuts) |
virtual void | applyRowCuts (int numberCuts, const OsiRowCut **cuts) |
void | deleteBranchingInfo (int numberDeleted, const int *which) |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub)=0 |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, double *&rowlb, double *&rowub)=0 |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const char *rowsen, const double *rowrhs, const double *rowrng)=0 |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, char *&rowsen, double *&rowrhs, double *&rowrng)=0 |
virtual void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub)=0 |
virtual void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const char *rowsen, const double *rowrhs, const double *rowrng)=0 |
virtual int | loadFromCoinModel (CoinModel &modelObject, bool keepSolution=false) |
virtual int | readMps (const char *filename, const char *extension="mps") |
virtual int | readMps (const char *filename, const char *extension, int &numberSets, CoinSet **&sets) |
virtual int | readGMPL (const char *filename, const char *dataname=NULL) |
virtual void | writeMps (const char *filename, const char *extension="mps", double objSense=0.0) const=0 |
int | writeMpsNative (const char *filename, const char **rowNames, const char **columnNames, int formatType=0, int numberAcross=2, double objSense=0.0, int numberSOS=0, const CoinSet *setInfo=NULL) const |
virtual void | writeLp (const char *filename, const char *extension="lp", double epsilon=1e-5, int numberAcross=10, int decimals=9, double objSense=0.0, bool useRowNames=true) const |
virtual void | writeLp (FILE *fp, double epsilon=1e-5, int numberAcross=10, int decimals=5, double objSense=0.0, bool useRowNames=true) const |
int | writeLpNative (const char *filename, char const *const *const rowNames, char const *const *const columnNames, const double epsilon=1.0e-5, const int numberAcross=10, const int decimals=5, const double objSense=0.0, const bool useRowNames=true) const |
int | writeLpNative (FILE *fp, char const *const *const rowNames, char const *const *const columnNames, const double epsilon=1.0e-5, const int numberAcross=10, const int decimals=5, const double objSense=0.0, const bool useRowNames=true) const |
virtual int | readLp (const char *filename, const double epsilon=1e-5) |
int | readLp (FILE *fp, const double epsilon=1e-5) |
int | differentModel (OsiSolverInterface &other, bool ignoreNames=true) |
void | statistics (double &minimumNegative, double &maximumNegative, double &minimumPositive, double &maximumPositive, int type=3) const |
void | setApplicationData (void *appData) |
void | setAuxiliaryInfo (OsiAuxInfo *auxiliaryInfo) |
void * | getApplicationData () const |
OsiAuxInfo * | getAuxiliaryInfo () const |
virtual void | passInMessageHandler (CoinMessageHandler *handler) |
void | newLanguage (CoinMessages::Language language) |
void | setLanguage (CoinMessages::Language language) |
CoinMessageHandler * | messageHandler () const |
CoinMessages | messages () |
CoinMessages * | messagesPointer () |
bool | defaultHandler () const |
void | findIntegers (bool justCount) |
virtual int | findIntegersAndSOS (bool justCount) |
int | numberObjects () const |
void | setNumberObjects (int number) |
OsiObject ** | objects () const |
const OsiObject * | object (int which) const |
OsiObject * | modifiableObject (int which) const |
void | deleteObjects () |
void | addObjects (int numberObjects, OsiObject **objects) |
double | forceFeasible () |
virtual void | activateRowCutDebugger (const char *modelName) |
virtual void | activateRowCutDebugger (const double *solution, bool enforceOptimality=true) |
const OsiRowCutDebugger * | getRowCutDebugger () const |
OsiRowCutDebugger * | getRowCutDebuggerAlways () const |
virtual int | canDoSimplexInterface () const |
virtual void | enableFactorization () const |
virtual void | disableFactorization () const |
virtual bool | basisIsAvailable () const |
bool | optimalBasisIsAvailable () const |
virtual void | getBasisStatus (int *cstat, int *rstat) const |
virtual int | setBasisStatus (const int *cstat, const int *rstat) |
virtual void | getReducedGradient (double *columnReducedCosts, double *duals, const double *c) const |
virtual void | getBInvARow (int row, double *z, double *slack=NULL) const |
virtual void | getBInvRow (int row, double *z) const |
virtual void | getBInvACol (int col, double *vec) const |
virtual void | getBInvCol (int col, double *vec) const |
virtual void | getBasics (int *index) const |
virtual void | enableSimplexInterface (bool doingPrimal) |
virtual void | disableSimplexInterface () |
virtual int | pivot (int colIn, int colOut, int outStatus) |
virtual int | primalPivotResult (int colIn, int sign, int &colOut, int &outStatus, double &t, CoinPackedVector *dx) |
virtual int | dualPivotResult (int &colIn, int &sign, int colOut, int outStatus, double &t, CoinPackedVector *dx) |
OsiSolverInterface () | |
virtual OsiSolverInterface * | clone (bool copyData=true) const=0 |
OsiSolverInterface (const OsiSolverInterface &) | |
OsiSolverInterface & | operator= (const OsiSolverInterface &rhs) |
virtual | ~OsiSolverInterface () |
virtual void | reset () |
Additional Inherited Members | |
![]() | |
typedef std::vector< std::string > | OsiNameVec |
![]() | |
virtual void | applyRowCut (const OsiRowCut &rc)=0 |
virtual void | applyColCut (const OsiColCut &cc)=0 |
void | convertBoundToSense (const double lower, const double upper, char &sense, double &right, double &range) const |
void | convertSenseToBound (const char sense, const double right, const double range, double &lower, double &upper) const |
T | forceIntoRange (const T value, const T lower, const T upper) const |
void | setInitialData () |
virtual void | applyRowCut (const OsiRowCut &rc)=0 |
virtual void | applyColCut (const OsiColCut &cc)=0 |
void | convertBoundToSense (const double lower, const double upper, char &sense, double &right, double &range) const |
void | convertSenseToBound (const char sense, const double right, const double range, double &lower, double &upper) const |
T | forceIntoRange (const T value, const T lower, const T upper) const |
void | setInitialData () |
![]() | |
OsiRowCutDebugger * | rowCutDebugger_ |
CoinMessageHandler * | handler_ |
bool | defaultHandler_ |
CoinMessages | messages_ |
int | numberIntegers_ |
int | numberObjects_ |
OsiObject ** | object_ |
char * | columnType_ |
This is class provides an Osi interface for a Mixed Integer Linear Program expressed as a TMINLP (so that we can use it for example as the continuous solver in Cbc).
Definition at line 59 of file CouenneMINLPInterface.hpp.
|
inline |
REMOVE — backward compatibility sets objective[index] at newObj
Definition at line 65 of file CouenneMINLPInterface.hpp.
void Couenne::CouenneMINLPInterface::setInitSol | ( | const CouNumber * | sol | ) |
sets the initial solution for the NLP solver
solves and returns the optimal objective function and the solution
|
inline |
return pointer to Couenne problem
Definition at line 75 of file CouenneMINLPInterface.hpp.
|
inline |
return pointer to options
Definition at line 79 of file CouenneMINLPInterface.hpp.