1-s2.0-0377221794000236-main

12
ELSEVIER European Journal of Operational Research 83 (1995) 57-68 EUROPEAN JOURNAL OF OPERATIONAL RESEARCH Theory and Methodology A method for the cutting stock problem with different qualities Mikael R6nnqvist Department of Mathematics, Link6ping Institute of Technology, S 58183 Link6ping, Sweden Received January 1993; revised August 1993 Abstract An operations research project at a Swedish company is reported. The project deals with the problem of allocating wood products with different quality requirements to be cut from wooden.boards, which in turn consists of a number of quality zones. A major difficulty is the existence of distinct time limits since the cross cutting of the boards is done in a real time process. In this paper we derive a mathematical model, which includes a set packing problem, that accurately describes the real world problem. This problem is then solved using a combination of Lagrangean relaxation and subgradient optimization. Numerical results for practical problems are reported; the results indicate a valid model and satisfactory efficiency of the proposed solution procedure. Keywords: Cutting; Decision support system; Integer programming; Optimisation; Relaxation 1. Introduction This paper reports on an operations research project conducted at a Swedish company which delivers decision support systems for the wooden product industry. The problem of interest is to make efficient use of the un-machined wooden boards that come in lots from saw-mills. The application which this report focus on is related to the making of window-frames and window-sills. However, the model and solution process developed is not limited to this application. Frames and sills are made in different standard sizes, i.e. lengths and widths, and with different requirements of wood quality. The quality depends on for instance the number and the size of cracks, knots, and the existence of wane edges. One example of the different quality requirements is the specification that the front piece of a window be cut from a higher quality board than the inside part of the same window due to aesthetics demands from the buyer. Another example is coupled with the manufacturing requirements; end parts of a frame need a high quality so that tracks can be made in a milling cutter without damaging the remaining part. When a manufacturer receives a lot of wooden boards from a saw-mill the quality and length between different boards varies. In manufacturing process each board is typically classified along its length into four different qualities. The length of the boards alters between 0.5 and 6 meters. These boards are then used to produce end-products, and there are between five and fifteen different standard sizes of these. The decision problem to be solved is to determine which end-products are to be cut from each individual board. The overall production process can be described as in the flow chart given in Fig. 1. 0377-2217/95/$09.50 © 1995 Elsevier Science B.V. All rights reserved SSDI 0377-2217(94)00023-6

description

Search problem

Transcript of 1-s2.0-0377221794000236-main

Page 1: 1-s2.0-0377221794000236-main

E L S E V I E R European Journal of Operational Research 83 (1995) 57-68

EUROPEAN JOURNAL

OF OPERATIONAL RESEARCH

T h e o r y a n d M e t h o d o l o g y

A method for the cutting stock problem with different qualities

M i k a e l R 6 n n q v i s t

Department of Mathematics, Link6ping Institute of Technology, S 58183 Link6ping, Sweden

Received January 1993; revised August 1993

Abstract

An operations research project at a Swedish company is reported. The project deals with the problem of allocating wood products with different quality requirements to be cut from wooden.boards, which in turn consists of a number of quality zones. A major difficulty is the existence of distinct time limits since the cross cutting of the boards is done in a real time process. In this paper we derive a mathematical model, which includes a set packing problem, that accurately describes the real world problem. This problem is then solved using a combination of Lagrangean relaxation and subgradient optimization. Numerical results for practical problems are reported; the results indicate a valid model and satisfactory efficiency of the proposed solution procedure.

Keywords: Cutting; Decision support system; Integer programming; Optimisation; Relaxation

1. Introduction

This paper reports on an operat ions research project conducted at a Swedish company which delivers decision support systems for the wooden product industry. The problem of interest is to make efficient use of the un-machined wooden boards that come in lots f rom saw-mills. The application which this report focus on is related to the making of window-frames and window-sills. However, the model and solution process developed is not limited to this application. Frames and sills are made in different s tandard sizes, i.e. lengths and widths, and with different requirements of wood quality. The quality depends on for instance the number and the size of cracks, knots, and the existence of wane edges. One example of the different quality requirements is the specification that the front piece of a window be cut f rom a higher quality board than the inside part of the same window due to aesthetics demands f rom the buyer. Another example is coupled with the manufacturing requirements; end parts of a f rame need a high quality so that tracks can be made in a milling cutter without damaging the remaining part.

When a manufac turer receives a lot of wooden boards f rom a saw-mill the quality and length between different boards varies. In manufactur ing process each board is typically classified along its length into four different qualities. The length of the boards alters between 0.5 and 6 meters. These boards are then used to produce end-products, and there are between five and fifteen different standard sizes of these. The decision problem to be solved is to determine which end-products are to be cut from each individual board. The overall product ion process can be described as in the flow chart given in Fig. 1.

0377-2217/95/$09.50 © 1995 Elsevier Science B.V. All rights reserved SSDI 0377-2217(94)00023-6

Page 2: 1-s2.0-0377221794000236-main

58 M. R6nnqvist /European Journal of Operational Research 83 (1995) 57-68

I Boards I

I Defect detection and quality classification

Decision of saw pattern

I Saw instructions and cutting

Fig. 1. The overall production process.

The Swedish company has a decision support system consisting of two major parts. The first is a defect detection system and the second a decision system to determine the saw pattern and saw instructions. The first part consists of a camera which scans each individual board and produces a computer image of it. This is then analyzed for the identification of, e.g. cracks and knots. Thereafter , the board is classified into a number of different quality zones. Here, a close cooperation between the manufacturer and the programmer is important in order to guarantee a robust procedure and a correct classification. Earlier inspections were done by experienced workers who made their own judgment of the quality and then marked the different zones with a chalk. These marks were then read by a special camera used later in the process.

The second part determines the cutting instructions to the saw, which cross cuts the board according to a specified pattern. This implies that a decision problem, that it to utilize the different quality zones of the board in an 'optimal' way, must be solved. The term 'optimal' takes into account the price of the board, cutting wastage, and the profit and the demands on the end-products.

A major constraint on the overall procedure is that all tasks have a limited amount of time in which to be completed. The determination of the different quality zones takes about two seconds, then the board is transferred by a conveyor belt to the saw. The actual time which the conveyor belt takes is limited to about four seconds. During this time, the decision of the saw-pattern and completion of the saw instructions to the saw must be made. The existing system for the determination of the saw-pattern is a heuristic which lacks some important features. It excludes some of the possible patterns because all possible alternatives cannot be taken into account simultaneously. Also, as the defect detection is becoming more sophisticated more information is available and the existing model cannot deal with some of this additional information. Therefore, it was necessary to develop a model that can take into account all the information, and a solution procedure which produces high quality solutions within the time limits. The model should also be general so that additional requirements can be included in a simple way.

The contents of the report are as follows. In the next section we will give a description of the decision problem. In Section 3 an approximate model of the real world problem is derived, shown to give rise to a set packing problem. In Section 4 a solution procedure is proposed which has the capability to quickly generate good solutions. In Section 5 some practical problems are solved by the proposed model and solution procedure. Section 6 discusses some important extensions and how these can be incorporated in the proposed model. Finally, in Section 7 some concluding remarks are drawn and some future work is indicated.

Page 3: 1-s2.0-0377221794000236-main

/

Length, L

Fig. 2. A board with length L.

M. R6nnqvist / European Journal of Operational Research 83 (1995) 57-68

Y 59

I A C B A F D

Fig. 3. An example of a board with different quality zones.

2. Problem description

The problem can be described as follows. At saw-mills trees are cut in standard sizes, i.e. pre-de- termined widths. The result is a pile of boards with different lengths. Each of these boards give rise to a decision problem. Therefore, consider a board with the length L, as in Fig. 2.

This board is analyzed by the defect detection system and categorized along its length into a number of different quality zones, denoted for example A . . . . , F. In Fig. 3 the result of such a categorization is illustrated.

The decision problem is now to determine the placement of a number of pieces, e.g. raw pieces for standard frames, with different lengths and quality requirements. The placement should be made so that the pieces are placed in an 'optimal' pattern. The term 'optimal' reflects a number of criteria mentioned earlier in the introduction. The mutual order between these criteria may change during the production process depending on, e.g. the actual demand for different end products.

An important property of the problem, which makes it more difficult, is the possibility of degrading a higher quality zone into a lower one. This degradation must follow according to a priori determined decision tree. Fig. 4 shows an example of a decision tree for the degrading process. The reason to follow this t ree can be explained as follows. The quality depends on, e.g. the size and number of both cracks and knots, and a B quality may consist of only small cracks but no knots and a C quality might consist of only small knots. Obviously, a B quality cannot be degraded into a C quality or vice versa, but both may be degraded into a D quality consisting of both cracks and knots.

Due to this possible degrading process, each zone may now consist of several possible qualities. By applying the decision tree given in Fig. 4 on the example given in Fig. 3 we obtain a result which is presented in Fig. 5. Here, all possible qualities for all different zones are shown.

To clarify the description of the board, the areas of the board corresponding to different qualities can be viewed independently as in Fig. 6. Here, areas where the quality is not valid are crossed over.

Fig. 4. An example of a degrading decision tree.

C,D, A,B, C, A,B,C,D,E,F E,F B,D,F D,E,F F D,F

Fig. 5. An example where all possible quality zones are presented.

Page 4: 1-s2.0-0377221794000236-main

60 34. R6nnqvist / European Journal o f Operational Research 83 (1995) 57-68

a ~ e , o , ~ c~, n,o,e

A

B

C

D g

F

Fig. 6. Example where all possible quality zones are presented individually.

3. Mathematical model

The formulation of the model is critical since it should describe the real problem accurately enough while simultaneously being solvable in reasonable time. This is crucial in this application. There exist several possible models for this problem which give rise to a general mixed integer programming (MIP) problem of considerable size. In our case it is necessary to involve several 0 /1 variables for each possible end-product since they may be included several times on each board. The number of constraints required to avoid end products covering each other and satisfy the quality requirements becomes substantial. Using a standard integer programming code, for a MIP, a feasible and near optimal solution cannot be guaranteed within the time limits. Therefore, some approximation must be utilized in order to satisfy the mentioned requirements.

The approximate model developed in this application uses similar variables and constraints as a model proposed by Beasley [2] for the two-dimensional cutting stock problem. In our case we have a one-dimensional problem. However, we have a number of different quality zones for each board. We start by selecting a suitable discretization of the board into n elements, see Fig. 7. The elements are of equal length. The length of each end-product can then be expressed as a number of elements. These are the only approximations made of the problem, and the level of approximation depends on the length of each element. If an element size of 1 mm is chosen (as used in the test examples), then the approximation is very accurate since the end products often is expressed in ram. Furthermore, the length lost in the cutting process is about 4 ram.

To simplify the description of the model we now enumerate all possible lengths of all possible end-products where each combination is termed a 'cut option'. We introduce the following notation.

f l if cut opt ion/s tar ts in element, j, i = 1 , . . . , m , j = 1 , . . . , n , xiJ = ~ 0 otherwise.

aiJp (i if cut option i which starts in element j also covers element p,

i = 1 . . . . . m, j = l . . . . , n , p = l , . . . , n otherwise.

~ 2 3 . . . . . n

Fig. 7. Discretization of a board into n elements.

Page 5: 1-s2.0-0377221794000236-main

M. Riinnqvist / European Journal of Operational Research 83 (1995) 57-68 61

C i =Reward for using cut option i, i = 1 , . . . , m. The problem can now be stated as

m n

(P) max E E cixij i = 1 j = l

s.t. ~ ~ a i j p x i j < l , p = l . . . . . n, i = l j = l

XijE{O, 1}, i = 1 . . . . , m , j = l , . . . , n .

The inequality constraints ensure that any element is covered by at most one possibility. This optimization problem is a so called set packing problem, see, e.g. Nemhauser and Wolsey [6]. The problem (P) consists of at most rnn 0 / 1 variables, e.g. one of the test examples has n = 1515 and m = 37 which results in 56 055 possible 0 / 1 variables. The number of coefficients, a i j p , is determined by the sum over all cut options where each cut option generates a number of entries equal the number o f 0 / 1 variables times the length of the cut option. To evaluate and use these coefficients explicitly is not practical. Instead we make use of some properties which enable an implicit use of the coefficients; hence, an efficient implementation can be made. Denote each cut option as i, then we have the following useful properties. 1. length of the cut option, Li; 2. number of areas (contiguous sequences of elements) within which cut option i may be placed, N,.; 3. start and stop points for each of these possible areas, Sj and Tj; j = 1 . . . . , N~; note that i may be

placed starting at any of Tj - Sj - L i -t- 1 elements within each area. We might also have additional constraints on, e.g. the number of possible cuts or the number of times

each end-product can be cut from each board. These constraints are not considered in the above model but we want to have the possibility to use them in an extended model. Using the above formulation makes such an extension easy to include.

To illustrate the structure of the problem an example is given in Fig. 8. Here, two different cut options are used and the reward is five and four, respectively. The total length of the board is ten elements and the lengths of the c u t options are three and four, respectively. The elements which are crossed-out are not valid because of the quality requirements.

The corresponding mathematical model for this example is:

min z = - - 5 X l l - - 5X12 - - 5X16 - - 5X17 - - 5X18 - - 4X23 - - 4X24 - - 4X25

s.t. Xll_< 1,

X l l "~X12 ~ 1,

X l l -[- X12 -'1- X23 _~ 1 ,

X12 -}- X23 -]- X24 _~ 1,

X23 -'[- X24 -I- X25 ~_~ 1 ,

1 2 3 4 5 6 7 8 9 10

)4

Fig. 8. E x a m p l e wi th two cut opt ions.

Page 6: 1-s2.0-0377221794000236-main

62 M. R6nnqvist ~European Journal of Operational Research 83 (1995) 57-68

X16 +X23 +X24 "[- X25 <: 1, X16 -]- X17 --}- X24 -[- X25 _~< 1,

X16 -[-X17 -[- X18 +X25 <: 1,

X17 +X18 _~< 1,

x18 _< 1,

Xll , X12 , X16 , X17 , X18 , X23 , X24 , X25 • {0, 1}.

In this example the properties mentioned earlier can be expressed as: L 1 = 3, N1 = 2, S~(1) = 1, TI(1) = 4, $1(2) = 6, Z~(2) = 10. L 2 = 4, N 2 = 1, $2(1) = 3,/ '2(1) = 8.

4. Solution procedure

To develop an algorithm for an application such as this, where it is essential to generate feasible solutions quickly it is attractive to choose a heuristic. However, to be able to guarantee high quality solutions, methods based on mathematical programming should be used. One of the most promising approaches for solving large-scale structured integer programming problem is to use Lagrangean relaxation combined with subgradient optimization. A number of efficient applications where this scheme has been used can be found in Fisher [3,4].

Lagrangean relaxation provides a technique that allows the inherent structure of the problem to be used efficiently. A problem might be too difficult to solve with some standard optimization code, but practical problems often have some structure. By relaxing the difficult constraints an easier problem can be obtained. These are called Lagrangean subproblems. Then an iterative procedure is used where a Lagrangean subproblem is solved in each iteration. In each such iteration a lower bound (LBD) of the optimal objective value is computed. The solutions obtained from these Lagrangean subproblems often fail to be feasible solutions and hence some heuristic is used to construct a feasible solution based on the subproblem solution. Each feasible solution give rise to an upper bound (UBD) on the optimal objective value. These bounds are often used as convergence criterion. This iterative process can be viewed as solving the Lagrangean dual problem, and since the primal problem is an integer problem the dual problem will be non-differentiable. Because of the non-differentiability subgradient optimization is necessary.

4.1. Lagrangean relaxation

Lagrangean dualizing of all the inequalities yields the Lagrangean subproblem

(LS) min L(x ,a )= ~ ~cixij+ ~ i=l j=l 1)tP i ai jpXij-- 1

s.t. XijE{O, 1}, i = 1 . . . . . m, j = l . . . . . n.

Here, ap, p = 1 ..... n, are the Lagrangean multipliers or dual variables associated with the linear inequality constraints. This Lagrangean subproblem separates into n × m one-variable problems

n

(LS-ij) min (Ci+p~lApaiyp)Xij s.t. Xij E {0, 1}.

Page 7: 1-s2.0-0377221794000236-main

M. R6nnqvist / European Journal of Operational Research 83 (1995) 57-68 63

These problems are trivially solved by inspecting the sign of the reduced cost, c i + ~.p=lApaijp, for each variable.

The dual function, 4~(A), is defined through the Lagrangean subproblems as

( IN) q~(,~) = min L ( x , A)

s . t . xijE{O, 1}, i = l , . . . , m , j = l , . . . , n .

The dual function is always concave but not necessarily continuously differentiable, see, e.g. Bazaraa et al. [1]. The dual problem is then to solve

(D) max q~(h)

s.t. h>__0.

In the solution of the dual problem it is necessary to take a step in the direction of a subgradient of q~(h) at A k, which is the current dual solution at iteration k. One easily obtained subgradient is defined through the values of the dualized constraint functions at the Lagrangean subproblem solution, see, e.g. Bazaraa et al. [1], i.e.

rlp= ~ ~ai jpXi~-- I , p = l , . . . , n . ( 2 ) i = 1 / = 1

In order to guarantee convergence towards the optimal dual solution the step lengths, t k, taken must fulfill the following conditions:

o o

~_~ t k = o% (3) k = l

lim t k = O. (4) k---> o¢

Several possible step-lengths can be found in Held et al. [5], and a frequently used one is

(UBD - ~(Ak)) t k = o 11 112 , where 0 < o-< 2. (5)

When both a search direction and a step length are determined the Lagrangean multipliers are updated according to the formula

h k+l = max{O, A k + tkrl), (6)

where the max operator is used to project the vector of multipliers onto the positive orthant. A well known and inherent property with Lagrangean relaxation for integer problems is the fact that

when inserting the optimal dual variables into the Lagrangean subproblem, one may obtain a solution that is not only suboptimal but also infeasible. Because of this it is natural to use some heuristic that generates a feasible solution from the subproblem solution. This solution is a candidate for a UBD. Using the solutions from (LS-ij) to obtain a good solution can be rather difficult because of the large number of alternative cutting options starting at each element in the subproblem. Another property is that there may exist a difference between the optimal objective value to the problem (P) and the optimal objective value to the Lagrangean subproblem (LS) which gives a LBD. This difference is known as the duality gap.

Page 8: 1-s2.0-0377221794000236-main

64 M. R6nnqvist /European Journal of Operational Research 83 (1995) 57-68

4.2. Strengthened Lagrangean subproblem

In this section we describe an equivalent formulation of the problem (P) which in practice yields better lower bounds and makes it easier to generate feasible solutions. This is achieved by adding a number of constraints which are redundant in problem (P). This results in a formulation which is not as separable as (LS) but gives a strengthened Lagrangean subproblem. An interesting choice of this redundancy is to include a set of constraints stating that no more than one cut option can start in each element. Introducing these additional constraints we state an equivalent problem (SP) to (P).

m n (SP) max • E CiXij

i=1 j=l

s . t . ~aijpXij~l,p=l . . . . , n , i=1 j=l m ~_, aiyyxij < 1, j = 1, . . . , n, i=1 Xii~{O, 1}, i = 1 . . . . , m , j = l . . . . ,n.

The corresponding (strengthened) Lagrangean subproblem is

~ ~ ~ ( =~1 ~ ) (SLS) rain c i x i j -+- Ap ai jpXij - 1

i=1 j=l p=l i j=l

I ~laijjxij<--l, J = l n, . . . . . s.t. i=

(xiy~{O, 1}, i = l , . . . , m , j = l , . . . , n .

This problem separates into n smaller problems of the type

i=1 p=l

s.t. ~ aij jXi j ~ 1, i=1

xiy ~ {0, 1}, i = l , . . . , m .

These problems are easy to solve, by finding the variable with the smallest reduced cost, c i + ~ = 1Apaiyy, denoted i. The solution x* to (SLS-j) is therefore

x*. = if c i + ~ Apaii p < 0 and i: m i n e i + A p a i j p , tJ p= 1

otherwise.

The solution of (SLS) gives a candidate for an improved LBD,

LBD := max LBD, L* - . j~l

j = l , . . . , n , (7)

(8)

Page 9: 1-s2.0-0377221794000236-main

M. R6nnqvist /European Journal of Operational Research 83 (1995) 57-68 65

4.3. The upper bound

By applying a heuristic for finding a feasible solution based on the solution of (SLS) a candidate for a new UBD is obtained. A simple and useful heuristic is to select the first non-zero solution of the problem (SLS) and then repeat the procedure for the elements starting after the length (expressed in elements) of the corresponding cut option. This is repeated until the last element, n, is investigated. The heuristic can be formalized as follows.

Heuristic Let k = 0 , I = ¢ . repeat

If x* k > 0, then I = I u { i } , k = k + L i + 1.

else k = k + l

until k > n

The main difference between this heuristic and one necessary for the solution obtained in the problem (LS) is that at most one non-zero solution can exist for each element from the solution to the problem (SLS). An easy extension is to use a greedy algorithm to insert additional cutting options within any areas unused in the solution. It is of course possible to develop more sophisticated heuristics but in this application the above one shows good performance.

4.4. The algorithm

To summarize the overall solution procedure for the problem (SP) the following description is made.

Algorithm Step O. Compute for each cut option the properties, i.e. number of areas and the start and stop points for

these. Initialization of parameters, k = 0, LBD = - 0% UBD = oo. Select e and maxiter. Step 1. Solve the Lagrangean subproblem, (SLS). Step 2. Update LBD according to (8). Step 3. Find a feasible solution with the proposed heuristic and update UBD if possible. Step 4. Check the convergence criteria, if (UBD - L B D ) / L B D < e or if k --- maxiter. If satisfied stop

(Step 8). Step 5. Compute a subgradient, r/, according to (2). Step 6. Compute a step length, t k, according to (5). Step Z Update the Lagrangean multipliers according to the updating formula (6). Update k, k := k + 1,

and return to Step 1. Step 8. Stop, select the solution which gives the UBD as the optimal solution.

Analysis of this scheme to determine the number of calculations in each of the steps showed that most work is done in Step 3, the solution of (SLS). Noteworthy is the fact that no multiplications have t o be performed in this step.

If we denote by E[a] the average number of variables for each cut option, then the total number (for all steps) of additions and comparisons is limited to about 8mE[a] and the number of multiplications to 3n. This result is important in the determination of the number of elements. As an example, if we want

Page 10: 1-s2.0-0377221794000236-main

66 M. R6nnqvist / European Journal of Operational Research 83 (1995) 57-68

Table 1 Data for the five test examples

Test-example n m #0/1 var. max 0/1 var. #entries

1 2609 12 14103 31308 6 938 450 2 2025 15 6 311 30 375 1327 784 3 1515 37 8 421 56 055 2149 250 4 4591 24 49512 110184 29 726 055 5 4299 24 48 799 103176 30 502 547

to p e r f o r m ten i t e ra t ions and we know the p e r f o r m a n c e of the compu te r , t hen it is poss ib le to c ompu te the n u m b e r o f e l e m e n t s which we can use.

5. Numerical results

W e have app l i ed the p r o p o s e d m o d e l and so lu t ion p r o c e d u r e on a n u m b e r of rea l wor ld p rob lem. T h e s e were o b t a i n e d f rom the indus t ry w h e r e t he p r e s e n t sys tem is in ope ra t ion . T h e i m p l e m e n t a t i o n is wr i t t en in F O R T R A N and the tes ts p e r f o r m e d on a SUN-works t a t ion . (The rea l vers ion which will be o p e r a t e d on a P C s ta t ion . ) W e have t e s t ed the rou t i ne on severa l p r o b l e m s and r e p o r t he re the resul ts f rom five r e p r e s e n t a t i v e p rob lems .

T h e size and charac te r i s t i c s of the tes t p r o b l e m s a re given in Tab le 1. He re , n is the n u m b e r o f e l e m e n t s ( and also the n u m b e r of cons t ra in ts ) and m is the n u m b e r of cut opt ions . T h e co lumn 'max 0 / 1 va t . ' c o r r e s p o n d s to the u p p e r b o u n d o f poss ib le 0 / 1 var iables , w he re a s the co lumn ' # 0 / 1 var . ' is the ac tua l number . T h e co lumn ' # e n t r i e s ' gives the n u m b e r of n o n - z e r o en t r i es o f the cons t ra in t mat r ix if an expl ici t de sc r ip t ion of the p r o b l e m were to b e used. E a c h e l e m e n t is chosen to have the length 1 mm. T h e l eng ths o f t he b o a r d s a re t h e r e f o r e d i rec t ly given in m m as the n u m b e r of e lements .

T h e resul t s f rom the expe r imen t s a re given in Tab le 2. He re , the LBD, U B D and the re la t ive d i f fe rence b e t w e e n t h e m are given. T h e L B D is o b t a i n e d a f te r p e r f o r m i n g 500 i te ra t ions .

In Fig. 9 the typical convergence b e h a v i o u r o f the U B D and L B D are shown (Tes t example 2). N o t e tha t the x-axes have d i f fe ren t scales.

A s can be seen, the convergence of U B D is very rapid ; wi th in t en i t e ra t ions we have found the f inal feas ib le solut ion. I t is r e a s o n a b l e to assume tha t we have found the op t ima l solut ion. T e n i t e ra t ions is wi th in the n u m b e r of i t e ra t ions we can m a k e for this d i sc re t i za t ion and still be wi th in the t ime l imits r e q u i r e d for the P C env i ronment . However , wi th in these t en i t e ra t ions t h e r e is no conf i rma t ion tha t the op t ima l so lu t ion has b e e n found. This is because the L B D converges much m o r e slowly. T h e o the r tes t examples show s imi lar convergence b e h a v i o u r and r each the f inal U B D within the t ime l imits.

Table 2 Results from the five test examples

Test-example : LBD UBD Difference (%)

1 - 2396 - 2330 2.8 2 - 1947 - 1904 2.2 3 - 1482 - 1437 3.0 4 -4519 - 4334 4.1 5 - 4004 - 3963 1.0

Page 11: 1-s2.0-0377221794000236-main

M. R~nnqvist / European Journal of Operational Research 83 (1995) 57-68 67

-1780

-180C

-182C

-184(i

-186(i

-188(

-1900

-1920

-150C

-200£

-250£

-300C

-350C

-450C

~ J

2 4 6 8 10 12 14 16 18 20 " 100 " i00 " .300 " 400 Number of iterations Number of iterations

Fig. 9. Typical convergence history of the UBD and LBD.

500

6. Extensions

There are two important extensions which are of practical interest. Both of these can easily be incorporated within the existing model formulation.

The system that categorizes the board can investigate all four sides of the board since it has the capability to use four scanners simultaneously. This will give the possibility to turn the different pieces and to take into account different requirements for the different sides. This can be easily incorporated in the model, because it will only alter the definition of the cut options. The number of cut options will of course increase, e.g. if an end-product can be on either side of the board or it can be turned, see Fig. 10, then the number of possibilities will increase by a factor of four. Here, sl and s2 correspond to two sides of the end-product.

The other extension arises from manufacturing requirements. The quality at the ends of an end-prod- uct must often be of high quality because much of the difficult machine work is performed there. At the same time, the quality requirements in the middle part of the product can be lower. To take care of this in the proposed model one must choose the higher quality for the whole end-product since each cut option has so far consisted of only one quality requirement. However, suppose that we have an end-product with three zones of quality requirements given as in Fig. 11.

This can in fact easily be included in the model and solution procedure. In the implementation possible starting areas are used. A starting area is the interval where it is possible to allocate the starting of a cut option. In Fig. 12 the starting zones are given if only one quality is used for each cut option, and

s l s l - -

~ - ~ s 2 s 2 ~ - - - - ~ ~ - ~ s 2 s 2 ~ ] s l sl

Fig. 10. I l lustrat ion on how an end-product can be turned.

A D A.

Fig. 11. An example of a piece with different quality requirements.

Page 12: 1-s2.0-0377221794000236-main

68 M. R6nnqvist /European Journal of Operational Research 83 (1995) 57-68

S t a r t i n g a r e a s

I I I \ A d d i t i o n a l s t a r t i n g a r e a

Fig. 12. Ordinary and additional starting areas when a piece has different quality requirements.

in the same figure it is also shown how the extension can be incorporated smoothly, just by adding an additional starting area.

7. Conclusions and further work

The important goal of this paper was to provide a mathematical representat ion that is capable of modeling the decision problem accurately and yet can be solved within the time limits. The model should also be sufficiently flexible to allow additional information and requirements to be included. In this paper it has been shown that t h e proposed model and solution procedure have these features. In each iteration a new solution i s generated and the process continue until the t ime limit has been reached. Then the best solution so far is chosen. The convergence of the UBD is very fast which implies that few iterations are needed in order to obtain a near optimal solution. The main reason for this efficiency is the introduction of a strengthened Lagrangean subproblem. The accuracy of the model depends of the number of elements. Since i t is possible to estimate the number of calculations, in each iteration, with respect to the number of elements it is possible to a priori decide this number. In the numerical results presented it was shown that it is possible to use very small elements and hence an accurate model. The model also has the possibility to adapt some important extensions, which has to be considered in some applications.

An interesting f u t u r e development is to try to integrate the defect detection system with the mathematical model. In this way, the inspection system would be able to produce an analysis which could be used directly in the solution process.

References

[1] Bazaraa, M.S., Sherali, H.D. and Shetty, C.M., Nonlinear Programming: Theory and Algorithms, 2nd ed., Wiley, New York, 1993.

[2] Beasley, J.E., "An exact two-dimensional non-guillotine cutting tree search procedure", Operations Research 33 (1985) 49-64. [3] Fisher, M.L., "The Lagrangian relaxation method for solving integer programming problems", Management Science 27 (1981)

1-18. [4] Fischer; M.L., "An applications oriented guide to Lagrangian relaxation", Interfaces 15/2 (1985) 10-21. [5] Held, M., Wolfe, P., and Crowder, H., "Validation of subgradient optimization", Mathematical Programming 6 (1984) 62-88. [6] Nemhauser, G., and Wolsey, N., Integer and combinatorial optimization, Wiley, New York, 1988.