Sunteți pe pagina 1din 14

Sisteme expert

Laboratorul de Inteligen artificial

Sisteme expert
Sistemele expert sunt produse ale inteligenei artificiale, ramur a tiinei calculatoarelor ce urmrete dezvoltarea de programe inteligente. Ceea ce este remarcabil pentru sistemele expert, este aria de aplicabilitate ce a cuprins multe domenii de activitate de la arhitectur, arheologie, bnci, comer, educaie, pn la ingineria sistemelor i medicin. Un sistem expert este un program care analizeaz cunotinele i raioneaz pentru obinerea rezultatelor ntr-o activitate dificil ntreprins uzual doar de experi umani. Din punct de vedere funcional un sistem expert este un program a crui principal caracteristic este derivat din baza de cunotine, mpreun cu un algoritm de cutare specific metodei de raionare. Un sistem expert se bazeaz pe dou componente distincte i complementare: a. tehnologii de programare ce permit utilizarea unui volum mare de cunotine, precum i modul de infereniere cu acestea. b. construcii i metodologii dezvoltate, ce permit utilizarea efectiv a acestor tehnologii. ntr-un sistem expert raionarea i cunotinele nu trebuie tratate separat deoarece un astfel de sistem presupune o armonizare a lor. Expertul care nelege necesitatea utilizrii unui sistem expert n domeniul su de activitate poate obine ajutor de la inginerul de cunotine (specialistul n calculatoare) deoarece n urma discuiilor cu acesta anumite cunotine vor fi reformulate astfel nct s poat fi aplicabile pe un calculator. ntre instrumentele de lucru ale sistemelor expert se iau n considerare modelele prin care o baz de cunotine poate fi afiat, captat i reprezentat. Principala calitate a calculatoarelor o reprezint capacitatea de realizare a unei viteze mari de calcul. Fiecare limbaj de programare ncearc s fac calculatorul ct mai eficient din punct de vedere al puterii de calcul. n realizarea unui program ce raioneaz se pornete de la ideea c simbolurile de prelucrare pot fi numere, texte sau alte concepte. Acestea sunt considerate simboluri fizice iar calculatorul poate manipula astfel de simboluri. Un sistem expert viabil, dublat de viteza de lucru a unui calculator, poate eficientiza un anumit domeniu de lucru. Exemplu de paralelism om-main:

1.

Arhitecturi de sisteme expert

O caracteristic esenial a sistemelor expert privete competena acestora de a furniza explicaii asupra raionamentelor ntreprinse pentru ajungerea la rezultat, explicaii ce trebuiesc exprimate ntr-un limbaj ct mai apropiat de limbajul natural. Multitudinea problemelor de analizat determin i volumul mare al bazei de cunotine, ns un sistem expert trebuie s fie capabil s rezolve n aceeai msur i problemele ce sunt afectate de cunoaterea incert i incomplet. n aceste situaii se pot utiliza cunotine euristice ce permit gsirea soluiei potrivite fr ca aceasta s fie neaprat soluia optim.

Componentele sistemelor expert


a. Componente principale a.1. Baza de cunotine este reprezentat ca o structur de date ce conine ansamblul cunotinelor specializate introduse de ctre expertul uman. a.2. Mecanismul de inferen preia cunotinele din baza de cunotine ce sunt utilizate pentru construirea raionamentului, elaboreaz planul de rezolvare al problemei i execut aciunile prevzute n planul de rezolvare. a.3. Baza de fapte este reprezentat de o memorie auxiliar ce conine toate datele utilizatorului (faptele iniiale ce descriu enunul problemei de rezolvat) i rezultatele intermediare produse n cursul procedurii de deducie. Componente secundare b.1. Interfaa utilizator este cea care asigur dialogul dintre utilizator i sistem. b.2. Modulul de achiziie al cunotinelor preia cunotinele specializate furnizate de expertul uman sau inginerul de cunotine ntr-o form ce nu este specific reprezentrii interne (fiiere). b.3. Modulul de explicaii permite trasarea drumului de urmat n raionare de ctre sistemul rezolutiv i emiterea justificrilor pentru soluiile obinute, evideniindu-se n acest mod cauza greelilor sau motivul eecurilor.

b.

2.

Reprezentarea cunoaterii

Reprezentarea cunotinelor ntr-un calculator const n gsirea unor corespondene ntre lumea exterioar i sistemul simbolic ce permite execuia raionamentelor. n acest scop se extrag din observaiile fcute asupra obiectelor, a faptelor i a fenomenelor, acele caracteristici crora li se pot asocia semnificaii determinate de imaginea mental format despre lume. Descrierea are ca scop diferenierea imaginii obiectului dat de imaginile celorlalte obiecte ale lumii nconjurtoare, la fel cum obiectul fizic se deosebete de restul obiectelor lumii reale. Pot fi reliefate dou componente ale cunoaterii tiinifice: a. cunoaterea reflexiv bazat pe reflectarea exterioar a faptului tiinific; b. cunoaterea generativ bazat pe crearea de noi obiecte abstracte pentru construirea unor noi fapte tiinifice i programe de aciune. Cunoaterea este empiric dac informaiile despre obiecte, fapte, fenomene, sau procese necunoscute, este sesizat de subiectul cunosctor prin organele sale senzoriale sau prin intermediul unor aparate sau instrumente. Cunoaterea este teoretic dac se desfoar dup raionamente i judeci reliefnd legturile interne, cauzalitatea, legitile dup care se dezvolt structurile i se deruleaz procesele. Ea se dezvolt din cunoaterea empiric prin analiz, sintez, deducie, inducie, generalizare i particularizare. Se numete sistem cognitiv totalitatea pieselor de cunoatere, modul de stocare i procedeele de acces la acestea.

2.1. Etapele reprezentrii cunoaterii


a. Stabilirea sistemului de meta-reprezentare, care are ca obiectiv asigurarea unor modaliti adecvate de reprezentare a cunoaterii lumii reale ct i pentru componentele proprii ale sistemului inteligenei artificiale. b. Stabilirea sistemului de clasificare ce urmrete gruparea n clase, precum i ordonarea acestora dup criterii ce rezult din analiza relevaiei proprietilor obiectelor ce formeaz piesele de cunoatere. c. Stabilirea sistemului de organizare privitor le gruparea i ordonarea elementelor i claselor, precum i asigurarea unor procese fundamentale cum sunt: acces, cutare, coresponden, grupare, regrupare, interferen deductiv, interferen inductiv, organizare, reorganizare i protecie.

2.2. Metode de reprezentare a cunoaterii


Reprezentarea cunoaterii urmrete descrierea universului n care sistemul efectueaz raionamente sub form de entiti corespunztoare indivizilor i sub form de simboluri pentru relaiile dintre acetia. O arhitectur de reprezentare a cunotinelor este construit pe trei nivele: nivelul intern este constituit din schema intern ce descrie structura de stocare fizic a cunotinelor n baza de cunotine; b. nivelul conceptual descrie structura ntregii baze de cunotine pentru o comunitate de utilizatori; c. nivelul extern include o colecie de scheme externe ce descrie baza de cunotine prin prisma diferiilor utilizatori. a. Se pot distinge, pentru aplicaiile de inteligen artificial, trei clase de metode de reprezentare: metode logice (enunuri adevrate); metode relaionale (grafuri i reele); metode procedurale (proceduri).

3.

Sisteme rezolutive

Un sistem rezolutiv este format din totalitatea componentelor unui sistem de inteligen artificial avnd ca obiectiv rezolvarea de probleme. Prin problem se nelege dificultatea de natur cognitiv ce se constituie ca moment iniial al activitii inteligente. Transpunerea problemei de la subiectul uman la subiectul de inteligen artificial presupune reformularea acesteia astfel nct s reflecte discordana dintre obiectele specificate n formularea extern, resursele cognitive i rezolutive ale sistemului. Mecanismul de inferen este inima oricrui sistem expert, care alimentat de baza de cunotine, construiete raionamentul n mod dinamic deciznd ce reguli sunt declanate i n ce ordine.

3.1. Ciclul de baz al unui mecanism de inferen:


a. b. c. d. faza de selecie; faza de filtrare; faza de rezolvare a conflictelor; faza de execuie.

3.2. Analiza tipurilor de probleme


Capacitatea de rezolvare a problemelor de ctre un sistem inteligent este apreciat dup uurina cu care d soluii la problemele ce nu au fost stabilite n prealabil, precizarea lor fiind fcut n momentul ncrcrii bazei de cunotine. Din punct de vedere al formulrii se disting trei categorii de probleme: probleme bine formulate; probleme incomplet definite; probleme greit formulate.

4.

Strategii de control

Alegerea tehnicii de rezolvare este dependent de tipul problemei, existnd posibilitatea selectrii tehnicii de cutare: a. cutare exhaustiv; b. cutare prin examinare semantic a legturilor: b.1. cutarea n adncime; b.2. cutarea pe orizontal (n lrgime). c. cutarea soluiei optime.

5.
a. b. c.

Categorii de aplicaii:
sisteme expert de clasificare; sisteme expert de control; sisteme expert de anticipare.

6.

Sisteme expert bazate pe reguli

Mijloacele prin care sistemele expert i ating obiectivele se bazeaz pe mulimi de fapte i reguli euristice, adic reguli pentru gestiunea cunotinelor. Un sistem expert bazat pe reguli are trei componente: baza de cunotine (sau baza de reguli) care descrie universul domeniului n care se aplic sistemul expert; reprezentarea cunotinelor se face utiliznd reguli de forma: IF <condiie_1> i <condiie _k> THEN <aciune> (<condiie_1> i <condiie _k> se numesc premisele regulii)

memoria de lucru care conine informaia de stare necesar rezolvrii unei probleme; aceast informaie este de obicei organizat sub forma unei mulimi de aseriuni numite fapte; trebuie fcut distincie ntre faptele iniiale, care reprezint datele iniiale ale problemei de rezolvat i faptele dinamice, care sunt deduse pe msura derulrii procesului de rezolvare a problemei. mecanismul de inferen care reprezint componenta de control i execuie dintr-un sistem bazat pe reguli; acest mecanism realizeaz selectarea unei reguli din baza de cunotine i declanarea acestei reguli; efectul acestei declanri este modificare memoriei de lucru.

Arhitectura unui sistem bazat pe reguli este prezentat mai jos:

Un proces de inferen cu nlnuire nainte pornete de la o mulime de fapte iniiale care sunt ncrcate n memoria de lucru. La fiecare pas se determin o regul ale crei premise sunt satisfcute de coninutul curent al memoriei. Se declaneaz aciunea asociat acelei reguli, dup care procesul se reia. Acest proces se oprete dac este ndeplinit una din urmtoarele condiii: coninutul memoriei de lucru satisface o anumit condiie nu mai exist reguli aplicabile s-a epuizat o cantitate de efort de calcul predefinit

Un proces de inferen cu nlnuire napoi pornete de la un scop (o problem de rezolvat) pe care l descompune n subprobleme primitive. De aceea se spune c acest mod de raionament este dirijat de scop n sensul gsirii faptelor care permit atingerea acestuia. Se observ c raionament este invers dect raionamentul deductiv. La fiecare pas se selecteaz o regul care are n partea de concluzii cel puin unul dintre obiectivele de rezolvat. Premisele acestei reguli se adaug la obiectivele ce trebuie rezolvate. Acest proces se oprete dac este ndeplinit una dintre urmtoarele condiii: mulimea obiectivelor de rezolvat devine vid nu mai exist reguli aplicabile

s-a epuizat o cantitate de efort de calcul predefinit

Raionamentul mixt ncearc s realizeze compromisuri ntre cele dou moduri de raionament de baz: deductiv i inductiv. Principiul general al acestui mod de raionament este urmtorul: se fixeaz un scop, se determin faptele deductibile, se aplic mai nti raionamentul inductiv, care va solicita utilizatorul pentru specificarea valorilor unor fapte necunoscute, dar interogabile i apoi se aplic raionamentul deductiv pentru a deduce tot ce este posibil .a.m.d.

7.

Sistem Baz de Cunostine pentru Asistarea Deciziei Diagnoza Defeciunilor la Automobile

7.1 Etapele ce urmeaz s fie parcurse pentru rezolvarea temei:


1. Documentare privind componena automobilului modern; 2. Intocmirea unui tabel relaional cu principalele defeciuni cunoscute ale automobilului; 3. Incrcarea Editorului e2gRuleWriter.jar si a bazei de cunostine existente auto.bk; 4. Transcrierea regulilor existente in baza de cunostine; 5. Rularea aplicatiei auto.htm si identificarea aciunii regulilor; 6. Formalizarea noilor cunostine privind defeciunile aotomobilului, trecute in tabelul relaional; 7. Modificarea si completarea bazei de cunostine; 8. Rularea noii aplicaii si depanarea acesteia; 9. Concluzii. Structura automobilului, propus ca referin, pentru intocmirea bazei individuale de cunostine cuprinde lista principalelor sisteme tehnice ale automobilului, schema de principiu a motorului si componena acestuia. A) Carcasa si structura de rezisten B) Agregatul de for motorul; cutia de viteze; diferenialul; arborii planetari. C) Sistemul de direcie si rulare mecanismul de direcie si suspensia. instalaia electro-hidraulic de asistare a direciei; traductoare de vitez; traductoare de poziie; traductoare de presiune. D) Instalaia de frnare discuri si tamburi de fran; cilindrii hidraulici de acionare; conducte; pompe de fran asistate; traductoare de turaie; computer de franare; dispozitive de decuplare a franrii. E) Instalaia electric 1. Sistemul de ncrcare si acumulare bateria de acumulatori alternatorul; releul regulator; traductoare si senzori de U, I, T. 2. Sistemul de iluminare si semnalizare proiectoare

relee de timp pentru semnalizare intermitent. 3. Sistemul de avertizare sonor 4. Sistemul de stergere si nclzire parbriz stergtoare; mecanism de antrenare; temporizatoare; traductoare de umezeal. F) Instalaia de climatizare si dezaburire compresor; vaporizor; sistem de ventilaie; traductoare de temperatur; temporizatoare. 1. Computer de bord 2. Pomp de carburant in imersie 3. Releul pompei de caburant (releu de presiune) 4. Filtru de carburant 5. Supap de control a vitezei 6. Debitmetru masic de aer 7. Filtru de aer 8. Regulator de presiune pentru carburant 9. Ramp central de carburant (common rail) 10. Senzor de poziie a clapetei de acceleraie 11. Traductor de temperatur pentru aer 12. Injector de carburant 13. Senzor de poziie pentru arborele cu came 14. Filtru cu carbon 15. Servo-supap de evacuare 16. Bobin de inducie 17. Baterie 18. Modul de aprindere (aprindere electronic) 19. Senzor principal de temperatur al motorului 20. Sonda lambda 21. Senzorul de poziie si vitez al vilbrochenului 22. Releu de pornire 23. Releu de presiune ulei 24. Comanda ambreiajului compresorului 25. Conector dedicat benzinei Premium 95 26. Conector pentru test 27. Conector pentru diagnostic 28. Comutator de aprindere (cheia de contact) 29. Intreruptor inerial 30. Reductor electronic de vacuum 31. Supap 32. Traductor diferenial de presiune 33. Ajutaj pentru esantionarea presiunii difereniale

34. Camer de aer 35. Supap de surplus de aer 36. Servo-supap de surplus de aer 37. Radiator 38. Modul electronic de control al traciunii

8.

Tablelul relaional

Nr. Crt.

Defect

Condiia 1 Lipsa sunet la ntoarcerea cheii Exist sunet la ntoarcerea cheii Exist sunet la ntoarcerea cheii Lipsa sunet la ntoarcerea cheii Zgomot la schimbarea treptelor Exist sunet la ntoarcerea cheii

Condiia 2 Exist combustibil

Condiia 3

Condiia n

Releu de pornire stricat

Farurile lumineaz

Masina nu porneste

Filtru de aer nfundat

Consum ridicat

Motorul moare Exist combustibil

Regulator de presoune stricat

Consum ridicat

Motorul nu moare

Baterie goal

Exist combustibil

Farurile nu lumineaz

Lipsa lubrifiantului din cutia de vitez

Zgomot n timpul rulrii Exist combustibil Mers al motorului sacadat Putere sczut a motorului Exist combustibil

Filtru de carburant prea plin

Consum ridicat Puterea motorului scazut

O bujie stricat

Consum ridicat

9.

Tablelu de relaii

10.

Regulile din Knowledge Database

REM Generated by v1.01 of e2gRuleWriter 01/10/2013 00:49 from: RULE [releu stricat] If [sunet cheie] = false and [exista combustibil] = true and [faruri] = true and [pornire] = false Then [solutie] = "Schimbati Releul" RULE [filtru aer infundat] If [sunet cheie] = true and [consum combustibil] = true and [motor] = false Then [solutie] = "Schimbati filtrul de aer" RULE [regulator de presiune] If [sunet cheie] = true and [exista combustibil] = true and [consum combustibil] = true and [pornire] = true Then [solutie] = "Schimbati regulatorul de presiune" RULE [baterie goala] If [sunet cheie] = false and [exista combustibil] = true and [faruri] = false Then [solutie] = "Reincarcati bateria" RULE [lubrifinat cutie viteza]

If [zgomot cutie] = true and [zgomot rulare] = true and [rulare sacadat] = false and [pornire] = true Then [solutie] = "inlocuiti lubrifiantul din cutia de viteze" RULE [filtru carburant plin] If [sunet cheie] = true and [exista combustibil] = true and [consum combustibil] = true and [putere motor] = true Then [solutie] = "Curatati filtrul de carburant" RULE [bujie stricata] If [exista combustibil] = true and [consum combustibil] = true and [rulare sacadat] = true and [putere motor] = false Then [solutie] = "Inlocuiti bujiile" PROMPT [sunet cheie] YesNo CF "Exista sunet la rotirea cheii in contact?" PROMPT [exista combustibil] YesNo CF "Exista combustibil in rezervorul automobilului?" PROMPT [faruri] YesNo CF "Lumineaza farurile la aprinderea lor?" PROMPT [consum combustibil] YesNo CF "Este consumul de combustibil, mult mai ridicat fata de consumul standard?" PROMPT [zgomot cutie] YesNo CF "La schimbarea in alta treapta de viteza, se produce un zgomot?" PROMPT [zgomot rulare] YesNo CF "In timpul rularii cu automobilul, exista zgomote sub schimbatorul de viteza?" PROMPT [rulare sacadat] YesNo CF "In timpul rularii, motorul merge continuu sau se aude sacadat?" PROMPT [pornire] YesNo CF "La pornirea masinii, aceasta porneste de pe loc?" PROMPT [putere motor] YesNo CF

"Motorul "trage" ca inaninte?" PROMPT [motor] YesNo CF "Moare motorul dupa ce masina e pronita?" DEFAULT [solutie] = "Consultati de urgenta un mecaninc" GOAL [solutie]

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