Você está na página 1de 65

Lgica Difusa

Razonamiento Humano
Lgica Booleana : Verdadero / Falso
Solo dos estados posibles

Existe razonamiento humano el cual no es posible describirlo en dos estados.


Persona Joven Persona Alta l es bueno en Matemtica Qu tan bueno?

Util para definir conceptos sin definiciones claras. Evaluar expresiones sin ser tan restricctivos. Usos
Control de Procesos Redes Neuronales Bases de Datos Introducir experiencias de un experto

Un ejemplo en Control de Procesos, Estanque


Controlador Lgico V1 1, si LL cambia de 1 a 0 0, si LH cambia de 0 a 1 Operador Humano (Control Difuso)
Si nivel es bajo entonces abrir V1 Si nivel es alto entonces cerrar V1

Logica difusa
Utilizar todo el espectro posible entre los valores Verdadero / Falso, esto es Intervalo [0,1]

Set Difuso
Set (coleccin o clase): coleccin de objetos que forman un todo. Ejemplos
El set de enteros no negativos menores que 4
0,1,2,3

Funcin de Pertenencia
Un conjunto difuso A se define como una FUNCION DE PERTENENCIA que empareja los elementos de un dominio X con elementos del intervalo [0,1]. Cuanto ms cerca est A(x) del valor 1, mayor ser el grado de pertenencia del objeto x al conjunto A
0 no pertenece en absoluto 1 pertenencia total

Conjunto difuso
Contexto
No es lo mismo alto en personas que en rboles.

Funcin de pertenencia, se puede representar A : X [0,1]


Pares de valores, elemento del dominio y grado de pertenencia. Grficamente

Tipos de Funciones de Pertenencia


Depende del contexto, concepto y aplicacin. Es preferible funciones simples. Ejemplos
Funcin S, Triangular, Trapezoidal, Gausiana, Gamma

Funcin Triangular
m, valor modal A(x;a,m,b)=max{min{(x-a)/(m-a),(b-x)/(bm)},0}

Funcin S
m, punto de inflexin El crecimiento es ms lento cuanto mayor sea la distancia a-b.

Conjunto Difuso Normalizado


A(x)Normalizado=A(x)/Altura(x) , donde Altura(x), es el valor ms grande de su funcin de pertenencia.
Sup x e X A(x)

Es decir Altura(A)=1 para un conjunto normalizado.

Variables Linguisticas (1)


Variable Lingstica
Variables cuyos valores son palabras o sentencias

Ejemplo Edad
Etiquetas Lingsticas definidas como conjuntos difusos. Joven Viejo

Variables Linguisticas (2)


Variable Lingstica
Variable Fuzzy
Variable Base

Trminos Primarios
Definidos a Priori

Ejemplo Temperatura

Fro Caliente Tibio

Ejemplo del Estanque


Regla Difusa
Si el nivel es bajo, entonces, ...

Bajo es una variable difusa, y da un valor a la variable lingstica Nivel.


Bajo

Bajo, esta definida en un rango de los valores esperados para nivel [0,100%] de lleno. Nivel, es un escalar.
Alto

Operaciones con un Conjunto Difuso


Interseccin Unin Complemento AB | min{a,b} AB | max{a,b} A|1-A

Operaciones Difusas

Propiedades
Conmutatividad Asociatividad Distributividad Absorcin Identidad

(estudie y averige) AB = BA AB = BA (AB) C= A(B C) (AB) C= A(B C) A(BC)=(AB)(AC) A U= U , A = A = A , A U=X

Propiedades que No se Cumplen (estudie y averige?)


Contradiccin A c(A) = con c(A) complemento

Ley del Tercio Excluso A c(A) = U con U universo Ej. Conjunto difuso joven

Comparacin

Modificadores Lingsticos
Ejemplo : casi , muy , algo Se modelan a partir de operaciones sobre la funcin de pertenencia de la variable. Modifica el significado de los trminos.
Muy Fro Casi Abierto

Modificadores
Tipo Representacin Clculos Negacin NEG(Q(x)) 1- Q(x) Concentracin CON(Q(x)) Q2(x) Dilatacin DIL(Q(x)) 2Q(x)-Q2(x) Intensificacin INT(Q(x)) 2Q2(x), si 0.5uQ(x)u0 1-2(1-Q(x))2, si Q(x) "0.5
con Q(x) funcin de pertenencia.

Ejemplo de Modificadores Linguisticos


no muy algo casi bastante NEG(Q(x)) CON(Q(x)) DIL(Q(x)) DIL(DIL(Q(x))) INT(CON(Q(x)))

Inferencia con Lgica Difusa


Existe todo un marco terico para realizar la inferencia con este tipo de representacin. Ideas muy similares a la lgica de predicado. Tambin puede construirse un sistema basado en Reglas (sistema de produccin), con reglas difusas.

Inferencia Max-Min
Sean A y B dos conjuntos difusos Utiliza como operador de implicacin el min para formar la Matriz M.
mij = min (ai,bj).

Determinar el vector inducido B para un subconjunto de A designado como A . Utilizando:


bj = max1 i n {min(a i,mij)}

Funcionamiento
Para un valor crisp de entrada

Regla

IF A T HEN B

Reading

Para una entrada difusa


Regla

A A
B

B A'

I A T

Ejemplo Planteamiento del problema


Sea U el universo de las posibles cantidades de dinero (en millones de pesos) en que estn valorados los bienes de una persona cualquiera. Sobre este universo se definen los siguientes conjuntos difusos:
R | " ser rico" ! _ 0/0, 1/0, 5/0.1, 10/0.2, 50/0.5, 100/0.9, 500/1a

A | " ser adinerado" ! _ 0/0, 1/0.1, 5/0.5, 10/0.8, 50/1, 100/1, 500/1a

Por otra parte, sea V el universo de los posibles precios en (millones de pesos) de un auto. | "s r t c r " _ /0, 1/0, /0. , /0. , 10/1a 0. Si se sabe que:
Jorge es rico Si Jorge es adinerado, se comprar un auto caro.

Comprobar si se puede concluir


Jorge se comprar un auto caro

Grficamente
RICO
R
1 0.9 0.8

ADINERADO
A
1 0.9 0.8

0.5

0.5

0.1

0.1
1 5 10 50 100 500

0 1 5 10

50

100

500

CARO
C
1 0.9 0.8

0.5

0.1

0.5

1 2

10

Solucin
Entrada es un conjunto difuso, subconjunto de A (ser rico): ' _ 0/0, 1/0, 5/0.1, 10/0. , 50/0.5, 100/0. , 500/1a rico Formamos la matriz M con la formula
mij = min (ai,cj).

Tomando en consideracin

_ 0/0,
C

1/0.1, 5/0.5, 10/0.8, 50/1, 100/1, 500/1a


1/0, /0.5 ,5/0. , 10/1a
caro

adinerado

_ 0.5/0,

Matriz M
AxC 0/0 1/0.1 5/0.5 10/0.8 50/1 100/1 500/1 0.5/0 0 0 0 0 0 0 0 1/0 0 0 0 0 0 0 0 2/0.5 0 0.1 0.5 0.5 0.5 0.5 0.5 5/0.9 0 0.1 0.5 0.8 0.9 0.9 0.9 10/1 0 0.1 0.5 0.8 1 1 1

Determinar C usando:
Cj = max1 i n {min(a i,mij)}
A' ! _ 0/0, 1/0, 5/0.1, 10/0.2, 50/0.5, 100/0.9, 500/1a

M=

0 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0.1 0.5 0.5 0.5 0.5 0.5

0 0.1 0.5 0.8 0.9 0.9 0.9

0 0.1 0.5 0.8 1 1 1

min(ai,mij)
A xM 0/0 1/0 5/0.1 10/0.2 50/0.5 0 0 0 0 0 0.1 0 0 0.5 0 0 0.5 0 0 0.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0.2 0.5 0.5 0.5 0 0 0.1 0.2 0.5 0.9 0.9 0 0 0.1 0.2 0.5 0.9 1

0.1 0.1 0.5 0.5 0.8 0.8 0.9 1 0.9 1 0.9 1

100/0.9 0 0 0.5 500/1 0 0 0.5

max1in {min(ai,mij)}
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0.2 0.5 0.5 0.5 0 0 0.1 0.2 0.5 0.9 0.9 0 0 0.1 0.2 0.5 0.9 1

C = {0.5/0, 1/0, 2/0.5, 5/0.9 10/1}

Conclusin
El subconjunto de C obtenido es
C = {0.5/0, 1/0, 2/0.5, 5/0.9 10/1}

El que concuerda completamente con C. Por lo tanto la regla se cumple.

Funcionamiento Grfico

Inferencia Max-Producto
Utiliza como operador de implicacin el producto para formar la Matriz M.
mij = ai* bj

Determinar el vector inducido B para un subconjunto de A designado como A . Utilizando:


bj = max1 i n {min(ai,mij)}

Funcionamiento

Regla

I A T

Reading

Ejemplo
Si usamos el mismo ejemplo anterior, y aplicando mij = ai*bj , para obtener M, tenemos:
AxC 0/0 1/0.1 5/0.5 10/0.8 50/1 100/1 500/1 0.5/0 0 0 0 0 0 0 0 1/0 0 0 0 0 0 0 0 2/0.5 0 0.05 0.25 0.4 0.5 0.5 0.5 5/0.9 0 0.09 0.45 0.72 0.9 0.9 0.9 10/1 0 0.1 0.5 0.8 1 1 1

M=

Determinar C usando: C j = max1 i n {min(a i,mij)}


0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.05 0.25 0.4 0.5 0.5 0.5 0 0.09 0.45 0.72 0.9 0.9 0.9 0 0.1 0.5 0.8 1 1 1

M=

min(ai,mij)
A xM 0/0 1/0 5/0.1 10/0.2 50/0.5 100/0.9 500/1 0 0 0 0 0 0.05 0 0 0.25 0 0 0.4 0 0 0.5 0 0 0.5 0 0 0.5 0 0.09 0.45 0.72 0.9 0.9 0.9 0 0.1 0.5 0.8 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0.2 0.5 0.5 0.5 0 0 0.1 0.2 0.5 0.9 0.9 0 0 0.1 0.2 0.5 0.9 1

max1in {min(ai,mij)}
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0.2 0.5 0.5 0.5 0 0 0.1 0.2 0.5 0.9 0.9 0 0 0.1 0.2 0.5 0.9 1

C = {0.5/0, 1/0, 2/0.5, 5/0.9 10/1}

Conclusin
El subconjunto de C obtenido es
C = {0.5/0, 1/0, 2/0.5, 5/0.9 10/1}

El que concuerda completamente con C. Por lo tanto la regla se cumple

Control Difuso
Los sistemas expertos de control difuso basados en reglas son la aplicacin ms extendida de la lgica difusa, tambin conocidos como:
Controladores difusos o FLC (Fuzzy Logic Controllers). Sistemas de inferencia difusa o FIS (Fuzzy Inference Systems),

Estructura

Fuzzificador

Desfuzzificador Base de conocimientos Dispositivo de inferencia difusa

Base de Conocimiento
Contiene el conocimiento asociado al dominio de la aplicacin y los objetivos de control. Esta formada por una base de datos y un conjunto de reglas difusas de control de la forma:
Si (X1 es A1)y (X2 es A2) y (Xn es An) Entonces (Y es B) donde:
Los Xi son las Variables de Estado del sistema a controlar Y es una Variable de Control del Sistema a controlar. Los Ai y B son etiquetas lingsticas con una funcion de pertenencia asociada que dan valor a sus variables.

Fuzzificador
Obtiene los valores de la variable de entrada. Convierte los valores reales (crisp) de entrada en conjuntos difusos, lo que permite ser tratados como tales. Ventajas de la fuzzificacin
Permite minimizar posibles cambios ligeros en las variables de entrada. Permite suavizar el comportamiento del sistema. Permite minimizar los posibles errores al tomar los datos.

Dispositivo de Inferencia Difusa


Nucleo del controlador difuso Infiere las acciones de control simulando el proceso de decisin humano usando una implicacin difusa y las reglas de inferencia de la lgica difusa.

Defuzzificador
Convierte los valores difusos de las variables de salida en valores concretos dentro del universo de discurso correspondiente. Genera una accin no difusa a partir de la accin difusa resultante del sistema de inferencia.

Metodos de defuzzificacin
Usando la agregacin de todos los conjuntos difusos resultantes de todas las reglas:
Centro de Gravedad (COG) Punto de Mximo Criterio (PMC o Media de Maximos). Centro de Area. Etc.

Usando los conjuntos difusos resultantes de cada regla Individualmente:


COG (o PMC) ponderado por el rea o por la altura. Media de PMC. Media del mnimo y mximo PMC. COG (o PMC) del de mayor rea o del de mayor altura. Etc.

Caractersticas
Son bastante intuitivos: La posibilidad de usar
expresiones con imprecisin genera modelos intuitivos.

Tolerancia al ruido: En general, como una salida Estabilidad: Son sistemas robustos

depende de varias reglas no se vera muy afectada si se produce una perturbacin.


En caso de cada del sistema sta se produce lentamente, dando tiempo a tomar medidas.

No necesita modelo matemtico preciso del sistema a controlar


Permiten controlar sistemas que son imposibles de controlar con los sistemas de control clsicos.

Permiten gran precisin:

Aplicaciones
Nombre
Controlador de trfico en una interseccin. Controlador de un grupo de Ascensores Planificacin del transporte en tren de multitud de productos. Planificacin en una red de Comunicaciones

Objetivo
Minimizar el tiempo de espera de los coches y la longitud de cola Minimizar el tiempo de espera de los pasajeros (dentro y fuera del ascensor) Optimizar el transporte ferroviario de distintos tipos de mercancas que requieren ciertos tipos de vagones y ms requisitos. Transmitir la informacin de forma rpida, minimizando los nodos por los que pasa.

Otros
Controlador de un motor de induccin. Diagnsticos de fallos en sistemas dinmicos, usando redes neuronales difusas. Software de simulacin de controladores difusos.

Ejemplo Controlador de Trfico


Variables de entrada (o de estado)
A: Ritmo de llegada de coches (en la fase verde del semforo). Q: Longitud de la cola de coches (en la fase roja).

Variables de salida (o de control)


T: Tiempo de la fase verde del semforo (con un valor mximo prefijado).

Definir las etiquetas lingsticas de cada variable:


A : Ritmo de llegada. Q: Longitud de cola. T: Tiempo de fase verde

Establecer funciones de pertenencia:


os
eq ue

co s

a M uy _P qu e a M ed ia

A
s M uy _P o co s ho h si M uc M uc Po
1
1

Pe

0
1 2 3 4 5 6 7 8 9 10

oches

La
Coches
9 10

0
1 2 3 4 5 6 7 8

M uy _C

or to

T
1

M ed io

or to

La

0
1 2 3 4 5 6 7 8 9 10

rg o

Segs.

rg

Definir las reglas difusas de Control: la tabla

muestra 16 reglas, aunque son necesarias menos reglas, pues algunas pueden sintetizarse en una nica regla.

Las reglas son del tipo: SI A Y Q ENTONCES T


Q/A Larga Media Pequea Muy_Pocos Muy_Corto Muy_Corto Muy_Corto Pocos Corto Muchos Medio Muchisimos Largo Medio

Muy_Corto Corto

Muy_Corto Muy_Corto Corto Muy_Corto Muy_Corto Muy_Corto

Muy_Pequea Muy_Corto

Ejemplo de funcionamiento
Existen 5 coches en la cola del semforo en rojo. El ritmo de llegada en la fase verde del semforo son 5. El tiempo del semforo verde ser de 3.11 segundos.