Lógica difusa ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT Semestre 2010/2 2009/2 2010/2 Bibliografía básica (módulo sistemas Difusos) • “Neuro-Fuzzy and soft computing”, J.S. Roger Jang, C. Tsai Sun, Eiji Mizutami, Prentice Hall, 1997. • “Learning and soft computing: support vector machines, neural networks, and fuzzy logic models” Vojislav Kecman. MIT Press, 2001. • “Fuzzy systems for Engineering: a tutorial”,J. Mendel, Procedding of IEEE Vol. 83, No. 3, March 1995. • “Fuzzy Logic, Identification and predictive Control”, Jairo Espinosa, Joos Vandewalle and Vencent Wert, Springer 2004. • Proceeding of IEEE, IEEE trans. On Fuzzy Systems, Fuzzy sets and Systems, IEEE Trans. Systems, Man and Cybernectics ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción Un sistema inteligente” sería aquel que posee una habilidad parecida al ser humano para resolver problemas dentro de un dominio específico, tiene capacidad para adaptarse, aprender en un ambiente cambiante y explicar como se toman las decisiones (o acciones)”. "Los Sistemas Inteligentes basados en redes neuronales, máquinas de soporte vectorial (SVM) y lógica difusa se están consolidando como herramientas fundamentales para modelar sistemas complejos no lineales” "Los conjuntos difusos y la lógica difusa, que son el fundamento de los sistemas difusos, han sido desarrollados buscando modelar la forma como el cerebro manipula información inexacta e imprecisa” ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción “Un sistema inteligente” sería aquel que posee una habilidad parecida al ser humano para resolver problemas dentro de un dominio específico, tiene capacidad para adaptarse, aprender en un ambiente cambiante y explicar como se toman las decisiones ( o acciones). En el último siglo ha existido un interés creciente por la construcción de máquinas inteligentes. 1947, Se definió la Cibernética ( Norbert Wiener) “un estudio unificado del control y de la comunicación en los animales y las máquinas”. La época de la cibernética coincide con el desarrollo de varios paradigmas: Evolución de los computadores analógicos a digitales. Teoría formal de la computación ( Alan Turing). Computadora basada en lógica digital: John Von Neumann Primeros modelos del neuron: McCulloch-Pitts (1943), perceptron (1957) La inteligencia artificial (IA), 1960, John McCarthy ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción Inteligencia Artificial: “Buscaban definir los métodos algorítmicos capaces de hacer pensar a los computadores !!” Hubo una gran efervescencia en la década del 60, debido a los resultados iniciales se pensaba que se “conseguiría construir máquinas realmente inteligentes”. Hubo un declive de las otras áreas: la cibernética y la redes neuronales. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción 1969, Marvin Minsky, mostró mediante un estudio riguroso, formal, limitaciones en los perceptrones para resolver algunos problemas. Esto causó una perdida de confianza en el área de redes neuronales. La Inteligencia Artificial: El ser humano utiliza el lenguaje como medio para razonar y sacar conclusiones. La IA busca imitar el comportamiento inteligente, tratando de expresarlo en formas de lenguaje o reglas Simbólicas” ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción La Inteligencia Artificial: “La IA manipula simbolos basandose en la suposición que el comportamiento inteligente puede ser almacenado en bases de conocimiento estructuradas simbólicamente”. El mayor desarrollo de la IA son los sistemas expertos o Sistemas basados en conocimiento: “Son complejos programas (software) en los que se codifica el conocimiento de expertos en una materia muy concreta enforma de reglas de decisión”. - La IA se sustenta en el binomio: lógica boolena-máquina de Von Neumann. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción Pregunta Respuesta Usuario (Novato) Interface de Usuario Máquina de Inferencia Facilidad de Explicación Base de Datos Global KB Ingeniero de Conocimiento Adquisición de Conocimiento Humano Experto Hechos Reglas Computador Host etc... Estructura de un sistema experto ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Introducción Inteligencia computacional: La inteligencia computacional (soft computing) tiene Objetivos similares a la IA, pero ha puesto más énfasis en metodologías inspiradas biológicamente: modelado de Cerebro, algoritmos evolutivos, lógica difusa). Softcomputing cubre algunos paradigmas recientes: - Lógica difusa y sistemas basados en razonamiento difuso. - Redes neuronales. - Máquinas de Soporte Vectorial- SVMs. - Técnicas de optimización basadas en algoritmos genéticos. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Algoritmos Géneticos "Los algoritmos genéticos han sido desarrollados con base en la teoría de la evolución y se usan eficientemente para resolver problemas de optimización".” ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 REDES NEURONALES "Las redes neuronales artificiales son modeladas a partir de la observación de la estructura (física) del cerebro". ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Lógica Difusa ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sistemas Difusos Vs Redes Neuronales Los sistemas difusos: Han sido desarrolladas buscando modelar la forma como el cerebro manipula información imprecisa. La redes neuronales: Son modeladas a partir de la arquitectura física del cerebro. (interconexión de neuronas conforman una red Neuronal) ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sistemas Difusos Vs Redes Neuronales Modelos basados en RN y MSV Modelos basados en LD Caja negra Caja blanca No se tiene conocimiento previo, pero se tienen medidas (datos), observaciones, records Se dispone de un Conocimiento estructurado (experiencia, experticia, o heurísticas ). Se expresa generalmente en reglas R1: Si la Velocidad es alta y distancia es pequeña entonces la fuerza en el freno debería ser grande. R2: Si…… Se establece el concepto de aprendizaje a partir de los datos ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sistemas Difusos Vs Redes Neuronales En algunos casos se puede disponer de ambos: conocimiento previo y algunos datos Caja gris En esta situación se usan ambos: modelos neuro difusos o modelos fuzzy-neuro ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 SISTEMAS DIFUSOS Los sistemas difusos y las redes neuronales: • Estimadores libres de modelos. • Sistemas dinámicos. • Ambos tienen la capacidad de modelar procesos no lineales complejos con un grado arbitrario de exactitud. • Son tecnologías complementarias: - Sistemas difusos con habilidades de aprendizaje. - Redes neuronales con una estructura determinada por la forma y el proceso de razonamiento propio de las reglas difusas “If-then”. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sistemas Difusos Los sistemas difusos pueden usarse en muchos campos de la ingeniería: - Control de procesos. - Modelado no lineal. - procesamiento de imágenes. - Comunicaciones. - Problemas de optimización. - Sistemas para toma de decisiones. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 SISTEMAS DIFUSOS La expresión del conocimiento Cuando se trabaja con la solución de problemas existen dos tipos de conocimiento: Conocimiento objetivo: El cual se expresa en forma de modelos matemáticos. Estos modelos son usados corrientemente en la solución de problemas en el campo de la ingeniería. Conocimiento subjetivo: el cual es representado en forma lingüística que es imposible de cualificar con modelos matemáticos tradicionales. Ej: “Si el valor de la ganancia es muy alto entonces el sistema puede ser inestable” ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 CONJUNTOS DIFUSOS Qué es un conjunto de acuerdo con la teoría clásica? Es una reunión de elementos que cumplen alguna condición preestablecida. Notación: A = { x / x cumple alguna condición} Ejemplo: A = { x R / x > 5 } B Conjuntos discretos se pueden representar con diagramas. Por ejemplo el conjunto B (de números enteros entre 1 y 5): 1 2 3 4 5 ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT Así: 1 B 2 B 3 B 4 B 5 B 2010/2 2009/2 CONJUNTOS DIFUSOS La función característica o de pertenencia Se puede definir un conjunto estableciendo su función de pertenencia ( también llamada función característica). La función asume la siguiente forma para conjuntos clásicos: Sea el conjunto A, la función de pertenencia μA(x) será: 1, si x A μA(x) = 0, a x A. Ejercicio: Considere el conjunto de todos los estudiantes del curso como conjunto universal. Considere C, como el conjunto de los estudiantes con promedio mayor a 4. Evalúe μC(x) para algunos valores de x. ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 CONJUNTOS DIFUSOS Ejemplo: sea el conjunto A: A ={ El conjunto de los números reales mayores que 5} o equivalentemente: A = { x R / x ≥ 5} Entonces: μA(4) = 0 μA(6) = 1 Gráfica de μA(x) ControlEmbebidos e Instrumentación Electrónica Sistemas μA 1 3 4 5 6 7 …. UNIVERSIDAD EAFIT R 2010/2 2009/2 CONJUNTOS DIFUSOS Conjuntos difusos La pertenencia de los elementos al conjunto puede ser gradual, lo cual se expresa mediante la función de pertenencia, que en este caso puede tomar valores dentro del intervalo [0,1] Ejemplo: Sea el conjunto universal X ={ 1, 2, 3, 4, 5, 6, 7, 8, 9}. Sea el conjunto A = {el número apropiado de cursos que un estudiante debe tomar en el primer semestre de Ingeniería Física} A, lo podríamos definir considerando sus elementos junto con sus valores de pertenencia: A ={ (1, 0.1), (2,0.3), (3,0.4), (4,0.6), (5,1), (6,0.9), (7,0.6), (8,0.3) (9, 0.1) } ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 CONJUNTOS DIFUSOS Conjunto clásico ControlEmbebidos e Instrumentación Electrónica Sistemas Conjunto Difuso UNIVERSIDAD EAFIT 2010/2 2009/2 Conjuntos clásicos Vs Conjuntos difusos • En los conjuntos difusos la pertenencia de un elemento a un conjunto no es tan drástica. El elemento puede tener un grado de membrecía a dicho conjunto • Los conjuntos clásicos se pueden representar de 3 formas 1) Nombrando los elementos del conjunto Ej: A={a,e,i,o,u} 2) Definiendo una expresión que los miembros cumplan Ej: A={x| x es una letra vocal} ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 3) Definido por una función característica Esta función mapea los elementos del conjunto universo a los elementos del conjunto {0,1}. Para cada entonces x es miembro de A ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 • En los conjuntos difusos la función característica mapea los elementos al intervalo real [0,1] • Formalmente Sea X conjunto universo clásico tal que x sean sus elementos, esto es . Un conjunto difuso A lo definimos mediante A = { ( x, A (x) ) | x X } Donde A(x): Función de membresía ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Ejemplos: A: Conjunto de los hombres jóvenes B: Conjunto de los hombres de edad media C: Conjuntos de los hombres viejos • Cada uno de los conjuntos no posee límites claros y se pueden representar mediante conjuntos difusos. • Los conjuntos difusos son una forma de representar imprecisión e incertidumbre ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Las funciones de pertenencia podrían ser: ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Tipos de funciones de membresía • En general se puede utilizar cualquier función continua que mapee los de un conjunto universo clásico dado a elementos al intervalo [0,1], las más comunes son: ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sigmoide ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Diferencia entre 2 sigmoides ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Función Gaussiana ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Curvas basadas en Splines ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Función triangular ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Operaciones básicas sobre conjuntos difusos • Las operaciones básicas en los conjuntos clásicos son 3 Unión Ej: A={a,e,i,o,u} B={b,c,d} AUB={a,e,i,o,u,b,c,d} ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Intersección Ej A={1,2,3} B={2,3,4,5} ={2,3} Complemento Ej A={1,2,3} Comp(A)={4} ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 • La extensión natural para las operaciones está dada por Unión difusa standard Intersección difusa standard Complemento difuso standard ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Aplicación sencilla • Supongamos que una persona cualquiera desea ir a tomar una cerveza a un local tradicional, que la cerveza sea barata y que el local quede cerca de su casa • El dispone de 4 lugares conocidos • Tiene sed • Aquí podemos distinguir tres conjuntos difusos 1) Cerveza barata 2) Local tradicional 3) Cercanía a su hogar ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 • Para él : Una cerveza barata es una que cueste alrededor de $1000 o menos Un local tradicional es un local que al menos tenga 5 años funcionando. Que quede cerca de su casa es que no quede a más de 10 cuadras • Según las preferencias del individuo se pueden construir los siguientes conjuntos difusos ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Características de los locales • Debido al planteamiento debemos intersectar los conjuntos ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 • La solución clásica impone que Precio cerveza<=$1000 Años de servicio>=5 años Cuadras<=10 cuadras • Como se deben intersectar los conjuntos, según la solución clásica el local debe estar a lo mas a 10 cuadras, tener a lo menos 5 años de servicio y que la cerveza cueste a lo más $1000 ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 SOLUCIÓN ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 • Mediante la solución clásica el individuo se hubiera quedado en su hogar, lo cual no es “consistente” con la hipótesis “Tiene Sed”. • Mediante la solución difusa deducimos que el individuo posiblemente hubiera ido al Local 3 a disfrutar su cerveza ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Sistemas Difusos: Fundamentos Lógica clásica ( una revisión rápida) En lógica clásica una proposición “p” puede tener dos valores: ser verdadera (v) ser Falsa (f) También se definen varios conectivos tales como: Y o entonces si solo si negación p q pq pq pq pq T T F F T F T F T F F F T T T F T F T T T F F T ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT ~p F F T T 2010/2 2009/2 SISTEMAS DIFUSOS Sistemas difusos (modelo difuso): una visión de alto nivel Establecen un mapeo no lineal entre un vector de datos de entrada a una salida escalar (MISO). Y= f(x) Sistema Difuso xUn y Reglas ¨Defuzificador¨ ¨Fuzificador¨ Mecanismo inferencia salida Vector de entrada ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2 Bibliografía básica (módulo sistemas Difusos) • “Neuro-Fuzzy and soft computing”, J.S. Roger Jang, C. Tsai Sun, Eiji Mizutami, Prentice Hall, 1997. • “Learning and soft computing: support vector machines, neural networks, and fuzzy logic models” Vojislav Kecman. MIT Press, 2001. • “Fuzzy systems for Engineering: a tutorial”,J. Mendel, Procedding of IEEE Vol. 83, No. 3, March 1995. • “Fuzzy Logic, Identification and predictive Control”, Jairo Espinosa, Joos Vandewalle and Vencent Wert, Springer 2004. • Proceeding of IEEE, IEEE trans. On Fuzzy Systems, Fuzzy sets and Systems, IEEE Trans. Systems, Man and Cybernectics ControlEmbebidos e Instrumentación Electrónica Sistemas UNIVERSIDAD EAFIT 2010/2 2009/2