Chaînage avant - Forward chaining

Le chaînage avant (ou raisonnement direct ) est l'une des deux principales méthodes de raisonnement lors de l'utilisation d'un moteur d'inférence et peut être décrit logiquement comme une application répétée de modus ponens . Le chaînage en aval est une stratégie de mise en œuvre populaire pour les systèmes experts , les systèmes de règles métier et de production . Le contraire du chaînage vers l' avant est le chaînage vers l'arrière .

Le chaînage avant commence avec les données disponibles et utilise des règles d'inférence pour extraire davantage de données (d'un utilisateur final, par exemple) jusqu'à ce qu'un objectif soit atteint. Un moteur d'inférence utilisant le chaînage avant recherche les règles d'inférence jusqu'à ce qu'il en trouve une où l' antécédent ( clause If ) est connu pour être vrai. Lorsqu'une telle règle est trouvée, le moteur peut conclure, ou déduire, le conséquent ( clause Then ), résultant en l'ajout de nouvelles informations à ses données.

Les moteurs d'inférence vont parcourir ce processus jusqu'à ce qu'un objectif soit atteint.

Exemple

Supposons que le but soit de déterminer la couleur d'un familier nommé Fritz, étant donné qu'il croasse et mange des mouches, et que la base de règles contient les quatre règles suivantes:

  1. Si X croasse et X mange des mouches - Alors X est une grenouille
  2. Si X gazouille et X chante - Alors X est un canari
  3. Si X est une grenouille - Alors X est vert
  4. Si X est un canari - Alors X est jaune

Illustrons le chaînage avant en suivant le modèle d'un ordinateur lorsqu'il évalue les règles. Supposons les faits suivants:

  • Fritz croasse
  • Fritz mange des mouches

Avec un raisonnement avancé, le moteur d'inférence peut déduire que Fritz est vert en une série d'étapes:

1. Puisque les faits de base indiquent que "Fritz croaks" et "Fritz mange des mouches", l'antécédent de la règle n ° 1 est satisfait en remplaçant Fritz par X, et le moteur d'inférence conclut:

 Fritz is a frog

2. L'antécédent de la règle n ° 3 est alors satisfait en remplaçant Fritz par X, et le moteur d'inférence conclut:

 Fritz is green

Le nom de «chaînage vers l'avant» vient du fait que le moteur d'inférence commence par les données et raisonne jusqu'à la réponse, par opposition au chaînage vers l'arrière , qui fonctionne dans l'autre sens. Dans la dérivation, les règles sont utilisées dans l'ordre opposé par rapport au chaînage arrière . Dans cet exemple, les règles n ° 2 et n ° 4 n'ont pas été utilisées pour déterminer que Fritz est vert.

Étant donné que les données déterminent quelles règles sont sélectionnées et utilisées, cette méthode est appelée basée sur les données , contrairement à l' inférence de chaînage arrière axée sur les objectifs . L'approche de chaînage avant est souvent employée par des systèmes experts , tels que CLIPS .

L'un des avantages du chaînage vers l'avant par rapport au chaînage vers l'arrière est que la réception de nouvelles données peut déclencher de nouvelles inférences, ce qui rend le moteur mieux adapté aux situations dynamiques dans lesquelles les conditions sont susceptibles de changer.

Voir également

Les références

Liens externes