- Main Page
- Modules
- Classes
- Namespaces
- Files
- Related Pages

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
List of all members | Public Member Functions
CbcMip Class Reference
LP and MIP Solvers

## Detailed Description

This class implements an interface for the CBC MIP solver.

`#include <lemon/cbc.h>`

Inheritance diagram for CbcMip:
[legend]

## Public Member Functions
| CbcMip ()
| CbcMip (const CbcMip &)
| ~CbcMip ()
virtual CbcMip * | newSolver () const
virtual CbcMip * | cloneSolver () const
Public Member Functions inherited from MipSolver
SolveExitStatus | solve ()
ProblemType | type () const
| The type of the MIP problem.
Value | sol (Col c) const
| Return the value of the row in the solution. More...
Value | sol (const Expr &e) const
| Return the value of the expression in the solution. More...
Value | solValue () const
| The value of the objective function. More...
void | colType (Col c, ColTypes col_type)
| Sets the type of the given column to the given type. More...
ColTypes | colType (Col c) const
| Gives back the type of the column. More...
Public Member Functions inherited from LpBase
virtual | ~LpBase ()
| Virtual destructor.
const char * | solverName () const
| Gives back the name of the solver.
Col | addCol ()
| Add a new empty column (i.e a new variable) to the LP.
template<class T >
int | addColSet (T &t)
| Adds several new columns (i.e variables) at once. More...
void | col (Col c, const DualExpr &e)
| Set a column (i.e a dual constraint) of the LP. More...
DualExpr | col (Col c) const
| Get a column (i.e a dual constraint) of the LP. More...
Col | addCol (const DualExpr &e, Value o=0)
| Add a new column to the LP. More...
Row | addRow ()
| Add a new empty row (i.e a new constraint) to the LP. More...
template<class T >
int | addRowSet (T &t)
| Add several new rows (i.e constraints) at once. More...
void | row (Row r, Value l, const Expr &e, Value u)
| Set a row (i.e a constraint) of the LP. More...
void | row (Row r, const Constr &c)
| Set a row (i.e a constraint) of the LP. More...
Expr | row (Row r) const
| Get a row (i.e a constraint) of the LP. More...
Row | addRow (Value l, const Expr &e, Value u)
| Add a new row (i.e a new constraint) to the LP. More...
Row | addRow (const Constr &c)
| Add a new row (i.e a new constraint) to the LP. More...
void | erase (Col c)
| Erase a column (i.e a variable) from the LP. More...
void | erase (Row r)
| Erase a row (i.e a constraint) from the LP. More...
std::string | colName (Col c) const
| Get the name of a column. More...
void | colName (Col c, const std::string &name)
| Set the name of a column. More...
Col | colByName (const std::string &name) const
| Get the column by its name. More...
std::string | rowName (Row r) const
| Get the name of a row. More...
void | rowName (Row r, const std::string &name)
| Set the name of a row. More...
Row | rowByName (const std::string &name) const
| Get the row by its name. More...
void | coeff (Row r, Col c, Value val)
| Set an element of the coefficient matrix of the LP. More...
Value | coeff (Row r, Col c) const
| Get an element of the coefficient matrix of the LP. More...
void | colLowerBound (Col c, Value value)
| Set the lower bound of a column (i.e a variable) More...
Value | colLowerBound (Col c) const
| Get the lower bound of a column (i.e a variable) More...
template<class T >
void | colLowerBound (T &t, Value value)
| Set the lower bound of several columns (i.e variables) at once. More...
void | colUpperBound (Col c, Value value)
| Set the upper bound of a column (i.e a variable) More...
Value | colUpperBound (Col c) const
| Get the upper bound of a column (i.e a variable) More...
template<class T >
void | colUpperBound (T &t, Value value)
| Set the upper bound of several columns (i.e variables) at once. More...
void | colBounds (Col c, Value lower, Value upper)
| Set the lower and the upper bounds of a column (i.e a variable) More...
template<class T >
void | colBounds (T &t, Value lower, Value upper)
| Set the lower and the upper bound of several columns (i.e variables) at once. More...
void | rowLowerBound (Row r, Value value)
| Set the lower bound of a row (i.e a constraint) More...
Value | rowLowerBound (Row r) const
| Get the lower bound of a row (i.e a constraint) More...
void | rowUpperBound (Row r, Value value)
| Set the upper bound of a row (i.e a constraint) More...
Value | rowUpperBound (Row r) const
| Get the upper bound of a row (i.e a constraint) More...
void | objCoeff (Col c, Value v)
| Set an element of the objective function.
Value | objCoeff (Col c) const
| Get an element of the objective function.
void | obj (const Expr &e)
| Set the objective function. More...
Expr | obj () const
| Get the objective function. More...
void | sense (Sense sense)
| Set the direction of optimization.
Sense | sense () const
| Query the direction of the optimization.
void | max ()
| Set the sense to maximization.
void | min ()
| Set the sense to maximization.
void | clear ()
| Clear the problem.
void | messageLevel (MessageLevel level)
| Set the message level of the solver.
void | write (std::string file, std::string format="MPS") const
| Write the problem to a file in the given format. More...

## Additional Inherited Members
Public Types inherited from MipSolver
enum | ProblemType { UNDEFINED = 0, INFEASIBLE = 1, FEASIBLE = 2, OPTIMAL = 3, UNBOUNDED = 4 }
| The problem types for MIP problems. More...
enum | ColTypes { REAL = 0, INTEGER = 1 }
| Possible variable (column) types (e.g. real, integer, binary etc.) More...
Public Types inherited from LpBase
enum | SolveExitStatus { SOLVED = 0, UNSOLVED = 1 }
| Possible outcomes of an LP solving procedure. More...
enum | Sense { MIN, MAX }
| Direction of the optimization. More...
enum | MessageLevel { MESSAGE_NOTHING, MESSAGE_ERROR, MESSAGE_WARNING, MESSAGE_NORMAL, MESSAGE_VERBOSE }
| Enum for `messageLevel()` parameter. More...
typedef double | Value
| The floating point type used by the solver.
Static Public Member Functions inherited from LpBase
static int | id (const Col &col)
| Returns the ID of the column.
static Col | colFromId (int id)
| Returns the column with the given ID. More...
static int | id (const Row &row)
| Returns the ID of the row.
static Row | rowFromId (int id)
| Returns the row with the given ID. More...
Static Public Attributes inherited from LpBase
static const Value | INF
| The infinity constant.
static const Value | NaN
| The not a number constant.