reverse engineering – recent advances and applications - OpenLibra
reverse engineering – recent advances and applications - OpenLibra
reverse engineering – recent advances and applications - OpenLibra
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
228<br />
Reverse Engineering <strong>–</strong> Recent Advances <strong>and</strong> Applications<br />
�r1,1 �<br />
�r2,1 �<br />
�<br />
r<br />
�<br />
�<br />
1,2<br />
where �1 �c<br />
� �<br />
r<br />
�<br />
2,2<br />
<strong>and</strong><br />
1<br />
�<br />
� � �<br />
2 �c<br />
� �<br />
2�<br />
� �<br />
� �<br />
� �<br />
�� r1,D��<br />
�� r2,D��<br />
�<br />
At any instant, each particle is aware of its individual best position, wibest , () t , as well as the<br />
�<br />
best position of the entire swarm, wGbest , () t . The parameters c1 <strong>and</strong> c2 are constants that<br />
weight particle movement in the direction of the individual best positions <strong>and</strong> global best<br />
positions, respectively; <strong>and</strong> r1,j <strong>and</strong> r2,j, j � 1,2, � D are r<strong>and</strong>om scalars distributed<br />
uniformly between 0 <strong>and</strong> 1, providing the main stochastic component of the PSO algorithm.<br />
Figure 7 shows a vector diagram of the contributing terms of the PSO trajectory update. The<br />
�<br />
new change in position, �wi( t�1)<br />
, is the resultant of three contributing vectors: (i) the<br />
inertial component, �wi() t<br />
�<br />
�<br />
, (ii) the movement in the direction of individual best, wibest , () t ,<br />
�<br />
<strong>and</strong> (iii) the movement in the direction of the global (or neighborhood) best, w , () t .<br />
The constriction factor, � , may also help to ensure convergence of the PSO algorithm, <strong>and</strong><br />
is set according to the weights c1 <strong>and</strong> c2 as in Eq.(6).<br />
2<br />
� � , � �c1 �c2, � � 4<br />
2<br />
2�� � � �4�<br />
The key strength of the PSO algorithm is the interaction among particles. The second term in<br />
� �<br />
Eq. (5), �2 ( wGbest , ( t) �wi(<br />
t))<br />
, is considered to be a “social influence” term. While this term<br />
� �<br />
tends to pull the particle towards the globally best solution, the first term, �1 ( wibest , ( t) � wi( t))<br />
,<br />
allows each particle to think for itself. The net combination is an algorithm with excellent<br />
trade-off between total swarm convergence, <strong>and</strong> each particle’s capability for global<br />
exploration. Moreover, the relative contribution of the two terms is weighted stochastically.<br />
The algorithm consists of repeated application of the velocity <strong>and</strong> position update rules<br />
presented above. Termination occurs by specification of a minimum error criterion,<br />
maximum number of iterations, or alternately when the position change of each particle is<br />
sufficiently small as to assume that each particle has converged.<br />
Fig. 7. Vector diagram of particle trajectory update.<br />
A pseudo-code description of the PSO algorithm is provided below:<br />
Gbest<br />
(6)