PSO -Introduction Proposed by James Kennedy & Russell Eberhart in 1995 Inspired by social behavior of birds and fishes Combines self-experience with social experience Population-based optimization
PSO -Introduction Finds global optimum with a probability of almost one Suitable for optimizing non-linear non-differentiable and discontinuous functions –Irrespective of shapes of the objective function. A robust search technique. Suitable for solving large-sized problems. Steps extremely simple -Velocity calculation - Position updation
PSO Concept Uses a number of particles that constitute a swarm moving around in the search space looking for the best solution. Each particle in search space adjusts its “flying” according to its own flying experience as well as the flying experience of other particles
PSO –how its works Emulates the behavior of creatures such as a flock of birds or a school of fish. Basic principle: Let particle swarm move towards the best position in search space. Remembering each particle’s best known position (Pbest) and global (swarm’s) best known position (gbest)
PSO –how its works Swarm: a set of particles (S) Particle: a potential solution Position: Velocity: Each particle maintains Individual best position (PBest) Swarm maintains its global best (GBest) S Fitness value Fitness function
Basic algorithm of PSO Initialize the swarm form the solution space Evaluate the fitness of each particle Update individual and global bests Update velocity and position of each particle Go to step2, and repeat until termination condition
PSO Flow Chart
PSO-Steps
Velocity and Position Updating Original velocity update equation w,c1,c2: Constant random1(), random2(): random variable Position update 9
Velocity and Position Updating
Particle’s velocity social cognitive Inertia PBest x(k) x(k+1) v(k+1)
Updating the Velocity of a Particle
PSO Algorithm
Tuning of Parameters for PSO
PSO solution update in 2D GBest x(k) - Current solution (4, 2) PBest - Particle’s best solution (9, 1) GBest-Global best solution (5, 10) PBest
PSO solution update in 2D Inertia: v(k)=(-2, 2) GBest x(k) - Current solution (4, 2) PBest - Particle’s best solution (9, 1) GBest-Global best solution (5, 10) Current solution (4, 2) Particle’s best solution (9, 1) Global best solution (5, 10) PBest
PSO solution update in 2D Inertia: v(k)=(-2,2) Cognitive: PBest-x(k)=(9,1)-(4,2)=(5,-1) Social: GBest-x(k)=(5,10)-(4,2)=(1,8) GBest x(k) - Current solution (4, 2) PBest - Particle’s best solution (9, 1) GBest-Global best solution (5, 10) Current solution (4, 2) Particle’s best solution (9, 1) Global best solution (5, 10) PBest
PSO solution update in 2D GBest PBest v(k+1) Inertia: v(k)=(-2,2) Cognitive: PBest-x(k)=(9,1)-(4,2)=(5,-1) Social: GBest-x(k)=(5,10)-(4,2)=(1,8) v(k+1)=(-2,2)+0.8*(5,-1) +0.2*(1,8) = (2.2,2.8) x(k) - Current solution (4, 2) PBest - Particle’s best solution (9, 1) GBest-Global best solution (5, 10)
PSO solution update in 2D GBest PBest x(k+1) Inertia: v(k)=(-2,2) Cognitive: PBest-x(k)=(9,1)-(4,2)=(5,-1) Social: GBest-x(k)=(5,10)-(4,2)=(1,8) v(k+1)=(2.2,2.8) x(k+1)=x(k)+v(k+1)= (4,2)+(2.2,2.8)=(6.2,4.8) x(k) - Current solution (4, 2) PBest - Particle’s best solution (9, 1) GBest-Global best solution (5, 10)