Escolar Documentos
Profissional Documentos
Cultura Documentos
a,b,*
Abstract
The article examines the Sequential Heuristic Procedure (SHP) for optimising one-dimensional stock cutting when
all stock lengths are dierent. In order to solve a bicriterial multidimensional knapsack problem with side constraints a
lexicographic approach is applied. An item-oriented solution was found through a combination of approximations and
heuristics that minimize the inuence of ending conditions leading to almost optimal solutions. The computer program
CUT was developed, based on the proposed algorithm. Two sample problems are presented and solved. A statistical
analysis of parameters that aect material utilisation was also made. 1999 Elsevier Science B.V. All rights reserved.
Keywords: Cutting; Heuristics; Optimisation
1. Introduction
The problem of one-dimensional stock cutting
occurs in many industrial processes [13] and
during the past few years it has attracted an increasing attention of researchers from all over the
world [4]. Yet attention has been mostly focused
on the solution to the problem in cases with the
stock of the same length or with a few dierent
standard lengths. However, when the stock lengths
are all dierent, generally acceptable solutions to
this problem have not appeared in the literature so
far. The purpose of this article is to propose a
solution that will generalise and improve our earlier solution [5] where a practical problem in the
clothing industry is considered.
Most standard problems related to one-dimensional stock cutting are known to be NPcomplete. However, in many cases the problems
can be modelled by means of mathematical programming and a solution can be found by using
approximate methods and heuristics. Our objective is to design a plan of one-dimensional cutting
of a certain number of pieces of dierent lengths
(stock lengths), into a large number of short pieces
(order lengths), which will minimize the overall
trim loss considering dierent conditions that may
appear in practice.
Using Dycko's typology [6] our integer cutting
stock problem can be described, in the cases with
0377-2217/99/$ see front matter 1999 Elsevier Science B.V. All rights reserved.
PII: S 0 3 7 7 - 2 2 1 7 ( 9 8 ) 0 0 1 4 0 - 4
558
si
bi
dj
xij
Pm
0 if xij 0 8i;
1 otherwise;
0 if xij 0;
1 otherwise;
1 if zj 1 ^ dj > max si ;
0 otherwise;
tj
dj
0
559
if zj 1 ^ dj 6 UB;
otherwise:
min
(2)
(3)
s.t.
(4)
(5)
Pn
min
(2)
min
(3)
(4)
s.t.
Pn
(minimize number of
i1 Di
uncut order lengths and satisfy
condition (a) or (b) or (c)),
P
m
(minimize trim loss
j1 dj
which is smaller than max si ),
same as (2) in case 1,
same as (3) in case 2.1,
560
(5)
(6)
same as in case 1,
same as (5) in case 2.1.
P max dj 1 zj :
2. the solutions dier from each other as much
as possible.
The dierences between possible solutions
are greatest when:
2.1. the relation between the longest and
the shortest order length is as great as possible;
2.2. the relation between the longest and
shortest stock length is as great as possible.
The assumptions are statistically proven, which
is shown in the analysis described in Section 4.
However, we cannot be quite sure that the assumptions are correct in each individual case.
Reduction in the inuence of ending conditions
requires such an algorithm, that at the end of the
cutting process it would be possible to choose from
the largest possible set of solutions diering from
each other as much as possible.
When there is enough material in stock, or
more than needed (case 1) all the assumptions
above can be taken into consideration more easily.
In this case is the last cut stock length mostly only
partially utilised and there is no additional trim
loss. The greater the number of stock lengths left
unutilised after the order requirements have been
fullled, the greater the possibility to achieve true
cutting optimum.
The crucial question is the selection of order
lengths. The following two procedures can be
considered:
(a) In accordance with 1.1 and 2.1 order lengths
with the greatest number of uncut pieces is chosen.
We choose rst Y elements from the set of not
completely cut order lengths, sorted by decreasing
number of uncut pieces (Di ). In this way a greater
variety of order lengths will remain at the end.
However, this is not consistent with the assumptions 1.2 and 1.3, as at the end of the cutting
process also longer order lengths could remain,
which would mean a smaller number of pieces to
561
562
9.
R D 3 ) s4 t
10.
if R < Rmin
11.
then
12.
Rmin R
13.
jmin j
14.
x1j i, x2j k, x3j l, x4j t
15.
if R 6 r
16.
then
17.
stop
18.
endif
19.
endif
20.
endfor
21.
endfor
22.
endfor
23. endfor
Procedure KNAPSACK
0. initialize Rmin maxint
1. for j 1 to m do
2.
for i min{b1 , int(dj /s1 )} to 0 step-1 do
3.
D1 dj ) s1 i
4.
for k min{b2 , int(D1 /s2 )} to 0 step-1 do
5.
D2 D1 ) s2 k
6.
for l min{b3 , int(D2 /s3 )} to 0 step-1 do
7.
D3 D2 ) s3 l
8.
t min{b4 , int(D3 /s4 )}
O m
In the knapsack procedure a sequence of vectors (xj )Y is generated in a lexicographically decreasing order to nd the rst optimal
combination. The int function converts a numeric
expression to an integer, all digits to the right of
the decimal place are ignored.
step 5 takes
O m
intd
j =s1
X
intdj s1 i=s2 ;
i0
!
intdj s1 i s2 k=s3
k0
time.
In case s1 s2 s3 s and Nj int(dj /s) step 3
takes O(m Nj ), step 5 takes Om Nj2 3Nj ;
and steps 719 take Om Nj3 6Nj2 11Nj
time.
563
564
4. Results
The proposed algorithm is written in FORTRAN programming language. The program
consists of 2500 lines of code. The data input and
the printout of the results are made in 4GL, as it is
most suitable for this purpose. The program can
be run on a personal computer. It was called CUT.
CUT is intended for general use and is an improved and generalised version of program COLA
[5]. COLA was designed for cutting rolls in
565
Fig. 2. (continued).
566
Fig. 3. Dependence of the trim loss on the average number of pieces cut out of a stock length.
567
Fig. 5. Dependence of trim loss on the number of dierent order lengths cut out of the same stock length.
values are: p1 30, p2 40% and Y 4. We carried out an analysis of 200 randomly generated
samples of the sample case. In 100 cases the
shortage of material was about 5%, in other 100
cases there was about 5% surplus.
We obtained the following results: in the rst
100 cases the average trim loss was 0.0098%
(0.1121% in the worst case). In the other 100 cases
the average trim loss was 0.0034% (0.0351% in the
worst case). In all 200 cases the sum of all trim
losses was lower than the shortest order length.
This means that we have certainly found an optimal solution. Comparison with the program COLA shows an about two times smaller trim loss.
Two typical examples from these 200 cases are
shown in Fig. 2.
568
5. Conclusion
The paper analyses the problem of reducing
trim loss in one-dimensional stock cutting when all
stock lengths are dierent. The item-oriented solution in the form of an SHP through a combination of approximation and heuristics is found.
The algorithm is designed so that the conditions
and restrictions that could appear in practice are
taken into account. Such an algorithm is supposed
to be applicable as generally as possible in a variety of real life situations. On the basis of the
proposed algorithm the computer program CUT is
developed. This program is an improved and
generalised version of the program COLA, which
has been used in clothing industry for more than
12 years. The program is very fast. Its speed enables the users to carry out a ``what-if'' analysis by
changing the parameters. When all the parameters
are similar to or greater than those in the sample
case, the optimal solution can be expected in all
likelihood.
References
[1] J.S. Ferreira, M.A. Neves, P. Fonseca, A two-phase roll
cutting problem, European Journal of Operational Research 44 (1990) 185196.
[2] R.W. Haessler, P.E. Sweeney, Cutting stock problems and
solution procedures, European Journal of Operational
Research 54 (1991) 141150.