Una interesante introducción a la lógica difusa

Hace algo menos de dos años, concretamente el 6 de septiembre de 2017, fallecía el matemático, ingeniero e informático Lotfi Zadeh, creador de la lógica difusa. Hoy vamos a intentar introduciros en esta teoría que, a día de hoy, tiene multitud de aplicaciones en campos muy diversos.

Lotfi ZadehLotfi Zadeh, nacido en Azarbaiyán, estudió en la Universidad de Teherán, en Irán (su familia se había trasladado a ese país cuando él tenía 10 años) y poteriormente continuó con sus estudios en el MIT, en Estados Unidos. En este país también estudió y ejerció en la Universidad de Columbia y en la Universidad de Berkeley.

Todo eso antes de que, en 1965, publicara su importante trabajo Fuzzy Sets, que, por cierto, podéis leer completo en este enlace.

Más de una vez había querido escribir en el blog sobre lógica difusa, pero nunca había tenido tiempo de empaparme lo suficiente de esta teoría como para poder publicar un artículo aquí. Pero hace unos meses me enteré de que un lector del blog, también matemático, investigaba actualmente sobre este tema. Él es Carlos Bejines y aquí tenéis un pequeño párrafo de presentación escrito por él mismo:

Carlos BejinesMe llamo Carlos Bejines, tengo 27 años y nací en Torremolinos (Málaga). En 2014 terminé Matemáticas en la Universidad de Málaga y, tras la realización de dos másteres (investigación matemática y docencia en matemáticas), tuve la oportunidad de iniciar el doctorado en la Universidad de Navarra. Actualmente trabajo como Personal Investigador en Formación cursando mi último año de tesis doctoral, la cual trata de operadores de la lógica borrosa en estructuras algebraicas. Aficionado al ajedrez y a los juegos de estrategia de todo tipo, pienso que la matemática está en todas partes de la naturaleza. Por ello, considero de gran importancia enseñarla y divulgarla a todo tipo de personas. Mi twitter: @carxs8710.

Le planteé la posibilidad de que escribiera un artículo sobre lógica difusa para publicar en Gaussianos y muy amablemente se prestó a ello. A continuación, podéis leer el texto que nos ha preparado Carlos sobre lógica difusa.


En matemáticas, las proposiciones admiten dos valores: Verdadero o Falso. Por ejemplo, los enunciados «el número 4 es par» y «Madrid es la capital de España» son proposiciones verdaderas, mientras que los enunciados «\pi es racional» y «los gatos tienen dos colas» son proposiciones falsas.

Sin embargo, en la vida real no todos los enunciados pueden clasificarse en estos dos estados de verdad. Apreciado lector, le invitamos a que abra una nueva pestaña de su navegador y analice los titulares de los periódicos digitales de su interés o que recuerde las últimas conversaciones que haya tenido. Podrá comprobar que existen enunciados que no sabrá donde catalogarlos:

  1. Mi primo es bastante alto para su edad.
  2. Las ventas de coches se ha disparado en los últimos meses.
  3. Este enunciado es falso.

La primera oración tiene claramente una componente subjetiva: lo que para una persona puede parecer bastante alto, para otra podría no ser suficiente para otorgarle ese grado de verdad. Además, ¿cuándo establecemos que una persona es bastante alta? Si tengo un montón de arena, y voy quitando un granito cada segundo, ¿en qué momento dejamos de considerarlo «montón»?

El segundo enunciado está sacado de un periódico. De nuevo, nos encontramos ante una proposición difusa, que aunque pretende transmitir un mensaje claro, contiene vaguedad y ambigüedad a la hora de expresarlo. ¿Conocemos el crecimiento de las ventas? ¿Cuántos meses son «los últimos meses»?

En el caso del tercer enunciado, carece de sentido el preguntarse si es verdadero o falso, pues ambas suposiciones llegarían a una contradicción: si el enunciado fuese verdadero, el propio enunciado dice que es falso; por otro lado, si el enunciado lo catalogamos como falso, tendríamos que el enunciado está diciendo la verdad. A este enunciado se le conoce como la paradoja del mentiroso.

La Lógica Difusa (también conocida como Lógica Borrosa) nace de la necesidad de recoger este tipo de enunciados. En lugar de asignarle un valor de dos posibles (verdadero o falso), se le otorga un número del intervalo [0,1]. A modo de ejemplo, considerando la altura de una persona de 15 años, podríamos asignar al enunciado «Mi primo es bastante alto para su edad» un grado de verdad (entre {0} y 1) dependiendo de la siguiente función:

Según la gráfica, mi primo es considerado bastante alto si su altura es superior a 1.75 metros. En cambio, si mide menos, su grado de pertenencia al conjunto de las personas de 15 años bastante altas va disminuyendo hasta llegar a 0 (cuando la persona mide 1.50 metros).

Ahora vamos a «matematizar» estas ideas. No es casualidad que en el párrafo anterior haya utilizado la expresión grado de pertenencia. En la teoría de conjuntos, dado un conjunto X, sus elementos están claramente determinados. Si X:=\{ n \in \mathbb N\ | \ n \leq 10 \}, tenemos que el 7 pertenece a X, pero 16 no pertenece a X. En cambio, en la teoría de conjuntos difusos, el concepto de pertenecer o no pertenecer a un conjunto carece de sentido. En lugar de ello, debemos de hablar de grado de pertenencia al conjunto. Para ilustrar esta noción nos ayudaremos de la siguiente imagen:

A la izquierda, tenemos un conjunto en el que la pertenencia y la no pertenencia al mismo es clara. Si me encuentro en la parte coloreada de color verde, estoy dentro del conjunto (el elemento pertenece al conjunto), si estoy más allá del borde, estoy fuera del conjunto (el elemento no pertenece al conjunto).

A la derecha, tenemos un conjunto difuso en el que debemos hablar de grado de pertenencia al conjunto difuso. Un punto de la imagen tendrá mayor grado de pertenencia al conjunto difuso cuanto mayor intensidad de verde muestre.

(Notar que el conjunto de la izquierda también puede verse como un conjunto difuso, asignando el valor 1 a los elementos del interior y el valor 0 a los del exterior.)

Con esta imagen en la cabeza, tenemos que un conjunto difuso no es más que una asignación de un valor comprendido entre $0$ y $1$ a los elementos de un conjunto. Más matemáticamente, tendríamos la siguiente definición:

Dado un conjunto A, un subconjunto difuso \mu de A es una función desde A en [0,1], es decir:

\mu: A \longrightarrow [0,1]

Llegado este punto, si ha comprendido todo hasta ahora, podemos decir que ya tiene la esencia de lo que es la lógica difusa. A continuación, vamos a exponer algunos aspectos y conceptos sobre sus fundamentos. En concreto, vamos a hablar de la intersección y la unión de conjuntos difusos.

Dados dos conjuntos X e Y, tenemos que la intersección de X e Y, X \cap Y, es el conjunto formado por los elementos que pertenezcan a X y que pertenezcan a Y. ¿Cómo extendemos este concepto a la lógica difusa?

Para ello, los matemáticos hemos tenido en cuenta una serie de condiciones. La primera condición es que como se trata de una extensión del concepto intersección, al restringirse a conjuntos clásicos la intersección difusa debe coincidir con la intersección clásica de conjuntos. La segunda condición natural impuesta ha sido que la intersección difusa debe tener elemento neutro 1, debe ser monótona creciente y debe verificar la conmutatividad y la asociatividad. Estas propiedades las verifica la intersección clásica de conjuntos. Teniendo estos detalles en cuenta, la intersección difusa se conoce como norma triangular (o t-norma), y se define de la siguiente manera:

Una función T:[0,1] \times [0,1] \longrightarrow [0,1] es llamada norma triangular, o t-norma, si satisface los siguientes axiomas:

  1. T(x,1)=x para todo x\in [0,1].
  2. Si x \leq y, entonces T(x,z) \leq T(y,z) para todo x,y,z \in [0,1].
  3. T(x,y)=T(y,x) para todo x,y \in [0,1].
  4. T(x,T(y,z))=T(T(x,y),z) para todo x,y,z \in [0,1].

Como puede observarse de la definición, las t-normas actúan sobre los grados de pertenencia de los elementos del conjunto. Algunos ejemplos de t-normas son T_M(x,y)=\min\{x,y\} y T_P(x,y)=xy, pues tanto la operación del mínimo de dos elementos como el producto de dos elementos verifican los cuatro axiomas de t-norma. Si lo desea, como ejercicio puede comprobar que T_L(x,y)=\max\{0,x+y-1\} es efectivamente una t-norma (conocida como la t-norma de Lukasiewicz). También es sencillo probar que si T es una t-norma, entonces T(x,0)=0 para todo x \in [0,1]. Leeremos las demostraciones en los comentarios.

Por otro lado, la unión de X e Y, X \cup Y, es el conjunto de los elementos que pertenecen a X o pertenecen a Y. Análogamente, se puede definir la unión difusa. Ésta se conoce como t-conorma y se define de manera similar, sólo que el elemento neutro en lugar de ser el 1 es el 0:

Una función S:[0,1] \times [0,1] \longrightarrow [0,1] es llamada t-conorma si satisface los siguientes axiomas:

  1. S(x,0)=x, para todo x \in [0,1].
  2. Si x \leq y, entonces S(x,z) \leq S(y,z), para todo x,y,z \in [0,1].
  3. S(x,y)=S(y,x), para todo x,y \in [0,1].
  4. S(x,S(y,z))=S(S(x,y),z), para todo x,y,z \in [0,1].

Estoy convencido de que ya se le habrá ocurrido algún ejemplo de t-conorma. Aquí va uno: S_M(x,y)=\max\{x,y\}.


De todas las aplicaciones que en la actualidad tiene la lógica difusa (electrodomésticos familiares, sistemas de control industriales, eficiencia en el uso del combustible en motores, inteligencia artificial…), en este artículo vamos a destacar el reconocimiento de manuscritos escritos a mano.

Transcribir documentos antiguos o actuales escritos a mano al formato digital es un problema actual tedioso y excesivamente largo para el ser humano. Es por ello que lo ideal es crear y utilizar un programa que sea capaz de leer una imagen con texto escrito a mano y lo transforme a texto digital.

A día de hoy, no se conoce un método suficientemente eficiente que sea capaz de reconocer documentos escritos a mano. Se dispone de algoritmos muy complejos que utilizan la geometría para la transcripción de textos que funcionan de forma muy precisa, pero requieren muchísimo tiempo. Y con «muchísimo tiempo» quiero decir que podrían durar años en darnos la transcripción correcta. El lector se preguntará por qué es tan difícil leer un texto escrito a mano, ya que, por lo general, una persona no tiene el problema de entender las letras y palabras de otro ser humano. Pongamos como ejemplo la siguiente imagen:

La realidad es que nuestro cerebro es mejor máquina que cualquier ordenador en este aspecto (de momento) y sabemos diferenciar perfectamente una ‘j’ de una ‘i’ o las diferentes maneras de escribir letras como la ‘o’, la ‘r’ y la ‘s’, incluso en un mismo texto. En estos ejemplos se ven algunas de las dificultades que se tienen a la hora de implementar un algoritmo cuyo objetivo sea reconocer un texto. Debemos tener en cuenta que la forma de escribir de cada uno difiere de la del resto, y es por ello que no es algo riguroso y exacto (tal y como le gustaría a un ordenador), sino que hay pequeños matices (imprecisiones, vaguedad, variantes…) que provocan que deban emplearse distintos métodos cuya implementación está basada en la lógica difusa.


Acabaré esta introducción a la lógica difusa con una pregunta. Durante mi etapa como investigador, me he encontrado a varias personas que me han preguntado la diferencia entre probabilidad y lógica difusa. Hemos visto que la lógica difusa asigna a cada elemento de un conjunto un grado de pertenencia comprendido entre 0 y 1. Por otro lado, la probabilidad asigna a cada elemento de un conjunto una probabilidad comprendida entre 0 y 1. ¿En qué radica su diferencia? Como matemático, podría decir simplemente que la axiomática es diferente (pensar que en probabilidad se exige que la suma de todas las probabilidades sea 1 mientras que en la lógica difusa no). Pero para que se transmita mejor la diferencia sustancial, lanzo el siguiente problema:

Tenemos dos botellas rellenas de un líquido cada una. La primera contiene un veneno mortal con probabilidad 0.25. La segunda contiene un veneno mortal con grado de pertenencia 0.25. Si tuvierais que beber de una de las dos botellas, ¿cuál elegiríais?

Os leemos en los comentarios.


La imagen principal del artículo está tomada de aquí, y la foto de Lotfi Zadeh la he tomado de aquí.

Author: ^DiAmOnD^

Miguel Ángel Morales Medina. Licenciado en Matemáticas y autor de Gaussianos y de El Aleph. Puedes seguirme en Twitter o indicar que te gusta mi página de Facebook.

17 Comments

  1. Muy buen artículo creo que hay un pequeño despiste en el párrafo antes de definir la t-conorma la corrección seria:

    Por otro lado, la unión de  X e  Y ,  X \cup Y , es el conjunto de los elementos que pertenecen a  X o pertenecen a  Y .

    (es decir una  Y en lugar de la  T actual)

    Post a Reply
    • Efectivamente. Gracias por el aviso 😉

      Post a Reply
  2. Me tomaría el veneno con 0.25 grados de pertenencia. Debido a que la primera tiene probabilidad de ser cierta en 1/4, mientras que el grado de pertenencia esta cerca de 0 dónde 0 es falso lo cual esta mas cerca de ser falso que de ser verdadera la afirmación.

    Post a Reply
      • Debo cambiar la respuesta. En la probabilidad hay un 75% de no existencia de veneno, mientras que en la pertenencia sí o sí hay veneno.

        Post a Reply
  3. Enhorabuena por este artículo. Muchas gracias. Yo tengo dudas de qué botella elegir.

    Post a Reply
  4. Coincido, interpreto los 0,25 grados de pertenencia como “no muy venenoso”, y el 25% de probabilidad como una anti-lotería.

    Post a Reply
  5. Muy buena introducción a la lógica difusa. Para los que estén interesados en este tema, les invito a conocer el trabajo del grupo Dec-Tau de la Universidad de Castilla – La Mancha (https://dectau.uclm.es/), quienes están desarrollando un lenguaje de programación basado en Prolog que incluye los mecanismos de lógica difusa para recoger la ambigüedad y vaguedad de los enunciados. En el siguiente enlace (https://dectau.uclm.es/fasill/sandbox) se puede encontrar un ejemplo del funcionamiento de Fasill.

    Post a Reply
  6. «Tenemos dos botellas rellenas de un líquido cada una. La primera contiene un veneno mortal con probabilidad 0.25. La segunda contiene un veneno mortal con grado de pertenencia 0.25. Si tuvierais que beber de una de las dos botellas, ¿cuál elegiríais?»

    Puesto que sabemos a priori, de acuerdo con la redacción de la pregunta, que cualquiera de las botellas puede contener un veneno, sería de IMBECILES el beber de cualquiera de ellas.

    Post a Reply
    • Pero supongamos que estamos ante la alternativa de beber de una de las botellas y tener chances de vivir o de no beber y que nos maten sí o sí.

      Post a Reply
    • Por otra parte, como dice Thror más abajo, en la probabilidad no hay certeza de que haya veneno, solo un 25% de chances de existencia del mismo, mientras que en el de la pertenencia sí o sí tenemos veneno.

      Post a Reply
  7. Yo he interpretado los 0,25 grados de pertenencia como que un 25% de la botella es veneno mortal, y el resto es cervecita para disimular el sabor, de manera que elegir esa botella es mortal en todos los casos. Por otro lado, eligiendo la otra botella, he pensado que me podría salvar si tengo la suerte de mi lado. Por lo tanto, si tuviese que elegir me tomaría el veneno con 0.25 grados de probabilidad.

    Estaría bien saber cuál bebería Carlos Bejines, para salir de dudas.

    Post a Reply
    • Viéndolo así tiene su lógica. En la probabilidad puede que se de el 75% de no existencia de veneno, mientras que en los grados de pertenencia sí o sí hay veneno.
      Gracias, me hiciste de cambiar de opinión.

      Post a Reply
    • Interpretación correcta compañero 😉

      Ante la obligación de beber de una de ellas sí o sí, la botella con un grado de pertenencia de 0.25 significa que el veneno está en la botella (aunque no podemos decir que todo sea veneno). En cambio, en la botella con una probabilidad de 0.25, tenemos que el veneno estará o no estará con dicha probabilidad (1 de cada 4 casos, tendrá veneno).

      Por lo que en el supuesto de tener que beber de una de las dos, bebería de la botella que tiene una probabilidad 0.25, pues me salvo en 3 de cada 4 casos. Si tomase de la otra botella, siempre bebería el veneno mortal.

      Saludos

      Post a Reply
  8. Realmente apasionante este tema de la lógica y matemática difusa. ¿Habrá alguna relación entre esta lógica y la física cuántica?

    Post a Reply
    • Otra perspectiva, seria cpreguntarse uanto porcentaje del veneno es realmente mortal?.

      Post a Reply
      • Pues debido a lo que comentas, para prevenir especifiqué que el veneno era moral. Entendiéndose mortal que con una sola gota, morirías 😉

        Post a Reply

Puedes utilizar código LaTeX para insertar fórmulas en los comentarios. Sólo tienes que escribir
[latex]código-latex-que-quieras-insertar[/latex]
o
$latex código-latex-que-quieras-insertar$.

Si tienes alguna duda sobre cómo escribir algún símbolo puede ayudarte la Wikipedia.

Y si los símbolos < y > te dan problemas al escribir en LaTeX te recomiendo que uses los códigos html & lt; y & gt; (sin los espacios) respectivamente.

Submit a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.