En la sesión anterior, exploramos la sintaxis de las reglas de producción, es decir, la estructura formal de estas. Hoy abordaremos la semántica de las reglas, en otras palabras, el significado y la interpretación de estas expresiones dentro de un sistema basado en conocimiento.
Y ¿qué es la semántica de las reglas de producción? La semántica de una regla de producción define cómo se interpreta y ejecuta esa regla dentro de un sistema. En otras palabras, nos dice qué significa que una regla sea verdadera o falsa y qué consecuencias tiene que se cumpla su condición. A diferencia de la sintaxis, que se ocupa de la estructura de las reglas, la semántica se centra en la lógica interna que gobierna el comportamiento de las reglas cuando se evalúan en un sistema de producción.
El objetivo principal de la semántica de las reglas de producción es garantizar que el motor de inferencia sepa cómo interpretar los hechos y las reglas para hacer inferencias correctas basadas en la lógica del sistema. Para ellos es indispensable la evaluación semántica de las condiciones con respecto a la base de hechos, que es el conjunto de información conocida en ese momento.
El proceso de evaluación tiene el siguiente ciclo:
Como se puede observar en la figura 3.1, cuando una nueva entrada o hecho se añade a la base de hechos, el sistema compara el hecho con las condiciones de las reglas de producción. Si una o más reglas tienen condiciones que son satisfechas por los hechos actuales, esas reglas son candidatas para ejecutarse.
REGLA: SI temperatura >38ºC ENTONCES fiebre.
HECHO: La temperatura de Alberto es 39º C
RESULTADO: La condición de la regla es verdadera, por lo que detona la acción “fiebre”
Como vimos en el subtema 3.3, existen dos tipos de reglas de producción Forward Chaining (Encadenamiento hacia adelante) y Backward Chaining (Encadenamiento hacia atrás) por lo que la interpretación semántica de las reglas cambia:
Ejemplo:
HECHO INICIAL: temperatura = 39°C.
REGLA 1: SI temperatura > 38°C ENTONCES fiebre.
REGLA 2: SI fiebre Y tos ENTONCES diagnóstico = gripe.
Hecho adicional: tos.
Primero, se evalúa la Regla 1 y se infiere “fiebre”. Luego, se evalúa la Regla 2 con los hechos “fiebre” y “tos”, y se llega al diagnóstico “gripe”.
Ejemplo:
META: diagnóstico = gripe.
REGLA: SI fiebre Y tos ENTONCES diagnóstico = gripe.
HECHOS: temperatura = 39°C.
El sistema busca hechos que validen la condición “fiebre” y “tos”. Encuentra “fiebre” (por la Regla 1), y luego solicita si hay tos. Si se confirma, se concluye que la meta “gripe” es verdadera.
Ahora ¿qué pasa cuando varias reglas pueden detonarse al mismo tiempo? Aquí el sistema necesita decidir cuál ejecutar primero. A este problema se le conoce como resolución de conflictos y existen varias estrategias para resolverlos:
Prioridad:
Algunas reglas tienen prioridad sobre otras. Las reglas más importantes se ejecutan primero.
Especificidad:
Las reglas con más condiciones (más específicas) se disparan antes que las más generales.
Recencia:
Las reglas que se basan en hechos más recientes son ejecutadas primero.
Longitud de la cadena de reglas:
En sistemas con encadenamiento hacia atrás, se prefieren las reglas que proporcionan soluciones en el menor número de pasos.
Regla 1: SI fiebre ENTONCES tomar paracetamol.
Regla 2: SI fiebre Y tos ENTONCES ir al médico.
Hechos: fiebre, tos.
La Regla 2 tiene más condiciones y es más específica, por lo que se dispara primero.
Ahora te invito a imaginar una aplicación de un sistema de recomendación de compra de productos en línea. Puedes pensar algo como una aplicación del tipo de Mercado Libre o Amazon. Esta aplicación podría ser un sistema de recomendación basado en reglas y puede utilizar la semántica para recomendar productos
Ejemplos:
Hecho:
El usuario mete en su carrito de compras un televisor
Regla 1:
SI el usuario se interesa por un televisor ENTONCES recomendar sistema de sonido.
Regla 2:
SI si el usuario se interesa por un televisor SONY ENTONCES recomendar cascos de sonido 3D de SONY.
Para este caso, la base de hechos, se actualiza con la compra y la regla se detona para recomendar un producto adicional.
La semántica de las reglas de producción es clave para entender cómo un sistema de producción toma decisiones, evalúa condiciones y genera conclusiones. Comprender el funcionamiento semántico de los procesos de encadenamiento, la resolución de conflictos y la actualización de hechos permite diseñar sistemas de inferencia más eficientes.
Para este subtema se requiere contestar un cuestionario autoevaluable, el cual se encuentra en el apartado de recursos.
Cuestionario del subtema 3.5.
Recursos: Información no disponible
Duración: Información no disponible