solver  1.0
Public Member Functions | Public Attributes | List of all members
ILPModel Struct Reference

Integer Linear Programming problem is stored in this data structure. More...

#include <ILPModel.h>

+ Collaboration diagram for ILPModel:

Public Member Functions

 ILPModel (Objective obj=MINIMIZE)
 
size_t numberOfConstraints () const
 
size_t numberOfVariables () const
 
void checkFormulation () const
 It checks that sizes of vectors and the matrix are valid.
 
void printStatistics () const
 It prints various statistics like density of A matrix and number of constraints to the standard output.
 

Public Attributes

Objective obj
 Sense of the objective function (minimization/maximization).
 
SparseMatrix< double > A
 Constraint matrix of the problem.
 
std::vector< double > c
 Vector of the criterion coefficients.
 
std::vector< const std::tuple< std::vector< double >, std::vector< double > > * > gurobiC
 Convex functions in the criterion in the format suitable for Gurobi solver.
 
std::vector< double > b
 Constants in the constraints, i.e. the right-hand side vector of $Ax \; \mathrm{op} \; b$.
 
std::vector< Operatorops
 Operators of the constraints, see Operator enum.
 
std::vector< Variablex
 Variables of the problem.
 
std::vector< std::string > varDesc
 Optional description of the variables.
 
std::vector< std::string > conDesc
 Optional description of the constraints.
 

Detailed Description

Integer Linear Programming problem is stored in this data structure.

Data structure corresponding to the Integer Linear Programming problem in the form:

\begin{alignat}{1} & \text{min}/\text{max} \; c'x \notag \\ & \qquad Ax \; \mathrm{op} \; b \notag \\ & \qquad x_1 \in \mathcal{R},\; x_2 \in \mathbb{B},\; x_3 \in \mathbb{Z} \notag \\ & \qquad x = x_1 \cup x_2 \cup x_3 \notag \end{alignat}

Definition at line 69 of file ILPModel.h.


The documentation for this struct was generated from the following files: