Upload
jcbenitezp
View
289
Download
1
Embed Size (px)
Citation preview
Ing. José C. Benítez P.
Inteligencia Artificial
y Sistemas Expertos
Sistemas de Control basados en Lógica Borrosa
Laboratorio:
� Objetivo
� Fundamento teórico: Los sistemas difusos.
� Laboratorio: Sistemas Difuso con MatLab.
� Conclusiones.
� Tarea.
Sistemas de Control basados en Lógica Difusa
Objetivos
� Revisar los conceptos de los sistemas basados en lógica
difusa comúnmente llamados sistemas difusos.
� Desarrollo de un ejemplo de control difuso mediante
MatLab.
� Fortalecer su competencia redactora del alumno mediante la
redacción del informe de laboratorio con el desarrollo y
preguntas del laboratorio.
Sistema difuso con Matlab
EJEMPLO: Modelar un SCbLB con Matlab:
Se desea implementar una lavadora con un sistema difuso. En tal
sentido se ha propuesto un sistema de control difuso con las
siguientes características:
- Entradas: Peso y Nivel de suciedad.
- Salida: Cantidad de Detergente.
--------------------------------------------------------------------------
Se define las Reglas Difusas para el nivel de detergente:
Sistema difuso con MatlabSe define las Reglas Difusas para el nivel de detergente:
Peso Suciedad
Cantidad de
detergente:
Sistema difuso con MatlabUsando el Toolbox de MatLab:
1. Ingrese al MatLab
2. Escriba Fuzzy en el Command Window
Figure 1: Interfaz Grafica de
Lógica Difusa para MatLab
Sistema difuso con MatlabUsando el Toolbox de MatLab:
3. Si desea Adicionar una entrada o
salida en el sistema,
seleccionamos Edit, Add variable.
Figure 2: Adicionar una entada al sistema difuso
Sistema difuso con MatlabUsando el Toolbox de MatLab:
4. Para nuestro sistema debemos
adicionar una entrada mas.
Figure 3: Sistema Difuso con 2 entradas.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
5. Procedemos a cambiar los nombres
de las variables de entrada. En la
figura 3 seleccionamos input1 y lo
cambiamos por Peso; seleccionamos
input2 y lo cambiamos por nivel de
suciedad. Finalmente seleccionamos
output1 por cantidad de detergente.
6. Para guardar el archivo seleccionamos
file� export� to file
Figure 4: Guardar archivo de trabajo
Sistema difuso con MatlabUsando el Toolbox de MatLab:
7. Guardamos el archivo con el nombre
lavadora. A continuación debemos
especificar las funciones de
pertenecía de los conjuntos .
8. Seleccionamos Edit � Membership
Funcions
Figure 5: Modificar los parámetros de las
funciones membership.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
9. En la figura 6 se muestra las
funciones de pertenencia para
cada uno de los conjuntos difusos.
De manera demostrativa se
realizara la implementación de la
primera variable Peso.
Figure 6: Funciones membership de la
variable Peso.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
10. Según datos del problema la
variable peso posee un rango de
[0-10], para obtener este rango
seleccionamos en el campo range
el intervalo de [0-10]. Además
seleccionamos Edit � Add
Custom MF �Enter para tener
cuatro funciones de pertenecía.
Figure 7: Adicionar las funciones
membership.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
11. En el campo MF name escribimos
mf4, para evitar confusiones. En el
siguiente paso cambiaremos todos los
nombres de acuerdo a nuestro
problema.
Figure 8: Cambio de nombre la función
membership adicionada.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
12. La variable peso posee cuatro funciones de pertencia como se describen a
continuación:
• Liviano: Función trapecio truncado. Constante de [1-2] y decreciente en
forma lineal de [2-3].
• Regular: Función triangular de [2-6] con un cenit en 4.
• Pesado: Función triangular de [4-8] con un cenit en 6.
• Muy pesado: Función trapecio truncado. Constante de [8-10] y creciente en
forma lineal de [7-8].
Sistema difuso con MatlabUsando el Toolbox de MatLab:
13. Para completar las cuatro funciones de partencia para la variable peso, ingresamos
al sistema los valores que se presentan en la siguiente tabla 1.
Tabla 1: Valores para las funciones de pertenencia de la variable Peso.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
14. Luego de completar las cuatro funciones de partencia se podrá visualizar la
siguiente pantalla tal como describe la figura 9.
Figure 9: Sistema Difuso con 2 entradas.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
15. De la misma manera la variable de entrada Nivel de suciedad y la variable de salida
Cantidad de Detergente debe ser llenado.
16. Para adicionar las reglas difusas seleccionamos Edit-�Rules.
Figure 10: Sistema Difuso con 2 entradas.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
17. Aparecerá la
siguiente
pantalla que se
muestra en la
siguiente figura
11.
Figure 11: Sistema Difuso con 2 entradas.
Sistema difuso con MatlabUsando el Toolbox de MatLab:
18. Una vez en la pantalla de la figura 11, se pueden editar reglas basándose en
reglas if then. Para adicionar una regla se debe seleccionar las opciones que
presentan las entradas y la salida e ingresar la regla deseada para finalmente
presionar Add rule.
19. De esta manera todas las reglas difusas deben se reingresadas al sistema.
20. Para analizar nuestro sistema difuso para diferentes valores de entrada
seleccionamos view�rules automáticamente se mostrara la salida del sistema
para diferentes entradas.
Figure 11: Sistema Difuso con 2 entradas.
Laboratorio
1. Implemente un sistema difuso para el control automático de frenado en un
automóvil. Considera las variables presión y radio como variables de entrada.
a. Diseñe sus reglas difusas.
b. Diseñe las funciones de pertenencia (tipos y rango).
c. Compruebe su sistema con el toolbox de fuzzy logic.
2. Implemente un sistema difuso para el control automático de un ventilador en
una sala de conferencias. Considera las variables temperaturas y número de
personas como variables de entrada.
a. Diseñe sus reglas difusas.
b. Diseñe las funciones de pertenencia (tipos y rango).
c. Compruebe su sistema con el toolbox de fuzzy logic.
3. Implemente un sistema difuso para el control automático de encendido de un
motor del discovery. Considera las variables de entradas que estime
pertinentes.
a. Diseñe sus reglas difusas.
b. Diseñe las funciones de pertenencia (tipos y rango).
c. Compruebe su sistema con el toolbox de fuzzy logic.
Informe de Laboratorio
� El Informe de Laboratorio es un documento gráfico en lo posible y es
redactado en Word con el desarrollo del laboratorio.
� Niveles de Informe:
� Primer nivel: Observaciones. Imágenes con comentarios cortos.
Redactar al ir desarrollando el laboratorio. (Requiere desarrollar el
laboratorio).
� Segundo nivel: Conclusiones. Redactar al terminar el
laboratorio.(Requiere haber desarrollado el laboratorio).
� Tercer Nivel: Recomendaciones. (Requiere lectura de otras
fuentes).
� Dentro de su Carpeta Personal del Dropbox crear una carpeta para el
laboratorio con el siguiente formato:
IAySE_PaternoM_Lab
� Adjuntar fuentes que le han ayudado en esta carpeta creada.
� Las fuentes deben conservar el nombre original de archivo y se debe
agregar _L al final.
� Presentar el Informe de Laboratorio en esta carpeta creada.
Laboratorio. Sistemas Difusos
Blog del curso:
utpiayse.blogspot.com