El encadenamiento hacia adelante (o razonamiento hacia adelante ) es uno de los dos métodos principales de razonamiento cuando se usa un motor de inferencia y puede describirse lógicamente como una aplicación repetida de modus ponens . El encadenamiento directo es una estrategia de implementación popular para sistemas expertos , sistemas comerciales y de reglas de producción . Lo opuesto al encadenamiento hacia adelante es el encadenamiento hacia atrás .
El encadenamiento directo comienza con los datos disponibles y usa reglas de inferencia para extraer más datos (de un usuario final, por ejemplo) hasta que se alcanza un objetivo . Un motor de inferencia que utiliza el encadenamiento directo busca las reglas de inferencia hasta que encuentra una en la que se sabe que el antecedente ( cláusula If ) es verdadero. Cuando se encuentra una regla de este tipo, el motor puede concluir o inferir el consecuente ( cláusula Then ), lo que da como resultado la adición de nueva información a sus datos. [1]
Los motores de inferencia iterarán a través de este proceso hasta que se alcance un objetivo.
Ejemplo
Supongamos que el objetivo es determinar el color de una mascota llamada Fritz, dado que croa y come moscas, y que la base de reglas contiene las siguientes cuatro reglas:
- Si X croa y X come moscas, entonces X es una rana
- Si X chirría y X canta, entonces X es un canario
- Si X es una rana, entonces X es verde
- Si X es un canario, entonces X es amarillo
Ilustremos el encadenamiento hacia adelante siguiendo el patrón de una computadora mientras evalúa las reglas. Suponga los siguientes hechos:
- Fritz croa
- Fritz come moscas
Con el razonamiento avanzado, el motor de inferencia puede derivar que Fritz es verde en una serie de pasos:
1. Dado que los hechos básicos indican que "Fritz croa" y "Fritz come moscas", el antecedente de la regla # 1 se satisface sustituyendo Fritz por X, y el motor de inferencia concluye:
Fritz es una rana
2. El antecedente de la regla # 3 se satisface sustituyendo X por Fritz, y el motor de inferencia concluye:
Fritz es verde
El nombre "encadenamiento hacia adelante" proviene del hecho de que el motor de inferencia comienza con los datos y razona hasta llegar a la respuesta, en contraposición al encadenamiento hacia atrás , que funciona al revés. En la derivación, las reglas se utilizan en el orden opuesto en comparación con el encadenamiento hacia atrás . En este ejemplo, las reglas n. ° 2 y n. ° 4 no se usaron para determinar que Fritz es verde.
Debido a que los datos determinan qué reglas se seleccionan y utilizan, este método se denomina basado en datos , en contraste con la inferencia de encadenamiento hacia atrás impulsada por objetivos . El enfoque de encadenamiento directo lo emplean a menudo sistemas expertos , como CLIPS .
Una de las ventajas del encadenamiento hacia adelante sobre el encadenamiento hacia atrás es que la recepción de nuevos datos puede desencadenar nuevas inferencias, lo que hace que el motor se adapte mejor a situaciones dinámicas en las que es probable que cambien las condiciones. [2] [3]
Ver también
Referencias
- ^ Feigenbaum, Edward (1988). El auge de la empresa experta . Libros de tiempos. pag. 318 . ISBN 0-8129-1731-6.
- ^ Hayes-Roth, Frederick; Donald Waterman; Douglas Lenat (1983). Construyendo sistemas expertos . Addison-Wesley. ISBN 0-201-10686-8.
- ^ Kaczor, Krzystof; Szymon Bobek; Grzegorz J. Nalepa (5 de diciembre de 2010). "Descripción general de los shells del sistema experto" (PDF) . geist.agh.edu.pl/ . Cracovia, Polonia: Instituto de Automática: Universidad de Ciencia y Tecnología AGH, Polonia . Consultado el 5 de diciembre de 2013 .