Sistemas Difusos ( FuzzySystems)€¦ · Electric cars are not very fast . High -performance drives...
Transcript of Sistemas Difusos ( FuzzySystems)€¦ · Electric cars are not very fast . High -performance drives...
RAZONAMIENTO APROXIMADO
Sistemas Difusos (Fuzzy Systems)
Introducción a la Inteligencia Artificial
LCC
RAZONAMIENTO APROXIMADO (RA)
Trata comoREPRESENTAR
COMBINAR y
REALIZAR INFERENCIAS
con conocimiento impreciso y/o incierto
RA: Distintos modelos
MODELOS PROBABILISTICOSMODELO EVIDENCIALMODELO POSIBILISTICO
� Todos tratan la incertidumbre en un
sistema de producción
� Sólo el modelo posibilístico puede tratar la
imprecisión.
RA: Distintos modelos
� MODELO POSIBILISTICO
� Como representar, combinar y realizar
inferencias con conocimiento impreciso
CONOCIMIENTO IMPRECISO
El conocimiento cuenta con predicados o
cuantificadores vagos (no precisos)
Ejemplos:
•Pedro tiene entre 20 y 25 años.
•Juan es joven
•Mucha gente juega al fútbol
•El espectáculo es para gente grande.
6
Lógica difusa
� Introducción� Teoría de conjuntos difusos
• Teoría de conjuntos clásica (conjuntos nítidos)• Conjuntos Difusos
– Funciones de pertenencia– Etiquetas lingüísticas
• Operaciones elementales con conjuntos difusos– Complemento– Intersección– Unión
� Razonamiento difuso• Inferencia difusa• Decodificación
� Funcionamiento de un sistema difuso� Conclusiones
7
Necesidad de razonamiento difuso
En el mundo real existe mucho conocimiento con las siguientes características: conocimiento vago, impreciso, incierto, ambiguo, inexacto, o probabilísticopor naturaleza. El razonamiento y pensamiento humano frecuen-temente conlleva información de este tipo:• imprecisión inherente de los conceptos humanos y • razonamiento basado en experiencias similares, pero no
idéntica
Problema: Poca capacidad de expresión de la lógica clásica.� Ejemplo 1. Clasificación de personas en altas o bajas� Ejemplo 2. Definición del término joven
8
Going Fuzzy …
Examples of Fuzzy statements:� The motor is running very hot.
� Tom is a very tall guy.
� Electric cars are not very fast.
� High-performance drives require very rapiddynamics and precise regulation.
� Leuven is quite a short distance from Brussels.
� Leuven is a beautiful city.
� The maximum range of an electronic vehicle is short.
If short means: 300 km or less, would 301 km be long ?
� Want to express to what degree a property holds.
9
Fuzzy sets:
Are functions: f: domain → [0,1]
11
00150150 160160 170170 180180 190190 200200 210210 cmcm
Crisp set (tall men):
Fuzzy set (tall men):11
00150150 160160 170170 180180 190190 200200 210210 cmcm
10
Representing a domain:
Crisp sets (men’s height):
11
00150150 160160 170170 180180 190190 200200 210210 cmcm
shortshort mediummedium talltall
Fuzzy set (men’s height):
11
00150150 160160 170170 180180 190190 200200 210210 cmcm
shortshort mediummedium talltallshortshort
11
Razonamiento inexacto
Es necesario cuantificar y razonar acerca de términos o predicados difusos que aparecen en el lenguaje natural.
La lógica difusa se refiere a estos términos como variables lingüísticas, y la tecnología de los sistemas expertos, incorpora estas variables lingüísticas en reglas que pasan a ser reglas difusas.
12
Lógica difusa
En 1965, Lofti Zadeh sienta las bases de la lógica difusa
�Motivación inicial: estudio de la vaguedadRelación vaguedad ↔ incertidumbre
� Solución: definir conjuntos con grados de pertenencia
� Éxito de la lógica difusa :• Desde el punto de vista práctico: miles de aplicaciones, la mayoría en sistemas de control
• Desde el punto de vista lógico: lógica fuzzy como una lógica multivaluada.
13
Características principales de la lógica difusa
� Se intenta representar la vaguedad e imprecisión inherentes en el lenguaje natural
� Utiliza varios elementos: conjuntos difusos, variables difusas, relaciones difusas, reglasdifusas (lenguaje difuso)
� Dichos elementos se combinan entre sí en el proceso de inferencias (fuzzy logic)
� Fuzzy control: El proceso de inferencias incluye pasos que pasan la información precisa a difusa y viceversa
14
Lógica difusa
Por definición “logica difusa” es una rama de la lógica que utiliza grados de pertenencia a los conjuntos (grados de verdad de las fórmulas) en lugar de los estrictos valores verdadero o falso.
Estos conjuntos reciben la denominación de “conjuntos difusos”.
15
La lógica difusa concierne a la cuantificación y razonamiento sobre términos vagos o difusos que aparecen en el lenguaje natural cotidiano. En la lógica difusa, estos términos son denominados variables lingüísticas.
variables lingüísticas: son términos que describen algún concepto que usualmente tiene asociados valores vagos o difusos.
Lógica difusa
16
Lógica difusa
lenta, normal, rápidavelocidad
baja, media, altaaltura
caliente, fríotemperatura
Valores típicosVariable lingüística
17
Difusión de fuzzy logic
• En la actualidad es un campo de investigación muy importante, tanto por sus implicaciones matemáticas o teóricas como por sus aplicaciones prácticas:
� Revistas (Fuzzy Sets and Systems, IEEE Transactions on Fuzzy Systems..)
� Congresos (FUZZ-IEEE, IPMU, EUSFLAT, ESTYLF...) � Miles de aplicaciones reales:
• Control de sistemas: Tráfico, vehículos, compuertas en plantas hidroeléctricas, centrales térmicas, lavadoras, metros ascensores...
• Predicción y optimización: Predicción de terremotos, optimización de horarios...
• Reconocimiento de patrones y Visión por ordenador: Seguimiento de objetos con cámara, reconocimiento de escritura, reconocimiento de objetos, compensación de vibraciones en cámaras, sistemas de enfoque automático...
• Sistemas de información o conocimiento: Bases de datos, sistemas expertos...
18
Un poco de publicidad...
Carga: 5kg Revoluciones: 1400 rpmCaracterísticas energéticas: A+,A,B Multi-DisplayFuzzy LogicProgramas especiales: Lavado a mano, Seda, Lana
Poderoso lente zoom de 4.3x, 28-120 con elementos de lentes de cristal ED Sistema de flash doble incorporado. Ajuste de Exposición Automática programada Sistema de Medición TTL: Fuzzy logic ESP, Promedio Balanceado al Centro
OLYMPUS ERGONÓMICA SRL 28-120
AEG Lavamat 64600
19
Conjuntos difusos
� Conjuntos clásicos (crisp)
� A ⊂ U definido por su función de pertenencia
� µA: U → {0,1} / µA(x)= 1 sii x ∈ A
�Conjunto difuso (Fuzzy set) A de U
� µA: U → [0,1]
�µA(x) me define el grado de pertenencia de x a A
�Hay “distintos grados de pertenencia”
20
Conjuntos difusos
La sentencia “Juan es alto” implica la variable “estatura” que tiene como valor lingüístico “alto”. El rango de los posibles valores de la variable lingüística (estatura) es el universo de discurso X de dicha variable [0.3, 2.5m].
La frase “Juan es alto” restringe los valores de la variable estatura y se puede representar mediante un conjunto difuso.
21
� Para otras descripciones de la variable lingüística estatura tales como: baja o media, se pueden obtener otros conjuntos difusos que reflejan la opinión popular (o de expertos).
� se pueden definir múltiples conjuntos difusos para un mismo universo de discurso: subconjuntos difusosrepresentando distintos términos vagos.
Conjuntos difusos
23
Funciones de pertenencia
Algunas de las funciones de pertenencia más utilizadas son:
≥
<<−
−≤
=
m xpara 1
xa para amax
a xpara 0
mx)(µ
1
a m
• Función GAMMA (Γ):
• Función LAMBDA o triangular
• Función L
Puede definirse simplemente como 1 menos la función GAMMA
1
m a
>
≤<−
−
≤<−
−≤
=µ
bx para 0
bxm para mb
xb
mxa para am
axax para 0
)x(
1
a b m
24
Funciones de pertenencia
• Función PI o trapezoidal
>
≤<−
−
≤<
≤<−
−≤
=µ
dx para 0
dxc para cb
xd
cx b para
bxa para ab
axax para 0
)x( 1
1
a b c d
25
Funciones de pertenencia
• Función S
• Función Π
• Función Z (opuesta de la S)
≥
≤≤+
−
−−
+≤≤
−
−
≤
=µ
cx para 1
cx2
capara ,
ac
ax 21
2
caxa para ,
ac
ax 2
ax para 0
(x) 2
2
S
µZ(x) = 1- µS(x)
>µ
≤µ=µΠ bx para )x(
bx para )x( (x)
Z
S
a c (a+c)/2
b-d b+d b
26
Conjunto difuso - espacio discreto
Considerando ahora un universo de discurso discreto, tal que los elementos de X sean { x1, x2, .....xn} y, siendo A un conjunto difuso definido en dicho universo:
� La representación del vector se clarifica utilizando el símbolo “ / “ que asocia el valor de pertenencia ai con la coordenada de xi :
A = ( a1 / x1, a2/x2.....an/ xn )
� Considerando el conjunto difuso altoALTO = (0/1.65, 1/1.75, 1/1.85, 0/1.95)
27
También se expresa como:A = ( a1 /x1+ a2/x2+.....+an/ xn )
A = ΣΣΣΣi=,1,n µµµµA(xi)/xi
Si X es una función continua, el conjunto A, este puede ser representado como:
A = ∫∫∫∫ µµµµA(xi)/xi
Conjunto difuso - espacio discreto
28
Etiquetas lingüísticas - Hedges
� Equivalentes a los adverbios del lenguaje natural� Se utilizan para definir conjuntos difusos a partir de otros ya existentes. Por ejemplo, viejo —> MUY viejo
� Lo que se hace es componer la función de pertenencia con alguna otra función, de forma que la función resultante tenga la forma deseada
� Por ejemplo, función para el adverbio MUY —> f(y) = y2
0
1 viejoMuy viejo
29
Etiquetas lingüísticas
Nombre del modificador Descripción del modificador
not 1-y
very (muy) y2
somewhat (algo) y1/3
more-or-less (más o menos) y1/2
extremely (extremadamente) y3
Existe todo un catálogo de adverbios/funciones
30
Etiquetas lingüísticas�Otras operaciones usuales
−−
≤= −
−
caso otro en 0.5y para
pp
pp
y
yyf
)1(21
2)( 1
1
−−
≤=
caso otro en
0.5y para
2/)1(1
2/)(
y
yyf
Concentración
Intensificación contraste
Dilatación
Difuminación
Normalización
f(y) = y/Altura
f(y)=yp, con p>1
f(y)=yp, con 0<p<1
0
1
0
1
0
1
0
1
31
Operaciones con conjuntos difusos
Las funciones c para el complemento más utilizadas son:
Complemento (Negación)
Dado un conjunto difuso A, su complemento vendrá definido por
0
1
• c(αααα) = 1 - αααα.
• Sugeno cλ(α) = (1-α)/(1-λα) λ∈ [0, 1]
0
1
))(()( xcxAA
µµ =
• Yager cw(α) = ( 1 - αw)1/w w∈ [0, ∞]
0
1
32
Operaciones con conjuntos difusos
Intersección (conjunción)Dados dos conjuntos difusos A y B, su intersección vendrádefinida por
µA ∩B (x) = i(µΑ(x),µΒ (x))
Las funciones i que verifican las propiedades que se esperan de una conjunción se llaman normas triangulares (t-normas).
33
Operaciones con conjuntos difusos
Algunas t-normas usuales:
• t-norma del mínimoimin(α,βα,βα,βα,β) = min(α,βα,βα,βα,β)
0
1
• t-norma del producto i*(α,β) = αβ
0
1
0
1
• t-norma del producto drástico
i inf ( α , β ) =
α si β = 1
β si α = 1
0 en otro caso
34
Operaciones con conjuntos difusos
Unión (disjunción)
Dados dos conjuntos difusos A y B, su unión vendrádefinida por
µAuB(x) = u(µA(x), µB(x))
Las funciones u que verifican las propiedades esperadas para una disjunción se llaman:conormas triangulares (t-conormas).
35
Operaciones con conjuntos difusos
Si consideramos como complemento la función c(u) = 1-u, las t-conormas correspondientes a las t-normas anteriores son:
• t-conorma del máximo
umax(αααα,ββββ) = max(αααα,ββββ)
• t-norma de la suma drástica
0
1
• t-conorma de la suma u*(α,β) = α+β−αβ
0
1
u sup ( α , β ) =
α si β = 0
β si α = 0
1 en otro caso
0
1
36
Operaciones con conjuntos difusos
� Considerando la t-norma del mínimo (intersección, AND) junto con la t-conorma del máximo (unión, OR)
Conjuntos vacío y total:� Conjunto vacío� Conjunto total
(X crisp)
∀ x ∈ X µ∅ x( ) = 0
∀ x ∈X µX x( ) =1
Sin embargo, con esta definición no se satisfacen algunos famosos principios de la lógica clásica, como por ejemplo:
A ∩ A = ∅
A ∪ A = X
Principio de contradicción
Principio del tercero excluso
37
Razonamiento difuso
Proposición difusa simple: � Proposición que asigna un valor a una variable difusa:
“Pepe es de estatura mediana”.
� Tiene asociado un conjunto difuso (función de pertenencia).
Proposición difusa compuesta:� Agrupación de dos o más proposiciones difusas simples
“la velocidad es normal” AND “el objeto está cerca”“la velocidad es alta” OR “el objeto está muy cerca”“la velocidad NO es alta”
Necesidad de definir operadores difusos:� NO (¬p) µ¬A(u) = 1 - µA(u)� AND (p∩q) vendrá definida por una función de pertenencia tipo
t-norma, por ejemplo µµµµ A∩∩∩∩B (u,v) = min( µµµµA(u), µµµµB(v))� OR (p∪q) vendrá definida por una función de pertenencia tipo t-
conorma, por ejemplo µµµµAUB(u,v) = max(µµµµA(u), µµµµB(v))
38
Razonamiento difuso: implicaciones
El siguiente paso es definir lo que es una implicación, es decir, asignar una función de pertenencia a una agrupación antecedente consecuente del tipo p→→→→q
Esto nos permitirá razonar con afirmaciones tales como:SI “la velocidad es normal” ENTONCES “la fuerza de frenado debe ser moderada”
Opciones:� Teórica: Dar a la implicación el mismo significado que en la lógica clásica. p→q ≡ ¬p∨q µp→q(u,v) = max(1-µA(u), µB(v))
p→q ≡ ~(p∧(~q)) µp→q(u,v) = 1 – min[µA(u), 1-µB(v)]� Práctica: Dar a la implicación el significado de relación causa-efecto:
Implicación de Mamdanip→q ≡ A∧B ⇒ µp→q(u,v) = min( µA(u), µB(v))
39
Inferencia Difusa – Fuzzy inference
Una regla difusa relaciona dos proposiciones difusas, por ejemplo considerando dos conjuntos difusos tales como A (estatura es alta) y B (peso es elevado), estos pueden estar relacionados por la regla:
If A Then B� Los sistemas expertos difusos almacenan las
reglas como asociaciones difusas (A,B), en una matriz M denominada matriz asociativa difusa.
41
Como en otras técnicas de razonamiento inexacto, el proceso de inferencia difusaintenta establecer la credibilidad conclusión de la regla dada una cierta evidencia en la premisa.
If A Then BA*B* ???
Inferencia Difusa – Fuzzy inference
42
Funcionamiento de un sistema de control basado en lógica difusa
Reglas
Inferencia
Codificador Decodificador
u ∈Up
Conjuntos difusos entrada
v ∈VConjuntos
difusos salida
Entrada crisp
x ∈Up y=f(x) ∈V
Salidacrisp
43
Disponiendo de la matriz M que se obtiene a partir de A����B, el proceso de inferencia difusa permite a partir de información A’(subconjunto de A), inducir un subconjunto B’de B.Técnicas de inferencia difusas:
� Inferencia max-min� Inferencia max-product
Inferencia Difusa – Fuzzy inference
44
Inferencia max-min
El operador de de la implicación utilizado es el “minmin”, es decir:
mij = min(ai,bj)
� Entonces, dados dos conjuntos difusas A y B, se obtiene la matriz M.
� Luego, dado el conuunto A’, se puede inducir el subconjunto B’.
45
Inferencia max-min
Ejemplo: sea un universo de discurso X que representa “temperatura”, y A un conjunto difuso que representa “temperatura normal”.
Asumiendo que Y representa “velocidad” y un B que representa “velocidad media”, entonces si tenemos la siguiente regla difusa:
� If temperatura normal Then velocidad media
� IF A THEN B
48
El subconjunto A’ (lectura única)
induce un conjunto difuso B’ utilizando la composición max-min:
50
Cuando A’ tiene un solo valor de pertenencia distinto de 0, por ejemplo xk se puede utilizar solo µµµµ A (xk) directamente con la representación de B, µµµµ B (y) para inducir B’ como
B’ = µµµµ A (xk) ∧∧∧∧ µµµµ B (y)
� Truncamiento del conjunto difuso B por el valor µµµµ A(xk)
Inferencia max-min - Observación
51
En el ejemplo, nosotros asumimos que la temperatura es de 125 grados A’ tiene un solo valor de pertenencia distinto de 0, y resulta µµµµ A (x) = 0.5Luego:
B’ = [min(.5, 0), min(.5, .6), min(.5, 1),min(.5, .6), min(.5, 0) =
= (0, .5, .5, .5, 0)
Inferencia max-min - Ejemplo
52
En el caso que la entrada a la regla sea una lectura difusa A’, nosotros podemos considerar la intersección de A y A’, es decir:
min (ai, a’i) para inducir el B’
Inferencia max-min - Observación
54
El operador de de la implicación utilizado es el producto en lugar del min:
mij = ai * bj
� Dados los conjuntos difusos A y B, se obtiene la matriz M.
� Luego, dado el vector de ajuste de A’, se puede inducir el subconjunto B’.
Inferencia max-product
56
Inferencia max-product : Ejemplo
� A partir de la nueva matriz M se utiliza nuevamente la composición Max-min:
58
Inferencia DifusaEl método numérico desarrollado puede ser extendido a reglas con cláusulas múltiples en la premisa vinculadas por operadores de conjunción o disyunción.
Si A and/or B Entonces C
La extensión del método consiste en incorporar las matrices asociativas a cada uno de los conjuntos difusos A y B involucrados en la regla y resolverlos conforme a la naturaleza del operador que los vincula.
60
Inferencia Difusa
El efecto de la combinación de las conclusiones de varias reglas:
R1: A1 →→→→ C, ... Rn: An →→→→ Cy el valor resultante del aporte de cada una de
ellas, permite suponer que el resultado de la composición ( la unión):
C’ = C’1 ∪∪∪∪ C’2 ∪∪∪∪ C’3 ....... ∪∪∪∪C’n
según las operaciones entre conjuntos difusos
C’ = max (C’1 , C’2 , C’3 ,...... , C’n)
61
Decodificación - defuzzyfication
� Una vez llevado a cabo el proceso de razonamiento difuso, es necesario dotar al sistema de la capacidad de tomar decisiones. Así por ejemplo, el sistema debe saber qué fuerza de frenado que debemos aplicar si la velocidad es alta
� Para ello se utilizan las llamadas técnicas de decodificación, que transforman un conjunto difuso en un valor nítido.
� Las más usuales son:� El valor máximo (es decir, el más posible). � El centroide o centro de gravedad difuso
∑
∑
∈
∈=
Xx
A
Xx
A
centroidex
xx
y)(
)(
µ
µ
69
En resumen
� La lógica difusa se concibió originalmente como un método mejor para manejar y almacenar información imprecisa
� Ha demostrado ser una excelente alternativa para sistemas de control, ya que imita a la lógica de control humana
� Se pede incluir en cualquier sistema, desde dispositivos pequeños a sistemas de control complejos
� Usa un lenguaje impreciso pero muy descriptivo para operar con datos de entrada de una forma parecida a la usa un operador humano
� Es robusta y no demasiado dependiente de los datos de entrada y operadores elegido
� Incluso las primeras versiones funcionan bastantebien, con escasa necesidad de ajustes