ONE-DIMENSIONAL CUTTING STOCK PROBLEM THAT MINIMIZES THE NUMBER OF DIFFERENT PATTERNS

. Cutting stock problems (CSP) is a problem of determining the best way so that large objects can be cut into smaller objects on demand and with minimum waste. However, besides minimizing material waste, there is another problem with CSP, which is minimizing different cutting patterns. This is because there will be setup costs for each different pattern that is cut out. This research aims to obtain the optimal number of different patterns on a problem, so the cutting costs are minimized. A problem about the construction of 12 pavilions will be modelled into a linear program and then solved using a column generation algorithm using Lingo 18.0 software.


INTRODUCTION
Production efficiency in an industry is very important. Increasing productivity can be done by minimizing waste of materials, labor time, or production costs. The cutting stock problem (CSP) is a problem related to the optimization of the remaining material. There is the potential for large economic savings to be obtained from the optimization of this problem. This problem was first introduced by Kantorovich in an article in 1939 in Russia. The article was published in 1960 [1]. The problem is determining the best way to cut large materials (stock) into smaller pieces on demand in order to minimize the overall trim loss or maximize the profit earned [2]. In this study, the CSP discussed is one-dimensional CSP, which is when the stock is only cut in one of its dimensions to get a smaller item [3].
In addition to minimizing the remaining cuts, there are other problems with CSP. In recent years, the cost issue associated with each different pattern has become more important than minimizing trim loss [4]. Changes from one pattern to another will affect the installation time of the cutting knife and a significant additional cost [5]. Optimizing different patterns is needed to reduce setup costs, especially when they are very high, such as in cutting iron plates [6], [7]. Some algorithms were proposed for solving this cutting stock problem by minimizing patterns. Ma et al. [8] used two heuristic approaches for solving the capacitated multi-period cutting stock problem with pattern. A modification of Haessler's sequential heuristic procedure for the one-dimensional cutting stock problem with pattern was presented in [9]. Clautiaux et al. [10], Wang et al. [11] conducted research to minimize the number of patterns in two-dimensional CSP problems using heuristic algorithms and algorithms based on column-and-row generation. Other heuristic methods are also used in [12], [13], [14] for the problem of minimizing the number of patterns.
A column generation algorithm will be used in this research. The main idea of this algorithm is that the work begins with only several variables that are sufficiently influential, so the problem is called the Restricted Master Problem (RMP). This algorithm begins by determining the base variable. In CSP, the column or variable is a combination of requests obtained from a cutting pattern [15]. Furthermore, in each iteration, non-basic variables will be searched for, which will be entered into the basis to improve the quality of the RMP temporary solution. This variable is the variable with the most negative reduced cost [16].
The reduced cost in CSP has the form (min(1 − )) and this is equivalent to the form (max ) which is called the pricing problem. The variable is a dual variable with ≥ 0 whose value is known and is a vector of the -th truncation pattern which contains the number of requests to , namely . The objective function in the pricing problem is to find all values of with the constraint length of the i-th request multiplied by not exceeding the stock length . The algorithm is continued with the next iteration to find other variables as long as there are variables that make < 0. This variable will be used to replace one of the base variables to improve the quality of the RMP value. The algorithm is terminated if (max ) ≤ 1 is reached because it creates the value ≥ 0. In this condition, the optimal value for RMP has been obtained as well as the optimal value for CSP [16]. This paper will discuss CSP, which was developed as a cutting stock problem that minimizes the number of different patterns. The solution is carried out in two stages. The first stage is to find the minimum amount of stock needed using column generation. The second stage is modeling the problem of many different patterns in the form of linear programming and then solving it with the help of Lingo 18.0 software. The aim of this research is to obtain the optimal number of different cutting patterns that minimizes costs using column generation algorithms and Lingo 18.0 software.

Data
The research data was obtained from the thesis written by Wibowo [17]. It contains data on the need for iron for the construction of the pavilion. Suppose there are 12 pavilions to be built in this study. The iron used for the construction is iron with a standard length of 12 m. Data in the form of iron stock, length of iron needed, and demand for iron can be seen in Table 1. There are two types of costs used in this research, namely fixed costs or setup costs incurred when a pattern j is cut and variable costs or material costs incurred for each unit of iron stock used, which comes from the cost of purchasing iron. For example, the setup fee is Rp3.000.000,00 and the weight of iron is 256 kg at a price of Rp11.000,00 per kilogram, so the cost of buying iron is Rp2.816.000,00 [17].

Problem Model
According to Belov and Scheithauer [18] , the one-dimensional cutting stock problem model and the cutting stock problem model that minimizes the number of different patterns can be written as follows: Model 2 Objective function Where: = setup cost of pattern , = material cost of pattern , ( ) = upper limit or maximum value of , = cutting cost of pattern , = stock usage limit, = frequency of cutting pattern , = The number of requests of type generated in the cutting pattern, = Number of requests for type .
In model 1, the objective function (1) is a function to minimize the stock used. Constraint (2) ensures that every request is fulfilled, and constraint (3) ensures that the truncation pattern obtained is only a positive integer or zero. The optimal result of in model 1 will then be used as a constraint on the maximum amount of stock allowed in model 2.
In model 2, equation (5) is a linear approximation of the cost function in equation (4), so that used in the objective function (6) comes from equation (5). The objective function (6) it is that is the optimal value of the pattern minimization problem (PMP). This function approximates the actual cost of cutting iron by minimizing the number of different patterns. Constraint (7) ensures that every request is fulfilled, constraint (8) ensures that the total cutting pattern obtained does not exceed the stock usage limit with a tolerance of 5% of , and constraint (9) ensures that the cutting pattern obtained is only a positive integer or zero.

Steps to Get the Solution
The first stage is to complete model 1 using the column generation algorithm. According to Winston [15] and Griva, Nash, & Sofer [19], the steps for completing CSP with column generation are as follows: 1. determining the basis variable, namely selecting the variable that corresponds to the cutting pattern, which consists of only one combination of requests and forms a basis matrix and − , 2. calculate the dual variable with the formula = − and solve the pricing problem to find a new variable to be entered into the basis, 3. calculate − and − , where is the j-th truncation pattern vector, which is the solution to the pricing problem in step 2,

do a ratio test with the formula
5. choose the pivot row that is the result of the smallest ratio test in step 4 and replace the base variable in the pivot row with a variable corresponding to from the result of step 2 for the next iteration, 6. determines a series of base row operations to convert the value of the pivot row − to one and the other row to zero, 7. performs the base row operation specified in step 6 on the matrix − so that a new matrix − is obtained for the next iteration, 8. repeats step 2 to step 7 and the algorithm is stopped when the optimal pricing problem value ≤ 1, 9. The optimal result for the base variable is obtained from − in the last iteration and this is the optimal result for in model 1.
The second stage is to complete model 2 based on the results obtained in stage 1. The steps are as follows: 1. determine the value of , 2. calculate the value of ( ) using the formula (min ⌊ ⌋) with > 0, 3. cut stock models that minimize the number of different patterns and complete them using Lingo 18.0 software.

Solution of the One-Dimensional Cutting Stock Problem
Based on the data in Table 1, all feasible cutting patterns will be searched, which can be seen in Table  2 below.  Based on the data that has been obtained and the cutting pattern, the one-dimensional cutting stock problem model can be written as follows: Objective function = min ∑ 16

Iteration 1
1. Determine the base variable, matrix , and solve the pricing problem The base variables used are 1 , 6 , 10 , 13 , 16 . The matrix is made of the truncation pattern that corresponds to the base variable and then determines the − matrix.

Doing ratio test
The ratio test is calculated by the formula

Doing ratio test
The ratio test is calculated by the formula − − 9 with − 9 > 0, then we get row 2 = 12 1/2 = 24 and row 5 = 32 2/3 = 48. The second row becomes the pivot row so that the second base variable i.e., 6 is replaced with 9 in the next iteration.

Finding the value −
The basic row operation to change the second row − 9 to 1 and the other to 0 is as follows: These steps are continued until the termination criterion is reached, namely the value of the pricing problem ≤ 1. In this study, the pricing problem ≤ 1 is reached in iteration 6.

Iteration 6
1. Determine the base variable and solve the pricing problem Based on the previous iteration, the base variables used are 1 , 9 , 11 , 8 , 5 . The value of is calculated by the formula − , so that the following results are obtained: The optimal result for in the first stage is 93 iron stocks with 1 = 3, 9 = 12, 11 = 24, 8 = 12, and 5 = 42.

CONCLUSIONS
The construction of 12 pavilions using iron rods can be modeled in the form of a one-dimensional cutting stock problem that minimizes the number of different patterns. This model is in the form of linear programming, which is solved by column generation using Lingo 18.0 software. The optimal result obtained is that the construction of the pavilion requires 93 iron rods with five different patterns, and the cost of cutting iron in the form of an approach is Rp270.513.000,00.

AKNOWLEDGEMENT
I would like to thank my colleagues and students who were involved in this research. I also thank the mathematics department FMIPA IPB which has provided financial assistance for research on the topic of the cutting stock problem.