18 #ifndef HLIDAC_PES_ILP_MODEL_H
19 #define HLIDAC_PES_ILP_MODEL_H
44 LESS_EQUAL, EQUAL, GREATER_EQUAL
71 size_t numberOfConstraints()
const {
return A.numberOfRows(); }
72 size_t numberOfVariables()
const {
return x.size(); }
83 std::vector<double>
c;
85 std::vector<const std::tuple<std::vector<double>, std::vector<double>>*>
gurobiC;
87 std::vector<double>
b;
89 std::vector<Operator>
ops;
91 std::vector<Variable>
x;
void printStatistics() const
It prints various statistics like density of A matrix and number of constraints to the standard outpu...
std::vector< double > b
Constants in the constraints, i.e. the right-hand side vector of .
VariableType
Constants for floats, binary variables, and integers, respectively.
SparseMatrix< double > A
Constraint matrix of the problem.
Integer Linear Programming problem is stored in this data structure.
Memory efficient storage for a constraint matrix of Integer Linear Programming problem.
std::vector< std::string > varDesc
Optional description of the variables.
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< Operator > ops
Operators of the constraints, see Operator enum.
std::vector< double > c
Vector of the criterion coefficients.
double upperBound
The maximal value of the variable.
Objective
Specifies the sense of the objective function.
Objective obj
Sense of the objective function (minimization/maximization).
std::vector< Variable > x
Variables of the problem.
The file defines allowed inaccuracies in a solution and constants for floats.
void checkFormulation() const
It checks that sizes of vectors and the matrix are valid.
std::vector< std::string > conDesc
Optional description of the constraints.
double lowerBound
The minimal value of the variable.
Structure containing information about the variable.
Operator
Constants for operators '<=', '=', and '>=', respectively.
VariableType type
Type of the variable, see VariableType.