Vista previa del material en texto
1 Lógica Fuzzy – parte 1/3 Contenido Introducción. Propiedades. Conjuntos. Conjuntos crisp. Conjuntos fuzzy. Funciones de pertenencia. Variables fuzzy. Adverbios fuzzy/modificadores. Operadores. Operadores fuzzy. Operadores sobre adverbios fuzzy. Referencias. Cátedra de INTELIGENCIA ARTIFICIAL 2017 Ing. Sergio L. Martínez Referencias González Morcillo C. Lógica Difusa: una introducción práctica. S. N. Sivanandam, S. Sumathi and S. N. Deepa. Introduction to Fuzzy Logic using MATLAB. Ed. Springer, 2007. 2 Lógica Fuzzy - Introducción Presentada por Lotfi Zadeh como una nueva y potente teoría, denominada Teoría de Conjuntos Fuzzy (Fuzzy Sets), en 1965 y ampliada como Lógica Fuzzy en 1973. Lotfi Zadeh Nace en la Unión Soviética en 1921. Título de grado en Ingeniería de la Universidad de Teheran en 1942. Título de posgrado de Magister en Ciencias del MIT en 1946. Título de posgrado de Doctor en Ingeniería Eléctrica de la Universidad de Columbia en 1949. Profesor de la Universidad de Berkeley desde 1959 hasta 1990. U2-CL1 SISTEMAS CON INCERTIDUMBRE http://www.google.com.ar/imgres?imgurl=http://www.mat.ucm.es/congresos/flins2008/FLINS 2008_archivos/fotos/speaker_zadeh.jpg&imgrefurl=http://www.mat.ucm.es/congresos/flins2008/FLINS 2008_archivos/speakers.htm&usg=__urt_0XWuB0Ym7SY9XqUeijhKh3Q=&h=512&w=384&sz=49&hl=es&start=1&um=1&itbs=1&tbnid=hJ-WYOUK_6IJVM:&tbnh=131&tbnw=98&prev=/images?q=lofti+zadeh&um=1&hl=es&sa=N&tbs=isch:1 3 Lógica Fuzzy - Introducción La lógica Fuzzy permite su aplicación en procesos de control, estimación, identificación, diagnostico y predicción en innumerables campos. Es muy utilizada en resolución de problemas de los Sistemas Expertos mediante una técnica híbrida dentro del campo de competencia de la Inteligencia Artificial. La metodología general de razonamiento de un Sistema Experto Fuzzy no difiere apreciable-mente en su concepción de un Sistema Experto estándar. U2-CL1 SISTEMAS CON INCERTIDUMBRE 4 Lógica Fuzzy - Propiedades Es relativamente fácil de entender. Es flexible. Es tolerante a los datos imprecisos. Puede modelar funciones no lineales de complejidad arbitraria. Puede ser implementada sobre la experiencia de un experto. Puede ser combinada con técnicas de control convencional. Está basada en lenguaje natural. Se combina con todas las estructuras de IA para crear sistemas híbridos más versátiles. U2-CL1 SISTEMAS CON INCERTIDUMBRE 5 Lógica Fuzzy - Conjuntos En general, un conjunto es una colección de elementos, agrupados por una característica, propiedad o definición. En lógica fuzzy podemos distinguir dos tipos de conjuntos CONJUNTOS NÍTIDOS O CRISP CONJUNTOS DIFUSOS O FUZZY U2-CL1 SISTEMAS CON INCERTIDUMBRE 6 Lógica Fuzzy - Conjuntos CONJUNTOS NÍTIDOS O CRISP Son los conjuntos usualmente conocidos, donde sus elementos pertenecen a él si cumplen estrictamente con las propiedades de pertenencia. U (Universo) Conjunto CR Ai ∈ CR Bi ∉ CR Ci ∉ CR ∀ CR ⊂ U → {Ai} ∈ CR [{Bi} , {Ci}] ∉ CR U2-CL1 SISTEMAS CON INCERTIDUMBRE 7 Lógica Fuzzy - Conjuntos CONJUNTOS DIFUSOS O FUZZY Los Conjuntos Fuzzy pueden verse como un conjunto de elementos cuyos grados de pertenencia al dominio del conjunto están representados por un valor definido sobre el intervalo cerrado [0,1]. De este modo, un valor de pertenencia 1 indica una pertenencia completa al conjunto, un valor 0 indica no pertenencia y un valor intermedio establece una pertenencia más o menos concreta al conjunto. A ∈ F µ = 1 U (Universo) Conjunto FZ B ∈/ ∉ F 0<µ< 1C ∉ F µ=0 U2-CL1 SISTEMAS CON INCERTIDUMBRE 8 Lógica Fuzzy - Conjuntos CONJUNTOS DIFUSOS O FUZZY Los Conjuntos Fuzzy, a diferencia de los conjuntos nítidos (o crisp), no presentan un límite definido de pertenencia, de modo que los elementos involucrados pueden considerarse con una pertenencia parcial, que se denota con un valor μi, donde μi ∈ [0 , 1]. Si F es un subconjunto fuzzy de un universo U y {u1,..., un} es una colección de elementos pertenecientes a F, se denota F = {μ1/u1,..., μn /un} o bien F = μ1/u1 + ... + μn/un o bien F = Σ μi / ui U2-CL1 SISTEMAS CON INCERTIDUMBRE 9 Lógica Fuzzy - Conjuntos Ejemplo: Conjunto crisp vs. fuzzy Conjunto fuzzy "días del fin de semana" domingo (∈µ=1) sábado (∈µ=1) viernes (∈µ=0,9) lunes (∈µ=0,7) miércoles (∈µ=0) Conjunto crisp "días del fin de semana" domingo (∈µ=1) sábado (∈µ=1) viernes (∈ µ=0) lunes (∈µ=0) miércoles (∈µ=0) U2-CL1 SISTEMAS CON INCERTIDUMBRE 10 Lógica Fuzzy - Conjuntos Ejemplo: Otros conjuntos fuzzy Conjunto fuzzy "temperatura normal del cuerpo humano" 37º ( ∈=1) 37,5º ( ∈=0,9) 35º ( ∈=0,5) 40º ( ∈=0,4) 45º ( ∈=0) Conjunto fuzzy "días del fin de semana"Conjunto fuzzy "personas adultas" 40 años (∈=1) 50 años (∈=0,8) 18 años (∈=0,2) 30 años (∈=0,9) 70 años (∈=0) 24º ( ∈=0) 36,5º ( ∈=0,95) lunes (∈=0,7) miércoles (∈=0) sábado (∈=1) domingo (∈=1) U2-CL1 SISTEMAS CON INCERTIDUMBRE viernes (∈=0,9) 11 Funciones de pertenencia Un grado de pertenencia 0 significa que el elemento no pertenece en absoluto al conjunto, mientras que un grado de pertenencia 1 coincide con la noción usual de pertenencia del elemento al conjunto que nos da la Teoría de Conjuntos. Un subconjunto fuzzy F finito de U resulta: F = μ1 u1 + ... + μ n un En forma equivalente: F = μ 1 / u1 + ... + μ n / un donde μ i con i = 1,..., n , representa el grado de pertenencia de ui al conjunto F dentro del intervalo [0,1], EXPRESADO EN FORMA DISCRETA. U2-CL1 SISTEMAS CON INCERTIDUMBRE 12 Funciones de pertenencia Además del grado de pertenencia discreto definido anteriormente para los elementos de un conjunto fuzzy, también pueden representarse gráficamente a través de las funciones de pertenencia μ(x). µ(Vi) = 0,5 ⇒ Vi ∈ 0,5 a F ∉ Elementos del conjunto ∈ µ(Vj) = 1 ⇒ Vj ∈ F µ(V0) = 0 ⇒ V0 ∉ a F 0 1 0,5 µ V0 Vn V (variable) función µ(V) Vi Vj U2-CL1 SISTEMAS CON INCERTIDUMBRE 13 Funciones de pertenencia Las funciones de pertenencia pueden representar conjuntos fuzzy (con pertenencia ambigua) y conjuntos crisp (con pertenencia definida). Ello depende de la forma de la función. U2-CL1 SISTEMAS CON INCERTIDUMBRE 0 1 V Vmin VmaxVi µ(V) µ(Vi) 0 V Vmin VmaxVi µ(V) µ(Vi)=1 La pertenencia cambia en forma continua en función de la pendiente y del valor de la variable V. La pertenencia cambia en forma abrupta. Se debe resolver la ambigüedad. 14 Funciones de pertenencia Se definen diversos tipos de funciones de pertenencia. Las más usuales (lineales) LINEAL TRIANGULAR HOMBRO TRAPEZOIDAL U2-CL1 SISTEMAS CON INCERTIDUMBRE 15 Funciones de pertenencia Funciones no lineales, continuas y derivables. GAUSSIANA PI SIGMOIDE O S-SHAPE Z SHAPE U2-CL1 SISTEMAS CON INCERTIDUMBRE 16 Funciones de pertenencia La selección de la forma y variación de la función de pertenencia debe ser consistente con el criterio de variación de la variable. U2-CL1 SISTEMAS CON INCERTIDUMBRE 0 1 h (m) 0,50 1,801,20 µ(V) Personal altas 0 0,50 0 1 h (m) 0,50 1,801,20 µ(V) Personal altas 0 0,40 Correcto. Incorrecto. El tipo de variación (lineal o alineal) requiere de criterios más específicos. Cuando no se tienen referencias, se recomienda variación lineal y luego se ajusta. Se definen diferentes métodos de asignación (Espinosa, 2005). 17 Funciones de pertenencia La selección de una determinada función de pertenencia, depende del criterio del experto para definir el grado de pertenencia de cada elemento (o valor de variable) al dominio del conjunto. Pertenencia nítida. El conjunto de elementos v < Vj pertenece al conjunto. Los restantes no pertenecen. Este es el caso particular de los conjuntos crisp. Pertenencia lineal. Los elementos (valores de la variable) van adquiriendo un grado de pertenencia proporcional al crecimiento del dominio. U2-CL1 SISTEMAS CON INCERTIDUMBRE 18 Funcionesde pertenencia Pertenencia lineal creciente/ decreciente. Solo los valores centrales tienen pertenencia total; hacia los extremos decrece linealmente. Esta función tiene una expresión general en la función pi. Pertenencia sigmoide. Es el caso general de la función escalón. La pendiente, curvatura y posición de la curva queda definida por sus parámetros. La selección de una determinada función de pertenencia, depende del criterio del experto para definir el grado de pertenencia de cada elemento (o valor de variable) al dominio del conjunto. U2-CL1 SISTEMAS CON INCERTIDUMBRE 19 Funciones de pertenencia Una misma variable puede requerir distintos grados de pertenencia dentro de su dominio, por lo que puede representarse con más de una función de pertenencia (no necesariamente todas iguales). 3 funciones de pertenencia (triangular al centro) 5 funciones de pertenencia (trapezoidal al centro) U2-CL1 SISTEMAS CON INCERTIDUMBRE 20 Funciones de pertenencia Soporte (support): es la región de la variable donde la función de pertenencia toma valores no nulos → {xi} / 0 ≤ µ(xi) ≤ 1 Límite (boundary): es la región de la variable donde la función de pertenencia toma valores no nulos ni de pertenencia total → {xi} / 0 < µ(xi) < 1 Puntos de corte (crossover points) → {xi} / µ(xi) = 0,5 Altura (height) → max(µ(xi) U2-CL1 SISTEMAS CON INCERTIDUMBRE Características de las funciones de pertenencia: Núcleo (core): es la región de la variable con pertenencia total (1) → {xi} / µ(xi) = 1 x 0.5 Crossover points Height 21 Variables en lógica fuzzy En general las variables en lógica fuzzy son las denominaciones que se dan a los conjuntos fuzzy para permitir una interpretación semántica más clara. En otras palabras permiten a la lógica fuzzy expresar de modo natural el significado semántico utilizado por expertos. En lógica fuzzy pueden distinguirse dos tipos de variables U2-CL1 SISTEMAS CON INCERTIDUMBRE 22 Variables en lógica fuzzy Variables fuzzy Es la identificación semántica de un conjunto fuzzy. Se representan mediante una terna (X,U,R(X)), donde X = es el nombre de la variable. U = es el universo de discurso (o “alcance”). R(X) = es un subconjunto de U que indica la restricción fuzzy impuesta para X. Por ejemplo: Variable ALTO: para denominar al conjunto de personas u objetos identificados por su altura. Universo: [50 ; 60 ; ... ; 1,80 ; 1,90 ; 2,00 ; 2,10 ; 2,20] Restricciones: [0/50 ; 0/60 ; ... ; 0,5/1,60 ; 0,9/1,80 ; 1/1,90 ; 1/2,00 ; 1/2,10 ; 1/2,20] U2-CL1 SISTEMAS CON INCERTIDUMBRE 23 Variables en lógica fuzzy Variables lingüísticas Es una variable de mayor orden que una variable fuzzy. También identifican en forma semántica las características de un conjunto fuzzy, pero se representan mediante una quíntupla (X, T(X), U, G, M). x = es el nombre de la variable. T(x) = conjunto términos de x. Es el conjunto de nombres de valores lingüísticos de x. U = es el universo de discurso de x (“alcance”). M = conjunto de reglas semánticas que asocia a cada valor lingüístico de x con su significado M(x). M(x) representa a las variables fuzzy de x. G = es una gramática libre que genera los términos de T(x): “muy alto”, “no muy rápido”, etc. U2-CL1 SISTEMAS CON INCERTIDUMBRE 24 Variables en lógica fuzzy Variables lingüísticas Ejemplo: Sea la variable lingüística VELOCIDAD. x = VELOCIDAD. U = [0 ; 130]. T(x) = [..., Muy lenta , lenta , moderada , rápida , Muy rápida , ...] M(x) = reglas semánticas. M(Lenta) = Velocidad entre 30 y 60 con función de pertenencia μLENTA. M(moderada) = Velocidad alrededor de 80 con función de pertenencia μMODERADA. M(rápida) = Velocidad entre 100 y 130 con función de pertenencia μRÁPIDA... U2-CL1 SISTEMAS CON INCERTIDUMBRE 25 Adverbios fuzzy Los adverbios fuzzy, también llamados modificadores, son expresiones asociadas a las variables lingüísticas para expresar en forma más o menos intensa su significado. Por ejemplo: ALTO: para denominar al conjunto de personas u objetos identificados por su altura. MUY ALTO: subconjunto que identifica a quienes tienen una altura superior a la normal. EXTREMADAMENTE ALTO: subconjunto con elementos de altura muy considerable. NO MUY ALTO: subconjunto con elementos cuya altura estaría por debajo de lo normalmente ALTO. U2-CL1 SISTEMAS CON INCERTIDUMBRE 26 Adverbios fuzzy En un Sistema de Razonamiento Fuzzy existen diferentes tipos de modificadores, agrupados de acuerdo a la modificación conceptual que producen a la variable lingüística. Los grupos principales son: Intensificadores Aproximadores Restrictores Generalizadores Negadores U2-CL1 SISTEMAS CON INCERTIDUMBRE 27 Adverbios fuzzy Intensificadores Mucho – Muy (very) Sumamente (extremely) Casi (almost) Definitivamente (definitely) Positivamente (positively) Bastante (quite) Algo, bastante (rather) Un poco (somewhat) Restrictores Sobre, arriba de (above) Más que (more than) Debajo de (below) Menor que (less than) Aproximadores cercanía de (about) alrededor (around) cercano a (near) grueso, aproximadamente (roughly) vecino a (vicinity of) vecindad (neighboring) próximo a (close to) Generalizadores Generalmente (generally) Usualmente (usually) Negadores No (not) U2-CL1 SISTEMAS CON INCERTIDUMBRE 28 Adverbios fuzzy Acción heurística La aplicación de un modificador a una variable lingüística, modifica semánticamente su concepción del dominio. Esto se traduce en un cambio de su función de pertenencia para reflejar la acción del modificador. Este cambio se puede reflejar en una determinada heurística aplicada a la función de pertenencia según algunos criterios prefijados (Zadeh) o criterios que establecerá el experto. U2-CL1 SISTEMAS CON INCERTIDUMBRE 29 Adverbios fuzzy Ejemplo de aplicación - muy (Intensificación de región fuzzy) Var x (altura) / fp= μ(x) modif. MUY fpmuy= μ2(x) U2-CL1 SISTEMAS CON INCERTIDUMBRE 30 Adverbios fuzzy Ejemplo de aplicación – debajo de (Restricción de región fuzzy) Var x (edad) / Función de base → fp= μ(x) modificador DEBAJO DE → fpdebajo de = μ(x+a) U2-CL1 SISTEMAS CON INCERTIDUMBRE 31 Adverbios fuzzy Ejemplo de aplicación – cercano a (Aproximación de región fuzzy) Var x (edad) / Función de base fp = μ(x) modificador CERCANO A fpcercano a = μ1,4(x) U2-CL1 SISTEMAS CON INCERTIDUMBRE 32 Adverbios fuzzy Acción heurística (Intensificación y dilución de contraste) Reconfiguración por definición U2-CL1 SISTEMAS CON INCERTIDUMBRE 33 Adverbios fuzzy Adverbios múltiples Es posible aplicar modificadores múltiples a las variables linguisticas, para enfatizar aún más (o minimizar) la acción de los modificadores individuales. Por ejemplo ALTO → muy(ALTO) → → muy(muy(ALTO)) → → positivamente(no(muy(ALTO))) COSTO → COSTO mediano → → alrededor de COSTO mediano → generalmente alrededor de COSTO mediano U2-CL1 SISTEMAS CON INCERTIDUMBRE 34 Adverbios fuzzy Ejemplo de aplicación: positivamente(no(muy(ALTO))) U2-CL1 SISTEMAS CON INCERTIDUMBRE 35 Operadores En lógica crisp Los operadores básicos que se aplican a los conjuntos en lógica bivaluada (crisp ó nítida) son • Complemento: ¬S • Unión: S ∪ T • Intersección: S ∩ T U S T U S T U S T U S T U S U S S U2-CL1 SISTEMAS CON INCERTIDUMBRE 36 Operadores En lógica fuzzy Como la lógica fuzzy es un superconjunto de la lógica crisp, los operadores anteriormente definidos siguen siendo válidos, pero con una interpretación más amplia. Se aplican a los conjuntos fuzzy representados en este caso por las funciones de pertenencia μ(x) o bien para valores discretos. Su utilidad y aplicabilidad quedarán perfectamente definidas cuando deban insertarse en las reglas de inferencia o razonamiento fuzzy. U2-CL1 SISTEMAS CON INCERTIDUMBRE 37 Operadores lógicos En lógica fuzzy Complemento: se corresponde con el conectivo lógico NEGACIÓN ¬μ(x) = 1 – μ(x) ¬μALTO(x) = 1 – μALTO(x) ¬μEDAD(x) = 1– μEDAD(x) x 1 0,5 0 0 1,50 50 100 -> edad 1,75 2,00 -> alto µ(x) ALTO EDAD AVANZADA µEDAD(x) x 1 0,5 0 0 1,50 50 100 -> edad 1,75 2,00 -> alto µ(x) ALTO EDAD AVANZADA µEDAD(x) 1 − µEDAD(x) EDAD NO AVANZADA NO ALTO U2-CL1 SISTEMAS CON INCERTIDUMBRE 38 Operadores lógicos En lógica fuzzy Unión: se corresponde con conectivo lógico OR. μ(x)∪μ(y) = máx[μ(x), μ(y)] μALTO(x) ∪ μEDAD(y) = = máx[μALTO(x) , μEDAD(y)] x 1 0,5 0 0 1,50 50 100 -> edad 1,75 2,00 -> alto µ(x) µAL TO(x ) ALTO EDAD AVANZADA µEDAD(x) U2-CL1 SISTEMAS CON INCERTIDUMBRE 39 Operadores lógicos En lógica fuzzy Intersección: se corresponde con el conectivo lógico AND. μALTO(x) ∩ μEDAD(y) = = mín[μALTO(x) , μEDAD(y)] x 1 0,5 0 0 1,50 50 100 -> edad 1,75 2,00 -> alto µ(x) µAL TO(x ) ALTO EDAD AVANZADA µEDAD(x) μ(x) ∩ μ(y) = mín[μ(x), μ(y)] U2-CL1 SISTEMAS CON INCERTIDUMBRE 40 Operadores algebraicos Operadores fuzzy algebraicos Sean los conjuntos fuzzy A y B con funciones de pertenencia μA(x) ; μB(x) Producto: A.B = ⌠ [μA(x). μB(x) ] / x ⌡U • Potencia: Ak = ⌠ [μA(x)k ] / x ⌡U • Producto por un escalar: k.A = ⌠ k. [μA(x) ] / x ⌡U U2-CL1 SISTEMAS CON INCERTIDUMBRE 41 Operadores adverbiales Otros operadores fuzzy Existen otros operadores algebraicos que se aplican para representar la acción de los modificadores. Concentración: esta operación produce un sub- conjunto fuzzy, con pequeña reducción del grado de pertenencia de los elementos de A con alta pertenencia y gran reducción del grado de pertenencia para elementos de A con bajo grado de pertenencia. CON(A) = μ2A(x) Dilusión: produce el efecto inverso a la operación anterior. DIL(A) = μA(x)1/2 U2-CL1 SISTEMAS CON INCERTIDUMBRE 42 Operadores adverbiales Concentración CON(A) = μA2 Dilusión DIL (A) = μA1/2 Intensificación INT(A) = 2 μA si μA ∈ [0,0.5] INT(A) = 1-2(1- μA)2 si μA ∈ (0.5,1] MUY(A) = CON(A) SUMAMENTE(A) = mA3 MAS O MENOS(A) = DIL(A) MAS(A) = μA1.25 MENOS (A) = μA0.75 APROXIMADAMENTE(A) = DIL(DIL(A)) ALGO(A) = INT(CON(A)) AND NOT(CON(A)) LIGERAMENTE(A) = INT(MAS(A)) AND NOT(CON(A)) UN POCO(A) = INT(DIL(A) AND INT(DIL(NOT(A) BASTANTE(A) = INT(A) AND NOT(INT(CON(A))) Intensificación U2-CL1 SISTEMAS CON INCERTIDUMBRE 43 Operadores adverbiales Algunos tipos de operadores adverbiales U2-CL1 SISTEMAS CON INCERTIDUMBRE Operador de dilución Operador de intensificación 44 Operadores adverbiales Ejemplo de aplicación Concentrac. CON(A) = μA2 Dilusión DIL(A) = μA1/2 muy(A) = μA2 sumamente(A) = μA3 mas o menos(A) = μA1/2 U2-CL1 SISTEMAS CON INCERTIDUMBRE Lógica Fuzzy – parte 1/3 Lógica Fuzzy - Introducción Lógica Fuzzy - Introducción Lógica Fuzzy - Propiedades Lógica Fuzzy - Conjuntos Lógica Fuzzy - Conjuntos Lógica Fuzzy - Conjuntos Lógica Fuzzy - Conjuntos Lógica Fuzzy - Conjuntos Lógica Fuzzy - Conjuntos Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Funciones de pertenencia Variables en lógica fuzzy Variables en lógica fuzzy Variables en lógica fuzzy Variables en lógica fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Adverbios fuzzy Operadores Operadores Operadores lógicos Operadores lógicos Operadores lógicos Operadores algebraicos Operadores adverbiales Operadores adverbiales Operadores adverbiales Operadores adverbiales