SISTEMA DE INFERENCIA DIFUSA DE MAMDANI

MARIBEL JOHANA RODRIGUEZ CASTILLO CODIGO : 514020

SISTEMAS BASADOS EN EL CONOCIMIENTO II PROFESOR: PERVYS RENGIFO RENGIFO

FUNDACION UNIVERSITARIA KONRAD LORENZ Cra 9ª bis No. 62-43 Bogotá- Colombia, http://www.fukl.edu 2005 OBJETIVOS

1. Conocer la estructura básica y funcionamiento de un Sistema Basado en Reglas Difusas. 2. Clasificar los sistemas basados en reglas difusas en base a su estructura y a la estructura de regla difusa utilizada. 3. Conocer ventajas e inconvenientes del Sistema de Inferencia Difusa Mamdani 4. Conocer distintas opciones de diseño para la interfaz de fuzzificación. 5. Plantear un problema para luego implementarlo con el modelo de Mamdani.

¿QUÉ ES LA LÓGICA DIFUSA? La lógica difusa es una metodología que proporciona una manera simple y elegante de obtener una conclusión a partir de información de entrada vaga, ambigua, imprecisa, con ruido o incompleta. En general la lógica difusa imita como una persona toma decisiones basada en información con las características mencionadas. Una de las ventajas de la lógica difusa es la posibilidad de implementar sistemas basados en ella tanto en hardware como en software o en combinación de ambos. La lógica difusa es una técnica de la inteligencia computacional que permite trabajar con información con alto grado de imprecisión, en esto se diferencia de la lógica convencional que trabaja con información bien definida y precisa. Es una lógica multivaluada que permite valores intermedios para poder definir evaluaciones entre si/no, verdadero/falso, negro/blanco, caliente/frío, etc. El concepto de Lógica Difusa fue concebido por Lofti A. Zaded, profesor de la Universidad de California en Berkeley, quién inconforme con los conjuntos clásicos (crisp sets) que sólo permiten dos opciones, la pertenencia o no de un elemento a dicho conjunto, la presentó como una forma de procesar información permitiendo pertenencias parciales a unos conjuntos, que en contraposición a los clásicos los denominó Conjuntos Difusos (fuzzy sets). El concepto de conjunto difuso fue expuesto por Zadeh en un paper del año 1965, hoy clásico en la literatura de la lógica difusa, titulado "Fuzzy Sets" y que fue publicado en la revista Information and Control. El mismo Zadeh publica en 1971 el artículo, "Quantitative Fuzzy Semantics", en donde introduce los elementos formales que acabarían componiendo el cuerpo de la doctrina de la lógica difusa y sus aplicaciones tal como se conocen en la actualidad. Zadeh dice: "La lógica difusa trata de copiar la forma en que los humanos toman decisiones. Lo curioso es que, aunque baraja información imprecisa, esta lógica es en cierto modo muy precisa: se puede aparcar un coche en muy poco espacio sin darle al de atrás. Suena a paradoja, pero es así."

El profesor Zadeh menciona que la gente no requiere información numérica precisa del medio que le rodea para desarrollar tareas de control altamente adaptables, por ejemplo conducir un automóvil o caminar por una acera sin chocarse con los postes y las otras personas. Si los controladores convencionales, en esencia realimentados, se pudieran programar para aceptar entradas con ruido e imprecisas ellos podrían trabajar de una manera mas eficiente y quizás se podrían implementar mas fácilmente.

CONJUNTOS DIFUSOS El concepto clave para entender como trabaja la lógica difusa es el de conjunto difuso, se puede definir un conjunto difuso de la siguiente manera. Teniendo un posible rango de valores al cual llamaremos U, por ejemplo U=Rn, donde Rn es un espacio de n dimensiones, a U se le denominara Universo de Discurso. En U se tendrá un conjunto difuso de valores llamado F el cual es caracterizado por una función de pertenencia uf tal que uf:U->[0, 1], donde uf(u) representa el grado de pertenencia de un u que pertenece a U en el conjunto difuso F.

ESTRUCTURA BÁSICA DE UN SISTEMA BASADO EN REGLAS DIFUSAS Un Sistema Basado en Reglas Difusas (SBRD) está formado por:  Base de conocimiento Base de Reglas. Base de Datos.  Motor de inferencia Además en sistemas con entradas y/o salidas nítidas, se incluye un interfaz de fuzzificación y un interfaz de defuzzificación

En explicación a las gráficas anteriores tenemos:

ARQUITECTURA DETALLADA.

El interfaz de fuzzificación Para cada una de las entradas del sistema: 1. Adquirir los valores nítidos de las variables de entrada. 2. Trasladar los valores de las variables a los universos de discurso correspondientes. 3. En función del tipo de sistema difuso: • Convertir cada valor nítido en un conjunto difuso con grado de pertenencia igual a 1 para ese valor y 0 para el resto (fuzzy singleton) o • hacer corresponder a cada valor nítido el término lingüístico más adecuado, o • calcular el grado de pertenencia a cada uno de los conjuntos difusos utilizados para dicha variable lingüística.

El interfaz de fuzzificación Algunas posibilidades: • El valor nítido se convierte en un conjunto difuso tipo singleton.  Es la opción más sencilla y la más utilizada.  Adecuado cuando la medición de las variables de estado es fiable.

• Se genera un conjunto difuso con centro el valor nítido y un soporte acorde con la incertidumbre de la medición.

La Base de Conocimiento Está formada por la Base de Reglas y la Base de Datos. Parámetros de diseño implicados: • Elección de las variables de estado del proceso y de control del mismo. • Elección del conjunto de términos lingüísticos para las variables de estado y de control. • Elección de la estructura del antecedente y consecuente de las reglas. • Derivación del conjunto de reglas.

Formas de obtención de la base de conocimiento: 1. A través de experiencia experta, conocimiento de ingeniería de control o acciones de un operador de control experimentado. • Experto capaz de describir de forma lingüística sus reglas de decisión (factores de escala, semántica de los conjuntos difusos, operadores implicados, etc.). • A partir de un cuestionario realizado al experto. • Información extraída a partir de la observación de las acciones de control de un operador. 2. Obtención basada en un modelo difuso. 3. Obtención basada en aprendizaje automático (métodos ad hoc, computación evolutiva, redes neuronales , clustering, etc. ).

Base de Datos • Proporciona la información necesaria para el funcionamiento del módulo de fuzzificación, de defuzzificación y de la Base de Reglas.

TIPOS DE SISTEMAS BASADOS EN REGLAS DIFUSAS En función del tipo de regla difusa que utilicen se puede distinguir:  SBRDs tipo Mamdani SI X1 es Alto y X2 es Bajo ENTONCES Y es Alto  SBRDs tipo TSK (Takagi, Sugeno y Kang) SI X1 es Alto y X2 es Bajo ENTONCES Y=f(X1,X2) No necesitan interfaz de defuzzificación El motor de inferencia funciona de distinta forma

VENTAJAS Y DESVENTAJAS SBRD TIPO MADANI Ventajas:  Facilidad para la derivación de reglas  Interpretabilidad de las reglas difusas  Fueron propuestos antes y se han utilizado con más frecuencia Desventajas:  .No garantizan la continuidad de la superficie de salida  .Menor eficiencia computacional

PRACTICA 1 MAMDANI APLICADA A LA ALTURA DE LAS PERSONAS

Supongamos que se desea representar con conjuntos difusos la variable altura de una persona, en este caso el universo de discurso será el rango de posibles valores de la altura que tenga un persona adulta, se escogerá un rango entre 140cm y 200cm, valores por fuera de este rango son posibles pero son muy escasos.

El universo de discurso U = [140, 200], para denominar los conjuntos difusos se suelen trabajar con etiquetas lingüísticas similares a las que se usan de manera coloquial, por ejemplo en la vida diaria decimos que una persona es Muy Baja (MB), Baja (B), Mediana (M), Alta (Alta) y Muy Alta (MA).

ETIQUETA MB B M MA A

RANGO(MIN, MAX) 140 - 160 160 - 170 170 - 180 180 - 190 190 - 200

Si en el ejemplo anterior se desea trabajar con conjuntos clásicos (crisp) se tienen tres opciones: alguien Alto (A), Medio (A) Bajo (B). Se supondrá que alguien Alto si mide mas de 170cm en caso contrario es bajo

Regla 1: Si X es bajo entonces Y es alto Regla 2: Si X es medio entonces Y es medio
Entra da Difus a Salida Difus a En V

Fuzzifica
X En

Mecanism o de Inferencia

Defuzzifica
Y En

Sistema Difuso Mamdani, Procesamiento General En un sistema difuso tipo Mamdani se distinguen las siguientes partes: * Fuzzificador La entrada de un sistema de lógica difusa tipo Mamdani normalmente es un valor numérico proveniente, por ejemplo, de un sensor; para que este valor pueda ser procesado por el sistema difuso se hace necesario convertirlo a un "lenguaje" que el mecanismo de inferencia pueda procesar. Esta es la función del fuzzificador, que toma los valores numéricos provenientes del exterior y los convierte en valores "difusos" que pueden ser procesados por el mecanismo de inferencia. Estos valores difusos son los niveles de pertenencia de los valores de entrada a los diferentes conjuntos difusos en los cuales se ha dividido el universo de discurso de las diferentes variables de entrada al sistema. * Mecanismo de inferencia difusa Teniendo los diferentes niveles de pertenencia arrojados por el fuzzificador, los mismos deben ser procesados para generar una salida difusa. La tarea del sistema de inferencia es tomar los niveles de pertenencia y apoyado en la base de reglas generar la salida del sistema difuso. * Base de Reglas Difusas La base de reglas es la manera que tiene el sistema difuso de guardar el conocimiento lingüístico que le permiten resolver el problema para el cual ha sido diseñado. Estas reglas son del tipo IF-THEN. Una regla de la base de reglas o base de conocimiento tiene dos partes, el antecedente y la conclusión como se observa en la siguiente figura:

Al transcribirlo en Matlab obtenemos: COMPILACION EN MATLAB Inicialmente ingresamos al modelo difuso en matlab mediante la función fuzzy : Fuzzy Modeling: Procedimiento, o conjunto de pasos a seguir para modelar un sistema difuso que modele el comportamiento de un sistema real. Mediante el modelado difuso, haciendo uso de las reglas difusas podemos incorporar conocimiento experto al sistema de manera sencilla, y podemos usar técnicas convencionales para el aprendizaje de las reglas.

Ingresamos al modelo de MAMDANI

Fusificamos la variable ALTURA:

Así mismo fusificamos la salida:

Ingresamos las reglas del modelo

REGLAS DEL MODELO
SI X X X X X X MUY_BAJO BAJO MEDIO ALTO MUY_ALTO ENTONCE S Entonces Entonces Entonces Entonces Entonces Y ALTO ALTO MEDIO BAJO BAJO

Podemos ver el comportamiento de las reglas (5 entradas y 3 salidas):

Hace la suma de todas y calcula el centro geometrico en este caso 170

Sucede exactamente lo que detallamos mediante las reglas.

PRACTICA 2 MAMDANI PARA EL CONTROLADOR DIFUSO DE UNA ASPIRADORA Objetivo: Regular la fuerza de aspiración Variables de entrada Cantidad de suciedad 1-100:  muy sucio  sucio
CANTIDAD DE SUCIEDAD

µ
Limpio Casi Limpio

Algo Sucio

Sucio

Muy Sucio

0

15

30

45

60

75

100

 algo sucio  casi limpio  limpio

TIPO DE SUPERFICIE

Tipo de superficie 1-100:  madera  caucho  alfombra

µ
Madera Caucho Alfombra

0

25

50

75

100

Variable de control
VARIABLE DE CONTROL FUERZA

Fuerza:  muy fuerte  fuerte  normal  débil  muy débil

µ

Muy Debil

Debil

Normal

S Fuerte

Muy Fuerte

0

15

30

45

60

75

100

REGLAS DEL MODELO

SI SI SI SI SI SI SI SI SI SI SI SI SI SI SI SI

CATIDAD DE SUCIEDAD LIMPIO LIMPIO LIMPIO CASI LIMPIO CASI LIMPIO CASI LIMPIO ALGO SUCIO ALGO SUCIO ALGO SUCIO SUCIO SUCIO SUCIO MUY SUCIO MUY SUCIO MUY SUCIO

Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y

TIPO DE SUPERFICI E MADERA CAUCHO ALFOMBRA MADERA CAUCHO ALFOMBRA MADERA CAUCHO ALFOMBRA MADERA CAUCHO ALFOMBRA MADERA CAUCHO ALFOMBRA

ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES ENTONCES

TIEMPO DE LAVADO MUY DEBIL MUY DEBIL DEBIL MUY DEBIL DEBIL NORMAL DEBIL NORMAL NORMAL NORMAL FUERTE FUERTE FUERTE MUY FUERTE MUY FUERTE

Fusificamos las variables:

Insertamos las reglas a Matlab:

Esta la vista de reglas insertadas:

Hace la suma de todas y calcula el centro geométrico en este caso 50

Ingresamos 30 entradas y obtenemos 15 respuestas. Así mismo si yo le cambiase como en este caso las entradas [70(cantidad suciedad) 25(tipo de superficie)] las gráficas me muestran los nuevos resultados.

Superfice de interpolación del sistema.

CONCLUSIONES

El documento presenta de manera muy detallada el proceso de modelado difuso Mamdani en Matlab, se mencionan en el orden correcto las tareas a realizar para modelar un sistema difuso. Con la elaboración de este trabajo se logró el objetivo de entender con más precisión el funcionamiento del Modelo Difuso Mamdani. Los sistemas borrosos son estables y fácilmente ajustables y pueden ser validados. Es más rápido y más fácil crear sistemas borrosos y construir un sistema borroso que él debe crear sistemas basados en el conocimiento convencionales, puesto que la lógica confusa maneja todos los grados de libertad que intervienen. Los sistemas borrosos no son Redes Neuronales. Un sistema borroso procura encontrar la intersección, la unión o el complemento de las variables borrosas del control. Mientras que esto es algo análogo a las redes neuronales y a la programación lineal, los sistemas borrosos se acercan a estos problemas de forma diferente.

BIBLIOGRAFÍA Este trabajo esta basado en información de las siguientes pàginas.
www.it.uc3m.es/jvillena/irc/estudios/Logica_Difusa.pdf -

http://www.cienciasmisticas.com.ar/electronica/teoria/fuzzy/index.php http://wwwdi.ujaen.es/asignaturas/cl/tema3_cl.pdf

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.