A Linear Programming Approach to the Cutting Stock Problem—Part II 2: For a Linear-Fractional Objective, a Basic Feasible Solution with No Improving Edge Is a Global MinimumResearch Paper
Motivation
In the cutting stock problem, stock rolls of length are cut into pieces of lengths to fill orders. Part I of Gilmore and Gomory's work (Opns. Res. 9 (1961)) solved its linear programming relaxation by the simplex method with column generation: the columns (cutting patterns) are too many to list, so each simplex iteration finds an improving column by solving a knapsack problem. Part II (Opns. Res. 11 (1963)) extends the method in several directions. One of them, customer tolerances, lets the amount produced of each length lie in a range instead of matching a fixed demand. Total roll usage then stops being a good measure of quality, because overproducing within the tolerance is free. The natural objective becomes the fraction of waste: total waste divided by total material cut. This objective is a ratio of two linear functions, not a linear one.
The paper's answer, on p. 882, is that the ordinary simplex method still works for such an objective. It moves from vertex to vertex, at each vertex asks whether some edge improves the objective, and stops when none does. Ratio objectives of this kind, called linear-fractional programs, were studied in the same years by Isbell and Marlow (1956), Martos (1960–61, in Hungarian; in English in 1964), Charnes and Cooper (1962) and Dinkelbach (1962; see also 1967). Gilmore and Gomory say that their method is closest to Martos's. They derive the edge test for the ratio and show that, for cutting stock, choosing the entering column is again a knapsack problem.
Setting
Let be a real matrix, and . The linear-fractional program is
In the cutting stock instance (p. 881), column is either a cutting pattern with or a slack column . The right-hand side is . The numerator coefficient of a pattern is its waste (eq. (4)), and on patterns and on slacks, so is waste per roll cut. The paper drops the upper bounds on the slacks from the discussion (p. 882), and so does this mission.
A basis is a set of column indices whose columns of are linearly independent. A basic feasible solution with basis is a feasible point with for every . For a nonbasic , the edge direction of is the vector with , and for the other nonbasic . This is "the edge that would be traced out if were increased, but all other nonbasic variables kept zero" (p. 883). The quantity the simplex test inspects is the rate of change along the edge,
Formalization targets
Goal: the edge criterion (p. 882)
Assume for every feasible . Let be a basic feasible solution with basis , and suppose for every and every edge direction of . Then
Milestones (p. 882–883)
- Monotonicity along lines. On an interval where the denominator does not vanish, is strictly increasing, strictly decreasing or constant. Moreover is constant, where is the denominator.
- Equation (5), first line.
- The edge test. If , increasing strictly decreases along any segment where the denominator does not vanish. Otherwise does not decrease anywhere on that segment.
- Column choice is a knapsack problem. With and , the numerator of for pattern equals . Hence, for , the most negative is attained exactly by the patterns maximizing subject to .
Significance
The result. The edge criterion turns a nonconvex problem into one the simplex method solves. A ratio of linear functions is neither convex nor concave, so a point where no feasible direction improves the objective locally is not obviously a global minimum. The criterion says that, on a polyhedron where the denominator keeps its sign, this local test at a vertex certifies global optimality, exactly as for a linear objective. It underlies the convergence of Martos's method and of every simplex-type algorithm for linear-fractional programming. Together with milestone 4, it is what makes column generation with a knapsack pricing step applicable to the waste-fraction objective of cutting stock.
Formalizing it. The result is classical and proved; no machine-checked version is known to exist. The published platform items closest to it are Derman's Charnes–Cooper transformation of a linear-fractional program into a linear program and Matoušek's reduced-cost optimality criterion for a linear objective. Neither states an edge criterion for a ratio. A formal proof here also settles the paper's own imprecisions (see below), and yields reusable lemmas about ratios of affine functions along lines.
Difficulty
The obvious argument does not reach the goal. Along any single segment the objective is monotone (milestone 1), so a nonnegative derivative at in the direction of the segment would settle it. But the test at inspects only the edge directions, while a feasible point lies in the direction , which is in general not an edge. Monotonicity along each edge says nothing directly about other directions, and is neither convex nor concave, so local optimality along a few lines does not by itself transfer to the whole polyhedron. The step that has to be supplied is the passage from the edges to all feasible directions at a basic solution. It fails without the basis: at a feasible point that is not basic, or with linearly dependent columns, the edge directions need not reach every feasible point. At a degenerate vertex some edge directions leave the feasible set at once, and a test restricted to the feasible edges does not certify optimality.
Formalization scope
The feasible set and the objective are the published definitions DermanSeqDecisions.LinProg.IsFeasible11 (, ) and DermanSeqDecisions.LinProg.fracObj (). The basis is the published MatousekLP.BFS.IsBasis. Indices are 0-based. A mission definition adds the basic feasible solution and the relational edge direction. The edge direction is given by its defining equations, not through a basis inverse, and is not required to be feasible.
Committed conventions and disclosed choices:
- The goal is stated for minimization, the paper's problem; the paper's sentence says "maximize", which is the same statement for .
- "In a domain where the denominator does not vanish" is the hypothesis for every feasible (the paper's footnote: ). It is not required on all of , where it would be unsatisfiable for the cutting stock .
- The derivative in the test is Mathlib's
derivof at : the actual rate of change, not a formula assumed to equal it. - The page says that along a line the derivative "will have the same value". This is false when the denominator varies along the line. Milestone 1 states the correct version: the derivative times the squared denominator is constant, so the sign is constant.
- In the formula after substituting (4), the page prints the coefficient where is meant. Milestone 4 uses the corrected coefficient.
- The slack upper bounds are dropped, as on p. 882.
The following would trivialize the goal and are excluded: an edge hypothesis over all directions instead of the edge directions, which turns the goal into quasi-convexity along segments; an edge hypothesis stated as the global inequality; a positivity hypothesis on the denominator over all of ; and dropping the basis, under which the goal is false.
The development needs elementary real calculus (derivatives of quotients, monotonicity from the sign of the derivative) and the linear algebra of a basis (existence, uniqueness and spanning of the edge directions). The lemmas about ratios of affine functions along lines and about edge directions of a basis are reusable for any simplex-type method. Contributions of proofs of the milestones, and of auxiliary lemmas on edge directions, are welcome.
Selected references
- P. C. Gilmore and R. E. Gomory, A linear programming approach to the cutting stock problem—Part II, Operations Research 11(6), 863–888, 1963. https://doi.org/10.1287/opre.11.6.863
- P. C. Gilmore and R. E. Gomory, A linear programming approach to the cutting stock problem, Operations Research 9(6), 849–859, 1961. https://doi.org/10.1287/opre.9.6.849
- B. Martos, Hyperbolic programming, Naval Research Logistics Quarterly 11(2), 135–155, 1964. https://doi.org/10.1002/nav.3800110204
- A. Charnes and W. W. Cooper, Programming with linear fractional functionals, Naval Research Logistics Quarterly 9(3–4), 181–186, 1962. https://doi.org/10.1002/nav.3800090303
- W. Dinkelbach, Die Maximierung eines Quotienten zweier linearer Funktionen unter linearen Nebenbedingungen, Zeitschrift für Wahrscheinlichkeitstheorie 1, 141–145, 1962 (cited by the paper as [11]).
- W. Dinkelbach, On nonlinear fractional programming, Management Science 13(7), 492–498, 1967. https://doi.org/10.1287/mnsc.13.7.492
- J. R. Isbell and W. H. Marlow, Attrition games, Naval Research Logistics Quarterly 3, 71–94, 1956 (cited by the paper as [9]).