8 DiseñO AutomáTico De Sistemas Basados En Reglas Difusas Para Control
1. Controladores Lógicos: Temario
Módulo I. Control de Sistemas.
Módulo II. Fundamentos de Lógica Difusa.
Módulo III. Sistemas Basados en Reglas Difusas.
Módulo IV. Aprendizaje y Adaptación en Sistemas
Basados en Reglas Difusas.
Tema 8. Diseño Automático de Sistemas Basados
en Reglas Difusas para Control.
Tema 9. Diseño Ad hoc.
Tema 10. Diseño con Algoritmos Genéticos.
Esquema de la asignatura Controladores Lógicos
MÓDULO IV: Aprendizaje y Adaptación en
Sistemas Basados en Reglas Difusas
Tema 8. Diseño Automático de Sistemas
Basados en Reglas Difusas para Control
2. Tema 8: Diseño Automático de Sistemas
Difusos para Control
Objetivos:
Comprender porqué es útil el diseño automático de
controladores difusos
Comprender en líneas generales cómo es posible
llevar a cabo el diseño de un controlador difuso con
poca o sin ninguna intervención humana
Conocer qué posibilidades de diseño existen y para
qué sirve cada una de ellas
Tema 8: Diseño Automático de Sistemas
Difusos para Control
1. Introducción
1.1. ¿Por qué el diseño automático?
1.2. Intervención humana en el diseño automático
1.3. Esquema general de diseño automático
2. Referencias de Rendimiento
2.1. Basado en la planta
2.2. Basado en un modelo de la planta
2.3. Basado en datos
3. Tipos de Diseño Automático
3.1. Off-Line (fuera de línea)
3.2. On-Line (en línea) o adaptativo
4. Técnicas de Diseño Automático
3. 1.1. ¿Por qué el Diseño Automático?
En muchas ocasiones, el conocimiento que se tiene del problema
no es suficiente como para diseñar manualmente un buen
controlador difuso (modelo matemático no disponible,
incertidumbre, no linealidad, ...)
Además, cuando se producen cambios en la planta o en el
entorno, es necesario adaptar el controlador difuso a las nuevas
condiciones operacionales
Si el problema es sencillo o se dispone de mucha información,
quizás no sea necesario un diseño automático. No obstante,
generalmente suele ser útil
1.2. Intervención Humana en el
Diseño Automático
Obviamente, el diseño automático no surge de “la nada”, es
necesaria cierta intervención humana
En la medida en que el experto/diseñador aporte información, el
diseño estará más o menos automatizado
El experto/diseñador puede aportar toda o parte de la siguiente
información:
Un controlador difuso inicial completo (base de conocimiento e
inferencia). O bien, sólo parte de esta información como, por
ejemplo, sólo las variables de entrada y salida
Alguna medida para valorar la calidad del controlador
Un conjunto de datos que representa la planta a controlar
Por supuesto, el ser humano deberá, además, diseñar y
desarrollar las técnicas de inteligencia artificial que permitan
realizar el diseño automático
4. 1.3. Esquema General de Diseño
Automático (4) Se decide qué nuevos
parámetros utilizar según
su comportamiento
(3) Se analiza el efecto
que han tenido los Evaluación del Ajuste de
nuevos parámetros del rendimiento parámetros
controlador
(5) Generalmente,
los parámetros son
de la base de
conocimiento
Base de Conocimiento:
Base de Datos y Base de Reglas
(6) Algunas
veces,
también se
error Interfaz de Mecanismo de Interfaz de diseña la
inferencia
Fuzzificación Inferencia Defuzzificación
Referencia: Proceso
bajo control
(2) La referencia puede ser (1) Se aplica el controlador
un sistema real, un modelo sobre la planta para analizar
o un conjunto de datos su comportamiento
2. Referencias de Rendimiento
En el diseño automático es fundamental tener alguna medida
que valore la calidad del diseño
Esa medida suele obtenerse comparando el resultado actual con
una meta o resultado que se desearía alcanzar
Para realizar esta comparativa, existen básicamente tres
opciones:
Aplicar el controlador directamente sobre la planta y observar su
comportamiento
Diseñar un modelo que imite la dinámica de la planta y aplicar el
controlador sobre ese modelo
Extraer datos que representen el comportamiento de la planta para
conocer, dado un estado, qué salida se desearía obtener
5. 2.1. Basado en la Planta
Naturalmente, la referencia ideal para valorar la calidad del
controlador sería directamente la planta
No obstante, existen algunos inconvenientes que hacen que no
sea siempre posible aplicarlo directamente en la planta:
Es necesario diseñar físicamente el controlador y disponer de la
planta para hacer las pruebas
En muchas ocasiones el efecto del control sobre la planta puede
causar daños irreparables o muy costosos
Es necesario tener la posibilidad de poder situar la planta en
diversos estados críticos para comprobar cómo funciona el
controlador, hecho que no es siempre factible
La respuesta de la planta puede ser a medio o largo plazo
En la práctica, la planta únicamente se utiliza para validar el
controlador finalmente diseñado, pero no durante su diseño
2.2. Basado en un Modelo de la Planta
Una buena alternativa es diseñar un modelo matemático que
imite el comportamiento de la planta para así poder simular su
funcionamiento en un ordenador
Ventajas:
Es más rápido, viable y económico comprobar el funcionamiento de
la planta a través del modelo
Si el modelo es de calidad, es decir, si representa con fiabilidad la
planta, tendremos mucha información para diseñar un buen
controlador
Inconvenientes:
Diseñar un modelo de la planta puede ser muy complejo o incluso
inviable. Supone conocer perfectamente la dinámica de la planta
La evaluación del controlador a través del modelo puede ser lenta
para las necesidades del diseño automático
6. 2.3. Basado en un Conjunto de Datos
Dado que generalmente el control difuso se aplica a problemas en los
que no es posible disponer de un modelo matemático de la planta, la
alternativa más ampliamente usada es la de diseñar el controlador a
partir de un conjunto de datos
Así, se dispone de un conjunto de datos o ejemplos que representan el
comportamiento real de la planta
Cada ejemplo consta de una serie de valores de entrada que definen un
estado concreto de la planta y una serie de valores de salida que indican
qué decisión de control se debería tomar
Estos datos se pueden obtener a partir de mediciones reales de la
planta gobernada por operarios humanos
Los datos también pueden ser suministrados por expertos que aporten
su conocimiento mediante ejemplos de funcionamiento (p.ej., a través
de encuestas)
2.3. Basado en un Conjunto de Datos:
Ejemplo
Dado el siguiente controlador difuso con tres variables de entrada y una
de salida:
Semántica común para las cuatro variables (tres términos lingüísticos):
⎧ 0, − 1 ≤ x ≤ −0.8
⎧ 1, − 1 ≤ x ≤ −0.8 ⎪ x + 0.8
, − 0.8 ≤ x ≤ 0
⎧ 0, − 1 ≤ x ≤ 0
⎪− x ⎪
⎪ ⎪ x
µ N (x) = ⎨ − 0.8 ≤ x ≤ 0 µ C ( x ) = ⎨ 0.8 µ P (x) = ⎨ 0 ≤ x ≤ 0.8
0.8 − x
⎪ 0.8 ⎪ , 0 ≤ x ≤ 0.8 ⎪ 0.8
⎩ 0, 0 ≤ x ≤1 ⎪ 0.8
⎪ 0, 0.8 ≤ x ≤ 1
⎩ 1, 0.8 ≤ x ≤ 1
⎩
Reglas difusas:
Si (X1 es P y X2 es C y X3 es P) ⇒ Y es P
Si (X1 es P y X2 es P y X3 es N) ⇒ Y es P
Si (X1 es C y X2 es N y X3 es C) ⇒ Y es C
Inferencia Mamdani: t-norma del mínimo para conjunción e implicación y t-
conorma del máximo para agregación
Defuzzificación: centro de gravedad
7. 2.3. Basado en un Conjunto de Datos:
Ejemplo
A partir del siguiente conjunto de ejemplos
X1 X2 X3 Y
e1 0.7 0.1 0.95 0.75
e2 0.8 1 -0.65 0.9
e3 0.1 -0.8 0.2 -0.2
se puede evaluar la calidad del controlador calculando el error
cuadrático medio que valora la diferencia entre la salida del controlador
(F) y la salida esperada (y) para cada ejemplo ei
1 3
ECM = ⋅ ∑ (F( x 1 , x i2 , x i3 ) − y i ) 2 = 0.03931
i
3 i =1
e1 : F(0.7,0.1,0.95) = 0.647561, y1 = 0.75
e 2 : F(0.8,1,−0.65) = 0.640323, y 2 = 0.9
e 3 : F(0.1,−0.8,0.2) = 0, y 3 = −0.2
2.3. Basado en un Conjunto de Datos:
Ejemplo
Para un controlador difuso con las reglas
Si (X1 es P y X2 es C y X3 es P) ⇒ Y es C
Si (X1 es P y X2 es P y X3 es N) ⇒ Y es P
Si (X1 es C y X2 es N y X3 es C) ⇒ Y es C
Se obtendría un error
1 3
ECM = ⋅ ∑ (F( x 1 , x i2 , x i3 ) − y i ) 2 = 0.22331
i
3 i =1
e1 : F(0.7,0.1,0.95) = 0, y1 = 0.75
e 2 : F(0.8,1,−0.65) = 0.640323, y 2 = 0.9
e 3 : F(0.1,−0.8,0.2) = 0, y 3 = −0.2
Este segundo controlador es peor que el primero
8. 3. Tipos de Diseño
Dependiendo de en qué momento se realice el diseño del
controlador, podemos distinguir entre dos tipos distintos:
Diseño off-line (fuera de línea): Se diseña el controlador difuso y,
una vez diseñado, se empieza a utilizar en la planta a controlar
Diseño del
Controlador Difuso
Planta
Referencia: Planta,
modelo o datos
Diseño on-line (en línea) o adaptativo: El diseño del controlador se
realiza mientras se está controlando la planta, se adapta a su
comportamiento
Diseño del
Controlador Difuso
Planta
3.1. Diseño Off-line
Ventajas:
Es el diseño más común
No se precisa de la planta para diseñarlo
Inconvenientes:
No permite adaptar el controlador a cambios en la planta. En este
caso, es necesario repetir el diseño
Se suele distinguir entre dos tipos:
Aprendizaje: se diseña el controlador desde el principio
Ajuste: se comienza con un controlador difuso inicial y se refina su
diseño para mejorarlo. En este caso los cambios realizados son
suaves
9. 3.2. Diseño On-line o Adaptativo
Ventajas:
Se adapta automáticamente a variaciones en la planta
Inconvenientes:
Sólo es posible aplicarlo cuando se dispone de la planta
Al principio, el controlador diseñado es poco preciso
La adaptación suele tener un efecto a medio o largo plazo
El diseño on-line se puede utilizar para añadir cada vez más
información que complete el conocimiento de la planta
Generalmente, el diseño on-line se combina con un diseño
previo off-line. Es decir, se parte de un controlador previamente
diseñado que se integra en la planta y que, posteriormente, se
va perfeccionando
4. Técnicas de Diseño Automático
El diseño automático se realiza con técnicas de Inteligencia
Artificial que determinan los parámetros del controlador a partir
de la información disponible (heurísticas, conjuntos de datos,
valoración de la calidad, parámetros de fiabilidad, etc.)
Las técnicas más comunes:
Métodos ad hoc ideados específicamente para este propósito:
generalmente para aprendizaje off-line de las reglas
Algoritmos evolutivos: generalmente para aprendizaje/ajuste off-
line de reglas, semántica e inferencia
Redes neuronales: generalmente para ajuste off-line de la
semántica y diseño on-line
Agrupamiento (clustering): generalmente para aprendizaje off-line
de la semántica o de relaciones difusas
10. 4. Técnicas de Diseño Automático
Computación Flexible (Soft Computing)
Redes
Lógica Neuronales
Difusa
SBRDs
Diseño
Diseño
SBRDs
Computación
Evolutiva
Bibliografía Recomendada
Básica:
A. Bárdossy y L. Dukstein. Fuzzy rule-based modeling with
application to geophysical, biological and engineering
systems. CRC Press, 1995.
L. Reznik. Fuzzy controllers. Newnes, 1998.
Complementaria:
S.S. Farinwata, D. Filev y R. Langari (Eds.). Fuzzy control.
Synthesis and Analysis. Wiley, 2000.
D. Driankov, H. Hellendoorn y M. Reinfrank. An introduction
to fuzzy control. Springer, 1995.