You are on page 1of 12

Journal of Manufacturing Systems 44 (2017) 1–11

Contents lists available at ScienceDirect

Journal of Manufacturing Systems


journal homepage:www.elsevier.com/locate/jmansys

Modified artificial bee colony algorithm for scheduling optimization for printed
circuit board production
Cheng-Jian Lin a, Mei-Ling Huang b,∗
a Department of Computer Science & Information Engineering, National Chin-Yi University of Technology, No. 57, Sec. 2, Zhongshan Rd., Taiping Dist., Taichung
41170, Taiwan, ROC
b
Department of Industrial Engineering & Management, National Chin-Yi University of Technology, No. 57, Sec. 2, Zhongshan Rd., Taiping Dist., Taichung 41170,
Taiwan, ROC

article info abstract

Article history: The production scheduling of placement machines strongly influences the efficiency of printed circuit board (PCB)
Received 9 January 2017 production. This study focuses on the scheduling optimization for PCB production, that is, on maximizing throughput and
Received in revised form 11 April 2017 minimizing total assembly time and head moving distance. Three problems—the automatic nozzle changer (ANC) assignment
Accepted 12 April 2017 Available online 29
problem, the nozzle assignment problem, and the component pick-and-place sequence problem—are investigated using a
April 2017
modified artificial bee colony algorithm (MABCA) to enhance the production efficiency of placement machines.

Keywords:
The proposed scheduling optimization algorithm comprises three phases. First, the proportional dis-tribution method is
Printed circuit boards (PCB)
applied to optimize ANC assignment. Second, considering the component height as well as the pick, simultaneous pickup, and
Surface mount technology
Placement machine
component shape restrictions, the MABCA generates the nozzle assignment. Third, under the constraints of place restriction
Pick-and-place sequence and the predetermined nozzle assign-ment, the MABCA and the 2-opt algorithm generates the place sequence with the
Artificial bee colony algorithm (ABCA) minimal PCB assembly time. Finally, the proposed algorithm is experimentally demonstrated. The average number of pickups
in the solutions generated by the proposed method, the onsite engineer, and two related studies are 159.3, 167.2, 208.6, and
210.6, respectively. The proposed approach yields the least PCB assembly time. The average total assembly time (T total )
improved between on-site engineer and the proposed MABCA is 4.08%.

© 2017 Published by Elsevier Ltd on behalf of The Society of Manufacturing Engineers.

1. Introduction computational costs. Tiemei et al. [2] combined improved shuffled frog-
leaping algorithm and tabu search to significantly enhance production
Rapid technological advances have spurred the electronics industry and in efficiency and to obtain an optimal place sequence. Sun et al. [3] used genetic
turn the electronic parts manufacturing–related industries, placing them algorithms (GAs) and greedy algorithms to optimize pick sequence; they
among the most active industries world-wide. Enhancing the efficiency of maximized the number of simultane-ous pickups and mutation and selection
printed circuit board (PCB) production, in which the critical constraint is the operations and evaluated the performance of each scheduling solution in terms
scheduling of placement machines, has become a crucial issue in the of total assembly time. Du et al. [4] proposed hybrid GAs (HGAs), a combi-
electronics industry. Scheduling optimization for placement machines, which nation of heuristic algorithms and GAs, to optimize the efficiency of PCB
usually entails solving the feeder assignment problem, the nozzle assignment assembly and evaluated the total moving distance for each feasible solution.
problem, and the component pick-and-place sequence problem, has been The aforementioned studies have focused on the feeder assignment and
widely investigated. Neammanee et al. [1] applied a memetic algorithm (MA) component pick-and-place sequence prob-lems.
for optimizing the scheduling of a single placement machine. Compared with
commonly used distri-bution rules, MAs present more effective solutions but
involve high Ashayeri et al. [5] and Chen and Shen [6] applied linear pro-gramming
and heuristic algorithms to reduce the number of nozzle exchanges, the nozzle
work load, and the moving distance as well as to maximize the moving speed.
Jiang et al. [7] investigated the com-ponent place sequence problem in
multihead placement machines as a traveling salesman problem (TSP) [8] by
∗ using an improved
Corresponding author.
E-mail address: huangml@ncut.edu.tw (M.-L. Huang).

http://dx.doi.org/10.1016/j.jmsy.2017.04.006
0278-6125/© 2017 Published by Elsevier Ltd on behalf of The Society of Manufacturing Engineers.
2 C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11

Table 1
Summary of studied problems of related references.

Authors Methods Pick and place component simultaneous component


sequence height pickup shape
Neammanee et al. [1] memetic algorithm √
Tiemei et al. [2] shuffled frog-leaping algorithm and tabu search √
Sun et al. [3] genetic algorithms and greedy algorithms √ √
Du et al. [4] heuristic algorithms and genetic algorithm √
Ashayeri et al. [5] linear programming heuristic algorithms √
Chen and Shen [6]
Jiang et al. [7] ant colony algorithm √
Lin et al. [9] genetic algorithms √
Zhu et al. [10] differential evolution algorithm
Jiang et al. [11] MAX–MIN Ant System √
Chen et al. [12] diversification perturbation operator mutation operator √
modified tabu search
Loh et al. [13] genetic algorithm √
Our study √ √ √ √

ant colony algorithm. Lin et al. [9] used GAs to solve the TSP and evaluated system (AIS) was proposed to minimize the total completion time for a two-
the solutions in terms of total assembly time. Zhu et al. stage multi-machine assembly scheduling problem [15]. Except the field of
[10] employed a differential evolution algorithm to improve total assembly scheduling optimization, some of the impor-tance of optimization and
time. By using a MAX–MIN Ant System, Jiang et al. [11] proposed a novel optimized values in other fields are listed below. Valipour [16] has studied the
optimization method to resolve the TSP and the component place sequence variations of land use and irri-gation for next decades under different
problem in order to enhance compo-nent placement speed. Chen et al. [12] scenarios to establish a link for more important parameters in agricultural
analyzed the component place sequence problem by using diversification water management. The evolution of the major achievements in water lifting
perturbation oper-ator and mutation operator as well as a modified tabu search devices on the modern technologies was discussed [17]. A forecasting model
and successfully reduced placement speed. Loh et al. [13] simul-taneously of monthly rainfall was created by studying the effect of the length of the
solved feeder assignment and component sequencing problems by GA. The recorded data. Determining the proper length of rainfall month in each climate
aforementioned studies have focused on the nozzle assignment and the condition for agriculture schedule is recommended [18]. A study developed
component pick-and-place sequence problems and have approached the place and compared several models on a spatial and temporal estimation of potential
sequence problem as a TSP. To decrease complexity, most studies have evapotranspiration accord-ing to the peak and low events and climate change
ignored such restrictions as component height, pick-and-place, simultaneous alarm [19]. The annual precipitation was forecast by a non-linear autoregres-
pickup, and component shape restrictions as well as time costs of nozzle sive neural network (NARNN), non-linear input–output (NIO) and NARNN
change. Table 1 displays the discussed problems of related studies. with exogenous input (NARNNX) [20].

This study considers the following hardware restrictions: (1) component


Kechadi et al. focused specifically on modeling a cyclic job shop problem height restrictions, (2) time costs of nozzle change,
and developed an efficient neural network approach to minimize the cycle (3) pick restrictions, (4) place restrictions, (5) simultaneous pickup
time of a schedule [14]. An artificial immune restrictions, and (6) component shape restrictions. A modified arti-

Fig. 1. Machine architecture.


C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11 3

Fig. 2. Pick-and-place restrictions in SMT machine operation.

ficial bee colony algorithm (MABCA) is proposed and is used to solve (2) Time costs of nozzle change: Components differ in their shapes and thus
practical production problems for generating feasible solu-tions with efficient require different nozzles for pickup. The heads must therefore change
production yield. nozzles to pick certain components, which entails time costs.

2. Problem statement (3) Pick restrictions: The heads have physical limitations in picking
components off the feeder station; that is, certain heads cannot access
2.1. Machine description certain feeders. For example, in Fig. 2, Heads 2–8 cannot reach Slot a.

Surface mount technology (SMT) placement machines are com-plex (4) Place restrictions: Similar to restriction (3), certain heads can-not place
surface mount devices that automatically pick up electric components and components on certain positions. For example, in Fig. 2, Heads 7 and 8
place them in appropriate positions on a PCB at high speed and accuracy. cannot place components on Position b.
They are crucial in PCB assembly. The application of the proposed algorithm (5) Simultaneous pickup restrictions: The number of pickups, and thus
to a multi-head gantry machine (Fig. 1) is discussed in this paper. assembly time, can be decreased if the heads can pick up components
simultaneously. The following conditions must be satisfied to enable
The major components of an SMT machine and their functions are as simultaneous pickups: (a) the necessary components are in the tape
follows. feeder, (b) one of the neighboring feeder slots of each filled feeder slot
must be empty, (c) the com-ponents must have the same pickup angles,
(1) Head: Houses nozzles, which pick up components and (d) the same camera must be used for image recognition. In the
(2) Nozzles: Different nozzles pick up different components examples illustrated in Fig. 3, the numbers of simultaneous pickups in
(3) Automatic nozzle changer (ANC): Stores and exchanges nozzles 3(a) and 3(b) are 7 and 3, respectively. Optimal pickup sequences are
(4) Feeder: Stores and provides SMT components; different feeders are used those that have a large number of simultaneous pickups and thus entail
for different components fewer pickups.
(5) Feeder slots: spaces to insert feeders
(6) Feeder station: houses the feeder slots (6) Component shape restrictions: The components differ in shape and size.
(7) PCB table: workspace on which the PCB is placed Components larger than 15 mm in diameter enter the operational space of
(8) Arm: moves the heads to appropriate positions for picking and placing the adjoining head. For example, in Fig. 4, Head 7 cannot pickup
components components because Head 8 is picking and placing a large component.
(9) Fly vision: confirms that appropriate and undamaged com-ponents are
used as well as resets the X-Y axis for precision component placement
2.2. Problem statement and assumptions

As shown in Fig. 1, the SMT machine has eight heads that can house one The objective of this study is to generate the optimal scheduling (i.e., the
nozzle each, one ANC with space for sixteen small noz-zles and four large shortest processing time) for PCB assembly. In practice, the on-site engineers
nozzles, and ninety feeder slots for tape and stick feeders. The heads move determine the feeder station configuration, and this configuration is not
along the X–Y axis to first pick specific components from the feeders and changed even when the PCB configuration changes. Therefore, feeder station
then place the picked compo-nents at the appropriate positions. This pick-and- configuration is not considered in this study.
place process is termed the “pick-and-place work cycle” and in short as the
“cycle.” We discuss the following three inter-effect problems in this study.
To preclude the generation of infeasible solutions, the following
restrictions are considered in this study:
(1) ANC assignment problem
(1) Component height: Because the components have nonuniform heights,
the shortest component must be picked and placed first to prevent The ANC has 16 small cells and 4 large cells for placing nozzles. The
collisions during head movement. number of ANC cells assigned to each nozzle crucially influ-
4 C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11

Fig. 3. Examples illustrating restrictions in simultaneous pickup.

(1) Pick time (T1), (2) Place time (T2), and (3) ANC change time
(T3).

Sets
c Cycle, c= 1, 2 . . . , tc.
i The ith component in this cycle, i = 1, 2 . . . , N
j The last component in this cycle, j = N

Parameters
Fig. 4. Example illustrating component shape restrictions. N Number of heads
P Number of pickups at present
ences the assembly performance; therefore, ANC assignment must be v Vacuum on delay time
effective. u Pick up waiting time
b Blow time
(2) Nozzle assignment problem o Load wait time
a Time for nozzle changes
Components differ in shape and therefore require specific noz-zles for z The specific nozzle changing at present
pickup. To generate nozzle assignment with the fewest pickups and nozzle P Component placing position on PCB
changes, the type and number of nozzles mounted to the heads of the SMT S Ongoing slot position
machine must be determined under the constraints of simultaneous pickup as A Ongoing ANC position for nozzle changes
well as place restrictions. T() Time for head movement
Tz(c) Total time for moving up and down for z axis

(3) Component pick-and-place sequence problem


Decision Variables
tp Number of pickups in this cycle
A feasible component pick-and-place sequence must be gen-erated under
cn Number of nozzle changes
the constraints of minimal moving distance and component height and time
d() Distance for head movement
costs of nozzle change restrictions. Fig. 5 summaries the relationship among
tc Total number of cycles for the scheduling
three problems. Differ-ent ANC configurations yield different nozzle
assignments, which in turn alter the pick-and-place sequence. Min(Ttotal) The objective function is to minimize the total assem-bly time

2.3. Problem formulation tc

Min Ttotal = (T1 (c) + T2 + T3) (1)


A mathematical time model of PCB assembly was developed according to
c=1
the practical operation of placement machines. This model comprises three
components:
s.t . (1) T1 Time for picking up the components
C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11 5
−1 + Tz (p + 1) + vp+1 + up+1 , c = 1
p T d Sp , Sp+1
tp 1

T1 (c) tp 1 (2)
= −

T d Pj , S1 + Tz (1) + v1 + u1 + T d Sp , Sp+1 + Tz (p + 1) + vp+1 + up+1 , otherwise


=

p=1

looking for new food sources and adopt random search in their
(2) T2 Time for placing the components neighborhood. Search formulas are described as follows.

V =x x −x
ij ij + ij ij kj (5)
j
Vi , iff (Vi ) > f (Xi )
T2 = T d Sj , P1 + Tz (1) + b1 + o1 + Xi = (6)
Xi , otherwise
i=2
(3) where Vij is the jth dimension for food source i,
(T (d (Pi−1, Pi )) + Tz (i) + bi + oi ) Onlooker bees select a new food source according to the prob-
ability value (Pi) associated with that fitness value (fiti ) of the
employed bee. Pi and the search rule are defined as follows:
(3) T3 Time for nozzle changes when needed
fiti
cn Pi = SN fitn (7)
(4) n=1
T3 = T d Pj , A1 + T (d (Acn , S1)) +T (d (Az , Az+1)) + az where
SN represents the total number of food source. When
z=1
employed or onlooker bees are not updated during a specific period
3. Using an MABCA for scheduling optimization for PCB of time, the scout bees adopt a random search to find new food
assembly source.

j j j j
In 2005, Karaboga proposed the artificial bee colony algorithm (ABCA) Xi = Xmin + rand [0, 1] Xmax − Xmin (8)
[21], a heuristic algorithm that imitates the behavior of bees for optimizing where Xi is the abandoned food source and j is the dimension. This study is to
numerical problems to find the best parameter vec-tor that minimizes an minimize the total assembly time for placement machine under consideration
objective function. There are employed bees representing specific food of pick-and-place sequence, com-ponent height, simultaneous pickups, and
sources, onlooker bees choosing food sources, and scout bees searching for component shape. The feasible solution of traditional ABCA could be real
food randomly in ABCA. A general ABCA consists of initialization phase, numbers. In the scenario that this study focuses, the solutions should be
employed bees phase, onlooker bees phase, and scout bees phase. Employed integers. Instead of vector subtraction in the traditional ABCA, if the original
bees are

Maximize benefit of
nozzle assignment
ANC
assignment

Minimize the number of nozzle


changes
Maximize the number of simultaneous
Nozzle pickup
assignment

Components Components
place sequence pick sequence

Minimize head moving The component Minimize the number of pickup


distances assignment of Maximize the number of
simultaneous pickup
cycles

Minimize the number of nozzle changes


Maximize the number of simultaneous pickup

Total assembly time of the scheduling

Fig. 5. Relationships among sub-problems in the scheduling optimization for an SMT machine.
6 C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11

Table 2
The input and output of three phases.

Phase Input Output

1 The number of components ANC assignment


The number of ANC types
2 Output from Phase 1 Total number of cycles
Component height, Component width Number of pickups for each cycle
Restriction of head movement Sequence of pickups for each cycle
Feeder assignment Selected ANC for each cycle
Component type and number of components Selected head for each cycle
Selected feeder for each cycle
3 Output from Phase 1 and 2 Output from Phase 2
Position of components Component place sequence for each cycle

Table 3
The information of components and nozzles.

Component Nozzle

Type No. Type Size Total Number of usage


A 20 AN2 small 40
B 20 AN2 small
C 30 AN3 small 30
D 70 AN4 small 175
E 105 AN4 small
F 10 AN6 large 10
G 5 AN7 large 5

feeder slot number of 2 arrays are the same, the cell in the new array must be
left blank; otherwise, copy the slot number of Xkto the new array. The third
modification of MABCA is the application of randomization if not generating
numbers between 0 and 1; it is to swap two positions randomly.

This study modified the ABCA for optimizing the scheduling of PCB
assembly in the following three phases. Phase 1: Proportionally allocate
nozzles to the ANC according to the working components. Phase 2: Apply
the MABCA to minimize both the number of pick-ups and the number of
nozzle changes under the constraints of
(1) component height restrictions, (2) pick restrictions, (3) simul-taneous
pickup restrictions, and (4) component shape restrictions. Phase 3: For the
nozzle assignment in Step 2, use the MABCA and the 2-opt algorithm to
generate the component place sequence that yields the minimal PCB
assembly time. The architecture of the pro-posed MABCA is presented in Fig.
++
6. Software C was used in this study.

The three phases of optimization work in series, and to clearly illustrate


the operating procedure, the input and output among these three phases are
displayed in Table 2.

3.1. Phase I: proportionally allocate nozzles to the ANC

Nozzle assignment, which crucially affects PCB assembly scheduling, is


performed proportional to nozzle use. An example is illustrated herein.

Step 1: Table 3 lists the working components and their basic information.
Components of different types must be picked by a nozzle of the
corresponding type. For this example, consider nozzle types AN2, AN3, and
Fig. 6. Scheduling optimization for PCB assembly using the MABCA.
AN4. Of the total components, determine the proportion of the components
corresponding to the selected nozzle types and nozzle size (i.e., small and
large). Among small nozzles, the proportion of components requiring nozzles component type AN4, whereas only 8 heads are available. There-fore, the 2
of type AN4, AN2, and AN3 are 72%, 16%, and 12%, respectively (Fig. 7). excess nozzles are assigned to AN2. Thus, the revised assignment is as
Accordingly, 10, 3, and 2, nozzles of type AN4, AN2, and AN3, respectively, follows: 8, 5, and 2 nozzles for components of type AN4, AN2, and AN3,
are assigned to pick and place small components. respectively.
Step 3: Determine whether any ANC cells are left unassigned in Step 3.
Step 2: If the number of nozzles for the component type with the largest Assign unassigned cells to the nozzles for the component type with the largest
proportion exceeds the number of heads, assign the excess nozzles to the proportion. Subsequently, perform Steps 3 and 4 again until all cells are
component type with the second largest proportion. Repeat this process until assigned. In the example, one cell remains unassigned after Step 3. We
none of the assigned numbers exceed the number of heads. In the example, 10 initially assign this cell to AN4, bringing the total AN4 nozzles to 9, which is
nozzles are initially assigned to infeasible. Therefore, the vacant
C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11 7

AN2
16%
AN3
12%
AN4
72%

AN2 AN3 AN4


Fig. 7. The proportion of small size nozzles.

cell is assigned to AN2. The final allocation is 8, 6, and 2 for nozzles for
AN4, AN2, and AN3, respectively. Fig. 8 depicts the step-wise progress in
nozzle assignment.

3.2. Phase II: nozzle assignment and component pick sequence

The flowchart for nozzle assignment and component pick sequence is


presented in Fig. 9. The generated results are evaluated in terms of the
number of pickups generated by the MABCA.
Shorter components must be picked up and placed first to avoid collisions
among heads during operation. As an example, consider the component
heights listed in Table 4. Components are grouped according to component
height restriction. In this example, this restriction is 2 mm; therefore,
components of height 0.5–2.4 mm form the height group. The encodings are
in 2 arrays. The upper array records the feeder slot numbers (e.g., in Fig. 10,
encoding numbers 35, 37, 39,. . ., 49 represent the feeder slot numbers), and
the lower array indicates the component shape (1 = small compo-nent; −1 =
large component). Nozzles require more space when picking and placing
large components, meaning that the adjoining nozzles become
nonoperational.

The traditional ABCA cannot solve the PCB assembly problem; hence,
the modified ABCA is proposed for optimizing PCB assembly scheduling.
The MABCA uses the following expression:

Vij = Xij ⊕ random ∗ Xkj Xij (9)


where Vij is the final food location; Xij is the position for the ith bee in
dimension j before the move; and Xkj is the kth bee in dimen-sion j have been
chosen. Xkj Xij states that if the original feeder slot number of 2 arrays are the
same, the cell in the new array must be left blank; otherwise, copy the slot
Fig. 9. Flowchart for nozzle assignment and component pick sequence.
number of Xkto the new array (Fig. 11). As illustrated in Fig. 12, to prevent
the solu-tion from being trapped in the local optimal, the MABCA randomly
exchanges two points in the new array on the basis of the muta-

Fig. 8. Number of nozzle assignment on ANC by proportional distribution.


8 C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11

Table 4
Component height list.

Component Component Component


nozzle slot Coordinate
height type(No.) shape

0.5mm R1(35) AN2 large 35 (378,11)

R3(44) AN2 small 37 (402,11)

H2(20) AN3 small 39 (426,11)

1.2mm H1(30) AN2 small 41 (450,11)

H5(10) AN1 small 43 (474,11)


1.7mm
R5(15) AN4 small 45 (498,11)

R4(18) AN5 small 47 (522,11)

2.4mm H3(25) AN5 small 49 (546,11)

H4(20) AN2 small 33 (354,11)

H2(35) AN7 large 50 (558,11)


2.6mm
R6(10) AN6 large 51 (570,11)

tion operator random ∗ Xkj Xij . The


Fig. 10. The encoding of component pick sequence.

Fig. 11. Updating the food source location.

Fig. 12. Mutation operation.

repeated numbers are then skipped, and the

slot numbers are sequentially copied to the


new array. The final food source location Vij is shown in Fig. 13.

Fig. 13. New food source location.

Fig. 14 illustrates the decoding of the food source. Sequen-tially assign


feeder slots to the heads and determine the space requirements and
corresponding nozzles under the considerations of component type and size.
For example, Head 1 uses nozzle AN2 to pick the component in the feeder
slot 35. This large compo-nent occupies additional space and thus, the
adjacent head (Head
2) becomes nonoperational until Head 1 completes its operation. The larger
the fitness value is, the fewer the number of pickups and

Fig. 14. Decoding of food Source: (a) p = 7, (b) p = 2.


C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11 9

Fig. 15. Example nozzle assignment and component pickup sequence.

nozzle changes. The corresponding fitness value (fit pc) is defined in as


follows:
1

fit pc = p + c (10)
where p and c are the number of pickups and the number of noz-zle changes,
respectively. Head 1 uses nozzle AN2 to perform the first pick, following
which Heads 3–8 use nozzles AN2, AN3, AN2, AN1, AN4, and AN5,
respectively, to pick components in the sec-ond round, as presented in Fig.
14(b). The number of pickups in Fig. 14(a) and (b) are 7 and 2, respectively.
The solution with the fewest pickups is the optimal solution.The decoding
process gen-erates a nozzle assignment and a component pickup sequence.
The corresponding component is first assembled, and before the next move,
another nozzle assignment and component pickup sequence is generated. In
the example presented in Fig. 15, if slot 35 has 10 components, the system
first completes 10 cycles, following which the procedure is repeated to
generate a new nozzle assignment and component pickup sequence until all
components are assembled.

3.3. Phase III: component place sequence

Under the constraints of the predetermined nozzle assignment and


component pickup sequence (as determined in Sec. 3.2) as well as place
restrictions, the place sequence is optimized next. The pro-posed MABCA
applies the mathematical model to evaluate the total assembly time. The
solution with the shortest total assembly time is the optimal solution. Fig. 16
depicts the flowchart of this solution process.

In the decoding process, the MABCA sequentially places compo-nents at


the food source according to component type. For example, in Fig. 17, feeder
slot 35-1 to 35-35 represents the PCB placement coordinates of all
components. The fitness value (fit total) is defined according to component
type in Eq. (11).

fit total = 1/Ttotal (11)


where Ttotal is the total assembly time and has been defined in Sec. 2.3. The
decoding process sequentially schedules the same
components in the place sequence. For the example scenario in Table 3, Head
1 is arranged to pick up the component in slot 35. This component is large
and occupies the operational space of Head
2. Therefore, Head 2 cannot pick any component in this cycle and hence is
marked “X” in Table 5.
After generating the initial scheduling, the place sequence in each cycle is
treated as a TSP, and the proposed method uses the 2-opt algorithm to
optimize the local search. The 2-opt algorithm sequentially exchanges 2 place
sequences and records the fitness value of the new sequence. This procedure
is repeated until the
Fig. 16. Flowchart of components place sequence generation.
optimal solution is found. An example is presented in Fig. 18.

4. Experimental results

Table 6 summarizes the information pertaining to ten PCBs. In


this section, experimental results from the on-site engineer and
10 C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11

Fig. 17. Encoding of component place sequence.

Table 5 Table 6
The placement machine scheduling. The data of PCB .

Cycle Head Pick sequence Place sequence No slot nozzle PCB Components Component types Nozzle types feeders

1 1 1 1 35-2 35 AN2 PCB-1 48 3 1 3


1 2 X X X X X PCB-2 62 8 3 8
1 3 2 2 37-3 37 AN2 PCB-3 78 2 1 2
1 4 2 3 39-1 39 AN3 PCB-4 100 11 3 11
1 5 3 4 41-10 41 AN2 PCB-5 177 7 2 7
1 6 2 5 43-5 43 AN1 PCB-6 204 3 1 3
1 7 2 6 45-9 45 AN4 PCB-7 316 6 1 6
1 8 2 7 47-17 47 AN5 PCB-8 396 14 4 14
2 1 1 1 35-3 35 AN2 PCB-9 720 7 2 7
2 2 X X X X X PCB-10 796 6 1 6
2 3 2 2 37-5 37 AN2
.
.
. Table 7
90 1 1 2 50-2 50 AN7 The initial parameters of MABCA and GA.
90 2 X X X X X
90 3 2 2 51-2 51 AN6 MABCA

Population Cycle Limit Component height range


100 3000 20 2mm
GA
Population Generation Crossover rate Mutation rate Component height range
100 3000 0.8 0.2 2mm

tially dominates the others when the number of components is high. The
average number of pickups in the solutions generated by the proposed method,
the onsite engineer, and the related studies
[3] and [4] are 159.3, 167.2, 208.6, and 210.6, respectively. In addi-tion, the
proposed MABCA results in the least number of nozzle changes, especially
when higher numbers of nozzle types are used in the experimental PCBs. The
numbers of nozzle types required for PCB-2, PCB-4, and PCB-8 are 3, 3, and
4. The proposed MABCA generates the least number of nozzle changes 3, 6,
and 10, respec-tively, when comparing with other methods. The average total

assembly time (Ttotal) improved between on-site engineer and the proposed
MABCA is 4.08%.Apart from the number of pickups and
nozzle changes, the moving distance of heads substantially affects total
Fig. 18. An example of the 2-opt process.
assembly time. A shorter moving distance may reduce total assembly time.
Moving distances in the proposed and other meth-ods are compared in Table
9. Compared with the other methods, the proposed method has a substantially
results from two related studies that used GAs [3,4] as well as from the shorter moving distance; moreover, the distances in the proposed approach are
proposed method are compared.The initial parameters settings for the the shortest in eight of the ten experimental scenarios. Even in the case of the
MABCA and GA are listed in Table 7. The total assembly time increases with two exceptions (PCB-2 and PCB-6), the proposed method yields the minimal
the number of pickups and nozzle changes. As can be seen from Table 8, the total assembly time 603.66 (in Table 10) when consider-ing the number of
proposed algorithm outperforms the other methods. In particular, the pickups and nozzle changes. The total assembly
proposed approach substan-

Table 8
Comparison results of numbers of pickup (tp) and nozzle change (cn).

PCB Onsite Engineer Loh et al. [13] Sun et al. [3] Proposed MABCA

Number of Number of Number of Number of Number of Number of Number of Number of


pickup nozzle change pickup nozzle change pickup nozzle change pickup nozzle change

PCB-1 19 0 26 0 34 0 19 0
PCB-2 58 6 50 9 46 9 38 3
PCB-3 59 0 58 0 63 0 58 0
PCB-4 60 9 85 11 83 14 59 6
PCB-5 93 0 111 3 120 6 96 3
PCB-6 140 0 143 0 137 0 134 0
PCB-7 177 0 240 0 223 0 178 0
PCB-8 267 11 289 12 315 13 234 10
PCB-9 455 0 588 5 574 11 447 5
PCB-10 344 0 516 0 491 0 330 0
The average number of pickup167.2 210.6 208.6 159.3
C.-J. Lin, M.-L. Huang / Journal of Manufacturing Systems 44 (2017) 1–11 11

Table 9 randomization in the study. Definitely, the experimental results are not
Comparison results of the head moving distance (d()).
guaranteed to be repeated at next iteration. To reduce the uncertainty (increase
PCB Onsite Engineer Loh et al. [13] Sun et al. [3] Proposed MABCA the reliability), careful experiment designs or increasing the number of
iteration are suggested in the experi-ments. One more consideration is on the
Head Moving Distance (mm)
convergence rate. When the number of components grows dramatically,
PCB-1 12255.6 14539.5 14319.4 11502.8
execution time for the convergence could be long. How to increase the
PCB-2 12596.7 19364.3 18997.3 15880.6
PCB-3 9716.34 9033.89 9128.17 8032.555 convergence rate without deteriorate the solution quality could be investigated
PCB-4 23997.5 34597.2 32089 22225.1 in the future.
PCB-5 24799 29265.4 30182.7 22034.9
PCB-6 46511.7 52649.2 53294 47357.9
PCB-7 72998.9 83583.1 81966 71878.2
PCB-8 83538.7 103185 105624 80223.8
Acknowlegment
PCB-9 98349.4 83868.9 84211.5 76571.2
PCB-10 190422 199049 200228 183794 This study is partially supported by Ministry of Science and Technology,
Republic of China under grant number MOST 105-2221-E-167-012.
Table 10
Comparison results of total assembly time (Ttotal ).
References
PCB Onsite Engineer Loh et al. [13] Sun et al. [3] Proposed MABCA

Total assembly time (s) [1] Neammanee P, Reodecha M. A memetic algorithm-based heuristic for a
scheduling problem in printed circuit board assembly. Comput Ind Eng
PCB-1 34.2381 38.6468 40.1539 32.4067 2009;56:294–305.
PCB-2 112.718 141.315 140.3446 106.82 [2] Chen T, Luo J, Hu Y. Component placement process optimization for multi-head
PCB-3 140.505 138.234 141.839 131.217 surface mounting machine based on tabu search and improved shuffled frog-leaping
PCB-4 168.727 245.167 236.143 161.204 algorithm. IEEE Intell Systd Appl (ISA) 2001:1–4.
PCB-5 311.798 351.586 373.795 306.05 [3] Sun DS, Lee TE, Kim KH. Component allocation and feeder arrangement for a dual-
PCB-6 146.268 160.807 162.449 145.33 gantry multi-head surface mounting placement tool. Int J Prod Econ 2005;95:245–64.
PCB-7 221.835 259.24 249.747 220.303
PCB-8 631.713 745.796 711.205 603.66 [4] Du X, Li Z. Placement process optimization of dual-gantry turret placement machine.
PCB-9 1292.53 1346.26 1341.29 1177.29 Adv Intell Mechatron 2008:1266–71.
[5] Ashayeri J, Ma N, Sotirov R. An aggregated optimization model for multi-head SMD
PCB-10 553.289 622.377 619.504 538.745
placements. Comput Ind Eng 2011:99–105.
[6] Chen S, Shen Y. An integrated mathematical model for optimizing the component
placement process with a multi-heads placement machine. Proceedings of the 29th
times (Ttotal) for 10 experimental PCBs are listed in Table 10. Obvi-ously, Chinese Control Conference (CCC) 2010:1839–42.
the proposed MABCA, with the least total assembly times, [7] Jiang J, Liu C, Zhang K, Wang Z, Tan Z, Chen X. Program of route optimization for
surface mount. IEEE Intell Syst Appl (ISA) 2010:1–4.
dominates the others for all PCBs. The proposed MABCA produces a feasible
[8] Flood MM. The traveling salesman problem. Oper Res 1956;4:61–75.
solution within 10 min; while on-site engineers usually spend hours on [9] Lin WQ, Zhu GY. A genetic optimization approach to optimize the multi-head surface
working one feasible scheduling. The on-site engi-neers are pleased to apply mount placement machine. Lect Notes Comput Sci 2008;5315:1003–12.
the proposed MABCA for saving working time for generating feasible
[10] Zhu GY, Chen ZJ. A differential evolution optimization approach to solve the pick-and-
solutions. placing problem. Fifth International Conference on Natural Computation 2009;4:66–70.

[11] Jiang J, Chen X, Zang M, Wang Z, Tan Z. Optimization of the surface mount technology
5. Conclusions
based on the max-min ant system. IEEE Future Comput Commun (ICFCC) 2010;2:45–7.

This study optimized the scheduling of placement machines by solving [12] Chen T, Luo J, Du J, Hu Y. A modified tabu search algorithm for component
three sub-problems − the ANC assignment problem, the nozzle assignment placement process optimization of multi-head surface mounting machine. Proceedings
of the 31st Chinese Control Conference 2012.
problem, and the component pick-and-place sequence problem − under [13] Loh TS, Bukkapatnam S, Medeiros D, Kwon H. A genetic algorithm for
considerations of (1) component height restrictions, (2) time costs of nozzle sequential part assignment for PCB assembly. Comput Ind Eng 2001;40:293–
changes, (3) pick restrictions, 307.
[14] Kechadi M, Low KS, Goncalves G. Recurrent neural network approach for cyclic
(4) place restrictions, (5) simultaneous pickup restrictions, and (6) component job shop scheduling problem. J Manuf Syst 2013;32(4):689–99.
shape restrictions. The proposed approach has three phases. First, the [15] Al-Anzi F, Allahverdi A. An artificial immune system heuristic for two-stage multi-
proportional distribution method is applied to optimize ANC assignment. machine assembly scheduling problem to minimize total completion time. J Manuf Syst
2013;32(4):825–30.
Second, considering restrictions (1), (3), [16] Valipour M. Variations of land use and irrigation for next decades under different
(5), and (6), the MABCA generates the nozzle assignment. Third, considering scenarios. Irriga: Braz J Irrig Drain 2016;1(1):262–88.
restrictions (4) and the nozzle assignment determined in the second phase, the [17] Yannopoulos S, Lyberatos G, Theodossiou N. Etc. evolution of water lifting devices
(Pumps) over the centuries worldwide. Water 2015;7(9):5031–60.
MABCA and the 2-opt algorithm generates the place sequence with the
[18] Valipour M. How much meteorological information is necessary to achieve reliable
minimal PCB assembly time. accuracy for rainfall estimations? Agriculture 2016;6(4 p):p53.
Experimental results of assembling ten PCBs by using a multi-head [19] Valipour M, Defidkouhi M, Sarjaz M. Selecting the best model to estimate potential
evapotranspiration with respect to climate change and magnitudes of extreme events.
placement machine showed that the proposed method generates the shortest
Agric Water Manage 2017;180:50–60.
total assembly time when compared with related studies. The proposed [20] Valipour M. Optimization of neural networks for precipitation analysis in a humid
method thus enhances production efficiency and reduces production costs. region to detect drought and wet year alarms. Meteorol Appl 2016;23(1):91–100.

[21] Karaboga D. An idea based on honey bee swarm for numerical optimization, Technical
Problem of feeder assignment is not included in this study, and could be Report TR06, Erciyes University, Engineering Faculty. Comput Eng Dep 2005.
included in the future research. The proposed MABCA uses

You might also like