15.02.2013 Views

reverse engineering – recent advances and applications - OpenLibra

reverse engineering – recent advances and applications - OpenLibra

reverse engineering – recent advances and applications - OpenLibra

SHOW MORE
SHOW LESS

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)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!