Parallel greedy algorithms for packing unequal circles into a strip or a rectangle. Timo Kubach, Andreas Bortfeldt und Hermann Gehring



Similar documents
The Greedy Method. Introduction. 0/1 Knapsack Problem

Calculating the high frequency transmission line parameters of power cables

Luby s Alg. for Maximal Independent Sets using Pairwise Independence

Institute of Informatics, Faculty of Business and Management, Brno University of Technology,Czech Republic

Recurrence. 1 Definitions and main statements

An Alternative Way to Measure Private Equity Performance

Module 2 LOSSLESS IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

The Development of Web Log Mining Based on Improve-K-Means Clustering Analysis

Project Networks With Mixed-Time Constraints

On the Optimal Control of a Cascade of Hydro-Electric Power Stations

An Interest-Oriented Network Evolution Mechanism for Online Communities

Joint Scheduling of Processing and Shuffle Phases in MapReduce Systems

1 Example 1: Axis-aligned rectangles

"Research Note" APPLICATION OF CHARGE SIMULATION METHOD TO ELECTRIC FIELD CALCULATION IN THE POWER CABLES *

Feature selection for intrusion detection. Slobodan Petrović NISlab, Gjøvik University College

How To Understand The Results Of The German Meris Cloud And Water Vapour Product

J. Parallel Distrib. Comput.

This circuit than can be reduced to a planar circuit

Support Vector Machines

A DATA MINING APPLICATION IN A STUDENT DATABASE

Brigid Mullany, Ph.D University of North Carolina, Charlotte

CHOLESTEROL REFERENCE METHOD LABORATORY NETWORK. Sample Stability Protocol

How Sets of Coherent Probabilities May Serve as Models for Degrees of Incoherence

SCHEDULING OF CONSTRUCTION PROJECTS BY MEANS OF EVOLUTIONARY ALGORITHMS

benefit is 2, paid if the policyholder dies within the year, and probability of death within the year is ).

What is Candidate Sampling

Software project management with GAs

Can Auto Liability Insurance Purchases Signal Risk Attitude?

Forecasting the Direction and Strength of Stock Market Movement

Logical Development Of Vogel s Approximation Method (LD-VAM): An Approach To Find Basic Feasible Solution Of Transportation Problem

Period and Deadline Selection for Schedulability in Real-Time Systems

8 Algorithm for Binary Searching in Trees

v a 1 b 1 i, a 2 b 2 i,..., a n b n i.

Data Broadcast on a Multi-System Heterogeneous Overlayed Wireless Network *

DEFINING %COMPLETE IN MICROSOFT PROJECT

Availability-Based Path Selection and Network Vulnerability Assessment

An MILP model for planning of batch plants operating in a campaign-mode

INVESTIGATION OF VEHICULAR USERS FAIRNESS IN CDMA-HDR NETWORKS

) of the Cell class is created containing information about events associated with the cell. Events are added to the Cell instance

Linear Circuits Analysis. Superposition, Thevenin /Norton Equivalent circuits

8.5 UNITARY AND HERMITIAN MATRICES. The conjugate transpose of a complex matrix A, denoted by A*, is given by

Chapter 4 ECONOMIC DISPATCH AND UNIT COMMITMENT

A hybrid global optimization algorithm based on parallel chaos optimization and outlook algorithm

1. Fundamentals of probability theory 2. Emergence of communication traffic 3. Stochastic & Markovian Processes (SP & MP)

The OC Curve of Attribute Acceptance Plans

THE DISTRIBUTION OF LOAN PORTFOLIO VALUE * Oldrich Alfons Vasicek

An Enhanced Super-Resolution System with Improved Image Registration, Automatic Image Selection, and Image Enhancement

A Simple Approach to Clustering in Excel

A DYNAMIC CRASHING METHOD FOR PROJECT MANAGEMENT USING SIMULATION-BASED OPTIMIZATION. Michael E. Kuhl Radhamés A. Tolentino-Peña

Multiple-Period Attribution: Residuals and Compounding

Efficient Project Portfolio as a tool for Enterprise Risk Management

L10: Linear discriminants analysis

Examensarbete. Rotating Workforce Scheduling. Caroline Granfeldt

Power-of-Two Policies for Single- Warehouse Multi-Retailer Inventory Systems with Order Frequency Discounts

Fault tolerance in cloud technologies presented as a service

POLYSA: A Polynomial Algorithm for Non-binary Constraint Satisfaction Problems with and

A GENETIC ALGORITHM-BASED METHOD FOR CREATING IMPARTIAL WORK SCHEDULES FOR NURSES

PSYCHOLOGICAL RESEARCH (PYC 304-C) Lecture 12

Efficient Striping Techniques for Variable Bit Rate Continuous Media File Servers æ

Section 5.4 Annuities, Present Value, and Amortization

Calculation of Sampling Weights

APPLICATION OF PROBE DATA COLLECTED VIA INFRARED BEACONS TO TRAFFIC MANEGEMENT

Number of Levels Cumulative Annual operating Income per year construction costs costs ($) ($) ($) 1 600,000 35, , ,200,000 60, ,000

Forecasting the Demand of Emergency Supplies: Based on the CBR Theory and BP Neural Network

Ants Can Schedule Software Projects

Enabling P2P One-view Multi-party Video Conferencing

Survey on Virtual Machine Placement Techniques in Cloud Computing Environment

Using Series to Analyze Financial Situations: Present Value

Formulating & Solving Integer Problems Chapter

行 政 院 國 家 科 學 委 員 會 補 助 專 題 研 究 計 畫 成 果 報 告 期 中 進 度 報 告

Politecnico di Torino. Porto Institutional Repository

An Evaluation of the Extended Logistic, Simple Logistic, and Gompertz Models for Forecasting Short Lifecycle Products and Services

Traffic-light a stress test for life insurance provisions

A Performance Analysis of View Maintenance Techniques for Data Warehouses

Statistical Methods to Develop Rating Models

Sciences Shenyang, Shenyang, China.

An ACO Algorithm for. the Graph Coloring Problem

Research Article Enhanced Two-Step Method via Relaxed Order of α-satisfactory Degrees for Fuzzy Multiobjective Optimization

Scatter search approach for solving a home care nurses routing and scheduling problem

2008/8. An integrated model for warehouse and inventory planning. Géraldine Strack and Yves Pochet

NPAR TESTS. One-Sample Chi-Square Test. Cell Specification. Observed Frequencies 1O i 6. Expected Frequencies 1EXP i 6

IMPACT ANALYSIS OF A CELLULAR PHONE

Improved SVM in Cloud Computing Information Mining

Many e-tailers providing attended home delivery, especially e-grocers, offer narrow delivery time slots to

FREQUENCY OF OCCURRENCE OF CERTAIN CHEMICAL CLASSES OF GSR FROM VARIOUS AMMUNITION TYPES

PAS: A Packet Accounting System to Limit the Effects of DoS & DDoS. Debish Fesehaye & Klara Naherstedt University of Illinois-Urbana Champaign

Ant Colony Optimization for Economic Generator Scheduling and Load Dispatch

A multi-start local search heuristic for ship scheduling a computational study

EVERY year, seasonal hurricanes threaten coastal areas.

Rate Monotonic (RM) Disadvantages of cyclic. TDDB47 Real Time Systems. Lecture 2: RM & EDF. Priority-based scheduling. States of a process

Response Coordination of Distributed Generation and Tap Changers for Voltage Support

Heuristic Static Load-Balancing Algorithm Applied to CESM

Single and multiple stage classifiers implementing logistic discrimination

Robust Design of Public Storage Warehouses. Yeming (Yale) Gong EMLYON Business School

Research Article A Time Scheduling Model of Logistics Service Supply Chain with Mass Customized Logistics Service

BERNSTEIN POLYNOMIALS

Implementation of Deutsch's Algorithm Using Mathcad

Design and Development of a Security Evaluation Platform Based on International Standards

Logistic Regression. Lecture 4: More classifiers and classes. Logistic regression. Adaboost. Optimization. Multiple class classification

Document Clustering Analysis Based on Hybrid PSO+K-means Algorithm

Transcription:

Parallel greedy algorthms for packng unequal crcles nto a strp or a rectangle Tmo Kubach, Andreas Bortfeldt und Hermann Gehrng Dskussonsbetrag Nr. 396 Jul 2006 Dskussonsbeträge der Fakultät für Wrtschaftswssenschaft der FernUnverstät n Hagen Herausgegeben vom Dekan der Fakultät

Parallel greedy algorthms for packng unequal crcles nto a strp or a rectangle Tmo Kubach, Andreas Bortfeldt and Hermann Gehrng Abstract: Gven a fnte set of crcles of dfferent szes we study the Strp Packng Problem (SPP) as well as the Knapsack Problem (KP). The SPP asks for a placement of all crcles (wthout overlap) wthn a rectangular strp of fxed wdth so that the varable length of the strp s mnmzed. The KP requres packng of a subset of the crcles n a rectangle of fxed dmensons so that the wasted area s mnmzed. To solve these problems some greedy algorthms were developed that enhance the algorthms proposed by Huang et al. [15] Furthermore, these greedy algorthms were parallelzed usng a master slave approach and followng the subtree-dstrbuton model. The resultng parallel methods were run on a dualcore 64 bt PC under Lnux. For the sx nstances ntroduced by Stoyan and Yaskov [18] compettve results n terms of soluton qualty as well as runtme effort were acheved. In order to stmulate more detaled comparsons of dfferent methods dealng wth the problems studed here two sets of 128 nstances each for the SPP and for the KP were generated. For ths several parameters of the nstances such as total number of crcles, number of dfferent crcle types, radus of smallest and of bggest crcle, respectvely, were vared n a systematc manner. Results for these new benchmark nstances are also reported and analysed. Key words: Packng, crcles, strp packng problem, knapsack problem, greedy algorthm, parallelzaton. Fakultät für Wrtschaftswssenschaft, FernUnverstät n Hagen Proflstr. 8, D-58084 Hagen, BRD Tel.: 02331/987 4433 Fax: 02331/987 4447 E-Mal: andreas.bortfeldt@fernun-hagen.de

Parallel greedy algorthms for packng unequal crcles nto a strp or a rectangle Tmo Kubach, Andreas Bortfeldt and Hermann Gehrng 1 Introducton Ths paper deals wth the two-dmensonal (2D) Strp Packng Problem (SPP) and the constraned 2D Knapsack Problem (KP) where unequal crcles are the small objects to be packed. Gven a fnte set of crcles, the SPP asks for a non-overlappng placement of all crcles wthn a rectangular strp of fxed wdth so that the varable length of the strp s mnmzed. The KP requres packng a subset of a gven set of crcles n a rectangle of fxed dmensons wthout overlap so that the wasted area s mnmzed. The KP s called constraned snce each gven crcle may be used only once. The problems descrbed are known to be NP-hard [16]. Accordng to the new typology of Cuttng and Packng (C&P) problems proposed by Wäscher et al. [20], the Knapsack Problem s called a Crcular Sngle Large Object Placement Problem (C-SLOPP) f the set of crcles s weakly heterogeneous and a Crcular Sngle Knapsack Problem (C-SKP) f the crcle set s strongly heterogeneous. The Strp Packng Problem s referred to as a Crcular Open Dmenson Problem (C-ODP) n the new typology. KP and SPP or related problems wth dfferently szed crcles occur n several ndustres (cable, glass, paper, textle, wood, etc). For example n the pulp ndustry, packng of cylnders of pulp wth dfferent dameters and equal lengths nto a shppng contaner s a common problem [7]. In ths paper, two greedy algorthms [12] for the KP and for the SPP are presented. Both methods are based on the algorthms of Huang et al. [15]. These authors adopt the dea of placng the next crcle accordng to the maxmum hole degree (MHD) rule, whch s nspred from human actvty n packng, and they apply a forward-lookng search strategy [13,14]. Here, a contnuous threshold parameter s ntroduced that serves to control the trade-off between soluton qualty and runtme. To take advantage of the latest advances n processor desgn markng the begnnng of the multcore era, the two algorthms proposed here are parallelzed usng a master slave approach and applyng the subtree-dstrbuton model. The performance of the algorthms s compared to the publshed methods usng the sx benchmark nstances from Stoyan and Yaskov [18]. In order to stmulate more detaled 1

comparsons of dfferent methods dealng wth the problems studed here two sets of 128 nstances each for the SPP and for the KP are addtonally generated. To ths end several parameters of the nstances, such as total number of crcles and number of dfferent crcle types, are vared n a systematc manner. The paper s organzed as follows. In Secton 2, formal defntons of the SPP and the KP are gven, followed by a lterature overvew n Secton 3. The algorthms developed are presented n ther sequental versons n Secton 4. The parallelzaton of the algorthms s dscussed n Secton 5, whle the new benchmark nstances for both problems are ntroduced n Secton 6. In Secton 7, the expermental results are presented, analysed and compared to related work n the lterature. Fnally, the paper s summarzed n Secton 8. 2 Problem defntons The constraned 2D Knapsack Problem wth dfferently szed crcles can be formally stated as follows. Suppose a rectangular contaner of gven wdth w and length l, and a fnte set C = {1, 2,, n } of n crcles of not necessarly equal rad r,..., 1 rn. The contaner s embedded n the 2D Eucldan plane as shown n fgure 1. The placement of a crcle s denoted by a trple p = (, x, y ) where x and y are the coordnates of the centre of. Hence, a packng plan (n short plan) P ncludng all crcles of a subset trples P = { ( x,, y ) C' C contaner area covered by crcles and s defned as d P π r = = π C' C s gven by a set of }. The densty d P of the plan P measures the fracton of the 2 2 r. C' l w l w (1) C' The problem s to determne an optmal packng plan P for a certan subset C' C,.e., maxmze d P (2) such that the followng constrants are met d = x x + y y r r j,, j C', (3) 2 2, j ( j ) ( j) j 0, ds,1= x r 0, C, (4) ds, 2= w y r 0, C, (5) ds, 3= y r 0, C, (6) d = l x r C. (7) s, 4 0, 2

Constrant (3) requres that the crcles placed n the rectangle do not overlap. Constrants (4) to (7) assure that all packed crcles le completely wthn the contaner. The constrants are llustrated by fgure 1. If a placement p satsfes constrants (3) to (7) t s sad to be a feasble placement. The feasblty of a packng plan P s analogously defned. A plan that accommodates all gven crcles n the contaner s obvously a global optmal soluton and t s called, hereafter, a successful plan. y w s 2 d,s2 s 1 (x j, y j ) s 4 d,j d,s1 (x, y ) d,s4 d,s3 Fgure 1: Constrants of the KP wth dfferently szed crcles. s 3 l x The Strp Packng Problem wth dfferently szed crcles can be formulated n a smlar way to that of the KP. Agan, a set C of n crcles and a rectangular contaner embedded n the Eucldan plane are gven, as shown n fgure 1. The contaner also called strp now has a fxed wdth w but a varable length l. The SPP requres fndng a packng plan that ncludes all crcles,.e. C' = C, n such a way that the densty d P s maxmzed and the constrants (3) to (6) are met. For each compete plan P, the densty s calculated (cf. equaton (1)) usng the length l of the rectangle envelopng P,.e., l = max( x + r). (8) C Thus, constrant (7) no longer apples and a placement (or a plan) s feasble wth regard to the SPP f only the constrants (3) to (6) are met. Of course, a packng plan wth maxmum densty guarantees a strp of mnmum length at the same tme. 3

3 Lterature overvew In the lterature most research on crcle packng problems focuses on packng equal crcles [3,6,9]. The approaches dscussed n those publcatons heavly depend on the congruence of the crcles and hence are not applcable to problems dealng wth unequal crcles. Up to the present, only a few soluton methods are known that address C&P problems wth dfferently szed crcles. George et al. [7] were faced wth a 2D Knapsack Problem wth specal stablty requrements from ndustral practce. They propose a set of packng rules that form the core of several heurstc procedures. Among them a random search procedure and a genetc algorthm (GA) [5] yelded the best results. Stoyan and Yaskov [18] dealt wth the SPP as defned n ths paper. A mathematcal model of the SPP s formulated and solved by a sophstcated analytcal soluton method combnng the dea of ncreasng the problem dmenson and a reduced gradent method [8], as well as the concept of actve nequaltes and the Newton method. Hf and M Hallah [10] presented a constructon heurstc and a genetc algorthm for solvng the dual cuttng problem of the KP defned n ths paper. As often practsed n GAs for C&P problems, a chromosome stpulates a certan order n whch the crcles are packed nto the contaner. Consequently, common operators are appled to generate offsprng. For the same cuttng problem a smulated annealng algorthm [4] was publshed by Hf et al. [11]. Neghbours of a soluton are generated by means of elementary geometrcal transformatons of dfferent types and as a further feature nfeasble solutons may occur durng the search. As the algorthms developed n ths work are based on the two greedy algorthms proposed by Huang et al. [15], these algorthms are explaned n greater detal. Frst of all, t should be noted that Huang et al. do not solve any of the optmzaton problems defned above. Instead, they consder a rectangular contaner of fxed dmensons, a set C of (generally unequal) crcles and solve the followng decson problem: Is there a feasble packng plan P placng all crcles of C (cf. Secton 2)? Although an algorthm to ths decson problem can be easly extended to cope wth the SPP, Huang et al. dd not consder ths possblty. To beneft from human experence n packng, the authors ntroduce three mportant concepts: corner placement, hole degree and the maxmum hole degree (MHD) rule. 4

A placement p = (, x, y ) s called a corner placement f t s feasble (.e., t satsfes the constrants (3) to (7)) and f crcle touches (at least) two tems. An tem may be another crcle or one of the four sdes of the rectangle. Let P be a feasble packng plan and p = (, x, y ) a corner placement belongng to P. Moreover, let u and v be the two tems (crcle or sde) touchng crcle. The hole degree λ of the corner placement p s defned as λ( p) ((, x, y )) 1 d mn = λ =. (9) r In equaton (9) r s the radus of crcle whle d mn s the mnmal dstance from crcle to other crcles n P and to the sdes of the rectangle wth the excepton of tems u and v, formally: d = mn d. (10) mn, j j { k C\{ } p P: p= ( k, x, y)} { s1, s2, s3, s4}\{ u, v} The hole degree of a corner placement ndcates how close to other crcles of a plan (and to the rectangle sdes) a gven crcle s accommodated. The hgher the mean hole degree of the placements of a packng plan the hgher the densty of the plan. Therefore, the hole degree s used to evaluate the beneft of a crcle placement n the greedy algorthms. The maxmum hole degree rule says that gven a set of possble (addtonal) corner placements, the placement wth the maxmum hole degree should be selected as the next one. The frst greedy algorthm called B1.0 conssts of a core procedure and a frame procedure: - The core procedure (B1.0C) takes a packng plan P' as nput and provdes a complete (.e. not extendable) packng plan P''. To generate P'' the followng step s repeatedly done: all possble corner placements are determned and the MHD rule s appled to mplement the next placement. A complete plan s reached f ether all n crcles are placed (success) or no further corner placements are avalable for the remanng crcles (falure). - The frame procedure generates step by step so-called ntal confguratons. An ntal confguraton conssts of two crcle placements. The frst crcle s placed at the bottom left corner (cf. fgure 1), and the second crcle touches the frst one and a sde of the rectangle or t does not touch the frst crcle but two sdes of the contaner. For each possble ntal confguraton (that plays the role of plan P'), the core procedure B1.0C s called once. If 5

B1.0C returns wth success, the frame procedure (.e. the algorthm) stops mmedately. Otherwse, the algorthm ends f there s no further untred ntal confguraton. The second greedy algorthm, denoted by B1.5, has a smlar structure to B1.0 and the frame procedure of B1.0 s transferred. Agan, the core procedure (B1.5C) transforms a packng plan P' nto a complete packng plan P'' by corner placements carred out one after another. The next corner placement p* for an nterm plan P 1 s now determned as follows: - Each corner placement p that s possble wth regard to P 1 s tentatvely mplemented and the extended plan P 1 {p} s then completed by means of the core procedure B1.0C. Ths results n a complete packng plan P 2 (p) wth a densty d P (P 2 ). - At the end, the corner placement p* s selected and fnally mplemented for whch the densty d P (P 2 ) of the assocated complete plan P 2 (p*) s maxmsed. Obvously, the core procedure B1.5C employs a forward-lookng strategy to make the selecton of corner placements more sophstcated. Whle n algorthm B1.0 the decson about the next corner placement only depends on placements mplemented earler n algorthm B1.5, the crcles not yet packed are also taken nto account. Huang et al. [15] have shown that the B1.0 s tme complexty s stands for the number of crcles). 6 On ( ) and B1.5 s s O ( n 10 ) (n 4 Developed algorthms 4.1 Algorthm B1.6_KP for the Knapsack Problem As the algorthm developed for the KP s an advancement of algorthm B1.5, t s called B1.6_KP. It has a frame procedure as shown n fgure 2. Procedure B1.6_KP(n: nstance data I, parameter τ, out: packng plan P best ) P best := ø; for (every ntal confguraton P nt ) do P res := B1.6_KP_C(I, τ, P nt ); f (d p (P res ) > d p (P best )) then P best := P res ; // stop mmedately f a global optmal soluton s reached f (P best ncludes all gven crcles) then return P best ; endf; endf; endfor; return P best ; end. Fgure 2: Frame procedure of algorthm B1.6_KP. 6

The frame procedure generates step by step dfferent ntal confguratons as defned n Secton 3. Every ntal confguraton s then extended to a complete packng plan by means of the core procedure B1.6_KP_C and the best packng plan n terms of densty s updated whenever necessary and returned at last. To lmt the search effort, only a subset of possble ntal confguratons s nvestgated. Let n df be the number of crcle types of a gven nstance (where a crcle type s gven by a radus) and let the crcle types be sorted by the radus n descendng order. For each par (, j) of crcle types (1 j n df ) at least the ntal confguraton of type A (crcle n the bottom lefthand corner, crcle j n the top rghthand corner, cf. fgure 3) s probed. Note that a crcle type can only be pared wth tself f at least two crcles of the type are avalable. If there are no more than 1000 ntal confguratons of type A, then all possble ntal confguratons of the types B and C (see fgure 3) are also tred. y w s 2 B A s 1 s 4 C bottom-left 0 s 3 l x Fgure 3: Types of ntal confguratons for the Knapsack Problem. Although the frame procedure just descrbed s smlar to those of the algorthms B1.0 and B1.5, there are some mportant dfferences: Havng been adapted to the Knapsack Problem, algorthm B1.6_KP searches for packng plans of maxmum densty nstead of focusng only on plans accommodatng all gven crcles. B1.6_KP s able to deal effcently wth strctly heterogeneous nstances (where any two crcles are unequal) as well as wth non-strctly heterogeneous nstances. In the latter case, redundant calculatons are consstently avoded only by B1.6_KP and ths apples, n partcular, to the generaton of ntal confguratons. Fnally, the generaton of ntal confguratons s governed by dfferent rules compared to B1.0 and B1.5. In fgure 4 the core procedure B1.6_KP_C of algorthm B1.6_KP s lsted. 7

A man feature of the core procedure s the control mechansm ntroduced wth the contnuous threshold parameter τ. Let p* be a possble corner placement wth maxmum hole degree λ max at a gven tme,.e., for a certan cycle of the whle-loop. If λ max exceeds the value of the threshold parameter, the crcle correspondng to p* s packed as n procedure B1.0C. Otherwse the forward-lookng strategy of procedure B1.5C s used to decde whch crcle wll be placed next. Hence, the core procedure B1.6_KP_C combnes the core procedures of the algorthms B1.0 and B1.5 and ths combnaton shows two aspects: From a formal pont of vew two algorthms are replaced and generalzed by one. If threshold τ s set to 1, procedure B1.6_KP_C behaves exactly lke B1.5C; f τ s set to a suffcently small value (e.g., to 1 (w+l)/mn r ) B1.6_KP_C proceeds as B1.0C. More mportantly, the threshold parameter allows the trade-off between soluton qualty and runtme effort to be controlled. The hgher the value of τ the hgher the packng densty that may be expected and the lower τ the faster the search wll be fnshed. However, the amount of computng tme saved by a reducton of the threshold value may only be estmated wth the help of expermental experence. Procedure B1.6_KP_C(n: nstance data I, parameter τ, nout: packng plan P) determne lst L of possble corner placements p = (, x, y ) w.r.t. (ncomplete) packng plan P and calculate the hole degrees λ(p); whle (there are corner placements n L) do select placement p* wth the maxmum hole degree λ max from L; f (λ max > τ ) then P := P υ {p*}; // mplement placement p* update lst L; else best_densty := 0; for (every corner placement p n L) do let P be a copy of P and L' be a copy of L; P := P υ {p}; // mplement placement p tentatvely update lst L'; P := B1.6_KP_C2(I, L', P ); // complete plan P f (P ncludes all gven crcles) then P := P ; return P; endf; f (d p (P ) > best_densty or d p (P ) = best_densty and λ(p) > λ(p*)) then p* = p; best_densty := d p (P ); endf; endfor; P := P υ {p*}; // mplement placement p* fnally update lst L; endf; endwhle; return P; end. Fgure 4: Core procedure B1.6_KP_C. 8

The forward-lookng strategy adopted from procedure B1.5C was enhanced by a second evaluaton crteron for placements: The hole degree s taken as a te breaker f two completed packng plans have the same densty. Procedure B1.6_KP_C2 s called repettvely by B1.6_KP_C and t concdes wth procedure B1.0C already explaned n Secton 3. For the sake of completeness, B1.6_KP_C2 s dsplayed n fgure 5. Procedure B1.6_KP_C2(n: nstance data I, lst L of corner placements, nout: packng plan P) whle (there are corner placements n L) do select placement p* wth the maxmum hole degree λ max from L; P := P υ {p*}; // mplement placement p* update lst L; endwhle; return P; end. Fgure 5: Core procedure B1.6_KP_C2. Two detals of the mplementaton should be mentoned. Each tme a new (current) best plan s dentfed t s stored mmedately on the hard dsk. Ths feature, not shown n fgure 2, serves to strengthen the relablty of the system. The second detal concerns the numercal calculatons. If a crcle s one of the touched tems of a corner placement p = (, xy, ), ts computaton requres extractng a square root. Ths may lead to dffcultes due to the lmted floatng pont accuracy of computer systems. To tackle ths problem, we use a slghtly larger 13 radus r ' r (1 + 10 ) n the computaton of the crcle s poston ( x, y) where the factor = 13 (1 + 10 ) was determned by experments. Each plan generated s checked to ensure that the constrants (3) to (7) are met and only n ths case s a plan accepted as a new best plan. Thus, B1.6_KP only provdes solutons that are consstent wth the computer's floatng pont model. To determne the tme complexty of algorthm B1.6_KP we adopt the results of Huang et al. [15]. The core procedure B1.6_KP_C proceeds ether as procedure B1.0C havng tme complexty 4 On ( ) or as procedure B1.5C that runs n On 8 ( ). Further actons n B1.6_KP_C, namely generatng lst L and computng of hole degree values as well as determnng the MHD placement, are of lower complexty. Thus B1.6_KP_C runs n ntal confguratons s bounded by the tme complexty of B1.6_KP s 8 On ( ) too. As the number of 2 On ( ) and B1.6_KP_C s called once per confguraton, 10 On ( ). 9

4.2 Algorthm B1.6_SPP for the Strp Packng Problem The algorthm proposed for the SPP s termed B1.6_SPP. It conssts of a frame procedure and two core procedures that are smlar to those of algorthm B1.6_KP. Therefore, only the man dfferences between the correspondng procedures are outlned n what follows. Agan, the frame procedure of B1.6_SPP generates ntal confguratons and a core procedure called B1.6_SPP_C tres to extend each confguraton to a complete packng plan. Now a complete plan should nclude all gven crcles and the search s for a complete plan of mnmum length. Hence, ntalzaton and update of the best plan are changed accordngly and the (current) best plan s stored together wth ts length l best. Checkng a best plan for global optmalty s omtted, snce there s no easy way to dentfy global optmal solutons to the SPP. As n the KP method, only a subset of ntal confguratons s nvestgated and an analogous rule s appled to select ntal confguratons. However, for a gven par of crcle types (, j) (r r j ) generally up to 15 types of ntal confguratons are dstngushed: - The types A and B are shown n fgure 6. Type C s analogously defned as type B but has the smaller crcle n the bottom lefthand corner. Gven a par of crcle types, ntal confguratons of types B and C are generated only f no confguraton of type A exsts. - Further confguraton types are only appled f the number of all vald confguratons (cf. (3) to (7)) of types A to C does not reach 1000. The confguraton types D to I are also llustrated n fgure 6. The remanng sx confguraton types result f the crcles of each of the confguraton types D to I change ther postons. y w A F B s 2 E s 1 G H bottom-left 0 I D s 3 x Fgure 6: Types of ntal confguratons for the Strp Packng Problem. 10

In the core procedure B1.6_SPP_C, a lst L of possble corner placements s suppled frst, as n B1.6_KP_C, but as there s no length gven for the SPP, no sde s4 (cf. fgure 1) can be consdered ether as a possbly touched tem of a corner placement or n the computaton of hole degree values. Moreover, no corner placement touchng or overlappng the lne x = l best s accepted for lst L, snce after such a placement the current best soluton cannot be mproved anymore. The features explaned above not only affect the generaton of lst L but also ts later updates. Startng wth an ntal confguraton, B1.6_SPP_C tres to pack all n gven crcles. Usng threshold parameter τ, the next placement taken from the non empty lst L s ether the one wth maxmum hole degree or t s stpulated by a modfed verson of procedure B1.5C (cf. fgure 4). However, ths process s fnshed (at the latest) after n 2 crcles have been packed. As the computatonal effort s neglgble, the last two crcles are placed afterwards choosng the best exstng par of placements n terms of total used strp length. As mentoned above, lst L s only flled by corner placements that stll allow a new best soluton to be obtaned. Thus, t may be that L becomes empty before n 2 crcles are placed. In ths case, a new best soluton s out of reach and, for the gven ntal confguraton, B1.6_SPP_C termnates wth an ncomplete plan that s assgned a suffcently large pseudo length. A forward-lookng strategy s mplemented agan by means of a second core procedure termed B1.6_SPP_C2. Dfferent to the correspondng procedure B1.6_KP_C2, ths core procedure tres to pack all gven crcles (.e., packng all crcles s not crossed by a fxed contaner length) and the specal handlng of the last two crcles s also adopted from B1.6_SPP_C. In B1.6_SPP_C2 the calculaton of placements s prematurely aborted f an mprovement to the current best plan among all complete plans derved from a fxed partal plan P (cf. fgures 4 and 5) s no longer possble. It s easy to see that B1.6_SPP doesn t dffer from B1.6_KP n terms of worst case tme complexty. So B1.6_SPP s tme complexty s also 10 On ( ). 11

5 Parallelzaton of the algorthms B1.6_KP and B1.6_SPP sequentally check a (n most cases large) number of ntal confguratons. Intal confguratons are checked ndependently of each other. Hence, t s possble to check them n parallel, leadng to a runtme reducton whle the soluton qualty s not affected. The parallelzaton appled here can be descrbed n detal as follows: - A shared memory master-slave approach was chosen where the communcaton between processes s kept to a mnmum and only a lttle control effort accounts for the master process. Therefore, the master s also nvolved n checkng ntal confguratons. - The shared varables allocated by the master process are prmarly used to store the nput data (flename of nstance, threshold parameter) and the (current) best densty (KP) or best length (SPP). The communcaton between the processes s done asynchronously, as each process decdes on ts own at whch moment shared varables are read or modfed. - The master process as well as the n SP slave processes check ntal confguratons; n the tests performed here on dualcore PCs only one slave process exsts besdes the master process ( n = 1). To avod multple examnatons of ntal confguratons, the processes mark SP checked placements by ncreasng a shared counter varable that s ntalzed by the master and ndcates the next ntal confguraton to be checked. A new best plan s mmedately stored on hard dsk, overwrtng the old best plan and the shared varable, and the best objectve functon value s also updated. - When all ntal confguratons have been checked, the master process smultaneously termnates all processes. As t s possble to fnd a successful plan when solvng the KP, each process of B1.6_KP has the possblty of preparng all other processes for termnaton n case of success, whle the termnaton sgnal s always sent by the master process. Ths feature s not mplemented n B1.6_SPP, as there s no comparable stoppng crteron. The algorthms proposed are constructon methods by ther very nature nstead of local search algorthms. Hence, t s not surprsng that the parallelsm appled here does not fall nto one of the three categores ntroduced by Cranc and Toulouse [2] for parallel meta-heurstcs. However, the algorthms perform a degenerated tree search (wth more than one successor only 12

at the frst two tree levels). Correspondngly, the parallelzaton follows the subtree-dstrbuton model, a well-known approach for parallelzng branch-and-bound methods (cf. [2]). 6 New benchmark nstances New benchmark nstances for the SPP and KP wth unequal crcles are ntroduced n a smlar fashon as proposed n [1] for the 2D SPP wth rectangular tems. To generate new nstances for the SPP (referred to as KBG_SPP), n a frst step, four factors (or nstance parameters) were dentfed that probably affect the accessble soluton qualty and runtme of correspondng soluton methods. These factors are: total number of crcles n, number of dfferent crcle types n, radus of smallest crcle mn, df r and radus of bggest crcle r max. Here, an equal dstrbuton for the rad s appled, so the average radus s automatcally vared by the varaton of r mn and r max as well as the average rato of crcles rad and strp wdth. In step 2, multple values for each of the factors were fxed. To cover a broad spectrum of nstances, dfferent values of the factors were determned as shown n table 1. The strp s wdth was kept constant for all nstances ( w = 10 ). Table 1: Values for the nstances parameters. n n df r r mn max 25 n w/ 8 w/ 4 50 n / 2 w/ 16 w/ 6 75 n / 5 w / 30 w / 10 100 n / 10 Fnally, n step 3 just one problem nstance was generated at random for each admssble combnaton of the factor values. Ths procedure resulted n a total number of 4 * 4 * (3 * 3-1) = 128 nstances. Note that the combnaton r mn = w/ 8 and r max = w/ 10 s nvald ( r mn > rmax ). To obtan benchmark nstances for the KP (referred to as KBG_KP) the KBG_SPP nstances were modfed only by addng a certan contaner length. The lengths were defned n such a 5 way that the area of the resultng rectangle s a certan multple (or fracton) f 3,1, } of the sum of all crcles areas belongng to the nstance: KP { 4 4 n 2 rect = = KP π = KP crcles = 1 A w l f r f A. (11) 13

The ntenton was not to generate more nstances for the KP than for the SPP. Therefore, the three selected values for f KP were dstrbuted alternately to the KBG_SPP nstances. Note that only KP nstances generated wth factor f KP = 5/4 allow for successful plans. The new benchmark nstances serve to enable more meanngful and more relable comparsons of soluton methods for the SPP and KP wth unequal crcles. Moreover, these nstances can be used for explorng the nfluence of nstance features, such as the heterogenety of the crcle stock, on the soluton qualty acheved by heurstcs. Both sets of benchmark nstances are avalable from http://www.fernun-hagen.de/winf. 7 Expermental results and analyss Stoyan and Yaskov [18] ntroduced sx benchmark nstances for the SPP (nstances SY_SPP). These nstances were later modfed by addng the strp lengths acheved by Stoyan and Yaskov as contaner lengths n order to supply sx KP nstances (nstances SY_KP). Further benchmark nstances for the KP (called SYH_KP nstances hereafter) were ntroduced by Huang et al. [15]: the SY_SPP nstances were handled as decson problems and the mnmum lengths for whch successful plans were acheved usng algorthm B1.5 were added to these nstances. The algorthm B1.6_KP was tested on the SY_KP, SYH_KP as well as on the KBG_KP nstances. Algorthm B1.6_SPP was tested usng the SY_SPP and the KBG_SPP nstances. Both of the algorthms were coded n C. The tests were run on dentcal PCs usng SUSE Lnux 10.0 operatng system (Lnux kernel 2.6.13) wth an AMD Athlon64 X2 3800+ (dual core) processor runnng at 2200MHz (overclocked) and 512MB RAM each. For both algorthms, B1.6_KP and B1.6_SPP, 14 dfferent threshold values were explored: 1000, 1, 0.5, 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, and 1.0. For value τ = 1000 both of our algorthms correspond to method B1.0, and for value τ = 1, they correspond to B1.5 (cf. Secton 4.1). B1.6_SPP yelds, on average, almost the same soluton qualty for τ = 0. 8 as for τ = 1 n about one thrd (37%) of the runtme. τ = 0. 8 seems to be a good choce for B1.6_KP, too, as once agan a slghtly worse soluton qualty s yelded n much less tme (42%) compared to τ = 1. As a consequence of these observatons, the results presented n the followng subsectons were prmarly calculated for τ = 0. 8. 14

The followng report on the numercal experments s arranged n two parts. Frst the results for the new benchmark nstances are presented and analyzed. Next, the proposed algorthms are compared to other methods from the lterature. For unformty reasons, the soluton qualty acheved for SPP nstances s also measured n terms of denstes. Run tmes are gven n seconds throughout. 7.1 Results and analyss for the new benchmark nstances For an analyss of the nfluence of dfferent factors on runtme and soluton qualty, the results obtaned wth B1.6_KP( τ = 0. 8 ) and B1.6_SPP( τ = 0. 8 ) were averaged over groups of nstances wth equal values of nstance parameters (see http://www.fernun-hagen.de/winf). Table 2 shows the results for groups of KBG_KP nstances wth equal values for n and n df. n n d (%) t ( ) df avg, fal avg, fal s t avg, suc ( s) q d (%) (s) suc avg t avg 25 25 81.264 52 0.11 2/2 80.949 39 12 79.999 3.8 1.1 3/3 80.002 2.78 5 79.190 0.39 0/3 79.190 0.39 2 72.117 0.02 0/2 72.117 0.02 50 50 84.108 1664 14.3 3/3 82.565 1046 25 83.660 632 0.31 2/3 82.747 474 10 83.016 26.7 <0.01 2/2 82.263 19.5 5 79.475 2.5 <0.01 2/3 79.606 1.9 75 75 85.913 17894 9294 3/3 83.696 14669 37 84.671 10346 <0.01 2/2 83.504 7760 15 83.433 342 0.1 3/3 82.145 214 7 82.854 18.9 0.01 3/3 81.785 11.8 100 100 85.092 287372 0.02 2/2 83.820 215529 50 84.891 16697 2125 3/3 83.056 11232 20 83.824 1888 0.25 2/3 82.870 1416 10 83.464 197 <0.01 2/2 82.598 148 Table 2: Averaged results for groups of KBG_KP nstances wth equal n and d avg, fal and avg, fal n df values. t specfy the average densty and runtme for nstances for whch no successful plan was acheved, whle t, ndcates the average runtme for nstances for avg suc whch a successful plan was found. q suc gves the rato of the number of nstances per group for whch a successful plan was found and the number of nstances per group for whch a successful plan could exst (.e. f KP = 1. 25 ). The average densty d avg and runtme t avg consder all nstances per group. The followng tendences can be dentfed: 15

- The average densty d avg ncreases generally wth the number of crcle types n df for constant n and wth the total number of crcles n for constant n df. The frst trend seems plausble, as a larger heterogenety of crcles allows for a better nterlockng of the crcles and, furthermore, yelds a larger number of possble corner placements durng the whole process of creatng a plan. Moreover, ths trend follows a theoretcal predcton statng that the mnmal possble waste of a plan decreases wth ncreasng number of crcle types (cf. [19], pp. 71 73). For nstances wth a larger total number of crcles, the fracton of crcles touchng one of the sdes s lower. As the losses n covered area are generally larger for crcles touchng the contaner than for crcles only touchng crcles, the second trend seems plausble, too. Note that the area of the contaner ncreases wth ncreasng n (cf. Secton 6). - The average runtme t avg ncreases when n df s ncreased for constant n values, as more ntal confguratons have to be checked and the lst of possble placements has more elements leadng also to larger numbers of possble corner placements. Hence, one would expect an ncrease of t avg wth ncreasng n and for constant n df, whch was ndeed observed. - Due to the way the benchmark nstances were generated, there are nstances for whch successful plans can be found (cf. Secton 6). If a successful plan s found, the algorthm stops mmedately and no further ntal confguratons are checked. When solvng the SPP, all possble ntal confguratons are checked. For a better comparson between KP and SPP results, the densty and runtme are reported for KBG_KP nstances for whch the algorthm ddn t fnd a successful plan (and hence checked all possble ntal confguratons). The average tmes for fndng a successful plan shown for the purpose of future comparsons. t, are of less sgnfcance and prmarly avg suc - A comparson of the average runtmes for n df = n and n df = n / 10 for equal n values ndcates that the speedup acheved wth the avodance of redundancy n corner placements (ntal confguratons, lst elements) s probably n the range of 1000. For the KBG_SPP nstances no successful plans exst and so only the averaged densty and the averaged runtme are dsplayed. Table 3 shows the results for groups of KBG_SPP nstances wth equal values for n and n df. 16

The average densty d avg ncreases wth ncreasng n df for constant n (except for n df {10,20}, n = 100 ) and wth ncreasng n for constant n df n a smlar way and for the same reasons as for B1.6_KP. The average runtme ncreases monotoncally wth ncreasng n df at constant n, whch can be explaned n the same way as for B1.6_KP. t avg also ncreases wth ncreasng n at constant n df, whch can smply be explaned by the larger number of placements to be performed for each ntal confguraton (recall all crcles have to be placed when solvng the SPP). The speedup acheved wth the avodance of redundancy n corner placements s n the same range as for the KBG_KP nstances. n 25 50 75 100 n d (%) (s) df avg t avg 25 81.763 36 12 81.599 3.89 5 78.941 0.25 2 76.678 0.01 50 83.747 1387 25 83.254 367 10 82.691 17.7 5 80.390 1.9 75 84.420 19913 37 84.212 4483 15 82.989 224 7 82.148 13.2 100 84.689 132786 50 84.242 12680 20 83.281 1201 10 83.577 103 Table 3: Averaged results for groups of KBG_SPP nstances wth equal n and n df values. The runtme effort of the parallel versons of both of the algorthms s reduced to 52% compared to the sequental versons (the correspondng speedup factor s 93%). 7.2 Comparsons to other algorthms Table 4 shows the comparson of the closely related algorthms B1.6_KP and B1.5 for the SYH_KP nstances. The man parameters n, n df successful plan d are also ncluded n the table., l Huang of the nstances and the densty of a 17

Snce B1.5 s only able to solve decson problems, the comparson of the runtmes for fndng successful plans s the only way to compare the algorthms. Although B1.6_KP s more general than B1.5 (cf. 4.1) and the lengths gven n table 4 are the best ones found for B1.5, B1.6_KP s capable of fndng successful plans for each SYH_KP nstance. t B1. 5 and t B1.6 _ KP, τ = 0. 8 ndcate the runtmes B1.5 and B1.6_KP( τ = 0. 8 ) need to fnd a successful plan, respectvely. Due to the close relaton between B1.5 and B1.6_KP( τ = 1) caused by the nvarable use of the forward-lookng strategy (cf. 4.1), t 1.6 _, = 1 s also dsplayed. The speedup factor B1.5 / t B 1.6 _ KP, τ = 0.8 B KP τ t shows that B1.6_KP( τ = 0. 8 ) s at least 130 tmes and up to about 1000 tmes faster than B1.5 for the SYH_KP nstances. When the dfference n performance between Huang et al. s computer (AMD AthlonXP 2000+, 256MB RAM) and the PCs used here s taken nto account (approxmately a factor of three accordng to Dhrystone benchmarks [17]), B1.6_KP( τ = 1) s between 25 and 62 tmes faster than B1.5. Ths effect can only be explaned by a better mplementaton, as both algorthms do almost the same thngs and nether the threshold concept nor the avodance of redundancy accordng to rather homogeneous nstances leads to an advantage for B1.6_KP. For τ = 0. 8 the speedup s between 43 and 337 when the dfference n machne performance s taken nto account. I SYH_KP1 SYH_KP2 SYH_KP3 SYH_KP4 SYH_KP5 SYH_KP6 n ; n df 30;30 20;20 25;25 35;35 100;98 100;99 l Huang 17.291 14.535 14.470 23.555 36.327 36.857 d (%) 84.148 83.660 84.545 84.514 86.113 86.237 t B ) 1628 396 1385 6654 81199 47085 t 1.5( s B 1.6 _ KP = s, τ 1( ) 21.17 2.12 13.55 121.39 641.88 489.94 t 77 187 102 55 127 96 t B1.5 / t B 1.6 _ KP, τ = 1, τ 0.8( ) 7.21 2.91 10.64 20.39 80.34 144.33 B 1.6 _ KP = s t 226 136 130 326 1011 326 B1.5 / t B 1.6 _ KP, τ = 0.8 Table 4: Comparson of runtmes of B1.5 and B1.6_KP for fndng successful plans for the SYH_KP nstances. In table 5 B1.6_KP( τ = 0. 8 ) s compared to algorthms solvng the Knapsack Problem for the SY_KP nstances whose lengths (whch dffer from the ones shown n table 4) are also shown. d x and t x represent the acheved densty and the requred runtme for the dfferent algorthms 18

x. Denstes wrtten n bold letters ndcate that a successful plan was found and x = ( d B1.6 _ KP, τ = 0. 8 d x ) d x s the gan obtaned by B1.6_KP( = 0. 8 / Besdes B1.6_KP( τ = 0. 8 ), results are shown for the followng methods: - the smulated annealng algorthm (SA) by Hf et al. [11], τ ) over algorthm x. - the constructon heurstc (CH) and the genetc algorthm (GA-BH) by Hf and M Hallah [10], who used an Intel Pentum III 733MHz PC for ther tests, - the greedy algorthms B1.0 and B1.5 by Huang et al. [15]; note that results are only avalable for these algorthms f they were able to solve the related decson problem. I SY_KP1 SY_KP2 SY_KP3 SY_KP4 SY_KP5 SY_KP6 l SY 17.491 14.895 14.930 24.355 38.047 38.647 d SA (%) 74.357 69.908 65.385 71.796 80.208 79.453 SA (%) 11.87 16.78 25.32 13.85 2.51 3.51 d (%) 79.582 77.535 79.756 80.307 82.220 82.042 CH (%) 4.53 5.29 2.74 1.78 0.24 CH d (%) 80.960 79.846 81.898 80.549 82.220 82.243 GA BH (%) 2.75 2.24 0.05 1.48 GA BH d B1.0 (%) 81.638 81.940 81.738 82.220 82.243 t B ) <1 <1 3 2 4 1.0( s d B1.5 (%) 83.186 81.638 81.940 81.738 82.220 82.243 t B ) 186 7 1 2 2 2 1.5( s d 83.186 81.638 81.940 81.738 82.220 82.243 t B1.6 _ KP, τ = 0.8 (%), τ 0.8( ) 1.99 0.04 0.01 0.22 0.01 0.01 B 1.6 _ KP = s Table 5: Comparson of methods SA, CH, GA-BH, B1.0, B1.5 and B1.6_KP for the SY_KP nstances. Accordng to the results obtaned for B1.5 and B1.6_KP, successful plans can be found for all the SY_KP nstances derved from Stoyan and Yaskov s SPP results [18]. B1.0 calculates successful plans for all nstances except for SY_KP1. GA-BH proves to be the best of the algorthms (besdes B1.6_KP) dealng wth the KP as defned n ths paper. The soluton qualty acheved by the other methods s consderably worse. Lookng at the runtme effort, B1.6_KP s once agan sgnfcantly faster than B1.5 and B1.0. If the dfference n machne 19

performance s consdered, B1.6_KP s about two orders of magntude faster than CH and GA- BH. The comparson of algorthm B1.6_SPP( τ = 0. 8 ) wth Stoyan and Yaskov s algorthm SY [18] by means of the nstances SY_SPP s shown n table 6. For both methods and each nstance the acheved length (l) and the correspondng densty (d) are dsplayed, whle the runtmes (t) are only avalable for B1.6_SPP. The gan ( SY ) of B1.6_SPP( τ = 0. 8 ) over SY s defned as before n table 5. I SY_SPP1 SY_SPP2 SY_SPP3 SY_SPP4 SY_SPP5 SY_SPP6 l SY 17.491 14.895 14.930 24.355 38.047 38.647 d (%) 83.186 81.638 81.940 81.738 82.220 82.243 SY (%) 1.42 2.47 3.20 2.69 6.10 6.02 SY l 17.247 14.536 14.467 23.717 35.859 36.452 B1.6 _ SPP, τ = 0.8 d 84.365 83.654 84.565 83.938 87.236 87.196 t B1.6 _ SPP, τ = 0.8 (%), τ 0.8( ) 72 3.4 15.2 193 86679 116273 B 1.6 _ SPP = s Table 6: Comparson of the soluton qualty of methods SY and B1.6_SPP for the SY_SPP nstances. The gan values show that B1.6_SPP delvers better solutons than SY for all sx nstances. Especally for the nstances wth 100 crcles, B1.6_SPP produces sgnfcantly better solutons ( > 6% ). The best lengths acheved by algorthm B1.5 are ndcated n table 4 (cf. row l). SY Comparng them to the lengths gven n table 6 for B1.6_SPP( τ = 0. 8 ) demonstrates that the latter method generates better SPP solutons except for SY_SPP2 and SY_SPP4. In addton, for the frst fve SY_SPP nstances, B1.6_SPP solves the optmzaton problem n less or comparable tme than B1.5 needs to solve the dedcated decson problem. Moreover, for the threshold value τ = 1, B1.6_SPP produces better solutons than B1.5 for all SY_SPP nstances (see http://www.fernun-hagen.de/winf). Fgure 7 shows the best plan obtaned by B1.6_SPP( τ = 0. 8 ) for SY_SPP5. 20

Fgure 7: Soluton for the nstance SY_SPP5, B1.6_SPP( τ = 0. 8 ), d = 87.2364%. 8 Summary Ths paper presents two greedy algorthms for the Knapsack Problem and the Strp Packng Problem, each wth unequal crcles. Both algorthms are derved from the methods B1.0 und B1.5 put forward by Huang et al. [15] whch, however, only address the correspondng decson problem. Important enhancements to the new algorthms, called B1.6_KP and B1.6_SPP, are dedcated to controllng the trade-off between soluton qualty and runtme effort, to select sutable sets of ntal confguratons for constructng complete solutons, and to avod redundancy n handlng of crcle placements. Fnally, the greedy algorthms are parallelzed usng a shared memory master-slave approach to nvestgate ntal confguratons smultaneously accordng to the parallelzaton model of subtree-dstrbuton. A comparson test was carred out that consders practcally all exstng methods for the crcular KP and SPP, respectvely, and that s based on the SPP benchmark nstances from Stoyan and Yaskov [18] and the KP nstances derved from them. Both the KP algorthm and the SPP algorthm acheved the best results n terms of soluton qualty as well as runtme effort. In partcular, the fndngs reached by the methods B1.0 and B1.5 were consderably mproved, e.g., n the calculaton of the SYH_KP nstances speedup factors between 43 and 337 could be acheved. Furthermore, 128 new benchmark nstances each for the crcular KP and for the crcular SPP were ntroduced to enable more meanngful and relable comparsons of soluton methods. Frst results for the new nstances generated by B1.6_KP and B1.6_SPP reveal the usefulness of the enhancements mentoned above ncludng the parallelzaton. In addton, the results evnce 21

some nterestng correlatons between nstance parameter values and the acheved soluton qualty. It s ntended to address the three-dmensonal KP and SPP wth unequal spheres n the near future. References [1] Bortfeldt A and Gehrng H: New Large Benchmark Instances for the Two-Dmensonal Strp Packng Problem wth Rectangular Peces. Proceedngs of the 39 th Annual Hawa Internatonal Conference of System Scences (HICCS'06) Track 2, p. 30b, 2006. [2] Cranc TG and Toulouse M: Parallel strateges for meta-heurstcs. In Glover F and Kochenberger G (Eds.): State-of-the-Art handbook n metaheurstcs, 475 513, Kluwer Academc Publshers, Norwell, 2003. [3] Dowsland KA: Palletsaton of cylnders n cases. OR Spektrum 13: 171 172, 1991. [4] Dowsland KA: Smulated Annealng. In: Reeves, CR (Ed.): Modern Heurstc Technques for Combnatoral Problems, McGraw-Hll, London, 20 69, 1995. [5] Falkenauer E: Genetc Algorthms and Groupng Problems, John Wley & Sons, Chchester, 1998. [6] Fraser HJ and George JA: Integrated contaner loadng software for pulp and paper ndustry. European Journal of Operatonal Research 77: 466 474, 1994. [7] George JA, George JM and Lamer BW: Packng dfferent-szed crcles nto a rectangular contaner. European Journal of Operatonal Research 84: 693 712, 1995. [8] Gll PE, Murray W and Wrght MH: Practcal Optmzaton. Academc Press, 1981. [9] Graham RL and Lubachevsky BD: Repeated patterns of dense packngs of equal dsks n a square. Electronc Journal of Combnatorcs 3, Report No. 16, 1996. [10] Hf M and M Hallah R: Approxmate algorthms for constraned crcular cuttng problems. Computers and Operatons Research 31: 675 694, 2004. [11] Hf M, Paschos VTh and Zssmopoulos VA: Smulated annealng approach for the crcular cuttng problem. European Journal of Operatonal Research 159: 430 448, 2004. [12] Horowtz E and Sahn S: Fundamentals of Computer Algorthms. Ptman, London, 1978. 22

[13] Huang WQ, L Y, Gérard S, L CM and Xu RC: A Learnng From Human heurstc for solvng unequal crcle packng problem. In: Hao JK and Lu BD (eds) Proceedngs of the Frst Internatonal Workshop on Heurstcs, Bejng, Chna. Tsnghua Unversty, Bejng, Chna, 39 45, 2002. [14] Huang WQ, L Y, Jurkowak B and L CM : A two-level search strategy for packng unequal crcles nto a crcle contaner. In: Francesca R (ed) Proceedngs of Prncples and Practce of Constrant Programmng CP2003, Knsale, Ireland. Lecture Notes n Computer Scence, Vol 2833. Sprnger, Berln, 868 872, 2003. [15] Huang WQ, L Y, Akeb H and L CM: Greedy algorthms for packng unequal crcles nto a rectangular contaner, Journal of the Operatonal Research Socety 56: 539 548, 2005. [16] Lenstra JK and Rnnooy Kan AHG: Complexty of packng, coverng, and parttonng problems. In: Schrjver A (ed): Packng and Coverng n Combnatorcs. Mathematsch Centrum, Amsterdam, 275 291, 1979. [17] SS Sandra 2005 benchmark sute, SSoftware, http://www.ssoftware.net, 2005. [18] Stoyan Yu G and Yaskov G: A mathematcal model and a soluton method for the problem of placng varous-szed crcles nto a strp. European Journal of Operatonal Research 156: 590 600, 2004. [19] Toth FJ: Lagerungen n der Ebene, auf der Kugel und m Raum. Sprnger, Berln, 1953. [20] Wäscher G, Haußner H and Schumann H: An Improved Typology of Cuttng and Packng Problems, Workng Paper No. 24, Faculty of Economcs and Management, Otto von Guercke Unversty, Magdeburg, 2005. 23