Clase 8 Logica Difusa

Post on 05-Jul-2015

2.000 views 2 download

Transcript of Clase 8 Logica Difusa

Lógica Difusa

Razonamiento Humano

Lógica 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 Matemática ¿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 LógicoV1 1, si LL cambia de 1 a 0

0, si LH cambia de 0 a 1Operador 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 esIntervalo [0,1]

Set Difuso

Set (colección o clase): colección de objetos que forman un todo.

Ejemplos El set de enteros no negativos menores

que 40,1,2,3

Función 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 más 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.Función de pertenencia, se puede

representar A : X [0,1] Pares de valores, elemento del dominio

y grado de pertenencia. Gráficamente

Tipos de Funciones de Pertenencia

Depende del contexto, concepto y aplicación.

Es preferible funciones simples.Ejemplos

Función S, Triangular, Trapezoidal, Gausiana, Gamma

Función Triangular

m, valor modalA(x;a,m,b)=max{min{(x-a)/(m-a),(b-x)/

(b-m)},0}

Función S

m, punto de inflexiónEl crecimiento es más lento cuanto

mayor sea la distancia a-b.

Conjunto Difuso Normalizado

A(x)Normalizado=A(x)/Altura(x) , donde

Altura(x), es el valor más grande de su función de pertenencia. Sup x e X A(x)

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

Variables Linguisticas (1)

Variable Lingüística Variables cuyos

valores son palabras o sentencias

Ejemplo ‘Edad’ Etiquetas

Lingüísticas definidas como conjuntos difusos.

Joven

Viejo

Variables Linguisticas (2)

Variable Lingüística Variable Fuzzy

Variable Base

Ejemplo ‘Temperatura’

Términos Primarios Definidos a Priori

FríoCalienteTibio

Ejemplo del Estanque

Regla Difusa Si el nivel es bajo,

entonces, ...

‘Bajo’ es una variable difusa, y da un valor a la variable lingüística Nivel.

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

Nivel, es un escalar.

Bajo

Alto

Operaciones con un Conjunto Difuso

Intersección

Unión

Complemento

AB min{a,b}

AB max{a,b}

A1-A

Operaciones Difusas

Propiedades (estudie y averigüe)

Conmutatividad

Asociatividad

Distributividad

Absorción

Identidad

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 averigüe?)

Contradicción

Ley del Tercio Excluso

Ej. Conjunto difuso “joven”

A c(A) = con c(A)

complemento

A c(A) = Ucon U universo

Comparación

Modificadores Lingüísticos

Ejemplo : “casi”, “muy”, “algo”

Se modelan a partir de operaciones sobre la función de pertenencia de la variable.

Modifica el significado de los términos.Muy FríoCasi Abierto

Modificadores

Tipo Representación Cálculos Negación NEG((x)) 1- (x)Concentración CON((x)) 2(x)Dilatación DIL((x)) 2(x)-2(x)Intensificación INT((x))

22(x), si 0.5(x)0 1-2(1-(x))2, si (x) 0.5

con (x) función de pertenencia.

Ejemplo de Modificadores Linguisticos

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

Inferencia con Lógica Difusa

Existe todo un marco teórico para realizar la inferencia con este tipo de representación.

Ideas muy similares a la lógica de predicado.

También puede construirse un sistema basado en Reglas (sistema de producción), con reglas difusas.

Inferencia Max-Min

Sean A y B dos conjuntos difusos Utiliza como operador de implicación 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

A BR e g la

I F AT H E N B

R e a d in g

Para un valor crisp de entrada

Para una entrada difusa A BR e g la

I F AT H E N B

A A'

EjemploPlanteamiento del problema

Sea U el universo de las posibles cantidades de dinero (en millones de pesos) en que están valorados los bienes de una persona cualquiera.

Sobre este universo se definen los siguientes conjuntos difusos: 500/1 100/0.9, 50/0.5, 10/0.2, 5/0.1, 1/0, 0/0, rico"ser " R

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

Por otra parte, sea V el universo de los posibles precios en (millones de pesos) de un auto.

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”

10/1 ,5/0.9, 2/0.5 1/0, 0.5/0, caro" auto unser " C

Gráficamente

1 5 10 50 100 500

0.10

0.5

0 .91

0 .8

R

1 5 10 50 100 500

0.1

0

0.5

0 .91

0 .8

A

0.1

0

0.5

0 .91

0 .8

0 .5 1 2 5 10

C

RICO ADINERADO

CARO

Solución

Entrada es un conjunto difuso, subconjunto de A (ser rico):

Formamos la matriz M con la formula mij = min (ai,cj).

Tomando en consideración

500/1 100/0.9, 50/0.5, 10/0.2, 5/0.1, 1/0, 0/0, A'

500/1 100/1, 50/1, 10/0.8, 5/0.5, 1/0.1, 0/0, A

10/1 ,5/0.9, 2/0.5 1/0, 0.5/0, C

adinerado

caro

rico

Matriz M

A x C 0.5/0 1/0 2/0.5 5/0.9 10/1

0/0 0 0 0 0 0

1/0.1 0 0 0.1 0.1 0.1

5/0.5 0 0 0.5 0.5 0.5

10/0.8 0 0 0.5 0.8 0.8

50/1 0 0 0.5 0.9 1

100/1 0 0 0.5 0.9 1

500/1 0 0 0.5 0.9 1

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

M = 0 0 0 0 0

0 0 0.1 0.1 0.1

0 0 0.5 0.5 0.5

0 0 0.5 0.8 0.8

0 0 0.5 0.9 1

0 0 0.5 0.9 1

0 0 0.5 0.9 1

500/1 100/0.9, 50/0.5, 10/0.2, 5/0.1, 1/0, 0/0, A'

min(a’i,mij)

A’ x M

0/0 0 0 0 0 0

1/0 0 0 0.1 0.1 0.1

5/0.1 0 0 0.5 0.5 0.5

10/0.2 0 0 0.5 0.8 0.8

50/0.5 0 0 0.5 0.9 1

100/0.9

0 0 0.5 0.9 1

500/1 0 0 0.5 0.9 1

0 0 0 0 0

0 0 0 0 0

0 0 0.1 0.1 0.1

0 0 0.2 0.2 0.2

0 0 0.5 0.5 0.5

0 0 0.5 0.9 0.9

0 0 0.5 0.9 1

max1≤i≤n {min(a’i,mij)}

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

0 0 0 0 0

0 0 0 0 0

0 0 0.1 0.1 0.1

0 0 0.2 0.2 0.2

0 0 0.5 0.5 0.5

0 0 0.5 0.9 0.9

0 0 0.5 0.9 1

Conclusión

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 Gráfico

Inferencia Max-Producto

Utiliza como operador de implicación 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

A BR e g la

I F AT H E N B

R e a d in g

Ejemplo

Si usamos el mismo ejemplo anterior, y aplicando mij = ai*bj , para obtener M, tenemos:

M =

A x C 0.5/0 1/0 2/0.5 5/0.9 10/1

0/0 0 0 0 0 0

1/0.1 0 0 0.05 0.09 0.1

5/0.5 0 0 0.25 0.45 0.5

10/0.8 0 0 0.4 0.72 0.8

50/1 0 0 0.5 0.9 1

100/1 0 0 0.5 0.9 1

500/1 0 0 0.5 0.9 1

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

M =

0 0 0 0 0

0 0 0.05 0.09 0.1

0 0 0.25 0.45 0.5

0 0 0.4 0.72 0.8

0 0 0.5 0.9 1

0 0 0.5 0.9 1

0 0 0.5 0.9 1

min(a’i,mij)

A’ x M

0/0 0 0 0 0 0

1/0 0 0 0.05 0.09 0.1

5/0.1 0 0 0.25 0.45 0.5

10/0.2 0 0 0.4 0.72 0.8

50/0.5 0 0 0.5 0.9 1

100/0.9 0 0 0.5 0.9 1

500/1 0 0 0.5 0.9 1

0 0 0 0 0

0 0 0 0 0

0 0 0.1 0.1 0.1

0 0 0.2 0.2 0.2

0 0 0.5 0.5 0.5

0 0 0.5 0.9 0.9

0 0 0.5 0.9 1

max1≤i≤n {min(a’i,mij)}

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

0 0 0 0 0

0 0 0 0 0

0 0 0.1 0.1 0.1

0 0 0.2 0.2 0.2

0 0 0.5 0.5 0.5

0 0 0.5 0.9 0.9

0 0 0.5 0.9 1

Conclusión

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 aplicación más extendida de la lógica difusa, también conocidos como: Controladores difusos o FLC (Fuzzy Logic

Controllers). Sistemas de inferencia difusa o FIS (Fuzzy

Inference Systems),

Estructura

F u zzi fi c ad o r D e s fu zzi fi c ad o r

B as e d ec o n o c i m i e n t o s

D i s p o s i t i vo d ei n fe r e n c i a d i fu s a

X Y

Base de ConocimientoContiene el conocimiento asociado al

dominio de la aplicación 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 controlarY es una Variable de Control del Sistema a

controlar.Los Ai y B son etiquetas lingüísticas 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 fuzzificación 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 difusoInfiere las acciones de control simulando

el proceso de decisión humano usando una implicación difusa y las reglas de inferencia de la lógica difusa.

Defuzzificador

Convierte los valores difusos de las variables de salida en valores concretos dentro del universo de discurso correspondiente.

Genera una acción no difusa a partir de la acción difusa resultante del sistema de inferencia.

Metodos de defuzzificación Usando la agregación de todos los conjuntos

difusos resultantes de todas las reglas:Centro de Gravedad (COG)Punto de Máximo 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 mínimo y máximo PMC. COG (o PMC) del de mayor área o del de mayor

altura.Etc.

Características Son bastante intuitivos: La posibilidad de usar

expresiones con imprecisión genera modelos intuitivos.

Tolerancia al ruido: En general, como una salida depende de varias reglas no se vera muy afectada si se produce una perturbación.

Estabilidad: Son sistemas robustos En caso de caída del sistema ésta se produce

lentamente, dando tiempo a tomar medidas.No necesita modelo matemático preciso del

sistema a controlar Permiten controlar sistemas que son imposibles de

controlar con los sistemas de control clásicos.Permiten gran precisión:

Aplicaciones

Nombre ObjetivoControlador de tráfico en una intersección.

Minimizar el tiempo de espera de los coches y la longitud de cola

Controlador de un grupo de Ascensores

Minimizar el tiempo de espera de los pasajeros (dentro y fuera del ascensor)

Planificación del transporte en tren de multitud de productos.

Optimizar el transporte ferroviario de distintos tipos de mercancías que requieren ciertos tipos de vagones y más requisitos.

Planificación en una red de Comunicaciones

Transmitir la información de forma rápida, minimizando los nodos por los que pasa.

Otros

Controlador de un motor de inducción.

Diagnósticos de fallos en sistemas dinámicos, usando redes neuronales difusas.

Software de simulación de controladores difusos.

Ejemplo Controlador de Tráfico

Variables de entrada (o de estado)A: Ritmo de llegada de coches (en la fase

verde del semáforo).Q: Longitud de la cola de coches (en la fase

roja).

Variables de salida (o de control)T: Tiempo de la fase verde del semáforo

(con un valor máximo prefijado).

Definir las etiquetas lingüísticas de cada variable:

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

Establecer funciones de pertenencia:

0 1 2 3 4 5 6 7 8 9 1 0

1

A

C o ch e s

Muy_Poco s

Poco s

Mu ch os

Mu ch ís im

os

0 1 2 3 4 5 6 7 8 9 1 0

1

Q

C o ch e s

Muy_Pe qu e ñ a

Pe qu e ñ a

Me dia

Larga

0 1 2 3 4 5 6 7 8 9 1 0

1

T

S e g s .

Mu y_C orto

C orto

Me dio

Largo

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 Muy_Pocos

Pocos Muchos Muchisimos

Larga Muy_Corto

Corto Medio Largo

Media Muy_Corto

Muy_Corto

Corto Medio

Pequeña Muy_Corto

Muy_Corto

Muy_Corto

Corto

Muy_Pequeña

Muy_Corto

Muy_Corto

Muy_Corto

Muy_Corto

Ejemplo de funcionamiento

Existen 5 coches en la cola del semáforo en rojo.

El ritmo de llegada en la fase verde del semáforo son 5.

El tiempo del semáforo verde será de 3.11 segundos.