====== La base de connaissances =====
La base de connaissances comporte deux sortes de connaissances : les faits considérés comme des assertions et les règles considérées comme des connaissances opératoires. Chacune de ces deux sortes de connaissances forme réciproquement une structure : [[base_de_connaissances#La base de faits|la base de faits]] et [[base_de_connaissances#La base de règles|la base de règles]].
Par ailleurs, les connaissances, qu'elles soient relatives à des faits ou à des règles, se classent en douze catégories. Ces catégories résultent des différences concernant la provenance des faits ou des traitements associés à certaines règles. Chaque catégorie comporte plusieurs types de connaissances. Ainsi, toutes connaissances (faits ou règles) appartiennent à une et une seule catégorie et à un et un seul type au sein de cette catégorie. Tous les types sont définis par [[doc:langage_nomo#les_modeles|des modèles écrits en langage nomo]].
Les douze catégories de connaissance représentent respectivement les connaissances relatives : [[#Les évènements externes|aux entrées]], [[#Les règles de commande|aux commandes]], [[#Les règles de perception|aux perceptions]], [[#Les règles de conception|aux concepts]], [[#Les règles de prédiction|aux prédictions]], [[#Les règles de marquage|aux marques]], [[#Les règles de transition, les règles d'opération et les règles de désignation|aux transitions, aux opérations, aux désignations]], [[#Les règles de récompense|aux récompenses]], [[#Les évènements externes|aux anomalies]], et [[#Les règles de contrôle|aux contrôles]]. Le rôle de chacune de ces catégories sera expliqué en fonction de leurs particularités dans la base de faits ou la base de règles.
La structure des bases se trouve directement liée à cette organisation. La base de faits et la base de règles comportent autant de divisions que de catégories à l'exception pour la base de règles, des catégories liées aux entrées et aux anomalies. Ces divisions au sein des bases se subdivisent ensuite en autant de types que contiennent les catégories.
Selon une fréquence définie à [[doc:langage_nomo#le_moteur_d_inference|l'initialisation]], le [[doc:moteur_inference|moteur d'inférence]] sélectionne une règle par type en fonction de la base de faits et en assume la conclusion.
===== La base de faits =====
La base de faits correspond à une mémoire à court terme, plus exactement, à une mémoire évènementielle : elle recueille et conserve des évènements. Tous les évènements possèdent un indice temporel correspondant à l'ancienneté, soit la différence entre le temps présent et son temps d'arrivée, [[#L'indice temporel|sauf exceptions]]. Les évènements proviennent de composants externes au système décisionnel, des conclusions du moteur d’inférence et de l’activité du moteur de création de règles.
Chaque source d’évènements correspond à un et un seul type de connaissance et, chaque type de connaissance possède une et une seule source d’évènements. Pour chaque type, une sous-partie de la mémoire évènementielle est dédiée et est gérée indépendamment des autres sous-parties.
Dans ce cadre, en posant par définition qu’une source d’évènements ne peut produire plus d’un évènement à la fois, il ne peut exister deux évènements de même type avec un indice temporel identique.
Le nombre maximal d’évènements conservés d'un même type est fixé au préalable, de même que la durée maximale de leur conservation lors de [[doc:langage_nomo#machine|l'initialisation du système décisionnel]]. Dans le cas où le nombre limite d’évènements mémorisés est atteint, le nouvel évènement supprime le plus ancien évènement, il y a un écrasement de la mémoire. Un évènement dépassant la durée limite de conservation est supprimé.
Le codage des évènements dépend de leur provenance : les évènements résultant de l’application d'une règle sont considérés comme [[base_de_connaissances#des évènements internes]], les autres évènements sont considérés comme [[base_de_connaissances#des évènements externes]].
==== Les évènements internes ====
Tous les évènements internes résultent de l'activité du moteur d’inférence appelé également interpréteur. Le moteur d'inférence interprète périodiquement la base de faits et la base de règles. A la fin de chaque cycle d'interprétation, la conclusion des règles sélectionnées est injectée dans la base de faits.
Un évènement interne est composé de trois valeurs : une information, une crédibilité et un indice temporel. L'information et la crédibilité d'un évènement restent inchangées de leur arrivée dans la base de faits jusqu'à leur élimination. Pour tous les évènements, l'indice temporel croît de manière monotone à chaque cycle d’interprétation.
=== L'information ===
L’information correspond au contenu de l’évènement qui se traduit par un item appartenant à l'ensemble de définition de son type exprimé dans [[doc:langage_nomo#modèles|un modèle en langage nomo]].
=== La crédibilité ===
La crédibilité de l’évènement représente la distance entre la condition de la règle et le contenu de la base de faits qui a conduit à l'arrivée de l'évènement. Cette distance se situe entre 0 exclu (peu de crédibilité accordée au contenu de l'événement) et 1 inclus (forte crédibilité accordée au contenu de l'événement). Le calcul de la crédibilité est décrit dans [[doc:moteur_inference|la documentation du moteur d'inférence]]. Les évènements de la catégorie de contrôle constituent une exception concernant l'exclusion de la borne inférieure de la crédibilité, en effet celle-ci peut être [[doc:base_de_connaissances?les_regles_de_controle|nulle]].
=== L'indice temporel ===
L’indice temporel correspond à la différence entre le temps présent et son temps d'arrivée. Par conséquent, l’indice temporel est nul lorsqu'un évènement arrive. Toutefois, afin de traduire la notion d'intention ou d'attente, deux catégories de connaissance admettent un indice temporel négatif à l’arrivée : les catégories liées aux prédictions et aux concepts. C'est la raison pour laquelle, le terme d'indice temporel a été préféré à celui d'ancienneté.
Les évènements avec un indice temporel supérieur ou égal à zéro représentent //des évidences//, c'est-à-dire des faits établis qu'il est impossible de renier et que seul l'oubli peut éliminer de la base de faits (l'indice temporel dépassant la durée limite de conservation ou écrasement de la mémoire). Les faits comme évidences suivent une logique strictement monotone.
Les évènements avec un indice temporel strictement négatif représentent //des intentions//, c'est-à-dire des faits traduisant une promesse de sa propre réalisation qu'il est toutefois possible de révoquer par un autre fait. Les faits comme intention permettent une logique non monotone.
La réalisation d'une intention correspond simplement au fait de passer d'un indice temporel négatif à un indice temporel positif ou nul. Le temps d'arrivée d'un évènement comme intention correspond au moment où cette réalisation devrait se produire. L'indice temporel devient donc négatif et représente, dans ce cas, l'attente.
Pour tout type d'évènement admettant des intentions, l'introduction d'une nouvelle intention entraine la suppression des intentions précédentes ayant une échéance plus lointaine, soit :
* si une intention arrive avec un indice temporel supérieur à celui de l'intention précédemment arrivée, alors l’intention est supprimée ;
* si une intention arrive avec un indice temporel identique à celui de l'intention précédente , alors l’intention est supprimée ;
* si une intention arrive avec un indice temporel inférieur à celui de l'intention précédemment arrivée, alors l’intention est conservée.
Tous les évènements autres que les intentions arrivent avec un indice temporel nul pour le prochain cycle d’interprétation. Afin de conserver cette synchronie avec les évidences provenant de la réalisation d'intentions, au passage du négatif au positif, l'indice temporel vaut zéro, quelle que soit la valeur réelle de la différence temporelle. Mais par la suite, l'indice temporel correspond toujours à la valeur réelle de la différence temporelle avec le temps d'arrivée prévu par l'intention.
Attention, ce mécanisme entraine une exception au principe selon lequel tous les évènements d’un même type possèdent nécessairement un indice temporel différent. En effet, ce principe peut être enfreint dans le cas où deux intentions très proches deviennent des évidences au cours d’un même cycle d’interprétation. Dans ce cas, ces évènements seront considérés tous les deux avec le même indice temporel. Mais, au cycle suivant, ces évènements auront de nouveau un indice différent. Les conséquences sur le fonctionnement de la mémoire évènementielle ou sur celui de la mémoire épistémique sont nulles. Par ailleurs, ce cas doit apparaître très rarement et n'est pas souhaitable.
==== Les évènements externes ====
Les évènements externes proviennent soit des composants externes au système décisionnel, soit du moteur de création de règles.
Les évènements relevant du premier cas appartiennent à la catégorie de connaissance relative aux entrées. Chaque type d’évènement de cette catégorie correspond à une et une seule source homogène d'évènements. Les évènements sont composés d'une information et d'un indice temporel.
L'information correspond à un vecteur de valeurs continues dont le nombre de composantes est indiqué dans [[doc:langage_nomo#modèles|le modèle définissant le type]]. A noter que l'indépendance statistique entre les composantes améliore les capacités d'adaptation des règles par le [[moteur_inference|moteur d'inférence]].
Comme tous les évènements internes, les évènements externes possèdent un indice temporel. L'arrivée des évènements des entrées est synchronisée avec les cycles d'interprétation, de sorte qu'au premier cycle d'interprétation de l'évènement, celui-ci aura un indice temporel nul.
La seconde provenance d'évènements externes correspond [[doc:creation_de_regles#les_anomalies|aux messages d'erreur du moteur de création de règles]] qui constituent la catégorie des anomalies contenant qu'un seul et unique type. Ces évènements sont composés d'une information et d'un indice temporel. L’information correspond à un item prédéfini indiquant [[doc:langage_nomo#la_structure_de_creation_de_regles|la nature de l'erreur]]. Le moteur d'inférence et le moteur de règles sont synchronisés de sorte qu'à leur arrivée, les anomalies possèdent un indice temporel nul.
===== La base de règles =====
La base de règles représente une mémoire à long terme, contenant et recueillant des règles. La base de règles se compose de sous-ensembles de bases de règles, chacun dédié à un type différent. Le nombre maximal de règles d'un même type se trouve défini dans [[doc:langage_nomo#machine|les paramètres initiaux]]. Une règle possède une condition et une conclusion ainsi que deux valeurs traduisant deux évaluations distinctes : la crédibilité et la pertinence. Le type d'une règle correspond au type de sa conclusion, soit au type d’événement généré lors de l’application de la règle.
La crédibilité mesure l'appariement entre la condition d'une règle et le contenu de la base de faits, elle est bornée entre 0, aucune correspondance, et 1, correspondance parfaite. La crédibilité d'une règle correspond à celle évoquée [[#les évènements internes|précédemment lors de la description des évènements internes]]. Cette mesure s'appuie uniquement sur l'état ponctuel de la base de faits et de la règle. La règle est sélectionnée en fonction de sa crédibilité et de celle des autres règles du même type, modulée par leur niveau de spécialisation des conditions.
La pertinence mesure l'utilité d'une règle, elle est bornée entre 0 et 1. A 0, cela signifie que la règle est inusitée ou redondante, à 1, cela signifie que la règle est pleinement utile pour certaines situations. Cette mesure intègre les évaluations successives de la règle. Une règle dont la pertinence passe en dessous [[doc:langage_nomo#machine|du seuil minimal fixé au préalable]] est éliminée de la base de règles. Lorsque la pertinence d'une règle est initialisée à la valeur maximale ou atteint cette valeur, la pertinence ne peut redescendre, ce qui signifie qu'elle ne peut être supprimée.
Le calcul de la crédibilité et celui de la pertinence sont présentés dans la documentation dédiée [[doc:moteur_inference|au moteur d'inférence]].
La condition d'une règle peut être ajustée à chaque sélection. Le mécanisme d'adaptation est explicité dans la partie dédiée au [[doc:moteur_inference|moteur d'inférence]]. Le nombre maximum d'ajustement possible est un paramètre initial des règles.
==== La condition ====
La condition se compose de deux parties, l’une regroupant des prémisses excitatrices et l’autre regroupant les prémisses inhibitrices. Une prémisse représente un évènement d'un certain type avec une certaine tolérance pour chacune de ses composantes.
Plus précisément, une prémisse se compose d'un ensemble de noyaux gaussiens, chacun d'entre eux correspondant avec la composante idoine de l'évènement visé, soit de couples (moyenne , écart type ). L'écart type sera appelé également tolérance. Dans le cas des composantes à valeurs discrètes, comme l'information des évènements internes et l'information des évènements de type anomalies, la tolérance est soit nulle, soit infinie. Pour toute composante, un écart type nul signifie qu'une valeur exacte est attendue, un écart type infini signifie que n'importe quelle valeur est acceptée. Les composantes avec une tolérance nulle ou infinie ne peuvent être ajustées lors de l'adaptation de la condition d'une règle.
Une prémisse de type conception ou de type prédiction est dédiée soit à la capture d'intention, soit à la capture d'évidence. Autrement-dit une prémisse ne peut porter à la fois sur une intention ou une évidence même dans le cas où la tolérance sur l'indice temporel est infini. En effet, cette tolérance porte soit sur les valeurs négatives soit sur les valeurs positives.
Pour qu’une règle soit éligible, il faut au minimum un évènement distinct pour chaque prémisse excitatrice. Autrement dit, les prémisses excitatrices sont liées implicitement par l’opérateur de conjonction.
En revanche, une seule adéquation entre l'une des prémisses inhibitrices et un événement peut empêcher la sélection de la règle. Autrement dit, les prémisses inhibitrices sont liées implicitement par l’opération de disjonction.
Une prémisse relative aux entrées ne peut être inhibitrice. Par ailleurs, les prémisses relatives aux entrées sont présentes uniquement dans les règles de perception.
Un niveau de spécialisation de la condition est déterminé en fonction du nombre de prémisses et de leurs tolérances. A crédibilité égale, la sélection se portera sur la règle plus spécialisée. Par exemple, une règle peut avoir une condition vide, c'est-à-dire sans aucune prémisse. Dans ce cas, elle est automatiquement sélectionnée si aucune règle plus spécialisée n'est présente.
Le niveau de spécialisation de la condition jouant un rôle important lors de la sélection, le détail du calcul de celui-ci est détaillé au cours de la description du fonctionnement du [[doc:moteur_inference|moteur d'inférence]].
Le nombre maximal de prémisses se trouve défini dans [[doc:langage_nomo#machine|les paramètres initiaux]].
==== La conclusion ====
L'application de toute règle conduit à la production d'un événement interne dont le contenu et le type correspondent à celui de sa conclusion. Selon leur catégorie d'appartenance, les conclusions peuvent déclencher des traitements supplémentaires. La crédibilité du nouvel événement correspond à la crédibilité accordée à la règle lors de sa sélection.
Une conclusion comporte uniquement une information, une valeur discrète correspondant à un item appartement à l'ensemble de définition de son type décrit dans un [[doc:langage_nomo#les_modeles|modèle]] en langage nomo.
Dans le cas des conclusions appartenant aux catégories liées à la conception ou à la prédiction, un délai de réalisation de l'événement, un réel positif, est rajouté. Si le délai de l'événement est nul, alors l'événement produit représente une évidence ; si le délai est supérieur à zéro, alors l'événement produit représente une intention avec un indice temporel négatif équivalent au délai. Pour toutes les autres catégories, l'événement produit est initialisé avec un indice temporel nul.
Pour les conclusions appartenant à la catégorie liée aux commandes, la conclusion comporte un vecteur de réel décrivant la commande à envoyer.
==== Les règles selon leur catégorie ====
Les types selon leur catégorie peuvent ou doivent être liés à d'autres types d'autres catégories. Les règles selon leur catégorie peuvent avoir des contraintes, des traitements particuliers à la fois sur le contenu de la condition et sur celui de la conclusion.
=== Les règles de perception ===
Une règle de perception correspond au premier niveau d’abstraction par rapport à un événement relatif à une entrée. Par conséquent, le type d’une règle de perception se trouve associé à un et un seul type d’événement d'entrée.
Un événement externe provoque une seule et une seule perception et uniquement une et une seule fois. Toutefois, une règle de perception peut avoir d'autres prémisses sur des événements internes de sorte que deux évènements identiques survenant l'un après l'autre peuvent conduire à deux perceptions différentes puisque la précédente modifie le contexte de la base de faits par l'introduction d'une première perception.
Les règles de perception possèdent une et une seule prémisse relative aux entrées avec un indice temporel nul associé à une tolérance nulle. La prémisse relative aux entrées est toujours excitatrice. Seules les règles de perception possèdent une prémisse relative aux entrées. Par ailleurs, il ne peut y avoir deux conclusions avec la même information.
=== Les règles de commande ===
Les règles de commande permettent d'envoyer des messages à des composants extérieurs au système décisionnel. Chaque type de commande est associé à un composant extérieur différent. Toutes les règles d'un même type de commande possèdent une conclusion différente.
Lors de l'application d'une règle de commande, sa conclusion produit une évidence nouvelle dans la base de faits et envoie au composant extérieur associé un vecteur de donnée ainsi que la crédibilité attribuée à l'application de la règle.
L'ajustement d'un vecteur de commande est possible par l’intermédiaire d'une règle de perception si celle-ci peut s'adapter. En effet, un type de règle de commande peut être lié à un type de règles de perception, cette relation implique que la taille du vecteur d'entrée égale la taille du vecteur de sortie et qu'ils soient de même nature.
Dans ce cas, un type de règles de perception peut être lié au plus à un type de règles de commande et réciproquement. La relation entre deux règles se traduit par une conclusion avec une information identique.
Au moment de l'envoi de commande, si la règle de perception associée existe et que sa prémisse peut être adaptée, le vecteur de sortie de la commande correspond au résultat d'un tirage aléatoire d'une distribution gaussienne dont la moyenne et la tolérance correspondent aux informations et tolérances de la prémisse d'entrée de la règle de perception. Quand la règle de perception ne peut plus être adaptée ou si elle a été oublié, une dernière mise à jour du vecteur de commande est effectuée à l'envoi de la commande. Le vecteur de sortie correspond alors aux dernières moyennes de la prémisse d'entrée. Dans le cas où cette ultime mise à jour ne peut être faite car la règle oubliée a été également écrasée par une nouvelle, le vecteur de commande demeure inchangé.
=== Les règles de conception ===
Les règles de conception servent à décrire des implications, elles constituent les briques de base dans la conception d'un système décisionnel évolué.
Aucun traitement ou aucun rôle particulier n'est associé à l'application d'une règle de conception. L'application consiste uniquement à créer un nouvel événement correspondant au contenu de la conclusion de la règle appliquée. A noter que les règles de conception peuvent générer des intentions.
Toutefois, afin de faciliter des combinaisons lors de la création de règles au cours du fonctionnement du système décisionnel, un type de règles de conception peut être associé à un autre type de règle, dans ce cas son ensemble de définition est inclus dans l'autre. Cependant, il n'y a pas de contraire d’existence, une règle peut être présente sans que son homologue existe.
=== Les règles de prédiction ===
Un type de prédiction est obligatoirement associé à un type de marquage, un type de contrôle. Le regroupement de trois règles appartenant réciproquement à chacun de ces types forme une structure prédictive.
Cette structure prédictive vise à prédire l'arrivée d'un événement, à évaluer cette prédiction et à améliorer la prochaine prédiction. L'événement prédit est soit un type de conception, soit un type de perception.
Un type de structure prédictive porte uniquement sur un type d'événements. Les types composant la structure prédictive possède un ensemble de définition identique.
Afin d'éviter les incohérences, les conclusions d'un même type sont uniques. Toutes les relations entre les types sont exprimées dans les [[doc:langage_nomo#modeles|modèles]].
Une règle de prédiction a pour rôle de définir une fenêtre temporelle dans laquelle la prédiction sera évaluée. Une règle de prédiction n'a pas de contrainte particulière concernant la composition de sa condition. Toutefois, si la prédiction possède une incertitude temporelle (ce qui se traduit par une prémisse de marquage non nulle dans [[#les_regles_de_controle|la règle de contrôle]]) alors il devient judicieux d'ajouter une prémisse inhibitrice du même type de prédiction et avec le même contenu que celui de la conclusion, afin d'interdire deux prédictions identiques successives qui perturberaient l'évaluation.
La conclusion d'une règle de prédiction correspond donc à l'item contenu dans l’événement à prédire. La conclusion est associée à un délai, correspond à la durée de l'attente prévue. À ce délai, une marge de tolérance est automatiquement rajoutée. La marge de tolérance représente la multiplication entre un [[doc:langage_nomo#machine|facteur de couverture]] et la tolérance de l'indice temporel dédié à l'évaluation de la prédiction dans la condition de la règle de contrôle associée. Si la tolérance est nulle, la marge minimale vaudra 1ms afin de maintenir l'évaluation de la prédiction jusqu'à terme.
Autrement dit, la conclusion d'une règle de prédiction produit une intention qui deviendra une évidence peu de temps après la réalisation de la prédiction si celle-ci se trouve exacte.
Dans le cas où l'ajustement de la prédiction est autorisé, le délai de la conclusion sera ajusté à la fin de l'évaluation de la prédiction, soit à l'émission d'un événement de contrôle idoine.
=== Les règles de marquage ===
Un type de règles de marquage peut soit appartenir à une structure prédictive, soit indiquer à une règle de récompense les règles à rétribuer.
Dans le cas où le type de règles de marquage fait partie d'une structure prédictive, le rôle d'une règle de marquage consiste à produire un événement qui servira de marqueur temporel en indiquant le temps écoulé depuis le début de la prédiction. C'est cet événement qui permettra d'évaluer le temps de la prédiction.
Autrement dit, une règle de marquage doit se déclencher en même temps qu'une règle de prédiction. Elles doivent alors avoir la même condition.
Dans le cas où le type de marquage est associé à un et un seul type de récompense, le rôle des événements produits par les règles de marquage pour la récompense est expliqué ci-dessous en même temps que le fonctionnement des règles de récompense. Il n'y a pas de contrainte particulière concernant le contenu de la condition.
=== Les règles de contrôle ===
Les règles de contrôle servent à évaluer les prédictions. La condition d'une règle de contrôle se compose exactement de trois prémisses: une prédiction, une marque et un contenu. La prémisse représentant le type de contenu en tant que tel de la prédiction est soit un type de conception soit un type de perception. Aucune contrainte n'est posée sur la crédibilité.
L’unique prémisse appartenant au type de prédiction idoine vise une intention avec une information correspondant à la conclusion de la règle de prédiction associée. Cette prémisse a une tolérance nulle sur l'information et une tolérance infinie sur l'indice temporel. Aucune contrainte n'est posée sur la crédibilité.
L'unique prémisse appartenant au type de marque idoine vise une évidence avec pour information celle correspondant à la conclusion de la règle de marquage associée. Cette prémisse a une tolérance nulle sur l'information. La tolérance concernant l'indice temporel correspond à la tolérance temporelle de la prédiction, celle ajoutée à un facteur près au délai de la prédiction.
L'unique prémisse de conception ou de perception possède un indice temporel nul avec une tolérance nulle. Il n'y a pas de contrainte sur la définition de l'information, ni sur la définition de la crédibilité.
L’évaluation de prédiction s'effectue nécessairement sur plusieurs cycles d'interprétation. Aussi, le mécanisme de sélection et d’application est un peu différent des autres règles.
Une règle de contrôle est sélectionnée dès qu'une intention de prédiction et un événement marqueur idoine apparaissent dans la mémoire événementielle, même si aucun événement correspond à la prémisse de type conception ou de type prémisse. La sélection dure jusqu'à ce que l'intention devienne une évidence. L'adéquation entre la condition de la règle de contrôle et la mémoire événementielle est maximale, si la prémisse de contenu survient au moment où l'indice temporel du marqueur correspond à celui de la prémisse idoine.
La figure ci-dessous illustre la fenêtre temporelle de l'évaluation définie par la présence d'une intention de prédiction mais l'évaluation du moment prédit s'effectue via la valeur () et la tolérance () de l'indice temporel de la prémisse du marquage. La limite de l'évaluation correspond à l'indice temporel prédit plus la tolérance de cette prédiction fois un facteur de couverture . Le score correspond à la valeur d'appariement entre la prémisse et la mémoire évènementielle : 1, il existe un évènement correspondant parfaitement, 0, aucun évènement ne correspond avec la prémisse.
{{ :wiki:window.png?nolink&300 |}}
Tant qu'il y a une intention de prédiction, toutes les autres règles de contrôle de même type sont inhibées. Autrement dit, si une prédiction plus lointaine apparaît, elle n’est pas prise en compte tant que la première est en cours. La fin de l’évaluation survient quand l’événement prédictif intentionnel disparaît, soit parce qu’il est devenu une évidence, soit parce qu’un événement prédictif plus immédiat a fait son apparition.
La figure ci-dessous illustre l'état de la mémoire événementielle lors des quatre phases de fonctionnement d’une règle de contrôle visant une perception comme contenu. Les événements sont représentés par des carrés avec un numéro correspond au cycle d'interprétation de leur arrivée et sont rangés par colonne selon leur type. La position des événements correspond à la valeur de leur indice temporel. L'écoulement de l'indice temporel (dt) va de haut en bas.
{{ :wiki:evaluation.png?nolink700 |}}
La première phase lance le contrôle par l’arrivée simultanée d’une prédiction et d’un marqueur. Toutes les perceptions arrivant entre ces deux événements inclus seront contrôlées. La transformation de la prédiction en évidence indique la fin du contrôle et provoque ainsi l’arrivée de l’événement de contrôle idoine dont la crédibilité traduit la qualité de la prédiction allant de 0 : prédiction nulle à 1 : prédiction parfaite.
L'ajustement de la prédiction ainsi que la gestion particulière de la pertinence des règles de contrôle sont détaillés dans la partie sur le [[doc:moteur_inference|moteur d'inférence]].
=== Les règles de récompense ===
Les règles de récompense jouent un rôle uniquement lorsque les règles ont une pertinence pouvant évoluer, c'est-à-dire avec une pertinence différent de un.
Un type de règles de récompense est lié à un ou plusieurs types de règles, seules les règles de ces types pourront être désignées pour être récompensées. Les types de règles associés ne peuvent être des types de récompense ou des types de contrôle.
Parallèlement à la production d'un événement de récompense, l'application d'une règle de récompense augmente, proportionnellement à sa crédibilité, la pertinence des règles désignées.
La désignation des règles à récompenser peut s'effectuer de trois manières différentes : sans marque, avec une marque, avec deux marque. Le type de marque n'est pas spécifiquement lié à une règle de récompense.
La première manière implique l'absence de prémisse liée à une marque dans la condition de la règle de récompense. Pour chaque type lié, la règle à récompenser correspond à celle qui a été sélectionnée le plus récemment. Si c'est un type ne produisant pas d'intention, la règle récompensée correspond à celle ayant produit l'évènement le plus récent et encore présent dans la mémoire événementielle, comme l'illustre la figure ci-dessous où un type de récompense est lié à un type de perception et un type de commande.
{{ :wiki:reward_1.png?nolink&250 |}}
La deuxième manière s'appuie sur la présence d'une marque dans la mémoire évènementielle. Cette marque signale au moment de son arrivée que des règles sont susceptibles d'être récompensées. Ce mécanisme repose sur la présence d'une prémisse de marque ayant une tolérance infinie sur l'indice temporel. Les règles sélectionnées correspondent à celles déclenchées au même moment que la règle ayant généré la marque ou après, comme l'illustre la figure ci-dessous où seul un type de commande est lié au type de récompense.
{{ :wiki:reward_2.png?nolink&250 |}}
La troisième manière de récompenser s'appuie sur la présence de deux marques dans la mémoire évènementielle afin de récompenser un ensemble de règles du même type, toutes celles se trouvant entre les deux marques en adéquation avec la condition de la règle de récompense. Ces deux prémisses possèdent une tolérance infinie sur l'indice temporel. La figure ci-dessous illustre la sélection des trois règles ayant produit ces événements. S'il s'agit de la même règle, elle est récompensée trois fois.
{{ :wiki:reward_3.png?nolink&300 |}}
Hormis le fait que la condition d'une règle de récompense ne puisse avoir plus de deux prémisses de marque et que celles-ci possèdent une tolérance infinie sur l'indice temporel, il n'y a pas de contrainte sur la condition.
Tout comme la règle de contrôle, la gestion de la pertinence est particulière et elle sera abordée dans la partie sur le [[doc:moteur_inference|moteur d'inférence]].
=== Les règles de transition, les règles d'opération et les règles de désignation ===
Ces trois catégories de règles concernent l'utilisation du moteur de création de règles. Le moteur de création correspond à un automate à état. Le passage d'un état à un autre s'effectue via les règles de transition. Il existe qu'un seul type de règles de transition.
Selon l'état du moteur de création de règles, plusieurs opérations peuvent être réalisées, ces opérations sont déclenchées par les règles d'opération. La désignation d'événements servant de références lors de la création de règles s'effectue via les règles de désignation.
Le rôle de ces règles est abordé plus en détail dans la présentation du [[doc:creation de_regles|moteur de création de règles]].