SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
INTELIGENCIA ARTIFICIAL
                    Trabajo Práctico nº 3

                  Lógica Fuzzy
            Sistema de Refrigeración


             [ºC]




     Profesores:

                    Ing. Mario Figueroa
                    Ing. Pablo Rovarini

     Alumnos:

                    José Daniel Muccela


Comisión: 5 k 2
Año 2008




              Facultad Regional Tucumán
           Universidad Tecnológica Nacional
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


                                TP Nº3 – Controlador Fuzzy

Problema:

        Deberá elaborar un Sistema Experto Fuzzy para controlar un Sistema de
Refrigeración de una sala de conferencias. Los parámetros de medición son
Temperatura y Humedad. La variable de salida es la Velocidad del Ventilador.
        Para “Temperatura” deberá considerar 5 Term-Set.
        Para “Humedad” deberá considerar 5 Term-Set.
        Para la variable de salida “Velocidad del Ventilador” deberá considerar 5
Term-Set.
        Usted deberá indicar los valores de referencias de Temperatura (ºC),
Humedad (%) y Velocidad de Ventilación (RPM).
        Para su sistema puede usar Matlab, C++, etc.
        Deberá presentar su trabajo en carpeta mas el CD con el ejecutable.




                                                                                1
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


                                                 Desarrollo

Controlador Fuzzy para Sistema de Refrigeración

      Se necesitan 3 variables que son los parámetros a considerar para el
desarrollo del modelo.
      Estas variables son:
               T (Temperatura)
               H (Humedad)
               V (Velocidad del Ventilador)

        Las variables de entrada al sistema son Temperatura y Humedad.
        La variable de salida es la Velocidad.


                     T (ºC)                Sistema Experto
                                                 Fuzzy             V (RPM)
                                              Sistema de
                     H (%)
                                            Refrigeración




        Definimos los Term-Set para cada variable interviniente en el problema.

Term Set para Temperatura:

                        Muy Baja – Baja – Media – Alta – Muy Alta




                                                                              [ºC]



Valores de Referencias:

Muy Baja= [0 7]

Baja= [5 15]

Media= [14 22]

Alta= [20 32]

Muy Alta= [28 +40]

                                                                                  2
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


Term Set para Humedad:

                                       Baja – Media – Alta




                                                                                   [%]



Valores de Referencias:

Baja= [0 20]

Media= [10 70]

Alta= [60 +100]




Term Set para Velocidad del Ventilador:

                  Muy Lenta – Lenta – Media – Rápida – Muy Rápida




                                                                           [RPM]




Valores de Referencias:

Muy Lenta= [0 500]

Lenta= [400 1600]

                                                                                         3
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel



Media= [1400 2200]

Rápida= [2000 3200]

Muy Rápida= [3000 +3800]



       Una vez definidos los Term-Set de cada variable procedemos a armar
una tabla donde a partir de las variables de entrada (T y H) y sus respectivas
variables lingüísticas encontraremos los valores de salida para la variable V.

                                       T
                                   H            MB        B   M       A       MA

                                   B                          ML      L       M

                                   M                          M       R       R

                                   A                          R      MR       MR


Donde:

T:Temperatura     MB: Muy Baja             B: Baja    M: Media      A: Alta       MA: Muy Alta

H: Humedad      B: Baja      M: Media           A: Alta

ML: Muy Lenta     L: Lenta     M:Media            R: Rápida       MR:Muy Rápida


       A partir de esta tabla y de la intersección de los estados de las variables,
encontramos las reglas que se aplicarán para el funcionamiento del sistema de
control. Las mismas están marcadas en letra roja. Estas reglas se
corresponden con la variable de salida Velocidad del Ventilador.
       Las celdas rellenas son casos que pueden no presentarse o rara vez
pueden suceder.
       Se encontraron 9 (nueve) reglas y 6 (seis) casos que no se consideran.

Deducción de las reglas que se aplicarán:

                Nº Regla                                Regla
                    1         IF   T       IS   M AND H IS B THEN V IS ML
                    2         IF   T       IS   A AND H IS B THEN V IS L
                    3         IF   T       IS   MA AND H IS B THEN V IS M
                    4         IF   T       IS   M AND H IS M THEN V IS M
                    5         IF   T       IS   A AND H IS M THEN V IS R
                    6         IF   T       IS   MA AND H IS M THEN V IS R
                    7         IF   T       IS   M AND H IS A THEN V IS R
                    8         IF   T       IS   A AND H IS A THEN V IS MR
                    9         IF   T       IS   MA AND H IS A THEN V IS MR




                                                                                                 4
                                                UTN           FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


Desarrollo del modelo a través del soft:

       El Software que utilizaremos para el desarrollo del modelo propuesto es
el Matlab Versión 7 - R14.

      Primeramente llamamos a la herramienta Fuzzy (Fuzzy Logic Toolbox)
del Matlab a través de la ventana de comandos escribiendo fuzzy.




     Al abrirse creamos un nuevo proyecto FIS y elegimos el método que se
empleará para su resolución. Por defecto lo crea con el método Mandani.




       Una vez hecho esto se accede a la ventana donde se comienza a
trabajar con el sistema.




                                                                            Cambiar
                                                                           nombre de
                                                                            variable




       En esta ventana Ingresamos las variables de entrada (amarillo) y la
variable de salida (celeste)

                                                                                       5
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


       Podemos ir agregando variables a nuestro modelo a través de la
siguiente ventana. En ella seleccionamos si queremos una variable de entrada
o de salida.




     Especificamos el nombre de las variables de entrada (amarillo)
Temperatura y Humedad; y la variable de salida (celeste) Velocidad.

        El modelo queda como se muestra a continuación.




       Antes de seguir trabajando guardamos el modelo a través del menú
File -> Export. Guardamos a Disco para poder recuperar nuestro trabajo
posteriormente.




                                                                           6
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


     Ahora debemos definir los Term-Set (las funciones de pertenencia) para
cada variable. Hacemos doble clic en el cuadro amarillo del modelo que
creamos. Nos lleva a la siguiente ventana.




       En esta ventana, cargamos los Term-Set correspondientes a la
Temperatura. El nombre del mismo lo colocamos en el cuadro Name que se
encuentra a la derecha. En el cuadro Params elegimos el rango numérico del
Term-Set [valor_lateral_derecho valor_central valor_lateral_izquierdo]. A la
izquierda de la ventana colocamos el rango para todos los Term-Set que
vamos a crear. En este caso de 0 a 40 grados centígrados.
       Para agregar un nuevo Term-Set a la variable vamos al menú Edit ->
Add Custom MF…




        De la misma manera creamos los Term-Set para las otras variables.

     A continuación se muestra la carga de los Term-Set para la variable
Humedad.




                                                                            7
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel




      A continuación se muestra la carga de los Term-Set para la variable
Velocidad.




       Luego procedemos a la carga de las reglas que se usarán para nuestro
modelo.
       La ventana que se muestra a continuación se accede a través de doble
clic sobre la región blanca del modelo que creamos (AireAcondiciondado
(Mandani)) o bien a través del menú Edit -> Rules…




                                                                           8
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel




        En esta ventana sólo seleccionamos de las listas de la parte inferior de
la pantalla, los estados para cada variable (antecedentes) y el estado de la
variable de salida correspondiente (consecuente), elegimos el modo del
operador booleano (And en nuestro caso) y a continuación agregamos la regla
al listado superior con Add rule. (Para lograr esto primeramente tendríamos que
haber cargado los Term-Set de las variables de entrada y de salida) Y así
cargamos todas las reglas. Una vez concluido cerramos la ventana.

     Ahora nos queda probar y visualizar los resultados del modelo que
creamos.

       Podemos ver gráficamente como trabaja el sistema a través de las
reglas creadas ingresando al menú View -> Rules




        Nos muestra la siguiente ventana:




                                                                               9
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel




       En ella podemos ver los números correspondientes a las reglas y las tres
variables que intervienen en el problema.

       En el cuadro Input cargamos los valores para los cuales deseamos
probar el funcionamiento del sistema, esto es, el valor numérico para la
Temperatura y la Humedad. De acuerdo a los valores que se inserten el
resultado podrá visualizarse en la última columna correspondiente a la variable
Velocidad. En ella se ve el valor en RPM que toma el sistema cuando tiene una
determinada temperatura y humedad.
       Los datos de entrada son procesados para calcular el grado de
membresía que tendrán dentro del controlador.
       El dispositivo de inferencia junto con la base de conocimientos realizan
la toma de decisiones y de acuerdo a esto actúa el sistema. El método de
inferencia se basa en el grado de pertenencia de los datos de entrada en los
conjuntos difusos de los espacios correspondientes a cada uno; esto sirve para
tomar una decisión en el espacio de salida. Para llevar a cabo el proceso de
inferencia se usan distintos métodos (mínimo-máximo, máximo-producto, etc.).

       Dentro del controlador hay una parte que es el defuzificador, que es
quien realiza el procesado final de los datos, con el fin de adecuar los valores
difusos obtenidos de la inferencia en valores no difusos útiles para el proceso
que queremos controlar (en esta caso nuestro sistema de refrigeración). Para
lograr esto el sistema emplea el método del centroide o centro de área que
consiste en calcular el centro de gravedad de una figura, a partir del polígono
formado por el proceso de inferencia.

      También podemos visualizar gráficamente la superficie que se forma
como resultado del modelo planteado. Esto se logra a partir del menú View ->
Surface.




                                                                              10
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel




        Nos muestra la siguiente ventana:




       Este gráfico muestra la superficie que se forma como consecuencia de la
intersección de los valores que van tomando las variables del sistema.
       Cuanto menor sea la temperatura y la humedad vemos que el color del
gráfico se torna azul. A medida que aumentan dichas condiciones el gráfico se
torna color amarillo.
       También vemos claramente cuando la temperatura y la humedad toman
el máximo valor; en esta caso la velocidad del ventilador también toma el
máximo valor (parte superior del gráfico).


Probando el Sistema de Control:

        Como vimos anteriormente, en esta ventana podemos probar el
funcionamiento del sistema creado.
        La línea roja que atraviesa el conjunto de reglas (9) para la variable
temperatura puede desplazarse con el mouse hacia izquierda o derecha
(disminuyendo o aumentando la temperatura) para especificar una temperatura
al sistema. Lo mismo puede hacerse para la variable humedad. El resultado de
estas acciones puede verse sobre la tercera columna, la que corresponde a la
velocidad del ventilador. Aquí se muestra en RPM (revoluciones por minuto) la
velocidad que tomaría el ventilador en base a la temperatura y humedad
establecidas en el ambiente de la sala.
                                                                            11
                                         UTN         FRT
Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel


       Los valores para las variables de entrada también pueden ingresarse a
través del cuadro de texto “Input” que se encuentra al pie de la ventana.

      Para el caso que se muestra a continuación fijamos la temperatura en
16 ºC y una humedad de 41,6%. Como resultado se obtiene una velocidad de
1800 RPM.




   Desplazar
    con el
    mouse




       A continuación puede verse como el sistema genera y dibuja la
superficie resultante. En este gráfico se ve la disposición de las variables de
entrada y la variable de salida.

       Se puede ver que para una intersección del plano conformado por la
temperatura y la humedad (ejes x e y), la variable Velocidad toma un
determinado valor en su respectivo eje (z). Por ejemplo para el punto formado
por una temperatura de 40 ºC y una humedad del 100%, la velocidad del
ventilador es 3800 RPM.
                                                                           T = 40 ºC
                                                                           H = 100 %
                                                                           V = 3800 RPM




                                                                                          12
                                         UTN         FRT

Contenu connexe

Tendances

Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
aryesisgomez
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
marigelcontreras
 
Universidad tecnica particular de loja
Universidad tecnica particular de lojaUniversidad tecnica particular de loja
Universidad tecnica particular de loja
Ronnie Campoverde
 

Tendances (20)

Manual derive
Manual deriveManual derive
Manual derive
 
P seint
P seintP seint
P seint
 
Tutorial p se int
Tutorial p se intTutorial p se int
Tutorial p se int
 
manual dfd
manual dfdmanual dfd
manual dfd
 
Matlab1
Matlab1Matlab1
Matlab1
 
Yy
YyYy
Yy
 
Trabajo de computacion
Trabajo de computacionTrabajo de computacion
Trabajo de computacion
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
 
Derive 2 (op-basicas)
Derive 2 (op-basicas)Derive 2 (op-basicas)
Derive 2 (op-basicas)
 
Matlab teoria
Matlab teoriaMatlab teoria
Matlab teoria
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
Manual de Uso PseInt
Manual de Uso PseIntManual de Uso PseInt
Manual de Uso PseInt
 
Pseint
PseintPseint
Pseint
 
Universidad tecnica particular de loja
Universidad tecnica particular de lojaUniversidad tecnica particular de loja
Universidad tecnica particular de loja
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
Manual de PSeInt
Manual de PSeIntManual de PSeInt
Manual de PSeInt
 
Introduccio al Java
Introduccio al JavaIntroduccio al Java
Introduccio al Java
 
1 Entorno
1 Entorno1 Entorno
1 Entorno
 
Sophia leonzio tarea4
Sophia leonzio tarea4Sophia leonzio tarea4
Sophia leonzio tarea4
 

Similaire à Logica Fuzzy

LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdfLABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
Karen Ventura Calla
 
Algoritmos y clase
Algoritmos y claseAlgoritmos y clase
Algoritmos y clase
daosma
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
Ana Ruth G H
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clase
tammyrodriguez2010
 

Similaire à Logica Fuzzy (20)

Logica fuzzy
Logica fuzzyLogica fuzzy
Logica fuzzy
 
Tutorial en español de Fuzzylite
Tutorial en español de FuzzyliteTutorial en español de Fuzzylite
Tutorial en español de Fuzzylite
 
Algoritmos Genéticos
Algoritmos GenéticosAlgoritmos Genéticos
Algoritmos Genéticos
 
LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdfLABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
LABORATORIO N°7-MODELO DIFUSO MANDANI-PDF.pdf
 
Algoritmos genéticos
Algoritmos genéticosAlgoritmos genéticos
Algoritmos genéticos
 
1_Control_Fuzzy.ppt
1_Control_Fuzzy.ppt1_Control_Fuzzy.ppt
1_Control_Fuzzy.ppt
 
Ejercicios+fuzzy
Ejercicios+fuzzyEjercicios+fuzzy
Ejercicios+fuzzy
 
Matematica computacional
Matematica computacionalMatematica computacional
Matematica computacional
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad Algoritmica
 
Mini manual para r commander
Mini manual para r commanderMini manual para r commander
Mini manual para r commander
 
Prueba de hipótesis y R - Commander
Prueba de hipótesis y R - CommanderPrueba de hipótesis y R - Commander
Prueba de hipótesis y R - Commander
 
Guía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en CGuía de Algoritmo y Programación en C
Guía de Algoritmo y Programación en C
 
Algoritmos y clase
Algoritmos y claseAlgoritmos y clase
Algoritmos y clase
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
dqwrwer
dqwrwerdqwrwer
dqwrwer
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clase
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Control Multifrecuencia
Control MultifrecuenciaControl Multifrecuencia
Control Multifrecuencia
 

Plus de Daniel Muccela

Plus de Daniel Muccela (11)

Parallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzadosParallel Python sistemas operativos avanzados
Parallel Python sistemas operativos avanzados
 
Scrum en sistema grh tuc
Scrum en sistema grh tucScrum en sistema grh tuc
Scrum en sistema grh tuc
 
Encriptacion
EncriptacionEncriptacion
Encriptacion
 
Proyecto de fabricación de envases de madera
Proyecto de fabricación de envases de maderaProyecto de fabricación de envases de madera
Proyecto de fabricación de envases de madera
 
Sistema de vigilancia automatizado t5
Sistema de vigilancia automatizado t5Sistema de vigilancia automatizado t5
Sistema de vigilancia automatizado t5
 
Sistema de vigilancia automatizado t3
Sistema de vigilancia automatizado t3Sistema de vigilancia automatizado t3
Sistema de vigilancia automatizado t3
 
Sistema backup online
Sistema backup onlineSistema backup online
Sistema backup online
 
Redes Neuronales
Redes NeuronalesRedes Neuronales
Redes Neuronales
 
Sistemas Expertos
Sistemas ExpertosSistemas Expertos
Sistemas Expertos
 
Turing-Searle
Turing-SearleTuring-Searle
Turing-Searle
 
Inteligencia Artificial - Inversiones
Inteligencia Artificial - InversionesInteligencia Artificial - Inversiones
Inteligencia Artificial - Inversiones
 

Dernier

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Dernier (10)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 

Logica Fuzzy

  • 1. INTELIGENCIA ARTIFICIAL Trabajo Práctico nº 3 Lógica Fuzzy Sistema de Refrigeración [ºC] Profesores: Ing. Mario Figueroa Ing. Pablo Rovarini Alumnos: José Daniel Muccela Comisión: 5 k 2 Año 2008 Facultad Regional Tucumán Universidad Tecnológica Nacional
  • 2. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel TP Nº3 – Controlador Fuzzy Problema: Deberá elaborar un Sistema Experto Fuzzy para controlar un Sistema de Refrigeración de una sala de conferencias. Los parámetros de medición son Temperatura y Humedad. La variable de salida es la Velocidad del Ventilador. Para “Temperatura” deberá considerar 5 Term-Set. Para “Humedad” deberá considerar 5 Term-Set. Para la variable de salida “Velocidad del Ventilador” deberá considerar 5 Term-Set. Usted deberá indicar los valores de referencias de Temperatura (ºC), Humedad (%) y Velocidad de Ventilación (RPM). Para su sistema puede usar Matlab, C++, etc. Deberá presentar su trabajo en carpeta mas el CD con el ejecutable. 1 UTN FRT
  • 3. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Desarrollo Controlador Fuzzy para Sistema de Refrigeración Se necesitan 3 variables que son los parámetros a considerar para el desarrollo del modelo. Estas variables son: T (Temperatura) H (Humedad) V (Velocidad del Ventilador) Las variables de entrada al sistema son Temperatura y Humedad. La variable de salida es la Velocidad. T (ºC) Sistema Experto Fuzzy V (RPM) Sistema de H (%) Refrigeración Definimos los Term-Set para cada variable interviniente en el problema. Term Set para Temperatura: Muy Baja – Baja – Media – Alta – Muy Alta [ºC] Valores de Referencias: Muy Baja= [0 7] Baja= [5 15] Media= [14 22] Alta= [20 32] Muy Alta= [28 +40] 2 UTN FRT
  • 4. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Term Set para Humedad: Baja – Media – Alta [%] Valores de Referencias: Baja= [0 20] Media= [10 70] Alta= [60 +100] Term Set para Velocidad del Ventilador: Muy Lenta – Lenta – Media – Rápida – Muy Rápida [RPM] Valores de Referencias: Muy Lenta= [0 500] Lenta= [400 1600] 3 UTN FRT
  • 5. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Media= [1400 2200] Rápida= [2000 3200] Muy Rápida= [3000 +3800] Una vez definidos los Term-Set de cada variable procedemos a armar una tabla donde a partir de las variables de entrada (T y H) y sus respectivas variables lingüísticas encontraremos los valores de salida para la variable V. T H MB B M A MA B ML L M M M R R A R MR MR Donde: T:Temperatura MB: Muy Baja B: Baja M: Media A: Alta MA: Muy Alta H: Humedad B: Baja M: Media A: Alta ML: Muy Lenta L: Lenta M:Media R: Rápida MR:Muy Rápida A partir de esta tabla y de la intersección de los estados de las variables, encontramos las reglas que se aplicarán para el funcionamiento del sistema de control. Las mismas están marcadas en letra roja. Estas reglas se corresponden con la variable de salida Velocidad del Ventilador. Las celdas rellenas son casos que pueden no presentarse o rara vez pueden suceder. Se encontraron 9 (nueve) reglas y 6 (seis) casos que no se consideran. Deducción de las reglas que se aplicarán: Nº Regla Regla 1 IF T IS M AND H IS B THEN V IS ML 2 IF T IS A AND H IS B THEN V IS L 3 IF T IS MA AND H IS B THEN V IS M 4 IF T IS M AND H IS M THEN V IS M 5 IF T IS A AND H IS M THEN V IS R 6 IF T IS MA AND H IS M THEN V IS R 7 IF T IS M AND H IS A THEN V IS R 8 IF T IS A AND H IS A THEN V IS MR 9 IF T IS MA AND H IS A THEN V IS MR 4 UTN FRT
  • 6. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Desarrollo del modelo a través del soft: El Software que utilizaremos para el desarrollo del modelo propuesto es el Matlab Versión 7 - R14. Primeramente llamamos a la herramienta Fuzzy (Fuzzy Logic Toolbox) del Matlab a través de la ventana de comandos escribiendo fuzzy. Al abrirse creamos un nuevo proyecto FIS y elegimos el método que se empleará para su resolución. Por defecto lo crea con el método Mandani. Una vez hecho esto se accede a la ventana donde se comienza a trabajar con el sistema. Cambiar nombre de variable En esta ventana Ingresamos las variables de entrada (amarillo) y la variable de salida (celeste) 5 UTN FRT
  • 7. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Podemos ir agregando variables a nuestro modelo a través de la siguiente ventana. En ella seleccionamos si queremos una variable de entrada o de salida. Especificamos el nombre de las variables de entrada (amarillo) Temperatura y Humedad; y la variable de salida (celeste) Velocidad. El modelo queda como se muestra a continuación. Antes de seguir trabajando guardamos el modelo a través del menú File -> Export. Guardamos a Disco para poder recuperar nuestro trabajo posteriormente. 6 UTN FRT
  • 8. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Ahora debemos definir los Term-Set (las funciones de pertenencia) para cada variable. Hacemos doble clic en el cuadro amarillo del modelo que creamos. Nos lleva a la siguiente ventana. En esta ventana, cargamos los Term-Set correspondientes a la Temperatura. El nombre del mismo lo colocamos en el cuadro Name que se encuentra a la derecha. En el cuadro Params elegimos el rango numérico del Term-Set [valor_lateral_derecho valor_central valor_lateral_izquierdo]. A la izquierda de la ventana colocamos el rango para todos los Term-Set que vamos a crear. En este caso de 0 a 40 grados centígrados. Para agregar un nuevo Term-Set a la variable vamos al menú Edit -> Add Custom MF… De la misma manera creamos los Term-Set para las otras variables. A continuación se muestra la carga de los Term-Set para la variable Humedad. 7 UTN FRT
  • 9. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel A continuación se muestra la carga de los Term-Set para la variable Velocidad. Luego procedemos a la carga de las reglas que se usarán para nuestro modelo. La ventana que se muestra a continuación se accede a través de doble clic sobre la región blanca del modelo que creamos (AireAcondiciondado (Mandani)) o bien a través del menú Edit -> Rules… 8 UTN FRT
  • 10. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel En esta ventana sólo seleccionamos de las listas de la parte inferior de la pantalla, los estados para cada variable (antecedentes) y el estado de la variable de salida correspondiente (consecuente), elegimos el modo del operador booleano (And en nuestro caso) y a continuación agregamos la regla al listado superior con Add rule. (Para lograr esto primeramente tendríamos que haber cargado los Term-Set de las variables de entrada y de salida) Y así cargamos todas las reglas. Una vez concluido cerramos la ventana. Ahora nos queda probar y visualizar los resultados del modelo que creamos. Podemos ver gráficamente como trabaja el sistema a través de las reglas creadas ingresando al menú View -> Rules Nos muestra la siguiente ventana: 9 UTN FRT
  • 11. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel En ella podemos ver los números correspondientes a las reglas y las tres variables que intervienen en el problema. En el cuadro Input cargamos los valores para los cuales deseamos probar el funcionamiento del sistema, esto es, el valor numérico para la Temperatura y la Humedad. De acuerdo a los valores que se inserten el resultado podrá visualizarse en la última columna correspondiente a la variable Velocidad. En ella se ve el valor en RPM que toma el sistema cuando tiene una determinada temperatura y humedad. Los datos de entrada son procesados para calcular el grado de membresía que tendrán dentro del controlador. El dispositivo de inferencia junto con la base de conocimientos realizan la toma de decisiones y de acuerdo a esto actúa el sistema. El método de inferencia se basa en el grado de pertenencia de los datos de entrada en los conjuntos difusos de los espacios correspondientes a cada uno; esto sirve para tomar una decisión en el espacio de salida. Para llevar a cabo el proceso de inferencia se usan distintos métodos (mínimo-máximo, máximo-producto, etc.). Dentro del controlador hay una parte que es el defuzificador, que es quien realiza el procesado final de los datos, con el fin de adecuar los valores difusos obtenidos de la inferencia en valores no difusos útiles para el proceso que queremos controlar (en esta caso nuestro sistema de refrigeración). Para lograr esto el sistema emplea el método del centroide o centro de área que consiste en calcular el centro de gravedad de una figura, a partir del polígono formado por el proceso de inferencia. También podemos visualizar gráficamente la superficie que se forma como resultado del modelo planteado. Esto se logra a partir del menú View -> Surface. 10 UTN FRT
  • 12. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Nos muestra la siguiente ventana: Este gráfico muestra la superficie que se forma como consecuencia de la intersección de los valores que van tomando las variables del sistema. Cuanto menor sea la temperatura y la humedad vemos que el color del gráfico se torna azul. A medida que aumentan dichas condiciones el gráfico se torna color amarillo. También vemos claramente cuando la temperatura y la humedad toman el máximo valor; en esta caso la velocidad del ventilador también toma el máximo valor (parte superior del gráfico). Probando el Sistema de Control: Como vimos anteriormente, en esta ventana podemos probar el funcionamiento del sistema creado. La línea roja que atraviesa el conjunto de reglas (9) para la variable temperatura puede desplazarse con el mouse hacia izquierda o derecha (disminuyendo o aumentando la temperatura) para especificar una temperatura al sistema. Lo mismo puede hacerse para la variable humedad. El resultado de estas acciones puede verse sobre la tercera columna, la que corresponde a la velocidad del ventilador. Aquí se muestra en RPM (revoluciones por minuto) la velocidad que tomaría el ventilador en base a la temperatura y humedad establecidas en el ambiente de la sala. 11 UTN FRT
  • 13. Inteligencia Artificial 2008– TPNº3 – Lógica Fuzzy – Muccela José Daniel Los valores para las variables de entrada también pueden ingresarse a través del cuadro de texto “Input” que se encuentra al pie de la ventana. Para el caso que se muestra a continuación fijamos la temperatura en 16 ºC y una humedad de 41,6%. Como resultado se obtiene una velocidad de 1800 RPM. Desplazar con el mouse A continuación puede verse como el sistema genera y dibuja la superficie resultante. En este gráfico se ve la disposición de las variables de entrada y la variable de salida. Se puede ver que para una intersección del plano conformado por la temperatura y la humedad (ejes x e y), la variable Velocidad toma un determinado valor en su respectivo eje (z). Por ejemplo para el punto formado por una temperatura de 40 ºC y una humedad del 100%, la velocidad del ventilador es 3800 RPM. T = 40 ºC H = 100 % V = 3800 RPM 12 UTN FRT