Sunteți pe pagina 1din 74

1.

SISTEME EXPERT
1.1. Introducere

Sistemele expert (SE) constituie o clas particular de sisteme informatice bazate pe inteligena artificial, avnd drept scop reproducerea cu ajutorul calculatorului a cunotinelor i raionamentelor experilor umani dintr-un domeniu bine definit. Deci, SE ncearc s imite, n principal, raionamentul expertului uman prin raionamente artificiale. In plus, trebuie precizat faptul c dup preluarea cunotinelor expertului uman, SE le multiplic i justific experiena acestuia. innd cont de faptul c un expert uman ntr-un domeniu se formeaz foarte greu i necesit, pe lng pregtirea i experiena personal, i caliti native, se dovedete necesar multiplicarea acestora prin intermediul sistemelor expert. Un expert uman recunoate, definete i rezolv probleme din domeniul su de expertiz, avnd o capacitate crescut de a se orienta i a aborda aspecte, precum: complexitatea, incertitudinea, inconsistena, confuzia i aprecierile vagi. Pornind de aici, expertul uman trebuie s aduc problema n stadiul n care lucrurile sunt ct mai simple, complete, precise, consistente i clare: adic s treac problema din sfera expertizei n sfera cunotinelor comune de specialitate. In acest stadiu, rezolvarea problemei poate fi susinut eventual de prelucrri algoritmice. Pe parcursul timpului se remarc numeroase ncercri de a defini un sistem expert. n continuare se vor prezenta cteva dintre cele mai reprezentative definiii. E.A. Feigenbaum definete sistemele expert astfel: programe concepute pentru a raiona n mod abil n domeniile n care exist o expertiz uman considerabil. 1

Partea 1

H. Farreny d ns o alt definiie, mai funcional: sistemele expert sunt produse software, dar pot fi tot att de bine i echipamente, destinate s nlocuiasc sau s asiste omul n domeniile unde este recunoscut o expertiz uman insuficient structurat pentru a constitui o metod de lucru precis, sigur, complet, direct transpus pe calculator i supus revizuirilor sau completrilor n urma experienei acumulate. Alte concepii arat c sistemele expert sunt programe care posed o mare cantitate de cunotine ntr-un domeniu specializat, provenite de la experii umani, fiind capabile s ating performanele expertului n domeniu. Utilizarea sistemelor expert se bazeaz pe premiza c orice problem poate fi rezolvat printr-o succesiune de raionamente care pot fi descompuse n reguli logice. Incercnd s imite expertul uman, sistemul expert se caracterizeaz prin: cunotinele sunt independente de mecanismul de raionament - nu depind unele de altele, iar modificarea unui element nu influeneaz raionamentul; spre deosebire de programarea clasic, unde trebuie s se descrie explicit toate prelucrrile ntr-o manier static, SE se caracterizeaz printr-o abordare declarativ n care se specific cunotinele (independente unele de altele) care vor fi exploatate n mod dinamic de mecanismul de raionament; SE trebuie s fie capabil s explice raionamentele fcute i s argumenteze soluiile obinute, ntr-o manier asemntoare expertului uman, permindu-se astfel utilizatorului s studieze rezultatul i, eventual, s-l controleze; cunotinele manipulate de SE sunt n principal de natur simbolic, spre deosebire de programele clasice care utilizeaz preponderent date numerice; SE trebuie s fie capabil s gestioneze baze de cunotine de volum mare i s trateze cunotine inexacte i incomplete; SE utilizeaz metode empirice, bazate pe experien, care conduc la soluiile cele mai bune; SE este specializat ntr-un anumit domeniu i nu n rezolvarea unei singure probleme, ca programele clasice. In plus, un SE trebuie s ndeplineasc urmtoarele cerine: nalt performan - sistemul trebuie s fie la un nivel competitiv egal sau mai bun dect un expert n domeniu; rspuns n timp adecvat - sistemul trebuie s ia o decizie ntr-un timp rezonabil, comparabil sau mai bun dect timpul necesar expertului uman pentru luarea deciziei. In cazul unui SE n timp real, restriciile asupra timpului de rspuns sunt foarte severe, deoarece rspunsul trebuie stabilit ntr-un interval precis de timp; sigurana - SE trebuie s fie sigur, s nu determine erori n funcionare; flexibilitate - deoarece SE poate deine o cantitate mare de cunotine, este important ca SE s implementeze un mecanism eficient pentru adugarea, modificarea i 2

Sisteme expert

tergerea cunotinelor. Aceste prelucrri nu necesit rescrierea sau actualizarea programelor care alctuiesc sistemul. n unele lucrri pentru un sistem expert se mai folosete noiunea de sistem bazat pe cunotine. Totui trebuie s se fac o distincie ntre aceste dou tipuri de sisteme. Astfel, sistemele bazate pe cunotine realizeaz o sarcin prin aplicarea unor reguli asupra reprezentrii simbolice a cunotinelor, fr a mai utiliza i ali algoritmi sau a realiza alte prelucrri algoritmice. Astfel de sisteme sunt mai generale dect sistemele expert. n plus, se poate ca ele s nu conin nici o expertiz, putnd rezolva eficient o sarcin fr a fi necesar nici un expert. Trebuie remarcat i faptul c sistemele bazate pe cunotine utilizeaz metode independente de domeniu. Spre deosebire de sistemele expert, sistemele bazate pe cunotine sunt mai simplu i mai ieftin de construit, utilizat i ntreinut. ntr-o definiie tradiional, un program este reprezentat sub forma urmtoarei ecuaii: program = algoritm + structuri de date n cazul unui sistem expert, definiia se modific astfel: sistem expert = cunotine + motor de inferen n continuare (tabelul 1-1) pot fi urmrite o serie de deosebiri ntre sistemele expert i programele clasice (convenionale): tabelul 1-1. Deosebiri ntre sistemele expert i programele clasice Sistem expert simuleaz raionament uman asupra domeniului unei probleme realizeaz raionamente asupra reprezentrii cunotinelor umane, calcule numerice i prelucrri de date (informaii simbolice) se caracterizeaz printr-o abordare declarativ, n care se specific doar cunotinele (independente unele de altele), care vor fi exploatate n mod dinamic de mecanismul de raionament rezolv probleme utiliznd metode euristice sau aproximative care nu garanteaz succesul cerinele pot fi vagi ofer rspunsuri aproximative controlul i datele sunt separate (baza de Programe clasice simuleaz nsui domeniul problemei realizeaz calcule numerice i prelucrri de date (prelucreaz informaii numerice) toate prelucrrile sunt descrise explicit ntr-o manier static

ofer soluii algoritmice cerinele sunt foarte bine definite rspunsurile oferite sunt exacte controlul i datele sunt implicit integrate 3

Partea 1

cunotine este clar separat de) ntr-un program secvenial rezolvarea este controlat de motorul de rezolvarea problemei este controlat de inferen ordinea instruciunilor controlul este slab puternic soluia este dat de reguli i inferen soluia se obine ca urmare a aplicrii unor algoritmi cutarea soluiei se realizeaz ntr-un domeniu cutarea soluiei este simpl sau chiar nu larg se realizeaz nici o cutare intrarea poate fi incomplet sau incorect intrarea este presupus corect nu necesit toate faptele iniiale, putndu-se necesit toate datele de intrare, putnd obine concluzii rezonabile chiar n absena chiar s nu funcioneze corespunztor fr unor fapte anumite date pot fi tratate intrri neateptate intrrile neateptate sunt foarte dificil de tratat ieirea poate s varieze, putndu-se obine ieirea este totdeauna corect (se spune c ci doar rspunsuri greite programele nu greesc, programatorii fac greeli) n marea majoritate a cazurilor pot fi obinute n general, nu se ofer explicaii asupra explicaii modului n care s-a ajuns la o concluzie sau asupra motivelor care au determinat cererea de introducere a unor date execuia are loc conform regulilor execuia este, n general, secvenial corespunztoare, care sunt executate dac condiia de aplicabilitate este ndeplinit proiectarea programului este nestructurat proiectarea programului este structurat este acceptat realizarea modificrilor realizarea modificrilor este dificil extinderea sistemului este incremental extinderea programului se realizeaz n salturi sistemul poate opera doar cu cteva reguli poate rula doar cnd este terminat lucreaz pe staii de lucru i calculatoare programele tradiionale pot lucra pe toate compatibile PC tipurile de calculatoare pot prelucra mari baze de cunotine pot prelucra mari baze de date Alte deosebiri dintre sistemele tradiionale i sistemele expert pot fi urmrite din schema ciclurilor de via ale celor dou tipuri de sisteme.

Sisteme expert

Ciclul de via al unui sistem conveniomal Recunoaterea problemei i studiu de fezabilitate

Ciclul de via al unui sistem expert Identificarea problemei Analiza primar i achiziia cunotinelor

Cerine utilizator Cerine software Proiectare software

Selecia instrumentelor sistemului expert

Reprezentare Proiectare detaliat Scrierea codului Testare Integrare Implementare Operare i ntreinere Verificare i validare Implementare Operare i ntreinere Achiziia cunotinelor Dezvoltare prototip

figura 1-1. Ciclurile de via ale sistemelor convenionale i expert Trebuie s se remarce faptul c sistemele expert i programele convenionale au i asemnri, dintre care se poate aminti faptul c scopul comun este producerea unui soft de calitate. n plus, o parte din modulele soft din cadrul unui sistem expert (cum ar fi, interfaa utilizator i motorul de inferen) constituie software convenional. Se poate realiza, de asemenea, o comparaie ntre sistemele expert i alte programe de inteligen artificial.

Partea 1

Sisteme expert Alte programe de IA - trateaz probleme care necesit expertiz - se ocup de probleme matematice abstracte uman sau versiuni simplificate ale unor probleme reale - trebuie s dea rspunsul ntr-un timp ct mai - majoritatea programelor de IA nu dau scurt rspunsul foarte rapid - trebuie s fie capabile s explice i s - nu trebuie s ofere explicaii, de obicei, justifice soluiile utilizatorii acestor programe sunt chiar cei care le-au dezvoltat

1.2.

Scurt istoric

Se poate spune ca domeniul sistemelor expert s-a dezvoltat odat cu cel al inteligenei artificiale (IA) i poate fi privit ca o ramur a IA. Iniial au fost o serie de ncercri pentru a realiza calculatoare inteligente, ntr-un mod general. GPS (General Problem Solver) din anii 1960 (autori Newell i Simon) a fost o astfel de ncercare, fiind considerat predecesorul sistemelor expert. Dei nu a avut mare succes, este considerat un bun nceput. La mijlocul anilor 70 au fost dezvoltate cteva sisteme expert de timp real, principala lor contribuie fiind recunoaterea rolului central al cunoaterii. Aceast perioad este strns legat de dezvoltarea teoriei referitoare la reprezentarea cunoaterii, procedurile de asistare a deciziei i inferen. In ciuda acestor evoluii, sistemele expert construite au avut un succes limitat, datorat, n principal, diversitii i caracterului vast al cunoaterii, precum i faptului c eforturile de rezolvare a problemelor bazate pe cunotine erau premature. Totui, unele tipuri de reprezentare a cunoaterii au fost funcionale i s-a remarcat c puterea unui sistem expert deriv din cunoaterea specific de care acesta dispune i nu de formalismul particular i schemele de inferen pe care acesta le exploateaz. Cercettorii i-au dat repede seama c pentru a progresa trebuie s se concentreze pe aplicaii specifice unor domenii i astfel au nceput s apar sistemele expert dedicate unor anumite domenii. Primele sisteme expert dezvoltate au fost n chimie i medicin: DENDRAL (1967) n domeniul chimiei; MYCIN (1976) n medicin, pentru diagnosticarea infeciilor bacteriene ale sngelui; PROSPECTOR (1979) n domeniul prospeciunilor geologice. Totui, cercettorii i-au dat seama c un mecanism de rezolvare a problemelor este doar o mic parte a unui sistem complet inteligent. Dintre concluziile lor se desprind acela cum ar fi: GPS-urile nu pot fi utilizate n construcia unor sisteme expert de nalt performan; 6

Sisteme expert

rezolvarea pe cale uman a problemelor este adecvat doar dac se opereaz ntr-un domeniu limitat; sistemele expert pot fi reactualizate constant cu noi informaii; complexitatea problemelor necesit un volum considerabil de cunotine despre domeniul din care problemele provin;

La nceputul anilor 80 tehnologia sistemelor expert s-a orientat ctre sectorul comercial, dintre sistemele expert construite putndu-se enumera XCON, XSLE, CATS-1. De asemenea, au aprut nite medii de dezvoltare a sistemelor expert, cum ar fi EMYCIN, EXPERT, META-DENDRAL i EURISKO. Aproximativ 1/3 din sistemele construite n perioada menionat i-au dovedit performanele i, consider unii autori, se afl nc n exploatare. Ultima perioad a secolului trecut se caracterizeaz de apariia unor medii de dezvoltare care permit construirea rapid i cu costuri sczute a sistemelor expert, de diseminarea sistemelor expert n diverse medii, integrarea extensiv a sistemelor expert cu alte tehnologii, precum i utilizarea tehnologiei sistemelor expert n construcia rapid a sistemelor inteligente. Nu trebuie omise nici tendinele actuale ale domeniului sistemelor expert, putndu-se meniona: se remarc creterea utilizrii sistemelor expert n ndeplinirea mai multor sarcini; utilizarea tehnologiei sistemelor expert pentru a fundamenta construcia sistemelor inteligente; abordarea programrii orientate pe obiecte n reprezentarea cunotinelor; dezvoltarea unor sisteme complexe cu surse de cunotine multiple, cu moduri de raionament multiple i care pot prelucra i informaia de tip fuzzy; utilizarea mai multor baze de cunotine; mbuntiri ale achiziiei cunoaterii; utilizarea sistemelor expert n Internet, ceea ce conduce la creterea numrul de utilizatori. n tabelul 1-2 se prezint piaa sistemelor expert n diferite ri [AIRINE, 97].

Partea 1

tabelul 1-2. Piaa sistemelor expert n diferite ri (n mld franci)


ara 1986 1987 1988 1989 1990 1991 1992 1993 1994 1994

SUA JAPONIA GERMANIA ANGLIA FRANA ALTE RI TOTAL

0.8 0.3 0.3 0.3 0.3 0.2 2.2

1.4 0.4 0.4 0.4 0.3 0.3 3.2

2.0 0.6 0.5 0.5 0.4 0.4 4.4

2.9 0.8 0.6 0.6 0.5 0.6 6.0

3.7 1.2 0.7 0.7 0.6 0.8 7.7

4.7 1.7 0.9 0.9 0.7 1.3 10.2

5.7 2.4 1.3 1.3 0.9 1.8 13.4

6.8 3.0 1.8 1.8 1.3 2.4 17.1

7.9 3.8 2.2 2.2 1.8 3.2 21.1

9.0 5.0 3.2 2.2 2.2 4.0 25.6

In decursul timpului au fost construite sute de SE i innd cont de aplicaiile acestora, se poate realiza urmtoarea clasificare a aplicaiilor SE [GIARIL, 89], [HARMAU, 88], [POPA, 98]: 1. Sisteme expert de interpretare, care permit identificarea strilor din domeniul investigat, ca urmare a prelucrrii informaiilor i cunotinelor obinute. 2. Sisteme expert de diagnoz, care au ca scop determinarea strii de funcionare a unui sistem. 3. Sisteme expert de predicie, care se ocup cu prognoza evoluiei sistemului pe baza strii prezente i a legilor de evoluie, avnd ca scop definirea comportrii viitoare a sistemelor pentru prentmpinarea eventualelor efecte nedorite sau luarea msurilor adecvate pentru optimizarea funcionrii. 4. Sisteme expert pentru proiectarea sistemelor complexe supuse restriciilor, care nu se pot rezolva cu soluii convenionale. Dup identificarea problemelor, se apeleaz la proiectarea asistat de calculator, n care sistemul expert are un rol esenial n soluionarea problemelor. 5. Sisteme expert pentru planificare, care permit programarea activitilor cu scopul minimizrii de resurse n condiiile restrictive impuse de mediu, care nu pot fi satisfcute prin metode clasice. 6. Sisteme expert pentru monitorizare, care urmresc compararea datelor observate cu datele dorite, semnalnd abaterile care depesc limitele stabilite. Prin monitorizare se urmrete asigurarea regimului optim de funcionare. 7. Sistemele expert de depanare vor urmri funcionarea sistemelor, vor specifica prevederi i le vor aplica la repararea din mers a unor componente. 8. Sisteme expert de nvare, care vor fi utilizate pentru instruirea personalului, respectiv pentru elaborarea unor produse program specializate n rezolvarea unor probleme noi. 9. Sisteme expert de control, prin care se stabilete modul de comportament al sistemelor.

Sisteme expert

1.3.

Oportunitatea realizrii i utilizrii unui SE

Utilizarea sistemelor expert se bazeaz pe premiza c orice problem poate fi rezolvat printr-o succesiune de raionamente care pot fi descompuse n reguli logice. Un asemenea sistem devine capabil s colecteze i s stocheze experiena acumulat de persoanele cu calificare superioar i experien vast i s o aplice n rezolvarea unor probleme n diferite situaii. n continuare vor fi prezentate, pe scurt, cteva argumente pentru realizarea i utilizarea unui SE, cu indicarea domeniilor n care se recomand acest lucru [AIRINE, 97]. Sistemul expert poate ajuta expertul uman, prelund unele aspecte ale muncii sale, determinnd astfel sporirea productivitii expertului. Oportunitatea unui sistem expert apare i n activitile n care experii umani sunt foarte puini, suprancrcai de lucrri, indispensabili cnd este nevoie de ei sau sunt foarte scumpi. n plus, oportunitatea sistemului expert este clar dac tipul de activitate n care se aplic face apel la raionamente pentru: diagnosticarea cauzelor unor evenimente; planificarea derulrii unei aciuni; previziuni multicriteriale; nelegerea evenimentelor care au avut loc pentru ale interpreta, controla sau a le nsui; evaluarea unui diagnostic, evaluarea previziunilor, a evenimentelor, a aciunilor etc.; dominarea evenimentelor (de exemplu, n activiti de control, n activiti manageriale etc.). n toate cazurile ns, condiia esenial de utilizare a unui SE presupune ca posibilitile de raionament din domeniu s fie identificate i s poat fi exprimate, respectiv achiziionate. n caz contrar este imposibil elaborarea bazei de reguli.

Concepte de baz nainte de a trece la prezentarea elementelor componente ale unui sistem expert, vor fi explicate cteva concepte de baz utilizate: - expertiza este o aciune specific cunotinelor obinute din nvare, materiale citite i experien. Cunotinele permit experilor ca n rezolvarea unor probleme complexe s ia decizii mai bune, ntr-un timp mai scurt dect non-experii. Ca exemple de expertize: reguli i proceduri referitoare la un domeniu general de probleme, reguli (euristic) care indic ce trebuie fcut ntr-o situaie specific, strategii globale pentru rezolvarea unor probleme specifice, meta-cunotine (cunotine despre cunotine);

Partea 1

experi un expert este un individ sau un grup de indivizi care pot realiza expertize de diferite nivele. n multe domenii, raportul de non-experi-experi este de 100 la 1, fiind deci evident avantajul oferirii accesului la expertiz pentru nonexperi, achiziia de cunotine reprezint procesul de preluare a cunotinelor de la expert ntr-un mod care permite traducerea cunotinelor ntr-o reprezentare ce poate fi utilizat ntr-un sistem expert. inferena reprezentarea cunotinelor explicare

Reguli reprezint piese de cunoatere. Multe SE utilizeaz reguli de forma IF-THEN (dac atunci). Se pot ntlni i reguli care au o component ELSE (altfel), fiind deci de forma IFTHEN-ELSE, dar cele mai frecvente sunt cele de forma IF-THEN. n viaa de zi cu zi regulile sunt utilizte frecvent, reprezentnd o modalitate de descriere a lurii unei decizii. De exemplu, DACA plou, ATUNCI ia umbrela. DACA lumina este stins, ATUNCI verific comutatorul. SE sunt proiectate s gseasc o concluzie sau s fac o recomandare. Pentru a executa regulile i a ajunge la o concluzie sunt necesare date. Aceste date provin din datele de intrare specificate de utilizator i din datele pe care sistemul ajunge s le cunoasc din reguli. Concluzie Bineneles c un sistem expert actual nu va putea realiza performanele de inventivitate ale expertului uman i nici nu va putea reaciona la situaii neprevzute aa cum ar putea s o fac un operator bine pregtit. Totui, utilizarea unor astfel de sisteme prezint o serie de avantaje dintre care amintim: - preul de cost al expertizei este mai redus relativ la expertul uman; - rezistena la oboseal (calitatea expertizelor nu este influenat de programul de lucru i de monotonie); - cunoaterea nmagazinat nu se degradeaz n timp (nu exist uitare); - baza de cunotine poate fi dezvoltat continuu utiliznd numai cunotine verificate. - comparativ cu un operator uman, sistemul expert nu va fi afectat nici de monotonia supravegherii unei funcionri normale i stabile a unui proces, dar nici situaiile de criz nu-i vor diminua capacitate de reacie, aa cum s-ar putea ntmpla cu un operator mai puin rezistent la stress.

10

Sisteme expert

1.4.

Elementele componente ale unui SE

Elementul central al prelucrrii inteligente l constituie raionamentul artificial, ca imitare a celui natural, efectuat de creierul uman. In orice domeniu de activitate exist probleme cu un grad ridicat de dificultate, care pot fi rezolvate numai de ctre experi umani, formai ca specialiti n urma unei vaste experiene n domeniul respectiv. Se pot defini sistemele expert ca reprezentnd sisteme de programare bazate pe tehnici de inteligen artificial (IA) [CARRE, 96], care nmagazineaz cunotinele experilor umani dintr-un domeniu bine definit i apoi le folosesc pentru rezolvarea problemelor din acest domeniu. O problem mult discutat n privina utilizrii SE este aceea a raportului ntre relevan i precizie. Un sistem descompus ntr-un numr mic de subsisteme are o relevan mare i o precizie mic, iar cu ct descompunerea avanseaz, relevana scade i precizia crete. Prelucrarea algoritmic se caracterizeaz printr-o precizie mare, iar SE printr-o relevan mare, pe care o preia din practica rezolvrii problemelor, ceea ce face c acesta s fie un mijloc important pentru dominarea complexitii. SE pot oferi soluii mai productive dect programele algoritmice n situaiile n care cerinele informaionale se modific des. Conceptele de baz ale unui sistem expert bazat pe cunotine, sunt reprezentate n figura 1-2, conform [GIARIL, 98]:

Baza de cunotine Utilizator Fapte Expertiz Motor de inferen

figura 1-2. Concepte de baz ale SE Se observ c utilizatorul ofer sistemului expert fapte sau alte informaii i primete ca rspuns expertiza. Elementele principale ale unui SE sunt prezentate n figura 1-3 [TURARO, 00] sau detaliat n figura 1-4, unde: - baza de cunotine conine ansamblul cunotinelor specializate introduse de ctre expertul uman (cunoaterea din domeniul obiect). Este format din baza de fapte i baza de reguli;

11

Partea 1

baza de fapte conine faptele iniiale ce descriu enunul problemei de rezolvat i rezultatele intermediare produse n cursul procedurii de deducie; baza de reguli reproduce raionamentul expertului; motorul (mecanismul) de inferene este componenta de baz a sistemului expert. Motorul de inferene preia cunotinele din baza de cunotine, realizeaz raionamente, indicnd care reguli sunt satisfcute de fapte, care este prioritatea acestor reguli i determin execuia regulii cu prioritatea cea mai mare; modulul explicativ explic utilizatorului motivele raionamentului SE permind trasarea drumului urmat n raionare de SE i generarea justificrilor pentru soluiile obinute;
Baza de reguli Motorul de inferene Baza de fapte

Modulul explicativ

Modulul de achiziii de cunotine

Interfaa utilizator

figura 1-3. Elementele principale ale unui sistem expert


Mediu de consultare
Utilizator Interfa a utilizator Fapte despre un anumit incident -

Mediu de dezvoltare
Baza de cunotine baza de fapte baza de reguli

Modulul explicativ Motor de inferen Achiziia cunotinelor

Inginer de cunotine Cunoa tere documentat Achiziia cunotinelor Rafinarea cunoaterii Cunotinele expertului

Ac iuni recomandate

figura 1-4. Structura detaliat a unui sistem expert 12

Sisteme expert

modulul de achiziie a cunotinelor preia cunotinele specializate furnizate de expertul uman ntr-o form ce nu este specific reprezentrii interne, verific validitatea acestora, genernd n final o baz de cunotine coerent; interfaa utilizator permite comunicarea ntre SE i utilizator.

In continuare va fi descris fiecare component a unui SE: Baza de cunotine conine ansamblul de cunotine specializate ntr-un anumit domeniu, preluate de inginerul de cunotine (specialistul care va face legtura dintre expertul uman i SE) de la expertul uman. Privite n mod general, cunotinele reflect "obiectele" lumii reale i relaiile dintre ele. Procesul de creare a bazei de cunotine, care const n preluarea cunotinelor de la expertul uman, modelarea acestora de ctre inginerul de cunotine n conformitate cu cerinele metodei de reprezentare, introducerea n baza de cunotine i validare, este destul de laborios i necesit o conlucrare permanent ntre inginerul de cunotine i expert. Acest proces presupune foarte multe iteraii i teste n cursul crora nsui expertul uman poate fi pus n dificultate pentru argumentarea unor opiuni. Baza de fapte conine datele unei probleme concrete care urmeaz s fie rezolvat (formularea problemei), precum i faptele rezultate n urma raionamentelor efectuate de motorul de inferene asupra bazei de cunotine. In unele publicaii, baza de fapte este inclus n baza de cunotine. Totui, trebuie fcut distincie ntre cunotine care descriu rezolvarea unei clase de probleme i fapte, care descriu aseriuni de instaniere a unei probleme din clas respectiv. Deoarece regulile sunt activate pe baza faptelor cunoscute, calitatea procesului de raionament este nemijlocit influenat de msura n care sunt disponibile toate faptele relevante. Deci, rezult c una dintre cerinele eseniale la care trebuie s rspund baza de fapte este de a reflecta ct mai fidel realitatea i de a nregistra, cu promptitudine, modificrile intervenite n aceasta. In funcie de domeniul concret n care se utilizeaz i de condiiile de exploatare, faptele pot fi introduse ntr-un SE prin una din urmtoarele ci: prin tastare la terminal, naintea declanrii procesului de raionament; n cursul procesului de raionament, prin chestionarea utilizatorului, caz n care, ntrebrile puse de SE urmeaz fidel traseul din procesul inferenial; prin consultarea unei baze de date proprii sau aparinnd altor aplicaii informatice; prin preluare direct de la diveri senzori. Baza de fapte mai este denumit i memorie de lucru a sistemului. Baza de reguli regulile exprim cunotine generale despre domeniul problemei de rezolvat. Ordinea regulilor din baza de reguli este nesemnificativ. Motorul de inferene este elementul efectiv de prelucrare n SE, care, pornind de la fapte (datele de intrare ale problemei), activeaz cunotinele corespunztoare din baza de 13

Partea 1

cunotine, construind astfel raionamente care conduc la noi fapte (de ieire). Altfel spus, acesta construiete un plan de rezolvare n funcie de specificul problemei, utiliznd cunotinele din domeniul respectiv. n urma aciunii motorului de inferene ntr-un anumit context, baza de fapte se mbogete fie prin adugarea unor elemente noi, fie prin modificarea celor existente. In ultim instan, motorul de inferene este un program care implementeaz algoritmii de raionament deductiv, inductiv i mixt, dar care este independent de baza de cunotine. Astfel, algoritmii de raionament implementai n motorul de inferene sunt n general aceiai, indiferent de SE pe care dorim s-l dezvoltm, dar cu toate acestea, nu se poate construi un mecanism universal de inferene pentru toate domeniile de expertiz. La realizarea motorului de inferene dificultatea const n gsirea celui mai eficient mod de declanare a regulilor. Pentru aceasta ciclul de baz al motorului de inferen parcurge urmtoarele etape mari: selecia n aceast etap are loc selecia unui subansamblu al bazei de fapte i reguli de interes pentru raionament, n scopul economisirii timpului la fazele urmtoare; filtrarea n cadrul acestei etape, numit filtrare (pattern matching), motorul de inferene caut acele fapte care sunt declanabile (sau cele care verific un filtru particular definit n sistem) comparnd premisele fiecrei reguli cu cele din baza de fapte. Regulile vor fi reinute n timpul acestei etape ntr-o list numit ansamblul de conflicte i care va conine acele reguli ce vor putea fi declanate i crora li se va aplica un criteriu de arbitraj pentru a se stabili care sunt regulile ce vor fi aplicate efectiv. In unele sisteme, ansamblul de reguli crora li se aplic filtrarea este redus la un subansamblu de reguli din baza de reguli i doar acestor reguli li se va aplica filtrarea; rezolvarea conflictelor n aceast faz, motorul alege din ansamblul de conflicte regulile ce vor fi efectiv declanate. In numeroase sisteme expert aceast faz se reduce la declanarea tuturor regulilor din ansamblul de conflicte, n ordinea n care ele se prezint. Totui, uneori este esenial detectarea numai a acelor cunotine care sunt importante n controlarea i dirijarea motorului de inferene. De fapt, atunci cnd sunt prea multe reguli declanate sunt deduse prea multe fapte ceea ce va conduce la declanarea a tot mai multe reguli i astfel performanele sistemului se degradeaz rapid. Pentru a se evita acest lucru se poate alege o strategie de control. Exist mai multe astfel de strategii ns cele mai des utilizate se aleg: n funcie de prioritate (este aleas regula cea mai prioritar); n funcie de coeficientul de ncredere (varianta cea mai fiabil). Fiecare sistem are propria sa tehnic de rezolvare a conflictelor aleas n funcie de domeniul pe care l abordeaz sistemul expert. Aceast alegere poate fi fcut n mod inteligent prin utilizarea metaregulilor, cu alte cuvinte reguli ce permit sistemului selecionarea dinamic a regulilor de declanat n funcie de cunotinele ce le deine despre problema tratat;

14

Sisteme expert

execuia n aceast faz, motorul de inferene acioneaz asupra prii aciune a regulilor reinute n faza de rezolvare a conflictelor. In general aceast faz const n adugarea de noi fapte n baza de fapte, dar, pentru unele sisteme, este posibil extragerea faptelor din baza de fapte sau declanarea procedurilor legate de o regul. De exemplu: pentru a da un ordin unui robot, pentru a citi informaii dintr-o baz de date sau pentru a lansa afiarea grafic a rezultatelor. Acest ciclu <filtrare - rezolvarea conflictelor - execuie> este repetat de motorul de inferene ct timp exist reguli declanabile sau condiia de oprire nu este verificat. Cnd nu mai exist reguli declanabile, deci sistemul a dedus tot ce era posibil de dedus, se spune c baza de cunotine este saturat i ciclul se ncheie. Modulul explicativ are rolul de a prezenta ntr-o form larg accesibil (limbaj natural) justificarea raionamentelor efectuate de motorul de inferene i totodat ntrebrile la care trebuie s rspund utilizatorul. De asemenea, acest modul este util i expertului uman pentru verificarea coerenei bazei de cunotine. In plus, acest modul a fost dezvoltat ca o consecin a observrii tendinei utilizatorilor de a folosi sistemul pe care l-au neles cel mai bine. Experiena a dovedit c sistemele a cror funcionare este tinuit, nu inspir nici o ncredere decidenilor i, mai devreme sau mai trziu sunt abandonate. Modulul de achiziie a cunotinelor are rolul de a transforma cunotinele din forma n care le exprim cogniticianul (inginerul de cunotine) n forma intern de memorare pe suport. Totodat, acest modul asigur i interfaa de comunicare cu baza de date sau alte sisteme. Cercetrile n acest domeniu sunt orientate pe dezvoltarea mecanismelor care vor permite achiziia de cunotine n limbaj natural, ceea ce va duce la o dezvoltare rapid a SE. Inginerul de cunotine i aduce o contribuie important n realizarea unui SE i se poate spune c rolul su este similar rolului analistului pentru realizarea unui sistem informatic. Interfaa cu utilizatorul realizeaz dialogul utilizatorului cu SE, n sensul specificrii datelor de intrare i al furnizrii rezultatelor problemei de rezolvat. Cercettorii susin s se acorde o atenie deosebit realizrii acestei interfee, recomandnd s se in cont de modul de procesare al inteligenei umane, care trebuie descompus n raionamente ct mai simple i, n acelai timp, simplu de modelat matematic. n figura 1-5 este prezentat o structur de funcionare a procesorului de informaii uman propus de Cord, Moran i Newell n 1983. Se poate observa c modelul ia n considerare i aspectul cantitativ al volumului de cunotine vehiculate de om n timp. Interfaa ntre utilizator i sistemul expert trebuie s ndeplineasc urmtoarele funcii [GUGA, 98]: - s ofere opiuni prin meniuri; - s utilizeze un limbaj adecvat utilizatorului prin ntrebri, comenzi i comentarii; - s poat afia rapid grafice, animaie etc.; 15

Partea 1

s permit intervenia rapid i facil a utilizatorului n orice etap; limbajul de comunicare s fie ct mai apropiat de cel uman; s in cont de erorile umane, s previn i s afieze ct mai multe mesaje de eroare; formatarea ecranului s fie ct mai convenabil utilizatorului.

Memoria pe termen lung - durata de via infinit - capacitate infinit - reprezentare semantic Memorie pe termen scurt - durata de via cca. 7 secunde - capacitate 3-4 subiecte - reprezentare acustic sau vizual Percepie vizual Durata 200 ms Capacitate 17 caractere Reprezentare psihic Percepie auditiv Durata 1500 ms Capacitate 5 caractere Reprezentare psihic

PROCES DE CUNOATERE ciclu 70 ms

PROCES MOTOR ciclu 70 ms

PROCESUL PERCEPTIV ciclu 100 ms figura 1-5. Modelul procesorului uman Arhitectura unui sistemului expert ideal este, ns, mult mai complex (vezi figura 1-6) [AIRINE, 97].

1.5.

Reprezentarea cunoaterii

Pentru un SE, reprezentarea cunotinelor experilor n domeniul de expertiz considerat, are o importan deosebit, deoarece un SE va fi conceput pentru un anumit tip de reprezentare a cunotinelor i modul n care SE reprezint cunotinele afecteaz dezvoltarea, eficiena, viteza de lucru i mentenana respectivului sistem. Cunotinele pot fi clasificate n: cunotine procedurale; cunotine declarative; cunotine subcontiente - care nu pot fi exprimate prin limbaj (de exemplu, cum tim s micm mna). 16

Sisteme expert

O alt clasificare mparte cunotinele n: cunotine afirmative, care sunt datele primare aflate n baza de fapte; cunotine operatorii - reprezint cunotinele coninute n reguli i ele indic modul n care sunt folosite faptele; strategii (cunotine) de control, care sunt constituite din cunotinele ce se refer la modul de rezolvare a problemei i care indic ordinea n care se aplic regulile. Prelucrarea cunotinelor impune definirea de structuri pentru memorare i prelucrare care s fac posibil efectuarea de raionamente. In consecin, pentru stocarea i utilizarea cunotinelor se folosesc structuri de cunotine, tot aa cum pentru stocarea i prelucrarea datelor se utilizeaz structuri de date.
SISTEM E DE PRELUARE CAPTATORI BAZA DE DATE EXTERNE SOFTWARE DE APLICAII

M ODULE EXPLICATIVE

M ODULE INTERFA

M ODULE DE M BOGIRE A EXPERTIZEI

MOT OR DE INFEREN DEDUCII SIST EME DE DIALOG N LIMBAJ NAT URAL PREVIZIUNE INDUCIE SIMULARE ST RAT EGII DE PRIORIT AT E UT ILIZAT OR BAZA DE CUNOT IINE REGULI DE INFERENE PREVIZIUNI ST RAT EGII FAPT E MODELE ST RUCT URALE MODELE DE COMPORT AMENT

SPA IUL DE LUCRU DESCRIEREA PROBLEMEI ST ADIUL CURENT DE REZOLVARE MODULE DE MBOGIRE A EXPERT IZEI

EXPERT UL UMAN

figura 1-6. Arhitectura unui sistem expert ideal Integrarea cunotinelor ntr-un formalism de reprezentare ridic o serie de probleme specifice. Exist, n primul rnd, mari diferene n privina statutului informaiilor prelucrate (ele pot fi intangibile sau modificabile, certe sau incerte, valide sau perimate, empirice sau 17

Partea 1

teoretice [MINC, 95]), difereniere la care formalismul de reprezentare trebuie s rspund ct mai bine. Cunotinele referitoare la un anumit domeniu sunt, n marea majoritate a cazurilor, incomplete, fie deoarece, fiind implicite pentru expertul uman, sunt omise n reprezentarea pe calculator, fie datorit faptului c sunt dificil de transmis sau de formulat. Aceasta atrage dup sine necesitatea de a gsi modaliti de reprezentare i de raionament n condiii de incertitudine. Cunotinele se schimb o dat cu modificrile survenite n domeniul n care sunt utilizate. Cum multe dintre ele sunt n strns interdependen, schimbrile unor anumite informaii pot antrena, prin efect indirect, actualizarea altor informaii, devenite perimate prin modificarea celor dinti. Aceste schimbri pot fi extrem de diverse, ncepnd cu coninutul i terminnd cu nsui tipul informaiilor. In sfrit, cunotinele exprim, n general, informaii specifice unor clase sau grupuri de "obiecte" materiale sau conceptuale. Dar nu este exclus c n cadrul acestora s existe elemente care fac excepie sau sunt chiar n contradicie cu proprietile clasei din care fac parte. Aceasta impune gsirea unor modaliti adecvate de reprezentare i tratare a excepiilor. Exist numeroase formalisme de reprezentare a cunotinelor, care rspund, mai mult sau mai puin, problemelor specifice enumerate. O parte dintre modalitile de reprezentare a cunotinelor vor fi prezentate n continuare.

1.5.1. Metode de reprezentare a cunoaterii


1.5.1.1. Introducere

Pentru a fi utilizat de un program, cunoaterea este memorat sub forma unor piese de cunoatere care descriu obiectele, faptele, fenomenele, procesele i evenimentele din domeniul de expertiz. De mare importan n realizarea oricrui SE, reprezentarea cunotinelor aduce o contribuie determinant att la nlesnirea realizrii obiectivelor utilitare ale acestor sisteme, ct i la obinerea unor performane mai bune n ceea ce privete resursele de spaiu i timp consumate de ntregul sistem. O problem important care se ridic este definirea unor metode pentru a reprezenta mari cantiti de cunotine ntr-o form care s permit folosirea ei efectiv [BRBUC, 83]. O arhitectur de reprezentare a cunotinelor poate fi considerat ca fiind structurat pe trei nivele: nivelul intern, care este constituit din schema intern ce descrie structura de stocare fizic a cunotinelor n baza de cunotine. Astfel, sunt descrise detaliile complete ale stocrii, precum i modul de acces la cunotine; nivelul conceptual - descrie complet structura ntregii baze de cunotine, ascunznd detaliile legate de stocarea fizic. La acest nivel, descrierea bazei de cunotine se concentreaz asupra descrierii entitilor, tipurilor de date, relaiilor dintre ele, precum i a restriciilor asociate; 18

Sisteme expert

nivelul extern sau nivelul utilizator - include o colecie de scheme externe ce descriu baza de cunotine prin prisma diferiilor utilizatori, fiecare descriind baza de cunotine prin prisma propriilor interese. Unul din conceptele de baz ale reprezentrii cunotinelor este cel de entitate. Se consider entitatea ca reprezentnd un obiect al lumii reale cu o existen independent. Orice entitate are o serie de proprieti numite atribute, care particularizeaz entitatea respectiv. Valorile acestor atribute au ca scop identificarea entitii. Atributele pot fi atribute atomice, care au semnificaie independent i atribute complexe, ce pot fi mprite n atribute atomice. Din punctul de vedere al numrului de valori pe care le poate lua un atribut pentru o entitate particular, atributele pot fi clasificate n: atribute cu o singur valoare i atribute cu mai multe valori. Schema entitii reprezint descrierea atributelor entitii i specific o structur comun fixat a entitilor de acelai tip. Extensia entitii cuprinde setul instanelor entitilor individuale la un anumit moment. Se introduce de asemenea, i noiunea de domeniu, care reprezint setul de valori asociat fiecrui atribut al unei entiti tip. Matematic, atributul A al entitii tip E, poate fi definit ca o funcie A : E P(V) unde P(V) reprezint setul valorilor posibile ale lui V. Valoarea atributului A pentru entitatea e, se va nota ca A(e). Pentru un atribut simplu, A(e) este o valoare cu un singur element. Se consider c un atribut null nu are valoare sau are valoarea null. Pentru un atribut compus A setul de valori este format ca produsul cartezian din P(V1), P(V2), ..., P(Vn), unde V1, V2, ..., Vn reprezint setul valorilor unui simplu component al lui A. Deci, V = P(V1) P(V2) ... P(Vn) Intre entiti se pot stabili o serie de relaii ce pot avea la rndul lor atribute ce le caracterizeaz. Astfel, un atribut va fi specificat ca un atribut relaie, dac valoarea sa este determinat prin combinarea entitilor participante ntr-o relaie instan. Reprezentarea cunotinelor ntr-un SE urmrete descrierea universului n care sistemul efectueaz raionamente, sub forma unor entiti i a unor simboluri relaionale corespunztoare relaiilor dintre acestea. Se numete stare ntr-un domeniu bine precizat, totalitatea cunotinelor din acest domeniu. O reprezentare care nu ine seama de evoluia strilor se spune c este declarativ. Cnd se are n vedere evoluia domeniului (universului) de la o stare la alta, aceasta se face fie prin nregistrarea strilor succesive, deci enumerativ, fie prin nregistrarea unei singure stri, denumit stare iniial i prin specificarea unui mecanism care asigur transformarea acesteia n strile corespunztoare diferitelor momente ulterioare momentului iniial. 19

Partea 1

Fa de aceste consideraii, dependena modului n care se reprezint cunotinele de tipul problemei conduce la urmtoarele clase de metode de reprezentare: - metode logice, care reprezint acele metode ce consider cunoaterea ca o serie de enunuri adevrate (aseriuni) privind cunotinele i relaiile ntre ele. In cazul acestor metode, se permite folosirea regulilor de inferene direct asupra cunotinelor din baza de cunotine. Dar, prezint dezavantajele unor soluii nesatisfctoare de sistematizare a bazei de cunotine, de reprezentare a cunoaterii despre aciuni, precum i de reprezentare a regulilor euristice; - metode relaionale - reprezint metodele prin care cunoaterea este reprezentat, pornind de la relaiile dintre obiecte, sub form de grafuri i reele; - metode procedurale - sunt metodele n care cunoaterea este reprezentat sub form de proceduri ce permit obinerea strilor la momente specificate, pornind de la strile iniiale sau intermediare. In plus, n caracterizarea unui concept se apeleaz la: - definiie - care reprezint descrierea formal a conceptului n termenii limbajului de reprezentare, prin care se difereniaz de alte concepte sau prin care se poate aprecia echivalena cu alte concepte similare; - aciune - reprezint relaiile conceptului cu entiti; - generalizare - reprezint o definiie mai puin restrictiv a acestuia, eliminndu-se din definiia conceptului unele proprieti mai puin relevante; - specializare - este noiunea invers a generalizrii, n care definiia unui concept este o specializare a unui concept mai general, cuprinznd n plus fa de acesta, o serie de proprieti adiionale. Un exemplu tipic al unui concept este numit prototip i se refer la un obiect reprezentativ al instanelor conceptului ce evideniaz trsturile caracteristice ale conceptului i acoper ct mai bine spectrul de exemple disponibile.
1.5.1.2. Reprezentarea cunotinelor n limbajul calculului cu predicate de ordin I

Logica cu predicate de ordinul I a fost folosit pentru prima dat ca metod de reprezentare a cunotinelor n programul de demonstrare a teoremelor al lui Gilmore i n programul The Logic Theorist al lui Newell, Shaw i Simon n 1963. Utilizarea logicii simbolice ca model de reprezentare a cunotinelor este important deoarece ofer o abordare formal a raionamentului, cu fundamente teoretice riguroase. Formalismul logic permite derivarea unor cunotine noi, plecnd de la cele existente, pe baza deduciei i a demonstrrii teoremelor, facilitnd automatizarea proceselor de raionament i execuia inferenelor corecte i logic valide. Pe de alt parte, logica simbolic este suficient de expresiv i flexibil pentru a permite reprezentarea cu acuratee a cunotinelor problemei de rezolvat [FLOREA, 93]. Deci, aceast metod de reprezentare este indicat n cazul n care piesele de cunoatere i componentele acestora sunt implicate n probleme cu numeroase inferene.

20

Sisteme expert

Logica predicatelor aprofundeaz studiul propoziiilor, prin descompunerea propoziiilor elementare n prile lor constitutive, logica propoziional constituind un caz particular al logicii cu predicate de ordinul I. In calculul propoziional, propoziiile sunt presupuse a fi bine alctuite dup reguli de formare care nu aparin limbajului calculului propoziional, ci limbajului natural. Pentru rafinarea cunoaterii, astfel nct s poat fi surprins semnificaia componentelor fiecrei propoziii, se poate considera urmtoarea faz, i anume reprezentarea predicativ. Pentru aceast etap trebuie fcute urmtoarele observaii: - orice propoziie are structura gramatical de forma subiect - predicat, sau, considernd termeni mai apropiai de obiectivul urmrit n procesul de reprezentare, de forma grup nominativ- grup predicativ; - se poate considera grupul predicativ ca avnd semnificaia abstractizat printr-un simbol de predicat, n ale crui locuri sunt plasate obiectele din grupul nominal; - unele componente ale propoziiei au rolul de a modifica valoarea de adevr n funcie de acoperirea domeniului n care variabilele iau valori, dnd astfel o semnificaie cantitativ care este surprins prin cuantificarea universal sau existenial a variabilelor. De exemplu, dac n propoziia "Traductorul este defect" se elimin subiectul, se ajunge la o formulare de forma: "... este defect". Expresiile de acest tip, cu un singur element liber sunt denumite predicate sau proprieti. Expresiile cu dou sau mai multe elemente libere sunt denumite relaii. Relaiile pot fi concepute i ca predicate. Dac n poziia elementului liber se introduce o variabil, atunci n funcie de valorile care i se atribuie acesteia, se pot obine propoziii care s fie ntotdeauna adevrate, uneori adevrate i alteori false sau ntotdeauna false. Prin urmare, tratarea unor asemenea expresii impune ca, alturi de modalitile de legare a propoziiilor (i , sau , negaie , implicaie =>, echivalen <=>) s se ia n considerare i cuantificatorul universal ( - pentru orice valori) i cuantificatorul existenial ( - exist cel puin o valoare). Utilizarea cuantificatorilor este legat de transcrierea n calculul cu predicate de ordinul nti a unor propoziii n care aceti cuantificatori acioneaz ca operatori unari asupra variabilelor pe care le prefixeaz. Folosirea predicatelor pentru a rezolva problema de apartenen la o mulime pentru entiti, care sunt, la rndul lor, termeni ai altor predicate, are dezavantajul de a conduce, n caz de substituie, la predicate de ordin superior. In acest context, reprezentarea cunotinelor se poate face n dou moduri: pe baza logicii predicatelor de ordinul unu, n care utilizarea variabilelor n formularea faptelor i a regulilor este permis numai pentru subiecte; pe baza logicii predicatelor de ordinul doi, n care utilizarea variabilelor este permis att pentru subiecte, ct i pentru predicate.

21

Partea 1

Se poate spune c n acest mod de reprezentare piesele de cunoatere sunt descrise prin expresii ale cror componente sunt formule ale limbajului. O pies de cunoatere exprimat n limbaj natural este descompus n propoziii elementare adecvate numite aseriuni ce specific fapte (proprieti, relaii legate de piesa de cunoatere). innd cont de definiiile anterioare se poate defini o propoziie elementar ca fiind generat de un predicat cu un numr finit de locuri n care se specific variabile formale sau obiecte n mulimea suport.
Acest mod de reprezentare este constituit din dou etape:

reprezentarea propoziional, n cadrul creia piesele de cunoatere sunt descompuse n aseriuni legate prin conectivele logice specifice calculului propoziional; reprezentarea predicativ, n care fiecare aseriune este descompus n componentele sale, predicate sau obiecte. Calculul cu predicate reprezint un model al raionrii cu dou valori, model ce implic analiza conexiunilor ntre clauze. Modul de raionare este asemntor raionrii umane. Setul obiectelor ce reprezint variabile n propoziie poart denumirea de universul discursului. Cea mai rspndit modalitate de reprezentare a regulilor de inferen folosete forma clauzal a expresiilor n limbajele de ordinul nti. Se numete clauz, o expresie de forma: A1, A2, ... Am |- B1, ..., Bn n care A1, A2, ... Am reprezint antecedentul, iar B1, ..., Bn reprezint succedentul clauzei respective. Clauza este o expresie echivalent cu formula: (A1 A2 ... Am ) (B1 ... Bn ) din calculul propoziional i din calculul cu predicate de ordinul nti, n care Ai i Bj (cu 1 i m , 1 j n ) sunt formule bine formate n aceste limbaje.
Cea mai rspndit form de reprezentare clauzal este aceea care conine o singur formul n succedent, de tipul: A1, A2, ... Am |- B, cunoscut sub denumirea de clauz Horn. Forma general a regulilor de inferen este:

22

Sisteme expert

A1 , , Am B1 , , Bn

(m 1, n 1)

n care A1, A2, ... Am sunt clauzele care alctuiesc premisa regulii, iar B1, ..., Bn sunt clauzele care alctuiesc concluzia. Principalul avantaj al metodei const n faptul c piesele de cunoatere pot fi introduse direct n sistemul rezolutiv pentru a fi folosite la efectuarea de inferene, dac i acest sistem este conceput pe baza unor mecanisme infereniale definite n calculul cu predicate de ordinul nti (cum este cazul, de exemplu, cu diferitele metode de rezolvare bazate pe demonstrarea automat a teoremelor). Unul din dezavantajele metodei este reprezentat de implementarea dificil n practic a acestei metode, datorit lucrului cu elemente de logic. De asemenea, un alt dezavantaj l constituie captarea trsturilor relevante ale pieselor de cunoatere n predicate.
1.5.1.3. Metode procedurale de reprezentare a cunotinelor

Reprezentarea procedural nu este legat de cercetrile n domeniul inteligenei artificiale. Astfel, programele de calcul cunoscute sunt piese de cunoatere obinute prin reprezentarea procedural a unor algoritmi. Metodele procedurale se bazeaz pe aspectele dinamice ale cunoaterii asupra modului de folosire a pieselor de cunoatere pentru efectuarea inferenelor, asupra determinrii de noi fapte prin executarea unor noi operaii asupra pieselor de cunoatere. Metodele procedurale presupun utilizarea unor simboluri prin care se identific proceduri ce sunt evaluate de procesoarele interpretative ale limbajelor de nivel nalt. Un exemplu de acest tip este limbajul LISP [TURTUR, 93]. Reprezentarea procedural este dependent de tipul problemei ce se rezolv cu piesele de cunoatere reprezentate. In msura n care cunoaterea devine tot mai complex, crete numrul pieselor de cunoatere. In general, ntr-o reprezentare procedural se folosesc dou tipuri de operaii primitive, i anume: operaii asupra memoriei, cum ar fi: nscriere, tergere, extragere, cutare, coresponden, modificare; operaii care returneaz valori ale unor funcii sau valori de adevr ale unor predicate. Intr-o reprezentare integral procedural, sunt cuprinse att componentele necesare pentru obinerea pieselor de cunoatere n memorie, ct i componentele care specific modul n care acestea sunt folosite n vederea realizrii obiectivelor propuse. Reprezentarea procedural a cunoaterii poate fi utilizat conform [GEORGE, 85] i ca modalitate de a specifica euristica atingerii unui obiectiv, prioritile n aplicarea unor reguli, ordinea de efectuare a unor operaii, apariia unor evenimente, momentele n care se introduc obiecte noi n procese, situaiile alternative. 23

Partea 1

Principalul avantaj al utilizrii metodelor procedurale este reprezentat de uurina aplicrii regulilor existente, specifice domeniului de competen aplicativ. Deoarece interpretarea cunoaterii astfel reprezentate este direct, se pot obine performane de timp mai bune dect n cazul altor metode. Un alt avantaj l constituie faptul c reprezentrile de acest tip pot fi utilizate att n cazul strategiilor de utilizare productive, ct i n al celor reductive, deoarece procedurile sunt elaborate cu ajutorul unor operaii primitive cu puine restricii sintactice i semantice. Astfel, pot fi surprinse i situaiile n care apar efecte laterale despre care trebuie s se in seama la efectuarea raionamentelor. Dar, aceast reprezentare are i o serie de dezavantaje, dintre care se consider c dezavantajul major este dat de flexibilitatea sczut n utilizarea pieselor de cunoatere pentru efectuarea altor inferene dect cele specificate explicit prin procedurile aferente.
1.5.1.4. Reprezentarea cunotinelor cu ajutorul cadrelor

O metod de reprezentare care face o sintez ntre reprezentrile declarative i cele procedurale i care este capabil s structureze cunotine foarte complexe, este cea bazat pe ideea de frame (Minsky, 1975). Un frame sau cadru este o unitate complex ce descrie un prototip al unui obiect sau al unei situaii, att prin metode declarative (prezentnd, de exemplu, atributele obiectului sau situaiei respective), ct i procedurale (coninnd, de exemplu, proceduri pentru a executa o serie de inferene tipice). Aceast reprezentare are un caracter intensional, n sensul c descrie clase de obiecte prin intermediul unor tipare generale; indivizii unei clase pot fi obinui prin actualizarea sau instanierea reprezentrii asociate clasei respective, deci se poate spune c reprezentarea cu ajutorul cadrelor aparine metodelor cu transfer succesoral. In consecin, alturi de funcia de stocare a cunotinelor, cadrele asigur organizarea acestora n ierarhii sau reele succesorale, prin care are loc partajarea proprietilor comune. Un cadru este alctuit din urmtoarele categorii sintactice: - identificatorul cadrului, cruia i se asigur un nume ce va specifica n alte descrieri, enunuri, mesaje, acea structur a cadrului cruia i este ataat. Numele servete pentru identificarea fiecrui cadru n baza de cunotine i trebuie s satisfac, n consecin, cerinele de unicitate pe care le presupune aceast funcie; - formele (sau rubricile), reprezentnd categorii de caracteristici crora li se atribuie simboluri relaionale specifice conceptului care se reprezint prin cadrul respectiv. Numele rubricilor servesc pentru identificare. Avnd caracter local, ele trebuie s fie unice numai n interiorul cadrului n care apar; - faetele, reprezentnd perechi de forma simbol - valoare, cu ajutorul crora sunt descrise obiectele din relaiile specificate de diferitele forme ale reprezentrii. Valoarea poate fi vid n momentul definirii faetei i poate face obiectul operaiilor uzuale de atribuire i consultare. Pentru o reprezentare ct mai precis a realitii, se face distincia ntre valoarea nul (sau zero) i valoarea nedefinit. Situaia n care pentru un cadru s-a declarat o faet, fr a se fi definit o valoare pentru ea, este identic cu a ti c o entitate trebuie s aib o 24

Sisteme expert

proprietate, pentru c aceasta apare la toate elementele de acelai tip, fr a se cunoate ns care este coninutul su exact. De asemenea, pot fi situaii n care valoarea poate fi dat de un alt cadru. Conceptul de cadru ca instrument de reprezentare este o structur arborescent, care conine simbolurile ce definesc piesa de cunoatere ce se reprezint. Structura arborescent a cadrelor poate fi uor urmrit n urmtoarea definiie exprimat n formalismul metalingvistic, conform [GEORGE, 85]: <cadru> := <identificator_cadru> <descriere_forme> <descriere_forme> := (<identificator_form> <descriere_faete>) | (<descriere_forme> (<identificator_form> <descriere_faete>)) <descriere_faete> := (<identificator_faet> <descriere_date>) | (<descriere_faete> (<identificator_faet> <descriere_date>)) <descriere_date> := (<valoare>) | (<descriere_date> (<valoare>)) <valoare> := <date> | (<date> (<etichet> <mesaje>)) | (<date> (<etichet> <mesaje> <comentarii>)) Exist diferite implementri ale conceptului de cadru descris mai sus, care se deosebesc prin detalii nesemnificative. De exemplu, n cazul implementrilor n limbajul LISP, pentru neterminalele <identificator_cadru>, <identificator_form> i <identificator_faet> se prefer o difereniere implicit, prin nivelul la care este plasat simbolul respectiv n structura de list a cadrului. Astfel, simbolul identificatorului cadrului este plasat la primul nivel, simbolul corespunztor identificatorului de form este considerat la al doilea nivel i la al treilea nivel se consider plasat simbolul identificatorului faet. In cazul descrierilor nestructurate sunt necesare cuvinte cheie identificatoare pentru cadre, forme, faete. Simbolurile pot reprezenta proprieti ale obiectelor, relaii n structura acestora, nume ale altor cadre sau identificatori de proceduri ataate. In felul acesta se realizeaz pe structura arborescent legturi semantice cu alte concepte, fcnd posibil alctuirea unei reele semantice corespunztoare situaiei particulare ce se reprezint cu ajutorul cadrelor. Tipurile mai importante de relaii care caracterizeaz piesa de cunoatere i legturile sale n universul discursului sunt: generalizarea, care exprim, prin diferitele sale faete, alte concepte ce au definiii mai puin restrictive dect piesa de cunoatere; specializarea - indic alte concepte ale cror descrieri satisfac i definiia dat pentru piesa de cunoatere; apartenena - arat clasa din care face parte piesa de cunoatere, deci clasa din care se motenesc proprietile; compoziia - indic obiectele care intr n alctuirea obiectului reprezentat prin piesa de cunoatere; proprietile - arat care sunt proprietile specifice obiectului reprezentat.

25

Partea 1

De notat faptul c pentru reconstituirea arborelui de clasificare se poate folosi forma de generalizare pentru sensul ascendent, sau, n sens descendent, forma de specializare. Cadrele ofer o cale de organizare i grupare a elementelor disparate de cunoatere n structuri. Ele se deosebesc de conceptele de structur a nregistrrii i respectiv nregistrare (record), folosite n diverse limbaje de programare i n bazele de date, prin dou faciliti fundamentale: transferul succesoral al proprietilor (motenirea proprietilor) i predicatele asociate. Cadrele sunt organizate n ierarhii sau reele succesorale, n care fiecare element motenete proprietile elementelor aflate pe nivelul superior. Poziionarea unui cadru n aceast ierarhie se realizeaz prin specificarea apartenenei, deci a printelui sau prinilor. Orice cadru, cu excepia vrfului ierarhiei, trebuie s aib cel puin un printe. In cazul vrfului ierarhiei, se consider o valoare convenional pentru printele su. Deoarece un cadru motenete proprietile prinilor si, o proprietate poate fi definit o singur dat pe nivelul adecvat, fiind automat preluat de toi descendenii. Aceast organizare a cadrelor prezint o serie de avantaje, cum ar fi: organizarea i structurarea cunotinelor, asigurarea valorilor implicite, reprezentarea i tratarea excepiilor. Avantajele enumerate asigur meninerea coerenei logice n baza de cunotine. Astfel, modificarea unei proprieti pe un anumit nivel se propag automat pe toate nivelele care-i succed n arborele succesoral, fr a mai fi necesar nici o alt operaie suplimentar. O facilitate oferit de aceast metod o constituie introducerea n cadre a reprezentrii regulilor, obinndu-se astfel o mbinare a calitilor provenind de la dou metode de reprezentare diferite. Transpunerea unei reguli n cadre se poate realiza innd cont de urmtoarele observaii: - o regul poate fi descris prin dou forme procedurale consecutive, corespunztoare celor dou aciuni distincte dintr-o regul; - prima form procedural evalueaz condiia i n caz de adevr, determin execuia celei de a doua forme procedurale, altfel, n cazul evalurii condiiei la fals, se ignor specificaiile celei de a doua forme, realizndu-se ieirea din regul; - corpul propriu-zis al aciunii este reprezentat de a doua form procedural, care se execut, conform celor menionate anterior, doar atunci cnd este ndeplinit condiia din prima form procedural; - ntr-un cadru pot fi prezente, de asemenea, n afara acestor forme cu caracter procedural, i forme avnd caracter declarativ, ce specific orice fel de context operaional impus pentru regula respectiv. Fiecrei rubrici i se pot ataa proceduri care s controleze operaiile ce afecteaz coninutul lor, denumite predicate. Exist dou tipuri de predicate: de atribuire (If - added); de consultare (If - needed). 26

Sisteme expert

Predicatele sunt activate automat naintea operaiilor crora le corespund i pot autoriza sau interzice execuia acestora. Dac o rubric are un predicat de atribuire, atunci orice operaie de modificare a coninutului su va fi executat numai dac predicatul poate fi verificat. Aceast categorie de predicate servete, n general, pentru controlul validitii datelor. Predicatele de atribuire mai pot fi utilizate pentru a controla i restriciona drepturile de modificare ale informaiilor, folosind, spre exemplu, un sistem de parole. Predicatele de consultare acioneaz similar celor de atribuire: orice operaie de citire a coninutului unei rubrici va fi executat numai dup ce predicatul de consultare ataat (dac exist) a fost verificat. Aceast categorie de predicate permite, spre exemplu, deducerea de informaii care nu exist ca atare n baza de cunotine. De asemenea, ele pot servi pentru calcularea unor date pe baza celor existente. Predicatele de consultare pot controla, de asemenea, drepturile de acces. Predicatele sunt motenite de toi descendenii cadrului n care au fost definite, o dat cu atributele la care au fost ataate i cu valorile acestora. Excepiile se reprezint n aceeai manier cu cea aferent atributelor. Astfel, dac pe un anumit nivel, predicatele ataate unui atribut trebuie s asigure un tratament diferit de cel asumat de predicatele motenite, atunci ele vor fi redefinite, iar aceast definiie particular va masca definiia preluat de la antecedeni. Predicatele asociate permit trecerea de la o structur pasiv la o structur activ a datelor. Prin ele, datele devin capabile s declaneze automat prelucrri specifice, la orice operaie de consultare sau actualizare. Att predicatele de atribuire ct i cele de consultare pot avea forma regulilor de producie. Prin conectarea cadrelor cu un ansamblu de reguli de producie se obine un sistem integrat de reprezentare i inferen. In acest caz, predicatele asociate pot invoca reguli de producie, iar regulile la rndul lor pot face referin la faptele stocate de cadre. Raionamentul cu aceste reprezentri are la baz un proces de recunoatere. Un obiect sau o situaie pot fi identificate pe baza unor atribute prezentate ntr-un cadru, iar restul de elemente din reprezentare pot fi utilizate pentru a infera noi trsturi ale acestora. Aceste reprezentri se folosesc n situaii n care cunotinele sunt puternic structurate i organizate ierarhic i n care interaciunile sunt numeroase. Prin toate aceste avantaje, cadrele ofer o cale deosebit de promitoare pentru reprezentarea cunotinelor i se bucur, din acest motiv, de o larg tratare n literatura de specialitate.
1.5.1.5. Reprezentarea cunotinelor prin reele de producie

Modelul regulilor de producie a fost utilizat pentru prima dat n cadrul sistemelor expert n sistemele DENDRAL [BUCFEI, 78] i MYCIN [BUCSHO, 84].

27

Partea 1

Aceast metod este indicat a se folosi n situaiile n care cunotinele pot fi modularizate n segmente mici, relativ independente i n care coninutul cunotinelor este procedural (cunotine de tip cum). De asemenea, se recomand aceast reprezentare n cazul n care se constat existena condiionrilor sau a restriciilor n utilizarea pieselor de cunoatere, exprimate n vederea restrngerii spaiului problemei la acele elemente care reprezint candidaii valabili la participarea n procesele infereniale. In momentul de fa acest mod de reprezentare a cunotinelor este unul dintre cele mai utilizate n cadrul sistemelor expert. Aa cum s-a specificat anterior, cunoaterea n reelele (sistemele) de producie este de natur procedural i se pot defini urmtoarele componente: - cunoatere declarativ sau factual, ce reprezint piese de cunoatere stocate sub forma unor structuri de date ntr-o colecie numit context; - cunoatere procedural, care este reprezentat sub forma regulilor de producie, de tip condiie - aciune, reguli ce formeaz baza de reguli; - cunoaterea strategic sau de control, format din reguli ce privesc secvenele de aciuni n procesul de rezolvare. Reprezentarea regulilor de producie se bazeaz pe logica propoziiilor, astfel nct att faptele ct i regulile pot conine numai entiti invariabile (constante). Datorit limitrilor inerente unei asemenea soluii, s-a trecut la o alt modalitate de reprezentare, bazat pe logica predicatelor, n care faptele i regulile pot include entiti generice, conferindu-le astfel un grad mai ridicat de generalitate. Deoarece entitile generice sunt specificate prin intermediul variabilelor, aceast metod de reprezentare este denumit, prin extensie de limbaj, reprezentare prin reguli de producie cu variabile. Se consider sistemul de producii ca fiind compus dintr-o baz de date i un set de reguli. Ordinea n care regulile sunt introduse i stocate n sistem este nesemnificativ. Condiiile unei reguli pot fi considerate ca o baz de date, ce returneaz un indicator de succes sau eroare. Concluzia unei reguli este o aciune ce manipuleaz date din baza de date, i n plus, o strategie de control a sistemului determin secvena regulilor utilizate. Baza de date este constituit dintr-un set de termeni, iar o regul de producie este format din dou componente: partea stng a regulii (numit i antecedent, premis, condiie sau situaie) i partea dreapt a regulii (numit i consecin, concluzie, aciune sau rspuns). O regul de producie are forma general IF c THEN t, (tradus n limba romn, DAC c ATUNCI t), n care condiia c este constituit din termeni, paranteze, conective, , , , iar concluzia t este format dintr-un singur termen. In general, nu se permite o conjuncie de termeni ntr-o concluzie.

28

Sisteme expert

1.5.2. Probleme ale reprezentrii cunotinelor prin reguli


Sistemele bazate pe reguli de producie decurg din dou formalisme logice: calculul propoziional de ordinul 0, ce utilizeaz noiunea de propoziie sau fapt boolean care poate fi fals sau adevrat i operatorii logici AND, OR, NOT. Dac se adaug expresii ce cuprind operatori relaionali atunci se extinde formalismul, ajungndu-se la ceea ce este numit calculul propoziional de ordinul 0+.

Operatorul SAU n ipotez


Aceast opiune ridic o serie de dificulti. Pentru deducerea faptului este necesar ca cel puin una din premise s fie adevrat, iar pentru explicaia raionamentului trebuie precizat i care premis din ipotez a fost satisfcut. In cazul unei ipoteze conjunctive sunt verificate toate premisele. De aceea, se recomand transformarea regulilor ce conin operatorul SAU n ipotez prin mai multe reguli ce sunt n forma conjunctiv [PENTIU, 00]. Acest lucru este totdeauna posibil, deoarece n logica propoziional formulele: (F1) (F2) (P1 sau P2 sau ... sau Pn) -> C (P1 -> C) sau (P2 -> C) sau ... sau (Pn -> C)

sunt echivalente. In general, o regul de forma: (R)

dac f11 i f12 ... i f1n sau f21 i f22 ... i f2n2 sau ... sau fm1 i ... i fm,nm atunci C

se expandeaz n mai multe reguli de forma: (R1) dac f11 i f12 i ... i f1,n1 atunci C . . . (Rm1) dac fm1 i fm2 i ... i fm,nm atunci C

Operatorul SAU n concluzie


Se consider regula: 29

Partea 1

(Rx)

dac lips_intrare atunci Scos_din_funcie sau Avarie

Se ridic n mod evident problema: crui fapt din concluzie s-i fie atribuit valoarea adevrat? i cum s se rezolve aceast situaie din punct de vedere informatic? Exist soluiile [PENGRA, 98]: - se dubleaz memoria de lucru, i ntr-o copie a acesteia se consider un fapt, iar n cealalt, cel de al doilea fapt. Se efectueaz procesul inferenial separat pentru fiecare din aceste copii, utilizatorul trebuind s decid n final asupra uneia din variantele de rezultat propuse de sistem; - se consider mai nti faptul Scos_din_funcie ca fiind adevrat, se continu procesul inferenial, apoi se revine i se adaug Avarie = adevrat. Ambele variante sunt complicate. Din acest motiv cele mai multe SE comerciale nu accept operatorul sau n concluzie. Rezolvarea o poate da inginerul de cunotine cu ajutorul unui fapt suplimentar, n cazul considerat, de exemplu Nefuncional [PENTIU, 00]:

dac Nefuncional i not Scos_din_funcie atunci Avarie dac Nefuncional i not Avarie atunci Scos_din_funcie dac Scos_din_funcie atunci Nefuncional dac Avarie atunci Nefuncional dac not Scos_din_funcie i not Avarie atunci not Nefuncional Primele dou reguli sunt cele mai necesare. In general, aceast problem trebuie evitat prin introducerea unor concepte de o semnificaie cunoscut. Utilizarea regulilor de producie prezint urmtoarele avantaje din punct de vedere al modelrii cunotinelor n sistem [HAYWAT, 83]: - separarea cunotinelor generale despre problem, de datele specifice unei instane a problemei de rezolvat; - partiionarea cunotinelor n uniti de cunotine independente, facilitnd, astfel, dezvoltarea incremental a bazei de cunotine; - posibilitatea meninerii a dou forme de expresie a regulilor: o form intern sistemului, adecvat procesului de rezolvare i o form extern, apropiat limbajului natural, pentru interfaa utilizatorului cu sistemul.
1.5.2.1.1. Mecanismul interpretativ al regulilor de producie Dac ntr-o regul condiia este satisfcut, se spune c regula este selectat pentru declanare sau regula este aplicabil. Regulile aplicabile sunt introduse ntr-o mulime a regulilor aplicabile, mulime din care este selectat regula cu cea mai mare prioritate. Mecanismul interpretativ al regulilor de producie, prezentat n figura 1-7, conine urmtoarele etape:

30

Sisteme expert

Baza de fapte Restricia

Baza de reguli

Submulimea faptelor Filtrare

Submulimea regulilor

A = mulimea regulilor aplicabile

Selecia unei reguli din A A nevid Execuie A este vid Sfrit

figura 1-7. Mecanismul interpretativ al regulilor de producie faza de restricie - reprezint selecia unui subansamblu al bazei de fapte i reguli de interes. Selecia are ca efect reducerea considerabil a timpului pentru fazele urmtoare; faza de filtrare (pattern matching), ce are ca efect comparaia ntre partea de premis a regulii considerate i faptele bazei de fapte pentru determinarea regulilor aplicabile. In urma acestei etape pot rezulta una, mai multe sau nici o regul declanabil. Dac nu se obine nici o regul declanabil, atunci rezult o situaie de eec, care trebuie explicat, sau n care utilizatorul trebuie s rspund la o serie de ntrebri puse de ctre SE, n scopul completrii formulrii problemei. De asemenea, se poate face observaia conform creia aplicarea dup faza de selecie a fazei de filtrare ajut la reducerea substanial a ansamblului regulilor ce sunt filtrate cu elemente din baza de fapte; faza de rezolvare a conflictelor are ca obiectiv alegerea acelor reguli ce sunt aplicate efectiv. Problema este rezolvat printr-o strategie ce poate fi foarte simpl n raport cu contextul, sau mai complex innd cont de context n sensul aplicrii celei mai promitoare reguli. Printre principalele criterii de alegere care pot fi utilizate n aceast etap, se pot aminti: prima regul din list, cea mai complex regul (cu cel mai mare numr de fapte n premis), cea mai utilizat regul sau cea mai prioritar (regula selectat conform criteriului

31

Partea 1

prioritii), regula cea mai fiabil (regul selectat conform coeficientului de ncredere); faza de execuie const n aplicarea regulilor ce au fost selectate n faza anterioar, aciunea constnd, n general, din adugarea de noi fapte n baza de fapte. Este posibil ca aplicarea regulii s fac apel la proceduri externe avnd ca efect modificri ale bazei de fapte sau/i formularea de ntrebri ctre utilizator sau execuia aciunii indicate de partea dreapt a regulii; pornind de la contextul modificat n urma aplicrii regulilor anterioare, se reia ciclul ncepnd cu faza de restricie, att timp ct n cadrul ciclului are loc modificarea contextului.

Oprirea mecanismului interpretativ poate avea loc n cazul n care aciunea unei producii specific concret oprirea, sau dac se selecteaz o producie vid. Reelele infereniale ntre premise i concluzie determin procesul numit raionament, ce se bazeaz pe faptele furnizate prin enun i pe piesele de cunoatere existente n baza de cunotine. Raionamentul poate fi direct, n cazul n care faptele furnizate n enun i piesele de cunoatere din baza de cunotine sunt suficiente, sau prin analogie, n cazul incompletitudinii faptelor. Metodele mult utilizate pn n prezent sunt metodele din clasa raionamentelor directe. Metodele ce studiaz transformrile de la premise la concluzii se numesc i metode de raionare formal i au o importan deosebit n abstractizarea unor proprieti ce intervin la raionamentele prin analogie. 1.5.2.1.2. Metode de rezolvare a conflictelor S-a specificat faptul c la un moment dat, sunt selectate mai multe reguli, sistemul urmnd s decid care dintre acestea vor trebui declanate. Se poate ajunge la o astfel de situaie datorit conflictelor ntre instanele aceleiai reguli, ct i datorit conflictelor ntre reguli diferite ce candideaz la soluie ca urmare a realizrii cu succes a corespondenei. Rezolvarea acestor conflicte este fcut pe baza informaiei ce provine din context, din baza de reguli sau surse combinate. Dac pentru informaia ce provine din context se poate indica o anumit importan pieselor de cunoatere, importan materializat printr-o pondere ce reprezint o dat de intrare n mecanismul de evaluare a prioritii, notnd cu pi ponderea regulii i din baza de reguli, se pot enuna cteva din cele mai utilizate criterii [CRSTO, 94]: - prioritatea dat de cea mai important pies de cunoatere din regul - deci, se alege regula r, cu pr = max pi, pentru 1 i n; - prioritatea determinat de media aritmetic a ponderilor de importan a pieselor de cunoatere ce apar n regul:

32

Sisteme expert

1 n pr = pi n i =1

(1-1)

- ordinea invers a dispersiei ponderilor de importan a pieselor de cunoatere ce se calculeaz prin: s2 =


n 1 ( pi p r ) 2 n 1 i =1

( 1-2)

unde pr este media aritmetic calculat mai sus. Rezolvarea conflictelor de prioritate se poate baza i pe faptul c structura regulilor de producie selectate este purttoare de informaie util pentru acest scop. O regul PP este un caz particular al unei reguli PG dac [CRSTO, 94]: - PP i PG sunt identice; - toate clauzele condiionale ale regulii generale PG se regsesc printre clauzele condiionale ale regulii PP; - pentru fiecare clauz condiional din PG ce specific piese de cunoatere n context, exist n PP o clauz care conine un subset de piese de cunoatere, printre care i aceea specificat n clauza din PG. In acest caz se prefer PP pentru a satisface n ntregime restriciile specificate de regula PG. 1.5.2.1.3. Transmiterea aciunii O caracteristic a sistemelor de producii este comunicarea ntre reguli prin intermediul contextului. Aceast metod este utilizat n programarea clasic, avnd ca principiu constituirea unei zone (depozit) de informaie la care au acces mai multe task-uri. Aceast zon este folosit sub denumirea de zon de comunicaii sau, cel mai frecvent, cutie potal. Fiecare task poate efectua o serie de aciuni asupra cutiei potale, i anume: poate extrage din cutia potal informaia necesar prelucrrii sau informaia care i este adresat explicit, de asemenea, poate depune n cutia potal rezultatele obinute. In plus, informaia poate fi pus la dispoziia tuturor task-urilor (tehnic de broadcasting) sau poate fi restricionat prin tehnici de adresare difereniat. Aceast metod poart numele de comunicare prin date i n cadrul ei, programul nu este abordat ca o secven prestabilit de operaii, ci este realizat nlnuirea operaiilor ca urmare a interpretrii cutiei potale dup reguli care s permit stabilirea urmtoarei operaii. In consecin, principalul obiectiv al prii de aciune dintr-o regul l constituie realizarea funciei de comunicare, deci nscrierea informaiei pe care o produce regula n context. Principalele operaii ce pot fi efectuate asupra contextului sunt: - tergerea unei piese de cunoatere din context, care acioneaz att asupra piesei de cunoatere propriu-zise, ct i asupra informaiei auxiliare meninut de sistem pentru a fi utilizat la rezolvarea conflictelor de prioritate;
33

Partea 1

- nscrierea unei piese de cunoatere n context, realizndu-se astfel crearea unui nou element n context, precum i declararea procedurii de evaluare a prioritii pentru plasarea noii piese de cunoatere n mulimea ordonat a contextului; - modificarea unei piese de cunoatere, ce presupune nscrierea n context a unei noi forme a piesei de cunoatere, n aceeai poziie, informaia privind prioritatea piesei rmnnd neschimbat. Partea de aciune poate specifica i o serie de alte operaii auxiliare, dintre care: - activarea sau dezactivarea unor reguli de producie; - alterarea coninutului bazei de reguli, prin tergerea, nscrierea sau modificarea de reguli de producie; - iniierea executrii unor programe care pot efectua: secvene de operaii care nu afecteaz coninutul contextului sau al bazei de reguli, de exemplu operaii de intrare - ieire; secvene de operaii care modific strategia de control cum ar fi: apelarea explicit a unei reguli, testri ce nu pot fi reprezentate drept condiii ale unor reguli, dar care servesc unor procese decizionale diferite de cele implementate prin strategia decizional a interpretorului; calcule pentru atribuirea de valori unor simboluri. 1.5.2.1.4. Organizarea sistemelor de producie Metoda de reprezentare a cunoaterii cu ajutorul sistemelor de producii s-a impus n cadrul metodelor de reprezentare a cunoaterii datorit avantajelor sale, dintre care se pot enumera: simplitatea i modularitatea regulilor, formatul liber al pieselor de cunoatere i aspectul natural al transpunerii n reguli a cunoaterii despre comportarea sistemelor din lumea real. Un alt avantaj al sistemelor de producii l constituie autonomia lor ridicat, deoarece regulile comunicnd ntre ele numai prin intermediul contextului, o modificare n coninutul unei reguli are efect numai asupra aplicabilitii respectivei reguli, n cazul n care modificarea afecteaz partea de condiie, sau asupra contextului, dac modificarea afecteaz partea de aciune. Consecin a autonomiei sistemului de producie l constituie faptul c regulile pot fi tratate ca piese de cunoatere independente, deci pot fi introduse, terse sau modificate fr a fi necesar analiza efectului acestor operaii asupra altor reguli. Se pot enumera i o serie de dezavantaje ale sistemelor de producii, i anume: - pe msur ce sistemul acumuleaz cunoatere, n loc s-i mbogeasc performanele, devine mai neperformant. Astfel, dac de exemplu, sistemul rezolv o problem ntr-un interval de timp, dup ce sistemul este nvat s rezolve i o alt problem, timpul de rezolvare pentru prima problem va fi mai mare; - eficiena sistemelor de producii este depreciat de faptul c executarea aciunilor nu are loc imediat ce s-a selectat regula, ci numai dup ce faza de coresponden s-a efectuat i pentru celelalte reguli rmase netestate n baza de reguli, iar apoi, dup ce s-au rezolvat i conflictele de prioritate. 34

Sisteme expert

1.5.2.1.5. Msuri pentru creterea performanelor Utilizarea sistemelor de producii necesit o analiz n scopul prevenirii i eliminrii cauzelor ce conduc la descrierea performanelor sistemului. Astfel, trebuie avute n vedere urmtoarele: - organizarea contextului astfel nct s poat fi permis explorarea sa parial, deci a pieselor de cunoatere direct implicate n rezolvarea problemei; - organizarea bazei de reguli astfel nct din procesul interpretativ s fie eliminate regulile neadecvate problemei; - introducerea unor elemente auxiliare pentru facilitarea accesului, seleciei, execuiei. O prim msur care poate fi luat se refer la organizarea contextului pentru obinerea unor grupri de piese de cunoatere adecvate rezolvrii unor tipuri predefinite de probleme. Un astfel de context poart numele de context local. nvarea din experiena sistemului este posibil teoretic, dar realizarea practic este dificil. Ea const din gruparea pieselor de cunoatere pe tipuri de probleme, pstrndu-se pentru fiecare pies de cunoatere nregistrarea unor referine ctre tipurile de probleme n care este implicat. Se pot considera aceleai criterii i pentru stabilirea unor grupri pe mulimea regulilor. Dar, n legtur cu aceasta trebuie avut n vedere i specializarea funcional a regulilor, astfel c realizarea gruprilor se face pe baza similitudinii obiectivelor ce se urmresc prin aplicarea regulilor de producie individuale. O alt modalitate de cretere a performanelor sistemelor de producie const n adugarea unor noi contexte, n care sistemul nregistreaz i menine actual informaia necesar pentru a crete eficiena procesului de cutare. Aceast informaie poate fi o referin care restrnge cutarea numai la acele entiti care pot candida la ncheierea cu succes a respectivei faze. Astfel de contexte poart numele de contexte de referine. Componentele interpretorului de reguli ce prelucreaz contextele de referine sunt denumite filtre. Se pot construi contexte de referin care s informeze asupra tuturor produciilor n ale cror condiii se afl o anumit pies de cunoatere din contextul global sau contexte de referin care s conin pentru fiecare regul lista de referin la piesele de cunoatere existente n partea de condiie. La realizarea contextelor de referin se pot avea n vedere att o serie de simplificri (de exemplu, considerarea numai a primei piese de cunoatere din partea de condiie), ct i introducerea unor date suplimentare, care s simplifice fazele ulterioare ale ciclului de interpretare. Conform [GEORGE, 85], sistemele care utilizeaz contexte de referin obin performane mult mai bune comparativ cu sistemele tradiionale, mergnd pn la de 6 ori mai rapid dect acestea.
1.5.2.2. Reprezentarea cunotinelor prin reele semantice

35

Partea 1

In situaia n care cunotinele nu pot fi modularizate n segmente mici, relativ independente (ca n cazul regulilor de producie), ci au un caracter mai degrab declarativ (cunotine de tip ce), se folosesc reprezentri de tipul reelelor semantice. Aceast modalitate de reprezentare este indicat n cazul n care se acord importan semnificaiei relaiilor ntre piesele de cunoatere, sau ntre componentele structurale ale acestora. Elementele primitive (primitivele semantice) constituente ale unei reele semantice sunt: nodurile, care reprezint abstractizri structurale pentru concepte, evenimente, stri etc.; arcele (legturile), care sunt, de fapt, abstractizri ale relaiilor propriu-zise. O reea semantic este un graf orientat i etichetat. O bun structurare a reelei semantice de obiecte ncearc s evite circuitele n graf i tinde spre o organizare ierarhic a obiectelor. Intr-o reea semantic se eticheteaz att nodurile, ct i arcele. Nodurile pot fi etichetate cu concepte, instane, valori (ale proprietilor), proceduri, iar arcele sunt etichetate cu relaiile ce exist ntre noduri. In ceea ce privete inferenele pe reele semantice, un tip de inferen se refer la determinarea unei anumite proprieti pentru un nod, innd seama de ierarhiile din reeaua semantic i de motenirea proprietilor. Aceast cutare de noi proprieti n ierarhia de concepte este numit i inferen prin motenire. Implementarea unei asemenea inferene presupune de fapt gsirea unui algoritm, care primind la intrare numele unui nod i numele unei proprieti, s determine la ieire: rspunsul da i valoarea proprietii dac conceptul sau instana corespunztoare nodului are acea proprietate; rspunsul nu n caz contrar. Pentru a obine un grad mai ridicat de generalitate, se pot introduce legturi structurale care s exprime proprietile intrinseci ale conceptelor asociate nodurilor. In acest context, se disting legturi pentru atribuirea de proprieti generice, care leag un concept de atributele sale i legturi pentru atribuirea de proprieti specifice, care leag reprezentantul unui concept de proprietile sale specifice. O alt posibilitate de inferen pe o reea semantic este dat prin mecanismul de filtrare. Astfel, se construiete un fragment de reea semantic drept rezultat al cutrii nelesului pentru o situaie sau drept rezultat al unei ntrebri. Apoi, se ncearc punerea n coresponden, nod cu nod, a acestui fragment de reea n reeaua semantic reprezentnd baza de cunotine. In fragmentul iniial vor exista unele noduri sau arce nelegate i care n urma acestui proces capt valoarea prin care se afl nelesul sau rspunsul la ntrebarea respectiv. Se poate face o clasificare a reelelor semantice n funcie de structur i de tipul de reprezentare: reele semantice simple; reele semantice sortate; 36

Sisteme expert

reele semantice extinse. Reelele semantice pot fi eficient implementate folosind structurile de date dinamice cu pointeri. Reelele semantice determin o taxinomie, adic o arborescen sau un graf ierarhizat, n care exist proprieti de motenire. Din acest motiv ele sunt utile, n special, pentru reprezentarea universurilor de discurs n care apar clasificri complicate, deoarece clasificarea se face de la general la particular. Construcia unei taxinomii permite sistemului s tie c un element al clasificrii posed, n afara propriilor sale proprieti, proprietile tuturor predecesorilor din graf. O taxinomie bine conceput poate s reduc n mod considerabil numrul de caracteristici ataate n mod explicit unui obiect. Un alt avantaj al folosirii reelelor semantice este reprezentat de faptul c toate informaiile despre o entitate conceptual sunt grupate i pot fi atinse dintr-un anumit punct din reea. Dar reelele semantice prezint i o serie de dezavantaje, cum ar fi: - dificultatea materializrii cuantificatorilor; - algoritmii de prelucrare variaz n funcie de problema i de reeaua dezvoltat, spre deosebire de calculul predicatelor de ordinul 1 unde metoda rezoluiei este general valabil. De aici, o mai mare dependen ntre model i programele de prelucrare. Faptul c reelele semantice favorizeaz filtrarea, operaie care influeneaz n mare msur performanele n exploatarea bazelor de cunotine, a fcut ca n practic s se apeleze la combinarea reelelor semantice cu regulile de producie.

1.5.3. Strategii de control ntr-un SE


Raionamentul reprezint procesul de constituire a lanurilor sau a reelelor infereniale ntre premisele unei probleme i concluzie. Fundamentarea raionamentului se realizeaz pe faptele furnizate prin enun i pe piesele de cunoatere disponibile n baza de cunotine. Dac acestea sunt suficiente pentru formularea unei concluzii, raionamentul este direct, deoarece toate entitile cuprinse n reeaua inferenial aparin faptelor aferente problemei date. Cazul incompletitudinii faptice poate conduce la impas n sistemele rezolutive i din acest motiv au fost studiate i alte tipuri de raionament, dintre care se poate aminti raionamentul metaforic (sau raionamentul prin analogie). In categoria raionamentelor directe intr i raionamentele formale, care cuprind metodele ce studiaz transformrile structurale de la premise la concluzii. Un alt tip de raionamente este reprezentat de raionamentele informale, ce pornesc de la semnificaiile factuale i procedurale cuprinse n enunurile problemelor.

37

Partea 1

Pentru asigurarea desfurrii corecte a unui raionament, procesul de rezolvare (mecanismul de inferene) este controlat pe baza unei strategii care asigur succesiunea corect a inferenelor. Astfel, pot fi enumerate urmtoarele strategii mai importante pentru controlul raionamentelor: - strategia de control nainte, care pornete de la starea iniial de fapte descris prin enunul problemei, i, prin aplicarea unor reguli sau a unor operatori, genereaz succesiv candidai la soluie, pn cnd se obine un rspuns corespunztor obiectivului problemei. Prin aplicarea regulilor sau a operatorilor, se obin fapte noi. La fiecare pas se pot obine derivri valabile prin aplicarea mai multor reguli (operatori), dar numai una se afl pe lanul care conduce la soluie. Deoarece, n majoritatea cazurilor, nu se cunoate care este aceast regul sunt generate toate faptele derivabile dintr-o anumit stare. Astfel, se obine un arbore ale crui noduri sunt puncte n spaiul problemei, iar selectarea soluiei se obine aplicnd o procedur de cutare n acest spaiu. Metodele care se bazeaz pe strategia de control nainte se mai numesc i metode productive. Se spune despre aceast strategie de control c este dirijat de datele problemei sau de jos n sus i conduce la cutare n spaiul strilor. - strategia de control napoi pornete de la obiectivul problemei, cutnd ca, prin aplicarea unor reguli, s se obin fie descompunerea problemei n subprobleme de complexitate mai mic, fie reformularea problemei n termeni derivai pe baza regulii folosite. Deci, aceast strategie de control este dirijat de obiectivul problemei, sau de sus n jos. Contextele precedente pot fi considerate ca subobiective ale problemei date. Metodele ce se bazeaz pe strategia de control napoi se mai numesc i metode reductive. - strategia de control combinat nainte - napoi aplic nti metode reductive pentru obinerea de subprobleme, pe care le rezolv apoi cu ajutorul unor metode productive (dac subproblemele nu au fost rezolvate integral prin metode reductive). Prin folosirea combinat a celor dou strategii de baz, se caut a se obine o simplificare a problemei i, deci, o reducere a spaiului strilor pentru subproblemele componente, cu efecte favorabile n ceea ce privete resursele necesare pentru rezolvare. Strategia de control circumstanial se caracterizeaz prin faptul c aplicarea regulilor este autorizat nu numai de valoarea de adevr a condiiei regulii, ci i de caracteristici relaionale derivate din fapte. Astfel, valabilitatea regulilor este condiionat de circumstanele aplicrii lor. Deoarece aceast caracteristic este independent de sensul n care se desfoar raionamentul, se pot ntlni strategii circumstaniale nainte, napoi sau combinate.

1.6.

Sisteme expert pentru aplicaii n timp real

Organizaiile care activeaz n domenii cum ar fi producia de bunuri, telecomunicaii, industria aeronautic etc. se confrunt permanent cu o serie de probleme legate de creterea eficienei n vederea obinerii unei productiviti mrite i a unei mai bune utilizri a resurselor, a unei caliti ridicate a produselor i serviciilor, dar i de obinerea unui rspuns rapid la necesitile clienilor. Orientarea tot mai pregnant ctre fluxurile de date electronice 38

Sisteme expert

sau ctre comerul electronic se transform ntr-o presiune continu asupra acestor organizaii, presiune relativ la mbuntirea operaiilor, simultan cu creterea complexitii acestora. Odat cu creterea complexitii operaiilor, variaia rapid a datelor conduce la apariia unor dificulti n ceea ce privete interpretarea acestora i aciunile rspuns sintetizate de sistem ca urmare a evalurii lor. O alt problem care trebuie rezolvat n cadrul unor astfel de sisteme este legat de evenimentele externe, situaiile n care acestea trebuie tratate de un sistem expert fiind foarte frecvente. Din punctul de vedere al acestora, apar urmtoarele aspecte: evenimentele externe pot apare la momente de timp oarecare; un eveniment extern trebuie tratat imediat, cu excepia situaiilor n care el este la concuren cu alte resurse ale sistemului; timpul capt conotaii deosebite; n cazul unui sistem expert n timp real restriciile asupra timpului de rspuns sunt foarte severe, deoarece rspunsul trebuie stabilit ntr-un interval precis de timp. Marea majoritate a sistemelor expert pentru aplicaii n timp real se regsesc n domeniul controlului proceselor, situaie n care acestea capt denumirea de Expert Control. Gama de sisteme expert utilizate poate varia de la sisteme aplicabile proceselor simple, n care cmpul de cunoatere este mai limitat (cazul proceselor monovariabile), pn la cele aplicabile proceselor de complexitate ridicat, cum ar fi cazul proceselor nucleare (caracterizate de numr mare de variabile de trebuie controlate, cmp de cunoatere foarte larg, grad de risc ridicat etc.). n continuare sunt prezentate principalele probleme ce pot s apar n conducerea proceselor industriale, i care se pot rezolva cu ajutorul sistemelor expert. n considerarea acestor probleme s-a inut cont de clasificarea sistemelor expert de la pagina 8. 1. Sisteme expert de interpretare, care au ca obiect de lucru datele culese din proces prin intermediul senzorilor sau traductoarelor, precum i datele cu semnificaii simbolice care descriu situaii caracteristice ce determin strile reale ale procesului. 2. Sisteme expert de diagnoz; bazate pe tehnici moderne de diagnosticare, aceste sisteme expert permit determinarea strii de funcionare a unui echipament care face parte din sistemul de conducere sau chiar a ntregului sistem; 3. Sisteme expert de predicie; astfel de sisteme se bazeaz pe strile anterioare i cea curent a sistemului pentru a prognoza evoluia sistemului pe un orizont de timp mai lung sau mai scurt. Un alt element de baz n realizarea prediciei este reprezentat de legile de evoluie. Predicia are ca scop prentmpinarea apariiei unor efecte nedorite sau luarea unor msuri adecvate pentru optimizarea funcionrii; 4. In situaiile n care sistemele ce se doresc a fi conduse sunt supuse restriciilor i soluiile convenionale nu conduc la rezolvarea problemelor caracteristice acestora, se poate face apel la sistemele expert pentru proiectarea unor astfel de sisteme. O prim etap de lucru prevede identificarea problemelor, dup care se apeleaz la proiectarea asistat de calculator, sistemul expert avnd un rol esenial n soluionarea problemelor; 39

Partea 1

5. Sisteme expert pentru planificare; n multe situaii, metodele clasice utilizate nu pot conduce la respectarea condiiilor restrictive impuse de managementul mediului. Prin urmare, s-au dezvoltat sisteme expert de planificare, care permit programarea fluxului de activiti n scopul minimizrii consumului de resurse; 6. Sisteme expert pentru monitorizare, care lucreaz cu dou tipuri de date: date observate/msurate prin intermediul traductoarelor sau senzorilor din process i, respectiv, date dorite; pe baza acestor dou categorii sunt calculate abateri, eventualele depiri de ctre acestea a unor limite stabilite fiind semnalizate corespunztor. Asigurarea regimului optimi de funcionare este realizat prin intermediul monitorizrii. 7. Sistemele expert de depanare; astfel de sisteme lucreaz, de obicei, n conjuncie cu sisteme de diagnoz; n cazul n care sunt sesizate defecte, sistemele expert de depanare vor sintetiza succesiunile de aciuni ce trebuie urmrite pentru nlturarea defectelor i vor proceda la repararea din mers a componentelor defecte ale echipamentelor din proces; 8. Sisteme expert de nvare; astfel de sisteme expert sunt utilizate, n special, pentru instruirea personalului. De asemenea, ele mai pot fi utilizate n vederea elaborrii unor produse program specializate n rezolvarea unor probleme noi; 9. Sisteme expert de control, prin care se urmrete ndeplinirea urmtoarelor activiti: determinarea strii reale curente de evoluie a sistemului; precizarea evoluiei sistemului real; diagnosticarea situaiilor de excepie; programarea remedierilor; supervizarea tuturor activitilor pentru asigurarea realizrii operaiilor i a optimizrii funcionrii sistemului. Sistemele expert pot utiliza, ca instrumente, i reele neurale, logica fuzzy, algoritmi genetici, ageni, multimedia etc., ajungndu-se, astfel, la sisteme hibride. In general, n cazul domeniului proceselor industriale, sistemele expert acioneaz asupra parametrilor sistemelor, dar i asupra algoritmilor sistemului (de reglare, identificare, monitorizare etc.), stabilind, de exemplu, ordinea n care intr n execuie aceti algoritmi. Dintre particularitile implicate de utilizarea algoritmilor numerici de ctre sistemele expert pot fi menionate [POPA, 98]: divizarea execuiei, aceasta conducnd la necesitatea dezvoltrii unor algoritmi specifici, precum i a logicii secveniale de execuie; datorit faptului c funcionarea sistemului expert este simultan i n strns legtur cu algoritmii numerici, procedurile cod ale acestora trebuie proiectate i implementate corespunztor; algoritmii numerici implementai trebuie s fie caracterizai de o portabilitate ridicat i s permit dezvoltarea ulterioar, n corelaie cu tehnicile evoluate de conducere a proceselor industriale [TURCU, 99][TURCU, 2000]; aplicaiile implementate trebuie s permit combinarea mai multor algoritmi de control, s dispun de faciliti de modificare a unor parametri ai procesului (de 40

Sisteme expert

exemplu, perioada de eantionare), s existe posibilitatea utilizrii unor algoritmi optimali i/sau adaptivi; punerea la dispoziia utilizatorului a unor mijloace de creare a unor interfee grafice utilizator cu flexibilitate ridicat.

Din punctul de vedere al arhitecturilor care pot fi utilizate, n tabelul 1-3 sunt prezentate dou astfel de arhitecturi, cu unele dintre caracteristicile lor: tabelul 1-3. Utilizarea sistemelor expert n conducerea proceselor industriale

Sistem expert

Executiv control proces

Bibliotec algoritmi numerici

Sistem cognitiv

Interfa operator

Inginer de cunotine

Echipament de dezvoltare

Interfa proces PROCES

Interfa utilizator UTILIZATOR

Baza de cunotine Motor de inferen

Interfa utilizator Baza de fapte

Operator de proces

sistemul expert poate funciona off-line sau semi on-line; biblioteca de algoritmi numerici are prioritate maxim; cele trei procese pot comunica ntre ele prin mecanisme de tip cutie potal; algoritmii trebuie asociai cu proceduri specifice de iniializare, execuie, oprire i modificare a parametrilor; sistemul trebuie s permit modificarea unor variabile globale ale algoritmilor numerici; comunicaia ntre echipamentul destinat consolei operatorului de proces i regulatoarele locale trebuie s asigure actualizarea permanent a bazei de cunotine a sistemului expert.

arhitectura ofer o suplee mrit, activitatea de achiziie a cunotinelor executndu-se pe echipamentul de dezvoltare, iar baza de cunotine rezultat fiind transferat pe maina int; funciile sunt mai simple; baza de cunotine se modific mai rar; posibilitate de verificare, adaptare i perfecionare a modelelor matematice;

La momentul actual exist o multitudine de sisteme expert n timp real dezvoltate pentru mediul industrial (i nu numai), unele dintre acestea fiind prezentate n paragrafele urmtoare. 41

Partea 1

Rete++
Rete++ este un sistem expert care suport att nlnuirea nainte ct i pe cea napoi. Prin intermediul lui, programatorul poate dezvolta ierarhii de obiecte pe care apoi le poate instania, manipula i accesa fie utiliznd C++, fie C-ul, fie o sintax standard bazat pe reguli. Modificarea datelor considerate de ctre reguli se realizeaz prin crearea unei instane C++ i realizarea de atribuiri i accesri ale membrilor instanei. Rete++ genereaz n mod automat taxonomii ale claselor. Componentele C++ ale aplicaiilor Rete++ utilizeaz clasele generate n mod direct sau le subclaseaz n funcie de necesiti. Motorul de inferen al Rete++ va considera n mod automat orice instan a unei clase generate (sau subclasele ei) ca ndeplinind condiiile regulilor. Tipurile de date C++ furnizate de Rete++ permit o reprezentare mai flexibil i un raionament automat fr necesitatea de a apela funcii externe. Rete++ monitorizeaz automat modificrile obiectelor C++, fr necesitatea scrierii de cod explicit pentru apelarea funciilor. Rete++ este furnizat ca o bibliotec C++ i, prin urmare el poate fi ncorporat ca o parte a aplicaiei C++ dezvoltate. De asemenea, Rete++ poate fi ncapsulat ntr-un mediu care conine i o component de grafic, module pentru raionamentul bazat pe cazuri, precum i pentru integrarea cu baze de date. In ciuda non-monotoniei lui, Rete++ integreaz o dependen de tip Truth Maintenance System n vederea asigurrii unui raionament complet. Agendele i seturile de reguli multiple suport o dezvoltare modular i sisteme expert cooperante. Rete++ mai dispune de un editor de reguli (pentru programarea bazat pe reguli), iar mediul su de dezvoltare monitorizeaz baza de cunotine, aceasta coninnd vederi multiple care sunt actualizate n timp real, permind astfel depanarea, navigarea, monitorizarea i setarea breakpoint-urilor, urmrirea regulilor, faptelor i a scopurilor.

RTworks
RTworks este o familie de module software independente proiectate pentru lucrul n timp real, acestea permind achiziia i monitorizarea inteligent n timp real, analiza datelor, distribuirea i afiarea mesajelor i a datelor. RTworks ofer un numr ridicat de strategii complexe de rezolvare a problemelor, incluznd sisteme bazate pe cunotine, raionamente temporale i statistice, precum i abilitatea de a distribui o aplicaie ntr-o reea eterogen. RTworks este nsoit de un motor rapid de inferen (RTie) care este utilizat pentru analiza datelor prin intermediul obiectelor, claselor, procedurilor i regulilor. Motorul de inferen poate furniza tendine, predicii i raionamente temporale relative la date care au o evoluie rapid n timp. RTworks mai dispune de un program de editare (DRAW) care permite i utilizatorilor care nu sunt programatori s construiasc diverse ecrane. De asemenea, acestora le sunt puse la dispoziie mai mult de 60 de formate pentru trasarea unor diverse tipuri de grafice (de tip 42

Sisteme expert

bar, plcint etc.). Obiectele grafice pot fi legate de variabile care controleaz dinamic atribute cum ar fi culoare, scal, rotaie, micare, animaie etc. RTworks ruleaz ntr-o arhitectur de tip client-server n care serverul Rtserver distribuie n mod inteligent mesajele i datele aplicaiei, n sensul c le va trimite numai proceselor client care au nevoie de acestea. Procesele client definite de utilizator se pot conecta la server, dar pot schimba mesaje i cu alte procese ale aplicaiei. Dintre posibilele aplicaii ale RTworks pot fi menionate cele din domeniile controlul proceselor, monitorizarea reelelor de calculatoare, comer i finane etc. Dintre companiile care utilizeaz acest sistem expert pot fi menionate Lockheed, NASA, Dow Chemical, PG&E (Pacific, Gas, and Electric), SWIFT, Mazda i NTT.

COMDALE/C, COMDALE/X, PROCESSVISION, COMDALE/C


COMDALE/C este un sistem expert de timp real, proiectat pentru monitorizarea i controlul proceselor industriale. COMDALE/C permite emiterea unor cereri pentru justificri, recomandri, concluzii i aciuni fr a ntrerupe procesul de luare a deciziilor. Are o arhitectur deschis cu posibiliti de raionament bazate pe timp. Poate lucra i n condiiile unei inconsistene n ceea ce privete cunotinele i datele. Dintre alte faciliti oferite mai pot fi menionate: configurare complet orientat pe obiecte, capabiliti de lucru n reea, procesarea alarmelor, realizarea de istorice i elaborarea de tendine, programarea evenimentelor, posibiliti de lucru cu baze de date de timp real, interfaarea cu PLG (programmable logic controlers) i alte dispozitive de intrare/ieire; COMDALE/X este un sistem expert consultativ care lucreaz off-line i care interogheaz utilizatorul n vederea obinerii informaiei necesare pentru luarea deciziilor. COMDALE/X este combinat cu COMDALE/C, rezultatul constituindu-se ntr-un mijloc de dezvoltare a sistemelor expert de timp real. COMDALE/X are capacitatea de a ncorpora documente hypertext i abiliti de raionare ale sistemului expert, cu scopul de a crea un aa numit hyper manual care furnizeaz informaii i emite direcii de lucru prin intermediul unei interfee specializate; Process Vision este un pachet software utilizat pentru monitorizarea i controlul proceselor n timp real. Bazat pe o arhitectur deschis i modular, Process Vision pune la dispoziia utilizatorului o interfa grafic care permite configurarea intuitiv a afirilor, implementarea unui sistem de alarmare evoluat, efectuarea validrii senzorilor, precum i elementele necesare de conectare a tuturor instrumentelor de proces ntr-un singur mediu.

CPRS

43

Partea 1

C-PRS (Procedural Reasoning System n C) este utilizat pentru reprezentarea i executarea procedurilor operative. El permite utilizatorului s exprime i s reprezinte secvene condiionale de operaii complexe i asigur execuia lor n timp real. CPRS este foarte util pentru controlul proceselor i supervizarea aplicaiilor. Tehnologia CPRS a fost aplicat n cazul unor procese cu constrngeri de timp real, cum ar fi cele din domenii cum ar fi explorarea spaial (NASA), diagnoza i supervizarea reelelor de telecomunicaii (Telecom Australia), controlul roboilor mobili (SRI, LAAS), controlul zborului i managementul traficului aerian (Grumman).

G2
Acest sistem expert de timp real dezvoltat de Gensym (www.gensym.com) este unul dintre cele mai utilizate sisteme expert de timp real din lume.. Acest sistem se bazeaz pe un management al operaiilor experilor, reuind s controleze complexitatea prin capturarea cunotinelor celor mai buni experi i combinarea acestora cu date achiziionate n timp real, informaii arhivate i chiar politici manageriale. Motoarele de inferen ale acestui sistem expert analizeaz n timp real toate aceste intrri n vederea elaborrii celei mai bune decizii, fie ca recomandri pentru operatori, fie ca aciuni automate. G2 este un mediu de dezvoltare a sistemelor expert, orientat pe obiecte i bazat pe reguli, care a fost dezvoltat n principal pentru mediul industrial, mediu n care operaiile sunt caracterizate de complexitate i dinamicitate. Sistemul monitorizeaz resursele utiliznd o baz de cunotine ce include multiple recomandri ce trebuie luate n calcul la apariia unor eventuale probleme. G2 este un mediu de dezvoltare incremental care poate monitoriza online mediul de lucru sau care poate fi utilizat pentru situaii de tip what-if ntr-un mediu simulat. Cunoaterea este achiziionat pe baza regulilor, procedurilor i funciilor care pot fi aplicate unei ntregi clase de obiecte. Cumulate i cu portabilitatea pe diverse platforme, execuia multitasking i concurent n timp real, integrarea cu sisteme de timp real i baze de date existente, precum i cu posibilitatea realizrii modificrilor pe baza limbajului natural structurat chiar de la distan, toate aceste caracteristici conduc la posibilitatea utilizrii G2 n diverse domenii, enumernd dintre acestea (pe lng cele menionate anterior) managementul calitii, optimizarea proceselor, managementul energiei i al mediului, managementul defectelor sau al situaiilor anormale dintr-un sistem. Dup cum se poate observa din figura 1-8, sistemul expert de timp real G2 poate fi utilizat pentru monitorizarea unor procese industriale complexe i asistarea identificrii. Aceste operaii se bazeaz pe combinarea regulilor i a unui expert sistem bazat pe model, a execuiei n timp real i a interfarii grafice, precum i pe monitorizarea sistemului si a capabilitilor acestuia. Creterea performanei n sistemele bazate pe G2 se datoreaz, n principal pe: transformarea datelor achiziionate n timp real n informaie util, acest lucru realizndu-se pe baza raionamentului i a analizei; 44

Sisteme expert

detectarea potenialelor probleme nainte ca acestea s aib un impact negativ asupra sistemului; determinarea cauzelor acestor probleme n vederea obinerii rapide a unei rezoluii; emiterea unor recomandri sau realizarea unor aciuni corectoare n vederea reabilitrii cu succes a sistemului; coordonarea activitilor i a fluxului de informaii n vederea optimizrii proceselor.
G2

USER PROGRAM INTERFACE

DATABASE INTERFACE

CONTROL SYSTEM INTERFACE

PLC INTERFACE

SIMULATION INTERFACE

USER PROGRAM

DATABASE

CONTROL SYSTEM

PLC

USER SIM ULATION

figura 1-8. Mediul de dezvoltare G2. Din punct de vedere software, platforma G2 include un set de componente software, acestea constituindu-se n nite pachete. Fiecare din aceste pachete include o serie de elemente prezentate n figura 1-9:

Motor de inferene G2 SERVER Telewindows Telewindows2 (pentru acces multi-user)

Asistent de diagnosticare G2 Drivere pentru ActiveX, Java i conectivitate la Internet i la surse de date on-line, cum ar fi baze de date sau sisteme de control

figura 1-9. Componente ale pachetelor de dezvoltare G2. Una dintre cele mai importante caracteristici ale lui G2, care i confer acestuia un anumit grad de unicitate, este abilitatea raionamentului bazat pe date achiziionate n timp real. Acest lucru face din G2 cea mai utilizat platform pentru sisteme expert de timp real. Pe lng aceast caracteristic, G2 ofer i o serie de alte faciliti n ceea ce privete raionamentul i productivitatea dezvoltrii, acestea detandu-l net de alte produse software existente pe pia. La o eventual comparaie cu acestea, pot fi luate n considerare urmtoarele atu-uri ale lui G2: 45

Partea 1

proiectarea i operarea n timp real, incluznd istorice i execuia concurent a liniilor multiple de raionament, foarte importante n luarea n timp real a deciziilor; achiziia cunotinelor pe baza unui limbaj natural structurat, cu punerea la dispoziie a unor formate de introducere a regulilor, procedurilor i expresiilor, precum i a unui verificator sintactic (cu consecine imediate asupra rapiditii de achiziie a cunotinelor); reguli generice, proceduri i formule care se aplic imediat asupra claselor de obiecte, cu efect direct asupra reducerii efortului de dezvoltare; motor de inferen nainte/napoi, programat sau startat de evenimente noi, utilizat pentru reprezentarea cunotinelor umane referitoare la procesele n timp real; modelarea i simularea dinamic, acestea permind efectuarea unor analize de tip what-if, a unor comparaii ntre condiiile predictate i cele actuale ale procesului, precum i efectuarea n timpul dezvoltrii a unor teste asupra logicii aplicaiei; dezvoltare orientat pe obiecte, incluznd motenirea multipl i nelegerea comportrii obiectelor conectate, n scopul obinerii rapide i realiste a modelelor proceselor; portabilitatea pe diverse platforme, incluznd Windows NT/2000, HP, SUN i IBM UNIX workstations i Linux; faciliti de inspecie, care permit examinarea rapid a strii cunotinelor i a aplicaiei; faciliti de securitate, care elimin posibilitatea utilizrii aplicaiei fr o autorizare pralabil; posibiliti de depanare rapid, incluznd i trasarea regulilor; punerea la dispoziie a unor instrumente grafice pentru trasarea i editarea grafurilor, cifrelor, butoanelor, precum i un editor de icon-uri; posibilitatea construirii unor aplicaii cooperante prin interconectarea mai multo aplicaii G2 sau prin intermediul protocolului TCP/IP; implementarea posibilitilor de acces de la distan, ntreinere de la distan i de efectuare a operaiilor multi-user (pe baza Telewindows i Telewindows2), precum i a unor abiliti de definire a unor nivele de securitate; prezena unor interfee de tip Data server care permit comunicaii performante cu sistemele sau bazele de date externe.

Aa cum s-a menionat anterior, G2 poate fi utilizat cu succes n mediul industrial, mai ales datorit faptului c majoritatea proceselor industriale au caracteristici particulare, cerine de sistem i de performane care nu pot fi obinute pe baza metodologiilor clasice de control. Prin urmare, strategiile avansate de control i pot aduce un aport deosebit la ndeplinirea condiiilor impuse prin proiectare. In cazul controlului proceselor este necesar, de obicei, implementarea unor sisteme complexe n care regulatoarele trebuie s satisfac cerine care s conduc la stabilitate, robustee etc. Obinerea unor performane mrite se bazeaz pe 46

Sisteme expert

metodologiile controlului avansat, trebuind rezolvate probleme legate de formularea problemei, validarea modelului, controlul n bucl nchis i supervizarea. Una din modalitile de abordare poate fi constituit de testarea n medii simulate, simularea putnd fi utilizat pentru validarea unei anumite abordri, nainte de a fi aplicat procesului n sine. O posibilitate de conectare a lui G2 cu lumea extern este prezentat n figura 1-10 [AMANAZ, 99]. G2 Interfaa utilizator Modelul programului principal Definire obiecte

Interfaa utilizator

Motor de inferen

Lumea extern

Distribuirea fluxului de informaii

Algoritmi

Subrutine

Instrumente matematice

Biblioteci

figura 1-10. Posibilitate de conectare a lui G2 cu lumea extern.

Sisteme expert utilizate n domeniul nuclear


Accidentele de avion i accidentele de la centralele nucleare arat c cu ct automatizarea este excesiv dezvoltat, rezultatul este scderea vigilenei operatorului uman. Aceasta demonstreaz c n timpul executrii unor procese, calculatorul trebuie utilizat mai mult ca un asociat. De aceea, n prezent, SE sunt ndreptate spre stocarea unui volum mare de cunotine, reguli i proceduri, scenarii de simulare simple i, mai ales, pe interactivitatea cu operatorul uman care trebuie s aib acces total la baza de date i la raionamentele experilor care conduc la rezolvarea problemei. Aceasta din cauz c raionamentele expert se bazeaz totdeauna pe proceduri standard, experimentate anterior [GUGA, 98]. Trebuie s se remarce faptul c fiina uman realizeaz raionamente mult mai complexe dect un SE, deoarece omul folosete grupe de reguli i proceduri euristice n paralel. Euristicile folosite de om nu pot fi modelate matematic dect parial. Dar, pe de alt parte, omul are limitele sale, de exemplu, n intervalele de timp n care activitatea mental este suprancrcat i n memoria de scurt durat omul este obligat s acumuleze multe fapte, el poate fi depit de evenimente i se poate s nu mai raioneze corect. Generarea energiei electrice pe baza exploatrii reactoarelor nucleare reprezint una dintre cele mai sensibile activiti din domeniul producerii energiei. Dei operatorii umani 47

Partea 1

sunt capabili de a face fa situaiilor de urgen, totui ei nu sunt infailibili, astfel c eventualele erori umane pot fi generatoare de accidente grave, cum a fost cazul accidentului de la Cernobl, petrecut n noaptea de 26 aprilie 1986. Acesta a fost cel mai grav accident nuclear petrecut n toate timpurile, n care nivelul sczut al securitii, proasta proiectare a testelor de siguran i standardele sczute ale construciei reactoarelor au contribuit, cumulat, la producerea dezastrului. Dezastrul a lsat urme adnci. Mii de kilometri ptrai de teren ai fermelor din Belarus, Ukraina i Rusia au suferit contaminaii majore, populaia fiind supus la un nivel nalt de radiaii. Europa a fost i ea afectat. In Marea Britanie 400.000 de acri au fost expui contaminrii i milioane de oi au fost victimele norilor radioactivi care au traversat cerul pn n 4 mai 1986. Ca urmare, 4,2 milioane de oi au fost sacrificate, iar unele zone sunt interzise culturilor agricole chiar i n ziua de astzi. Efectele accidentului de la Cernobl au pus pe gnduri pe majoritatea productorilor de energie, acest lucru avnd ca efect creterea interesului pentru sigurana reactoarelor nucleare. Prin urmare, s-a pus ntrebarea dac sistemele expert i inteligena artificial i pot aduce contribuia la creterea siguranei de exploatare a reactoarelor nucleare i la prevenirea apariiei accidentelor asemntoare celui de la Cernobl. La momentul actual exist dou tipuri de reactoare utilizate n industria nuclear: BWR (reactoare care nclzesc apa, Boiling Water Reactors) i PWR (reactoare care presurizeaz apa, Pressurized Water Reactors). Un reactor BWR nclzete apa rece pn la transformarea ei n vapori, acetia fiind utilizai pentru a pune n micare un turbo generator. Deoarece apa trece prin imediata vecintate a reactorului, aceasta este radioactiv i, ca urmare, i turbo generatorul poate fi clasificat ca element radioactiv, necesitnd s i se aplice proceduri de urgen i msuri de siguran mrite. Trebuie remarcat c monitorizarea reactorului presupune realizarea unor legturi ntre echipamente i senzori/traductoare plasai ntr-un mediu radioactiv. Un reactor PWR lucreaz, n principiu, n mod identic cu unul BWR, numai c apa de rcire nu este lsat s fiarb. Aceasta este adus la o temperatur foarte ridicat i circulat printr-un schimbtor de cldur, aburii rezultai n acesta acionnd turbo generatorul pentru producerea energiei electrice. Ca urmare, aburii provenii din schimbtorul de cldur nu vin n contact cu apa utilizat la rcirea reactorului i, n concluzie, nu sunt radioactivi. Referitor la construcia sistemelor expert pentru acest domeniu, literatura de specialitate pune n eviden cteva aspecte pe care viitoarele sisteme expert sau orice alt soft dezvoltat trebuie s le ia n considerare. Multe dintre componentele unei centrale nucleare sunt evaluate/clasificate funcie de indicii de siguran. Acest lucru nseamn c proiectantul aplicaiilor software trebuie s ia n considerare multiple scenarii de tipul what-if, pentru a se asigura c procedurile software sunt sigure din punctul de vedere al accidentelor sau al evenimentelor. Ca urmare, un sistem expert care monitorizeaz sau controleaz o component clasificat dup un indice de siguran va trebui el nsui clasificat dup un astfel de indice. Camerele de control ale unei centrale nucleare sunt foarte complexe, ele coninnd o multitudine de comutatoare, lumini de avertizare, elemente de msur, ferestre de nregistrare i alarmare, toate acestea trebuind s fie puse n legtur cu sistemul expert. Realizarea acestei 48

Sisteme expert

legturi este foarte important, mai ales dac se ine cont de numrul ridicat de senzori/traductoare, tipurile de semnale utilizate (unele trebuind convertite ntr-o form simbolic), precum i de tipurile de echipamente utilizate (clasificate dup indicii de siguran sau nu). Trebuie menionat c, dei o mare parte a informaiei utile se regsete la nivelul diagramelor, procedurilor i planurilor de funcionare, cea mai mare parte provine din expertiza inginerilor, tehnicienilor i operatorilor care lucreaz acolo. Ca urmare a cestui fapt, expertiza este considerat ca un capital intelectual care reprezint o parte important din preul producerii energiei electrice. Alte consideraii referitoare la sistemele expert din acest domeniu sunt: ele trebuie s fie capabile s gestioneze situaiile apariiei defectelor multiple; s fie capabile s modeleze fizic reactoarele nucleare; s conin informaii despre licenele i regulamentele de operare; s poat determina inconsistenele relative la citirile senzorilor/traductoarelor, n scopul prevenirii apariiei erorilor. Centralele nucleare se confrunt cu aceleai probleme de competitivitate cu care se confrunt i alte medii industriale, dar cu aspecte specifice: creterea puterii generate i a productivitii, concomitent cu asigurarea standardelor de siguran. Pentru a atinge aceste scopuri, compania EPRI a utilizeaz de muli ani tehnologia sistemelor expert, considernd c aceasta poate fi pus n slujba asigurrii condiiilor de siguran n centralele nucleare. Unul din sistemele expert utilizate este PLEXSYS (PLant EXpert SYStem) care permite operatorului s reprezinte centrala nuclear sub forma unor modele CAD. Baza de cunotine poate fi asociat cu aceste modele, astfel nct sistemul expert poate face o asociaie direct ntre procedurile de rezolvare a problemelor cu modificrile survenit n instalaie pe parcursul funcionrii. Un alt sistem dezvoltat de EPRI este EOPTS (The Emergency Operating Procedures Trackins Systems) care conine un motor de inferen i o schem de reprezentare a cunotinelor care permit interpretarea i compilarea procedurilor corespunztoare situaiilor de urgen. Rezultatul obinut este un modul software care coexist i conlucreaz cu sistemul de afiare a parametrilor de siguran ai centralei nucleare. Tot EPRI a dezvoltat o aplicaie denumit RISP (Refueling Insert Shuffle Planner) care determin traseele pe care le poate parcurge macaraua utilizat la rencrcarea reactoarelor nucleare. Dei aceast aplicaie nu a fost dezvoltat pentru gsirea soluiei optimale (din cauza consumului mare de timp), totui, pe baza utilizrii euristicii, permite gsirea unor soluii eficiente ale problemei.

OASYS (On-line Operator Aid System)


Acest sistem a fost dezvoltat ca un sistem de avertizare on-line destinat operatorilor din centralele nucleare. El se constituie ntr-un sistem integrat care conine patru module: modul pentru validarea semnalelor permite emiterea unor concluzii referitoare la corectitudinea citirilor variabilelor procesului; 49

Partea 1

modul pentru procesarea alarmelor ierarhizeaz alarmele n funcie de gradul lor de periculozitate; modul de diagnosticare anticipeaz problemele ce pot apare n funcionarea reactorului; modul de urmrire dinamic a procedurilor de urgen permite emiterea unor direcii de aciune n caz de urgen, incluznd proceduri de refacere a strii de normalitate i de restaurare a funciilor.

Atunci cnd centrala nuclear este ntr-o stare de funcionare normal, OASYS menine condiiile de funcionare, n vederea prentmpinrii apariiei situaiilor anormale. La apariia unei erori ce conduce la funcionarea anormal a instalaiei, OASYS nltur aceast situaie, prin intermediul procesrii alarmelor i diagnosticarea defectelor. Dac reactorul intr ntr-o stare anormal de funcionare, OASYS procedeaz la oprirea funcionrii reactorului, prin exploatarea procedurilor speciale de urgen. Un alt sistem expert destinat mediului nuclear este OPERATOR ADVISOR EXPERT SYSTEM. In cadrul acestuia, inginerii de cunotine au identificat patru aspecte ce trebuie luate n considerare n exploatarea centralelor nucleare: monitorizarea i interpretarea strii centralei nucleare; identificarea strilor normale i anormale de funcionare; diagnoza defectelor; predicia rspunsurilor instalaiei la derularea unor aciuni specifice de control, ca rspuns la detectarea unei stri anormale de funcionare. Dac, la un moment dat, este detectat o defeciune, atunci ea este evaluat de sistemul expert prin intermediul unei proceduri operative de urgen, a unei proceduri de tratare a unei stri anormale de funcionare sau a unei proceduri de rspuns la alarm. Sistemul va furniza paii care trebuie urmai pentru a remedia defeciunea, n concordan cu indicaiile din procedura de urgen. De asemenea, sistemul monitorizeaz aciunile operatorului, asigurndu-se c procedurile de urgen sunt urmate corect, prentmpinnd executarea unor pai greii. In Japonia, componentele centralelor nucleare sunt, n marea majoritate, controlate de calculator, Datorit gradului ridicat de automatizare, este foarte important ca operatorul s recepioneze mesaje corecte despre starea de funcionare a componentelor. In acest sens, sistemele expert sunt utilizate pentru asigurarea funcionrii sigure i corespunztoare a instalaiilor. Incorporarea lor n cadrul sistemelor de exploatare a instalaiilor nucleare nu s-a putut realiza cu ajutorul mijloacelor tradiionale. Astfel, au fost dezvoltate nite sisteme expert specifice domeniului, care au ca scop creterea siguranei de exploatare, mbuntirea

50

Sisteme expert

flexibilitii operaionale i a eficienei, precum i reducerea numrului de operaii ce trebuie efectuate de operatorul de proces. Sistemele expert dezvoltate utilizeaz o structur de reprezentare a cunotinelor special proiectat pentru rezolvarea acestor probleme, numite tabele ale instalaiei. O astfel de tabel const n descrierea condiiilor de funcionare n cazul intrrilor multiple i a unei singure ieiri precum i a unui numr mare de operaii ce trebuie efectuate n diverse situaii de funcionare a centralei nucleare. Toate acestea sunt corelate cu condiii temporale, precondiii sau condiii complete. Baza de cunotine a fost construit prin achiziia de la experii din diverse domenii, cum ar fi operatorii de proces, inginerii de test (care au efectuat teste la punerea n funciune a centralei), inginerii automatiti i inginerii responsabili cu analiza instalaiilor. De asemenea, cunotinele au fost rezultatul studierii manualelor instalaiilor componente, a datelor operaionale, a condiiilor de proiectare i a caracteristicilor dinamice ale instalaiei. Motorul de inferen permite nlnuirea att nainte ct i napoi i permite verificarea alarmelor i a limitelor de variaie a variabilelor pe baza unei tabele de monitorizare. Sistemul furnizeaz multiple elemente de ieire ctre operator, cum ar fi ecrane grafice explicative, mesaje vocale, lumini i imagini de avertizare etc.

1.7.

Generatoare de SE

Un generator de sisteme expert (GSE) reprezint un mediu de dezvoltare a SE. Astfel, un GSE este, de fapt, un program informatic complex, care integreaz ansamblul cunotinelor necesare elaborrii i consultrii sistemelor expert [AIRINE, 97], fiind privit ca un instrument de elaborare de tip cadru (shell). n literatura de specialitate se mai utilizeaz i denumirea de sisteme eseniale, tocmai pentru c un astfel de sistem conine toate componentele unui sistem expert, mai puin baza de cunotine. Dar, chiar dac un GSE nu are o baz de cunotine, el este capabil s o construiasc i s o exploateze. In plus, un GSE trebuie s conin motorul inferenial, precum i utilitare de elaborare i exploatare indispensabile. De fapt, n cadrul GSE sunt utilizate motoare de inferene standardizate, care devin, practic, autonome i care pot fi aplicate pentru prelucrarea cunotinelor din diverse domenii. Acest lucru este posibil datorit distinciei clare ntre cunotine i mecanismele de prelucrare a acestora din sistemele expert. Prima realizare a constituit-o n 1979 EMYCIN (Essential MYCIN), care se baza pe motorul de inferene MYCIN, la care s-au adugat utilitarele pentru constituirea bazei de cunotine. EMYCIN putea fi utilizat pentru construirea unor sisteme expert i din alte domenii dect domeniul medical n care se aplica MYCIN. Un generator de sisteme expert trebuie s ndeplineasc trei mari cerine [AIRINE, 97]: - achiziionarea cunotinelor experilor, care nu este posibil dect utiliznd reguli simple n raport cu formele cunoaterii folosite de experi; 51

Partea 1

exploatarea cunotinelor prin motorul de inferene care permite: evaluri, pronosticuri, decizii, precum i explicarea raionamentelor efectuate; meninerea i actualizarea cunotinelor, prin posibiliti de adugare, suprimare i modificare a regulilor.

Clasificarea generatoarelor de sisteme expert se realizeaz n funcie de logica utilizat de motorul de inferene. Astfel, cel mai simplu nivel este al motoarelor de inferen de ordinul 0, n care faptele sunt exprimate prin propoziii simple, booleene. Motoarele de inferene de ordinul 0+ permit lucrul cu variabile i, n plus, propoziiile pot fi mai complexe. O alt categorie este reprezentat de motoarele de inferene de ordinul 1 care permit scrierea unor reguli mult mai generale, prin utilizarea predicatelor de ordin 1. n decursul timpului, pentru dezvoltarea GSE s-au utilizat limbajele de programare specifice domeniului inteligenei artificiale, LISP, PROLOG, SMALLTALK, precum i extensiile acestora (INTERLISP, COMMON LISP, FRANZLISP, MACLISP, ZETALISP etc.), dar i C, FORTRAN, respectiv limbaje orientate pe obiect, cum ar fi C++. n continuare este prezentat, pe scurt, arhitectura general a unui GSE, care cuprinde (v. figura 1-11) [DAVIDE1, 97]:

52

Sisteme expert

Confidenialitatea accesului la baza de cunotine

DICIONAR fapte reguli frame obiecte

Compilator reguli

EDITOR

BAZA DE CUNOTINE MOTORUL DE ELABORARE ALTE MODULE SPECIALIZATE PE: calcule comentarii explicaii

MOTOR DE INFEREN

INTERFAA UTILIZATOR

TRASOR NVARE

INTERFA PROCEDEU

BAZE DE DATE SPREADSHEET

figura 1-11. Arhitectura specific unui GSE motorul de inferene este conectat la baza de cunotine din care i preia cunotinele pe care le prelucreaz i le rememoreaz tot la nivelul bazei de cunotine; baza de cunotine conine regulile i faptele necesare dezvoltrii unui SE; editorul asigur schimbul de cunotine ntre utilizator i SE prin intermediul unei interfee i a unui modul de dialog, ntr-o manier i structur apropiat limbajului natural. Practic, cu ajutorul lui se ncarc baza de cunotine i el este cel care asigur corespondena cunotinelor introduse de operator cu structurarea predefinit a cunotinelor. In plus, editorul realizeaz o compilare a regulilor, permind detectarea eventualelor erori de sintax n cadrul regulilor, i astfel, implicit, accelerarea activitii motorului inferenial; trasorul - urmrete irul raionamentelor care se efectueaz n motorul de inferene i, de asemenea, actualizeaz baza de fapte, pe msur ce faptele sunt dovedite; motorul de elaborare - are rolul de a coordona aciunea trasorului i a editorului, permind facilitarea lucrului pentru programator. Astfel, motorul de elaborare 53

Partea 1

ofer toate facilitile pentru efectuarea coreciilor i realizarea verificrii sintaxei, asigurnd calitatea bazei de reguli (din punct de vedere al completitudinii, coerenei i neredundanei); modulul de nvare, care presupune achiziia de noi reguli i, pe de alt parte, reperarea euristicilor performante (urmrindu-se optimizarea sau simplificarea numrului de reguli); interfee utilizator care permit comunicarea i dialogul eficient cu utilizatorul. Trebuie s se precizeze faptul c pot exista mai multe module de interfa utilizator; dicionarul, component auxiliar care conine toate informaiile particulare i specifice faptelor, regulilor, obiectelor etc. opional, module specializate n explicaii, comentarii i calcule.

Toate aceste componente sunt organizate i exploatabile ntr-o manier unitar n accepiunea unui mediu de elaborare al unui SE. Un sistem expert este consultat, n general, de dou categorii de utilizatori, i anume, utilizatorii obinuii (care caut doar un rspuns la o anumit problem) i utilizatorii experi (care, ca i utilizatorii obinuii pot cuta rspunsuri, dar, n plus, pot realiza i perfecionarea cunotinelor). Generatoarele de sisteme expert ofer instrumente de dialog pentru ambele categorii de utilizatori. Dintre GSE existente se pot aminti: Guru, Argument-Decidex, First-Class, Intelligence service, M1, Nexpert-Object, Crystal, Personal Consultant, VP EXPERT, H-EXPERT, XI PLUS, G2, CLIPS, JESS, CORVID (EXSYS) , K-Vision, Expert System Builder, ESIEWin, e2gLite etc. n continuare sunt prezentate cteva caracteristici ale unor generatoare de sisteme expert utilizate n decursul timpului [BENLEV, 93][DAVIDE2, 97][GUGA, 98][JACKSO, 99].

EMYCIN A fost realizat n 1979 la universitatea Stanford, California, utiliznd limbajul de programare INTERLISP. Modulul de achiziionare a cunotinelor a fost creat de Davis n 1977 i denumit TEIRESIAS. n continuare sunt prezentate cteva caracteristici ale sistemului EMYCIN: se permite explicarea de ctre sistemul expert a raionamentelor de tip DE CE i CUM; sunt explicate problemele i comentariile (CARE); este utilizat trasorul pentru mulimea de raionamente; se permit rspunsuri la ntrebarea DE CE pe nivele ierarhice n arborescene; regulilor li se pot ataa coeficieni de verosimilitate; sistemul lucreaz prin nlnuire napoi, fiind guvernat de obiective;
54

Sisteme expert

limbajul de comunicare este apropiat de cel natural. Iniial, sistemul a fost conceput pentru diagnoz i diagnostic n medicin, apoi a fost utilizat n diagnosticarea programelor (DART) i echipamentelor de calcul, n geologie (LITHO) etc.

KAS KAS (Knowledge Acquisition System) a fost realizat n 1979 la Universitatea Stanford, SUA. Pentru implementare s-a utilizat limbajul de programare INTERLISP. Pot fi amintite cteva caracteristici: regulile sunt clasice, de forma: DACA premiza ATUNCI concluzia. fiecare premis este o clauz; concluziei i se poate ataa un coeficient de suficien i unul de necesitate; concluzia este totdeauna un fapt; se explic raionamentele prin rspunsuri la ntrebri de tipul DE CE i CUM; se explic problemele prin comentarii CE; se utilizeaz trasorul pentru mulimea raionamentelor; editorul este performant; include o serie de utilitare pentru introducerea regulilor, faptelor, a coeficienilor de certitudine, suficien i necesitate.
Sistemul KAS poate fi adaptat n special la probleme de diagnostic.

GURU Modulele corespunztoare acestui GSE sunt dezvoltate utiliznd limbajul C. Acest GSE prezint o serie de caracteristici, dintre care vor fi amintite o parte: concluzia poate fi constituit din unul sau mai multe fapte sau aciuni externe foarte numeroase; se realizeaz compilarea bazei de reguli; pentru reguli se folosesc coeficieni de verosimilitate, iar pentru fapte coeficieni de certitudine, care vor fi utilizai n cadrul operaiei de selecie; motorul de inferene permite utilizarea mai multor tipuri de raionament (deductiv, regresiv, mixt), asigurnd o productivitate ridicat n efectuarea consultrilor i testrilor; operaia de selecie se bazeaz fie pe coeficieni de prioritate corespunztori regulilor, pe evaluarea premisei sau pe coeficieni de verosimilitate; conine un editor grafic i procesor de texte, precum i un generator de rapoarte; editoarele de reguli i de fapte, trasorul i editorul de rapoarte sunt performante i ofer numeroase faciliti performante de construire i actualizare rapid a bazei de

55

Partea 1

reguli, att n regim asistat, prin meniuri i submeniuri, ct i n regim direct, prin comenzi specifice; dispune de un ansamblu de peste 100 variabile de mediu prin care se specific anumite condiii de lucru; are un limbaj de programare i poate apela proceduri externe sau primi rezultate. n Frana foarte multe sisteme expert din domeniul financiar bancar folosesc GURU: CREDIT MANGER pentru analiza riscurilor clienilor, PREFACE EXPERT pentru crearea ntreprinderilor din sectorul financiar, MDRG EXPERT pentru managementul resurselor umane etc. [AIRINE, 97].

VP-EXPERT [Paperback Software International, 1987] Acest GSE prezint cteva caracteristici funcionale, dintre care: regulilor li se pot ataa coeficieni de verosimilitate i de certitudine; motorul de inferen funcioneaz dup strategia nlnuirii nainte i napoi cu revenire; mediu de dezvoltare foarte puternic, constnd din: editor integrat, mecanisme de generare automat de ntrebri, posibilitatea de a nregistra i afia grafic lanurile de raionamente utilizate n timpul unei consultri, posibilitatea de a explica raionamentele efectuate; poate comunica (n sensul schimbului de date) cu alte componente, cum sunt: sisteme de gestiune a bazelor de date (dBase, FOXBASE), procesoare de tabele (LOTUS123), fiiere ASCII i apeluri ctre comenzile DOS; posibilitatea de generare automat prin inducie a bazei de cunotine, plecnd de la o tabel care poate fi importat dintr-un fiier ASCII, dBase, LOTUS-123; permite manipularea cunotinelor inexacte prin atribuirea de coeficieni de corectitudine faptelor din baze de fapte; posibilitatea de a utiliza ntr-un raionament mai multe baze de cunotine. H-EXPERT Acest GSE este un mediu complet de dezvoltare a unor SE de dimensiuni mari i complexe. Este scris n ntregime n C i prezint urmtoarele caracteristici importante: utilizeaz conceptele reprezentrii orientate obiect prin folosirea noiunilor de clas, obiect, transfer succesoral multiplu (valori, atribute), restricii; motorul de inferene funcioneaz n logica predicatelor de ordin unu cu variabile locale relativ la reguli i unificarea acestora; baza de cunotine este organizat ierarhic, ceea ce permite o reprezentare mai natural a cunotinelor i optimizarea timpului de rspuns; accept integrarea unor biblioteci de programe ale utilizatorilor, ceea ce permite personalizarea aplicaiilor;
56

Sisteme expert

este utilizabil sub interfeele grafice MS/WINDOWS permind un dialog simplu i agreabil cu utilizatorii; baza de cunotine poate avea maximum 64.000 reguli; poate comunica cu baze de date, procesoare de tabele i programe scrise n limbajul C. Cunotinele pot fi structurate pe dou niveluri: global, sub forma unor pachete tematice coerente, numite lumi de cunotine, care sunt organizate ierarhic sub form de arbori, avnd astfel posibilitatea de a specifica cunotine globale (lumi ascendente) i locale (lumi descendente); particular, structurnd expertiza sub forma unei reele de clase i obiecte. Motorul de inferene este non-monoton (poate modifica coninutul bazei de cunotine) i folosete toate tipurile de raionament (nlnuire nainte, napoi i mixt). H-Expert este n acelai timp un mediu evoluat de dezvoltare SE (multi-fereastr, utilizarea mouse-ului) cuprinznd: editor specializat pentru crearea i actualizarea cunotinelor (clase, obiecte, atribute, reguli, lumi); compilator incremental pentru verificarea sintaxei i coerenei bazei de cunotine; reprezentarea grafic a cunotinelor, ceea ce permite o manipulare mai uoar a acestora; instrumente de ajutor pentru testarea pas cu pas a raionamentelor motorului de inferene asupra unei baze de cunotine, precum i pentru cutarea multicriterial; gestiunea unui jurnal care reine mai multe consultaii ale SE.

GenSAA - Software pentru crearea de sisteme expert de monitorizare n timp real Un dezvoltator de sisteme expert nu trebuie s scrie nici o linie de cod Goddard Space Flight Center, Greenbelt, Maryland
Acest software permite dezvoltarea rapid de sisteme expert care permit monitorizarea inteligent n timp real i detecia defectelor n sisteme hardware sau software. Domeniul int iniial al acestui software a fost cel spaial. Un sistem expert construit pe baza GenSAA era un sistem bazat pe reguli care asist analitii de zbor pe durata operaiilor realizate la centrul de control al zborurilor spaiale; sistemul expert primete date de la modulul de zbor i de sistemele de la sol, realizeaz inferene i emite concluzii referitoare la datele recepionate (att n mod text ct i n mod grafic). Dezvoltrile ulterioare ale GenSAA au permis utilizarea lui i n alte domenii, dintre acestea putnd fi menionate controlul proceselor industriale, monitorizarea reelelor, monitorizarea i controlul traficului auto etc.

GenSAA este utilizat ca o alternativ la generatoarele de sisteme expert comerciale care, de obicei, necesit multiple cunotine de programare, n dauna celor referitoare la zborurile spaiale (la momentul iniial). Efortul depus prin activitatea de programare reprezenta un impediment major n calea dezvoltrii rapide a unui sistemexpert. GenSAA a depit acest impediment, permind dezvoltarea grafic a unui sistem expert. 57

Partea 1

GenSAA conine un mediu de lucru (figura xx) care este un set de subprograme utilitare i care genereaz o interfa grafic utilizator care permite dezvoltarea unui sistem expert prin utilizarea unor tehnici de tipul poin-and-click sau drag-and-drop, nefiind necesar scrierea de cod. De asemenea, mai conine un mediu de execuie (subprogram de execuie). Dezvoltatorul sistemului expert utilizeaz spaiul de lucru pentru construcia interfeei grafice a sistemului expert, definirea regulilor de detectare a defectelor ale acestuia, selectarea datelor etc. Mediul de lucru al GenSAA (figura 1-12) pune la dispoziie urmtoarele subprograme utilitare:

Spaiul de lucru Manager de date Constructor de reguli Constructor de interfee grafice

Specificaii de date

Baza de reguli

Specificaii utilizator

Componente executabile Software sistem expert

figura 1-12. Generarea unui sistem expert GenSAA. manager de date acest program este utilizat pentru definirea a patru tipuri de variabile cu care poate lucra sistemul expert construit. Toate variabilele care provin din surse externe, din schimbul cu alte sisteme expert GenSAA sau care sunt asociate cu obiecte grafice GenSAA trebuie specificate prin intermediul acestui program; constructor de reguli acest program este utilizat pentru crearea bazei de reguli a sistemului expert construit. Baza de reguli de o colecie de reguli de tipul if-then care poate, pe baza inferenei, s conduc la noi fapte bazate pe faptele curente. O regul conine una sau mai multe condiii i una sau mai multe aciuni. Aceste reguli sunt obiectul de lucru al unui motor de inferene, acesta gestionnd ntregul lor ansamblu pe durata execuiei; constructorul de interfee grafice este un instrument puternic ce permite construcia interfeelor grafice utilizator (GUI). Interfaa grafic este constituit dintr-un spaiu de lucru, ferestre i obiecte grafice. Aceste elemente pot fi create i particularizate dinamic, fr programare, pe baza mecanismelor acestui constructor.

58

Sisteme expert

Fiierele create n mediul de lucru sunt utilizate de mediul de execuie la definirea sistemului expert executabil. Prin urmare, mediul de execuie va furniza mediul operaional al sistemului expert. Componentele acestuia rmn neschimbate pe durata execuiei, ele controlnd operaiile sistemului expert dezvoltat pe durata execuiei.

Concluzie
Extinderea considerabil a utilizrii sistemelor expert se datoreaz i dezvoltrii generatoarelor de sisteme expert, care reprezint sistemele expert vide, aplicabile n diferite domenii de activitate. Utilizarea generatoarelor de sisteme expert conduce la mutaii eseniale n domeniu: sfera utilizatorilor de sisteme expert se extinde, accesul la construirea bazei de cunotine nu mai este rezervat exclusiv specialitilor.

1.8.

Sisteme interactive de asistare a deciziei

1.8.1. Considerente generale


SE pot fi folosite de sine stttor sau pot fi integrate n alte sisteme informatice n funcie de necesiti. O clas special de sisteme informatice, n care SE pot fi integrate mai uor din punct de vedere funcional sunt sistemele interactive pentru asistarea deciziilor (SIAD). De fapt, la origine, sistemele expert au fost prezentate ca sisteme de asistare a deciziei (MYCIN i PROSPECTOR). Extinderea lor s-a datorat att progreselor realizate n tehnologiile informatice, ct i n tehnicile de modelare din anii 70 i 80. Un SIAD (Systme Interactif dAide la Dcision) sau sistem suport pentru decizii (decision support systems - DSS) este un sistem informatic care utilizeaz cunotinele dintr-un anumit domeniu de aplicaie pentru a ajuta decidentul n rezolvarea unor probleme slab structurate (greu de algoritmizat i programat). n figura 1-13 este prezentat schema procesului de luare a deciziei. Asistarea deciziei este o problem complicat, cele trei nivele decizionale, decizia n condiii de certitudine, incertitudine i risc, avnd mecanisme practice de rezolvare dependente de decident. Trebuie precizat faptul c nici un sistem decizional nu poate simula comportamentul real al unui decident n stare de incertitudine. n figura 1-14 este prezentat structura unui sistem interactiv de asistare a deciziei, conform [ZAHNS, 93].

59

Partea 1

Realitate

Examinare

Raionare

Validare model

Proiectare

Verificarea i testarea soluiei propuse

Selecie soluie

Succes

Implementarea soluiei Eec

figura 1-13. Implementarea procesului de luare a deciziilor Biblioteca de modele poate conine, de exemplu, modele de cunotine, modele de date pentru baza de date, modele de cooperare om-main a bazei de obiecte multi-media etc. Biblioteca de reprezentri grafice ofer, de exemplu, editoare grafice, foi de calcul etc. Interfaa utilizator poate fi o interfa inteligent, asigurnd o interactivitate ridicat. Trebuie remarcat faptul c decidentul utilizeaz pentru fiecare decizie informaii specifice, precum i o cunoatere general (formaie, experiena acumulat, strategia global aleas). Un astfel de sistem suport pentru decizii, n cadrul cruia sunt legate ntre ele modele cu structuri foarte diferite, devine pluristructural. Datorit componentei sistem expert, sistemul suport pentru decizii se mai numete i sistemul suport pentru decizii inteligente. Un astfel de sistem este bazat pe principiul cutrii euristice, cel mai adesea cu mai multe niveluri. La baza majoritii sistemelor suport pentru decizii au stat modelele matematice i ale cercetrii operaionale care se bazeaz pe urmtoarele ipoteze [AIRINE, 97]: - toate aciunile posibile sunt identificate naintea prelucrrilor; - execut o preordonare global asupra aciunilor reprezentate printr-o funcie de utilitate explicit la care se poate da o exprimare matematic; - intrrile sunt numerice i conin orice informaie util; cea mai bun decizie este cea care maximizeaz funcia de utilitate.

60

Sisteme expert

Interfaa utilizator

UTILIZATOR

Biblioteca de modele

Biblioteca de reprezentri grafice

Subsistemul de modelare Subsistemul de prezentare a informaiilor

Subsistemul statistic, previziune, optimizare Sistem de gestiune a bazelor de date

SISTEM EXPERT

Baze de date

Fiiere externe

figura 1-14. Sistem interactiv de asistare a deciziei Se pot distinge dou tipuri de SIAD [BENLEV, 93], i anume: cele care includ statistici ale cercetrii operaionale i au la baz algoritmi de optimizare, calcule numerice, i cele care sunt ndreptate exclusiv spre gestiunea informaiei (baze de date, gestiunea fiierelor i fluxuri de informaii n ntreprindere). O caracteristic comun a tuturor acestor sisteme o constituie interactivitatea, putndu-se remarca faptul c, n parte, sau n totalitate, controlul cutrii este lsat la latitudinea utilizatorului, respectiv a decidentului. Conform [ZAHNS, 93], principalele caracteristici ale unui SIAD sunt: - n cadrul unui SIAD, experiena, intuiia, judecile i preferinele decidentului sunt eseniale; - interactivitate de nivel nalt; - cutarea soluiilor necesit manipulri de date, cutare de informaii, modelare, calcule; - procedurile care urmeaz s se execute la un moment dat nu sunt cunoscute a priori, acestea depinznd de date sau de rezultatele intermediare; - criteriile de decizie sunt numeroase, conflictuale i depind adesea de utilizatori;

61

Partea 1

atunci cnd utilizatorul nu este de acord cu sistemul, el pstreaz totui un minim de sfaturi n luarea deciziei; datele nu sunt ntotdeauna cunoscute dinainte; timpul de rspuns pentru obinerea unei soluii satisfctoare este limitat, astfel nct s se poat obine informaiile necesare n timp util.

Inteligena artificial permite s se introduc cunotine calitative, aproximative i incerte n sistemele de asistare a deciziei; de asemenea, permite dobndirea i reproducerea raionamentelor certe ale decidentului, dar construirea unui model sau a unei metodologii complete de luare a deciziei ridic nc multe probleme. n continuare sunt prezentate cteva avantaje i dezavanteje ale sistemelor interactive de asistare a deciziei. Avantajele sistemelor interactive de asistare a deciziei Fiecare tip de sistem interactiv de asistare a deciziei are rolul de a asista managerii s rspund la ntrebri care apar ca urmare a necesitii lurii unei decizii. Intrebrile pot fi complexe sau simple. De exemplu, un manager dorete s afle, prin interogarea unei baze de date, care este volumul vnzrilor pentru fiecare din ultimii cinci ani, care produs nu s-a aflat n stoc mai mult de cinci zile ntr-o lun sau care client a comandat cele mai multe produse. De asemenea, ar putea dori s afle care sunt estimrile profitului, sau care salariat i-a ndeplinit planul de vnzri. Un sistem interactiv de asistare a deciziei specific poate suporta doar luarea unor decizii operaionale sau poate contribui la luarea unor decizii strategice, pentru perioade lungi de timp. Un SIAD are definit un anumit scop i, ca urmare, elementele stocate n bazele de date, variabilele definite, seriile de date disponibile, precum i instrumentele care sunt utilizate pentru stocarea i analizarea date sunt elementele care determin ntrebrile care pot fi puse i ct de relevant este informaia care a fost creat. Proiectarea i capabilitile SIAD-ului influeneaz procesul de luare a deciziilor. Dezavantajele sistemelor interactive de asistare a deciziei Principalul dezavantaj al unui SIAD este acela c ceea ce se dorete nu este ntotdeauna ceea ce este nevoie, iar ceea ce este nevoie nu este ntotdeauna obinut. Este foarte uor ca la construirea unui SIAD s se promit mult i este uor ca managerii s dezvolte estimri nerealiste pentru un SIAD nou. Chiar i cel mai evoluat SIAD nu poate elimina deciziile proaste. Unii manageri pot pune multiple ntrebri greite i pot trage concluzii greite pe baza informaiilor recepionate ca rspuns. Ca urmare, datorit scopului i costurilor de dezvoltare, un SIAD trebuie s se bucure de credibilitate din partea utilizatorului. Erorile produse de decizii greite pot conduce la pagube, acestea amplificndu-se dac deciziile greite se succed. 62

Sisteme expert

1.8.2. Aplicaii
Planificarea i diagnosticul financiar, consultana financiar, evaluarea activelor financiare, acordarea de credite etc. reprezint unele dintre cele mai cunoscute domenii de aplicaii pentru SIAD. Simularea consecinelor deciziilor, elaborarea diagnosticului i a deciziilor constituie instrumente de lucru puse la dispoziia managerilor financiar. De asemenea, sistemele suport pentru decizii stau la baza realizrii sistemelor de simulare constructive, virtuale sau reale, adic a acelor sisteme care reproduc cmpul de lupt sub forma jocurilor de rzboi [SAFTES, xx] (prin joc de rzboi se nelege o simulare, utiliznd sau nu calculatorul, implicnd cel puin dou fore opuse ntr-o operaie militar). Aceste sisteme sunt folosite n armatele occidentale, ca instrumente n pregtirea comandanilor i statelor majore de la nivel companie pn la nivel zona de operaii. Se folosesc diferite date, reguli specifice i proceduri care determin ca participanii s interacioneze ntr-o situaie real sau simulat. Exemple de sisteme de simulare constructiv utilizate n procesul de pregtire al armatelor occidentale: - BBGT ( Brigade and Battle Group Trainer ) folosit n armata britanic pentru instruirea comandanilor i statelor majore la nivel B. si Bg.; - CLAWS Integrated Land Maritime Airgame, utilizat pentru desfurarea jocurilor de rzboi la Colegiul de Razboi Interarme al Marii Britanii; - BBS (Brigade Battle Simulation) folosit n armata Statelor Unite pentru antrenarea tuturor compartimentelor statelor majore n desfurarea de aplicaii de comandament i exerciii de stat major la nivel B - Bg; - TACSIM (Tactical Simulation) - folosit in armata Statelor Unite de ctre compartimentele de informaii ale statelor majore de la B la nivel teatru de operaii. Un alt domeniu n care se utilizeaz sistemele suport pentru decizie este cel medical. Astfel, se pot aminti cteva astfel de sisteme: Dxplain (sistem utilizat la Massachusetts General Hospital).

1.8.3. Sisteme interactive de asistare a deciziei n timp real


O arie de aplicaii cu perspective deosebite este oferit de SE destinate ca suport pentru decizie n conducerea n timp real a proceselor, cu aplicabilitate i n conducerea proceselor industriale. Sistemele suport pentru decizii au ca obiectiv sprijinirea decidentului pentru depirea limitelor actuale. Astfel, decidenii au la dispoziie mai multe informaii i mai multe modele, putnd determina rapid consecinele. Deci, sistemele suport pentru decizii asigur depirea restriciilor de timp i mijloace.

63

Partea 1

Scopul tehnologiei informaiei a fost ntotdeauna ca prin utilizarea siliconului i a programelor software s imite creierul uman. Nicieri acest lucru nu a fost mai adecvat ca n cazul domeniului asistrii deciziilor, care implic raionament cognitiv sau nvarea din experiena trecut cu scopul de a mbunti procesele curente sau viitoare. Din pcate, singurul mare dezavantaj al sistemelor interactive de asistare a deciziilor iniiale era imposibilitatea lor de a lucra n timp real. Atunci cnd se confrunt cu o dilem, o persoan este capabil ca, pe baza gndirii cognitive i intuitive, s-i pun n eviden capabilitatea de a lua decizii. Prin contrast, puternica legtur a sistemelor computerizate de asistare a deciziilor cu paradigmele tradiionale, nu permite ca astfel de aciuni s se deruleze foarte rapid. Organizaiile care activeaz n prezent, forate s lucreze la viteze dictate de Internet, trebuie s reacioneze la aciunile clienilor i ale furnizorilor, chiar n momentul interaciunii. Acest lucru presupune necesitatea unui alt model de luare a deciziilor. In loc de a trage nite concluzii pe baza unui raport i de a le lua n considerare n zilele urmtoare, vitezele actuale impun prelucrarea imediat a datelor i trecerea rapid la aciune. In ultima perioad, a nceput o adevrat curs avnd ca participani dezvoltatori de sisteme interactive de asistare a deciziei care lucreaz n timp real. Acest lucru vine i ca urmare a creterii importanei unor domenii noi de aciune, cum ar fi cel denumit data warehouse, care presupune existena unor sisteme de asistare a deciziilor caracterizate prin integrarea datelor din mai multe sisteme tranzacionale i prezentarea lor ntr-o form omogen. Dintre cei care ocup primele locuri n cursa menionat pot fi menionai Oracle i i2 Tehnologies, considerai pionierii domeniului sistemelor de asistare a deciziilor n timp real, a infrastructurilor i soluiilor problemelor decizionale cu constrngeri temporale. Aa numiii vnztori inteligeni sunt i ei n cutare de parteneri care activeaz n domeniul menionat. De ce acetia s-au orientat spre astfel de sisteme? Rspunsul este simplu: tendina actual este de a construi motoare de asistare a deciziilor care pun n aplicare rezultate din teoria constrngerilor temporale i care permit luarea celor mai bune decizii, acestea contribuind decisiv la ndeplinirea prioritilor organizaiei. Un astfel de model dinamic permite furnizarea automat ctre factorii executivi a unor analize a deciziilor (caracterizate de consisten), concomitent cu o gam de opiuni decizionale, n locul unor teancuri de rapoarte tiprite pe hrtie (caracterizate de o agregare a datelor). Dei rezultate ale implementrii sistemelor de asistare a deciziilor n timp real se regsesc n domenii cum ar fi activitatea lanurilor de furnizori sau aprovizionarea electronic, totui scopurile unor astfel de proiecte nu sunt foarte uor de atins. Acest lucru se datoreaz faptului c, pe msur ce seturile de date devin tot mai numeroase i mai complexe, costurile cresc vertiginos. Ca urmare, nu toate aplicaiile vor fi capabile s rezolve problema lurii deciziilor n timp real. Pentru cei care vor reui implementarea unor astfel de sisteme, problema acut pe care trebuie s o rezolve este puternica integrare cu instrumente care s permit furnizarea n timp real a datelor (cum ar fi sistemele de brokeraj a mesajelor). 64

Sisteme expert

Pe lng domeniile menionate anterior, sistemele interactive de asistare a deciziilor se regsesc i n domeniul conducerii i coordonrii proceselor industriale. Dac planificarea este privit ca un proces de luare a deciziilor, procesele de control pot fi considerate o extensie natural i ca un element distinct al proceselor de decizie. Astfel, pe lng fazele clasice ale procesului de rezolvare, sistemele interactive de asistare a deciziilor trebuie s includ i funcii legate de comunicare, urmrire, monitorizare i alarmare. In ceea ce privete luarea deciziilor n aplicaiile de control (supervizare, coordonare i conducerea operativ a proceselor de producie) pot fi puse n eviden o serie de aspecte [FILBAR, 99]: datorit mediului cu dinamic semnificativ, trebuie efectuat o monitorizare continu; orizonturile de timp pe care sunt luate deciziile sunt relativ limitate, acest proces fiind unul repetitiv; sunt prezente constrngeri de timp; poate avea efecte pe termen lung, care, n situaia n care decizia luat a fost eronat, pot fi catastrofale. Situaiile de luare a deciziilor care pot apare n domeniul proceselor industriale pot fi sau nu strict de timp real. Dac, de exemplu [FILBAR, 99], din cauza unei avarii neateptate, o instalaie tehnologic trebuie oprit, programul de producie pentru linia din care face parte instalaia devine neoperant. Adaptarea programului de producie la noua situaie presupune adoptarea unor msuri compensatorii care s gestioneze criza aprut. Dac aceast situaie a mai fost ntlnit i n trecut, atunci rezolvarea ei poate fi fcut pe baza experienei anterioare, care a fost memorat n sistemul informatic. Operatorul uman va fi cel care va accepta vechea rezolvare. Din punctul de vedere al tipurilor de situaii de decizie care pot apare n mediul industrial, poate fi fcut urmtoarea clasificare [SPIESP, 97]: normale, n strns legtur cu execuia sarcinilor curente ale unitii; anormale previzibile, atunci cnd n timpul unor situaii normale apar evenimente cunoscute; de pornire, ntlnite mai ales n situaiile n care se pornete o unitate funcional care trebuie s coopereze cu alte uniti; anormale i imprevizibile, cnd evenimentele ce apar sunt noi sau foarte rare. In primele dou cazuri procesele de luare a deciziilor sunt de tip reactiv, ca urmare a apariiei unor evenimente normale i planificate, respectiv anormale, dar pentru care exist acumulat o experien anterioar suficient pentru rezolvarea problemelor ce apar. In ultimele dou cazuri, decizia se bazeaz pe o experien incomplet, rezolvarea problemelor bazndu-se foarte mult pe factorul uman (inventivitate, capacitate de sintez etc.). Un aspect important n luarea deciziilor atunci cnd constrngerile de timp sunt foarte importante, o caracteristic important a procesului de luare a deciziilor este flexibilitatea. Aceasta este utilizat pentru stimularea i realizarea unor schimbri n structura produselor i a proceselor, n modul de organizare i n capacitatea de decizie a operatorilor i managerilor, bazate pe anticiparea evoluiilor mediului. 65

Partea 1

Aplicaii ale sistemelor interactive de asistare a deciziei n timp real pot fi ntlnite n urmtoarele domenii: managementul traficului aerian, monitorizarea bolnavilor din spitale, conducerea proceselor industriale etc.

Exemple
Ca exemple de sisteme interactive de asistare a deciziilor care lucreaz n timp real pot fi menionate cele construite pe baza generatorului DISPECER, care permit asistarea i optimizarea proceselor de decizie privind coordonarea proceselor unitare de producie n cadrul unor uniti industriale de prelucrri primare (fabrici de celuloz i hrtie, rafinrii, combinate pentru ngrminte chimice), sau uniti de prelucrare i acumulare (gestionarea resurselor de ap, trafic rutier urban etc.) Alte exemple de sisteme interactive de asistare n timp real sunt:

Caliper Este utilizat pentru a dezvolta sisteme de asistare a decizie care exploateaz tehnologia sistemelor informaiomale geografice, cercetarea operaional, metodele statistice i instrumente software specializate. Sistemele dezvoltate au fost aplicate cu succes n modelarea extinderii afacerilor, planificarea vnzrilor, precum i n dezvoltarea i exploatarea logistic. Dintre aplicaiile lui pot fi menionate: sistem de informare a clienilor este utilizat de operatorii telefonici pentru a furniza informaii potenialilor clieni asupra modului n care pot exploata sistemul de transport public ntr-o anumit zon. Sistemul este capabil de a furniza mai multe alternative, n funcie de preferinele clientului/turistului i poate rspunde n timp real la schimbrile de trafic ce au loc n zona vizat; sistem logistic de planificare a traseelor scopul acestui sistem este de a reduce costurile legate de livrarea produselor, de a elimina efortul legat de nregistrarea traseelor i ncrcarea operatorului; problema care trebuie rezolvat n acest caz este foarte complex, deoarece presupune locaii de distribuie neuniform distribuite, timpi/ore de livrare impui/impuse i ferestre de timp alocate transportului de ctre furnizorii de astfel de servicii. O inovaie adus de acest sistem const n utilizarea unei estimri a timpilor de mers, deosebit de utili n stabilirea parcursurilor. Acest lucru se traduce ntr-o utilizarea mult mai eficient att a vehiculelor ct i a personalului; sistem pentru managementul traficului armatei USA este un sistem de analiz strategic a transportului de trupe i armament. Se bazeaz pe analiza relaiilor dintre infrastructura de transport, fluxurile de echipament, personal i furnizori; sistem de planificare dedicat serviciilor potale este utilizat n optimizarea reelelor de livrare a coletelor potale. Acest sistem integrat de asistare a deciziei a fost integrat cu un GIS (Geograpic Information System) i permite exploatarea eficient a unor
66

Sisteme expert

reele de transport pe baza cerinelor de spaiu, a facilitilor oferite de locaiile potale (loc de depozitare, acces etc.), precum i a exploatrii unor modele de ateptare; sistem de asistare a deciziei pentru paza de coast estimeaz n timp real necesarul de echipamente i personal, pentru situaiile de criz aprute n navigaie. Pune accent pe constrngeri legate de timpii de navigare, tipul, capacitatea, performanele i disponibilitatea vaselor care pot participa la aciunile de salvare. Permite trasarea rutelor de urmat de ctre vasele de salvare, mai ales pentru zonele n care navigarea este ngreunat de obstacole.

RTXPS
Este un mediu de tip sistem expert, destinat aplicaiilor de asistare interactiv n timp real a deciziilor, de planificare a sarcinilor de comand i control n domenii cum ar fi managementul situaiilor de urgen aprute n medii caracterizate de hazard, controlul complex al operaiilor i aplicaii de antrenare. RTXPS poate fi configurat astfel nct s implementeze orice tip de chestionar sau manual de operare (bazat pe proceduri sau protocoale). Bazat pe funcii dezvoltate n conformitate cu tehnologiile inteligenei artificiale, acest mediu poate trata situaiile sensibile aprute n medii de tip client-server, oferind un suport extins i asisten operatorilor, n condiiile pstrrii calitii controlului. Exploatarea eficient a unor timere precum i a cererilor de aciune furnizeaz un suport viabil pentru controlul n timp real. RTXPS este bazat pe un motor de inferen cu nlnuire nainte, care proceseaz regulile de producie, exploatnd dinamic baza de cunotine i determinnd declanarea aciunilor. Aciunile sunt comunicate operatorului n format hypertext i includ, sau pot declana automat, execuia unor funcii pentru achiziia i afiarea datelor, funcionarea unui sistem expert, simularea i optimizarea unor modele, precum i lansarea unor aplicaii GIS. Alte faciliti oferite de acest sistem sunt punerea la dispoziia utilizatorului a unei biblioteci ce include funcii pentru comunicarea extern, logare, generare de rapoarte, compilare automat i trimitere de e-mail-uri i fax-uri, generare automat i actualizare de pagini web etc. RTXPS poate fi legat la un sistem de monitorizare i de achiziie de date on-line, cu funcionare n timp real. In acest mod se realizeaz o bucl de reacie care poate fi utilizat att pentru actualizarea dinamic a contextului problemei, ct i pentru recalibrarea modelelor dinamice. RTXPS utilizeaz o sintax de limbaj natural simpl pentru regulile, aciunile i descriptorii si. In plus, pe baza unui limbaj intuitiv SCRIPT pot fi dezvoltate eficient baze de cunotine pentru noi aplicaii. Dintre aplicaiile dezvoltate pe baza RTXPS pot fi menionate: sistem de asistare a deciziei n managementul riscului tehnologic destinat estimrii riscurilor, gestionrii acestora i antrenrii operatorilor pentru evitarea, anticiparea i rezolvarea situaiilor de risc; sistem de gestiune a riscului accidentelor chimice; 67

Partea 1

sistem de asistare a deciziilor n domeniul transportului de materiale periculoase este corelat cu un GIS, vehiculele care transport astfel de materiale fiind dotate cu echipamente care transmit permanent (on-line) informaii despre starea drumului, starea vremii, numrul participanilor la trafic de pe artera pe care circul, eventualele defeciuni tehnice pe care le are din cauza drumului etc. Analizate, toate aceste elemente permit furnizarea unei rute pentru vehiculul respectiv, dar i obinerea unor rute adecvate pentru alte transporturi.

Sistemele suport pentru decizii trebuie s fie filtre inteligente, prin care se selecteaz, se interpreteaz i se condenseaz informaia pentru a pregti decizia, decizia final fiind luat de om (spre deosebire de SE, care asigur i finalitatea lurii deciziei). SIAD au avut o contribuie important n ameliorarea profesionalismului decidenilor, oferind un suport pentru ca deciziile s poat fi luate pe baza unor fundamente tiinifice, diminundu-se astfel riscul eecurilor. Sistemele de asistare a deciziei n timp real sunt mai complexe dect sistemele convenionale, trebuind s ndeplineasc o serie de cerine, printre care se pot aminti: - trebuie s garanteze oferirea unui rspuns n timpul specificat; - au un ciclu de luare a deciziei mai scurt; - permit luarea deciziei pe mai multe nivele; - trebuie s permit combinarea unor tehnologii diferite; - realizeaz planificarea execuiei astfel nct s fie respectate constrngerile de timp.

1.9.

Proiectarea i realizarea sistemelor expert

Conceperea i realizarea unui sistem expert, necesit n principal dou categorii de personal: - experii umani, a cror experien urmeaz a fi reprezentat prin cunotine, ce vor fi transmise ctre utilizatori prin intermediul SE; - cogniticienii (inginerii de cunotine), care asigur transpunerea cunotinelor i strategiilor de raionament ale expertului uman n structurile specifice metodei de reprezentare a cunotinelor (reguli de producie, reprezentri succesorale etc.) i a instrumentelor informatice utilizate (programare logic, generator de SE). Alturi de acetia, se vor regsi i participanii tradiionali la o asemenea activitate: - utilizatorii finali, care vor exploata sistemul valorificnd cunotinele incorporate n el; - proiectanii i programatorii, care vor asigura rezolvarea problemelor informatice implicate de realizarea SE (conceperea i programarea comunicaiei cu utilizatorul, transferul de informaii etc.). 68

Sisteme expert

n figura 1-15 sunt prezentate categoriile de personal care sunt implicate n dezvoltarea, utilizarea i ntreinerea unui sistem expert, precum i relaiile dintre acetia.
Cunoatere documentat

Dezvoltator de instrumente
Dezvolt

Expert
Achiziioneaz cunotine

Colectiv suplimentar
Testeaz Sarcini suplimentare

Instrumente, limbaje
Furnizeaz

Utilizeaz

Inginer de cunotine

Dezvolt

Sistem expert
Utilizeaz

Utilizeaz

Coopereaz

Dezvolt

Vnztor

Inginer de sistem

Utilizator final

figura 1-15. Participanii la construcia unui sistem expert Calitatea i utilitatea unui SE depind, n mod esenial, de cunotinele pe care le ncorporeaz i utilizeaz. Acesta constituie modul pentru care, efortul principal n realizarea unui SE este ndreptat spre cunotine, avnd n vedere identificarea structurilor generale corespunztoare domeniului de expertiz i continund cu achiziia, reprezentarea, validarea i utilizarea acestora. Conform acestor caracteristici definitorii, n [ZAHNS, 93] se consider c ciclul de via al unui SE (figura 1-16) se compune din urmtoarele etape: analiza preliminar; modelarea conceptual; achiziia cunotinelor; reprezentarea cunotinelor; validarea sistemului; introducerea n exploatare i meninerea n funciune. n continuare va fi descris fiecare etap a ciclului de via al unui sistem expert. 1. Analiza preliminar - urmrete definirea lucrrii sau achiziiei care va face obiectul sistemului expert, precum i alegerea instrumentelor informatice necesare. In ceea ce privete problema sau lucrarea ce urmeaz a fi abordat prin tehnologia SE, se consider c aceasta trebuie s rspund cel puin urmtoarelor cerine: - s fac apel la cunotine aparinnd unui domeniu bine delimitat;

69

Partea 1

s aib un nivel mediu de complexitate, astfel nct s se evite problemele prea complicate, altfel se poate ca sistemul s fie incapabil s-o rezolve ntr-un timp rezonabil; s fie structurabil, adic s utilizeze elemente identificabile, reproductibile i formalizabile, att n privina conceptelor i cunotinelor folosite, ct i a raionamentelor; s prezinte o lucrare repetitiv n timp; s fie bine cunoscut de ctre experii disponibili; s nu fac apel la tipuri de cunotine ce nu pot fi tratate prin una din metodele de reprezentare existente (de exemplu, cunotine vizuale, de natur topologic). Se spune c o problem candideaz la un SE dac expertul poate s rezolve problema prin telefon (astfel, se exclude vederea).
Analiza preliminar Selectarea problemei Modelarea conceptual Concepte Achiziia cunotinelor

Transferul expertizei de la expertul uman spre calculator

Structura Reprezentarea cunotinelor Baza de cunotine Validarea sistemului SE final Introducerea n exploatare, meninerea n funciune

figura 1-16. Ciclul de via al unui sistem expert Selectarea unei probleme care rspunde acestor criterii constituie numai un prim pas, care trebuie continuat cu o analiz mai detaliat, menit s verifice oportunitatea rezolvrii sale printr-un SE. In acest scop se pot avea n vedere patru categorii de factori: - natura problemei sau a activitii; - rezultatele previzibile; - expertiz disponibil; - utilizatorii finali. 70

Sisteme expert

Din punct de vedere al naturii problemei, evaluarea se bazeaz pe msura n care aceasta rspunde criteriilor urmtoare: - lucrarea este esenialmente cognitiv, solicitnd ntr-o msur preponderent analiza, sinteza, sau decizia; - implic raionamente sau cunotine simbolice; - face apel la un numr ridicat de parametri; - folosete reguli i metode euristice; - trebuie rezolvat deseori pe baza unor date incomplete; - solicit prezentarea de explicaii i justificri ale rezultatelor sau raionamentelor; - se afl pe un nivel intermediar de formalizare caracterizat prin preponderena clasificrilor i euristicilor; - implic nlnuiri de raionamente, structurate eventual pe mai multe nivele; - nu poate fi rezolvat cu metode informatice convenionale. Din punct de vedere al rezultatelor, evaluarea se bazeaz pe raportarea efectelor previzibile ale SE la urmtoarele criterii: - determin mbuntirea calitii produselor sau serviciilor oferite; - acumuleaz expertiz pentru care nu exist documentaie scris; - asigur difuzarea expertizei existente ctre personalul lipsit de experien sau ctre debutani; - prin utilizare, antreneaz creterea calificrii profesionale; - poate fi realizat cu un efort minim de programare. O tehnic frecvent utilizat n efectuarea unor asemenea analize o reprezint grilele de evaluare (rating grids). Grila de evaluare este compus dintr-un ansamblu de criterii predefinite, n raport cu care problema este apreciat i notat cu un anumit punctaj. Dac punctajul obinut este sub o anumit limit (specificat de asemenea n gril), problema este considerat neoportun pentru un SE. Sub aspectul instrumentelor informatice, se poate opta ntre dou posibiliti: - realizarea unui motor de inferene propriu, scris ntr-un limbaj adecvat; - utilizarea unui generator de SE care are incorporat motorul de inferene, rmnnd ca utilizatorul s-i nsueasc modul de funcionare al acestuia i s modeleze cunotinele expertului uman n concordan cu posibilitile oferite de generator. Alegerea ntre aceste dou posibiliti trebuie s aib n vedere criterii principale: - limbajul de reprezentare al cunotinelor s fie simplu i ct mai general; - s existe un mecanism de control eficace, cu posibiliti de automodificare i un modul explicativ elaborat; - comunicaia cu utilizatorul s fie ct mai apropiat de limbajul natural. 71

Partea 1

Odat adoptate deciziile privitoare la problema abordat i instrumentele informatice, se poate trece la etapele urmtoare. 2. Modelarea conceptual - urmrete definirea structurii conceptuale a cunotinelor utilizate de ctre expertul uman n domeniul de activitate care formeaz obiectul viitorului SE. In cadrul su, expertul definete n colaborare cu cogniticianul noiunile de baz folosite, relaiile eseniale existente ntre aceste noiuni, lucrrile principale de efectuat i restriciile generale care intervin n cursul rezolvrii problemelor. Acest efort de conceptualizare este necesar pentru a delimita mai exact domeniul de expertiz al viitorului SE i a fundamenta formularea cunotinelor n cadrul viitoarei baze de cunotine. Modelarea conceptual se axeaz pe evidenierea urmtoarelor aspecte: - identificarea principalelor obiecte, concepte sau entiti din domeniul de expertiz; - definirea atributelor necesare pentru descrierea obiectelor, conceptelor sau entitilor; - identificarea celor mai importante corelaii care exist ntre acestea; - examinarea restriciilor principale care guverneaz sau intervin n relaiile dintre obiecte; - specificarea tipurilor de probleme la care urmeaz s rspund viitorul sistem; - definirea cadrului general de utilizare al SE, att sub aspectul manierei de comunicare a problemelor de rezolvat (prin dialog la terminal, prin consultarea unor baze de date existente etc.), ct i al interaciunii cu utilizatorul final. 3. Achiziia cunotinelor - urmrete achiziia tuturor cunotinelor necesare funcionrii viitorului SE. Principalele probleme care intervin n realizarea sa sunt: - lipsa de sistematizare iniial, consecin a faptului c n exercitarea activitii sale, expertul nu are nevoie s-i exteriorizeze cunotinele ; - tendina fireasc de omitere a cunotinelor generale aparinnd fondului comun al profesiei sau domeniului respectiv, care pentru expertul uman sunt subnelese; - existena mai multor surse de cunotine; - dificultatea de a identifica, din masa de cunotine, pe cele necesare sau relevante; - necesitatea de a considera un numr ct mai mare de excepii i de cazuri nespecifice, pentru a putea conferi suficient flexibilitate viitorului sistem. Deci, se poate identifica o latur static, descriptiv, a cunotinelor i o latur dinamic, ce privete modul de participare al acestora n efectuarea raionamentelor. Aceast difereniere trebuie observat i n achiziia cunotinelor, fiind de preferat s se obin o descriere ct mai complet naintea abordrii modului n care expertul le coreleaz i le utilizeaz n rezolvarea problemelor. Descrierea cunotinelor se poate axa pe urmtoarele aspecte, care de altfel corespund celor specificate la modelarea conceptual: - identificarea obiectelor, conceptelor sau a noiunilor folosite; aceast identificare nu trebuie neleas numai ca o enumerare, ci ca un proces de atribuire de 72

Sisteme expert

identificatori unici i de rezolvare a problemelor legate de eventualele ambiguiti, de sinonimii i omonimii; descrierea obiectelor, conceptelor sau a noiunilor folosite, prin precizarea atributelor i a valorilor relevante ale acestora, care mbrac de foarte multe ori o exprimare pronunat calitativ, de genul "bun", "excelent", "mediocru", "opus" etc.; organizarea cunotinelor, care const n identificarea i precizarea reelelor ierarhice sau taxonomice (de clasificare) ale obiectelor, conceptelor sau noiunilor folosite de ctre expert; cu acest prilej pot fi stabilite care sunt conceptele primare i cele derivate, precum i relaiile de transfer succesoral dintre ele.

Odat acest cadru definit, se poate trece la identificarea i explicitarea regulilor i strategiilor de raionament aplicate de ctre expertul uman. In virtutea caracterului iterativ al etapei, dup o prim definire a cunotinelor, se trece la abordarea strategiilor i proceselor de raionament a cror analiz antreneaz revederea i completarea cadrului conceptual. Achiziia cunotinelor se poate realiza pe cale manual (interviul) sau automat. Automatizarea achiziionrii cunotinelor presupune definirea unor instrumente informatice care s asigure urmtoarele servicii: - asistarea expertului n transmiterea direct a cunotinelor sale, fr a mai fi necesar participarea altei persoane (n spe, a cogniticianului); - sprijinirea cogniticianului n culegerea mai eficient a cunotinelor, n special n cazul problemelor de mari dimensiuni sau complexitate ridicat; - inducia automat, adic generarea automat de reguli de producie pe baza unui set de exemple sau cazuri formulate de expert sau chiar a coninutului unei baze de date nespecifice. In aceast privin, exist algoritmi i programe, independente sau ncorporate n generatoare de sistem expert, capabile s efectueze asemenea prelucrri. Spre exemplu, ele pot s examineze coninutul unei baze de date, s identifice corelaiile dintre valorile luate de atributele acesteia i s le exprime sub form de reguli de producie. Cunotinele achiziionate pn acum nu sunt direct utilizabile: ele urmeaz a fi structurate i exprimate n forma adecvat metodei de reprezentare a cunotinelor i a particularitilor motorului de inferene. 4. Reprezentarea cunotinelor - prin care se urmrete asigurarea formalizrii i reprezentrii cunotinelor n structura adecvat nregistrrii lor n baza de cunotine i exploatrii de ctre motorul de inferene. Realizarea sa este facilitat de unele generatoare de sisteme i de instrumentele informatice de achiziionare automat a cunotinelor.

73

Partea 1

5. Validarea sistemului - are drept scop verificarea msurii n care sistemul obinut poate fi utilizat n practic. Validarea sistemului trebuie s cuprind toate elementele ce caracterizeaz funcionarea sistemului: rezultatele furnizate de ctre acesta, procesele de raionament care conduc la aceste rezultate i metodele de inferene aplicate. n primul rnd se pune problema validrii bazei de cunotine, din punct de vedere al completitudinii i al coerenei. n sistemele cu coeficieni de certitudine trebuie luat n considerare i criteriul neredundanei. Completitudinea elimin riscul opririi sistemului datorit inexistenei unei reguli. De exemplu, completitudinea este foarte important pentru sistemele industriale cu bucl nchis, altfel este necesar mereu intervenia operatorului. Coerena reprezint proprietatea unei baze de reguli de a produce fapte necontradictorii pentru orice baz de fapte necontradictorie. Responsabil cu coerena i completitudinea bazei de cunotine este omul i nu sistemul. Apoi, trebuie s se aib n vedere validarea propriu-zis a sistemului. Principalele criterii ce pot fi avute n vedere la validarea sistemului sunt: - naturaleea n interaciunea cu utilizatorul uman; - gradul de acoperire a gamei de probleme specifice domeniului de expertiz; - capacitatea de a rspunde la formulri diferite ale problemelor; - precizia rezultatelor furnizate i proporia rezolvrilor corecte n raport cu numrul total de probleme tratate. In funcie de rezultatele observate, validarea poate impune completarea, rafinarea sau mbogirea bazei de cunotine ca i operarea de modificri structurale menite s mbunteasc parametrii de exploatare curent. 6. Introducerea n exploatare i meninerea n funciune - cuprinde ansamblul activitilor necesare trecerii la stadiul de sistem operaional. Aceasta se realizeaz pe dou nivele: - prin integrarea n structurile organizatorice existente; - prin integrarea cu aplicaiile informatice aflate deja n exploatare. Trebuie s se acorde o atenie sporit mentenabilitii aplicaiei, deci utilizarea dup o or, o zi sau o sptmn s dea aceleai performane.

74

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