RAZONAMIENTO APROXIMADO Sistemas Difusos (Fuzzy Systems) Introducción a la IA - LCC
REALIDAD El conocimiento que necesitamos para desarrollar un Sistema basado en Conocimiento tiene muchas veces las siguientes características: NO ES DEL TODO CONFIABLE IMPRECISO INCOMPLETO CONTRADICTORIO
REALIDAD Las personas con esas fuentes de conocimiento, dotadas de esas características, razonamos y muchas veces concluímos CAPACIDAD DE RAZONAR APROXIMADAMENTE
PROBLEMA Como modelizamos estas características del conocimiento, de modo de poder: REPRESENTARLO UTILIZARLO
REALIDAD La lógica clásica es un buen modelo para formalizar cualquier razonamiento basado en información certera (V o F) NECESITAMOS OTROS FORMALISMOS
REALIDAD El desarrollo de la IA ha incentivado el estudio de formalismos que son alternativos o complementarios a la lógica clásica INVESTIGACION Y DESARROLLO DE OTROS FORMALISMOS
CONOCIMIENTO IMPRECISO El conocimiento cuenta con predicados o cuantificadores vagos (no precisos) Ejemplos: Pedro tiene entre 20 y 25 años. Juan es joven Mucha gente juega al fútbol El espectáculo es para gente grande.
RAZONAMIENTO APROXIMADO (RA) Trata como REPRESENTAR COMBINAR y REALIZAR INFERENCIAS con conocimiento impreciso y/o incierto
RA: DISTINTOS MODELOS MODELOS PROBABILISTICOS MODELO POSIBILISTICO Todos tratan la incertidumbre en un sistema de producción Sólo el modelo posibilístico puede tratar la imprecisión.
Razonamiento inexacto Es necesario cuantificar y razonar acerca de términos o predicados difusos que aparecen en el lenguaje natural. La lógica difusa se refiere a estos términos como variables lingüísticas, y la tecnología de los sistemas expertos, incorpora estas variables lingüísticas en reglas que pasan a ser reglas difusas. 10
LÓGICA DIFUSA Introducción Teoría de conjuntos difusos Teoría de conjuntos clásica (conjuntos clásicos) Conjuntos Difusos Funciones de pertenencia Etiquetas lingüísticas Operaciones elementales con conjuntos difusos Complemento Intersección Unión Razonamiento difuso Inferencia difusa Decodificación Funcionamiento de un sistema difuso Conclusiones 11
Necesidad de razonamiento difuso En el mundo real existe mucho conocimiento con las siguientes características: conocimiento vago, impreciso, incierto, ambiguo, inexacto, o probabilístico por naturaleza. El razonamiento y pensamiento humano frecuentemente conlleva información de este tipo: imprecisión inherente de los conceptos humanos y razonamiento basado en experiencias similares, pero no idéntica Problema: Poca capacidad de expresión de la lógica clásica. Ejemplo 1. Clasificación de personas en altas o bajas Ejemplo 2. Definición del término joven 12
Considerando conocimiento Fuzzy Ejemplos de sentencias Fuzzy: El motor está funcionando muy caliente. Tom es un muchacho muy alto. Los autos elécticos no son muy rápidos. Rosario está a una corta distancia de Santa Fe. Rosario es una linda ciudad. El máximo alcance de un vehículo eléctrico es bajo. Si corta distancia significa: 300 km o menos, 301 km es larga? Se quiere expresar en que grado se tienen una propriedad. 13
Fuzzy sets: Are functions: f: domain [0,1] Crisp set (tall men): 1 0 150 160 170 180 190 200 210 cm Fuzzy set (tall men): 1 0 150 160 170 180 190 200 210 cm 14
Representing a domain: Crisp sets (men s height): 1 0 short medium tall 150 160 170 180 190 200 210 cm Fuzzy set (men s height): 1 0 short short medium tall 150 160 170 180 190 200 210 cm 15
Lógica difusa En 1965, Lofti Zadeh sienta las bases de la lógica difusa Motivación inicial: estudio de la vaguedad Relación vaguedad incertidumbre Solución: definir conjuntos con grados de pertenencia Éxito de la lógica difusa : Desde el punto de vista práctico: miles de aplicaciones, la mayoría en sistemas de control Desde el punto de vista lógico: lógica fuzzy como una lógica multivaluada. 16
Características principales de la lógica difusa Se intenta representar la vaguedad e imprecisión inherentes en el lenguaje natural Utiliza varios elementos: conjuntos difusos, variables difusas, relaciones difusas, reglas difusas (lenguaje difuso) Dichos elementos se combinan entre sí en el proceso de inferencias (fuzzy logic) Fuzzy control: El proceso de inferencia incluye pasos que pasan la información precisa a difusa y viceversa 17
Lógica difusa Por definición logica difusa es una rama de la lógica multivaluada que utiliza grados de verdad de las fórmulas (grados de pertenencia a los conjuntos) en lugar de los estrictos valores verdadero o falso. Estos conjuntos reciben la denominación de conjuntos difusos. 18
Lógica difusa La lógica difusa concierne a la cuantificación y razonamiento sobre términos vagos o difusos que aparecen en el lenguaje natural cotidiano. En la lógica difusa, estos términos son denominados variables lingüísticas. variables lingüísticas: son términos que describen algún concepto que usualmente tiene asociados valores vagos o difusos. 19
Lógica difusa Variable lingüística Valores típicos temperatura caliente, frío altura baja, media, alta velocidad lenta, normal, rápida 20
Difusión de fuzzy logic En la actualidad es un campo de investigación muy importante, tanto por sus implicaciones matemáticas o teóricas como por sus aplicaciones prácticas: Revistas (Fuzzy Sets and Systems, IEEE Transactions on Fuzzy Systems..) Congresos (FUZZ-IEEE, IPMU, EUSFLAT, ESTYLF...) Miles de aplicaciones reales: Control de sistemas: Tráfico, vehículos, compuertas en plantas hidroeléctricas, centrales térmicas, lavadoras, metros ascensores... Predicción y optimización: Predicción de terremotos, optimización de horarios... Reconocimiento de patrones y Visión por ordenador: Seguimiento de objetos con cámara, reconocimiento de escritura, reconocimiento de objetos, compensación de vibraciones en cámaras, sistemas de enfoque automático... Sistemas de información o conocimiento: Bases de datos, sistemas expertos... 21
Un poco de publicidad... OLYMPUS ERGONÓMICA SRL 28-120 AEG Lavamat 64600 Poderoso lente zoom de 4.3x, 28-120 con elementos de lentes de cristal ED Sistema de flash doble incorporado. Ajuste de Exposición Automática programada Sistema de Medición TTL: Fuzzy logic ESP, Promedio Balanceado al Centro Carga: 5kg Revoluciones: 1400 rpm Características energéticas: A+,A,B Multi-Display Fuzzy Logic Programas especiales: Lavado a mano, Seda, Lana 22
Conjuntos difusos Conjuntos clásicos (crisp) A U definido por su función de pertenencia µa: U {0,1} / µa(x)= 1 sii x A Conjunto difuso (Fuzzy set) A de U µa: U [0,1] µa(x) me define el grado de pertenencia de x a A Hay distintos grados de pertenencia 23
Conjuntos difusos La sentencia Juan es alto implica la variable estatura que tiene como valor lingüístico alto. El rango de los posibles valores de la variable lingüística (estatura) es el universo de discurso X de dicha variable [0.3, 2.5m]. La frase Juan es alto restringe los valores de la variable estatura y se puede representar mediante un conjunto difuso. 24
Conjuntos difusos Para otras descripciones de la variable lingüística estatura tales como: baja o media, se pueden obtener otros conjuntos difusos que reflejan la opinión popular (o de expertos). se pueden definir múltiples conjuntos difusos para un mismo universo de discurso: subconjuntos difusos representando distintos términos vagos. 25
26
27 Funciones de pertenencia Algunas de las funciones de pertenencia más utilizadas son: < < = m x para 1 x a para a m a x a x para 0 m µ(x) 1 a m Función GAMMA (Γ): Función LAMBDA o triangular Función L Puede definirse simplemente como 1 menos la función GAMMA 1 m a > < < = µ b x para 0 b x m para m b x b m x a para a m a x a x para 0 (x) 1 a b m
28 Funciones de pertenencia Función PI o trapezoidal > < < < = µ d x para 0 d x c para c b x d c x b para b x a para a b a x a x para 0 x) ( 1 1 a b c d
Funciones de pertenencia Función S µ S 0 para x a 2 x a a + c 2, para a x c a 2 (x) = 2 x a a + c 1 2, para x c c a 2 1 para x c a (a+c)/2 c Función Z (opuesta de la S) µ Z (x) = 1- µ S (x) Función Π µ µ S(x) para x b (x) = Π µ Z(x) para x > b b-d b b+d 29
Conjunto difuso - espacio discreto Considerando ahora un universo de discurso discreto, tal que los elementos de X sean { x 1, x 2,...x n } y, siendo A un conjunto difuso definido en dicho universo: La representación del vector se clarifica utilizando el símbolo / que asocia el valor de pertenencia a i con la coordenada de x i : A = ( a 1 / x 1, a 2 /x 2...a n / x n ) Considerando el conjunto difuso alto ALTO = (0/1.65, 1/1.75, 1/1.85, 0/1.95) 30
Canjunto difuso - espacio discreto También se expresa como: A = ( a 1 /x 1 + a 2 /x 2+...+a n / x n ) A = Σ i=,1,n µ A (x i )/x i Si X es una función continua, el conjunto A, este puede ser representado como: A = µ A (x i )/x i 31
Etiquetas lingüísticas - Hedges Equivalentes a los adverbios del lenguaje natural Se utilizan para definir conjuntos difusos a partir de otros ya existentes. Por ejemplo, viejo > MUY viejo Lo que se hace es componer la función de pertenencia con alguna otra función, de forma que la función resultante tenga la forma deseada Por ejemplo, función para el adverbio MUY > f(y) = y 2 1 viejo Muy viejo 0 32
Etiquetas lingüísticas Existe todo un catálogo de adverbios/funciones Nombre del modificador Descripción del modificador not 1-y very (muy) y 2 somewhat (algo) y 1/3 more-or-less (más o menos) y 1/2 extremely (extremadamente) y 3 33
Etiquetas lingüísticas Otras operaciones usuales Normalización f(y) = y/altura Concentración f(y)=y p, con p>1 1 0 Dilatación f(y)=y p, con 0<p<1 1 0 Intensificación contraste f p 2 1 y 2 1 p ( y) = p 1 (1 y) p para y 0.5 en otro caso 1 0 Difuminación 1 f ( y) = y / 2 1 1( y)/ 2 para y 0.5 en otro caso 0 34
Operaciones con conjuntos difusos Complemento (Negación) Dado un conjunto difuso A, su complemento vendrá definido por µ ( x) = c ( ( x)) µ A A Las funciones c para el complemento más utilizadas son: c(α) = 1 - α. 1 0 Yager c w (α) = ( 1 - α w ) 1/w w [0, ] 1 0 Sugeno c λ (α) = (1-α)/(1-λα) λ [0, 1] 1 0 35
Operaciones con conjuntos difusos Intersección (conjunción) Dados dos conjuntos difusos A y B, su intersección vendrá definida por µ A B (x) = i(µ Α (x),µ Β (x)) Las funciones i que verifican las propiedades que se esperan de una conjunción se llaman normas triangulares (t-normas). 36
Operaciones con conjuntos difusos Algunas t-normas usuales: 1 t-norma del mínimo i min (α,β) = min(α,β α,β α,β) 0 1 t-norma del producto i * (α,β) = αβ 0 t-norma del producto drástico i inf ( α, β ) = α si β = 1 β si α = 1 0 en otro caso 1 0 37
Operaciones con conjuntos difusos Unión (disjunción) Dados dos conjuntos difusos A y B, su unión vendrá definida por µ AuB (x) = u(µ A (x), µ B (x)) Las funciones u que verifican las propiedades esperadas para una disjunción se llaman: conormas triangulares (t-conormas). 38
Operaciones con conjuntos difusos Si consideramos como complemento la función c(u) = 1-u, las t- conormas correspondientes a las t-normas anteriores son: t-conorma del máximo u max (α,β) = max(α,β) 1 0 t-conorma de la suma u * (α,β) = α+β αβ 1 t-norma de la suma drástica u sup ( α, β ) = α si β = 0 β si α = 0 1 en otro caso 0 1 0 39
Operaciones con conjuntos difusos Considerando la t-norma del mínimo (intersección, AND) junto con la t-conorma del máximo (unión, OR) Conjuntos vacío y total: Conjunto vacío Conjunto total (X crisp) x X µ ( x) = 0 x X µ X ( x) =1 Sin embargo, con esta definición no se satisfacen algunos famosos principios de la lógica clásica, como por ejemplo: A A = A A = X Principio de contradicción Principio del tercero excluso 40
Razonamiento difuso Proposición difusa simple: Proposición que asigna un valor a una variable difusa: Pepe es de estatura mediana. Tiene asociado un conjunto difuso (función de pertenencia). Proposición difusa compuesta: Agrupación de dos o más proposiciones difusas simples la velocidad es normal AND el objeto está cerca la velocidad es alta OR el objeto está muy cerca la velocidad NO es alta Necesidad de definir operadores difusos: NO ( p) µ A(u) = 1 - µ A (u) AND (p q) vendrá definida por una función de pertenencia tipo t-norma, por ejemplo µ A B (u,v) = min( µ A (u), µ B (v)) OR (p q) vendrá definida por una función de pertenencia tipo t- conorma, por ejemplo µ AUB (u,v) = max(µ A (u), µ B (v)) 41
Razonamiento difuso: implicaciones El siguiente paso es definir lo que es una implicación, es decir, asignar una función de pertenencia a una agrupación antecedente consecuente del tipo p q Esto nos permitirá razonar con afirmaciones tales como: SI la velocidad es normal ENTONCES la fuerza de frenado debe ser moderada Opciones: Teórica: Dar a la implicación el mismo significado que en la lógica clásica. p q p q µ p q (u,v) = max(1-µ A (u), µ B (v)) p q ~(p (~q)) µ p q (u,v) = 1 min[µ A (u), 1-µ B (v)] Práctica: Dar a la implicación el significado de relación causa-efecto: Implicación de Mamdani p q A B µ p q (u,v) = min( µ A (u), µ B (v)) 42
Inferencia Difusa Fuzzy inference Una regla difusa relaciona dos proposiciones difusas, por ejemplo considerando dos conjuntos difusos tales como A (estatura es alta) y B (peso es elevado), estos pueden estar relacionados por la regla: If A Then B Los sistemas expertos difusos almacenan las reglas como asociaciones difusas (A,B), en una matriz M denominada matriz asociativa difusa. 43
Inferencia Difusa Fuzzy inference Como en otras técnicas de razonamiento inexacto, el proceso de inferencia difusa intenta establecer la credibilidad conclusión de la regla dada una cierta evidencia en la premisa. If A Then B A* B*??? 44
Inferencia Difusa Fuzzy inference Disponiendo de la matriz M que se obtiene a partir de A B, el proceso de inferencia difusa permite a partir de información A (subconjunto de A), inducir un subconjunto B de B. Técnicas de inferencia difusas: Inferencia max-min Inferencia max-product 45
46
Inferencia max-min El operador de de la implicación utilizado es el min, es decir: m ij = min(a i,b j ) Entonces, dados dos conjuntos difusas A y B, se obtiene la matriz M. Luego, dado el conuunto A, se puede inducir el subconjunto B. 47
Inferencia max-min Ejemplo: sea un universo de discurso X que representa temperatura, y A un conjunto difuso que representa temperatura normal. Asumiendo que Y representa velocidad y un B que representa velocidad media, entonces si tenemos la siguiente regla difusa: If temperatura normal Then velocidad media IF A THEN B 48
Inferencia max-min - Ejemplo 49
A representa una entrada de t=125º 50
El subconjunto A (lectura única) induce un conjunto difuso B utilizando la composición max-min: 51
Inferencia max-min - Ejemplo 52
Inferencia max-min - Observación Cuando A tiene un solo valor de pertenencia distinto de 0, por ejemplo x k se puede utilizar solo µ A (x k ) directamente con la representación de B, µ B (y) para inducir B como B = µ A (x k ) µ B (y) Truncamiento del conjunto difuso B por el valor µ A (x k ) 53
En el ejemplo, nosotros asumimos que la temperatura es de 125 grados A tiene un solo valor de pertenencia distinto de 0, y resulta µ A (x) = 0.5 Luego: Inferencia max-min - Ejemplo B = [min(.5, 0), min(.5,.6), min(.5, 1), min(.5,.6), min(.5, 0) = = (0,.5,.5,.5, 0) 54
Inferencia max-min - Observación En el caso que la entrada a la regla sea una lectura difusa A, nosotros podemos considerar la intersección de A y A, es decir: min (a i, a i ) para inducir el B 55
56
Inferencia max-product El operador de de la implicación utilizado es el producto en lugar del min: m ij = a i * b j Dados los conjuntos difusos A y B, se obtiene la matriz M. Luego, dado el vector de ajuste de A, se puede inducir el subconjunto B. 57
Inferencia max-product : Ejemplo 58
Inferencia max-product : Ejemplo 59
Inferencia max-product : Ejemplo 60
Inferencia Difusa El método numérico desarrollado puede ser extendido a reglas con cláusulas múltiples en la premisa vinculadas por operadores de conjunción o disyunción. Si A and/or B Entonces C La extensión del método consiste en incorporar las matrices asociativas a cada uno de los conjuntos difusos A y B involucrados en la regla y resolverlos conforme a la naturaleza del 61 operador que los vincula.
Inferencia Difusa A M AC = C A B M BC = C B luego para la conjunción resulta: C = (A M AC ) (B M BC ) = C A C B y para la disyunción deviene: C = (A M AC ) (B M BC ) = C A C B 62
Inferencia Difusa El efecto de la combinación de las conclusiones de varias reglas: R1: A1 C,... Rn: An C y el valor resultante del aporte de cada una de ellas, permite suponer que el resultado de la composición ( la unión): C = C 1 C 2 C 3... C n según las operaciones entre conjuntos difusos C = max (C 1, C 2, C 3,..., C n) 63
Funcionamiento de un sistema de control basado en lógica difusa Entrada crisp x U p Codificador Reglas Decodificador Salida crisp y=f(x) V u U p Conjuntos difusos entrada Inferencia v V Conjuntos difusos salida 64
Decodificación - defuzzyfication Una vez llevado a cabo el proceso de razonamiento difuso, es necesario dotar al sistema de la capacidad de tomar decisiones. Así por ejemplo, el sistema debe saber qué fuerza de frenado que debemos aplicar si la velocidad es alta Para ello se utilizan las llamadas técnicas de decodificación, que transforman un conjunto difuso en un valor nítido. Las más usuales son: El valor máximo (es decir, el más posible). El centroide o centro de gravedad difuso y centroide = x X x X x µ ( x) A A µ ( x) 65
En resumen La lógica difusa se concibió originalmente como un método mejor para manejar y almacenar información imprecisa Ha demostrado ser una excelente alternativa para sistemas de control, ya que imita a la lógica de control humana Se pede incluir en cualquier sistema, desde dispositivos pequeños a sistemas de control complejos Usa un lenguaje impreciso pero muy descriptivo para operar con datos de entrada de una forma parecida a la usa un operador humano Es robusta y no demasiado dependiente de los datos de entrada y operadores elegido Incluso las primeras versiones funcionan bastante bien, con escasa necesidad de ajustes 66