641
Views
5
CrossRef citations to date
0
Altmetric
Articles

A New PSO-based Algorithm for Two-Dimensional Non-Guillotine Non-Oriented Cutting Stock Problem

, , &

ABSTRACT

In this paper, a new algorithm is proposed for the two-dimensional non-guillotine non-oriented cutting stock problem. The considered problem consists of cutting small rectangular pieces of predetermined sizes from large but finite rectangular plates. The objective is to generate cutting patterns that minimize the unused area and fulfill customer orders. The proposed algorithm is a combination of a new particle swarm optimization approach with a heuristic criterion inspired from the literature. The algorithm is tested on twenty-two instances divided into two sets. Corresponding results show the algorithm efficiency in optimizing the trim loss that is comprised between 2.6% and 7.8% for all considered instances.

Introduction

The cutting stock problem (CSP) is encountered in many production processes in different industrial sectors. Different variants of CSP can be defined according to the considered constraints and objectives e.g. the assortment problem which consists of identifying optimal dimensions of large objects from which small items (pieces) are to be cut, trim loss problem which consists of finding patterns optimizing materiel wastage for predefined pieces and large objects dimensions, etc. Four characteristics should be defined for each considered CSP (Dyckhoff Citation1990):

  • Dimensionality: The literature deals with three categories of dimensions: 1D, 2D, and 3D CSPs.

  • Kind of assignment: all stock material will be used but not all the orders must be fulfilled, or every order must be fulfilled but only a portion of stock will be used.

  • Assortment of large objects: One large object to be cut, many identical large objects with similar dimensions, or different large objects with different dimensions.

  • Assortment of small items to be cut: Few items of different dimensions, many items of many different dimensions, many items of relatively few different dimensions, or many identical items.

In case of two-dimensional cutting procedure, two variants are considered in the literature: The guillotine or edge to edge cutting when cutter must pass throughout the cutting plate without changing its direction, and the non-guillotine when the cutting tool may change direction before crossing the edge of the plate. The latter is provided in steel industry by modern cutting technologies such as laser resonator and rapid erosion.

Additional specifications are identified to characterize a two-dimensional cutting stock problem (2D-CSP), such as the raw material dimension: a CSP can be considered as a bin-packing problem when the raw material is presented as sheets with limited dimensions, or strip packing problem when pieces are to be cut from rolls with infinite height, and the possibility of pieces rotation when designing a pattern: called oriented if the orientation is not allowed, and or non-oriented if it is allowed.

In this paper, we focus on the trim loss problem and look for the cutting patterns that minimize the unused area. The considered problem is the 2D non-guillotine, non-oriented CSP with fixed identical plates’ dimensions, denoted in the literature as 2BP|R|F, while 2 for 2D, BP for Bin Packing, R for non-oriented, and F for Free that means non-guillotine. Many ordered items of relatively few dimensions must be totally fulfilled, and only a portion of stock sheets will be used with the assumption of an infinite number of available sheets.

It is worth to notice that CSP should be distinguished from cutting problem (CP). In fact, CP consists of finding the best cutting pattern that maximizes the sum of the profit of small items obtained from a large rectangle, whereas the CSP is the problem of cutting all required number of small rectangular pieces of different sizes from a set of rectangular sheets at a minimum sheet cost (Young-Gun and Kang Citation2002). Different heuristics and meta-heuristics have been developed in the literature to solve CSPs and related CPs since these problems belong to the category of NP-hard problems (Chu and Antonio Citation1999): Ayadi et al. (Citation2009) and Ayadi, Cheikhrouhou, and Masmoudi (Citation2012) proposed a hybrid heuristic based on the combination of bottom left and shelf algorithms for the guillotine CSP. Morabito and Arenales (Citation1996) provided several rule-based heuristics to improve the cutting approach within a branch and bound procedure for non-guillotine CP. Other heuristics have been proposed in (Bengtsson Citation1982) and (El-Bouri et al. Citation1994) for a non-oriented bin-packing problem. El Hayek, Moukrim, and Nègre (Citation2008) developed a heuristic based on the combination of the items maximal area concept and a heuristic metric for non-guillotine CP. Several meta-heuristics have been adopted, in particular the simulated annealing (Lai and Chan Citation1997), genetic algorithm (Beasley Citation2004), Tabu search (Alvarez-Valdes, Parreño, and Tamarit Citation2007), particle swarm optimization (PSO) (Barkallah, Ayadi, and Masmoudi Citation2014) (Ayadi and Barkallah Citation2016) (Ben Lagha, Dahmani, and Krichen Citation2014), etc. Gilmore and Gomory (Citation1965) proposed a branch-and-price-and-cut algorithm, Beasley (Citation1985) provided a branch and bound and a lower bound with a Lagrangian relaxation to an Mixed integer linear programming (MILP). Boschetti, Hadjinconstantinou, and Mingozzi (Citation2002) provided a new linear mathematical model with new bounds obtained by relaxation. The reader is referred to (Dyckhoff, Scheithauer, and Terno Citation1997) for general surveys on CPs and to (Valério de Carvalho Citation2002) for a survey of the most popular Linear Programming (LP) methods for Bin-packing and CSPs. A review of models and solution methods included by (Belov Citation2003) and (Hassler and Sweeney Citation1991) are dedicated to 2-D CSPs, and a survey on two-dimensional packing problems is presented in (Lodi et al. Citation2010).

In this paper, a new algorithm is proposed for the considered CSP associated with the resolution of the corresponding CP. The developed approach is based on the definition of specific PSO operators and an adequate combination with a heuristic metric inspired from (El Hayek, Moukrim, and Nègre Citation2008). This approach is considered for patterns generation following an iterative procedure that is designed to solve the whole CSP. The algorithm efficiency is evaluated through its application to two sets of instances. The next section describes the proposed algorithm and the section following that reports the numerical results and corresponding discussions. The final section draws the conclusions and perspectives.

Developed algorithm for CSP

The proposed algorithm is based on dividing the problem into several sub-problems formulated as CPs. A corresponding approach is developed in order to solve each sub-problem and is iterated until reaching the optimized solution of considered SCP. The proposed approach for the CP is first presented; then, the global algorithm is addressed.

Proposed approach for CP

The proposed approach represents an adequate procedure to find a pattern with a minimized waste rate. It consists of defining optimal couples of pieces to be cut and corresponding placements in vacant rectangles in the pattern. A new PSO approach is developed in order to define the optimal order of pieces allocation; and a heuristic criterion inspired from (El Hayek, Moukrim, and Nègre Citation2008) is adopted in order to select the suitable vacant rectangle for each piece to be allocated.

PSO-based approach

PSO is a stochastic population-based meta-heuristic inspired from swarm intelligence. Its first application to optimization problems was proposed by (Kennedy and Eberhart Citation1995). In the basic formulation, a swarm consists of N particles flying around in a D-dimensional search space. The basis of the optimization process consists of evolving from a swarm to another by taking advantage from the cooperation between the particles. The success of some particles will influence the behavior of their peers.

Each particle is a candidate solution to the problem. In the adapted approach, a particle represents a specific order of the pieces references. This order is to be followed when designing a pattern by the allocation of ordered pieces to vacant rectangles until the saturation of the pattern. The proposed particle size is equal to 2.m.Nmax components, where , H is the sheet height, wj is the width of the jth piece and m is the number of pieces references. Each reference appears in the reading vector of a particle Nmax times for the first orientation and Nmax times for the second orientation, since the considered problem is non-oriented.

The initial swarm is composed from particles obtained by a random dispersion of an initialized particle. The initialized particle orders the pieces’ references following the decreasing order of their heights.

Each particle is associated to a reading vector xd representing its position in the decision space and a velocity vector vd is used to update the particle position during the optimization. The position update is expressed in formulas (1) and (2):

(1)
(2)

where c1, c2 and c3 are real parameters comprised between 0 and 1, pd is the best known position of particle d, and gd is the best known position of the entire swarm.

The comparison between particles follows their corresponding waste rates. Several specific operators have been considered to improve the particles. To illustrate the operator definitions, we consider an illustrative example of two particle positions x1 and x2 (Equations (3) and (4)) characterized by three pieces references for a CP with Nmax = 1:

(3)
(4)

  • Adapted subtraction operator

The subtraction of two particle positions is obtained through the subtraction of their components following formula (5):

(5)

The application of this operator to the illustrative example yields to particle x3 expressed by Equation (6).

(6)
  • Adapted velocities addition operator

The addition of two velocities v1d and v2d multiplied by corresponding cj parameters is encountered in the definition of the particle velocity. The principle of this addition is given by formula (7):

(7)
  • Adapted addition of a position and a velocity operator

The principle of adding a position to a velocity, as in formula (2), is given by formula (8):

(8)

Let us consider velocity vd = x3. The application of this operator to the illustrative example yields to the position x4 expressed by Equation (9):

(9)

Pieces allocation procedure (PAP)

When designing the pattern corresponding to a particle, each piece is to be allocated to one of the pattern’s vacant rectangles. Thus, a list of vacant rectangles is considered, and contains all available spaces that can receive at least one of the ordered pieces. Vacant rectangles are identified with their bottom left corner coordinates (xj,yj) as well as their widths wj and heights hj. This list is initialized by the rectangle representing the whole sheet, and after each update, it is ordered following a heuristic criterion inspired from (El Hayek, Moukrim, and Nègre Citation2008). This criterion is a weighted sum of ratios that compare the dimensions of rectangles with the dimensions of the piece to be allocated as described in Equation (10). For each piece i, the candidate available rectangles are selected in the decreasing order of their criterion value o(i,j):

(10)

where

i:=

piece reference;

j:=

vacant rectangle reference;

qk: Weights; 0 ≤ qk≤ 1; k = 1,…,4 and .

When a piece is allocated to a vacant rectangle, the list of rectangles is updated following these PAP steps:

Step 1. Remove the vacant rectangle to which the piece is allocated.

Step 2. Create two new rectangles limited by the attributed piece and the removed rectangle, as shown in : one rectangle on the right of the piece (R1), and one above it (R2).

Figure 1. Step 2 of piece allocation.

Figure 1. Step 2 of piece allocation.

Step 3. Check the inclusion of the created rectangles in the existing ones and remove included rectangle(s) if necessary.

Step 4. Update the list of vacant rectangles in order to avoid the overlaps between allocated piece and the rectangles. represents an exhaustive enumeration of the fifteen possible overlapping configurations. The table shows an illustrative figure for each configuration, as well as a corresponding example and the new rectangles to be created for the update list. Added rectangles are referred as Raj(xj,yj,wj,hj), where (xj,yj) are the coordinates of the rectangle’s bottom left corner and (wj,hj) are the rectangle’s width and height, respectively.

Table 1. Rectangles’ list updating.

Step 5. Check inclusions between created rectangles and existing ones and remove included ones.

Global algorithm for CSP

The provided algorithm iterates the approach described in the last section with updating the ordered pieces to be cut. The details of this algorithm are shown in . The first step consists of reading the problem parameters (pieces dimensions and ordered quantities as well as sheet dimensions) and fixing the PSO parameters (c1, c2, c3, swarm size, and maximum number of iterations). The second step concerns the design of optimal patterns by combining the PSO-based approach and the PAP. After initializing the first particle (Step 2.1), the first swarm is created through a random dispersion of this particle (Step 2.2). Patterns corresponding to the swarm’s particles are then generated using the described PAP (Step 2.3) and corresponding waste rates are identified in order to select the best pattern to be considered (Step 2.4). The particle swarm is updated using formulas (1) and (2) (Step 2.5), until reaching one of the two stopping criteria: the maximum number of iterations and no improvement of the waste rate for all particles. Step 3 corresponds to the calculation of sheets number to be cut following the optimal designed pattern without violating demand limitation constraints. After that, net orders are updated in Step 4, and the procedure is iterated until satisfying ordered quantities.

Figure 2. Proposed algorithm for solving CSP.

Figure 2. Proposed algorithm for solving CSP.

Numerical results

The proposed approach is applied to two sets of instances: the first one contains four designed instances for which the optimal solutions are known. This set serves for validation tests by comparing the performance of algorithm results with optimal ones. The second set consists of 18 instances for which optimal solutions are unknown. These instances are randomly generated with respect to real life bounds in order to evaluate the algorithm based on cases encoding real-world problems.

First set of instances

The patterns corresponding to each of the four instances are manually designed with specific pieces’ and sheets’ dimensions so that the corresponding optimal solutions are characterized with a null trim loss value. Corresponding patterns are reported in Appendix 1, and the number of used sheets following these optimal solutions are reported in and labeled as NUSmin. shows also pieces’ and sheets’ characteristics. For each piece type Pi to be cut, related data are represented as following: (height, width, demand). The number of piece types is equal to 8, 17, 16, and 12 for instances #1, #2, #3, and #4, respectively.

Table 2. First-set instance data and corresponding results.

The proposed approach is applied to each of the considered instances. Corresponding results (number of used sheets “NUSPSO” and obtained trim loss) are reported in the last two rows of . Results show that the trim loss varies from 4% to 6% with respect to the considered instance, with a total trim loss for this first set equal to 4.8%. These results show the performance of the proposed algorithm in solving non-guillotine CSPs.

It is worth to notice that the proposed approach is the first heuristic adapting PSO technique with the proposed specific operators to the non-guillotine CSPs. This initiative shows that the issue of developing PSO-based algorithms considering the proposed operators for non-guillotine CSPs seems to be promising.

Second set of instances

The second set concerns 18 instances that are randomly generated with a number of piece types between 2 and 18 as shown in . Piece heights and widths are randomly generated between 150 and 600 mm and demand between 1000 and 20000. Sheet dimensions are fixed to 2500 mm × 1850 mm.

Table 3. Results of second-set instances.

The instances are tested with the proposed approach and results are reported in . For each instance, the number of designed patterns, NUSPSO, and corresponding trim loss are given. Results show that the trim loss is less than 7.8% for all instances with an average value equal to 6%. For five of the tested instances (#1, #2, #4, #7, and #9), the trim loss remains less than 5% with a specific low value for instance #1 equal to 2.6%. These results show a significant efficiency of the proposed approach in optimizing trim loss and consequently the use of raw materials for randomly generated instances inspired from real-world cases.

It is worth to note that instance #1—that is characterized by the lowest obtained trim loss—has the minimal problem dimension (with NUSPSO = 540 sheets and only two pieces types) in comparison to all tested instances. However, we cannot say that the solution optimality depends on the problem dimension, based on the results of the other instances. Let’s consider instances #2 and #15 for example: results show that trim loss corresponding to instance #2 is equal to 4.54% counter a trim loss of 7.83% for instance #15 although the dimension of instance #2 is higher than the dimension of instance #15. In fact, the number of pieces types is equal to 16 and NUSPSO = 5029 sheets for instance #2, while the number of pieces types is equal to 6 and NUSPSO = 2636 sheets for instance #15 Thus, solution optimality depends on the adequacy between pieces and sheets dimensions.

Although results show the efficiency of the algorithm in reaching low trim loss, the number of generated patterns yielding to the optimized results can reach important values (c.f. 40 patterns for instance #16). From industrial practical perspective, this can generate additional set up costs related to necessary number of pattern changes in the cutting process.

Conclusions and perspectives

In this paper, a PSO-based approach with specific operators is provided to solve non-guillotine non-oriented CSP. The CSP is divided into several CPs that are solved iteratively. Computations are provided on two sets of instances showing and validating the efficiency of the algorithm. Results show a trim loss comprised between 2.6% and 7.8% for all considered instances, which confirms that algorithms adopting the PSO techniques are promising issues that should be well investigated for CSPs.

As future work, we propose to adapt the proposed approach to the case of multi-period non-guillotine CSP in a rolling planning horizon context. In addition, considering the problem as a bi-objective one in order to find a compromise between optimized trim loss and number of generated patterns can represent an interesting issue that meets real world industrial perspectives.

References

  • Alvarez-Valdes, R., F. Parreño, and J. M. Tamarit. 2007. A tabu search algorithm for a two-dimensional non-guillotine cutting problem. European Journal of Operational Research 183 (3):1167–82. doi:10.1016/j.ejor.2005.11.068.
  • Ayadi, O., and M. Barkallah. 2016. An adapted particle swarm optimization approach for a 2D guillotine cutting stock problem. Mechanics and Industry (Mechanics and Industry) 17 (5):508. doi:10.1051/meca/2015096.
  • Ayadi, O., N. Cheikhrouhou, and F. Masmoudi. 2012. A new formulation of the two-dimensional cutting-stock problem with consideration of demand planning. International Journal Advanced Operations Management 4 (1–2):27–61. doi:10.1504/IJAOM.2012.045890.
  • Ayadi, O., N. Cheikhrouhou, A. Mellouli, and F. Masmoudi. 2009. A hybrid heuristic to solve the two dimensional cutting stock problem with consideration of forecasts. IEEE International Conference on Computers & Industrial Engineering (CIE), 6–9 July, Troyes France, 221–26.
  • Barkallah, M., O. Ayadi, and E. F. Masmoudi. 2014. Partical swarm optimization for the 2D guillotine cutting problem. 1st International Conference on Multiphysics modeling and simulation for Systems Design, Sousse, Tunisia, December 17–19.
  • Beasley, J. E. 1985. An exact Two-Dimensional Non-Guillotine cutting tree search procedure. Operations Research 33 (1):49–64. doi:10.1287/opre.33.1.49.
  • Beasley, J. E. 2004. A population heuristic for constrained two-dimensional non guillotine cutting. European Journal of Operational Research 156 (3):601–27. doi:10.1016/S0377-2217(03)00139-5.
  • Belov, G. 2003.Problems, models and algorithms in one-and two-dimensional cutting. PhD thesis, Fakultät Mathematik und Naturwissenschaften, Technischen Universität Dresden, St. Petersburg, Russland.
  • Ben Lagha, G., N. Dahmani, and S. Krichen. 2014. Particle swarm optimization approach for resolving the cutting stock problem. IEEE International Conference on Advanced Logistics and Transport, Hammamet, Tunisia, Mai 1–3, 259–63.
  • Bengtsson, B. E. 1982. Packing rectangular Pieces—A heuristic approach. The Computer Journal 25 (3):353–57. doi:10.1093/comjnl/25.3.353.
  • Boschetti, M. A., E. Hadjinconstantinou, and E. A. Mingozzi. 2002. New upper bounds for the two-dimensional orthogonal non-guillotine cutting stock problem. IMA Journal of Management Mathematics 13 (2):95–119. doi:10.1093/imaman/13.2.95.
  • Chu, C., and E. J. Antonio. 1999. Approximate algorithms to solve real-life multicriteria cutting stock problems. Operations Research 47 (4):495–508. doi:10.1287/opre.47.4.495.
  • Dyckhoff, H. 1990. A typology of cutting and packing problems. European Journal of Operational Research 44 (2):145–59. doi:10.1016/0377-2217(90)90350-K.
  • Dyckhoff, H., G. Scheithauer, and J. Terno. 1997. Cutting and Packing (C&P). In Annotated bibliographies in combinatorial optimization, ed. M. Dell’Amico, F. Maffioli, and S. Martello. Chichester, UK: John Wiley & Sons.
  • El-Bouri, A., N. Popplewell, S. Balakrishnan, and A. Alfa. 1994. A search based heuristic for the two-dimensional bin-packing problem. Information Systems and Operational Research 32 (4):265–74. doi:10.1080/03155986.1994.11732256.
  • El Hayek, J., A. Moukrim, and S. Nègre. 2008. New resolution algorithm and pretreatments for the two-dimensional bin-packing problem. Computers and OR 35 (10):3184–201. doi:10.1016/j.cor.2007.02.013.
  • Gilmore, P. C., and R. E. Gomory. 1965. Multistage cutting stock problems of two and more dimensions. Operations Research 13 (1):94–120. doi:10.1287/opre.13.1.94.
  • Hassler, R. W., and P. E. Sweeney. 1991. Cutting stock problems and solution procedures. European Journal of Operational Research 54 (2):141–50. doi:10.1016/0377-2217(91)90293-5.
  • Kennedy, J., and R. Eberhart. 1995.Particle swarm optimization. IEEE International Conference on Neural Networks, Perth, WA, November/December, 1942–48.
  • Lai, K. K., and J. W. M. Chan. 1997. Developing a simulated annealing algorithm for the cutting stock problem. Computers and Industrial Engineering 32 (1):115–27. doi:10.1016/S0360-8352(96)00205-7.
  • Lodi, A., S. Martello, M. Monaci, and D. Vigo. 2010. Two-dimensional bin packing problems. In Paradigms of combinatorial optimization: Problems and new approaches, ed. V. Th. Paschos, vol. 2, chapter 5, Hoboken, NJ, USA:John Wiley & Sons. doi: 10.1002/9781118600207.ch5.
  • Morabito, R., and M. N. Arenales. 1996. Staged and constrained two-dimensional guillotine cutting problems: An AND/OR-graph approach. European Journal of Operational Research 94 (3):548–60. doi:10.1016/0377-2217(95)00128-X.
  • Valério de Carvalho, J. M. 2002. LP models for bin packing and cutting stock problems. European Journal of Operational Research 141 (2):253–73. doi:10.1016/S0377-2217(02)00124-8.
  • Young-Gun, G., and M. K. Kang. 2002. A new upper bound for unconstrained two-dimensional cutting and packing. Journal of the Operational Research Society 53 (5):587–91. doi:10.1057/palgrave.jors.2601326.

Appendix 1

For each instance from the first set, optimal patterns are represented and corresponding sheets’ width (W) and height (H) as well as number of sheets (NS) to be cut following each pattern are reported above the represented pattern as following: (W,H,NS).

  1. Optimal patterns of instance #1:

    (1843, 1400, 3489)

  2. Optimal patterns of instance #2:

    (1611, 1550, 659)(1611, 1550, 1203)

  3. Optimal patterns of instance #3:

  4. Optimal patterns of instance #4:

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.