# Semaine 3: Les systèmes experts à base de règles
Lecture principale: Luger (2009)
## Système de production
Source: [Young - Production Systems in Cognitive Psychology](http://www0.cs.ucl.ac.uk/staff/r.m.young/publications/00.PS-encyc-article.pdf)
- Un système de production est une collection de règles `si ... alors ...` qui ensemble forment un modèle de simulation et traitement de l'information d'une tâche cognitive ou d'un ensemble de tâches.
- Le fonctionnement est un cycle de reconnaissance (conditions) et d'action
- Caractéristiques:
- Traitement en série et en parallèle
- Indépendance des règles
- Contrôle flexible
- Utilisés dans des domaines avec une forte concentration de connaîssances, par exemple le domaine médical et le jeu d'échecs.
- Un conflit se produit si plusieurs règles sont satisfaites simultanément
- Différentes méthodes de résolution: ordre de précédence des règles, âge des données, complexité des conditions de la règle, ...
- Young and O’Shea (1981): Résolution de soustractions chez les enfants: une douzaine de règles. Les erreurs les plus fréquentes sont répliquées facilement en enlevant ou ajoutant une règle au système.
- Depuis les années 1990: Architectures cognitives intégrées:
- Soar (Newell 1990):
- ACT (Anderson and Lebiere 1998):
## Définition
- Les systèmes experts représentent les connaîssances servant à résoudre les problèmes sous la forme de règles `si ... alors ...`.
- Un système expert à base de règles est construit à partir d'un **système de production** tel que défini par Newell and Simon:
- Modéliser la performance humaine dans la résolution de problèmes
- Base de connaîssances spécifique au domaine: ensemble de règles de production
- Expérimentation sur la cryptarithmétique: résolution de problèmes arithmétiques où les nombres sont encodés. Observation du processus de résolution et établissement de règles.
La recherche vers l'avant est utilisée lorsqu'il est difficile de formuler une hypothèse ou un but. Par exemple, dans un problème d'interprétation. Recherche avec parcours en largeur.
La recherche par l'arrière dans un système expert revient au test d'une hypothèse. L'objectif est identifié et placé en mémoire. Des objectifs intermédiaires peuvent être résolus en demandant à l'utilisateur des informations supplémentaires. Pas de mécanisme de propagation par l'arrière. Recherche avec parcours en profondeur.
Les deux questions auxquelles un système expert à base de règles peut répondre sont: pourquoi? et comment?
- Pourquoi demandes-tu cette information?
- Retourne la règle courante pour laquelle il manque une information.
- Comment es-tu arrivé à cette conclusion?
- Retourne la réquence de règles qui ont permis d'arriver à la conclusion.
Le programme peut être arrêté à chaque cycle et inspecté. Chaque règle représente un élément de résolution du problème, une étape logique. Contrairement à un programme traditionnel compilé où l'instruction courante fera peu de sens.
Le mécanisme est simple, mais le pouvoir d'explication est remarquable. Si les règles sont mal divisées par contre, les réponses seront adéquates, mais les explications seront vagues, arbitraires ou illogiques. Ceci réduira la confiance de l'utilisateur envers le système.
Ce mode de raisonnement est une recherche avec parcours en largeur: les conditions des règles sont vérifiées une par une dans l'ordre où les règles sont enregistrées dans la base de connaissances.
**Recherche opportuniste**: Dès qu'un règle est déclenché et génère une nouvelle information, cette information est ajoutée comme une prémisse et sert à déterminer en priorité les prochaines règles à vérifier.
- La recherche est beaucoup moins orientée.
- L'atteinte d'un objectif n'existe pas vraiment.
- Les explications disponibles pour l'utilisateur sont plutôt limitées. On peut seulement partager la liste des règles qui ont été déclenchées jusqu'à maintenant.