stringtranslate.com

Encadenamiento hacia atrás

El encadenamiento hacia atrás (o razonamiento hacia atrás ) es un método de inferencia que se describe coloquialmente como trabajar hacia atrás a partir del objetivo. Se utiliza en demostradores de teoremas automatizados , motores de inferencia , asistentes de prueba y otras aplicaciones de inteligencia artificial . [1]

En teoría de juegos , los investigadores la aplican a subjuegos (más simples) para encontrar una solución al juego, en un proceso llamado inducción hacia atrás . En ajedrez, se llama análisis retrógrado y se utiliza para generar bases de tablas para finales de ajedrez para ajedrez por computadora .

El encadenamiento hacia atrás se implementa en la programación lógica mediante la resolución SLD . Ambas reglas se basan en la regla de inferencia del modus ponens . Es uno de los dos métodos más utilizados para razonar con reglas de inferencia e implicaciones lógicas ; el otro es el encadenamiento hacia adelante . Los sistemas de encadenamiento hacia atrás suelen emplear una estrategia de búsqueda en profundidad , por ejemplo, Prolog . [2]

Cómo funciona

El encadenamiento hacia atrás comienza con una lista de objetivos (o una hipótesis ) y trabaja hacia atrás desde el consecuente hasta el antecedente para ver si hay datos que respalden alguno de estos consecuentes. [3] Un motor de inferencia que utilice encadenamiento hacia atrás buscaría las reglas de inferencia hasta encontrar una con un consecuente ( cláusula Then ) que coincida con un objetivo deseado. Si no se sabe si el antecedente ( cláusula If ) de esa regla es verdadero, entonces se agrega a la lista de objetivos (para que se confirme el objetivo de uno, también se deben proporcionar datos que confirmen esta nueva regla).

Por ejemplo, supongamos que una nueva mascota, Fritz, se entrega en una caja opaca junto con dos datos sobre Fritz:

El objetivo es decidir si Fritz es verde, basándose en una base de reglas que contiene las siguientes cuatro reglas:

Un ejemplo de encadenamiento hacia atrás.
Un ejemplo de encadenamiento hacia atrás
  1. Si X croa y X come moscas, entonces X es una rana .
  2. Si X gorjea y X canta, entonces X es un canario.
  3. Si X es una rana – Entonces X es verde
  4. Si X es un canario – Entonces X es amarillo

Con el razonamiento inverso, un motor de inferencia puede determinar si Fritz es verde en cuatro pasos. Para empezar, la consulta se formula como una afirmación de objetivo que se debe demostrar: "Fritz es verde".

1. Fritz se sustituye por X en la regla n.° 3 para ver si su consecuente coincide con el objetivo, por lo que la regla n.° 3 se convierte en:

 Si Fritz es una rana, entonces Fritz es verde

Dado que el consecuente coincide con el objetivo ("Fritz es verde"), el motor de reglas ahora necesita ver si se puede demostrar el antecedente ("Fritz es una rana"). Por lo tanto, el antecedente se convierte en el nuevo objetivo:

Fritz es una rana

2. Sustituyendo nuevamente a Fritz por X, la regla n.° 1 queda así:

 Si Fritz croa y Fritz come moscas, entonces Fritz es una rana.

Dado que el consecuente coincide con el objetivo actual ("Fritz es una rana"), el motor de inferencia ahora necesita ver si el antecedente ("Fritz croa y come moscas") puede probarse. El antecedente, por lo tanto, se convierte en el nuevo objetivo:

Fritz croa y Fritz come moscas

3. Dado que este objetivo es una conjunción de dos afirmaciones, el motor de inferencia lo divide en dos subobjetivos, ambos de los cuales deben demostrarse:

Fritz croa Fritz come moscas

4. Para probar ambos subobjetivos, el motor de inferencia ve que ambos subobjetivos se dieron como hechos iniciales. Por lo tanto, la conjunción es verdadera:

Fritz croa y Fritz come moscas

Por lo tanto, el antecedente de la regla n.° 1 es verdadero y el consecuente debe ser verdadero:

Fritz es una rana

Por lo tanto, el antecedente de la regla n.° 3 es verdadero y el consecuente debe ser verdadero:

Fritz es verde

Por lo tanto, esta derivación permite que el motor de inferencia demuestre que Fritz es verde. No se utilizaron las reglas n.° 2 y n.° 4.

Nótese que los objetivos siempre coinciden con las versiones afirmadas de los consecuentes de las implicaciones (y no con las versiones negadas como en modus tollens ) e incluso entonces, sus antecedentes se consideran como los nuevos objetivos (y no las conclusiones como en la afirmación del consecuente ), que en última instancia deben coincidir con los hechos conocidos (generalmente definidos como consecuentes cuyos antecedentes son siempre verdaderos); por lo tanto, la regla de inferencia utilizada es modus ponens .

Debido a que la lista de objetivos determina qué reglas se seleccionan y se utilizan, este método se denomina basado en objetivos , en contraste con la inferencia de encadenamiento hacia adelante basada en datos . El enfoque de encadenamiento hacia atrás se emplea a menudo en sistemas expertos .

Los lenguajes de programación como Prolog , Knowledge Machine y ECLiPSe admiten el encadenamiento hacia atrás dentro de sus motores de inferencia. [4]

Véase también

Referencias

  1. ^ Feigenbaum, Edward (1988). El auge de la empresa Expert . Times Books. pág. 317. ISBN 0-8129-1731-6.
  2. ^ Michel Chein; Marie-Laure Mugnier (2009). Representación de conocimiento basada en grafos: fundamentos computacionales de grafos conceptuales. Springer. p. 297. ISBN 978-1-84800-285-2.
  3. ^ Definición de encadenamiento hacia atrás como método de búsqueda en profundidad:
    • Russell y Norvig 2009, pág. 337
  4. ^ Idiomas que admiten encadenamiento hacia atrás:
    • Russell y Norvig 2009, pág. 339

Fuentes

Enlaces externos