We also refer to modeling objects as extractables. This is because it is the individual modeling objects that are extracted one by one when you extract an optimization model to IloCplex. So, extractables are characterized by the possibility of being extracted to algorithms such as IloCplex. In fact, they all are inherited from the class IloExtractable. In other words, IloExtractable is the base class of all classes of extractables or modeling objects.
The most fundamental extractable class is IloModel. Objects of this class are used to describe a complete optimization model that can later be extracted to an IloCplex object. You create a model by constructing a variable of type IloModel. For example, to construct a modeling object named model, within an existing environment named env, you would do the following:
IloNumVar | |
IloRange | |
IloObjective |
for each extractable obj. There is no need to explicitly add the variable objects to a model, as they are implicitly considered when they are used in the range constraints (instances of IloRange) or the objective. At most one objective can be used in a model with IloCplex.
This creates the extractable obj of type IloObjective which represents the objective function of the example presented in Introducing ILOG CPLEX.