57 #include "cbc_solver.hpp" 61 #include "lp_solve_solver.hpp" 65 : nel(0), real_buffer(nullptr), int_buffer(nullptr), unique_column_id(0), MAX_time(0), debug_level(
DEBUG_LEVEL_NONE)
84 THROW_ASSERT(count > 0,
"expected a positive number of variables");
104 auto i_end = i_coeffs.end();
106 for(
auto i = i_coeffs.begin(); i != i_end; ++i, index++)
123 return meilp_solverRef(
new cbc_solver());
127 return meilp_solverRef(
new lp_solve_solver());
133 return meilp_solverRef();
virtual void set_bnds(int var, double lowbo, double upbo)
Set lower and upper bound of a variable.
virtual void copy(const std::map< int, double > &i_coeffs)
File containing functions and utilities to support the printing of debug messagges.
CustomUnorderedMap< int, double > upper_bounds
The upper bound of the variables. They will be really set by solve method.
CustomUnorderedMap< int, double > lower_bounds
The lower bound of the variables. They will be really set by solve method.
virtual void set_upbo(int var, double bound)
Set upper bound of a variable.
exceptions managed by PandA
meilp_solver()
Constructor.
virtual void set_binary(int i)
Set a variable to have only binary values.
void resize(size_t count)
std::map< int, int > priority
variables priority
void set_priority(const std::map< int, int > &_priority)
Set the variable priority.
int debug_level
debug_level
virtual ~meilp_solver()
virtual destructor
int * int_buffer
indexes in the constraint buffer
void set_debug_level(int dl)
Set the verbosity (debug_level)
supported_solvers
List of currently supported solvers.
#define DEBUG_LEVEL_NONE
no debugging print is performed.
#define THROW_ERROR(str_expr)
helper function used to throw an error in a standard way
virtual void set_int(int i)=0
Set a variable to have only integer values.
static meilp_solverRef create_solver(supported_solvers solver_type)
Factory static member function.
size_t nel
number of elements in the constraint buffer
double * real_buffer
values in the constraint buffer
virtual void set_lowbo(int var, double bound)
Set lower bound of a variable.
Linear Programming solver according to the newer syntax (from version 4.35) of the GLPK solver...
This class provide an interface to different solvers.
#define THROW_ASSERT(cond, str_expr)
helper function used to check an assert and if needed to throw an error in a standard way ...