Title: CONTROL BORROSO
1Daniel Pizarro Manuel Mazo y Marta Marrón
Departamento de Electrónica. Universidad de
Alcalá. Email pizarro_at_depeca.uah.es mazo_at_depeca.u
ah.es, marta_at_depeca.uah.es Estas transparencias
se han realizado contando con los apuntes
confeccionados sobre el tema por los profesores
Felipe Espinosa y Luis M. Bergasa
2Contenido
- Control borroso frente a control convencional.
- Fundamentos de lógica borrosa.
- Fundamentos de control borroso.
- Aspectos formales de lógica borrosa.
- Ajuste de controladores borrosos.
- Fuzzy toolbox de Matlab (introducción).
3Control borroso frente a control convencional
4Introducción al control borroso
- So far as the laws of mathematics refer to
reality, they are not certain. And so far as they
are certain, they do not refer to reality. - Albert Einstein
-
- As complexity rises, precise statements lose
meaning and meaningful statements lose precision - Lotfi A. Zadeh
5Introducción al control borroso
- Por qué? Dar solución al control de plantas de
difícil modelado matemático. - Cómo? Mediante el uso de la lógica borrosa.
- Qué permite la lógica borrosa? Proporciona una
metodología formal para aplicar el conocimiento
heurístico humano al control de procesos. - Algunos ejemplos cotidianos Conducir una
bicicleta, mantener una escoba en posición
vertical sobre un dedo, conducir un coche.
Controlador borroso
6Introducción al control borroso
- Algunas razones que justifican el control borroso
- Es conceptualmente fácil de entender.
- Es flexible y tolerante a la imprecisión de
datos. - Permite modelar funciones no lineales, aunque su
complejidad sea elevada. - Se describe a partir del conocimiento e intuición
de expertos. - Los controladores borrosos no son incompatibles
con los convencionales. - Qué se va a abordar en lo que sigue?
- El estudio del control borroso como alternativa
al control realimentado sincronizado, continuo o
periódicamente actualizado. - Control borroso y control convencional
- Control convencional está basado en el modelo
del proceso a controlar lineal y no lineal,
continuo y discreto, en el dominio del tiempo o
transformado. El lenguaje propio son ecuaciones
diferenciales/diferencias. - Control borroso parte del comportamiento del
proceso a controlar, donde la intuición pesa
tanto como la razón. El lenguaje propio son las
reglas heurísticas.
7Diseño de sistemas de control convencional
Modelado matemático del proceso Diseño del
controlador Evaluación diseño
8Diseño de sistemas de control convencional
- Modelado matemático
- Fundamental para obtener un buen comportamiento
del sistema realimentado. - Es importante conjugar, para obtener el modelo,
tanto el estudio físico como la identificación
utilizando datos experimentales. - Por muy bueno que sea el modelo nunca será un
fiel reflejo de la planta (pero en muchos casos
un modelo aproximado es suficiente). - Diseño del controlador
- A nivel de algoritmo estabilidad, rechazo a
perturbaciones externas, insensibilidad a
variaciones de parámetros de la planta, régimen
transitorio, régimen permanente. - A nivel de implementación simplificación
hardware, disponibilidad de sistemas
electrónicos, mantenimiento, fiabilidad, costes
de desarrollo, etc. - A nivel de soluciones si se trata de sistemas
lineales con modelo de función de transferencia
PIDs, red cero-polo si VVEE realimentación
del vector de estado con o sin observadores. Se
pueden usar técnicas óptimo, robusto y
adaptativo. - Evaluación del diseño
- Estudio matemático basado en el modelo de la
planta. - Simulación del sistema en lazo cerrado.
- Ensayo experimental.
9Diseño de sistemas de control borroso
- Elementos básicos de un controlador borroso
- Base de conocimiento (rule-base).
- Mecanismo de inferencia (inference mechanism).
- Interfaz de borrosificación (fuzzification).
- Interfaz de desborrosificación (defuzzification)
.
Controlador Borroso (Fuzzy Controller)
Entradas borrosificadas
Conclusiones borrosas
Reference Input r(t)
Mecanismo inferencia (Inference mechanism)
Inputs u(t)
Outputs y(t)
Inputs e(t)
Borrosificación (Fuzzification)
Desborrosificación (Defuzzification)
comparador
Base conocimientio (Rule-base)
10Fundamentos de lalógica borrosa
11Fundamentos de la lógica borrosa
- La lógica borrosa es una extensión de la lógica
booleana. - Se basa en la experiencia humana, y la
pertenencia a un grupo u otro es una cuestión de
grado de precisión. - En lógica borrosa cada afirmación es un problema
de grado de verdad. - Un conjunto borroso es un conjunto sin límites
abruptos ni claramente definidos. Pueden existir
elementos con un cierto grado de pertenencia. - El conjunto borroso está asociado a un valor
lingüístico, definido por una palabra, adjetivo o
etiqueta lingüística (muy joven, joven,
adulto, mayor, muy mayor, etc). - La certeza o certidumbre con que una variable x
se le puede asignar el valor lingüístico
(conjunto borroso) i se indica por una
función de pertenencia µ i (x).
12Fundamentos de la lógica borrosa
La lógica borrosa es un procedimiento de análisis
del razonamiento aproximado, que utiliza las
imprecisiones del mismo.
Incluye (a grandes rasgos)
Salidas borrosas Conjuntos Borrosos Funciones de
pertenencia
Entradas borrosas Conjuntos Borrosos Funciones de
pertenencia
Variables de salida
Variables de entrada
Inferencia (reglas)
Desborrosificador (Defuzzification)
Borrosificador (1) (Fuzzification)
- Se puede considerar que es el acto de obtener un
valor de entrada y encontrar el valor numérico de
la función de pertenencia que esta definida para
ese valor. Es otra forma de representación los
valores numéricos de las variables de entrada.
13Borrosificación
1.-Definir las variables de entrada y salida
temperatura, edad, estatura, velocidad,
fuerza, Definir el margen de variación (universo
de discurso) de cada variable Temperatura - 40 a
70 ºC, Edad 0 a 100 años, Estatura 0 a 200 cm.
2.- Definir todos los conjuntos borrosos y el
valor lingüístico, asociado a cada uno Variable
Temperatura Valores lingüísticos negativa_alta,
negativa_baja, cero, positiva_baja,
positiva_alta Variable Edad Valores
lingüísticos muy_joven, joven, maduro, viejo
3.- Para cada conjunto (valor lingüístico)
definir una función de pertenencia o inclusión
(membership function) que indique el grado en
que una variable x está incluida en los
conceptos representados por las variables
lingüísticas. µi (x) indica el grado en que x
está incluida en el conjunto i. A µi (x) se
le conoce como función de pertenencia de x en
i. El valor de pertenencia tiene que variar
entre 0 y 1.
14Borrosificación Caso de Lógica
clásicaEjemplo Edad de las personas
- Variable x edad. Universo de discurso 0 x
100 años. - Valores lingüísticos (conjuntos) MJ muy_joven,
JO joven, MAmaduro, VIviejo. - Definición de las funciones de pertenencia, µi
(x). - Con conjuntos booleanos µi(x) sólo puede tomar
dos valores 0 ó 1. - µi(x) 0 indica negación, µi(x) 1 indica
afirmación. - x edad 27 años µMJ(x) 0, µJO(x) 1,
µMA(x) 0, µVI(x) 0
15Borrosificación Caso de Lógica
borrosaEjemplo Edad de las personas
- Variable x edad. Universo de discurso 0 x
100 años. - Valores lingüísticos (conjuntos) MJ muy_joven,
JO joven, MAmaduro, VIviejo. - Definición de las funciones de pertenencia, µi
(x). - Al tratarse de conjuntos borrosos µi(x) puede
tomar cualquier valor entre 0 y 1. - x edad 27 años µMJ(x) 0.4, µJO(x) 0.6,
µMA(x) 0, µVI(x) 0
16Funciones de pertenencia
- La función de pertenencia puede ser una curva
arbitraria. - Dependiendo de la aplicación y del diseñador se
pueden elegir diferentes tipos de funciones de
pertenencia (membership function). Las más
frecuentes son triangular, trapezoidal,
gausiana.
17Inferencia Reglas borrosas
- Los conjuntos y operadores borrosos se pueden
considerar como los sujetos y los verbos de la
lógica borrosa. - Los conjuntos borrosos se combinan en reglas para
definir acciones como por ejemplo, si la
temperatura es alta entonces enfría mucho. - Para poder expresar algo útil es necesario hacer
frases completas. Las afirmaciones condicionales,
reglas if-then, son las que lo hacen posible. - La estructura general de una regla borrosa es
- If CONDICIONES then
ACTUACIONES - If x1 es F1 and x2 es F2 and x3
es F3 then u1 es G1 and u2 es G2 - condiciones antecedentes premisas es un
escalar comprendido entre 0 y 1 - actuaciones consecuencia conclusión
es un conjunto borroso
18Inferencia Reglas borrosas
- Las reglas pueden ser tipo SISO, SIMO, MISO,
MIMO - SISO If x es A1 then u es B1.
- SIMO If x es A1 then u1 es B1 and u2 es B2
- MISO If x es A1 and y es A2 then u es B1
- MIMO If x es A1 and y es A2 then u1 es B1 and
u2 es B2 - Las reglas SIMO y MIMO se pueden convertir en
SISO y MISO, respectivamente. - Ejemplo
- If x es A1 and y es A2 then u1 es B1 and u2 es
B2 - Es equivalente a
- If x es A1 and y es A2 then u1 es B1
- If x es A1 and y es A2 then u2 es B2
19Inferencia Operadores borrosos Caso de Lógica
clásica
- Sean dos conjuntos A y B, asociados a la variable
x. - Se definen tres funciones básicas
-
- Intersección (AND) min(A,B) µAnB(x)
minµA(x), µB(x) - Unión (OR) máx(A,B)
µA?B(x) maxµA(x), µB(x) -
- Complemento (NOT) µA(x) 1- µA(x)
AND OR NOT(A)
A B µA(x) µB(x) mín(A,B) µAnB(x) minµA(x), µB(x) máx(A,B) µA?B(x) máxµA(x), µB(x) µA(x) 1- µA(x)
0 0 0 1 1 0 1 1 0 0 0 1 0 1 1 1 1 1 0 0
20Inferencia Operadores borrosos Caso de Lógica
borrosa
- Sean dos conjuntos A y B, asociados a la variable
x. - Se definen tres funciones básicas intersección
(AND), unión (OR) y complemento - Intersección (AND) borrosa (norma triangular)
- Alternativa 1
- mín (A,B) µAnB(x) minµA(x), µB(x)
- Alternativa 2
- prod(A,B) µAnB(x) µA(x).µB(x)
- Unión (OR) borrosa (co-norma triangular)
- Alternativa 1
- máx(A,B) µA?B(x) maxµA(x), µB(x)
- Alternativa 2 (suma algebraica)
- probor(A,B) µA?B(x) µA(x)µB(x) -
µA(x).µB(x) - Función NOT µA(x) 1- µA(x)
A
B
probor(A, B)
21Inferencia
- Se entiende por inferencia borrosa la
interpretación de las reglas if-then, con el
objetivo de obtener las conclusiones de las
variables lingüísticas de salida a partir de los
valores actuales de las variables lingüísticas de
entrada. - Conlleva dos fases
- 1.- Matching o correspondencia Evalúa el grado
de certeza de la premisa para los valores
actuales de las variables de entrada, determina
la función de pertenencia de la premisa. - Si regla que se evalúa es la n el grado de
certeza se representa por µPremisa(n)
2.- Conclusiones (Inferencia) Establece las
conclusiones en función de las entradas actuales.
Asigna a cada variable de salida del consecuente
el conjunto borroso correspondiente modificado
en el grado especificado por µPremisa(n). La
función de pertenencia del conjunto modificado se
representa por µ(n)(u). Aquí n es la regla
evaluada y u es la variable de salida .
22Inferencia
- Cómo se obtiene el grado de certeza de una
premisa, µpremisa (n)? - Supongamos la regla (n)
- If x1 es F1 and x2 es
F2 and x3 es F3 then u1 es G1 - Evaluar para cada entra (x1, x2, ), en función
de su valor actual, la función de pertenencia
µF1(x1), µF2(x2), µF3(x3) certeza con que la
variable de entrada xi pertenece al conjunto
borroso Fi -
- Evaluar la función and, para obtener µpremisa
(n). Existen dos alternativas -
- Mínimo
- Producto
23Inferencia Ejemplo de inferencia
- Regla 1 If x es A and y es B then u es D
µpremisa(1) minµA(x) , µB(x) 0.4 tenemos
una certeza de 0.4 de que esta regla (regla 1) es
aplicable a la situación actual (valores
actuales)
24Inferencia
- Cómo se modifica el conjunto borroso de salida,
en el grado especificado por µPremisa(n)?. - Principio general La acción no puede tener un
nivel de certeza superior al que tiene la
premisa . - Llamando µaccion(n)(u1) el conjunto borroso de
salida de la acción u1, y µregla_n(u1) al
conjunto borroso de salida de la acción u1
modificado por µPremisa(n), las dos alternativas
más frecuentes son
Truncamiento (chop off the top) µregla_n(u)
mínµPremisa(n), µacción(n)(u)
Escalado (product) µregla_n(u)
µPremisa(n).µacción(n)(u)
25Inferencia
- Truncamiento (chop off the top)
Conjunto borroso de salida µacción (n) (u)
µPremisa (n)
- µregla_n(u) minµPremisa(n), µacción(n)(u)
Las áreas dan idea de certidumbre de la
conclusión
u
Conjunto borroso de salida µacción (n) (u)
µPremisa(n)
µregla_n(u) µPremisa(n).µacción(n)(u)
u
26Inferencia Ejemplo Control de frenado
- Control de frenado de un vehículo en función de
su velocidad y distancia al que le precede. - Variables de entrada x velocidad, y distancia
- Valores entradas de velocidad (conjuntos
borrosos) - Valores entradas de distancia
- Variable de salida u fuerza_sobre_ freno
- Valores de salida
27InferenciaEjemplo Control de frenado
Baja Media Alta
µalta(x)
muy_pequeña pequeña grande
µmuy_pequeña(y)
µpequeña(y)
µgrande(y)
0 25 50 75
y distancia (m)
Salidas nunca saturadas
Débil fuerte muy_fuerte
28InferenciaEjemplo Control de frenado
- Y dos reglas
- If x es baja and y muy_pequeña then u es fuerte
- If x es media and y muy_pequeña then u es
muy_fuerte
0 40 70 80 120
xVelocidad (Km/h)
29InferenciaEjemplo Control de frenado
µpremisa(1)minµBaja(x) , µmuy_pequeña(y) 0.2
x es baja and y
muy_pequeña Cuantificado con
Cuantificado con
µpremisa(1)minµmedia(x) , µmuy_pequeña(y) 0.4
x es media and
y muy_pequeña
µmuy_pequeña(y)
0.8
µmedia(x)
0.4
0 40 70 80 120 x
0 10 25 50 y
30InferenciaEjemplo Control de frenado
- If x es baja and y muy_pequeña
then u es fuerte
- If x es media and y
muy_pequeña then u es muy_fuerte
31InferenciaEjemplo Control de frenado
µPremisa(1) min µbaja(x), µmuy_pequeña(y) 0.2
If x es baja and y muy_pequeña then u es fuerte
µfuerte(u)
Implicación
µregla_1(u)
0.2
0 1 2 3
u
0 1 2 3 u
µPremisa(1) min µmedia(x), µmuy_pequeña(y) 0.4
If x es media and y muy_pequeña then u es
muy_fuerte
µmuy_fuerte(u)
Implicación
µregla_2(u)
0.4
u
0 1 2 3
4 u
0 1 2 3
4
32Inferencia Agregación de salida de reglas
- En general se requieren dos o más reglas de forma
que compitan unas con otras. - La salida de cada regla es un conjunto borroso
(modificado por la correspondiente premisa
µpremisa(n)). - La salida para un conjunto de reglas debe ser un
único número. - Cómo se agregan (mezclan) los conjuntos
borrosos, µregla(n)(u), que resultan de cada
regla para que la variable de salida sea un único
número? se agregan en un solo conjunto borroso y
a partir de este último se obtiene el valor de la
salida.
µrgla_1(u)
ucrisp
Desborrosificador
Agregación
µregla_2(u)
. . .
µregla_n(u)
33Inferencia Agregación de salida de reglas
Conclusión
Truncamiento
µPremisa(1) mín µA(x), µB(y)
Implicación
µC(u)
Premisa (1)
Concl.
µregla_1(u)
If x es A and y es B then u es C
u1 u
u1 u
µregla_1(u)mín µPremisa(1), µC (u)
Salida ucrisp
Agregación de reglas
u
u1 u2
µregla_2(u)mín µPremisa(2), µF (u)
Truncamiento
Conclusión
µPremisa(2) mín µD(x), µE(y)
µregla_2(u)
Implicación
µF(u)
Concl.
Premisa (2)
If x es D and y es E then u es F
u2 u
u2 u
34Inferencia Agregación de salida de reglas
Conclusión
Escalado
µPremisa(1) min µA(x), µB(y)
Implicación
µC(u)
Premisa (1)
Concl.
µregla_1(u)
If x es A and y es B then u es C
u1 u
u1 u
µregla_1(u)µPremisa(1). µC (u)
Salida ucrisp
Agregación de reglas
u
u1 u2
µregla_2(u)µPremisa(2).µF (u)
Escalado
Conclusión
µPremisa(2) min µD(x), µE(y)
µregla_2(u)
Implicación
µF(u)
Concl.
Premisa (2)
If x es D and y es E then u es F
u2 u
u2 u
35Desborrosificación
- La entrada para la desborrosificación es un
conjunto borroso, el que resulta de la
agregación, y la salida es un número (ucrisp). - Se puede entender como el proceso de
decodificación de la información borrosa
producida por los procesos de inferencia y
agregación. - De entre las diferentes alternativas de
desborrosificación, las dos más conocidas son - Centro de gravedad (COG) del área definida por el
conjunto borroso resultante de la agregación. - Centros ponderados (center-average).
- Existen otras alternativas de desborrosificación,
pero no existen argumentos para decidir cuál es
la mejor.
36Desborrosificación COG
- Se suele utilizar para el caso de truncamiento.
µregla_1
µregla_2
µregla_3
µregla_N
µregla_i
.
b1 b2 b3
bi bN
u
bi centro de las funciones de pertenencia
del conjunto para la regla i, µregla_i
área bajo la función de pertenencia
µ regla_i
Hay que asegurar que el denominador sea distinto
de cero
Recordad Para un trapecio de base w y altura
h, su área es
37Desborrosificación Centros ponderados
- Se suele utilizar para el caso de escalado
µpremisa(1)
µpremisa(N)
.
b1 b2 b3
bi bN
u
Para el cálculo de la función de pertenencia de
la premisa µpremisa(i) se puede utilizar el
mínimo o el producto
38Desborrosificación Ejemplos
COG
-20 -10 0 10 u(t),
(N)
Centros ponderados
-7.5