Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 20

Bacteria foraging optimization algorithm for robotic

cell scheduling problems

Arindam Majumder1, Dipak Laha2


1 Mechanical Endieering Deparmant, National Institute of Technology, Barjala, Jirania, Agartala 799046 India
2 Mechanical Endieering Deparmant, Jadavpur University, Kolkata 700032 India

ICMPC 2016
Presentation Outline
• Introduction
• Objective
• Problem definition and the objective function
• Proposed algorithm
• Results and discussion
• Conclusion
• References

2
Introduction
• Now a days in most of the industries the material handling is carried out by a
set of robots in the robotic cells.
• At the initial stage many researchers developed different mixed integer
programming (MIP) model to solve cyclic scheduling problem [1-4]. While
some of the researchers proposed various branch and bond algorithms and
heuristic algorithms for solving such models [5-7].
• But they failed to solve those with large part size as because of their higher
complexity.
• This calls metaheuristic algorithms, namely, simulated annealing (SA), Genetic
algorithm (GA), Particle Swarm Optimization (PSO), Cuckoo Search Algorithm
(CS), Ant Colony Optimization Algorithm (ACO), Bat Algorithm etc. to solve
robotic cell problems with large part size.
• Now-a-days BFO draws the attention of various researchers due to its ability to
solve real-life optimization problems very efficiently and was already been
used in various field of engineering and management related problems such
as: rapid prototyping [8], scheduling [9, 10], image processing [11, 12], short-
circuit analysis of induction machine [13].

3
Objective
• The main objective of this study is to find the
applicability of BFO algorithm for solving large-
sized robotic cell scheduling problems.
• The performance of the proposed algorithm was
measured by comparing its results with lower
bound due to non-availability of exact solution.
• Further, a comparison between the results of this
BFO and existing algorithm has been done to find
the superiority of the algorithm over the other
existing meta-heuristics.

4
Problem definition and the objective
function
In this present study a two-machine robotic cell scheduling with sequence-
dependent setup times (2RCSDST) and different loading / unloading time for
each part was borrowed as case study. The mathematical formulation along
with constrains, established by M.H. Fazel Zarandi et al. (14) in their study, are
illustrated as follows:

Ti  i , i 1   6  g  i 1   l1 i , i 1   u1 i 1   l2  i , i 1   u2  i   d  i 
 t1 i 1   t2 ( i )

T2  i ,  i 1   8  g  i 1   l1  i ,  i 1   u1  i 1   l2  i , i 1   u2  i  
w1  i 1   w2  i 

5
where,
w2  i   max 0, t2  i   4  g  i 1   l1  i ,  i 1 

w1  i 1   max 0, t1  i 1   w1  i   4  u2 ( i )  d  i 

Equation (1) is applicable, if 𝑡1(𝜎𝑖+1)+𝑡2(𝜎𝑖)<2𝛿, otherwise, Equation


(2) is used. Using Equations (1) and (2), total cycle time (TCT) is the
sum of the partial cycle times between two consecutive parts in the
i-th and (i+1)-th position of the sequence and it can be written as:
n
TCT   ( PCT ( i ,  i1 ))
i 1

If MPS is used, the optimal total cycle time (TCT*) is given as:
n
TCT   min(T1 ( i , i 1),T2 ( i ,  i 1 ))
*
i 1

6
Figure 1. A centered robot cell with two machines, one input and one output drive

7
Basic Bacteria Foraging Algorithm
• Bacteria foraging optimization algorithm is a newly introduced swarm inspired algorithm [15]
based on the group foraging strategy of e-coli bacteria.
• The flagella help the bacteria to perform operations namely tumble and swim during foraging
• By taking inspiration from this phenomena of e-coli bacteria Passino [15] introduced four
major steps namely Chemotaxis, Swarming, Reproduction, and Elimination-Dispersal in
BFO.
 i 
• Chemotaxis:  i  j  1, k , l    i  j, k , l   C  i 
T  i    i 
s

• Swarming: J CC ( , P( j , k , l ))   J CC ( ,  i ( j , k , l ))
i 1
s P s P
  [d attrac tan t exp( wattrac tan t  ( m   mi ) 2 )]   [ hrepellant exp( wrepellent  ( m   mi ) 2 )]
i 1 m 1 i 1 m 1

• Reproduction: During this process the bacteria with least health die Sr(= S/2) while each of
the healthier bacterium splits into two bacteria which are located in this vacant place.
• Elimination-Dispersal: The life of bacteria may get affected because of gradual of sudden
variation in the local environment. In order to include this phenomenon in bacteria foraging
optimization algorithm, some of the bacteria are eliminated with a probability Ped and are
replaced by some randomly generated bacteria within the search space.

8
Start • p: Dimension
• S: Population Size
Initialization
• Nc: Life Time
Evaluation
• NS: Swim Length Limitation
Moving • Nre: Reproduction Steps
Tumble / Swim
• Ned: Elimination-Dispersal Steps
No • Ped: Elimination Rate
End of Life?
Yes • dlt(i): random number on [-1,1]. where i
Reproduction from 1 to p.
• c(i): Step Size for the dimension.
No
End of Rep.?
Yes
Elimination
No
End of Eli.?
Yes
End
Figure 2: flowchart of bacterial foraging optimization
algorithm 9
Proposed algorithm
• Chemotaxis: For this modified algorithm the tumbling and swimming of each bacterium was
carried out by pairwise interchange mutation. However, during Elimination-Dispersal cyclic shift
neighbourhood mutation was used for random movement of each bacterium.

Table 1. An example of Pairwise interchange mutation and cyclic shift neighbourhood mutation
Pairwise interchange mutation for Cyclic shift neighbourhood mutation for
tumbling and swimming if Ci=1 random movement during Elimination-
(𝑓1 𝜃 𝑖 , 𝐶𝑖 ) Dispersal ((𝑓2 𝜃 𝑖 ))
θi(j,k,l): 3 2 1 4 5 θi(j,k,l): 3 2 1 4 5
θi(j,k,l): 3 2 1 4 5
θi(j+1,k,l): 3 4 1 2 5 θi(j,k,l+1): 3 1 2 4 5

• Swarming: for cell-to-cell signalling the difference between two bacterium positions were
obtained by calculating the total number of elemental difference between the two sequences.

Table 2. An example of calculation of elemental difference between the two sequences


Detected elemental difference between the two sequences Discrete Difference
(Θm-Θmt)
Θm: 1 2 4 3 5 Θm: 1 2 4 3 5
2
Θmt: 1 3 4 2 5 Θmt: 1 3 4 2 5

10
Figure 3. Psudo code of Discrete Bacteria Foraging Optimization Algorithm
Generate initial population
While (Elimination-dispersal < Ne) or (stopping criterion) do
While (Reproduction < NRe) or (stopping criterion) do
While (Chernotaxis < Ncr) or (stopping criterion) do
for Bacteria i do
Tumble operation: new i
 f1  i , Ci  & compute Jinew
Swim operation: Let m=0
While m<Ns do
Let m=m+1
If Jsw< Jsw then
Let, compute corresponding Ji and Jisw
Let, new i
 f1  i , Ci  & compute corresponding J(θnew)
Let, J sw
new
 J new  J cc ( new , )
else
m=Ns
end
end
end
end
Sorting bacteria by considering ascending order of corresponding Jsw
The bacterias, Sr=S/2 with highest cost die and the other Sr with best fitness values split.
Update the corresponding J and Jsw accordingly
end
Eliminate and dispersal the bacteria to random location using Cyclic shift neighborhood mutation ( f 2 ( i )) with a probability
Ped.
Update the corresponding J and Jsw
end

11
Results and discussion
• In this study, the algorithm was implemented to solve 2RCSDST problem for finding
the applicability of BFO in robotic cell problem. In order to evaluate the efficiency of
this algorithm during solving such problems, the computational tests based on
solution quality and CPU time for convergence were carried out. During the
computational tests problems related to 2RCSDST were taken as case studies and
the performance of the BFO was compared with the two most popular metaheuristic
algorithms, GA by Reeves (1995) [16] and SA by Zarandiet al. (2013) [14]. Further,
the performance of the algorithm was tested by comparing it with lower bond
solution (proposed by Zarandi, M. F. H. et al).
• The input parameters of BFO applied for this study are as follows:
dattractant=hrepellant=0.1, wattractant=0.1, wrepellant=10, Number of bacteria (S)
= 20, Number of chemotaxis steps (Nc) = 2, Number of swimming steps (Ns) = 10,
Number of reproduction steps (Nre) = 100, Number of elimination-dispersal steps
(Ned) = 4, Probability of elimination-dispersal (Ped) = 0.5.

12
Table 3: Basic information related to test problem

Processing times interval Loading/unloading times interval δ


[1,100] [1,30] 50

Table 4. Best, Worst and Mean Solution achieved by each method


No. of BFO Algorithm SA [14] GA [ 16]
Part Best Worst Mean Best Worst Mean Best Worst Mean
Solution Solution Solution Solution Solution Solution Solution Solution Solution
200 90309 90396 90349.6 93380 93543 93455.4 93536 93615 93551.8
225 102526 102628 102572.4 105927 106040 105985.8 105982 106359 106283.6
250 112850 112895 112865.4 113735 116715 114358.6 113643 117172 114348.8
275 124945 125040 124989.6 128974 129432 129240 129319 129599 129543
300 137061 137176 137106.6 141527 142142 141777.8 141824 141917 141898.4
325 147409 147663 147550 152219 152571 152363.8 152739 152739 152739
350 182588 182649 182614.8 185236 185713 185480.2 185806 185806 185806
375 183535 183651 183587.4 187609 187937 187757.4 188243 188243 188243
400 194410 194745 194565.8 198835 199358 199139.2 199704 199704 199704
425 207729 207863 207772.6 211992 212552 212323 212939 212939 212939
450 219649 219859 219742.6 224286 224867 224620.4 225041 225041 225041
475 231814 232058 231929.6 236688 237206 236975.4 237437 237437 237437
500 244468 244587 244563.2 249267 249750 249508.2 250799 250799 250799

13
Table 5. Computed Gap % of BFO, SA and GA

No. of Part Lower Bound BFA SA [14] GA [16]


[Zarandi, M. F. Solution GAP Solution GAP Solution GAP (GA &LB) (%)
H. et al 2013] (BFA (SA
&LB) &LB)
(%) (%)
200 73257 90309 23.28 93380 27.47 93536 27.68
225 82472 102526 24.32 105927 28.44 105982 28.51
250 91343 112850 23.54 113735 24.51 113643 24.41
275 100442 124945 24.39 128974 28.41 129319 28.75
300 109775 137061 24.86 141527 28.92 141824 29.20
325 119005 147409 23.87 152219 27.91 152739 28.35
350 154975 182588 17.82 185236 19.53 185806 19.89
375 150729 183535 21.76 187609 24.47 188243 24.89
400 160554 194410 21.09 198835 23.84 199704 24.38
425 170946 207729 21.52 211992 24.01 212939 24.57
450 181320 219649 21.14 224286 23.70 225041 24.11
475 191424 231814 21.10 236688 23.65 237437 24.04
500 200921 244468 21.67 249267 24.06 250799 24.82

14
Table 6. Average CPU times (in seconds) taken by BFO, SA and GA

No. of Part BFA SA [14] GA [ 16]


200 58.90 164.28 67.33
225 64.98 181.58 74.70
250 71.63 199.47 103.25
275 77.48 200.65 111.38
300 84.59 239.33 131.96
325 88.44 243.37 147.66
350 94.68 280.74 162.89
375 102.58 284.61 171.10
400 104.96 297.00 177.95
425 116.86 297.80 195.16
450 126.24 336.90 208.76
475 153.03 413.32 212.98
500 184.13 420.74 222.80

15
Conclusion
In this study, the two-machine robotic cell scheduling problem with
sequence-dependent setup times has been considered to demonstrate the
performance of the proposed discrete bacteria foraging algorithm especially
for large part sized problems. In order to make use of the discretized version
of the bacteria foraging algorithm, the pairwise interchange mutation is
chosen for tumbling and swimming operations during chemotaxis, while the
cyclic shift neighborhood mutation is used for random movement during
elimination-dispersal for the proposed algorithm. The computational
experimentation considering a set of benchmark large-sized problems was
carried out to compare the performance of the proposed bacteria foraging
algorithm with two noteworthy optimization techniques. The computational
results reveal that the proposed algorithm performs much better than the
existing algorithms, while retaining its average CPU time much less than those
required by the existing algorithms.

16
References:
1. Phillips, Larry W., and Philip S. Unger. "Mathematical programming solution of a
hoist scheduling program." AIIE transactions 8.2 (1976): 219-225.
2. Liu, Jiyin, Yun Jiang, and Zhili Zhou. "Cyclic scheduling of a single hoist in extended
electroplating lines: a comprehensive integer programming solution."IIE
Transactions 34.10 (2002): 905-914.
3. Leung, Janny, and Guoqing Zhang. "Optimal cyclic scheduling for printed circuit
board production lines with multiple hoists and general processing
sequence." IEEE Transactions on Robotics and Automation 19.3 (2003): 480-484.
4. El Amraoui, Adnen, et al. "A mixed linear program for a multi-part cyclic hoist
scheduling problem." International Journal of Sciences and Techniques of
Automatic control and computer engineering (IJ-STA), Special issue on CEM 2
(2008): 612-623.
5. Che, Ada, and Chengbin Chu. "Cyclic hoist scheduling in large real-life
electroplating lines." OR Spectrum 29.3 (2007): 445-470.

17
Cont…
6. Lei, Lei, and Qing Liu. "Optimal cyclic scheduling of a robotic processing line with two-
product and time-window constraints." Infor-Information Systems and Operational
Research 39.2 (2001): 185-199.
7. Che, Ada, et al. "Multi-degree cyclic hoist scheduling with time window
constraints." International journal of production research 49.19 (2011): 5679-5693.
8. Panda, S. K., Padhee, S., Anoop Kumar, S. O. O. D., &Mahapatra, S. S. (2009).
Optimization of fused deposition modelling (FDM) process parameters using bacterial
foraging technique. Intelligent information management, 1(02), 89.
9. Nouri, H., & Hong, T. S. (2012). A bacteria foraging algorithm based cell formation
considering operation time. Journal of Manufacturing Systems, 31(3), 326-336.
10. Liu, C., Wang, J., Leung, J. Y. T., & Li, K. (2015). Solving cell formation and task scheduling
in cellular manufacturing system by discrete bacteria foraging algorithm. International
Journal of Production Research, 1-22.
11. Dasgupta, S., Das, S., Biswas, A., & Abraham, A. (2010). Automatic circle detection on
digital images with an adaptive bacterial foraging algorithm. Soft Computing, 14(11),
1151-1164.

18
Cont…
12. Bermejo, E., Cordón, O., Damas, S., &Santamaría, J. (2015). A comparative study on
the application of advanced bacterial foraging models to image
registration. Information Sciences, 295, 160-181.
13. Sakthivel, V. P., Bhuvaneswari, R., & Subramanian, S. (2010). Bacterial foraging
technique based parameter estimation of induction motor from manufacturer
data. Electric Power Components and Systems, 38(6), 657-674.
14. Zarandi, M. F., Mosadegh, H., & Fattahi, M. (2013). Two-machine robotic cell
scheduling problem with sequence-dependent setup times. Computers &
Operations Research, 40(5), 1420-1434.
15. Das, S., Biswas, A., Dasgupta, S., & Abraham, A. (2009). Bacterial foraging
optimization algorithm: theoretical foundations, analysis, and applications. In
Foundations of Computational Intelligence Volume 3 (pp. 23-55). Springer Berlin
Heidelberg.
16. Reeves, C. R. (1995) A genetic algorithm for flowshop sequencing. Computers &
operations research, 22, 5-13.

19
Thank You

You might also like