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 |
Python
code |
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 |
Python
code |
By James D. McCaffrey (demo program on Rastrigin function) | 2015-06 |
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 |
Standard PSO 2011 in Objective-C | By Ivan Rublev. To make PSO algorithm easily available for people who write apps for Macs and iPhones | 2015-11 |
Particle Swarm Optimization with 5, 50, 500, 5000 particles | By Cody Irons. A nice 2009 video of swarms tracking a moving goal | 2017-04 |