Particle Swarm Optimization: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
ita in grassetto
 
(17 versioni intermedie di 8 utenti non mostrate)
Riga 1:
{{F|informaticaprogrammazione|luglio 2011}}
[[File:PSO Meta-Fitness Landscape (12 benchmark problems).JPG|thumb|Esempio di funzionamento del PSO]]
{{W|informatica|marzo 2011}}
In [[informatica]], l''''ottimizzazione con sciami di particelle''', nota anche come '''particle swarm optimization''' ('''PSO'''), è un [[algoritmo]] di ottimizzazione e appartiene ad una particolare classe di algoritmi utilizzati in diversi campi, tra cui l'[[intelligenza artificiale]]. È un metodo [[euristico]] di ricerca ed ottimizzazione, ispirato al movimento degli [[Formazione a sciame|sciami]].
 
In [[informatica]], la '''particle swarm optimization''' (PSO, traducibile come "ottimizzazione con sciami di particelle") è un [[algoritmo]] computazionale iterativo per l'ottimizzazione di problemi. Ad ogni iterazione, l'algoritmo identifica un nuovo "candidato all'ottimo" nello spazio di ricerca, sulla base di una specifica [[misura di qualità]] (fitness). La PSO rientra nell'egida delle meta-euristiche, poiché non fa alcuna assunzione sul problema e consente l'esplorazione di larghissimi spazi di soluzioni. Per come è strutturato l'algoritmo, tuttavia, non c'è alcuna garanzia che la soluzione ottima verrà mai trovata.
 
La particle swarm optimizationL'algoritmo non fa uso di un gradiente nel corso dell'ottimizzazione, dunque non è richiesta la differenziabilità del problema da analizzare, cosa che invece avviene nei metodi di ottimizzazione tradizionali come la [[discesa del gradiente]]. Per questa ragione, può essere utilizzata con successo in problemi di ottimizzazione irregolari, rumorosi, variabili nel tempo, eccetera.
 
La PSO ottimizza un problema utilizzando una popolazione di soluzioni candidate (dette "particelle", le ''particle'') che si spostano nello spazio di ricerca sulla base di semplici formule, che tengono in considerazione la loro velocità di spostamento corrente, le loro conoscenze dello spazio di fitness (ovvero la migliore soluzione che hanno esplorato finora) e la conoscenza condivisa (cioè la miglior soluzione generale identificata). L'algoritmo consente di pesare queste tre componenti (inerzia, cognitiva e sociale) e utilizza dei piccoli jittering casuali per minimizzare la possibilità di intrappolamento in minimi locali.
 
La PSO è generalmente attribuita a Kennedy, Eberhart and Shi,<ref>ennedyKennedy, J.; Eberhart, R. (1995). "Particle Swarm Optimization". Proceedings of IEEE International Conference on Neural Networks. IV. pp. 1942–1948.</ref> che la introdussero nello studio dei comportamenti sociali simulati, studiando il movimento degli stormi di uccelli o dei banchi di pesci. L'algoritmo fu semplificato quando si comprese che poteva effettuare ottimizzazione.
 
Anche l'algoritmo del PSO può essere implementato per risolvere dei problemi di ottimizzazione multiobiettivo, dove il [[Ottimo paretiano|fronte di Pareto]] aiuta a scegliere le soluzioni ottimali del problema.<ref name=coellocoello02MOPSO>Coello Coello, Salazar Lechuga, "MOPSO: A Proposal for Multiple Objective Particle Swarm Optimization", Congress on Evolutionary Computation (CEC'2002), pp. 1051--1056</ref><ref name=parsopoulos02particle>Parsopoulos K., Vrahatis M., "Particle swarm optimization method in multiobjective problems", Proceedings of the ACM Symposium on Applied Computing (SAC), 2002, pp. 603–607</ref>
 
==Note==
<references/>
 
==Voci correlate==
[[Categoria:Algoritmi di ottimizzazione]]
* [[Algoritmo genetico]]
 
== Altri progetti ==
[[cs:Optimalizace hejnem částic]]
{{interprogetto}}
[[en:Particle swarm optimization]]
 
[[fa:روش بهینه‌سازی ازدحام ذرات]]
{{Genetica}}
[[fr:Optimisation par essaims particulaires]]
{{Apprendimento automatico}}
[[ja:粒子群最適化]]
{{Portale|ingegneria|statistica|informatica|Biologia|matematica}}
[[pt:Optimização por enxame de partículas]]
 
[[ru:Метод роя частиц]]
[[Categoria:Intelligenza artificiale]]
[[uk:Метод рою часток]]
[[Categoria:Apprendimento automatico]]
[[vi:Tối ưu bầy đàn]]
[[Categoria:Algoritmi di ottimizzazione]]
[[zh:粒子群优化]]
[[Categoria:Matematica per la genetica]]