Programs |

Last check |
||

PSO Demo/Fun, (in Math stuff about PSO) | By Maurice Clerc . Adaptive version. ANSI C source.
Continuous (De Jong, Banana...) and discrete (Fifty/fifty, integer
factorization, graph coloring, combinatorial) functions. Options:
granularity, local queens, Guided Random Generation etc... TRIBES (a
parameter free PSO). Binary PSOs. |
2012-04 |

Particle Swarm Optimisation | Java applet by Mark C. Sinclair | 2000-08 |

BinaryPS and NKPS (for Windows) | "Games" by Jim Kennedy. When a swarm of stupid particles beats you... Frustrating! | 2012-05 |

Particle Swarm Optimizer | Related to the book "Swarm Intelligence" (J. Kennedy, R. Eberhart). C source | 2001-08 |

Code
for Particle Swarm Tester |
A quite old one, for beginners ... |
2003-01 |

Berkeley
Lab |
Search for
"particle swarm".
Several Java classes. |
2003-07 |

The PSO TOOLBOX |
A collection
of Matlab (.m)
files that can be used to implement the Particle Swarm Optimization
Algorithm (PSO) to optimize your system. |
2003-08 2004-05 |

GenOpt,
Generic
Optimization Program. Berkeley Lab |
Amongst some
others: # Particle Swarm Optimization algorithms (for continuous and/or discrete independent variables), with inertia weight or constriction coefficient and velocity clamping, and with a modification that constricts the continuous independent variables to a mesh to reduce computation time. # A hybrid global optimization algorithm that uses Particle Swarm Optimization for the global optimization, and Hooke-Jeeves for the local optimization. |
2004-03 |

PSO
visualisation applet |
By Ken Fitch,
Project
Computing.
Generates a semi-random 3-D landscape. A randomly generated particle
swarm of 12 particles attempts to find the "global maximum" on the
landscape. Runs under Java 1.1. |
2004-04 |

Auto2fit
(shareware) |
1. Genetic
Algorithm (GA): both
encode/decode mode and real-value based mode, six crossover types and
seven selection types 2. Particle Swarm Optimization (PSO): six schemes
(2 standard and 4 new) 3. Differential Evolution (DE): ten schemes (5
new) 4. Maximum Inherit Optimization (MIO): four schemes |
2004-08 |

Standard PSO 2006 | Quite often some authors say they compare their PSO
versions
to the "standard one" ... which is never the same! So the idea is to
define a real standard at least for one year, validated by some researchers of the field, in particular James Kennedy and Maurice Clerc. |
2006-02 |

PSOpt | Visualisation of the process for some 2D functions. Written in Java | 2006-03 |

Matlab PSO Toolbox | Robust Particle Swarm toolbox implementing Trelea, Common, and Clerc types along with an alpha version of change detection. | 2006-04 |

Global Optimization by PSO: A Fortran Program | A FORTRAN program to find the global optimum by the Repulsive Particle Swarm method | 2007-01 |

Multiobjective Particle Swarm with Crowding Distance (MOPSOCD) | R-package Source Code (C language) for MOPSO-CD as described in C. R. Raquel and P.C. Naval, "An Effective use of Crowding Distance in Multiobjective Particle Swarm Optimization", Proceedings of Genetic and Evolutionary Computation Conference (GECCO 2005), Washington, D.C., June 25-29, 2005. |
2013-06 2012-10 |

PSO with Mathematica (.nb file) | By Namrata Khemka and Christian Jacob. Needs Mathematica Player | 2007-07 |

Standard PSO 2007 (SPSO-07) | Quite often, researchers claim to compare their version of PSO with the "standard one", but the"standard one" itself seems to vary! Thus, it is important to define a real standard that would stay unchanged for at least one year. More functions have been added in 2009-2010. Written in C. There is also a R version, slightly different, but with more options, by Claus Bendtsen, here. | 2010-09 |

SPSO 2007, Matlab |
Matlab version, by Mahamed Omran |
2011-05 |

SPSO 2007, Matlab |
by Stephen Chen. An implementation of Standard Particle Swarm Optimization with results available for the CEC2013 Real-Parameter Optimization Benchmark Functions |
2013-10 |

ParadisEO (PARallel and DIStributed Evolving Objects) | Provides
tools for the development of population-based metaheuristic:
evolutionary algorithms, particle swarm optimization |
2013-06 |

Java Based PSO Framework | Part of the open-source project CIlib (Computational Intelligence Library) | 2007-12 |

TRIBES-D | By Maurice Clerc. A simplified version of his parameter-free particle swarm optimiser TRIBES, for real heterogeneous problems. For example, it easily finds the best known solution for the classical "Pressure vessel" problem. For multiobjective problems, it is also far better than the previous version. | 2008-01 |

PSO-package for the free computing environment R | By Till Francke. Particle Swarm Optimization and Dynamically Dimensioned Search for R, optionally using parallel computing based on Rmpi | 2009-09 |

SwarmOps source-code library | By Magnus Pedersen. C# and ANSI C codes for several optimization methods, including a few global best PSO variants | 2009-09 |

Balanced PSO | By Maurice Clerc. C code with a lot of options, to "simulate"
many PSO variants. A stable version (for the Swarm Intelligence
Handbook, and a Research version). There are still some bugs, though |
2009-09 |

PSO Research Toolbox |
By George Evers. An extensive PSO toolbox suitable for industrial, academic, and personal use. |
2012-05 |

NetLogo Models Library: Sample Models/Computer Science |
By Stonedahl, F. and Wilensky, U. (2008). NetLogo Particle Swarm Optimization model . Based on the algorithm presented in the following paper: Kennedy, J. & Eberhart, R. (1995) |
2010-05 |

Variable PSO |
By Maurice Clerc. A simple PSO with adaptive swarm size and topology. |
2010-05 |

PSO in Python |
By F.-A. Fortin. One of the features of DEAP
(Distributed Evolutionary Algorithms in Python), . Warning: at
this date (2010-10-15) this is just the original (global best) PSO,
which is bad for multimodal functions, but it is easy to transform it
into a local best one (like, say, Standard PSO). |
2010-10 |

Robots Routing using Swarm Intelligence |
A
C# project to simulate and test a multiagent algorithm for finding
multiple noisy radiation sources with spatial and communication
constraints with an emulated environment. The robots cooperate and
communicate with each other to locate the source based on the sensors
readings using concepts from particle swarm optimization algorithm. |
2011-01 |

Standard PSO 2011 (SPSO-2011) |
As simple as SPSO-07, but not coordinate dependent. A few optional "bells and whistles" for better performance. Note: a short paper about the differences between SPSO 2006, 2007, 2011 is available here. There is also a R version, slightly different, with less options, by Claus Bendtsen, here. |
2011-01 2012-09 |

SPSO 2011, Matlab |
Matlab version, by Mahamed Omran |
2011-05 |

TribesPSO |
By Peter Baughman. A managed
implementation of the Tribes particle swarm optimization technique. It
is designed to be extensible without recompilation to enable testing of
variations on the Tribes algorithm. The project is written in C# |
2011-07 |

SimPSOLib |
By Tomas Arredondo. A small and simple implementation in C++ (global best PSO, with Vmax) |
2011-07 |

MATLAB PSO Research Toolbox |
By Georges Evers. This site also presents some papers, and a thesis |
2011-08 |

PyGMO |
By Dario Izzo. Python Parallel Global Multiobjective Optimizer. Include DE, PSO, CMAES, ... |
2011-11 |

SwarmNLP |
By John Marshall. SwarmNLP is a
program for Windows that visualizes particle swarm optimization (PSO)
over multiple criteria and multiple objectives. This program is a good
teaching tool for showing how PSO runs and quickly visualizing a
solution space. |
2012-04 |

hydroPSO |
By Mauricio Zambrano-Bigiarini and Rodrigo Rojas. A newly developed package for the calibration/optimisation of environmental and other real-world models that need to be executed from the system console. hydroPSO is model-independent, allowing the user to easily interface any computer simulation model with the optimisation engine, through the model's own input and output files. It implements a state-of-the-art PSO algorithm (SPSO-2011 and SPSO-2007 capable), with several fine-tuning options (topologies, boundary conditions, initialisations, etc) and PSO variants available to customise the optimisation engine to different applications. User-friendly plotting functions facilitate the interpretation and assessment of the optimisation results. hydroPSO is parallel-capable, to alleviate the computational burden of complex models with "long" execution time. | 2012-12-21 |

EPSO |
By INESC (Porto, Portugal). Evolutionary Particle Swarm Optimization, a method based on a hybrid of two established optimization techniques belonging to the meta-heuristic family: evolutionary computing and particle swarm optimization. | 2012-05 |

PSO (global best, Haskell language) |
By P. Rabanal, I. Rodriguez, F.
Rubio. Our aim is to provide a library of generic Haskell versions of
the most common bioinspired metaheuristics, as well as a library
containing the corresponding Eden (a parallel version of Haskell)
skeletons for each metaheuristic. By doing so, we will simplify the
task of using these metaheuristics in functional settings, and we will
also simplify the task of improving their performance by means of
parallelizing them. Moreover, as several metaheuristics will be
provided in the same environment, the programmer will be able to check
more easily what metaheuristics fits better for each concrete problem. |
2012-06 |

popot, C++ POPulation Based Optimization Toolbox |
By Jeremy Fix. Particle Swarm
Optimization: SPSO 2006, 2007 and 2011 are implemented but
you can also play by combining different topologies,
initialization schemes, position or velocity update rules, confinement
methods, random number generators. Artificial Bee Colony |
2012-08 |

Squads: Global Optimization technique coupling Particle Swarm and Levenberg-Marquardt optimization techniques |
By Velimir V. Vesselinov, and
Dylan R. Harp. An adaptive global hybrid optimization strategy based on
TRIBES, for complex inverse analysis of computationally intensive
physics-based models. |
2013-01 |

A PSO in C |
By Kyriakos Kentzoglanakis. A
small and efficient piece of C code that can be "plugged into" any
project. It implements a standard PSO algorithm and supports
thespecification of arbitrary user-defined objective functions,
different swarm topologies, inertia weight update strategies, boundary
conditions etc. |
2013-03 |