The PSO algorithm has been inspired from the flocking behavior of birds in nature.
In this algorithm, each particle is considered to be a solution for a given optimization
problem. It ismade of two vectors: position and velocity. The position vector includes
the values for each of the variables in the problem. If the problem has two parameters,
for instance, the particles will have position vectors with two dimensions. Each
particle will then be able to move in an n-dimensional search space where n is the
number of variables. To update the position of particles, the second vector (velocity)
is considered. This vector defines the magnitude and direction of step size for each
dimension and each particle independently.
PSO is one of the many swarm intelligence methods out there. In this area, collective behaviours of creatures that lead to problem-solving and intelligence are investigated.
My own implementation of PSO in Matlab. This is the code I developed in my Udemy course.
This code includes particle simulations in PSO. This is the file that I used in my PSO video.
My binary version of PSO with a wide range of s-shaped and v-shaped transfer functions.
One of my earliest works in the field :) Hybridizing PSO and other algorithms wes so much fun. Still a good are to work on, so feel free to use my code.
This is the binary version of PSOGSA called BPSOGSA.
In this work, I divided particles into sub-swarms with different behaviors.