Discrete Optimization
Heuristic for the rectangular two-dimensional single stock size cutting stock problem with two-staged patterns

https://doi.org/10.1016/j.ejor.2013.05.042Get rights and content

Highlights

  • We propose a recursion for packing rectangular items into strips.

  • We propose a recursion for placing strips on the plate.

  • The cutting plan is obtained from solving a sequence of residual problems.

  • Solve more than 75% of the benchmark instances to optimality.

  • Achieve better solution quality than a commercial stock cutting software package.

Abstract

Two-staged patterns are often used in manufacturing industries to divide stock plates into rectangular items. A heuristic algorithm is presented to solve the rectangular two-dimensional single stock size cutting stock problem with two-staged patterns. It uses the column-generation method to solve the residual problems repeatedly, until the demands of all items are satisfied. Each pattern is generated using a procedure for the constrained single large object placement problem to guarantee the convergence of the algorithm. The computational results of benchmark and practical instances indicate the following: (1) the algorithm can solve most instances to optimality, with the gap to optimality being at most one plate for those solutions whose optimality is not proven and (2) for the instances tested, the algorithm is more efficient (on average) in reducing the number of plates used than a published algorithm and a commercial stock cutting software package.

Introduction

The Two-Dimensional single stock size Cutting Stock problem (TDCS) appears in several industries, where stock plates of the same size are divided into rectangular items. The stock may be metal plate, plate glass, or wood panel. In Wäscher et al. (2007), the TDCS is formally referred to as the two-dimensional SSSCSP (single stock size cutting stock problem), in which m types of rectangular items with specified demands are completely produced from plates of the same size L  W (length  width), such that the input (number of plates used, simply “plate count”) is minimized. The item types are characterized by lengths (l1,  , lm), widths (w1,  , wm) and demands (d1,  , dm). A solution of the TDCS is a cutting plan that contains a set of different cutting patterns, each of which has specified layout and frequency. The solution can be obtained from solving the following integer programming (IP) model:minj=1Mxjj=1Maijxjdi,i=1,,m;xjN,j=1,,M,where M is the number of possible cutting patterns. Each pattern can be obtained from solving a two-dimensional SLOPP (Single Large Object Placement Problem; see Wäscher et al. (2007)), xj the frequency of pattern j (decision variable), j = 1,  , M, aij the frequency of type-i items in pattern j, i = 1,  , m and j = 1,  , M and N is the set of non-negative integers.

The solution value is the plate count and must be minimized, subject to the constraints that the demands must be satisfied and the pattern frequencies should be integers.

Solving the IP model exactly is time consuming because of the vast set of possible patterns. Actually it may be impossible to enumerate all the patterns. Gilmore and Gomory (1961) proposed the column-generation (CG) approach that solves the following linear programming (LP) model:minj=1mxjj=1maijxjdi,i=1,,m;xj0,j=1,,m.

Starting from a feasible solution that contains m patterns, the CG solves the LP model iteratively. In each iteration, it generates a pattern P from solving the following two-dimensional SLOPP:maxzP=i=1mcipiPis a feasible pattern;piN,i=1,,m,where zP is the value of the pattern, ci the value of a type-i item, obtained from the current dual LP-solution, and pi is the frequency of type-i items in the pattern.

The pattern is used to replace an existing one to update the solution. The iteration is terminated when the value of the new pattern is not larger than 1, then the current LP-solution becomes optimal. The pattern frequencies may be fractional in the optimal LP-solution. A procedure should be used to round them to integers to obtain a feasible solution to the IP model. A residual problem may be generated if the pattern frequencies are simply rounded down as (⌊x1⌋,  , xm⌋), where the (remaining) demands are ri=di-j=1maijxj,i=1,,m. It must be solved to complete the solution.

Guillotine cuts are often required to divide the plates into items. Two-staged (2STG) patterns are among the simplest guillotine pattern types that are used in the cutting process, where the cuts in the first stage split the plate into strips, and those in the second stage divide the strips into items. The cuts in the same stage are in the same direction, and the cut directions of the two stages are perpendicular to each other. The items can be orientated or non-orientated. In the later case an item can be placed on the plate with its length orientation being either horizontal or vertical. This paper concerns the TDCS with 2STG patterns (TDCS_2STG). The TDCS_2STG is denoted as TDCS_2STGO for the orientated case and as TDCS_2STGR for the case of allowing rotation (non-orientated). The TDCS_2STGR is the focus of this paper.

The proposed algorithm is denoted as the RCCG (repeated constrained column-generation), where R (repeated) means that the complete solution (the complete cutting plan) is obtained from repeatedly solving the residual problems until the demands are satisfied, C (constrained) indicates that the patterns are generated mainly using a procedure for the constrained two-dimensional SLOPP (C_SLOPP), and CG means that each residual problem is solved by the CG approach. Each run of the CG fulfills some portion of the remaining demands. More precisely, the master problem solved in each run of the CG can be formulated as follows, where ri = di for the first run:minj=1mxjj=1maijxj=ri,i=1,,m;xj0,j=1,,m.

Let A = [aij]m×m, R = [ri]m×1 and X = [xj]m×1. The problem can also be written as:minj=1mxj|AX=R;X0.

The sub-problem solved for generating the patterns in the first run is the unconstrained SLOPP (U_SLOPP):maxzP=i=1mcipi|Pis a 2STGR pattern;piN.

The U_SLOPP is naturally constrained despite the absence of explicit constraints on the demand per piece type, because pi  ⌊(LW)/(liwi)⌋ must be hold for any feasible pattern. The patterns in the subsequent runs are generated from solving the following sub-problem (C_SLOPP):maxzP=i=1mcipi|Pis a 2STGR pattern;(piN)(pir)i,i=1,,m.

As later demonstrated in the computational test, the RCCG is powerful in input minimization. It can solve most benchmark instances to optimality. For those solutions whose optimality is not proven, the gap to optimality is at most one plate. For the instances tested, the RCCG is more effective in input minimization than a published algorithm and a commercial stock cutting software package.

The remaining contents are organized as follows. The literature is reviewed in Section 2. The C_SLOPP procedure for 2STGR patterns is described in Section 3, followed by the presentation of the RCCG algorithm in Section 4. The computational results are reported in Section 5 and the conclusions are given in Section 6.

Section snippets

Approaches for the TDCS

The solution of the TDCS is a cutting plan that contains a set of different cutting patterns, where both the frequency and items layout of each pattern are specified.

There are at least three approaches for the TDCS. The first is the integer programming (IP) approach that is exact, where the decision variables are the pattern frequencies that must be non-negative integers. IP models for the TDCS_2STGO have been presented in Lodi et al., 2004, Silva et al., 2010. The later authors used the C

Two-staged patterns

Fig. 1 shows two 2STG patterns, where the numbers denote the item types. They have obvious strip structure. The left is an X-pattern in which the strips are horizontal, and the right is a Y-pattern where the strips are vertical. A 2STG pattern can be divided into items within two stages. The plate is divided into strips at the first stage, and the strips into items at the second stage. The first-stage cuts are horizontal for an X-pattern. They are vertical for a Y-pattern.

Strip-generation procedure

The C_SLOPP procedure

Algorithm RCCG

The RCCG consists of the following steps, where the terms CGC, CGU and ROUND will be explained later:

  • Step 1.

    Solve the original problem using the CGU and call the ROUND to obtain the related partial cutting plan and the residual problem. Go to Step 4 if the residual problem is null.

  • Step 2.

    Solve the current residual problem using the CGC and call the ROUND to obtain the related partial cutting plan and the residual problem. Go to Step 4 if the residual problem is null.

  • Step 3.

    Go to Step 2 with the new residual problem

Computational results

Although the RCCG is presented for the non-oriented case, it can be adapted to deal with the oriented case. This section contains four subsections. The RCCG is compared with the heuristic algorithm of Cintra et al. (2008) in Section 5.1, with the exact algorithm of Silva et al. (2010) in Section 5.2, and with a commercial stock cutting software package in Section 5.3. The effect of the G value is explained in Section 5.4. Four sets of instances are used. The first set is obtained from Cintra et

Conclusions

The algorithm RCCG in this paper solves the two-dimensional single stock size cutting stock problem with two-staged patterns and rotation of items. It calls the column-generation approach repeatedly to solve the residual problems until all demands are satisfied. The convergence of the algorithm is guaranteed by solving the constrained single large object placement problem to generate the cutting patterns.

Two-staged patterns are simple to cut than most pattern types, and are widely used in

Acknowledgment

This research is part of Project 61063031 supported by National Natural Science Foundation of China.

References (22)

  • J. Armas et al.

    Improving the efficiency of a best-first bottom-up approach for the constrained 2D cutting problem

    European Journal of Operational Research

    (2012)
  • Cited by (0)

    View full text