Anda di halaman 1dari 13

Analiza comparativ a algoritmilor de posibilitate (logica

posibilitii, LP) vs algoritmi bazai pe tehnici de


inteligen artificial (TIA)

1. Despre optimizri
n sens larg, optimizarea este aciunea de stabilire, pe baza unui criteriu prestabilit, a
celei mai bune decizii ntr-o situaie dat cnd sunt posibile mai multe decizii, precum i
aciunea de implementare a deciziei stabilite i a rezultatului acesteia. n sens restrns,
optimizarea reprezint doar aciunea de stabilire a celei mai bune decizii (soluii), decizie
optimal (soluie optimal). Aceast activitate implic urmtoarele chestiuni:

O problem tehnic constnd n calculul matematic al unei soluii;

Existena mai multor soluii pentru aceeai problem;

Un criteriu de selectare a soluiei optime.

Problema de optimizare reprezint o aplicaie matematic de selectare a unei soluii,


dintr-o mulime posibil, pe baza evalurii funciei obiectiv.
Enunul unei probleme de optimizare (PO) n sens restrns necesare dou
elemente:
A) modelul mediului la care se refer situaia dat,
B) criteriul de optimizare.
Rezolvarea unei PO necesar existena unui al treilea element:
C) metoda de optimizare.
Modelul mediului caracterizeaz procesul cauzal din cadrul mediului la care se
refer PO i reprezint elementul pe baza cruia sunt estimate efectele diferitelor decizii care
pot fi luate n considerare.
Criteriul de optimizare exprimat n general prin funcia obiectiv (FO, funcie
criteriu, funcie cost) i reflect atitudinea fa de FO, imprimat de problema de
optimizare (PO). Funcia obiectiv reprezint expresia matematic a criteriului de optimizare.
Aceasta trebuie s reflecte eficiena economic a procesului i n acelai timp s rspund
obiectivelor funcionrii oricrui proces. FO servete la evaluarea numeric a diferitelor

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
decizii, iar atitudinea fa de FO trebuie s specifice sensul de variaie dorit al FO, minimizare
sau maximizare.
Metoda de optimizare = ansamblul de mijloace utilizate pentru determinarea deciziei
optimale pe baza modelului mediului si a FO.

n urma optimizarii vrem sa obinem un algoritm/ program/ proces mai eficient.


n informatic, eficien este un termen utilizat pentru a descrie cteva atribute dezirabile ale
unui algoritm sau al unui alt construct, n afara unui concept curat, a funcionalitii, etc.
Eficiena n general e coninut n dou proprieti: vitez (timpul ct i ia unei operaii pn
se ncheie), i spaiu (memoria sau depozitul nevolatil utilizat de ctre
construct). Optimizarea este procesul prin care se produce cod care este ct mai eficient
posibil, cteodat accentul punndu-se pe spaiu n detrimentul vitezei, sau viceversa.

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
Viteza unui algoritm este msurat n diverse moduri. Cea mai simpl metod
utilizeaz complexitatea n timp pentru a determina ordinul unui algoritm: de multe ori, este
posibil realizarea unui algoritm mai rapid n detrimentul spaiului utilizat. Acesta este i
cazul cnd reutilizezi rezultatele unui calcul intensiv dect s le obii prin recalculare la
comand.
Spaiul unui algoritm este de fapt alctuit din dou lucruri separate dar n legtur.
Prima parte este spaiul pe disc (sau echivalentul acestuia, depinznd de hardware i limbaj)
ocupat de ctre executabilul compilat din codul surs reprezentare a algoritului. n multe
cazuri acesta poate fi redus dac se prefer mecanisme de decizie n momentul execuiei (cum
ar fi funcii virtuale i informaia de tip la rulare) n dauna anumitor mecanisme de luare a
deciziei n momenul compilrii (cum ar fi macro substituia i ablon). Oricum, costul acestor
operaii va fi reflectat n viteza de execuie. Cealalt parte msurat a spaiului unui algoritm
este cantitatea de memorie alocat temporar n timpul procesrii. De exemplu, rezultatele
precalculate, cum a fost menionat anterior, mbuntesc viteza n dauna acestui atribut
(crete necesarul de memorie temporar alocat).
Optimizarea algoritmilor depinde n mod frecvent de proprietile mainii pe care
algoritmul va fi executat. De exemplu, cineva ar putea optimiza cod pentru eficien n
domeniul timp n aplicaii pentru calculatoare personale cu cantiti apreciabile de memorie,
n acelai timp cod ce trebuie introdus n dispozitive mici i cu puin memorie la dispoziie
probabil va trebui fcut s funcioneze mai lent pentru a economisi spaiu.
Scopul final al optimizrii unui proces este conducerea acestuia de ctre un
calculator de proces, n acest sens modelul matematic fiind elementul principal n conducerea
procesului. Rezult astfel imensa importan a obinerii unui model matematic care s descrie
ct mai fidel respectivul proces, adic ntre model i procesul pe care l descrie trebuie s
existe o concordan ct mai ridicat.

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)

2.Logica Posibilitii (LP)

Logica Posibilitii este o logic de incertitudine, adaptat pentru un raionament n


cadrul unor dovezi incomplete i a unor cunotine parial inconsecvente. La nivel
sintactic se ocup de formule din logica propoziional sau de teoria first-order (FOL) careia
i sunt ataate numere ntre 0 i 1, sau, mai general, elementele dintr-un set complet ordonat.
Aceste ponderi sunt limitele inferioare ale aa-numitelor grade de necesitate sau grade
de posibilitatea ale formulelor corespunztoare. Gradul de necesitate (sau certitudine) ale
unei formule exprim n ce msur dovezile disponibile implic adevrul acestei formule.
Gradul de posibilitate exprim n ce msur adevrul formulei nu este compatibil cu
dovezile disponibile.
La nivel matematic, gradele de posibilitate i necesitate sunt strns legate de mulimile
fuzzy, iar logica posibilitii este special adaptat la raionamentul automat atunci
cnd informaiile disponibile sunt ptrunse cu lipsa de precizie. Prin
urmare, logica posibilitatii este un instrument de motivare n condiii de incertitudine bazat
mai degrab pe ideea de comand, dect de numrare,contrar logicii probabilistice. Pentru a
determina cum logica posibilitii ar putea aprea ca un formalism ce merit studiat, ar
fi interesant s se ntoarc la originile teoriei mulimilor fuzzy i la ceea ce se numete "logica
fuzzy". Un tip incipient de logic fuzzy a aprut nc din 1920, propus de matematicianul
polonez Jan ukasiewicz (inventatorul notaiei poloneze). Sistemul su permitea extinderea
valorii de adevr a unei propoziii la toate numerele reale din intervalul [0,1]. Un numr din
acest interval era interpretat drept posibilitatea ca propoziia considerat s fie adevrat sau
fals. Aceste cercetri au dus la apariia teoriei posibilitii, o tehnic de raionament n
condiii de inexactitate. Mai trziu Lotfi A.Zadeh n 1965, a indrodus noiunea de fuzzy care
n sens curent n limba englez nseamn vag, estompat, nuanat. Termenul fuzzy, nuanat,
cum va fi utilizat n limba romn, este asociat cu submulimile dintr-un domeniu de
existen, care, spre deosebire de cele definite n matematica clasic i care au frontiere nete,
4

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
se caracterizeaz printr-o frontier constituit dintr-un domeniu n care amplitudinea
elementelor se estompeaz gradual, pn la dispariie.
Lotfi Zadeh a extins teoria posibilitii ntr-un sistem formal de logic matematic. De
asemenea, a adus n discuie modalitile de lucru cu termeni nuanai ai limbajului natural.
Aceast instrument de reprezentare i manipulare a termenilor nuanai senumete logica
fuzzy.
Logica tradiional consider c un obiect poate aparine sau nu unei mulimi. Logica
fuzzy permite o interpretare mai flexibil a noiunii de apartenen. Astfel, mai multe obiecte
pot aparine unei mulimi n grade diferite. De exemplu, dac avem n vedere mulimea
oamenilor tineri. Un copil de 10 ani e cu siguran tnr, n timp ce o persoan de 60 de ani cu
siguran nu. Dar un om de 30 de ani? Sau de 40? n acest caz, putem afirma c persoana de
30 de ani aparine mulimii respective ntr-o msur mai mare dect cea de 40.
Fie X universul discursului, cu elemente notate x. O mulime fuzzy A a universului de
discurs X este caracterizat de o funcie de apartenen

(x) care asociaz fiecrui element x

un grad de apartenen la mulimea A:


(x) : X -> [0,1]
Pentru a reprezenta o mulime fuzzy, trebuie s-i definim mai nti funcia de
apartenen. n acest caz, o mulime fuzzy A este complet definit de mulimea tuplelor:
A= {(x,

(x)) | x X}

Dac X este o mulime finit X = {x1, ... , xn}, atunci se folosete de multe ori notaia:
A=

+...+

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)

3.Algoritmi bazati pe tehnici de inteligenta


artificiala
Inteligena artificial (IA) este un domeniu important din punct de vedere economic,
prin capacitatea sa de a aborda noi clase de probleme, diferite de cele tratate de informatica
clasic, cum ar fi: percepia, luarea de decizii, planificarea, diagnoza, interpretarea semnalelor,
nelegerea limbajului natural, concepia .
Inteligena artificial (IA) este traducerea din limba englez a sintagmei
Artificial Intelligence i se refer la un domeniu de cercetare, n general n cadrul informaticii,
tehnologiei informaiei sau tiinei calculatoarelor, care se ocup cu studiul i proiectarea
agenilor inteligeni, unde prin agent intelligent se nelege un sistem astfel conceput, nct
s-i perceap mijloacele i s acioneze n aa mod, nct s-i optimizeze ansele de succes.
n vorbirea curent IA este un produs rezultat n urma desfurrii acestei activiti. Nu exist
ns o definiie standard a ce nseamn exact IA, fiecare autor avnd o percepie proprie
asupra definiiei. IA se poate descrie, ca fiind capabilitatea mainilor sau programelor s
mimeze procesele de gndire umane, cum ar fi cugetarea sau nvarea. Mai mult, obiectul IA
se poate defini ca fiind studiul de a face calculatoarele s realizeze lucruri pentru care omul
are nevoie de inteligen pentru a le realiza. Aceast definiie extins nu doar include prima
definiie, dar acoper i tehnologiile pe care le utilizeaz calculatoarele pentru a dobndi
sarcini inteligente, chiar dac acestea nu simuleaz n mod necesar procesele de gndire
umane. O trstur des ntlnit a IA este c sistemul respectiv este capabil s nvee, cu
scopul de a se mbunti permanent i fr ajutoare externe.
O alt definiie a IA ar putea fi: capacitatea sistemelor tehnice evoluate
de a obine performane cvasiumane. Definiia cea mai acceptat a IA a fost dat de John
McCarthy n 1955: o main care se comport ntr-un mod care ar putea fi considerat
inteligent, dac ar fi vorba de un om.
Reelele neuronale artificiale(RNA) sunt sisteme de procesare a informaiei, compuse
din unitai simple de procesare, interconectate intre ele i care acioneaza in paralel. Aceste
6

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
elemente sunt inspirate din sistemele nervoase biologice. La fel ca n natur, funcia reelei e
determinat de legturile dintre elemente.
Ponderile legturilor dintre uniti sunt cele care memoreaz informaia invaat de
reea . Reeaua se instruiete prin ajustarea acestor ponderi , conform unui algoritm .
Caracteristicile RNA :
- reprezentarea distribuit a informaiei : informaia din retea este stocat n mod
distribuit ( n structur de ponderi ), ceea ce face ca efectul unei anumite intrri asupra ieirii
s depind de toate ponderile din reea .
- capacitatea de generalizare in cazul unor situaii neconinute n datele de instruire .
Aceast caracteristic depinde de numarul de ponderi, adic de dimensiunea reelei . Se
constat c creterea dimensiunii reelei duce la o bun memorare a datelor de instruire , dar
scad performanele asupra datelor de testare , ceea ce nseamna ca RNA a pierdut capacitatea
de generalizare . Stabilirea numrului optim de neuroni din stratul ascuns , care este o etap
cheie n proiectarea unei RNA , se poate face alegnd valoarea de la care ncepe s
descreasc performana RNA pe setul de testare.
- tolerana la zgomot : RNA pot fi instruite , chiar dac datele sunt afectate de
zgomot, diminundu-se evident performana ei .
- rezistena la distrugerea pariala : datorit reprezentrii distribuite a informaiei ,
RNA poate opera i n cazul distrugerii unei mici pari a ei .
- rapiditate n calcul : RNA consum mult timp pentru instruire , dar odat antrenate
vor calcula rapid ieirea reelei pentru o anumit intrare .
Un algoritm bazat pe tehnici de inteligen artificial o s funcionze pe anumite
criterii,fiind bine instruit dinainte s redea ntocmai datele necesare pentru stabilirea
pronosticului, nsa n cazul n care o sa greseasc, algoritmul este capabil s nvee din aceste
greeli fiind n stare ca la o eventual ntlnire cu o situaie asemntoare s o rezolve.
Puncte tari ale algoritmilor bazai pe tehnici de inteligen artificial:

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)

n principiu un algoritm bazat pe tehnici de inteligen artificiala este foarte


benefic de utilizat mai ales datorit eficienei lui i a rezultatelor bune opinute
mai ales n cadrul firmelor.

Alte beneficii le reprezint claritatea, modularitatea i prezena structurilor


care uureaza cu mult munca celor care l folosesc.

Puncte slabe ale algoritmilor bazai pe tehnici de inteligen artificial:

n ciuda faptului ca are destule puncte tari are i puncte slabe cum ar fi:
rigiditatea, uneori complexitatea prea ridicata pentru anumiti utilizatori ceea ce
va duce la erori i procesarea impreciziei.

Ca exemple de algoritmi care se bazeaz pe tehnici de inteligen artificial putem s


considerm algortmii genetici si algoritmii evolutivi.
Algoritmul genetic standard este in esen un algoritm decutare i optimizare in
spaiul soluiilor posibile. O populaie de soluii posibile este generat, ulterior, asupra
indivizilor acesteia aplicandu-se operatori specifici inspirai de incruciarea, mutaia iselecia
natural. Noua generaie este alctuit din descendenii populaiei vechi, acetia din urm
fiind noi soluii posibile prin care se exploreaz spaiul de cutare.De-a lungul evoluiei se
inregistreazo cretere a performanelor indivizilor populaiei curente, fapt care asigur
convergena algoritmului inspre soluiile reale ale problemei considerate.
Descriere general:
Iniializare: t=0;
alege aleator N puncte din spaiul de cutare, reprezentnd populaia iniial P(t);
Repet atta timp ct t < Nr.generaii
Pas 1: evalueaz P(t);
Pas 2: selecie-selecteaz indivizii pentru reproducere din P(t);
Pas 3: recombinare(incrucisare)-obine copiii folosind prinii selectai la pasul 2;
8

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
Pas 4: mutaie- aplic mici variaii copiilor obinui la pasul 3;
Pas 5: evalueaz copiii rezultai la pasul 4;
Pas 6: inserare-creaz P(t+1), selectnd convenabil N indivizi dintre copiii obinui la
pasul 5 i indivizii coninuti n P(t);
Pas 7: t=t+1;
Sfrit bucl;
Afieaz cel mai bun individ din populaie;
Sfarit algoritm.
Proprieti ale algoritmilor genetici:
Algoritmii genetici analizeaza n paralel o mulime o mulime (populaie) de puncte;
Algoritmii genetici utilizeaz reguli stochastice de tranzitie;
Algoritmii genetici se bazeaz doar pe cunoaterea volorilor funciei obiectiv;
Algoritmii genetici opereaz, de regul, pe o codificare a setului de parametri;
Avantaje:

Avantajul deosebit este acela c algoritmii genetici solicit doar valorile


funciei obiectiv.Ei se ncadreaz n categoria metodelor slabe de
cutare/optimizare, adic a acelor metode care solicita puine cunotine despre
problema de rezolvat.

Algoritmii genetici sunt robuti graie nr. Mare de puncte pe care le


consider la fiecare etap.

Sunt metode eficiente de optimizare.

Sunt uor de implementat, au un grad mare de universalitate i sunt usor de


reconfigurat,dac formularea problemei se modific.

Pot fi uor paralelizai.

Dezavantaje:

Sunt mari consumatori de timp.

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)

Performanele lor sunt dependente de modul n care sunt setai parametrii


acestora: probabilitatea de aciune a operatorilor genetici, dimensiunea
populaiei, etc.

Performanele sunt de asemenea dependente i de calitatea generatorului de


numere aleatoare.

Algoritmul evolutiv reprezint o tehnic de nvare inductiv, bazat pe observaii,


nesupervizat.
Exemplele i contraexemplele nu sunt prezentate de un supervizor, ci sintemul are
capacitatea de a i le genera singur. Crearea noilor exemple se bazeaza pe un mecanism
inductiv ce ia n consideraie setul de cunotine deja dobandit. Dac exemplul creat este bun,
el este pstrat n baza de cunotine( populaie), iar dac este ru, atunci este eliminat n tmpul
procesului de selecie.
Algoritmii evolutivi folosesc o reprezentare subsimbolic a cunotinelor . Acestea
sunt codate prin genotipul indivizilor coninui n populaie.

4.Algoritmizare i implementare
Algoritmizarea este metoda care creeaz condiii necesare pentru sesizarea,
descoperirea i asimilarea diverilor algoritmi ce pot fi apoi folosii n rezolvarea sarcinilor
nvrii. Algoritmul reprezint un ansamblu de reguli i operatori pentru efectuarea unui
sistem de operaii ntr-o ordine dat, n vederea rezolvrii unor probleme de un anumit tip, un
numr de indicaii precise de care trebuie s inem seama i care se desfoar ntr-o ordine
strict stabilit n rezolvarea unor probleme de un anumit tip, un numr de indicaii precise de
care trebuie s inem seama. El este alctuit pe baza unor nlnuiri de raionamente i
exprim n mod sintetic structura logic intern a rezolvrii problemei respective.
10

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
n esen, algoritmul este o construcie contient care anticipeaz un program de
aciune viitoare i se caracterizeaz prin: precizie (toate operaiile succesive de efectuat
sunt descrise), msur (finitudine, un ansamblu de operaii sau de pai teoretic finit),
generalitate (permite rezolvarea unei anumite clase de probleme sau a oricrei probleme
din clasa respectiv), rezolubilitate (chiar fr cunotine speciale, toate persoanele care
aplic corect acelai algoritm trebuie s ajung n mod corect la rezolvare, la aceeai (soluie).
Conform DEX 1998, implementarea reprezint aciunea de a pune ceva n practic,
de a pune n funcionare, de a aplica, de a integra, de a ndeplini i de a realiza.
Implementarea unui algoritm include instruciuni pentru una sau mai multe combinaii
de iniializare, respectiv gestionare a rezultatelor.

La implementarea unui algoritm se procedeaz mai nti la elaborarea unei scheme


logice. Cu acest prilej, se analizeaz gradul de nelegere a problemei. Testul de birou folosind
date de control are menirea de a da un plus de siguran soluionrii problemei prin metoda
folosit. Pentru implementarea algoritmului sunt alese niveluri de detaliere. Este important ca
indiferent de procedeul definit i utilizat, programul sa-i ating obiectivul pentru care a fost
elaborat.
Implementarea algoritmilor necesit efectuarea de calcule privind necesarul de
memorie pentru a stoca rezultatele intermediare i finale, precum i datele iniiale n timpul
prelucrrii. Sunt preferai algoritmii care nu necesit zone importante de memorie pentru
rezultate intermediare.

5. Algoritm de posibilitate vs algortim fuzzy


Pentru a nelege diferena dintre logica fuzzy i teoria probabilitii, putem sa luam
exemplul: un lot de 100 de sticle de ap, conine 5 sticle de otrav.
11

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
Conform teoriei probabilitii, spunem c probabilitatea de a lua o
sticl de ap potabil este de 0,95. Cu toate acestea, o dat luat sticla, ori este
de baut, ori nu: probabilitatea este 0 sau 1.
Dac ne gndim n schimb la logica fuzzy, lund o sticl b care conine
un amestec de ap i de otrav, 95% ap, atunci vom avea

(b)=0,95.

Valorile fuzzy, pot varia de la 0 la 1 (ca probabilitate), i n afar de aceasta, volorile


fuzzy descriu evenimentele care apar ntr-o anumit msur, i nu se aplic
evenimentelor aleatoare bivalente (care apar sau nu, fr valori intermediare).
Relaia dintre logica fuzzy i teoria probabilitii este extrem de controversat i de-a
lungul timpului a dat natere la polemici aspre i de multe ori deloc
constructive ntre adepii celor dou orientri.De-a lungul timpului s-a ajuns la concluzia ca
logica fuzzy include teoria probabilitii, cu toatea astea ns teoria probabilitii, n diferitele
sale formule (bazate dup caz, pe axiomele lui Kolmogorov, pe observaii
privind frecvena relativ de apariie a unor
evenimente, sau pe concepia subiectivist Bayesian) este nc ferm nrdcinat i se poate
spune ca se detaeaz de orice incadrare.
De asemnea putem privi o camparaie intre algoritmii de posibilitate si algoritmii
fuzzy, ca de exemplu:

Durata de realizare depinde de fiecare algoritm n parte.

Claritatea ambilor algoritmi este aproximativ aceeai din punct de vedere al


rezolvrii.
Complexitatea algoritmilor fuzzy este mai ridicata ceea ce poate duce mai

frecvent la erori.

Din punctul de vedere al corectrii erorilor, algoritmul fuzzy reuete cu


succes s realizeze corectura, acesta fiind i punctul lui forte.

Concluzie: n concluzie putem spune c fiecare altgoritm are punctele lui tari i
punctele lui forte, fiecare avnd avantaje i dezavantaje. Cei doi altgoritmi sunt foarte
versatili i pot fi aplicai n foarte multe situaii, nsa difera eficiena cu care ei lucreaza.
12

Analiza comparativ a algoritmilor de posibilitate (logica


posibilitii, LP) vs algoritmi bazai pe tehnici de
inteligen artificial (TIA)
De aceea , ca programator trebuie s nelegem procedeul, s ne adaptm fiecarei situaii
ca s putem fi n stare s alegem ceea ce este mai folositor pentru obinerea unui rezultat
satisfctor.

Bibliografie:
1. Ioan Dziac - Inteligena artificial, Ed. Universitii Aurel Vlaicu Arad, 2008.
2. Didier Dubois, Jerome Lang, Henri Prade - Possibilistic logic.
3.Wiley Interscience Practical Genetic Algorithms, 2004.
4. Revista Ginfo.
5.Corina Rotar Metode naturale si Algoritmi Evolutivi
6. Andries P. Engelbrecht Computational Intelligence
7. Wikipedia.it

13

Anda mungkin juga menyukai