European Journal of Operational Research 44 (1990) 247-255 North-Holland
247
The cutting stock problem in the canvas industry A l a n A. F A R L E Y
*
Department of Accounting and Finance, Monash University, Clayton, Victoria 3168, Australia
Abstract: A number of variations of the cutting stock problem arise in the canvas industry. Due to the nature of operation in the industry the majority of these problems cannot be solved by the conventional cutting stock solution procedures. The problems are two-dimensional in form but involve minimizing the utilized length of a single stock-roll rather than the conventional objective of minimizing waste over multiple stockplates. Small order quantities are also involved, which cause difficulties in the conventional methodologies. Several heuristics to produce a pattern for all components of a unit, such as a tent, are given. These heuristics produce solutions requiring about the same amount of canvas as the current best manual solutions. However, the heuristics' solutions have proven to have significant advantages over the manual solutions in both the time to generate the solution and the type of pattern produced. The heuristics involve a modified form of the conventional three-stage G i l m o r e - G o m o r y algorithm combined with integer programming. Keywords: Cutting stock, integer programming, textile industry
I. Introduction
Cutting stock problems arise in a wide range of industries in one-, two- and three-dimensional forms. The common feature of almost all problems is that some form of stock material is to be cut to produce smaller pieces of material in quantities matching orders received (for applications, see Dyson and Gregory, 1974; Farley, 1983, 1988a; Haessler, 1978; Haessler and Talbot, 1983; Litton, 1977; Madsen, 1979; Sculli, 1981; Stainton, 1977). One objective of most solution techniques is to minimize wasted material, in some form. The aim of this paper is to examine the problem as it occurs in a segment of the canvas industry, and to show that a special solution technique must be developed because of the nature of this industry. The solution technique presented allows for the fact that the orders considered are for complete units, such as tents or annexes, made up of smaller components. Solutions resulting from the ap* Recommended by K.V. Richardson as Editorial Board Member. Received February 1989
proach documented here are found to be equal to current manual solutions in terms of waste but to have significant advantages in other facets of operation. A number of approaches have been developed for solving cutting stock problems. These include optimizing algorithms and heuristic methods. The major existing optimizing algorithm is chosen as the basis of a solution technique for the canvas industry cutting stock problem presented in this paper. In the 1960's a number of pioneering papers on cutting stock problems were written by Gilmore and Gomory (1961, 1963, 1965, 1966). These papers dealt with one-, two- and three-dimensional problems. The algorithm of interest is what these authors called the 3-stage solution procedure for the two-dimensional problem. This procedure involves solving a two-dimensional problem as a series of one-dimensional problems. The form and terminology of the problem to be dealt with is best represented by giving an example of the problem to be solved. However, a single example would not suffice since the general problem becomes more complex as the number of dimensions involved increases. Accordingly, exam-
0377-2217/90/$3.50 © 1990, Elsevier Science Publishers B.V. (North-Holland)
A.A. Farley / The cutting stock problem in the canvas industry
248
pies shall be given of the one-dimensional problem and the two-dimensional problem. A common example of the one-dimensional problem occurs in the steel bar industry. Consider a manufacturer who has a supply of stockbars all of length L. The manufacturer has orders for customer bars of m different lengths; l i, i = 1 , . . . , m. The total number required of any given length n i, i = 1. . . . . m, is also specified at the time of order. If a i is the number of bars of length l i produced when the stockbar is cut then a c o m b i n a t i o n is any set of ai, i = 1. . . . . m, such that all a i are non-negative integers and l'a <~ L.
The problem is now reduced to one of deciding how many stockbars should be cut using each combination (including the possibility of zero length for some combinations), so as to minimize the total number of stockbars used in order to meet the customer orders. In general, if aij is the number of customer bars of length li produced from combination j and x j is the number of stockbars cut using combination j then the problem can be defined as Minimize subject to
z = c'x Ax>l n,
(1)
x >~0 and integer, which can be recognized as the formulation of an integer programming problem. However, even in a small practical problem, the number of combinations can be extremely large. This creates difficulty in solving the problem even if the integer requirements are dropped. An example of the two-dimensional problem occurs in the glass industry where glass cutters are supplied with large rectangles of glass, referred to as stockplates, of width W and length L. Orders are received for smaller rectangles, termed p i e c e s , of width w i and length l i. T h e number of piece i required is n~. The problem for the glass cutter is to meet the orders for the pieces by utilizing the minimum number of stockplates. If a i is the number of piece i included in a stockplate then a combination is defined as any set of a i, i = 1 . . . . . m, such that all a t are non-negative integers and the set of pieces represented by the a i can be fitted within the stockplate.
The general two-dimensional problem can be established by defining xj as the number of stockplates cut by using combination j and a i / a s the number of piece i included in combination j. The problem is Minimize subject to
z = c'x A x >1 n ,
(2)
x >/0 and integer, which can be seen to be identical to the one-dimensional problem formulation in Model (1). The commonly used optimizing solution technique for one-dimensional cutting stock problems is based upon a paper presented by Gilmore and Gomory (1961). The initial technique was a combination of linear programming (to find the optimal solution, without integer restrictions, for a given set of combinations) and dynamic programming (to generate new combinations by solving a knapsack problem). The technique was updated in a further paper (Gilmore and Gomory, 1963). This updated technique exploits the form of the cutting stock problem in a lexicographical search to solve the knapsack problem at each cycle. In a third paper Gilmore and Gomory (1965) presented a solution technique for the two-dimensional problem based upon the method they developed for the one-dimensional problem. In many industries the cutting equipment operates in such a way that any cut made upon a rectangle must be in a straight line from one edge of the material to the perpendicularly opposite edge. This type of cut is referred to as a guillotine cut. An example of a non-guillotine cutting pattern along with several styles of guillotine cutting patterns are included in Figures 1 and 2. However the Gilmore and Gomory technique further restricted the type of pattern to one in which the rectangle first be cut into strips and then cuts be made across the strips. This type of pattern is referred to as two-stage guillotine cutting and is represented in Figure 2. An extension of this is where the rectangles produced by cutting of the strips may further be trimmed in the direction of the strips to produce the pieces ordered. This is referred to as three-stage guillotine cutting and is also represented in Figure 2. Two-stage cutting may be treated as a subclass of three-stage
A.A. Farley / The cutting stock problem in the canvas industry
249
presented a solution technique allowing for guillotine patterns such as that shown at the bottom of Figure 2, referred to as n-stage cutting. However, this technique is not widely used due to the extreme storage and processor time required to solve practical problems by computer (see Farley, 1990, for a comparison of 3-stage versus n-stage solutions). 2. The canvas industry
Figure 1. A non-guillotine pattern
cutting, hence, the solution method shall be phrased in terms of three-stage cutting. In a final paper Gilmore and Gomory (1966) ~/////////////////////////////////////////////////////////////////////////A
IN [
"///////////////////////////////2z/////////////////2
~/~
~/////////////////////A
7= Figure 2. Various staged cutting styles
N
The Australian canvas cutting industry is typical of that in most advanced countries (as confirmed by correspondence with local industry sources) and therefore will be referred to in order to illustrate the common industry structure. It is made up of a large number of relatively small firms. One typical firm studied consists of one cutting table and ten sewing machines and employs twelve staff, including an owner/manager. The cutting table length is twenty metres with the majority of the remaining factory space being taken up by the sewing machines and their handling tables. A single cutting table is capable of supplying sufficient work for four to five sewing machines. In many firms the cutting table is underutilized because of the quantity of repair work not involving it. The industry deals mainly with four types of work: (i) Repairs to tents, annexes and camper trailers, etc. (ii) Replacement of items such as entire canvas sections of camper trailers. (iii) Supply of new items, such as tents, caravan annexes, or awnings to order. (iv) Supply of large tender items such as canopies for army jeeps or trucks. Only the fourth category leads to a cutting stock problem similar to that encountered in other industries, but in most firms it forms a small part of their business. The first category does not generate any form of cutting stock problem because it is mainly repairing tears or replacing zippers, eyelets etc. It is categories two and three that lead to the type of cutting stock problem to be considered in this paper. Each item such as a tent, caravan annexe, awning or camper trailer is produced as a single unit often made up of thirty, to fifty sep-
250
A.A. Farley / The cutting stock problem in the canvas industry
arate parts in fifteen to thirty different sizes. This reflects the fact that the number of each size required is generally very small (one to four). The components are often not rectangular but it is standard practice to either combine them together or fill them out to a rectangular shape in order to generate patterns. Each firm tends to keep a range of standard tent designs. Also, for each make of caravan and each size caravan a different annexe is required. In Australia there are approximately fifteen major makes of camper trailer, each with a different design of canvas. Add to this the fact that each canvas unit can be made in up to twenty colours or thicknesses and it is easy to understand the industries policy of producing almost exclusively to order. Orders received are also divided by source into retail and wholesale orders. The retail orders are for one of a particular unit and often correspond in material type to no other order in that time period. The wholesale orders often cover a limited number of the same unit. When more than one of the same unit is required the cutting process is such that they can be cut simultaneously by stacking layers of canvas together. All orders are cut from standard stock rolls which come in a single size, 1.83-1.86 m by 50 m. The size of these rolls also distinguishes the canvas industry problem from the normal cutting stock problem. The roll is extremely long compared to the size of the pieces that are ordered. The nominal width of rolls varies with material type and thickness, between the limits 1.83 m to 1.86 m. The actual roll width also varies from the nominal value for a given material and thickness due to the stochastic nature of the production process. This variation can be up to 2 cm, even within the one roll. It is important to note that each unit requires considerably less than one roll, often only 10 to 20 metres. Currently all units are produced from patterns prepared on a trial-and-error manual basis. When the first ever order for a particular unit is received an initial pattern is designed, normally involving a relatively high waste factor. As the pattern is used on future occasions gradual improvements are made until a final version of the pattern is a achieved, generally with a much lower waste figure than the initial pattern.
The initial design can take up to three man days to prepare while the process of gradual improvement can involve up to three man-weeks of work over a time period covering m a n y months. The result of this process is that seldom made units tend to be cut from patterns that are inefficient compared to those used for the units ordered often. Under the current industry structure material requirements are an important component of total cost and therefore material waste must be considered. However, a n u m b e r of other factors can also lead to significant savings and hence any cutting stock solution technique must take these other factors into account, as will be described in the following section.
3. A speeialised pattern generation procedure Due to the nature of the problem in the canvas industry the method presented in this paper does not try to minimize the number of rolls used, but instead, the area (or length) of a single roll used to produce all pieces of a single unit. The heuristic is a modification of the G i l m o r e - G o m o r y three-stage algorithm (Gilmore and Gomory, 1965), to generate possible strip layouts, combined with integer programming, to combine the strip layouts together. The small number of each piece within a single unit is equivalent to small order quantities in the standard problem. As discussed in the literature (Haessler, 1980) this leads to complications in the standard approaches because they tend to produce patterns including more of a piece than ordered. Since such oversupply would be regarded as waste in the canvas industry this must be controlled. The Haessler article shows how to control the number of a given piece included in a single pattern for the one-dimensional problem. This is sufficient to generate the solutions for each strip width in the two-dimensional problem if each strip is limited to including no more of a given piece than the number ordered. However, it would not handle the problem of combining the strips together into a complete pattern because it would only limit the number of any one strip used in the final pattern, which is not the aim. In the approach outlined this problem is circumvented because the forming of strips into a pattern is not
A.A. Farley / The cutting stock problem in the canvas industry
solved by the G i l m o r e - G o m o r y approach but by integer programming. Since a single pattern is to be produced it is not necessary to invoke the convergence process involved in the conventional algorithm. Instead a single pass through the G i l m o r e - G o m o r y process is made but only to the end of phase I, i.e. to the point where best solutions for each strip width are available but are not yet combined into a best pattern. To initiate the solution process it is necessary to associate a value with each piece. In the G i l m o r e - G o m o r y algorithm these values are obtained as shadow prices from the solution of an associated linear programming problem. In the heuristic suggested no such associated problem is solved. The value associated with each piece is the area of that piece. In this way each optimization in phase I becomes: • Maximize the area of the strip covered by pieces ordered, or alternatively: • Minimize the waste on each strip. This will give a set of strips, each with the minimum possible waste. However, this does not mean that when combined together they will lead to the overall pattern with the minimum possible waste. This is so because, apart from each strip being limited to having no more of each piece than ordered, no account has been taken of the number of each piece ordered. Combining together strips with low waste may require acceptance of a solution which oversupplies one piece in order to meet the requirements for another piece which occurs only in the same strip, but in a different ratio to that ordered. This is most unlikely to correspond to the pattern using the minimum length of roll. To overcome this problem more flexibility in relation to which pieces occur together on the same strip, and in what ratio, is required at the stage where strips are combined together to form the final pattern. This can be achieved by modifying the solution procedure so as to produce the k best solutions, rather than the single best solution, for each strip width considered. In this way a wider range of combinations of pieces within strips, all with the property of having low waste, become available to choose from when trying to form the strips into a final pattern. The modifications necessary to implement this approach and the impact of such modifications are discussed by Farley (1988b).
25l
Using this approach a problem having p different piece widths, and therefore p distinct strip widths, with a requirement of k best solutions for each strip width would produce up to k x p different strips to choose from when trying to combine them into a final pattern. Note that there may be less than k x p strips because not all strip widths are capable of producing k different combinations. One 'trick-of-the-trade' used by manual pattern designers is to design patterns which would appear to exceed the roll width. This is not so however, since all pieces include a 2 cm allowance for seams on all edges and this allowance is subject to some variation, as required. In this manner, patterns which initially exceed the roll width by a small amount can be 'doctored' to become acceptable. The same approach is adopted when a narrow master roll occurs. This 'trick' can be replicated in computerized pattern generation by specifying a strip width which is slightly larger than the expected roll width. Most strips designed do not completely fill the allocated strip width and hence require no adjustment. Those with widths falling between the actual roll width and the specified width require reduction of the seam allowance on pieces making up the strip. Since pieces may be non-rectangular, reducing the edges of the containing rectangle by a small amount m a y have little impact upon the actual piece. The problem to be solved becomes Minimize subject to
L = w'x A x >1b, x >/0 and integer,
(3)
where L wj xj ai j b,
= = = = =
total length of roll width of strip j, number of strip j number of piece i number of piece i
required to produce unit, included in final pattern, in strip j, in unit.
Typically the optimal xj are small in value, and hence to obtain an integer value for them it is not satisfactory to solve the problem by linear programming and then round the solution to integer values. Instead it is necessary to use integer programming. This has not proven to be a severe limitation since, although the number of strips
252
A.A. Farley / The cutting stock problem in the canvas industry
may become large (over 300 in some test problems), the number of constraints is always equal to the number of different pieces in the unit, which seldom exceeds 30. Computational experience has shown such problems to be very manageable for integer programming packages such as MPCODE (Land and Powell, 1973). To summarize, the heuristic is presented in two stages: Stage I. Solve phase I of the G i l m o r e - G o m o r y 3-stage algorithm with the following modifications: (i) The number of piece i included within a strip combination must not exceed the number ordered of that piece, b i. (ii) Instead of using shadow prices for the value of each piece use the area of the piece as its value. (iii) Produce up to the k best solutions for each strip width instead of only the best. Stage II. Instead of solving the problem as in phase II of the G i l m o r e - G o m o r y algorithm solve the integer programming problem shown by Model (4) to obtain the minimum length of roll needed to meet the unit's requirements.
4. Advantages of the proposed heuristic The heuristic described above will generate a pattern incorporating all the parts required to produce a single unit. It does not guarantee the solution to be that which uses the minimum length of roll. This can be attributed to two causes. The first is that the cutter in practice is not limited to three-stage cutting, or even guillotine cuts. Second, the heuristic only optimizes subject to the set of strips generated at Stage I, although research has shown that the solution is often optimal subject to the 3-stage limitation. For the two reasons given above it is found that the solutions obtained by the heuristic have been, in general, equal to those obtained in the final instance by manual methods. In practice it has been found that this situation can be improved by manual manipulation of the computer designed pattern. All pieces within narrow strips can often be redistributed to 'holes' in other segments of the pattern. Such redistribution may sometimes fill 'holes' on adjacent strips with a single piece, effectively creating a single strip of the combined
Figure 3. Current pattern style length. The total length of the pattern is reduced by the amount of the redistributed strip's length. Even this may not lead to a gain by the conventional trim-loss criterion, percentage waste. However, any increase in waste is more than compensated by a number of other advantages associated with the heuristic's solution. Since the canvas cutter is not restricted to guillotine cutting the type of pattern currently used within the industry tends to be complex in structure, as shown in Figure 3. Typically current patterns cannot be separated into smaller segments that can be worked on individually. It is necessary to work with a length of canvas equal to the entire pattern, often ten to twenty metres. The heuristic given above always produces 3stage patterns which can be divided into smaller segments corresponding to the strips as shown in Figure 4. Each segment can be worked with in isolation until completely cut into the required pieces and removed from the cutting table. The largest possible segment is given by the largest possible piece width, often three to four metres. This leads to a drastic reduction in the size of the cutting table needed. In this way a current single cutting table could be transformed into two cutting tables or more likely a single, smaller cutting table and additional sewing machines. Irrespective
A.A. Farley / The cutting stock problem in the canvas industry
253
can cover a considerable period of time. During this period patterns using more canvas than the solution given by the heuristic are being used. Also, the number of man hours required to produce the final manual pattern is considerable when compared to that for the method outlined. Using a series of programs coded in Fortran on a V A X l l / 7 8 0 solutions for problems supplied by a company have involved up to one man hour of human time and between two to ten minutes of computer cpu time. This covers data entry, solution of the procedure described, and plotting of the final pattern produced on a hard-copy plotter.
5. 4-stage pattern generation
Figure 4. 3-stage pattern style
of the rearrangement performed it leads to a more efficient use of the limited work space and hence an increase in productivity. The smaller cutting table also leads to other gains in productivity. Because of the smaller segment sizes the cutter has less difficulty handling the canvas and also has less walking to do while cutting the canvas, increasing their productivity. An additional consequence of this new pattern structure is the resultant ability to utilize, or minimize, the offcuts created at the end of a roll. With current pattern design large segments at the end of rolls (up to 10 m) become offcuts that are difficult to utilize because of the indivisibility of the existing pattern structure. The strip structure allows offcuts to be utilized for other items. In this manner the average percentage of rolls discarded, or held in stock for long periods, can be reduced significantly. When waste created in such a manner is considered, the proposed heuristic produces less total waste than current manual methods. Added to this is the gain in time required to produce a good pattern. The initial pattern produced manually often has significantly higher canvas usage than the final manual version and therefore the heuristic's version. The refinement of the manual pattern from its initial to final form
It is possible to retain the advantages of 3-stage patterns and yet reduce the percentage of waste in each strip by extending the 3-stage concept to what will be termed "4-stage cutting". With 3-stage cutting each strip can contain pieces of varying lengths but never more than one piece along the length of the strip, as shown in Figure 4. Even if pieces are available that could be placed in the shaded areas they would not be considered by 3-stage cutting approaches. This limitation can be partly remedied by regarding the
H
Figure 5.4-stage pattern style
254
A.A. Farley / The cutting stock problem in the canvas industry
generation of each strip as being equivalent to the generation of an entire 3-stage pattern. The stockplate dimensions for such a pattern would be the width of the original roll and the length of the strip currently under consideration. Fitting a 3stage pattern into a single strip produces patterns such as that shown in Figure 5. Combining such 3-stage strips together would produce a 4-stage pattern. Such a pattern would have the desirable cutting characteristics described in Section 4, combined generally with lower waste (and hence shorter roll length) than an equivalent 3-stage pattern. However, it is necessary to limit the number of any one piece appearing in 3-stage strips. This can be done in the manner described by Farley (1985). The 'trick-of-the-trade' relating to seam allowance, outlined in Section 3, can be extended in 4-stage cutting. N o t only the strip width can be overstated by a small amount but also the strip length. If a combination of pieces shghtly exceeds the original strip length the seams of such pieces can be reduced slightly to bring their combined length into line with other components of the strip. A limited number of patterns have been developed in this manner. A comparison of 3-stage and 4-stage solutions for these patterns is given in Table 1. The 3-stage patterns are generated using 10 solutions per strip while the 4-stage patterns
Table 1 4-stage vs. 3-stage patterns Characteristic
2
3
10.26 1.83
9.59 1.86
12.4 1.85
10.77 1.85
19.6 12.28 281.0
10.8 10.63 105.0
9.0 13.53 53.0
10.2 11.87 223.0
13.4 11.64 146.0
10.1 10.56 359.0
7.9 13.39 466.0
10.2 11.87 333.0
4-stage patterns
Waste b (%) Roll length (m) cpu time (secs)
Order length is the area of the order, once enclosed in rectangles, divided by the appropriate roll width. b Waste within the enclosing rectangles is not included in this table. a
The canvas industry deals with a wide range of designs which can occur on a regular basis. However, each design can be requested in a wide variety of materials and colours. These two factors make it desirable to have a standard pattern for each design, that is efficient in material usage, but not desirable to keep stocks of final product. With current manual pattern generation techniques there is often a long lag between the first request for a new design and the production of an efficient pattern. The heuristics presented give the manufacturer almost immediate access to an efficient pattern using a similar quantity of canvas to the most efficient manual pattern. Added to this gain is the increase in productivity because of the more efficient utilization of floor space in the work area and the increased capabilities of the cutter. Improved usage of stock roll offcuts is also a benefit of the proposed procedure. The small amounts of human and computer time required by the heuristics are outweighed by the elimination of considerable design time for manual patterns as well as the gains from the factors mentioned above.
References
4
3-stage patterns
Waste b (%) Roll length (m) cpu time (secs)
6. C o n c l u s i o n
Problem number 1
Order length a (m) Roll width (m)
involve 3 solutions per substrip and 8 per strip (see Farley, 1988b, for details of implementing multiple solutions per substrip and strip). The results for these problems show dramatic variation in both relative waste and cpu time. From the limited evidence 4-stage pattern appear justifiable.
Dyson, R.G., and Gregory, A.S. (1974), "The cutting stock problem in the flat glass industry", Operational Research Quarterly 25, 41-53. Farley, A.A. (1983), "Trim-loss pattem rearrangement and its relevance to the fiat-glass industry", European Journal of Operational Research 14, 386-392. Farley, A.A. (1985), "Algorithms for solving cutting stock problems", PhD Thesis, Monash University, Melbourne, Australia. Farley, A.A. (1988a), "Mathematical programming models for cutting stock problems in the clothing industry", Journal of the Operational Research Society 39, 41-53. Farley, A.A. (1988b), "Practical adaptations of the Gilmore-Gomory approach to cutting stock problems, O.R. Spektrum 10, 113-123.
A.A. Farley / The cutting stock problem in the canvas industry Farley, A.A. (1990), "Selection of stockplate characteristics and cutting style for two dimensional cutting stock situations", European Journal of Operational Research, this issue. Gilmore, P.C., and Gomory, R.E. (1961), "A linear programming approach to the cutting-stock problem", Operations Research 9, 849-859. Gilmore, P.C., and Gomory, R.E. (1963), "A linear programming approach to the cutting-stock problem, Part II", Operations Research 11,863-888. Gilmore, P.C., and Gomory, R.E. (1965), "Multistage cuttingstock problems of two and more dimensions", Operations Research 13, 94-120. Gilmore, P.C., and Gomory, R.E. (1966), "The theory and computation of knapsack functions", Operations Research 14, 1045-1074. Haessler, R.W. (1978), "A procedure for solving the 1.5-dimensional coil shtting problem", A H E Transactions 10, 70-75. Haessler, R.W. (1980), "A note on computational modifica-
255
tions to the Gilmore-Gomory cutting stock algorithm", Operations Research 28, 1001-1005. Haessler, R.W., and Talbot, F.B. (1983), "A 0-1 model for solving the corrugator trim problem", Management Science 29, 200-209. Land, A., and Powell S. (1973), FORTRAN Codes for Mathematical Programming, John Wiley and Sons Inc., New York, London. Litton, C.D. (1977), "A frequency approach to the one-dimensional cutting problem for carpet rolls", Operational Research Quarterly 28, 927-938. Madsen, O.B.G. (1979), "Glass cutting in a small firm", Mathematical Programming 17, 85-90. Sculli, D. (1981), "A stochastic cutting stock procedure: Cutting rolls of insulating tape", Management Science 27, 946-952. Stainton, R.S. (1977), "The cutting stock problem for the stock-holder of steel reinforcement bars", Operational Research Quarterly 28, 139-149.