0% found this document useful (0 votes)
24 views11 pages

A Local Search Approach To A Circle Cutting Problem

Uploaded by

The Lady
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views11 pages

A Local Search Approach To A Circle Cutting Problem

Uploaded by

The Lady
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Journal of the Operational Research Society (2007) 58, 429–438 r 2007 Operational Research Society Ltd.

Ltd. All rights reserved. 0160-5682/07 $30.00

www.palgrave-journals.com/jors

A local search approach to a circle cutting problem


arising in the motor cycle industry
KA Dowsland1,2*, M Gilbert3 and G Kendall1
1
The University of Nottingham, Nottingham, UK; 2Gower Optimal Algorithms Ltd, Swansea, UK; and
3
Kitcross, Presles, Belgium
This paper is concerned with the development of a customized circle packing algorithm for a manufacturer of sprockets
for the motor cycle industry. Practical constraints mean that the problem differs somewhat from those tackled elsewhere
in the literature. In particular, the layouts need to conform to a given structure. This is achieved by using a local search
algorithm with an appropriate starting solution and a series of neighbourhoods designed to preserve the layout
structure. Empirical evidence based on real data shows that the quality of the resulting solutions closely matches that of
cutting patterns currently produced by human experts. Computation times average around 20–30 s per order as
compared to several hours for an equivalent manual solution.
Journal of the Operational Research Society (2007) 58, 429–438. doi:10.1057/palgrave.jors.2602170
Published online 22 February 2006

Keywords: heuristics; local search; cutting stock problem; production

Introduction et al, 2005), while other publications are limited in scope—for


example, packing circles into larger circles (Kravitz, 1967;
The problem of cutting a set of pieces from one or more
Wells, 1991; Huang et al, 2001, 2003), packing circles into a
rectangular stock-sheets arises in many manufacturing
square (Graham and Lubachevsky, 1996; Nurmela and
industries and cutting and packing problems have been
Östergård, 1997; Boll et al, 2000), or dealing with three-
widely researched for over 50 years (Kantorovitch, 1939;
dimensional (sphere) problems (Conway and Sloane, 1992;
Gilmore and Gomory, 1961; Dowsland and Dowsland,
Chen et al, 2001).
1992; Sweeney and Paternoster, 1992; Lodi et al, 2002).
Publications motivated by practical circle cutting or
Although there have been many attempts to produce generic
packing problems are less common. Examples include:
algorithms for specific classes of piece types (eg circles,
collating cylindrical products into rectangular cases that
rectangles, polygons, etc), the objectives and constraints
provide efficient palletisation (Dowsland, 1991), packing long
imposed by real-world problems vary so much that there are
cylindrical items into shipping containers (George et al, 1995;
many examples of customized solutions for a given problem. Correia et al, 2000; Huang et al, 2005), packing optical fibres
The focus of this paper is a local search-based packing into tubes of minimum diameter (Wang et al, 2002), and
algorithm designed specifically to meet the requirements of punching circular blanks from a silicon sheet in the manu-
a circle cutting operation arising in a Belgian company facture of rotors and stators for electric motors (Cui, 2005).
involved in the manufacture of sprockets (toothed wheels In this paper, we tackle a real-world problem. Superficially
used in a chain drive) for the motorcycle industry. the problem is similar to many of those above in that it
Although circle packing has long been of interest to involves packing circles of different diameters into one or
mathematicians (Koebe, 1936), these types of problem have more containing rectangles of known dimensions. However,
received less attention than many other stock-cutting none of the above approaches are directly applicable for two
problems such as rectangle packing (Beasley, 1985; Burke reasons. Firstly, the number of circles to be cut is not fixed,
et al, 2004; Dowsland et al, 2006) and irregular packing as additional circles can be produced for inventory.
(Dowsland et al, 1998; Bennell and Dowsland, 2001; Secondly, from a practical point-of-view it is desirable to
Dowsland et al, 2002; Burke et al, forthcoming). Much of produce layouts that are similar to those currently produced
the literature on circle packing is of a theoretical nature manually by experienced workers. This makes the problem
(Williams, 1979; Steinhaus, 1999; Collins and Stephenson, unique. We have therefore developed our own approach,
2003; Stephenson, 2003; Stoyan and Yas’kov, 2004; Birgin based on local search. It is widely accepted that utilizing
domain knowledge can often improve the success of a
*Correspondence: KA Dowsland, Gower Optimal Algorithms Ltd,
5 Whitestone Lane, Newton, Swansea SA3 4UH, UK. search algorithm (see, for example, Wildemuth, 2004), and
E-mail: [email protected] this knowledge can often be exploited when making
430 Journal of the Operational Research Society Vol. 58, No. 4

the problem-specific decisions concerning the definition of the


solution space, the evaluation function, the initial solution Inventory of
and the neighbourhood structure (see for example Reeves, stock sheets
1993; Glover and Laguna, 1997; Glover and Kochenberger,
2003). In this paper, we address all four decisions. In
particular, we show how the use of appropriate starting
Disc cutting
solutions and neighbourhood moves allows us to produce
solutions with the required characteristics, and we examine
the potential benefits and drawbacks of relaxing some of the
constraints in the definition of the solution space. The result
is an algorithm that is able to produce high-density layouts Tooth cutting
Inventory of cog
that meet all the practical requirements of the company. wheels
In the next section, we define the problem together with (0-200 cogwheels in
the operating environment in which the solution is to be 400 sizes)
implemented. This is followed by a description of the Weight
solution procedure and a discussion on balancing the reduction
flexibility of the search with the need to home in on feasible
solutions. An empirical evaluation of different variants of
the algorithm based on experiments on nine problems Cutting of
selected from the company’s archives is then presented and fixing holes
the performance of the best variant is confirmed on a further
sample of 100 problems. The paper concludes with some
general comments and suggestions for further work.
Colouring
Inventory of finished
sprockets
Problem definition
(0-20 sprockets for
The current situation 2000 models.)
Packing
The company’s production process is shown in Figure 1. It
starts with aluminium sheets of dimensions 1600 mm 
Figure 1 The production process.
2840 mm, in one of the four different gauges (thicknesses).
The first process cuts discs of given diameters. These discs
are then further processed so as to produce the full
range of sprockets by transferring the discs to a tooth be left between extruded circles. Around the border of the
cutter, where they are effectively transformed into cogs. At sheet 5.5 mm must also be left to allow for it to be secured
this stage, any surplus production can be held as inventory. during the cutting process. The width of the cutter and the
The remainder of the process is concerned with further gap between the circles can be accommodated by adding
processing of the cogs. In this paper, we are concerned with 23 mm to every circle diameter. As this will also leave a gap
the first phase of the production process, that of disc cutting. of 1.5 mm along each edge of the sheet; the 5.5 mm gap
Each order is treated separately. The set of discs that must around the border can be achieved by reducing the
be cut is determined by checking the inventory for any dimensions of the sheet by 8 mm. Although the set-up time
unallocated cogwheels of the required dimensions, and then for the disc-cutting machine is independent of the diameters
setting up a disc-cutting plan in order to accommodate the cut, the tooth-cutting machine needs to be reset for each
remaining items in the order. An order may consist of more different diameter. Therefore, any diameter Di for which
than one gauge and within each gauge there are typically there are already sufficient cog-wheels in stock will be
between 60 and 2000 discs that need to be cut. The number supplied from stock. For all other diameters, the objective is
of discs that can be cut from each sheet is typically between to define a set of cutting patterns for at least qi ¼ bisi circles
60 and 100, depending on the diameters. Once a sheet has of diameter di, where di ¼ Di þ 23, bi is the number of circles
been used it is discarded (ie there is no possibility of using of diameter Di in the order and si is the number of cogwheels
partially used sheets for future orders). However, the total of diameter Di in stock, in such a way as to minimize the
order book consists of a set of standard diameters and, in amount of waste material, while keeping the number of
order to improve sheet utilization, the company will cut extra cogwheels made for inventory to a reasonable amount.
discs to be held in inventory and used to meet future orders. The cutting patterns are currently produced manually by
Cutting is executed by a milling cutter of diameter 10 mm. experienced staff, who plan and draw the new patterns using
In order to avoid the sheet splitting or breaking 3 mm has to AutoCAD. For a typical order, about two-thirds of the
KA Dowsland et al—A local search approach to a circle cutting problem 431

sheets re-use existing patterns, while the remaining third are as the system was to be run in parallel with the manual
produced from scratch. Each new sheet takes around one operation, with the layouts being archived for potential re-
and a half man-hours to plan. Typically around 32–34% of use as a part of the cutting plan for future orders, there was a
the material is waste, including the material wasted by the general consensus that the layouts should be of a similar
milling-cutter, the gaps between the discs, and the waste type. It is also worth noting that such layouts are unlikely to
material necessary for fixing the sheet. This translates to compromise the quality of the solutions in terms of sheet
about 81–83% density for the circle packing problem using utilization. This is because orders tend to consist of large
the adjusted diameters and the reduced sheet dimensions. numbers of circles of a given diameter where the range of
Figure 2 shows a typical set of layout patterns for a small diameters is usually small. In these circumstances, layouts
order requiring five sheets. based on hexagonal patterns are also likely to yield dense
packings.
The balance between low inventory and waste minimiza-
Formalization of the problem
tion also needs addressing. Intuitively inventory will be
The objective of this study is not to produce a computerized minimized if the number of sheets used is the minimum
system to replace the manual operation but to provide an required to meet the order quantities. Conversely extra
automatic system that is able to support the current expertise. sheets will allow more flexibility in the quantities of each
For example, by relieving the pressure during busy times, or diameter to be cut and this may result in improved sheet
covering periods when experienced staff are unavailable due utilization. Furthermore, due to the set-up times on the
to holidays, illness, etc. In order to build an automatic tooth-cutting machine, sufficient inventory to supply small
system, the objectives and constraints on the problem need quantities of a particular diameter is viewed as a positive
further formalization. In particular, two issues need to be advantage. The company stated that they were satisfied with
addressed. The first concerns the types of layout that are the levels of wastage and inventory produced by the current
required and the second concerns the balance between the system. However, no figures for the relationship between
objectives of minimizing waste and keeping inventory down inventory costs and material costs, or for the mean or
to a ‘reasonable’ level. maximum amount of inventory that would be acceptable,
Figure 2 is typical of the types of layouts currently in use. were available.
The most obvious feature of these layouts is that they are The current manual approach does not involve any formal
based on a hexagonal lattice made up of blocks of circles of guidelines, but consultation with the layout designers
the same diameter, with some adjustments within rows or allowed us to estimate the amount of over-production they
around the edges. Although the operation of the cutting would expect to produce in different circumstances. This
equipment does not impose any restrictions on the structure typically translates to between 5 and 30% of the total area
of the layout, it was deemed desirable to produce layouts packed, with the higher figures corresponding to orders with
similar to those in Figure 2 for two reasons. Firstly, after several small order quantities. However, for very small
cutting, the pieces are sorted manually for loading onto the orders (ie less than five sheets) the surplus can amount to
tooth cutter. The advantage of layouts consisting of large more than 50%. Typically, the manual approach starts with
blocks of circles of equal diameter is self-evident. Secondly, the design of an initial cutting plan based on hexagonal
nestings. These are built up row-by-row, and all the circles of
a given diameter are allocated before the next diameter is
considered. Incomplete rows are filled with surplus circles of
that diameter. This procedure determines the number of
sheets that will be used, which in turn has a direct influence
on the surplus production.
Our approach is similar in that we determine an upper
bound, Q, on the minimum number of sheets required by
applying a fast packing heuristic based closely on the logic
used in the manual approach. Full details of this heuristic are
given in the next section. Our objective is then to find an
efficient packing of the Q sheets that includes a sufficient
number of circles of each diameter. Thus, the problem can
now be stated formally as follows.
Let Di, di, bi, si and qi be defined as in the previous section.
Given a set of n diameters di such that bi4si let Q be the
number of sheets required to pack at least qi circles of
Figure 2 A typical layout produced by the current manual diameter di using an appropriate packing heuristic. Then our
solution approach. objective is to find a set of Q layouts of the required format
432 Journal of the Operational Research Society Vol. 58, No. 4

(one for each sheet) that maximizes specific decisions for the solution space, S, the starting
solution s0, the neighbourhood structure, N, and the
PQ
j¼1 uj X
Q evaluation function f. The way in which a suitable
such that aij Xqi ; for i ¼ 1; n neighbour, sAN þ (sc) is selected must also be defined. This
Q j¼1
section focuses on the problem-specific decisions. We start
by considering three variants of a construction heuristic for
where aij is the number of copies of circle diameter di in
the initial solution based on the current manual approach.
layout j and uj is the packing density of layout j. Note that
We then go on to develop a series of complex neighbour-
the set of diameters under consideration is restricted to those
hood moves designed to allow sufficient flexibility to find
for which qiX1 in order to avoid additional set-up times on
improved solutions while ensuring that the layouts produced
the tooth cutter.
are similar to those in Figure 2. As the quantity of each circle
in the final solution is not known a priori these moves must
allow for these quantities to change. This leads us to
The solution approach
consider relaxing the definition of the solution space, S, to
Local search, or hill climbing, is a heuristic approach that include solutions that violate the lower-bound constraints on
starts from an initial solution, s, and tries to improve it by the quantities of each diameter to be cut and to develop an
making a series of small changes or perturbations. When an evaluation function, f, that penalizes these violations in such
improvement is found the improved solution becomes the a way as to guide the search to high-quality feasible
incumbent solution and the process is repeated until a solutions.
solution with no improving perturbations is reached. The set
of solutions that can be obtained by applying an allowable
perturbation to a solution, s, is known as the neighbourhood
The initial solution
of s, and the replacement of s by one of its neighbours is The initial solution is based on the initial solution produced
known as a neighbourhood move. The local search process by the manual approach and is used to determine the
can be summarized as follows. number of sheets, Q. It is generated deterministically and is
composed of blocks of circles, each block consisting of
circles of a single diameter, nested in a hexagonal pattern.
Local search for minimisation
Three variants of this approach are considered. The first two
Definitions: differ in the way the changeover between blocks is handled.
The best of these two options is then subdivided according to
S=space of feasible solutions
whether the circles types are ordered randomly, or by
N(s)=the neighbourhood of s
diameter. In all cases the initial layout is constructed so as to
f(s)=cost of solution s
obey the lower-bound constraints by taking each piece type
N þ (s)= {tAN(s): f(t) o f(s)}
in turn, and, starting from the bottom of the stock sheet,
Procedure: filling rows in the required pattern until qi circles are packed.
{Select s0AS If the last row is incomplete then it is completed with
Set sc ¼ s0 additional circles of the same type. The process then
While N þ (s) a+ continues with the next type, starting a new sheet whenever
{Select s A N þ (sc) the current sheet cannot accommodate a row of the required
Set sc ¼ s} diameter. The requirement to nest circles of different sizes on
Endwhile the same sheet needs special consideration as the hexagonal
Stop (sc is the approximation to the optimal solution)} lattice given by the centres of the circles will obviously
change with the circle diameter. There are two ways of
Local search is often criticized for being unable to move dealing with this, as shown in Figure 3. The first, which we
sufficiently far from the starting solution without the use of will denote NEST is to continue the nest as the diameters
uphill moves and/or additional diversification strategies such change by maintaining the same x-coordinate for the centres,
as those inherent in simulated annealing (Reeves, 1993) or as in Figure 3a. The second, which we will denote BLOCK,
tabu search (Glover and Laguna, 1997). However, in this is to start a new nest for each type by placing the bottom of
case, this limitation can be viewed as a positive advantage, in the first row of the new type along a line defined by the top
that if we select an initial layout with the right characteristics of the last row of the previous type, as in Figure 3b. Both
we can attempt to improve it with a series of small changes approaches have their disadvantages. In NEST, space will be
that will not be disruptive enough to destroy its underlying wasted as the horizontal distance between circles in each row
structure. will be determined by the largest circle on the sheet. In
In order to implement the above local search algorithm BLOCK, space will be wasted at the changeover between
for a given problem, it is necessary to determine problem- types, which may result in fitting a smaller number of rows.
KA Dowsland et al—A local search approach to a circle cutting problem 433

type. All subsequently placed rows are then moved


accordingly, even where this involves moving to the next
sheet. In this case, the number per row is adjusted as
necessary. The process is repeated until there is no circle type
for which a row can be added without requiring a new stock
sheet. Empirical evidence, based on the experiments
described in the next section show that the density of an
initial layout produced in this way lies in the region of
(a) (b) 77–79%.
Figure 3 Layout strategies for a change in diameter. (a) The As stated above the layout produced by this initialization
bottom of the lattice of small circles is nested into the top of the phase is used to determine Q, the number of sheets to be
lattice of larger circles and the x-coordinates of the original used, which then remains fixed for the subsequent improve-
hexagonal lattice are preserved. (b) The two lattices are ment phase.
separated, enabling a tighter lattice for the smaller circles.

The improvement stage


Experiments on 100 randomly selected orders showed that An examination of the layouts in Figure 2 and other layouts
NEST required a total of 1044 sheets while BLOCK required produced by the company, together with discussions with
a total of 1074 sheets, with BLOCK requiring less sheets the current layout designers, suggested that the perturba-
than NEST for only two out of the 100 orders. For this tions needed to improve the initial layouts to form patterns
reason, and because NEST more closely matches the manual that are consistent with current practice can broadly be
approach, we chose NEST as the basis of our initial divided into two types: those altering or adding whole rows
construction. The simplest way of applying NEST is to sort and those adding or changing circles along the vertical edges
the circles into decreasing diameter order so that the largest of the sheet. It is also apparent that very few simple moves,
diameter on each sheet is packed first. This also has the that is, moves based on just one such perturbation, are likely
advantage that circles of similar diameter will appear on the to lead to an improvement on their own. For example,
same sheet, thereby minimizing the size of the gaps between changing the size of a single row of circles will only lead to
the smaller circles. This is the strategy adopted for all the an improvement in packing density if the new type is larger.
experiments reported here. Experiments with different Nevertheless replacing a circle by a smaller type may be a
permutations of the diameters were also carried out. The good move in the long run as it may allow space to add
results showed that these random permutations increased additional circles. We therefore define a neighbourhood
computation times and failed to give any significant move as a three-stage operation.
improvement in solution quality. They were therefore
discarded in favour of the decreasing diameter option. (1) A randomly chosen row operation aimed at changing one
Layouts produced by the above procedure have two or more rows in the layout.
obvious sources of wasted space. On the earlier sheets where (2) An add operation, which attempts to add one or more
diameters are relatively large there is often space for a row of new rows to the sheet(s) involved in the row operation.
smaller circles to be placed at the top of the sheet, while the (3) A completion operation that seeks further improvement
last sheet usually contains a significant area of waste above by exhaustively working through a list of moves that
the last row packed. The procedure was therefore modified allow some aspects of the hexagonal pattern to be
to reduce this waste. Firstly, when there is not sufficient destroyed.
space to fit another row of the current circle type, i, instead The cost of a move is given as the decrease in the average
of moving immediately to a new sheet the remaining circle density over all the sheets, once all three phases have been
types are scanned for the type k of largest diameter that completed. The details of the moves allowed in each phase
could form a final row. If such a k exists then a row of type k are detailed below.
is added and the packing then continues with type i on the
new sheet. Secondly, if there is space on the final sheet we
add circles for inventory as follows. The circle type that has Row operations
the smallest surplus packed to date is chosen, and an Five potentially useful row operations were identified.
additional row of this type is added. Owing to the ordering These are
of the circles this is likely to be larger than the circle in the
previous row. For this reason, and because our objective in R1 Swap the last rows of two different sheets. This involves
forming the initial layout is to form large hexagonal blocks taking the top rows of two different sheets and
of circles, this row is not necessarily inserted into the last swapping them. In order to preserve the ordering of
sheet but is placed above the last row of circles of its own the diameters on the sheet, the swapped rows are
434 Journal of the Operational Research Society Vol. 58, No. 4

slotted into the appropriate place in the layout rather types are considered randomly without replacement, until a
than being placed along the top. The exception to this diameter that will allow an extra row to be fitted is found or
is where the diameter of the new row is larger than the the list is exhausted.
maximum diameter on the sheet. In this case, the new
row is placed along the top edge of the sheet,
effectively separating it from the nested pattern in Sheet completion
the rest of the sheet and thereby allowing the
Whether or not the add operation was successful, each of
hexagonal lattice in the rest of the sheet to be
the altered sheets is then considered for the completion
preserved. If the resulting layout exceeds the bound-
operation. This consists of a series of moves that are
aries of the sheet then the move is not executed.
considered in order, and accepted when an improvement
Otherwise, the move will have created additional space
is made. All the moves in the list are attempted whether
along the top of one of the sheets, which may be
or not an improvement has been found. The order in
sufficient for an extra row.
which the moves are considered is important and the
R2 Swap the last two rows of two different sheets. This
list is ordered so that the moves that are likely to have the
move is similar to the above except that the two top
greatest impact are considered first. The moves are described
rows are involved in the swap. This has the potential
below.
of creating twice as much space as R1, but it does not
replace it as it is more likely to be infeasible.
C1 Add a column of extra circles. Because the layouts are
R3 Replace one or two rows by a circle of different
built in a hexagonal pattern no attempt is made to
diameter. This simply replaces the top one or two
spread the layout across the width of the sheet. As the
adjacent rows by circles of a randomly selected
layout is built from the bottom left this means that
diameter. Once again the new rows are inserted in
there is often free space on the right of the sheet. This
the appropriate place to maintain the ordering of
move attempts to fill this space with a column of
diameters in the sheet. This move will make a
circles.
substantial change to the numbers of circles of each
C2 Add a column of extra circles after making additional
type, but is effective in situations, where just one sheet
space. In some cases there is not sufficient space to
has a poor utilization, and the swap moves would
execute move C1. However, if the first column is
result in a worse utilization for the remaining sheets.
replaced by circles of a smaller diameter, then the
R4 Remove the row with the biggest circles. This move
remaining circles can be shifted to the left, and
stems from the observation that when there is a sheet
sufficient space for an extra column may result.
with just one row of large circles the packing density
C3 Replace the last column by a column of larger circles.
tends to be poor, due to the gaps enforced in all other
If there is insufficient space for a new column the
rows by the hexagonal arrangement. If this row is
packing density may be increased by removing the
removed the remaining pieces can be moved closer
last column and replacing it by a column of larger
together, leaving space along the vertical edges that
circles.
could be utilized by pieces of the same or another type.
C4 Stretch the pattern. In some cases it may be better to
Note that this phase of the move includes redefining
utilize the full width of the sheet by stretching the
the horizontal spacing of the lattice according to the
pattern so that the circles are nested at an angle greater
largest remaining diameter but does not include
than 601. The effect of this will be to create extra
adding extra circles to each row as this will be
space at the top of the sheet, which may be sufficient
attempted during the completion phase.
for an additional row. This move involves stripp-
R5 Repeat the row with the biggest circles. This move is the
ing the layout of all but those pieces that conform
opposite of (R4) and is based on the observation that
to the hexagonal row layout, stretching that,
all rows apart from those with the biggest circles have
and then attempting to add an extra row, or rows of
wasted space between adjacent pieces. This move is
circles.
designed to extend that part of the stock sheet covered
C5 Filling the top right corner. Because the layout is built
by the densest packing. The new row is inserted on top
from the bottom left there is often free space in the top
of the last row with the given diameter and the rest of
right corner. If there is sufficient space to fit an
the layout is moved upwards. Any rows that exceed
extra circle then a circle is added. If not, an attempt is
the top of the sheet are removed.
made to increase the size of the circle closest to this
corner.
Add operation
In all cases, the circles considered for each move are
After each row operation, all modified sheets are subjected selected randomly without replacement from those diameters
to the add operation. This attempts to add a row. The circle that satisfy the move definition.
KA Dowsland et al—A local search approach to a circle cutting problem 435

Maintaining feasibility  Allow infeasible solutions in the solution space and repair
the final solution only.
The above moves will change the number of circles of each
 Restrict the solution space to the set of feasible solutions
diameter in the packing. This is obviously necessary in order
by disallowing infeasible moves.
to improve the packing density in a fixed set of sheets.
 Relax the definition of S to allow infeasible solutions in
However, it is possible that any search based on the
the search space but penalise them with a penalty based
unrestricted use of these moves will visit solutions that do
on the cost of repair. The final solution is then repaired
not obey the lower-bound constraints on the quantities that
physically.
need to be produced. In order to balance the conflicting
demands of maintaining feasibility while ensuring sufficient Experiments with each of these options are reported in the
flexibility to seek out good solutions a number of approaches next section.
are possible. These include

(1) Restricting the definition of the search space, S, to the Experiments


set of feasible solutions by rejecting all infeasible moves.
(2) Restricting S the set of feasible solutions by repairing A number of variants of a local search algorithm based on
infeasible solutions. the initialization approach and improvement strategies
(3) Redefining S to include infeasible solutions but penaliz- outlined above were compared empirically. For this purpose,
ing these in the evaluation function f(s). nine data sets were chosen from the company’s archives.
These data sets were used to identify the best variant, which
Each of these has its own advantages and drawbacks. was then subjected to further testing on 100 problem
Option 1 is straightforward to implement, but computa- instances. Of the initial nine problems, the smallest had a
tional effort will be wasted when evaluating infeasible moves requirement of 75 circles and the largest over 1500. The
and, more importantly, if the density of such moves is high it number of sheets used to accommodate the orders varied
may have an adverse effect on the flexibility of the search in from 2 to 20. The objective of the first set of experiments was
seeking out good-quality solutions. Option 2 can be effective to determine the usefulness of the different row operations
if a simple repair operator is available. In our case it is often within a random descent framework (ie sampling from N
possible to repair infeasible layouts by replacing larger until a member of N þ is identified). In these experiments,
circles in surplus with smaller ones for which there is a the lower-bound constraints on the quantities were relaxed.
deficit. If the smallest feasible circle is removed in each swap Each of the nine data sets was run using 10 random number
then the repair will be achieved at minimal cost. However, seeds, and continuing until 70 moves had passed without an
there are a number of potential problems. Firstly, not all improvement. (Experiments with up to 100 moves without
layouts will be repairable. Secondly, there will be a choice of improvement suggested that this was an appropriate
which circles to replace, with different choices at inter- stopping point.) Six different combinations of row moves
mediate points of the search resulting in different outcomes. were considered. These were
Thirdly, the repair will involve changing partial rows in the
(1) R1 (swap top rows of two sheets),
hexagonal lattice, thus making the definition of neighbour-
(2) R2 (swap top two rows of two sheets),
hood moves in subsequent iterations more complex. Option
(3) R1 and R2,
3 is widely used in a number of practical situations.
(4) R3 (change one or two rows on a single sheet),
However, as illustrated by a number of studies (Wright,
(5) R1, R2 and R3,
1991; Abramson and Dang, 1993) it can be very difficult to
(6) R1, R2, R3, R4 and R5 (ie all row operations).
set the penalties for binding constraints. This is particularly
problematic when the search mechanism disallows uphill In each case a move type is selected randomly, and within
moves. Too high a penalty will effectively exclude all each move all choices (ie sheets, diameters, etc) are again
infeasible solutions from the solution space, while too low selected randomly from those available. After a row move
a penalty will tend to cause the search to converge towards has been performed the row addition and completion phases
infeasible solutions. In our case we can overcome this are executed as outlined in the previous section. The first six
problem using a penalty based on the repair operator. rows of Table 1 summarize the results. Although there are
Rather than physically replacing an infeasible layout with a some anomalies, the results suggest that supersets of row
repaired one we calculate the cost of the repaired layout and moves tend to give better results than their subsets, and in
use that as the evaluation function. Where a layout cannot all cases variant 6 (ie using all row operations) performs
be repaired (eg if the largest circle is in deficit) then a high better than any of the other five combinations. This variant
penalty is allocated. was therefore used for all subsequent developments and
In view of the above discussion three approaches to experiments.
maintaining feasibility were selected for further experiment- Observation of the progress of the algorithm also showed
ation and comparison. These are that the size of the improvement varied considerably from
436 Journal of the Operational Research Society Vol. 58, No. 4

Table 1 Mean packing density over 10 runs for different neighbourhoods and search strategies
Data set 1 2 3 4 5 6 7 8 9
Sheets 3 16 5 2 5 5 20 2 12

Solutions for search without lower-bound restrictions


R1 81.70 82.21 81.60 83.10 81.47 83.07 81.10 80.72 80.36
R2 81.70 82.15 81.84 82.90 81.41 83.06 81.04 80.72 80.27
R1&R2 81.70 82.28 81.89 83.10 81.45 83.09 81.04 80.72 80.31
R3 81.70 82.44 81.99 82.90 81.82 83.11 81.46 80.90 80.38
R1,R2&R3 81.70 82.40 82.22 83.10 81.72 83.09 81.38 80.84 80.38
All 81.74 82.77 82.42 83.10 81.97 83.22 81.52 81.88 80.71
PSD—All 81.70 82.64 82.55 83.10 82.12 83.29 81.67 82.32 80.90

Solutions obeying lower bound obtained using penalty approach


Penalty 81.29 82.23 82.05 82.51 81.70 82.86 81.09 81.86 80.41

move to move, suggesting that spending time looking for repaired, and packing densities dropped by only between 0.5
better neighbours, that is, a steeper descent strategy could be and 0.8% . These results are given in the final row (labelled
beneficial. Given the size and complexity of the neighbour- Penalty) of Table 1.
hoods a true steepest descent approach, in which all As illustrated by the final row of Table 1, local search
neighbours are evaluated at each iteration, will be compu- incorporating all five row operations using probabilistic
tationally expensive. Instead, we tried a form of probabilistic steepest descent based on sampling 10 neighbours per
steepest descent (PSD) in which at each iteration 10 elements iteration and penalising violations of the lower-bound
of N are considered. If the best belongs to N þ , then it is constraints using a penalty based on the repair cost, is able
selected. Otherwise, a further 10 moves are sampled, with to produce solutions with packing densities that are close to
this process continuing until a move is selected or N is that of a human expert.
exhausted. The results are shown in row PSD, in the table. The algorithm is coded in Visual C þ þ and typical run
While this does not always show an improvement the results times on an Intel Pentium 4 2.2 GHz processor vary between
are better for six out of nine instances and equal on a further 2 and 30 s depending on the size of the problem, whereas
one. What the table does not show is that in all cases except typical man-hours required to produce manual cutting plans
for data set 1, PSD always found the best solution at least are around 10.5 h for a problem of 20 sheets (assuming
once. Therefore, probabilistic steepest descent, based on 10 approximately seven of these would need to be produced
moves per iteration, and using all five row operations was from scratch). The layouts produced by the local search also
used exclusively for the remaining experiments. conform to the required format. Figure 4 shows the initial
The remaining experiments are concerned with meeting and final solutions for one of the runs on data set 6. The
the lower bounds on the number of circles of each diameter. density of the initial solution is 76.6% while the density of
As expected using the unrestricted neighbourhood, without the final solution shown is 81.7%. This solution violates the
any penalty or repair, frequently resulted in solutions that lower-bound constraint for the third largest circle for which
violated the lower-bound constraints. The frequency of there is a shortfall of five units. This can be repaired by
feasible solutions was greater in the less-effective variants replacing five circles of the next diameter (which is in
using limited neighbourhoods, especially R1 and R2. Again, surplus). The density of the repaired layout is 81.4%.
this is as expected as these moves do not make such large In order to confirm this performance a further 100
changes in the numbers of circles of each type. Where problem instances were solved using this variant of the
solutions were infeasible, it was usually possible to repair algorithm. The mean sheet utilization using the adjusted
them using the repair operator outlined in the previous dimensions was 81.76%, which translates to 67.14% when
section. The densities achieved after repairing the final the waste due to the thickness of the cutter, the space
solution were typically 1.5–2% lower than those shown in between disks and the unuseable area around the border of
Table 1. As stated above two other approaches were tested. the sheet is taken into account. This falls within the range of
Experiments with a restricted solution space resulted in a 32–34% waste currently generated by the company. The
drop in packing densities over those in Table 1 of around amount produced for inventory also falls within the guide-
3%, suggesting that the search does require the added lines with a total of 17% of production being surplus to that
flexibility of visiting infeasible solutions. The results using ordered. For eight of the 100 orders, the surplus exceeded
the repair-based penalty function proved to be the most 30% but these were all orders requiring five or less sheets,
successful. All runs resulted in final solutions that could be and the surplus is therefore in line with current performance.
KA Dowsland et al—A local search approach to a circle cutting problem 437

of neighbourhood moves designed to perturb the layout


without destroying the underlying structure, proved to be an
effective way of meeting the requirement to produce layouts
that are similar in structure to those currently produced by a
manual solution method. An approach that allowed
solutions that violated the lower-bound constraints, but
penalized these with a penalty based on the repair costs, was
shown to perform better than limiting the search to those
solutions that obey all the constraints. The resulting layouts
closely match those produced by human experts in terms of
sheet utilization. Indeed the densities achieved suggest that
this could be a competitive approach for problems with
similar distributions of circle sizes even if there is no
constraint on the format of the layouts. (For example, the
density of layouts produced in (Huang et al, 2005), which
often involve much smaller circles than those dealt with here,
lie in the range of 80–85%.)
The solutions produced are certainly good enough to meet
our objectives (ie a back-up system to complement the
current manual approach). It was however noticeable that
the algorithm sometimes produced more circles for inventory
than the manual solutions, although the quantities involved
did not suggest that this would be a major problem. A
possible solution to this was suggested in the previous
section and a more general investigation into the relationship
between surplus production and material utilization could
make an interesting study for the future. Given the very low
Figure 4 The initial solution (left) and final solution (right) for computation times required by the algorithm (20–30 s as
a typical data set.
opposed to 10.5 h for a manual solution), it may also be
possible to make further small improvements to the packing
densities by using the local search framework as the basis
A closer examination of the remainder of the sample showed for other neighbourhood-based search methods such as
that occasionally the surplus was significantly more than simulated annealing, tabu search or GRASP, or to
that produced manually. Not surprisingly this situation incorporate further intelligence into the choices made at
arose when relatively small numbers of demanded circles each iteration rather than relying on entirely random choices
were placed on the final sheet in the initialization process. at each stage.
The manual workers would sometimes try and swap these
circles for surplus circles on the previous sheets, thus
reducing the number of sheets used by one. It would be References
possible for us to address such a situation in a similar way
and to discard the last sheet, penalizing the shortfall in the Abramson D and Dang H (1993). School timetables: a case study
using simulated annealing. In: Vidal RVV (ed). Applied
initial solution appropriately. However, given the average Simulated Annealing. LNEMS 396. Springer Verlag, Berlin,
performance of our heuristic the client deemed that this pp 104–124.
would not be necessary and we have not implemented these Beasley JE (1985). An exact two-dimensional non-guillotine cutting
changes to date. tree search procedure. Opns Res 33: 49–64.
Bennell J and Dowsland K (2001). Hybridising tabu search with
optimisation techniques for irregular stock-cutting. Mngt Sci
47: 1160–1172.
Conclusions and further developments Birgin EG, Martinez JM and Ronconi DP (2005). Optimizing the
packing of cylinders into a rectangular container: a nonlinear
This paper has focussed on the design and testing of a circle approach. Eur J Opl Res 160: 19–33.
packing algorithm for a manufacturer of sprockets. Practical Boll DW, Donovan J, Graham RL and Lubachevsky BD (2000).
considerations mean that the problem is somewhat different Improving dense packings of equal disks in a square. Electronic
J Combin 7: R46.
to those previously tackled in the literature and necessitated Burke EK, Hellier RSR, Kendall G and Whitwell G (forthcoming).
the development of a customized solution. Local search, A new bottom-left algorithm for the two-dimensional irregular
based on an initial solution of the required form and a series packing problem. Opns Res (accepted for publication).
438 Journal of the Operational Research Society Vol. 58, No. 4

Burke EK, Kendall G and Whitwell G (2004). A new placement Huang WQ, Li Y, Akeb H and Li CM (2005). Greedy algorithms
heuristic for the orthogonal stock cutting problem. Opns Res for packing unequal circles into a rectangular container. J Opl
52: 655–671. Res Soc 56: 539–548.
Chen DZ, Hu X, Huang Y and Li Y (2001). Algorithms for Huang WQ, Li Y, Jurkowiak B, Li CM and Xu RC (2003). A two-
congruent sphere packing and applications. In: Souvaine D (ed). level search strategy for packing unequal circles into a circle
Proceedings of the Seventeenth Annual Symposium on Computa- container. In: Rossi F (ed). Proceedings of the Ninth Inter-
tional Geometry, Medford, Massachusetts, United States. ACM national Conference on Principles and Practice of Constraint
Press, New York, pp 212–221. Programming (CP’03), Kinsale, Ireland. Lecture Notes in
Collins CR and Stephenson K (2003). A circle packing algorithm. Computer Science 2833. Springer Verlag, Berlin, pp 868–872.
Comput Geometry: Theory Appl 25: 233–256. Kantorovitch LV (1939, 1960). Mathematical methods of organis-
Conway JH and Sloane NJA (1992). Sphere Packings, Lattices, and ing and planning production. Mngt Sci 6: 366–422.
Groups, 2nd edn. Springer-Verlag: New York. Koebe P (1936). Kontaktprobleme der Konformen Addildung,
Correia MH, Oliveira JF and Ferreira JS (2000). Cylinder packing Abh. Sächs. Akad. Wiss. Leipzig. Math. Natur. Kl. 88: 141–164.
by simulated annealing. Pesquisa Operacional 20: 269–286. Kravitz S (1967). Packing cylinders into cylindrical containers.
Cui Y (2005). A cutting stock problem and its solution in the Math Magazine 40: 65–70.
manufacturing industry of large electric generators. Comput Lodi A, Martello S and Monaci M (2002). Two-dimensional
Opns Res 32: 1709–1721. packing problems: a survey. Eur J Opl Res 141: 241–252.
Dowsland KA (1991). Optimising the palletisation of cylinders in Nurmela KJ and Östergård PRJ (1997). Packing up to 50 Equal
cases. OR Spektrum 13: 204–212. Circles in a square. Discrete Comput Geometry 18: 111–120.
Dowsland KA, Bennell J and Dowsland W (1998). Jostling for Reeves C (1993). Modern Heuristic Techniques for Combinatorial
position—local improvement for irregular cutting patterns. Problems. Blackwell Scientific Press: Oxford, UK.
J Opl Res Soc 49: 647–658. Steinhaus H (1999). Mathematical Snapshots, 3rd edn. Dover:
Dowsland KA, Herbert E, Kendall G and Burke EK (2006). Using New York, p 202.
tree search bounds to enhance a genetic algorithm approach to Stephenson K (2003). Circle packing: a mathematical tale.
two rectangle packing problems. Eur J Opl Res 168: 390–402. Notices—Am Math Soc 50: 1376–1388.
Dowsland KA, Vaid S and Dowsland W (2002). An algorithm for Stoyan YG and Yas’kov G (2004). A mathematical model and a
polygon placement using a bottom-left strategy. Eur J Opl Res solution method for the problem of placing various-sized circles
141: 371–381. into a strip. Eur J Opl Res 156: 590–600.
Dowsland KA and Dowsland WB (1992). Packing problems. Eur J Sweeney E and Paternoster RE (1992). Cutting and packing
Opl Res 56: 2–14. problems: a categorized, application-orientated research biblio-
George JA, George JM and Lamar BW (1995). Packing different- graphy. J Opl Res Soc 43: 691–706.
sized circles into a rectangular container. Eur J Opl Res 84: Wang H, Huang W, Zhang Q and Xu D (2002). An improved
693–712. algorithm for the packing of unequal circles within a larger
Gilmore PC and Gomory RE (1961). A linear programming containing circle. Eur J Opl Res 141: 440–453.
approach to the cutting-stock problem. Opns Res 9: 849–859. Wells D (1991). The Penguin Dictionary of Curious and Interesting
Glover F and Laguna M (1997). Tabu Search. Kluwer Academic Geometry. Penguin: London, pp 30–31.
Publishers: Boston, USA. Wildemuth BM (2004). The effects of domain knowledge on search
Glover FW and Kochenberger GA (2003). Handbook of Metaheur- tactic formulation. J Am Soc Inform Sci Technol 55: 246–258.
istics. Kluwer Academic Publishers: Boston, USA. Williams R (1979). The Geometrical Foundation of Natural
Graham RL and Lubachevsky BD (1996). Repeated patterns of Structure: A Source Book of Design. Dover Publications:
dense packings of equal disks in a square. Electronic J Combin New York, pp 34–47.
3: R16. Wright MB (1991). Scheduling English cricket umpires. J Opl Res
Huang WQ, Li Y and Xu RC (2001). Local search based Soc 42: 447–452.
on a physical model for solving a circle packing problem.
In: de Sousa JP (ed). Proceedings of the fourth Metaheuristics
International Conference 2001 (MIC’2001), July 2001. Kluwer, Received March 2005;
Boston, pp 455–459. accepted December 2005 after two revisions
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.

You might also like