Un agent basé sur la connaissance, ou Knowledge-based Agent, est un type d’agent intelligent qui prend des décisions et agit de manière autonome dans son environnement en s’appuyant sur une base de connaissances explicite et un moteur d’inférence. Contrairement aux agents réactifs simples qui répondent directement aux perceptions sensorielles, les agents basés sur la connaissance maintiennent une représentation interne du monde, sous forme de faits et de règles, et utilisent des mécanismes de raisonnement logique pour déduire les actions appropriées afin d’atteindre leurs objectifs. Cette approche permet un comportement plus flexible et réfléchi.
Les concepts fondamentaux et les principes essentiels des agents basés sur la connaissance reposent sur deux composantes principales. Premièrement, la base de connaissances (Knowledge Base, KB), qui est un répertoire centralisé d’informations. Elle contient des phrases exprimées dans un langage formel de représentation des connaissances, décrivant des faits sur le monde, les règles du domaine d’application, les conséquences des actions, et parfois les objectifs de l’agent. Les langages utilisés peuvent inclure la logique propositionnelle, la logique du premier ordre, les règles de production, ou des ontologies. Deuxièmement, le moteur d’inférence (Inference Engine, IE), qui est le mécanisme de raisonnement de l’agent. Il applique des algorithmes d’inférence (comme le chaînage avant, le chaînage arrière ou la résolution) à la base de connaissances pour déduire de nouvelles informations ou pour sélectionner l’action la plus appropriée en fonction de la situation courante et des objectifs. L’agent perçoit son environnement, met à jour sa base de connaissances avec ces nouvelles perceptions, raisonne sur cette base de connaissances, puis choisit et exécute une action. Certains agents basés sur la connaissance peuvent également intégrer des capacités d’apprentissage pour enrichir ou modifier leur base de connaissances au fil du temps.
L’importance des agents basés sur la connaissance réside dans leur capacité à modéliser des comportements intelligents sophistiqués et, de manière cruciale, explicables. Parce que leurs décisions découlent d’une base de connaissances explicite et d’un processus de raisonnement identifiable, il est possible de comprendre pourquoi un agent a pris une décision particulière. Cette transparence est essentielle dans de nombreux domaines critiques. Ils offrent une plus grande flexibilité que les systèmes purement programmés ou réactifs, car la modification ou l’extension de leurs capacités peut souvent être réalisée en mettant à jour la base de connaissances sans altérer le moteur d’inférence sous-jacent. Leur impact est notable dans l’automatisation de tâches qui requièrent une expertise humaine spécialisée, comme le diagnostic, la planification, ou la configuration de systèmes complexes. Ils ont également servi de paradigme fondamental dans la recherche en intelligence artificielle pour explorer les mécanismes du raisonnement et de la représentation des connaissances.
Les applications pratiques des agents basés sur la connaissance sont variées. Les systèmes experts constituent l’exemple le plus emblématique, tels que MYCIN pour le diagnostic médical d’infections sanguines ou DENDRAL pour l’identification de structures moléculaires. Dans le domaine de l’aide à la décision, ces agents analysent des données et appliquent des règles métier pour fournir des recommandations, par exemple en finance pour l’évaluation des risques. En robotique intelligente, ils permettent à des robots de comprendre leur environnement et de planifier leurs actions de manière sensée, comme un robot de service domestique qui connaît l’emplacement des objets et sait comment les manipuler. Dans les jeux vidéo, des personnages non-joueurs (PNJ) peuvent être dotés d’une base de connaissances sur le monde du jeu pour afficher des comportements plus crédibles et adaptatifs. Les systèmes de tutorat intelligent utilisent des bases de connaissances sur le domaine enseigné et sur les stratégies pédagogiques pour adapter l’enseignement aux besoins de chaque étudiant. Enfin, dans le traitement du langage naturel, des systèmes de questions-réponses peuvent s’appuyer sur des ontologies (une forme structurée de base de connaissances) pour comprendre les requêtes et formuler des réponses pertinentes.
Il existe différentes nuances et interprétations du concept d’agent basé sur la connaissance. La nature de la connaissance peut varier, allant de faits atomiques très spécifiques à des heuristiques ou des principes plus généraux. Les mécanismes de raisonnement peuvent également différer, allant du raisonnement déductif logique strict à des formes plus flexibles comme le raisonnement par défaut, abductif, ou le raisonnement basé sur des cas. Une distinction importante concerne l’intégration de l’apprentissage : certains agents ont une base de connaissances statique, tandis que d’autres, plus avancés, peuvent apprendre et mettre à jour leurs connaissances à partir de l’expérience. On distingue aussi les agents logiques purs, qui opèrent avec des certitudes, des agents capables de gérer l’incertitude en utilisant, par exemple, des réseaux bayésiens ou la logique floue, où la base de connaissances peut contenir des probabilités ou des degrés de croyance. Enfin, bien que l’idéal soit une approche déclarative (où la base de connaissances décrit « ce qui est »), certaines implémentations peuvent inclure des éléments procéduraux (décrivant « comment faire »).
Plusieurs concepts sont étroitement liés aux agents basés sur la connaissance. Les systèmes experts sont une application directe et majeure. L’ingénierie des connaissances est la discipline qui s’occupe de la construction, de la maintenance et de l’utilisation des bases de connaissances. La représentation des connaissances est le champ de l’IA qui étudie comment formaliser l’information pour permettre le raisonnement. Les moteurs de règles sont un type commun de moteur d’inférence. Les ontologies sont des spécifications formelles de concepts et de leurs relations, souvent utilisées comme ossature pour les bases de connaissances. Le raisonnement automatique est le domaine qui développe les algorithmes d’inférence. Des termes parfois utilisés comme synonymes partiels incluent « agent logique » (si l’accent est mis sur la logique formelle) ou « agent cognitif » (si l’agent vise à modéliser des processus cognitifs humains). En contraste, les agents réactifs simples, qui agissent sans état interne profond ni raisonnement complexe, ou les agents basés sur l’apprentissage profond, dont la connaissance est implicite et apprise statistiquement à partir de données brutes, représentent des approches différentes de la conception d’agents.
L’origine des agents basés sur la connaissance remonte aux premières recherches en intelligence artificielle dans les années 1950 et 1960, avec l’ambition de créer des machines capables de pensée symbolique. Des programmes pionniers comme le General Problem Solver (GPS) de Newell, Shaw et Simon ont jeté les bases en utilisant des règles pour la résolution de problèmes. L’âge d’or des systèmes experts, dans les années 1970 et 1980, avec des succès comme DENDRAL et MYCIN, a démontré la viabilité et la puissance de l’approche consistant à encoder l’expertise humaine. Cette période a vu le développement de langages de programmation dédiés comme Prolog et LISP, ainsi que des outils de représentation des connaissances. Par la suite, des architectures d’agents plus générales et cognitives, telles que SOAR et ACT-R, ont émergé, intégrant des mécanismes de raisonnement basés sur la connaissance. L’avènement du Web Sémantique au début du 21e siècle a ravivé l’intérêt pour la création de vastes bases de connaissances partagées (graphes de connaissance, ontologies), offrant de nouvelles opportunités pour les agents basés sur la connaissance. Actuellement, face à la domination des approches d’apprentissage profond, on observe un intérêt croissant pour les architectures hybrides qui cherchent à combiner la capacité d’apprentissage des réseaux neuronaux avec la robustesse et l’explicabilité des systèmes basés sur la connaissance.
Les agents basés sur la connaissance présentent des avantages significatifs. Leur principal atout est l’explicabilité : leur processus de décision peut être inspecté et compris, ce qui est crucial pour la confiance et la validation dans des applications sensibles. Ils offrent une bonne modularité, car la base de connaissances peut être modifiée ou étendue indépendamment du moteur d’inférence, facilitant la maintenance et l’évolution. Ils permettent d’incorporer directement l’expertise humaine formalisée et peuvent faire preuve de flexibilité face à des situations nouvelles si leur base de connaissances est suffisamment riche et leur moteur d’inférence assez puissant. Cependant, ils souffrent aussi d’inconvénients notables. Le « goulot d’étranglement de l’acquisition des connaissances » est un défi majeur : construire et maintenir une base de connaissances exhaustive, précise et cohérente est une tâche ardue, coûteuse et chronophage. Les systèmes logiques classiques ont du mal à gérer l’incertitude, l’incomplétude des informations et les contradictions fréquentes dans le monde réel. Des problèmes théoriques comme le problème de la qualification (difficulté à spécifier toutes les préconditions d’une action) et le problème du cadre (déterminer ce qui ne change pas après une action) posent des défis computationnels. La scalabilité peut être un souci, car le temps de raisonnement peut augmenter considérablement avec la taille de la base de connaissances. Enfin, ces agents peuvent être « fragiles » (brittle), échouant de manière inattendue face à des situations non prévues explicitement dans leur base de connaissances, car ils manquent souvent de « bon sens » humain. Les défis actuels incluent l’intégration plus poussée avec l’apprentissage automatique, le développement de techniques de raisonnement plus robustes et capables de gérer le sens commun, et la création de bases de connaissances dynamiques et évolutives.