Supported Solvers
CMPL is able to execute directly CBC, GLPK, Gurobi, SCIP and CPLEX to
solve LP or MIP problems.
Because CMPL transforms a CMPL model into an MPS, a Free-MPS or an OSiL file, the generated
model instance can be solved by using most of the free or commercial solvers.
Open Source solvers
- CBC
The CMPL package contains CBC.
Because CBC is the default solver CBC doesn't need not to be specified.
It is possible to use most of the CBC solver options within the CMPL header.
%opt cbc solverOption [solverOptionValue]
- GLPK
The CMPL package contains GLPK and it can be used by the following command:
cmpl <problem>.cmpl -solver glpk
or by the CMPL header flag:
%arg -solver glpk.
Most of the GLPK solver options can be used by defining solver options within the
CMPL header.
%opt glpk solverOption [solverOptionValue]
- SCIP
SCIP can be used for mixed integer programming (MIP) problems.
If SCIP is chosen as solver and the problem is an LP then CLP is executed as solver.
If SCIP is installed on the same computer as CMPL then SCIP can be connected to CMPL
by changing the entry ScipFileName in the file
<cmplhome>/bin/cmpl.opt.
If this entry is correct then you can execute SCIP directly by using the command
cmpl <problem>.cmpl -solver scip
or by the CMPL header flag:
%arg -solver scip.
All SCIP parameters described in the SCIP Doxygen Documentation
can be used in the CMPL header.
%opt scip solverOption [solverOptionValue]
Commercial solvers
- Gurobi
If Gurobi is installed on the same computer as CMPL then Gurobi can be executed
directly only by using the command
cmpl <problem>.cmpl -solver gurobi
or by the CMPL header flag:
%arg -solver gurobi.
All Gurobi parameters (excluding NodefileDir, LogFile and ResultFile) described in
the Gurobi manual can be
used in the CMPL header.
%opt gurobi solverOption [solverOptionValue]
- CPLEX
CPLEX can be connected to CMPL
by changing the entry CplexFileName in the file
<cmplhome>/bin/cmpl.opt.
If this entry is correct then you can execute CPLEX directly by using the command
cmpl <problem>.cmpl -solver cplex
or by the CMPL header flag:
%arg -solver cplex.
All CPLEX parameters described in the CPLEX manual (Parameters of CPLEX -> Parameters Reference Manual)
can be used in the CMPL header.
%opt cplex solverOption [solverOptionValue]