Algorithm:
Let there be n particles, each with associated positions





- Initialize
and
for all i. One common choice is to take
and
for all i and
, where aj,bj are the limits of the search domain in each dimension.
and
.
- While not converged:
- For
:
.
.
- If
,
.
- If
,
.
- For
Note the following about the above algorithm:
- ω is an inertial constant. Good values are usually slightly less than 1.
- c1 and c2 are constants that say how much the particle is directed towards good positions. They represent a "cognitive" and a "social" component, respectively, in that they affect how much the particle's personal best and the global best (respectively) influence its movement. Usually, we take
but this need not be the case.
are two random vectors with each compenent generally a uniform random number between 0 and 1.
operator indicates element-by-element multiplication i.e. the Hadamard matrix multiplication operator.
1 comment:
LOOOOOOOOOL, friendly inspection!!!
Post a Comment