Transcript
Page 1: Optimization of a high-speed placement machine using tabu search algorithms

Annals of Operations Research 96 (2000) 125–147 125

Optimization of a high-speed placement machine usingtabu search algorithms

Peter Csaszar a,∗, Thomas M. Tirpak a and Peter C. Nelson b

a Motorola Advanced Technology Center, Motorola, Inc., Schaumburg, IL 60196-1078, USAE-mail: [email protected]

b Artificial Intelligence Laboratory, Department of Electrical Engineering and Computer Science(M/C 154), University of Illinois at Chicago, 851 South Morgan Street, Chicago, IL 60607-7053, USA

Combinatorial optimization represents a wide range of real-life manufacturing optimiza-tion problems. Due to the high computational complexity, and the usually high number ofvariables, the solution of these problems imposes considerable challenges.

This paper presents a tabu search approach to a combinatorial optimization problem, inwhich the objective is to maximize the production throughput of a high-speed automatedplacement machine. Tabu search is a modern heuristic technique widely employed to copewith large search spaces, for which classical search methods would not provide satisfactorysolutions in a reasonable amount of time. The developed TS strategies are tailored to addressthe different issues caused by the modular structure of the machine.

Keywords: combinatorial optimization, tabu search, manufacturing optimization, placementmachines

1. Introduction

Electronics manufacturing companies face a highly competitive market, in whichadopting new technologies to cut production costs, while still maintaining high quality,becomes a crucial aspect in determining profitability. The majority of electronics prod-ucts involves printed wiring board (PWB) assembly, in which electronic componentsare placed onto circuit boards in an assembly line. The older through-hole method-ology has been essentially replaced by surface mount technology (SMT). Because ofthe reduced size of the electronic components or parts, increased assembly precisionbecame necessary. Studies conducted on SMT assembly lines [26] have shown that,considering the complete SMT production process, the bottleneck occurs most oftenin the placement phase. These facts explain why small parts placement has becomethe primary area for automation. Optimizing the operation of automated placementmachines is, therefore, a key issue in increasing the throughput and cost-effectivenessof the entire SMT production line.

This paper focuses on developing an optimization method for the family of mod-ular high-speed automated SMT placement machines. The formulated optimization

∗ Corresponding author.

J.C. Baltzer AG, Science Publishers

Page 2: Optimization of a high-speed placement machine using tabu search algorithms

126 P. Csaszar et al. / Optimization of a high-speed placement machine

problem can be shown to be NP-complete; therefore, a modern heuristic algorithm,namely “tabu search” (TS) was selected, with special strategies to address the particularstructure of the placement machines.

Section 2 gives an introduction to the optimization of chip shooters, and a reviewof related literature. Section 3 describes the particular model of placement machinefor our study, while section 4 presents the formulated optimization problem and itspartitioning into two subproblems. The search problem based on the optimizationproblem is established is section 5. Section 6 describes the TS optimizer, explainingthe development and mechanism of the proposed tabu strategies. The experimentalresults are provided in section 7. Finally, section 8 gives a brief conclusion, anddiscusses opportunities for improvement and future applications.

2. Problem statement

This section first gives an introduction to the structure of placement machines,then discusses how their productivity can be increased. This is followed by a summaryof publications in the field of manufacturing optimization, with special emphasis onchip shooters.

Many different models of automated placement machines have been developedfor the electronics industry to perform a variety of assembly operations that differ interms of board size, part geometry, production quantity/throughput requirements, etc.All machines, however, share a common structure with the following three major com-ponents. (For an exhaustive and detailed classification of contemporary chip shooterssee [19].)

• A feeder array, which may be divided into separate feeder banks. The feeder arraymay be movable or fixed, and is equipped with different types of feeder devices(feeders for short). Each feeder holds a large number of identical electronic parts.

• A placing component, which contains a nozzle or a group of nozzles, capable ofpicking a part from the feeder, and placing it on the PWB. The nozzles may beassembled on a rotating turret, or a positionable head. The characteristics of thehead also vary in terms of the number of installed nozzles (one or more), thepossibility of run-time nozzle changeover (supported or not), and the positioningmachinery (gantry, robotic arm, etc.).

• A vision system, which determines the picked part’s orientation and exact positionon the nozzle. The inherent imprecision of the picking process can then be correctedwhen the part is placed.

• A board support mechanism, on which the boards are affixed during part place-ment. This can be a worktable (fixed board), a conveyor (one-dimensional boardmovement) or an X-Y table (two-dimensional board movement).

Page 3: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 127

Machines can have multiple instances of the components listed above, providinga degree of parallelism to improve the production throughput. The precise structureof the machines in our study is detailed in section 3.

The primary goal of optimization for every machine is to minimize the “cycletime”, the time elapsed between two consecutive board completions. This can beachieved in the following ways:

• Minimizing the time of each placement cycle, i.e., the time for picking a part fromthe feeder and placing it on the board.

• Minimizing the time required by board transport, fiducial mark checking and otheroff-cycle activities.

• Minimizing the occurrence of occasional non-productive events taking a relativelylong time, such as feeder replenishment, nozzle changeover (if applicable), etc.

• Maximizing the machine’s parallel operation (if applicable).

A great amount of work has been done with simulation and optimization forautomated placement machines. The framework of the problem is well stated in thepapers by McGinnis et al. [18] and Ammons et al. [1]. In their classical paper, Balland Magazine [2] developed an algorithm for optimizing the auto-insertion processof a single pick-up head placement machine with a stationary board and feeder. Theproblem they formulated to model the insertion operations is equivalent to the directedpostman problem. A plethora of different optimization approaches for different ma-chines has been developed. Leipala and Nevalainen [16] investigated a single headsequential placement machine with a moving feeder carriage and an X-Y table. Theyfound that the problem can be broken into two subproblems: an asymmetric travel-ing salesman problem (TSP) representing the insertion sequence optimization, and aquadratic assignment problem (QAP) regarding the feeder allocation. The heuristicapproach applied does not guarantee optimality, but fairly good suboptimal solutions.Crama et al. [4] worked on an entire line of placement machines operating concurrently,and found a hierarchical approach to the solution by dividing the whole problem intosimpler subproblems, which are solved separately. The machine in Grotzinger’s paper[14] is a system with dual heads on a fixed length arm and two component deliverycarriers on either side of the worktable. Here the dual delivery system causes diffi-culties resulting in several nonlinearities in the formulation. The method presented inthe paper begins with linearization, after which the result is solved as a mixed integerprogramming problem.

Foulds and Hamacher [8] identified the optimal bin locations in order to determinethe best parts insertion sequence for the machine of their study. The bin locationassignment was formulated as a single-facility location problem. Different distancenorms, such as the Chebyshev distance, were used for the solution. After the feederassignment is identified, the insertion sequence is achieved by solving the formulatedTSP. In their work, Mauckner et al. [17] tackle the placement sequence generationwith an algorithm called “clock heuristic”, and provide its comprehensive analysis for

Page 4: Optimization of a high-speed placement machine using tabu search algorithms

128 P. Csaszar et al. / Optimization of a high-speed placement machine

three different distance metrics above. Sohn and Park [24] examined a multi-headturret placement machine. Their method first determined the locations of componentreels in the rack, followed by the placement sequence of components, such that aminimized total assembly time is achieved. Shih et al. [23] designed an expert systemfor finding the optimal placement sequence, feeder-, tooling- and nozzle-setup for agantry type machine. Their knowledge base contained information on the placementprocesses, machine specifications and components, the inference engine implementedforward chaining as the search strategy.

Contemporary general heuristic techniques have also been applied to attack theplacement machine optimization problem. Su and Shribari [25] dealt with a verysimilar machine to that of Shih et al. mentioned above, and produced an optimizercombining expert systems with artificial neural networks (ANNs). The ANNs wereinvolved in order to address the unstructured and ill-defined nature of the problem.An integer programming (IP) relaxation approach is presented by Kumar and Li [15].Relaxing the problem to linear programming (LP), and solving the LP with a com-mercially available software tool provides a near-optimal solution to the feeder slotassignment and component placement sequence. Dikos et al. [7] applied genetic algo-rithms (GA) – a generic method to solve combinatorial optimization problems basedon the principles of natural selection – to solve the feeder slot assignment problem fora high-speed turret machine in high-mix environment. Rubinovitz and Volovich [22]used GA to optimize task sequence and layout design of a robotic assembly cell con-currently – an effort also present in our optimization approach.

3. Description of the placement machine

The placement machine, which is the subject of this study, belongs to the familyof modular multi-station walking beam, very high-speed chip mounters, specializingin placing small-size surface mount devices. Figure 1 shows a rough sketch of themachine structure.

Before the problem formulation can be given, we discuss how the relevant struc-tural components, introduced in the previous section, have been implemented on thisparticular type of machine.

The placement of parts is done by sixteen adjacently positioned identical, concur-rently operating placement modules (“stations”). Each station consists of the followingelements:

• A fixed feeder bank, which is divided into twelve logical feeder slots. The widthof feeder devices, expressed by the number of occupied feeder slots, vary. Thewidth and type of feeders impose different constraints on the feeder slot location,at which a given feeder can be installed. These constraints have to be satisfiedby a feeder setup, otherwise it is not considered feasible. (Note that in the rest ofthis article, we will refer to feeder slots instead of the feeders themselves. A wide

Page 5: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 129

Figure 1. The structure of the placement machine.

feeder, which occupies more than one feeder slot, is represented by one filled andone or more empty, but occupied feeder slots.)

• A vision system based on a charge coupled device (CCD) camera, which determinesthe orientation and alignment of the part on the nozzle. The position of the camerais also fixed.

• A placement head mounted on a robotic arm, equipped with four nozzles, whicheach can pick a part appropriate for the given nozzle diameter and, after visioninspection, place it on the board. The nozzles have to be installed prior to operation,i.e., no runtime changeover is supported.

The board support mechanism is a pallet circulating system (“conveyor”), whichreceives the incoming boards, affixes them on a pallet, transfers them through thestations, releases them at the end of the machine, and returns the pallets to receivenew boards. The conveyor can make arbitrarily long high-precision steps in incrementsof one inch. Up to six steps can be programmed for the assembly of one board, afterwhich the positioning of the boards under the stations must be the same as before thefirst step. (Note, however, that for all products in our study, the board layout underthe different stations is identical in any moment.)

During board assembly, the robotic arms of the stations are working au-tonomously. In a head cycle a head picks up to four part from the feeders, movesabove the vision camera for part inspection, and places the parts on the circuit board.Each station completes the placements that are assigned to the given station in thegiven conveyor position. This interval of operation is called the conveyor step cycle.The individual head cycles on the stations need not be synchronized. This is not trueabout the conveyor step cycles because of the continuous conveyor, whose movement

Page 6: Optimization of a high-speed placement machine using tabu search algorithms

130 P. Csaszar et al. / Optimization of a high-speed placement machine

affects the operation of all stations. Having completed the placements assigned to aconveyor step, the conveyor is moved; after the last conveyor step, the board appearingat the end of the machine is finished, and will be removed from the pallet. (A moredetailed description of the placement machine, and the object-oriented simulation toolcapturing its physical model can be studied in [6].)

4. Optimization of the placement machine

This section presents the optimization problem in its entirety, then introducesa partitioning approach, which separates the problem to an augmented feeder setupoptimization (also referred to as feeder slot assignment problem), and a placementsequence generation heuristic.

4.1. The complete optimization problem

Based on the machine properties detailed in the previous section, the optimizationproblem is the following:

Given the list of placements, for each station, assign parts to the feeder slots,and define a placement sequence, such that the setup is feasible, and the cycle timefor production (the elapsed time between the completion of two consecutive boards) isminimized.

First the atomic unit of feeder setup optimization, the unique part set (UQP-setfor short) has to be defined. A unique part set is formed out of all placements usinga certain feeder slot. The size of the unique part set is the number of placements itcontains. Since a feeder device is not only expensive, but also increases the overallprobability of failure, the number of feeders used (i.e., feeder slots occupied) by asetup should be minimized by assigning a part to only one feeder slot across theentire machine. Therefore, a UQP-set normally contains all placements using a certainpart. It may occur, however, that on a board some parts are used by an excessivenumber of placements compared to other parts. In order to avoid station bottleneck,these placements are separated to two or more UQP-sets with sizes below an estimatedthreshold. Each of these UQP-sets can then be assigned to multiple feeder slots, locatedat different stations.

The permutation of UQP-sets across the stations’ feeder slot determines both thefeeder setup, and the cycle time. The feeder setup is given by the parts belongingto each UQP-set’s placements. The cycle time, however, depends on the UQP-sets’individual placements. As it has been mentioned earlier, the stations work concurrently.Synchronization, however, becomes necessary between conveyor step cycles due to themachine’s common conveyor architecture. The time elapsed between two completedboards, i.e., the completion of all conveyor step cycles, can therefore be calculated from

Page 7: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 131

Figure 2. Trajectory of a head cycle.

the completion time of stations in each conveyor step, using the following formula:

T (π) =R∑r=1

Smaxs=1

TComplete(πr,s) =R∑r=1

Smaxs=1

Tr,s. (1)

In this expression, π is a permutation of UQP-sets, r denotes the conveyor stepout of R (maximum six) steps, s identifies the station out of S (sixteen) stations. If theplacements did not belong to different conveyor steps, πs would denote the permutationof UQP-sets falling under station s. However, each of these sets is partitioned into Rpairwise disjoint subsets, based on the conveyor step the placements are carried out(determined by the placement x-coordinate on the board). Consequently, πr,s denotesthe permutation of UQP-subsets belonging to conveyor step r, falling under station s.

Figure 2 shows the trajectory of the placement head during a head cycle, withmovements above the feeder bank (“pick”), between the feeder bank and the board(“seek”), and above the board (“place”). An important property of the placementmachine is that due to the control mechanism of the robotic arm, the head motiontime was found to be proportional to the Chebyshev distance [max(|∆x|, |∆y|)] ofthe endpoints of a trajectory. This fact, and the station’s geometry guarantee that inmost cases the seek time depends solely on the y-coordinate of the recent placement,regardless of the feeder slot position of the subsequent one. For a one nozzle per headequipment, it means that the cycle time is independent from the placement sequence.This, however, does not hold when a head contains multiple nozzles. The knowledge ofthe placement sequence is required to determine the participating placements, and theirorder in a head cycle. In other words, TComplete(πr,s) is not a unique value, but affectedby the placement sequence σ(πr,s), so its correct notation is TComplete(πr,s,σ(πr,s)).The key to the solution of this problem is the definition of a placement sequence

Page 8: Optimization of a high-speed placement machine using tabu search algorithms

132 P. Csaszar et al. / Optimization of a high-speed placement machine

generation heuristic, and the partitioning of the optimization into two phases. Thefirst phase assigns parts to stations, monitoring several metrics (see end of the sectionfor the complete list) including two particular metrics, whose purpose is to guaranteethat the heuristic will perform efficiently. The second phase is the heuristic itself,deployed inside each station. Based on the characteristics of this heuristic, an estimatedplacement sequence-independent completion time (denoted by Tr,s for short) can beprovided for phase 1, even though the exact placement sequence is determined onlyin phase 2.

4.2. The partitioned optimization problem

The two metrics monitored in phase 1, mentioned above, are concerned aboutthe following feeder setup issues at each station:

• Ensuring that placements using the assigned parts have close placement x-coordi-nates. This way each station becomes responsible for a “zone” of placements,reducing the necessary head movements in the x-direction during placement.

• Ensuring that contiguous feeder slots get occupied, and that the parts of UQP-setscontaining the most placements get assigned to the middle among the occupiedfeeder slots, reducing the necessary head movements in the x-direction during partpicking.

The recognition of proximity for both the placement x-coordinates, and the feederslot location is done calculating the standard deviation, a value that can provide in-formation about the dispersion of a group of numbers. By minimizing the standarddeviation of feeder slot locations and placement x-coordinates (the latter for eachconveyor step), the above goals can be reached.

The placement sequence heuristic in phase 2 consists of the following two majorsteps:

1. Sort the placements in ascending order of placement y-coordinates. Form theplacements of consecutive head cycles by sweeping through the sorted list.

2. Inside the head cycles, sort the placements in ascending order of feeder slot loca-tions. The placements are completed in ascending order of y-coordinates regardlessof the pick sequence, because the machine control has been programmed to solvethis simple “one-dimensional TSP” during the execution of each head cycle.

More detailed description of the placement sequence generating algorithm is givenin [5]. An improved head cycle after placement sequencing is shown in figure 3.

It is assumed that in most head cycles, due to the narrow span of the stackedy-regions, the placement x-distances are greater than the y-distances, becoming thedominant values in the Chebyshev distance calculation. (For similar reasons, the seek-distances are dominated by the y-coordinates.) The placement head’s trajectory cantherefore be modeled by the seek y-distances, plus a random line segment with twointernal vertices (part picking), and three line segments in the x-direction (placement).

Page 9: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 133

Figure 3. The trajectory of an improved head cycle.

All seek-distances can be estimated as the average y-coordinates of all placements onthe board. The approximation for the pick- and placement-distances, however, needsto rely on the standard deviation values. Assuming uniform parts distribution alongthe x-coordinate, the theoretical expected value of the x-distance ∆x between tworandomly picked placements is 1/3 times the total span of placement x-coordinates,the standard deviation xSdev is 1/

√12 times. Therefore

∆x =13

√12xSdev = 1.15xSdev. (2)

Based on similar logic, but accounting for the two internal vertices, the linkbetween the expected value of feeder slot distances, and the standard deviation of theplacement feeder slot values is

∆f =35

√12 fSdev = 2.08 fSdev. (3)

Using the above calculations, the station completion times, and therefore theboard production cycle time can be estimated without the exact knowledge of theplacement sequence. The final equation can be found in [5]. The expression in theform below provides sufficient details for our further study.

T (π) =R∑r=1

Smaxs=1

Tr,s (4)

Page 10: Optimization of a high-speed placement machine using tabu search algorithms

134 P. Csaszar et al. / Optimization of a high-speed placement machine

=R∑r=1

Smaxs=1

f(Q(1)r,s,Q

(2)r,s, . . . ,Q

(i)r,s, . . .

), (5)

where f is a nonlinear function, and is monotonic nondecreasing with respect to allQ(i)r,s metrics. These metrics will be referred to as “quality components” henceforth,

representing each desired characteristic (referred to by the i superscript) of feeder setupπ at station s in conveyor step r. Below is the list of quality components responsiblefor the cycle time:

1. Number of placements;

2. Sum of y-coordinates of placements;

3. Standard deviation of x-coordinates of placements;

4. Standard deviation of feeder slot locations of placements.

The original problem has been partitioned, and the placement sequence generationheuristic of phase 2 has been established. What remains to be solved is the feedersetup optimization of phase 1, which will be the focus of the following two sections.

5. Feeder setup optimization as a neighborhood search problem

In this section we introduce the search problem representing the feeder setupoptimization, and analyze the properties of the resulting search space.

5.1. Establishing the neighborhood search problem

The feeder setup optimization problem is defined as a neighborhood search prob-lem. The search space is the Π set of all permutations of all UQP-sets across thefeeder slots of all stations. The solutions are the permutations π ∈ Π. A swap is thepairwise exchange of two feeder slots (or multiple of two, if at least one wide feederis involved), while a move is a swap that was found best in among all swaps avail-able from the current solution (i.e., presented the maximum gradient), and thereforecarried out. The cost function is the original objective function provided by equa-tion (1). However, the following subsection will explain why this primary (referredto as “real”) cost function has to be accompanied by an artificial cost function. Thesetwo cost functions establish a special dual cost value search space, which will serveas the basis of a tabu search strategy.

5.2. Artificial cost function

There are two major difficulties in implementing an optimization algorithm basedon gradient search, using only equation (1) as a cost function (denoted by c(π) hence-forth).

Page 11: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 135

• Because of the S identical stations, one point in the search space is equivalentto S! − 1 other points, which share the same properties. (From one point, theother points can be generated by listing all possible permutations of the stations.)Cyclic visitation of equivalent points is not prevented by many of the classical tabustrategies. The next section will show how the presented diversification strategyaddresses this phenomenon.

• More importantly, the max-expression produces a “plateau-effect”, in which thediscovery of a large set of good moves may be missed or delayed at any momentduring the search, if the search technique used relies on any sort of gradient method.Because the real measure of improvement can be shaded by a new maximum value,convergence towards local optima may drastically slow down, or even stall.

In order to cope with the plateau-effect, a new artificial cost function g(π) hasbeen created. (The introduction of an auxiliary cost function in a tabu search envi-ronment has been mentioned in the book of Glover and Laguna [11], as part of anearly application proposed for strategic oscillation. Also, in their method to solve alarge general employee scheduling problem, Glover and McMillan [12] use multiplecriteria based on different heuristics, for effectively guiding the search towards goodsolutions.) Similar to the original cost function c(π), the artificial cost function assignsa real number to every point of the search space:

g(π) : Π→ R. (6)

The values of g(π) are called the artificial cost values. (To make all subsequentreferences to c(π) clear, it will be referred to as the real cost function, with real costvalues.)

The following requirements are imposed on g(π):

1. It is free of plateaus, i.e., its decomposition does not contain any function h(x),for which any partial derivative function ∂h(x)/∂xi can be zero at more than oneadjacent x point.

2. The recalculation of g(π) after each swap does not require any loop of S iterations.

3. At a theoretical point πMin, where g(π) reaches its global minimum value gMin, itis guaranteed that πMin will be a global minimum point for the real cost functionc(π) as well, i.e.,

g(πMin) = gMin ⇒ c

(πMin) 6 c(π), ∀π ∈ Π. (7)

It is not guaranteed, however, that every search space will actually contain afeasible point like this, due to constraints imposed by a given problem.Functions that satisfy this condition will generally direct the search towards areas,where the real cost values are also low. However, a stricter condition for g(π) maymake it hard to compute, or even to specify. In other words, for most c(π) andg(π) functions, a local optimum of c(π) is not guaranteed to be a local optimumof g(π), and vice versa.

Page 12: Optimization of a high-speed placement machine using tabu search algorithms

136 P. Csaszar et al. / Optimization of a high-speed placement machine

4. For all points π′Good in the neighborhood N of “a good quality point” πGood,

where the value g(πGood) is close to the theoretical minimum gMin, the function’sdifferential behavior is similar to that of the real cost function, i.e.,

g(πGood) ≈ gMin ⇒ g

(π′Good)− g(πGood) ≈ c(π′Good)− c(πGood) (8)

∀π′Good ∈ N(πGood).

This condition ensures that in areas where the solution quality is good, and correctdecisions in selecting the search path are critical, the artificial cost function willaccurately represent the real cost function in terms of the local gradients.

5.3. Quality measures

We are looking for an artificial cost function, which satisfies the above conditions,in the following form:

g(π) =∑(i)

R∑r=1

[a(i)r

S∑s=1

q(i)r,s

], (9)

where the q(i)r,s values are the different “quality measures”, which are quantities char-

acterizing individual aspects of the π setup’s quality at each station, in each conveyorstep. The quality measures are derived from the quality components of the real costfunction, listed at the end of section 4.

The key idea behind this representation is the set of individual∑S

s=1 q(i)r,s terms,

each reflecting the status of one particular characteristic of the current solution acrossall stations. The evaluation of these characteristics together can successfully lead thesearch towards high-quality solutions, without being hindered by the plateau-effect,since the sole application of summation guarantees requirement #1. Furthermore,updating the value of g(π) after a swap can be completed using only the recalculatedquality measures at the one or two stations affected by the swap, thus satisfyingrequirement #2.

There are two kinds of quality measures, which depend on the quality componentbeing monitored:

• Conservative. The quality component associated with the quality measure has aconstant sum over the stations during the whole optimization (“Number of place-ments” and “Sum of y-coordinates of placements”). The goal in this case is perfectbalancing. Thus, the quality measure to be minimized (in fact, to be reduced tozero) at each station will be the distance from a common “norm”-value, the constantsum divided by the number of stations. Denoting the quality component by Q(i)

r,s,and its constant (“conserved”) initial sum over the stations by Q(i)

r , the expressionfor the quality measure will be

S∑s=1

Q(i)r,s ≡ Q(i)

r → q(i)r,s =

∣∣∣∣Q(i)r,s −

Q(i)r

S

∣∣∣∣. (10)

Page 13: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 137

• Variable. The quality component’s sum over the stations is not constant during theoptimization (“Standard deviation of x-coordinates of placements” and “Standarddeviation of feeder slot locations of placements”). The goal in this case is tominimize this value. Therefore, the quality component itself will become the qualitymeasure:

S∑s=1

Q(i)r,s 6≡ Q(i)

r → q(i)r,s = Q(i)

r,s. (11)

At the theoretical πMin point, all conservative quality measures are 0, and allvariable ones are the lowest possible permitted by the UQP-sets. This brings all ffunction values, and therefore the entire T (π) (i.e., c(π)) function to minimum, as perrequirement #3.

In equation 9, a(i)r denote constants, whose role is to “link” the artificial cost

function to the real cost function, in order to comply with condition 8 of requirement #4.The detailed algorithm of calculating the a(i)

r values, and the resulting expression forg(π) are presented in [5].

6. Tabu search optimization

This section gives a brief introduction to tabu search, and presents the advancedTS optimization of the feeder slot assignment.

6.1. Introduction to tabu search

Tabu search (TS) is a modern heuristic technique, one of the novel approachesattempting to cope with “difficult” problems (problems characterized by a non-polynomial or high-order polynomial time complexity, coinciding with a large searchspace), where brute force would not be able to provide satisfactory solutions in areasonable amount of time, and classical methods (such as branch-and-bound, etc.)are either not applicable, or hard to implement. TS was invented by Glover, and anumber of its key ideas were first comprehensively published in [9] and [10]. Anothergeneral discussion of TS is [13], written by Glover et al. Since its introduction, TShas been applied in a variety of areas, such as operations research (OR), logistics,telecommunications, transportation, financial planning, etc. (see [21]). In 1988 theCommittee on the Next Decade of Operations Research identified the method as “ex-tremely promising” for the future treatment of practical applications [3]. A detailedaccount of contemporary TS research and applications can be found in the book ofGlover and Laguna [11]. Our decision to apply TS for the feeder slot assignmentproblem was motivated by the framework’s ability to accommodate a wide variety ofalgorithms, tailored to the characteristics of particular search spaces.

The key goal of TS is to improve local search such that the search process doesnot get stuck in the first local optimum, but discovers further optima desirably with

Page 14: Optimization of a high-speed placement machine using tabu search algorithms

138 P. Csaszar et al. / Optimization of a high-speed placement machine

higher quality, including the global optimum. In this sense, TS can be classified as ametaheuristic rather than a simple heuristic. The means TS attempts to reach its goalis taking the search history into consideration. In order for TS to perform as desired,two types of strategies are applied: short-term and long-term.

As a short-term strategy, TS attempts to guide the search trajectory by assign-ing tabu status to a set of solutions, thus avoiding small cycles, which would resultin consecutive re-discovery of the same local optimum. The short-term strategiesalone, however, would not be sufficient to provide an effective heuristic; long-terminterpretation of the search history is also necessary. These two types of strategiestogether make TS powerful enough to cope with NP-complete problems, discoveringhigh-quality near-optimal solutions in a reasonably short time. It should be noted that,even though some variants of TS apply probabilistic elements in the implementationof some of their algorithms, the classical TS framework defines a purely deterministicapproach, in contrast with genetic algorithms (GA) and simulated annealing (SA) forexample, in which the fundamental theory demands particular steps to be stochas-tic.

The most common short-term tabu strategies keep track of the attributes of tra-versed solutions. Attributes can be defined as the value of any xi component of asolution x in search space X, the value range of these variables, the value of a costfunction c(x), the value of an auxiliary function g(x), etc., or any combination ofthese. The attributes of recently visited solutions are rendered tabu-active, a statusthat remains in effect for the duration specified by the tabu tenure. A solution be-comes tabu if it shares tabu-active attributes, or a combination of these attributes. Thisway, solutions belonging to a recently visited area, and any solutions sharing thosetabu-active attributes, will be avoided.

The short-term strategies provide a means to conduct a search that is capableof discovering consecutive, moreover different local optima. However, they do notguarantee that the search covers a sufficiently large area of the search space in asufficiently short time. For this reason, guidance from long-term strategies is necessary.

Intensification strategies modify the choice rules to promote solution features,which are present in the best solutions archived in the history records. This makesthe search re-visit the regions around high-quality solutions, in order to search themmore thoroughly. Several strategies have been designed [10,20,27]. Section 6.3 willintroduce the intensification strategy developed for our optimization problem.

Diversification strategies drive the search into new regions, if the current regionno longer proves to be promising enough. A usual feature of several different diver-sification strategies is the modification of choice rules to involve attributes in moves,whose recent appearance or rate of change was too low, according to the long-termhistory. The diversification strategy implemented in our project, which employs asomewhat different approach, will be described in section 6.4.

Page 15: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 139

6.2. Augmented tabu search optimization architecture

Herein we introduce the three major improvements, which are characteristic ofour implementation of the TS framework:

• Basin exploration. An intensification strategy, addressing the degenerate gradientprofile of the search space.

• Cluster rebuild. A diversification strategy, addressing the symmetry problem of thesearch space.

• A special short-term strategy, which obeys the directives issued by the intensificationand diversification algorithms.

The pseudocode for the search algorithm is presented below.

augmented-TS(){

Pick an arbitrary x-startRepeat [Inter-Basin Loop]

descend-basin()explore-basin() ;; Intensificationcluster-rebuild() ;; Diversification

Until Inter-basin iteration cutoff reached}

The operation named descend-basin() executes a local minimum search onthe artificial cost function. Detailed explanations of explore-basin() and clus-ter-rebuild(), which implement the proposed intensification and diversificationstrategies respectively, will be presented in the subsections below.

6.3. Intensification

In section 5.2 it was explained that the real cost function c(π), i.e., the onegenerated from the original objective function, cannot be used efficiently to guide alocal search (which is fundamental in the TS paradigm) due to the unwelcome presenceof the plateau-effect. However, by disregarding c(π) completely, the search would missthe original goal, which is the minimization of c(π). Furthermore, close to the localoptima of the artificial cost function g(π), the plateaus of c(π) with high cost valuemay have been removed, in which case a c(π)-driven gradient search can be successfulas well.

It was also pointed out that a local optimum of the artificial cost function is notguaranteed to be a local optimum of the real cost function, and vice versa. However,if the local optima of the two functions fall close to each other, it is a signal that apromising area of the search space has been reached, i.e., good solutions are likely tobe found. This conjecture is the basis for our advanced intensification strategy.

Page 16: Optimization of a high-speed placement machine using tabu search algorithms

140 P. Csaszar et al. / Optimization of a high-speed placement machine

This strategy departs from the classical approaches, which maintain a list of elitesolutions and re-visit areas of the search space historically found good, in the hopeof finding additional good solutions. Instead, the algorithm named Basin Explorationattempts to conduct a one-time, but exhaustive discovery of encountered basins. Themethod takes advantage of the two different cost functions c(π) and g(π) available forthe same search space. The pseudocode of the algorithm follows.

explore-basin(){

Repeat [Intra-Basin Loop];; Step 1: Aggressive minimizationRepeat [Aggressive Minimization Loop]

local-search(MIN, c(π)) ;; Step 1alocal-search(MIN, g(π), UpperBound) ;; Step 1b

Until no improvement in real cost occurred;; Step 2: Diversification under plateaulocal-search(MAX, g(π), UpperBound) ;; Step 2alocal-search(MIN, g(π), UpperBound) ;; Step 2b

Until consecutive non-improvement of real cost reached iteration cutoff}

The basin exploration algorithm applies both cost functions, in order to overcomethe inherent flaws of each. The artificial cost function’s weakness is that close to thebottom of a basin, the search bails out at any minor local minimum (“spurious”minimum) encountered on the descending wall of a basin. The real cost function’sproblem, however, is that it may be stranded on a plateau, even if a point with betterquality is located nearby. The power of the algorithm lies in its ability to switchbetween the two functions, when the search using one of them gets trapped. Thedetailed operation is explained below.

• Step 1: Aggressive minimization loop. At this point, when the aggressive mini-mization loop is entered, the search is definitely in a local minimum of the artificialcost function, i.e., it is in a local artificial minimum. (If explore-basin() it-self was entered recently, this is the minimum discovered by a previously executeddescend-basin(), which is implemented as a local artificial minimum search.Otherwise, this point is the result of the local artificial minimum search of step 2b.)The aggressive minimization loop repeatedly executes the following two steps:

– Step 1a: From this point, a local minimum search on the real cost function [lo-cal-search(MIN, c(π))] is started. In the first iteration of the intra-basinloop, this search typically discovers solutions with better real cost values in themajority of cases, after descending to a new basin.

– Step 1b: From this point, another local minimum search is launched using theartificial cost function. However, the real cost value is not allowed to deteriorate,

Page 17: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 141

i.e., every move, which would increase the real cost, is rendered tabu. (Beyondbeing the key element of the iterative lowering of the real cost value, this tabualso prevents the search from reversing the effect of Step 1.) In the pseudocode,this operation is denoted by local-search(MIN, g(π), UpperBound),where variable UpperBound stores the lowest real cost value during this basinexploration session, and serves as the real cost threshold for the tabu-controlledlocal search.

If there is no improvement in the real cost value during the latest iteration, the ag-gressive minimization loop terminates, since this is a guarantee that the given pointis a local optimum for both c(π) and g(π). The number of improving iterations inthe aggressive minimization loop depends on the basin encountered. It was foundhigher, when the search space is populated with a big number of spurious localoptima, i.e., local optima with low quality. The number of local search iterations(in both step 1a and step 1b) typically decreases as the subsequent aggressive mini-mization iterations cause the search to converge towards the common real/artificiallocal optimum.

• Step 2: Intra-basin diversification. In this step, which could also be referredto as “Sub-Plateau Diversification”, the search has to be pushed away from thepoint, which is a local minimum for both cost functions. The method is actuallya local maximum search, however, as in the aggressive minimization loop, thereal cost value is not permitted to increase. (Hence the expression “sub-plateaudiversification.”) This is performed by a call to the tabu-controlled local artificialmaximum search, local-search(MAX, g(π), UpperBound), followed bya tabu-controlled local artificial minimum search, local-search(MIN, g(π),UpperBound). (As we concluded earlier, also an artificial minimum search maycause the real cost value to grow. Therefore the tabu supervision of UpperBoundis necessary for both operations.) The result of step 2 is a re-organized setup withthe same or even better real cost value. The rationale is the attempt to resolve thepreviously encountered plateau of c(π), i.e., to provide a setup, in which among thedifferent Tr,1, . . . ,Tr,S values (see equation (4)), there is at least one conveyor stepr, for which Tr,1, . . . ,Tr,S contain a single station s carrying a significantly higherTr,s value than the others. If the attempt is successful, the UQP-set responsible forthat high Tr,s can be removed by step 1b in the next intra-basin loop iteration.

Figure 4 depicts the events of one inter-basin iteration, and shows the values ofthe two cost functions as the search is advancing. The intervals are labeled accordingto the steps indicated in the pseudocode. Dotted arrows in the up and down directionsshow when the algorithm switches between the two cost functions. The solid arrowson c(π), the real cost function, represent one iteration of the c(π)-based local minimumsearch. The flat line segments on the c(π) curve indicate that the local search usingc(π) was stranded on a plateau.

Page 18: Optimization of a high-speed placement machine using tabu search algorithms

142 P. Csaszar et al. / Optimization of a high-speed placement machine

Figure 4. Cost functions during basin exploration.

6.4. Diversification

The primary question regarding this operation is how “far” one has to diversify,i.e., how to decide that the diversification will lead to a sufficiently different area ofthe search space, how to define a “sufficiently different area”, etc. Glover’s originalwork [9,10] describes a general algorithm. In specific cases, however, better approachesmay exist, based on deeper knowledge about the nature of the problem and the structureof its search space.

The motivation for diversification in our problem was suggested by the phenom-enon of “cluster regeneration”, observed in early experiments with the multi-stationchip-shooter optimizer. Due to the S identical stations, for every point of the searchspace there are S! − 1 other points completely equivalent to it. Thus, there is a ten-dency for permutations with the same qualities to regenerate, with the only differencebeing the actual order of stations. A further discovery showed that UQP-sets with alarge number of placements (referred to as large UQP-sets henceforth), which con-tribute the most to the workload of a station, become immovable early in a basindescent. As a result, only the smaller UQP-sets participate in the pairwise exchanges,as the balancing across the stations progresses. The manipulation of the smaller UQP-sets, however, may not be able to compensate for the irregularities in the balancingimposed by the immovable large UQP-sets. What follows is that the distribution ofthese large UQP-sets has a major impact on the quality of all solutions. Based on this

Page 19: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 143

observation, one can define the “dominant clusters”, which are formed by the largestUQP-sets at each station. Furthermore, using this definition of dominant clusters, abasin in this multidimensional search space can be interpreted as a set of points sharingthe same dominant clusters. Based on this statement, the presented algorithm, referredto henceforth as cluster rebuild, applies the following technique to send the search intoa different basin.

1. Identify the dominant clusters, i.e., the two largest UQP-sets in each station. (Thisnumber is based on experimental observations.) Randomly pick one of them. Inextreme cases, when a station contains only one UQP-set, the second one willnecessarily be an empty set, i.e., a UQP-set with zero placements in it.

2. Form new clusters, by keeping one out of the two UQP-sets at each station, andrandomly re-assigning the other UQP-set to a different station.

3. Remove all problems present in the resulting new permutation, such as constraintviolations and obvious bottlenecks, using an algorithm referred to as “unwinding”.If a problem occurs at a station, restore its original dominant cluster. This may ormay not cause a problem at another station. If it does, the thread of unwindingcontinues. The algorithm terminates if no more rectification is necessary for anystation.

4. Impose a tabu tenure on the UQP-sets of the dominant clusters, which does notexpire until the subsequent call of cluster rebuild.

This algorithm forces a brand new cluster layout on the current solution (disre-garding both cost functions), then disables cluster regeneration by making the UQP-setsof the dominant clusters immovable. In this way, it conducts an instant relocation ofthe search path, forcing it into different basins. As it was mentioned earlier, the numberof UQP-sets, out of which the dominant clusters were formed, was decided experi-mentally. Adaptive tuning of this value could be an interesting direction for futureresearch.

7. Experimental results

Four experimental scenarios were tested. in the first case, the basin explorationstrategy was disabled, and cluster rebuild was replaced by jumping to a random point.This session, therefore, reduces to a randomized local search. The other three scenariosutilized basin exploration, cluster rebuild, or both, respectively.

The optimization of twenty different circuit boards, each containing 136 UQP-sets, were launched five times from random starting points in each scenario. Figure 5shows the average of the resulting real cost values (values of c(π)), as a function ofthe number of basin descents. This value is the actual cycle time, i.e., the elapsed timebetween the completion of two consecutive boards, in seconds.

Page 20: Optimization of a high-speed placement machine using tabu search algorithms

144 P. Csaszar et al. / Optimization of a high-speed placement machine

Figure 5. Different tabu strategies: cost value vs. basin descents.

The most important point to notice is the impact of the basin exploration on theresults. In contrast with local search, this aggressive basin deepening strategy discov-ers high-quality solutions even if only a single basin has been explored. Increasingthe number of explored basins, the final cost value decreased, as the result of moresolutions investigated in the good-quality areas. When the basin exploration strategywas inactive, the cost value reducing effect of the number of basin descents was moresignificant, in which case the higher number of basin descents provided the means ofcoming across to higher-quality local optima, as opposed to the systematic operationof the basin exploration. However, the cost value of solutions from sessions utilizingbasin exploration stayed 15% lower than for solutions found by local search alone,regardless of the number of basins traversed.

The effect of the cluster rebuild strategy was the most significant when the basinexploration was disabled, and the number of basin descents was low. Eventually,however, the difference between the best basin discovered from one of the randomstarting points, and from a point suggested by the cluster rebuild, diminished.

Figure 6 visualizes the connection between the applied strategies, and the successof basin descents. The bars represent the increase of quality (i.e., the decrease of thecost value), compared to the quality after the first basin exploration. The shorter barsand the moderate growth for the scenarios using the basin exploration indicate thatsolutions discovered in early basins are not much inferior compared to the solutionsafter a bigger number of basins investigated. However, when basin exploration is notemployed, descent to a bigger number of basins is crucial in order to find solutionswith acceptable quality.

It is important to note that figure 5 does not account for the fact that the basinexploration has its own “overhead”, i.e., the number of moves it takes to execute thisoperation. Figure 7 shows the actual execution times of the search sessions on a SunUltraSparc workstation in seconds.

Because not only the cost value, but also the number of executed moves var-ied slightly in each experiment, the graphed points in figure 7 represent the two-dimensional average (i.e., the center of gravity) of the collection of points resulted

Page 21: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 145

Figure 6. Rate of improvement: quality increase vs. basin descents.

Figure 7. Different tabu strategies: cost value vs. CPU time.

from the experiments using the same strategies, and completing the same number ofbasin descents.

8. Conclusions and future work

In this paper we presented the problem of optimizing a modular high-speed auto-matic placement machine. The original problem has been partitioned into two phases,solved using tabu search and a specific heuristic algorithm respectively. Furthermore,two special long-term tabu strategies have been developed based on the studies of thisparticular problem domain, involving high-dimensional permutational search spaces.The basin exploration intensification strategy pursues aggressive searches on basinfloors. It takes advantage of a dual cost value search space, which was created byadding an artificial cost function in order to address the original cost function’s prob-lems caused by the machine’s parallel operation. The cluster rebuild diversification isresponsible for the effective transferring of the search trajectory across basins, man-aging the investigation of many different prospective regions. Cluster rebuild was

Page 22: Optimization of a high-speed placement machine using tabu search algorithms

146 P. Csaszar et al. / Optimization of a high-speed placement machine

designed to avoid the strategic pitfalls inherent to systems with high-level symmetry.The TS optimizer equipped with these special tabu strategies showed an improved per-formance in discovering high-quality solutions in the studied problem domain. Com-parative experiments with randomized local search indicated that the TS optimizer wasable to find superior solutions within a shorter time period, for a wide range of circuitboards assembled by the placement machine.

The effective utilization of the capabilities of different high-speed placement ma-chine families has a major impact on production throughput, which directly affects theprofitability of the manufactured items. The optimization method presented here canbe extended to other machine architectures as well. Further studies can be conductedon the introduced TS strategies, especially towards providing increased robustness ofthe tunable parameters, promoting the application of these techniques in a great varietyof operations research problems.

Acknowledgement

Thanks to Tom Babin for his review of this paper.

References

[1] J.C. Ammons, W.M. Carlyle, G.W. DePuy, K.P. Ellis, L.F. McGinnis, C.A. Tovey and H. Xu,Computer-aided process planning in printed circuit card assembly, IEEE Transactions on Compo-nents, Hybrids and Manufacturing Technology 16(4) (1993) 370–376.

[2] M.O. Ball and M.J. Magazine, Sequencing of insertions in printed circuit board assembly, OperationsResearch 36(2) (1988) 192–201.

[3] Committee on the next decade of operations research, Operations research: The next decade, Op-erations Research 36 (1988).

[4] Y. Crama, A.W.J. Kolen, A.G. Oerlemans and F.C.R. Spieksma, Throughput rate optimization in theautomated assembly of printed circuit boards, Annals of Operations Research 26 (1990) 455–480.

[5] P. Csaszar, Optimization of automated placement machines using tabu search algorithms, Ph.D.thesis, University of Illinois at Chicago (1999).

[6] P. Csaszar, T.M. Tirpak and P.C. Nelson, Object-oriented simulator design for an automated high-speed modular placement machine family, Simulation 73(6) (1999) 341–351.

[7] A. Dikos, P.C. Nelson, T.M. Tirpak and W. Wang, Optimization of high-mix printed circuit cardassembly using genetic algorithms, Annals of Operation Research 75 (1997) 303–324.

[8] L.R. Foulds and H.W. Hamacher, Optimal bin location and sequencing in printed circuit boardassembly, European Journal of Operational Research 66 (1993) 279–290.

[9] F. Glover, Tabu search – part i, ORSA Journal on Computing 1(3) (1989) 190–206.[10] F. Glover, Tabu search – part ii, ORSA Journal on Computing 1(4) (1990) 4–32.[11] F. Glover and M. Laguna, Tabu Search (Kluwer Academic, 1997).[12] F. Glover and C. McMillan, The general employee scheduling problem: an integration of MS and

AI, Computer and Operations Research 13(5) (1986) 563–573.[13] F. Glover, E.D. Taillard and D. de Werra, A user’s guide to tabu search, Annals of Operations

Research 41 (1993) 3–28.[14] S. Grotzinger, Feeder assignment models for concurrent placement machines, IIE Transactions 24(4)

(1992) 31–44.

Page 23: Optimization of a high-speed placement machine using tabu search algorithms

P. Csaszar et al. / Optimization of a high-speed placement machine 147

[15] R. Kumar and H. Li, Integer programming approach to printed circuit board assembly time opti-mization, IEEE Transactions on Components, Packaging, and Manufacturing Technology, Part B:Advance Packaging 18(4) (1995) 720–727.

[16] T. Leipala and O. Nevalainen, Optimization of the movements of a component placement machine,European Journal of Operational Research 38 (1989) 167–177.

[17] C. Mauckner, H. Noltmeier and S.O. Krumke, Finding placement sequences and bin locations forpick- and place robots, Studies in Locational Analysis (10) (1996) 67–89.

[18] L.F. McGinnis, J.C. Ammons, M. Carlyle, L. Cranmer, G.W. DePuy, K.P. Ellis, C.A. Tovey andH. Xu, Automated process planning for printed circuit card assembly, IIE Transactions 24(4) (1992)18–30.

[19] P.K. Mohapatra, T.M. Tirpak, P.C. Nelson and P. Csaszar, A generic simulation and optimizationsystem for chip placement machines, in: International Conference on Information Technology,Bhubaneswar, India (1990) pp. 3–17.

[20] E. Nowicki and C. Smutnicki, A fast taboo search algorithm for the job shop problem, TechnicalReport 8/93, Institute of Engineering Cybernetics, Technical University of Wroclaw, Poland (1993).

[21] C.R. Reeves, ed., Modern Heuristic Techniques for Combinatorial Problems (Wiley, New York,1993).

[22] J. Rubinovitz and D. Volovich, Task sequence and layout design in a robotic assembly cell, in: 15thISPE/IEE International Conference on CAD/CAM, Robotics and Factories of the Future, Aguas deLindoia, SP, Brazil (1999).

[23] W. Shih, K. Srihari and J. Adriance, Expert system based placement sequence identification forsurface mount PCB assembly, International Journal of Advanced Manufacturing Technology 11(1996) 413–424.

[24] J. Sohn and S. Park, Efficient operation of a surface mounting machine with a multihead turret,International Journal of Production Research 34(4) (1996) 1131–1143.

[25] Y.-Y. Su and K. Srihari, Placement sequence identification using artificial neural network in surfacemount PCB assembly, International Journal of Advanced Manufacturing Technology 11 (1996)285–299.

[26] T.M. Tirpak, Simulation software for surface mount assembly, in: Proceedings of the 1993 WinterSimulation Conference, Los Angeles, CA (1993) pp. 796–803.

[27] S. Voss, Solving quadratic assignment problems using the reverse elimination method, Technicalreport, Technische Hochschule Darmstadt, Germany (1993).


Top Related