As an ILOG Concert algorithm, an instance of IloCplex
extracts the following classes from a model when you call its method IloCplex::extract
:
-
IloNumVar
representing numeric variables;
-
IloSemiContVar
representing semi-continuous or semi-integer variables;
-
IloObjective
representing at most one objective function in linear or piecewise linear expressions;
-
IloRange
representing range constraints in linear or piecewise linear expressions;
-
IloConversion
representing type conversions of variables (from floating-point to integer, for example);
-
IloSOS1
representing special ordered sets of type 1;
-
IloSOS2
representing special ordered sets of type 2;
-
IloAnd
for use with IloSolution
.
There are also facilities in IloCplex
for representing piecewise-linear functions, as explained in Transport: Piecewise Linear Optimization, and logical constraints, introduced in Logical Constraints in Optimization. As that chapter explains, logical constraints in ILOG CPLEX are available only to C++ users.