• Ei tuloksia

Job Grouping with Minimum Setup in PCB Assembly Kari Salonen

N/A
N/A
Info
Lataa
Protected

Academic year: 2023

Jaa "Job Grouping with Minimum Setup in PCB Assembly Kari Salonen"

Copied!
5
0
0

Kokoteksti

(1)

Job Grouping with Minimum Setup in PCB Assembly

Kari Salonen

1

, Jouni Smed

1

, Mika Johnsson

2

, Olli S. Nevalainen

1

1

Turku Centre for Computer Science (TUCS) and Department of Information Technology, University of Turku, Lemmink¨aisenkatu 14 A, FIN-20520 Turku, Finland

e-mail: {kari.salonen, jouni.smed, olli.nevalainen}@it.utu.fi

2

Valor Computerized Systems (Finland), Ruukinkatu 1, FIN-20540 Turku, Finland e-mail: mika@valor.com

Abstract

We consider the machine setup problem of printed circuit board (PCB) assembly as a combination of a job grouping problem and a minimum setup problem. We formulate the problem as a MIP-model, where the objective is to minimize the weighted sum of the number of setup occasions and the total number of component feeder changes. We also present and evaluate hybrid algorithms based on both grouping and minimum setup heuristics. The best results are achieved by a method which uses both these strategies simultaneously.

1 Introduction

Electronic industry uses automated systems to manufac- ture its products. The central part of an electronic prod- uct, printed circuit board (PCB) with its electronic com- ponents, is manufactured in assembly lines. A line can assemble components on multiple types of PCBs by one or several high-speed machines.

We examine the single machine setup problem in a high-mix low-volume environment where the total num- ber of different component types of all PCB types ex- ceeds machine’s component feeder capacity, and feeder setup operations are needed between jobs. This environ- ment is typical in small PCB manufacturers who tend to have only few assembly lines and a large variety of PCBs to produce. More pressure is still added to setup opera- tions, if prototypes are assembled in the same line. Ef- ficient use of bottleneck machines is then one of the key aspects in production control.

We consider in this work group setup and minimum setup strategies [10] for organizing the setup operations.

These two seem to be the most popular strategies in high- mix low-volume production environments in the single machine case [13].

Group setup strategy forms job groups of similar PCBs so that component setups are incurred between groups, only. Hence, any board type in the group can be produced without changing the component setup, which is only required when switching from one group to an- other. A natural objective is to minimize the number of groups. Numerous researches have studied the group setup strategy, see [12, 5, 2, 4, 14, 8].

Minimum setup strategy attempts to sequence the boards and determine component-feeder assignments to minimize the total component changeover time. The problem can be formulated as a special traveling sales- man problem (TSP) and it can be solved heuristically.

For solution heuristics, see [1, 16, 6, 7, 11].

It is common that a single component feeder can be changed in 1–5 minutes but it may take, for instance, 15–25 minutes to prepare the machine for the compo- nent setup operations, because it requires extra manual work by the personnel. Therefore, we have two different setups: a component setup comprises the operations to replace one component feeder with another, and a setup occasion takes place when the line is interrupted for one or more feeder changes. The cost function of the setup operations for a set of PCB assembly jobs on a single machine is then:

C(y,z) =Ry+Sz, (1)

where R and S are constant time factors for the number of setup occasions (y) and for the number of component changes (z). The aim is therefore to minimize (1).

The algorithms given in this paper are based on a method presented in [15]. In the original method, after grouping the PCBs each group is considered as a super- PCB. They are then used as an input for a minimum setup algorithm, which arranges the super-PCBs so that the feeder changes between the super-PCBs are minimized.

2 Mathematical formulation

We formulate the hybrid machine setup problem, called here the Job Grouping with Minimal Feeder Setup (JGMFS) problem, as a MIP model. We follow Tang and Denardo’s [16] mathematical model (translated into PCB environment by Barnea and Sipper [1]), where the objec- tive is to minimize the number of tool switches (compo- nent feeder changes). In addition, our formulation takes into account the number of setup occasions (groups).

Let N be the number of batches (jobs) of different PCB types. The capacity of the component feeders is C feeder slots and the total number of different components

(2)

of all PCBs is M. To simplify, we suppose that all feeder (reels) demand one feeder slot. Let A={aji}be a job- component matrix of the size N×M, where the element aji is 1, if at least one component i is required for the PCB type j; otherwise, it is 0. The components required by the PCB type j are given by a 1×M-dimensional row vector Aj. Let e(Aj)TC for each j, where e is 1×M row vector of 1’s, but C<M; that is, each PCB type can be processed with a single setup of components but the components of all PCBs do not fit the feeders simultane- ously. To fix the sequence of PCBs, we define a variable xjn, which is 1 if PCB j is nth in the sequence, other- wise 0. Let W[n] be an 1×M-dimensional row vector that determines the components placed to the feeders at the instant n (1nN). In the beginning of the pro- cess there are no components in the machine (i.e., the elements of W[0] are all 0’s). The element w[n]i is 1 if the feeder for the component i is on some feeder slot of the machine at instant n, otherwise it is 0. Let P[n]

be an 1×M-dimensional row vector, where p[n]i>0, if w[n]i=1 and w[n−1]i=0; otherwise, it is 0. Thus, P[n]

tells the components to be introduced in the nth product.

To get the number of setup occasions (groups), we intro- duce a decision variable yn, which is 1 if at least one of the elements in P[n]is greater than zero; otherwise, ynis 0. JGMFS is then stated as follows:

MIN

N n=1

(Ryn+SeP[n]T) (2)

subject to

P[n]W[n]−W[n−1] ∀n=1,2, . . . ,N (3)

eP[n]TCyn ∀n=1,2, . . . ,N (4)

xjn·AjW[n] ∀n,j=1,2, . . . ,N (5)

eW[n]TC ∀n=1,2, . . . ,N (6)

N n=1

xjn=1 ∀j=1,2, . . . ,N (7)

N j=1

xjn=1 ∀n=1,2, . . . ,N (8)

eW[0]T =0 (9)

P[n]≥0 ∀n=1,2, . . . ,N (10)

w[n]i,yn∈ {0,1} ∀n=1,2, . . . ,N∀i=1,2, . . . ,M (11)

The objective function (2) minimizes the weighted sum of the number of setup occasions and the number of com- ponent feeder changes. Restrictions (3) determine com- ponent feeder changes for the nth PCB in the sequence.

The operators ‘≥’ and ‘≤’ in (3), (5) and (10) stand for the comparisons between the corresponding vector ele- ments. Restrictions (4) ensure that a setup occasion hap- pens every time when there are one or several component replacements when moving to a new job. Restrictions (5) ensure that all the components required for PCB j are on the machine at the instant n. Restrictions (6) state that the number of allocated component feeders does not exceed the capacity. Restrictions (7) and (8) indicate that each PCB is processed exactly once and at each instant there is exactly one PCB under processing. The formulation generates (N+1)×(N+M) 0/1-variables and N×M real valued variables.

The problem (2)–(11) is interesting in many respects.

By setting R>0 and S=0 we have a common job group- ing problem. By setting R=0 and S>0 we have a tool switching problem where the objective is to minimize the number of tool switches (component feeder changes).

However, joining these two objectives (i.e., R>0 and S>0) gives us a still more realistic model of the ma- chine setup problem. The number of setup occasions and the total number of feeder changes are both considered in this problem. Knowing that the hybrid problem is a com- bination of two NP-hard problems [3, 16], we can solve it optimally for small problem instances only.

3 Hybrid algorithms

Since the optimal solution of our MIP formulation for JGMFS is hard to find for problems of realistic size, we need to develop efficient heuristics.

3.1 Previous algorithms

We implemented in [15] three grouping algorithms, four minimum setup algorithms and a hybrid algorithm to the JGMFS-problem. We next recall the ideas of GSA1, MSAGenius, and GMSA1.

Algorithm GSA1 applies hierarchical clustering (HC)[10]. The algorithm uses Jaccard’s similarity co- efficient

si j=

EiEj EiEj ,

where the set Ei (Ej) denotes the components of the board i( j). The algorithm starts by forming a single group from each individual PCB and then merges group pairs with the highest si j. The process is iterated as long as possible.

As a post-processing phase, the number of groups is reduced bymoveandswapoperations and by applying a speciallocalSearchheuristic, which allows the ca- pacity constraint to be temporarily violated in order to escape a local minimum. Algorithm GSA1 can be de- scribed at a coarse level as follows:

(3)

Input: pcbs, a set of PCBs

Output: groups, a set of PCB-groups functionGSA1(PCBsetpcbs)

returnlocalSearch(swap(move(HC1(pcbs)))) Algorithm MSAGenius (see [7]) starts by forming a complete weighted graph where the PCBs are nodes and the weight of the arc between node i and j is cal- culated from the expression

EiEj

EiEj

(giving the number of non-mutual components). The algorithms repeat the next four steps N times by taking each node as a starting node:

1. Solve heuristically an open TSP problem.

2. Improve the solution with a 2-opt heuristic.

3. Use keep tool needed soonest (KTNS [16]) method to assign components to feeders when visiting the nodes in the sequence given in step 2.

4. Evaluate the solution by function (1); store if bet- ter than current best.

Algorithm GMSA1 starts by forming PCB groups with GSA1 and then it sequences the groups with MSAGe- nius.

3.2 New algorithms

Algorithm GMSA2 starts the grouping of PCBs like GSA1, but it stops clustering when the similarities be- tween the groups drop below a given limit. After that, the groups are sequenced and the feeders are assigned by MSAGenius. Note that when sequencing the groups formed by GSA1, it is possible that the number of the groups can still decrease. This happens if there are no feeder changes between two consecutive groups after se- quencing. The following inequality is used as the simi- larity limit: 10×max(si jR>3×S, where max(si j) stands for the highest similarity coefficient among the feasible merging groups. The constants (10, 3) have been selected as a basis of test runs. The inequality implies that a small value of the ratio R/S requires a large simi- larity si jin order that the groups i and j will be merged.

The problem then becomes a minimum setup problem and therefore one should leave more power for MSAGe- nius to arrange the PCBs. If R/S is large, the similarity limit should be lower, because it is now more important to minimize the number of groups. A pseudocode for GMSA2 is as follows:

Input: pcbs, a set of PCBs

Output: feeders, sequenced sets of component feeders functionGMSA2(PCBsetpcbs)

returnMSAGenius(

makeSuperPCBs(GSA1(pcbs))) functionGSA1(pcbs)

returnHC2(pcbs, R, S)

functionHC2(PCBsetpcbs, R, S) GROU Psetgroups

for every pcbi∈pcbs changepcbito groupi addgroupito groups endfor

calculatesimilarity coefficient si j

for every groupPairi,j∈groups while ((feasible merging is possible) and

(10×max(si jR>3×S ))

mergethe pair with the max(si j) among the feasible merging groups

updatesimilarity coefficient si j for every groupPairi,j∈groups endwhile

return groups

Algorithm GMSA3 forms groups as in GSA1 (with- out the post-processing phase), but each time after merg- ing two groups, it calls MSAGenius, evaluates the cost function, and saves improved solutions. The advan- tage of this method is that it searches results more glob- ally than GMSA2. Algorithm GMSA3 for solving the JGMFS-problem:

Input: pcbs, a set of PCBs

Output: feeders, sequenced sets of component feeders functionGMSA3(PCBsetpcbs)

returnGSA1(pcbs) functionGSA1(pcbs) returnHC3(pcbs) functionHC3(PCBsetpcbs)

PCBsetpcbs2 GROU Psetgroups Cost cost1=Cost cost2

FeederAssignmentsetfa1 FeederAssignmentsetfa2 for every pcbi∈pcbs

changepcbito groupi addgroupito groups endfor

while (feasible merging is possible) calculatesimilarity coefficient si j

for every groupPairi,j∈groups mergethe pair with the max(si j) among

the feasible merging groups pcbs2=makeSuperPCBs(groups) fa2=MSAGenius(pcbs2)

cost2=costFunction(fa2) if(cost2<cost1)

fa1=fa2 cost1=cost2 endif

endwhile return fa1

(4)

alg. capacity=80

R=0, S=1 R=5, S=1 R=10, S=1 R=20, S=1

20 PCBs c cc cost c cc cost c cc cost c cc cost

MSAGenius 15.9 212.0 212.0 10.3 214.8 266.5 10.2 215.7 317.6 10.1 216.3 419.1

GMSA1 5.0 223.3 223.3 5.0 223.2 248.3 5.0 223.1 273.3 5.0 223.5 323.1

GMSA2 14.9 212.1 212.1 5.5 220.6 248.0 5.3 221.5 274.6 5.2 222.5 326.9

GMSA3 14.3 211.5 211.5 5.5 218.2 245.9 5.2 220.3 272.2 5.1 220.8 323.6

40 PCBs

MSAGenius 28.4 299.5 299.5 22.5 305.0 417.6 22.0 308.5 528.5 21.7 313.0 746.2

GMSA1 8.4 332.1 332.1 8.4 332.2 374.4 8.4 332.2 416.5 8.4 332.0 500.6

GMSA2 29.4 299.2 299.2 9.0 326.7 371.8 8.8 328.6 416.4 8.7 329.7 504.3

GMSA3 27.5 295.4 295.4 9.2 322.4 368.2 8.8 324.8 412.6 8.7 326.4 499.8

alg. capacity=120

R=0, S=1 R=5, S=1 R=10, S=1 R=20, S=1

20 PCBs c cc cost c cc cost c cc cost c cc cost

MSAGenius 10.4 207.7 207.7 7.3 207.7 244.2 7.3 207.7 280.8 7.3 207.7 353.9

GMSA1 2.8 209.1 209.1 2.8 209.2 223.0 2.8 209.2 236.9 2.8 209.2 264.6

GMSA2 10.3 207.7 207.7 2.9 208.7 223.3 2.8 208.9 237.4 2.8 209.0 265.4

GMSA3 10.2 207.7 207.7 2.9 207.9 222.3 2.8 208.3 236.4 2.8 208.4 264.4

40 PCBs

MSAGenius 23.9 263.7 263.7 17.5 265.1 352.4 17.2 266.8 438.9 17.1 278.6 610.3

GMSA1 4.2 280.8 280.8 4.2 280.1 302.0 4.2 281.0 323.2 4.2 280.8 365.2

GMSA2 23.7 263.5 263.5 4.7 280.5 303.8 4.5 280.6 325.9 4.5 281.5 370.7

GMSA3 23.6 263.2 263.2 4.7 276.0 299.6 4.5 277.5 322.5 4.4 278.6 366.6

Table 1: A summary of test runs with MSAGenius, GMSA1, GMSA2, and GMSA3. c- and cc-fields give the average number of different groups and feeder changes, respectively. cost-field gives the value of Equation (1).

4 Computational experiments

We performed tests with GMSA1, GMSA2, and GMSA3 on two different datasets. The number of different PCBs in the dataset 1 and 2 are 20 and 40, respectively. We have repeated the experiment for each dataset 100 times using different PCB sets drawn randomly from an pro- duction program of a high-mix low-volume producer.

Each PCB type contains 5–80 different component types.

We experimented with the settings S = 1 and R = 0, 5, 10, and 20 and with the machine feeder capacity 80 and 120.

The average results of the experiments are shown in Ta- ble 1.

The results indicate that GMSA3 yields the overall best results. Only, when R = 20 GMSA1 gives sometimes better results than GMSA3. The reason for this is that GMSA3 uses GSA1 without the post-processing phase and therefore, the number of groups is less for GMSA1 than for GMSA3.

Interestingly, when R = 0 (i.e., we are solving a pure minimum setup problem) GMSA3 is even better for our data than MSAGenius. Note especially the case, when

the number of different PCBs is 40 and the capacity of the machine is 80; MSAgenius then gives 299.5 and GMSA3 295.4 component chances on average. The re- sults of this case were compared using a paired t-test (two-sided). The test indicated that the difference of these results is statistically highly significant (p-value<

0.001). When the number of the PCBs is 20 and the ca- pacity 80 (R = 0), the difference of the results is signifi- cant (p-value<0.01)

For the capacity 120 (R = 0) the results of MSAGe- nius and GMSA3 are identical except for the case when the number of the PCBs is 40. Then the difference of the results is statistically significant (p-value<0,01). A reason for GMSA3’s superiority over MSAGenius might be the following; when we form clusters some of the most similar PCBs before sequencing them by MSAGe- nius, the problem size “decreases” and this helps us to get lower cost function values.

When comparing the results of GMSA1 and GMSA2, we notice that GMSA2 gives clearly better re- sults for R = 0. On the other hand, when R = 20 GMSA1 outperforms GMSA2 with small margin. The reason for

(5)

this is that GMSA1 always first minimizes the number groups despite the values R and S and then it sequences the groups by MSAGenius, whereas GMSA2 utilizes the values of R and S to leave more power for MSAGenius.

This is beneficial especially if the problem is close to the minimum setup problem.

5 Concluding remarks

We formulated a combined job grouping problem and minimum feeder setup problem in PCB assembly for a single machine case. The objective was to reduce the weighted sum of the number of setup occasions and the number of component feeder changes. This hy- bridization model simulates the real-world production planning situation where both of these factors should be considered. We presented two new hybrid algorithms (GMSA2, GMSA3) based on efficient grouping and min- imum setup heuristics. Our practical tests indicated that the new algorithms can improve the solutions of the pre- vious algorithms. The hybrid algorithm GMSA3 yields the overall best results. The results of GMSA2 are not far from GMSA3, whereas GMSA1 works satisfactory only if R/S is greater than 5. An interesting question of further research is the effect of job grouping and mini- mum setup on the assembly time. One should here com- pare the JGMFS strategy to that of performing unique setup for each single board and to the strategy of doing some partial rearrangements for the most frequently used component feeders. This kind of comparison could re- veal problem dependent critical batch sizes for which one should abandon the JGMFS and switch to more careful optimization of the feeder allocation.

References

[1] A. Barnea and D. Sipper, Set-up reduction in PCB automated assembly, Computer Integrated Manu- facturing Systems, 6(1):18–26, 1993.

[2] G. Bhaskar and T. T. Narendran, Grouping PCBs for set-up reduction: A maximum spanning tree approach, International Journal of Production Re- search, 34(3):621–32, 1996.

[3] Y. Crama, A. W. J. Koleen, A. G. Oerlemans, and F. C. R. Spieksma, Minimizing the number of tool switches on a flexible machine, International Jour- nal of Flexible Manufacturing Systems, 6:33–54, 1994.

[4] Y. Crama, A. W. J. Koleen, and F. C. R. Spieksma, Production plannig problems in printed circuit board assembly, Discrete Applied Mathematics, 123:339-361, 2002.

[5] M. S. Daskin, O. Maimon, A. Shtub, and D. Braha, Grouping components in printed circuit board as- sembly with limited components staging capacity and single card setup: Problem characteristics and solution procedures, International Journal of Pro- duction Research, 35(6):1617–38, 1997.

[6] H. O. G¨unther, M. Gronalt, and R. Zeller, Job se- quencing and component set-up on a surface mount placement machine, Production Planning & Con- trol, 9(2):201–11, 1998.

[7] A. Hertz, G. Laporte, M. Mittaz, and K. E.

Stecke, Heuristics for minimizing tool switches when scheduling part types on a flexible machine, IIE Transactions, 30:689–94, 1998.

[8] T. Knuutila, M. Puranen, M. Johnsson, O.

Nevalainen, Three perspectives for solving the job grouping problem, International Journal of Pro- duction Research, 39(18):4261–80, 2001.

[9] E. L. Lawler, J. K. Lenstra, A. H. G. Rinnooy Kan, and D. B. Shmoys, The Traveling Salesman Prob- lem: A Guided Tour of Combinatorial Optimiza- tion, John Wiley & Sons, New York, NY, 1985.

[10] V. J. Leon and B. A. Peters, A comparison of setup strategies for printed circuit board assembly, Computers & Industrial Engineering, 34(1):219–

34, 1998.

[11] K. Rajkumar and T. T. Narendran, A heuristic for sequencing PCB assembly to minimize set-up times, Production Planning & Control, 9(5):465–

76, 1996.

[12] A. Shtub and O. Maimon, Role of similarity in PCB grouping procedures, International Journal of Pro- duction Research, 30(5):973–83, 1992.

[13] J. Smed, Production Planning in Printed Circuit Board Assembly, PhD thesis, University of Turku, 2002.

[14] J. Smed, M. Johnsson, M. Puranen, T. Leip¨al¨a, and O. Nevalainen, Job grouping in surface mounted component printing, Robotics and Computer- Integrated Manufacturing, 15(1):39–49, 1999.

[15] J. Smed, K. Salonen, M. Johnsson, T. Johtela, and O. Nevalainen, Grouping PCBs with minimum feeder changes, forthcoming in International Jour- nal of Flexible Manufacturing Systems, 2003.

[16] C. S. Tang and E. V. Denardo, Models arising from a flexible manufacturing machine, Operations Re- search, 36(5):767–84, 1988.

Viittaukset

LIITTYVÄT TIEDOSTOT

Since Commit has around 40 different test environments, and it took 57 minutes time and 43 mouse clicks to setup a single new test environment, a need to change the setup process

In the first model we derive the optimal financial contracts between a monopoly lender and two types of borrowers in an environment where good borrowers' return

Keskustelutallenteen ja siihen liittyvien asiakirjojen (potilaskertomusmerkinnät ja arviointimuistiot) avulla tarkkailtiin tiedon kulkua potilaalta lääkärille. Aineiston analyysi

Aineistomme koostuu kolmen suomalaisen leh- den sinkkuutta käsittelevistä jutuista. Nämä leh- det ovat Helsingin Sanomat, Ilta-Sanomat ja Aamulehti. Valitsimme lehdet niiden

First an ex- perimental setup was designed (using a bird cage) in which adult blue tits could be tested. The main goals of the setup were: 1) to be able to measure behaviour-

While plenty of studies in the …eld are about valuableness of preventive screeing programs, in this paper we consider a slightly di¤erent setup where the main focus is on

2.2.2 Lean implementation, tools and practices in HMLV environment Generally, lean principles have been implemented into different organizations in the HMLV industry in two

Hamouche and Loukaides (2018) applied machine learning to sheet metal forming, which is considered a critical component of modern manufacturing. In their study, a