Optimization problems occur everywhere. As more industrial tasks are automated, solving a problem takes us to the next set of problems with additional criteria, where further improvement is possible and our investigation goes on.
Industries like paper, steel, leather, and so on exhibit one such problem where a large roll of the material of a known width needs to be cut, using automated machines, into smaller rolls of widths specified by customer orders. The supplier running this factory needs to meet these demands while lowering costs and reducing waste. This leads to the cutting stock problem (CSP) as well as other associated problems.
Optimization problems tend to be hard, and the author aptly starts with practical tips to tackle them, along with an interesting quote: “It is better to solve the right problem approximately than to solve the wrong problem exactly.” Zak stresses the importance of modeling the requirements.
Whereas formalization of the problem into special-purpose languages allows the adoption of general-purpose solvers for the optimization problem, heuristics translate the problem directly into a possible solution. The author suggests that communication with customers and observing how the problem is solved manually help with developing good heuristics.
Following along the lines of Einstein’s famous aphorism, the author states: “an intelligent model is as simple as possible but not simpler.” Such a model needs to have an appropriate level of abstraction, and has to be scalable. Zak suggests that any auxiliary operations, which are required but not related to optimization, could be moved to pre/post processing steps.
Observing that data accuracy is typically around five percent, the author suggests that constraints can be softened using constraint violation variables, and shows how a convex function based on them can be used to introduce a progressive penalty for the constraint violation in the optimization model. Thus, such a softening method helps in avoiding infeasibility of solutions.
When the optimization problem involves multiple criteria, folding them into a single model with weights assigned to the different criteria is one possible approach. The author prefers a lexicographic approach of ranking the criteria and solving the problem for each criterion by applying bounds on the optimal values of earlier ranked criteria. Though it may extend running time, this method can generate multiple optimal solutions, which is very good in practice.
Decomposing problems into smaller problems is another method of handling complexity. Generic methods such as Benders decomposition is one approach. Another approach is to find decomposition specific to the problem formulation itself. Based on the author’s experience, the model-specific decompositions do not seem to provide global optimum when compared to generic model decomposition.
After providing several such practical tips, the second part of the book shows the modeling of real-world problems starting with CSP, considering regular winders that produce sets of rolls with the same diameter but with varying widths. Fulfilling customer demand with a minimal number of sets is the main statement of the problem, with minimization of cutting patterns and slitter moves as additional criteria.
Bin-packing, that is, trying to find the smallest number of identical bins required to pack a given set of items, can be used to solve CSP. Though it is a straightforward representation, the author observes its drawback: the proliferation of distinct cutting patterns.
A pattern-based model is presented next. Here, all feasible patterns are generated as a preprocessing step, and using a matrix with feasible patterns as columns, constraints on the pattern activities can be modeled. The author shows how, in practice, the linear programming (LP) relaxation of the created integer programming (IP) model gets employed with successive rounding. Since the number of patterns can be very large, two methods, offline column generation and dynamic column generation, are described in detail. The integrality gap--the difference of optimal values between IP formulation and LP relaxation--is higher in bin-packing compared to pattern-based methods, and this is shown using a theorem.
Readers will also find more engaging details of these formulations, a sequential heuristic procedure for CSP, minimization of slitter moves, gluing of smaller stock rolls into larger finished rolls in what is known as the skiving stock problem (SSP), CSP with two-stage cutting, warehouse storage space optimization and the unit commitment (UC) problem, which considers the scheduling of electricity generation.
Overall, the book’s presentation style is very enjoyable, and Zak keeps the focus on the practical aspects of the problems as they occur in the industry. Though practitioners are the primary target audience, students and academics can also benefit from the book as a reference to the current state of the art.