De l’Intelligence Artificielle aux Systèmes à Base de Connaissances 1 Intelligence Artificielle : IA Définition: l’IA est une science dont le but est de faire faire par une machine tout ce que l’homme est capable de faire. 2 L’IA… et les ordinateurs La machine est presque toujours un ordinateur… et le chercheur en IA un informaticien. 3 Deux approches principales Psychologie cognitive Informatique avancée Objectif : étudier l’intelligence humaine Objectif : rendre les ordinateurs plus performants Ordinateur = un outil d’investigation Ordinateur = l’objet même de la recherche IA 4 L’Hypothèse de l’IA Niveau « symboles » du cerveau : l’esprit Programme d’IA isomorphisme Substrat neuronal Substrat électronique 5 L’IA et l’informatique IA Informatique « classique » Ordinateur = un outil capable de percevoir, comprendre, raisonner Ordinateur = un outil puissant de calcul Approche : humaine Approche : algorithmique 6 Résolution de problèmes par l’homme et la machine Ensemble des pbs que l’on sait résoudre de façon algorithmique et polynomiale Ensemble des problèmes 7 Autres problèmes… Problèmes formels • La résolution de systèmes d’équations en variables entières • La détermination d’un circuit passant par tous les sommets d’un graphe • … Problèmes d’optimisation • La construction d’emplois du temps respectant des contraintes • L’optimisation du trajet d’un voyageur de commerce à travers un réseau de villes • La sélection des fichiers à interroger dans une banque de données informatisée pour obtenir une information au moindre coût • Le chargement optimal d’un équipement (train, bateau, avion, …) au moindre coût • … 8 Problèmes de la vie courante ou professionnelle • Le diagnostic (maladies, pannes) • La compréhension d’un article de journal • La traduction d’un texte dans une langue étrangère • Reconnaître tante Berthe sur une photo 9 Tous ces problèmes, pour lesquels aucun algorithme de résolution n’est connu, relèvent - a priori - de l’IA 10 Historique de l’IA • 1950 : premiers programmes de calcul formel • 1956 : Logic Theorist (Newell et Simon) jeu (échecs, dames) démonstration automatique de théorèmes traduction automatique • 1958 : General Problem Solver (Newell, Shaw et Simon) • 1960 -> 1965 : période de « consolidation » 11 1965 : un nouvel élan et 2 approches Approche « combinatoire intelligent » Approche « utilisation de connaissances » Systèmes experts 12 De l’utilisation de connaissances Deux constats : Nos raisonnements mettent en œuvre de grandes quantités de connaissances Rien ne remplace l’expérience 13 Nos raisonnements mettent en œuvre de grandes quantités de connaissances [1/2] Le professeur envoya le cancre chez le censeur parce qu’il voulait… 1. lancer des boulettes 2. avoir la paix 3. le voir 14 Nos raisonnements mettent en œuvre de grandes quantités de connaissances [2/2] Aujourd’hui, c’était l’anniversaire de Jack. Penny et Janet sont allés dans un magasin pour acheter des cadeaux. Janet s’est décidée pour un cerf-volant. « Surtout pas » a dit Penny. « Jack a déjà un cerf-volant ». Il t’obligerait à le rapporter. 15 De l’utilisation de connaissances Deux constats : Nos raisonnements mettent en œuvre de grandes quantités de connaissances Rien ne remplace l’expérience 16 Rien ne remplace l’expérience Exemple : le jeu des échecs L’expérience : - modifie la façon de percevoir l’échiquier - guide la recherche des coups envisageables 17 Naissance des Systèmes Experts Systèmes Basés sur la Connaissance (SBC) ; Knowledge Based Systems (KBS) -> Domaine d’application d’un SE précis et limité mais performances égales à celles des meilleurs spécialistes + outils facilement modifiables 18 Représentation « déclarative » des connaissances La connaissance propre au domaine doit être séparée du code informatique Il faut pouvoir transmettre la connaissance en vrac, de façon énonciative, sans préjuger de son utilisation 19 Représentation impérative vs déclarative Prog. U <- R * I - « U = RI » « L’article s’accorde en genre et en nombre avec le nom » 20 Définition On définit un SE – par ses fonctions : Celles d’un « expert humain » dans un domaine précis – par sa structure : Séparation entre la Base de Connaissances (expertise) et le Moteur d’Inférences (contrôle sur ces connaissances) 21 Les fonctions d’un SE Raisonner sur une grande masse de connaissances Raisonner sur des connaissances – Imprécises – Incertaines – Incomplètes Dialoguer en langue naturelle avec l’utilisateur Expliquer, justifier son raisonnement 22 Exemple de dialogue en langue naturelle [1/2] <MYCIN> Mes recommandations thérapeutiques seront basées sur les infections probables et les organismes infectieux potentiels suivants : L’organisme peut être 1° Pseudomo nas aeruginosa, 2° klebsellia pneumoniae, 3° escherichia coli, 4° bacteroides fragilis, 5° enterobacter, 6° proteus non mirabilis. Voulez-vous me donner la gravité de la maladie de M. Fred SMITH sur une échelle de 0 à 4 ? <Utilisateur > 3 <MYCIN> M. Fred SMITH présente-t-il des réactions allergiques à un quelconque agent microbien ? <Utilisateur> non <MYCIN> Quel est son poids en kilos ? <Utilisateur> 70 23 Exemple de dialogue en langue naturelle [2/2] <MYCIN> Ma recommandation thérapeutique sera, en premier choix : Pour couvrir les points <1 2 3 5 6> - prescrire de la Gentamicine, dose 119 mg 98 h IV, pendant 10 jours ; Pour couvrir le point 4, - prescrire de la Clindamycine, dose 595 mg 96 h IV, pendant 14 jours. Désirez-vous éventuellement éliminer certains médicaments ? <Utilisateur> Oui, la Clindamycine. <MYCIN> Pour couvrir les points <2 3 4 5 6>, donner du Chloramphénicol, dose : 1g 96 h IV, pendant 15 jours ; ** surveiller le taux de globules blancs du patient. Pour couvrir le point 1, donner de la Gentamicine, dose 119 mg 98 h IV, 24 pendant 10 jours ; ** modifier la dose en cas de faiblesse rénale. Exemple d’explication par le SE de son propre raisonnement <MYCIN> L’infection du malade a-t-elle été contractée à l’hôpital ? <Utilisateur> Pourquoi ? <MYCIN> {Pourquoi est-ce important de savoir cela ?} Cela aidera à déterminer la catégorie à laquelle appartient l’organisme responsable de l’infection : - il a déjà été établi que 1° l’organisme est à Gram négatif, 2° c’est un bâtonnet, 3° il se développe à l ’air ou sans air, - donc, si l’infection par cet organisme n’a pas été contractée lors du séjour à l’hôpital, alors il est presque certain (0,8) que l’organisme est de la catégorie des enterobactoriaceae ; de plus, il se peut (0,1) que ce soit la Pseudomonas aeruginosa. 25 que <Utilisateur> Pourquoi n’avez-vous pas envisagé la possibilité l’organisme soit un Exemple de dialogue pour l’acquisition des connaissances [1/2] <MYCIN> <Expert> <MYCIN> <Expert> <MYCIN> <Expert> <MYCIN> <Expert> <MYCIN> <Expert> Les investissements suivants semblent être actuellement les plus appropriés : Varian Corporation et American Telephone and Telegraph (AT & T). Est-ce correct ? Non Y en a-t-il qui manquent ? Oui. Digital Equipment et Data General. Y en a-t-il qui ne devraient pas apparaître ? Oui. AT & T. Voulez-vous que je guide la recherche de l’erreur ? Oui Commençons alors par AT & T. J’ai utilisé la règle 27 pour y parvenir : Puisque 1/ le domaine de l’investissement n’est pas précisé ; 2/ le bénéfice attendu est supérieur à 10% ; 3/ l’investissement doit se faire à long terme ; Alors AT & T est un choix plausible (0,4). La règle est-elle correcte ? Oui. <MYCIN> Une prémisse n’aurait-elle pas dû être vérifiée ? <Expert> Oui, la 1. <MYCIN> Je ne suis parvenu à aucune conclusion au sujet du domaine de l’investissement. Aurais-je dû trouver quelque chose de précis ? 26 Exemple de dialogue pour l’acquisition des connaissances [2/2] <Expert> Oui. La technologie avancée. <MYCIN> Les essais pour toutes les règles qui pouvaient conclure au domaine de la technologie avancée ont échoué, car les prémisses étaient marques fausses : […] Ces deux règles étaient-elles correctes ? <Expert> Oui. <MYCIN> L’une d’entre elles aurait-elle dû s’appliquer ? <Expert> Non. <MYCIN> Manque-t-il une règle ? <Expert> Oui. <MYCIN> OK, alors j’ai besoin d’une règle qui me permette de déduire que le domaine doit être la technologie avancée. Voulez-vous me donner une telle règle ? <Expert> Si la branche d’imposition du client est 80% Si le client suit la tendance boursière de près Alors il est évident (0,8) que l’investissement doit se faire dans la haute 27 technologie. <MYCIN> La nouvelle règle est appelée règle 383. Architecture d’un SE Base de connaissances Moteur d’inférences BCD MI BCP Expert interface s Connaissances = données interchangeables Utilisateur 28 Illustration de la distinction BCD vs BCP [1/2] Pour un SE en diagnostic médical, on peut avoir -> dans la BCD « Si le malade a une température élevée, s’il a mal à la tête et s’il a des vomissements, alors penser à une méningite possible » -> dans la BCP : - Le malade d’appelle Lulu - Sa température est de 40° - Son âge est de 10 ans 29 Illustration de la distinction BCD vs BCP [2/2] Pour un SE en calcul de primitives, on peut avoir -> dans la BCD « Si l’intégrande contient un terme f(x) compliqué, il peut être judicieux d’essayer un changement de variable en posant : u = f(x) » -> dans la BCP - e est l’expression à intégrer - e a pour valeur : arctg(x) * 1/ 1 + x2 - e est un quotient 30 Les Règles de Production Si CONDITIONS Alors ACTION 1)CONDITIONS <-> teste l’appartenance de certains faits à BCP 2) ACTION <-> n’affecte que BCP (n’ajoute pas et ne supprime pas des 31 règles) Différents types de Règles de Production [1/2] <CONDITIONS , CONCLUSIONS> Conjonction de conditions (prémisses) conjonction de conclusions Les termes (condition ou conclusion) peuvent être : Des booléens (Vrai ou Faux) Si TEMPERATURE-ELEVEE et MAUX-DE-TETE et VOMISSEMENTS Alors penser à MENINGITE Des couples (Attribut Valeur) ; variante de la Logique des Propositions Si (TEMPERATURE ELEVEE) et … 32 Différents types de Règles de Production [2/2] Des prédicats avec variables ; Logique du 1er ordre. Si (Résolu ?e) et (Equiv ?e ?e’) Alors (Résolu ?e’) Exemple de règle avec coefficient de certitude (cf. MYCIN) Si le site de la culture est le sang et si l’organisme est à gram négatif et si l’organisme est de forme bâtonnet et si le patient est un hôte à risque Alors il est probable (0,6) que l’organisme est le domania aeruginosa 33 Intérêt des Règles de Production Ce formalisme présente 2 caractéristiques intéressantes : – Indépendance des règles entre elles (+ pas d’ordre) – Les règles sont des assertions, non orientées vers une résolution de problèmes (+ mise à jour aisée) Conclusion : ce formalisme est – a priori- un bon candidat pour représenter de façon déclarative des connaissances 34 1. Problèmes liés au développement des Systèmes Experts Représentation des connaissances -> base de connaissances – – Fond : relations avec l’expert, cohérence, apprentissage Forme : langage d’expression, mode de représentation 1. Résolution de problèmes -> moteur d’inférences – – – Types de raisonnements (approximatif, hypothétique) Interactions avec l’utilisateur (BCP complète vs incomplète) Efficacité 1. Fonctions développées – – – Interfaces en LN Explications Acquisition des connaissances 35 Les « bons » domaines pour les SE [1/2] Quand est-il pertinent d’utiliser l’approche SE ? Quand on ne peut pas faire autrement pas d’algorithme connu mais il existe des experts humains Jeux: bridge, échecs, go Diagnostic médical Recherche pétrolière … Quand on veut suivre le raisonnement Le SE est utilisé pour ses capacités d’explication (EIAH) 36 Les « bons » domaines pour les SE [2/2] Quand les connaissances évoluent très vite Facilités de mise à jour de la BC Quand on veut collecter une expertise Facilités d’acquisition des connaissances Nouveau paradigme de programmation 37 Développement et maintenance aisés Une sélection de ressources en ligne sur l’IA Deux livrets rédigés par des chercheurs de l’IRIT (Institut de Recherche en Informatique de Toulouse) : L’intelligence Artificielle, mais enfin de quoi s’agit-il ? http://www.irit.fr/Livret-IA/Livret-3/ Les machines pensent-elles ? http://www.irit.fr/Livret-IA/Livret-1/ 38