Solving One-Dimensional Cutting Stock Problem with Discrete Demands and Capacitated Planning Objective 1

Problem statement: One-dimensional cutting stock problem with discret e demands and capacitated planning objective is an NP hard problem. Approach: The mathematical model with column-generation technique by a branch-and-bound procedure and the heuristic b ased on the first fit decreasing method are propose d. Then, both approaches were compared and some characteristics were investigated such as upper-bound value, percent age above lower-bound value, computation time, and number of patterns. Results: The 24 instances were examined. The proposed heuristic provides the upper-bound value a bove the lower-bound around 0-16.78%. All upper-bound values from column-generation and integer programming are better than the proposed heuristic but all c omputation times are higher. Conclusion: The proposed heuristic has consistently high perfo rmance in computation times.


INTRODUCTION
More than four decades ago, mathematicians studied intensively and developed techniques involved with large-scale problems. The extensive work on large-scale mathematical programming has been initiated by (Dantzig and Wolfe, 1961). One of classical NP-hard problems which could not be solved within the polynomial computation time is a cutting stock problem (CSP). The finite number of cutting patterns may be very large. Gilmore and Gomory (1961;1963) claimed that if the stock to be cut has length l = 200 inches and there are demands for 40 different lengths from 20-80 inches, the number of possible patterns could be exceed 10-100 million. The more cutting patterns and the more columns of constraints are involved. The most powerful algorithm for solving linear programs with many columns is the Column-Generation Procedure. To apply in the real world problem, uncertainty is inherent in many real combinatorial problems. Uncertainty seems to be an important issue in constraint programming. The Stochastic CSP (SCSP) is a framework that can be used to model combinatorial decision problems involving uncertainty and probabilities recently. Therefore, the number of scenarios depends on the number of random variables and the discrete random choices. The increasing of number of scenarios is tremendously such, 5 variables and 2 discrete demand choices have made 32 scenarios, 10 variables and 2 discrete demand choices have made 1,024 scenarios, but 20 variables and 2 discrete demand choices have made 1,048,576 scenarios. So the specific algorithms must be concerned for solving it.
In this study, we investigate the mathematical model of 1-dimensional cutting stock problem with discrete random demands and propose the columngeneration technique for searching the effective cutting patterns. The model is based on "here and now" assumption with minimizing capacitated planning objective. The objectives of this study are to propose a mathematical programming with column-generation technique for solving the stochastic with discrete demands and capacitated planning objective, to propose a heuristic based on the first fit decreasing method and to compare between the mathematical programming method and the proposed heuristic method. In materials and methods shows two algorithms; the mathematical programming with column-generation and the constructive heuristic method. The result compares the computational time of both algorithms on the test problem with various retail items and choices of demands. Sequentially, conclusions are drawn.

MATERIALS AND METHODS
There are two algorithms proposed in this study which are the method of column-generation technique and the proposed heuristic. Both algorithms were coded in the C++ programming and run on Pentium 4, 256 MB, 2.4 GHz. The column-generation procedure is linked with LINGO 6.0 solver. Their methodologies can be shown as follows: The mathematical programming with columngeneration technique: Consider the 1D-CSP with discrete demands and minimized capacitated planning objective. The following assumptions are made: • There is different length of items to be cut from a stock • Each item has associated a certain length • Each cutting pattern for a stock are not limited in the number of knives, but the sum of length of items are not exceed a length of stock • The discrete demands are considered • The cost of capacity planning such as raw material or stock, inventory and backorder costs are considered To describe the problem, we introduce the following notations: (1) Subject to: x kp ≥0, ∀k, p For a large instance, P k can be extremely large. To reduce the number of P k , we are not adding all feasible patterns in the model, but selecting some necessary patterns p* that maximized its dual objective function.
To determine a mk*p* we develop the knapsack based model using the simplex multipliers obtained from (1-4) as follows: e k = The simplex multipliers of the used stock k from constraints (2) r ms = The simplex multipliers of the item m from constraints (3) a mk*p* = The obtained variable that defined number of strips of item m cut in pattern p* for stock length k* q k = The used stock length; q k ∈{0,1} if q k = 1 then the stock length k is used. Otherwise, the stock length k is not used Minimize: a mk*p* ≥0 and integer, m = 1, ..., M q k ≥0 and binary, k = 1,...,K The obtained output from (5-9) is a new legitimate cutting pattern and introduced into model (1-4) as a new basis column. The new cutting pattern is to be adding until the objective dual values V from (5)≥0, the current column is proven to be globally linear programming optimal point. For a profound description of the column-generation (CG) procedure for cutting stock problems, Lasdon (1970). To illustrate this CG procedure, a flow chart is shown in Fig. 1.
Since the obtained x kp from globally linear programming optimal point usually are not integer therefore, the branch-and-bound procedure is applied for selecting integer values of x kp by the same basis column. The obtained integer solution from the branchand-bound procedure by the same basis column or necessary patterns are not providing the optimality that proven by solving all the feasible patterns, but it nearly the optimal value than the other heuristics.
The constructive heuristic method: Although the column-generation approach provides the nearly optimal solution, variables and constraints increase drastically when increasing the number of items and the chance of discrete demand. Therefore, the obtained solution from the column-generation approach is not always attainable within the allowable time. The proposed heuristic is based on first fit decreasing method of Bin Packing problem (Brandimarte and Villa, 1995). Items are sorted in such a way that the longer item is selected before others. The outline of the algorithm has been shown in Fig. 2. The algorithm is presented in the following steps: Step 1: Selected the longest length item from the item list and the stock size of lowest cost from the stock list. Go to Step 2 Step 2: Knifed the selected item on the selected stock size from step 1 until the remainder length of stock size is not sufficient. Go to Step 3 Step 3: From the remainder length of stock size, searching the longest length item that sufficient from all items and knives it as step 2. Repeated this step until the remainder length is zero or the item are not selected. Go to Step 4 Step 4: Adding one cutting pattern from step 3 to the pattern list. Remove the longest length item from the item list. If the item list is empty go to Step 5, else return to Step 1 Fig. 2: Flow chart of the heuristic for the problem Step 5: Return all items into the item list but remove the stock size of lowest cost from the stock list. If the stock list is empty go to Step 6, else return to Step 1 Step 6: From all patterns in the pattern list, calculated the maximum usage value of pattern j (u j ) as: And set the iteration index as 1 then go to Step 7.
Step 7: Sorting the pattern from the pattern list as randomly. If all items in the selected pattern j are not exceed the maximum demand choices, then repeat the selected pattern j from the sorting order randomly between 0 and u j . If the pattern in the last order is reached, then calculated cost as objective (1). Go to Step 8 Step 8: If the maximum iteration is reached then STOP else increasing the iteration index and go to Step 7
The lower-bound is computed by solving linear programming model (1-4). The limited time for a branch-and-bound procedure to obtain all integer solutions is 360 seconds. For the proposed heuristic, we set the maximum iterations of randomly generate the repeated cutting pattern to 10.
In order to compare the performance between column-generation technique and proposed heuristic, the upper-bound value and computation times are shown in Table 1-3. From the results, the proposed heuristic provides the upper-bound value above the lower-bound 0.00-16.78% approximately. The upperbound value from column-generation and integer programming is better than the proposed heuristic but the computation times are higher.          (20,498, 10,241), (8,759, 4,375), and (10,249, 5,121) respectively. That causes the computation times of all instances, solved by the proposed heuristic, are almost equal and also less than those solved by the column-generation and integer linear programming.

CONCLUSION
In this study, we have examined the problem of minimizing the number of cutting stocks and capacitated planning cost such inventory and backorder. The 24 instances were experimented into three groups, varying by number of retail items and number of uncertain demands; (10, 2), (6, 3), and (5, 4). All test problems are solved by column-generation technique and the proposed constructive heuristic. For the column-generation technique, the linear programming model is proposed as (1-4) and the new cutting pattern are adding as the new basis column by solving (5-9), the lower-bound is obtained when stop adding the new basis column and the upper-bound is obtained by applied branch-and-bound steps for rounding variables to integer.
For the proposed heuristic, it has consistently high performance in computation times but the obtained upper-bounds are not closed to the lowerbound as the column-generation technique. Nevertheless, the proposed heuristic should be more appropriate to solve a large instance because of the quick response requirement.