Introduction à l`Intelligence Artificielle
Transcription
Introduction à l`Intelligence Artificielle
Introduction à l’Intelligence Artificielle Cecilia Cec a Zanni-Merk a e cecilia.zanni@insa cecilia zanni@insa-strasbourg strasbourg http://courscz.free.fr 1 Plan du Cours Introduction à l'Intelligence Artificielle Représentation des connaissances Les Systèmes à Base de Connaissance Logique et Prolog Autres techniques 2 Bibliographie g Russel & Norvig, Intelligence Artificielle 2ème édition, Pearson Education France France, 2006 J.-G. Ganascia, L’intelligence Artificielle, Coll. DOMINOS Flammarion DOMINOS, Flammarion, 1993 Ginsberg, M. (1997). Essentials of Artificial Intelligence Morgan Kaufmann Intelligence, Kaufmann. J.-L. Laurière, Intelligence Artificielle : résolution de problèmes p p par l’homme et la machine,, Eyrolles, y , 1987 J.-G. Ganascia, L’âme machine, Seuil, 1990 3 Introduction 4 Définition A la différence de la Philosophie ou de la Psychologie qui sont aussi concernées par l'étude de l'intelligence, l’IA a le projet de construire (3) des artefacts (2) intelligents (1) 5 Définition 1. 2. 3. Qu’est ce que l’intelligence ? => > Percevoir/Raisonner/Agir/Communiquer Evaluation: capable de passer le test de Turing, jugée comme telle par l'homme. l homme. artefacts: machines inorganiques => systèmes y manipulant p des symboles y Hypothèse: les symboles correspondent à des objets du monde construire aspect ingénierie => agent (perçoit, raisonne, communique et agit) 6 Problématique Les domaines privilégiés de l'IA : là où il n’y a pas d’algorithme à la portée des machines. Comme les problèmes qui ont une combinatoire trop importante crypto-arithmétique, jeux jeux, mots croisés, p planification, , économie, ... 7 Problématique Ou qui nécessitent une démarche heuristique. exemple: l lle jjeu d'é d'échecs h (10160) Les heuristiques relèvent de connaissances d'ordre pragmatique p g q et traduisent un savoir-faire,, une expérience p plutôt qu'un calcul systématique. L'intelligence artificielle a aussi vocation à simuler le raisonnement humain. modéliser les connaissances et les modes de raisonnement d'un d un expert humain les rendre accessibles à un non informaticien. 8 Qu’est-ce que l’IA concrètement ? 1. 2. 3. Rechercher (analyser, résoudre des problèmes, trouver des méthodes de résolution) Représenter des connaissances (logique, règles, mémoire, cas, langue naturelle, etc.) Mettre en application les idées 1) et 2) (Systèmes (Sys è es Experts, pe s, pilotes p o es au automatiques, o a ques, agents d’interfaces,robots, Data Mining, etc.) 9 Un champ pluri-disciplinaire Informatique (systèmes, codage, ... ) Linguistique (syntaxe, sémantique, pragmatique, ...) Psychologie (intelligence humaine, animale, développement) Ergonomie (analyse des tâches) Biologie Statistique Biologie, Statistique, Economie Economie, Ethologie Ethologie, … 10 L’IA aujourd’hui j Les retombées de l’IA sont partout objets, agents, méthodologies, représentation des connaissances approches causales, qualitatives fouille de données, fouille de texte statistiques non linéaires (réseaux neuronaux) programmation par contraintes nouvelles méthodes d ’optimisation (évolution artificielle) 11 L’IA aujourd’hui j Vous les utilisez au quotidien sans le savoir Validation de facturettes American Express Compagnons Office www.pagesjaunes.fr Jeux de réflexion sur ordinateur Téléphonie mobile etc.. 12 Grands domaines de l’IA Reconnaissance et synthèse de la parole (ex: réservation d’hôtel) Reconnaissance et synthèse y d'images g ((ex. recherche d’info)) Reconnaissance de l'écriture (ex: recon. cheques, codes postaux) Langage naturel (ex: interfaces, text mining, Web Mining) Planification (ex: Partage ressource satellites) Aide à la décision (ex: SE temps réels et autonome: contrôle de trajectoire du satellite Voyager) Aide à la programmation (ex: agents d’interface) d interface) Apprentissage / Adaptatif (ex: construction de systèmes experts, classification automatique de galaxie, contrôleurs de robots ...) Jeux (e.g. Echecs, Checkers, Othello, BackGammon, GO). Médecine Aide à la décision (SE), prédiction de patients à risques, analyse automatique d ’images médicales 13 La représentation des connaissances Problème central en IA Mise en évidence d'un problème en amont : l'acquisition q des connaissances la modélisation des connaissances Plusieurs formes de représentation Représentation objet Règles de production ... 14 Rôle de la logique g Un formalisme de représentation des connaissances Des mécanismes d ’inférence: la déduction ou l’induction ; centraux pour : PROLOG Systèmes à base de connaissances 15 L Représentation La R é t ti d des Connaissances C i 16 The goals g Identifying what knowledge is important to an organisation Deciding what knowledge needs to be captured to provide an appropriate solution to a real-world problem Capturing and integrating knowledge in ways that provide ease of access, navigation, understanding, maintenance and re-use 17 Different subject j areas Knowledge Engineering Knowledge Based Engineering Knowledge Management Ontological Engineering 18 Other Technologies g Data Mining Case Based Reasoning Intelligent Agents Natural Language Processing Document Management Systems Workflow System Management 19 Benefits for an organisation g 20 Knowledge g 21 How to represent and store knowledge? g Knowledge base: a kind of database that holds information f representing the expertise of a particular domain Four components (coming from Psychology): Concepts p Attributes Values Relations 22 How to represent and store knowledge? g The structure of a KB depends on the application Two basic representation formats: Based on relations : Network of concepts with links between them, each link representing a relation (concept maps) Based on attributes and values: Best visualized as a frame f 23 KW representation via relations 24 KW representation via frames 25 Les Systèmes à Base de C Connaissances i 26 Les systèmes à base de connaissances Un SBC est un logiciel qui reproduit le comportement d'un expert humain accomplissant une tâche intellectuelle dans un domaine d précis. é Le fondement du concept de système expert réside é d d dans la l nature explicite l de d la l connaissance. En effet, celle-ci n'est absolument pas noyée dans un algorithme, algorithme elle est formalisée par un ensemble de règles qui vont être enchaînées pour simuler le p humain. raisonnement d'un expert 27 Applications des SBC Les SBC ne sont utiles et envisageables que pour des domaines possédant é des experts humains. Ces experts sont des individus qui connaissent bien le domaine à modéliser et qui sont aussi capables de transmettre leur savoir. Ce dernier point est primordial. 28 Applications des SBC Les SBC sont utilisés lorsque les méthodes algorithmiques classiques ne peuvent pas être appliquées avec succès. Il sont généralement conçus pour résoudre des problèmes de classification ou de décision (diagnostic médical, prescription thérapeutique, régulation d'échanges boursiers, etc.). 29 Fonctionnement : Principe Un SBC peut se décomposer en deux composantes principales : La base de connaissances, elle-même composée d' d'une base b de d règles è l qui modélise dél la l connaissance du domaine considéré et d'une base de faits qui contient les informations concernant le cas à traiter. Le moteur d'inférences d inférences dont le rôle est de raisonner à partir des données contenues dans la base de connaissances. 30 Fonctionnement : Principe Expert Cogniticien Base de règles Moteur d’inférences Utilisateur Base de B d faits Base de connaissances 31 Fonctionnement : Principe L'élément clé d'un SBC réside dans l'i dé l'indépendance d quii existe i t entre t la l base b de d connaissances et le moteur d'inférences. Ell permett une représentation Elle é t ti d des connaissances sous forme purement déclarative et explicite explicite, c'est c'est-à-dire à dire sans lien avec la manière dont ces connaissances sont utilisées. L'a antage de cette d'a L'avantage d'architecture chitect e est q qu'il 'il est possible de faire évoluer les connaissances du système sans avoir à agir sur le mécanisme de raisonnement. 32 Base de connaissances La base de connaissances d'un SBC se décompose é en deux parties. La première è partie contient des faits spécifiques du d domaine, les l connaissances factuelles. f ll On parle alors de base de faits. La seconde partie, la base de règles, contient les règles qui vont permettre au système de raisonner à partir des faits. Ces connaissances déductives sont représentées par des règles appelées règles de production. 33 Base de règles g La base de règles rassemble la connaissance et le savoir-faire f de l'expert. Elle n'évolue é donc pas au cours d'une session de travail. Grâce à la représentation des règles proche du langage naturel, la connaissance du système sera facilement accessible à l'utilisateur qui pourra ainsi aisément la modifier ou l'agrandir. 34 Base de faits La base de faits travaille en étroite collaboration avec la mémoire é de travail du système expert. Cette mémoire de travail est variable au cours de l'exécution et vidée lorsque l'exécution se termine. 35 Base de faits Au début de la session, elle contient ce que l'on sait du cas examiné é avant toute intervention du moteur d'inférences (les faits d la de l base b de d connaissances). ) Puis elle est complétée par les faits déduits par le moteur ou demandés à l'utilisateur. 36 Inférence Pour exploiter cette connaissance, un moteur d'inférences fé est nécessaire é pour relier la description d'un problème aux capacités d' d'analyse l d'une d' situation donnée. d é De façon générale, le moteur d'inférences sera capable de répondre à des questions, de raisonner et de tirer les conséquences impliquées par la connaissance incluse dans le système. 37 Inférence Le moteur d'inférence va enchaîner les règles c'est à dire qu'il va effectuer ff un chaînage. î Il existe plusieurs types de chaînages, c'est-àd plusieurs dire l types de d raisonnements : le chaînage avant, qui permet de déduire les faits dé découlant l de d données d é initiales, l le chaînage arrière, qui permet d'atteindre des b t buts, le chaînage mixte, qui est un mélange des deux types de chaînages précédents. précédents 38 Chaînage g avant Le mécanisme du chaînage avant est simple : pour déduire é un ffait particulier, on déclenche é les règles dont les prémisses sont connues jusqu'à 'à ce que lle fait f à déduire déd soit également connu ou qu'aucune règle ne puisse être ê dé déclenchée. l hé Le chaînage avant est un mécanisme de déduction 39 La logique g déductive Raisonne du général au particulier. Pour ne pas rendre faux un raisonnement déductif, il faut faire attention à ne pas le construire sur une fausse prémisse. Exemple (du livre “Platon Platon et son Ornithorynque entrent dans un bar”, de T. Cathcart et D. Klein, Ed. Seuil) 40 La logique g déductive Un vieux cow-boy entre dans un bar et commande un verre. Il est en train de boire tranquillement son whisky quand une jeune femme s’assied à côté de lui et lui demande: « vous êtes un vrai cow-boy? » Il répond: épond « Ma foi, foi j’ai passé toute to te ma vie ie dans un n ranch, anch à m’occuper des chevaux, à réparer ces clôtures et à marquer du bétail, alors je crois bien que j’en suis un. » Elle dit: « Moi, je suis lesbienne. Je passe toutes mes journées hantée par des images de femmes. Dès que je me lève le matin, je rêve de femmes. Que ce soit sous la douche ou devant la télé, il me semble que tout m ’évoque des femmes » 41 La logique g déductive Peu après, un couple s’assied à côté du vieux cowboy et lui demande: « Êtes vous un vrai cow cow-boy boy ? » Il répond: « je l’ai toujours cru, mais je viens de découvrir que je suis lesbienne » Où est-ce est ce qu’il qu il y a un problème dans ce raisonnement ? 42 Chaînage g arrière Le mécanisme de chaînage arrière consiste à partir ti d du fait f it que l'l'on souhaite h it établir, ét bli à rechercher toutes les règles qui concluent sur ce fait à établir la liste des faits qu'il fait, qu il suffit de prouver pour qu'elles puissent se déclencher puis à appliquer récursivement le même mécanisme aux faits contenus dans ces listes. Le chaînage arrière est clairement un mécanisme d'induction : on vérifie les hypothèses en remontant depuis l'objectif. l objectif. On cherche ainsi à vérifier si un fait est possible. 43 La logique g inductive Raisonnement qui va du particulier au général, é é c’est la méthode é utilisée é pour confirmer les théories scientifiques. Example: Une histoire de Sherlock Holmes (du livre “Platon et son Ornithorynque entrent dans un bar”, de T. Cathcart et D. Klein, Ed. Seuil) 44 La logique g inductive Holmes et Watson font du camping. Soudain, au cœur de la nuit, nuit Holmes se réveille et donne un coup de coude au Dr Watson; « Watson, regardez le ciel et dites-moi dites moi ce que vous voyez » « je vois un million d’étoiles », dit Watson « Et à quelle conclusion arrivez arrivez-vous vous, Watson? » Watson réfléchit quelques instants … 45 La logique g inductive « Eh bien, en termes d’astronomie, cela me dit qu’il ya des millions de galaxies et potentiellement des billions de planètes. En termes d’astrologie, j’observe que Saturne est dans le Lion. En termes d’horlogerie, d horlogerie, je déduis qu’il est approximativement trois heures et quart. En termes de météorologie, j’ai comme l’idée qu’il fera beau demain. En termes de théologie, je vois que Dieu est tout-puissant et que nous sommes petits et insignifiants insignifiants. Hum, Hum mais que vous en semble, à vous, Holmes? » 46 La logique g inductive « Watson, vous n’êtes qu’un idiot! On s’est fait voler notre tente! » Comment Holmes est arrivée à cette conclusion? 47 Chaînage g mixte Le chaînage mixte utilise les deux chaînages présentés é é avant. On peut alors aussi bien raisonner à partir des faits que l'on connaît comme prédicats éd ou comme objectifs. b f 48 Chaînage g mixte Ce sont les caractéristiques du problème qui vont conditionner le chaînage î qu'il est judicieux d'utiliser. Ainsi, lorsque les faits sont peu nombreux b ou que le l but b est inconnu, ill est préférable d'employer un chaînage " "avant". " Par contre, d dans lle cas où ù les l buts b sont peu nombreux ou précis, le chaînage " è " est préconisé. "arrière" é é 49 Avantages g et Inconvénients Les SBC sont une des applications de l'i t lli l'intelligence artificielle tifi i ll les l plus l utilisées tili é dans d le l monde de l'entreprise. De nombreux systèmes experts ont été implantés avec succès pour résoudre des problèmes concrets comme ll'attribution attribution d d'un un crédit. crédit Malheureusement, les systèmes experts souffrent d'une d une faiblesse intrinsèque : toutes les expertises ne sont pas facilement formalisables sous forme de règles. 50 Exemple Un problème de diagnostic d’une voiture Défauts sur : La batterie Les ampoules (les phares) Le moteur des essuie-glaces L’ ll L’allumage Les symptômes : Les phares marchent ou pas Le moteur démarre ou pas L essuie-glaces Les i l marchent h t ou pas 51 Exemple Solution avec un système à base de règles Pour les phares qui ne marchent pas : R1 : SI les phares ne marchent pas ALORS problème blè d’ d’ampoules l et/ou / d de b batterie i R2 : SI problème d’ampoules et/ou de batterie ET le moteur ne démarre pas ALORS problème de batterie R3 : SI problème d’ampoules et/ou de batterie ET le moteur démarre ALORS problème d’ampoules 52