Download logica difusa

Document related concepts

Estándar de McFarland wikipedia , lookup

Lógica difusa wikipedia , lookup

Caropsis wikipedia , lookup

Adoxa moschatellina wikipedia , lookup

Recuperación difusa wikipedia , lookup

Transcript
LOGICA DIFUSA
• Lógica bivaluada: cada proposición debe ser verdadera o falsa.
• Lógica multivaluada: infinitos valores.
• En 1965 Lotfi A. Zadeh publicó su trabajó acerca de los
conjuntos difusos, la cual propone que los valores falso o
verdadero operen sobre el rango de números reales.
• Las matemáticas generadas por estas teorías son consistentes
y la lógica difusa puede ser una generalización de la lógica
clásica.
• La estadística mide la probabilidad que un evento futuro ocurra,
cuando la lógica difusa mide la ambigüedad de eventos que ya
han ocurrido.
CONJUNTOS DIFUSOS
• Un conjunto no tiene límites claramente definidos o precisos.
• La transición de la pertenencia o no-pertenencia de un
elemento, es gradual, y esta transición está caracterizada por
funciones de membresía.
• A = { ( x, µA (x) ) | x  X }
• donde µA (x) se conoce como la función de membresía
• X es llamado el universo de discurso
• x son los elementos de ese universo
EJEMPLO
• El universo puede tener elementos discretos (ordenados o no
ordenados) o ser un espacio continuo.
• El conjunto difuso A = “números inferiores a 3” se puede
expresar de la siguiente manera:
• A = { (x, µA (x) | x  X } , donde µA (x) se puede definir como:
• µA (x) = 1 – (x / 3)
Grados de membresía
1,2
1
0,8
0,6
0,4
0,2
0
0
0,5
1
1,5
2
Números inferiores a 3
2,5
3
3,5
INTERSECCIÓN (AND)
• µC (x) = min( µA (x), µB (x) ) = µA (x)  µB (x)
1,2
1
0,8
0,6
0,4
0,2
0
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
UNION (OR)
• µC (x) = max( µA (x), µB (x) ) = µA (x)  µB (x)
1,2
1
0,8
0,6
0,4
0,2
0
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
COMPLEMENTO (NOT)
• µÃ (x) = 1 - µA (x)
1,2
1
0,8
0,6
0,4
0,2
0
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
0
2
4
6
8
10
1,2
1
0,8
0,6
0,4
0,2
0
0
2
4
6
8
10
F. M. TRIANGULAR
• Una FM triangular se especifica mediante tres parámetros { a, b,
c }, de la siguiente forma:
xa
 0,
x a
, a xb

triángulo ( x; a, b, c)   b  a
cx

, b xc
c b
 0,
cx
• Utilizando operadores min y max, la expresión anterior se
puede expresar como sigue:

 x a c  x 
triángulo ( x; a, b, c)  max min
,
,0 
ba cb 

F. M. TRAPEZOIDAL
• Una FM trapezoidal se especifica mediante cuatro parámetros {
a, b, c, d }, de la siguiente forma:
xa
 0,
x a
, a xb

b  a
trapecio( x; a, b, c, d )   1,
b xc
d  x
d  c , c  x  d
 0,
dx

• Utilizando operadores min y max, la expresión anterior se
puede expresar como sigue:

 x a d  x 
trapecio( x; a, b, c, d )  max min
,1,
,0 
ba d c 

F. M. GAUSIANA Y TIPO CAMPANA
• Una FM gausiana se especifica con dos parámetros { c,  }; c
representa el centro de la FM y  determina su anchura.
gauss ( x; c, )  e
1  x  c 

 

2   
2
• Una FM del tipo campana generalizada (o FM tipo campana) se
caracteriza mediante tres parámetros { a, b, c }; donde c y a
definen el centro y el ancho de la FM, respectivamente,
mientras que el parámetro b controla las pendientes en los
puntos de cruce.
campana( x; a, b, c) 
1
x  c 2b
1
a
FORMAS DE ONDA
• Las FM que se muestran en la figura corresponden a las
definidas por los siguientes valores: triángulo(x; 6, 7, 9),
trapecio(x; 5, 6, 8, 10), gauss(x; 0.7, 3) y campana(x; 1.5, 5, 3).
SINGLETON
• Un conjunto difuso que contiene un único elemento, x0, es denominado
una singularidad difusa o fuzzy singleton.
• El uso de singletons simplifica considerablemente el proceso de
inferencia y posibilita la implementación electrónica eficiente de los
sistemas de inferencia difusos.
• µs(x) = 0 si x  x0
µs(x) = 1 si x = x0
µs(x)
x0
REGLAS DIFUSAS
IF....THEN
• Los conjuntos y los operadores difusos son los sujetos y
predicados de la lógica difusa. Las reglas if-then son usadas
para formular las expresiones condicionales que abarca la
lógica difusa
• if x is A then y is B
• Donde A y B son los valores lingüísticos definidos por los
conjuntos definidos en los rangos de los universos de discurso
llamados X e Y, respectivamente.
• La parte if de la regla ´x es A´ es llamada el antecedente o
premisa, mientras la parte then de la regla ´y es B´ es llamada
la consecuencia o conclusión
ESTRUCTURA DEL SISTEMA
•La fusificación de las variables de entrada.
•Aplicación del operador difuso (AND ó OR) en el antecedente.
•Implicación del antecedente con el consequente.
•Agregación de los consecuentes a través de las reglas.
•La defusificación.
ESTRUCTURA DEL SISTEMA
Regla 1
Entrada 1
Regla 2
Regla 3

Salida
Entrada 2
Regla 4
Las entradas
son números
limitados a un
rango
especifico.
Entradas no
difusas.
Las reglas son
evaluadas en
paralelo
usando un
razonamiento
difuso.
Los resultados
de las reglas
son
combinadas y
defusificadas.
El resultado es
un valor
numérico no
difuso.
FUSIFICACIÓN DE LAS ENTRADAS
•Para cada entrada existen diferentes conjuntos con variables
lingüísticas, en nuestro caso hay dos subconjuntos para cada
variable de entrada.
X = {BAJO, ALTO}
Y = {BAJO, ALTO}
•Las variables de entrada X e Y, al igual que la variable de salida Z
pertenecen al mismo universo de discurso comprendido en el rango
entre 0 y 10.
•Las funciones de membresía son:
BAJO(T) = 1 - ( T / 10 )
ALTO(T) = T / 10
FUSIFICACIÓN DE LAS ENTRADAS
1
Salida difusa = 0,5
10
Entrada no difusa = 5
REGLAS DEL SISTEMA
Regla 1: if X es BAJO and Y es BAJO then Z es ALTO
Regla 2: if X es BAJO and Y es ALTO then Z es BAJO
Regla 3: if X es ALTO and Y es BAJO then Z es BAJO
Regla 4: if X es ALTO and Y es ALTO then Z es ALTO
Otra manera de analizar las reglas es mediante una tabla:
X
BAJO
ALTO
BAJO
ALTO
BAJO
ALTO
BAJO
ALTO
Y
APLICAR EL OPERADOR DIFUSO
•Una vez que las entradas han sido fusificadas, conocemos el
grado en el cual cada parte del antecedente ha sido satisfecho
para cada regla.
•Sí el antecedente de una regla dada tiene más de una parte, el
operador difuso es aplicado para obtener un número que
represente el resultado del antecedente para esa regla.
•Para la operación AND existen dos formas conocidas como min
(mínimo) y prod (producto algebraico).
• Para la operación OR existen dos formas conocidas como max
(máximo) y sum (suma algebraica).
• Además de estos métodos de construcción, uno puede crear
su propio método para AND y OR escribiendo cualquier función.
APLICAR EL OPERADOR DIFUSO
X
Y
BAJO(X
)
ALTO(X)
BAJO(Y)
ALTO(Y)
1
2
3
4
0
0.32
1
0
0.68
0.32
0.68
0.32
0
0
1
1
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
0,9
0,8
0,7
ALTO
BAJO
S
u(Y)
u(X)
•El grado de verdad para la premisa de una regla es referida
como el nivel de disparo y es denotada como  (alfa).
ALTO
0,6
BAJO
0,5
0,4
S
0,3
0,2
0,1
0
0 1 2 3 4 5 6 7 8 9 10
X
0
1
2
3
4
5
Y
6
7
8
9
10
METODO DE IMPLICACION
•Un consecuente es un conjunto difuso representado por una
función de membresía, en nuestro caso tiene asignada dos, las
cuales son:
Z = { BAJO, ALTO }
•Hay dos métodos conocidos que son las mismas funciones
usadas por el método AND: min (mínimo), que trunca el
conjunto difuso de salida, y el PROD (producto), el cual escala
al conjunto difuso de salida.
•El grado de verdad de la premisa de cada regla es computada
y aplicada al consecuente de cada regla. Este resultado es un
subconjunto difuso que será asignado a cada variable de salida
correspondiente. Nosotros aplicamos en este ejemplo el método
de Mamdani ó método de inferencia MIN-MAX. Para cada regla
hacemos el MIN entre el nivel de disparo y la función de
membresía de la variable de salida indicada en el consecuente.
METODO DE IMPLICACION
1
1
0,8
0,8
0,6
0,6
0,4
0,4
0,2
0,2
0
0
0
1
2
3
4
5
6
7
8
9
10
0
1
2
3
4
R1
1
0,8
0,8
0,6
0,6
0,4
0,4
0,2
0,2
0
0
1
2
3
4
5
R3
6
7
8
9
10
R2
1
0
5
6
7
8
9
10
0
1
2
3
4
5
R4
6
7
8
9
10
METODO DE AGREGACION
•Agregación o composición es el proceso por el cual los conjuntos
difusos que representan las salidas de cada regla son combinadas
en un único conjunto difuso.
•La salida del proceso de agregación es un conjunto difuso para
cada salida variable.
•Los dos métodos más conocidos son: max (máximo) y sum
(suma).
•Lo más común cuando usamos la función 'min' en el método de
implicación es corresponder con la función 'max' en el método de
agregación.
•De igual manera si elegimos la función 'prod' para el método de
implicación, es usual hacerlo corresponder con la función 'sum'
para el método de agregación.
METODO DE AGREGACION
•En el proceso de composición o agregación, todos los
subconjuntos difusos son combinados para dar un único conjunto
de salida, esto se logra haciendo el MAX de las funciones
mostradas en los gráficos anteriores, obteniéndose la siguiente
figura:
1
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
0
1
2
3
4
5
6
Composición
7
8
9
10
DEFUSIFICACION
•La entrada para el proceso de defusificación es un conjunto difuso
(la salida de la etapa de agregación) y la salida es un simple
número concreto. Los sistemas del mundo real requieren un
resultado numérico.
•El método más popular de defusificación es el cálculo del centro
de gravedad ó centroide, el cual retorna el centro del área bajo la
curva. Al igual que en los pasos anteriores existen más métodos de
cálculo.
Centro de gravedad
DEFUSIFICACION
Forma continua
•Para calcular el algoritmo del centro de gravedad (cog, siglas en
ingles) dividimos al Momento de la función por el Area de la función:
Forma discreta
•Se divide la función en partes iguales y se calcula haciendo la
sumatoria de todos los puntos de la siguiente manera:
•Hay que tener en cuenta que al dividir en partes iguales al
conjunto de salida se simplifican los z, si las particiones fueran
diferentes habría que tener en cuenta el z porque sino se pierde el
sentido de Momento y Area de la función.
DEFUSIFICACION
Forma continua:
Forma discreta para 10 muestras:
PRODUCTO CARTESIANO
El producto cartesiano es usado para definir una relación entre dos
o más conjuntos (sean ordinarios o difusos).
El producto cartesiano es denotado como AxB y es definido como:
Una relación difusa R de A y B es un subconjunto difuso de AxB,
donde R(a, b) es la función de membresía de R.
R también puede ser representado como una matriz, depositando
cada elemento de R(a, b):
IMPLICACION
•La regla 'si el nivel es bajo, entonces abro V1' es llamada una
implicación, porque el valor de 'nivel' implica el valor de 'V1' en el
controlador.
•Hay muchas maneras de definir la implicación, se puede elegir una
función matemática distinta en cada caso para representar a la
implicación.
•Cada regla puede ser interpretada como una relación difusa como
Ri: ( X  Y )  [ 0, 1 ].
•Cuando usamos una conjunción A  B, la interpretación de las
reglas if-then sería "es verdadero que A y B cumplen
simultáneamente".
•Esta relación es simétrica y puede ser invertida. La relación R es
computada por el método de Mamdani utilizando el operador Min.
•La representación de la relación difusa R del modelo entero es
dado por la disjunción (unión) de las K relaciones de cada regla
individual Ri.
IMPLICACION
MODUS PONENS GENERALIZADO
Premisa 1:
x es A’
Premisa 2:
Si x es A entonces y es B
Consecuente:
entonces y es B’
El principio anterior establece que en la medida que A’ sea similar a A,
entonces se puede deducir un B’ que es similar a B. Obsérvese que el
MP es un caso especial del MPG cuando A’ es completamente igual A
entonces B’ es B. Por otra parte, regla composicional se basa en el
siguiente principio intuitivo:
•dados dos conjuntos difusos A y B definidos en los conjuntos universos
X e Y respectivamente,
•si existe una relación R entre A y B definida en X x Y,
•entonces a partir del conjunto A se puede deducir B a través de la
composición entre A y la relación R de la siguiente forma:
B =AR
INFERENCIA
x  A’
µA’
Si x es A entonces y es B
µAB
R
y  B’
µB’
INFERENCIA
El grado de cumplimiento del i antecedente de cada regla sería:
Para un conjunto difuso singleton la ecuación anterior se
simplifica:
El conjunto difuso de salida del modelo lingüístico es:
EJEMPLO
1
1
0,9
0,9
0,8
0,8
0,7
0,7
0,6
0,6
0,5
0,5
0,4
0,4
0,3
0,3
0,2
0,2
0,1
0,1
0
0
0
1
2
3
4
A’
5
6
7
8
9
10
B’
0
1
2
3
4
5
A
Elementos del dominio X
3
4
5
6
7
0
0,5
1
0,5
0
B
Elementos del dominio Y
3
4
5
6
7
0
0,5
1
0,5
0
6
7
8
9
10
EJEMPLO
R
3
4
5
6
7
3
0
0
0
0
0
4
0
0,5
0,5
0,5
0
5
0
0,5
1
0,5
0
6
0
0,5
0,5
0,5
0
7
0
0
0
0
0
R : si x es A entonces y es B
µAB
1
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
7
5
3
4
5
6
3
7
EJEMPLO
 = max [ A’(x)  A(x) ] = max ( [0; 0.5; 0; 0; 0]  [0; 0.5; 1; 0.5; 0] )
 = max [0; 0.5; 0; 0; 0] = 0.5
B’ =   B = 0.5  [0; 0.5; 1; 0.5; 0]
B’ = 0.5  [0; 0.5; 0.5; 0.5; 0]