near-optimal solutions to one-dimensional cutting stock problems

7
Compur. & Ops. Res. Vol. 13, ‘lo. 6, pp, 713-719. 1986 0305-0548:86 $3.00+ 0.00 Printed in Great Britain. All rights reserved Copyright (’ 1986 Pergamon Journals Ltd NEAR-OPTIMAL SOLUTIONS TO ONE-DIMENSIONAL CUTTING STOCK PROBLEMS GARY M. ROODM.~N* School Of Management. State University of New York at Binghamton, Binghamton. NY 13901, U.S.A (Rrceiwd June 1985; in ret&d ,fom~Ocrohw 1985) Scope and Purpose-This paper describes a set of heuristic procedures for generating good solutions to a common production planning problem, the so called one-dimensional “cutting stock” problem. in which it is necessary to cut stock pieces into shorter lengths to meet customer orders in a way that keeps the trim loss as low as possible. The heuristics described here were developed for a steel fabricating firm whose typical customer order had certain special characteristics. Most important was the fact that orders often called for small numbers of relatively long cut lengths. As a result, the usual approach to this problem, i.e. “rounding off” approximate, fractional solutions, gave highly unreliable results. The problem was also unusual in that the firm was concerned about keeping total trim loss to a minimum but also cutting that trim loss into as few pieces as possible. This secondary objective needed to be considered as well. Finally, orders could often be cut from several different stock lengths, but there were limitations on the availability of each. Abstract-This paper describes a set of heuristic procedures for efficiently generating good solutions to one- dimensional cutting stock problems in which (i) there are multiple stock lengths with constraints on their availability, (ii) it is desirable to cut the trim into as few pieces as possible and (iii) it is difficult because of the problem’s structure, to round fractional, LP solutions to good feasible cutting plans. The point of departure for the procedures is the column generation technique of Gilmore and Gomory. The computational experience reported here suggests that the heuristics are both effective and efficient. This paper describes a set of heuristic procedures for efficiently generating good solutions to one- dimensional cutting stock problems in which there are (i) multiple stock lengths from which patterns may be cut and (ii) upper bound constraints on the number of times that each stock length may be used (i.e. “inventory” constraints). In addition, while attempting to minimize the trim loss, the heuristics also take cognizance of a secondary objective (described below) that was of concern to users. The point of departure for the heuristics is a slightly modified version of the classic column generation method of Gilmore and Gpmory (G-G) [l], which provides an initial (not necessarily feasible) solution for the problem. Given this solution, the heuristics first seek feasibility and then search for improved cutting plans by modifying patterns and moving patterns among the alternative stock lengths. The design of the heuristics was motivated by several characteristics of the problems they were developed to solve: (I) In most of the problems, the cut lengths were required in small numbers (often < lo), and many of the cut lengths were large relative to the length of the stock pieces. This made it difficult to simply round the fractional solutions provided by the G-G model to feasible cutting plans that had low trim loss. The quality of the final solution was often highly sensitive to the specific rules that were used to do the rounding; and careful study of those rounded solutions often showed that good, if not immediately obvious oppportunites for improvement were being missed. (2) There were typically multiple stock lengths available from which orders could be cut. These lengths might be the standard pieces available from the mills or long pieces of trim that were left from earlier work. Although the trim pieces were usually of odd lengths with only a few of any one size, it was deemed desirable to include them among the available stock pieces as new cutting plans were generated. (3) Although minimizing trim loss was the primary objective of concern in choosing a cutting plan, *Gary Roodman is an Associate Professor of Management at The State University of New York at Binghamton and Senior Staff Associate with Computer Software Consultants, Inc. He earned a B.S.B.A. from Washington University in St Louis and M.B.A. and D.B.A. degrees from Indiana University. His principal research and consulting interest is in the design ofdecision support systems, particularly for the production planning process. His papers have appeared in Management Science. AIIE Transactions. Opcrutions Research and elsewhere. 713

Upload: gary-m-roodman

Post on 21-Jun-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Near-optimal solutions to one-dimensional cutting stock problems

Compur. & Ops. Res. Vol. 13, ‘lo. 6, pp, 713-719. 1986 0305-0548:86 $3.00+ 0.00 Printed in Great Britain. All rights reserved Copyright (’ 1986 Pergamon Journals Ltd

NEAR-OPTIMAL SOLUTIONS TO ONE-DIMENSIONAL CUTTING STOCK PROBLEMS

GARY M. ROODM.~N*

School Of Management. State University of New York at Binghamton, Binghamton. NY 13901, U.S.A

(Rrceiwd June 1985; in ret&d ,fom~ Ocrohw 1985)

Scope and Purpose-This paper describes a set of heuristic procedures for generating good solutions to a common production planning problem, the so called one-dimensional “cutting stock” problem. in which it is necessary to cut stock pieces into shorter lengths to meet customer orders in a way that keeps the trim loss as low as possible. The heuristics described here were developed for a steel fabricating firm whose typical customer order had certain special characteristics. Most important was the fact that orders often called for small numbers of relatively long cut lengths. As a result, the usual approach to this problem, i.e. “rounding off” approximate, fractional solutions, gave highly unreliable results. The problem was also unusual in that the firm was concerned about keeping total trim loss to a minimum but also cutting that trim loss into as few pieces as possible. This secondary objective needed to be considered as well. Finally, orders could often be cut from several different stock lengths, but there were limitations on the availability of each.

Abstract-This paper describes a set of heuristic procedures for efficiently generating good solutions to one- dimensional cutting stock problems in which (i) there are multiple stock lengths with constraints on their availability, (ii) it is desirable to cut the trim into as few pieces as possible and (iii) it is difficult because of the problem’s structure, to round fractional, LP solutions to good feasible cutting plans. The point of departure for the procedures is the column generation technique of Gilmore and Gomory. The computational experience reported here suggests that the heuristics are both effective and efficient.

This paper describes a set of heuristic procedures for efficiently generating good solutions to one- dimensional cutting stock problems in which there are (i) multiple stock lengths from which patterns may be cut and (ii) upper bound constraints on the number of times that each stock length may be used (i.e. “inventory” constraints). In addition, while attempting to minimize the trim loss, the heuristics also take cognizance of a secondary objective (described below) that was of concern to users.

The point of departure for the heuristics is a slightly modified version of the classic column generation method of Gilmore and Gpmory (G-G) [l], which provides an initial (not necessarily

feasible) solution for the problem. Given this solution, the heuristics first seek feasibility and then search for improved cutting plans by modifying patterns and moving patterns among the alternative stock lengths.

The design of the heuristics was motivated by several characteristics of the problems they were developed to solve:

(I) In most of the problems, the cut lengths were required in small numbers (often < lo), and many of the cut lengths were large relative to the length of the stock pieces. This made it difficult to simply round the fractional solutions provided by the G-G model to feasible cutting plans that had low trim loss. The quality of the final solution was often highly sensitive to the specific rules that were used to do the rounding; and careful study of those rounded solutions often showed that good, if not immediately obvious oppportunites for improvement were being missed.

(2) There were typically multiple stock lengths available from which orders could be cut. These lengths might be the standard pieces available from the mills or long pieces of trim that were left from earlier work. Although the trim pieces were usually of odd lengths with only a few of any one size, it was deemed desirable to include them among the available stock pieces as new cutting plans were generated.

(3) Although minimizing trim loss was the primary objective of concern in choosing a cutting plan,

*Gary Roodman is an Associate Professor of Management at The State University of New York at Binghamton and Senior Staff Associate with Computer Software Consultants, Inc. He earned a B.S.B.A. from Washington University in St Louis and M.B.A. and D.B.A. degrees from Indiana University. His principal research and consulting interest is in the design ofdecision support systems, particularly for the production planning process. His papers have appeared in Management Science. AIIE Transactions. Opcrutions Research and elsewhere.

713

Page 2: Near-optimal solutions to one-dimensional cutting stock problems

714 GARY M. ROCXWAN

a second criterion was also being applied: users preferred plans in which the trim was cut into as few pieces as possible (one 40 ft piece of trim, for example, has more future value than eight 5 ft pieces). It was necessary to somehow reflect this secondary objective, at least implicitly.

THE PROBLEM

We focus first on the problem of finding a cutting plan that keeps total trim lass to a minimum, while meeting all output requirements and using each stock length only as many times as it is available. Then, the secondary objective concerning the form of the trim will be refIected in the choices that are made as the heuristics seek f~sibii~ty and improvement. Since the t~m~minimizing solution is often not unique in cutting stock problems, this device works quite satisfactorily,

LetL,andNi,i=l,..., I, denote, respectively, the length of stock length i and the number of pieces of that length available in inventory. Similarly, let ij and nj, j = 1, . . . , J, denote, respectively, the length of cut lengthj and the number of pieces of that length required. Then the problem to be solved is

P: minimize: rJk tick) * X, subject to:

&Qjk*Xk>nj j= l,,..,J

X, eon-negative integer 0)

where Xk is the number of c~~~~~g ~~s~~~ces of pattern k (i.e. the number of times that pattern k is used), ajk is the number of pieces of length Ej cut each time pattern k is used, i(k) is the index of the stock length from which pattern k is cut, and V;: = fk 1 i(k) = iI, Constraints (I) insure that all requirements are met, while constraints (2) set upper limits on the number of times each stock length may be used.

With straightforward modification to handle the upper bound constraints, the standard G-G procedure can be used to solve the continuous relaxation of this problem. The required changes are described in Roodman [2].

THE HEURISTICS

The heuristics will be stated in two parts, the general logic being given first, followed by a detailed statement of the principal routines that do the actual analysis. A flowchart of the procedures appears in Fig. 1. To keep the exposition as clear as possible, a variety of computational short-cuts fall of them quite obvious) have been omitted.

Phase I: generate an initial {infeasible) solution

Solve the continuous relaxation of Problem P using the modified G-G technique and round off the resulting solution to one that is all-integer and satisfies the upper bound constraints. (The output requirements need not be met exactly.} The easiest way to accomplish this is simply to half-adjust the optimal fractional solution, being careful never to round up when that would violate an upper bound constraint. Experience suggests that this simple device, in combination with the heuristics, works as we11 as more sophisticated techniques (penalty functio~s~ etc.), and it is much less time-consuming”

Let the initial integer solution be denoted by X,, k = I,. . . , K*. For each rj,j = I, . . . , f, compute

and form the index sets 7” = [j ] Pj r njj and T, = {i 1 Pj < nj], These sets identify cut lengths that are in over- and undersupply, respectively, in the current solution. Also, for each L,, i = 1, . . . , I, compute

Page 3: Near-optimal solutions to one-dimensional cutting stock problems

Solutions to one-dimensional cutting stock pl-oblemc 712

Call INlTlAL

Call ARTIFICIAL

Call IMPROVE-2

Fig. I

Si = N, - 2 X,. LFI,

which is the number of unused stock pieces of length Li.

Phuse 11: srrk jksihilit~

The object in this phase is to increase the production of cut lengths that are in short supply in the initial solution. First, pieces that are in excess supply are “put back” into the trim loss using rules that cause the trim to accumulate in as few places as possible (step 1). That trim is then used to cover the shortages, if possible (step 2). If the shortages cannot be eliminated, then either a new stock piece must be added to the solution or the old solution must be modified (step 3).

It will be notationally convenient below to number the cutting instances in the initial solution so that each has its own index. Let T= xk X, denote the total number of cutting instances in the current solution and then let

denote the cutting instances themselves, with W, = Li(,, - Cj Ujrlj.

Step 1.

Step 2.

Eliminate oversupplies. l(a). If Ir,( = 0, go to step (2). Otherwise, l(b). Go to the CUT LESS routine, which finds the longest cut length that is in excess supply

and removes it from patterns that already have large trim loss. l(c). Go to l(a).

Eliminate undersupplies (if possible). 2(a). If /T,,j = 0, begin PHASE III. Otherwise.

Page 4: Near-optimal solutions to one-dimensional cutting stock problems

716

2(b).

2(c).

2(d).

GARY M. ROODMAN

Find W= max, [w,.j. If WC rninjeql , ji ‘I ‘, then there is no piece of trim in the current solution that may be used to make up a shortage. Go to step (3). Otherwise, Go to the CUT MORE routine, which finds the longest cut length that is in short supply and attempts to place it into patterns that already have small trim loss. Go to 2(a).

Step 3. Re-arrange trim loss vs add a new stock piece. At this point, some shortages remain. A decision must be made whether to (i) add a new stock piece to the plan with which some or all of the remaining shortages

can be made up, or (ii) re-arrange the trim loss and try again to eliminate the shortages with stock pieces

already in the solution. For the first choice, go to ADD ONE routine which selects a stock length and adds it to

the plan. Return to step (2). For the second choice, select one or more cutting instances and go to the ARTIFICIAL

routine, which creates new (artificial) shortages by removing cut lengths from the selected instances. Then return to step (2), where a new attempt is made to eliminate both the genuine and the artificial shortages. (It is worth noting that even when this maneuver does not succeed in eliminating all shortages, it often has the beneficial effect ofexchanging long pieces in short supply for short ones.)

it has been our practice to re-arrange the trim loss the first time step (3) is encountered and then add a new length if the step is encountered again.

Phase III: seek improvements

Assume below that the stock lengths are numbered in ascending order by length, and define a dummy

Step 1.

stock length L, = 0 with S, = M (large).

Move to shorter lengths. Go to the IMPROVE-l routine which searches for opportunities to shift existing cutting patterns from long stock lengths into shorter ones or to eliminate stock pieces from the solution entirely.

Step 2. Combine patterns. Go to the IMPROVE-2 routine which seeks opportunities to move cutting patterns from two short stock lengths into one long one.

Step 3. Re-arrange trim loss. (1) If the two IMPROVE routines have not succeeded in making changes in the cutting

plan, STOP. Otherwise, (2) Re-arrange the trim loss by

(i) selecting one or more cutting instances and going to the ARTIFICIAL routine to create new, temporary shortages, and then

(ii) going to the CUT MORE routine to make up those shortages. (3) Return to step (1). (Note that because CUT MORE attempts to use the smallest pieces of

trim loss first, the artificial shortages will be made up here from patterns other than the ones from which they came, if that is possible.)

DETAILED ROUTINES

This section states the individual computational routines in their entirety.

I. CUT LESS (1) Find j * and I’* such that

and

Page 5: Near-optimal solutions to one-dimensional cutting stock problems

Solutions to one-dimensional cutting stock problems 717

w,.,=max [w~Iu,.,.>O).

(2) Letd,.=min(u,.,..,(P,,-n,.)~.Thenset~~.,.,=a~.,,-d,,andP~,=P,.-d~..IfP,.=n,., set T,=T,-(j*) and Return. Otherwise,

(3) Go to (1).

II. CUT MORE (1) Find j * and r* such that

III ARTIFICIAL

(2)

(3)

and

w,.. = min (w,

1,6W)

w,. B I,. 1.

Letting d,, = min {[w,./I,.], (n,. - P,,)} (where [: :] denotes largest integer less than : :), set c,*‘.* = c,*,* + die, w,..=w,.,-li., and P,.=P,,+dj,. If P,.=nj., set T,=T,-{j*j and Return. Otherwise, Go to 1.

For the selected cutting instances, Y+, form the set

J+ = (j / 1, d W and aj,.+ > 0;.

Then set

w,.+ = w,.+ + c uIr- *Ii, jcJ*

PI = P, - ail.+, jEJ’,

a,,.. = 0, jeJ’,

T,= T,+J+

and Return.

IV. IMPROVE-l For each cutting instance r,r = 1,. . ., T, such that Si(r)- i > 0 and W, > (Li(r) - Li(,,_ 1), set i(r) = i(r) - 1, S,,,., = S,,,., + 1, S,,,,_, = S,,,._, - 1, and w,. = w,. -L,,,., + L,,,.,_,. (Note that when i(r) = 1, this modification is equivalent to removing the stock length from the plan entirely.)

V. IMPROVE-2 For each pair of cutting instances I’ and s, r # s, if there exists a stock length Li, such that S,. > 0 and (Licr) - wicrJ + (Li(,, - wi(s)) 6 L,. < (Li(r) + Li(,)), then delete instances I and s and replace them with a new instance t for which i(r) = i*, ajt = ajr + ajs and w, = L,. - w, - w,.

VI. ADD ONE (1) For each stock length L,, such that S, > 0, compute E, as follows:

(i) Create a temporary set T. = T,, and initially set E, = L,. (ii) Find j* such that

1,. = max {l, 11; d Wj rcJ*

Page 6: Near-optimal solutions to one-dimensional cutting stock problems

718 GARY M. ROODMAN

(iii) Compute d = min {[E,/lj.], (n,, -P,.)} (where [: :] denotes largest integer less than ::),andsetEi=Ei-/,i.dand T.=T.-G*}.

(iv) If T. = 0, repeat the procedure for the next stock length. Otherwise, return to (i). (2) Add one instance of stock length L,. to the solution, where Ei. = min (Ei]. (3) Go to 1.

COMPUTATIONAL EXPERIENCE

This section reports computational experience with the heuristics in solving 12 test problems. All of the problems were generated to have the characteristics described at the beginning of the paper:

(1) A high proportion of the cut lengths in each problem are large relative to the stock lengths available.

(2) Most cut lengths are required in relatively small numbers. (3) With two exceptions, multiple stock lengths were available from which the smaller pieces could

be cut, with upper limits on the availability of each stock length. The problems were all solved using a standard implementation of the Gilmore and Gomory

procedure, except that (1) computation of the simplex multipliers was modified to reflect the upper bound constraints

(again see Roodman [2]) and (2) the internally generated knapsack problems were solved using a new, very fast procedure by

Akinc [3]. The results are reported in Table 1. Columns (1) (2) and (3) simply give the dimensions of each

problem. Column (4) then reports the time (in s) required to execute the heuristic in each case. This does not include the time required to find the initial LP solution with the G-G procedure. Columns (5) and (6) provide two descriptors of the final heuristic solution, the number of distinct patterns it contains and the amount of trim as a percentage of the total length required by the problem. In two problems (1 and 9), the heuristic kept the number of distinct patterns equal to the number of cut lengths required, and in five out of the 12 problems, this difference was kept to less than 10 %. At the other extreme, the number of patterns exceeded the number of cut lengths by more than 20 “/, in two problems (2 and 11).

The figures in Column (7) provide a measure of how close to the optimum the heuristic solution was in each case. This column reports the ratio between the minimum trim loss found by the heuristic and the lower bound on trim loss provided by the optimal linear programming solution. In the poorest case, the heuristic solution was just 4 % away from the LP lower bound (problem 5); and in six of the twelve problems, the heuristic found solutions that equalled the LP bound. This is a relatively high success rate, but it is not all together surprising, since cutting stock problems of this type often have integer solutions that are as good as the fractional solutions that the linear program finds. The challenge, of course, is to locate those integer solutions.

One computational improvement not reflected here is worth noting. Because the heuristics are relatively efficient, it often proves useful to apply them several times enroute to the LP optimum, as

Table 1

Problem No. (1)

No. of stock

lengths (2)

No. of cut

lengths (3)

Solution time (s) (4)

No. of patterns

15)

Trim as 5:, of

required (6)

Trim as % of

LP min (7)

I I

2 I 3 3 4 3 5 3 6 3

7 3 8 3 Y 3

IO 3 II 3 I2 3

20 0.089 20 20 0.685 27 20 20 20 20

30 30 30 30 30 30

0.093 21 0.172 21 0.093 22 0.805 24

0.360 35 0.932 33 I.232 30 0.829 32 2.476 37 I.824 34

0.249 I mo* 0.193 I.030 0.097 1.007 0.0’) I I 000’ 0.080 I.048 0.072 I.018

0.147 I .ooo* 0.126 I .loo* 0.119 I .xw* 0.101 I .oo I 0.070 l.ooo’ 0.02 I I.023

*Confirmed optimal solution

Page 7: Near-optimal solutions to one-dimensional cutting stock problems

Solutions to one-dimensional cutting stock problems 719

well as at the LP optimum itself. When this strategy was tried with problems 9-12, optimal solutions were found for problems 9 and 10, an alternative optimum was found for problem 11 with only 34 distinct patterns, and the solution was unchanged for problem 12.

REFERENCES

I. P. C. Gilmore and R. E. Gomory, A linear programming approach to cutting stock problems. O/MIS Rcs. 9.849-X59 ( 196 I). 2. Ci. Roodman, A technical note on upper bound constraints in the Gilmore and Gomory cutting stock technique. Working

Paper, SUNY Binghamton (1984). 3. tJ. Akinc. An algorithm for the knapsack problems. IIE Tr~rns. 15. 31 36 / 1983)