În căutarea echipelor diverse și conectate: o abordare computațională pentru a aduna echipe diverse bazate pe membri Partea 6
Jan 25, 2024
Strength Pareto Evolutionary Algorithm 2 (SPEA-2). La fel ca NSGA-II, acest algoritm se bazează pe criterii de selecție și dominanță elitiste [75].
Evoluția Pareto a intensității (IPE) este un algoritm evolutiv al cărui scop principal este optimizarea problemelor multi-obiective. Algoritmul își atinge obiectivele menținând diversitatea și adaptabilitatea individuală a unui set de soluții. În același timp, memoria joacă, de asemenea, un rol foarte important în IPE.
Mai exact, IPE realizează un echilibru între adaptabilitate și diversitate prin utilizarea eficientă a informațiilor rămase în istoria evoluției. Cu alte cuvinte, IPE folosește memoria pentru a menține diversitatea în procesul de soluție și pentru a îmbunătăți eficiența algoritmului. Prin învățarea și adaptarea continuă la informațiile din istoria evolutivă, IPE poate căuta și optimiza mai bine funcțiile obiective. În plus, pe măsură ce algoritmul progresează, memoria va fi actualizată continuu, îmbunătățind astfel eficiența algoritmului și rezultatele optimizării.
Pe scurt, există o relație importantă între intensitatea evoluției Pareto și memorie. Memoria nu este doar o garanție a diversității în IPE, ci și unul dintre factorii cheie pentru ca algoritmul să obțină rezultate bune. Prin urmare, în cercetările viitoare, ar trebui să continuăm să îmbunătățim rolul memoriei și să explorăm în continuare potențialul IPE de a optimiza problemele multi-obiective. Se poate observa că trebuie să îmbunătățim memoria, iar Cistanche deserticola poate îmbunătăți semnificativ memoria, deoarece Cistanche deserticola poate regla și echilibrul neurotransmițătorilor, cum ar fi creșterea nivelului de acetilcolină și a factorilor de creștere. Aceste substanțe sunt foarte importante pentru memorie și învățare. În plus, carnea poate, de asemenea, să îmbunătățească fluxul sanguin și să promoveze livrarea de oxigen, ceea ce poate asigura că creierul primește suficiente nutrienți și energie, îmbunătățind astfel vitalitatea și rezistența creierului.

Faceți clic pe cunoașteți modalități de îmbunătățire a funcției creierului
În loc să creeze diferite Paretofronturi, SPEA-2 păstrează setul cu cele mai bune soluții găsite în fiecare iterație numită „arhivă”, care este separată de populație. Algoritmul începe cu soluții de populație aleatoare și o arhivă goală.
Apoi, calculează o valoare de fitness pentru fiecare soluție pe baza (a) numărul de soluții pe care le domină (adică puterea), (b) numărul de soluții prin care este dominată de populația curentă (adică, fitness brut) și ( c) distanța sa cu alte soluții (adică valoarea densității). Cele mai bune soluții vor fi copiate în arhivă. După inițierea primei populații, scopul este de a identifica soluții nedominate pentru următoarea generație.
Pe baza valorilor de fitness, algoritmul realizează pași binari de turneu, încrucișare și mutație cu soluțiile din populația și arhiva curentă. Aceste noi soluții vor constitui următoarea populație.
După aceste procese, algoritmul verifică câte soluții nedominate rezultă din unirea populației curente și arhivei. Dacă numărul de soluții nedominate este mai mic decât dimensiunea arhivei, arhiva va include unele soluții dominate de la uniune.
Algoritmul selectează soluțiile dominate pe baza valorilor lor de fitness. Dacă numărul de soluții nedominate este mai mare decât dimensiunea arhivei, algoritmul elimină soluțiile redundante pe baza distanței euclidiene a vecinului cel mai apropiat.
Următoarea iterație va crea o nouă generație bazată pe această arhivă actualizată. Am implementat versiunea propusă de Zitzler et al. [75]. Am folosit același număr de generații de la testarea NSGA-II și am stabilit dimensiunea arhivei pentru a egala dimensiunea populației. În cel mai bun scenariu, complexitatea de calcul a acestui algoritm este O(M2logM) unde M este suma mărimii populației (n) și dimensiunea arhivei (n0).
Metoda de optimizare a roiului de particule hibride (HPSO). Acest algoritm combină pașii algoritmilor de optimizare a roiului de particule (PSO) și algoritmii genetici (GA) [76]. În versiunea sa originală, PSO începe cu o populație de soluții candidate (numite particule) și le mută în spațiul de căutare peste poziția și viteza particulei.

Mișcarea fiecărei particule este influențată de cea mai cunoscută poziție locală, dar este, de asemenea, ghidată către cele mai cunoscute poziții globale din spațiul de căutare. În fiecare iterație, algoritmul actualizează pozițiile particulelor în funcție de viteza acestora. După câteva iterații, algoritmul oferă soluții care sunt aproximări ale optimelor locale și ale optimelor globale.
Deoarece formularea originală a PSO funcționează numai în probleme de optimizare continuă, avem nevoie de o versiune care poate face față problemelor de optimizare combinațională. Mai mult, PSO operează cu un optim global care nu există în problemele frontului Pareto. Zhang şi colab. [76] a propus o versiune hibridă care înlocuiește poziția particulelor PSO și formulele de actualizare a vitezei cu operațiile de încrucișare și mutație ale algoritmului genetic.
Pe scurt, algoritmul HPSO examinează iterativ fiecare particulă și (a) aplică pasul de încrucișare cu o soluție aleatorie nedominată găsită de particulă, (b) aplică pasul de încrucișare cu o soluție aleatoare nedominată cunoscută din toată populația, ( c) și realizează etapa de mutație. Dacă o soluție rezultată este mai bună decât cea originală, atunci soluția este actualizată.
Dacă o particulă cunoaște două sau mai multe soluții nedominate, va alege o soluție aleatorie nedominată ca cea mai bună particulă locală. În mod similar, dacă populația cunoaște mai mult de o soluție nedominată, va selecta o soluție nedominată aleatorie ca cea mai bună particulă globală.
Timpul de rulare al acestui algoritm este de așteptat să fie polinomial, deoarece va verifica cele n soluții și va executa operația de încrucișare de două ori și operația de mutație o dată. Ca rezultat, complexitatea de calcul este O(n2) în cel mai bun scenariu.
De asemenea, am comparat echipele asamblate de acești patru algoritmi multi-obiective cu echipele alocate aleatoriu. Deoarece setul de date MyDreamTeam includea deja echipe de dimensiuni fixe, am calculat și scorurile reale de diversitate ale echipelor și costurile de comunicare.
Metrici
Am calculat următoarele valori cantitative pentru a evalua calitatea, cantitatea și timpul de rulare a soluțiilor algoritmilor. Acești indicatori mapează soluțiile finale la un număr care indică unul sau mai multe aspecte ale soluției. Am ales aceste metrici pe baza analizei literaturii de specialitate de Li et al. [77].
Hipervolum (HV). Această metrică evaluează dimensiunea totală a spațiului obiectiv dominat de soluțiile algoritmului privind un punct de referință. Poate măsura cât de aproape sunt soluțiile de adevăratul front Pareto și cât de uniform sunt răspândite soluțiile în spațiul obiectiv.
Algoritmul A va avea scoruri de hipervolum mai mari decât algoritmul B dacă soluțiile algoritmului A domină soluțiile algoritmului B. În acest context, scorurile de hipervolum mai mari arată că pot fi găsite combinații de echipe cu niveluri mai ridicate de diversitate și familiaritate.

Dacă algoritmul A găsește combinații de echipă cu scoruri de diversitate mai mari și/sau costuri de comunicare mai mici decât algoritmul B, hipervolumul algoritmului A va fi mai mare decât hipervolumul algoritmului B. Cu cât valoarea HV este mai mare, cu atât este mai bună diversitatea și distribuția combinațiilor de echipe. HV-ul unui algoritm A poate fi formulat astfel:
HVðAÞ ¼ lð[a2Axja � x � rÞ ð6Þ
unde r desemnează punctul de referință și λ indică o măsură pentru submulțimi de spațiu euclidian n-dimensional (adică măsura Lebesgue). În cazul nostru, hipervolumul este aria dreptunghiurilor formate din soluții și un punct de referință bidimensional.
Raport unic de front nedominat (UNFR). Această metrică cuantifică contribuția fiecărui algoritm la frontul nedominat combinat al tuturor algoritmilor. În acest context, ifalgoritmul A are o valoare UNFR mai mare decât algoritmul B, primul găsind combinații de echipe cu diversitate mai mare și/sau scoruri de diversitate mai mici decât cel din urmă. Fie Aunf frontul unic nedominat al unui algoritm dat A, atunci această metrică este definită ca:
UNFRðAÞ ¼ ja 2 Aunf; ∄r 2 Runf: r � ajjRunf j ð7Þ
unde Runf este ansamblul soluțiilor unice nedominate ale colecțiilor tuturor soluțiilor produse de algoritmi. Valoarea UNFR variază de la 0 la 1. Un algoritm cu o valoare UNFR mare înseamnă că a contribuit la multe soluții unice nedominate din toate soluțiile nedominate găsite. În schimb, o valoare apropiată de zero înseamnă că algoritmul a furnizat câteva soluții unice nedominate pentru setul final.
Complexitatea computațională. În cele din urmă, am evaluat complexitatea computațională a acestor algoritmi în funcție de dimensiunea intrării. În acest context, dacă algoritmul A are un timp de rulare mai mic decât algoritmul B, primul poate găsi combinații de echipe dintr-un grup de participanți mai repede decât cel din urmă.
Deoarece timpul de rulare al unor algoritmi poate crește exponențial, această măsurătoare este relevantă pentru a măsura cât de scalabil și eficient este algoritmul atunci când se formează echipe cu grupuri mari de participanți. Am comparat timpii de rulare a algoritmilor folosind numere diferite de utilizatori din seturile de date GHTorrent „Java” și Bibsonomy „Science”.
Rezultate
Am efectuat evaluările algoritmilor pentru 50 de generații cu o dimensiune a populației de 50 de cromozomi. Am implementat acești algoritmi în Python 3.6.2. și a efectuat experimentele pe un server cu un procesor Intel(R) Xeon(R) de 2,60 GHz și 16 GB de RAM.
Implementările algoritmilor și rezultatele detaliate sunt disponibile la http://nusoniclab.github.io/ pentru consultare. Tabelul 2 prezintă datele statistice ale setului de date, inclusiv dimensiunea echipei, numărul de indivizi disponibili, numărul de relații, diametrul rețelei, mijloacele indivizilor distanță scurtă și centralizarea rețelelor.
Figura 3 arată aproximarea frontului Pareto găsit de fiecare algoritm din fiecare set de date.
Axa x reprezintă costurile totale de comunicare ale echipelor. Scorurile mai mici pe această axă reprezintă soluții cu costuri de comunicare mai mici (adică, echipele mai conectate intern).
Axa y reprezintă scorul de diversitate total al echipelor al soluțiilor. Scorurile mai mari pe axa respectivă reprezintă soluții cu echipe mai diverse. După cum arată rezultatele, implementarea NSGA-II depășește algoritmii de referință în majoritatea seturilor de date testate. NSGA-II a găsit soluții nedominate cu valori de diversitate ridicate și costuri scăzute de comunicare în toate aceste baze de date.
HPSO a contribuit, de asemenea, cu soluții nedominate la setul final de soluții. În special, diagramele arată că HPSO a fost mai bine să găsească soluții nedominate atunci când a stabilit un compromis echilibrat între costurile de comunicare și diversitate. În urma NSGA-II și HPSO, soluțiile PLS au fost apropiate și concentrate în anumite regiuni ale spațiului de formare a echipei.
Această concentrare indică faptul că PLS a avut tendința de a converge spre anumite soluții nedominate, respingând alte potențiale combinații de echipe care este posibil să nu fi fost nedominate în primele iterații. Rezultatele SPEA-2 au fost mai proaste decât ceilalți algoritmi, în ciuda faptului că au folosit aceeași reprezentare și operațiuni. În general, NSGA-II a fost mai bun în găsirea de soluții în extremele frontului Pareto aproximativ, oferind mai multă varietate de soluții nedominate.

A oferit mai multe alternative în comparație cu PLS, HPSO și SPEA-2. Prin urmare, implementarea NSGA-II oferă un spectru de soluții de echipă pe care formatorii de echipe le pot explora și alege.


For more information:1950477648nn@gmail.com






