Introduccin
Pgina |1
La lgica difusa es una rama de la Inteligencia Artificial que surge como un intento de formalizar el conocimiento que presenta incertidumbre, indecisin, ambigedad o vaguedad. Aborda problemas definidos en trminos lingsticos y por tanto imprecisos, donde la informacin esta expresada en trminos cualitativos. Lgica difusa es un tipo de lgica que reconoce ms que simples valores verdaderos y falsos; con ella las proposiciones pueden ser representadas con grados de veracidad o falsedad. Por ejemplo: la sentencia "hoy es un da soleado", puede ser 100% verdad si no hay nubes, 80% verdad si hay pocas nubes, 50% verdad si hay muchas nubes, 20% verdad si existe neblina y 0% si llueve todo el da1. El trmino fuzzy, se encuentra en nuestras decisiones, en nuestro pensamiento, en la forma cmo procesamos la informacin, pero especialmente en nuestro lenguaje, ya que en muchas ocasiones no expresamos con claridad lo que queremos comunicar. Frases como: "Nos vemos luego", "un poco ms", "no me siento muy bien", son expresiones difusas. En ocasiones, enunciados difusos indican unidades relativas y subunidades ms no unidades absolutas.
http://es.wikipedia.org/wiki/L%C3%B3gica Origen griego de lgica creado por Aristteles. http://kim.ece.buap.mx/posgrado/Fuzzytutorial/zadeh.htm Biografa de Lotfi Zadeh (Iran 1921). http://personales.ya.com/casanchi/mat/difusa01.htm Qu es lgica difusa?.
Informtica Industrial
Lgica Difusa
Pgina |2
2.2.
FUSIFICACIN.
Fusificar es tomar una seal continua en la entrada (un valor numrico o seal de un sensor) y transformarla en un conjunto de valores entre 0 y 1 que indiquen el grado de pertenencia (la funcin de membresa) en cada conjunto fuzzy establecido. En este bloque primero se debe estudiar la teora de conjuntos difusos, para poder establecer el diseo y la forma que van a tomar las variables de entrada y de salida del proceso. 2.2.1. CONJUNTOS DIFUSOS. Un conjunto difuso es una forma de representar los fenmenos de la realidad, los cules no slo tienen dos valores como Verdadero o Falso, sino que tienen un infinito nmero de estados comprendidos entre 0 y 1, es por tal motivo que en un conjunto difuso cada uno de sus elementos toma un grado de pertenencia en dicho conjunto, esta funcin es la que se encarga de ligar los elementos del conjunto U universo de discurso con los elementos del intervalo entre 0 y 1. Cada uno de estos elementos puede ser miembro de varios conjuntos difusos pero cada uno con un grado de pertenencia. Un conjunto es la agrupacin de elementos con una caracterstica comn. La simbologa de conjuntos que se utilizar es: Universo de discurso
Vaco
Unitario
Los conjuntos se pueden representar de varias formas como por ejemplo por Extensin y Comprensin, en lgica difusa por lo general se representan por medio de la funcin de membresa. Ejemplos: A = {3, 4, 5, 6, 7, 8, 9} Informtica Industrial Conjunto A representado por Extensin.
Pgina |3
La funcin de membresa es el grado de pertenencia que tienen los elementos del conjunto U de discurso, son valores entre 0 y 1. La simbologa de la funcin de membresa es la siguiente: A(x).
En el siguiente ejemplo bsico, la funcin de membresa se conforma por 2 tipos de valores 0 y 1 pero en lgica difusa comprende una infinidad de valores:
Figura 2. Grfico del ejemplo de funcin de membresa. 2.2.1.2. Tipos de Conjuntos Difusos.
Los conjuntos difusos pueden ser de varios tipos, pero siempre deben ser simtricos. Entre algunos ejemplos tenemos: Triangular, Trapezoidal, Campana de Gauss, Sigmoidal, Unitario, etc. Siendo los ms usados el triangular y trapezoidal. El valor del mximo invariablemente es 1. En la siguiente figura se detalla el grfico de cada conjunto:
Informtica Industrial
Lgica Difusa
Pgina |4
2.2.1.3.
Entre las operaciones ms importantes estn: Interseccin, Unin y Complemento.2 Interseccin: La Interseccin se simboliza: Tipos de Interseccin: a) Producto Algebraico:
A*B=A.B
Lotfi A. Zadeh desarroll una algebra completa sobre conjuntos difusos en su publicacin: Fuzzy Sets Information and Control, Vol. 8, 1965, pp. 338-353.
Informtica Industrial
Lgica Difusa
Pgina |5
b) Mnimo:
A * B = min ( A , B)
c) Producto Drstico:
d) Producto Einstein:
A+B
c) Suma Drstica:
d)Suma Einstein:
B=
min (1 ,
A + B)
Informtica Industrial
Pgina |6
(x) = 1 - A(x).
Para un mejor entendimiento se realiza un ejemplo con la interseccin, unin y complemento del siguiente ejercicio:
Figura 4. Grfico base para las operaciones. La Interseccin se determina con el mnimo entre los valores, y la unin con el mximo y el complemento es 1 menos la funcin de membresa. El conjunto desde: -1 hasta 13. Interseccin:
de discurso es
AB (x) = min { A(x) , B(x) } AB (-1) = min {1, 0 } AB (0) = min {1, 0 } AB (2) = min {1, 0 } AB (3) = min {0.8, 0 } AB (4) = min {0.6, 0 } AB (5) = min {0.4, 0 }
Informtica Industrial =0 =0 =0 =0 =0 =0
Lgica Difusa
Pgina |7
AB (6) = min {0.2, 0.2 } AB (7) = min {0, 0.4 } AB (8) = min {0, 0.6 } AB (9) = min {0, 0.8 } AB (10) = min {0, 1 } AB (11) = min {0, 1 } AB (12) = min {0, 1 } AB (13) = min {0, 1 }
Unin:
= 0.2 =0 =0 =0 =0 =0 =0 =0
AUB (x) = max { A(x) , B(x) } AUB (-1) = max {1, 0 } AUB (0) = max {1, 0 } AUB (1) = max {1, 0 } AUB (2) = max {1, 0 } AUB (3) = max {0.8, 0 } AUB (4) = max {0.6, 0 } AUB (5) = max {0.4, 0 } AUB (6) = max {0.2, 0.2 } = 0.2
Informtica Industrial =1 =1 =1 =1 = 0.8 = 0.6 = 0.4
Lgica Difusa
Pgina |8
AUB (7) = max {0, 0.4 } AUB (8) = max {0, 0.6 } AUB (9) = max {0, 0.8 } AUB (10) = max {0, 1 } AUB (11) = max {0, 1 } AUB (12) = max {0, 1 } AUB (13) = max {0, 1 }
Complemento de A:
(x) = 1 - A(x). (-1) = 1 1 (0) = 1 1 (1) = 1 1 (2) = 1 1 (3) = 1 0.8 (4) = 1 0.6 (5) = 1 0.4 (6) = 1 0.2 (7) = 1 0
Informtica Industrial =0 =0 =0 =0 = 0.2 = 0.4 = 0.6 = 0.8 =1
Pgina |9
(x) = 1 - B(x). (5) = 1 0 (6) = 1 0.2 (7) = 1 0.4 (8) = 1 0.6 (9) = 1 0.8 (10) = 1 1 (11) = 1 1 (12) = 1 1 (13) = 1 1 =1 = 0.8 = 0.6 = 0.4 = 0.2 =0 =0 =0 =0
Informtica Industrial
Lgica Difusa
P g i n a | 10
y
2.2.2. VARIABLE LINGSTICA.
( y 2 y1) * x x1 y1 ( x2 x1)
La variable Lingstica permite etiquetar a cada uno de los conjuntos expresados y define al conjunto universo. Refleja el funcionamiento del sistema representando el lenguaje natural. Sus caractersticas3 son: N = nombre de la variable. Ejemplo: caluroso, fro, alto, bajo, moderado, etc. V = conjunto de valores que la variable puede tomar. Ejemplo: 5 33.
http://kim.ece.buap.mx/posgrado/Fuzzytutorial/2var_ling.html
Informtica Industrial
Lgica Difusa
P g i n a | 11
U : 0 90 aos.
S:
Existe un estndar de conjuntos con sus variables lingsticas, pero eso no significa que el diseador del sistema fuzzy debe regirse obligatoriamente a l, este estndar es una forma optimizada de diseo pero no siempre es la apropiada:
NL = Negative Large. Valor ms alto en el rango negativo. NM = Negative Mdium. Valor negativo medio. NS = Negative Small. Valor negativo pequeo. ZR = Zero. Valor Neutral. PS = Positive Small. Valor positivo pequeo. PM = Positive Mdium. Valor positivo medio.
Informtica Industrial
Lgica Difusa
P g i n a | 12
2.3.
INFERENCIA.
Inferir es la capacidad de construir conclusiones apropiadas, frente a una evidencia dada, es decir se puede ver a la inferencia como un proceso que va desde lo que conocemos (una premisa) hasta lo que no conocemos (conclusin). La Inferencia es una forma elegante de referirse a la bsqueda, tambin se la puede llamar mquina o motor de bsqueda. Por tanto la Inferencia es un motor que tiene la capacidad de decisin. La Inferencia se consigue a travs del Conocimiento. Una Base de Conocimientos consiste en reglas fuzzy de tipo If, Then y funciones de membresa caracterizadas por los conjunto difusos. Para el diseo de la base de conocimientos donde se encuentran las reglas de control, hay que tomar en cuenta: primero, que el conjunto de variables lingsticas seleccionadas debe escogerse de forma tal que describan muy bien a los parmetros de control del proceso. Tanto los parmetros de entrada como los de salida deben definirse en esta etapa empleando terminologa apropiada. La seleccin del rango de valores para cada trmino de las variables de entrada y salida es muy importante para lograr la "suavidad" del control. En segundo lugar la base de conocimientos se elabora tomando en cuenta la descripcin lingstica4 de los parmetros, para ello se sugieren cuatro mtodos:
a) b) c) d)
Experiencia y conocimiento de un operador humano. Modelado de las acciones de control del operador. Modelado del proceso. Auto-sintonizacin.
http://kim.ece.buap.mx/posgrado/Fuzzytutorial/3basede_conoc.html Parmetros que se deben tomar en cuenta para la elaboracin de la base de conocimientos.
Informtica Industrial
Lgica Difusa
P g i n a | 13
De los mtodos anteriores, el primero es el ms utilizado. La efectividad del mtodo se basa en que el operador puede expresar los conocimientos que utiliza en el control del procesos en trminos de reglas lgicas. El segundo mtodo modela directamente la accin de control del operador. El tercer mtodo trata con el modelo difuso del proceso, aqu se configura el modelo de una planta como una aproximacin utilizando implicaciones que describen los posibles estados del sistema. En este mtodo se desarrolla un modelo y se construye un controlador difuso para controlar el modelo difuso, lo descrito anteriormente es similar a lo que se hace en teora de control clsica. Aqu se necesita identificar la estructura y los parmetros del proceso. La idea principal del cuarto mtodo es el desarrollo de reglas que pueden ajustarse an y cuando el controlador este en uso para lograr mejorar su desempeo. De todos los mtodos que se pueden utilizar para construir la base de conocimientos, en el presente trabajo recurrimos al primero que se basa en reglas lgicas. 2.3.1. REGLAS LGICAS.
Una regla es un criterio de condicin que representa el conocimiento. Cuando modelamos el conocimiento del operador las reglas de control toman la forma:
SI [ estatura > 1.80 m ] ENTONCES [ persona es alta ]. Esto en espaol, pero los sistemas informticos soportan ingls: IF [ estatura < 1.60 m ] THEN [ persona es pequea ]. En general podemos decir:
Informtica Industrial
Lgica Difusa
P g i n a | 14
Las reglas tambin se forman con operadores lgicos como son: AND, OR, NOT. Los valores de verdad de los operadores son:
Unos ejemplos de reglas con operadores lgicos son: IF estatura = alta AND #canastas < 30 THEN calidad _ jugador = media. IF cantidad _ ropa = abundante OR nivel _ suciedad = alto THEN cantidad _ detergente = moderado. IF cielo = despejado THEN NOT lluvia.
Informtica Industrial
P g i n a | 15
La FAM5 constituye una matriz que permite asociar las reglas con las salidas. Con la FAM conocemos las reglas que se van a activar, como tambin las relaciones conocidas entre los antecedentes y consecuentes. La limitacin de esta matriz es que slo permite representar la consecuencia de cada regla definida por la combinacin de dos entradas. Podemos decir que la FAM es una forma grfica de representar las relaciones entre los conjuntos fuzzy. Un ejemplo es:
2.3.3. RELACIONES.
Una relacin difusa representa el grado de presencia o ausencia de una asociacin, interaccin o interconexin entre elementos de dos o ms conjuntos difusos, la relacin se establece a partir del producto cartesiano entre los subconjuntos fuzzy. Las relaciones nos permiten representar un subconjunto similar al subconjunto del producto cartesiano que est formado por elementos de una condicin. Las Relaciones se expresan: xRy x tiene una relacin con y.
Informtica Industrial
P g i n a | 16
Informtica Industrial
Lgica Difusa
P g i n a | 17
En el bloque de Inferencia se deben seguir los siguientes pasos con el manejo de reglas:
a)
A (y)
A (y)
Del conjunto de reglas que se deben generar para controlar todas las situaciones que se pueden presentar en el sistema, no siempre se activan todas, slo se ejecutan las reglas que en ese momento se encuentren asociadas al problema. Adems se deben graficar por separado las reglas activadas con el mnimo, el mximo o el negativo valor de inferencia.
Informtica Industrial
Lgica Difusa
P g i n a | 18
Se pueden realizar inferencias por el mnimo, inferencias por el mximo o inferencias negativas, todo depende de la regla, si la regla tiene como conector lgico AND entonces se realiza la inferencia por el mnimo, si la regla tiene como conector lgico OR entonces se realiza la Inferencia por el mximo, si la regla tiene como conector lgico NOT entonces se realiza la Inferencia negativa.
A continuacin un ejemplo didctico sin unidades de medida para simplificacin. Se va a fusificar la seal cuando el sensor de humedad registra el valor de 32 y el sensor de presin registra el valor de 24, la salida corresponde a la abertura de una vlvula de un calefactor o de un actuador que regula las variables citadas.
La fusificacin de la seal de entrada HUMEDAD slo se realiza en los conjuntos difusos: Media y Alta, en la entrada PRESIN se realiza en los conjuntos difusos: Normal y Grande. Debido a que los valores de los sensores, influyen slo en estos conjuntos fuzzy.
Informtica Industrial
Lgica Difusa
P g i n a | 19
Informtica Industrial
Lgica Difusa
P g i n a | 20
Informtica Industrial
Lgica Difusa Reglas: IF Humedad = Baja IF Humedad = Baja IF Humedad = Baja AND Presin = Pequea AND Presin = Normal AND Presin = Grande
P g i n a | 21
THEN Vlvula = Poco. THEN Vlvula = Poco. THEN Vlvula = Mitad. THEN Vlvula = Poco. THEN Vlvula = Mitad. THEN Vlvula = Todo. THEN Vlvula = Mitad. THEN Vlvula = Todo. THEN Vlvula = Todo.
IF Humedad = Media AND Presin = Pequea IF Humedad = Media AND Presin = Normal IF Humedad = Media AND Presin = Grande IF Humedad = Alta IF Humedad = Alta IF Humedad = Alta AND Presin = Pequea AND Presin = Normal AND Presin = Grande
Son 9 reglas en total pero slo se activan las reglas de los valores de las entradas: Humedad Media y Humedad Alta con Presin Normal y Presin Grande. Es decir slo se ejecutan 4: IF Humedad = Media AND Presin = Normal IF Humedad = Media AND Presin = Grande IF Humedad = Alta IF Humedad = Alta AND Presin = Normal AND Presin = Grande THEN Vlvula = Mitad. THEN Vlvula = Todo. THEN Vlvula = Todo. THEN Vlvula = Todo.
Las reglas tienen el conector lgico AND por lo tanto se debe realizar la Inferencia por el mnimo: R1: R2:
0.6 0.2
Informtica Industrial
Lgica Difusa
P g i n a | 22
R3: R1:
= =
0.2 0.2
Generalmente cada regla tiene diferente valor y se grafican todas, por coincidencia en este ejemplo las 3 ltimas reglas se repiten, por lo tanto esa regla slo se grafica una vez:
Informtica Industrial
Lgica Difusa
P g i n a | 23
Se debe realizar la Interseccin entre el valor de Inferencia por el mnimo (mnimo, mximo o negativo) y el subconjunto difuso de salida, en ambos casos y luego la Unin entre las dos reglas. Con la Interseccin las grficas son:
Informtica Industrial
Lgica Difusa
P g i n a | 24
Para deducir los valores de la grfica de Unin entre las dos reglas, se calculan los valores de x con la siguiente frmula:
x2 x1 y y1 x1 y 2 y1
Para 0 x 10 las dos reglas son 0, para 10 x 30 el mximo es la regla 1, para los puntos crticos se calculan:
Informtica Industrial
Lgica Difusa
P g i n a | 25
Para 30 x 32 el mximo es la regla 1, para 32 x 34 el mximo es la regla 1, para 34 x 38 el mximo es la regla 1, para 38 x 40 el mximo es la regla 2, para 40 x 50 el mximo es la regla 2. Con estos valores ya se puede construir la grfica final de la Unin entre las dos reglas, que tambin ser la grfica final para el bloque de desfusificacin.
2.4.
DESFUSIFICACIN.
El bloque de desfusificacin realiza la funcin contraria al bloque de fusificacin, el bloque fusificador tiene como entradas valores concretos de variables o lecturas de sensores y como salidas grados de pertenencia de conjuntos difusos entre 0 y 1 en cambio el bloque desfusificador tiene como entradas conjunto difusos de salida del bloque de inferencia y como salida valores concretos de variables que se asignarn a los actuadores. Para obtener, a partir del conjunto difuso de salida que resulta de la agregacin de todas las reglas, una respuesta concreta o escalar, se deben aplicar mtodos matemticos. Los 3 mtodos ms utilizados para resolver la desfusificacin son: a) b) c) El mtodo del punto mximo. El mtodo del centro del rea. El mtodo del centro de gravedad.
Informtica Industrial
Lgica Difusa
P g i n a | 26
http://kim.ece.buap.mx/posgrado/Fuzzytutorial/met_com.html
Punto mximo.
Informtica Industrial
Lgica Difusa
P g i n a | 27
Figura 21. Ejemplo punto mximo. Una mejora de ste mtodo es la media del mximo7, que consiste en calcular el promedio entre los puntos mximos. Aqu el valor para llevar a cabo la accin de control se obtiene tomando el promedio de los valores de membresa mximos, es decir, este mtodo genera como valor desfusificado la media de todos los valores que alcanzan el mismo mximo en la salida difusa final:
http://kim.ece.buap.mx/posgrado/Fuzzytutorial/met_mom.html Mejora del punto mximo es la media del mximo que se obtiene calculando el promedio de todas las membresas iguales ms altas.
Informtica Industrial
Lgica Difusa
P g i n a | 28
Estos mtodos no son muy eficaces cuando las salidas difusas finales son bastante asimtricas, es decir cuando tienen formas muy irregulares como por ejemplo:
En este caso el mximo se encuentra muy lejos y no representa un valor proporcional de desfusificacin, el valor debera estar entre 35 y 40 aproximadamente. Para el ejercicio anterior (figura 19) el resultado de desfusificacin es:
Informtica Industrial
Lgica Difusa
P g i n a | 29
C.
En otras palabras, este mtodo asigna el centro del rea de la salida difusa final al valor desfusificado. El centro de rea tambin es llamado centroide.
Informtica Industrial
Lgica Difusa
P g i n a | 30
El centro de rea con la salida difusa final del ejemplo anterior (Figura 1.19) es: Para facilitar el espacio fsico, desglosamos la frmula:
a = 10(0) + 12(0.2) + 14(0.4) + 16(0.6) + 18(0.6) + 20(0.6) + 22(0.6) + 24(0.6) + 26(0.6) + 28(0.6) + 30(0.6) + 32(0.6) + 34(0.6) + 36(0.4) + 38(0.2) + 40(0.2) + 42(0.2) + 44(0.2) + 46(0.2) + 48(0.2) + 50(0.2).
b = 0.2 + 0.4 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.6 + 0.4 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2.
Informtica Industrial
Lgica Difusa
P g i n a | 31
2.4.3. CENTRO DE GRAVEDAD. Utiliza como salida del sistema el centro de gravedad de la funcin caracterstica de salida. Es el mtodo ms utilizado en aplicaciones de la lgica difusa a la ingeniera, ya que se obtiene una solucin nica, aunque a veces es difcil de calcular. La frmula para el clculo del centro de gravedad es:
Figura 27 Centro de gravedad. A continuacin el centro de gravedad de la salida difusa final del ejercicio anterior (Figura 19). Para facilitar el espacio fsico, desglosamos la frmula:
Informtica Industrial
Lgica Difusa
P g i n a | 32
Informtica Industrial
Lgica Difusa
P g i n a | 33
2.5.
MODELOS DIFUSOS.
Los modelos difusos empleados en el control de procesos tienden a seguir la misma metodologa empleada en el diseo de los sistemas de control clsicos9, esto es: en primer lugar el diseo conceptual es hecho en papel una vez que se ha entendido tanto la mecnica del comportamiento del sistema como su dinmica en trminos de entrada/salida. Luego se procede a un ciclo de modelado, simulacin y ajuste del sistema, y as sucesivamente se repite el ciclo hasta obtener el resultado deseado. El proceso descrito anteriormente puede apoyarse en herramientas de cmputo especializadas. Para los sistemas difusos, el mtodo de diseo se efecta de acuerdo con el siguiente ciclo:
9
Informtica Industrial
Lgica Difusa
P g i n a | 34
En esta etapa se definen las caractersticas funcionales y operacionales del modelo, aqu la tarea del diseador consiste en definir aunque se carezca de un modelo matemtico del sistema:
a)
Informtica Industrial
Lgica Difusa b) c) Las transformaciones bsicas que se aplicarn a los datos. Los datos de salida del sistema.
P g i n a | 35
Tambin se debe definir donde exactamente influye el proceso difuso en la arquitectura total del sistema10, con la finalidad de proporcionar una clara visin de la forma en que los datos estarn fluyendo hacia y desde el sistema difuso, adems de que proporciona una gran ayuda al diseador para la estimacin de los nmeros y rangos de las entradas y salidas difusas requeridas. Bibliografia: Logica Difusa, Celi Johanna,
10
Informtica Industrial