Abdoul Hamid Derra
Un système expert permet de partir de faits et d’y appliquer des règles pour obtenir de nouveaux faits, dits inférés. Ils remplacent ou complètent le savoir des experts selon les cas. Ceux-ci sont composés d’une base de règles indiquant toutes les règles connues de l’expert et qui permet d’arriver à des déductions. Ils se composent aussi d’une base de faits reprenant tout ce qui est connu de l’utilisateur ainsi que les faits inférés jusqu’ici. Une interface utilisateur permet de communiquer de manière claire avec les différentes personnes utilisant le système. Le cœur du système expert est son moteur d’inférences. C’est lui qui va choisir et appliquer les règles et lancer les interactions avec l’utilisateur. Il peut être à chainage avant s’il part des faits pour en obtenir de nouveaux ou à chainage arrière s’il part d’un but et cherche comment y arriver. La création de ce moteur n’est pas toujours chose aisée, mais il est possible d’en appliquer dans tous les langages. Les moteurs à chainage avant sont cependant bien souvent plus simples à coder. Des langages particuliers, issus de la programmation fonctionnelle ou logique, comme Prolog, permettent de simplifier leur création.