ILOG CPLEX 11.0 User's Manual > Discrete Optimization > Using Column Generation: a Cutting Stock Example > Developing the Model: Building and Modifying

In this problem, an initial model cutOpt is built first to represent the master model. Later, through its modifications, another model patGen is built to generate the new columns. That is, patGen represents the subproblem.

The first model cutOpt, an instance of IloModel, is declared like this:

IloModel cutOpt (env);

As a model for this problem is built, there will be opportunities to demonstrate to you how to modify a model by adding extractable objects, adding columns, changing coefficients in an objective function, and changing the type of a variable. When you modify a model by means of the methods of extractable objects, Concert Technology notifies the algorithms (instances of subclasses of IloAlgorithm, such as IloCplex or IloSolver) about the modification. (For more about that idea, see the concept of Notification in the Reference Manual of the C++ API.)

When IloCplex, for example, is notified about a change in an extractable object that it has extracted, it maintains as much of the current solution information as it can accurately and reasonably. Other parts of the ILOG CPLEX User's Manual offer more detail about how the algorithm responds to modifications in the model.