Bonmin 1.8.9
|
Class for providing an Osi interface to Ipopt with an ampl nl file as input. More...
#include <BonAmplInterface.hpp>
Public Member Functions | |
AmplInterface () | |
Default constructor. | |
![]() | |
TNLPSolver::UnsolvedError * | newUnsolvedError (int num, Ipopt::SmartPtr< TMINLP2TNLP > problem, std::string name) |
OsiTMINLPInterface () | |
Default Constructor. | |
void | initialize (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions, Ipopt::SmartPtr< Ipopt::OptionsList > options, Ipopt::SmartPtr< Ipopt::Journalist > journalist, const std::string &prefix, Ipopt::SmartPtr< TMINLP > tminlp) |
Facilitator to initialize interface. | |
void | initialize (Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions, Ipopt::SmartPtr< Ipopt::OptionsList > options, Ipopt::SmartPtr< Ipopt::Journalist > journalist, Ipopt::SmartPtr< TMINLP > tminlp) |
Facilitator to initialize interface. | |
void | setModel (Ipopt::SmartPtr< TMINLP > tminlp) |
Set the model to be solved by interface. | |
void | setSolver (Ipopt::SmartPtr< TNLPSolver > app) |
Set the solver to be used by interface. | |
void | use (Ipopt::SmartPtr< TMINLP2TNLP > tminlp2tnlp) |
Sets the TMINLP2TNLP to be used by the interface. | |
OsiTMINLPInterface (const OsiTMINLPInterface &) | |
Copy constructor. | |
OsiSolverInterface * | clone (bool copyData=true) const |
Virtual copy constructor. | |
OsiTMINLPInterface & | operator= (const OsiTMINLPInterface &rhs) |
Assignment operator. | |
virtual | ~OsiTMINLPInterface () |
Destructor. | |
void | readOptionFile (const std::string &fileName) |
Read parameter file. | |
const Ipopt::SmartPtr< Ipopt::OptionsList > | options () const |
Retrieve OsiTMINLPApplication option list. | |
Ipopt::SmartPtr< Ipopt::OptionsList > | options () |
Retrieve OsiTMINLPApplication option list. | |
const char * | prefix () const |
virtual void | initialSolve () |
Solve initial continuous relaxation. | |
virtual void | initialSolve (const char *whereFrom) |
Solve initial continuous relaxation (precising from where) | |
virtual void | resolve () |
Resolve the continuous relaxation after problem modification. | |
virtual void | resolve (const char *whereFrom) |
Resolve the continuous relaxation after problem modification. | |
virtual void | resolveForCost (int numretry, bool keepWs) |
Resolve the problem with different random starting points to try to find a better solution (only makes sense for a non-convex problem. | |
virtual void | resolveForRobustness (int numretry) |
Method to be called when a problem has failed to be solved. | |
virtual void | branchAndBound () |
Nescessary for compatibility with OsiSolverInterface but does nothing. | |
virtual bool | isAbandoned () const |
Are there a numerical difficulties? | |
virtual bool | isProvenOptimal () const |
Is optimality proven? | |
virtual bool | isProvenPrimalInfeasible () const |
Is primal infeasiblity proven? | |
virtual bool | isProvenDualInfeasible () const |
Is dual infeasiblity proven? | |
virtual bool | isPrimalObjectiveLimitReached () const |
Is the given primal objective limit reached? | |
virtual bool | isDualObjectiveLimitReached () const |
Is the given dual objective limit reached? | |
virtual bool | isIterationLimitReached () const |
Iteration limit reached? | |
void | continuingOnAFailure () |
Warn solver that branch-and-bound is continuing after a failure. | |
double | getNewCutoffDecr () |
void | setNewCutoffDecr (double d) |
bool | hasContinuedOnAFailure () |
Did we continue on a failure. | |
void | ignoreFailures () |
tell to ignore the failures (don't throw, don't fathom, don't report) | |
void | forceInfeasible () |
Force current solution to be infeasible. | |
void | forceBranchable () |
Force current solution to be branched on (make it fractionnal with small objective) | |
bool | setIntParam (OsiIntParam key, int value) |
bool | setDblParam (OsiDblParam key, double value) |
bool | setStrParam (OsiStrParam key, const std::string &value) |
bool | getIntParam (OsiIntParam key, int &value) const |
bool | getDblParam (OsiDblParam key, double &value) const |
bool | getStrParam (OsiStrParam key, std::string &value) const |
double | getPushFact () const |
virtual int | getNumCols () const |
Get number of columns. | |
virtual int | getNumRows () const |
Get number of rows. | |
const OsiSolverInterface::OsiNameVec & | getVarNames () |
get name of variables | |
virtual const double * | getColLower () const |
Get pointer to array[getNumCols()] of column lower bounds. | |
virtual const double * | getColUpper () const |
Get pointer to array[getNumCols()] of column upper bounds. | |
virtual const char * | getRowSense () const |
Get pointer to array[getNumRows()] of row constraint senses. | |
virtual const double * | getRightHandSide () const |
Get pointer to array[getNumRows()] of rows right-hand sides. | |
virtual const double * | getRowRange () const |
Get pointer to array[getNumRows()] of row ranges. | |
virtual const double * | getRowLower () const |
Get pointer to array[getNumRows()] of row lower bounds. | |
virtual const double * | getRowUpper () const |
Get pointer to array[getNumRows()] of row upper bounds. | |
virtual double | getObjSense () const |
Get objective function sense (1 for min (default), -1 for max) Always minimizes. | |
virtual bool | isContinuous (int colNumber) const |
Return true if column is continuous. | |
virtual bool | isBinary (int columnNumber) const |
Return true if column is binary. | |
virtual bool | isInteger (int columnNumber) const |
Return true if column is integer. | |
virtual bool | isIntegerNonBinary (int columnNumber) const |
Return true if column is general integer. | |
virtual bool | isFreeBinary (int columnNumber) const |
Return true if column is binary and not fixed at either bound. | |
virtual double | getInfinity () const |
Get solver's value for infinity. | |
const int * | getPriorities () const |
Get priorities on integer variables. | |
const int * | getBranchingDirections () const |
get prefered branching directions | |
const double * | getUpPsCosts () const |
const double * | getDownPsCosts () const |
virtual const double * | getColSolution () const |
Get pointer to array[getNumCols()] of primal solution vector. | |
virtual const double * | getRowPrice () const |
Get pointer to array[getNumRows()] of dual prices. | |
virtual const double * | getReducedCost () const |
Get a pointer to array[getNumCols()] of reduced costs. | |
virtual const double * | getRowActivity () const |
Get pointer to array[getNumRows()] of row activity levels (constraint matrix times the solution vector. | |
virtual int | getIterationCount () const |
Get how many iterations it took to solve the problem (whatever "iteration" mean to the solver. | |
int | nCallOptimizeTNLP () |
get total number of calls to solve. | |
double | totalNlpSolveTime () |
get total time taken to solve NLP's. | |
int | totalIterations () |
get total number of iterations | |
virtual void | setColLower (int elementIndex, double elementValue) |
Set a single column lower bound. | |
virtual void | setColUpper (int elementIndex, double elementValue) |
Set a single column upper bound. | |
virtual void | setColLower (const double *array) |
Set the lower bounds for all columns array [getNumCols()] is an array of values for the objective. | |
virtual void | setColUpper (const double *array) |
Set the upper bounds for all columns array [getNumCols()] is an array of values for the objective. | |
virtual void | setRowLower (int elementIndex, double elementValue) |
Set a single row lower bound. | |
virtual void | setRowUpper (int elementIndex, double elementValue) |
Set a single row upper bound. | |
virtual void | setRowType (int index, char sense, double rightHandSide, double range) |
Set the type of a single row. | |
virtual void | setObjSense (double s) |
Set the objective function sense (disabled). | |
virtual void | setColSolution (const double *colsol) |
Set the primal solution variable values Set the values for the starting point. | |
virtual void | setRowPrice (const double *rowprice) |
Set dual solution variable values. | |
virtual CoinWarmStart * | getEmptyWarmStart () const |
Get an empty warm start object. | |
virtual CoinWarmStart * | getWarmStart () const |
Get warmstarting information. | |
virtual bool | setWarmStart (const CoinWarmStart *warmstart) |
Set warmstarting information. | |
void | setWarmStartMode (int mode) |
WarmStartModes | getWarmStartMode () |
void | randomStartingPoint () |
virtual bool | basisIsAvailable () const |
virtual void | setContinuous (int index) |
Set the index-th variable to be a continuous variable. | |
virtual void | setInteger (int index) |
Set the index-th variable to be an integer variable. | |
void | setNumIterationSuspect (int value) |
virtual int | getNumElements () const |
Cbc will understand that no matrix exsits if return -1. | |
virtual const double * | getObjCoefficients () const |
This returns the objective function gradient at the current point. | |
virtual const CoinPackedMatrix * | getMatrixByRow () const |
We have to keep this but it will return NULL. | |
virtual const CoinPackedMatrix * | getMatrixByCol () const |
We have to keep this but it will return NULL. | |
virtual void | setObjCoeff (int elementIndex, double elementValue) |
We have to keep this but it will throw an error. | |
virtual void | addCol (const CoinPackedVectorBase &vec, const double collb, const double colub, const double obj) |
We have to keep this but it will throw an error. | |
virtual void | deleteCols (const int num, const int *colIndices) |
We have to keep this but it will throw an error. | |
virtual void | addRow (const CoinPackedVectorBase &vec, const double rowlb, const double rowub) |
We have to keep this but it will throw an error. | |
virtual void | addRow (const CoinPackedVectorBase &vec, const char rowsen, const double rowrhs, const double rowrng) |
We have to keep this but it will throw an error. | |
virtual void | deleteRows (const int num, const int *rowIndices) |
We have to keep this but it will throw an error. | |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub) |
We have to keep this but it will throw an error. | |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, double *&rowlb, double *&rowub) |
We have to keep this but it will throw an error. | |
virtual void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const char *rowsen, const double *rowrhs, const double *rowrng) |
We have to keep this but it will throw an error. | |
virtual void | assignProblem (CoinPackedMatrix *&matrix, double *&collb, double *&colub, double *&obj, char *&rowsen, double *&rowrhs, double *&rowrng) |
We have to keep this but it will throw an error. | |
virtual void | loadProblem (const int numcols, const int numrows, const int *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub) |
We have to keep this but it will throw an error. | |
virtual void | loadProblem (const int numcols, const int numrows, const int *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) |
We have to keep this but it will throw an error. | |
virtual int | readMps (const char *filename, const char *extension="mps") |
We have to keep this but it will throw an error. | |
virtual void | writeMps (const char *filename, const char *extension="mps", double objSense=0.0) const |
We have to keep this but it will throw an error. | |
virtual std::vector< double * > | getDualRays (int maxNumRays, bool fullRay=false) const |
Throws an error. | |
virtual std::vector< double * > | getPrimalRays (int maxNumRays) const |
Throws an error. | |
void | setSolverOutputToDefault () |
void | forceSolverOutput (int log_level) |
virtual double | getObjValue () const |
Get objective function value (can't use default) | |
const TMINLP2TNLP * | problem () const |
get pointer to the TMINLP2TNLP adapter | |
TMINLP2TNLP * | problem () |
const TMINLP * | model () const |
Bonmin::TMINLP * | model () |
const Bonmin::TNLPSolver * | solver () const |
const std::list< Ipopt::SmartPtr< TNLPSolver > > & | debug_apps () const |
TNLPSolver * | solver () |
virtual void | extractLinearRelaxation (OsiSolverInterface &si, const double *x, bool getObj=1) |
Extract a linear relaxation of the MINLP. | |
virtual void | addObjectiveFunction (OsiSolverInterface &si, const double *x) |
Add constraint corresponding to objective function. | |
virtual void | extractLinearRelaxation (OsiSolverInterface &si, bool getObj=1, bool solveNlp=1) |
Extract a linear relaxation of the MINLP. | |
void | getOuterApproximation (OsiCuts &cs, int getObj, const double *x2, bool global) |
Get the outer approximation constraints at the current optimal point. | |
void | getOuterApproximation (OsiCuts &cs, const double *x, int getObj, const double *x2, bool global) |
Get the outer approximation constraints at provided point. | |
virtual void | getOuterApproximation (OsiCuts &cs, const double *x, int getObj, const double *x2, double theta, bool global) |
Get the outer approximation constraints at provided point. | |
virtual void | getConstraintOuterApproximation (OsiCuts &cs, int constraintNumber, const double *x, const double *x2, bool global) |
Get the outer approximation at provided point for given constraint. | |
void | getConstraintOuterApproximation (OsiCuts &cs, int constraintNumber, const double *x2, bool global) |
Get the outer approximation at current optimal point for given constraint. | |
void | getBendersCut (OsiCuts &cs, bool global) |
Get a benders cut from solution. | |
double | solveFeasibilityProblem (size_t n, const double *x_bar, const int *ind, double a, double s, int L) |
Given a point x_bar this solves the problem of finding the point which minimize a convex combination between the distance to x_bar and the original objective function f(x): ![]() | |
![]() | |
virtual bool | setHintParam (OsiHintParam key, bool yesNo=true, OsiHintStrength strength=OsiHintTry, void *=NULL) |
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 CoinWarmStart * | getPointerToWarmStart (bool &mustDelete) |
virtual void | markHotStart () |
virtual void | solveFromHotStart () |
virtual void | unmarkHotStart () |
virtual int | getNumIntegers () const |
const char * | columnType (bool refresh=false) const |
void | setColumnType (int iColumn, char type) |
virtual const char * | getColType (bool refresh=false) const |
virtual CoinPackedMatrix * | getMutableMatrixByRow () const |
virtual CoinPackedMatrix * | getMutableMatrixByCol () const |
virtual const double * | getStrictColSolution () |
virtual OsiVectorInt | getFractionalIndices (const double etol=1.e-05) const |
virtual void | setObjCoeffSet (const int *indexFirst, const int *indexLast, const double *coeffList) |
virtual void | setObjective (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 | setRowBounds (int elementIndex, double lower, double upper) |
virtual void | setRowSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowSetTypes (const int *indexFirst, const int *indexLast, const char *senseList, const double *rhsList, const double *rangeList) |
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, 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 | 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, 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 | 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 int | loadFromCoinModel (CoinModel &modelObject, bool keepSolution=false) |
virtual int | readMps (const char *filename, const char *extension, int &numberSets, CoinSet **&sets) |
virtual int | readGMPL (const char *filename, const char *dataname=NULL) |
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 |
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 () | |
OsiSolverInterface (const OsiSolverInterface &) | |
OsiSolverInterface & | operator= (const OsiSolverInterface &rhs) |
virtual | ~OsiSolverInterface () |
virtual void | reset () |
virtual void | setContinuous (const int *indices, int len) |
virtual void | setInteger (const int *indices, int len) |
virtual bool | setHintParam (OsiHintParam key, bool yesNo=true, OsiHintStrength strength=OsiHintTry, void *=NULL) |
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 CoinWarmStart * | getPointerToWarmStart (bool &mustDelete) |
virtual void | markHotStart () |
virtual void | solveFromHotStart () |
virtual void | unmarkHotStart () |
virtual int | getNumIntegers () const |
const char * | columnType (bool refresh=false) const |
void | setColumnType (int iColumn, char type) |
virtual const char * | getColType (bool refresh=false) const |
virtual CoinPackedMatrix * | getMutableMatrixByRow () const |
virtual CoinPackedMatrix * | getMutableMatrixByCol () const |
virtual const double * | getStrictColSolution () |
virtual OsiVectorInt | getFractionalIndices (const double etol=1.e-05) const |
virtual void | setObjCoeffSet (const int *indexFirst, const int *indexLast, const double *coeffList) |
virtual void | setObjective (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 | setRowBounds (int elementIndex, double lower, double upper) |
virtual void | setRowSetBounds (const int *indexFirst, const int *indexLast, const double *boundList) |
virtual void | setRowSetTypes (const int *indexFirst, const int *indexLast, const char *senseList, const double *rhsList, const double *rangeList) |
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, 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 | 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, 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 | 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 int | loadFromCoinModel (CoinModel &modelObject, bool keepSolution=false) |
virtual int | readMps (const char *filename, const char *extension, int &numberSets, CoinSet **&sets) |
virtual int | readGMPL (const char *filename, const char *dataname=NULL) |
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 |
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 () | |
OsiSolverInterface (const OsiSolverInterface &) | |
OsiSolverInterface & | operator= (const OsiSolverInterface &rhs) |
virtual | ~OsiSolverInterface () |
virtual void | reset () |
Methods to input a problem | |
Ipopt::SmartPtr< Bonmin::AmplTMINLP > | amplTminlp_ |
TMINLP problem (the original problem usually an AmplTMINLP). | |
virtual void | readAmplNlFile (char **&argv, Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions, Ipopt::SmartPtr< Ipopt::OptionsList > options, Ipopt::SmartPtr< Ipopt::Journalist > journalist, std::string *nl_file_content=NULL) |
AmplInterface (const AmplInterface &other) | |
Copy constructor. | |
virtual OsiSolverInterface * | clone (bool CopyData=true) |
Clone. | |
virtual | ~AmplInterface () |
Destructor. | |
const AmplTMINLP * | amplModel () const |
Fast access to AmplTMINLP. | |
virtual void | setAppDefaultOptions (Ipopt::SmartPtr< Ipopt::OptionsList > Options) |
To set some application specific defaults. | |
void | readNames () |
Read variables and row names in .col and .row files. | |
Additional Inherited Members | |
![]() | |
enum | WarmStartModes { None , FakeBasis , Optimum , InteriorPoint } |
enum | MessagesTypes { SOLUTION_FOUND , INFEASIBLE_SOLUTION_FOUND , UNSOLVED_PROBLEM_FOUND , WARNING_RESOLVING , WARN_SUCCESS_WS , WARN_SUCCESS_RANDOM , WARN_CONTINUING_ON_FAILURE , SUSPECT_PROBLEM , SUSPECT_PROBLEM2 , IPOPT_SUMMARY , BETTER_SOL , LOG_HEAD , LOG_FIRST_LINE , LOG_LINE , ALTERNATE_OBJECTIVE , WARN_RESOLVE_BEFORE_INITIAL_SOLVE , ERROR_NO_TNLPSOLVER , WARNING_NON_CONVEX_OA , SOLVER_DISAGREE_STATUS , SOLVER_DISAGREE_VALUE , OSITMINLPINTERFACE_DUMMY_END } |
Type of the messages specifically written by OsiTMINLPInterface. More... | |
![]() | |
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_ |
Class for providing an Osi interface to Ipopt with an ampl nl file as input.
Definition at line 22 of file BonAmplInterface.hpp.
Bonmin::AmplInterface::AmplInterface | ( | ) |
Default constructor.
Default constructor only available for Bonmin's friends and child classes.
Bonmin::AmplInterface::AmplInterface | ( | const AmplInterface & | other | ) |
Copy constructor.
|
virtual |
Destructor.
|
virtual |
|
virtual |
Clone.
|
inline |
Fast access to AmplTMINLP.
Definition at line 45 of file BonAmplInterface.hpp.
|
virtual |
To set some application specific defaults.
|
protected |
Read variables and row names in .col and .row files.
|
protected |
TMINLP problem (the original problem usually an AmplTMINLP).
Definition at line 57 of file BonAmplInterface.hpp.