Story Transcript
Programa de Postgrados en Ingeniería Eléctrica y Electrónica
Control Inteligente Unidad 3 Control y Modelado con Sistemas Difusos
Autores: Eduardo F. Caicedo Bravo Ing. Electricista Mg. En Tecnologías de la Información en Fabricación Ph.D. En Informática Industrial Jesús Alfonso López Sotelo Ing. Electricista Mg. En Automática Ph.D. En Ingeniería Programa de Postgrados en Ingeniería Eléctrica y Electrónica Escuela de Ingeniería Eléctrica y Electrónica Dirección de Nuevas Tecnologías y Educación Virtual Vicerrectoría Académica Universidad del Valle ©2007
Ficha Técnica Coordinador de Programa Académico Humberto Loaiza Correa Diseño Gráfico Edinson Largo Hoyos Montaje e Ilustración Ana María Henao Agudelo Programación Diana Johanna Volpe García Asesoría Metodológica Oscar Trejos Sinisterra Pacífico Abella Millán Coordinación Programación Henry A. Taquez Quenguán Coordinación Diseño Gráfico Karen Ramírez González Diagramación Versión Imprimible John Jairo Toro Londoño / Alejandra Riveros Ospina Programa de Postgrados en Ingeniería Eléctrica y Electrónica Escuela de Ingeniería Eléctrica y Electrónica Dirección de Nuevas Tecnologías y Educación Virtual Vicerrectoría Académica Universidad del Valle ©2007
Tabla de Contenido Introducción Objetivos Contenido Tema 1. Introducción a la Lógica Difusa Tema 2. Control de Sistemas usando Lógica Difusa Tema 3. Modelo Difuso Resumen Actividades de aprendizaje Lecturas complementarias Bibliografía
4 4 5 29 39 49 49 49 49
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Introducción
E
n los métodos clásicos de análisis y diseño de controladores automáticos, la información del sistema a controlar proviene de un grupo de sensores, pero no es fácil incluir el conocimiento que los operarios tengan del sistema. Podemos afirmar que la información numérica que la proveen los sensores, es la fuente única de información en las aproximaciones convencionales a problemas de ingeniería, mientras que difícilmente incorporamos la información lingüística que puede provenir de los expertos u operarios del sistema. Debido a que hay una gran cantidad de conocimiento almacenado en términos lingüísticos, es muy importante incorporarlo dentro de los problemas de ingeniería de manera sistemática y eficiente, máxime cuando corresponde a una forma muy cercana de describir el conocimiento humano. Una aproximación a la forma como manejamos la información y la procesamos los humanos, fue presentada por Lofti Zadeh por medio de su Lógica Difusa, la cual permite incluir el razonamiento impreciso y el manejo de la incertidumbre, desde su misma concepción, bajo una connotación de procesamiento de datos aproximado y con palabras. A lo largo de esta unidad revisaremos esta técnica de la Inteligencia Computacional para el análisis y síntesis de controladores difusos. Como en el tema correspondiente a los neurocontroladores, tomaremos un ejemplo para ilustrar la aplicación de estos conceptos.
Objetivos
A
l finalizar esta unidad el estudiante estará en capacidad de: • Analizar, diseñar, simular e implementar Controladores Difusos con inferencias de tipo Mamdani • Analizar, diseñar, simular e implementar Controladores Difusos con inferencias de tipo Sugeno • Seleccionar el esquema de control difuso más adecuado dependiendo del conocimiento lingüístico que se tenga de la planta • Aplicar el agrupamiento difuso en el modela de sistemas dinámicos.
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Contenido Tema 1. Introducción a la Lógica Difusa Para la mayoría de sistemas en ingeniería, hay dos fuentes importantes de información: los sensores que proveen medidas numéricas de variables, y los expertos humanos que proveen instrucciones y descripciones lingüísticas acerca del sistema. La información numérica que la proveen los sensores, es la fuente única de información en las aproximaciones convencionales a problemas de ingeniería, mientras que difícilmente incorporamos la información lingüística. Debido a que hay gran cantidad de conocimiento almacenado en términos lingüísticos, es muy importante incorporarlo dentro de los problemas de ingeniería de manera sistemática y eficiente, máxime cuando corresponde a una forma muy cercana de describir el conocimiento humano. Una aproximación a la forma como manejamos la información y la procesamos los humanos, fue presentada por Lofti Zadeh por medio de su Lógica Difusa, la cual permite incluir el razonamiento impreciso y el manejo de la incertidumbre, desde su misma concepción, bajo una connotación de procesamiento de datos aproximado y con palabras. ¿Por qué la información lingüística puede ser representada usando Lógica Difusa? Podemos entre otras, citar tres razones principales pero usted puede adicionar algunas más: • Los humanos comunicamos nuestro conocimiento de manera conveniente y eficaz por medio del lenguaje natural.
Lógica Difusa: Lo podemos definir como el conjunto de técnicas de control que hacen uso de varias aproximaciones derivadas de la Inteligencia Artificial.
Unidad 3: Control y Modelado con Sistemas Difusos
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
• Nuestro conocimiento sobre los problemas que nos rodean es en esencia impreciso, pero no por ello dejamos de solucionarlos satisfactoriamente. Por ejemplo, cuando manejamos una bicicleta, la información que disponemos no es exacta, sino ¿quién de nosotros conoce la velocidad a la que conducimos?, ¿el coeficiente de rozamiento del piso?, ¿el ángulo de giro para sobrepasar una curva?, etc. Aunque toda esta información una máquina convencional la requeriría para solucionar el problema, nosotros los humanos con base en apreciaciones o percepciones imprecisas del entorno podemos ir desde un sitio a otro en nuestra bicicleta sin mayores dificultades. Este enfoque de solución a los problemas es lo que inspira a los sistemas difusos. • Finalmente, muchos sistemas son demasiado complejos para ser descritos en términos puramente matemáticos y una descripción lingüística es posible gracias al conocimiento que de éste tenga un ser humano, como por ejemplo, su operador. Orígenes
1965 Conjuntos Difusos
En 1964 Zadeh propone por primera vez la noción de conjuntos difusos en un memorando interno de investigación. En 1965, la revista “Information and Control” publica el memorando anterior, como el artículo “Fuzzy Sets”.
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
1974 Controladores Difusos En 1974, el Británico Ebrahim Mandani, demuestra la aplicabilidad de la lógica difusa en el campo del control. desarrolla el primer sistema de control Difuso práctico: La Regulación de un Motor de Vapor.
1985 Modelado Difuso El modelado difuso fue propuesto con el sistema Takagi Sugeno y a través de él podemos intentar acercar los paradigmas matemáticos y lingüísticos para describir un problema o un sistema.
1987 Fuzzy Boom • Los japoneses empiezan a explotar la lógica difusa de forma masiva, mientras que los occidentales asumen una actitud reacia, frente a estos nuevos desarrollos. • Aparece toda una serie de investigadores japoneses en el campo de la lógica difusa tales como Sugeno, Togai, Bart Kosko. • En 1986, Yamakawa, “Fuzzy Controller hardware system”. Desarrolla controladores fuzzy en circuitos integrados. • En 1987, en el Japón se inaugura el tren subterráneo de Sendai, lo que representa un gran hito en la historia de los sistemas difusos, pues el tren es controlado y guiado por us sistema difuso, siendo famosa su suavidad para los pasajeros, sobretodo en el frenado. Unidad 3: Control y Modelado con Sistemas Difusos
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
• En 1987, aparece el concepto de “Fuzzy Boom”, ya que se comercializa una multitud de productos basados en la lógica difusa, sobretodo en el Japón, pero ya para son bien conocidos productos como las cámaras de fotografía y video con ajuste de imagen difusos, entre otros.
1990 Modelo Neurodifuso El modelado difuso fue propuesto con el sistema Takagi Sugeno y en él se integran las potencialidades de los sistemas difusos y las redes neuronales artificiales. El primero aporta la claridad en cuanto a la descripción del modelo y las segundas su capacidad de adaptación gracias al aprendizaje.
2000 Aplicación de Lógica Difusa Tipo 2
Aunque esta nueva forma de modelar el conocimiento impreciso fue propuesta en 1975 por Zadeh, solo a partir del año 2000 se ha empezado a formular una serie de aplicaciones en el ámbito del control de procesos, procesamiento digital de señales y robótica. En este nuevo paradigma la imprecisión se intenta modelar de una manera más ajustada a la realidad recurriendo a generación de niveles de pertenencia también imprecisos.
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Conjunto Binario vs. Conjunto Difuso Conjunto Binario También conocido como conjunto crisp, es aquel conjunto que posee dos niveles de pertenencia, 0 ó 1, es decir, que un elemento puede o no, pertenecer a este conjunto. En este caso, podemos definir si una persona es alta o no, a partir de un nivel de umbral de 175 cm. Siendo alto, todo aquel que sobrepase este umbral y bajo el que no. Pero cuál es la verdadera diferencia, desde el punto de vista de altura, de dos personas que miden 174 cm. y 176 cm.?. Para un clasificador fundamentado en este tipo de conjuntos, las dos personas son totalmente diferentes, pues una es baja y la otra es alta, pero si lo contrastamos con el concepto que tenemos de altura en nuestra vida cotidiana, la diferencia no es apreciable entre estos dos sujetos. Conjunto Difuso Un conjunto difuso permite que los elementos asociados a él puedan poseer niveles de pertenencia diferentes a 0 ó 1, es decir, un elemento puede tener un nivel de membresía al conjunto con valores no enteros (0 ó 1) sino decimales o parciales. Si retomamos el ejemplo anterior de un clasificador de personas por su estatura, en este caso, no hay un umbral definido para separar entre altos y bajos, simplemente se define un nivel de pertenencia al conjunto según la estatura, por ejemplo, una persona de 170 cm. de estatura tiene un nivel de pertenencia de aproximadamente 0.25 al conjunto de personas altas, mientras que una persona de 190 cm. de estatura, su pertenencia es de 0.95. En este caso, un clasificador diseñado con este tipo de conjuntos, le asignaría prácticamente el mismo nivel de pertenencia a dos personas con estatura de 174 cm. y 176 cm., lo cual se ajusta mucho más al concepto cotidiano de lo que entendemos por “persona alta”.
Unidad 3: Control y Modelado con Sistemas Difusos
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
¿Como podemos representar matemáticamente un conjunto difuso? Supongamos que tenemos un posible rango de valores al cual llamaremos X, por ejemplo X=Rn, donde Rn es un espacio real de n dimensiones, a X se le denominará Universo de Discurso. Ahora supongamos que en X se tendrá un conjunto difuso de valores llamado A el cual es caracterizado por una función de pertenencia μA(x) que establece una relación entre el universo de discurso y el rango [0 1] (μA:X→[0 1],) donde μA(x) representa el grado de pertenencia de un x que pertenece a X en el conjunto difuso A. Esta se puede considerar una generalización del concepto de un conjunto ordinario, en el cual su función de pertenencia tiene solamente dos valores: 0 ó 1. En general un Conjunto Difuso se expresa en términos de pares ordenados y es completamente caracterizado por una función de pertenencia y su notación es: A={( x , µ A ( x ) ) | x Є X} Conjuntos Difusos con Universos Discretos Los universos de discurso no siempre están definidos dentro de un espacio real, existen ocasiones en las cuales se define un número finito de valores dentro del universo, tomemos dos ejemplos en los cuales se pretende modelar qué tan deseable es una ciudad para vivir o cuál es el número ideal de hijos en una familia. Ciudad Deseable para vivir
x
µA
Cali
0.9
Medellín
0.9
San Vicente
0.3
Número aceptable de hijos
A= ({Cali, 0.9}, {Medellín, 0.9}, {San Vicente, 0.3}...)
x
µA
0
0.1
1
0.5
2
1.0
3
0.7
4
0.3
5
0.2
6
0.1
A= ({0,0.1}, {1,0.5}, {2,1.0}, {3,0.7}, {4,0.3}, {5,0.2}, {6,0.1})
Conjuntos Difusos con Universos Continuos Contrario al caso anterior, el universo de discurso se define de manera continua en un intervalo de valores reales, y por tanto, se tiene una cantidad infinita de posibles valores para la evaluación del la función de pertenencia, en este caso podemos afirmar que tenemos un conjunto difuso continuo. Para dar mayor claridad al concepto de conjunto difuso continuo, presentamos el siguiente ejemplo en cual se trata de modelar el conjunto de personas que tienen una edad alrededor de los 30 años.
10
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Edad alrededor de 30 años
X
µA
x > 0, X Є Rn
e -((X - 30) / 2)^2
Categorización de una variable con conjuntos difusos En general las variables que trabajamos en aplicaciones de ingeniería son de naturaleza continua, las cuales requieren la definición de universos de discurso continuos. Para trabajar con estas variables usando lógica difusa, es necesario definir una serie de categorías a las cuales se les asignará una etiqueta que corresponde una palabra que utilizamos en el lenguaje cotidiano y representa nuestra percepción de un rango de valores de la variable. Altura de una persona
x = [140,200] cm Etiqueta
Rango (cm)
Muy Baja (MB)
[140, 160]
Baja (B)
[150, 170]
Norma (N)
[160, 180]
Alta (A)
[170, 190]
Muy Alta (MA)
[180, 200]
Tanto la definición de la etiqueta como su rango de valores y función de pertenencia, define un conjunto difuso. Un aspecto a tener en cuenta es el número de conjuntos difusos que definiremos para categorizar la variable. Esto corresponderá al número de etiquetas que asignamos la cual es por lo general un número impar y en aplicaciones prácticas usualmente es menor que once, siendo lo recomendable el tomar 5 ó 7. Para ilustrar con un ejemplo, retomemos el caso de describir la altura de una persona.
Funciones de Pertenencia Ahora vamos a responder una pregunta que tal vez ya se ha suscitado luego de estudiar el concepto de conjunto difuso: ¿Cómo seleccionamos una función de pertenencia adecuada Unidad 3: Control y Modelado con Sistemas Difusos
11
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
para las diferentes etiquetas en las que hemos descrito una variable? En general, cualquier función puede ser considerada una función de pertenencia, sin embargo, en la práctica se recomiendan especialmente cuatro.
triangular
Triangular Las funciones de pertenencia más simples están conformadas por líneas rectas. Una de ellas es la función Triangular. Esta función se define por medio de tres puntos que conforman un triángulo. El primer punto (a) nos define la vértice izquierdo del triángulo, el segundo punto (b) nos define el vértice superior del triangulo y el tercer punto (c) nos define el vértice derecho del triangulo. Para evaluar el nivel de pertenencia de un valor x a una función de este tipo, utilizamos la ecuación trimf. Trapezoidal:
La función Trapezoidal tiene un borde superior recto y puede considerarse simplemente como una función triangular truncada. Esta función, al igual que la triangular, se define por varios puntos, en este caso cuatro. El punto (a) nos define el vértice izquierdo inferior del trapecio, el punto (b) nos define el vértice superior izquierdo, el punto (c) nos define el vértice superior derecho y el punto (d) nos define el vértice inferior derecho. Para evaluar el nivel de pertenencia de un valor x a una función de este tipo, utilizamos la ecuación trapmf. 12
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Gaussiana:
Otra función de pertenencia muy utilizada es la Gaussiana, la cual es una campana de gauss definida por su centro o media representada por el parámetro c y por la desviación estándar representada por el parámetro σ. Para evaluar el nivel de pertenencia de un valor x a una función de este tipo, utilizamos la ecuación gaussmf. Campana Generalizada:
La Campana Generalizada es la última función que sugerimos, está definida por medio de dos parámetros: El primero denominado c que corresponde al centro de la campana y el segundo denominado b, que nos define la amplitud de la campana y además nos permite aproximar esta función a un conjunto no difuso o crisp. Para evaluar el nivel de pertenencia de un valor x a una función de este tipo, utilizamos la ecuación gbellmf. A nivel de implementación, las funciones de pertenencia gaussiana y campana generalizada son muy populares ya que son fácilmente realizables con métodos computacionales, su comportamiento es continuo, diferenciable y su notación es concisa, permitiendo de una manera directa la evaluación de la misma, lo cual no es posible con las funciones triangulares y trapezoidales, ya que requieren condiciones de evaluación como máximos y mínimos que por lo general son evaluadas por estructuras de decisión. Unidad 3: Control y Modelado con Sistemas Difusos
13
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Operaciones entre Conjuntos Difusos Ya hemos presentado algunos conceptos básicos de la lógica difusa tales como conjunto difuso, universo de discurso y función de pertenencia, pero muy seguramente nos preguntamos ¿Cómo se define o trabaja esta nueva Lógica Difusa? Lo más importante que debemos saber sobre el razonamiento difuso es que de hecho, es una generalización de la lógica booleana. En otras palabras, si mantenemos los valores difusos a sus extremos de 1 o 0, las operaciones lógicas tradicionales deben mantenerse. Existen tres operaciones básicas en lógica booleana: AND, OR y NOT. Nuestro objetivo es aplicar estas mismas operaciones a la lógica difusa, en este caso lo que vamos a buscar es poder calcular el grado o nivel de pertenencia de un valor del universo de discurso a los conjuntos resultantes al aplicar las operaciones mencionadas. Con el fin de ilustrar estas funciones en el marco de la Lógica Difusa, usaremos como conjuntos difusos representativos para aplicar las operaciones AND, OR y NOT los conjuntos difusos A y B mostrados en la figura, cuyo conjunto universo es X.
Operaciones entre Conjuntos Difusos Intersección
Mínimo 14
Universidad del Valle
Producto Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Intersección: La primera operación que trabajaremos entre conjuntos difusos es la intersección. En la ecuación mostramos la definición clásica que nos permite caracterizar el conjunto intersección. Como se puede observar, para que un elemento pertenezca al conjunto intersección se necesita que el elemento pertenezca al conjunto A y simultáneamente también pertenezca al conjunto B. Debido a la manera como hemos definido la intersección una primera conclusión que podemos tener es que esta operación está ligada a la operación lógica AND. De hecho, cuando en lógica difusa se habla de calcular la función AND entre dos etiquetas lingüísticas, se calcula la intersección entre los conjuntos difusos que representan a cada una de las etiquetas. Al igual que en la función AND definida en la Lógica de Boole, la salida es diferente de cero, si el nivel de pertenencia entre los dos conjuntos es simultáneamente diferente de cero. Recordemos que cuando se tiene un valor x del universo de discurso X, este x tendrá dos valores de pertenencia asociados a los conjuntos A y B, definidos como μA(x) y μB(x) respectivamente. Desde el punto de vista operativo, lo que buscamos es obtener unas expresiones para calcular el nivel de pertenencia del valor x al conjunto resultante de intersectar los conjuntos A y B. Para realizar este cálculo vamos a utilizar la operación mínimo y la operación producto. Mínimo: Una primera alternativa que tenemos para calcular el nivel de pertenencia de una valor x del universo de discurso X al conjunto intersección es calculando el mínimo de los diferentes niveles de pertenencia que presenta dicho valor a los conjuntos que se están intersectando. En la figura podemos observar los dos conjuntos difusos A de color amarillo y B de color azul que son intersectados aplicando la definición del mínimo mostrada en la ecuación. El resultado de la operación es el conjunto intersección que lo observamos de color verde. Producto: Otra manera que tenemos para calcular el nivel de pertenencia de una valor x del universo de discurso X al conjunto intersección es calculando el producto de los diferentes niveles de pertenencia que presenta dicho valor a los conjuntos que se están intersectando. En la figura podemos observar lo dos conjuntos difusos A de color amarillo y B de color azul que son intersectados aplicando la definición del producto que es mostrada en la ecuación. El resultado de la operación es el conjunto intersección que lo observamos de color verde. Unidad 3: Control y Modelado con Sistemas Difusos
15
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Operaciones entre Conjuntos Difusos Unión
Máximo
Suma Algebraica
Unión: La segunda operación que trabajaremos entre conjuntos difusos es la unión. En la ecuación mostramos la definición clásica que nos permite caracterizar el conjunto unión. Como se puede observar, para que un elemento pertenezca a este conjunto se necesita que el elemento pertenezca al conjunto A o que pertenezca al conjunto B. Debido a la manera como hemos definido la intersección una primera conclusión que podemos tener es que esta operación está ligada a la operación lógica OR. De hecho, cuando en lógica difusa se habla de calcular el OR entre dos etiquetas lingüísticas, lo realizamos calculando la unión entre los conjuntos difusos que representan a cada una de las etiquetas. Recordemos que cuando se tiene un valor x del universo de discurso X, el elemento x tendrá dos valores de pertenencia asociados a los conjuntos A y B, μA(x) y μB(x) respectivamente. Desde un punto de vista operativo lo que buscamos son expresiones para calcular el nivel de pertenencia del valor x al conjunto resultante de unir los conjuntos A y B. Para realizar este cálculo las alternativas más usadas son usando la operación máximo y la operación suma algebraica. Máximo: Una primera alternativa que tenemos para calcular el nivel de pertenencia de una valor x del universo de discurso X al conjunto unión es calculando el máximo de los diferentes niveles de pertenencia que presenta dicho valor a los conjuntos que se están uniendo. En la figura podemos observar los dos conjuntos difusos A de color amarillo y B de color azul que son unidos aplicando la definición del máximo mostrada en la ecuación. El resultado de la operación es el conjunto unión que lo observamos de color verde. 16
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Suma Algebraica: Otra manera que tenemos para calcular el nivel de pertenencia de una valor x del universo de discurso X al conjunto unión es calculando la suma algebraica de los diferentes niveles de pertenencia que presenta dicho valor a los conjuntos que se están uniendo. En la figura podemos observar lo dos conjuntos difusos A de color amarillo y B de color azul que son unidos aplicando la definición de suma algebraica que es mostrada en la ecuación. El resultado de la operación es el conjunto unión que lo observamos de color verde. Operaciones entre Conjuntos Difusos: NOT o Complemento
La última operación que vamos a presentar es la función lógica NOT, esta operación se puede relacionar con el conjunto complemento. En la ecuación mostramos la definición clásica del conjunto complemento, donde un elemento pertenece al complemento del conjunto A si está dentro del universo de discurso X, pero no pertenece al conjunto A. Recordemos que cuando se tiene un valor x del universo de discurso X, el elemento x tendrá un valor de pertenencia asociado al conjunto A que denotamos por μA(x). Desde un punto de vista operativo lo que buscamos es una expresión para calcular el nivel de pertenencia del valor x al conjunto complemento de A. La forma que presentamos para calcular el nivel de pertenencia de una valor x del universo de discurso al conjunto complemento de un conjunto difuso por ejemplo A, es calculando la resta de 1 menos el nivel de pertenencia de x al conjunto difuso A, tal como es mostrado en el ecuación. En la figura podemos observar el conjunto difuso A de color amarillo y aplicando la definición de complemento anteriormente presentada podemos observar el conjunto complemento de A en color verde.
Unidad 3: Control y Modelado con Sistemas Difusos
17
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Razonamiento Difuso El razonamiento difuso está basado en la regla de inferencia Modus Ponens Generalizado (del latín modo que afirma) es una regla de inferencia simple que esta definido como:
Donde A, A’ , B, B’ son conjuntos difusos, x, y son variables lingüísticas. El modus ponems generalizado es usado ya que permite realizar una inferencia cuando el antecedente es parcialmente conocido o cuando es similar pero no igual a A. Modus Ponens Generalizado: Vamos a ilustrar esta regla de inferencia con un ejemplo. Propongamos como premisa 1: “El tomate está casi rojo”. Como premisa 2: “Si un tomate está rojo entonces el tomate está maduro”. Con base en esta información nosotros podemos inferir que un tomate está casi maduro, cuando tenemos la información de que está casi rojo. Si extendemos la inferencia difusa con base en el paradigma de “Modus Ponens Generalizado”, podemos proponer las siguientes conclusiones: • Si “el tomate está muy rojo” entonces “el tomate está muy maduro” • Si “el tomate está mas o menos rojo” entonces “el tomate está más o menos maduro” • Si “ el tomate no está rojo” entonces “el tomate no está maduro” Sistemas de Lógica Difusa Puro Un sistema de lógica difusa puro, está compuesto por una base de reglas y un mecanismo de inferencia con los cuales se determina una transformación desde los conjuntos difusos en un universo de discurso de entrada U Rn, hacia los conjuntos difusos en un universo de discurso de salida V Rn.
18
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Tienen la desventaja de que sus entradas y salidas son conjuntos difusos, cuando la mayoría de problemas en ingeniería las entradas y salidas son valores numéricos reales. Sin embargo, son útiles para hacer uso sistemático de información lingüística. Sistemas de Lógica Difusa Takagi Sugeno
En los sistemas de lógica difusa tipo Takagi Sugeno, la base de reglas de inferencia poseen consecuentes de tipo numérico. Podemos considerar que el antecedente de estas reglas es difuso, mientras que el consecuente es determinístico. Sistemas de Lógica Difusa con Fuzzificador y Defuzzificador
Base de Reglas Difusas: La base de reglas esta compuesta por sentencias del tipo “SI antecedente ENTONCES consecuente”, que describen las condiciones necesarias para que se cumpla una acción. El antecedente de una regla puede tener varias partes, unidas por conjunciones Y, O y NO, las cuales corresponden a las operaciones lógicas difusas. Las acciones a tomar cuando un antecedente se cumple, es lo que hemos denominado el consecuente. Si recordamos el concepto de inferencia difusa, cuando es antecedente se cumple parcialmente, en consecuencia la acción se cumplirá parcialmente. La base de reglas difusas constituye el conocimiento que nos permite caracterizar completamente el comportamiento del sistema difuso. Unidad 3: Control y Modelado con Sistemas Difusos
19
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Este tipo de sistemas utilizan dos elementos, uno que transforma las variables numéricas a conjuntos difusos (Fuzzificador) y un segundo, que transforma las variables difusas en numéricas (defuzzificador). El mecanismo de inferencia internamente, corresponde a un sistema difuso puro, ya que procesa variables difusas. A estos sistemas también se les denomina Controladores Difusos ya que son usualmente utilizados para controlar sistemas dinámicos recurriendo a la modificación de la señal de salida hacia un actuador, mediante una reglas difusas. Este sistema tiene varias características interesantes: Primero, es útil para sistemas en ingeniería, ya que sus entradas y salidas son numéricas; segundo, provee un entorno natural para incorporar información lingüística; tercero, hay diferentes tipos de fuzzificadores, defuzzificadores y sistemas de inferencia. Finalmente, se pueden generar algunos algoritmos de entrenamiento para este sistema, permitiendo su adaptación. Fuzzyficador: El fuzzificador es la etapa de entrada de un sistema de inferencia difusa. Los elementos fundamentales de este bloque son las funciones de pertenencia que segmentan las variables de entrada. Los valores de las variables de entrada se evalúan en la funciones de pertenencia para generar el nivel de pertenencia de estas variables a los diferentes conjuntos difusos. Mediante este procedimiento, el fuzzificador establece una relación entre los puntos de entrada crisp y sus correspondientes conjuntos difusos en el universo de discurso X. Existen dos tipos de fuzzificadores: El Singleton, el cual define un nivel de pertenencia de 1 si x esta dentro de la función de pertenencia y 0 en cualquier otro caso; El Non-singleton, establece un valor de pertenencia difuso para x. Edfuzzificador: El defuzzificador realiza el proceso inverso de convertir la salida difusa del mecanismo de inferencia en valores numéricos que puedan ser fácilmente usados en aplicaciones en el mundo real. Este tipo de sistemas utilizan dos elementos, uno que transforma las variables numéricas a conjuntos difusos (Fuzzificador) y un segundo, que transforma las variables difusas en numéricas (defuzzificador). El mecanismo de inferencia internamente, corresponde a un sistema difuso puro, ya que procesa variables difu sas. A estos sistemas también se les denomina Controladores Difusos ya que son usualmente utilizados para controlar sistemas dinámicos recurriendo a la modificación de la señal de salida hacia un actuador, mediante una reglas difusas. Este sistema tiene varias características interesantes: Primero, es útil para sistemas en ingeniería, ya que sus entradas y salidas son numéricas; segundo, provee un entorno natural para incorporar información lingüística; tercero, hay diferentes tipos de fuzzificadores, defuzzificadores y sistemas de inferencia. Finalmente, se pueden generar algunos algoritmos de entrenamiento para este sistema, permitiendo su adaptación. 20
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Sistemas Difusos
Takagi-Sugeno-Kang: En este tipo de sistemas difusos, representamos los consecuentes como funciones polinomiales, siendo su principal ventaja la facilidad en el diseño ya que pueden aplicarse técnicas clásicas para estimar los parámetros de salida. Mamdani: En este sistema, representamos los consecuentes como variables lingüísticas, siendo sus principales ventajas el uso de variables del “mundo real” en su funcionamiento, la inclusión de conocimiento de un experto y la mayor flexibilidad al seleccionar un mecanismo de fuzificacion y defuzificacion. En general, existen dos clases de sistemas Mamdani, los lingüísticos cuyo uso es más extendido para el modelado por entendimiento debido a su mejor interpretabilidad, y los aproximados que poseen una mayor precisión.
Inferencia Difusa
Nos han contratado para diseñar un sistema que prediga el número de posibles asistentes a una sala múltiple de cine, ubicada en un centro comercial muy popular de nuestra ciudad. ¿Cómo podríamos predecir el número de espectadores que asistirá a una película en particular, con base en un sistema de inferencia difuso? Unidad 3: Control y Modelado con Sistemas Difusos
21
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Inferencia Mamdani
Sistema de Inferencia Difuso Definamos las variables de nuestro sistema que predice el número de posibles asistentes a una película en particular.
Variables Lingüisticas 1. Número de visitantes al centro comercial
22
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
2. Calificación de la película promedio por parte del público
3. Cantidad de público asistente a la película. Lo definimos en terminos de porcentaje de ocupación de la sala
Un estudio de mercado, la observación del comportamiento del público y la experiencia del personal de la sala múltiple de cine nos permiten plantear las siguientes reglas de comportamiento de nuestro sistema de predicción.
Unidad 3: Control y Modelado con Sistemas Difusos
23
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Inferencia Difusa Prediccón del público 3.500 visitantes y el público califica con 3.0 a la película
Inferencia Mamdani En un sistema de inferencia tipo Mamdani, tanto las entradas como la salidas las definimos como conjuntos difusos, lo que trae como ventaja el utilizar completamente la información lingüística para describir el problema a solucionar. Observemos las reglas de inferencia que definen el comportamiento del problema y luego su representación gráfica, donde visualizamos de manera general los pasos que se llevan a cabo para generar la salida a partir de unos valores de entrada.
Si X1 es A11 AND X2 es A12 ENTONCES y es B1 Si X1 es X21 AND X3 es A22 ENTONCES y es B2
24
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
En la figura, los valores de entrada de x1 y x2 los evaluamos en sus respectivos conjuntos difusos lo que genera sus valores de pertenencia. Con base en estos niveles de pertenencia evaluamos el nivel de activación del antecedente de cada una de las reglas. En la figura esta operación la realizamos aplicando el operador AND, que se traduce para fines prácticos, en calcular el valor mínimo de estos niveles de pertenencia. Como resultado los conjuntos difusos de salida B1 y B2 son truncados a una altura igual al valor mínimo que calculamos. Estas figuras truncadas se fusionan aplicando el concepto de agregación y dan origen al conjunto difuso resultante, cuyo centro de masa lo utilizaremos para generar el valor de salida del sistema de inferencia difusa.
Inferencia Sugeno Sistema de Inferencia Difuso Definamos las variables de nuestro sistema que predice el número de posibles asistentes a una película en particular.
Unidad 3: Control y Modelado con Sistemas Difusos
25
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Variables Lingüisticas 1. Número de visitantes al centro comercial
2. Calificación de la película promedio por parte del público
3. En la inferencia tipo Sugeno las salidas se definen como funciones y les proponemos las siguientes:
fBAJO(x,y) = 0.01x - 10y + 80 fMEDIO (x,y) = 50 f
26
Universidad del Valle
ALTO
(x,y) =0.01x + 20y - 55
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Un estudio de mercado, la observación del comportamiento del público y la experiencia del personal de la sala múltiple de cine nos permiten plantear las siguientes reglas de comportamiento de nuestro sistema de predicción. REGLAS DE COMPORTAMIENTO
fBAJO(x,y) = 0.01x - 10y + 80
fMEDIO (x,y) = 50
f VISITANTE CENTRO COMERCIAL
CALIDAD
ALTO
(x,y) =0.01x + 20y - 55 PÚBLICO
Inferencia Difusa Prediccón del público 3.500 visitantes y el público califica con 3.0 a la película
fBAJO(x,y) = 0.01x - 10y + 80
fMEDIO (x,y) = 50 f ALTO (x,y) = 0.01x + 20y - 55 Este proceso es denominado IMPLICACIÓN O ACTIVACIÓN DE REGLAS Este proceso lo llamamos FUZZIFICACIÓN
Unidad 3: Control y Modelado con Sistemas Difusos
27
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Cálculo de Salida En un sistema de inferencia Sugeno la salida global del sistema (z) se calcula con la siguiente expresión: n
z=
i=1
Wi fi
n i=1
Wi
donde, n: Número de reglas definidas en el sistema w1: Nivel de activación del antecedente en la regla i-ésima f1: Evaluación de la salida de la i-ésima regla
z=
0.2*40 + 0.75*50 + 0.25*15 49.25 = = 41 0.2 + 0.75 + 0.25 1.2
En un sistema de inferencia tipo Sugeno las entradas se definen como conjuntos difusos, pero las salidas se definen en función de las entradas, usualmente como una combinación lineal. La principal ventaja de este sistema es su simplicidad a la hora de ser implementado. Observemos las reglas de inferencia que definen el comportamiento del problema y luego su representación gráfica, donde visualizamos de manera general los pasos que se llevan a cabo para generar la salida a partir de unos valores de entrada.
En la figura los valores de entrada de x1 y x2 se evalúan en sus respectivos conjuntos difusos lo que genera sus valores de pertenencia. Con base en estos niveles de pertenencia evaluamos el nivel de activación del antecedente de cada una de las reglas. En la figura esta operación la realizamos aplicando el operador AND, que se traduce para fines prácticos, en calcular el producto de estos niveles de pertenencia. Los consecuentes de las diferentes reglas los calculamos evaluando las respectivas funciones que los representan. Finalmente, la salida del sistema la obtenemos con base en la suma ponderada de las salidas de las diferentes reglas dividido entre la suma de los niveles de los niveles de activación de los antecedentes. 28
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Si X1 es A11 AND X2 es A12 ENTONCES y1=F(x1,x2) Si X1 es X21 AND X3 es A22 ENTONCES y2=F(x1,x2)
Tema 2. Control de Sistemas Usando Lógica Difusa Control Difuso *Revise el video que se encuentra en la versión de este material, publicada en el campus virtual.*
Unidad 3: Control y Modelado con Sistemas Difusos
29
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
El control difuso es una estrategia que pertenece al Control Inteligente, cuyas decisiones las toma utilizando un sistema de inferencia basado en lógica difusa. Un controlador difuso es por naturaleza no lineal y existen diversos tipos. En general se define un conjunto de estructuras básicas cuyo comportamiento se aproxima a los controladores clásicos del tipo Proporcional (P), Integral (I) o Derivativo (D). Donde estas denominaciones dependen del procesamiento que se realice sobre la señal de error antes de entrar al sistema de inferencia difuso. En este curso estudiaremos los siguientes esquemas de controladores difusos: •Controlador P difuso •Controlador PD difuso con Acción de Control Incremental •Controlador PD difuso con derivada de la salida •Controlador PI difuso •Controlador PID difuso Control P Difuso En este esquema de control la señal de error e(k) entra directamente al sistema de lógica difusa, y pasando por el mecanismo de inferencia, generamos la acción de control u(k). Con el fin de diseñar las reglas es necesario considerar que la señal de error puede tomar valores positivos, cuando la señal de referencia es mayor que la salida de la planta a controlar; y negativos, cuando la señal de referencia es menor que la salida de la planta. Cuando las señales de salida y referencia son iguales, el error es cero.
Control Inteligente: lo podemos definir como el conjunto de técnicas de control que hacen uso de varias aproximaciones derivadas de la Inteligencia Artificial.
30
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema debemos incluir bloques de ganancia en la señal de error y en la acción de control. Control PD Difuso En este esquema de control, al sistema de lógica difusa entran la señal de error y su derivada, y pasando por el mecanismo de inferencia, generan una acción de control. Como en el caso anterior la señal de error puede ser positiva, negativa o cero. La derivada del error nos proporciona información sobre la tendencia que tiene esta variable, es decir si el error evoluciona aumentando o disminuyendo. La derivada del error se define como positiva, negativa y cero; pero su interpretación física depende del valor del error que tenga en el instante de análisis. Si el error es positivo, una derivada positiva significa que el error está aumentando y una derivada negativa significa que el error está disminuyendo y por ende estaría acercándose a cero. Si el error en el instante de análisis es negativo, una derivada positiva implica que el sistema evoluciona hacia cero y esto significa que el error está disminuyendo, en el caso contrario, una derivada negativa implica que el error tiende a aumentar negativamente y por tanto se aleja del valor de referencia. La derivada cero se interpreta como que el error no evoluciona, es decir el sistema se ha quedado estático desde el punto de vista del error. Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema debemos incluir bloques de ganancia en la señal de error y en la acción de control.
Controlador PD Difuso con Acción de Control Incremental Este esquema de control es similar al PD Difuso, pues incluimos como entrada al sistema de lógica difusa la señal de error y su derivada. La diferencia sustancial estriba en como modificamos la acción de control gracias a que incluimos un bloque de integración (1/s), como el que se observa en la figura. Normalmente la acción incremental la utilizamos en procesos en los cuales una acción de control nula debe cambiar la salida de la planta. Un ejemplo de esto sucede cuando vamos a controlar la velocidad de un motor de corriente continua. En este caso, la acción de control está dada por el voltaje que aplicamos al motor. Si tenemos la velocidad del motor en un valor deseado, un voltaje nulo en lugar de mantener el motor a la velocidad deseada, lo que haría es detenerlo. En el caso de que la acción de control nula no afecte la salida de la planta no se hace necesario hacer uso de la acción incremental. Un ejemplo de esto lo podemos observar cuando vamos a controlar la posición del eje de un motor de corriente continua. Como en Unidad 3: Control y Modelado con Sistemas Difusos
31
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
el caso anterior, la acción de control está dada por el voltaje que apliquemos al motor. Si tenemos la posición del eje del motor en un valor deseado, un voltaje nulo hará que el eje se detenga, y la posición del mismo se mantendrá donde queremos. Cuando hacemos uso de la acción incremental, el sistema de lógica difusa modifica la manera como se va a manipular la acción de control, es decir, este elemento incremental 1/s definirá si la acción de control se aumenta, se disminuye o se deja igual. Desde este punto de vista, la salida del sistema de lógica difusa la consideraremos como la derivada de la acción de control que se aplicara sobre la planta. Por lo tanto para obtener la acción de control debemos integrar esta salida. Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema se incluyen bloques de ganancia en la señales de control, error y derivada del error.
Controlador PD Difuso con Acción de Control Incremental En la figura se muestra la salida del controlador difuso antes y después de la integración. Como ejemplo vamos a considerar que el actuador es una válvula proporcional. Como podemos observar de la figura, si la salida del controlador difuso es positiva, la acción de control que se opera sobre la planta se va incrementando paulatinamente, lo que equivaldría a ir abriendo la válvula con el objetivo de incrementar el fluido que pasa a través de la misma. Si consideramos que esta cantidad de fluido que pasa a través de la válvula es elevada, la manera de disminuirla seria ir cerrando paulatinamente la válvula y esto se lograría con una salida del controlador difuso negativa. Si la cantidad de fluido que suministra la válvula es adecuada, no necesitamos ni abrir ni cerrar la válvula, lo que necesitamos es dejar la válvula en una posición fija. Esto lo podemos obtener haciendo que la salida del controlador difuso sea cero
32
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Controlador PD Difuso con derivada de la salida En este esquema de control, al sistema de lógica difusa entran la señal de error y la derivada de la salida de la planta, y pasando por el mecanismo de inferencia, generan una acción de control. Como explicamos anteriormente la señal de error puede ser positiva, negativa o cero. La derivada de la salida nos proporciona información sobre la tendencia que tiene esta variable, es decir si la salida evoluciona aumentando o disminuyendo. En algunas situaciones es conveniente trabajar con la derivada de la salida de la planta, pues desde el punto de vista físico es más fácil entender el comportamiento de esta variable que el de la derivada del error. La derivada de la salida se define como positiva, negativa y cero y tiene la ventaja de no depender del estado actual del error. Una derivada positiva significa que la salida de la planta está aumentando y una derivada negativa significa que la salida de la planta está disminuyendo. La derivada cero se interpreta como que el sistema se ha quedado estático. Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema se incluyen bloques de ganancia en la señales de control, error y derivada de la salida.
Controlador PI Difuso En este esquema de control, al sistema de lógica difusa entran la señal de error y su integral, y pasando por el mecanismo de inferencia, generan una acción de control. Como en los casos anteriores la señal de error puede ser positiva, negativa o cero. La integral del error nos proporciona información sobre la historia que tiene esta variable, utilizando el conocimiento pasado para inferir la acción de control. Al igual que su equivalente convencional, nos garantiza que podemos reducir el error de estado estacionario, sin embargo se pueden producir sobrepasos, que afectan la vida útil de nuestros actuadores. Los valores positivos de la integral indican que ha existido históricamente una mayor cantidad de errores positivos, que implican que la salida del sistema está por debajo de los valores de referencia. Los valores negativos de la integral indican que ha existido históricamente una mayor cantidad de errores negativos, que implica que la salida del sistema está por encima de los valores de referencia. Un valor igual o muy cercano a cero, implica dos situaciones, la primera es que históricamente los errores se han compensado con valores positivos y negativos, lo que podría suponer un problema de estabilidad; la segunda es que el error se ha mantenido históricamente en cero, lo cual implica que se ha logrado llegar a la referencia. Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema se incluyen bloques de ganancia en la señales de control, error e integral del error. Unidad 3: Control y Modelado con Sistemas Difusos
33
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Controlador PID Difuso En este esquema de control, al sistema de lógica difusa entran la señal de error, su derivada e integral, y pasando por el mecanismo de inferencia, generan una acción de control. Como en los casos anteriores estas variables pueden ser positivas, negativas o cero. Al combinar los tres esquemas de corrección (Proporcional, Integral y Derivativo) se obtiene un controlador que sustenta las desventajas que poseen individualmente. Este sistema requiere de tres conjuntos difusos de entrada, lo que lo hace un poco mas complejo que los anteriores. Es importante recalcar, desde el punto de vista práctico, que para facilitar la sintonización del sistema se incluyen bloques de ganancia en la señales de control, error, derivada e integral del error. Finalmente, debemos mencionar que dependiendo del tipo de aplicación, todos los esquemas de controladores estudiados anteriormente pueden hacer uso de un acción de control de tipo incremental.
Ejemplo: Control de Nivel Definición del Problema
Como ejemplo para ilustrar el diseño de un controlador difuso, proponemos el problema de controlar el nivel de un liquido en un tanque. Esta es un situación muy común en ambientes industriales, en donde las variables de entrada del controlador corresponden al error en el nivel y a la derivada del nivel. Como variable de salida consideraremos la acción incremental sobre la apertura de la válvula. 34
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Como variable de salida consideraremos la acción incremental sobre la apertura de la válvula. Supongamos que debemos controlar el nivel de un líquido en un tanque de un metro de altura. Como actuador tenemos una válvula que regula la cantidad de líquido que entra al tanque. Si deseamos aumentar el nivel del líquido en el tanque, lo que debemos hacer es abrir la válvula de suministro; si por el contrario se desea disminuir el nivel de liquido en el tanque tenemos que cerrar la misma válvula. Teniendo en cuenta que hay un flujo constante de líquido en la salida, con el fin de mantener su nivel constante, debemos mantener un flujo regulado de líquido a la entrada con el fin de igualar al de salida; esta situación la garantizamos si ajustamos la válvula de suministro en una posición adecuada. Ejemplo: Control de Nivel Conjuntos Difusos El siguiente paso en el diseño del controlador difuso es categorizar nuestras variables de entrada y de salida. Utilizaremos para la salida una inferencia de tipo Mamdani. Definimos cinco categorías para el error y la derivada del nivel: Muy Negativo (MN), Negativo (N), Cero (C), Positivo (P) y Muy Positivo (MP). Además, definimos cinco categorías para la salida: Cerrar Mucho (CM), Cerrar (C), Quieto (Q), Abrir (A) y Abrir Mucho (AM). Una vez definidas las categorías necesitamos seleccionar un universo de discurso adecuado para cada una de las variables. El rango de posibles valores que tomara el error estará entre -1 metro y 1 metro. Es muy conveniente trabajar el rango de la derivada del nivel de manera normalizada de tal manera que el rango de posibles valores estará entre -1 y 1. La acción incremental la trabajaremos también de manera normalizada de tal manera que el rango queda entre -1 y 1. Finalmente, seleccionamos los tipos de funciones de pertenencia que le asignaremos a cada una de las categorías definidas para las diferentes variables del controlador. Por simplicidad se seleccionaron funciones de tipo triangular y trapezoidal. La disposición final de los conjuntos difusos seleccionados se muestran en las gráficas y se puede verificar que en cualquier valor de las variables la sumatoria de los niveles de pertenencia es igual a uno.
Unidad 3: Control y Modelado con Sistemas Difusos
35
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Control de Nivel Base de Reglas El siguiente paso en nuestro diseño es generar la base de reglas a partir del conocimiento intuitivo del comportamiento de la planta que tengamos del problema o que hayamos extraído de algún operario experto. Con este propósito, debemos analizar cual es la acción de control más adecuada a partir del análisis que realicemos del estado real de la planta, el resultado de este análisis lo representaremos por medio de las etiquetas lingüísticas del error y de la derivada del nivel. Las posibles acciones de control sobre la planta resultan al realizar todas las posibles combinaciones entre las etiquetas lingüísticas de las variables de entrada. En las filas manejaremos las etiquetas lingüísticas del error y en las columnas se manejaran las etiquetas lingüísticas de la derivada del nivel. En la intersección de una fila y una columna se establece el valor deseado de la acción de control usando las etiquetas lingüísticas para esta variable. A modo de ejemplo en la tabla hemos resaltado la siguiente regla: Si el error es cero y la derivada del nivel es cero, debemos mantener la válvula en su posición, sin proponer ningún tipo de cambio. De igual manera se puede interpretar la tabla para deducir toda la base de reglas que conforman la lógica implementada en el controlador. En las filas manejaremos las etiquetas lingüísticas del error y en las columnas se manejaran las etiquetas lingüísticas de la derivada del nivel. En la intersección de una fila y una columna se establece el valor deseado de la acción de control usando las etiquetas lingüísticas para esta variable. 36
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
A modo de ejemplo en la tabla hemos resaltado la siguiente regla: Si el error es cero y la derivada del nivel es cero, debemos mantener la válvula en su posición, sin proponer ningún tipo de cambio. De igual manera se puede interpretar la tabla para deducir toda la base de reglas que conforman la lógica implementada en el controlador.
Si hacemos un barrido por los posibles valores del error y la derivada del nivel y calculamos la acción de control generada, podemos obtener una superficie tridimensional como la mostrada, la cual representa la función no lineal implementada por el controlador.
Control de Nivel Simulación del Controlador
Unidad 3: Control y Modelado con Sistemas Difusos
37
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Para comprobar si el controlador es adecuado, generamos un modelo de la planta a controlar y por medio de Simulink de Matlab, simulamos el comportamiento del sistema de control y la planta. El controlador se compone de los bloques de substracción, derivada, ganancias, evaluación del sistema difuso e integrador. El modelo de la planta corresponde a la función de transferencia del nivel del liquido es 1.5/(10s+1). Para el correcto funcionamiento del controlador dependiendo de la respuesta deseada, ajustamos las constantes de proporcionalidad del controlador. Control de Nivel Análisis de Desempeño Para comprobar el funcionamiento del controlador realizamos dos experimentos de seguimiento de referencia. El primer experimento es la aplicación de un escalón de amplitud 0.2 y observar como es la respuesta del sistema. Podemos observar como el sistema alcanza el nivel de referencia y ejerce una acción de control moderada. En el segundo experimento, variamos la referencia para observar que tan efectivo es el controlador cuando el sistema tiene este tipo de variaciones. Nuevamente podemos observar que la referencia es seguida de manera adecuada. Además, la acción de control no es excesiva y esta dentro de un rango que podríamos considerar permisibles.
38
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Tema 3. Modelado Difuso Introducción Para todos es claro que una de las más importantes características de la inteligencia humana, es la habilidad para crear grupos de datos con base en algún criterio de agrupación. Donde un grupo lo definimos como un conjunto de objetos cuyo nivel de similitud es mayor respecto de los demás objetos asociados a un conjunto universo de discusión. Las técnicas de agrupamiento son usadas en aplicaciones de reconocimiento y clasificación de patrones. Tanto el modelado paramétrico esencialmente basado en regresión lineal, como el modelado tipo caja negra, por ejemplo las redes neuronales artificiales, pueden utilizar el agrupamiento de los datos para generar un modelo del sistema. En este tema abordaremos el modelado usando técnicas de agrupamiento difuso como punto de partida, para luego obtener un modelo lineal para cada uno de los grupos generados utilizando los consecuentes de un sistema difuso tipo Sugeno. Inicialmente presentaremos los conceptos básicos de agrupamiento (“clustering”), que ilustraremos con ejemplos para facilitar su comprensión. Como algoritmo básico de agrupamiento usaremos el de k-medias, el cual nos servirá de referencia para evaluar el desempeño del agrupamiento difuso. Finalmente proponemos una técnica de modelado difuso que igualmente se ilustrará con ejemplos.
Agrupamiento: Definición El agrupamiento es una técnica de clasificación para descubrir si los individuos de una población se pueden distribuir en diferentes grupos haciendo una comparación cuantitativa de sus diferentes características. Es la clasificación de objetos en diferentes grupos, en Unidad 3: Control y Modelado con Sistemas Difusos
39
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
otras palabras, lo que busca es particionar el conjunto de datos en subconjuntos, llamados grupos, de tal manera que cada subconjuto comparta algún rasgo común generalmente de proximidad de acuerdo a alguna medida de distancia.
Agrupamiento: Ejemplo Básico Nos proponen concebir un sistema que clasifique un grupo de automóviles con base un algunas características relevantes: •Velocidad máxima del vehículo •Color •Aerodinámica del automóvil medida en función de su resistencia al aire •Peso del vehículo. En la tabla condensamos los valores y el propósito es encontrar tres tipos diferentes de vehículos y seleccionar cuales de estas características tienen mayor relevancia para la identificación y el modelado de los tipos de vehículos. 40
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Mayor relevancia: un análisis inicial de las características tabuladas muestra que el color es el que tiene la menor relevancia, puesto que hay una gran variabilidad en ella y no es un factor determinante en el agrupamiento de los vehículos. Clasificación de automóviles. En segunda instancia, la resistencia al aire, también nos muestra un comportamiento similar, fruto del alto grado de avance en el diseño aerodinámico de los vehículos modernos, que garantizan un desempeño similar desde este punto de vista. En síntesis proponemos modelar el sistema con base en la velocidad máxima y el peso de los vehículos, cuyo resultado se observa en la siguiente página. Vehículo
Velocidad Máxima Km / h
Color
V1
220
Rojo
0.30
1300
V2
230
Negro
0.32
1400
V3
260
Blanco
0.29
1500
V4
140
Gris
0.35
800
V5
155
Azul
0.33
950
V6
130
Blanco
0.40
600
V7
100
Negro
0.50
3000
V8
105
Rojo
0.60
2500
V9
110
Gris
0.65
3500
Resistencia al aire Peso Kg
Agrupamiento:Terminología
Unidad 3: Control y Modelado con Sistemas Difusos
41
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Objeto o Dato: es un vector que describe a cada uno de los objetos en el espacio de las características que se utilizarán para modelar el sistema. Etiqueta: nombre que asignamos a un grupo con el fin de identificarlo. Grupo: conjunto de objetos que comparten características similares (“Cluster”). Conjunto de patrones que poseen características comunes que los diferencian de otros elementos pertenecientes a un mismo conjunto universo Espacio de características: espacio definido por el conjunto de características utilizadas para describir a los objetos, para su posterior modelado Características: Variable medible en el mundo real que utilizaremos para describir un objeto. En el gráfico observamos como se agrupan los vehículos a partir de las dos características seleccionadas: Peso y Velocidad Máxima. En ella se diferencian claramente tres grupos correspondientes a aquellos cuyo peso es grande y su velocidad es baja, por lo que consideramos que son del tipo “camión”. Un segundo grupo tiene bajo peso y velocidad moderada, que se asocia a un automóvil promedio, mientras que el tercero tiene igual un bajo peso pero su velocidad máxima es la más alta, lo que caracteriza a un “Automóvil Deportivo”. Descripción del problema
En el proceso de fabricación de baldosas de cerámica, tomamos la arcilla para ponerla en los moldes que le dan la forma deseada. Luego pasan por un proceso de pulido y esmaltado, para finalizar con la fase de cocción en los hornos. En esta etapa final es imposible evitar la formación de grietas invisibles a simple vista, por lo que para efectos de control de calidad debemos recurrir a un método acústico para detectar las piezas defectuosas. 42
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
En la inspección los operarios golpean suavemente con un martillo las piezas y con un sistema automático se captura el sonido que estas emiten; tras una etapa de filtrado y de procesamiento se extraen las frecuencias representativas tal como se ve en el pequeño conjunto de datos de la tabla (adaptada de MIT, 1997). En la tabla hemos separado aquellas piezas que pasan la prueba de las que están defectuosas, utilizando para su caracterización la magnitud de las componentes de frecuencia 475Hz y 557Hz. 475Hz
0.958
1.043
1.907
0.78
0.579
0.003
0.001
0.014
0.007
0.04
457 Hz
0.003
0.001
0.003
0.002
0.001
0.105
0.148
1.839
1.021
0.214
Aprobado
Si
Si
Si
Si
Si
No
No
No
No
No
Intensidad de frecuencia en diez baldosas
Agrupamiento por métodos clásicos Si al anterior conjunto de datos le aplicamos un método de agrupamiento como el de k-medias, el resultado obtenido es similar al de la figura donde la pertenencia o no a cada uno de los grupos se da con relación a la cercanía de los datos respecto de los vectores centroides C1 y C2.
Para evaluar la pertenencia o no a cada uno de los grupos se toma un dato y se mide la distancia respecto de cada uno de los centroides. Un objeto pertenece a un grupo si la distancia respecto al centroide que caracteriza a ese grupo es la mínima. Por ejemplo si tomamos el primer elemento de la tabla, claramente vemos que la menor distancia se da con respecto al centroide C2, por esta razón marcamos con un uno esta casilla, y con cero Unidad 3: Control y Modelado con Sistemas Difusos
43
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
la casilla asociada al centroide C1. Este proceso se repite para todos los datos y obtenemos la siguiente tabla que resume la pertenencia de las baldosas en prueba a los grupos C1 o C2. Es importante destacar que la pertenencia a un grupo es del tipo 1 o 0, siendo completamente excluyente la posibilidad de pertenecer a cualquier otro grupo una vez se le haya asignado al grupo más cercano. 475Hz
0.958
1.043
1.907
0.780
0.579
0.003
0.001
0.014
0.007
0.04
457 Hz
0.003
0.001
0.003
0.002
0.001
0.105
0.148
1.839
1.021
0.214
Pertinencia C1
0.0045
0.0049
0.0110
0.0009
0.0091
0.9404
0.9678
0.9602
0.9915
0.9801
Pertinencia C2
0.9955
0.9951
0.9890
0.9991
0.9909
0.0596
0.0322
0.0398
0.00085
0.0189
Aprobado
Si
Si
Si
Si
Si
No
No
No
No
No
Aplicación del agrupamiento difuso al aprendizaje de funciones: Concepción general El propósito del modelado difuso es encontrar un sistema de inferencia, por lo general de tipo Sugeno, que nos permita representar una relación entrada-salida. Este proceso de modelado difuso encuentra los parámetros del antecedente y del consecuente. Para el sistema tipo Sugeno, los parámetros de los antecedentes corresponden a las funciones de pertenencia que caracterizan a los conjuntos difusos de las variables de entrada. Los parámetros del consecuente corresponden a los valores que definen las funciones lineales de las salidas de cada una de las reglas. Parámetros del antecedente
Los datos de entrada se usan para encontrar en ellos posible grupos que compartan características similares. Teniendo los grupos establecidos, se proyectan sobre las diferentes variables de entrada para de esta manera encontrar las funciones de pertenencia que caracterizan estas variables.
44
Universidad del Valle
Parámetros del consecuente
Con los parámetros de los antecedentes ya establecidos, procedemos a encontrar los parámetros de los consecuentes que corresponden a las variables que caracterizan las funciones lineales que definen el consecuente de cada una de las reglas. Para esto se usa la salida que deseamos genere el sistema de inferencia difuso y usando una metodología basada en gradiente o en mínimos cuadrados, podemos encontrar estos parámetros. Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
En la figura presentamos como usando técnicas de agrupamiento podemos encontrar los parámetros del antecedente y con base en los grupos ya establecidos se obtienen los parámetros de los consecuentes. Aprendizaje de una función senoidal Como un primer ejemplo de aplicación del modelado difuso, veremos como esta técnica se puede aplicar en la aproximación de una función senoidal, a partir de una serie de muestras de la misma como se observa en la figura. El objetivo es el de obtener un modelo difuso de la señal senoidal a partir de los datos entrada / salida. Un parámetro fundamental a definir inicialmente en el modelado difuso basado en agrupamiento, es la cantidad de grupos que vamos a utilizar. Para efectos de este ejemplo el número de grupos es de cinco, que a su vez definirán cinco modelos lineales para modelar la señal senoidal
Una vez definidos los cinco grupos, la técnica inicialmente nos entrega los centroides de los mismos distribuidos a lo largo de la señal de entrenamiento, tal como se observa en la figura superior. Con estos grupos obtenemos las funciones de pertenencia de los conjuntos difusos que caracterizarán la variable de entrada, tal como se observa en la figura inferior.
Unidad 3: Control y Modelado con Sistemas Difusos
45
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Con las funciones de pertenencia resultantes del paso anterior, procedemos a encontrar los parámetros de los consecuentes y como resultado obtenemos un modelo lineal para cada uno de los grupos generados en la etapa de agrupamiento difuso. Estos modelos lineales los podemos observar en la grafica.
Una vez encontrados los modelos lineales asociados a cada uno de los grupos, podemos visualizar en la figura, la capacidad de aproximación del modelo difuso obtenido. En la gráfica superior vemos en rojo la curva de aproximación a los datos representados con círculos azules, cuando utilizamos cinco grupos. Aunque el resultado es satisfactorio lo podemos mejorar si utilizamos diez grupos, tal como se muestra en la gráfica inferior. Ejemplo, identificación de sistemas Extracción de Datos E/S
46
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Osciloscopio
En este ejemplo, veamos como podemos llevar a cabo la identificación de un sistema dinámico utilizando el modelado por agrupamiento difuso. Primero, extraeremos los datos de entrada-salida de una planta representada por la función de transferencia 5/(s2+2s+10). Considerando las características físicas del sistema, seleccionamos un periodo de muestreo de 0.1s para el experimento. En el osciloscopio puede observar las señales de entrada y salida. Ejemplo, identificación de sistemas Modelo de primer orden
Luego de obtener los datos de entrada salida, construimos un modelo similar a los ARX trabajados en tema de identificación con redes neuronales. El regresor a utilizar es del tipo Y(k)=[Y(k-1), U(k-1)] que determina un modelo de primer orden. En este caso decidimos trabajar con tres grupos, y los modelos lineales generados para cada uno de los tres grupos definidos se ilustran en la gráfica de la izquierda, en donde cada color representa el rango de activación de cada uno de los tres modelos lineales.En la gráfica de la derecha presentamos el resultado final de la aproximación del modelo difuso obtenido.
Unidad 3: Control y Modelado con Sistemas Difusos
47
Universidad del Valle
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Ejemplo, identificación de sistemas Modelo de segundo orden
Al verificar que un modelo de primer orden no fue suficiente para modelar los datos obtenidos, recurrimos a un modelo más complejo definido por el regresor Y(k)=[Y(k-1), Y(k-2), U(k-1)] que representa a un modelo de segundo orden. Si trabajamos con los mismos tres grupos del caso anterior, los modelos lineales generados para cada uno de los grupos se activan como se muestra en la gráfica de la izquierda. En la gráfica de la derecha mostramos el resultado final de la aproximación del modelo difuso obtenido, el cual es superior frente al de primer orden.
48
Universidad del Valle
Unidad 3: Control y Modelado con Sistemas Difusos
Programa de Postgrados en Ingeniería Eléctrica y Electrónica Especialización en Informática Industrial – Control Inteligente
Resumen Luego de hacer una breve revisión a la evolución histórica de la lógica difusa y su aplicación en control, pasamos a realizar un repaso a los conceptos básicos de lógica difusa para comprender los mecanismos de inferencia más utilizados. Finalmente, nos detenemos en el diseño e implementación de los controladores difusos con inferencia tipo Mamdani y Sugeno; con base en algunos esquemas de control clásico lineal. En el último tema, abordaremos la aplicación de las técnicas de agrupamiento difuso al problema de modelar un sistema dinámico. El agrupamiento difuso se encarga de encontrar grupos en los datos experimentales obtenidos del sistema, donde dichos grupos pueden ser descritos por los consecuentes de un sistema de inferencia tipo sugeno.
Actividades de Aprendizaje Descargue el archivo que se encuentra en las Actividades de Aprendizaje, e la versión de esta unidad 3, publicada en el campus virtual.
Lecturas Complementarias Descargue del campus virtual y consulte: PASSINO Kevin M., Biomimicry for Optimization, Control, and Automation. Springer-Verlag. London UK, 2005 (Capítulo 5). el archivo se encuentra en las Lecturas Complementarias, de la versión de esta unidad 3, publicada en el campus virtual.
Bibliografía • PASSINO Kevin, YURKOVICH Stephen, Fuzzy Control, Addison – Wesley, USA, 1997.
Unidad 3: Control y Modelado con Sistemas Difusos
49
Universidad del Valle