Optimizarea roiurilor de particule

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Exemplu de funcționare a PSO

În informatică , optimizarea roiurilor de particule ( PSO ), care poate fi tradusă ca „optimizare cu roiuri de particule”, este un algoritm de optimizare și aparține unei clase particulare de algoritmi utilizați în diverse domenii, inclusiv inteligența artificială . Este o metodă euristică de căutare și optimizare, inspirată de mișcarea roiurilor .

La fiecare iterație, algoritmul identifică un nou „candidat pentru cel mai bun” în spațiul de căutare, pe baza unei măsuri specifice a calității (fitness). OSP se încadrează sub egida meta-euristicii, deoarece nu face presupuneri cu privire la problemă și permite explorarea unor spații foarte mari de soluții. Deoarece algoritmul este structurat, totuși, nu există nicio garanție că soluția optimă va fi găsită vreodată.

Algoritmul nu folosește un gradient în timpul optimizării, prin urmare nu este necesară diferențierea problemei de analizat, care apare în schimb în metodele tradiționale de optimizare, cum ar fi coborârea gradientului . Din acest motiv, poate fi utilizat cu succes în probleme de optimizare neregulate, zgomotoase, variabile în timp etc.

PSO optimizează o problemă utilizând o populație de soluții candidate (numite „particule”, particulele ) care se deplasează în spațiul de căutare pe baza unor formule simple, care iau în considerare viteza lor curentă de mișcare, cunoștințele lor despre spațiul fitness (adică cea mai bună soluție pe care au explorat-o până acum) și cunoștințe comune (adică cea mai bună soluție generală identificată). Algoritmul permite să cântărească aceste trei componente (inerție, cognitivă și socială) și folosește mici fluctuații aleatorii pentru a minimiza posibilitatea de a prinde în minime locale.

PSO este atribuit în general lui Kennedy, Eberhart și Shi, [1] care l-au introdus în studiul comportamentelor sociale simulate, studiind mișcarea turmelor de păsări sau școlile de pești. Algoritmul a fost simplificat când s-a realizat că poate realiza optimizare.

Algoritmul PSO poate fi de asemenea implementat pentru a rezolva probleme de optimizare multi-obiective, unde frontul Pareto ajută la alegerea soluțiilor optime pentru problemă. [2] [3]

Notă

  1. ^ Kennedy, J.; Eberhart, R. (1995). „Optimizarea roiurilor de particule”. Proceedings of IEEE International Conference on Neural Networks. IV. pp. 1942–1948.
  2. ^ Coello Coello, Salazar Lechuga, "MOPSO: A Proposal for Multiple Objective Particle Swarm Optimization", Congress on Evolutionary Computation (CEC'2002), pp. 1051-1056
  3. ^ Parsopoulos K., Vrahatis M., "Particle swarm optimization method in multiobjective problems", Proceedings of the ACM Symposium on Applied Computing (SAC), 2002, pp. 603-607

Elemente conexe

Alte proiecte