Funciones De Membresia Y Operaciones Difusas
Si se tienen los conjuntos A(x)=X2 y B(x)=sen(πx) para x ϵ [0,1]. Hacer las operaciones difusas:
A) A Λ B
B) A V B
Con las dosdefiniciones dadas en clase
Desarrollo
A)
Las formas de calcular A Λ B son las siguientes
1) (A Λ B)(x)=min ( A(x) , B(x) )
2) (A Λ B)(x)=A(x) *B(x)
Las funciones A(x) y B(x) graficadasson las siguientes:
Donde B(x) está en una línea “sólida delgada” y la A(x) está como punteada. Calculando la operación difusa AND dada por (A Λ B) (x)=min (A(x), B(x)), se tendría la siguientegráfica:
Donde se observa que la operación (A Λ B) sería la línea “sólida gruesa” de la figura anterior. Donde se observa que la gráfica es la esperada, ya que está dada por el mínimo de las dosfunciones. El código utilizado para realizar esta operación es el siguiente:
clc
close all
t=0:0.001:1; %Se crea una vector de tiempo para x, de 0 a 1
Ax=t.^2; %Se genera la función demembresía A
Bx=sin(t.*pi); %Se genera la función de membresía B
plot(t,Ax,'k-.') %Se grafica la función de membresía A (punteada)
hold on
plot(t,Bx,'k') %Se grafica la función de membresía Bhold on
c=min(Ax,Bx); %Se calcula la función A and B
plot(t,c,'.k') %Se grafica la función A and B
hold on
Para calcular la operación (A Λ B) que está definida por: (A Λ B) )(x)=A(x)*B(x), el código utilizado es el siguiente:
clc
close all
t=0:0.001:1; %Se crea una vector de tiempo para x, de 0 a 1
Ax=t.^2; %Se genera la función de membresía A
Bx=sin(t.*pi); %Segenera la función de membresía B
plot(t,Ax,'k-.') %Se grafica la función de membresía A (punteada)
hold on
plot(t,Bx,'k') %Se grafica la función de membresía B
hold on
l=length(t) %Semide la longitud del vector de tiempo t
for i=1:l
AandB(i)=Ax(i)*Bx(i); % Se multiplica punto a punto cada valor de las
Funciones A(x) y B(x)
End
plot(t,AandB,'.k') %Se grafica los...
Regístrate para leer el documento completo.