Logo Studenta

IA17 - U2-2 Sistemas de Inferencia - Braulio Luna Díaz

¡Este material tiene más páginas!

Vista previa del material en texto

1
Lógica Fuzzy – parte 2/3
Contenido
Cátedra de
INTELIGENCIA ARTIFICIAL 2017
Ing. Sergio L. Martínez
 Sistema de inferencia fuzzy.
 Reglas Fuzzy.
 Base de Reglas Fuzzy.
 Proceso de Inferencia.
 Emulador Fuzzy.
 Campos de Aplicación.
Referencias
 González C. Lógica Difusa: 
una introducción práctica.
 S. N. Sivanandam, S. 
Sumathi and S. N. Deepa. 
Introduction to Fuzzy 
Logic using MATLAB. Ed. 
Springer, 2007.
 Matlab. FIS tutorial.
2
En forma general, las variables son fuzzyficadas, luego activan 
las reglas correspondientes en la base, produciendo nuevas 
condiciones que se componen en la máquina de inferencia. La 
composición es defizzyfuicada para generar el resultado final.
Va
ri
ab
le
s d
e 
en
tr
ad
a
(c
ri
sp
)
Va
ri
ab
le
s d
e 
sa
lid
a
(c
ri
sp
)
Base de Reglas
Máquina de Inferencia
Fu
zz
yf
ic
ac
ió
n
D
ef
uz
zy
fic
ac
ió
n
Variables
fuzzy
Un sistema de inferencia fuzzy (FIS) permite obtener nuevo 
conocimiento a partir de los valores dados en las variables de 
entrada, de acuerdo a las condiciones establecidas en la base de 
reglas.
SISTEMAS DE INFERENCIA FUZZY
3
SISTEMAS DE INFERENCIA FUZZY
Según la cantidad de variables que involucren las reglas de 
inferencia (fuzzy en este caso), se establece el tipo de 
sistema que las contiene. Estos pueden ser:
SISO: Single Input – Single Output
MISO: Multiple Input – Single Output
SIMO: Single Input – Multiple Output
MIMO: Mult. Input – Multiple Output
Los sistemas más usuales por su simplicidad y versatilidad 
son los de tipo MISO, que serán los considerados en los 
conceptos que siguen.
SISO
MISO
SIMO
MIMO
4
Reglas condicionales
Una regla fuzzy condicional, en forma general, puede verse 
como 
SI xF∈ W ENTONCES yF ∈ Z
antecedente consecuente
Por lo tanto, el consecuente está relacionado con el grado 
de verdad del antecedente, según el siguiente criterio:
“yF es miembro de Z, 
en el mismo grado en que
xF es miembro de W”
condición implicación
En reglas crisp el consecuente es validado al 100% cuando 
el antecedente se cumple al 100%. En reglas fuzzy el grado 
de cumplimiento y validación puede estar entre (0%, 100%]. 
REGLAS FUZZY
Las reglas en conjunto conforman la base de reglas y contienen 
el conocimiento que maneja el sistema FIS.
5
Reglas condicionales
(crisp) → SI x ENTONCES y 
Ej. SI hay niebla ENTONCES hace frío
(fuzzy) → SI xF ∈ X ENTONCES yF ∈ Y
Ej. Si hay algo (xF) de niebla (X) ENTONCES
hace bastante (yF) frío (Y).
Reglas condicionales multicriterio
Criterios múltiples se incorporan a las reglas relacionados 
con los conectivos lógicos fuzzy (AND, OR, NOT). Amplían el 
objeto del conocimiento.
(crisp) → SI x1 OR … xN ENTONCES y1 AND … yM
Ej. SI P=5 OR Q=0 ENTONCES Val=1 AND F=-1
(fuzzy) → SI w ∈ W AND … x ∈ X ENTONCES yF ∈ Y AND…
Ej. Si h ∈ Alto AND p ∈ Peso ENTONCES
piné ∈ Normal AND contextura ∈ Estándar
REGLAS FUZZY
6
REGLAS FUZZY
Reglas incondicionales (o hechos)
No contienen una condición previa para su ejecución (no 
tienen antecedente).
(crisp) → x ⇒ y Ej. Los pájaros vuelan
(fuzzy) → xF ⇒ yF Ej. La mayoría de los pájaros 
vuelan
En el ejemplo anterior, paradójicamente, la regla fuzzy es 
más precisa que la regla crisp.
7
Ejemplos (reglas aisladas sin contexto)
SI la comida es buena Y el servicio es aceptable
ENTONCES la propina debe ser generosa.
SI la presión es alta Y la temperatura aumenta
Y la solubilidad crece
ENTONCES cerrar rápidamente la válvula V1
SI Juan NO es alto Y su contextura es delgada
ENTONCES su peso es bajo.
SI velocidad es lenta O revoluciones es poca
ENTONCES recorrido es corto.
SI frío es intenso O viento es fuerte
ENTONCES clima es desfavorable.
REGLAS FUZZY
8
La base de reglas fuzzy contiene el conocimiento que 
maneja el sistema de inferencia.
El conocimiento de base específico del campo debe ser 
proporcionado por un Experto. La interpretación, 
adaptación y configuración como reglas fuzzy corresponde 
al Ingeniero del Conocimiento.
Las variables contenidas en las reglas fuzzy están 
asociadas a las correspondientes funciones de 
pertenencia.
La asignación de funciones de pertenencia a cada variable 
puede realizarse por diferentes métodos (Sivanandam, 2007 
- pag. 76).
La base de reglas fuzzy debe cumplir con las propiedades 
básicas para trabajar en forma coherente (Sivanandam, 
2007 - pag. 117).
BASE DE REGLAS FUZZY
9
PROPIEDADES
Completitud: una base de reglas fuzzy se considera 
completa si para cualquier combinación de valores de las 
variables de entrada, se produce un valor de salida 
apropiado.
Consistencia: una base de reglas fuzzy se considera 
inconsistente si contiene al menos un par de reglas con el 
mismo antecedente pero con diferentes consecuentes.
Continuidad: una base de reglas fuzzy se considera 
continua si no contiene reglas adyacentes con conjuntos de 
salida fuzzy con intersección vacía.
BASE DE REGLAS FUZZY
10
Ejemplo: Base de reglas simplificada para un 
lavarropas industrial.
R1: SI hay poca cantidad de ropa [Y] el grado de suciedad es bajo ENTONCES
la cantidad de detergente debe ser escasa. 
R2: SI hay poca cantidad de ropa [Y] el grado de suciedad es alto ENTONCES
la cantidad de detergente debe ser normal. 
R3: SI la cantidad de ropa es normal [Y] el grado de suciedad es bajo
ENTONCES la cantidad de detergente debe ser escasa. 
R4: SI la cantidad de ropa es normal [Y] el grado de suciedad es alto
ENTONCES la cantidad de detergente debe ser mucha.
R5: SI la cantidad de detergente es normal [O] escasa ENTONCES el ciclo de 
lavado debe ser corto.
R6: SI la cantidad de detergente es mucha ENTONCES el ciclo de lavado debe 
ser largo.
BASE DE REGLAS FUZZY
Estructura de las reglas (en azul), conectivos fuzzy entre corchetes, 
variables lingüísticas (en verde), particiones (en rojo). El sistema 
trabaja en dos niveles: primer nivel (R1 a R4), segundo nivel (R5 y 
R6). Variables de entrada: Cantidad de ropa y grado de suciedad; 
Variable de salida: ciclo de lavado.
11
Un sistema de inferencia fuzzy (FIS -> Fuzzy Inference
System) se conoce con varios nombres:
• Sistema fuzzy basado en reglas.
• Modelo fuzzy.
• Sistema experto fuzzy.
• Memoria asociativa fuzzy.
Ver Matlab tutotial (pg. 2-36)
SISTEMA DE INFERENCIA
Va
ri
ab
le
s d
e 
en
tr
ad
a
(c
ri
sp
)
Va
ri
ab
le
s d
e 
sa
lid
a
(c
ri
sp
)
Base de Reglas
Máquina de Inferencia
Fu
zz
yf
ic
ac
ió
n
D
ef
uz
zy
fic
ac
ió
n
Variables
fuzzy
12
Dos métodos principales de inferencia fuzzy:
• Método Mamdani: las variables de salida se configuran 
con conjuntos fuzzy que se deben componer y luego 
defuzzyficar (Mamdani – Assilian, 1975).
• Método Takagi – Sugeno: las variables de salida son 
polinomios lineales (Takagi – Sugeno – Kang, 1985).
SISTEMA DE INFERENCIA
Va
ri
ab
le
s d
e 
en
tr
ad
a
(c
ri
sp
)
Va
ri
ab
le
s d
e 
sa
lid
a
(c
ri
sp
)
Base de Reglas
Máquina de Inferencia
Fu
zz
yf
ic
ac
ió
n
D
ef
uz
zy
fic
ac
ió
n
Variables
fuzzy
13
Esquema del proceso de inferencia (5 pasos)
PROCESO DE INFERENCIA
Fuzzyficar
entradas
Aplicar 
operadores 
fuzzy
Aplicar 
método de 
implicación
Defuzzyficar
salidas
Componer 
salidas
Va
ri
ab
le
s d
e 
en
tr
ad
a
(c
ri
sp
)
Va
ri
ab
le
s d
e 
sa
lid
a
(c
ri
sp
)
Base de Reglas
Máquina de Inferencia
Fu
zz
yf
ic
ac
ió
n
D
ef
uz
zy
fic
ac
ió
n
Variables
fuzzy
Método de 
Mamdani
14
1. Fuzzyficación de las entradas
Es el proceso mediante el cual, a partir del valor asignado 
a una variable lingüística y por medio de su función de 
pertenencia, se obtiene un valor numérico [0,1] 
representativo del grado de pertenencia del valor de la 
variable.
PROCESO DE INFERENCIA
15
2. Aplicación de operadores fuzzy
Si el antecedente de una regla tiene más de una 
variable lingüística enlazadas por operadores fuzzy 
(AND – OR – NOT), se aplica el operador para 
obtener un único valor de pertenencia 
representativo del antecedente.
PROCESODE INFERENCIA
16
2. Aplicación de operadores fuzzy
Operador OR
Método 1 – Máximo
μ(a) OR μ(b) = máx[μ(a) , μ(b)]
Método 2 – Suma algebraica
μ(a) OR μ(b) = μ(a) + μ(b) - μ(a) . μ(b) 
Operador AND
Método 1 – Mínimo
μ(a) AND μ(b) = mín[μ(a) , μ(b)]
Método 2 – Producto
μ(a) AND μ(b) = μ(a) . μ(b)
Operador NOT
NOT(μ(a)) = 1 – μ(a)
PROCESO DE INFERENCIA
17
3. Aplicación del método de implicación
El método de implicación se aplica a cada una de las 
reglas. Es la determinación de un nuevo conjunto 
fuzzy obtenido del consecuente de la regla y 
modificado por el valor fuzzy del antecedente (paso 
anterior).
PROCESO DE INFERENCIA
18
3. Aplicación del método de implicación (contin.)
Se disponen de diversos métodos de implicación que 
difieren de acuerdo con el criterio adoptado.
 Método de la intersección 
o del mínimo (Mamdani)
μA⇒B(a,b) = μA(a) ∩ μB(b)
a b
a
b
PROCESO DE INFERENCIA
0 1 2 3 4 5 6 7 8 9 10
0
0.2
0.4
0.6
0.8
1
muA
muB
implicación
 Mamdani
19
3. Aplicación del método de implicación (contin.)
 Método del producto (Larsen)
μA⇒B(a,b) = μA(a) . μB(b)
b
a
a
b
PROCESO DE INFERENCIA
0 2 4 6 8 10
0
0.2
0.4
0.6
0.8
1
muB
muA
implicación
 Larsen
20
3. Aplicación del método de implicación (contin.)
 Regla max - min (Zadeh)
μA⇒B(a,b) = 
[μA(a)∩μB(b)]∪[1–μA(a)]
a
a
b
b
PROCESO DE INFERENCIA
0 2 4 6 8 10
0
0.2
0.4
0.6
0.8
1
muB
muA
implicación
 Zadeh
 max min
21
4. Composición de las salidas
Una vez obtenidos todos los 
nuevos subconjuntos fuzzy de 
salida de cada regla, se deben 
combinar de alguna forma para 
poder tomar una decisión. El 
proceso de composición (o 
agregación) crea un único 
conjunto fuzzy para cada 
variable de salida.
Los métodos de composición 
más usuales son:
Máximo (figura).
Suma
PROCESO DE INFERENCIA
22
5. Defuzzyficación
El paso final de la inferencia es la determinación de 
un número (crisp) proveniente del conjunto fuzzy 
compuesto (en el paso anterior).
Los métodos más usuales de defuzzyficación son
Centroide: Centro del área
del conjunto compuesto
(método más utilizado).
MOM (middle of 
maximum): Promedio
de valores máximos.
PROCESO DE INFERENCIA
23
4. Defuzzyficación (contin.)
LOM (Largest Of Maximum: 
El mayor de los valores
máximos.
SOM (Smallest Of Maximum): 
El menor del valores máximos.
PROCESO DE INFERENCIA
24
Esquema genérico del proceso de inferencia
PROCESO DE INFERENCIA
1. Entradas fuzzy
2. Aplicar conectivos
3. Aplicar método 
de implicación
4. Aplicar método 
de agregación
5. Aplicar método 
de defuzzyficación
(centroide en este caso).
Salida→
Sivanandam, 
pg. 120.
Matlab
tutorial
pg. 2-43.
Regla
Regla
Regla
25
Pasos generales para crear un FIS
• Comprender el problema. Asesoramiento del experto.
• Determinar las variables lingüísticas de entrada y 
salida.
• Establecer las particiones necesarias (variables 
fuzzy) y asociar las funciones de pertenencia.
• Crear las reglas (asesoramiento del experto), 
relacionando las variables fuzzy de entrada mediante 
los conectivos lógicos fuzzy (antecedentes). Asociar 
las variables fuzzy de salida (consecuente).
• Establecer el método de implicación.
• Establecer el método de agregación.
• Establecer el método de defuzzyficación.
• Comprobar el funcionamiento con resultados 
conocidos o según el criterio del experto.
• Para el proceso de inferencia se puede utilizar un 
sistema preprogramado o programar uno.
CREAR UN F.I.S.
26
Utilización de la interfaz gráfica de Matlab
La interfaz gráfica
dispone de todos los 
componentes para 
crear, editar, operar 
y analizar un FIS
(figura adjunta).
Dispone de una 
biblioteca de funcio-
nes para asociar cada
una a sus respectivas
variables fuzzy.
El editor de reglas
permite generar las
reglas, según las
variables definidas.
Ver Matlab tutorial (pg. 2-45).
CREAR UN F.I.S.
27
EDITOR FIS (Matlab tutotial – pg. 2-49)
Se activa con el comando “fuzzy” desde la línea de com.
CREAR UN F.I.S.
Desde este menú se puede abrir, editar 
o grabar un FIS usando cualquiera de 
las cinco herramientas básicas GUI.
Doble click sobre el ícono de una 
variable de entrada para abrir el 
editor de funciones de 
pertenencia.
Estas opciones se utilizan para 
ajustar las funciones de 
inferencia fuzzy, tales como el 
método de dufuzzyficación, 
agregación o conectivos fuzzy.
Doble click sobre el diagrama 
del sistema para abrir el 
editor de reglas.
Aquí se muestra el nombre del 
sistema. Se puede cambiar usando 
una de las opciones del menú 
Save as…
Esta línea de estado describe la 
operación más reciente.
Doble click sobre el 
ícono de una variable de 
salida para abrir el editor 
de funciones de 
pertenencia.
Este campo editable es 
usado para nombrar o 
editar los nombres de las 
variables de entrada y 
salida, cuando son 
seleccionadas arriba.
28
Ejemplo: Sistema de inferencia fuzzy para determinar el
precio de un producto.
SISTEMA DE INFERENCIA
Reglas
Visor de Reglas (MatLab)
29
Modelo
Fuzzy
Base de
Reglas
Fu
zz
if
ic
ad
or
D
ef
uz
zi
fi
ca
do
r
EMULACIÓN FUZZY
30
A
P
L
I
C
A
C
I
O
N
E
S
C
A 
M
P
O 
S
F
U
Z
Z
Y
Ingeniería •
Matemática •
Física •
Medicina •
Astronomía •
Economía •
Otros •
Manipilación del conocimiento
ambigüo.
Tratamiento de datos 
imprecisos.
Controladores de todo tipo:
Lineales/no lineales.
Variantes en el tiempo.
Adaptivos.
Sistemas inteligentes híbridos:
Sistemas expertos fuzzy.
Redes neuro-fuzzy.
Algoritmos genéticos fuzzy.
Equipos electrónicos.
Automatización de sistemas.
Procesos industriales de todo 
tipo.
Otras aplicaciones.
CAMPOS DE APLICACIÓN
	Lógica Fuzzy – parte 2/3
	Número de diapositiva 2
	Número de diapositiva 3
	Número de diapositiva 4
	Número de diapositiva 5
	Número de diapositiva 6
	Número de diapositiva 7
	Número de diapositiva 8
	Número de diapositiva 9
	Número de diapositiva 10
	Número de diapositiva 11
	Número de diapositiva 12
	Número de diapositiva 13
	Número de diapositiva 14
	Número de diapositiva 15
	Número de diapositiva 16
	Número de diapositiva 17
	Número de diapositiva 18
	Número de diapositiva 19
	Número de diapositiva 20
	Número de diapositiva 21
	Número de diapositiva 22
	Número de diapositiva 23
	Número de diapositiva 24
	Número de diapositiva 25
	Número de diapositiva 26
	Número de diapositiva 27
	Número de diapositiva 28
	Número de diapositiva 29
	Número de diapositiva 30

Continuar navegando