Sunteți pe pagina 1din 39

Sistemas Expertos LOGICA DIFUSA

INTRODUCCION

Lgica Difusa

Los expertos a menudo se basan en el sentido comn para resolver problemas. Se ve que los expertos describen los problemas usando trminos ambiguos. Por ejemplo El experto podra indicar, cundo el motor est funcionando y est caliente entonces hay que disminuir la velocidad un poco. Estamos acostumbrados a or un problema descrito de esta manera, y usualmente nos cuesta poco trabajo interpretando el uso de los trminos ambiguos. Sin embargo proporcionar un equipo con la misma comprensin es el desafo de Cmo se puede representar la razn con estos trminos en una computadora? Este captulo contesta la pregunta explorando el tema de lgica difusa. Primero revisamos las ideas bsicas detrs de la lgica difusa y luego consideramos su formalismo matemtico. Luego vemos qu tan velloso la lgica puede ser utilizada en un sistema difuso. El captulo tambin provee un acercamiento estructurado para disear un sistema experto difuso e ilustra un ejemplo el proceso a travs del diseo de un sistema. VISTA GENERAL DE LOGICA DIFUSA Los sistemas difusos surgieron en la dcada de los 20 (1920), cuando se propuso por primeravezLukasiewicz (el inventor de la notacin polaca inversa) (Rescher, 1969). Lukasiewicz estudila representacin matemtica de "fuzzy". Su motivacin para este trabajo provino de unentendimiento de trminos definidos en la representacin de dos valores [01]lgicaaristotlica verdad o falso. Desarroll un sistema de lgica que ampli la gama de valores de verdad a todos los nmerosreales en el rango de 0 a 1. l us un nmero en esta serie para representar a la posibilidad deque una declaracin dada era verdadera o falsa. Por ejemplo, la posibilidad de que unapersona de 6 pies de altura es muy alta podra ser fijada a un valor de 0.9, es muy probableque la persona es muy alta. Esta investigacin condujo a una tcnica de razonamiento formalinexacta llamada teora de la posibilidad. En 1965, Zadeh (1965) extendi el trabajo sobre la teora de la posibilidad en un sistemaformal de la lgica matemtica. Posiblemente ms importante, Zadeh, seal a la atencin decientficos e ingenieros una coleccin de conceptos valiosos para trabajar con fuzzy otros delenguaje natural que eran casi exclusivamente los filsofos acadmicos de los ltimoscuarenta aos. Esta nueva herramienta lgica para representar y manipular los trminosdifusos o borrosos se llama la lgica difusa. 1

Sistemas Expertos
DEFINICION 13.1: Lgica Difusa

Lgica Difusa

Es una rama de la lgica que utiliza grados de conjuntos (miembros de conjuntos) en lugar deverdad/falso. Variables lingsticas Lgica difusa se basa principalmente en la cuantificacin y el razonamiento acerca de lostrminos confusos o ambiguos que aparecen en el lenguaje natural. En lgica difusa estostrminos se refieren a las variables lingsticas (tambin llamadas variables difusas). CUADRO 13.1: ejemplos de variables lingsticas Con valores tpicos.

Variable lingstica Temperatura Estatura Velocidad

Valores tpicos caliente, fro pequeo, mediano, alto baja, trepante, rpido

DEFINICIN 13.2:Variable lingstica Trmino que se utiliza en el lenguaje natural para describir un concepto que generalmentetiene valores difusos. Por ejemplo, en la declaracin de "Jack es joven." Estamos diciendo que la variable lingstica implcita edad tiene el valor lingstico de los jvenes. CUADRO 13.1 muestra otros ejemplos de variables lingsticas y valores tpicos que les podramos asignar a ellos. En los sistemas expertos difusos, usamos las variables lingsticas en reglas difusas. Una regla difusa deduce informacin sobre una variable lingstica que figura en su conclusin a partir de informacin acerca de otra variable que figura en su premisa. Por ejemplo:

Sistemas Expertos
REGLA 1 IF velocidad es lenta THEN hacer la aceleracin alta

Lgica Difusa

REGLA 2 IF temperatura es bajo AND la presin es medio THEN disminuir la velocidad Pedimos el rango de valores posibles de una variable lingstica de la variable universal. Por ejemplo, podramos dar a la variable "velocidad", utilizada en la REGLA 1 del rango entre 0 y 100 kilmetros por hora. La frase " velocidad es lenta ", ocupa una parte de la variable universal en un conjunto difuso. Conjuntos Difusos La teora de conjuntos tradicionales desde el punto de vista del mundo como blanco o negro. Es decir, un objeto est dentro o no en un conjunto dado. Consideremos, por ejemplo, unconjunto compuesto por jvenes, es decir, los nios. En la teora tradicional de conjuntospodra asignarles un valor de 1 a los miembros del conjunto y 0 a los que no son miembros delmismo. En una instancia los miembros del conjunto consistiran solamente de aquellaspersonas menores a 10 aos, usando esta interpretacin estricta, las personas de 11 aosquedan totalmente fuera del mismo. La lgica difusa proporciona una interpretacin ms razonable de los jvenes mediante unconjunto difuso. Un conjunto difuso asigna valores de pertenencia entre 0 y 1, que reflejan deforma ms natural es un miembro de la asociacin con el conjunto. Por ejemplo, si unapersona la edad es de 5, podemos asignar un valor de 0.9, o si la edad es de 13 un valorde 0,1. FIGURA 13.1

Sistemas Expertos

Lgica Difusa

FIGURA 13.1conjuntos difuso y estricto de personas jvenes En este ejemplo "edad" es la variable lingstica y el "joven", uno de los conjuntos difusos. Otros conjuntos que podramos considerar son "viejo", "mediana edad", etc. Cada uno de estos grupos representan un adjetivo que define en las variables lingsticas. En general, un conjunto difuso proporciona una transicin elegante a travs de una frontera como ilustra la figura 13.1. El eje x, representa la edad de la persona. El eje y toma el valor difuso. El conjunto difuso de personas "jvenes" los mapas de valores de edad correspondiente. Se puede ver en la figura que persona de 11 aos de edad no es un nio. La persona se eliminarn progresivamente a partir de esta clasificacin como su edad aumenta. Formalmente, podemos definir un conjunto difuso como: DEFINICION 13.3:Conjunto Difuso Sea X el universo con elementos de X denotado como x. Un conjunto difuso A de X se caracteriza por una funcin A(x) que asocia a cada elemento x con el grado de pertenencia de A. En contraste con la teora de probabilidades, que se basa en la asignacin de probabilidades a un evento determinado sobre la base de frecuencias antes del evento, la lgica difusa asigna valores a los eventos en base a una funcin de pertenencia se define como: A(x):X [0, 1] En lgica difusa, el evento o elemento x es asignado un valor por una funcin . Este valor representa el grado para el elemento x que pertenece al conjunto A. A(x) = grado(x A) El valor de x est limitado por el siguiente rango 0 <= A(x) <= 1 El conjunto difuso A es una extensin de la teora tradicional de conjuntos. Se generalizan los conceptos de pertenencia mediante el uso de la funcin de pertenencia que devuelve un valor entre 0 y 1 que representa el grado de pertenencia (tambin llamado valor de pertenencia) un objeto x tiene el conjunto A. FORMACION DE CONJUNTOS DIFUSOS Para representar un conjunto difuso en una computadora se necesita definir su funcin de pertenencia. Un enfoque que podemos utilizar es la encuesta de un grupo de personas para su comprensin del trmino que estamos intentando representar el conjunto difuso. Por ejemplo considerar el concepto una persona alta. Se podra preguntar a cada uno de los individuos en qu 4

Sistemas Expertos

Lgica Difusa

grado creen que una determinada persona de altura es alta. Despus de adquirir la respuesta para una variedad de alturas, se podra realizar un promedio simple para producir un conjunto difuso de las personas altas. Ahora si podemos usar esta funcin para atribuir (o valor de pertenencia) a un individuo que pertenece a los conjuntos difusos de personas altas. Podramos continuar con esta votacin para tener en cuenta las descripciones tales como la altura a corto o medio plazo. De esta manera podemos obtener conjuntos difusos que refleje la opinin popular de la mayora de las personas para cada una de estas clasificaciones. Este punto es ilustrado en la Figura 13.2 donde los conjuntos difusos se muestran en una forma lineal en trozos para las cuestiones de las tres diferentes categoras para la altura de un individuo. Al definir mltiples conjuntos difusos del mismo, la literatura difusa menudo se refiere a subconjuntos difusos. Al formar subconjuntos difusos para varios trminos, podemos atribuir un valor de pertenencia de un determinado objeto para cada conjunto. Considerar la figura 13.2 de un individuo.

De una altura de 5.5 pies es parte de personas medianas con valores de pertenencia de 1 y al mismo tiempo pertenecen a personas pequeas y altas con valor de 0.25. Es un interesante como un solo objeto es considerado como miembro parcial de mltiples conjuntos. Se ver los valores de este punto cuando se revise la operacin de sistemas expertos difusos. Otro enfoque encontrado en prctica para formar conjuntos difusos recae estrictamente en la interpretacin de un solo experto. Otro enfoque ms reciente descrito por Kosko (1992) consiste en una tcnica de redes neuronales, este enfoque es usualmente visto como una aplicacin de control, donde la red neuronal usa datos de las operaciones del sistema para derivar conocimiento en forma de conjuntos difusos. REPRESENTACION DE CONJUNTOS DIFUSOS En la seccin anterior se introdujo conjuntos difusos y discutiendo valores cuantitativos de trminos ambiguos utilizados dentro del lenguaje natural. En esta seccin introduce la representacin formal de conjuntos difusos. Asumimos que tenemos un universo de elementos X 5

Sistemas Expertos

Lgica Difusa

definidos dentro un conjunto difuso A. Sin embargo asumimos que tenemos un conjunto discreto de X elementos { x1, x2, .. ,xn}. El conjunto difuso A define la funcin de asociacin A(x) que mapea los elementos xi de X al grado asociado entre [0, 1]. Los valores asociados indican el grado de xi asociado hacia A. para un conjunto discreto de elementos, una manera conveniente de representar un conjunto difuso es por el uso de vectores. A=(a1, a2, a3, ... , an) Donde ai = A(xi) Para una representacin clara el vector tambin puede incluir el smbolo "/" el cual asocia el valor asociado ai, con el elemento xi. A= (a1/x1, a2/x2, ... , an/xn) Como un ejemplo considere el conjunto difuso de la estatura de personas mostrada anteriormente. ESTATURA = (0/5, 0.25/5.5, 0.7/6, 1/6.5, 1/7) La notacin estndar de conjuntos difusos representa la unin de las dimensiones de los vectores como sigue: donde "+"representa la notacin booleana de la unin.

A= 1/x1, + 2/x2 + ... + n/xn A = i/xi. Si X es una funcin contina, entonces el conjunto A puede ser representado como: A = A(xi)/xi Para un continuo conjunto de elementos, se requiere alguna funcin para mapear los valores asociados de los elementos. Una funcin tpica es Gausiana. Es una funcin adecuada que representa los datos bsicos de los conjuntos difusos.

Sistemas Expertos
LIMITES

Lgica Difusa

En la seccin anterior se describi mtodos para capturar y representar los trminos lingsticos cuantitativos a travs de conjuntos difusos. En conversaciones normales, los humanos pueden adicionar trminos a una sentencia por el uso de adverbios como "muy", ligeramente" o "un poco". Un adverbio es una palabra que modifica un verbo, un adjetivo, otro adverbio, o una frase entera. Consideremos por ejemplo un adverbio que modifica un adjetivo "la persona es muy alta." Si necesitamos representar el nuevo conjunto difuso, nosotros podramos obtener el mismo grupo de personas usadas en la obtencin de nuestro conjunto difuso de personas de estatura alta. Sin embargo, se disponen de tcnicas para trabajar con conjuntos difusos existentes para capturar el impacto de la adicin de adverbios, este es el objetivo de los lmites. Un lmite modifica matemticamente un conjunto difuso para acomodarse a la adicin de adverbios. Por ejemplo la figura 13.3 muestra los tres conjuntos difusos de la altura mostrada anteriormente en la figura 13.2, junto con los conjuntos ajustados por la introduccin de trmino muy derivado a travs de un funcionamiento que se discutir despus. Para ilustrar el impacto de las modificaciones del conjunto difuso por la operacin de un lmite, consideremos a una persona de estatura 6, de acuerdo a la figura 13.3 podemos considerar a esta estatura con una certeza de 0.7. Sin embargo, como tambin muestra la figura 13.3 podemos considerar el mismo como muy alta con una certeza de 0.4, un resultado razonable. La siguiente seccinsediscutir el lmitecomn utilizado en la prctica.

Sistemas Expertos
Concentracin (Muy)

Lgica Difusa

La operacin deconcentracin tiene un efecto de reducir elvalor asociado deesos elementos que tienenestosvalores pequeos, estaoperacinesta dada por: concen(A) (x) =(A(x)) Dado unconjunto difuso de personas altas, podemosusar esta operacin para crear el conjunto de personas muyaltas. Dilatacin(Algunos) La operacin de dilatacin,dilata los elementos del conjunto difuso por la incrementacin de sus valores asociados de aquelloselementoscon unvalor pequeoms que los elementos con valor alto, estaoperacinestadadapor: DIL(A)(x) = (A(x)) Dado unconjunto difuso de personasmedianas, podemos usarestaoperacin para crearel conjunto demsomenospersonas medianas. Intensificacin (Realmente) La operacin de intensificacin tiene el efecto de intensificacin del significado de la frase por el incremento de los valores asociados a 0.5 y disminuyendo por debajo de 0.5.Estaoperacin esta dada por: INT(A)(x) =2(A(x)) = 1 2 (1 - A(x)) para 0 A(x) 0.5 para 0.5 <A(x) 1

Dado unconjunto difuso de personasmedianas, podemos usarestaoperacin para crearel conjunto de personas realmentemedianas. Potencia(muy muy) La operacin potenciaesuna extensin de laoperacin de concentracin. pow(A) (X) =(A(x))
n

Dado unconjunto difuso de personas altas,podemosusar esta operacin conn=3 para generar unconjuntopersonas muy muy altas.

Sistemas Expertos
OPERACIONES CONCONJUNTOS DIFUSOS Interseccin

Lgica Difusa

En la teoraclsica de conjuntos, la interseccin de dos conjuntos contiene los elementos que soncomunesaambos, sinembargo enlosconjuntosdifusos un elemento puede estar parcialmenteen ambosconjuntos. Poreso cuandoconsideramos la interseccin de estos conjuntos, se debever cual de los elementoesmas parecidopara estar en la interseccin en uno de los conjuntosoriginales. Paraobtener la interseccin de dos conjuntos difusosA y B definidos enX dadopor: AB (X) =min(A(x),B(x)) para todo xX =A(x) B(x) =A(x) B(x) El smbolo"" (llamado el lgico AND) es usadoen lgica difusa para representar laoperacinmnimo,simplemente toma el mnimo de losvalores bajoconsideracin. Para ilustrar estaoperacin,considera los conjuntos difusos de personas altasy pequeas. Alta Pequea = (0/5, 0.2/5.5, 0.5/ 6,0.8/6.5,1/7) = (1/5, 0.8/5.5, 0.5/6,0.2/6.5, 0/7)

Entoncesla interseccinde estos conjuntos seria: ALTPEQ (X) =(0/5, 0.2/5.5,0.5/6, 0.2/6.5,0/7 ) Cuando seconsidera eltrminoalto y pequeo esrazonable al interpretar el significado demediano. Con esta interpretacin, se espera el grado de asociacin delconjunto alto, yel ms bajo lmitedeconjunto. Este resultado seobserva en la interseccindel conjunto difuso alto ypequeo. Este ejemplomuestracomo ambos conjuntos pueden ser combinados para luego formar uno nuevo. El trmino lingstico nosotros podramos aplicarlo a este nuevo conjunto podra ser las personas de altura mediana.

Unin Otra forma de combinar los conjuntos difusos.La uninesta compuesta por elementos que estn en un conjunto o en ambos. El smbolo (v) representa a la un on y se lo conoce como OR. La unin consiste en obtener los valores mximos de los conjuntos.

Sistemas Expertos
Ejemplo :TALL =(0/5, 0.2/5.5 , 0.5/6 , 0.8/6.5 , 1/7) SHORT = (1/5 , 0.8 /5.5 , 0.5/6 , 0.2/6.5 , 0/7) TALL u SHORT = (1/5 , 0.8/5.5 , 0.5/6 , 0.2/6.5 , 1/7) Complementacin NOT El complemento NOT es la operacin inversa de nuestro conjunto . Y es equivalente a 1-conjunto. Ejemplo: TALL =(0/5, 0.2/5.5 , 0.5/6 , 0.8/6.5 , 1/7) NOT TALL =(1/5, 0.8/5.5 , 0.5/6 , 0.2/6.5 , 0/7)

Lgica Difusa

Operaciones adicionales: Usando los conjuntos difusos se pueden derivar otras operaciones, por ejemplo para conocer el tamao de las personas medians seria: 1- (conjunto)2

Inferencia difusa La lgica difusa trata con proposiciones difusas. Una proposicin difusa es una sentencia que contiene el valor de las variables. Ejemplo La talla es alta Representa X is A Donde A es el valor que puede tomar nuestra variable. Una regla difusa contiene dos proposiciones de la siguiente forma: IF X is A THEN Y is B Esta regla establece una relacin entre dos proposiciones. Un sistema experto basado en lgica difusa, necesita muchas reglas y la asociacin entre sus proposiciones ( A, B), para ello se crea una matriz M . La matriz M mapea los valores de A y B, esto se conoce como Matriz asociativa difusa ( FuzzyAssociativeMatrix FAM). Ejemplo: Tenemos dos proposiciones Talla es alta Peso es pesado X is A Yis B Podemos representar los valores de A y B como vectores para capturar la relacin en la matriz de asociacin. Para realizar esto se tienen dos tcnicas: Matriz inference (Inferencia de matriz) y Max-Productinference (Inferencia de Mximo producto). Sin embargo necesitamos primero aprender una operacion conocida como: MultiplicacinvectrorMatriz.

10

Sistemas Expertos

Lgica Difusa

Multiplicacin Vector Matriz Se define como A . M = B. Donde los componentes de B se obtienen de: bn = max(min(a1, m11), min(a2, m21)... (min(an,mxy) Ejemplo: Tenemos un vector A = (0.2,0.4,0.6,1) M = | 0,1 0,6 0,8 | | 0.6 0.8 0.6 | | 0.8 0.6 0.5 | | 0 0.5 0.5 | b1 = max (min(0.2,0,1), min(0.4,0.6), min(0.6, 0.8), min (1,0)) b1 = max (0.1 , 0.4, 0.6 , 0) b1 = 0.6 b2 = 0.6 b3 = 0.5 B = (0.6 , 0.6, 0.5 )

Ideas Bsicas dela inferencia Difusa El mejor recurso de informacin acerca de lainferencia es Zadeh (1965). Zadhe mira a todo lo difuso como un conjunto de funciones basadas en distribuciones de probabilidad. Los datos que utiliza como base son A = Distribucin de probabilidad = UA(x) = HA HA HB|A = HB Donde el primer y tercer trmino son los vectores que contienen los valores caractersticos de las variables lingsticas A y B y El segundo trmino es la matriz que combina dichos valores. Whalen y Schott en 1983 hicieron un estudio del segundo trmino de la expresin, para poder encontrar las formas de conseguir el mismo, a continuacin se les presentarn las formas Max-Min y Min-Max. Inferencia Max Min Mij = truth(ai bj) = min(a,b) (1) Bi = max {min(ai, mij)} (2) 11

Sistemas Expertos

Lgica Difusa

Las anterioresecuaciones sern usadas para realizar el clculo dela Matriz M HB|A. Como se menciono antes A y B son variables lingsticas, las cuales poseen distintos valores caractersticos, para indicar este mtodo lo haremos con un ejemplo. Digamos que A se ayuda medir la temperatura normal, dentro de todas las posibles temperaturas que se puedan presentar, y B indica la velocidad media, dentro de todos los valores que se pueden adoptar para la velocidad; por lo tanto demos un el conjunto siguiente: A = {0/100 0.5/125 1/150 0.5/175 0/200} B = {0/10 0.6/20 1/30 0.6/40 0/50} Donde los numeradores de los quebrados hacen referencia a la probabilidad del valor tpico que es el denominador. La regla que manejaremos es: SI A ENTONCES B Ahora que ya se tiene la regla y los vectores que definen los conjuntos difusos A y B respectivamente aplicamos la ecuacin (1): M = mij = min(ai , bj) Donde M es la siguiente matriz: Min(0,0) Min(0.5,0) Min(1,0) Min(0.5,0) Min(0,0) Min(0,0.6) Min(0.5,0.6) Min(1,0.6) Min(0.5,0.6) Min(0,0.6) Min(0,1) Min(0.5,1) Min(1,1) Min(0.5,1) Min(0,1) = 0 0.5 1 0.5 0 Min(0,0.6) Min(0.5,0.6) Min(1,0.6) Min(0.5,0.6) Min(0,0.6) Min(0,0) Min(0.5,0) Min(1,0) Min(0.5,0) Min(0,0)

0 0 0 0 0

0 0.5 0.6 0.5 0

0 0.5 0.6 0.5 0

0 0 0 0 0

Esta matriz nor permite hallar los valores de B cuando el vector que recibimos de A es distinto digamos: A = {0/100 0.5/125 0/150 0/175 0/200} Ahora haremos el clculo del vector B usando la ecuacin 2.

12

Sistemas Expertos
Bi = max {min(ai, mij)} B1 = max {min(0, 0) min(0.5, 0.0) min(0, 0) min(0, 0) min(0, 0)} B2 = max {min(0, 0) min(0.5, 0.5) min(0, 0.6) min(0, 0.5) min(0, 0)} B3 = max {min(0, 0) min(0.5, 0.5) min(0, 1) min(0, 0.5) min(0, 0)} B 4 = max {min(0, 0) min(0.5, 0.5) min(0, 0.6) min(0, 0.5) min(0, 0)} B5 = max {min(0, 0) min(0.5, 0.0) min(0, 0) min(0, 0) min(0, 0)} Donde los valores resultantes dan como resultado B: B = {0/10 0.5/20 0.5/30 0.5/40 0/50}

Lgica Difusa

El proceso que se ha realizado es conocido como fusificacin. Ahora bien los valores de ese vector, corresponden al valor estimado en funcin al vector A. El vector A es la resultante del anlisis de alguno de los puntos dentro de la grfica del conjunto A. Ahora bien para encontrar el valor puntual al que hacen referencia ambos valores se deben usar algn mtodo de defusificacin conocido, como el de los medios, centroide, basas, etc. De estos mtodos el ms conocido es el centroide. Las grficas se las realizan plasmando sobre el eje y los valores de las posibilidades del vector de la variable lingstica, y en el eje x los valores tpicos delas variables. Uniendo esos puntos se obtiene una figura, la cual es el conjunto difuso. Ahora bien cuando se manda un vector con valores distintos, estos corresponden a un valor del eje X, del cual no conocemos su posibilidad de ocurrencia, y menos an el valor tpico en el conjunto al que se infiere, en este caso B, es por esto que se hace el clculo de los valores usando la matriz M. Una vez obtenido los valores de los nuevos vectores se busca el punto de equilibrio de la figura encontrada, y el valor que corresponda a trasposicin sobre el eje X, es el valor que se da como respuesta. En el caso que estuvimos viendo, en los valores del vector A corresponden a una temperatura de 125 grados y la velocidad que devolvera sera aproximadamente 20 pies por segundo. Esta forma de encontrar el valor corresponde al mtodo del centroide. Max-producto de inferencia Max-producto de inferencia utiliza el estndar del producto como operador de aplicacin cuando la formacin de los componentes de M: mq = aibj Tras el clculo de la composicin de la matriz, mximos y mnimos que se utiliza para determinar la matriz B' inducida de algunos vectores del subconjunto A '. Para ilustrar esta tcnica se considera los siguientes vectores :

13

Sistemas Expertos
A = (0, 0.5, 1, 0.5, 0) B = (0, 0.6, 1, 0.6, 0)

Lgica Difusa

| (0 .0 * 0.0) (0.0 * 0.6) (0.0 * 1.0) (0.0 * 0.6) (0.0 * 0.0) | | (0.5 * 0.0) (0.5 * 0.6) (0.5 * 1.0) (0.5 * 0.6) (0.5 * 0.0) | M = | (1.0 * 0.0) (1.0 * 0.6) (1.0 * 1.0) (1.0 * 0.6) (1.0 * 0.0) | | (0.5 * 0.0) (0.5 * 0.6) (0.5 * 1.0) (0.5 * 0.6) (0 .5 * 0.0) | | (0.0 * 0.0) (0.0 * 0.6) (0.0 * 1.0) (0.0 * 0.6) (0.0 * 0.0) | | 0.0 0.0 0.0 0.0 0.0 | | 0.0 0.3 0.5 0.3 0.0 | = | 0.0 0.6 1.0 0.6 0.0 | | 0.0 0.3 0.5 0.3 0.0 | | 0.0 0.0 0.0 0.0 0.0 | Suponiendo que tenemos A' = (0/100, 5/125, 0/150, 0/175, 0/200) aplicando mximos y mnimos obtendremos B' aplicando la siguiente frmula: b = max { min ( a'i , mij)} b1 = max [ min(0.0 , 0.0), min(0.5 , 0.0), min(0.0 , 0.0), min(0.0 , 0.0), min(0.0 , 0.0) ] b2 = max [ min(0.0 , 0.0), min(0.5 , 0.3), min(0.0 , 0.6), min(0.0 , 0.5), min(0.0 , 0.0) ] b3 = max [ min(0.0 , 0.0), min(0.5 , 0.6), min(0.0 , 0.1), min(0.0 , 0.5), min(0.0 , 0.0) ] b4 = max [ min(0.0 , 0.0), min(0.5 , 0.3), min(0.0 , 0.6), min(0.0 , 0.5), min(0.0 , 0.0) ] b5 = max [ min(0.0 , 0.0), min(0.5 , 0.0), min(0.0 , 0.0), min(0.0 , 0.0), min(0.0 , 0.0) ] B' = (0.0 , 0.3 , 0.5 , 0.3 , 0.0) La tcnica de inferencia max-producto produce una versin a escala de B, como se muestra en la figura 1. donde se ilustra el resultado general, de utilizar esta tcnica para los conjuntos fuzzy triangulares. Reglas B

IF A THEN B

14

Sistemas Expertos

Lgica Difusa

Figura 1. Max-Producto de Inferencia Reglas con Mltiples Premisas En las secciones anteriores hemos estado buscando en reglas difusas que contienen una sola premisa como IF A THEN B. Pero en la practica necesitamos definir reglas con mltiples premisas, como por ejemplo IF A AND B THEN C. Para poder representar las reglas con mltiples premisas se utilizan las condiciones AND o OR, dependiendo a los condicionantes que se utilice, se utiliza diferentes reglas como se especifica en la siguiente tabla. C' min(ai , bj) ^ Uc (z) min(ai , bj) ^ Uc (z) min(ai , bj) . Uc (z) min(ai , bj) . Uc (z) Premisa de unin AND OR AND OR Inferencia Max-Min Max-Min Max Producto Max Producto

Defuzzificacin La defuzzificacin es definida como un mapeo de un conjunto difuso B' en V elemento de V, que refleje la mejor representacin del conjunto difuso B' . Hasta el momento no existe un algoritmo ptimo para la defuzzificacin. El mtodo mas popular de defucificacion es el calculo del centro de gravedad o centroide, el cual retorna el centro del rea bajo la curva. Mltiples reglas Difusas Asumiendo que se desea controlar la velocidad de algunos vehculos. Supongamos, adems, que nuestra decisin se basa en la temperatura y la presin del vehculo como se recoge en las siguientes reglas: 15 R (que es la salida

de la inferencia difusa). Conceptualmente, la tarea de defuzzificar es especificar un punto,

Sistemas Expertos

Lgica Difusa

IF OR

temperatura es normal presin es baja

THEN Velocidad es medio IF AND temperatura es normal presin es normal

THEN velocidad es baja La representacin grfica de estas reglas aplicando la inferencia de los procesos max-min tendremos el siguiente cuadro: Reglas Temperatura T
Normal

Presin P Max ( T, P )

Velocidad V
Medio

IF T=Normal OR P= Bajo

Baja

Lecturas

Bajo

IF T=Normal AND P=Normal THEN V = Baja

Normal

Normal

Min ( T, P)

Figura 3. Inferencia de Max-Min para multiples Reglas

Ajuste de Velocidad = Centroide

16

Sistemas Expertos
CONSTRUYENDO UN SISTEMA EXPERTO DIFUSO

Lgica Difusa

Para ilustrar el diseo de un sistema experto difuso consideramos el problema de conducir un carro del golf. Nosotros queremos disear un sistema difuso que conducir automticamente a Kathy quien es una apasionada jugadora de golf de fin de semana, alrededor del campo de golf.

17

Sistemas Expertos

Lgica Difusa

Kathy ha tenido dificultad al conducir su carro que ha llevado a un incremento en su ansiedad y una baja en su anote en el a puntaje de golf. Con un carro de golf automtico, ella puede relajarse, y confortadamente disfrutar y mejorar su juego. Existen siete tareas principales que tpicamente realizara al desarrollar un sistema experto con lgica difusa: Tarea 1: Definir el problema Tarea 2: Definir las variables lingsticas Tarea 3: Definir los conjuntos difusos Tarea 4: Definir las reglas difusas Tarea 5: construir el sistema Tarea 6: Probar el sistema Tarea 7: Refinar el sistema TAREA 1: DEFINIR EL PROBLEMA.Como todos los proyectos de sistema experto, primeramente necesitamos obtener una fuente de conocimiento. Normalmente esta fuente es un experto en el problema. Para nuestro problema, nosotros avisamos a Bob, un profesional de golf en un curso local, que tiene aos de experiencia manejando un carro del golf.

18

Sistemas Expertos

Lgica Difusa

Bob nos dice que el problema bsico es conducir el carro de un modo eficaz y seguro de una posicin fija inicial a la posicin de la pelota de golf. Nosotros obtenemos la eficiencia minimizando la distancia recorrida y el tiempo transcurrido. Nosotros obtenemos la seguridad esquivando todo rbol que este por el camino. Para logar estas tareas nosotros necesitaremos proporcionar el control al sistema difuso sobre la direccin y velocidad del carro, la Figura 13.10 ilustra nuestro problema de conducir el carro. Este es bsicamente un problema de error nulo. Inicialmente el carro debe dirigirse hacia la pelota anulando el error de desfase entre la direccin angular del carro y la direccin hacia la pelota. El carro tambin debe acelerar a una velocidad mxima aceptable, luego bajar lentamente la velocidad finalmente detenerse cuando est cerca de la pelota; nosotros elegimos detenerse a una distancia alrededor de 3 yardas. Esto minimiza el error entre la posicin del carro y la posicin de la pelota de un modo rpido. Adems, cuando un rbol est en el camino del carro, debe dirigirse el carro alrededor de l prudentemente(es decir, bajar lentamente la velocidad), luego aumente la velocidad y dirjase de nuevo hacia la pelota. TAREA 2: DEFINIR LAS VARIABLES LINGISTICAS.Posteriormente necesitamos definir las variables lingsticas para nuestro problema. Logramos esta tarea escuchando como Bob resuelve el problema. Nosotros queremos descubrir las variables que representarn nuestro universo de discurso y los conjuntos difusos que se definirn en l. De la tarea 1, nosotros sabemos que nuestro sistema de la lgica difusa se compone de tres problemas bsicos: 1. Controlar la conduccin del carrito en direccin de la bola 2. Controlar la velocidad del carrito 3. Controlar la conduccin del carrito evadiendo rboles Posteriormente le pedimos a Bob que discuta en general cmo se resuelve cada uno de estos problemas. Considere el problema y asum que Bob nos proporcionara la estrategia del sentido comn que se tomara para dirigir el carro hacia la pelota: Cuando la direccin del carro est lejos de la pelota, dirigir la direccin del carro hacia la pelota De un modo similar nosotros obtenemos las estrategias del experto para controlar la velocidad del carro: Cuando el carro esta lejos de la pelota, aumente la velocidad del carro. Cuando el carro est cerca de la pelota, disminuya la velocidad del carro lentamente. 19

Sistemas Expertos
Y la direccin del carro con velocidad:

Lgica Difusa

Cuando el carro est cerca del rbol y delante de , entonces disminuir lentamente la velocidad del carro y conducir en direccin lejos del rbol. De esta discusin nosotros podemos definir nuestras variables lingsticas del universo de discurso, y tambin pedirle a nuestro experto que defina sus rangos: VARIABLES LINGISTICAS Error del ngulo Angulo del rbol Angulo de direccin Velocidad Aceleracin Distancia de la pelota Distancia del rbol RANGO a a a a a a a

- 180 - 180 - 45 0 - 2 0 0

180 grados 180 grados 45 grados 5 yardas/s 1 yarda/s/s 600 yardas 1000 yardas

TAREA 3: DEFINIR LOS CONJUTNOS DIFUSOS.El siguiente paso involucra la definicin de los conjuntos difusos en cada universo. Para lograr esto nosotros consultamos de nuevo a Bob y le pedimos una lista de adjetivos tpicos empleados con cada variable lingstica. Asuma como resultado de este esfuerzo la lista que se muestra en la Figura 13.11. Esta figura representa un diccionario de vocabulario para el problema SUGERENCIA DE DISEO: Mantenga un diccionario de trminos usados en el sistema que incluye todas las variables lingsticas y sus adjetivos asociados. Error del ngulo Negativo grande Negativo pequeo Cero Positivo pequeo Positivo grande Angulo del rbol Negativo grande Negativo pequeo Cero Positivo pequeo Positivo grande Angulo de direccin Distancia de la pelota Distancia del rbol Cerca

Velocidad

Aceleracin

Firmemente Frenar Cero Cero a la derecha firmemente Ligeramente Ligeramente Realmente Luz de freno a la derecha lento cerca Cero Lento Lmite Cerca Ligeramente a la Media Cero Media izquierda Firmemente Ligeramente a la Rpida Lejos acelerando izquierda Pisando fondo Figura 13.11: Variables difusas con adjetivos 20

Sistemas Expertos

Lgica Difusa

Luego pedimos a Bob la informacin que nos permita definir los conjuntos difusos para cada adjetivo empleado. Figura 13.11. Por ejemplo, nosotros primero podramos preguntar: - Qu velocidad usted considera lento? asuma que Bob proporciona una respuesta vaga a esta pregunta alrededor de 3 yardas por segundo. En este punto, nosotros podemos preguntarle a qu grado l cree que los distintos valores de velocidad son lentos A qu grado usted cree que 1 yd/s es lento?. Nosotros podemos usar las preguntas similares para otros valores de velocidad, y siguiendo este resultado con la seleccin de una funcin que razonablemente traza los valores de velocidad, y valora el grado de certeza de los valores correspondientes ahora nosotros tenemos nuestro primer conjunto difuso. El trazado difuso o las funciones correspondientes pueden tener una variedad de formas de dependen de cmo el experto relaciona los diferente valores de un dominio de los valores de creencia. En la prctica, una funcin lineal, tal como una figura triangular o trapezoidal, proporciona una captura adecuada de la creencia del experto y simplifica el clculo Podramos continuar este proceso para definir los otros conjuntos difusos para la variable lingstica Velocidad. Sin embargo, en la prctica cuando el experto ve como se forma el primer conjunto difuso, generalmente puede definir los otros conjuntos simplemente cambiando la funcin de trazado seleccionada por el universo de la variable. Sin embargo, este enfoque podra requerir una pequea reduccin o aplicacin de la funcin cambiada. SUGERENCIA DE DISEO: Permita que el experto cambie una funcin del conjunto difuso existente en el universo de discurso para explicar otros adjetivos Las figuras 13.12 hasta la 13.18 muestran los conjuntos difusos para toras las condiciones mostradas en la figura 13.11. Cada figura incluye tambin los vectores apropiados para los diversos conjuntos difusos. Un punto clave al definir los conjuntos difusos es asegurarse de que usted tenga la coincidencia suficiente en los conjuntos para garantizar que cada posible valor prubele algn valor admitido en el conjunto difuso. Si no se hace esto, la posibilidad existir siempre que su sistema sea indiferente a algn valor. SUGERENCIA DE DISEO: Mantenga la coincidencia suficientemente en los conjuntos difusos adyacentes.

21

Sistemas Expertos

Lgica Difusa

22

Sistemas Expertos

Lgica Difusa

23

Sistemas Expertos

Lgica Difusa

24

Sistemas Expertos

Lgica Difusa

TAREA 4: DEFINIR LAS REGLAS DIFUSAS.Posteriormente necesitamos definir las reglas difusas. Para lograr esto, le pedimos a Bob discutir sobre como maneja los tres principales problemas: dirigir el carro a la pelota, controlar la velocidad del carro, y dirigir el carro evadiendo un rbol. Tambin le pedimos que considere el uso de los adjetivos difusos definidos previamente. Sin embargo, si otros adjetivos aparecen durante esta discusin, simplemente podremos agregarlos a nuestra lista anterior y podemos definir un conjunto difuso para cada uno. Los resultados de este trabajo son mostrados en la Figura 13.19, donde varios conjuntos difusos y el operador difuso NOT, son usados. Debe notarse que el uso de lmites en las reglas difusas deben ser considerados posteriormente, es decir cuando el sistema este siento refinado. El conjunto inicial de reglas debe ser pequeo y solo debe incluir las reglas difusas para los adjetivos del diccionario, sin adverbios adicionales. Cuando usted pruebe el sistema, puede agregar los adverbios para ver si el rendimiento del sistema mejora.

25

Sistemas Expertos
sistema REGLAS de conduccin REGLA 1S Mantener la direccin IF AND AND el error_ngulo es cero la distancia_rbol NO ES ALGO cercana el ngulo_rbol NO ES ALGO cercano a cero

Lgica Difusa

SUGERENCIA DE DISEO: Use los adverbios en las reglas al refinar el rendimiento del

THEN mantener el ngulo_direccin en cero REGLA 2S Cambiar la direccin ligeramente a la derecha IF AND AND el error_ngulo es un positivo_pequeo la distancia_rbol NO ES ALGO cercana el angulo_rbol NO ES ALGO cercano a cero

THEN dirigir el ngulo_direccinligeramente_zquierda REGLA 3S Cambiar la direccin ligaramente a la izquierda IF AND AND el error_ngulo es un negativo_pequeo la distancia_rbol NO ES ALGO cercana el ngulo_rbol NO ES ALGO cercano a cero

THEN dirigir el ngulo_direccinligeramente_izquierda REGLA 4S Cambiar la direccin ligeramente a la derecha IF AND el error_ngulo es un positivo_grande la velocidad es rpida

THEN dirigir el ngulo_direccinligeramente_derecha REGLA 5S Cambiar la direccin firmemente a la derecha IF AND el error_ngulo es un positivo_grande la velocidad NO es rpida

THEN dirigir el ngulo_direccinfirmemente_derecha 26

Sistemas Expertos
REGLA 6S Cambiar la direccin ligeramente a la izquierda IF AND el error_ngulo es un negativo_grande la velocidad es rpida

Lgica Difusa

THEN dirigir el ngulo_direccinligeramente_izquierda REGLA 7S Cambiar la direccin firmemente a la izquierda IF AND el error_ngulo es un negativo_grande la velocidad NO es rpida

THEN dirigir el ngulo_direccinfirmemente_izquierda REGLAS para la aceleracin REGLA 1A Frene ligeramente IF AND el error_ngulo es un positivo_grande la velocidad es rpida

THEN encender la luz_freno de aceleracin REGLA 2A Frene ligeramente IF AND el erorro_ngulo es un negativo_grande la velocidad es rpida

THEN encender la luz_greno de aceleracin REGLA 3A Pisar fondo IF AND la distancia_pelota est lejana la velocidad NO ES MUY rpida

THEN pisar_fondo el acelerador REGLA 4A ponga la acceleration a cero IF AND la distancia_pelota est lejana la velocidad es MUY rpida

THEN ponga la aceleracin a cero

27

Sistemas Expertos
REGLA 5A aceleracin ligera IF AND la distancia_pelota es mediana la velocidad NO ES rpida

Lgica Difusa

THEN haga que la aceleracin sea loeramente_acelerado REGLA 6A ponga la aceleracin a cero IF AND la distancia_pelota es mediana la velocidad es rpida

THEN ponga la aceleracin a cero REGLA 7A luz de freno IF AND la distancia_pelota es cercana la velocidad es rpida

THEN encender la luz_freno de aceleracin REGLA 8A ligeramente acelerado IF AND la distancia_pelota es cvercana la velocidad es cero

THEN haga que la aceleracion sea ligeramente_acelerado REGLA 9A frenar firmemente IF AND la distancia_pelota es relamente_cerca la velocidad es media

THEN frenar_firmemente la aceleracin REGLA 10A luz de freno IF AND la distacia_pelota es realmente_cerca la velocidad es media

THEN encender la luz_freno de aceleracin

28

Sistemas Expertos
REGLA 11A al lmite IF AND la distancia_pelota es realmente_cerca la velocidad es lenta

Lgica Difusa

THEN haga que la aceleracin este al lmite REGLA 12A ponga la aceleracin a cero IF AND la distancia_pelota es realmente_cerca la velicidad es realmente_lenta

THEN ponga la aceleracin a cero REGLA 13A ligeramente acelerado IF AND la distancia_pelota es realmente_cerca la velocidad es cero

THEN haga que la aceleracin sea ligeramente_acelerado REGLA 14A frenar firmemente IF AND la distancia_pelota es cero la velocidad NO es cero

THEN frenar_firmemente la aceleracin REGLA 15A lmite IF AND la distancia_pelota es cercana la velocidad es media

THEN haga que la aceleracin est al lmite REGLA 16A ponga la aceleracin a cero IF AND la distancia_pelota es cercana la velocidad es lenta

THEN ponga la aceleracin a cero

29

Sistemas Expertos
REGLAS que evitan el rbol REGLA 1T Giro ligeramente a la izquierda evitando el rbol IF AND AND la distancia_rbol es ALGO cercana el ngulo_rbol es ALGO cernaco a cero el ngulo_rbol es un positivo_pequeo

Lgica Difusa

THEN dirigir el ngulo_direccinligeramente_izquierda REGLA 2T Giro ligeramente a la derecha evitando el rbol IF AND AND la distancia_rbol es ALGO cercana el ngulo_rbol es ALGO cercano a cero el ngulo_rbol es un negative_pequeo

THEN dirigir el ngulo_direccinligeramente_derecha REGLA 3T Frenar firmemente evitando el rbol IF AND la distancia_rbol es MUY cercana el ngulo_rbol es cero

THEN frenar_firmemente la aceleracin Figura 13.19: Reglas Difusas TAREA 5: CONTRUIR EL SISTEMA Ahora que tenemos las reglas y los conjuntos difusos, nuestra prxima tarea es construir el sistema. Esta tarea implica la codificacin de los conjuntos difusos, reglas y procedimientos para la ejecucin de funciones lgicas difusas as como la inferencia difusa. Para realizar esta tarea podemos elegir uno de dos caminos: construir el sistema usando un lenguaje de programacin bsico usar un shell de desarrollo en lgica difusa. El leguaje de programacin C es el lenguaje de mayor preferencia para desarrollar sistemas expertos en lgica difusa. Estos ofrecen una estructura de datos que son conducidos por implementacin de procedimientos de lgica difusa. Sin embargo, construir un sistema de lgica difusa usando como un lenguaje de programacin bsico, requiere un desarrollador que no solo codifique la adquisicin de conocimiento (es decir, conjuntos difusos y reglas difusas); sino tambin sea responsable de la codificacin de los procesos de la lgica difusa. 30

Sistemas Expertos

Lgica Difusa

Un shell de lgica difusa proporciona un entorno completo para desarrollar un sistema experto en lgica difusa. El diseador es el nico responsable de codificar el problema de adquisicin de conocimiento esta tarea frecuentemente utiliza el lenguaje natural para las reglas y un mtodo grafico para definir los conjuntos difusos. Asumiremos que nuestro sistema de ejemplo fue desarrollado usando el shellCubiCalc. CubiCalc es un entorno Windows que permite obtener rpidamente prototipos de sistemas expertos en lgica difusa. Este tambin ofrece un utilitario que nos permite probar nuestro sistema fcilmente. TAREA 6: PROBAR EL SISTEMA Despus de tener el sistema construido, buscaremos probarlo para ver si se encuentran las especificaciones definidas en la Tarea 1. Para nuestro sistema, los carros de prueba son simulados usando un utilitario de simulacin de CubiCalc. Toda prueba corre usando la tcnica de inferencia max-prtoduct. El nmero de casos de pruebas existentes depende de la localizacin de la pelota, rbol, carro y la orientacin de ste. Observaremos solo dos situaciones: Una sin el rbol en la ruta del carro, y otra con el rbol en la ruta del carro. Para ambos casos de prueba asumiremos que la pelota est en las coordenadas (0,0). Prueba N 1 sin el rbol en la ruta Para el primer caso de prueba consideraremos una situacin en la que el rbol no esta en la ruta directa del carro. Adems, el carro esta dirigido lejos con un ngulo de 45 grados. Los resultados de la prueba de simulacin son mostrados en las difusas 13.20 y 13.21. Figura 13.20 ilustra la ruta del carro durante la prueba y vemos que tuvo una pequea dificultad al alcanzar la pelota. Despus de una maniobra inicial para obtener la tarjeta, el carro sigue una lnea recta acercndose a la pelota, sin desviarse de esta. El carro se detiene aproximadamente a 3 yardas de la pelota.

31

Sistemas Expertos

Lgica Difusa

La figura 13.21muestra la velocidad del carro durante la prueba. Desde la posicin estacionada el carro arranca rpidamente a su velocidad mxima permitida de 5 yardas/segundo. Como el carro se acerca a la pelota desacelera rpidamente. Para este punto la velocidad comienza a oscilar (decrementar) una indeseable situacin que ser discutida despus.

32

Sistemas Expertos

Lgica Difusa

Para proporcionar entradas dentro los sistemas de procesos de inferencia, la simulacin tuvo que ser pausada para inspeccionar las reglas difusas. Cuando se detuvo la simulacin se tenan las siguientes condiciones. El carro estaba a 28.5 yardas de la pelota El carro estaba movindose directamente hacia la pelota La velocidad del carro era de 4.5 yardas/segundo El carro estaba desacelerando acerca de 0.5 yardas/s/s El error del ngulo era muy grande El rbol estaba muy lejos Bajo esas condiciones solo se aplican tres reglas: REGLA 5A, 6A,y 7A. Para evaluar la regla 5A, las funciones asociadas: media a distancia de la pelota y rpida a velocidad deberan ser evaluadas. La distancia de la pelota de 28.5 yardas pertenece a la clasificacin de media para el rango de 0.125 (ver figura 13.17). Una Velocidad de 4.5yardas/segundo es considerada rpida para un rango de 0.8 (ver figura 13.15); por lo tanto esta no es rpida para un rango de 0.2. Cuando al AND se le asignan aquellos dos valores (0.8,0.2), el operador mnimo produce 0.125, tomando las premisas como verdaderas. Usando la tcnica de inferencia de max-product, este valor es usado para la escala de funciones asociadas a la conclusin de la REGLA 5A Aceleracin ligera. Cuando la regla 6A es evaluada, usamos los valores de media y rpida como verdaderas pero puede existir un error, las premisas tienen otra vez una combinacin verdadera del valor 0.125. La aceleracin asociada a este valor es cero. Cuando evaluamos la regla 7A, la distancia de 28.5 yardas es considerada cercana en un rango de 0.625 y la velocidad es rpida en un rango de 0.8. Por lo tanto luz de freno empieza a subir a escala hasta un valor de 0.625. El inicio paralelo de estas tres reglas es mostrado en la figura 13.22. los tres inducidos dentro de un conjunto difuso aceleracin. Son tambin combinados usando el operador de unin. El resultado central de este clculo es provisto por un incremento en la aceleracin del carro. Desde que el valor final es negativo, el simulador decrementa la velocidad del carro y el proceso contina.

33

Sistemas Expertos

Lgica Difusa

Prueba N 2 rbol en la ruta En la siguiente prueba nosotros vamos a considerar una situacin deonde el rbol est en direccin en lnea recta del carro formando un ngulo de 60 . Tambin que el carro se encuentra lejos de la pelota (baln) En la Fig. 13.23 y Fig 13.24 simulan estos resultados

34

Sistemas Expertos

Lgica Difusa

En la Fig. 13.23 se ilustra que el carro debe dirigirse al baln. El carro debe entonces seguir la lnea recta hacia el rbol hasta estar cerca de l, para luego poder llegar al baln. En este punto ste debe cambiar de rumbo (es decir, evitar o esquivar) al rbol y entonces continuar en lnea recta hasta acercarse al baln. En el caso de prueba N 1 el carro par aproximadamente a 3 yardas del baln. En la Fig. 13.24 nos muestra que el carro una vez mas incrementa su velocidad hasta alcanzar su mxima permitida, mientras se acerca al rbol. En este punto, disminuye su velocidad para poder esquivar bordeando al rbol. Despus de esquivar al rbol, ste aumenta nuevamente su velocidad mientras se aproxima al baln. Aqu va reduciendo poco a poco su velocidad preparndose para parar. Desafortunadamente, vemos que se presenta nuevamente el problema del caso de prueba N 1, donde el carro contina teniendo cierta velocidad estando ya cerca del baln.

35

Sistemas Expertos

Lgica Difusa

TAREA 7: REFINAR EL SISTEMA El refinamiento del sistema experto difuso se inicia cuando el sistema responde pero no lo hace de manera precisa que satisfaga a las expectativas inciales del usuario. Se requiere entonces dedicarle un esfuerzo adicional para que el sistema quede en perfectas condiciones. En un proyecto de un sistema experto difuso, el tiempo que se dedica a definir los conjuntos difusos y la reglas es muy pequeo en comparacin al tiempo que se dedica para su refinamiento. Usualmente, la primera serie definida de conjuntos difusos y reglas nos ayudan a llegar a una solucin razonable del problema. Esta puede ser una de las principales ventajas de usar lgica difusa. Para esto, usamos el razonamiento del Sentido Comn como base para la adquisicin de conocimiento y asi poder dar respuestas rpidas y razonables. Sin embargo, obtener respuestas mas precisas y exactas conlleva dedicarle ms esfuerzo y destreza. Los resultados del caso de prueba N 2 nos dio a conocer mas a detalle las especificaciones inciales. Esto es, que el carro ya no correr desenfrenadamente hacia el rbol y llegara al baln con xito. Sin embargo, inspeccionando en la velocidad del carro nosotros podemos encontrar el problema. Ambas Fig. 13.21 y 13.24 nos muestra que el carro llega con mucha velocidad al acercarse al baln, pero esta velocidad continuamente oscila entre 0 y algn valor. 36

Sistemas Expertos

Lgica Difusa

Un programador puede mirar este punto y estar feliz de que el carrito alcanza con buen xito al baln. Sin embargo, Kathy que es la conductora del carro y no as parte de los programadores, no est feliz, porque debido a los abruptos cambios de velocidad en el carro le han ocasionado una baja en sus puntajes de juego. Entonces, para que el problema sea corregido, nosotros necesitamos hacer una inspeccin en las reglas que controlan la velocidad del carro. Especialmente, nosotros necesitamos observar aquellas reglas que controlan la velocidad del carro cuando ste se aproxima al baln y esta realmente cercano. Las reglas 9A a la 13A cubren esta situacin. La regla 13A es la que causa un incremento en la velocidad del carro, cuando la velocidad se aproxima a 0 (cero) es aqu donde comienza la oscilacin (incrementa su velocidad). Para evitar este problema nosotros podramos eliminar esta regla. En la Figura 13.25 se ilustra la velocidad del carro con la regla 13A eliminada. La eliminacin de esta regla evita que la velocidad oscile (aumente). Sin embargo, simulando este nuevo caso el carro para a 7 yardas del baln versus las 3 yardas ilustradas en nuestra anterior simulacin (caso de prueba 1). En la prctica, ahora nosotros podemos retroceder mucho ms atrs para hacer ajustes en ambos casos y as dar una solucin correcta al problema.

En general para refinar un sistema experto la lgica difusa debemos hacer una o mas de las siguientes recomendaciones: 37

Sistemas Expertos
REGLAS Aadir reglas para las situaciones especiales Aadir premisas para otras variables lingsticas Usar adverbios evitando la utilizacin de operadores CONJUNTOS DIFUSOS Aadir conjuntos dentro de una variable lingstica definida Incrementar o reducir el nmero de conjuntos Cambiar lateralmente el nmero de conjuntos Corregir la forma de los conjuntos

Lgica Difusa

SUGERENCIA DE DISEO: Cuando el control es minucioso se requiere necesariamente la existencia de una variable difusa, pensar en aadir algunos conjuntos difusos centrndonos en este punto de inters. En general, los conjuntos difusos proveen un control pobre. EJERCICIOS 8.- Obtener la regla IF A THEN B, con A = (0, .5, 1, .5, 0) y B = (0, .5, 1, .5, 0), y A = (0, .5, 0, 0, 0), encuentra B usando la inferencia mx. min Solucin: Para resolver este ejercicio primero debemos construir la matriz M Donde M: mij= min (ai, bj) 0 0 0 0 0 0 0.5 0.5 0.5 0 M= 0 0.5 1 0.5 0 0 0.5 0.5 0.5 0 0 0 0 0 0 Como A = (0, .5, 0, 0, 0), entonces aplicando la inferencia max-min, tenemos : B = (0, .5, .5, .5, 0)

38

Sistemas Expertos
9.- Repetir el problema 8 usando la inferencia mx. product Solucin: Teniendo: A = (0, .5, 1, .5, 0) y B = (0, .5, 1, .5, 0), y A = (0, .5, 0, 0, 0)

Lgica Difusa

Para resolver este ejercicio primero debemos construir la matriz M. Donde M: mij = ai * bj 0 0 0 0 0 0 0.25 0.5 0.25 0 M= 0 0.5 1 0.5 0 0 0.25 0.5 0.25 0 0 0 0 0 0 Como A = (0, .5, 0, 0, 0), entonces aplicando la inferencia mx product, tenemos: B = (0, .25, .5, .25, 0) 10.- Las reglas difusas contienen premisas que comprenden variables difusas. Cada variable difusa es representada por varios conjuntos difusos. Un sistema experto de lgica difusa puede comprenderse de un conjunto de reglas que no son consideradas en un conjunto difuso establecido, pero aun puede funcionar la propiedad. Explique por qu se da de este caso: Respuesta: Este caso ocurre porque el sistema experto difuso llega a comportarse de forma indiferente ante los posibles valores que no son considerados en un conjunto difuso. Es importante tomar en cuenta que al definir los conjuntos difusos debe cerciorarse de que exista una coincidencia suficiente en los conjuntos difusos para garantizar que cada posible valor pruebe algn valor admitido en el conjunto difuso. Este caso tambin puede ocurrir porque el sistema necesita de un refinamiento en el cual se recomienda aadir reglas para las situaciones especiales que no fueron definidas anteriormente en algn conjunto difuso establecido.

39

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