Lógica difusa: t-normas, implicaciones y reglas SI–ENTONCES
Grados de verdad, t-normas y t-conormas (mínimo, producto, Łukasiewicz), qué leyes clásicas sobreviven, implicaciones residuales y la evaluación de reglas en un ventilador controlado por la temperatura y la humedad.
Serie Fundamentos de IA Parte 34 de 52
- Mapa de la inteligencia artificial: qué es cada cosa y cómo encaja todo
- Breve historia de la inteligencia artificial: de Turing a los modelos de lenguaje
- Datos, modelo, entrenamiento, inferencia: los conceptos básicos en un solo ejemplo
- Cómo leer la notación matemática: símbolos, subíndices, sumatorios y cuantificadores
- Conjuntos y relaciones: las piezas con las que se construyen las definiciones en IA
- Funciones y aplicaciones: por qué todo modelo de IA es una función
- Lógica y demostraciones: las reglas con las que se razona en IA
- Grafos y árboles: la estructura sobre la que se apoyan la búsqueda y las redes neuronales
- Álgebra lineal para aprendizaje automático: vectores, matrices y por qué la IA sobre todo multiplica
- Derivadas, gradiente y regla de la cadena: cómo sabe un modelo en qué dirección aprender
- Descenso de gradiente: cómo aprende un modelo
- Qué es la probabilidad: del lanzamiento de un dado a los axiomas de Kolmogórov
- Probabilidad condicionada y teorema de Bayes: cómo cambiar una estimación cuando te enteras de algo nuevo
- Variable aleatoria y función de distribución: una sola función que lo dice todo sobre la distribución
- Función de densidad y función de probabilidad: por qué una variable continua tiene probabilidad cero en cada punto
- Esperanza, varianza y covarianza: dónde está una distribución, qué anchura tiene y qué se relaciona con qué
- Resumen de las distribuciones de probabilidad: Bernoulli, binomial, Poisson, uniforme, normal y exponencial
- Ley de los grandes números y teorema central del límite: por qué las medias se comportan de forma tan predecible
- Estadística y estimación de parámetros: máxima verosimilitud, MAP e intervalos de confianza
- Teoría de la información: entropía, entropía cruzada y divergencia KL, el origen de las funciones de pérdida
- Búsqueda en el espacio de estados: BFS, DFS, UCS y A* con animaciones
- Juegos y adversarios: minimax, poda alfa-beta y Monte Carlo tree search
- Satisfacción de restricciones: backtracking, propagación de restricciones y AC-3 con un sudoku y un mapa de regiones checas
- Lógica y sistemas basados en conocimiento: encadenamiento hacia delante y hacia atrás, resolución y sistemas expertos
- Planificación: STRIPS, el mundo de bloques, heurísticas a partir de la relajación y la planificación en los agentes de IA
- Búsqueda local y recocido simulado: un viajante por las capitales regionales checas
- Algoritmos genéticos: población, cruce, mutación y selección en una mochila para la excursión
- Estrategias evolutivas y programación genética: de la regla de un quinto a la ley de Kepler
- Optimización por colonia de hormigas: cómo un rastro de feromona encuentra un camino corto
- Optimización por enjambre de partículas: inercia, experiencia propia y experiencia del enjambre
- Neuroevolución: evolución de los pesos y la forma de las redes neuronales, y el algoritmo NEAT
- Conjuntos difusos y funciones de pertenencia: cómo escribir «algo cálido»
- Lógica difusa y probabilidad: por qué «algo cálido» no significa «probablemente cálido»
- Lógica difusa: t-normas, implicaciones y reglas SI–ENTONCES
- Control difuso: Mamdani y Sugeno, del ventilador al péndulo invertido sobre un carro
- Agrupamiento difuso: el algoritmo fuzzy c-means y los puntos entre clusters
- Sistemas neuro-difusos (ANFIS): reglas difusas que aprenden de los datos
- Cadenas de Markov: matriz de transición, distribución estacionaria y PageRank
- Modelos ocultos de Márkov: el algoritmo de Viterbi y el casino deshonesto
- Redes bayesianas: por qué está mojada la hierba y qué significa eso para el aspersor
- El filtro de Kalman: cómo estimar a partir de mediciones imprecisas dónde está un coche y a qué velocidad va
- Tipos de aprendizaje automático: supervisado, no supervisado, semisupervisado y más
- Prompts, contexto y RAG: cómo darle a un modelo la información correcta
- Autocodificadores variacionales (VAE): imágenes nuevas a partir de un espacio latente continuo
- Redes generativas adversarias (GAN): el falsificador contra el detective
- Modelos de difusión: cómo el ruido puro se convierte en una imagen
- Procesos de decisión de Markov: estados, acciones, recompensas y ecuaciones de Bellman
- Q-learning y DQN: aprender el valor de las acciones, de la tabla a la red neuronal
- Gradiente de la política y PPO: aprender directamente la política
- Cómo funciona un agente de IA: un modelo de lenguaje en un bucle con herramientas
- Programación con agentes de IA: encargo, pruebas y revisión
- Evaluación y seguridad de los sistemas de IA: cómo medir y cómo vigilar
Temario completo de la serie 52 de 83 temas publicados
- Qué son las t-normas y las t-conormas y por qué «y» en la lógica difusa es toda una familia de operaciones.
- Qué leyes de la lógica clásica se cumplen para el mínimo, el producto y la t-norma de Łukasiewicz.
- Cómo se evalúan las reglas SI–ENTONCES: fuerza de la regla, recorte del consecuente y combinación con el máximo.
Conviene conocer antes: Conjuntos difusos y funciones de pertenencia: cómo escribir «algo cálido», Lógica y demostraciones: las reglas con las que se razona en IA
Los conjuntos difusos dieron a palabras como «cálido» un significado preciso. Ahora queremos razonar con ellas: combinarlas con las conectivas «y», «o», «no» y escribir reglas como «si es cálido y está húmedo, pon el ventilador al máximo». En la lógica clásica está claro qué significa «y»: verdadero cuando ambas partes son verdaderas. Pero ¿y si una parte es verdadera en 0,7 y la otra en 0,6? Resulta que hay toda una familia de respuestas razonables, y cada una conserva piezas distintas de la lógica clásica.
Continúa las partes Conjuntos difusos y funciones de pertenencia, Lógica difusa y probabilidad y Lógica y demostraciones.
1. De la pertenencia a la verdad
A 25 °C el enunciado «es cálido» tiene grado de verdad 0,5: el mismo número que la pertenencia de 25 °C al conjunto «cálido». La lógica difusa es una lógica en la que los enunciados toman valores de verdad de todo el intervalo [0, 1], no solo 0 y 1. Las conectivas son funciones que calculan la verdad del todo a partir de la verdad de sus partes. La lógica clásica es el caso particular en el que solo se usan los valores extremos.
Definición — valor de verdad de un enunciado compuesto
Elegimos una t-norma T (la conectiva «y»), una t-conorma S («o»), una negación ¬ («no») y una implicación I («si–entonces»); todas se definen más abajo. Si los enunciados φ, ψ tienen valores de verdad ‖φ‖, ‖ψ‖ ∈ [0, 1], entonces
- ‖φ y ψ‖ = T(‖φ‖, ‖ψ‖),
- ‖φ o ψ‖ = S(‖φ‖, ‖ψ‖),
- ‖no φ‖ = ¬‖φ‖,
- ‖si φ, entonces ψ‖ = I(‖φ‖, ‖ψ‖).
El valor de un enunciado atómico «x es A» es la pertenencia μA(x).
Un enunciado compuesto se evalúa de abajo arriba: primero las pertenencias, luego las conectivas una a una, igual que en la lógica clásica se rellena una tabla de verdad, solo que en lugar de 0 y 1 ponemos números intermedios.
Ejemplo — «es cálido y no es húmedo» a 27 °C y 60 %
«Cálido» es el triángulo (22, 28, 34), así que ‖cálido‖ = (27 − 22) / (28 − 22) = 5/6 ≈ 0,83. «Húmedo» sube de 40 a 70 %: ‖húmedo‖ = (60 − 40) / (70 − 40) = 2/3 ≈ 0,67, así que ‖no húmedo‖ = 1 − 2/3 = 1/3 ≈ 0,33.
- con el mínimo: min(5/6; 1/3) = 0,33,
- con el producto: 5/6 · 1/3 = 5/18 = 0,28,
- con la t-norma de Łukasiewicz: max(0; 5/6 + 1/3 − 1) = 1/6 = 0,17.
Tres respuestas razonables a la misma pregunta: de cuál elegir trata el resto de esta parte.
2. T-normas: qué significa «y»
Definición — t-norma
Una t-norma es una función T : [0, 1]2 → [0, 1] que es
- conmutativa: T(a, b) = T(b, a),
- asociativa: T(a, T(b, c)) = T(T(a, b), c),
- monótona: de b ≤ c se sigue T(a, b) ≤ T(a, c),
- y tiene el 1 como elemento neutro: T(a, 1) = a.
Cuatro exigencias razonables para «y»: el orden no importa, los paréntesis no importan, mejores entradas no dan un resultado peor, y «A y verdadero» es lo mismo que A. De ahí se sigue también que «A y falso» es falso, así que en los valores extremos toda t-norma se comporta exactamente como el «y» clásico.
Las cuatro más importantes:
- Mínimo (de Gödel, de Zadeh) T(a, b) = min(a, b): una cadena es tan fuerte como su eslabón más débil.
- Producto T(a, b) = a · b: como la probabilidad de dos sucesos independientes.
- De Łukasiewicz T(a, b) = max(0, a + b − 1): la cota inferior de Fréchet de la parte anterior.
- Drástica: b cuando a = 1; a cuando b = 1; en otro caso 0.
La menos evidente es la t-norma de Łukasiewicz, así que desmontémosla:
TŁ(a, b) = max(0, a + b − 1)
- TŁ(a, b)
- la verdad de «A y B»: cuánta verdad deben tener ambas partes en común
- a + b
- las verdades de ambas partes juntas: imagínalas como dos segmentos de longitud a y b que tienen que caber en un segmento de longitud 1
- − 1
- la longitud del segmento entero: lo que de a + b sobrepasa la unidad no cabe uno al lado del otro y tiene que solaparse; el solapamiento es lo que se cumple a la vez
- max(0, …)
- cuando los segmentos caben uno al lado del otro (a + b ≤ 1), no necesitan solaparse en absoluto: la verdad de «y» es entonces 0, no un número negativo
Para a = 0,7 y b = 0,6 dan 0,60; 0,42; 0,30 y 0. El mínimo es la más generosa de todas, la drástica la más estricta, y eso vale en general:
Teorema — cotas de las t-normas
Para toda t-norma T y todos los a, b ∈ [0, 1] se cumple TD(a, b) ≤ T(a, b) ≤ min(a, b), donde TD es la t-norma drástica.
Demostración. Cota superior: por la monotonía y el uno neutro, T(a, b) ≤ T(a, 1) = a, y por la conmutatividad igualmente T(a, b) ≤ b. Cota inferior: si a = 1, entonces T(1, b) = b = TD(1, b); si b = 1, análogamente. En otro caso TD(a, b) = 0 y T(a, b) ≥ 0 se cumple siempre. ∎
«A y B» nunca puede ser más verdadero que la más débil de sus dos partes (se sigue de la monotonía y del uno neutro: T(a, b) ≤ T(a, 1) = a). Por eso todas las t-normas están entre dos extremos.
3. T-conormas y negación: «o» y «no»
Definición — t-conorma, negación, dualidad
Una t-conorma S tiene las mismas propiedades que una t-norma, solo que el elemento neutro es 0: S(a, 0) = a. La negación estándar es ¬a = 1 − a.
A cada t-norma le corresponde la t-conorma dual S(a, b) = 1 − T(1 − a, 1 − b). Para un par así se cumplen las leyes de De Morgan: ¬T(a, b) = S(¬a, ¬b).
«A o B» es lo mismo que «no es cierto que ni A ni B». Así que cada «y» trae su propio «o». Al mínimo le corresponde el máximo, al producto la suma probabilística a + b − ab, a la t-norma de Łukasiewicz la suma acotada min(1, a + b). Para 0,7 y 0,6 dan 0,70; 0,88 y 1.
S(a, b) = 1 − T(1 − a, 1 − b)
- S(a, b)
- la verdad de «A o B»: queremos deducirla de «y», no inventarla aparte
- 1 − a, 1 − b
- las verdades de «no A» y «no B»: «o» falla exactamente cuando no se cumple ninguna de las partes
- T
- la t-norma elegida: calcula cuánto se cumple «no A y no B», es decir, cuánto falla «o»
- 1 −
- la negación exterior: convierte «cuánto falla» en «cuánto se cumple»; gracias a ella las leyes de De Morgan se cumplen automáticamente para cada par T, S
Ejemplo — tres t-conormas por dualización
- Mínimo: 1 − min(1 − a, 1 − b) = max(a, b); el complemento menor corresponde al número mayor. Para 0,7 y 0,6: 1 − min(0,3; 0,4) = 1 − 0,3 = 0,70.
- Producto: 1 − (1 − a)(1 − b) = 1 − (1 − a − b + ab) = a + b − ab. Para 0,7 y 0,6: 1 − 0,3 · 0,4 = 1 − 0,12 = 0,88.
- Łukasiewicz: 1 − max(0, (1 − a) + (1 − b) − 1) = 1 − max(0, 1 − a − b) = min(1, a + b). Para 0,7 y 0,6: 1 − max(0; 0,3 + 0,4 − 1) = 1 − 0 = 1,00.
La suma probabilística tiene un significado conocido: para sucesos independientes P(A ∪ B) = P(A) + P(B) − P(A)P(B); se resta el solapamiento, que de otro modo se contaría dos veces.
4. Qué leyes sobreviven
La lógica clásica tiene montones de leyes. En la lógica difusa no puede cumplirse todo a la vez, y cada t-norma elige de forma distinta. Comprobado en la rejilla de valores 0; 0,05; …; 1:
| Ley | Mínimo | Producto | Łukasiewicz |
|---|---|---|---|
| idempotencia: A y A = A | sí | no | no |
| no contradicción: A y no A = 0 | no | no | sí |
| tercero excluido: A o no A = 1 | no | no | sí |
| leyes de De Morgan | sí | sí | sí |
| distributividad de «y» respecto de «o» | sí | no | no |
El mínimo conserva el «álgebra» —idempotencia y distributividad—, pero pierde la ley de no contradicción: «cálido y no cálido» puede llegar a 0,5. Łukasiewicz conserva la no contradicción y el tercero excluido, pero «cálido y cálido» a 0,7 da solo 0,4. Es un resultado conocido: el mínimo es la única t-norma idempotente, y con ella la ley de no contradicción no puede cumplirse. Elegir la conectiva es, por tanto, elegir qué propiedades nos importan.
Teorema — el mínimo es la única t-norma idempotente
Si T es una t-norma y T(a, a) = a para todo a ∈ [0, 1], entonces T(a, b) = min(a, b).
Demostración. Sea a ≤ b. Por idempotencia y monotonía a = T(a, a) ≤ T(a, b), y por el teorema de las cotas T(a, b) ≤ min(a, b) = a. Por tanto T(a, b) = a; para a > b, igual gracias a la conmutatividad. ∎
Corolario. La idempotencia y la ley de no contradicción (con la negación estándar) no pueden cumplirse a la vez: solo el mínimo es idempotente, y en el punto 0,5 da min(0,5; 1 − 0,5) = 0,5 ≠ 0.
Ejemplo — contraejemplos y una demostración de la tabla
- Łukasiewicz cumple la no contradicción para todo a, no solo en la rejilla: TŁ(a, 1 − a) = max(0, a + 1 − a − 1) = max(0, 0) = 0. Análogamente, min(1, a + 1 − a) = 1 es la ley del tercero excluido.
- Łukasiewicz no es idempotente: TŁ(0,7; 0,7) = 0,7 + 0,7 − 1 = 0,4 ≠ 0,7.
- El producto no es distributivo: para a = b = c = 0,5, «a y (b o c)» = 0,5 · (0,5 + 0,5 − 0,25) = 0,3750, pero «(a y b) o (a y c)» = 0,25 + 0,25 − 0,25 · 0,25 = 0,4375.
- El producto no cumple la no contradicción: 0,5 · (1 − 0,5) = 0,25 ≠ 0.
Basta un solo contraejemplo para que una ley no se cumpla. En cambio, un «sí» de la tabla está comprobado solo en la rejilla, aunque para la no contradicción de Łukasiewicz hay arriba también una demostración general.
5. Implicación
Definición — implicación residual
A una t-norma continua T le corresponde el residuo
I(a, b) = sup { c ∈ [0, 1] : T(a, c) ≤ b }.
Se cumple T(a, c) ≤ b si y solo si c ≤ I(a, b). Para el mínimo sale la implicación de Gödel (1 cuando a ≤ b, si no b), para el producto la de Goguen (1 cuando a ≤ b, si no b/a) y para la t-norma de Łukasiewicz min(1, 1 − a + b).
«Si A, entonces B» es la afirmación más fuerte que, junto con A, no da más de lo que vale B. La implicación es totalmente verdadera siempre que la premisa no sea más verdadera que la conclusión, igual que en la lógica clásica, donde de lo falso se sigue cualquier cosa. Para la premisa 0,8 y la conclusión 0,3 las tres implicaciones dan 0,3; 0,375 y 0,5.
I(a, b) = sup { c ∈ [0, 1] : T(a, c) ≤ b }
- I(a, b)
- la verdad de «si A, entonces B» para una premisa con verdad a y una conclusión con verdad b
- c ∈ [0, 1]
- un candidato a verdad de la implicación: probamos todos los valores posibles
- T(a, c)
- «A y (si A, entonces B)»: lo que deducimos de la premisa y la implicación juntas; exactamente esto hace el modus ponens
- ≤ b
- la condición de corrección: la conclusión deducida no puede ser más verdadera de lo que B es en realidad; la implicación no debe «prometer más»
- sup
- el mayor de los candidatos correctos: la implicación debe ser lo más fuerte posible; si no, siempre valdría 0 y no diría nada
Ejemplo — tres implicaciones para la premisa 0,8 y la conclusión 0,3
Buscamos el mayor c para el que T(0,8; c) ≤ 0,3:
- mínimo: min(0,8; c) ≤ 0,3 se cumple justo cuando c ≤ 0,3 (porque 0,8 > 0,3), así que I = 0,300,
- producto: 0,8 · c ≤ 0,3, es decir, c ≤ 0,3 / 0,8, así que I = 0,375,
- Łukasiewicz: max(0; 0,8 + c − 1) ≤ 0,3, es decir, c − 0,2 ≤ 0,3 y c ≤ 0,5, así que I = 0,500.
Comprobación con el modus ponens: sustituimos c = I de vuelta en T(0,8; c): min(0,8; 0,3) = 0,3; 0,8 · 0,375 = 0,3; max(0; 0,8 + 0,5 − 1) = 0,3. En los tres casos sale exactamente la conclusión 0,3: la implicación está ajustada para dar en ella.
Los residuos no son solo elegantes: gracias a la relación T(a, c) ≤ b ⇔ c ≤ I(a, b) en ellos se cumple una versión difusa del modus ponens: de A con verdad a y de «A ⇒ B» con verdad c se sigue B con verdad al menos T(a, c). Sobre esto se apoyan las lógicas difusas formales que construyó en los años noventa el lógico checo Petr Hájek.
6. Reglas SI–ENTONCES
En la práctica, donde más a menudo te encontrarás la lógica difusa es en reglas que controlan una máquina. Queremos un ventilador que se guíe por la temperatura y la humedad. La velocidad (0–100 %) tiene los términos lento, medio y rápido, la humedad los términos seco y húmedo, la temperatura los términos de la parte sobre conjuntos difusos. La base de reglas:
- R1: SI la temperatura es frío O agradable, ENTONCES la velocidad es lento.
- R2: SI la temperatura es cálido Y la humedad es seco, ENTONCES la velocidad es medio.
- R3: SI la temperatura es cálido Y la humedad es húmedo, ENTONCES la velocidad es rápido.
- R4: SI la temperatura es caluroso, ENTONCES la velocidad es rápido.
Definición — evaluación de una regla (Mamdani)
Para una entrada nítida se calcula primero la fuerza de la regla α: las pertenencias de las entradas a los términos de la condición, combinadas con una t-norma («y») o una t-conorma («o»). El consecuente —un conjunto difuso B en la salida— se recorta entonces: μ′(y) = min(α, μB(y)), o se reduce: μ′(y) = α · μB(y). Los consecuentes de todas las reglas se combinan con el máximo.
Una regla vale tanto como vale su condición, y en esa medida impone también su consecuente. Una regla cuya condición se cumple en 0,67 puede imponer «rápido» como mucho hasta una altura de 0,67. Todas las reglas hablan a la vez, y el resultado es el contorno de lo que empuja en cada dirección.
Entrada: 27 °C y humedad del 60 %. La temperatura es «agradable» en 0,2 y «cálido» en 0,83, la humedad «húmedo» en 0,67 y «seco» en nada. La regla R3 tiene fuerza min(0,83; 0,67) = 0,67:
Con el mínimo, el consecuente «rápido» se recorta a la altura 0,67 y queda de él un trapecio plano. Con el producto la regla tiene fuerza 0,83 · 0,67 = 0,56 y «rápido» se reduce entero: conserva la forma, solo que más baja. Ambos enfoques se usan en la práctica; el primero es la elección original de Mamdani.
Toda la base de reglas a la vez:
Se dispararon dos reglas: R1 con fuerza 0,2 (la temperatura es un poco «agradable») y R3 con fuerza 0,67. R2 y R4 callan. El resultado es un conjunto difuso sobre la velocidad: un escalón bajo en «lento» y uno alto en «rápido». Pero el motor necesita un solo número. Cómo sacarlo de este conjunto es el tema de la próxima parte, sobre control difuso.
μ(y) = maxr min(αr, μBr(y))
- μ(y)
- el conjunto difuso resultante sobre la velocidad: cuánto recomienda la base de reglas la velocidad y (en la figura, el área verde)
- αr
- la fuerza de la regla r: cuánto se cumple su condición para la entrada de hoy; una regla no puede afirmar más de lo que vale su premisa
- μBr(y)
- el consecuente de la regla: la forma de un término como «rápido», qué velocidades le pertenecen y cuánto (en la figura, el contorno discontinuo)
- min
- recorte: el consecuente se corta a la altura αr, porque una regla cuya condición se cumple en 0,67 no puede recomendar nada más que en 0,67 (en la figura, el área ámbar)
- maxr
- combinación de las reglas: las reglas son alternativas («R1 o R2 o …»), así que una velocidad está recomendada tanto como la recomienda la regla más dispuesta
Ejemplo — la base de reglas paso a paso para 27 °C y 60 %
Paso 1 — fuzzificación. Temperatura 27 °C: «frío» 0 (termina en 14 °C), «agradable» baja de 23 a 28 °C, así que (28 − 27) / (28 − 23) = 0,2; «cálido» (27 − 22) / 6 = 0,83; «caluroso» 0 (empieza en 30 °C). Humedad 60 %: «seco» 0 (termina en 50 %), «húmedo» (60 − 40) / 30 = 0,67.
Paso 2 — fuerzas de las reglas. El «o» dentro de una condición lo calcula la t-conorma dual; el «y» entre condiciones, la t-norma:
| Regla | Pertenencias en la condición | α con mínimo | α con producto |
|---|---|---|---|
| R1 | 0,00 o 0,20 | 0,20 | 0,20 |
| R2 | 0,83 y 0,00 | 0,00 | 0,00 |
| R3 | 0,83 y 0,67 | 0,67 | 0,56 |
| R4 | 0,00 | 0,00 | 0,00 |
Por ejemplo, R3 con el producto: 5/6 · 2/3 = 10/18 ≈ 0,56; R1 con el máximo: max(0; 0,2) = 0,2.
Paso 3 — recorte y combinación. El valor del conjunto de salida en algunos puntos, μ(y) = max(min(0,2; μlento(y)), min(0,67; μrápido(y))); R2 y R4 tienen fuerza 0 y no añaden nada:
| velocidad y (%) | 10 | 40 | 50 | 60 | 70 | 80 | 90 |
|---|---|---|---|---|---|---|---|
| μlento(y) | 1,00 | 0,20 | 0,00 | 0,00 | 0,00 | 0,00 | 0,00 |
| μrápido(y) | 0,00 | 0,00 | 0,00 | 0,20 | 0,60 | 1,00 | 1,00 |
| μ(y), mínimo | 0,20 | 0,20 | 0,00 | 0,20 | 0,60 | 0,67 | 0,67 |
| μ(y), producto | 0,20 | 0,04 | 0,00 | 0,11 | 0,33 | 0,56 | 0,56 |
Por ejemplo, en y = 70: «rápido» se cumple allí en (70 − 55) / (80 − 55) = 0,6, menos que la fuerza 0,67, así que el recorte no cambia nada y μ(70) = 0,6. En y = 90 «rápido» se cumple del todo (1) y el recorte lo baja a 0,67. Ninguna regla recomienda velocidades entre 45 y 55 %.
def sila(podminky, vstup, t_norma=min):
hodnoty = []
for promenna, terminy in podminky: # términos unidos por «o»
hodnoty.append(max(mu[promenna][t](vstup[promenna]) for t in terminy))
vysledek = 1.0
for h in hodnoty: # condiciones unidas por «y»
vysledek = t_norma(vysledek, h)
return vysledek
def vystup(pravidla, vstup, y):
return max(min(sila(r.kdyz, vstup), mu_otacky[r.pak](y)) for r in pravidla)
7. La lógica difusa y la IA actual
- Una lógica que se puede derivar. Las t-normas son continuas, así que se pueden derivar. Los enfoques neurosimbólicos como Logic Tensor Networks construyen con ellas una función de pérdida: la red aprende no solo de ejemplos, sino también de reglas como «todo perro es un mamífero», cuya verdad se calcula con conectivas difusas.
- Restricciones blandas. Probabilistic Soft Logic usa las conectivas de Łukasiewicz para escribir reglas con pesos, por ejemplo para recomendaciones o para enlazar registros sobre la misma persona.
- Decisiones legibles. Las reglas difusas son cortas y comprensibles. Donde las personas tienen que revisar la toma de decisiones, se siguen usando hoy como alternativa explicable a una caja negra.
8. Resumen
- En la lógica difusa los enunciados tienen una verdad en [0, 1]; las conectivas son funciones sobre esos valores.
- «Y» es una t-norma —mínimo, producto, de Łukasiewicz y otras—; todas están entre la t-norma drástica y el mínimo.
- «O» es la t-conorma dual, «no» es por defecto 1 − a; las leyes de De Morgan se cumplen siempre, las demás leyes según la t-norma elegida.
- La implicación residual conserva el modus ponens; sobre ella se apoyan las lógicas difusas formales.
- Las reglas SI–ENTONCES se evalúan con la fuerza de la condición, el recorte o la reducción del consecuente y la combinación con el máximo: para el ventilador a 27 °C y 60 %, R1 se dispara con fuerza 0,2 y R3 con fuerza 0,67.
¿Quieres probarlo tú mismo? Pide a un agente de IA que escriba la tabla de leyes de esta parte para otras t-normas —por ejemplo, la familia de Hamacher o la de Frank— y descubre cuál se parece más a la lógica clásica.
¿Lo ves de otra manera? Escribe a support@coden-app.com.