Logica Difusa
Logica Difusa
Logica Difusa
Tema:
Lógica difusa
Nombres y Apellidos:
Ciclo:
Docente:
Chincha – Perú
11-2018
LOGICA DIFUSA
1. Concepto
2. Funcionamiento
Se adapta mejor al mundo real en el que vivimos, e incluso puede comprender y funcionar con
nuestras expresiones, del tipo "hace mucho calor", "no es muy alto", "el ritmo del corazón está
un poco acelerado", etc.
Para cada conjunto difuso, existe asociada una función de pertenencia para sus elementos,
que indican en qué medida el elemento forma parte de ese conjunto difuso. Las formas de las
funciones de pertenencia más típicas son trapezoidal, lineal y curva.
Los métodos de inferencia para esta base de reglas deben ser simples, veloces y eficaces.
Los resultados de dichos métodos son un área final, fruto de un conjunto de áreas solapadas
entre sí, donde cada área es resultado de una regla de inferencia. Para escoger una salida
concreta a partir de tanta premisa difusa, el método más usado es el del centroide, en el que
la salida final será el centro de gravedad del área total resultante.
3. Aplicaciones
La lógica difusa se utiliza cuando la complejidad del proceso en cuestión es muy alta y no
existen modelos matemáticos precisos, para procesos altamente no lineales y cuando se
envuelven definiciones y conocimiento no estrictamente definido. En cambio, no es una buena
idea usarla cuando algún modelo matemático ya soluciona eficientemente el problema, cuando
los problemas son lineales o cuando no tienen solución. Esta técnica se ha empleado con
bastante éxito en la industria, principalmente en Japón, y cada vez se está usando en gran
multitud de campos. La primera vez que se usó de forma importante fue en el metro japonés,
con excelentes resultados.
Las reglas de las que dispone el motor de inferencia de un sistema difuso pueden ser
formuladas por expertos, o bien aprendidas por el propio sistema, haciendo uso en este caso
de Redes neuronales para fortalecer las futuras tomas de decisiones.
Los datos de entrada suelen ser recogidos por sensores, que miden las variables de entrada
de un sistema. El motor de inferencias se basa en chips difusos, que están aumentando
exponencialmente su capacidad de procesamiento de reglas año a año.
4. Ventajas y desventajas
Como principal ventaja, cabe destacar los excelentes resultados que brinda un sistema de
control basado en lógica difusa: ofrece salidas de una forma veloz y precisa, disminuyendo
así las transiciones de estados fundamentales en el entorno físico que controle. La capacidad
de adelantarse en el tiempo a los acontecimientos, estabilizando siempre el entorno físico
que controla. Como principal inconveniente cabe destacar la dificultad de elegir una correcta
función de pertenencia para los conjuntos difusos, ya que en ocasiones no es sencillo
especificar el efecto de los cuantificadores de nuestro lenguaje en dicha función. El hecho de
que cualquier función de pertenencia del sistema estuviese mal especificada, haría fallar, muy
probablemente, todo el sistema completo.
Ejemplo:
El problema de la propina: crea un modelo de lógica difusa para el siguiente sistema de reglas.
Lo primero que debes observar son los términos que se usan para describir la temperatura:
IF 50% fría OR 50% demasiado frío AND 100% templado THEN calentar
IF 50% AND 100% THEN calentar
Como puedes apreciar, una proposición en lógica difusa no siempre es 100% cierta, solo
lo es en cierto grado. Para este caso solo es verdad la proposición en 50%. Aquí es donde
uno se da cuenta que se necesita saber cuánto se debe calentar dada una proposición
hasta cierto grado cierta. Para ello se suele usar otra función de pertenencia para calentar,
pero se necesitar hacer la operación inversa, en vez de hacer difuso (fuzzy) se necesita
defuzzificar (defuzzification). De tal modo que dado cierto grado de pertenencia, se debe
obtener un valor nítido (crisp value) para saber exactamente a qué ritmo calentar.
Para ello hay varios métodos que quedan fuera de esta entrada, pero supóngase que si
las potencias de calentar son tres:
Baja
Media
Alta
Nuestro objetivo es usar Lógica Difusa para extraer un valor de adecuación para cada casa que
nos encontramos, y de esa forma poder comparar mejor las diversas opciones que hay a nuestro
alcance. De cada vivienda a evaluar obtenemos dos valores numéricos que corresponden al precio
y distancia a la que se encuentra. El proceso que se sigue es el siguiente:
Para cada regla, evaluar el antecedente de la regla sobre los datos de entrada, para ello, basta
aplicar el método del operador lógico que interviene en el antecedente sobre los valores borrosos
de los datos de entrada obtenidos en el apartado anterior.
Obtener la conclusión de la regla borrosa aplicada. Para ello, basta aplicar el operador asociado a
la implicación lógica sobre el resultado del antecedente, y considerar el conjunto difuso asociado
a la conclusión de la regla.
Agregar las conclusiones de todas las reglas consideradas, lo que produce un conjunto borroso,
aplicando la función de agregación seleccionada para agregar todas las reglas de nuestro sistema.
Debe tenerse en cuenta que aquí se obtiene un conjunto difuso, no un valor. Los operadores más
comunes de agregación son el máximo, la suma, o el equivalente al OR visto anteriormente.
Decodificación del conjunto agregado obtenido, aplicando el tipo de desfuzzyficación deseado, y
obteniendo un valor numérico que indica la adecuación de la vivienda concreta que estamos
evaluando. Para ello hay muchos métodos habituales (y ningún mecanismo para saber cuál es el
que más conviene), de los cuales la extensión de NetLogo implementa algunos de ellos (First of
Maxima, Last of Maxima, Middle of Maxima, Mean of Maxima, Centro de Gravedad).
En el ejemplo que estamos desarrollando, el código de NetLogo que resuelve este proceso es:
donde, tal y como muestra la siguiente figura, las funciones que implementan los operadores
lógicos, de implicación, agregación y desborrificación, se deciden por el usuario en la interfaz de
trabajo: