Está en la página 1de 45

22/10/2023

1
Haga clic aquí para modificar. Haga clic aquí para modificar.

Fuzzy Logic
¿Qué es la lógica difusa?
Un paradigma computacional que se basa en cómo piensan los humanos

Fuzzy Logic mira el mundo en términos imprecisos, de la misma manera


que nuestro cerebro toma la información (por ejemplo, la temperatura es
alta, la velocidad es lenta) y luego responde con acciones precisas.

El cerebro humano puede razonar con incertidumbres, vaguedades y


juicios. Las computadoras solo pueden manipular valoraciones precisas.
La lógica difusa es un intento de combinar las dos técnicas.

"Fuzzy" - un nombre inapropiado, ha dado lugar a la sospecha errónea de


que FL es de alguna manera menos exigente que la lógica tradicional

1
22/10/2023

Fuzzy Logic
¿Qué es la lógica difusa?

FL es, de hecho, una metodología precisa para resolver problemas.

Es capaz de manejar simultáneamente datos numéricos y conocimiento


lingüístico.

Una técnica que facilita el control de un sistema complicado sin


conocimiento de su descripción matemática..

La lógica difusa difiere de la lógica clásica en que las declaraciones ya


no son blancas o negras, verdaderas o falsas, activadas o desactivadas.
En la lógica tradicional, un objeto adquiere un valor de cero o uno.
En la lógica difusa, una declaración puede asumir cualquier valor real
entre 0 y 1, que representa el grado en que un elemento pertenece a un
conjunto dado.

Fuzzy Logic
Historia de la lógica difusa

Professor Lotfi A. Zadeh


http://www.cs.berkeley.edu/~zadeh/

En 1965, Lotfi A. Zadeh, de la Universidad de California en Berkeley, publicó


"Conjuntos difusos", que exponían las matemáticas de la teoría de conjuntos
difusos y, por extensión, la lógica difusa. Zadeh había observado que la lógica
informática convencional no podía manipular los datos que representaban ideas
subjetivas o vagas, por lo que creó una lógica difusa para permitir que las
computadoras determinen las distinciones entre datos con tonos de gris, similar al
proceso del razonamiento humano.

Source: August 30, 2004


(Computerworld)

http://www.computerworld.com/news/2004/story/0,11280,95282,00.html

2
22/10/2023

Aplicaciones de muestra
En la ciudad de Sendai en Japón, un sistema de metro de 16 estaciones está
controlado por una computadora borrosa (Seiji Yasunobu y Soji Miyamoto de
Hitachi): el viaje es tan suave que los pasajeros no necesitan sujetar correas

Nissan: transmisión automática difusa, sistema de frenado


antideslizante difuso

CSK, Hitachi - Reconocimiento de escritura a mano

Sony - Reconocimiento de caracteres impresos a mano

Ricoh, Hitachi - Reconocimiento de voz

El mercado de valores de Tokio ha tenido al menos una cartera de


negociación de valores basada en Fuzzy Logic que superó el promedio de
intercambio de Nikkei

Aplicaciones de muestra
La NASA ha estudiado el control difuso para el acoplamiento espacial
automatizado: las simulaciones muestran que un sistema de control
difuso puede reducir en gran medida el consumo de combustible

Canon desarrolló una cámara de enfoque automático que utiliza un


dispositivo de carga acoplada (CCD) para medir la claridad de la
imagen en seis regiones de su campo de visión y utilizar la
información proporcionada para determinar si la imagen está
enfocada. También rastrea la velocidad de cambio del movimiento de
la lente durante el enfoque y controla su velocidad para evitar el
sobreimpulso.

El sistema de control difuso de la cámara utiliza 12 entradas: 6 para obtener los


datos de claridad actuales proporcionados por el CCD y 6 para medir la velocidad
de cambio del movimiento de la lente. La salida es la posición de la lente. El
sistema de control difuso usa 13 reglas y requiere 1.1 kilobytes de memoria.

http://en.wikipedia.org/wiki/Fuzzy_system

3
22/10/2023

Aplicaciones de muestra
Para las lavadoras, el control Fuzzy Logic casi se está convirtiendo en una
característica estándar

Controladores difusos para cargar sensores de peso, mezcla de telas y suciedad y establecer
automáticamente el ciclo de lavado para el mejor uso de la energía, el agua y el detergente.

GE WPRB9110WH Top Load Washer

Haier ESL-T21 Top Load Washer

LG WD14121 Front Load Washer

Miele WT945 Front Load All-in-One Washer / Dryer

AEG LL1610 Front Load Washer

Zanussi ZWF1430W Front Load Washer

Otros: Samsung, Toshiba, National, Matsushita, etc.

Sistemas de control

• Control convencional versus control difuso

4
22/10/2023

Sistemas de control en general


Objetivo El objetivo de cualquier sistema de control es producir un conjunto
de salidas deseadas para un conjunto dado de entradas.

Muestras
Un termostato doméstico toma una
entrada de temperatura y envía una
señal de control a un horno..

Crankshaft (red), pistons (gray) in


their cylinders (blue), and flywheel
(black)

Image: http://en.wikipedia.org/wiki/Crankshaft

El controlador del motor de un automóvil responde a variables como la


posición del motor, la presión del colector y la temperatura del cilindro
para regular el flujo de combustible y la sincronización de la chispa..

Control convencional vs. difuso


Tabla de búsqueda
En el caso más simple, un controlador toma sus señales de una tabla de búsqueda,
que indica qué salida producir para cada entrada o combinación de entradas.

Muestra
La tabla puede decirle al controlador,
"SI la temperatura es 85, ENTONCES aumente la velocidad del ventilador del horno
a 300 RPM.”
Inconvenientes
El problema con el enfoque tabular es que la tabla puede ser muy larga, especialmente
en situaciones donde hay muchas entradas o salidas. Y eso, a su vez, puede requerir
más memoria de la que el controlador puede manejar, o más de lo que es rentable.

Los mecanismos de control tabular también pueden dar una respuesta irregular y
desigual, ya que el controlador salta de un valor basado en la tabla al siguiente.

5
22/10/2023

CONTROL CONVENCIONAL VS. DIFUSO


Fórmula matemática
La alternativa habitual a las tablas de búsqueda es hacer que el controlador ejecute una
fórmula matemática, un conjunto de ecuaciones de control que expresan la salida en
función de la entrada.

Idealmente, estas ecuaciones representan un modelo preciso del comportamiento


del sistema.
Por ejemplo:
 2   2 
m 2 ( x + l sin  )l cos − m 2 (l cos )l sin  = mgl sin 
 t   t 

Desventaja
Las fórmulas pueden ser muy complejas, y su elaboración en tiempo real puede ser
más de lo que un controlador (o máquina) asequible puede gestionar.

CONTROL CONVENCIONAL VS. DIFUSO


Desventaja del enfoque de modelado matemático
Puede ser difícil o imposible derivar un modelo matemático viable en primer
lugar, haciendo que los métodos tabulares y basados en fórmulas no sean
prácticos
Aunque un ingeniero automotriz podría comprender la relación general entre, por
ejemplo, el tiempo de ignición, el flujo de aire, la mezcla de combustible y las
RPM del motor, la matemática exacta que subyace a esas interacciones puede
ser completamente oscura.

¿Por qué usar Fuzzy Logic?

FL supera las desventajas del control basado en tablas y en fórmulas.

Fuzzy no tiene requisitos de memoria difíciles de manejar para las tablas de


búsqueda, y tampoco exige grandes cantidades de soluciones basadas en
fórmulas..

6
22/10/2023

Control convencional vs. difuso


¿Por qué usar Fuzzy Logic?

FL puede hacer que el desarrollo y la implementación sean mucho más simples.

No necesita modelos matemáticos complejos, solo una comprensión práctica del


comportamiento general del sistema..

Los mecanismos FL también pueden dar como resultado una mayor precisión y un
control más uniforme.

Lógica difusa explicada


Teoría de conjuntos difusos

¿Es un hombre cuya altura es de 1.90 promedio o alto?

Un sistema difuso podría decir que es en parte mediano y en parte alto.

REPRESENTACIÓN BOOLEANA REPRESENTACIÓN DIFUSA

En términos difusos, la altura del


hombre se clasificaría dentro de un
rango de [0, 1] como promedio a un
grado de 0.6 y alto a un grado de 0.4

7
22/10/2023

Explicación de la Lógica Difusa


Teoría de conjuntos difusos

¿Es un hombre cuya altura es de 5 '11-1 / 2 "mediano o alto?

Un sistema difuso podría decir que es en parte mediano y en parte alto.

En otras palabras, FL reconoce no solo alternativas claras y en blanco y negro, sino


también las infinitas gradaciones intermedias.

El razonamiento difuso elimina la vaguedad al asignar números específicos a esas


gradaciones. Estos valores numéricos se utilizan para obtener soluciones exactas a los
problemas..
En términos difusos, la altura del hombre se
clasificaría dentro de un rango de [0, 1] como medio
a un grado de 0.6 y alto a un grado de 0.4.

Proceso de inferencia difusa

• ¿Cuáles son los pasos necesarios para crear un


sistema de control difuso?

18

8
22/10/2023

Proceso de inferencia difusa

Proceso de inferencia difusa

p.ej. angulo
p.ej. fuerza
Evaluación de
Fuzzificacion Defuzzificación
reglas

Fuzzificación: traducir la entrada en valores de verdad


Evaluación de reglas: Calcular valores de verdad de salida
Defuzzification: transfiere valores de verdad a la salida

PROBLEMA : EVITAR OBSTÁCULOS

Navegación robotizada

obstaculo
(obsx, obsy)

(x,y)

¿Puedes describir cómo debe


girar el robot en función de la
Evitar obstáculos y perseguir objetivos
posición y el ángulo del
Demostración obstáculo?

9
22/10/2023

Otro ejemplo: Conjuntos difusos para la navegación del robot

Ángulo y distancia

PEQUEÑO

MEDIO

GRANDE

CERCA

LEJOS

MUY LEJOS

* Sub rangos para ángulos y distancias superpuestas

SISTEMAS DIFUSOS PARA EVITAR OBSTÁCULOS


SISTEMA DE VISIÓN
Obstáculo más cercano (distancia y ángulo)
Sistema difuso 3 (dirección)

CERCA LEJOS MUY LEJOS p.ej. Si la distancia desde el obstáculo está


CERCA y
PEQUEÑO Muy brusco Giro brusco Giro Medio
El ángulo del obstáculo es PEQUEÑO
MEDIO Giro brusco Giro medio Giro leve Luego gire muy bruscamente.
GRANDE Giro medio Giro leve Giro cero
angulo

Sistema difuso 4 (ajuste de velocidad)


CERCA LEJOS MUY LEJOS
p.ej. Si la distancia desde el obstáculo está CERCA
PEQUEÑO Muy lento Velocidad Acelerando
y El ángulo del obstáculo es PEQUEÑO
lenta
Luego muévete muy lentamente.
MEDIO Velocidad Velocidad Muy Rápido
lenta rápida
GRANDE Velocidad Muy Rápido Velocidad velocidad
rápida tope

10
22/10/2023

CONTROL DIFUSO
Diferentes etapas de control difuso
Fuzzificación

Las variables de entrada son grados de membresía asignados en varias clases

p.ej. Una entrada de temperatura puede clasificarse según su grado de


frialdad, frescor, calor o calor.

El propósito de la fuzzificación es mapear las entradas de un conjunto de


sensores (o características de esos sensores) a valores de 0 a 1 usando un
conjunto de funciones de membresía de entrada.

Veremos un ejemplo
completo de los pasos
involucrados más adelante..

Fuzzification
Ejemplo de fuzzificación

Conjuntos difusos = {Negativo, Cero, Positivo}

NEGATIVO CERO POSITIVO


1.0

0.0

-3.0 -2.5 -1.0 -0.5 0.0 0.5 1.0 2.5 3.0

Asumiendo que estamos usando funciones de membresía


trapezoidal.
¿Cuál es el grado de membresía
Entrada Nitida: x = 0.25 de x en cada uno de los
conjuntos difusos?

11
22/10/2023

Cálculos Ejemplo
NITIDO Input: x = 0.25

  x −a d−x  
Fcero(0.25) FZE (0.25) = max  min  ,1, ,0
  b−a d−c  

  0.25 − (−1) 1 − 0.25  


= max  min  ,1, ,0
  −0.25 − (−1) 1 − 0.25  

= max ( min (1.67,1,1) , 0 )


=1

Fpositivo(0.25)   0.25 − (−0.5) 3 − 0.25  


FP (0.25) = max  min  ,1, ,0
  0.5 − (−0.5) 3 − 0.25  
= max ( min ( 0.75,1,5.5 ) , 0 )
= 0.75

  0.25 − (−3) 0.5 − 0.25  


Fnegativo(0.25) FN (0.25) = max  min  ,1, ,0
  −2.5 − (−3) 0.5 − (−0.5)  
= max ( min ( 6.5,1, 0.25 ) , 0 )
= 0.25

Cálculos Ejemplo
Crisp Input: y = −0.25
  −0.25 − (−1) 1 − (−0.25)  
Fcero(-0.25) FZE (−0.25) = max  min  ,1, ,0
  −0.25 − (−1) 1 − 0.25  

= max ( min (1,1,1.67 ) , 0 )


=1

  −0.25 − (−3) 3 − (−0.25)  


Fpositivo(-0.25) FP (−0.25) = max  min  ,1, ,0
  0.5 − (−0.5) 3 − 2.5  

= max ( min ( 0.25,1, 6.5 ) , 0 )


= 0.25

  −0.25 − (−3) 0.5 − (−0.25)  


FN (−0.25) = max  min  ,1, ,0
Fnegativo(-0.25)   −2.5 − (−3) 0.5 − (−0.5)  

= max ( min ( 5.5,1, 0.75 ) , 0 )


= 0.75

12
22/10/2023

Funciones de membresía trapezoidal

Trapecio izquierdo
Pendiente izquierda = 0
Pendiente derecha = 1 / (A - B)
a b
CASO 1: X < a
Valor de membresía= 1

CASO2: X >= b
Valor de membresía= 0

CASO 3: a < x < b


Valor de membresía= Pendiente derecha * (X - b)

Funciones de membresía trapezoidal

Trapecio Derecho

Pendiente izquierda = 1 / (B - A)
Pendiente derecha = 0 a b
CASO 1: X <= a
Valor de membresía= 0

CASO 2: X >= b
Valor de membresía= 1

CASO 3: a < x < b


Valor de membresía= Pendiente Izquierda * (X - a)

13
22/10/2023

Funciones de membresía trapezoidal


Trapecio Regular

Pendiente izquierda = 1 / (B - A)
Pendiente derecha = 1 / (C - D)
a b c d
CASO 1: X <= a Or X >= d
Valor de membresía= 0

CASO 2: X >= b And X <= c


Valor de membresía= 1

CASO3: X >= a And X <= b


Valor de membresía= Pendiente Izquierda * (X - a)

CASO 4: (X >= c) And (X <= d)


Valor de membresía= Pendiente Derecha * (X - d)

Fuzzy Control
Diferentes etapas de control difuso

2. Evaluación de reglas

Las entradas se aplican a un conjunto de reglas de control if / then.

p.ej. SI la temperatura es muy alta, LUEGO ajuste la velocidad del ventilador muy alta.

14
22/10/2023

FUZZY CONTROL
Diferentes etapas de control difuso
Las reglas difusas siempre se escriben de la siguiente forma:

If (input1 es membresía function1) and/or (y /o)


(input2 es membresía function2) and/or (y /o)
....

Then (salida es salida función de membresía).

Por ejemplo, uno podría inventar una regla que diga:


if la temperatura es alta and la humedad es alta then cuarto está caliente

Fuzzy Control
Diferentes etapas de control difuso

2. Evaluación de reglas

Las entradas se aplican a un conjunto de reglas de control if / then.

Los resultados de varias reglas se suman para generar un conjunto de "salidas


difusas".

Fuzzy Associative Memory Matrix


FAMM
Outputs x
NL=-5 N ZE P
NS=-2.5 NL NS NS W1 W4 W7
N
ZE=0 y W2 W5 W8
ZE NS ZE PS
PS=2.5 P
PS PS PL W3 W6 W9
PL=5.0

15
22/10/2023

Fuzzy Control
Ejemplo de evaluación de reglas

Suponiendo que estamos usando el operador de conjunción (AND) en los


antecedentes de las reglas, calculamos la regla de activación fuerza Wn.

FAMM W1 = min  FN (0.25), FN ( −0.25)  = min 0.25, 0.75 = 0.25

x
W2 = min  FN (0.25), FZE ( −0.25)  = min 0.25,1 = 0.25
N ZE P W3 = min  FN (0.25), FP ( −0.25)  = min 0.25, 0.25 = 0.25
W4 = min  FZE (0.25), FN ( −0.25)  = min 1, 0.75 = 0.75
NL NSW4 NS W7
N W1
y
ZE NS ZE PS

W5 = min  FZE (0.25), FZE ( −0.25)  = min 1,1 = 1


P W2 W5 W8
PS PS PL
W3 W6 W9

W6 = min  FZE (0.25), FP ( −0.25)  = min 1, 0.25 = 0.25


Fuzzy Associative Memory Matrix W7 = min  FP (0.25), FN ( −0.25)  = min 0.75, 0.75 = 0.75
W8 = min  FP (0.25), FZE ( −0.25)  = min 0.75,1 = 0.75
W9 = min  FP (0.25), FP ( −0.25)  = min 0.75, 0.25 = 0.25

¿Una FAMM necesita ser un


cuadrado?

¿Es posible usar más de 2


parámetros de entrada para un
FAMM?

16
22/10/2023

Fuzzy Control
Diferentes etapas de control difuso

3. Defuzzificación

Las salidas difusas se combinan en valores discretos necesarios para controlar


el mecanismo de control.

(p.ej. Un ventilador de enfriamiento)

Veremos un ejemplo
completo de los pasos
involucrados más adelante.

Fuzzy Control
Ejemplo de defuzzificación

Suponiendo que estamos utilizando el centro de Gravedad método


de defuzzificación

(W1  NL + W2  NS + W3  PS + W4  NS + W5  ZE + W6  PS + W7  NS + W8  PS + W9  PL)
OUTPUT = 9

W
i =1
i

=
( 0.25  (−5) + 0.25  2.5 + 0.25  2.5 + 0.75  2.5 + 1 0 + 0.25  2.5 + 0.75  2.5 + 0.75  2.5 + 0.25  5 )
( 0.25 + 0.25 + 0.25 + 0.75 + 1 + 0.25 + 0.75 + 0.75 + 0.25 )

= -1.25/ 4.5 = -0.278


FAM
Outputs x
NL=-5 N ZE P
NS=-2.5 NLW1 NS W4 NS W7
N
ZE=0 y
ZE NSW2 ZE W5 PS W8
PS=2.5 P
PSW3 PS W6 PL W9
PL=5.0

17
22/10/2023

método de defuzzificación
Para calcular la salida de este FIS dadas las entradas, uno debe seguir seis
pasos:

1. Determinar un conjunto de reglas difusas


2. Fuzzificar las entradas utilizando las funciones de membresía de
entrada,
3. Combinando las entradas difusas de acuerdo con las reglas difusas
para establecer una fuerza de regla,
4. Encontrar la consecuencia de la regla combinando la fuerza de la regla
y la función de membresía de salida (si es un FIS Mamdani),
5. Combinando las consecuencias para obtener una distribución de
salida, y
6. Dezfusificar la distribución de salida (este paso se aplica solo si se
necesita una salida nítida (clase)).

EJEMPLO
Problema de péndulo invertido

18
22/10/2023

Problema de péndulo invertido

Un caso de prueba clásico en control integrado

Un poste con un peso en la parte superior está montado en un carro accionado por
motor. El poste puede balancearse libremente, y el carro debe moverse hacia
adelante y hacia atrás para mantenerlo vertical..
Un controlador monitorea el ángulo y el movimiento del poste y dirige el carrito para
ejecutar los movimientos de equilibrio necesarios..

Un vistazo a la historia: Conferencia internacional en Tokio (1987) Takeshi Yamakawa


demostró el uso del control difuso, a través de un conjunto de chips lógicos difusos
dedicados simples, en un experimento de "péndulo invertido". (Experimentos posteriores:
montó una copa de vino que contenía agua o incluso un ratón vivo en la parte superior del
péndulo).

Problema de péndulo invertido

Solución matemática convencional

La solución utiliza una ecuación diferencial de segundo orden que


describe el movimiento del carro en función de la posición y la velocidad
del poste:

 2   2 
m 2 ( x + l sin  )l cos − m 2 (l cos )l sin  = mgl sin 
 t   t 

19
22/10/2023

Problema de péndulo invertido

Valores detectados:
X - posición del objeto con respecto al eje horizontal
 - ángulo del poste con respecto al eje vertical
Valores derivados:
X’ - Velocidad a lo largo del eje x
’ - Velocidad angular

Variables de entrada: valores percibidos y derivados


Salida del controlador: F - fuerza a aplicar al carro

Valores de entrada derivados


Podemos derivar nuevos valores de entrada para nuestro Sistema
de control difuso utilizando ecuaciones físicas.

Una muestra de cálculo de algunos de los valores derivados:


velocidad angular (theta ')

theta time theta'


2 1
10 2 8
30 3 20
40 4 10
47 5 7
32 6 -15
28 7 -4
19 8 -9

20
22/10/2023

Parámetros para un sistema difuso


Una vez que haya determinado las entradas y salidas apropiadas para su
aplicación, hay tres pasos para diseñar los parámetros para un sistema
difuso:

1. Especifique los conjuntos difusos que se asociarán con cada variable


2. Decide cuáles serán las reglas difusas
3. Especificar la forma de las funciones de membresía.

Reglas difusas (FAMM 1)


Base de regla difusa y la FAMM correspondiente para los vectores de velocidad
y posición del problema de equilibrio de péndulo invertido

1. SI el carro está a la izquierda Y el carro va a la izquierda LUEGO empuje el carro hacia la derecha
2. SI el carro está a la izquierda Y el carro no se mueve LUEGO empuje ligeramente el carro hacia la
derecha
3. SI el carro está a la izquierda Y el carro va a la derecha ENTONCES no empuje el carro
4. SI el carro está centrado Y el carro va hacia la izquierda LUEGO empuje ligeramente el carro hacia la
derecha
5. SI el carro está centrado Y el carro no se mueve ENTONCES no empuje el carro
6. SI el carro está centrado Y el carro va hacia la derecha LUEGO empuje ligeramente el carro hacia la
izquierda
7. SI el carro está a la derecha Y el carro va a la izquierda ENTONCES no empuje el carro
8. SI el carro está a la derecha Y el carro no se mueve ENTONCES empuje el carro a la izquierda
9. SI el carro está a la derecha Y el carro va a la derecha LUEGO empuje el carro hacia la izquierda

21
22/10/2023

Posición vs. Velocidad (FAMM 1)


Si el carrito está demasiado cerca del final del camino,
independientemente del estado del ángulo de la escoba, empuje el
carrito hacia el otro extremo.

PS

PS NS

NS

Fuzzy Associative Memory Matrix 3 x 3 FAMM

Reglas difusas(FAMM 2)
Base de regla difusa y la FAMM correspondiente para los vectores de
ángulo y velocidad angular del problema de equilibrio de péndulo
invertido

1. SI el poste se inclina hacia la izquierda Y el poste cae hacia la izquierda


LUEGO empuje el carro hacia la izquierda

2. SI el poste se inclina hacia la izquierda Y el poste no se mueve LUEGO


empuje ligeramente el carro hacia la izquierda

3. SI el poste se inclina hacia la izquierda Y el poste se mueve hacia la derecha


ENTONCES no empuje el carrito

4. ... y así sucesivamente ….


….

22
22/10/2023

Posición vs. Velocidad Angular (FAMM 2)

Si el ángulo de la escoba es demasiado grande o cambia demasiado


rápido, independientemente de la ubicación del carrito en la ruta del
carrito, empuje el carrito hacia la dirección en la que se inclina

3 x 3 FAMM
NS PS

Regla difusa

If La distancia está CERCA and El ángulo es PEQUEÑO Then Gire a la izquierda aguda.

Podría ser
FCERCA(Distancia) = grado de una
membresía de la distancia dada constante
en el Set Fuzzy CERCA u otra MF

FPEQUEÑO(Angulo) = grado de
pertenencia del ángulo dado en
el Fuzzy Set PEQUEÑO

23
22/10/2023

Más detalles…
• Sistemas de inferencia difusa (FIS)
• Reglas difusas
• Operadores combinados difusos
• Funciones de membresía

Inferencia difusa
La inferencia difusa es el proceso de formular el mapeo desde una entrada dada
a una salida usando lógica difusa. El mapeo luego proporciona una base a partir
de la cual se pueden tomar decisiones o discernir patrones. El proceso de
inferencia difusa involucra todas las piezas que se describen en las secciones
anteriores: Funciones de membresía, Operaciones lógicas y Reglas If-Then.

24
22/10/2023

Sistema de inferencia Mamdani


Dos entradas, dos reglas Mamdani FIS con entradas nítidas

IF Fuerza de la THEN
regla

and

xo yo

and

Input Distribución Output


Distribución

Xo Yo

Las reglas difusas son una colección de declaraciones lingüísticas que describen cómo el FIS
debe tomar una decisión con respecto a clasificar una entrada o controlar una salida.

Mamdani FIS
La inferencia de tipo Mamdani espera que las funciones de membresía de salida
sean conjuntos difusos. Después del proceso de agregación, hay un conjunto difuso
para cada variable de salida que necesita ser desenmascarado.

http://www.mathworks.com/access/helpdesk/help/toolbox/fuzzy/index.html?/access/helpdesk/help/toolbox/fuzzy/bp78l6_-1.html&http://www.mathworks.com/cgi-
bin/texis/webinator/search/?db=MSS&prox=page&rorder=750&rprox=750&rdfreq=500&rwfreq=500&rlead=250&sufs=0&order=r&is_summary_on=1&ResultCount=
10&query=fuzzy+logic&submitButtonName=Search

25
22/10/2023

Mamdani FIS

Mamdani FIS

26
22/10/2023

Flujo de inferencia difusa

En esta figura, el flujo avanza desde las entradas en la parte inferior


izquierda, luego a través de cada fila o regla, y luego hacia abajo en las
salidas de la regla para finalizar en la parte inferior derecha. Este flujo
compacto muestra todo a la vez, desde la fuzzificación de la variable
lingüística hasta la defuzzificación de la salida agregada..

Mamdani FIS
FUNCIÓN DE MEMBRESÍA DE SALIDA

• Es posible, y en muchos casos mucho más eficiente, usar un solo pico


como función de membresía de salida en lugar de un conjunto difuso
distribuido.

• Este tipo de salida a veces se conoce como una función de membresía de


salida singleton, y se puede considerar como un conjunto difuso
predefinido.

• Mejora la eficiencia del proceso de defuzzificación porque simplifica


enormemente el cálculo requerido por el método Mamdani más general,
que encuentra el centroide de una función 2-D.

• En lugar de integrarse a través de la función bidimensional para encontrar


el centroide, utiliza el promedio ponderado de algunos puntos de datos

27
22/10/2023

Sugeno FIS
Sugeno FIS es similar al método Mamdani en muchos aspectos. Las dos primeras
partes del proceso de inferencia difusa, difuminar las entradas y aplicar el operador
difuso, son exactamente las mismas. La principal diferencia entre Mamdani y Sugeno
es que las funciones de membresía de salida de Sugeno son lineales o constantes.

Una regla típica en un modelo difuso de Sugeno tiene la forma:

If Input 1 = x and Input 2 = y, then Output is z = ax + by + c

Para un modelo Sugeno de orden cero, el nivel de salida z es una constante (a =b =0).

Sugeno FIS

28
22/10/2023

FIS: Sugeno vs. Mamdani


Ventajas del método Sugeno

Es computacionalmente eficiente.
Se puede usar para modelar cualquier sistema de
inferencia en el que las funciones de membresía de salida
sean lineales o constantes.
Funciona bien con técnicas lineales (por ejemplo, control
PID).
Funciona bien con técnicas de optimización y adaptación.
Se ha garantizado la continuidad de la superficie de salida.
Se adapta bien al análisis matemático.
Ventajas del método Mamdani

Es intuitivo.
Tiene una amplia aceptación.
Se adapta bien al aporte humano.

Fuzzy Sets
Usaremos los siguientes conjuntos difusos para explicar los diferentes
operadores difusos que siguen a continuación.

Ejemplos:

Fuzzy Set A Fuzzy Set B

29
22/10/2023

Combinaciones difusas(T-norms)
Al hacer una regla difusa, usamos el concepto de “and”, “or”, y algunas
veces “not”. Las secciones a continuación describen las definiciones más
comunes de estos operadores de "combinación difusa". Las
combinaciones difusas también se conocen como "normas T"

Fuzzy “and” Ejemplo:

Intersección de A y B

La "y( and)" difusa se escribe como:

donde μA se lee como "la membresía en la clase A" y μB se lee como "la
membresía en la clase B".

Fuzzy “and”
Hay muchas formas de calcular“and”. Las dos más comunes son:

Zadeh - min(μA (x), μB (x))


Esta técnica, llamada así por el inventor del conjunto difuso
Teoría; simplemente calcula el “AND(y)" tomando el mínimo de los dos (o
más) valores de membresía. Esta es la definición más común de la
difusa“and”.

Producto - μA (x) * μB (x)


Esta técnica calcula el fuzzy “and” multiplicando los dos valores de
membresía.

30
22/10/2023

Fuzzy “and”
Ambas técnicas tienen las siguientes dos propiedades:

T(0,0) = T(a,0) = T(0,a) = 0


T(a,1) = T(1,a) = a

Una de las cosas buenas de ambas definiciones es que también se pueden usar
para calcular el valor booleano. “and”. El fuzzy “and” es una extensión del
booleanov“and” a números que no son solo 0 o 1, sino entre 0 y 1.

Fuzzy “or”
Fuzzy “or”

El fuzzy “or” está escrito como:

Donde μA se lee como "la membresía en la clase A“ y μB se lee como "la


membresía en la clase B”.

Ejemplo:

Union de A y B

31
22/10/2023

Fuzzy “or”
La "or" difusa es una extensión de la "or" booleana a
números que no son solo 0 o 1, sino entre 0 y 1.

Fuzzy “or”
Hay muchas formas de calcular“or”. Los dos más comunes son:
 ( x, y ) = max( x, y )

Zadeh
max(μA (x), μB (x))
simplemente calcula el "or" tomando el máximo de los dos (o más) valores
de membresía. Esta es la definición más común de la difusa "or".

 ( x, y ) = x + y − xy

Producto (μA (x) + μB (x)) – (μA (x) * μB (x))

Esta técnica utiliza la diferencia entre la suma de los dos (o más) valores de
membresía y el producto de sus valores de membresía.

Similar a la difusa “and”, ambas definiciones de la difusa "or" también se


pueden utilizar para calcular la "or" booleana.

32
22/10/2023

Fuzzy “or”
Otras formas de calcular Fuzzy “or”:
 ( x, y ) = min(1, x + y )

Disyunción de Lukasiewicz
min(1, μA (x) + μB (x))

 A ( x) +  B ( y )  ( x, y ) =
x + y − 2 xy
1 − xy

Disyunción de Hamacher
 A ( x) +  B ( x) − 2  A ( x)  B ( x)
1 −  A ( x)  B ( x)

Fuzzy “or”
Otras formas de calcular Fuzzy “or”:

x+ y
 ( x, y ) =
1 + xy

Disyunción de Einstein

 A ( x) +  B ( x)
1 +  A ( x)  B ( x)

33
22/10/2023

Fuzzy “not”
NOT (A) = 1 - A

Fuzzy set A

Ejemplo:

Negacion de A

Fuzzy Set operaciones


La lógica difusa es un superconjunto de la
lógica convencional (booleana)

Todas las demás operaciones en conjuntos clásicos también son válidas


para conjuntos difusos, excepto las leyes intermedias excluidas.

A A  X
A A  0

34
22/10/2023

Consecuencia
La consecuencia de una regla difusa se calcula usando dos pasos:

1 Calcular la fuerza de la regla combinando las entradas difusas


utilizando el proceso de combinación difusa

IF Regla THEN
Fuerza

and

xo yo

and

Input Distribución Output


Distribución

Xo Yo

En este ejemplo, la "y" difusa se usa para combinar las funciones de membresía para calcular la fuerza de la regla.

Consecuencia
2 Recorte de la función de pertenencia de salida en la fuerza de la regla.

IF Regla THEN
Fuerza

and

xo yo

and

Input Distribucion Output


Distribucion

Xo Yo

En este ejemplo, la "y" difusa se usa para combinar las funciones de membresía para calcular la fuerza de la regla

35
22/10/2023

3
Consecuencia
Las salidas de todas las reglas difusas ahora deben combinarse para
obtener una distribución de salida difusa. Esto se hace usualmente, pero
no siempre, usando el difuso “or”. La siguiente figura muestra un ejemplo
de esto.

IF Regla THEN
Fuerza
Las funciones de
membresía de
and salida en el lado
derecho de la figura
xo yo se combinan
utilizando la "or"
difusa para obtener
and la distribución de
salida que se
Output
muestra en la
Input Distribucion
Distribucion esquina inferior
Xo Yo derecha de la
figura.

5 Defuzzificación de la distribución de salida


En muchos casos, se desea obtener una única salida nítida de un FIS. Por
ejemplo, si uno intenta clasificar una letra dibujada a mano en una tableta de
dibujo, en última instancia, el FIS tendría que encontrar un número claro para
indicarle a la computadora qué letra se dibujó. Este número nítido se obtiene
en un proceso conocido como defuzzificación
Hay dos técnicas comunes para desfucificar:

Centro de masa: esta técnica toma la


a) distribución de salida que se encuentra en la
diapositiva anterior y encuentra su centro de
masa para obtener un número nítido. Esto se
calcula de la siguiente manera:

out

donde z es el centro de masa y μc es la pertenencia a la


clase c en el valor Zj. Un ejemplo de resultado de este
cálculo se muestra en la figura a la derecha.

36
22/10/2023

Defuzzificación de la distribución de salida

b) Media del máximo: esta técnica toma la distribución de salida que se


encuentra en la sección anterior y encuentra su media de máximos para
obtener un número nítido. Esto se calcula de la siguiente manera:

donde z es la media del máximo, Zj es el punto en el que


la función de pertenencia es máxima, y l es el número de
veces que la distribución de salida alcanza el nivel
máximo. Un resultado de ejemplo de este cálculo se
muestra en la figura de la derecha

Mamdani FIS con una entrada difusa


Dos entradas, dos reglas Mamdani FIS con una entrada difusa
muestra una
modificación del
IF Rule THEN Mamdani FIS donde
Strength
la entrada y0 es
difusa, no nítida.
Esto se puede usar
and para modelar
inexactitudes en la
medición. Por
ejemplo, podemos
estar midiendo la
salida de un sensor
de presión. Incluso
and con la misma presión
aplicada, se mide
que el sensor tiene
voltajes ligeramente
diferentes.
La función de
membresía de
entrada difusa
modela esta
incertidumbre.
La función difusa de entrada se combina con la función de pertenencia de entrada de regla mediante el uso de la
función difusa“and”

37
22/10/2023

Funciones de membresía
La función sigmoidal

sigmf(x,[a c]), como se da en la siguiente ecuación por f(x,a,c) es un mapeo en un


vector x, y depende de dos parámetros a y c.

Funciones de membresía
La función gaussiana

La función Gaussiana simétrica depende de dos parámetros.  y c dada por

38
22/10/2023

Funciones de membresía
La función trapezoidal
La curva trapezoidal es una función de un vector, x, y depende de cuatro
parámetros escalares a, b, c y d, según lo dado por

Los parámetros a y d ubican los "pies" del trapecio y los parámetros byc ubican los
"hombros".

80

39
22/10/2023

81

Mamdani FIS
Inferencia máxima-mínima defuzzificacion centroide para un sistema con variables de
entrada "x", "y" y "z" y una variable de salida "n". Tenga en cuenta que "mu" es la
nomenclatura estándar de lógica difusa para "valor de verdad":

http://en.wikipedia.org/wiki/Fuzzy_system

40
22/10/2023

Muestra: Mamdani
Classical Inference Engine: max-min-CG

Considere un problema con 2 variables de entrada, tamaño y peso, y una variable de


salida, calidad, con los siguientes conjuntos de términos lingüísticos asociados:

La semántica de estos términos lingüísticos se define mediante funciones de


pertenencia de forma triangular:

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

Muestra: Mamdani
Classical Inference Engine: max-min-CG

Rule Base (RB):

Let us consider a sample input to the system, Xo = {2, 25} = {size, weight}

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

41
22/10/2023

Muestra: Mamdani
Motor de inferencia clásico: max-min-CG

Rule Base:

Consideremos una entrada de muestra para el sistema, Xo = {2, 25}.


Esta entrada se compara con los antecedentes de la regla para determinar la fuerza de
disparo de la regla hi de cada regla Ri en la Base de reglas.

Usando una norma T mínima como conjuntiva, se obtienen los siguientes resultados:

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

Muestra: Mamdani
Classical Inference Engine: max-min-CG

Rule-firing strength hi of each rule Ri in the Rule Base:

The inference system applies the compositional rule of inference to obtain the
inferred fuzzy sets Bi’

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

42
22/10/2023

Muestra: Mamdani
Rule-firing strength hi de cada regla Ri en la Base de reglas:

Aplicación de la regla de inferencia compositiva para obtener los conjuntos difusos inferidos Bi '

Representación
grafica:

Muestra: Mamdani
Rule-firing strength hi de cada regla Ri en la Base de reglas:

Aplicación de la regla de inferencia compositiva para obtener los conjuntos difusos inferidos Bi '

Representación grafica:

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

43
22/10/2023

Muestra: Mamdani
Representación grafica:

Agregación de los 4 conjuntos difusos de salida individuales mediante la t-conorm máxima

• La salida final se calcula por despuzzificación utilizando el Centro de gravedad (CG)

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

Muestra: Mamdani
Representación grafica:

La salida final se calcula por despuzzificación utilizando el Centro de gravedad (CG)

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

44
22/10/2023

Muestra: Mamdani

Modo A-FATI con Max - Estrategia del centro de gravedad (CG)

"Primero agregado, luego inferir"

Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

La salida crisp final es Yo = 0.3698

Muestra: Mamdani
Reference: Genetic fuzzy systems by Oscar Cordón, Francisco Herrera, Frank Hoffmann

Alternativamente, ("Primero inferir, luego agregar")


Modo B-FITA con valor máximo ponderado por la estrategia de coincidencia

45

También podría gustarte