The Particle Swarm Optimization Algorithm Nebojša Trpković trx.lists@gmail.com 10 th Dec 2010.

Post on 02-Jan-2016

215 views 1 download

Tags:

transcript

The Particle Swarm Optimization Algorithm

Nebojša Trpkovićtrx.lists@gmail.com

10th Dec 2010

Nebojša Trpković trx.lists@gmail.com Slide 2 of 18

Problem Definition

optimization of continuous nonlinear functions

finding the best solution in problem space

Nebojša Trpković trx.lists@gmail.com Slide 3 of 18

Example

Nebojša Trpković trx.lists@gmail.com Slide 4 of 18

Importance

• function optimization

• artificial neural network training

• fuzzy system control

Nebojša Trpković trx.lists@gmail.com Slide 5 of 18

Existing Solutions

• Ant Colony (ACO)– discrete

• Genetic Algorithms (GA)– slow convergence

Nebojša Trpković trx.lists@gmail.com Slide 6 of 18

Particle Swarm Optimization

Very simple classification:

• a computational method • that optimizes a problem • by iteratively trying to improve a candidate solution • with regard to a given measure of quality

Nebojša Trpković trx.lists@gmail.com Slide 7 of 18

Particle Swarm Optimization

Facts:

• developed by Russell C. Eberhart and James Kennedy in 1995

• inspired by social behavior of bird flocking or fish schooling

• similar to evolutionary techniques such as Genetic Algorithms (GA)

Nebojša Trpković trx.lists@gmail.com Slide 8 of 18

Particle Swarm Optimization

Benefits:

• faster convergence• less parameters to tune

↓• easier searching in very large problem spaces

Nebojša Trpković trx.lists@gmail.com Slide 9 of 18

Particle Swarm Optimization

Basic principle:

let particle swarm move towards the best position in search space, remembering each particle’s best known position and global (swarm’s) best known position

Nebojša Trpković trx.lists@gmail.com Slide 10 of 18

Velocity Change

xi – specific particle

pi – particle’s (personal) best known position

g – swarm’s (global) best known positionvi – particle’s velocity

vi ← ωvi + φprp(pi - xi) + φgrg(g - xi) inertia cognitive social

Nebojša Trpković trx.lists@gmail.com Slide 11 of 18

Position Change

xi – specific particle

vi – particle’s velocity

xi ← xi + vi

Nebojša Trpković trx.lists@gmail.com Slide 12 of 18

AlgorithmFor each particle Initialize particleEND

Do

For each particle Calculate fitness value If the fitness value is better than the best personal fitness value in history, set current value

as a new best personal fitness value End

Choose the particle with the best fitness value of all the particles, and if that fitness value is better then current global best, set as a global best fitness value

For each particle Calculate particle velocity according velocity change equation Update particle position according position change equation End

While maximum iterations or minimum error criteria is not attained

Nebojša Trpković trx.lists@gmail.com Slide 13 of 18

Single Particle

Nebojša Trpković trx.lists@gmail.com Slide 14 of 18

Parameters selection

Different ways to choose parameters:

• proper balance between exploration and exploitation (avoiding premature convergence to a local optimum yet still ensuring a good rate of convergence to the optimum)

• putting all attention on exploitation (making possible searches in a vast problem spaces)

• automatization by meta-optimization

Nebojša Trpković trx.lists@gmail.com Slide 15 of 18

Avoiding Local Optimums

• adding randomization factor to velocity calculation

• adding random momentum in a specific iterations

Nebojša Trpković trx.lists@gmail.com Slide 16 of 18

Swarm

Nebojša Trpković trx.lists@gmail.com Slide 17 of 18

Conclusion

“This algorithm belongs ideologically to that philosophical school

that allows wisdom to emerge rather than trying to impose it,

that emulates nature rather than trying to control it,

and that seeks to make things simpler rather than more complex.”

James Kennedy, Russell Eberhart

Nebojša Trpković trx.lists@gmail.com Slide 18 of 18

References• Wikipedia

http://www.wikipedia.org/• Swarm Intelligence

http://www.swarmintelligence.org/• Application of a particle swarm optimization algorithm for

determining optimum well location and type, Jerome Onwunalu and Louis J. Durlofsky, 2009

• Particle Swarm Optimization, James Kennedy and Russell Eberhart, 1995http://www.engr.iupui.edu/~shi/Coference/psopap4.html

• Robot Swarm driven by Particle Swarm Optimization algorithm, thinkfluidhttp://www.youtube.com/watch?v=RLIA1EKfSys