next up previous contents
Next: Système de maintien de Up: Extensions Previous: Extensions

Mode de fonctionnement des règles

Dans le modèle présenté, le mode de fonctionnement des règles est classique. La partie gauche d'une règle doit être démontrable par l'agent pour pouvoir être activée. Lorsqu'une règle est activée, la partie droite est introduite dans la base de connaissances de l'agent. On peut imaginer deux autres types de fonctionnement pour ces règles :

Dans la suite, mc, mppv et mscnv désignent respectivement les modes de déclenchement classique, sur prémisses partiellement vérifiées et par satisfaction des conditions non vérifiées.

Le déclenchement sur prémisses partiellement vérifiées permet de déclencher une règle non déclenchable par le mécanisme classique. Lorsqu'une partie des conditions déclenchantes n'est pas satisfaite, elle est supposée vraie si l'on n'a pas la preuve du contraire. La règle est alors déclenchée.

Le déclenchement par satisfaction des conditions non vérifiées se rapproche de la notion de planification. Comme précédemment, lorsque la partie gauche d'une règle n'est que partiellement vérifiée, on va quand même essayer de déclencher la règle. Dans ce mode de fonctionnement, l'agent aura pour but de satisfaire les conditions non encore satisfaites avant de pouvoir déclencher la règle.

Il est intéressant de remarquer que les règles de type mc peuvent simuler le fonctionnement des règles mppv et mscvn. Prenons par exemple une règle classique $A \land B \Longrightarrow C$. Pour faire fonctionner cette règle dans le mode mppv, il suffit de la traduire par les deux règles classiques suivantes :



L'expression modale SxA signifie que l'agent x suppose la formule A vraie. Cette réécriture fait apparaître les connaissances qui sont supposées pour pouvoir activer la règle. De même pour utiliser cette règle avec le mode mscnv, il faut faire apparaître les buts qui expriment la satisfaction des conditions non encore vérifiées. La règle est donc traduite de la manière suivante :


\begin{displaymath}\left\{
\begin{array}{l}
A \land B \Longrightarrow C \\
...
...rrow W_xB \\
B \Longrightarrow W_xA \\
\end{array} \right.
\end{displaymath}

Pour que cette traduction marche correctement, il faut que l'apparition de buts force l'agent à les satisfaire (par application d'autres règles ou changement de jeu par exemple).


next up previous contents
Next: Système de maintien de Up: Extensions Previous: Extensions
Christophe Delord
1998-09-02