Sunteți pe pagina 1din 14

Dumitrescu Sorin Alexandru, 314AC

Analiza comparativa a algoritmilor de optimizare multicriteriala (OM) vs algoritmi bazati pe tehnici de inteligenta artificiala (TIA)

Introducere

Viata este plina de alegeri si decizii. (Phil Rich)

Luarea de decizii inseama mai mult decat a inchide ochii si a selecta o varianta, sau a lasa alegerea in voia unui joc al sortii. Aceasta presupune a avea in vedere a numerosi factori care vor influenta din prima instanta, sau in viitor, cursul evenimentului radacina si/sau a unuia sau mai multor evenimente declansate de precedentul. Inca din cele mai vechi timpuri, omul a aspirat sa isi automatizeze viata, din nevoia de a evita munca repetitiva. Inevitabil, s-a nascut conceptul de optimizare. Ce inseamna optimizarea? Optimizarea reprezinta procesul de selectare, din multimea solutiilor posibile ale unei probleme, a acelei solutii care este cea mai satisfacatoare in raport cu unul sau mai multe criterii predefinite. Acest proces implica existenta a 3 componente: O problema tehnica; Existenta mai multor solutii pentru aceeasi problema; Unul sau mai multe criterii de selectare a solutiei optime.

Dumitrescu Sorin Alexandru, 314AC

Prin optimizare, se doreste obtinerea de rezultate cel putin similar calitative, insa se impune ca procesul sa fie mai optim din punct de vedere financiar, al timpului, al complexitatii, sau al oricarui alt factor relevant pentru procesul in cauza. Desigur, optimizarea fara niciun efect negativ advers, este dificil de obtinut. Ca exemplu, putem aminti de strategia chineza a procesului de productie: calitate sub media internationala; costuri substantial scazute;

care, in final, conduc catre beneficii financiare, surprinzator sau nu, extrem de avantajoase. Orice proces presupune existenta unul algoritm dupa care va functiona. Ce reprezinta un algoritm? Un algoritm este o metoda de calcul alcatuita din pasii necesari solutionarii unei probleme. Implicit, procesul de optimizare se bazeaza pe algoritmi, fiecare oferind o alta abordare asupra subiectului. Chiar si luarea unei decizii se face dupa un algoritm: 1. 2. 3. 4. 5. 6. 7. 8. definirea problemei; determinarea cerintelor; stabilirea obiectivelor; identificarea alternativelor; definirea criteriului pe baza caruia se face alegerea; selectarea unei decizii; evaluarea alternativelor; validarea solutiei. In paginile care urmeaza, vom prezenta doua tipuri de algoritmi de optimizare: multicriteriala (OM) si bazati pe tehnici de Inteligenta Artificiala (TIA).

Dumitrescu Sorin Alexandru, 314AC

Algoritmi de optimizare multicriteriala


Optimizarea multicriteriala se ocupa cu functii matematice de optimizare, care implica eficientizarea simultana a mai mult decat a unei functii. Este o tehnica folosita vaste domenii de activitate ca: inginerie aplicata, economie, finante si productie. Pentru a lamuri conceptul multicriterial, vom apela la un exemplu elocvent si anume, eficientizarea procesului de procesare a deseurilor.

Printr-o mai buna sortare a deseurilor, se poate obtine o rata mai mare a reciclarii materialelor si in acelasi timp cresterea cantitatii de energie alternativa obtinuta prin transformarea gunoiului nereciclabil, printre altele, in gaz metan. In linii mari, putem compara procesul cu marirea unei fractii a , crescand numaratorul (a), si in acelasi b

timp scazand si numitorul (b). Astfel avem de-a face cu o situatie win-win.

Dumitrescu Sorin Alexandru, 314AC

Avantaje timp de executie redus; precizie mare a rezultatelor; rezultate imbunatatite. Ce instrumente foloseste?

Dezavantaje complexitatea sporita a algoritmului.

Prin instrument intelegem un algoritm propriu-zis, dupa care se face optimizarea.

Dumitrescu Sorin Alexandru, 314AC

Algoritmi multi attribute si multi-objective

Multiple attribute utility theory (MAUT) Aceasta metoda consta in 7 pasi: 1. Identificarea entitatii care va lua decizia; 2. Identificarea problemei; 3. Identificarea optiunilor; 4. Identificarea valorilor relevante in cazul respectiv; 5. Clasarea valorilor relevante in functie de importanta; 6. Determinarea probabilitatii fiecarei optiuni de a maximiza fiecare valoare relevanta in parte; 7. Calcului statistic. Analytic hierarchy process (AHP) Metoda se aplica dupa urmatorul algoritm:

1. Modelarea problemei sub forma ierarhica; 2. Stabilirea prioritatilor in cadrul ierarhiei;

Dumitrescu Sorin Alexandru, 314AC

3. Intocmirea unei ierarhii care contine principalele elemente (prioritatile); 4. Verificarea consistentei deciziilor; 5. Luarea unei decizii finale.

ELimination Et Choix Traduisant la REalit (ELECTRE) Este o metoda folosita pentru a elimina solutii inacceptabile. Consta in doua parti: 1. Construirea unor relatii de surclasare intre diferite actiuni, luate doua cate doua; 2. Implementarea actiunilor recomandate dupa primul pas.

Preference ranking organization method for enrichment of evaluations (PROMETHEE) Este o metoda care se bazeaza pe clasament. Se foloseste pentru a gasi o solutie de compromis intre mai multi factori caracteristici problemei. Dupa compararea criteriilor si cuantificarea lor, daca exista alternative cu valori similare, perechea de solutii este declarata incomparabila. Prin urmare, se construiesc noi criterii care vor ajuta la luarea unei decizii optime.

Dumitrescu Sorin Alexandru, 314AC

Algoritmi de optimizare bazati pe tehnici de inteligenta artificiala

Pentru a putea intelege aceste tehnici, vom discuta intai despre inteligenta artificiala. Ce este inteligenta artificiala? Inteligenta artificiala este un domeniu de cercetare in cadrul informaticii, sau produsul rezultat in urma acesteia. Cea mai uzuala definitie este cea data de John McCarthy, in 1955: [] o masina care se comporta intr-un mod care poate fi considerat inteligent, daca ar fi vorba de un om

Cum functioneaza algoritmii bazati pe inteligenta artificiala? Acesti algoritmi se bazeaza pe tehnici de invatare (self-learning sau external learning), ducand astfel catre o auto-optimizare.

HAL 9000, Artificial Intelligence Entity

Dumitrescu Sorin Alexandru, 314AC

Un exemplu concret de optimizare prin AI este bijuteria industriei automotive japoneze, automobilul creat de NISSAN, GT-R. Tehnologia care se afla in spatele acestuia, permite atingerea unor performante inegalabile pentru aceasta categorie. Algoritmul inteligent scaneaza carosabilul in prealabil, schimband activ setarile suspensiei, cutiei de viteze, mecanismului de directie si programelor de asistenta la condus, asigurand coeficienti maximi de aderenta, care permit eficientizarea transmiterii puterii efective la roti, fara compromiterea altor factori ca masa, pret, consum, aerodinamicitate, s.a.

Avantaje versatilitate ridicata; functionare autonoma; capacitatea de invatare;

Dezavantaje posibilitatea obtinerii de rezultate neasteptate/nedorite complexitate foarte ridicata a algoritmilor.

Dumitrescu Sorin Alexandru, 314AC

Ce tipuri de algoritmi bazati pe inteligenta artificiala exista? In continuare vom prezenta urmatoarele patru tipuri de algoritmi de optimizare:

Retea neuronala aritificiala Logica Fuzzy

Algoritmi evolutivi Algoritmi genetici

Reteaua neuronala artificiala Aceasta idee porneste de la conceptul celulei specifice a sistemului nervos, neuronul. Neuronii sunt celule individuale care comunica intre ele prin sinapse prin impulsuri electrice. Aceasta conglomeratie de celule interconectate formeaza o retea neuronala. Reteaua neuronala a fost luata ca exemplu in incercarile de formare pe cale artificiala a unei inteligente cat mai apropiata de cea naturala. Astfel s-au creat retele neuronale artificiale, capabile sa imite procesele naturale. Aceste retele poseda capacitatea de invatare in urma interactiunii cu mediul incojurator, care faciliteaza optimizarea procesului analizat. Interpretarea informatiilor si stimulilor externi permite crearea unui model propriu al procesului, care va fi capabil sa raspunda si sa interpreteze autonom valorile transmiise de alti stimuli, neutilizati pana la momentul dat in procesul de invatare. Stilul de invatare este cel pe baza exemplului. Progresul in acest sens este unul lent, unitatile retelei fiind mult inferioare neuronilor, in termeni de putere de calcul individuala.

Dumitrescu Sorin Alexandru, 314AC

Logica Fuzzy Logica Fuzzy ofera o metoda flexibila de tratare a incertitudinii. Se foloseste pentru a reprezenta si evalua concepte sau criterii abstracte si/sau imprecise. Abordarea problemei se face catalogand criteriile binar, cu 1 si 0. Dupa aceasta etapa, se efectueaza o clasificare a alternativelor dupa numarul de 1 si 0 care le sunt atribuite pe baza criteriilor.

Algoritmi evolutivi Acesti algoritmi se folosesc de invatarea inductiva, nesupervizata, bazata pe observatii. Utilizeaza modele care se inspira din evolutia biologica precum mutatie, recombinare, reproducere, selectie naturala.

Algoritmi genetici Se bazeaza pe selectie naturala si pe principiile geneticii enuntate de Charles Darwin. Supravieuiete cel care e cel mai bine adaptat " Acest tip de algoritm nu va recomanda solutia optima, ci solutia cea mai apropiata de optim. El se va repeta, ducand la eliminarea solutiilor ineficiente, pana la gasirea celei potrivite.

Dumitrescu Sorin Alexandru, 314AC

Algoritmizare si implementare
Vom incepe prin exemple de implementare a algoritmilor de optimizare multicriteriali. Sa luam in considerare un avion de vanatoare. Principalele criterii de optimizare sunt: viteza fiabilitate autonomia de zbor incarcatura maxima utila a armamentului elemente de avionica consum pret Putem optimiza prin inlocuirea motorului curent cu unul mai performant, insa construit din aliaje mai usoare. Prin aceasta schimbare, se mareste puterea viteza, scade greutatea autonomie de zbor sporita, consum mai redus, se poate mari incarcatura maxima utila a armamentului transportat.

In cazul algoritmilor de optimizare bazati pe tehnici de inteligenta artificiala , vom prezenta un exemplu de algoritm de foloseste ambele tipuri de invatare. Primul exemplu il constituie un sistem de control al site-ului qoffice.ro. Asistentul vocal, este capabil sa ofere informatii optime din punct de vedere al locatiei geografice si a preferintelor. Algoritmul se foloseste de auto-invatare din parametrii primiti de la utilizatori si de invatare manuala primita de la administratori. Astfel sistemul se optimizeaza treptat, fiind capabil sa ofere rezultate din ce in ce mai precise.

Dumitrescu Sorin Alexandru, 314AC

Studiu de caz Optimizare multicriteriala vs Algoritmi Fuzzy

Optimizarea multicriteriala si algoritmii de tip Fuzzy sunt unele dintre cele mai raspandite metode de eficientizare a unui proces. Aplicatiile acestora acopera toate domeniile de activitate, de la inginerie aplicata pana la economie. Algoritmii Fuzzy, spre deosebire de OM, deseori pot complica o problema simpla, fiind limitati la aprecierea binara a criteriilor. Totusi, optimizarea multicriteriala se va confrunta cu probleme in cazul in care se aleg criterii ce nu pot fi apreciate in mod absolut. Conceptele abstracte, insa se vor rezolva prin intermediul unul algoritm Fuzzy. Desi este catalogat ca un algoritm de optimizare bazat pe inteligenta artificiala, Fuzzy se poate incadra la randul sau in cadrul algoritmilor multicriteriali.

Dumitrescu Sorin Alexandru, 314AC

Concluzii

Optimizarea este procesul care sporeste calitatea vietii, care impune evolutia tehnologiei si care faciliteaza dezvoltarea gandirii umane. Nascuta din nevoie, optimizarea a devenit o nevoie in orice domeniu de activitate. Privind catre viitor, vom putea previzualiza o lume construita pe baza algoritmilor, din ce in ce mai inteligenti, mai optimi si mai versatili. Rezultatele obtinute vor fi precise, personalizate si vor avea o tenta personala de comunicare. Recunoasterea greselilor si eliminarea lor, treptat, va aduce la nivel global o crestere multicriteriala, care va pune bazele urmatoarei etape a evolutiei omenirii.

Optimizarea este calea catre progres.

Dumitrescu Sorin Alexandru, 314AC

Bibliografie

Introduction to Decision Making Methods, Jnos Flp The Decision-making Poketbook, Neil Russell-Jones Evolutionary Algorithms for Solving Multi-Objective Problems, Carlos A. Coello Coello; Gary B. Lamont; David A. Van Veldhuisen

Multiple Criteria Decision Making, Zeleny M. Fuzzy logic and arithmetical hierarchy, Hjek, Petr Fuzzy Logic, Kosko, Bart; Isaka, Satoru A Field Guide to Genetic Programming, Poli, R., Langdon, W. B., McPhee Genetic Algorithms in Ruby Computational Intelligence An introduction, Andries P. Engelbrecht An introduction to Neural Networks, Kevin Gurney wikipedia.org mit.edu artint.info ieeexplore.ieee.org

S-ar putea să vă placă și