Système expert : comment reproduire une partie du raisonnement d’un spécialiste ?
Un système expert est un programme conçu pour résoudre des problèmes dans un domaine précis en utilisant des connaissances et des règles explicites.
Il cherche à reproduire une partie du raisonnement d’un expert humain.
Un système expert peut notamment :
- diagnostiquer une panne ;
- analyser une situation ;
- recommander une action ;
- contrôler une conformité ;
- identifier un risque ;
- expliquer une conclusion ;
- guider un utilisateur dans une procédure.
Son fonctionnement repose généralement sur trois éléments principaux :
Base de faits
+
Base de règles
+
Moteur d’inférence
=
Conclusion ou recommandation
Un système expert ne cherche pas à tout comprendre. Il applique des connaissances explicites à un problème délimité.
Ce que vous allez comprendre
À la fin de cet article, vous saurez :
- définir un système expert ;
- comprendre ses principaux composants ;
- distinguer faits, règles et inférences ;
- comprendre le chaînage avant et le chaînage arrière ;
- identifier ses avantages et ses limites ;
- concevoir un petit système expert ;
- comprendre les liens avec les LLM et les systèmes hybrides.
Qu’est-ce qu’un système expert ?
Un système expert est un système informatique utilisant une base de connaissances pour résoudre des problèmes comparables à ceux traités par un spécialiste.
Il est généralement limité à un domaine précis.
Exemples :
- diagnostic médical ;
- maintenance industrielle ;
- analyse de crédit ;
- conseil juridique ;
- configuration de produits ;
- support technique ;
- recommandation de formation ;
- contrôle réglementaire.
Un système expert ne possède pas nécessairement une compréhension générale du monde.
Il utilise surtout :
- des faits ;
- des règles ;
- des catégories ;
- des contraintes ;
- un mécanisme de raisonnement.
Exemple simple
Supposons qu’un système doive diagnostiquer un problème de connexion.
Faits
Le voyant est rouge.
La connexion est absente.
Le redémarrage a échoué.
Règles
SI le voyant est rouge
ET si la connexion est absente
ALORS vérifier la synchronisation.
SI la synchronisation est absente
ALORS vérifier la ligne.
Conclusion
Vérifier l’état de la ligne.
Le système produit cette conclusion en appliquant les règles aux faits disponibles.
Les principaux composants
La base de faits
La base de faits contient les informations décrivant la situation actuelle.
Exemple :
Incident : 458
Produit : Routeur X200
Voyant : Rouge
Connexion : Absente
Redémarrage : Échoué
Les faits peuvent provenir :
- de l’utilisateur ;
- d’un capteur ;
- d’une base de données ;
- d’un formulaire ;
- d’un autre système ;
- d’un document analysé.
Ils peuvent être temporaires.
Une fois l’incident résolu, la base de faits peut changer.
La base de règles
La base de règles contient les connaissances conditionnelles du domaine.
Une règle prend généralement la forme :
SI conditions
ALORS conclusion ou action
Exemple :
SI le voyant est rouge
ET si la connexion est absente
ALORS suspecter une perte de synchronisation.
Les règles peuvent contenir :
- une ou plusieurs conditions ;
- une conclusion ;
- une priorité ;
- un niveau de confiance ;
- des exceptions ;
- une source.
Le moteur d’inférence
Le moteur d’inférence applique les règles aux faits.
Il doit déterminer :
- quelles règles sont applicables ;
- dans quel ordre les appliquer ;
- quelles nouvelles conclusions ajouter ;
- quand arrêter le raisonnement ;
- comment gérer les conflits.
Le moteur constitue la partie active du système.
L’interface utilisateur
L’interface permet de recueillir les informations et de présenter les résultats.
Elle peut prendre la forme :
- d’un formulaire ;
- d’un assistant conversationnel ;
- d’une application métier ;
- d’un tableau de bord ;
- d’une API ;
- d’un chatbot.
Le module d’explication
Un bon système expert doit pouvoir expliquer sa conclusion.
Exemple :
Conclusion :
Vérifier la ligne.
Justification :
- Le voyant est rouge.
- La connexion est absente.
- Ces deux faits indiquent une perte de synchronisation.
- Une perte de synchronisation nécessite un contrôle de ligne.
Cette capacité constitue un avantage majeur du raisonnement symbolique.
Le module d’acquisition
Les connaissances doivent être ajoutées et maintenues.
Le module d’acquisition permet de :
- créer des règles ;
- modifier des définitions ;
- ajouter des exceptions ;
- valider des connaissances ;
- gérer les versions.
Cette phase relève de l’acquisition des connaissances.
Comment fonctionne le raisonnement ?
Le système compare les faits aux conditions des règles.
Exemple :
Faits initiaux
Marie possède le niveau débutant.
Formation avancée exige le niveau intermédiaire.
Règle
SI le participant ne possède pas le niveau requis
ALORS recommander une formation préparatoire.
Conclusion
Recommander une formation intermédiaire à Marie.
La conclusion peut devenir un nouveau fait utilisé par une autre règle.
Le chaînage avant
Le chaînage avant part des faits disponibles.
Faits
↓
Règles applicables
↓
Nouveaux faits
↓
Conclusion
Exemple :
Faits
Voyant rouge
Connexion absente
Règle 1
SI voyant rouge
ET connexion absente
ALORS perte de synchronisation probable.
Règle 2
SI perte de synchronisation probable
ALORS vérifier la ligne.
Résultat
Vérifier la ligne.
Le système progresse des observations vers les conclusions.
Le chaînage avant convient notamment lorsque :
- de nombreux faits arrivent automatiquement ;
- le système doit détecter des situations ;
- plusieurs conclusions sont possibles ;
- le raisonnement est déclenché par des événements.
Le chaînage arrière
Le chaînage arrière part d’une hypothèse.
Hypothèse
↓
Conditions nécessaires
↓
Recherche des faits
↓
Validation ou rejet
Exemple :
Hypothèse :
L’incident est critique.
Le système recherche les conditions :
Le service est-il totalement bloqué ?
Existe-t-il une solution de contournement ?
Si les réponses confirment la règle, l’hypothèse est validée.
Le chaînage arrière convient notamment lorsque :
- le système cherche à vérifier une conclusion précise ;
- les questions doivent être posées progressivement ;
- il existe un grand nombre de faits possibles ;
- l’objectif est un diagnostic.
Les conflits entre règles
Plusieurs règles peuvent être applicables en même temps.
Exemple :
Règle A :
SI incident bloquant
ALORS priorité élevée.
Règle B :
SI client en environnement de test
ALORS priorité normale.
Si un incident bloquant concerne un environnement de test, les deux règles produisent des conclusions différentes.
Le système doit utiliser une stratégie :
- priorité explicite ;
- règle la plus spécifique ;
- règle la plus récente ;
- règle provenant de la source la plus fiable ;
- intervention humaine.
Les exceptions
Les exceptions doivent être représentées clairement.
Règle générale :
SI une facture est échue
ALORS envoyer une relance.
Exception :
SI un litige est ouvert
ALORS ne pas relancer.
Une exception peut être traitée comme une règle plus spécifique et prioritaire.
Les niveaux de confiance
Certaines conclusions ne sont pas certaines.
Exemple :
SI le voyant est rouge
ALORS perte de synchronisation probable.
Le système peut associer :
Confiance : 70 %
Il peut alors présenter plusieurs hypothèses classées.
Cependant, les niveaux de confiance doivent être définis avec prudence. Un nombre arbitraire peut donner une fausse impression de précision.
Exemple complet : recommandation de formation
Faits
Marie possède la compétence SEO au niveau débutant.
Formation SEO intermédiaire exige le niveau débutant.
Formation SEO avancé exige le niveau intermédiaire.
Certification SEO exige le niveau avancé.
Règles
SI le participant possède le prérequis d’une formation
ALORS il est éligible à cette formation.
SI le participant ne possède pas le niveau requis
ALORS rechercher une formation développant ce niveau.
Raisonnement
Marie possède le niveau débutant.
Donc :
Marie est éligible à la formation intermédiaire.
La formation intermédiaire développe le niveau intermédiaire.
Donc :
Marie pourra ensuite suivre la formation avancée.
La formation avancée prépare au niveau requis par la certification.
Recommandation
Parcours conseillé :
1. Formation SEO intermédiaire
2. Formation SEO avancé
3. Certification SEO
Exemple complet : diagnostic technique
Faits
Produit : Routeur X200
Voyant : Rouge
Connexion : Absente
Redémarrage : Échoué
Ligne : Active
Règles
SI voyant rouge
ET connexion absente
ALORS suspecter une perte de synchronisation.
SI perte de synchronisation
ET ligne active
ALORS vérifier la configuration.
SI configuration correcte
ET perte de synchronisation persistante
ALORS transmettre au niveau 2.
Résultat
Vérifier la configuration avant de transmettre l’incident.
Comment construire un système expert ?
1. Définir le domaine
Le périmètre doit être précis.
Exemple trop large :
Aider tous les employés dans toutes leurs décisions.
Exemple plus précis :
Identifier la priorité des incidents réseau.
2. Définir les décisions attendues
Exemples :
- classer un incident ;
- recommander une procédure ;
- déterminer une éligibilité ;
- vérifier une condition ;
- proposer un diagnostic.
3. Recueillir les connaissances
Il faut interroger les experts et analyser les documents.
4. Identifier les faits
Quels éléments décrivent une situation ?
5. Formaliser les règles
Chaque règle doit préciser :
- les conditions ;
- la conclusion ;
- les exceptions ;
- la source ;
- le niveau de priorité.
6. Construire des cas de test
Il faut inclure :
- cas simples ;
- cas fréquents ;
- cas limites ;
- cas contradictoires ;
- exceptions ;
- cas critiques.
7. Tester les explications
Le système doit pouvoir expliquer comment il a produit sa conclusion.
8. Organiser la maintenance
Les règles doivent être révisées lorsque :
- les pratiques changent ;
- les produits évoluent ;
- les réglementations sont modifiées ;
- de nouveaux cas apparaissent.
Avantages des systèmes experts
Explicabilité
Les règles utilisées peuvent être présentées.
Cohérence
Le système applique les mêmes règles à des situations comparables.
Disponibilité
La connaissance peut être utilisée à tout moment.
Transmission
Une partie de l’expertise devient accessible aux débutants.
Contrôle
Les règles peuvent être relues, modifiées et validées.
Rapidité
Le système peut examiner rapidement un grand nombre de conditions.
Limites
Acquisition difficile
Les experts ne savent pas toujours expliquer leur raisonnement.
Rigidité
Une règle explicite peut mal gérer une situation nouvelle.
Maintenance coûteuse
Une grande base de règles peut devenir difficile à maintenir.
Explosion du nombre de règles
Les combinaisons de conditions peuvent produire des milliers de règles.
Gestion de l’incertitude
Les situations réelles sont parfois ambiguës.
Contexte implicite
Une règle peut dépendre d’un contexte difficile à formaliser.
Absence de compréhension générale
Le système reste limité à son domaine.
Système expert et LLM
Un LLM et un système expert possèdent des forces différentes.
| Système expert | LLM |
|---|---|
| Utilise des règles explicites | Utilise des modèles statistiques |
| Produit des conclusions contrôlables | Produit du langage flexible |
| Explique les règles appliquées | Peut générer une explication plausible |
| Fonctionne dans un domaine limité | Couvre de nombreux sujets |
| Gère bien les contraintes formelles | Gère bien les formulations variées |
| Demande une modélisation manuelle | Apprend depuis de grands corpus |
Systèmes hybrides
Une architecture hybride peut combiner les deux.
Question en langage naturel
↓
LLM
↓
Extraction des faits
↓
Moteur de règles
↓
Conclusion contrôlée
↓
LLM
↓
Réponse expliquée
Le LLM peut :
- comprendre la question ;
- extraire les informations ;
- reformuler la réponse.
Le système expert peut :
- appliquer les règles ;
- vérifier les contraintes ;
- produire une conclusion traçable.
Exemple hybride
Question :
Marie peut-elle s’inscrire directement à la formation avancée ?
Le LLM extrait :
Personne : Marie
Formation : Formation avancée
La base indique :
Marie possède le niveau débutant.
Formation avancée exige le niveau intermédiaire.
Le moteur conclut :
Marie n’est pas encore éligible.
Le LLM formule :
Marie ne peut pas encore suivre directement la formation avancée, car elle possède le niveau débutant alors que le niveau intermédiaire est requis.
Système expert et RAG
Le RAG fournit des documents et des informations.
Le système expert applique les règles.
Une architecture peut suivre ce processus :
Question
↓
Recherche documentaire
↓
Extraction des faits
↓
Application des règles
↓
Réponse avec sources
Cette combinaison permet de relier :
- les connaissances documentaires ;
- les règles métier ;
- les capacités linguistiques du LLM.
Quand utiliser un système expert ?
Un système expert est pertinent lorsque :
- les règles sont relativement stables ;
- les décisions doivent être expliquées ;
- les erreurs ont un coût important ;
- le domaine est bien délimité ;
- les experts peuvent valider les règles ;
- les conditions peuvent être représentées explicitement.
Il est moins adapté lorsque :
- le domaine change constamment ;
- les décisions dépendent fortement d’une perception humaine ;
- les règles sont impossibles à expliciter ;
- les cas nouveaux sont très nombreux ;
- le système doit posséder une compréhension générale.
Erreurs fréquentes
Construire des règles sans cas réels
Les règles deviennent trop théoriques.
Oublier les exceptions
Le système produit des décisions rigides.
Utiliser des relations vagues
Les conditions doivent être précises.
Ignorer les conflits
Plusieurs règles peuvent produire des conclusions incompatibles.
Ne pas expliquer les résultats
Une conclusion sans justification réduit la confiance.
Ne pas conserver les sources
Une règle doit pouvoir être vérifiée.
Vouloir remplacer totalement l’expert
Le système doit souvent assister, et non supprimer, le jugement humain.
Confier les règles à un LLM sans validation
Une règle plausible peut être incorrecte.
À retenir
- Un système expert utilise des connaissances explicites dans un domaine limité.
- Il repose généralement sur une base de faits, une base de règles et un moteur d’inférence.
- Le chaînage avant part des faits.
- Le chaînage arrière part d’une hypothèse.
- Les règles doivent contenir leurs conditions et leurs exceptions.
- Les conflits entre règles doivent être gérés.
- Le système doit pouvoir expliquer ses conclusions.
- Les systèmes experts sont cohérents mais peuvent être rigides.
- Les LLM et les systèmes experts sont complémentaires.
- Une architecture hybride peut combiner compréhension du langage et raisonnement contrôlé.
Vérifiez votre compréhension
Qu’est-ce qu’un fait ?
Une information décrivant la situation traitée par le système.
Qu’est-ce qu’une règle ?
Une connaissance conditionnelle reliant des conditions à une conclusion ou une action.
Quel est le rôle du moteur d’inférence ?
Il sélectionne et applique les règles pertinentes.
Quelle différence existe-t-il entre chaînage avant et chaînage arrière ?
Le chaînage avant part des faits. Le chaînage arrière part d’une hypothèse à vérifier.
Pourquoi faut-il gérer les conflits ?
Parce que plusieurs règles peuvent produire des conclusions différentes.
Pourquoi un module d’explication est-il important ?
Il permet de comprendre et de vérifier la conclusion produite.
Questions fréquentes
Un système expert est-il une intelligence artificielle ?
Oui. Il appartient historiquement aux approches symboliques de l’intelligence artificielle.
Un chatbot est-il un système expert ?
Pas nécessairement. Un chatbot peut seulement produire du texte. Il devient plus proche d’un système expert s’il applique des règles et des connaissances structurées.
Un système expert peut-il apprendre ?
Un système expert classique évolue principalement par modification de ses règles. Des architectures hybrides peuvent intégrer des mécanismes d’apprentissage.
Combien de règles peut contenir un système expert ?
De quelques règles à plusieurs milliers. La maintenabilité devient un enjeu majeur lorsque leur nombre augmente.
Les systèmes experts sont-ils encore utiles ?
Oui, notamment pour les domaines où l’explicabilité, la cohérence et les contraintes sont importantes.
Un LLM peut-il remplacer un moteur d’inférence ?
Il peut imiter un raisonnement, mais il ne garantit pas l’application stable et exacte de règles formelles.
Continuer le parcours
Étape précédente
Base de connaissances : définition et fonctionnement
Étape suivante
La prochaine étape consiste à comprendre plus largement comment un système raisonne à partir de symboles, de faits et de règles.
➡️ Raisonnement symbolique : principes, logique et inférences