Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GUIA DE PRÁCTICA N° 3
SOFTWARE DE LOGICA DIFUSA
I. OBJETIVO GENERAL
➢ Aprender a utilizar la interfaz gráfica de usuario que proporciona el toolbox de lógica difusa de
Matlab.
➢ Interpretar las reglas de inferencia que intervienen en los sistemas a implementar.
➢ Utilizar operaciones con conjuntos difusos.
IV. PROCEDIMIENTO
1. Ingrese a la versión profesional de Matlab.
2. Digite >> fuzzy, lo cual hará que aparezca la figura 1.
8. Al seleccionar dicha opción se solicitará un nombre para el sistema difuso que se está
implementado, ver figura 5. Guarde el sistema con el nombre propina., con esto solo se han
definido los nombres de las entradas, salida y del sistema.
9. Basándose en la figura 6, despliegue la pantalla para editar parámetros de las entradas y salida.
Esta pantalla nos sirve para especificar la forma de las funciones de los conjuntos difusos.
10. Una vez se encuentre en la pantalla mostrada en la figura 7, seleccione la entrada llamada comida,
luego vaya al menú ,busque y seleccione la opción ADD MFS, la cual desplegará una pantalla
como lo muestra la figura 8.
11. En la figura 8, se debe escoger la función de pertenencia a usar para la fuzzificacion de la entrada
o salida seleccionada, en este caso, como estamos en la entrada comida, se pide seleccionar la
gaussmf y una cantidad de MFs, en este caso 3 serán suficientes. En la versión de matlab que se
tiene en el laboratorio, por definición aparecen tres funciones de transferencia y solo es necesario
seleccionarlas del gráfico y cambiar directamente la función en el selector con el nombre Type.
12. Se repite el paso 10 y 11 para la entrada servicio. Use una función trimf para servicio.
13. Se repite el paso 12 para la salida propina, también se selecciona la función de pertenencia trimf.
18. Seleccione la entrada Servicio, luego seleccione la gráfica que aparece a la derecha de la figura 7
la línea que se llama mf1 y cambie los valores mostrados en la tabla 2, hágalo de manera similar
para mf2 y mf3
19. Seleccione la salida propina, luego seleccione la gráfica que aparece a la derecha de la figura 7 la
línea que se llama mf1 y cambie los valores mostrados en la tabla 3, hágalo de manera similar
para mf2 y mf3.
20. Busque en el menú Edit o View la opción Edit rule o rule, la cual muestra una pantalla en la cual
se pueden editar las reglas de inferencia que controlarán el sistema, ver figura 9.
21. Una vez en la pantalla de la figura 9, se pueden editar reglas basándose en reglas if then. Para
definir una regla basta seleccionar delas opciones que presentan cada una de las entradas o salidas
para formular la regla deseada y luego simplemente presionar el botón Add rule. Defina ahora las
siguientes reglas.
• If Comida is Mala and Servicio is Malo then Propina is Mala.
• If Comida is Mala and Servicio is Regular then Propina is Mala.
• If Comida is Mala and Servicio is Excelente then Propina is Promedio.
• If Comida is Regular and Servicio is Malo then Propina is Mala..
• If Comida is Regular and Servicio is Regular then Propina is Promedio.
• If Comida is Regular and Servicio is Excelente then Propina is Promedio.
• If Comida is Deliciosa and Servicio is Malo then Propina is Promedio.
• If Comida is Deliciosa and Servicio is Regular then Propina is Buena.
• If Comida is Deliciosa and Servicio is Excelente then Propina is Buena.
22. Una vez definidas las reglas, falta ver el comportamiento de variaciones en la entrada y
funcionamiento de las reglas. Basándose en la figura 10, seleccionar de las opciones de menú view,
rules, o bien presionar ctrl-5. el cual mostrará de forma gráfica las reglas y su influencia en la salida.
23. Basándose en la figura 11, podemos ver que la primera columna de gráficas representa a la entrada
comida y cada una de las filas representa a las reglas definidas en el paso 19. De igual forma la
segunda columna representa a la entrada servicio y la tercera columna a la salida propina, la cual
esta expresada en porcentaje. Para ver el comportamiento del sistema basta con posicionar el cursor
del ratón en la línea roja que aparece en cualquiera de las entradas y desplazarla de izquierda a
derecha o viceversa.
V. CUESTIONARIO
1. Basándose en el sistema difuso creado, se pide cambiar las reglas de inferencia
Cambiar and por or para todas las reglas, por ejemplo: If Comida is Mala or Servicio is Malo then
Propina is Mala.
Cambiar reglas con NOT. Por ejemplo: If Comida is NOT Mala and Servicio is Malo then Propina
is Mala
Sufre el sistema algún cambio en su comportamiento? Porque?
2. Se pueden eliminar algunas reglas ya que pueden ser redundantes? Explique su respuesta.
3. Cuantas entradas y salidas se pueden poner en la interfaz gráfica de lógica difusa?
4. Explique que diferencias hay entre un sistema difuso entrenado con reglas Mamdani y uno
entrenado con reglas Sugeno.