Abstract
We consider the well-known cutting stock problem (CSP). The gap of a CSP instance is the difference between its optimal function value and optimal value of its continuous relaxation. For most instances of CSP the gap is less than 1 and the maximal known gap \(6/5=1.2\) was found by Rietz and Dempe [11]. Their method is based on constructing instances with large gaps from so-called sensitive instances with some additional constraints, which are hard to fulfill. We adapt our method presented in [15] to search for sensitive instances with required properties and construct a CSP instance with gap \(77/64=1.203125\). We also present several instances with large gaps much smaller than previously known.
Supported by RFBR, project 19-07-00895.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
In the classical formulation, the cutting stock problem (CSP) is stated as follows: there are infinite pieces of stock material of fixed length L. We have to produce \(m \in \mathbb {N}\) groups of pieces of different lengths \(l_1, \cdots , l_m\) and demanded quantities \(b_1, \cdots , b_m\) by cutting initial pieces of stock material in such a way that the number of used initial pieces is minimized.
The cutting stock problem is one of the earliest problems that have been studied through methods of operational research [6]. This problem has many real-world applications, especially in industries where high-value material is being cut [3] (steel industry, paper industry). No exact algorithm is known that solves practical problem instances optimally, so there are lots of heuristic approaches. The number of publications about this problem increases each year, so we refer the reader to bibliography [18] and the most recent survey [2].
Throughout this paper we abbreviate an instance of CSP as \(E := (L,l,b)\). The total number of pieces is \(n = \sum _{i=1}^m b_i\). W.l.o.g., we assume that all numbers in the input data are positive integers and \(L \ge l_1> \cdots> l_m > 0\).
The classical approach for solving CSP is based on the formulation by Gilmore and Gomory [5]. Any subset of pieces (called a pattern) is formalized as a vector \(a = (a_1, \cdots , a_m)^\top \in \mathbb {Z}^m_+\) where \(a_i \in \mathbb {Z}_+\) denotes the number of pieces i in the pattern a. A pattern a of E is feasible if \(a^\top l \le L\). So, we can define the set of all feasible patterns \(P^f(L,l) = \{ a \in \mathbb {Z}^m_+ \; | \; a^\top l \le L \}\). For a given set of patterns \(P = \{ a^1, \cdots , a^r \}\), let A(P) be the \((n \times r)\)-matrix whose columns are given by the patterns \(a^i\). Then the CSP can be formulated as follows:
The common approximate solution approach involves considering the continuous relaxation of CSP
Here z(E) and \(z_C(E)\) are called the optimal function values for the instance E. The difference \(\varDelta (E) = z(E) - z_C(E)\) is called the gap of instance E. Practical experience and numerous computations have shown that for most instances the gap is very small. An instance E has the integer round up property (IRUP) if \(\varDelta (E) < 1\). Otherwise, E is called a non-IRUP instance. This notation was introduced by Baum and Trotter [1].
Subsequently, the largest known gap was increased. In 1986 Marcotte constructed the first known non-IRUP instance with the gap of exactly 1 [9]. Fieldhouse found an instance with gap \(31/30 \approx 1.033333\) in 1990 [4]. In 1991 Schiethauer and Terno slightly improved this result to \(137/132 \approx 1.037879\) [16]. Rietz, Scheithauer and Terno subsequently constructed non-IRUP instances with gaps \(10/9 \approx 1.111111\) and \(7/6 \approx 1.166666\) in 1998 and 2000 respectively [12, 13] (both papers were published in 2002). Finally, Rietz constructed an instance with gap \(6/5 = 1.2\) and published it in his PhD thesis in 2003 [10] and a slightly smaller instance with the same gap together with Dempe in 2008 [11].
The MIRUP (modified IRUP) conjecture [17] states that \(\varDelta (E) < 2\) for all CSP instances E, but it is still open. More investigations about non-IRUP instances can be found in [7, 8, 14].
The main idea of our paper is to connect our algorithm for enumeration of instances published in [15] together with ideas of Rietz and Dempe [11] in aim to construct CSP instances with the gap larger than currently known.
The paper has the following structure. In Sect. 2, we describe the construction of Rietz and Dempe, in Sect. 3, we describe our enumeration algorithm. In Sect. 4, we present the computational results and, finally, we draw a conclusion in Sect. 5.
2 Preliminaries
The construction principles of Rietz and Dempe are based on the instance
where p and q are positive integers, \(b_0=(1,1,1,1,1,2,1,1)^\top \), and the following theorem:
Theorem 1 (Rietz and Dempe)
Consider an instance \(E = (L,l,b)\) of CSP with the following properties: \(l_1> l_2> \ldots> l_{m-1} > 2l_m\) and \(l_m \le L/4\). Moreover, assume that this instance is sensitive, i.e. its optimal function value increases if \(b_m\) is increased by 1. Then, there are integers p and q such that instance \(E' = E \oplus E_0(p,q)\) has gap \(\varDelta (E') = 1 + \varDelta (E)\).
Here \(\oplus \) means a composition of instances. Let \(E_1 = (L_1, l_1, b_1)\) and \(E_2 = (L_2, l_2, b_2)\) denote two instances of CSP having \(n_1\) and \(n_2\) pieces respectively and with \(L_1 = L_2\). The composed instance \(E := E_1 \oplus E_2\) of CSP consists of the task of cutting all the \(n_1 + n_2\) pieces of lengths from the both vectors \(l_1\) and \(l_2\) and with demands according to both vectors \(b_1\) and \(b_2\). In case when \(L_1\) and \(L_2\) are different, they can be multiplied by one common multiplier (together with piece lengths) to adjust the stock material lengths of both instances. For example, the instances \((2, (1)^\top , (1)^\top )\) and \((5,(2)^\top ,(2)^\top )\) can be composed into the new instance \((2, (1)^\top , (1)^\top ) \oplus (5,(2)^\top ,(2)^\top ) = (10, (5,4)^\top , (1,2)^\top )\).
Note that \(b_m=0\) is possible in Theorem 1, this means that the maximal possible trimloss in a cutting pattern used in an optimal solution is smaller than half of the length of the shortest piece.
Searching for sensitive instances with properties described in Theorem 1 is a very difficult task. An example of a suitable instance mentioned by Rietz and Dempe in their paper is the following:
Indeed, this instance is sensitive, because its optimal function value \(z(E_{ST'})=2\) increases to 3 when we insert an additional piece of length 12. Also, \(l_1> l_2 > 2l_3\) and \(l_3 < L/4\). \(\varDelta (E_{ST'}) = 17/132\), so by Theorem 1 there are integers p and q such that \(\varDelta ( E_0(p,q) \oplus E_{ST'} ) = 149/132 \approx 1.128787\). Namely, the instance \(E_1 = E_0(p,q) \oplus E_{ST'}\) for \(p=74\) and \(q=669\) is the following:
3 Enumeration Algorithm
Consider an instance \(E = (L,l,b)\). If L and l are fixed, then the matrix of patterns \(A(P^f(L,l))\) is fixed too. We will consider vector b as a vector of variables. Setting \(l=(L-l_m,L-l_m-1,\ldots ,2l_m+2,2l_m+1,l_m)\), where \(l_m \le L/4\), we ensure that the most of required properties of Theorem 1 are satisfied, and now we have to ensure that E is sensitive.
We will enumerate all sensitive instances with a fixed objective function value. Namely, let \(S_k(L,l)\) be the set of all patterns b such that \(z((L,l,b))=k\) and b corresponds to a sensitive instance (L, l, b).
Consider the set of inextensible feasible patterns \(P^f_*(E) = \{ a \in \mathbb {Z}^m_+ \; | \; a^\top l \le L \; \wedge \; a^\top l + l_1 > L \}\). Obviously, \(S_0(L,l) = \{ \mathbf {0} \}\), and \(S_1(L,l) = P^f_*(L,l)\). Now we will build the set \(S_{i+1}(L,l)\) from \(S_i(L,l)\) by adding vectors from \(P^f_*(E)\) and considering only those patterns which lead to sensitive instances.
To transform the set \(S_i(L,l)\) into the set \(S_{i+1}(L,l)\) we need a data structure called a “map”, which contains a set of pairs <key, value> (all keys are pairwise distinct) and allows us to make the following operations: insert a pair, find a value by a key (or determine that there is no pair with this key), modify a value by a key and return the list of all pairs. The algorithm is the following:
To find a sensitive instance with maximum gap with fixed L, l and k we generate \(S_k(L,l)\) and then simply calculate \(\varDelta (E)\) over all \(E=(L,l,s)\), \(s \in S_k(L,l)\).
4 Results
We implemented our algorithm as a C++ program using CPLEX 12.7. The program was run on an Intel Core i7-5820K 4.2 GHz machine with 6 cores and 32 Gb RAM.
Results for the runs where \(l=(L-l_m, L-l_m-1, \ldots , 2l_m+1, l_m)\) are presented in Table 1 and Table 2. Maximum gaps greater than 0.1 are marked in bold, and the maximal gap in every column is underlined.
Several sensitive instances with large gaps found during the search are presented in Table 3. Here \(E_1\), \(E_2\) and \(E_3\) correspond to some maximum gaps presented in Table 1 and Table 2. For instance \(E_4\) we continued the search up to \(L=250\) setting \(l=(\lfloor L/2 \rfloor , \lfloor L/2 \rfloor -1, \ldots , 2l_m+1, l_m)\). The gap 0.1875 is the maximal over all considered instances with \(k \le 4\).
The instance \(E_5\) is built from \(E_4\) and a non-IRUP instance
for some integer t. \(E_6\) is a combination of \(E_4\) and some pieces from two copies of \(E_T(t)\) with different values of t.
Using Theorem 1, we constructed a series of non-IRUP instances \(E'_1,\ldots ,E'_6\) from the sensitive instances \(E_1, \ldots , E_6\). They are presented in Table 4. In Table 5 we compare our instances with the previously known ones considering the number of piece types m.
5 Conclusion
We have combined the construction of Rietz and Dempe and our enumeration algorithm for searching for sensitive instances. We have found a lot of sensitive instances with large gaps. This allowed us to construct a lot of non-IRUP instances with gap, say, greater than 1.17. We also constructed a non-IRUP instance with gap 1.203125 which is greater than the previously known world record 1.2. Also the non-IRUP instances with large gaps that we found are smaller than the previously known ones.
Producing instances with large gaps using our search method requires a lot of computational resources, so we do not expect that it will handle the MIRUP conjecture directly. But the instances we found may provide the hints about improved constructions. In the future research we are going to improve our technique of combining instances (using which we produced \(E_5\) and \(E_6\)) and construct new instances with much larger gaps.
References
Baum, S., Trotter Jr., L.: Integer rounding for polymatroid and branching optimization problems. SIAM J. Algebraic Discrete Methods 2(4), 416–425 (1981)
Delorme, M., Iori, M., Martello, S.: Bin packing and cutting stock problems: mathematical models and exact algorithms. Eur. J. Oper. Res. 255(1), 1–20 (2016)
Dyckhoff, H., Kruse, H.J., Abel, D., Gal, T.: Trim loss and related problems. Omega 13(1), 59–72 (1985)
Fieldhouse, M.: The duality gap in trim problems. SICUP Bull. 5(4), 4–5 (1990)
Gilmore, P., Gomory, R.: A linear programming approach to the cutting-stock problem. Oper. Res. 9(6), 849–859 (1961)
Kantorovich, L.V.: Mathematical methods of organizing and planning production. Manage. Sci. 6(4), 366–422 (1960)
Kartak, V.M., Ripatti, A.V.: Large proper gaps in bin packing and dual bin packing problems. J. Global Optim. 74(3), 467–476 (2018). https://doi.org/10.1007/s10898-018-0696-0
Kartak, V.M., Ripatti, A.V., Scheithauer, G., Kurz, S.: Minimal proper non-IRUP instances of the one-dimensional cutting stock problem. Discrete Appl. Math. 187(Complete), 120–129 (2015)
Marcotte, O.: An instance of the cutting stock problem for which the rounding property does not hold. Oper. Res. Lett. 4(5), 239–243 (1986)
Rietz, J.: Untersuchungen zu MIRUP für Vektorpackprobleme. Ph.D. thesis, Technischen Universität Bergakademie Freiberg (2003)
Rietz, J., Dempe, S.: Large gaps in one-dimensional cutting stock problems. Discrete Appl. Math. 156(10), 1929–1935 (2008)
Rietz, J., Scheithauer, G., Terno, J.: Families of non-IRUP instances of the one-dimensional cutting stock problem. Discrete Appl. Math. 121(1), 229–245 (2002)
Rietz, J., Scheithauer, G., Terno, J.: Tighter bounds for the gap and non-IRUP constructions in the one-dimensional cutting stock problem. Optimization 51(6), 927–963 (2002)
Ripatti, A.V., Kartak, V.M.: Bounds for non-IRUP instances of cutting stock problem with minimal capacity. In: Bykadorov, I., Strusevich, V., Tchemisova, T. (eds.) MOTOR 2019. CCIS, vol. 1090, pp. 79–85. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-33394-2_7
Ripatti, A.V., Kartak, V.M.: Constructing an instance of the cutting stock problem of minimum size which does not possess the integer round-up property. J. Appl. Ind. Math. 14(1), 196–204 (2020). https://doi.org/10.1134/S1990478920010184
Scheithauer, G., Terno, J.: About the gap between the optimal values of the integer and continuous relaxation one-dimensional cutting stock problem. In: Gaul, W., Bachem, A., Habenicht, W., Runge, W., Stahl, W.W. (eds.) Operations Research Proceedings. Operations Research Proceedings 1991, vol. 1991. Springer, Heidelberg (1992). https://doi.org/10.1007/978-3-642-46773-8_111
Scheithauer, G., Terno, J.: The modified integer round-up property of the one-dimensional cutting stock problem. Eur. J. Oper. Res. 84(3), 562–571 (1995)
Sweeney, P.E., Paternoster, E.R.: Cutting and packing problems: a categorized, application-orientated research bibliography. J. Oper. Res. Soc. 43(7), 691–706 (1992)
Acknowledgements
The authors would like to thank the anonymous referees for their valuable remarks.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Ripatti, A.V., Kartak, V.M. (2020). Sensitive Instances of the Cutting Stock Problem. In: Kochetov, Y., Bykadorov, I., Gruzdeva, T. (eds) Mathematical Optimization Theory and Operations Research. MOTOR 2020. Communications in Computer and Information Science, vol 1275. Springer, Cham. https://doi.org/10.1007/978-3-030-58657-7_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-58657-7_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58656-0
Online ISBN: 978-3-030-58657-7
eBook Packages: Computer ScienceComputer Science (R0)