Particle swarm optimization: Difference between revisions

Content deleted Content added
OAbot (talk | contribs)
m Open access bot: url-access updated in citation with #oabot.
Citation bot (talk | contribs)
Add: issue, volume, article-number, bibcode. Removed URL that duplicated identifier. Removed parameters. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 28/967
 
(2 intermediate revisions by 2 users not shown)
Line 50:
 
==Neighbourhoods and topologies==
The topology of the swarm defines the subset of particles with which each particle can exchange information.<ref name=kennedy2002population/> The basic version of the algorithm uses the global topology as the swarm communication structure.<ref name=bratton2007/> This topology allows all particles to communicate with all the other particles, thus the whole swarm share the same best position '''g''' from a single particle. However, this approach might lead the swarm to be trapped into a local minimum,<ref>Mendes, R. (2004). [https://pdfs.semanticscholar.org/d224/80b09d1f0759fb20e0fb0bd2de205457c8bc.pdf Population Topologies and Their Influence in Particle Swarm Performance]{{Dead link|date=August 2025 |bot=InternetArchiveBot |fix-attempted=yes }} (PhD thesis). Universidade do Minho.</ref> thus different topologies have been used to control the flow of information among particles. For instance, in local topologies, particles only share information with a subset of particles.<ref name=bratton2007/> This subset can be a geometrical one<ref>Suganthan, Ponnuthurai N. "[https://ieeexplore.ieee.org/abstract/document/785514/ Particle swarm optimiser with neighbourhood operator]." Evolutionary Computation, 1999. CEC 99. Proceedings of the 1999 Congress on. Vol. 3. IEEE, 1999.</ref> – for example "the ''m'' nearest particles" – or, more often, a social one, i.e. a set of particles that is not depending on any distance. In such cases, the PSO variant is said to be local best (vs global best for the basic PSO).
 
A commonly used swarm topology is the ring, in which each particle has just two neighbours, but there are many others.<ref name=bratton2007/> The topology is not necessarily static. In fact, since the topology is related to the diversity of communication of the particles,<ref name=oliveira2016communication/> some efforts have been done to create adaptive topologies (SPSO,<ref>SPSO [http://www.particleswarm.info Particle Swarm Central]</ref> APSO,<ref> Almasi, O. N. and Khooban, M. H. (2017). A parsimonious SVM model selection criterion for classification of real-world data sets via an adaptive population-based algorithm. Neural Computing and Applications, 1-9. [https://link.springer.com/article/10.1007/s00521-017-2930-y https://doi.org/10.1007/s00521-017-2930-y]</ref> stochastic star,<ref>Miranda, V., Keko, H. and Duque, Á. J. (2008). [https://repositorio.inesctec.pt/bitstream/123456789/1561/1/PS-05818.pdf Stochastic Star Communication Topology in Evolutionary Particle Swarms (EPSO)]. International Journal of Computational Intelligence Research (IJCIR), Volume 4, Number 2, pp. 105-116</ref> TRIBES,<ref>Clerc, M. (2006). Particle Swarm Optimization. ISTE (International Scientific and Technical Encyclopedia), 2006</ref> Cyber Swarm,<ref>Yin, P., Glover, F., Laguna, M., & Zhu, J. (2011). [http://leeds-faculty.colorado.edu/glover/fred%20pubs/428%20-%20A_complementary_cyber_swarm_algorithm_pub%20version%20w%20pen%20et%20al.pdf A Complementary Cyber Swarm Algorithm]. International Journal of Swarm Intelligence Research (IJSIR), 2(2), 22-41</ref> and C-PSO<ref name=elshamy07sis/>)
 
By using the ring topology, PSO can attain generation-level parallelism, significantly enhancing the evolutionary speed.<ref>{{cite journal |last1=Jian-Yu |first1=Li |title=Generation-Level Parallelism for Evolutionary Computation: A Pipeline-Based Parallel Particle Swarm Optimization |journal=IEEE Transactions on Cybernetics |date=2021 |volume=51 |issue=10 |pages=4848–4859 |doi=10.1109/TCYB.2020.3028070 |pmid=33147159 |urlbibcode=https://ieeexplore2021ITCyb.ieee.org/document/9248594|url-access=subscription51.4848L }}</ref>
 
== Inner workings ==
Line 103:
Initialization of velocities may require extra inputs. The Bare Bones PSO variant<ref>{{Cite book|last=Kennedy|first=James|title=Proceedings of the 2003 IEEE Swarm Intelligence Symposium. SIS'03 (Cat. No.03EX706) |chapter=Bare bones particle swarms |date=2003|pages=80–87|doi=10.1109/SIS.2003.1202251|isbn=0-7803-7914-4|s2cid=37185749}}</ref> has been proposed in 2003 by James Kennedy, and does not need to use velocity at all.
 
In this variant of PSO one dispencesdispenses with the velocity of the particles and instead updates the positions of the particles using the following simple rule,
:<math>
\vec x_i = G\left(\frac{\vec p_i+\vec g}{2},||\vec p_i-\vec g||\right) \,,
Line 122:
 
===Binary, discrete, and combinatorial===
As the PSO equations given above work on real numbers, a commonly used method to solve discrete problems is to map the discrete search space to a continuous ___domain, to apply a classical PSO, and then to demap the result. Such a mapping can be very simple (for example by just using rounded values) or more sophisticated.<ref>Roy, R., Dehuri, S., & Cho, S. B. (2012). [http://sclab.yonsei.ac.kr/publications/Papers/IJ/A%20Novel%20Particle%20Swarm%20Optimization%20Algorithm%20for%20Multi-Objective%20Combinatorial%20Optimization%20Problem.pdf A Novel Particle Swarm Optimization Algorithm for Multi-Objective Combinatorial Optimization Problem] {{Webarchive|url=https://web.archive.org/web/20220120210030/http://sclab.yonsei.ac.kr/publications/Papers/IJ/A%20Novel%20Particle%20Swarm%20Optimization%20Algorithm%20for%20Multi-Objective%20Combinatorial%20Optimization%20Problem.pdf |date=2022-01-20 }}. 'International Journal of Applied Metaheuristic Computing (IJAMC)', 2(4), 41-57</ref>
 
However, it can be noted that the equations of movement make use of operators that perform four actions:
Line 158:
<ref name="xinchao10perturbed">{{cite journal | title=A perturbed particle swarm algorithm for numerical optimization | last=Xinchao | first=Z. | journal=Applied Soft Computing | year=2010 | volume=10 | issue=1 | pages=119–124 | doi=10.1016/j.asoc.2009.06.010}}</ref>
 
<ref name="zhan09adaptive">{{cite journal | first1=Z-H. | last1=Zhan | title=Adaptive Particle Swarm Optimization | last2=Zhang | first2=J. | last3=Li | first3=Y | last4=Chung | first4=H.S-H. | journal=IEEE Transactions on Systems, Man, and Cybernetics | year=2009 | volume=39 | issue=6 | pages=1362–1381 | doi=10.1109/TSMCB.2009.2015956 | pmid=19362911 | bibcode=2009ITSMB..39.1362Z | s2cid=11191625 | url=http://eprints.gla.ac.uk/7645/1/7645.pdf }}</ref>
 
<ref name="zhan10OLPSO">{{cite journal | first1=Z-H. | last1=Zhan | title=Orthogonal Learning Particle Swarm Optimization | last2=Zhang | first2=J. | last3=Li | first3=Y | last4=Shi | first4=Y-H. | journal=IEEE Transactions on Evolutionary Computation | year=2011 | volume=15 | issue=6 | pages=832–847| doi=10.1109/TEVC.2010.2052054 | bibcode=2011ITEC...15..832Z | url=http://eprints.gla.ac.uk/44801/1/44801.pdf }}</ref>
 
<ref name="Bonyadi2014">{{cite journal | first1=Mohammad reza. | last1=Bonyadi | title=A locally convergent rotationally invariant particle swarm optimization algorithm | last2=Michalewicz | first2=Z. | journal=Swarm Intelligence | year=2014 | volume=8 | issue=3 | pages=159–198 | doi=10.1007/s11721-014-0095-1| s2cid=2261683 | url=https://espace.library.uq.edu.au/view/UQ:396054/ERAUQ396054.pdf }}</ref>
Line 189:
<ref name="trelea03particle">{{cite journal | title=The Particle Swarm Optimization Algorithm: convergence analysis and parameter selection | last=Trelea | first=I.C. | journal=Information Processing Letters | year=2003 | volume=85 | issue=6 | pages=317–325 | doi=10.1016/S0020-0190(02)00447-7}}</ref>
 
<ref name="clerc02explosion">{{cite journal | first1=M. | last1=Clerc | title=The particle swarm - explosion, stability, and convergence in a multidimensional complex space | last2=Kennedy | first2=J. | journal=IEEE Transactions on Evolutionary Computation | year=2002 | volume=6 | issue=1 | pages=58–73 | doi=10.1109/4235.985692| bibcode=2002ITEC....6...58C | citeseerx=10.1.1.460.6608 }}</ref>
 
<ref name="xzy02dpso">Xie, Xiao-Feng; Zhang, Wen-Jun; Yang, Zhi-Lian (2002). [http://www.wiomax.com/team/xie/paper/CEC02.pdf A dissipative particle swarm optimization]. ''Congress on Evolutionary Computation'' (CEC), Honolulu, HI, USA: 1456-1461.</ref>
 
<ref name="bratton08simplified">{{cite journal | first1=D. | last1=Bratton | url=http://downloads.hindawi.com/archive/2008/654184.pdf | title=A Simplified Recombinant PSO | last2=Blackwell | first2=T. | journal=Journal of Artificial Evolution and Applications | volume=2008 | pages=1–10 | year=2008| article-number=654184 | doi=10.1155/2008/654184 | doi-access=free }}</ref>
 
<ref name="kennedy01swarm">{{cite book | first1=J. | last1=Kennedy | title=Swarm Intelligence | publisher=Morgan Kaufmann | last2=Eberhart | first2=R.C. | year=2001 | isbn=978-1-55860-595-4}}</ref>
Line 207:
<ref name="poli07analysis">{{cite journal | url=http://cswww.essex.ac.uk/technical-reports/2007/tr-csm469.pdf | title=An analysis of publications on particle swarm optimisation applications | last=Poli | first=R. | journal=Technical Report CSM-469 | year=2007 | access-date=2010-05-03 | archive-url=https://web.archive.org/web/20110716231935/http://cswww.essex.ac.uk/technical-reports/2007/tr-csm469.pdf | archive-date=2011-07-16 | url-status=dead }}</ref>
 
<ref name="poli08analysis">{{cite journal | url=http://downloads.hindawi.com/archive/2008/685175.pdf | title=Analysis of the publications on the applications of particle swarm optimisation | last=Poli | first=R. | journal=Journal of Artificial Evolution and Applications | year=2008 | volume=2008 | pages=1–10 | article-number=685175 | doi=10.1155/2008/685175| doi-access=free }}</ref>
 
<ref name="evers09thesis">{{cite book | url=http://www.georgeevers.org/publications.htm | title=An Automatic Regrouping Mechanism to Deal with Stagnation in Particle Swarm Optimization | publisher=The University of Texas - Pan American, Department of Electrical Engineering | last=Evers | first=G. | year=2009 | format=Master's thesis | access-date=2010-05-05 | archive-date=2011-05-18 | archive-url=https://web.archive.org/web/20110518164430/http://www.georgeevers.org/publications.htm | url-status=dead }}</ref>
 
<ref name="tu04robust">{{cite journal | first1=Z. | last1=Tu | title=A robust stochastic genetic algorithm (StGA) for global numerical optimization | last2=Lu | first2=Y. | journal=IEEE Transactions on Evolutionary Computation | year=2004 | volume=8 | issue=5 | pages=456–470 | doi=10.1109/TEVC.2004.831258| bibcode=2004ITEC....8..456T | s2cid=22382958 }}</ref>
 
<ref name="tu04corrections">{{cite journal | first1=Z. | last1=Tu | title=Corrections to "A Robust Stochastic Genetic Algorithm (StGA) for Global Numerical Optimization" | last2=Lu | first2=Y. | journal=IEEE Transactions on Evolutionary Computation | year=2008 | volume=12 | issue=6 | pages=781 | doi=10.1109/TEVC.2008.926734| bibcode=2008ITEC...12..781T | s2cid=2864886 }}</ref>
 
<ref name="meissner06optimized">{{cite journal | first1=M. | last1=Meissner | title=Optimized Particle Swarm Optimization (OPSO) and its application to artificial neural network training | last2=Schmuker | first2=M. | last3=Schneider | first3=G. | journal=BMC Bioinformatics | pmc=1464136 | year=2006 | volume=7 | issue=1 | pages=125 | doi=10.1186/1471-2105-7-125 | pmid=16529661 | doi-access=free }}</ref>
Line 228:
<ref name="coellocoello02MOPSO">{{cite conference | first1=C. | last1=Coello Coello | url=http://portal.acm.org/citation.cfm?id=1252327 | title=MOPSO: A Proposal for Multiple Objective Particle Swarm Optimization | last2=Salazar Lechuga | first2=M. | book-title=Congress on Evolutionary Computation (CEC'2002) | year=2002 | pages=1051–1056}}</ref>
 
<ref name="Chen10SPSO">{{cite journal | first1=Wei-neng | last1=Chen | title=A novel set-based particle swarm optimization method for discrete optimization problem | last2=Zhang | first2=Jun | journal=IEEE Transactions on Evolutionary Computation | year=2010 | volume=14 | issue=2 | pages=278–300 | doi=10.1109/tevc.2009.2030331| bibcode=2010ITEC...14..278C | citeseerx=10.1.1.224.5378 | s2cid=17984726 }}</ref>
 
<ref name="elshamy07sis">{{cite conference | first1=W. | last1=Elshamy | url=http://people.cis.ksu.edu/~welshamy/pubs/ieee_sis07.pdf | title=Clubs-based Particle Swarm Optimization | last2=Rashad | first2=H. | last3=Bahgat | first3=A. | book-title=IEEE Swarm Intelligence Symposium 2007 (SIS2007) | year=2007 | ___location=Honolulu, HI | pages=289–296 | access-date=2012-04-27 | archive-url=https://web.archive.org/web/20131023025232/http://people.cis.ksu.edu/~welshamy/pubs/ieee_sis07.pdf | archive-date=2013-10-23 | url-status=dead }}</ref>
Line 238:
<ref name="taherkhani2016inertia">{{cite journal | first1=M. | last1=Taherkhani | title=A novel stability-based adaptive inertia weight for particle swarm optimization | last2=Safabakhsh | first2=R. | journal=Applied Soft Computing | year=2016 | volume=38 | pages=281–295 | doi=10.1016/j.asoc.2015.10.004}}</ref>
 
<ref name="bratton2007">{{cite book | first1=Daniel | last1=Bratton | url=http://www.cil.pku.edu.cn/resources/pso_paper/src/2007SPSO.pdf | last2=Kennedy | first2=James | title=2007 IEEE Swarm Intelligence Symposium | chapter=Defining a Standard for Particle Swarm Optimization | pages=120–127 | year=2007 | doi=10.1109/SIS.2007.368035 | isbn=978-1-4244-0708-8 | s2cid=6217309 | archive-date=2016-01-27 | access-date=2016-01-22 | archive-url=https://web.archive.org/web/20160127030145/http://www.cil.pku.edu.cn/resources/pso_paper/src/2007SPSO.pdf | url-status=dead }}</ref>
 
<ref name="Zambrano-Bigiarini2013">{{cite book | first1=M. | last1=Zambrano-Bigiarini | last2=Clerc | first2=M. | last3=Rojas | first3=R. | title=2013 IEEE Congress on Evolutionary Computation | chapter=Standard Particle Swarm Optimisation 2011 at CEC-2013: A baseline for future PSO improvements | publisher=Evolutionary Computation (CEC), 2013 IEEE Congress on | pages=2337–2344 | year=2013| doi=10.1109/CEC.2013.6557848 | isbn=978-1-4799-0454-9 | s2cid=206553432 }}</ref>
Line 272:
|pages=578–594
|doi=10.1109/TEVC.2017.2743016
|bibcode=2018ITEC...22..578Y
|url=https://ieeexplore.ieee.org/document/8025724
}}</ref>
 
Line 289:
|year=2024
|journal=IEEE Transactions on Evolutionary Computation
|volume=29
|issue=4
|page=1
|doi=10.1109/TEVC.2024.3380436
|url=https://ieeexplore.ieee.org/document/10477458
|url-access=subscription
}}</ref>
}}
Line 301:
*[http://www.particleswarm.info Particle Swarm Central] is a repository for information on PSO. Several source codes are freely available.
*[http://vimeo.com/17407010 A brief video] of particle swarms optimizing three benchmark functions.
*[http://www.mathworks.com/matlabcentral/fileexchange/11559-particle-swarm-optimization-simulation Simulation of PSO convergence in a two-dimensional space (Matlab).] {{Webarchive|url=https://web.archive.org/web/20240414152449/http://www.mathworks.com/matlabcentral/fileexchange/11559-particle-swarm-optimization-simulation |date=2024-04-14 }}
*[http://www.vocal.com/particle-swarm-optimization/ Applications] of PSO.
*{{cite journal|doi=10.1016/j.eswa.2008.10.086|title=Automatic calibration of a rainfall–runoff model using a fast and elitist multi-objective particle swarm algorithm|journal=Expert Systems with Applications|volume=36|issue=5|pages=9533–9538|year=2009|last1=Liu|first1=Yang}}
*[http://www.adaptivebox.net/research/bookmark/psocodes_link.html Links to PSO source code] {{Webarchive|url=https://web.archive.org/web/20210415022817/http://www.adaptivebox.net/research/bookmark/psocodes_link.html |date=2021-04-15 }}
 
{{Major subfields of optimization}}