Documente Academic
Documente Profesional
Documente Cultură
PROIECT
la Tehnici de planificare și ordonanțare a producției
2020 – 2021
ALGORITMUL LICURICIULUI
(THE FIREFLY ALGORITHM)
Cuprins
1.1. Introducere – Algoritmii genetici.........................................................................................4
1.2. Comportamentul licuricilor..................................................................................................5
1.3. Dezvoltarea Algoritmului licuriciului...................................................................................5
1.3.1. Pseudocod pentru algoritmul licuriciului (FA).............................................................6
1.3.2. Intensitatea luminoasă și atractivitatea..........................................................................6
1.3.2.1. Nivelul de atractivitate al unui licurici...................................................................6
1.3.2.2. Mișcarea către licuricii mai atrăgători...................................................................7
1.4. Implementarea algoritmului în MatLAB – Exemplu............................................................8
1.4.1. Statistici - Utilizarea Firefly Algorithm în diverse domenii industriale........................9
Bibliografie....................................................................................................................................10
Tabel figuri
Figura 1. Graficul funcției cu două maxime globale egale..............................................................8
Figura 2. Poziția inițială a celor 25 de licurici (stânga) și poziția finală a licuricilor (dreapta)......8
Figura 3. Aplicații ale algoritmului licuriciului în problemele de optimizare în funcșie de domenii
industriale........................................................................................................................................9
Figura 4. Comparație intre aplicațiile Simple sau Hibride a algoritmului licuriciului....................9
INTRODUCERE
Optimizarea este un proces de determinare a celei mai bune soluții pentru a face ceva cât
mai funcțional și eficient posibil prin minimizarea sau maximizarea parametrilor implicați în
probleme. Mai multe categorii de probleme de optimizare, cum ar fi discrete, haotice, multi-
obiective și multe altele sunt abordate prin utilizarea algoritmilor genetici.
Algoritmii genetici sunt cei mai populari algoritmi evolutivi în ceea ce privește
diversitatea aplicațiilor lor. Marea majoritate a problemelor de optimizare au fost adaptate pentru
algoritmii genetici. În plus, algoritmii genetici se bazează pe o mulțime inițială de soluții posibile
cunoscută ca „populație” și algoritmii evolutivi moderni se bazează direct pe algoritmi genetici
sau algoritmi care au unele asemănări puternice.
Algoritmul genetic (GA), dezvoltat de John Holland și colaboratorii săi în anii 1960 și
1970, este un model sau o abstractizare a evoluției biologice bazată pe teoria selecției naturale a
lui Charles Darwin. Olanda a fost prima care a folosit încrucișarea și recombinarea, mutația și
selecția în studiul sistemelor adaptive și artificiale. Acești operatori genetici formează partea
esențială a algoritmului genetic ca strategie de rezolvare a problemelor. De atunci, multe variante
de algoritmi genetici au fost dezvoltate și aplicate la o gamă largă de probleme de optimizare, de
la colorarea graficelor la recunoașterea modelelor, de la sisteme discrete (cum ar fi problema
vânzătorului călător) la sisteme continue (de exemplu, proiectarea eficientă a profilului aerian în
ingineria aerospațială) și de la piața financiară la optimizarea ingineriei multiobective.
Există multe avantaje ale algoritmilor genetici față de algoritmii tradiționali de optimizare
și două dintre cele mai vizibile avantaje sunt: capacitatea de a face față problemelor complexe și
paralelismului. Algoritmii genetici pot face față diferitelor tipuri de optimizare, indiferent dacă
funcția obiectivă (fitness) este staționară sau ne-staționară (se schimbă în timp), liniară sau
neliniară, continuă sau discontinuă sau cu zgomot aleatoriu. Deoarece mai mulți descendenți
dintr-o populație acționează ca agenți independenți, populația (sau orice subgrup) poate explora
spațiul de căutare în mai multe direcții simultan. Această caracteristică îl face ideal pentru a
paralela algoritmii pentru implementare. Parametrii diferiți și chiar diferite grupuri de șiruri
codate pot fi manipulate în același timp.
1.2. Comportamentul licuricilor
Există aproximativ două mii de specii de licurici, iar majoritatea licuricii produc sclipiri
scurte și ritmice. Modelul acestor sclipiri este adesea unic pentru o anumită specie. Lumina
intermitentă este produsă de un proces de bioluminiscență, iar adevăratele funcții ale acestor
sisteme de semnalizare sunt încă în dezbatere. Cu toate acestea, două funcții fundamentale ale
unor astfel de flash-uri sunt atragerea partenerilor de împerechere (comunicare) și atragerea
potențialei prăzi. În plus, sclipirea intermitentă poate servi și ca mecanism de avertizare de
protecție pentru potențialilor prădători.
Sclipirea ritmică, rata de sclipire și cantitatea de timp fac parte din sistemul de semnal
care reunește ambele sexe. Femelele răspund la modelul unic de sclipire al unui mascul în
aceeași specie, în timp ce la unele specii, cum ar fi Photuris, licuricii pot asculta semnalele
bioluminescente și chiar imită modelul intermitent al altor specii pentru a atrage și mânca
licuricii masculi. care poate confunda sclipirile ca un potențial partener potrivit. Unele specii de
licurici tropicali își pot sincroniza chiar sclipirile, formând astfel un comportament biologic auto-
organizat emergent.
Știm că intensitatea luminii la o anumită distanță r de sursa de lumină respectă legea
pătratului invers. Adică intensitatea luminii I scade pe măsură ce distanța r crește în termeni de
I ∝ 1 / r2. Mai mult, aerul absoarbe lumina care devine din ce în ce mai slabă pe măsură ce
distanța crește. Acești doi factori combinați fac ca majoritatea licuricilor să fie vizibil la o
distanță limită, de obicei câteva sute de metri pe timp de noapte, ceea ce este suficient de bun
pentru ca licuricii să comunice.
Lumina intermitentă poate fi formulată în așa fel încât să fie asociată cu funcția obiectivă
care trebuie optimizată, ceea ce face posibilă formularea de noi algoritmi de optimizare. În restul
acestui proiect, se va schița mai întâi formularea de bază a Algoritmului Firefly (FA) și apoi
implementarea acestuia în detaliu.
(3)
unde β0 este valoarea atractivității licuriciului la r = 0 și γ este coeficientul de absorbție a
luminii mediului.
1.3.2.2. Mișcarea către licuricii mai atrăgători
Mișcarea unui licurici i în poziția xi care se deplasează către un licurici mai luminos j în
poziția xj prin este descrisă de ecuația 4:
(4)
în care al doilea termen reprezintă valoarea atracției. Al treilea termen este randomizarea,
α fiind parametrul de randomizare, iar ei este un vector de numere aleatoare extrase dintr-o
distribuție gaussiană sau distribuție uniformă. De exemplu, cea mai simplă formă este e i poate fi
înlocuită cu rand - ½ unde rand este un generator de numere aleatorii distribuit uniform în [0,
1]. Pentru majoritatea implementării noastre, putem lua β0 = 1 și α ∈ [0, 1].
Merită subliniat faptul că ecuația 4 reprezintă o mișcare aleatorie orientată spre licuricii
mai strălucitori. Dacă β0 = 0, devine o simplă mișcare aleatorie. Mai mult, termenul de
randomizare poate fi extins cu ușurință la alte distribuții, cum ar fi zborurile Levy.
Parametrul γ caracterizează acum variația atractivității, iar valoarea acestuia este crucială
în determinarea vitezei convergenței și a modului în care se comportă algoritmul FA. În teorie, γ
∈ [0, ∞), dar în practică, γ = O (1) este determinat de lungimea caracteristică Γ a sistemului care
urmează să fie optimizat. Astfel, pentru majoritatea aplicațiilor, variază de obicei de la 0,1 la 10.
Algoritmul compară atractivitatea noii poziții a licuriciului cu cea veche. Dacă noua
poziție produce o valoare a atractivității mai mare, licuriciul se va muta în noua poziție; în caz
contrar licuriciul va rămâne în poziția actuală. Criteriul de finalizare a FA se bazează pe un
număr de iterații predefinit sau o valoare de fitness predefinită.
Cel mai luminos licurici se mișcă aleator pe baza ecuației 5.
(5)
unde (x, y) ∈ [−5, 5] × [−5, 5]. Această funcție are patru vârfuri. Două vârfuri locale cu f = 1 la
(−4, 4) și (4, 4) și două vârfuri globale cu fmax = 2 la (0, 0) și (0, −4), așa cum se arată în Figura 2.
Putem vedea că toate aceste patru optime pot fi găsite folosind 25 de licurici în aproximativ 20
de generații (vezi Fig. 3). Deci, numărul total de evaluări ale funcției este de aproximativ 500.
Acest lucru este mult mai eficient decât majoritatea algoritmilor metaheuristici existenți.
Figura 2. Poziția inițială a celor 25 de licurici (stânga) și poziția finală a licuricilor (dreapta)
Figura 3. Aplicații ale algoritmului licuriciului în problemele de optimizare în funcșie de domenii industriale
Așa cum este prezentat în figura 4, aplicațiile FA simple utilizate pentru rezolvarea
problemelor de optimizare sunt duble față de aplicațiile FA hibride. Există doar câțiva cercetători
care au utilizat aplicații FA hibride cu alți algoritmi pentru a rezolva problemele de optimizare.
Algoritmii hibrizi au performanțe mai bune decât cei simplii. Aplicațiile FA hibride par a fi mai
bune decât FA simple, deoarece celelalte tehnici îmbunătățesc FA în ceea ce privește timpul de
procesare și performanța. Uneori, FA simplu are nevoie de mai mult timp pentru a obține valorile
parametrilor optimi. Prin urmare, aplicațiile FA ar trebui să fie hibridizate cu alte tehnici pentru a
reduce timpul de procesare.
Bibliografie
A Review and Comparative Study of Firefly Algorithm and its Modified Versions. Khan, Waqar
A., și alții. 2016. s.l. : Optimization Algorithms - Methods and Applications, 2016.
Firefly Algorithm for Optimization Problem. Johari, Nur Farahlina, și alții. 2013. Switzerland :
Applied Mechanics and Materials, 2013, Vol. 421.
Yang, Xin-She. Nature-Inspired Metaheuristic Algorithms. University of Cambridge, United
Kingdom : Luniver Press.