Sunteți pe pagina 1din 16

Introducere

Concepte de baza

Inteligena Artificial poate fi definit ca simularea inteligenei umane procesat de maini,


n special, de sisteme de computere.
Principalul scop al Inteligenei Artificiale este de a imita ntrutotul creierul uman n modul
n care acesta gndete, rspunde i interacioneaz. n pofida nivelului atins de cercettori,
acest deziderat nu va fi atins foarte curnd, creierul uman fiind nc o enigm, aproape
imposibil de analizat matematic i/sau tradus n limbaj main.
Pn n prezent s-au dezvoltat dou metode diferite de abordare a Inteligenei Artificiale.
Prima metod este cunoscut sub numele top-down approach sau symbolic approach to
AI. Spre exemplu, vederea artificial a unei maini (controlat de un computer) a fost
abordat prin construirea unor algoritmi i aplicarea lor pe o serie de date de intrare. Fiecare
pas al procesului de vedere trebuie evaluat, un algoritm urmnd s transforme datele de intrare
ntr-o form mai uor de utilizat. Aceast metod are dezavantajul c este prea dependent de
main i poate fi utilizat doar n probleme foarte restrnse.
A doua metod const n construirea unei reele neuronale care s asigure convertirea unei
imagini n informaie. Acesta, o combinaie reuit de reea neuronal i informaii pre-
procesate, a permis pentru prima dat recunoaterea imaginilor de ctre un computer.
Perceptronul s-a bazat pe ceea ce a reprezentat atunci primul stadiu al vederii artificiale, fiind
folosit ulterior n construcia mainilor autoghidate.

Reele neuronale
O reea neuronal este de tip fizic (n electronic) sau virtual (un program pe computer).
Fiind vorba de o reea, aceasta se prezint sub forma unei matrici de noduri sau neuroni legai
ntr-un mod oarecare, unul de altul. Fiecare neuron are cteva intrri i ieiri. Intrrile sunt
formate din mesaje primite de la o serie de senzori. Mesajele sunt prelucrate anterior de ctre
alte reele asociate i apoi transmise mai departe
Presupunnd c semnalul de intrare n reeaua neuronal atinge punctul de ieire din
aceasta, acesta poate fi o valoare sau o matrice de valori. La nceput, rezultatul va fi aproape
aleatoriu pn cnd reeaua este antrenat corect. Antrenamentul reelei const n primirea de
informaii pentru a face raionamentele ct mai aproape de realitate.

Stadiul cercetrilor n Inteligena Artificial


Iat o scurt enumerare a doar cteva din domeniile n care este i va fi folosit Inteligena
Artificial:
-Sisteme expert. Un sistem expert este format dintr-un grup de programe i o colecie de
informaii specifice, cu ajutorul crora se poate purta un dialog om-computer, n vederea
rezolvrii problemelor. Informaiile primite de la calculator sunt asemntoare cu cele date de
un expert uman n domeniul respectiv. Sistemele expert multiplic inteligena formalizat a
unor specialiti punnd-o la dispoziia acelor persoane al cror acces la respectivii specialiti
este imposibil;
-Reele neuronale - sunt sisteme care simuleaz inteligena prin reproducerea tipurilor de
conexiuni fizice care se gsesc n creierul biologic. Din cauza limitrilor tehnologice, numrul
acestor conexiuni este foarte mic, comparativ cu cele cteva zeci de miliarde de conexiuni din
creierul uman;
-Inelegerea limbajului natural - reprezint programarea computerelor astfel nct acestea s
neleag i s interacioneze cu utilizatorii n limbajul natural al acestora. La baza nelegerii
limbajului natural se afl recunoaterea vocal care transform un dialog n text, folosind un
dispozitiv special;
-Agenii - sunt entiti computerizate care acioneaz n locul operatorilor umani, adunnd
tiri de pe Internet, trimind mesaje de e-mail sau filtrndu-le pe cele primite. Dei lucreaz
pe baza unor "cuvinte cheie" i se afl nc n cercetare, agenii vor deveni foarte utili,
ajutndu-i utilizatorul s gseasc, spre exemplu, numai tirile sau articolele care l
intereseaz, scutindu-l de ore ntregi de navigare inutil pe Internet;
-Roboi. Noile modele de roboi au n componen computere programate s "aud", s
"vad" i s reacioneze la diferii stimuli externi. Exist deja roboi care pesc asemenea
unei fiine vii, disting o voce din mai multe, rspunznd numai la comanda acesteia, se
orienteaz n spaiu, recunoscnd obiectele nconjurtoare, aleg drumul cel mai scurt ntre
dou puncte i ocolesc obstacolele.
-Jocurile pe computer. Dezvoltarea jocurilor i a domeniului multimedia, n general, este n
plin expansiune, o afacere de sute de milioane de dolari. La ora actual, nu se mai poate
concepe un joc fr a avea n structur elemente de Inteligen Artificial. Implementat
corect, aceasta garanteaz un produs bine vndut, deci profit i satisfacie oferit juctorilor.

SISTEME EXPERT

Sistemele Expert reprezint o ramur a inteligenei artificiale care folosec cunotine


specializate pentru a rezolva o problem la nivelul unui expert uman. Toate definiiile
Sistemelor Expert scot n eviden o trstura specific lor i anume faptul c un SE utilizeaz
informaii extrase din experiena uman, putnd deci furniza decizii la nivelul de competen
corespunztor informaiilor primite i a metodelor de raionare implementate. Un sistem
expert nu este numit program, ci sistem, deoare ncorporeaza multe tehnologii diferite, cum ar
fi baza de cunotine, mecanisme de interferen, faciliti de explicare etc.
Realizarea unei maini inteligente, care s imite performanele complexe ale
comportamentului uman reprezint o real provocare datorit lipsei de abilitate a omului de a
nelege n ntregime mecanismul de procesare, respectiv puterea creierului uman. [Bee-93].
Avantajele i dezavantajele unei maini inteligente pot fi cel mai bine reliefate prin realizarea
unei analize comparative ntre comportamentul uman i sistemele inteligente aa cum se poate
observa n Tabelul 1.1 i Tabelul 1.2, care sintetizeaz cteva diferene semnificative.
n general sistemele inteligente sunt sisteme deductive, putnd genera concluzii pe baza
cunoaterii incorporate sau furnizate din exterior i respectiv neputnd genera singure noi
cunostinte.
Conceperea i dezvoltarea unui sistem inteligent in psihiatrie si/sau psihologie necesita
cunostinte si experienta in acest domeniu cum ar fi: cunoasterea simptomatologiei,
cunoasterea patologiei, tratament farmacologic. Capacitatea de a realiza o distincie clar a
bolilor, cunoaterea problemelor din domeniu, de metod de diagnosticare, precum i
integrarea unui model conceptual bine structurat, constituie o baz necesar pentru
dezvoltarea unui sistem inteligent n psihiatrie/psihologie

Structura unui Sistem Expert

Structura unui Sistem Expert este reprezentat n fig. 1.1, modulele componente avnd
urmtoarele semnificaii:
- Baza de cunotine nglobeaz o colecie de cunotine relevante despre un anumit
domeniu, fiind format din:
-baza general de cunotine modul ce conine regulile referitoare la operaiile
care se pot efectua asupra elementelor de cunoatere coninute n baza de date specific
cazului. n esen, regulile constituie un ansamblu complet i necontradictoriu de cunotine
necesare
-datele cazului specific modul ce conine informaiile relative la domeniul de
aplicaie studiat. Faptele reprezint partea dinamic a bazei de cunotine i au rolul de a
reprezenta starea obiectelor la un moment dat.

Maina de inferen - este un program general care implementeaz mecanismul prin


care se construiesc deduciile, prelucreaz cunotinele i datele pe baza acestor deducii.
Motorul de inferen conine cunoaterea procedural i de control.
Interfaa utilizator - realizeaz o legtur facil ntre sistem i utilizator, intermediind
un dialog eficient ntre acetia. Interfaa permite utilizatorului s pun ntrebri sistemului
expert, s introduc noi informaii, sau s obin o imagine asupra procesului de rezolvare.
Editorul baz de cunotine - permite completarea sau modificarea bazei de cunotine
a SE. Aciunea propriu-zis de achiziionare se realizeaz prin chestionarea experilor umani.
Sistemul explicativ - are rolul de a furniza explicaii operatorului n legtur cu
raionamentul folosit pentru a ajunge la concluzia prezentat.
Modulul grafic reprezint interfaa grafic care faciliteaz experilor din domeniu,
posibilitatea de a-i formaliza cunotinele ntr-o manier ct mai reprezentativ, cu o
asisten ct mai limitat a inginerului de cunotine.

Conceptul de cunoastere in Sisteme Expert

Cunoaterea presupune o reflectare activ n contiin a lumii reale, a esenialului


i generalului din fenomene i a legturilor obiective ale realitii. Cunoaterea este un tip
special de activiti, reflectnd interaciunea ntre individul uman, ca subiect cunosctor i
realitatea fizic sau social existent, independent de el. Cunoaterea este considerat cel mai
adesea o msur a inteligenei.
Finalitatea actului de cunoatere tiinific este reprezentat de teoria tiinific.
Cuvntul teorie provine din grecescul theoria cu nelesul de contemplare, meditaie. Acest
termen are astzi, n filozofia tiinei, coninut divers. Teoria poate fi definit ca i:
o mulime de reguli i principii de procedur;
o schem de terminologie i clasificare;
un sistem de concepte;
un mod de descriere;
un sistem de propoziii, formulate asupra unor entiti neobservabile;
un sistem ipotetico-deductiv.

Condiiile necesare dezvoltrii unui sistem expert

Pentru crearea unui sistem expert performant trebuie s se stabileasc un plan de dezvoltare
care s includa:
1. selectarea unui formalism pentru reprezentarea cunoaterii
2. proiectarea unei maini de inferen
3. adugarea facilitilor de interaciune cu utilizatorul
4. adugarea unei faciliti de manevrare a incertitudinii
Odat ce s-a stabilit modul de reprezentare a cunoaterii, pentru a se putea determina
codificarea cunotinelor domeniului specific n program, dezvoltarea sistemului expert
parcurge dou etape eseniale:
a. acumularea cunotinelor necesare n rezolvarea problemelor de ctre
sistemul expert
b. dezvoltarea programelor care s proceseze cunotinele acumulate

a. etapa de acumulare a cunotinelor este esenial, tinnd cont de faptul c orict de


performante ar fi tehnicile de programare, sistemul nu va fi capabil s depeasc
limitele cunoaterii achiziionate. Pentru ca simultan cu acumularea s se
imbunteasc i performanele de cunoatere, este necesar o clasificare a noilor
cunotine, oferindu-se astfel posibilitatea de a fi regsite atunci cnd sunt necesare. De
asemenea, noile cunotine n multe situaii sunt n interaciune cu cele vechi, crendu-
se relaii care trebuie puse n eviden. Cunoaterea este acumulat prin procese de
observare a realitii, nvare i abstractizare.

b. etapa de dezvoltare a programelor este necesar pentru a codifica i procesa cunotinele


acumulate, n scopul rezolvrii n mod autonom a problemelor propuse. Programele
dezvoltate n mod specific pentru rezolvarea anumitor probleme trebuie s faciliteze att
gsirea faptelor relevante din baza de cunotine ct i efectuarea raionamentelor pe baza
cunotinelor extrase pentru identificarea alternativelor i soluiilor corecte.
Proiectarea, realizarea i utilizarea unui Sistem Expert este posibil n urma ndeplinirii
unor condiii:
strategice;
informatice;
de specialitate;
de procedur.
Condiiile strategice presupun :
definirea domeniului;
definirea scopului;
definirea funciilor sistemului;
existena perspectivei progresului;
existena resurselor materiale.

Condiiile informatice presupun:


deinerea i cunoaterea softului specific;
cunoaterea metodelor de reprezentare a cunoasterii;
existena metodelor de stabilire a coerenei bazei de cunotinte.

Cunotinele de specialitate presupun:


cunoaterea domeniului pentru care se dezvolt sistemul;
existena posibilitaii definirii claselor;
posibilitatea extragerii parametrilor necesari de urmtoarele tipuri:
- de performana tehnic;
-de performan economic i comercial;

Condiiile de procedur presupun:


stabilirea fazelor din procesul de proiectare, care sunt adecvate abordrii n aceast
manier;
stabilirea fazelor ce urmeaz s fie rezolvate, cu ajutorul Sistemului Expert;
definirea restriciilor de proiectare i extragerea cunotinelor.

Surse pentru extragerea cunotinelor:


din experiena de practica a unui psihiatru;
din literatura de specialitate;
din experiena utilizrii i programrii calculatoarelor;

VISIRULE

Generalitati:

Win Prolog este sistemul de conducere compilator Prolog pentru PC-uri care folosesc ca
sistem operativ Windows. Este un program stabil si ofera un nivel inalt si productiv bazat pe
deductie logica.
Visirule reda scheme logice pentru crearea de software suport decizie, bazat pe scheme
logice desenate. Rezultatul final, dupa compilare il vizualizam in Flez sau cod Prolog care
este generat automat, complilat si gata pentru a fi rulat. De asemenea pot fi copiate si utilizate
intr-un program separat. Cu ajutorul acestui instrument, construirea unei aplicatii este ca si
cum ai crea o masina grafica.
De asemenea este un instruent inteligent din doua motive. Primul: este folosit pentru a
crea sisteme de cunostinte- baza si in al doilea rand ghideaza inteligent constructia
procesului, aplicatiei urmand constrangeri ceea ce poti si ceea ce nu poti face pe baza
continutului semantic al programului in desfasurare. Aceasta inseamna, de exemplu, nu poti
constui legaturi neadecvate si incorecte.
Visirule furnizeaza constructia automata a dialogurilor menu din intrebari. Acestea
cuprind elemente care pot fi deduse din casutele de expresii din diagrama care au o cale de
raspuns la intrabare.
In acelasi timp, Visirul ofera:
- O mare varietate de tipuri de intrebari incluzand varianta cu o singura optiune sau cu
mai multe optiuni, numere intregi, text, intrari, setare intrare
- Puternica manipulare a expresiilor logice
- Casute de declaratie pentru raspunsuri calculabile care nu sunt stabilite interogand
utilizatorul
- Ferestre de cod pentru codul de procedura si functii externe
- Module care permit grafice multiple pentru a defini un program executabil

Arhitectura Visirule:

Visirule presupune o arhitectura pe niveluri multiple. Cea mai simpla din diagramele Visirule
consta dintr-o caseta de pornire si una sau mai multe casete de intrebare, exista casete de o
singura intrebare si de intrebari multiple, si fereastra de sfarsit unde practic se va afisa
raspunsurile finale.
In imaginea de mai jos se vede fereastra principala a VisiRule cu butoanele sale.
Single choice Multiple choice

Continue Start End Expresion Code Number imput

Integer imput Set imput Name imput

Statement Coment

Single choice = aceasta este optiune implicita. Va permite utilizatorului sa selecteze doar o
optiune

Multiple choice = permite sa fie selectat una sau mai multe optiuni

Number imput = in aceasta caseta utilizatorul va putea introduce orice numar

Integer imput = acesta se aseamana cu Number imput dar permite doar introducerea de
numere intregi

Set imput = aceasta caseta serveste pentru introducerea datelor. Utilizatorul poate introduce in
lista articole separate de spatiu.

Name imput = utilizatorul poate introduce un nume sau o expresie

Beneficii:
-Diagramele oferite de VisiRule sunt intuitive si compacte.
-Sunt usor de folosit de o larga categorie de oameni.
-Datorita simplitatii si eficientei utilizatorii sunt mult mai putin predispusi la greseli
-Ocupa un spatiu mic de memorie
-Nu exista pericolul degradarii eficientei si face posibil generarea unui cod dupa deciziile
diagramei
Concluzii:
VisiRule ofera un exelent mediu de stocare si comunica cunostintele asociate cu luarea
deciziilor. Acestea ajuta la depasirea multor probleme asociate cu reguli bazate pe text si
decizia de tabele. Nu sunt cerute cunostinte de programare orientata pe obiecte acest lucru
facand posibil utilizarea de o larga categorie de oameni

APLICATIE PENTRU DIAGNOSTICAREA


BOLILOR PSIHICE

Pentru realizarea aplicatiei am urmat Sistemul multiaxial de diagnosticare care este


sintetizat pe 5 axe, care in VisiRule vor fi reprezentate de reguli.

AXA1 inregistreaza toate tulburarile cu exeptia tulburarilor de personalitate, retardului


mental si tulburari ale impulsului nespecificate. Diagnosticarea retardului mental se va realiza
folosind alte evaluari.

AXA 2 inregistreaza tulburarile de personalitate, trasaturile de personalitate dezadaptative


frecvent utilizate

AXA 3- inregistreaza conditiile medicale generale (vizeaza afectiuni ca:tulburari infectioase,


neoplasm, tulburari endocrine, metabolice, imunologice, afectiuni constitutive ale sangelui,
boli ale sistemului nervos si organelor de simt, tulburari ale sistemului circulator, tulburari ale
aparatului respirator, tulburari ale aparatului digestiv, tulburari ale aparatului genito- urinar,
afectiuni dermatologice, probleme legate de graviditate, boli ale sistemului muscular si osos,
anomalii congenitale, raniri sau intoxicatii cu substante toxice. Daca tulburarea psihica este
considerata a fi consecinta directa a unei conditii medicale generale, aceasta se inregistreaza
pe AXA 1 (Tulburari mentale datorate unor conditii medicale generale, afectiunea somatica
trecandu-se pe AXA3). In VisiRule nu va fi prezenta.

AXA 4 pe aceasta axa se trec stressori negativi si pozitivi (daca se apreciaza ca acestia
constituie sau conduc la o problema); In general se inregistreaza conditii in care au aparut cel
mult un an inainte de declansarea simptomatologiei, dar se pot nota si probleme din trecutul
indepartat, daca acestea sunt relevante, Problemele psiho- sociale se noteaza, de regula pe
AXA 4 dar si pe AXA1 daca sunt cauze directe ale tulburarii psihice

AXA 5 indicele global de evaluare a functionarii este o masura a nivelului general de


functionare si este util pentru planificarea terapiei, ebaluarea efectelor terapiei, anticiparea
rezultatelor. Cotarea se face doar referitor la functionarea/ adaptarea psihologica, sociala si
ocupationala; nu sunt incluse dificultatile datorate limitarilor de ordin fizic sau care tin de
mediu.
Tinand cont de aceste axe pentru crearea aplicatiei care ajuta la diagnosticarea diferitelor
patologi am creat in VisiRule 3 reguli.

Regula I
In Visirule regulile sunt redate de butonul start. Simptomatologia diferitelor boli va fi
sintetizata in intrebari folosind butoanele single choice saul multiple choice.
Utilizand butonul start din fereastra cu instrumente a VisiRule, am stabilit ca pentru inceput
se va face o evaluare generala a sanatatii mintale a pacientului. Psihologul va interoga
pacientul cu privire la copilaria, daca a fost fericita sau daca a avut incidente care l- ar fi putut
marca.
Antecedentele in familie pot incide asupra psihicului, anumite boli psihice pot fi transmise
ereditar. Psihologul va intreba pacientul daca a mai avut pe cineva in familie care sa fi avut
probleme de sanatate mintala.
Pana in acest punct in VisiRule graficul a fost realizat cu ajutorul a doua instrumente
Single choice. Utilizand butonul Expresion am creat variantele de raspuns la combinatiile
celor doua casete Single choice, prima cuprinzand intrebarea ;cum a fost copilaria, iar a
doua cuprinde intrebarea: a avut boli psihice in familie? Codul l-am scris respectand
sintaxa:

?copilarie=ok and ?antecedente=nu ?copilarie=nefericita and ?antecedente=da

?copilarie=ok and ?antecedente=da ?copilarie =nefericita and ?antecedente=nu

Este important definirea variabilelor sa fie exacta. Daca in caseta Single choice am
definit ca variabila, de exemplu copilarie, si in caseta Expresion unde scriem codul va
trebui sa scriem variabila exact asa cum este definita in Single choice.
Visirule va genera codul in Flex automat, si va reda aceste ferestre, care practic sunt
utilizate de catre psiholog pentru evaluarea si diagnosticarea pacientului. Generarea codului se
realizeaza accesand Option -> Show code. Astfel va aparea prima fereastra in care sunt
prezente regulile.
Evaluarea generala a pacientului continua studiind starea de spirit, care poate fi buna
sau rea. Butoanele rosii, End vor contine primele rezultate in functie de raspunsul obtinut la
intrebare. Aici se termina prima ramura a schemei grafice a acestei aplicatii.
Infereastra deschisa de catre utilizator in afara de regula examinare generala si examin
psihic vedem alte reguli: tulburari de personalitate, anxietate. Interesul deosebit pentru
prezentarea tulburarilor de personalitate este legat de urmatoarele aspecte:
-personalitatea si implicit tulburarile de personalitate reprezinta fundalul pe care se
desfasoara tragedia bolilor psihice sau somatice si in acest context perceperea ei de catre
medic sau psihologul clinician va suferi distorsiuni caracteristice
-situate la limita normalitate- boala, fara sa isi poata defini un statut, tulburarile de
personalitate vor fi uneori confundate cu boala psihica, creand dificultati de diagnostic si
abordare.
-tulburarile de personalitate ale membrilor familiei bolnavului pot complica in cele mai
diverse ipostaze interventia terapeutica.
-Medicul sau psihologul clinician poate fi el insusi personalitatea care se inscrie in
aceasta sfera, iar acest lucru va genera dificultati de relationare extreme
Tulburarea anxioasa generalizata se caracterizeaza prin anxietate persistenta pe o
perioada de cateva luni. Diagnosticul de tulburare anxioasa se pune in urmatoarele conditii:
Suferindul trebuie sa aibe de obicei urmatoarele simptome:
a) Aprehensiune (temeri despre vitoare nenorociri, sentimentul de a fi pe marginea
prapastiei, dificultati de concentrare, etc
b) Tensiune motorie (framantare permanenta, cefalee tip tensiune, tremuraturi,
incapacitate de relaxare);
c) Hiperaciditate vegetativa (ameteli, transpiratii, tahicardie sau tahipnee, disconfort
epigastric, gura uscata)
In cazul in care psihologul are deja suspiciunea unuia din cele doua tulburari, in fereastra
principala sunt prezente regulile anxietate si tulburari de personalitate. Realizarea in VisiRule
a fost posibila utilizand butonul Continue -> Start. In noul Start am redefinit ca regula
cuvintele scrise in Continue, respectiv anxietate, tulburari de personalitate, ceea ce a permis
continuarea de la arborele principal dar poate fi si luat separat ca reguli in sine.
Mergand pe ramura Anxietate am sintetizat in intrebari simple cateva din
simptomele reprezentative pentru aceasta tulburare enumerate mai sus, si le-am transpus in
schema grafica utilizand caseta Single Choice. In acelasi mod am procedat pentru Tulburari
de personalitate. Aceasta simplifica munca psihologului.
Pentru a ajunge la un diagnostic, rezultatul final se merge din intrebare in intrebare.

Intrebuintand butonul Code, am facut posibila sublinierea unei avertizari. Daca pacientul
a avut o copilarie nefericita -> a avut boli psihice in familie -> fata de examinator este calm,
apatic -> este trist => posibilitatea unui suicid.
In continuare in VisiRule se merge pe un bloc Single choice unde am introdus
intrebarea care psihologul ar pune-o pacientului, adica daca a mai incercat sa se sinucida.
Doua raspunsuri posibile. Pe ramura cu NU avem diagnosticul Depresie fiind decizia finala.
Pe ramura cu DA sunt necesare alte informatii cu privire la pacient, si anume daca este sub
tratament cu antidepresive si daca consuma droguri si/sau alcool. Aceasta s-a realizat prin
introducerea altor doua blocuri Single Choice fiecare continand o intrebare.
Pentru primul bloc Single Choice unde se va implementa intrebarea daca este sub
tratament cu antidepresive, variabila am denumit-o consum, iar pentru al doile-a bloc Single
Choice unde se va implementa intrebarea daca pacientul uzeaza droguri si/sau alcool am
denumit variabila drog.
Avem patru combinatii de raspunsuri:
?consum=da and ?drog=nu cu rezultatul final in End, Internare de urgenta.
?consum=da and ?drog=nu cu rezultatul final in End, Repaos
?consum=nu and ?drog=da cu rezultatul final in End, Dezintoxicare
?consum=nu and ?drog=nu cu rezultatul final in End, Tratament cu antidepresive
In continuare mergand pe ramura blocului Tulburari de personalitate pentru a realiza
trecerea si continuarea am utilizat un bloc Continue si in continuare un bloc Start ceea ce a
permis atat continuarea cat si crearea unei noi reguli.