59 double ub,
double obj,
char isInteger,
60 int nz,
int *rows,
double *coefs);
76 const int *cols,
const double *coefs,
char sense,
double rhs);
81 const int *colIndices,
const double *weights,
const int type);
106 const double *collb,
const double *colub,
108 const double *rowlb,
const double *rowub);
616 const char *name,
void *appData );
894 OsiCuts_addRowCut(
void *osiCuts,
int nz,
const int *idx,
const double *coef,
char sense,
double rhs );
COINLIBAPI void COINLINKAGE Cbc_setObjCoeff(Cbc_Model *model, int index, double value)
Set the objective coefficient of a single variable.
COINLIBAPI char COINLINKAGE Osi_getRowSense(void *osi, int row)
Sense a row.
COINLIBAPI void COINLINKAGE Cbc_setContinuous(Cbc_Model *model, int iColumn)
Set this variable to be continuous.
COINLIBAPI int COINLINKAGE Osi_isInteger(void *osi, int col)
Returns integrality information for columns in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_isProvenOptimal(Cbc_Model *model)
If the optimal solution was found.
COINLIBAPI void COINLINKAGE Cbc_addCutCallback(Cbc_Model *model, cbc_cut_callback cutcb, const char *name, void *appData)
Pass in Callback function.
COINLIBAPI int COINLINKAGE Cbc_numberSavedSolutions(Cbc_Model *model)
number of integer feasible solution saved
COINLIBAPI int COINLINKAGE Cbc_getMaximumSolutions(Cbc_Model *model)
returns solution limit for the search process
COINLIBAPI const double *COINLINKAGE Cbc_getRowLower(Cbc_Model *model)
Constraint lower bounds.
COINLIBAPI double COINLINKAGE Cbc_sumPrimalInfeasibilities(Cbc_Model *model)
Sum of primal infeasibilities.
COINLIBAPI int COINLINKAGE Osi_getNumCols(void *osi)
Returns number of cols in OsiSolverInterface object.
COINLIBAPI const double *COINLINKAGE Cbc_getRowUpper(Cbc_Model *model)
Constraint upper bounds.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_newModel(void)
Creates an empty problem.
COINLIBAPI void COINLINKAGE Cbc_loadProblem(Cbc_Model *model, 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)
Loads a problem (the constraints on the rows are given by lower and upper bounds).
COINLIBAPI void COINLINKAGE OsiCuts_addRowCut(void *osiCuts, int nz, const int *idx, const double *coef, char sense, double rhs)
adds a row cut (used in callback)
COINLIBAPI const int *COINLINKAGE Osi_getRowIndices(void *osi, int row)
Indices of variables that appear on a row.
COINLIBAPI void COINLINKAGE Cbc_setParameter(Cbc_Model *model, const char *name, const char *value)
Set parameter "name" to value "value".
COINLIBAPI void COINLINKAGE Cbc_writeMps(Cbc_Model *model, const char *filename)
Write an mps file from the given filename.
COINLIBAPI int COINLINKAGE Cbc_isProvenInfeasible(Cbc_Model *model)
If infeasibility was proven.
COINLIBAPI void COINLINKAGE Cbc_setRowLower(Cbc_Model *model, int index, double value)
Set the lower bound of a single constraint.
COINLIBAPI int COINLINKAGE Cbc_getNumIntegers(Cbc_Model *model)
Number of integer variables in the model.
void(COINLINKAGE_CB * cbc_cut_callback)(void *osiSolver, void *osiCuts, void *appdata)
typedef for cbc cut callback osiSolver needs to be an OsiSolverInterface object, osiCuts is an OsiCut...
COINLIBAPI double *COINLINKAGE Cbc_bestSolution(Cbc_Model *model)
Best integer feasible solution.
COINLIBAPI int COINLINKAGE Osi_getRowNz(void *osi, int row)
Returns number of cols in OsiSolverInterface object.
COINLIBAPI const double *COINLINKAGE Cbc_savedSolution(Cbc_Model *model, int whichSol)
Vector with the i-th saved solution.
COINLIBAPI const double *COINLINKAGE Cbc_getRowCoeffs(Cbc_Model *model, int row)
Coefficients of variables that appear on this row.
COINLIBAPI int COINLINKAGE Cbc_getMaximumNodes(Cbc_Model *model)
returns the maximum number of nodes that can be explored in the search tree
COINLIBAPI void COINLINKAGE Cbc_addCol(Cbc_Model *model, const char *name, double lb, double ub, double obj, char isInteger, int nz, int *rows, double *coefs)
Creates a new column.
COINLIBAPI int COINLINKAGE Cbc_solve(Cbc_Model *model)
COINLIBAPI void COINLINKAGE Cbc_setMaximumNodes(Cbc_Model *model, int maxNodes)
sets the maximum number of nodes that can be explored in the search tree
COINLIBAPI void COINLINKAGE Cbc_setColName(Cbc_Model *model, int iColumn, const char *name)
Set the name of a column.
COINLIBAPI double COINLINKAGE Cbc_getAllowableFractionGap(Cbc_Model *model)
returns the allowable fraction gap
COINLIBAPI void COINLINKAGE Cbc_clearCallBack(Cbc_Model *model)
Unset Callback function.
COINLIBAPI double COINLINKAGE Osi_getRowRHS(void *osi, int row)
Right hand side of a row.
COINLIBAPI size_t COINLINKAGE Cbc_maxNameLength(Cbc_Model *model)
Maximum lenght of a row or column name.
COINLIBAPI int COINLINKAGE Cbc_isInteger(Cbc_Model *model, int i)
Determine whether the ith variable is integer restricted.
COINLIBAPI int COINLINKAGE Osi_getNumRows(void *osi)
Returns number of rows in OsiSolverInterface object.
COINLIBAPI void COINLINKAGE Cbc_setObjSense(Cbc_Model *model, double sense)
Sets optimization direction.
COINLIBAPI int COINLINKAGE Cbc_getIterationCount(Cbc_Model *model)
Number of iterations.
COINLIBAPI int COINLINKAGE Cbc_getNumCols(Cbc_Model *model)
Number of variables in the model.
COINLIBAPI const char *COINLINKAGE Cbc_getVersion(void)
Current version of Cbc.
COINLIBAPI void COINLINKAGE Cbc_getRowName(Cbc_Model *model, int iRow, char *name, size_t maxLength)
Queries row name.
COINLIBAPI double COINLINKAGE Cbc_getMaximumSeconds(Cbc_Model *model)
returns the time limit for the search process
COINLIBAPI const double *COINLINKAGE Cbc_getObjCoefficients(Cbc_Model *model)
Objective vector.
COINLIBAPI const double *COINLINKAGE Cbc_getReducedCost(Cbc_Model *model)
Queries vector of reduced costs.
COINLIBAPI void COINLINKAGE Cbc_setAllowableFractionGap(Cbc_Model *model, double allowedFracionGap)
sets the allowable fraction gap
COINLIBAPI void COINLINKAGE Cbc_setRowName(Cbc_Model *model, int iRow, const char *name)
Set the name of a row.
COINLIBAPI void COINLINKAGE Cbc_registerCallBack(Cbc_Model *model, cbc_callback userCallBack)
Pass in Callback function.
COINLIBAPI void COINLINKAGE Osi_getColName(void *osi, int i, char *name, int maxLen)
Returns column name in OsiSolverInterface object.
COINLIBAPI int COINLINKAGE Cbc_getColNz(Cbc_Model *model, int col)
Number of non-zero entries in a column.
COINLIBAPI int COINLINKAGE Cbc_getNodeCount(Cbc_Model *model)
Number of nodes explored in B&B tree.
COINLIBAPI Cbc_Model *COINLINKAGE Cbc_clone(Cbc_Model *model)
Creates a copy of the current model.
COINLIBAPI const double *COINLINKAGE Cbc_getColLower(Cbc_Model *model)
Variable lower bounds.
COINLIBAPI int COINLINKAGE Cbc_isContinuousUnbounded(Cbc_Model *model)
Is continuous model unbounded ?
COINLIBAPI void COINLINKAGE Cbc_addSOS(Cbc_Model *model, int numRows, const int *rowStarts, const int *colIndices, const double *weights, const int type)
Add SOS constraints to the model using row-order matrix.
COINLIBAPI const int *COINLINKAGE Cbc_getRowIndices(Cbc_Model *model, int row)
Indices of variables that appear on a row.
COINLIBAPI void COINLINKAGE Cbc_setMaximumSeconds(Cbc_Model *model, double maxSeconds)
sets the time limit for the search process
COINLIBAPI int COINLINKAGE Cbc_getRowNz(Cbc_Model *model, int row)
Number of non-zero entries in a row.
COINLIBAPI const double *COINLINKAGE Cbc_getColCoeffs(Cbc_Model *model, int col)
Coefficients that a column appear in rows.
COINLIBAPI void COINLINKAGE Cbc_setAllowablePercentageGap(Cbc_Model *model, double allowedPercentageGap)
sets the allowable percentage gap
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveAbandoned(Cbc_Model *model)
Are there numerical difficulties (for initialSolve) ?
COINLIBAPI int COINLINKAGE Cbc_getNumElements(Cbc_Model *model)
Number of nonzero elements in constraint matrix.
COINLIBAPI int COINLINKAGE Cbc_setProblemName(Cbc_Model *model, const char *array)
Sets problem name.
COINLIBAPI const int *COINLINKAGE Cbc_getIndices(Cbc_Model *model)
"Row index" vector of constraint matrix
COINLIBAPI char COINLINKAGE Cbc_getRowSense(Cbc_Model *model, int row)
Sense a row.
#define COINLIBAPI
This has #defines etc for the "C" interface to Coin.
COINLIBAPI int COINLINKAGE Cbc_status(Cbc_Model *model)
Final optimization status.
COINLIBAPI void COINLINKAGE Cbc_setMaximumSolutions(Cbc_Model *model, int maxSolutions)
sets a solution limit as a stopping criterion
COINLIBAPI double COINLINKAGE Cbc_getCutoff(Cbc_Model *model)
returns the cutoff
void(COINLINKAGE_CB * cbc_callback)(Cbc_Model *model, int msgno, int ndouble, const double *dvec, int nint, const int *ivec, int nchar, char **cvec)
COINLIBAPI const int *COINLINKAGE Cbc_getColIndices(Cbc_Model *model, int col)
Indices of rows that a column appears.
COINLIBAPI void COINLINKAGE Cbc_setInteger(Cbc_Model *model, int iColumn)
Set this variable to be integer.
COINLIBAPI const double *COINLINKAGE Osi_getColLower(void *osi)
Returns column lower bounds in OsiSolverInterface object.
COINLIBAPI void COINLINKAGE Cbc_setColUpper(Cbc_Model *model, int index, double value)
Set the upper bound of a single variable.
COINLIBAPI void COINLINKAGE Cbc_setMIPStart(Cbc_Model *model, int count, const char **colNames, const double colValues[])
Enter initial feasible solution.
COINLIBAPI int COINLINKAGE Cbc_readMps(Cbc_Model *model, const char *filename)
Read an mps file from the given filename.
COINLIBAPI const double *COINLINKAGE Osi_getColSolution(void *osi)
Returns solution vector in OsiSolverInterface object.
COINLIBAPI void COINLINKAGE Cbc_printSolution(Cbc_Model *model)
Print the solution.
COINLIBAPI int COINLINKAGE Cbc_numberPrimalInfeasibilities(Cbc_Model *model)
Number of primal infeasibilities.
COINLIBAPI const CoinBigIndex *COINLINKAGE Cbc_getVectorStarts(Cbc_Model *model)
"Column start" vector of constraint matrix.
COINLIBAPI void COINLINKAGE Cbc_checkSolution(Cbc_Model *model)
Just check solution (for external use) - sets sum of infeasibilities etc.
COINLIBAPI void COINLINKAGE Cbc_setRowUpper(Cbc_Model *model, int index, double value)
Set the upper bound of a single constraint.
COINLIBAPI int COINLINKAGE Cbc_readLp(Cbc_Model *model, const char *filename)
Read an lp file from the given filename.
COINLIBAPI const double *COINLINKAGE Cbc_getElements(Cbc_Model *model)
Coefficient vector of constraint matrix.
COINLIBAPI void COINLINKAGE Cbc_setMIPStartI(Cbc_Model *model, int count, const int colIdxs[], const double colValues[])
Enter initial feasible solution.
COINLIBAPI const double *COINLINKAGE Osi_getColUpper(void *osi)
Returns column upper bounds in OsiSolverInterface object.
COINLIBAPI void COINLINKAGE Cbc_addRow(Cbc_Model *model, const char *name, int nz, const int *cols, const double *coefs, char sense, double rhs)
Adds a new row.
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveProvenPrimalInfeasible(Cbc_Model *model)
Is primal infeasiblity proven (for initialSolve) ?
COINLIBAPI double COINLINKAGE Cbc_savedSolutionObj(Cbc_Model *model, int whichSol)
Cost of the whichSol solution.
COINLIBAPI int COINLINKAGE Cbc_getLogLevel(Cbc_Model *model)
returns the current log leven
COINLIBAPI void COINLINKAGE Cbc_setLogLevel(Cbc_Model *model, int logLevel)
sets the log level
COINLIBAPI const double *COINLINKAGE Cbc_getRowActivity(Cbc_Model *model)
"row" solution This is the vector A*x, where A is the constraint matrix and x is the current solution...
COINLIBAPI void COINLINKAGE Cbc_setAllowableGap(Cbc_Model *model, double allowedGap)
sets the allowable gap
COINLIBAPI double COINLINKAGE Cbc_getObjValue(Cbc_Model *model)
Objective value of best feasible solution.
COINLIBAPI int COINLINKAGE Cbc_isSecondsLimitReached(Cbc_Model *model)
Time limit reached?
COINLIBAPI int COINLINKAGE Cbc_isNodeLimitReached(Cbc_Model *model)
Node limit reached?
COINLIBAPI void COINLINKAGE Cbc_setInitialSolution(Cbc_Model *model, const double *sol)
Provide an initial feasible solution to accelerate branch-and-bound Note that feasibility of the solu...
COINLIBAPI int COINLINKAGE Cbc_isSolutionLimitReached(Cbc_Model *model)
Solution limit reached?
COINLIBAPI void COINLINKAGE Cbc_setColLower(Cbc_Model *model, int index, double value)
Set the lower bound of a single variable.
COINLIBAPI int COINLINKAGE Cbc_secondaryStatus(Cbc_Model *model)
Secondary status of problem.
COINLIBAPI void COINLINKAGE Cbc_problemName(Cbc_Model *model, int maxNumberCharacters, char *array)
Queries problem name.
COINLIBAPI double COINLINKAGE Cbc_getAllowablePercentageGap(Cbc_Model *model)
returns the allowable percentage gap
COINLIBAPI int COINLINKAGE Cbc_isAbandoned(Cbc_Model *model)
If optimization was abandoned due to numerical difficulties.
COINLIBAPI void COINLINKAGE Cbc_deleteModel(Cbc_Model *model)
Cbc_Model destructor.
COINLIBAPI double COINLINKAGE Cbc_getAllowableGap(Cbc_Model *model)
returns the allowable gap
COINLIBAPI int COINLINKAGE Cbc_isInitialSolveProvenOptimal(Cbc_Model *model)
Is optimality proven (for initialSolve) ?
COINLIBAPI const double *COINLINKAGE Cbc_getColUpper(Cbc_Model *model)
Variable upper bounds.
COINLIBAPI const double *COINLINKAGE Cbc_getColSolution(Cbc_Model *model)
Best feasible solution vector.
COINLIBAPI double COINLINKAGE Cbc_getBestPossibleObjValue(Cbc_Model *model)
Best known bound on the optimal objective value.
COINLIBAPI void COINLINKAGE Cbc_writeLp(Cbc_Model *model, const char *filename)
Write an lp file from the given filename.
COINLIBAPI double COINLINKAGE Cbc_getObjSense(Cbc_Model *model)
Direction of optimization.
COINLIBAPI int COINLINKAGE Cbc_getNumRows(Cbc_Model *model)
Number of constraints in the model.
COINLIBAPI double COINLINKAGE Cbc_getRowRHS(Cbc_Model *model, int row)
Right hand side of a row.
COINLIBAPI const double *COINLINKAGE Osi_getRowCoeffs(void *osi, int row)
Coefficients of variables that appear on this row.
COINLIBAPI void COINLINKAGE Cbc_setCutoff(Cbc_Model *model, double cutoff)
sets the cutoff
COINLIBAPI void COINLINKAGE Cbc_getColName(Cbc_Model *model, int iColumn, char *name, size_t maxLength)
Queries column name.
COINLIBAPI void COINLINKAGE Cbc_printModel(Cbc_Model *model, const char *argPrefix)
Print the model.