A Parallel Branch-And-Bound Approach to the Rectangular Guillotine Strip Cutting Problem
Total Page:16
File Type:pdf, Size:1020Kb
Published online ahead of print July 2, 2010 INFORMS Journal on Computing informs ® Articles in Advance, pp. 1–11 issn 1091-9856 eissn 1526-5528 doi 10.1287/ijoc.1100.0394 © 2010 INFORMS A Parallel Branch-and-Bound Approach to the Rectangular Guillotine Strip Cutting Problem Sławomir Bak,˛ Jacek Bła˙zewicz,Grzegorz Pawlak, Maciej Płaza Institute of Computing Science, Pozna´nUniversity of Technology, 60-965 Pozna´n,Poland {[email protected], [email protected], [email protected], [email protected]} Edmund K. Burke, Graham Kendall School of Computer Science, University of Nottingham, Nottingham NG8 1BB, United Kingdom {[email protected], [email protected]} his paper presents a parallel branch-and-bound method to address the two-dimensional rectangular guil- Tlotine strip cutting problem. Our paper focuses on a parallel branching schema. We present a series of computational experiments to evaluate the strength of the approach. Optimal solutions have been found for some benchmark instances that had unknown solutions until now. For many other instances, we demonstrate that the proposed approach is time effective. The efficiency of the parallel version of the algorithm is compared and the speedup, when increasing the number of processors, is clearly demonstrated with an upper bound calculated by a specialised heuristic procedure. Key words: production scheduling; cutting stock; material handling; parallel branch-and-bound method; analysis of algorithms History: Accepted by Michel Gendreau, former Area Editor for Heuristic Search and Learning; received November 2007; revised August 2008, May 2009, January 2010; accepted February 2010. Published online in Articles in Advance. version, which is made available to institutional subscribers. The file may 1. Introduction complexity of the problem is increased by different The cutting and packing family of problems affects constraints within various manufacturing industries, several different industries and motivates many areas including paper, wood, glass, and metal cutting. For of research. Research going back at least 50 years has example, paper cutting is generally concerned with led to the development of many models and math- guillotine cutting (where only vertical or horizontal ematical tools. The diversity of this type of prob- straight cuts, across the entire sheet, are allowed) of Articles in Advance lem has made it necessary to introduce a consistent rectangular items from a stock roll of fixed width, typology that was proposed by Dyckhoff (1990) and whereas applications in metal and shipbuilding are further developed by Wäscher et al. (2007). The earli- often concerned with the cutting of irregular shapes est work in this area was conducted by Gilmore and from a stock sheet (see, for example, Bła˙zewiczet al. Gomory (1961), where they solved one-dimensional 1993). Despite their industrial relevance, irregular cut- problems to optimality using linear programming. An ting problems have not been widely researched, but example of a one-dimensional problem is the divi- the area has gained popularity in recent years (see, for sion of steel bars or rods into smaller lengths for example, Bennell and Oliveira 2006). In some applica- fabrication or resale. However, only small problem tions the pieces cannot be rotated—for instance, cut- instances could be solved in reasonable time. Gilmore ting pieces from wooden boards that have to take the and Gomory (1966) characterised knapsack functions wood grain into account—but in other applications, and used them to develop more efficient methods. such as cutting pieces from steel sheets, rotation is INFORMS holds copyright to this Generalisations of these methods were also applied to often allowed. two-dimensional problems. The two-dimensional cutting stock problem is a Two-dimensional problems can be modelled as a generalisation of the one-dimensional knapsack prob- set of pieces that must be arranged on a predefined lem. In two dimensions, a large stock rectangle S of dimensions L × W and n types of smaller rectangular Copyright: not be posted on any other website, including the author’s site. Pleasestock send any questions regarding this policy to [email protected]. sheet so that each piece does not overlap with another, and of course, each piece must fit within the pieces are presented. Each smaller piece has an asso- bounds of the sheet. The main objective is to maximise ciated profit. The problem is to cut from S a set of space utilisation and therefore minimise wastage. The small rectangles so that the overall profit is maximised. 1 Bak˛ et al.: A Parallel Branch-and-Bound Approach to the Rectangular Guillotine Strip Cutting Problem 2 INFORMS Journal on Computing, Articles in Advance, pp. 1–11, © 2010 INFORMS This problem can be classified as 2/B/O/M accord- routine (called the “difference process algorithm”), ing to Dyckhoff’s typology (Dyckhoff 1990) and as which can access enclosed areas in the partial layout. a two-dimensional placement problem in Wäscher’s Every insertion of a new item in the layout creates typology (Wäscher et al. 2007). A variety of solution two empty rectangular spaces. The algorithm keeps methods, both exact and approximate, have been pre- track of the newly generated spaces, selecting the one sented and discussed over the years. Gilmore and that is closest to the bottom-left corner of the object Gomory (1966) proposed a recursive exact algorithm and that is sufficiently large for the allocation of the based on dynamic programming to solve the uncon- next rectangle. This method outperforms the algo- strained guillotine version. Wang (1983) proposed a rithms of Jakobs (1996) and Liu and Teng (1999). Dagli bottom-up approach that generates all of the feasible and Poshyanonda (1997) used a placement method cutting patterns by horizontally or vertically combin- that is based on a sliding technique combined with an ing two patterns that may be constructed from two artificial neural network. During the packing process, other patterns. Viswanathan and Bagchi (1993) used a the generated scrap areas are recorded. The neural net- bottom-up approach, together with the Gilmore and work selects the best match between the item and the Gomory procedure, to develop a best-first branch- empty areas. and-bound algorithm for the constrained version of Genetic algorithms have also been considered the problem. Hifi (1997) improved their algorithm by for guillotineable packing problems. Kröger (1995) exploiting dynamic programming properties. proposed a slicing tree representation. A guillotine Another well-studied cutting and packing problem, constraint is directly reflected by the encoding mech- proposed by Baker et al. (1980), is the strip packing anism. The rectangles are stored in the leaf nodes. problem. In strip packing, we have to pack (or cut) a The nodes are connected by the use of one of two set of small rectangular pieces of different sizes into a operators indicating a horizontal or a vertical combi- single rectangle (strip) of fixed width W . The length L nation. The tree is represented by a string over the is unlimited. The objective is to minimise the length to alphabet 1 2 3nhv, where h and v repre- sent a horizontal and vertical combination, respec- which the strip is filled. The problem has been shown tively. The string has the length of 2n − 1, where n to be NP-hard in Hochbaum and Maass (1985) and is the number of rectangles to be packed. A special Leung et al. (1990). There have been many different crossover operator was used with only subtrees with approaches for producing solutions for the strip pack- version, which is made available to institutional subscribers. The file may a certain structure able to be inherited. The size of ing problem. It should be noted that to deal with large- each subtree should include at most four rectangles. scale problems, most of these approaches are heuristic After crossover, the insertion of single rectangles that in nature (Burke et al. 2004, Hopper and Turton 2001, are missing from the complete set is carried out. Muta- Lodi et al. 2002). tion is carried out by the application of an operator, Several papers have approached the nonguillotine- randomly chosen from a set of five, to a randomly able strip packing problem with genetic algorithms selected substring. A hill-climbing strategy is applied in combination with heuristic placement routines. to improve the fitness of a recently mutated or recom- Articles in Advance In this two-stage approach, a genetic algorithm is bined string. Kröger also proposes the concept of used to determine the sequence in which items are metarectangles. Each metarectangle describes a group to be packed. A second algorithm is then utilised, of densely packed rectangles that are subsequently which decides how this sequence is allocated onto treated as one large rectangle, thus reducing the prob- the strip. One of the first researchers to implement lem complexity. Kröger empirically demonstrated that this approach is Smith (1985). Jakobs (1996) used the solution produced by the genetic algorithm was a bottom-left heuristic to hybridise an order-based superior to other approaches such as random search genetic algorithm. To reduce computational complex- or simulated annealing. ity, the heuristic does not necessarily search for the Hwang et al. (1994) proposed two methods for solv- lowest available position in the layout but preserves ing the strip packing problem. One approach is based bottom-left stability. Liu and Teng (1999) improved on a directed binary tree that combines two rectangles the bottom-left (BL) routine by using a sliding princi- into a larger one by either placing them horizontally ple and giving priority to the downward movement or vertically next to each other. The second approach is INFORMS holds copyright to this of the rectangle. Hopper and Turton (1999, 2000) also order based and applies a level-oriented packing pro- developed a BL algorithm that can access enclosed cedure, where a level is defined as a horizontal line areas in the partial layout and places the new item in drawn through the top of the tallest rectangle on the the first BL position with sufficient area.