pso

Easy-to-use MatLab function for PSO.
4,8K descargas
Actualizado 24 nov 2010

Ver licencia

Easy-to-use MatLab function for PSO (Particle Swarm Optimization). Limited to optimization problems of nine variables but can easily be extended many variables.

xbest = pso(func)
xbest - solution of the optimization problem. The number of columns depends on the input func. size(func,2)=number of xi variables
func - string containing a mathematic expression. Variables are defined as xi. For instance, func='2*x1+3*x2' means that it is an optimization problem of two variables.

[xbest,fit] = pso(func)
fit - returns the optimized value of func using the xbest solution.

[xbest,fit] = pso(func,xmin)
xmin - minimum value of xi. size(xmin,2)=number of xi variables. Default -100.

[xbest,fit] = pso(func,xmin,xmax)
xmax - maximum value of xi. size(xmax,2)=number of xi variables. Default 100.

[xbest,fit] = pso(func,xmin,xmax,type)
type - minimization 'min' or maximization 'max' of the problem. Default 'min'.

[xbest,fit] = pso(func,xmin,xmax,type,population)
population - number of the swarm population. Default 50.

[xbest,fit] = pso(func,xmin,xmax,type,population,iterations)
iterations - number of iterations. Default 500.

Example: xbest = pso('10+5*x1^2-0.8*x2',[-10 -20],[20 40],'min')

Micael S. Couceiro
v1.0
15/11/2010

Original algorithm developed by:
Kennedy, J. and Eberhart, R. C. (1995).
"Particle swarm optimization".
Proceedings of the IEEE 1995 International Conference on Neural Networks, pp. 1942-1948.

Citar como

Micael Couceiro (2024). pso (https://www.mathworks.com/matlabcentral/fileexchange/29519-pso), MATLAB Central File Exchange. Recuperado .

Compatibilidad con la versión de MATLAB
Se creó con R2009b
Compatible con cualquier versión
Compatibilidad con las plataformas
Windows macOS Linux
Categorías
Más información sobre Particle Swarm en Help Center y MATLAB Answers.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Versión Publicado Notas de la versión
1.0.0.0