Construcció d’un Sistema Expert per caracteritzar el risc de...

124
Construcció d’un Sistema Expert per caracteritzar el risc de contaminació del sòl utilitzant l’eina FuzzyTech TITULACIÓ: Enginyeria Tècnica en Informàtica de Gestió AUTORS: Alejandra Godia González DIRECTORS: Dra. Aida Valls, Dra. Marta Schuhmacher DATA: Juny / 2008. Departament d’Enginyeria Informàtica i Matemàtiques

Transcript of Construcció d’un Sistema Expert per caracteritzar el risc de...

Page 1: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

Construcció d’un Sistema Expert per

caracteritzar el risc de contaminació del sòl

utilitzant l’eina FuzzyTech

TITULACIÓ: Enginyeria Tècnica en Informàtica de Gestió

AUTORS: Alejandra Godia González

DIRECTORS: Dra. Aida Valls, Dra. Marta Schuhmacher

DATA: Juny / 2008.

Departament d’Enginyeria Informàtica i Matemàtiques

Page 2: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

2

AGRAÏMENTS Aquest projecte s’ha pogut fer gràcies al suport del projecte espanyol CTM2007-

64490/TECNO (/Desarrollo de un modelo de evaluación de

exposición y riesgo por la aplicación de fangos de depuradoras en suelo

agrícola, basado en un sistema experto neuro-fuzzy integrado en SIG/).

Personalment vull agrair a la meva família que m’ha estat donant suport durant tot el

projecte, a l’Aida Valls per confiar en mi i tirar en davant aquest projecte, i finalment, a

la Marta Schumacher per l’interès que ha mostrat a l’hora d’ajudar-me en tot el

possible.

Page 3: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

3

1 INTRODUCCIÓ............................................................................................................ 5 1.1 FUZZYTECH......................................................................................................... 7 1.2 OBJECTIUS PFC................................................................................................... 9 1.3 ESTRUCTURA DEL DOCUMENT ..................................................................... 9

PART I. CONCEPTES TEÒRICS ................................................................................. 11 2. LÒGICA FUZZY ....................................................................................................... 11

2.1 OPERACIONS ..................................................................................................... 12 2.1.1 COMPLEMENTACIÓ.................................................................................. 12 2.1.2 UNIÓ ............................................................................................................. 13 2.1.3 INTERSECCIÓ ............................................................................................. 14

2.2 FUZZYFICACIÓ ................................................................................................. 15 2.3 DEFUZZYFICACIÓ............................................................................................ 16

3. SISTEMES EXPERTS DIFUSOS ............................................................................. 20 3.1 INTRODUCCIÓ ALS SISTEMES EXPERTS.................................................... 20 3.2 ADQUISICIÓ DEL CONEIXEMENT ................................................................ 23 3.3 AVANTATGES I INCONVENIENTS DELS SISTEMES EXPERTS .............. 25 3.4 SISTEMES EXPERTS DIFUSOS ....................................................................... 26

3.4.1 GRAU DE SATISFACCIÓ DE L’ANTECEDENT ..................................... 26 3.4.2 APLICACIÓ D’UNA REGLA...................................................................... 28 3.4.3 OBTENCIÓ DE LA CONCLUSIÓ .............................................................. 30

3.5 AVANTATGES I INCONVENIENTS DELS SISTEMS EXPERTS DIFUSOS 32 3.6 SISTEMA EXPERT EN FUZZYTECH .............................................................. 32

3.6.1 DEFINIR LES VARIABLES D’ENTRADA ............................................... 32 3.6.2 DEFINIR LES VARIABLES DE SORTIDA ............................................... 35 3.6.3 DEFINIR LES VARIABLES INTERMITGES ............................................ 36 3.6.4 DEFINIR EL BLOC DE REGLES ............................................................... 37

4. ELS SISTEMES NEURO-FUZZY ............................................................................ 41 4.1 FUNCIONAMENT D’UNA NEURONA............................................................ 41 4.2 LA NEURONA ARTIFICIAL ............................................................................. 42

4.2.1 TOPOLOGIES .............................................................................................. 43 4.2.2 FUNCIONAMENT ....................................................................................... 44 4.2.3 APRENENTATGE........................................................................................ 44 4.2.4 AVANTATGES I INCONVENIENTS DE LES XARXES NEURONALS 48

4.3 NEURO-FUZZY EN GENERAL ........................................................................ 49 4.4 AVANTATGES I INCONVENIENTS DEL SISTEMA NEURO-FUZZY........ 50 4.5 NEURO-FUZZY A FUZZYTECH..................................................................... 50

4.5.1 CONFIGURACIÓ......................................................................................... 50 4.5.2 EXECUCIÓ................................................................................................... 52

PART II. APLICACIÓ AL CAS DE LA CATEGORITZACIÓ DEL RISC DE CONTAMINACIÓ D’UN SÒL ..................................................................................... 55 5. ADQUISICIÓ DEL CONEIXEMENT ...................................................................... 55

5.1 SISTEMA EXPERT PREVI ................................................................................ 55 5.1.1 APROFITAMENT ........................................................................................ 56

5.2 DETERMINACIÓ DE LES REGLES ................................................................. 58 6. DISSENY I IMPLEMENTACIÓ EN FUZZYTECH ................................................ 60

6.1 CARACTERITZACIÓ DE LA FONT DE CONTAMINACIÓ .......................... 60 6.1.1 Descripció del projecte .................................................................................. 60 6.1.2 Estructura del sistema.................................................................................... 60 6.1.3 Variables........................................................................................................ 61 6.1.4 Blocs de Regles ............................................................................................. 69

Page 4: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

4

6.2 VECTORS DE TRANSFERÈNCIA.................................................................... 76 6.2.1 Descripció del projecte .................................................................................. 76 6.2.2 Estructura del Sistema ................................................................................... 76 6.2.3 Variables........................................................................................................ 77 6.2.4 Blocs de Regles ............................................................................................. 82

6.3 SUBJECTES A PROTEGIR ................................................................................ 88 6.3.1 Descripció del projecte .................................................................................. 88 6.3.2 Estructura del Sistema ................................................................................... 88 6.3.3 Variables........................................................................................................ 89 6.3.4 Bloc de Regles ............................................................................................... 92

6.4 SISTEMA EXPERT JUNT .................................................................................. 96 7. JOC DE PROVES DEL SISTEMA EXPERT ........................................................... 98

7.1 ESTUDI D’UN CAS DETALLADAMENT........................................................ 98 7.2 CARACTERITZACIÓ DE LA FONT DE CONTAMINACIÓ ........................ 101 7.3 VECTORS DE TRANSFERÈNCIA.................................................................. 107 7.4 SUBJECTES A PROTEGIR .............................................................................. 110 7.5 SISTEMA EXPERT JUNT ................................................................................ 112

8. ESTUDI DE L’ÚS DE LES TÈCNIQUES NEURO-FUZZY EN AQUEST PROBLEMA ................................................................................................................ 116 9. CONCLUSIONS ...................................................................................................... 119 10. VALORACIÓ PERSONAL DEL PROJECTE FINAL DE CARRERA............... 121 11. TREBALL FUTUR ................................................................................................ 122 12. REFERÈNCIES...................................................................................................... 123

12.1 Bibliografia....................................................................................................... 123

Page 5: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

5

1 INTRODUCCIÓ El sòl és un recurs natural, però no sempre renovable. Per aquest motiu i per què en les

últimes dècades els sòls han patit una forta degradació per la contaminació humana, la

Unió Europea va establir la protecció del sòl i el va integrar com un recurs natural amb

el qual s’ha de vigilar [CEC, 2002]. Al 1998 es va fer una llei a Espanya on les

comunitats autònomes havien de fer un estudi dels seus sòls, mirar quins d’aquests són

contaminats i aplicar la tècnica per remeiar-ho més adient.

Per a aconseguir remeiar un sòl el primer pas consisteix en detectar-ne el nivell de risc

de contaminació. La valoració del risc de sòls contaminats implica l’avaluació del perill,

de la toxicitat i de l’exposició. El resultat de la valoració del risc d’un sòl és un nivell de

risc dins d’un rang predeterminat de valors. Així doncs, el procés de valoració del risc

consisteix en classificar un sòl dins d’una categoria a partir dels valors d’un conjunt de

variable. Fins ara, els mètodes de classificació que avaluaven els sòls contaminants

consistien en comparar els resultats analítics de certes variables amb uns valors límit

establerts pels governs i determinar si existia risc o no (dues categories). Si els resultats

analítics d’un sòl no superaven els límits establerts, es considerava que no era necessària

cap acció de remediació.

Com es pot veure, es tracta d’una aproximació massa simple per a un problema

mediambiental complex que depèn de molts factors que estan interrelacionats. Per

exemple la percepció del nivell de risc canviarà molt si ens fixem amb condicions

hidràuliques, o amb els processos físics, químics i biològics associats. Per tant, és

necessari tenir en compte tots els paràmetres que influeixen en la contaminació en el sòl

per poder determinar el nivell de risc.

A [Asante-Duah, 1998] s’estableix que les activitats que s’han de fer són: la

identificació de les fonts de la contaminació, la definició dels camins dels moviments

del contaminant, la identificació de poblacions potencialment en risc, la determinació

dels productes químics específics de gran preocupació, la determinació de la freqüència

de les exposicions del receptor als agents contaminadors ambientals, l’avaluació dels

nivells d’exposició del contaminant, la determinació de la resposta del receptor a les

exposicions químiques, i la valoració d’impactes o del dany resultant d’exposicions del

receptor al producte químic.

Page 6: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

6

La informació recopilada en totes aquestes activitats té un cert grau d’imprecisió

associada. La imprecisió apareix quan els valors amb els que treballem no són

magnituds exactes, sinó que treballem amb valors aproximats (més o menys 15 mg/litre)

o amb valors qualitatius (poca quantitat). No s’ha de confondre imprecisió amb

incertesa. Parlem d’incertesa d’un enunciat quan la informació disponible per avaluar-lo

no és complerta. Per exemple, no hem pogut mesurar l’alçada del Joan tot i que

s’assembla a la del Pere que és de 1,60, per tant l’enunciat “L’altura del Joan és 1,65”

creiem que és correcte però és incert ja que no tenim suficient informació per saber si

aquest és el valor exacte o no.

Si es tenen en compte tots aquests factors es necessita manegar una gran quantitat de

dades simultàniament, que a més presenten imprecisió, això fa que el procés de

classificació dels sòls es compliqui. Per aquest motiu, hi ha una necessitat de

desenvolupar noves tecnologies computacionals que permetin el procés manegament de

la imprecisió i facilitin la caracterització del risc de llocs contaminats.

El grup AGA (Anàlisi i Gestió Ambiental) de la Universitat Rovira i Virgili porta uns

quants anys treballant en aquest tema. Un dels projectes de recerca actuals pretén

utilitzar eines de suport a la presa de decisions per millorar l’activitat de determinar si

un sòl és contaminat.

En aquest sentit, el 2005 es va presentar un altre projecte de final de carrera que

utilitzava un sistema expert difús per caracteritzar el risc de contaminació dels sòls

[García,2005].

El sistemes difusos permeten definir variables lingüístiques per treballar amb valors

imprecisos. Els sistemes experts (SE) imiten el comportament dels experts i es basen en

un conjunt de regles que relacionen les variables d’un problema, i permeten classificar-

lo.

En aquest sistema expert difús, el coneixement en forma de regles va ser proporcionat

per membres del grup AGA. El sistema es va implementar ad-hoc en Java. Les proves

inicials van donar molt bones expectatives, doncs resulta ser una aproximació adequada

del problema, que permet distingir diversos nivells de risc (es consideraven 4

categories) i a més és una eina fàcil d’utilitzar per usuaris no informàtics [Kumar,

2006].

Ara bé, degut a la complexitat d’aquest domini, els estudis posteriors han donat més

informació als experts, que fan que s’hagi de modificar el coneixement introduït en el

Page 7: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

7

sistema. A més, s’ha comprovat que certs casos no es resolen de forma satisfactòria,

possiblement pels paràmetres d’implementació del sistema. A l’hora de voler introduir

aquests canvis s’han trobat diverses dificultats. En resum, podem dir que aquest

software té els següents inconvenients:

• L’execució no és eficient degut a les estructures de dades internes.

• El manteniment del codi és impossible ja que la implementació no segueix els

patrons habituals en sistemes de regles, i a més no està documentat.

• No s’utilitza cap motor d’inferència estàndards, i el model implementat no està

prou documentat i no es té seguretat de que els paràmetres siguin correctes.

Per aquest motiu, s’ha decidit implementar de nou el sistema expert utilitzant una eina

estàndard de construcció de sistemes experts difusos com és l’entorn FuzzyTech.

Cal comentar que la dificultat principal en la construcció d’aquest sistema expert és la

falta d’una base de casos resolts. Es disposa de molt pocs exemples de casos resolts que

indiquin els diferents nivells de risc de contaminant, i tampoc que utilitzin totes les

variables. Com s’explicarà més endavant, la manca de casos d’exemple fa que no es

pugui utilitzar cap mètode d’Intel·ligència Artificial per aprendre les regles que formen

el sistema expert, i que aquestes hagin de ser definides manualment pels experts a partir

de la formalització del seu coneixement del domini. Igualment, la manca d’exemples fa

que no es puguin usar les eines d’optimització de sistemes experts, com els sistemes

Neuro-Fuzzy, que necessiten una gran quantitat d’exemples resolts per poder comprovar

si les regles són adequades o no.

1.1 FUZZYTECH

FuzzyTech és un entorn de desenvolupament per a sistemes difusos que permet el

disseny d’un sistema difús i l’optimització del mateix utilitzant un entrenament basat en

xarxes neuronals.

És un programa comercial desenvolupat per INFORM GmbH, que és una companyia

fundada pel professor Zimmermann, que va ser un dels més reputables del món dels

investigadors en l’àrea de la lògica fuzzy per més de 20 anys. [www.fuzzytech.com].

El FuzzyTech facilita la tasca de construir sistemes experts difusos. Aquesta eina

incorpora un motor d’inferència i té una interfície gràfica molt potent i fàcil d’entendre.

Això permet construir sistemes experts de forma molt ràpida. L’execució del SE és

Page 8: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

8

ràpida i compleix amb els estàndards per al desenvolupament del sistema de la lògica

fuzzy.

Aquest entorn de desenvolupament permet:

• La definició del sistema expert: introduint les variables, les regles i els operadors

que defineixen el comportament del sistema.

• Debugar un sistema expert: hi ha diversos mètodes per poder comprovar si el

sistema expert funciona com tu vols, és a dir pots fer un joc de proves i utilitzar-

lo de diferents maneres.

• La documentació d’un sistema expert: el sistema permet generar tota la

documentació de forma automàtica i ho guarda en un document on hi ha totes

les variables amb les seves gràfiques, totes les regles que hi ha, etc.

• Millora del sistema expert amb tècniques Neuro-Fuzzy: és una eina on s’utilitza

xarxes neuronals per millorar el sistema expert creat.

• La generació de codi: fuzzyTech genera una solució completa de lògica fuzzy en

codi font. Es pot utilitzar aquest codi font per compilar i enllaçar amb el codi

principal que es tingui, cridant el sistema de lògica fuzzy com una funció simple.

Depenent de la edició, es pot generar codi en C, codi font en assemblador per a

processadors, o blocs de funció per a controladors de lògica programable.

• Programabilitat i adaptació: fuzzyTech ve amb una interfície de programació

d’aplicacions que et permet controlar la majoria de les funcions en fuzzyTech del

teu software. Aquest API és subministrat com un DLL anomenat FTRCU

(Unitat de Control Remot de fuzzyTech) el qual conté totes les funcions que

necessites per integrar completament el fuzzyTech amb el teu programa.

Cal destacar que FuzzyTech és el líder del mercat en lògica fuzzy ja que ha permès

exitosament més aplicacions de lògica fuzzy que qualsevol altra eina. També perquè és

autoritzat per molts fabricants de sistema de control. Una altra raó per ser líder és que

reparteix més ràpid i més sistemes compactes que qualsevol altra eina de lògica fuzzy.

Page 9: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

9

1.2 OBJECTIUS PFC L’objectiu d’aquest PFC és construir un sistema expert difús que ens ajudi a decidir

quin és el nivell de risc ambiental d’un sòl contaminat utilitzant l’entorn de

desenvolupament FuzzyTech.

Aquest objectiu es pot descompondre en els següents subobjectius:

• Adquirir els coneixements del tema, és a dir, entendre i aprendre la matèria

relacionada amb sistemes experts i amb xarxes neuronals.

• Obtenir i modelar el coneixement del domini, utilitzant com a base del projecte

final de carrera “Sistema experto para la priorización de suelos contaminados”

[García, 2005], i el suport dels experts del grup AGA..

• Aprendre a utilitzar l’entorn de desenvolupament de FuzzyTech, tant en la part

de sistemes experts com en la de Neuro-Fuzzy.

• Dissenyar i construir el Sistema Expert usant totes les eines de FuzzyTech.

1.3 ESTRUCTURA DEL DOCUMENT

Aquest document s’estructura en dues parts. La primera presenta els conceptes teòrics

que s’han estudiant en el projecte final de carrera, i també presenta l’eina FuzzyTech en

general. La segona part està centrada en l’aplicació pràctica d’aquests coneixements i

d’aquesta eina al cas de la categorització del risc de contaminació del sòl.

En el capítol 2 s’expliquen els conceptes bàsics de la lògica difusa (Fuzzy), que seran

utilitzats posteriorment. El capítol 3 està dedicat a l’explicació dels sistemes experts

difusos que utilitzarem en aquest projecte. En aquest capítol s’explica com crear el

sistema expert utilitzant l’eina FuzzyTech. En el capítol 4 es fa una introducció al

sistema Neuro-Fuzzy on s’especifica el funcionament de les neurones, i on s’explica

com crear un sistema neuronal fuzzy amb l’eina FuzzyTech. Dintre del capítol 5 podem

trobar l’explicació de la estructura del Sistema Expert que hem creat i les diferents

formes de crear les regles. En el capítol 6 estan definides i explicades totes les variables

i regles utilitzades en el Sistema Expert creat. El capítol 7 està dedicat a comprovar el

seu bon funcionament amb els jocs de proves pertinents. En el capítol 8 es fa un estudi

d’un petit Sistema Expert dels que hem creat aplicant-li les tècniques del Neruo-Fuzzy

Page 10: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

10

per comprovar si millora. Al capítol 9 trobem les conclusions d’aquest PFC. En el

capítol 10 la valoració personal del projecte final de carrera realitzat. El capítol 11 està

dedicat a possibles millores d’aquest PFC per un futur. I finalment, en el capítol 12

trobem totes les referències utilitzades per elaborar aquest PFC.

Page 11: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

11

PART I. CONCEPTES TEÒRICS

2. LÒGICA FUZZY

La lògica Fuzzy [Zadeh, 1965] ens permet manegar i processar certs tipus d’informació

en els quals es presenten termes inexactes i imprecisos.

En els conjunts clàssics (també anomenats nítids) o pertanys a un conjunt o no hi

pertanys, no es val un terme mig. Per tant, la pertinença és binària: cert o fals.

En canvi, amb els conjunts difusos podem utilitzar una pertinença graduada, és a dir,

que un element pot estar en diferents conjunts amb un cert grau. Si tenim l’interval [0,1]

on 0 vol dir que no hi pertany en absolut al conjunt, i 1 que hi pertany completament.

Podem dir que un element pertany al conjunt A amb 0,2 i al conjunt B amb 0,8. Com

més gran és la pertinença al conjunt, més gran és el valor assignat.

La funció que defineix un conjunt difús es diu funció de pertinença. Aquesta funció

donat un element del domini retornarà el valor corresponent que estarà en l’interval

[0,1]. Per tant, la funció de pertinença µ sobre el domini de referència D és de la

següent forma:

:µ D → [0,1]

Tenim un exemple de pertinença en la figura 1 on s’indica quan una persona és “alta” en

relació als metres que medeix:

Figura 1. Exemple de funció de pertinença ALT

Page 12: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

12

2.1 OPERACIONS

Sobre els conjunts nítids es defineixen diverses operacions matemàtiques com la unió,

la intersecció, el complement, la cardinalitat, etc. Els conjunts difusos tenen les

mateixes operacions, però generalitzades pel cas de pertinença difusa..

A continuació expliquem les operacions que seran utilitzades posteriorment en el

Sistema Expert difús.

2.1.1 COMPLEMENTACIÓ

Aquesta funció ens permet construir el complementari d’un conjunt difús en un domini

D.

La pertinença d’un element al complementari és una funció que anomenem N – funció

de negació. Aquesta funció, quan el valor de l’element sigui 1 ens retornarà 0, per tant

N(1)=0.

N com funció ha de complir aquestes condicions:

• N(1)=0 i N(0)=1 són les condicions de contorn.

• per tot a,b en [0,1], si a≤ b aleshores N(a)≥N(b) és la condició de monotonia.

• per tot a en [0,1], N(N(a))=a és la condició d’involució.

Però hi ha infinites funcions que satisfan totes aquestes condicions. Això fa que mentre

pels conjunts nítids hi ha una única manera de fer el complementari, en els conjunts

fuzzy n’hi ha tantes com funcions N que satisfan les condicions anteriors.

Seguint amb l’exemple de l’alçada d’una persona, la complementació del conjunt µALT

(Figura 1) és el conjunt µno-ALT, representat a la figura 2.

Page 13: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

13

Figura 2. Complement del conjunt ALT

2.1.2 UNIÓ

En aquesta operació, com tractem amb dos conjunts hi haurà dos graus de pertinença

que es combinen. La unió s’anomena t-conorma i donats els dos valors en l’interval

[0,1] en retornarà un altre en el mateix interval sent la unió. Aquesta funció ha de

complir les següents condicions:

• S(a,b) = S(b,a) (commutativa)

• S(a,S(b,c))=S(S(a,b),c) (associativa)

• si a≤ c i b≤ d llavors S(a,b)≤S(c,d) (monotonia)

• S(a,0)=a (element neutre)

Si fem una unió de la funció de pertinença de l’alçada quan considerem que és alt, i el

seu complementari queda representat en la figura 3.

Figura 3. Unió del conjunt ALT i del seu complementari

Page 14: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

14

Els diversos operadors que compleixen les condicions anteriors són molts, els més

habituals són:

• Max: per cada valor del domini de referència, es tria la màxima pertinença als

conjunts que s’uneixen.

),max(),( babaS =

• BSum: per cada valor del domini de referència, se sumen els valors de

pertinença a tots els conjunts que s’uneixen, utilitzant un límit d’1 com a llindar

superior.

)1,min(),( babaS +=

2.1.3 INTERSECCIÓ

Com passa amb la unió, tenim dues funcions de pertinença amb les quals construirem

la funció de pertinença del conjunt intersecció. Aquesta funció l’anomenem T (t-norma)

i ha de complir les següents condicions:

• T(a,b) = T(b,a) (commutativa)

• T(a,T(b,c))=T(T(a,b),c) (associativa)

• si a≤ c i b≤ d llavors T(a,b)≤T(c,d) (monotonia)

• T(a,1)=a (element neutre)

Si fem la intersecció de la funció de pertinença de l’alçada quan considerem que és alt, i

el seu complementari queda com en la figura 4.

Figura 4. Intersecció del conjunt ALT amb el seu complementari

Page 15: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

15

Les T-normes més conegudes són :

• Min: per cada valor del domini de referència, es tria la mínima pertinença als

conjunts que s’uneixen.

),min(),( babaT =

• Producte: per cada valor del domini de referència, se multipliquen els valors de

pertinença a tots els conjunts que s’uneixen.

babaT *),( =

2.2 FUZZYFICACIÓ

La fuzzyficació és el procés amb el qual transformem les variables numèriques del món

real a les variables fuzzy. Aquesta traducció la podem fer mitjançant les variables

lingüístiques.

Una variable lingüística pren com a valors paraules en llenguatge natural que

s’interpreten després mitjançant conjunts difusos.

La variable lingüística ve definida per quatre elements:

1. El nom de la variable lingüística. Per exemple l’alçada.

2. Els valors lingüístics que pot prendre la variable. Per exemple, si continuem amb

l’exemple de l’alçada li podem definir els valors lingüístics com el conjunt

{baix, mig, alt}. A cada element del conjunt se l’anomena terme lingüístic.

3. Univers de discurs sobre el qual pren valors la variable. És a dir, és el domini de

referència en el qual podem interpretar els termes lingüístics. Per exemple, amb

l’alçada el terme “baix” es pot interpretar amb uns certs valors numèrics en el

domini dels nombres reals. D’aquesta manera, l’univers de discurs de l’alçada és

un subconjunt de nombres reals.

4. Funció semàntica que a cada valor lingüístic li assigna un conjunt difús sobre el

domini de referència. Per exemple, al terme “alt” li assignarem l’alçada a partir

de 1,70 metres.

La fuzzyficació ens permet que si nosaltres tenim un individu amb alçada 1,70, enlloc

de raonar usant aquest valor precís, fem el raonament usant el valor lingüístic “alt”.

La variable lingüística corresponent a l’alçada, amb els seus termes lingüístics “baix”,

“mig” i “alt” està representada a la Figura 5:

Page 16: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

16

Figura 5. Funció semàntica de l’alçada

Quan ja tenim la variable lingüística definida, es pot transformar qualsevol valor

numèric del seu domini de referència en el seu corresponent valor difús. Per exemple,

per una persona amb alçada de 2m li assignarem el valor “alt”. A un nen que medeix 1,2

m li donarem el valor “baix”, i a una altra que medeixi 1.5 li donarem el terme “mig”.

Tanmateix, en alguns casos el valor pot pertànyer a més d’un conjunt. Per exemple, una

persona amb alçada de 1.4 m pertany al concepte “baix” amb valor 0.3 i al concepte

“mig” amb valor 0.7. Si haguéssim d’escollir un sol terme, li assignaríem el de

pertinença més elevada, en aquest cas estatura “mitja”, però habitualment els sistemes

basats en lògica difusa permeten mantenir la informació de pertinença a les diferents

variables i treballar amb totes elles a la vegada. Així ho fan els sistemes experts difusos.

2.3 DEFUZZYFICACIÓ La defuzzyficació consisteix en traduir els valors difusos a valors del món real. És el

procés invers a la fuzzyficació.

Hi ha diferents formes de fer aquesta traducció. Suposem que tenim una variable

lingüística amb 4 termes, i que de cadascun hem fet un tall al seu conjunt difús a

diferents alçades, indicant que la seva activació es dona en diferents nivells.

Concretament, els termes “curta” i “extra_llarga” estan tallats a 0, és a dir, no el volem

considerar. El terme “mitja” està tallat a 0.55, i el terme “llarga” a 0.15, tal com es veu a

la Figura 6.

Page 17: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

17

Figura 6. Conjunt difús a defuzzificar

Volem trobar el valor del domini de referència que millor representa el conjunt difús

format per la unió de “mitja” i “llarga”, segons la seva activació. Els 3 mètodes de

defuzzificació més habituals són:

• Mitjana del màxim (MoM): busca el terme lingüístic que s’ha activat més i

d’aquest es queda amb el punt del mig. Representat en la figura 7.

Figura 7. Mètode Mitjana del Màxim

Com estem utilitzant MoM el resultat és 45, ja que ens quedem amb el punt del

mig del terme amb l’activació màxima.

• Centre de màxims (CoM): és la mitjana ponderada dels màxims valors assolits

en cada terme lingüístic. Representat en la figura 8.

Page 18: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

18

Figura 8. Mètode Centre de Màxims

En aquest gràfic ens mostra que s’ha activat les variables Mitja i Llarga. El

màxim que s’ha activat de Mitja és de 0.55 i agafem el valor del centre que és

45. De Llarga s’ha activat un màxim de 0.15, i el valor del centre és 70. El

centre de Curta és 15 i el de Extra_llarga és 87.5. Per tant, aplicant el CoM el

resultat és 50.36 el qual l’obtenim fent aquest càlcul:

(15 x 0) + (45 x 0.55) + (70 x 0.15) + (87.5 x 0)

0.55 + 0.15 • Centre de l’àrea (CoA): a vegades també s’anomena centre de gravetat (CoG), és

la mitjana dels valors del domini, cadascun ponderat segons la seva pertinença al

conjunt que estem defuzzyficant. La diferència amb la resta és que aquest

considera tots els punts del rang d’activació, no solament el centre. Aquest

mètode normalment és el més utilitzat. Representat en la figura 9.

Figura 9. Mètode Centre de l’Àrea

Page 19: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

19

És el mateix gràfic que l’anterior, però aquest amb el model de defuzzyficació CoA.

Com podem veure, agafa tots els punts. La fórmula per calcular-ho és la següent:

Page 20: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

20

3. SISTEMES EXPERTS DIFUSOS

3.1 INTRODUCCIÓ ALS SISTEMES EXPERTS Els Sistemes Basats en el Coneixement imiten les principals característiques de la

intel·ligència humana i la seva capacitat per resoldre problemes com el comportament

racional orientat a objectes, el comportament flexible i adaptatiu en funció de l’entorn, i

la capacitat d’aprendre de l’entorn i de l’experiència. [Newe,1990]

Els Sistemes Experts (SE) són Sistemes Basats en el Coneixement on el seu objectiu és

resoldre problemes específics i complexes en un determinat domini, que habitualment

són solucionats per experts humans.

Els sistemes experts són programes que incorporen l’experiència d’un expert humà dins

d’un camp restringit i delimitat, amb els quals podem donar una solució a un problema

plantejat com si es tractes d’un expert humà. I tenir experts humans en un domini és

molt costós tant en temps com en diners. [Haton, 1992]

Els sistemes experts utilitzen el raonament per poder donar una solució a partir de la

descripció d’un problema concret.

L’esquema d’un Sistema Expert es composa de 3 blocs, tal com es mostra a la figura 10.

Page 21: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

21

Coneixement Dades del problema del domini concret

Figura 10. Esquema d’un SE.

• BASE DE CONEIXEMENT

Una base de coneixement conté el coneixement d’un domini específic,

codificat en forma de regles. El coneixement que hi ha a la base de

coneixement ens ajuda a resoldre un problema plantejat.

Les regles són del tipus “si condicions llavors conclusió” , és a dir, una

regla és aplicable si es compleixen les seves condicions.

El procés d’adquisició del coneixement és el punt més complex de la

construcció del SE, i el tractarem més endavant.

Els antecedents de les regles normalment apareixen lligats amb

conjuncions ja que és més fàcil recobrir tot el domini d’aplicació del

sistema. Però les premisses també es poden combinar mitjançant

conjuncions, disjuncions o es poden negar amb negacions.

• MEMÒRIA DE TREBALL

A la memòria de treball també se l’anomena base de dades o base de fets.

En la memòria de treball hi han les dades del problema plantejat que cal

resoldre.

Memòria de treball

Base de coneixement

Motor d’inferència

Solució

Page 22: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

22

Aquesta memòria també pot emmagatzemar els raonaments utilitzats per

arribar a la solució durant l’execució del SE.

• MOTOR D’INFERÈNCIA

És l’algoritme encarregat de decidir quines de les regles que hi ha a la

base de coneixement cal utilitzar, a partir de les dades que hi ha a la

memòria de treball, i aplicar-les per arribar a una conclusió. Aquest

procés s’anomena procés de raonament.

La finalitat del motor d’inferència és arribar a una solució acceptable.

Hi ha tres tipus de raonament:

1. Raonament cap endavant: també el podem anomenar raonament

deductiu que consisteix en aplicar les regles que satisfan les

condicions (les aplicables) a les dades d’entrada i anar obtenint

conclusions que ens permeten activar altres regles fins trobar la

solució.

2. Raonament cap endarrere: també anomenat inductiu que

consisteix en partir d’una hipòtesi de solució del problema, que és

l’objectiu, i buscar si aquesta hipòtesi es pot satisfer amb les

condicions de les dades inicials.

3. Raonament híbrid: consisteix en combinar raonaments cap

endavant i cap endarrere. Aprofita les dades inicials i la guia de

l’objectiu per agilitzar el procés de raonament. El cicle és utilitzar

el raonament cap endavant i després cap endarrere tantes vegades

com sigui necessari. Per implementar-ho es podem utilitzar meta-

regles.

Quan construïm un sistema difús hem de tenir en compte que les regles que creéssim

han d’agafar tot el domini d’aplicació, que és la part del problema que volem tractar.

Normalment es fa una partició del domini i es defineixen les regles sobre aquesta

partició.

Page 23: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

23

3.2 ADQUISICIÓ DEL CONEIXEMENT Quan parlem d’Enginyeria del Coneixement ens referim a la construcció, al

manteniment i al desenvolupament dels sistemes basats en el coneixement [Kendal,

2007].

Una de les tasques més importants de l’Enginyeria del Coneixement és l’Adquisició del

Coneixement, que es pot dividir en les següents subtasques:

• Identificació del problema: primer s’ha de determinar si el problema es pot

resoldre mitjançant les tècniques dels Sistemes Basats en el Coneixement, és a

dir que el problema no es pugui solucionar de manera algorítmica. També s’ha

de poder accedir a totes les fonts de coneixement necessàries.

El següent pas és buscar les fonts de coneixement necessàries per al

desenvolupament del sistema on les més comunes són els experts humans en el

domini del problema, llibres i manuals que explicitin el problema i tècniques de

resolució i exemples de casos resolts. Amb aquestes fonts es podran fer els

passos que permeten la resolució del problema i també l’avaluació.

L’enginyer de coneixement i l’expert realitzen una descripció on s’especifica els

objectius, motivacions, estratègies de resolució i la corresponent justificació, i

les fonts de coneixements.

• Conceptualització: necessitem detallar els elements bàsics del problema per

descobrir les relacions que hi ha entre ells. En particular, és necessari observar

com l’expert resol problemes típics i a partir d’aquests extreure principis

generals que poden ser aplicats en diferents contexts.

També s’ha de descompondre el problema en subproblemes, realitzant un

anàlisis fins que l’enginyer del coneixement identifica els conceptes que

defineixen el problema i pot fer una relació jeràrquica de les diferents fases de

resolució fins els operadors de raonament més elementals. D’aquesta forma

aconseguirem fer la estructura del domini i les diferents relacions entre els seus

components.

• Formalització: s’han de considerar tots els diferents esquemes de raonament

que es poden utilitzar per la resolució del problema.

En aquesta fase també s’ha d’analitzar la certesa i la completitut de la informació

disponible, dependències temporals, o la fiabilitat i consistència de la

Page 24: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

24

informació. S’ha de descobrir quines parts del coneixement constitueixen fets

segurs i quins no.

• Implementació: s’ha de decidir el mode concret de representar el coneixement

per a que s’adapti a les estratègies de resolució que es necessiten i les relacions

entre els diferents conjunts de coneixement.

En aquesta fase es definiran les regles, i es descobriran problemes i

incompletituts que obligaran a revisar fases anteriors.

• Prova: s’ha de triar un conjunt de casos resolts representatius i amb aquests s’ha

de comprovar el funcionament del sistema. En aquesta fase és on es

descobreixen errors que permetran corregir anàlisis anteriors. Els errors poden

ser falta de regles, incompletitut, falta de correcció, etc.

Per poder fer l’adquisició del coneixement, existeixen diferents mètodes:

• Aquells que estan basats en la interacció entre un expert i un enginyer del

coneixement: quan l’enginyer és l’encarregat d’extreure el model del domini i

els coneixements que tenen sobre aquest l’expert. Després l’enginyer pot

construir les regles directament, o bé, amb un arbre de decisió que és una

estructura en forma d’arbre on cada node és un atribut i tindrà tants fills com

valors pot tenir aquell atribut. Quan arribem a un node que no té fills, és una

solució del problema.

• Les eines automàtiques d’adquisició del coneixement: l’expert humà utilitza un

programa per ajudar-lo a extreure el seu coneixement. Cada programa dependrà

molt del domini en el qual es treballa, però tindrà unes parts comunes com les

variables d’entrada, les de sortida, regles que es poden fer directament o amb un

arbre de decisió i el programa analitza les regles (atributs no utilitzats, solucions

no obtenibles, situacions no cobertes per cap regla, regles inconsistents, etc.)

• Els basats en l’aprenentatge automàtic: l’aprenentatge automàtic ha de partir

d’una primera representació del coneixement proporcionada pels experts en

forma d’exemples de casos resolts. D’aquesta forma, l’expert no ha d’explicar i

organitzar tot el seu coneixement, sinó buscar bons exemples per a que el

sistema adquireixi el coneixement del domini. Tanmateix, és difícil decidir

quina és la forma òptima per organitzar la informació sobre un domini i quins

són els exemples més adequats per a l’entrenament.

Page 25: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

25

3.3 AVANTATGES I INCONVENIENTS DELS SISTEMES EXPERTS Els sistemes experts tenen moltes avantatges, les més significatives són les següents:

• Utilització en dominis concrets.

• Adequats amb dominis poc estructurats o anàrquics.

• Eficaços amb les tasques de diagnòstic i classificació.

• Capacitat d’autoexplicació de les seves deduccions, el que els converteix en

grans eines per a l’aprenentatge.

• Facilitat de comunicació amb l’usuari. Són molt interactius, cosa que fa que

l’interfície amb l’usuari sol ser en llenguatge natural.

• Permeten cert tipus d’extensions, com per exemple, el tractament de la

informació imprecisa, inexacta o aproximada.

Però els sistemes experts també tenen inconvenients i els més usuals són:

• Fragilitat ja que quan hi ha una situació que no està coberta per la base de

coneixement, o pel conjunt de regles, són incapaços de donar una resposta

raonable.

• Dificultat amb el control: els experts posseeixen coneixements (o estratègies) per

utilitzar el seu coneixement. A aquest tipus de coneixement s’anomena

metaconeixement i se li suposa situat en un nivell conceptual diferent del que

conté el coneixement sobre el domini.

• Baixa reutilització de les bases de coneixement ja que la tasca d’adquirir el

coneixement és quasi artesanal i dependent de l’expert i del domini. Aquestes

característiques fan que sigui molt difícil reutilitzar parcial o totalment una base

de coneixement.

• Incapacitat d’aprendre: la majoria de sistemes experts són incapaços d’aprendre

de les seves pròpies experiències. El resultat dels problemes és una informació

molt útil que hauria d’aprofitar-se per millorar les capacitats cognitives del

sistema.

• Problemàtica de l’adquisició del coneixement: la transferència del coneixement

dels experts humans al sistema expert sol tenir grans dificultats, com hem dit

abans.

Page 26: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

26

• Problema de validació: el procés de validació dels sistemes experts és altament

complicat ja que s’ha de verificar que no existeixin inconsistències en la base de

coneixement, ni cicles deductius tancats, i en general, que el funcionament del

sistema sigui correcte.

3.4 SISTEMES EXPERTS DIFUSOS

Els sistemes difusos són sistemes experts on les regles es defineixen mitjançant conjunts

difusos. [Torra, 2006]

Una regla difusa, en general, està formada per una premissa que es defineix en termes

de variables lingüístiques i una conclusió que també està definida en termes lingüístics.

Recordem que la regla és si premissa llavors conclusió. Per exemple:

si distància és mitja i quantitat de població és baixa llavors risc baix.

En la construcció d’un sistema difús volem que la partició del domini sigui difusa, és a

dir, que un element pot pertànyer a més d’un conjunt, però les pertinences han de ser

parcials ja que la suma de les pertinences ha de ser 1.

Quan construïm el sistema, hem de decidir quines són les variables de sortida i les

variables d’entrada. Després haurem de definir per a cadascuna els seus termes

lingüístics, el seu domini, i els conjunts difusos corresponents. Després hem de definir

les t-normes, t-conormes i el procediment de defuzzyficació que utilitzarem. A

continuació es detalla el funcionament del sistema expert difús, tal i com s’explica a

[Torra, 2006].

3.4.1 GRAU DE SATISFACCIÓ DE L’ANTECEDENT

El grau de satisfacció de l’antecedent d’una regla és el grau en què la regla s’activarà.

La forma de calcular aquest grau és mirant la pertinença dels valors de les variables als

conjunts difusos que apareixen en l’antecedent i després combinant les pertinences amb

les conjuncions que utilitzem en l’antecedent.

Considerem una regla amb n variables d’entrada X1,...,Xn de la forma:

si X1 és t1,a i X2 és t2,b i X3 és t3,c i ... i Xn és tn,z llavors Y és tY,o

Page 27: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

27

on ti,j és un terme lingüístic de Xi (suposem que el conjunt difús associat al terme ti,j és

µ i,j) i on tY,o és un terme lingüístic de la variable de sortida Y.

Aleshores, quan en un instant concret coneixem el valor de cada variable Xi (denotarem

aquests valors per xi), podem avaluar la certesa de les expressions “Xi és ti,j” per a

cadascuna de les variables. Per fer-ho s’ha de mirar en quin grau el valor xi satisfà el

conjunt µ i,j. Això és µ i,j(xi). Per tant, per a la regla anterior podem calcular:

µ 1,a(x1), µ 2,b(x2), µ 3,c(x3),..., µ n,z(xn)

Per finalitzar s’ha de calcular la t-norma que nosaltres volem:

T(µ 1,a(x1), µ 2,b(x2), µ 3,c(x3),..., µ n,z(xn))

Exemple: Si tenim les següents funcions de pertinença :

Figura 11. Funcions de pertinença

Page 28: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

28

Aquestes funcions de pertinença són:

I la regla és: si ε és MP i ε∆ és MP-∆ llavors vc és PN

Fiquem que ε està en 3 i ε∆ està en 8,5

Llavors el grau de certesa de ε és µ MP(3)=(3-2,5)/(5-2,5)=0,2

I el grau de certesa de ε∆ és µ MP-∆ (8,5)=(8,5-7,5)/(10-7,5)=0,4

Ara els combinem mitjançant una t-norma, i considerem el mínim, per tant: T(µ MP(3),

µ MP-∆ (8,5)) = min(0,2, 0,4) = 0,2

En la figura 12 es dóna una representació de la gràfica del càlcul de la satisfacció de la

regla:

Figura 12. Càlcul de satisfacció d’una regla

3.4.2 APLICACIÓ D’UNA REGLA

Quan hem calculat el grau de satisfacció de l’antecedent, el següent pas és obtenir la

conclusió de la regla.

Quan l’antecedent se satisfà plenament, la conclusió serà la mateixa que tenim en la

regla, però quan no se satisfà plenament l’antecedent, la conclusió és una modificació

del que apareix en la regla.

Si suposem que el grau en què se satisfà l’antecedent és α , la conclusió de la regla serà

el conjunt difús que hi apareix truncat amb el valor d’α . Això és, si tenim com abans:

si X1 és t1,a i X2 és t2,b i X3 és t3,c i ... i Xn és tn,z llavors Y és tY,o

Page 29: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

29

Si suposem que µ y,0 és el conjunt associat a tY,o , aleshores, la conclusió de la regla és el

conjunt difús:

µ (x) = min (α ,µ Y(x) )

on α = T(µ 1,a(x1), µ 2,b(x2), µ 3,c(x3),..., µ n,z(xn)).

Continuant amb l’exemple anterior:

Com que la funció de pertinença de la conclusió vc és PN és:

I com la satisfacció de la regla era 0,2, aleshores tenim que el procés d’aplicació de la

regla és el següent:

Figura 13. Procés d’aplicació d’una regla

I la representació gràfica de la conclusió de la regla és la següent:

Figura 14. Funció de pertinença corresponent a la conclusió de la regla

Page 30: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

30

3.4.3 OBTENCIÓ DE LA CONCLUSIÓ

Per obtenir la conclusió quan tenim un conjunt de regles, el que fem és aplicar el mateix

procés d’aplicació per a cadascuna de les regles. Això ens retornarà un conjunt difús per

a cadascuna de les regles. La conclusió del conjunt de regles es defineix com la unió de

les conclusions.

Si l’antecedent d’una regla no es compleix, la conclusió és el conjunt buit. Això farà

que en fer la unió de les conclusions aquestes regles no tinguin cap participació en la

conclusió final.

Seguint amb l’exemple anterior:

El valor de l’ε és 3 i el de l’ ε∆ és 8,5 només es satisfan quatre regles i són:

En la figura 15 es mostra gràficament l’aplicació de cadascuna d’aquestes regles

utilitzant una funció de pertinença que és el resultat de tot el sistema:

Page 31: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

31

Figura 15. Aplicació de les regles R1, R2, R3 i R4

La unió de totes les conclusions de les regles anteriors utilitzant la t-conorma màxima és

la següent:

Figura 16. Unió de les conclusions amb la t-conorma màxima

Page 32: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

32

Però com a conclusió tenim un conjunt difús i normalment es vol que la variable de

sortida sigui un valor real. Aquest pas és el de defuzzyficació que ja hem explicat.

Seguint amb l’exemple:

Per finalitzar-lo i donar un valor real podem utilitzar el procés de defuzzyficació centre

d’àrea ja explicat. Si fem el seu càlcul ens dona un resultat de -1,563636.

3.5 AVANTATGES I INCONVENIENTS DELS SISTEMS EXPERTS DIFUSOS A part dels avantatges i inconvenients dels sistemes experts tradicionals, esmentats a la

secció 3.3, l’inconvenient més important és que s’han de fixar molts paràmetres per

construir un sistema expert difús. Quan s’han definit les regles hem de donar una funció

de pertinença per a cada terme, després hem de definir les t-normes, t-conormes i el

procediment de defuzzyficació que farem servir. I l’avantatge és que podem raonar amb

informació imprecisa.

3.6 SISTEMA EXPERT EN FUZZYTECH En aquest projecte fi de carrera s’utilitzarà l’eina FuzzyTech per construir sistemes

experts. En aquesta secció explicarem quins són els passos que s’ha de seguir per

construir un sistema expert en FuzzyTech.

Els passos que cal seguir són:

1. Definir les variables d’entrada

2. Definir les variables de sortida

3. Definir les variables intermitges

4. Definir els blocs de regles

3.6.1 DEFINIR LES VARIABLES D’ENTRADA

Per crear una variable d’entrada s’ha de clicar al menú l’opció Edit i després New

Variable i surt una pantalla on s’ha de definir la variable lingüística (Figura 17).

Page 33: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

33

Després s’ha de ficar el nom que es vol per aquella variable lingüística, i escollir Input

Interface. Després s’ha de triar com es vol definir la variable:

Figura 17. Definició d’una variable lingüística d’entrada

1. Variable d’entrada amb funció de pertinença: marcar Compute MBF com

està en la Figura 17. Després es determina el rang dels valors de la

variable. El següent pas és ficar el número de termes que te la variable

lingüística (que pot ser “low, medium, high”, “negative, zero, positive”,

“small, medium, large”, “decrease, steady, increase” i “close, medium,

far”). En el mateix pas també s’ha de definir la seva semàntica, és a dir,

la funció de pertinença, que pot ser simètrica o asimètrica (Figura 18).

Page 34: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

34

Figura 18. Definir característiques de la variable

L’últim pas per tenir ben definida la variable és definir els punts de la

funció de pertinença de cada terme (Figura 19).

Figura 19. Definir funció de pertinença

2. Variable d’entrada difusa: es marca Fuzzy en l’apartat de mètodes.

Aquesta és una variable on els valors que ens arribaran seran directament

els valors difusos, per tant, no caldrà fer el pas de fuzzyficació (en la

Figura 17 és el segon mètode de la llista). El següent pas només ha de

determinar quin número de termes té i la seva semàntica, de la mateixa

forma que en la variable d’entrada amb funció de pertinença.

3. Variable d’entrada categòrica: es marca Categorical (en la Figura 17 és el

tercer mètode). Una variable categòrica consta d’un conjunt de termes

ordenats però sense cap semàntica associada. Per crear els termes s’ha de

clicar sobre la variable i ficar New Term, i llavors ficar-li el nom que es

vol.

Page 35: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

35

3.6.2 DEFINIR LES VARIABLES DE SORTIDA

Per crear una variable de sortida s’ha de clicar al menú l’opció Edit i després New

Variable i surt una pantalla on s’ha de definir la variable lingüística (Figura 20).

Després s’ha de ficar el nom que es vol per aquella variable lingüística, i el mètode que

vols que s’utilitzi per fer la defuzzyficació. FuzzyTech incorpora els mètodes més

utilitzats, que són el CoM, MoM, Fast CoA (veure secció 2.3).

El següent pas és determinar el rang dels valors de la variable de sortida. Després triar el

número de termes que té la variable lingüística, i la seva semàntica (que pot ser “low,

medium, high”, “negative, zero, positive”, “small, medium, large”, “decrease, steady,

increase” i “close, medium, far”). En el mateix pas també s’ha de triar com vols la

funció de pertinença que pot ser simètrica o asimètrica (Figura 21). Per finalitzar es pot

definir la funció de pertinença per cada terme de forma individual.

Figura 20. Definir variable lingüística de sortida

Page 36: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

36

Figura 21. Definir característiques de la variable

3.6.3 DEFINIR LES VARIABLES INTERMITGES

Les variables intermitges serveixen per poder relacionar dos Sistemes Experts diferents.

És a dir, una variable intermitja és una variable de sortida d’un Sistema Expert, i la

variable d’entrada del Sistema Expert amb el qual el volem relacionar.

Per crear una variable intermitja s’ha de clicar al menú l’opció Edit i després New

Variable i surt una pantalla on s’ha de definir la variable lingüística (Figura 22).

Després s’ha de ficar el nom que es vol per aquella variable lingüística, i el mètode és

únic, solament pot ser Fuzzy. El següent pas és determinar el número de variables que té

i decidir quina és la seva semàntica.

Page 37: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

37

Figura 22. Definir la variable lingüística intermitja

3.6.4 DEFINIR EL BLOC DE REGLES

Per crear un bloc de regles s’ha d’agafar del menú l’opció Edit, i després New Rule

Block. De totes les variables que s’han creat, s’ha d’indicar quines variables tindrà

d’entrada i quines de sortida (Figura 23), després s’ha de determinar quin operador

d’agregació d’entrades s’utilitzarà per calcular el grau de satisfacció de l’antecedent.

Serà un operador d’intersecció entre conjunts difusos (secció 2.1.3). Es pot escollir entre

Min-Max, Min-Avg i Gamma.

El Min-Max permet compensar l’agregació amb el mínim (quan volem simultaneïtat) i

amb el màxim (quan volem “replaçabilitat”, és a dir, en quan una de les variables de la

premissa d’una regla s’activi, tota la regla serà activada). Si posem el valor del

paràmetre λ a 0 es converteix amb el Mínim, i si li posem 1 com valor del paràmetre

llavors és el Màxim. I la seva equació és:

El Min-Avg permet compensar el mínim amb la mitjana dels valors:

Page 38: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

38

L’operació Gamma fa una agregació multiplicativa en lloc de la clàssica additiva:

També cal triar quina operació d’agregació de resultat es vol fer servir (Figura 24), el

qual pot ser Màxim o BSum, que són operadors d’unió de conjunts difusos, explicats en

la secció 2.1.2.

Per finalitzar, s’han de posar dintre del bloc de regles totes les regles necessàries per

definir el sistema expert que s’ha creat, i el resultat amb termes lingüístics (Figura 25).

En aquesta figura es pot comprovar que les premisses estan a la part esquerra amb el IF,

i les conclusions estan a la dreta amb el THEN. El DoS és el pes d’importància que li

dona a les regles, en aquest cas és el mateix pes per totes.

Figura 23. Definir el bloc de regles

Page 39: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

39

Figura 24. Definir els operadors del bloc de regles

Figura 25. Definir les regles

Les regles també es poden mostrar en forma de quadrícula (Figura 26).

Figura 26. Regles del sistema

Page 40: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

40

La Figura 27 mostra un exemple amb 4 variables lingüístiques, on dues d’elles, el pes i

la població les hem utilitzat com variables d’entrada. Com variable de sortida tenim el

risc. La variable cant l’hem creat però no la utilitzem en aquest Sistema Expert. També

tenim un únic bloc de regles amb el qual hem seleccionat l’operador d’agregació

d’entrades Mínim, i l’operador d’agregació de resultats és el Màxim. Com tenim un

únic Sistema Expert no hem utilitzat cap variable intermitja, ja que no la podríem

relacionar amb cap altre Sistema Expert.

Figura 27. Visualització del Sistema Expert en FuzzyTech

Page 41: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

41

4. ELS SISTEMES NEURO-FUZZY

Per pal·liar la dificultat de la construcció de la base de regles de Sistemes Experts

difusos es poden utilitzar eines d’aprenentatge neuronal, són els sistemes Neuro-Fuzzy.

4.1 FUNCIONAMENT D’UNA NEURONA

Les xarxes neuronals artificials son algoritmes que imiten el sistema de comunicació

neuronal dels animals i dels humans.

L’element estructural i funcional més important, en el sistema de comunicació neuronal,

és la neurona. L’esquema d’una neurona biològica és el següent:

Figura 28. Neurona biològica

Com podem veure en la figura 28, cada neurona té un cos principal i un nucli. Desprès

tenim les dendrites que són les ramificacions d’entrada de la neurona, les quals

propaguen la senyal a l’interior de la cèl·lula. I hi ha una ramificació de sortida que

s’anomena axó que depenent de la grandària del cos principal de la cèl·lula està a una

distància més gran o més petita. La seva funció és propagar una sèrie d’impulsos

electroquímics. Per últim, tenim les sinapsis que són les encarregades en que hi hagi

contacte d’una neurona amb una altra.

El funcionament és el següent. Les sinapsis recullen informació electroquímica que els

hi arriba des d’una neurona amb la qual està connectada. Aquesta informació arriba al

Page 42: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

42

nucli on es processa i desprès genera una resposta que es propagada per l’axó. Més tard,

la senyal es ramifica i arriba a les dendrites de les altres neurones a través de la sinapsis.

El funcionament d’una neurona es composa de tres parts:

• Els receptors que són els encarregats de recollir les informacions en forma

d’estímuls.

• El sistema nerviós, que recull les informacions, les elabora, les guarda i les

envia.

• Òrgans efectors que reben la informació i la interpreten en forma d’accions

motores, hormonals, etc.

4.2 LA NEURONA ARTIFICIAL Una xarxa neuronal consisteix en la interconnexió d’un conjunt d’unitats elementals,

anomenades neurones, i que no són més que processadors molt primitius. [Isasi, 2004].

El que fa aquest processador és aplicar una funció d’activació als valors de les seves

entrades que provenen de connexions amb altres neurones, i d’aquesta forma s’obté un

valor que es converteix en la sortida (o sortides) el qual s’envia a les altres neurones.

Qui aplica la funció a les entrades és el nucli de la neurona i la importància de la

informació rebuda o enviada per les connexions es fa mitjançant l’ús de pesos per a

cada connexió.

Les xarxes neuronals artificials serveixen per trobar solucions als problemes de

classificació i predicció. Serveixen per millorar els sistemes experts creats.

Una neurona artificial és com podem veure a la figura 29:

Figura 29. Neurona Artificial

Page 43: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

43

4.2.1 TOPOLOGIES

La topologia és la manera d’organitzar les diverses unitats en capes diferents, i també

les diferents funcions d’activació que es poden utilitzar. Combinant diferents topologies

podem obtenir diferents arquitectures de xarxes neuronals.

La xarxa neuronal més senzilla és la que té un número determinat d’entrades i una única

sortida, s’anomena Perceptró. Però aquesta xarxa només permet de calcular funcions

molt senzilles.

Una mica més complicat seria la xarxa monocapa, on apareix un conjunt de neurones

que formen la capa oculta. En la xarxa monocapa, com més neurones hi ha que formen

la capa oculta més complexes són les tasques que permet efectuar, però augmenta el risc

de sobreespecialització. També cal dir que la capa de sortida pot estar formada per més

d’una neurona en aquesta xarxa. (Figura 30).

Figura 30. Xarxa monocapa

Les topologies es poden complicar introduint més capes ocultes, és a dir, construint

xarxes multicapa. (Figura 31).

Figura 31. Xarxa multicapa

Page 44: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

44

4.2.2 FUNCIONAMENT

El funcionament d’una neurona es pot descompondre en dues parts:

• La funció de combinació: a partir de tots els valors d’entrada, calcula un únic

valor. És a dir, el valor que arriba a través de la connexió d’entrada s’ha de

combinar amb el seu pes i el de totes les connexions d’entrada per a donar un

únic valor. Tenim varies funcions per calcular-ho: suma ponderada, funció

màxim, mínim, funció AND i la funció OR. Però la suma ponderada és la més

utilitzada.

• La funció d’activació: pren el valor calculat per la funció de combinació i el

passa a la connexió de sortida. Serveix per acotar el valor de sortida. La més

habitual és la funció Sigmoide que dóna valors entre 0 i 1.

4.2.3 APRENENTATGE Per a que una xarxa neuronal pugui comportar-se de la forma desitjada i funcionar com

un sistema concret cal entrenar-la. És a dir, la part més important d’una xarxa neuronal

artificial és l’aprenentatge. I el sistema d’aprenentatge és basat en exemples.

L’aprenentatge consisteix en la determinació dels valors dels pesos per totes les seves

connexions, amb la funcionalitat que pugui resoldre eficientment un problema. El

procés general de l’aprenentatge consisteix en introduir els exemples del conjunt

d’aprenentatge, i modificar paulatinament els pesos de les connexions per aproximar-

nos més al valor de la solució. La modificació dels pesos es pot fer després d’introduir

cada exemple del conjunt, o quan s’han introduït tots els exemples. Una vegada s’han

introduït tots els exemples s’ha de comprovar si l’aprenentatge ha acabat. Si no ho ha fet

es repeteix el procés.

Per saber si ha finalitzat l’aprenentatge ho podem determinar:

• Mitjançant un nombre fixe de cicles: es decideix prèviament quants cicles es vol

fer, és a dir, quantes vegades es vol introduir tot el conjunt. Una vegada has

arribat al número fixat es decideix que l’entrenament de la xarxa ha finalitzat.

• Quan l’error és més petit que una quantitat preestablerta: primer s’ha de definir

una funció d’error i es decideix un valor acceptable per l’error. El procés

finalitza quan el valor de l’error és més petit que el valor preestablert.

Page 45: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

45

• Quan la modificació dels pesos sigui irrellevant: hi ha alguns models que

utilitzen un aprenentatge que consisteix en que els pesos de les connexions es

modifiquin cada vegada amb menor intensitat. Si el procés d’aprenentatge

continua, arribarà un moment en que no es podran fer més variacions dels pesos

i és en aquest moment on es finalitza el procés d’aprenentatge.

Per variar els pesos de la xarxa neuronal tenim un mètode d’aprenentatge del qual

explicarem els passos que s’han de seguir. [Isasi, 2004] Per poder entendre els passos

primer s’han de determinar unes equacions necessàries. Sigui ai l’activació d’una

neurona, definim:

• Equació 1: activació de les neurones de la capa d’entrada:

ai1 = xi per i = 1, 2,..., n

on X=(x1, x2, ..., xn) representa el patró d’entrada a la xarxa.

• Equació 2: activació de les neurones de la capa oculta c:

Per i = 1, 2, ..., nc i c= 2, 3, ..., C-1, on aj

c-1 són les activacions de les neurones de

la capa c-1, és a dir, la capa d’abans de la capa de sortida.

• Equació 3: activació de les neurones de la capa de sortida

Per i = 1, 2, ..., nC, on Y = (y1, y2, ...ync) és el vector de sortida de la xarxa.

• Equació 4: la funció d’Error.

E = ∑=

N

nne

N 1)(1

On N és el número de mostres i e(n) és l’error que s’ha comés per la xarxa per al

patró n, donat per l’Equació 5.

Page 46: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

46

• Equació 5:

Sent Y(n) = (y1(n), ..., ync(n)) i S(n) = (s1(n), ..., snc(n)) els vectors de sortida de

la xarxa i les sortides desitjades pel patró n, respectivament.

• Equació 6: es defineix el terme δ associat a la neurona i de la capa de sortida

(capa C) i al patró n del següent mode:

• Equació 7: permet modificar el pes de la connexió de la neurona j de la capa

oculta C-1 a la neurona i de la capa de sortida

• Equació 8: serveix per modificar els llindars de les neurones de la capa de

sortida

• Equació 9: ens permet generalitzar la llei d’aprenentatge per a modificar els

pesos de la capa c a la capa c+1.

Per k = 1, 2, ..., nc, j = 1, 2, ..., nc+1 i c = 1, 2, ..., C-2

On akc(n) és l’activació de la neurona k de la capa c per al patró n i dj

c+1(n) ve

donada per la equació 10.

• Equació 10:

Page 47: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

47

• Equació 11: ens permet la generalització de la llei d’aprenentatge per a la resta

de llindars de la xarxa neuronal.

Per j = 1, 2, ...nc+1 i c = 1, 2, C-2

I els passos per fer el mètode d’aprenentatge modificant els pesos són els següents:

1. S’inicialitzen els pesos i llindars de la xarxa. Generalment, aquesta inicialització

és aleatòria.

2. S’agafa un patró n del conjunt d’entrenament, i es propaga cap a la sortida de la

xarxa el vector d’entrada utilitzant les Equacions 1, 2, i 3, obtenint d’aquesta

forma la resposta de la xarxa per l’anomenat vector d’entrada.

3. S’avalua l’error quadràtic fet per la xarxa per al patró n utilitzant l’Equació 5.

4. S’aplica la regla delta generalitzada per modificar els pesos i llindars de la xarxa.

Per això es segueixen aquests passos:

Es calculen els valors δ per a totes les neurones de la capa de sortida utilitzant

l’equació 6.

Es calculen els valors δ per a la resta de les neurones de la xarxa utilitzant

l’equació 10, començant des de la última capa oculta i retropropagant aquests valors cap

a la capa d’entrada.

Es modifiquen pesos i llindars de la xarxa seguint les equacions 7 i 8 per als pesos i

llindars de la capa de sortida, i 9 i 11 per a la resta dels paràmetres de la xarxa.

5. Es repeteixen els passos 2, 3 i 4 per tots els patrons d’entrenament, completant

d’aquesta forma una iteració o cicle d’aprenentatge.

6. S’avalua l’error total amb l’equació 4 comés per la xarxa.

7. Es repeteixen els passos 2, 3, 4, 5 i 6 fins arribar a un mínim de l’error

d’entrenament, per a això es realitzen m cicles d’aprenentatge.

Aquest procés d’aprenentatge és el més utilitzat, però existeix una variant, que es coneix

amb el nom de procés batch. Bàsicament, es diferencien en que en aquest procés els

paràmetres (pesos i llindars) de la xarxa es modifiquen quan tots els patrons

d’entrenament han estat presentats a la xarxa, i no per cada patró d’entrenament.

Page 48: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

48

4.2.4 AVANTATGES I INCONVENIENTS DE LES XARXES NEURONALS

Les avantatges que té utilitzar les xarxes neuronals són les següents:

• Com es comença amb una estructura predefinida, el grau de llibertat per

aprendre és limitat. La representació de les variables d’entrada i de sortida de les

funcions i la estructura del flux d’informació en el sistema conté molta

informació que la xarxa neuronal pot extreure de les mostres donades.

• Es pot excloure parts del sistema de l’entrenament. Per exemple, això és

necessari en aplicacions on algunes regles contenen un coneixement que és

essencial per a guardar l’operació d’una planta.

• Manualment es pot optimitzar el resultat de l’entrenament.

• Es pot entrenar el sistema de forma interactiva. Després de les modificacions, es

pot començar l’entrenament un altra vegada amb els mateixos o diferents

exemples.

Els inconvenients més importants quan utilitzes xarxes neuronals són els següents:

• Els exemples que introduïm en el sistema per fer l’entrenament de la xarxa

neuronal han de tenir aquestes característiques:

1. Ser significatius: ha d’haver un nombre suficient d’exemples perquè si

n’hi ha pocs, la xarxa no podrà adaptar els seus pesos de forma eficaç.

2. Ser representatius: els exemples hauran de ser molt diversos perquè si té

més exemples d’un tipus determinat, la xarxa s’especialitzarà en aquest

conjunt de dades i no serà d’aplicació general. Totes les regions

significatives han d’estar suficientment representades en el conjunt

d’aprenentatge.

• La solució de la xarxa neuronal és una “caixa negra”, és a dir, no es pot veure el

procediment que ha seguit per donar la solució adequada.

• Les xarxes neuronals requereixen un esforç computacional molt elevat pels

productes de mercat general.

• La selecció del model de xarxa adequat i la configuració dels paràmetres per

poder fer l’aprenentatge, és molt complicat i requereix experiència.

Page 49: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

49

4.3 NEURO-FUZZY EN GENERAL La utilització de sistemes Neuro-Fuzzy ens permeten millorar i perfeccionar els resultats

d’un sistema expert, però amb tots els inconvenients que hem vist a la secció 4.2 hi ha

una limitació per poder verificar i optimitzar la solució d’una xarxa neuronal d’una

manera fàcil.

El punt fort de les xarxes neuronals és que poden aprendre dels exemples, i amb els

sistemes experts difusos és fàcil de verificar i optimitzar. Per aquest motiu, la

combinació de les xarxes neuronals i els Sistemes Experts difusos ens dóna el millor de

cadascuna de les tecnologies. I aquesta combinació és el Neuro-Fuzzy.

Per dissenyar una xarxa neuronal es requereix que el problema a resoldre tingui unes

característiques especials:

• S’ha de poder dividir el sistema en capes. D’aquesta forma, les entrades del

sistema són membres de la capa d’entrada, i les sortides del sistema són

membres de la capa de sortida.

• Els elements dintre d’una capa són independents. D’aquesta forma, tots els

membres d’una capa poden ser processats per processadors paral·lels.

El sistemes experts difusos compleixen aquests requeriments perquè:

• La fuzzyficació, computat per variables d’entrada independents, poden

representar la capa d’entrada.

• Les regles del sistema expert poden representar una capa oculta. Les diferents

regles es poden tractar com múltiples capes.

• La defuzzyficació, processat per variables de sortida independents, poden

representar la capa de sortida.

El Neuro-Fuzzy proporciona els mètodes per un aprenentatge supervisat. El mètode

d’aprenentatge és la funció heurística que avalua les neurones guanyadores per la

següent actualització. El nombre de neurones guanyadores determina quantes neurones

són actualitzades dins de cada pas de la iteració. Com més neurones guanyadores

s’utilitzen, és menor la dependència dels resultats de l’entrenament d’exemples

anteriors.

Normalment es combinen dos tipus d’aprenentatge: el Backpropagation i la idea

d’aprenentatge competitiu. Després que una sortida del sistema estigui computada amb

Page 50: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

50

propagació cap endavant, un error de sortida és identificat per la comparació de la

sortida del sistema amb les dades de sortida donades en els exemples. El

Backpropagation és utilitzat per determinar la regla fuzzy més satisfeta per influenciar

el comportament del sistema. Les regles fuzzy són modificades durant el procés

d’aprenentatge via els seus DoS (Els graus de suport el qual ens indica quin és el grau

de satisfacció de la regla).

4.4 AVANTATGES I INCONVENIENTS DEL SISTEMA NEURO-FUZZY A part dels avantatges i inconvenients de les xarxes neuronals, esmentats a la secció

4.2.4, l’avantatge que té utilitzar els sistemes Neuro-Fuzzy és que es pot utilitzar

qualsevol coneixement que ja es tingui del sistema per començar-lo. Aquest

coneixement del domini és el que es posa inicialment al Sistema Expert difús. Un altre

avantatge és la possibilitat d’aprendre de casos resolts.

Els inconvenients més importants són els següents:

• Neuro-Fuzzy és una tecnologia “jove” encara i que s’ha d’estudiar més a

fons ja que pot donar un resultat molt acurat i pot disminuir molts

problemes.

• L’entrenament de Neuro-Fuzzy ofereix pocs graus de llibertat en l’algoritme

d’entrenament si ho comparem amb altres xarxes neuronals.

• Si les regles no són difuses, els procediments de l’entrenament neuronal no

es poden aplicar.

4.5 NEURO-FUZZY A FUZZYTECH

L’entorn de desenvolupament FuzzyTech incorpora un sistema Neuro-Fuzzy per

optimitzar un sistema expert difús. Per utilitzar l’eina de Neuro-Fuzzy s’han de fer dos

passos: configuració dels paràmetres de la xarxa i execució de la xarxa neuronal.

4.5.1 CONFIGURACIÓ

Per fer la configuració, anem al menú Tools, desprès Neuro i Configuration, d’aquesta

forma arribem a la configuració de la xarxa neuronal. Hem de triar el mètode

Page 51: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

51

d’aprenentatge, el mode de selecció dels exemples, la condició d’aturada de

l’aprenentatge, ja que els exemples es van usant de forma repetida i els paràmetres

d’aprenentatge (Figura 32).

Figura 32.Característiques de la xarxa neuronal

La explicació de cada paràmetre d’aprenentatge és la següent:

• StepWidth(DoS): determinar el valor de freqüència utilitzat per a l’aprenentatge

per actualitzar els DoS de les regles fuzzy.

• StepWidth(Term): posar el valor de freqüència utilitzat per a l’aprenentatge per

actualitzar la posició dels termes de les variables lingüístiques.

• Winner Neurons: determina el número de paràmetres oberts, els quals són

actualitzats un a la vegada per l’algoritme d’entrenament.

La explicació de cada mètode d’aprenentatge és la següent:

• RealMethod: utilitza un únic exemple seleccionat per a trobar els millors termes

i regles per ser canviats. Els canvis per les funcions de pertinença i regles difuses

són computats utilitzant la StepWidth(Term) per canviar els termes, i la constants

StepWidth(DoS) per canviar les regles.

• RandomMethod: de la mateixa forma que el RealMethod solament utilitza

passos aleatoris de l’interval [0…StepWidth(Term)] per canviar els termes, i per

canviar les regles passos aleatoris de l’interval [0…StepWidth(DoS)].

• Batch_Learn: computa un grup en el qual tots els exemples són utilitzats per a

trobar els millors termes i regles per ser canviats.

Page 52: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

52

• Batch_Random: com el mètode Batch_Learn, però utilitzant només passos

aleatoris de l’interval [0…StepWidth(Term)] per canviar els termes, i passos

aleatoris de l’interval [0…StepWidth(DoS)] per canviar les regles.

L’explicació de les condicions d’aturada és la següent:

• Max. Steps (Maximum of Steps): és el número màxim de repeticions dels

exemples.

• Max. Dev.(Maximum of Deviation): el criteri de màxima desviació compara

l’error del pitjor exemple amb un llindar d’error. Els exemples que estan per sota

del llindar són passats per alt dins del procediment d’entrenament.

L’entrenament d’un sol exemple pot incrementar l’error d’altres exemples; per

tant, els resultats d’entrenament són avaluats automàticament després de cada

iteració completa.

• Avg. Dev.(Average Deviation): el criteri de la mitjana de la desviació es

complert si la mitjana dels errors ocorreguts durant una iteració completa està

per sota del llindar d’error definit. L’error mitjà es calcula sumant els errors de

cada exemple dividit pel nombre total d’exemples.

4.5.2 EXECUCIÓ

Quan tenim la xarxa configurada, per executar-la tenim que anar al menú i donar-li a

Tools, després Neuro, i per finalitzar Learning. Llavors tenim que buscar el fitxer on

estan els exemples que li volem donar per a que pugui aprendre. Un cop ja l’hem

seleccionat ens surt la pantalla del control de l’aprenentatge per saber com estan

afectant els exemples del fitxer (Figura 33). D’aquesta forma comença l’aprenentatge i

un cop hem finalitzat el control (Figura 34), es pot comprovar amb el pes de les regles

(DoS) quines són les adequades pel sistema que s’està analitzant (Figura 35). A la

Figura 36 es mostren les regles abans de començar l’aprenentatge per poder comparar-

les.

Per poder executar la xarxa neuronal i que ens doni la millor solució possible, hem de

tenir totes les possibles conclusions de les regles que volem aprendre, i el sistema ens

indicarà quina de totes les conclusions d’una regla és la bona ficant el DoS amb un

valor alt, en canvi, si la conclusió d’una regla no es compleix amb els exemples que

tenim ens posarà el valor DoS molt baix.

Page 53: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

53

Figura 33. Control de l’aprenentatge

Figura 34. El control de l’aprenentatge ha finalitzat

En la Figura 34, tenim un apartat que es diu Errors el qual conté dues gràfiques, la de

l’esquerra ens mostra la història de l’entrenament de la desviació del pitjor exemple

(Max. Deviation) i de la mitjana (Avg. Deviation); i la gràfica de la dreta ens classifica

la desviació de tots els exemples. En cada classe es conten el nombre d’exemples que hi

ha (que es mostra en l’eix de coordenades). Les classes són 0...1%; 1…2%; 2…4%;

Page 54: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

54

4…8%; 8…20%; 20…40%: i 40…100% (escrites en l’eix d’abscisses). El càlcul del

percentatge es basa amb la base variable dels rangs de les variables de sortida.

Després tenim Deviation Values que ens mostra els valors actuals de la desviació del

pitjor exemple i de la desviació mitjana, i ens mostra les condicions d’aturada. A Status

ens fica el mètode que hem elegit, en aquest cas RandomMethod i ens va indicant a Exp.

l’exemple que s’està executant, i Iteration és el nombre d’iteracions que portem de tots

els exemples complets. En Time ens diu el temps que ha tardat la computació anterior.

Per finalitzar tenim Output que ens mostra la comparació entre els valors computats i

els valors de les dades de les mostres per cada variable de sortida.

Figura 35. Regles modificades Figura 36. Regles sense modificar

Page 55: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

55

PART II. APLICACIÓ AL CAS DE LA CATEGORITZACIÓ DEL RISC DE CONTAMINACIÓ D’UN SÒL

5. ADQUISICIÓ DEL CONEIXEMENT

5.1 SISTEMA EXPERT PREVI Com hem explicat a la introducció, el grup AGA (Anàlisi i Gestió Ambiental), està

interessat en l’anàlisi del risc d’un sòl contaminat i estant treballant en aquest projecte

des de fa uns anys. Com exemple del seu interès, a l’any 2005 es va fer un projecte final

de carrera dedicat a aquest tema [García,2005], on les proves inicials van acontentar a

tothom ja que donava una aproximació adequada del problema, i era una eina fàcil

d’utilitzar per usuaris no informàtics.

Però com els estudis relacionats amb aquest domini no han parat, han pogut donar més

informació als experts, els quals fan que s’hagi de modificar el coneixement introduït en

el sistema. I a l’hora d’introduir els canvis pertinents per poder resoldre els problemes

satisfactòriament, es van trobar amb dificultats.

Bàsicament la dificultat és la extracció de les regles ja que no estan definides clarament.

Com hem explicat a l’apartat 3.1, una regla és de la forma si premissa llavors conclusió,

d’aquesta forma tothom ho entén i si has de canviar paràmetres de la premissa saps on

està, i si has de canviar la conclusió perquè han millorat els coneixements i s’han adonat

que ha de canviar doncs saps on ho has de fer. Però al Sistema que tenien implementat,

no hi havia en cap lloc aquesta definició de les regles, cosa que dificulta la pertinent

modificació de les regles.

Les regles en l’altre Sistema estan implementades en Jess, que és un llenguatge de

programació que el podem comparar amb Clips, cosa que dificulta l’enteniment per una

persona que no és expert en informàtica. I com dintre d’aquests fitxers en Clips també

implementava les operacions de fuzzyficació i defuzzyficació, els pesos de les variables,

els arbres de decisió i implementa els conjunts difusos es fa difícil poder separar-ho tot i

Page 56: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

56

mirar detalladament el funcionament per activar una determinada regla. I el més

important, quina és la regla.

El problema d’aquest Sistema bàsicament és que la interfície per utilitzar-lo és fàcil, i

tothom l’entén, però a l’hora de modificar variables, pesos, regles és quasi impossible

perquè no se sap quina part de tot el codi has de modificar per poder arreglar algun

paràmetre.

Per aquest motiu el grup AGA va proposar tornar a construir un Sistema Expert que

pugui determinar el risc que hi ha que un sòl estigui contaminat. Però amb una

implementació que sigui fàcil per poder modificar, si cal, més tard alguns paràmetres.

De forma que una persona no experta en informàtica agafi el Sistema Expert, i pugui

entendre tot el que s’està fent per determinar el risc d’un sòl contaminat.

5.1.1 APROFITAMENT

Del Sistema Expert previ al que estem fent nosaltres, encara que les regles no les hem

pogut extreure, hem pogut aprofitar determinades coses:

• La definició de totes les variables lingüístiques ja que en l’informe estan

explicades totes. Podem definir totes les variables d’entrada que són la toxicitat,

quantitat de contaminant, anitquitat de la construcció, dimensió de la superfície

contaminada, confinament, presentació del contaminant, biodegradació,

solubilitat, pressió de vapor, porositat del sòl, potencia, proximitat aigües

subterrànies, proximitat aigües superficials, ús del sòl, ús de les aigües, recarga,

conductivitat hidràulica, tipus de població, distancia de la població, quantitat de

població, accessibilitat a la zona, activitats sensibles, ecosistemes sensibles,

espècies en perill i impacte visual. I el resultat final que ens ha de donar el risc

del sòl contaminat.

• La ponderació dels criteris que utilitzen, és a dir els pesos que utilitzen per

prioritzar alguna variable dintre de la premissa. Alguns d’aquests pesos estan

fixats en uns documents d’excel que després explicarem, i altres estan

directament aplicats en les regles.

• La estructura en tres grups de variables. És a dir, totes les variables d’entrada

que hem definit abans estan separades en tres grups per poder fer més senzill el

sistema com podem veure en la Figura 37. El primer grup s’anomena

caracterització de la font de contaminació on és el grup on es defineix la font de

Page 57: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

57

contaminació, el segon grup s’anomena vectors de transferència on s’ha de

considerar totes les característiques físiques, químiques i geogràfiques. I el tercer

grup s’anomena subjectes a protegir ja que és la definició de la població i

l’ecosistema exposat.

Figura 37. Esquema Sistema Expert Difús

Page 58: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

58

El Sistema Expert que hem construït també distingeix aquests tres grups, però a més a

més en cada grup tenim diferents Sistemes Experts per poder fer-ho més fàcil, i que les

regles tinguin menys variables en la premissa i poder-les construir millor. Més tard

s’explica aquestes particions dintre d’un mateix grup.

5.2 DETERMINACIÓ DE LES REGLES

Les regles necessàries per definir el Sistema Expert s’han tingut que fer des de zero, ja

que, com hem explicat abans, del Sistema Expert previ no hem pogut treure ninguna

regla. Però per determinar-les hem utilitzat dos mètodes:

• L’expert: aquest mètode consisteix en reunir-nos amb l’expert del domini, en

aquest cas la Dra. Marta Schumacher, i fer entrevistes per poder construir les

regles conjuntament. La Marta ens deia els criteris que haviem de seguir per

construir-les, i s’anaven definint conjuntament. Es va subdividir el sistema

expert en blocs més petits, de forma que les regles fossin més fàcils d’interpretar

i de determinar. Tot i així, aquest sistema no acabava de funcionar bé, degut a

que es tracta d’un domini poc estudiat i sense exemples resolts.

• Mitjana ponderada: en aquest mètode el vam dissenyar per facilitar la tasca de

definició de les regles. Es tracta d’inferir el resultat de la regla utilitzant un

mètode que aproximi el resultat. Per fer-ho es construeix una matriu amb totes

les possibles combinacions dels valors que poden prendre les variables. Aquests

valors són difusos però per fer l’aproximació es converteixen en valors crisp

equiespaiats en el rang [0,1]. Per exemple, una variable amb 3 valors difusos es

tradueix als números 0, 0.5 i 1. A continuació es calcula la mitjana ponderada de

cada combinació de valors (fila de la matriu) usant els pesos que dóna l’expert.

Finalment la conclusió de la regla es converteix en un valor lingüístic, utilitzant

la fuzzificació mitjançant la variable de sortida Risk, que té 3 valors possibles,

de forma que si el valor és més petit que 0.4 llavors el risc és baix, si el valor

està entre 0.4 i 0.6 és mig, i si el valor és de 0.6 fins a 1 tenim un risc alt. Això

ho hem implementat amb el programa Excel. En la Figura 38 podem veure un

exemple de la utilització d’aquest mètode on utilitzem tres variables d’entrada:

logKow, pressió de vapor i solubilitat; els pesos corresponents que són 0.4, 0.4 i

0.2 respectivament. En la cinquena columna tenim la mitjana ponderada, que la

Page 59: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

59

calcula per cada fila. El càlcul que fa és multiplicar el valor de cada variable pel

seu pes i aquests resultats els suma. Per exemple, el càlcul que realitza en la

segona fila és: (0*0.4) + (0*0.4) + (0.5*0.2) = 0.1. La darrera columna ens dóna

el risc mitjançant la variable lingüística definida per l’expert. Aquest resultat es

presenta a l’expert, el qual pot validar el conjunt de regles. D’aquesta manera té

una proposta de partida, i hem comprovat que li va millor determinar quines són

les regles bones i modificar el resultat de les que cal.

Figura 38. Construcció de regles

Page 60: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

60

6. DISSENY I IMPLEMENTACIÓ EN FUZZYTECH Com hem explicat en la secció 5.1.1, la estructura d’aquest SE està feta amb 3 parts, per

tant, explicarem cada una per separat:

6.1 CARACTERITZACIÓ DE LA FONT DE CONTAMINACIÓ

6.1.1 Descripció del projecte

Input Variables 11 Output Variables 1 Intermediate Variables 4 Rule Blocks 5 Rules 71 Membership Functions 48

Taula 1. Estadística del projecte

6.1.2 Estructura del sistema

Aquest grup està dividit en cinc Sistemes Experts. El primer té com variables d’entrada

la quantitat de contaminant alta, mitjana i baixa, i també la toxicitat. Com variable de

sortida té una variable intermitja que es diu riscCantContam que serveix per connectar

aquest SE 1 amb el SE 2. El SE 1 té el seu bloc de regles que s’anomena RB1.

Construïm aquest SE 1 perquè depenent de la quantitat de contaminant i la toxicitat

d’aquest dona diferents resultats de risc, i em considerat oportú fer un Sistema Expert

per tractar-ho.

El SE 2 té com variables d’entrada la biodegradació i la variable intermitja

riscCantContam. El seu bloc de regles és el RB2 i té una variable intermitja de sortida

que s’anomena riscTox la qual la connectem amb el SE 5.

El SE 3 té com variables d’entrada el logKow, la pressió de vapor i la solubilitat. El

bloc de regles corresponent és el RB3 i la variable intermitja s’anomena riscMov que es

connecta amb el SE 5.

El SE 4 té les variables d’entrada antiguitat de la instal·lació, dimensió de la superfície i

el confinament. El seu bloc de regles és el RB4, i té com variable intermijta

l’anomenada riscLloc la qual es connecta al SE 5.

Page 61: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

61

El SE 5 te com variables d’entrada les variables intermitges riscTox, riscMov i riscLloc

amb les quals construeix el bloc de regles RB5. Aquest Sistema Expert és el que dona el

valor de sortida de risc d’aquest grup.

En la següent figura podem observar tota la estructura que hem explicat.

Figura 39. Estructura del Sistema Expert difús

6.1.3 Variables

Aquest capítol conté les definicions de totes les variables lingüístiques d’aquest grup i

les seves funcions de pertinença.

La següent taula ens mostra la llista de totes les variables del sistema amb el seu

respectiu mètode de fuzzyficació o defuzzyficació. També estan definits els termes

lingüístics.

Entrada

# Variable Name Type Unit Min Max Default Term Names 1 antiqInstalacio Units 0 100 0 low

medium high

2 Biodegradacion Units 0 100 0 low medium high

3 cantContamAlta Units 0 15 7.5 low medium high

4 cantContamBaja Units 0 15000 7500 low medium high

Page 62: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

62

# Variable Name Type Unit Min Max Default Term Names 5 cantContamMed

ia Units 0 150 75 low

medium high

6 Confinamiento - 0 2 2 000 subsuelo 001 soterratIsobrSup 002 sobreTerrenoNatu

7 dimenSuperficie Units 0 1500 0 low medium high

8 logKow Units 1 6 1 low medium high

9 presionVapor Units 0 1000 0 low medium high

10 Solubilidad Units 0 1500 0 low medium high

11 Toxicidad Units 0 10 5 low medium high

Taula 1: Variables d’entrada

Fuzzification Methods Compute MBF Look up MBF Categorical Variable Display Fuzzy Input

Sortida

# Variable Name Type Unit Min Max Default Term Names 12 Risc Units 0 10 0 low

medium high

Taula 2: Variable de sortida

Defuzzification Methods Center of Maximum (CoM) Mean of Maximum (MoM) Center of Area (CoA) Hyper CoM Fuzzy Output Force Categorical MoM

Page 63: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

63

Intermitges

# Variable Name Type Unit Min Max Default Term Names 13 riscCantContam - - - - low

medium high

14 riscLloc - - - - low medium high

15 riscMov - - - - low medium high

16 riscTox - - - - low medium high

Taula 3: Variables Intermitges Variable d’entrada “antiqInstalacio”

Figura 40: MBF de "antiqInstalacio"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (4, 1) (6, 0) (100, 0) medium linear (0, 0) (4, 0) (6, 1) (13, 1) (17, 0) (100, 0) high linear (0, 0) (13, 0) (17, 1) (100, 1)

Taula 4: Definició dels punts de MBF "antiqInstalacio"

Page 64: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

64

Variable d’entrada "biodegradacion"

Figura 41: MBF de "biodegradacion"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (1, 1) (2.5, 0) (100, 0) medium linear (0, 0) (1, 0) (2.5, 1) (5, 1) (7, 0) (100, 0) high linear (0, 0) (5, 0) (7, 1) (100, 1)

Taula 5: Definició dels punts de MBF "biodegradacion" Variable d’entrada "cantContamAlta"

Figura 42: MBF de "cantContamAlta"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (0.8, 1) (1.1, 0) (15, 0) medium linear (0, 0) (0.8, 0) (1.1, 1) (9, 1) (11, 0) (15, 0) high linear (0, 0) (9, 0) (11, 1) (15, 1)

Taula 6: Definició dels punts de MBF "cantContamAlta"

Page 65: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

65

Variable d’entrada "cantContamBaja"

Figura 43: MBF de "cantContamBaja"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (800, 1) (1100, 0) (15000, 0) medium linear (0, 0) (800, 0) (1100, 1) (9000, 1) (11000, 0) (15000, 0) high linear (0, 0) (9000, 0) (11000, 1) (15000, 1)

Taula 7: Definició dels punts de MBF "cantContamBaja" Variable d’entrada "cantContamMedia"

Figura 44: MBF de "cantContamMedia"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (8, 1) (11, 0) (150, 0) medium linear (0, 0) (8, 0) (11, 1) (90, 1) (110, 0) (150, 0) high linear (0, 0) (90, 0) (110, 1) (150, 1)

Taula 8: Definició dels punts de MBF "cantContamMedia"

Page 66: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

66

Variable d’entrada "confinamiento"

Term Name 000 subsuelo 001 soterratIsobrSup 002 sobreTerrenoNatu

Taula 9: Nom dels termes de "confinamiento" Variable d’entrada "dimenSuperficie"

Figura 45: MBF de "dimenSuperficie"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (80, 1) (120, 0) (1500, 0) medium linear (0, 0) (80, 0) (120, 1) (950, 1) (1050, 0) (1500, 0) high linear (0, 0) (950, 0) (1050, 1) (1500, 1)

Taula 10: Definició dels punts de MBF "dimenSuperficie" Variable d’entrada "logKow"

Figura 46: MBF de "logKow"

Page 67: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

67

Term Name Shape/Par. Definition Points (x, y) low linear (1, 1) (2, 1) (3, 0) (6, 0) medium linear (1, 0) (2, 0) (3, 1) (4, 1) (5, 0) (6, 0) high linear (1, 0) (4, 0) (5, 1) (6, 1)

Taula 11: Definició dels punts de MBF "logKow" Variable d’entrada "presionVapor"

Figura 47: MBF de "presionVapor"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (7.0000000000001,

1) (12, 0)

(1000, 0) medium linear (0, 0) (7.0000000000001,

0) (12, 1)

(45, 1) (60, 0) (1000, 0) high linear (0, 0) (45, 0) (60, 1) (1000, 1)

Taula 12: Definició dels punts de MBF "presionVapor" Variable d’entrada "solubilidad"

Figura 48: MBF de "solubilidad"

Page 68: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

68

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (0.05000000000018

2, 0) (1500, 0)

medium linear (0, 0) (0.60000000000014, 0)

(0.60000000000014, 1)

(1.0000000000002, 1)

(5.0000000000002, 0)

(1500, 0)

high linear (0, 0) (1.0000000000002, 0)

(5.0000000000002, 1)

(1500, 1) Taula 13: Definició dels punts de MBF "solubilidad"

Variable d’entrada "toxicidad"

Figura 49: MBF de "toxicidad"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (1, 1) (3, 0) (10, 0) medium linear (0, 0) (1, 0) (3, 1) (4, 1) (7, 0) (10, 0) high linear (0, 0) (4, 0) (7, 1) (10, 1)

Taula 14: Definició dels punts de MBF "toxicidad" Variable de sortida "risc"

Figura 50: MBF de "risc"

Page 69: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

69

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (2, 1) (4, 0) (10, 0) medium linear (0, 0) (2, 0) (4, 1) (6, 1) (8, 0) (10, 0) high linear (0, 0) (6, 0) (8, 1) (10, 1)

Taula 15: Definició dels punts de MBF "risc"

6.1.4 Blocs de Regles

Un bloc de regles conté el control d’un Sistema Expert difús. On fica ‘IF’ és la part de

la premissa d’una regla, i en la part ‘THEN’ és la conclusió de la regla. I el ‘DoS’

s’utilitza per donar pes a la regla depenent de la importància que li vols donar.

Bloc de Regles "RB1" Aquest Bloc de Regles va ser creat per nosaltres per poder ajuntar la toxicitat amb la

quantitat de contaminant, ja que depenen l’una de l’altra. La quantitat de contaminant es

mesura diferent segons el nivell de toxicitat. Hi ha 3 possibles definicions, que s’han

presentat a la secció 6.1.3, a la figura 42 “cantContamAlta”, a la figura 43

“cantContamBaja” i a la figura 44 “cantContamMedia”. Aquest sistema expert utilitza

una o altra variable segons el valor de la toxicitat. És a dir, la explicació d’aquest bloc

de regles és que quan la toxicitat és baixa (low), només es té en compte la

cantContamBaja. Si la toxicitat és mitjana (medium), es té en compte la

cantContamMedia, i si la toxicitat és alta (high) només es té en compte la

cantContamAlta.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 4 Number of Outputs: 1 Number of Rules: 9

IF THEN cantContamAlta cantContamBaja cantContamMedi

a toxicidad DoS riscCantContam

low low 1.00 low medium low 1.00 medium high low 1.00 high low medium 1.00 low medium medium 1.00 medium high medium 1.00 high

Page 70: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

70

IF THEN low high 1.00 low medium high 1.00 medium high high 1.00 high

Taula 17: Regles del Bloc de Regles "RB1"

Bloc de Regles "RB2" Aquest bloc de regles el vam crear utilitzant l’aproximació de la mitjana ponderada com

hem explicat a la secció 5.2. En la Taula 19 es poden veure els pesos que li hem donat a

cada variable, i el resultat que observem després en el bloc de regles.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 2 Number of Outputs: 1 Number of Rules: 7

IF THEN riscCantContam biodegradacion DoS riscTox low low 1.00 low low medium 1.00 low low high 1.00 low medium low 1.00 medium medium medium 1.00 medium medium high 1.00 high high 1.00 high

Taula 18: Regles del Bloc de Regles "RB2"

Taula 19. Creació de regles amb l’aproximació de la mitjana ponderada

Page 71: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

71

Bloc de Regles "RB3" Aquest bloc de regles també l’hem creat amb l’aproximació de la mitjana ponderada ja

que ens ha aportat solucions a la decisió. Es pot veure els pesos utilitzats en la Taula 21.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 3 Number of Outputs: 1 Number of Rules: 19

IF THEN logKow presionVapor solubilidad DoS riscMov low low 1.00 low low medium low 1.00 low low medium medium 1.00 low low medium high 1.00 medium low high low 1.00 medium low high medium 1.00 medium low high high 1.00 high medium low low 1.00 low medium low medium 1.00 low medium low high 1.00 medium medium medium low 1.00 medium medium medium medium 1.00 medium medium medium high 1.00 high medium high 1.00 high high low low 1.00 medium high low medium 1.00 medium high low high 1.00 high high medium 1.00 high high high 1.00 high

Taula 20: Regles del Bloc de Regles "RB3"

Page 72: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

72

Taula 21. Creació de regles amb l’aproximació de la mitjana ponderada

Bloc de Regles "RB4" Aquest bloc de regles ha estat creat utilitzant el mètode de l’aproximació de la mitjana

ponderada. Es pot veure en la Taula 23.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 3 Number of Outputs: 1 Number of Rules: 27

IF THEN antiqInstalacio dimenSuperficie confinamiento DoS riscLloc low low subsuelo 1.00 low low low soterratIsobrSup 1.00 low low low sobreTerrenoNatu 1.00 medium low medium subsuelo 1.00 low

Page 73: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

73

IF THEN low medium soterratIsobrSup 1.00 low low medium sobreTerrenoNatu 1.00 high low high subsuelo 1.00 low low high soterratIsobrSup 1.00 medium low high sobreTerrenoNatu 1.00 high medium low subsuelo 1.00 low medium low soterratIsobrSup 1.00 medium medium low sobreTerrenoNatu 1.00 high medium medium subsuelo 1.00 low medium medium soterratIsobrSup 1.00 medium medium medium sobreTerrenoNatu 1.00 high medium high subsuelo 1.00 low medium high soterratIsobrSup 1.00 medium medium high sobreTerrenoNatu 1.00 high high low subsuelo 1.00 low high low soterratIsobrSup 1.00 medium high low sobreTerrenoNatu 1.00 high high medium subsuelo 1.00 low high medium soterratIsobrSup 1.00 high high medium sobreTerrenoNatu 1.00 high high high subsuelo 1.00 medium high high soterratIsobrSup 1.00 high high high sobreTerrenoNatu 1.00 high

Taula 22: Regles del Bloc de Regles "RB4"

Page 74: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

74

Taula 23. Creació de regles amb l’aproximació de la mitjana ponderada

Bloc de Regles "RB5" Aquest bloc de regles és el que decideix el risc final que té aquest grup, ajuntant tots els

resultats dels Sistemes Experts anteriors. Per determinar les regles hem utilitzat el

mètode de l’aproximació de la mitjana ponderada. En la Taula 25 podem comprovar la

importància que li donem a la toxicitat ficant-li un pes molt gran.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 3 Number of Outputs: 1 Number of Rules: 9

IF THEN riscTox riscMov riscLloc DoS risc low 1.00 low

Page 75: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

75

IF THEN medium low low 1.00 low medium low medium 1.00 medium medium low high 1.00 medium medium medium 1.00 medium medium high low 1.00 medium medium high medium 1.00 high medium high high 1.00 high high 1.00 high

Taula 24: Regles del Bloc de Regles "RB5"

Taula 25. Creació de les regles amb l’aproximació de la mitjana ponderada

Page 76: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

76

6.2 VECTORS DE TRANSFERÈNCIA

6.2.1 Descripció del projecte

Input Variables 8 Output Variables 1 Intermediate Variables 3 Rule Blocks 4 Rules 118 Membership Functions 36

Taula 26: Estadística del projecte

6.2.2 Estructura del Sistema

Aquest grup està dividit en quatre Sistemes Experts. El primer té com variables

d’entrada la conductivitat hidràulica, la porositat, la potència i la recarga. Té una

variable intermitja que es diu riscPorPotRecarg que es connecta amb el SE 4. Aquest SE

1 té el seu bloc de regles que s’anomena RB1.

També tenim un segon Sistema Expert el qual té les variables d’entrada aigües

subterrànies i aigües superficials, amb les quals es fa el bloc de regles al qual anomenem

RB2 i té una variable intermitja per connectar aquest SE amb el SE 4.

Tenim un SE que té dues variables d’entrada que són l’ús de l’aigua i l’ús del sòl, les

quals són categòriques. Aquest SE té una variable intermitja la qual serveix per

connectar-lo amb el SE 4. Aquest SE 3 té el bloc de regles pertinent que anomenem

RB3.

Per finalitzar tenim el SE 4 que ens serveix per ajuntar tots els resultats dels Sistemes

Experts anteriors i poder donar un resultat final d’aquest grup.

En la Figura 51 podem observar tots els Sistemes Experts que hem explicat

anteriorment amb les seves relacions.

Page 77: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

77

Figura 51: Estructura del Sistema Expert difús

6.2.3 Variables

Aquest capítol conté les definicions de totes les variables lingüístiques d’aquest grup i

les seves funcions de pertinença.

La següent taula ens mostra la llista de totes les variables del sistema amb el seu

respectiu mètode de fuzzyficació o defuzzyficació. També estan definits els termes

lingüístics.

Entrades

# Variable Name Type Unit Min Max Default Term Names 1 aguasSubterran Units 0 1000 0 high

medium low

2 aguasSuperficial Units 0 1000 0 high medium low

3 conductivHidraul Units 0 0.001 0 low medium high

4 porosidad Units 0 0.6 0 low medium high

5 potencia Units 0 50 0 high medium low

6 recarga Units 0 300 0 low medium high

7 usoAgua - 0 2 2 000 industrial 001 agricolaIpastora 002 recreatiuIdomest

8 usoSuelo - 0 2 2 000 industrial 001 construcIcomerci 002 agricolaIresidnc

Taula 167: Variables d’entrada

Page 78: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

78

Fuzzification Methods Compute MBF Look up MBF Categorical Variable Display Fuzzy Input

Sortides

# Variable Name Type Unit Min Max Default Term Names 9 riscTotal2 Units 0 10 0 low

medium high

Taula 28: Variables de sortida

Defuzzification Methods Center of Maximum (CoM) Mean of Maximum (MoM) Center of Area (CoA) Hyper CoM Fuzzy Output Force Categorical MoM

Intermitges

# Variable Name Type Unit Min Max Default Term Names 10 riscAguasCondu

ct - - - - low

medium high

11 riscPorPotRecarg

- - - - low medium high

12 riscUtilitzacio - - - - low medium high

Taula 29: Variables intermitges

Page 79: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

79

Variable d’entrada "aguasSubterran"

Figura 52: MBF de "aguasSubterran"

Term Name Shape/Par. Definition Points (x, y) high linear (0, 1) (40, 1) (60, 0) (1000, 0) medium linear (0, 0) (40, 0) (60, 1) (180, 1) (220, 0) (1000, 0) low linear (0, 0) (180, 0) (220, 1) (1000, 1)

Taula 30: Definició dels punts de MBF "aguasSubterran"

Variable d’entrada "aguasSuperficial"

Figura 53: MBF de "aguasSuperficial"

Term Name Shape/Par. Definition Points (x, y) high linear (0, 1) (20, 1) (60, 0) (1000, 0) medium linear (0, 0) (20, 0) (60, 1) (280, 1) (400, 0) (1000, 0) low linear (0, 0) (280, 0) (400, 1) (1000, 1)

Taula 31: Definició dels punts de MBF "aguasSuperficial"

Page 80: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

80

Variable d’entrada "conductivHidraul"

Figura 54: MBF de "conductivHidraul"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (2.0000000000098e-

008, 1) (1.0000000000006e-007, 0)

(0.001, 0) medium linear (0, 0) (2.0000000000098e-

008, 0) (1.0000000000006e-007, 1)

(9.9999999999992e-007, 1)

(1e-005, 0) (0.001, 0)

high linear (0, 0) (9.9999999999992e-007, 0)

(1e-005, 1)

(0.001, 1) Taula 32: Definició dels punts de MBF "conductivHidraul"

Variable d’entrada "porosidad"

Figura 55: MBF de "porosidad"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (0.3, 1) (0.35, 0) (0.6, 0) medium linear (0, 0) (0.3, 0) (0.35, 1) (0.37, 1) (0.4, 0) (0.6, 0) high linear (0, 0) (0.37, 0) (0.4, 1) (0.6, 1)

Taula 33: Definició dels punts de MBF "porosidad"

Page 81: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

81

Variable d’entrada "potencia"

Figura 56: MBF de "potencia"

Term Name Shape/Par. Definition Points (x, y) high linear (0, 1) (2, 1) (5, 0) (50, 0) medium linear (0, 0) (2, 0) (5, 1) (12, 1) (15, 0) (50, 0) low linear (0, 0) (12, 0) (15, 1) (50, 1)

Taula 34: Definició dels punts de MBF "potencia" Variable d’entrada "recarga"

Figura 57: MBF de "recarga"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (8, 1) (12, 0) (300, 0) medium linear (0, 0) (8, 0) (12, 1) (75, 1) (125, 0) (300, 0) high linear (0, 0) (75, 0) (125, 1) (300, 1)

Taula 35: Definició dels punts de MBF "recarga"

Page 82: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

82

Variable de sortida "riscTotal2"

Figura 58: MBF de "riscTotal2"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (2, 1) (4, 0) (10, 0) medium linear (0, 0) (2, 0) (4, 1) (6, 1) (8, 0) (10, 0) high linear (0, 0) (6, 0) (8, 1) (10, 1)

Taula 36: Definició dels punts de MBF "riscTotal2"

6.2.4 Blocs de Regles

Un bloc de regles conté el control d’un Sistema Expert difús. On fica ‘IF’ és la part de

la premissa d’una regla, i en la part ‘THEN’ és la conclusió de la regla. I el ‘DoS’

s’utilitza per donar pes a la regla depenent de la importància que li vols donar.

Bloc de Regles "RB1" Aquest bloc de regles, hem tingut que utilitzar l’aproximació de la mitjana ponderada

per crear les regles ja que és d’una dificultat molt gran. Podem veure en la Taula 38 els

pesos que li hem donat a cada variable.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 4 Number of Outputs: 1 Number of Rules: 73

Page 83: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

83

IF THEN conductivHidraul porosidad potencia recarga DoS riscPorPotRecarglow low 1.00 low low medium low 1.00 low low medium medium low 1.00 low low medium medium medium 1.00 low low medium medium high 1.00 medium low medium high low 1.00 low low medium high medium 1.00 medium low medium high high 1.00 medium low high low low 1.00 low low high low medium 1.00 medium low high low high 1.00 medium low high medium 1.00 medium low high high low 1.00 medium low high high medium 1.00 high low high high high 1.00 high medium low low 1.00 low medium low medium low 1.00 low medium low medium medium 1.00 low medium low medium high 1.00 medium medium low high low 1.00 low medium low high medium 1.00 medium medium low high high 1.00 medium medium medium low low 1.00 low medium medium low medium 1.00 medium medium medium low high 1.00 medium medium medium medium 1.00 medium medium medium high low 1.00 medium medium medium high medium 1.00 high medium medium high high 1.00 high medium high low low 1.00 medium medium high low medium 1.00 medium medium high low high 1.00 high medium high medium low 1.00 medium medium high medium medium 1.00 high medium high medium high 1.00 high medium high high 1.00 high high low low low 1.00 low high low low medium 1.00 medium high low low high 1.00 medium high low medium 1.00 medium high low high low 1.00 medium high low high medium 1.00 high high low high high 1.00 high high medium low low 1.00 medium high medium low medium 1.00 medium high medium low high 1.00 high high medium medium low 1.00 medium high medium medium medium 1.00 high high medium medium high 1.00 high high medium high 1.00 high high high 1.00 high

Taula 37: Regles del Bloc de Regles "RB1"

Page 84: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

84

Page 85: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

85

Taula 38. Creació de les regles utilitzant l’aproximació de la mitjana ponderada

Page 86: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

86

Bloc de Regles "RB2" Aquest bloc de regles ens el va dir l’expert, és a dir, la Dra. Marta Schumacher.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 2 Number of Outputs: 1 Number of Rules: 9

IF THEN aguasSubterran aguasSuperficial DoS riscAguasConduct High high 1.00 high Medium high 1.00 high Low high 1.00 high High medium 1.00 high Medium medium 1.00 medium Low medium 1.00 medium High low 1.00 high Medium low 1.00 medium Low low 1.00 low

Taula 39: Regles del Bloc de Regles "RB2" Bloc de Regles "RB3" Aquest bloc de regles ens el va dir l’expert, és a dir, la Dra. Marta Schumacher.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 2 Number of Outputs: 1 Number of Rules: 9

IF THEN usoAgua usoSuelo DoS riscUtilitzacio industrial industrial 1.00 low agricolaIpastora industrial 1.00 high recreatiuIdomest industrial 1.00 high industrial construcIcomerci 1.00 low agricolaIpastora construcIcomerci 1.00 high recreatiuIdomest construcIcomerci 1.00 high industrial agricolaIresidnc 1.00 high agricolaIpastora agricolaIresidnc 1.00 high recreatiuIdomest agricolaIresidnc 1.00 high

Taula 40: Regles del Bloc de Regles "RB3"

Page 87: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

87

Bloc de Regles "RB4" Aquest bloc de regles ens el va dir l’expert.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 3 Number of Outputs: 1 Number of Rules: 27

IF THEN riscAguasConduct riscPorPotRecarg riscUtilitzacio DoS risc2 low low 1.00 low low medium low 1.00 low low medium medium 1.00 medium low medium high 1.00 medium low high low 1.00 medium low high medium 1.00 high low high high 1.00 high medium low low 1.00 low medium low medium 1.00 low medium low high 1.00 medium medium medium low 1.00 low medium medium medium 1.00 medium medium medium high 1.00 high medium high low 1.00 medium medium high medium 1.00 high medium high high 1.00 high high low low 1.00 low high low medium 1.00 low high low high 1.00 medium high medium low 1.00 medium high medium medium 1.00 high high medium high 1.00 high high high 1.00 high

Taula 41: Regles del Bloc de Regles "RB4"

Page 88: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

88

6.3 SUBJECTES A PROTEGIR

6.3.1 Descripció del projecte

Input Variables 8 Output Variables 1 Intermediate Variables 2 Rule Blocks 3 Rules 49 Membership Functions 28

Taula 42: Estadística del projecte

6.3.2 Estructura del Sistema

Aquest grup està dividit en tres Sistemes Experts. El primer té com variables d’entrada

l’accesibilitat, l’activitat sensible de la població, la quantitat de població, la distància i el

tipus de població. Amb aquestes variables creem el bloc de regles anomenat RB1 i té

una variable intermitja per poder connectar aquest Sistema amb el SE 3, la qual

s’anomena riscPoblacio.

El segon Sistema Expert té tres variables d’entrada, ecosistema sensible, espècies en

perill i impacte visual. Les tres són variables categòriques. També té una variable

intermitja per poder relacionar-lo amb el SE 3 que s’anomena riscEcosistema. I com és

un Sistema Expert, té el seu bloc de regles que s’anomena RB2.

El SE 3 és el que calcula el risc total d’aquest grup. Les variables d’entrada són

riscEcosistema i riscPoblacio i la variable de sortida riscTotal. I el bloc de regles

s’anomena RB31.

Figura 59: Estructura del Sistema Expert difús

Page 89: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

89

6.3.3 Variables

Aquest capítol conté les definicions de totes les variables lingüístiques d’aquest grup i

les seves funcions de pertinença.

La següent taula ens mostra la llista de totes les variables del sistema amb el seu

respectiu mètode de fuzzyficació o defuzzyficació. També estan definits els termes

lingüístics.

Entrades

# Variable Name Type Unit Min Max Default Term Names 1 accesibilidad - 0 2 2 000 CerradoSiVigil

001 cerradoNoVigilad 002 NoCerradoNoVigil

2 actividSensibls - 0 1 1 000 no 001 si

3 cantidadPoblacio

Units 0 200 0 low medium high

4 distancia Units 0 10000 0 high medium low

5 ecosistSensible - 0 1 1 000 no 001 si

6 especiesPeligro - 0 1 1 000 no 001 si

7 impactoVisual - 0 1 1 000 no 001 si

8 tipoPoblacion - 0 1 0 000 adulta 001 sensible

Taula 43: Variables d’entrada

Fuzzification Methods Compute MBF Look up MBF Categorical Variable Display Fuzzy Input

Sortides

# Variable Name Type Unit Min Max Default Term Names 9 riscTotal Units 0 10 0 low

medium high

Taula 44: Variables de sortida

Page 90: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

90

Defuzzification Methods Center of Maximum (CoM) Mean of Maximum (MoM) Center of Area (CoA) Hyper CoM Fuzzy Output Force Categorical MoM

Intermitges

# Variable Name Type Unit Min Max Default Term Names 10 riscEcosistema - - - - low

medium high

11 riscPoblacio - - - - low medium high

Taula 175: Variables intermitges Input Variable "accesibilidad"

Term Name 000 CerradoSiVigil 001 cerradoNoVigilad 002 NoCerradoNoVigil

Taula 186: Nom dels termes de “accesibilidad” Input Variable "actividSensibls"

Term Name 000 no 001 si

Taula 197: Nom dels termes de "actividSensibls" Input Variable "cantidadPoblacio"

Figura 60: MBF de "cantidadPoblacio"

Page 91: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

91

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (5, 1) (10, 0) (200, 0) medium linear (0, 0) (5, 0) (10, 1) (20, 1) (40, 0) (200, 0) high linear (0, 0) (20, 0) (40, 1) (200, 1)

Taula 208: Definició dels punts de MBF "cantidadPoblacio" Input Variable "distancia"

Figura 61: MBF de "distancia"

Term Name Shape/Par. Definition Points (x, y) high linear (0, 1) (10, 1) (60, 0) (10000, 0) medium linear (0, 0) (10, 0) (60, 1) (400, 1) (500, 0) (10000, 0) low linear (0, 0) (400, 0) (500, 1) (10000, 1)

Taula 219: Definició dels punts de MBF "distancia" Input Variable "ecosistSensible"

Term Name 000 no 001 si

Taula 50: Nom dels termes de "ecosistSensible" Input Variable "especiesPeligro"

Term Name 000 no 001 si

Taula 51: Nom dels termes de "especiesPeligro"

Page 92: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

92

Input Variable "impactoVisual"

Term Name 000 no 001 si

Taula 52: Nom dels termes de "impactoVisual"

Input Variable "tipoPoblacion"

Term Name 000 adulta 001 sensible

Taula 53: Nom dels termes de "tipoPoblacion"

Output Variable "riscTotal"

Figura 62: MBF de "riscTotal"

Term Name Shape/Par. Definition Points (x, y) low linear (0, 1) (2, 1) (4, 0) (10, 0) medium linear (0, 0) (2, 0) (4, 1) (6, 1) (8, 0) (10, 0) high linear (0, 0) (6, 0) (8, 1) (10, 1)

Taula 54: Definició dels punts de MBF "riscTotal"

6.3.4 Bloc de Regles

Un bloc de regles conté el control d’un Sistema Expert difús. On fica ‘IF’ és la part de

la premissa d’una regla, i en la part ‘THEN’ és la conclusió de la regla. I el ‘DoS’

s’utilitza per donar pes a la regla depenent de la importància que li vols donar.

Page 93: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

93

Bloc de Regles "RB1" Aquest bloc de regles ens el va dir l’expert, és a dir, la Dra. Marta Schumacher. Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 5 Number of Outputs: 1 Number of Rules: 32

IF THEN accesibilidad actividSensibl

s cantidadPoblacio

distancia tipoPoblacion DoS riscPoblacio

si 1.00 high no high low sensible 1.00 medium no high low adulta 1.00 medium NoCerradoNoVigil

no high medium sensible 1.00 high

cerradoNoVigilad

no high medium sensible 1.00 medium

CerradoSiVigil no high medium sensible 1.00 medium no high medium adulta 1.00 medium NoCerradoNoVigil

no high high sensible 1.00 high

cerradoNoVigilad

no high high sensible 1.00 high

CerradoSiVigil no high high sensible 1.00 medium NoCerradoNoVigil

no high high adulta 1.00 high

cerradoNoVigilad

no high high adulta 1.00 medium

CerradoSiVigil no high high adulta 1.00 medium NoCerradoNoVigil

no medium low sensible 1.00 medium

cerradoNoVigilad

no medium low sensible 1.00 low

CerradoSiVigil no medium low sensible 1.00 low no medium low adulta 1.00 low NoCerradoNoVigil

no medium medium sensible 1.00 medium

cerradoNoVigilad

no medium medium sensible 1.00 medium

CerradoSiVigil no medium medium sensible 1.00 medium no medium medium adulta 1.00 medium NoCerradoNoVigil

no medium high sensible 1.00 high

cerradoNoVigilad

no medium high sensible 1.00 medium

CerradoSiVigil no medium high sensible 1.00 medium no medium high adulta 1.00 medium no low low 1.00 low NoCerradoNoVigil

no low medium sensible 1.00 low

cerradoNoVigilad

no low medium sensible 1.00 medium

Page 94: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

94

IF THEN CerradoSiVigil no low medium sensible 1.00 low no low medium adulta 1.00 low no low high sensible 1.00 medium no low high adulta 1.00 low

Taula 55: Regles del Bloc de Regles "RB1"

Bloc de Regles "RB2" Aquest bloc de regles ens el va dir l’expert.

Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 3 Number of Outputs: 1 Number of Rules: 8

IF THEN ecosistSensible especiesPeligro impactoVisual DoS riscEcosistema no no no 1.00 low si no no 1.00 medium no si no 1.00 medium si si no 1.00 high no no si 1.00 medium si no si 1.00 medium no si si 1.00 high si si si 1.00 high

Taula 56: Regles del Bloc de Regles "RB2"

Bloc de Regles "RB31" Aquest bloc de regles ens el va dir l’expert. Paràmetres

Aggregation: MINMAX Parameter: 0.00 Result Aggregation: MAX Number of Inputs: 2 Number of Outputs: 1 Number of Rules: 9

IF THEN riscEcosistema riscPoblacio DoS riscTotal low low 1.00 low low medium 1.00 medium low high 1.00 high medium low 1.00 medium

Page 95: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

95

IF THEN medium medium 1.00 medium medium high 1.00 high high low 1.00 high high medium 1.00 high high high 1.00 high

Taula 57: Regles del Bloc de Regles "RB31"

Page 96: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

96

6.4 SISTEMA EXPERT JUNT

Hem explicat cada grup per separat, i la unió de tots els grups és el Sistema Expert

mostrat en la Figura 63.

En aquest SE estan definides totes les variables explicades anteriorment, l’únic que hem

afegit és un bloc de regles que té com variables d’entrada els resultats del risc de cada

grup, i com variable de sortida el riscTotal. El bloc de regles l’hem creat utilitzant el

mètode de l’aproximació de la mitjana ponderada com es pot comprovar en la Taula 59.

Figura 63. Esquema de tot el Sistema Expert junt

IF THEN

risc1 risc2 risc3 DoS riscTotal low low 1.00 low low medium 1.00 low low high low 1.00 low low high medium 1.00 low low high high 1.00 medium medium low low 1.00 low medium low medium 1.00 low medium low high 1.00 medium

Page 97: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

97

IF THEN medium medium low 1.00 low medium medium medium 1.00 medium medium medium high 1.00 high medium high low 1.00 medium medium high medium 1.00 high medium high high 1.00 high high low low 1.00 medium high low medium 1.00 high high low high 1.00 high high medium 1.00 high high high 1.00 high

Taula 58. Regles del bloc de regles

Taula 59. Elaboració de les regles utilitzant l’aproximació de la mitjana ponderada

Page 98: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

98

7. JOC DE PROVES DEL SISTEMA EXPERT El joc de proves el dividirem en tres parts, una per cada grup, i després mostrarem el

resultat del risc final quan ajuntem els tres grups. En cada grup mostrarem el cas de

l’execució interactiva, i el cas d’execució en batch d’un conjunt de casos els quals són

uns casos estudiats amb el Sistema Expert que estava creat d’abans [López, 2008]. Com

és un Sistema Expert nou i més precís, si comparem els resultats que obtenim de

l’article amb els que ens donen fent el joc de proves són una mica diferents. En el

primer grup, caracterització de la font de contaminació, ens dona un resultat molt

aproximat al de l’article, però en el joc de proves del grup vectors de transferència els

resultats són molt diferents als de l’article. Per finalitzar, els resultats del grup subjectes

a protegir són aproximats als de l’article.

7.1 ESTUDI D’UN CAS DETALLADAMENT

En aquest apartat explicarem com s’ha de fer el joc de proves pas per pas. Per fer-ho

agafarem un exemple del tercer grup, subjectes a protegir, i aplicarem el mètode

interactive per debugar.

Agafarem com exemple el tercer cas, és a dir, que les variables d’entrada accesibilidad,

actividSensibls, cantidadPoblacio, distancia, ecosistSensible, especiesPeligro,

impactoVisual i tipoPoblacion tenen els valors cerradoNoVigilad, si, 10, 200, si, si, si, i

adulta, respectivament.

Totes aquestes dades les entrem al mètode interactive, el qual ens queda de la següent

forma:

Figura 64. Mètode interactiu

Page 99: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

99

Després d’introduir totes les dades mirem quina o quines de les regles s’han activat:

En el primer SE petit s’ha activat la regla 1 com podem veure a la figura 65.

Figura 65. Activació de la regla

En el segon SE petit s’ha activat la regla 8 com podem observar en la figura 66.

Figura 66. Activació de la regla

Per saber el risc final d’aquest exemple tenim que ajuntar els dos riscs dels Sistemes

Experts anteriors. Com podem comprovar, el resultat dels dos ens ha donat un risc alt

(high) per aquest motiu s’ha activat la regla 9 del Sistema Expert final, i el resultat

d’aquest exemple introduït és un risc alt.

Figura 67. Activació de la regla

Per entendre les regles que s’han activat, mirarem la funció de pertinença de cada

variable per saber en quin terme es troba.

En el primer cas, ens fixem amb la variable actividSensibls, ja que si el valor introduït

és ‘sí’ és independent el valor de les altres variables del Sistema Expert petit. Com en

aquest exemple hem introduït ‘si’ el resultat del riscPoblacio és alt.

Page 100: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

100

En el cas que haguéssim introduït un ‘no’ a la variable actividSensibls, hauríem de

mirar les altres variables per saber quina regla s’activaria.

La variable accesibilidad té tres paràmetres, però com es categòrica, només es fa cas al

valor introduït, en aquest cas ‘cerradoNoVigilad’. En la variable tipoPoblacion ens

passa el mateix, com és una variable categòrica únicament és el valor introduït. A la

variable cantidadPoblacio hem introduït un 10, i aquest valor es troba a medium (Figura

68). Per finalitzar, miraríem la distancia, que hem introduït el valor 200, el qual es troba

a medium (Figura 69).

En aquest cas, s’activaria la regla on la actividSensibls tingui el terme ‘no’, accesibildad

sigui ‘cerradoNoVigilad’, la variable tipoPoblacion sigui ‘adulta’. La cantidadPoblacio

tingui medium i la distancia també tingui medium. En aquest cas seria la regla 21. La

variable accesibilidad no té paràmetre perquè amb els valors de les altres variables és

independent el valor que fiquem perquè ens donarà com a risc medium (Figura 70).

Figura 68. Activació de la variable Figura 69. Activació de la variable

Figura 70. Activació de la regla

En el segon Sistema Expert petit, com les variables són categòriques ens hem de fixar

amb el terme que hem introduït. I com tots els valors són ‘si’ s’ha activat la regla 8

(Figura 66).

El valor del riscTotal és high, però s’ha de defuzzyficar. Com el mètode seleccionat per

defuzzyficar és el CoA, explicat a la secció 2.3, ens dona el valor 8,4444.

Page 101: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

101

7.2 CARACTERITZACIÓ DE LA FONT DE CONTAMINACIÓ

Introduirem les mostres a aquest grup de forma interactiva, és a dir, tenint el Sistema

Expert s’ha de clicar al menú del FuzzyTech on fica Debug i després Interactive

d’aquesta forma ja podem introduir els exemples. Per executar-ho, s’agafa un dels

exemples que volem introduir i tenim que ficar els valors de l’exemple a les

determinades variables i d’aquesta forma ens donarà un resultat final del risc.

El primer exemple és el que veiem en la Figura 71. El resultat que obtenim és de Risc

Low amb nivell 0.7, que defuzzificat dóna 1.5554, tal com es mostra a la finestra

inferior.

Figura 71. Joc de proves interactiu

Aquest mètode per debugar és molt pràctic quan estàs treballant amb el Sistema Expert i

vols mirar si una mostra et dóna un resultat correcte i fàcil de veure per casos concrets.

Per poder fer tot el joc de proves és millor debugar amb el mètode batch. Per poder

executar-lo primer s’ha de crear un fitxer batch on estiguin totes les mostres que es

volen introduir. En la següent figura veiem el joc de proves que introduirem al sistema.

Page 102: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

102

Figura 72. Fitxer .batch amb els valors de les mostres del joc de proves

Després amb el FuzzyTech tenim que clicar en el menú l’opció Debug i seguidament

Batch on s’obre una finestra per buscar el fitxer que has creat. Quan s’accepta, es

comença l’execució del joc de proves, que es pot fer pas a pas, o tot junt, i el resultat

queda guardat al fitxer, al final de cada línia. (Figura 85)

Els resultats de cada mostra executada una per una són els següents:

Figura 73. Resultat de la primera mostra.

Podem comprovar amb la Figura 71, que ens dóna el mateix resultat fent-ho amb el

mètode batch o amb interactive.

Page 103: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

103

Figura 74. Resultat de la segona mostra.

Veiem que el risc és el mateix, però si ens fixem amb l’activació de low, la primera

mostra és de 0.70 i la segona de 0.75, encara que no es tanta diferència com per afectar

al resultat final.

Figura 75. Resultat de la tercera mostra

Figura 76. Resultat de la quarta mostra

La mostra número 5 i 6 ens donen absolutament el mateix resultat que la quarta mostra,

l’activació del low igual també. Per aquest motiu no les afegim.

Page 104: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

104

Figura 77. Resultat de la setena mostra

Figura 78. Resultat de la vuitena mostra

Figura 79. Resultat de la novena mostra

La mostra número 10, és igual que la mostra de la Figura 79.

Page 105: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

105

Figura 80. Resultat de la onzena mostra

Figura 81. Resultat de la dotzena mostra

Figura 82. Resultat de la tretzena mostra

Page 106: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

106

Figura 83. Resultat de la mostra 14

La mostra 15 és la mateixa que la de la Figura 83.

Figura 84. Resultat de la mostra 16

Figura 85. Fitxer amb els resultats de totes les mostres

Page 107: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

107

7.3 VECTORS DE TRANSFERÈNCIA

Primer introduirem una de les mostres utilitzant el mètode Interactive. Per poder fer-ho

s’ha de clicar al menú del FuzzyTech on fica Debug i després Interactive d’aquesta

forma ja podem introduir els exemples. Per executar-ho, s’agafa un dels exemples que

volem introduir i tenim que ficar els valors de l’exemple a les determinades variables i

d’aquesta forma ens donarà un resultat final del risc.

En la Figura 86 podem veure el resultat del primer exemple:

Figura 86. Joc de proves interactiu

El segon mètode que podem utilitzar per debugar és utilitzar un fitxer .batch, en aquest

fitxer és on es posen totes les mostres que volem introduir al Sistema (Figura 87). Per

executar aquest mètode en el FuzzyTech s’ha de clicar en el menú l’opció Debug i

seguidament Batch on s’obre una finestra per buscar el fitxer que has creat. Quan

s’accepta, es comença l’execució del joc de proves, i el resultat del risc d’una mostra es

veu en el determinat pas on es troba.

Page 108: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

108

Figura 87. Fitxer .batch amb els valors de les mostres del joc de proves

Com podem comprovar, només hi ha 4 mostres perquè estan totes repetides per poder

executar 16 mostres com a l’anterior joc de proves. Per aquest motiu solament

ensenyarem els 4 resultats de les mostres número 1, 3, 7 i 13:

Figura 88. Resultat de la mostra 1

Figura 89. Resultat de la mostra 3

Page 109: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

109

Figura 90. Resultat de la mostra 7

Figura 91. Resultat de la mostra 13

Page 110: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

110

7.4 SUBJECTES A PROTEGIR

Utilitzarem primerament el mètode Interactive per poder debugar el Sistema Expert. Per

poder fer-ho s’ha de clicar al menú del FuzzyTech on fica Debug i després Interactive

d’aquesta forma ja podem introduir els exemples. Per executar-ho, s’agafa un dels

exemples que volem introduir i tenim que ficar els valors de l’exemple a les

determinades variables i d’aquesta forma ens donarà un resultat final del risc.

En la Figura 92 podem veure el resultat del primer exemple:

Figura 92. Joc de proves interactiu

Ara utilitzarem per debugar un fitxer .batch, en aquest fitxer és on es posen totes les

mostres que volem introduir al Sistema (Figura 93). Per executar aquest mètode en el

FuzzyTech s’ha de clicar en el menú l’opció Debug i seguidament Batch on s’obre una

finestra per buscar el fitxer que has creat. Quan s’accepta, es comença l’execució del joc

de proves, i el resultat del risc d’una mostra es veu en el determinat pas on es troba.

Figura 93. Fitxer .batch amb els valors de les mostres del joc de proves

Page 111: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

111

Però si ens fixem amb la Figura anterior, són 4 mostres diferents, per tant únicament

mostrarem els resultats dels quatre casos diferents:

Figura 94. Resultat de la mostra 1

Els resultats de les mostres 3 i 7 són exactament iguals que el de la Figura 94.

Figura 95. Resultat de la mostra 13

Page 112: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

112

7.5 SISTEMA EXPERT JUNT

Introduirem les mostres de l’article a tot el conjunt de forma interactiva. Com hem

explicat, s’ha de clicar al menú del FuzzyTech on fica Debug i després Interactive

d’aquesta forma ja podem introduir els exemples. Per executar-ho, s’agafa un dels

exemples que volem introduir i tenim que ficar els valors de l’exemple a les

determinades variables i d’aquesta forma ens donarà un resultat final del risc.

El primer exemple és el que veiem en la Figura 96. El resultat que obtenim és de Risc

Low amb nivell 0.7, que defuzzificat dóna 1.5554, tal com es mostra a la finestra

inferior.

Figura 96. Joc de proves interactiu

Per utilitzar el mètode batch en tot el Sistema Expert, creem un fitxer (Figura 97) on

posem tots els valors a les variables. Després veurem el resultat del riscTotal executant

una per una cada mostra introduïda.

Page 113: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

113

Figura 97. Fitxer batch amb les mostres per tot el Sistema Expert

El resultat de la primera mostra és el següent:

Figura 98. Resultat de la primera mostra

La segona mostra ens dona el mateix resultat, la diferència és que s’activa el terme Low

amb un nivell de 0.75.

Figura 99. Resultat de la tercera mostra

Page 114: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

114

Figura 100. Resultat de la mostra número 4

El resultat de la mostra 5 i 6 és el mateix que el vist en la Figura 100.

Figura 101. Resultat de la mostra número 7

Figura 102. Resultat de la mostra número 8

El resultat de la mostra número 9 i 10 és el mateix que la Figura 101, és a dir, 4.9996.

Figura 103. Resultat de la mostra número 11

El resultat de la mostra número 12 és el mateix que la Figura 102, és a dir, 5.6888.

Page 115: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

115

Figura 104. Resultat de la mostra número 13

El resultat de la mostra número 14 és el mateix que la Figura 104, la diferència és que el

nivell de Low s’ha activat amb 0.80, igual que el resultat de la mostra 15. I el resultat de

la mostra 16 també és el mateix que la Figura 104, però el Low s’ha activat a 0.85.

Page 116: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

116

8. ESTUDI DE L’ÚS DE LES TÈCNIQUES NEURO-FUZZY EN AQUEST PROBLEMA Les tècniques de Neuro-Fuzzy, com hem explicat en l’apartat 4, ens ajuda a millorar un

Sistema Expert.

El nostre objectiu era aplicar les tècniques del Neuro-Fuzzy per tot el Sistema Expert,

però no ha set possible per la falta d’exemples resolts del risc de contaminació del sòl i

per un problema del producte Fuzzy-Tech.

Per aquest motiu hem agafat un Sistema Expert petit amb dues variables d’entrada i una

de sortida explicada anteriorment en la secció 6.2

Figura 105. Sistema Expert

El procediment que hem seguit per comprovar la millora del Sistema Expert és agafar

dues regles de les que teníem definides i canviar el resultat de risc:

Figura 106. Regles del Sistema Expert

La regla número 3 és la que teníem definida, i la regla 4 és la que hem definit nosaltres.

La regla número 6 és la que teníem definida, i la regla 7 és la que hem definit nosaltres.

Page 117: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

117

Per a que el Neuro-Fuzzy es pugui aplicar i seleccioni la millor regla hem construït un

fitxer que conté les dades de les variables i el resultat del risc final perquè pugui

aprendre. Com podem veure en la Figura 107 les dades estan definides per a que

s’activin les regles noves que hem afegit, per comprovar si ho fa bé. En aquest exemple,

només hem posat 2 casos de mostra per cada regla a aprendre.

Figura 107. Fitcher .batch

Apliquem al Sistema Expert l’aprenentatge i els resultats són els següents:

Figura 108. Resultat de l’aprenentatge del Sistema Expert

Com podem comprovar en la Figura 108, la regla 3 li ha deixat un pes d’un 0,22 i a la

regla 4 un pes de 0,94 és a dir la diferència és suficient com per poder eliminar la regla

3. I l’altra regla que hem seleccionat per comprovar que es podia aplicar l’aprenentatge

al nostre sistema també ens ha donat els resultats esperats. En la regla 6 ens ha deixat el

pes a 0, en canvi, la regla 7 a 0,84 amb la qual cosa hi ha una gran diferència per poder

elegir la regla adequada.

Hem decidit fer més jocs de proves, i en un altre fitxer hem ficat més dades per a que

s’adoni de quina de les regles és la bona i el resultat amb 4 mostres per cada regla és el

següent

Page 118: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

118

Figura 109. Resultat de l’aprenentatge del Sistema Expert amb 8 mostres

La diferència que trobem amb l’anterior joc de proves, és que el pes de la regla 3 l’ha

deixat a 0,07, que és un valor menor que abans. I la que nosaltres volem, és a dir, la

regla 4, l’ha deixat a 1. La regla 6 la continua deixant a 0 i la regla 7 a 0,84. També

podem comprovar que hem baixat la mitjana de la desviació.

Hem fet un altre fitxer, el qual conté 6 mostres per a cada regla, amb el qual continua

adonant-se quina és la regla bona, i disminuint la mitjana de desviació, lo qual indica

que discrimina una mica millor que el cas anterior.

Figura 110. Resultat de l’aprenentatge del Sistema Expert amb 12 mostres

La conclusió d’aquestes proves és que com més casos resolts introdueixes al fitxer per a

que el Sistema Expert pugui aprendre, més eficaç acaba sent.

Encara que, com hem observat en la Figura 108, sol ficant-hi dos mostres per cada regla

que volem que aprengui, ens ha triat la regla correcta. És a dir, les tècniques del Neuro-

Fuzzy són molt potents, ja que per decidir quina de les dues regles és la bona amb un

exemple n’hi ha suficient. Però per fer el millor Sistema Expert es necessiten molts

casos resolts.

Page 119: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

119

9. CONCLUSIONS Saber el risc d’un sòl contaminat per poder actuar i remeiar-ho, a dia d’avui, és molt

necessari. I la eina que hem creat es pot utilitzar adequadament, ja que la utilització de

la lògica fuzzy ens permet utilitzar dades imprecises, és a dir, que no siguin magnituds

exactes, i utilitzar les característiques més representatives per saber si un sòl està

contaminat.

En aquet PFC hem millorat el Sistema Expert que estava creat [García, 2005] per

decidir quin és el risc d’un sòl determinat.

Aquest nou SE és fàcil d’entendre i fàcil de ser modificat. Per tant, si passat un temps

els experts químics troben noves característiques per analitzar el risc d’un sòl

contaminat, o diferents valors, poden modificar ells mateixos el Sistema Expert,

d’aquesta forma no tenen que estar pendents de que un expert en informàtica els hi

solucioni un petit problema.

El Sistema Expert és una ajuda per la presa de decisions, amb el qual guanyem amb la

dependència de personal expert, ja que no has de tenir molts experts per decidir si un sòl

està contaminat, el coneixement es quedarà per sempre, acceptant canvis i

modificacions i millorarem la eficiència en la presa de decisions amb la qual cosa es pot

actuar més ràpidament per remeiar un sòl contaminat.

L’inconvenient més gran ha estat la falta de mostres per determinar quin és el risc d’un

sòl contaminat. Aquest problema ens ha afectat a la millora del Sistema Expert, ja que

volíem utilitzar les tècniques del Neuro-Fuzzy per tot el sistema. Cosa que no es pot fer

si no es tenen suficients mostres representatives.

Finalment, analitzaré si he complert els objectius proposats al principi del projecte:

• He adquirit el coneixement relacionat amb els sistemes experts i les xarxes

neuronals, gràcies a la informació que hi ha als llibres. Aquest va ser el principal

objectiu al començament del PFC per poder fer-lo.

• L’objectiu d’obtenir i modelar el coneixement del domini amb el PFC que

teníem [García, 2005], ens ha resultat complicat, tal com hem explicat en la

secció 5 hem aprofitat bàsicament l’estructura del Sistema Expert i totes les

variables definides. Gràcies a la Dra. Marta Schumacher hem completat totes les

regles.

Page 120: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

120

• He aprés a utilitzar l’entorn de desenvolupament FuzzyTech per crear tot el

Sistema Expert, i la part de Neruo-Fuzzy per comprovar que realment millora un

Sistema Expert. Aquest procés ha estat bàsicament llegir el manual que ens

proporcionava el producte FuzzyTech.

• L’últim objectiu, com he dit abans, l’hem assolit ja que he construït el Sistema

Expert amb l’eina FuzzyTech. Com hem estructurat el Sistema Expert en tres

grups, teníem tres Sistemes Experts amb fitxers diferents. I per poder ajuntar els

tres Sistemes Experts he tingut que fer-ho tot de nou, definint totes les variables,

totes les regles i els paràmetres elegits.

Page 121: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

121

10. VALORACIÓ PERSONAL DEL PROJECTE FINAL DE CARRERA Aquest projecte per a mi ha significat molt ja que m’ha demostrat que sent informàtica

també pots ajudar a la societat, com aquest projecte, que servirà per ajudar a saber el

risc d’un sòl contaminat i d’aquesta forma poder remeiar-ho.

També me n’he adonat, que l’Intel·ligència Artificial és una rama de la informàtica molt

interessant i que m’ha agradat molt. He pogut comprovar que les diferents àrees de

treball, en veritat, han d’estar juntes per solucionar els problemes. En aquest cas l’àrea

de la química i la informàtica.

La dificultat més gran que he trobat ha estat la determinació de les regles. Va ser molt

difícil intentar treure-les d’un Sistema Expert que no s’entenia res perquè no estava ben

estructurat, i li faltava la documentació necessària per poder entendre on estaven les

regles. Després també va ser difícil fer el paper d’enginyer del coneixement per ajudar a

l’expert (la Dra. Marta Schumacher) a formalitzar el coneixement d’un domini que jo no

coneixia. Finalment el procés que ens va anar millor va ser que jo li proposava un

conjunt de regles (que obtenia amb l’aproximació de la mitjana dels valors) i ella les

revisava i em deia noves regles. Crec que a vegades és millor començar-ho tot de nou.

En aquest tema també he comprovat que és molt important una bona comunicació entre

els experts per poder crear les regles perfectament.

Aquest projecte m’ha servit per aprendre tot el tema de la lògica fuzzy ja que no sabia

res d’aquest tema, i també sobre les xarxes neuronals. També he aprés a utilitzar l’eina

FuzzyTech que crec que és un producte molt eficaç per tractar tota la lògica fuzzy.

La millor sensació havent realitzat aquest projecte és que m’he sentit útil i que el

resultat m’ha agradat.

Aquest projecte m’ha suposat un grau d’esforç alt en quan a l’adquisició del

coneixement, és a dir, al començament del PFC quan has de llegir tota la informació per

poder fer-lo, i també a l’hora de tenir un coneixement químic per entendre els criteris

que m’explicava l’expert per poder construir les regles. Però després, m’ha resultat tot

més fàcil ja que al agradar-me el projecte no hem suposava un gran esforç dedicar-li el

temps necessari.

Page 122: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

122

11. TREBALL FUTUR Aquest projecte es pot millorar ja que amb més exemples de casos resolts i més temps

es poden definir millor les regles o alguna variable del Sistema Expert.

Una millora seria canviar el mètode que hem utilitzat per crear algunes regles,

l’aproximació de la mitjana, per un mètode que utilitzés tècniques de generació

automàtica de regles, com per exemple els arbres de decisió, que ens permetrien regir el

nombre de regles, i les variables que hi ha a cadascuna.

Una de les nostres idees era aplicar les tècniques del Neuro-Fuzzy a tot el Sistema

Expert, aquest punt crec que seria interessant dur-lo a terme ja que és una millora del

Sistema Expert creat. D’aquesta forma ens permetria veure si hi ha alguna regla que no

fa falta, o si hi ha alguna regla mal definida.

Page 123: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

123

12. REFERÈNCIES

12.1 Bibliografia [Mishkoff, 1988] Henry C. Mishkoff, A fondo: Inteligencia Artificial. Anaya Multimedia, cop. 1988 [Haton, 1992] J. P. Haton, M. Ch. Haton, La inteligencia artificial. Tibidabo, 1992 [García, 2005] M.García, Sistema experto para la priorización de suelos contaminados. Projecte Final de Carrera d’una estudiant de Enginyeria Tècnica en Informàtica de Sistemes de la Universitat Rovira i Virgili, 2005. [Valls, 2008] A. Valls, M. Batet, E. M. López, Using expert’s rules as background knowledge in the ClusDM methodology. European Journal of Operational Research, to be published, 2008 [López, 2008] E. M. López, M. García, M. Schuhmacher, J. L. Domingo, A fuzzy expert system for soil characterization, Environmental International Journal, to be published, 2008. [CEC, 2002] Comunicació de la comissió de consell, el parlament Europeu, el comité econòmic, social i el comité de les regions “Towards a Thematic Strategy for Soil Protection”. Brussel·les, 2002. [Torra, 2006] Vicenç Torra, Sistemes Difusos, Incertesa i Raonament Aproximat, Universitat Oberta de Catalunya, 2006 [Ferrari, 2007] P. Ferrari, A. Valls, M. Batet, Estudi i avaluació de Sistemes de presa de decisions multicriteri. Report de Recerca de la Universitat Rovira i Virgili, DEIM-RR-07-002. 2007 [Zadeh, 1994] Lofti Zadeh, The Fuzzy Systems Handbook. Earl Cox, 1994. [Zadeh, 1965] Lofti Zadeh, Information and Control, Fuzzy Sets, pp.338-353, 1965. [Isasi, 2004] P. Isasi, I. M. Galván, Redes de Neuronas Artificiales Un Enfoque Práctico. Prentice Hall, 2003. [Sangüesa, ] R. Sangüesa, Classificació: Xarxes Neuronals, Universitat Oberta de Catalunya. [Asante-Duah, 1998] K. Asante-Duah, Risk assessment in Environmental Managment. Chichester, Engalnd. John Wiley & Son Ltd, 1998.

Page 124: Construcció d’un Sistema Expert per caracteritzar el risc de …deim.urv.cat/~itaka/PFCs/PFC_Sandra_Godia.pdf · 2008-06-05 · utilitzar eines de suport a la presa de decisions

124

[Kendal, 2007] Kendal, Simon & Creen, An Introduction to Knowledge Engineering. Springer, ISBN 978-1-84628-475-5, 2007 [Kumar,2006] V. Kumar, M. García, E. López, A. Valls, A Multicriteria Fuzzy Decision System to Sort Contaminated Soils, V. Torra et al. (Eds): MDAI 2006, LNAI 3885, pp. 105-116. Springer-Verlag Berlin Heidelberg, 2006. [Moreno, 1993] A. Moreno, J. Béjar, U. Cortés, Inteligencia Artificial. Politext col·lecció, Edicions UPC, àrea de computació i control. [Newell, 1990] A. Newell, Unified theories of cognition. Harvard, University Press, 1990. [www.fuzzytech.com] Inform GmbH, http://www.fuzzytech.com/