Capítulo II: Marco Teórico
2.2. Metodologías de Desarrollo de Software
2.2.1. Metodología Para Sistemas de Control Difuso “FUZZY”
Esta metodología es la metodología más utilizada en el desarrollo de sistemas de control difuso. Consta de las siguientes fases:
a) Análisis: Definir y comprender un problema determinado para conseguir, de forma clara y explícita, expresar: Los objetivos deseados, las restricciones y las características del comportamiento del sistema. Al utilizar la lógica difusa como solución a un problema, se debe seguir los siguientes pasos:
1. Definir los Objetivos, las Restricciones y el Comportamiento del Sistema.
2. Identificar las variables de Entrada y Salida:
Variables lingüísticas y sus etiquetas lingüísticas. 3. Definir procedimientos y criterios para la prueba y validación.
b) Diseño: Idear soluciones factibles, evaluarlas y elegir entre las alternativas planteadas.
Figura 19. Fases de Diseño
BIBLIOTECA
DE CIENCIAS
FÍSICAS
En la fase de diseño se deben seguir los siguientes pasos (fase siguiente a la de análisis):
4. Definir los conjuntos difusos de cada etiqueta lingüística.
5. Definir el marco de representación de la solución (representación del conocimiento, reglas...).
6. Definir el marco de los procedimientos empleados (Inferencia). 7. Especificar la forma requerida de la salida del sistema
(decodificación).
8. Ejecutar pruebas para validar el sistema.
9. Verificar si la solución es compatible con el paso 1:
Refinar el Diseño: Ir al paso 4.
Necesidad de Mejora: Ir al paso 1.
La etapa de diseño presenta dos etapas a su vez, las cuales son:
i. Adquisición del conocimiento:
a) Conocimiento de Sentido Común (Commonsense Knowledge):
Es conocimiento intuitivo, fácil y rápido de obtener y de estructurar.
- REGLAS para problemas relativamente pequeños y con pocas Variables: Cuantas más variables existan, más difícil será conseguir regla importante y transparente y más fácil será obtener protocolos de control incompletos o inconsistentes (con reglas conflictivas).
BIBLIOTECA
DE CIENCIAS
FÍSICAS
- REGLAS que cumplen, más o menos, con nuestra intuición sobre Cómo aplicar acciones de control: Son reglas generales de Comportamiento que deben cumplirse. En sistemas complejos (con retardo, por ejemplo) estas reglas son más difíciles de obtener.
b) Conocimiento a través de simulaciones interactivas con ordenador:
La simulación es un método potente y flexible de adquirir conocimiento.
- Probando distintas simulaciones y distintos protocolos de control, se va aprendiendo (comportamiento, valores...).
- Tras muchos experimentos se puede obtener conocimiento suficientemente refinado que se traducirá en reglas de control.
BIBLIOTECA
DE CIENCIAS
FÍSICAS
ii. Estructura de un Controlador difuso:
a) Estructura genérica de un Controlador Difuso (presentada por Lee, 1990):
Tiene 4 componentes principales (Driankov, Hellendoorn,Reinfrank, 1993; Pedrycz, 1993; Yager, Filev, 1994):
– Base de Conocimiento. – Sistema de Inferencia.
– Sistema de Codificación. – Sistema de Decodificación.
Figura 20. Estructura de un Controlador Difuso
b) Controlador Difuso Adaptativo: Son controladores que se reajustan automáticamente para adaptarse a nuevas características del proceso a controlar.
Componentes:
1. Monitor del Proceso: Encargado de detectar los cambios en las características del proceso. Puede ser:
Una medida del rendimiento que refleja la bondad de la actuación del controlador.
BIBLIOTECA
DE CIENCIAS
FÍSICAS
Un parámetro basado en el estado del proceso.
2. Mecanismo de Adaptación: Utiliza la información del Monitor del Proceso para actualizar los Parámetros del Controlador:
• Factor de escala de cada variable.
• Conjunto difuso de cada etiqueta lingüística.
• Reglas de la Base de Conocimiento.
Estos 3 parámetros son invariantes en un controlador no adaptativo.
Los auto organizativos pueden partir sin reglas para aprenderlas
• Factor de Escala (FE): Las entradas y salidas del controlador pueden escalarse variando los límites de su universo de discurso y proporcionando las etiquetas.
Normalmente las etiquetas se definen en el intervalo [–1,1] y luego se escala al intervalo deseado.
En el caso de variables de Entrada, lo que se hace esmultiplicar el valor de entradapor un valor de escala en el intervalo [0,1], para escalar la entrada desu intervalo real al intervalo [–1,1].
BIBLIOTECA
DE CIENCIAS
FÍSICAS
Figura 21. Rangos de intervalo de un Controlador Difuso
Ejemplo:
• Intervalo real de la entrada es [–200,200] se debería multiplicar el valor de entrada por 0.005 (1/200): El valor 100 se clasifica principalmente como PM, ya que 100·0.005 = 0.5.
• Si ahora escalamos a un intervalo el doble de grande, [–400,400] debemos multiplicar por 0.0025 (1/400): El valor 100 se clasificaahora principalmente como PS, ya que 100·0.0025 = 0.25.
• Modificación de los Conjuntos Difusos: Se trata de modificar la definición de las etiquetas lingüísticas.
Mientras que el cambio en el Factor de Escala consigue una alteración uniforme en todo el universo, con este tipo de cambio podemos aumentar la sensibilidad (ganancia) del controlador para valores de cierta zona del universo.
Ejemplo: Incrementar la sensibilidad del controlador en los valores cercanos al cero (valores centrales de universo de discurso):
BIBLIOTECA
DE CIENCIAS
FÍSICAS
Esta modificación debe hacerse con cuidado pues las definiciones de las etiquetas no deben ser arbitrarias y modificarlas demasiado puede suponer perder el significado lingüístico subyacente.
Se han utilizado algoritmos genéticos para la modificación de los conjuntos difusos (Herrera, Lozano, Verdegay, 1993).
Figura 22. Gráfico con Algoritmos Genéticos en Control Difuso
• Controladores Auto organizativos, Modificación de las Reglas de la Base de Conocimiento:
- Una regla puede no ser siempre aplicable, de la misma forma.
- A veces es preciso modificarla para adaptarse a la situación cambiante del sistema.
- En ocasiones, una solución a este problema consiste en añadir una nueva variable de entrada al controlador y añadir nuevas condiciones en el antecedente de algunas reglas, basadas en la nueva variable.
- Existen muchas formas de modificar una regla. Por ejemplo, modificar la etiqueta lingüística de alguna variable (del antecedente o del consecuente de la regla).
BIBLIOTECA
DE CIENCIAS
FÍSICAS
Ejemplo:
• SI Humedad es GRANDE, ENTONCES Apertura_Riego es POCO. Podría pasar a la siguiente regla (si, por ejemplo, es verano):
• SI Humedad es GRANDE, ENTONCES Apertura_Riego es MODERADA.
• Efecto Ventana (Windowing Effect): Cuando la salida de un sistema de control difuso está en cierto rango, entonces se cambia el banco de reglas para conseguir mayor especificidad.
- Normalmente la salida que se usa en este caso es una medida del error y/o de la variación del error.
• Así, si el error es suficientemente pequeño, se intenta minimizar aún más con otro conjunto de reglas distinto.
- Esto se puede aplicar sucesivamente en varias etapas, haciendo que cada etapa sea más fina y minuciosa: Control multiresolución
Figura 23. Variación del Error