Professional Documents
Culture Documents
Contenidos
Introduccin (cont)
La logica difusa es una extension de la logica tradicional
(Booleana) que utiliza conceptos de pertenencia de sets
mas parecidos a la manera de pensar humana
El concepto de un subset difuso fue introducido por L.A.
Zadeh en 1965 como una generalizacin de un subset
exacto (crisp subset) tradicional.
Los subsets exactos usan lgica Booleana con valores
exactos como por ejemplo la lgica binaria que usa
valores de 1 o 0 para sus operaciones.
Introduccin (cont)
La lgica difusa no usa valores exactos como 1 o 0 pero
usa valores entre 1 y 0 (inclusive) que pueden indican
valores intermedios (Ej. 0, 0.1, 0.2, ,0.9,1.0, 1.1, etc)
La lgica difusa tambin incluye los valores 0 y 1
entonces se puede considerar como un superset o
extensin de la lgica exacta.
Contenidos
Set difuso
Asumiendo que X es un set, un set difuso A en X es
asociado con una funcin caracterstica: A(x)
A(x): X -> [0, 1]
La funcin caracterstica es tipicamente denominada
funcin de pertenencia (membership function).
F(x)
Definitivamente no fro
0
-40
-20
10
x (Co)
20
30
{S X : 0 S N }
N
par binario
S : X -> {0,1}
S(x) = 1 si x es un miembro de S
S(x) = 0 si x no es un miembro de S
s(x)
subset
N
{S X : 0 S N }
x
intervalo de valores entre cero y uno (inclusive)
1
s(x)
x
1.0
adulto
anciano
(x) 0.5
0
0
25
50
X
75
100
Funciones de pertenencia
Ej: trapesoid
0,
x a
,
trapesoidal ( x; a, b, c , d ) = 1,
d x
d c ,
0,
x a
a x b
b x c
c x d
d x
20
40
60
80
100
xa
0,
x a
, a x b
b a
tringulo( x; a, b, c ) =
cx
, b x c
c b
cx
0,
Ej: triangle (x; 20, 60, 80)
20
40
60
80
100
x=a
0,
s ( x; a ) =
1,
xa
20
40
60
80
100
1 x c
2
Gausiana ( x; c, ) = e
1 x c
2
Gausiana ( x; c, ) = e
Bell ( x; a, b, c) =
1
x c 2b
1+ |
|
a
Bell ( x; a, b, c) =
1
x c 2b
1+ |
|
a
Bell ( x; a, b, c) =
1
x c 2b
1+ |
|
a
s ig m f ( x ; a , b , c ) =
1
1+e
a (xc )
d is p _ s ig .m
F
L R ( x ; c , , ) =
F
LR:
(x ) =
m ax ( 0 ,1 x )
2
c x
, x < c
x c
, x c
( x ) = ex p ( x
c=25
a=10
b=40
c=65
a=60
b=10
d ifflr .m
F u n c io n e s d e m e m b r e s a e n 2 D :
2 d m f .m
convexmf.m
C o re
C r o s s o v e r p o in ts
- cut
S u p p o rt
Contenidos
C = A B, C ( x) = Min[1, A( x) + B ( x)]
s u b s e t.m
fu z s e to p .m
Complemento
Requerimientos:
Borde: N(0)=1 and N(1) = 0
Monotonicidad: N(a) > N(b) if a < b
Involucin: N(N(a)) = a
Dos tipos:
Sugenos complement: N ( a ) = 1 a
s
1 + sa
Yagers complement:
( a ) = (1 a w )1/w
Complemento
N s(a ) =
1 a
1 + sa
( a ) = (1 a w )1/w
E x te n s io n e s c iln d r ic a s :
Base set A
C y lin d r ic a l E x t. o f A
c y l_ e x t.m
P r o y e c c io n e s :
T w o -d im e n s io n a l
M F
R(x,y)
p r o je c t.m
P r o je c tio n
o n to X
P r o je c tio n
o n to Y
A(x) =
m ax R(x, y )
B(y) =
m ax R(x, y )
B A
Ejemplos (cont):
A={.1/a,.1/b, .2/c, 0/d, 1/e}
B={.1/a, 0/b, .2/c, 0/d, .9/e}
C = A B = Max[A(x), B(x)] = {.1/a, .1/b, .2/c, 0/d, 1/e}
C = A B = Min[A(x), B(x)] = {.1/a, 0/b, .2/c, 0/d, .9/e}
Ejemplos (cont):
C (x) = A (x) B (x) = min( A (x), B (x) )
1
0
a(x)
b(x)
1
c(x)
0
Ejemplos (cont):
C (x) = A (x) B (x) = max( A (x), B (x) )
1
0
a(x)
b(x)
1
c(x)
0
(minino)
Tap(a,b) = ab
(producto algebraico)
(producto limitado)
Tdp(a,b) = a if b=1,
(producto drastico)
= b if a=1,
= 0 if a,b < 1
A lg e b r a ic
p ro d u c t:
T a(a , b )
tn o r m .m
Bounded
p ro d u c t:
T b(a , b )
D r a s tic
p ro d u c t:
T d(a , b )
(mximo)
S(a,b) = a+b-ab
(suma algebraico)
S(a,b) = 1 (a + b)
(suma limitada)
S(a,b) = a if b=0,
= b if a=0,
= 1 if a,b > 0
(suma drastica)
M a x im u m :
S m (a , b )
A lg e b r a ic
sum :
S a(a , b )
t c o n o r m .m
Bounded
sum :
S b(a , b )
D r a s tic
sum :
S d(a , b )
( A B) = A B
( A B) = A B
T(a, b) = N(S(N(a), N(b)))
S(a, b) = N(T(N(a), N(b)))
T m (a ,
T a(a ,
T b(a ,
T d(a ,
b)
b)
b)
b)
S m (a ,
S a(a ,
S b(a ,
S d(a ,
b)
b)
b)
b)
versiones
x1 , y1 x1 , y2
R= x2 , y1 x2 , y2
x3 , y1 x3 , y2
c o m p lv .m
Rmin(a,b) = min(a, b) = A B
(minimo)
Rap(a,b) = ab
(producto algebraico)
(producto limitado)
Rdp(a,b) = a if b=1,
(producto drstico)
= b if a=1,
= 0 if a,b < 1
Bounded sum
Max-min composition
Boolean fuzzy implicacin
Gougen's fuzzy implication (Jang. p62)
A c o u p le d w ith B
y
A e n ta ils B
R ( x , y ) = f ( A ( x ), B ( y )) = f (a , b )
fu z im p .m
fu z im p .m
Contenidos
A A
B
w
A
x is A
B
X
y is B
B B
T-norm
C2
A
x is A
B
X
y is B
C
Y
z is C
A1
B B1
C1
w1
A A2
B B2
C2
w2
Z
T-norm
B
C
x is A
y is B
z is C
Input
Reglas
Output
de
tres
velocidad
input
exacto
fuzzificador
controlador
difuso
defuzzificador
output
exacto
u
C
y
S
1.
2.
3.
4.
negativo
-1
-.5
positivo
zero
.5
Otra manera de definir las reglas del controlador es usando una matriz:
e(k)
e(k)
N
Z
P
Valores de la funcin de
pertenencia de input e(k)
Valores de la funcin de
Valores de la funcin de
pertenencia de input e(k)
f ( x) xdx
Centroide =
f (x )dx
En forma discreta:
Centroide =
f (x ) x
i= 0
n
f ( x)
i =0
Cg =
10
x
0 0.5 xdx + 4.110 xdx + 6. 1.8 xdx
4 .1
6. 1
10
x
0.5dx + 10 dx + .8dx
0
4 .1
6. 1
0 .5 + 1 .5 + 2 . 5 + 3 .5 + 4 .5 + 5 (5 / 10) + 6 ( 6 / 10) + 7 .8 + 8 .8 + 9 .8
Cg =
.5 + .5 + .5 + .5 + .5 + (5 / 10) + ( 6 / 10) + .8 + .8 + .8
Centroide =
f (x ) x
i= 0
n
i i
f ( x)
i =0
Calcular fuerza (strength) de las reglas usando Root Sum Squared (RSS):
"Heat" = (R32 + R62 + R82 + R92)1/2
= (02 + 02 + 0.52 + 02)1/2 = 0.5 (Heat)
"No-Chg" = (R52)1/2 = (0.52)1/2 = 0.5 (No Change)
"Cool" = (R12 + R22 + R42 + R72)1/2 = (02 + 02 + 0.52 + 0.52)1/2 = 0.707 (Cool)
Usando RSS-Centroide:
OUTPUT = (heat_center * heat_strength + zero_center * zero_strength + cool_center
* cool_strength) / (heat_strength + zero_strength + cool_strength)
(-100 * 0.5 + 0 * 0.5 + 100 * 0.707)/ (0.5 + 0.5 + 0.707) = 11.7%
Heat
-100
50
Cool
No-Chg
50
100
11.7
La coordenada horizontal se toma como el valor exacto. En este ejemplo el valor
de 11.7% (Enfriando) parece lgico ya que el e = -1 F de input indica que todavia
esta HOT a pesar de que ya se estaba enfriando (e(k) = +2.5 F, COOLING).
fuzzificador
controlador
difuso:
reglas if then
agregacin
defuzzificador
output
exacto
El modelo Mamdani:
Fue uno de los primeros mtodos de control difuso
obtenidos basados en la experiencia de operadores
humanos
En el modelo Mamdani se pueden usar diferentes
operadores (siempre que sean T-norm o T-conorm)
(minimo)
Tap(a,b) = ab
(producto algebraico)
(producto limitado)
Tdp(a,b) = a if b=1,
(producto drastico)
= b if a=1,
= 0 if a,b < 1
(suma algebraico)
S(a,b) = 1 (a + b)
(suma limitada)
S(a,b) = a if b=0,
= b if a=0,
= 1 if a,b > 0
(suma drastica)
T-norm = min
T-conorm = max
T-norm = product
T-conorm = max
Referencias:
[1] Yager, R., Filev, D., Essentials of Fuzzy Modeling and Control,
Wiley Interscience, NY, 1994
[2] Kartalopoulos, S., Understanding Neural Networks and Fuzzy
Logic, IEEE PRESS, NY, 1994
[3] Jang, J., et al, Neuro-Fuzzy and Soft Computing, Prentice
Hall,1997
[4] www.seattlerobotics.org