248 Logique Chapitre 10 Introduction (cid:18)a l'intelligence arti(cid:12)cielle La logique classique et les logiques non classiques permettent de repr(cid:19)esenter la connaissance. Nous introduisons (cid:18)a pr(cid:19)esentune m(cid:19)ethode logique permettant de manipuler la connaissance, c'est-(cid:18)a-dire de mettre en (cid:27)uvre l'intelligence arti(cid:12)cielle, notion qu'il convient de clari(cid:12)er d'abord. Une premi(cid:18)ere di(cid:14)cult(cid:19)e estque, contrairement(cid:18)alaplupart desdomaines de sciencepureou appliqu(cid:19)ee, l'intelligence arti(cid:12)cielle n'a pas re(cid:24)cu de d(cid:19)e(cid:12)nition largement accept(cid:19)ee. M^eme dans un cas concret, un probl(cid:18)eme de programmation par exemple, il n'est pas commode de d(cid:19)ecider si on se trouve ou non dans le cadre de l'intelligence arti(cid:12)cielle. Unmoyenpragmatiquedecontournercet(cid:19)ecueilconsiste(cid:18)a(cid:19)eviterde d(cid:19)e(cid:12)nirleconcept,ensecontentantd'enillustrerdiverscasparticuliers. Outrela frustrationintellectuellequecetteomissionpeutengendrer,cettesolutionn'est pasapplicableici. Lesexemplesclassiquesreconnusde l'intelligencearti(cid:12)cielle sontg(cid:19)en(cid:19)eralementcomplexes,etleurexpositionsortiraitducadred'unouvrage dont l'objet n'est pas l'intelligence arti(cid:12)cielle mais pluto^t les (cid:19)el(cid:19)ements de logique qui y interviennent. La seconde di(cid:14)cult(cid:19)e que nous rencontrerons sera donc d'illustrer notre propos au moyen d'exemples tr(cid:18)es simples, voire trop simples, mais permettant quand m^eme de mettre en (cid:19)evidence les sp(cid:19)eci(cid:12)cit(cid:19)es de l'intelligence arti(cid:12)cielle par rapport aux autres domaines d'application de la logique, notamment la programmation classique. Traditionnellement, l'intelligence arti(cid:12)cielle est subdivis(cid:19)ee en de nombreux sous-domaines, dont la plupart sont tr(cid:18)es sp(cid:19)ecialis(cid:19)es. Nous n'en (cid:19)evoquerons que quelques uns, qui ne requi(cid:18)erent pas au d(cid:19)epart de connaissance extra-logique particuli(cid:18)ere. 250 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 251 10.1. Une d(cid:19)e(cid:12)nition naturelle de l'intelligence arti(cid:12)cielle Un comportement intelligent est une action contro^l(cid:19)ee complexe. L'intelligence arti(cid:12)cielle vise (cid:18)a simuler sur des syst(cid:18)emes arti(cid:12)ciels1 Onpeutnaturellementopposerdenombreusesobjections(cid:18)acettea(cid:14)rmation. des comportements \intelligents", typiques des ^etres humains. Laplusimportanteestpeut-^etresoncaract(cid:18)erer(cid:19)educteur: iln'estpasr(cid:19)ealistede vouloirtraduireen une courtephraseun concept que l'on devine extr^emement A priori, cette d(cid:19)e(cid:12)nition ne semble pas devoir donner lieu (cid:18)a controverse. sophistiqu(cid:19)e. Dans notre contexte, cela n'est pas g^enant car l'intelligence Divers exemples viennent spontan(cid:19)ement (cid:18)a l'esprit; citons notamment le jeu arti(cid:12)cielle, telle que nous pouvons l'appr(cid:19)ehender au travers de ses r(cid:19)ealisations d'(cid:19)echec,l'assistanceaudiagnosticm(cid:19)edical,latraductiond'unelanguedansune les plus marquantes, est fortement r(cid:19)eductrice; nous reviendrons plus loin autre,lavisiondesappareilsrobotis(cid:19)es,etc. N(cid:19)eanmoins,cetted(cid:19)e(cid:12)nitionsuscite sur ce point. Une objection plus pertinente ici est que la complexit(cid:19)e d'un plus de questions qu'elle n'apporte de r(cid:19)eponses; nous envisageons certaines de comportementestdi(cid:14)cile(cid:18)aappr(cid:19)ecieretsembleimpossible(cid:18)amesurer. Enoutre, ces questions dans la suite. Signalons d(cid:19)eja(cid:18) que la notion de comportement il faut (cid:19)eviter de confondre la complexit(cid:19)e d'un comportement et la complexit(cid:19)e intelligentestambigu(cid:127)e;dansunemoindremesure,lanotiondesimulationpeut du r(cid:19)esultat auquel ce comportement conduit. Par exemple, une photographie aussi^etreinterpr(cid:19)et(cid:19)eedediversesmani(cid:18)eres. Onpeutaussis'interrogersurler^ole d'un paysage peut ^etre aussi complexe qu'un tableau repr(cid:19)esentant ce paysage privil(cid:19)egi(cid:19)e accord(cid:19)e (cid:18)a l'ordinateur. L'intelligence arti(cid:12)cielle est-elle une branche mais,en g(cid:19)en(cid:19)eral,l'acte de photographierestmoins complexequelar(cid:19)ealisation del'informatique? En(cid:12)n,lad(cid:19)e(cid:12)nitionpropos(cid:19)eeestpeupr(cid:19)eciseetnonformelle, d'un tableau. ce qui diminue son utilit(cid:19)e concr(cid:18)ete. Cettederni(cid:18)ereassertionm(cid:19)eritequelquesjusti(cid:12)cations,quipermettrontaussi d'(cid:19)eclaircir la notion de complexit(cid:19)e. Dans la plupart des cas, le photographe 10.1.1. Qu'est-ce qu'un comportement intelligent ? pourra en peu de phrases d(cid:19)ecrire le mode op(cid:19)eratoire permettant (cid:18)a une autre personne n'ayant pas vu la photo originale de prendre une autre photo tr(cid:18)es Nousn'entreronspasicidansund(cid:19)ebatdepsychologuesetnousconsid(cid:19)ererons ressemblante (cid:18)a celle-ci. Il su(cid:14)t de conna^(cid:16)tre le lieu, l'heure, les conditions que les activit(cid:19)es et comportements typiques de l'^etre humain sont intelligents. m(cid:19)et(cid:19)eorologiques,l'angledeprisedevue,letypedepelliculeetd'appareilutilis(cid:19)e, Parexemple,lefaitdesed(cid:19)eplacer,celuideparler,celuideregarder,constituent letyped'objectif, l'ouvertureetlavitesse. Parcontre,aussilonguesquesoient des comportements potentiellement intelligents. L'intelligence ne para^(cid:16)t pas lesindicationsdonn(cid:19)eesparlepeintre,lecopistenepourrareproduire(cid:12)d(cid:18)element r(cid:19)esider dans l'aptitude (cid:18)a se mouvoir, (cid:18)a (cid:19)emettre des sons et (cid:18)a percevoir formes un tableauqu'il n'apasvu. La longueurdesinstructionsestune mesured'une et couleurs, mais pluto^t (cid:18)a contr^oler et (cid:18)a structurer ces aptitudes. Marcher certaine sorte de complexit(cid:19)e, celle qui nous int(cid:19)eressera ici. Nous imaginons |intelligemment| implique notamment la possibilit(cid:19)ede trouverson chemin, facilement que la conception et la r(cid:19)ealisation d'un robot peintre de tableau parler sous-entend la capacit(cid:19)e de prendre part (cid:18)a une conversation et la vision 2 serait plus ardue que celle d'un robot photographe. Chaque comportement, suppose l'aptitude (cid:18)a interpr(cid:19)eter les formes per(cid:24)cues en images signi(cid:12)antes, en m^eme le plus simple, comporte une complexit(cid:19)e intrins(cid:18)eque. Cela s'oppose symboles, en lettres, mots et phrases dans le cas de la lecture, etc. Tous quelque peu (cid:18)a une intuition selon laquelle peu de comportements seraient ces comportements impliquent une action, une intervention physique, mais r(cid:19)eellement \intelligents". Peut-^etre y a-t-il l(cid:18)a une mauvaise appr(cid:19)ehension c'est surtout le contr^ole de cette action qui traduit l'intelligence. Une voiture du concept d'intelligence pluto^t qu'un d(cid:19)efaut dans la notion de complexit(cid:19)e. permet le d(cid:19)eplacement mais l'intelligence est dans le chef de son conducteur, L'intelligence est un concept tr(cid:18)es anthropomorphe et nous avons tendance (cid:18)a qui contr^ole ce d(cid:19)eplacement. Dans le m^eme ordre d'id(cid:19)ee, m^eme si les mains, quali(cid:12)er d'intelligent un comportement non seulement complexe, mais aussi les pieds et les yeux jouent un r^ole important dans la conduite automobile, |et surtout| mal compris. Qui pourrait expliquer pourquoi les tableaux la partie intelligente de cette activit(cid:19)e est le fait du cerveau, qui contr^ole les de Claude Monet sont \bons" ? On pourrait (cid:19)etudier plus avant, en termes membres et interpr(cid:18)ete les sensations visuelles transmises par la r(cid:19)etine. plus techniques,cettedualit(cid:19)eintelligence/complexit(cid:19)emaislesindicationsd(cid:19)eja(cid:18) Lacapacit(cid:19)ede contr^olepeut existersansqu'il y aitintelligence. Un transis- donn(cid:19)ees su(cid:14)sent (cid:18)a montrer l'existence d'un lien (cid:19)etroit entre les deux notions. tor contr^ole un courant (cid:19)electrique, un thermostat contr^ole une temp(cid:19)erature Ce lien nous sera utile car il est a priori moins simple d'estimer un niveau et une (cid:19)ecluse contr^ole le (cid:13)ux d'une rivi(cid:18)ere, mais l'absence de complexit(cid:19)e, d'intelligencequed'estimer,voirem^emedequanti(cid:12)erunniveaudecomplexit(cid:19)e. le fait qu'un seul param(cid:18)etre soit contr^olable, emp^eche ces objets d'^etre con- sid(cid:19)er(cid:19)es comme des entit(cid:19)es intelligentes. La complexit(cid:19)e semble ins(cid:19)eparable de l'intelligence, ce qui sugg(cid:18)erela \d(cid:19)e(cid:12)nition" suivante: 2Notre propos n'est pas de pr(cid:19)etendre (cid:18)a une sup(cid:19)eriorit(cid:19)e de l'art du peintre sur celui du photographe. Cependant,lacr(cid:19)eativit(cid:19)e decedernierconsiste surtout (cid:18)achoisirsonsujetet(cid:18)a d(cid:19)eterminercommentilvalephotographier;l'actem^emedeprendrelaphotorequiertsurtout 1principalementdesordinateurs,oudesentit(cid:19)es contr^ol(cid:19)eesparordinateur. unebonne comp(cid:19)etencetechnique. 252 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 253 A cet (cid:19)egard, un autre concept int(cid:19)eressant est celui d'apprentissage. On un comportement intelligent quand la qualit(cid:19)e de ce comportement peut ^etre consid(cid:18)eresouvent qu'un comportement devant faire l'objet d'un apprentissage (cid:19)evalu(cid:19)ee avec une certaine pr(cid:19)ecision. Cela signi(cid:12)e que la plupart du temps estintelligent; lalongueuretlesdi(cid:14)cult(cid:19)esdel'apprentissagepeuventdansune on tentera de simuler des comportements tr(cid:18)es particuliers, dans des contextes certaine mesure se quanti(cid:12)er, ce qui donne une indication utile sur le degr(cid:19)e restreints. Le c(cid:19)el(cid:18)ebre programme \Deep Blue", qui a remport(cid:19)e un match d'intelligence requis par le comportement appris. d'(cid:19)echecscontrelechampionG. Kasparov,ne ressemble(cid:18)ace dernierquesurun seulpoint,lacomp(cid:19)etenceaujeud'(cid:19)echecs. M^emeseloncepointdevuerestrictif, la ressemblance est super(cid:12)cielle. Les m(cid:19)ecanismes de recherche op(cid:19)erationnelle 10.1.2. Simuler un comportement intelligent misen (cid:27)uvreparDeep Bluesont(cid:19)eloign(cid:19)esdesmodesde raisonnementhumain. Lepraticiendel'intelligencearti(cid:12)ciellenevisepas(cid:18)acr(cid:19)eeruncomportement En r(cid:19)esum(cid:19)e, Deep Blue n'est pas une entit(cid:19)e intelligente; c'est une entit(cid:19)e qui intelligent, mais seulement (cid:18)a le simuler. Un programme de jeu d'(cid:19)echecs, par simule remarquablement bien, mais d'un point de vue ext(cid:19)erieur seulement, la exemple, doit produire des coups utiles, susceptibles de conduire (cid:18)a la victoire, d(cid:19)emarche du jeu d'(cid:19)echecs. A ce titre, c'est incontestablement un succ(cid:18)es de mais il n'est pas requis qu'il \r(cid:19)e(cid:13)(cid:19)echisse" ou qu'il \raisonne". Si une (cid:19)etape de l'intelligence arti(cid:12)cielle. la production du coup (cid:18)a jouer peut se ramener (cid:18)a une recherche syst(cid:19)ematique et exhaustive dans une table de coups possibles, ce n'en est que mieux; 10.1.3. Intelligence arti(cid:12)cielle et informatique l'informaticien pr(cid:19)ef(cid:18)ere une solution simple (cid:18)a une solution compliqu(cid:19)ee ::: (cid:18)a condition naturellement que la solution simple soit aussi e(cid:14)cace. Un joueur d'(cid:19)echecarti(cid:12)ciel est cens(cid:19)ejouer convenablementaux(cid:19)echecs mais Il convient de s'interroger bri(cid:18)evement ici sur la notion de simulation. Un on n'attend rien d'autre de lui. Il n'est pas n(cid:19)ecessaire qu'il sache parler ou point crucial est qu'une entit(cid:19)e simulante doit ressembler (cid:18)a son mod(cid:18)ele, mais marcher, ni m^eme qu'il puisse lui-m^eme mouvoir les pi(cid:18)eces et identi(cid:12)er les le degr(cid:19)e de similitude requis est extr^emement variable. Bien plus, pousser la coupsjou(cid:19)esparl'adversaire. Enfait, lejoueur arti(cid:12)cieldoit seulementpouvoir ressemblance trop loin est contre-productif. Un exemple c(cid:19)el(cid:18)ebre est celui des communiquer, sous n'importe quelle forme, les coups (cid:18)a jouer; on doit aussi d(cid:19)ebuts de l'aviation. La machine volante de Louis Bl(cid:19)eriot (cid:19)etait nettement pouvoir lui communiquer les coups jou(cid:19)es par l'adversaire. On reconna^(cid:16)t ici le sup(cid:19)erieure (cid:18)a celle de Cl(cid:19)ement Ader, parce que ce dernier avait cru devoir caract(cid:18)ere restrictif d'une simulation de comportement intelligent. Admettre 3 imiter trop (cid:12)d(cid:18)element le vol biologique. L'(cid:19)evolution ult(cid:19)erieure de l'aviation cette restriction permet de traiter la plupart des probl(cid:18)emes d'intelligence a con(cid:12)rm(cid:19)e qu'imiter les techniques de vol des insectes, oiseaux et mammif(cid:18)eres arti(cid:12)cielleparl'informatique. L'entit(cid:19)esimulantl'intelligenceestsimplementun volants n'(cid:19)etait pas indiqu(cid:19)e. Observons d'ailleurs que limiter la ressemblance ordinateurconvenablementprogramm(cid:19)e;ellenefaitquetraiterdel'information. entre un ph(cid:19)enom(cid:18)ene r(cid:19)eel et le mod(cid:18)ele physico-math(cid:19)ematique permettant de Unautreexempleinstructifestceluidusimulateurdevol. Lacomposantees- l'(cid:19)etudier est une technique ancienne. Le physicien peut (cid:19)etudier avec pro(cid:12)t sentielledecettemachinesophistiqu(cid:19)eeestl'ordinateur,m^emesiles(cid:19)equipements les trajectoires des astres en assimilant ceux-ci (cid:18)a des points mat(cid:19)eriels sans p(cid:19)eriph(cid:19)eriques tels les capteurs et les actuateurs sont indispensables pour per- dimension, dont le seul param(cid:18)etre est la masse. Cela su(cid:14)t notamment (cid:18)a mettre un niveau appropri(cid:19)e de simulation. Cette simulation reste n(cid:19)eanmoins d(cid:19)eduire les lois de Kepler des principes g(cid:19)en(cid:19)eraux g(cid:19)en(cid:19)eraux de la m(cid:19)ecanique. tr(cid:18)esin(cid:12)d(cid:18)ele,puisquelesimulateurestd(cid:19)epourvudelacaract(cid:19)eristiqueprincipale La ressemblanceentre la Terre et le Soleil d'une part, et deux points mat(cid:19)eriels de l'avion, (cid:18)a savoir celle de voler. Cette \lacune" n'est pas g^enante puisque le de param(cid:18)etres ad(cid:19)equats d'autre part, est pourtant tr(cid:18)es t(cid:19)enue. A l'oppos(cid:19)e, simulateur de vol ne teste pas l'habilet(cid:19)e du candidat pilote (cid:18)a se mouvoir rapi- une copie d'un tableau de Monet, m^eme tr(cid:18)es ressemblante, ne vaudra jamais dement en altitude, mais bien celle de r(cid:19)eagirrapidement et correctement (cid:18)a un qu'unepetitefractionduprixdel'original. Laressemblancen'estqu'unaspect environnement de vol et aux divers incidents qui peuvent se produire. Ces de l'ad(cid:19)equationentre une entit(cid:19)e simulante et l'entit(cid:19)e simul(cid:19)ee. exemples,et d'autresquenousverronsplusloin,nousincitent(cid:18)aconsid(cid:19)ererque Garder ceci (cid:18)a l'esprit permet d'(cid:19)eviter le d(cid:19)eveloppement d'une vue (cid:19)etriqu(cid:19)ee l'intelligence arti(cid:12)cielle est principalement une subdivision de l'informatique. de l'intelligence arti(cid:12)cielle. Un programme de jeu d'(cid:19)echecs est une r(cid:19)ealisation de l'intelligence arti(cid:12)cielle, dont les m(cid:19)erites doivent s'(cid:19)evaluer sur base des 10.1.4. Le point de vue anthropomorphe performances; le fait que ce programme simule plus ou moins (cid:12)d(cid:18)element les moyens intellectuels mis en (cid:27)uvre par un joueur humain est non pertinent: Le comportement intelligent est pour nous une action contr^ol(cid:19)ee complexe seul le r(cid:19)esultat compte. Il est d'ailleurs plus prometteur d'essayer de simuler mais nous consid(cid:19)erons seulement sa partie centrale, qui consiste en un traite- ment d'informations. Par exemple, conduire une voiture requiert une bonne 3L'a(cid:19)eroplanedeCl(cid:19)ementAderavaitdesailespro(cid:12)l(cid:19)eescommecellesd'unechauve-souris. perceptiondel'environnement,essentiellementvisuelle. Lessensationsvisuelles 254 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 255 sont interpr(cid:19)et(cid:19)ees en informations diverses, dont la partie utile est \(cid:12)ltr(cid:19)ee"4 et 10.1.5. Intelligence et traitement de l'information transmise (cid:18)a la partie d(cid:19)ecisionnelle du cerveau, qui d(cid:19)eterminera les comman- des motrices transmises aux muscles, qui eux-m^emes agiront sur le volant, L'exemple de la vision, naturelle ou arti(cid:12)cielle, illustre bien les multiples l'acc(cid:19)el(cid:19)erateur, etc. Les aspects sensoriels et moteurs ne sont habituellement aspects d'un comportement intelligent, c'est-(cid:18)a-dire d'une action contr^ol(cid:19)ee pas consid(cid:19)er(cid:19)escomme faisant partie du processus intelligent au sens strict, au complexe. On peut consid(cid:19)erer la vision comme un processus en deux (cid:19)etapes. contraire de l'(cid:19)etape centrale interm(cid:19)ediaire. De m^eme, l'intelligence arti(cid:12)cielle La premi(cid:18)ere est le fait de l'oeil et conduit (cid:18)a une image r(cid:19)etinienne, c'est-(cid:18)a- ausensstrictn'(cid:19)etudiepaslescapteurs,analoguesdenossens,nilesactuateurs, dire (cid:18)a une tr(cid:18)es grande matrice de points lumineux, souvent appel(cid:19)es pixels. analogues de nos muscles, mais seulement le processus par lequel les donn(cid:19)ees Vu le nombre (cid:19)enorme de pixels et le fait que chacun d'eux est susceptible issuesdescapteurssonttransform(cid:19)eesen commandespourles actuateurs. Tant de prendre plusieurs (cid:19)etats, une image repr(cid:19)esente une tr(cid:18)es grande quantit(cid:19)e les donn(cid:19)ees que les commandes sont de l'information, ce qui nous am(cid:18)ene (cid:18)a d'information. Cependant, dans la plupart des cas, cette information sera admettre que le succ(cid:19)edan(cid:19)e arti(cid:12)ciel du cerveau ne peut ^etre que l'ordinateur \(cid:12)ltr(cid:19)ee" et r(cid:19)esum(cid:19)ee en une faible quantit(cid:19)e d'information utile, exprimable en convenablement programm(cid:19)e. On peut objecter (cid:18)a cela que, m^eme sous l'angle une courte phrase, telle \voil(cid:18)aJacques" ou \il fait beau ce matin". L'aptitude structurel, l'ordinateur et le cerveau ont peu de ressemblance mais, comme (cid:18)a isoler et (cid:18)a structurer en quelques concepts l'information pertinente noy(cid:19)ee nousl'avonsd(cid:19)eja(cid:18)mentionn(cid:19)e,vouloiram(cid:19)eliorercetteressemblancerisqued'^etre au sein d'une vaste quantit(cid:19)e d'information brute, visuelle ou autre, est une 5 contre-productif. D'ailleurs,lelienentrelecerveauetl'intelligenceestcontro- composanteessentielledel'intelligencehumaine,qu'ilseraimportantdesimuler vers(cid:19)eet on peut di(cid:14)cilement confondre le cerveauproprementdit (\brain")et dans un programme d'intelligence arti(cid:12)cielle. Cette aptitude est d'ailleurs l'esprit (\mind"), que l'on d(cid:19)e(cid:12)nit pr(cid:19)ecis(cid:19)ementcomme le si(cid:18)egede l'intelligence. syst(cid:19)ematiquement mesur(cid:19)ee par les tests d'intelligence, comme le montre le Certains sp(cid:19)ecialistes estiment que notre cerveau n'est qu'une machine pluto^t dessin de la (cid:12)gure 10.1. L'information brute comprise dans ces dessins est stupide,quidoit^etreremplied'unegrandequantit(cid:19)ed'informationavantdede- abondante; on s'en rend compte si l'on essaie de d(cid:19)ecrire m(cid:19)ethodiquement et venirintelligente;l'analogieavecl'ordinateurquiestinutiletantqu'il n'estpas exhaustivement chacun de ces dessins. Par contre, si on lui demande ce qui pourvu d'un syst(cid:18)eme d'exploitation et de programmes d'application est assez distingue les quatre cases de gauche des quatre cases de droite, l'^etre humain naturelle ici. On h(cid:19)esite (cid:18)a aller plus loin et (cid:18)a pr(cid:19)etendre que l'^etre humain ne devra \nettoyer" cette information pl(cid:19)ethorique et abstraire de ces dessins que serait pas intelligent de naissance, mais qu'il le deviendrait au fur et (cid:18)a mesure la partie gauche illustre le concept \3" tandis que la partie droite illustre le que son cerveau se \remplit". concept \4". Sans adopter un point de vue aussi radical, on peut admettre que l'intelli- gencearti(cid:12)ciellen'estpaslefaitdel'ordinateurlui-m^eme,maisdesprogrammes etdesdonn(cid:19)eesquesam(cid:19)emoirecomporte. Notonsiciquelam(cid:19)emoirefaitpartie 6 del'intelligence(arti(cid:12)cielleounon). Enintelligencearti(cid:12)cielle,ons'int(cid:19)eressera plus aux donn(cid:19)ees et aux programmes qu'aux ordinateurs eux-m^emes. Dans les chapitres suivants, on (cid:19)etudiera notamment Prolog, que l'on peut voir comme un programmeintelligentg(cid:19)en(cid:19)erique;ce programmepeut^etre sp(cid:19)ecialis(cid:19)e de mani(cid:18)ere(cid:18)alerendreapte(cid:18)ar(cid:19)esoudredesprobl(cid:18)emesparticuliers. On(cid:19)etudiera aussi des techniques de d(cid:19)emonstration automatique. O A 4Sionenvisageded(cid:19)epasserunautrev(cid:19)ehicule,onpourranoterplusoumoinsinconsciem- B ment sa marque, sa couleur, le num(cid:19)ero de la plaque, etc., mais l'information utile est son C mouvement, c'est-a(cid:18)-dire sa position et sa vitesse; on d(cid:19)eterminera aussi si l'environnement routiersepr^ete(cid:18)aund(cid:19)epassement,maisonignorerasansdouteunefouleded(cid:19)etailsinutiles. 5Lesr(cid:19)eseauxneuronauxarti(cid:12)cielsimitentmieuxlastructurec(cid:19)er(cid:19)ebralequelesordinateurs classiquesmais,pourdenombreusesta^ches, sontmoinsperformantsquecesderniers. Why have these pictures been partitioned this way ? 6Dans la vie quotidienne, on note que les gens sont plus dispos(cid:19)es (cid:18)a reconna^(cid:16)tre des d(cid:19)efaillances de m(cid:19)emoire plut^ot qu'un d(cid:19)efaut d'intelligence. En fait, la m(cid:19)emoire ne peut ^etre s(cid:19)epar(cid:19)ee de l'intelligence; les gens intelligents se plaignant de leur m(cid:19)emoired(cid:19)eplorent le plus souvent d'oublier des faits mais ils gardent en m(cid:19)emoire des structures plus (cid:19)elabor(cid:19)ees commedesr(cid:18)eglesdeconduite,desalgorithmes,destechniques, etc. Figure 10.1 Extraire l'information visuelle et conceptuelle pertinente 256 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 257 L'esprit humain d(cid:19)etermine facilement et rapidement que les huit dessins repr(cid:19)esententchacun un nombre mais(cid:19)ecrireun programmecapable de d(cid:19)etecter cela et, plus g(cid:19)en(cid:19)eralement, de passer avec succ(cid:18)es un test d'intelligence de ce 7 type est d(cid:19)elicat. Une des nombreuses aptitudes visuelles de l'esprit humain consiste en la reconnaissance des formes, en d(cid:19)epit de leur diversit(cid:19)e. On peut cr(cid:19)eer un programme de reconnaissance de formes et le \nourrir" avec, d'une part, une s(cid:19)erie de photos d'arbres et, d'autre part, une s(cid:19)erie de photos de chats, et escompter que par la suite, ce programme soit capable de classer des photos (autres que celles qu'il conna^(cid:16)t) selon qu'elles repr(cid:19)esentent un arbre ou un chat. Un premier module du programme fera de la d(cid:19)etection de contour; il convertira chaque image (tableau de pixels) en un nombre relativement faible de segments de droite ou de courbe. Cette (cid:19)etape pr(cid:19)eliminaire n'est pas vraimentdudomainede l'intelligencearti(cid:12)cielle,quoiquel'on yreconnaisseun aspect \intelligent" qui est la compression, l'abstraction de l'information. Un deuxi(cid:18)eme module fera du \nettoyage",c'est-(cid:18)a-dire qu'il d(cid:19)ecidera, pour chaque segment, de le maintenir, de le supprimer ou de le modi(cid:12)er, par exemple pour le connecter (cid:18)a ses voisins. Un troisi(cid:18)eme module comparera le contour nettoy(cid:19)e (cid:18)a divers contours repr(cid:19)esentant des \standards" d'arbre ou de chat et d(cid:19)ecidera Figure 10.2 Repr(cid:19)esentation sommaire de l'Arbre et du Chat de classer l'image analys(cid:19)ee dans l'une ou l'autre cat(cid:19)egorie (ou dans aucune). Ce module utilisera diverses techniques (uni(cid:12)cation de l'image analys(cid:19)ee et d'une image de r(cid:19)ef(cid:19)erence par des transformations g(cid:19)eom(cid:19)etriques telles que les Beaucoup d'(cid:19)enigmes peuvent se r(cid:19)esoudre par un d(cid:19)ecodage de ce type. Par exemple, analysons le texte qui suit, se rapportant (cid:18)a un concours auquel trois translations, rotations et homoth(cid:19)eties, recherche de caract(cid:19)eristiquesphysiques discriminantes,etc.). L'arbresch(cid:19)ematis(cid:19)e(cid:18)ala(cid:12)gure10.2montreunefoisdeplus (cid:19)etudiants de di(cid:11)(cid:19)erentes nationalit(cid:19)es ont pris part; chacun d'eux a son sport qu'unmod(cid:18)elen'apasbesoind'^etre(cid:12)d(cid:18)elepour^etreutile. M^emesilasilhouette favori. d'arbreesttr(cid:18)essommaire,unefractiondesecondesu(cid:14)t(cid:18)aladistinguerdestrois Michel joue au football et est mieux class(cid:19)e que l'Am(cid:19)ericain. silhouettes de chat repr(cid:19)esent(cid:19)ees(cid:18)a droite de la (cid:12)gure. L'une des silhouettes est Simon est Belge et a surclass(cid:19)e le joueur de tennis. tr(cid:18)es di(cid:11)(cid:19)erente des deux autres, parce que le chat est assis; cette di(cid:11)(cid:19)erence ne Le nageur s'est class(cid:19)e premier. troublepasl'observateurhumain, maison con(cid:24)coitais(cid:19)ementqu'uneintelligence Les questions sont: visuelle non n(cid:19)egligeable soit n(cid:19)ecessaire pour discerner les similitudes entre ces Qui est le Fran(cid:24)cais? silhouettes et en tirer les conclusions ad(cid:19)equates. Quel sport pratique Richard? Uneautreaptitudeli(cid:19)ee(cid:18)al'intelligenceestlasynth(cid:18)esed'uneinformationutile Il existe une technique simple pour r(cid:19)esoudre une (cid:19)enigme de ce type. Elle (cid:18)a partir de plusieurs informations fragmentaires et apparemment disparates. consiste (cid:18)a (cid:19)enum(cid:19)erer toutes les possibilit(cid:19)es puis (cid:18)a les \(cid:12)ltrer" en fonction des Consid(cid:19)eronspar exemple la phrase indicesdonn(cid:19)es. Cettem(cid:19)ethode,sisimplequ'ellesoitdanssonprincipe,estune Vincent est le (cid:12)ls du mari des composantes majeures de notre intelligence et probablement la technique de la (cid:12)lle unique de ma belle-m(cid:18)ere. la plus importante en intelligence arti(cid:12)cielle. On voit facilement ici qu'il y a a On peut \d(cid:19)ecoder" cette phrase en priori (3!)3 =216 possibilit(cid:19)es d'apparier les quatre triplets Vincent est mon (cid:12)ls. fMichel, Simon, Richardg, fFootball, Tennis, Natationg, 7Ecrire un programme capable de compter des objets sur une image est relativement fAmericain, Belge, Fran(cid:24)caisg, simple;ladi(cid:14)cult(cid:19)eneconsistepas(cid:18)amettreen(cid:27)uvreunconceptparticulier,connu(cid:18)al'avance, fPremier, Deuxi(cid:18)eme, Troisi(cid:18)emeg. mais(cid:18)a manierdi(cid:11)(cid:19)erents concepts et m^eme(cid:18)a les cr(cid:19)eer. L'imagede la (cid:12)gure 10.1 fait partie Une seule de ces possibilit(cid:19)es v(cid:19)eri(cid:12)e les trois indices : d'une s(cid:19)erie dont chaque (cid:19)el(cid:19)ement concerne des concepts visuels distincts (objets ouverts ou ferm(cid:19)es,group(cid:19)esoudiss(cid:19)emin(cid:19)es,detaillesvoisinesoudetaillestr(cid:18)esdi(cid:11)(cid:19)erentes,etc.). Premier : le Belge Simon, nageur; 258 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 259 Deuxi(cid:18)eme : Michel, qui est Fran(cid:24)cais et joue au football; une ex(cid:19)ecution, c'est-(cid:18)a-dire une suite d'(cid:19)etats. L'ex(cid:19)ecution correspond donc Troisi(cid:18)eme : Richard, l'Americain, qui est joueur de tennis. (cid:18)a une trajectoire dans l'espace des (cid:19)etats et le programme contr^ole cette Detelles(cid:19)enigmessont(cid:19)el(cid:19)ementairesparcequ'ellesseram(cid:18)enent(cid:18)alaconstruction trajectoire. Cet aspect de contr^ole ne su(cid:14)t pas (cid:18)a faire de tout ordinateur et (cid:18)a l'exploration syst(cid:19)ematique d'un espace structur(cid:19)e et (cid:12)ni de solutions ex(cid:19)ecutant un programme quelconque une machine intelligente. Pour mieux potentielles. Cela n'(cid:19)etait pas vrai pour le test visuel de QI (cid:19)evoqu(cid:19)e plus appr(cid:19)ehenderl'aspect\intelligent"(cid:19)eventuellementpr(cid:19)esentdansun programme, haut (Figure 10.1), notamment parce qu'aucune liste exhaustive de concepts nous consid(cid:19)eronsquelques exemples, en commen(cid:24)cant par un contre-exemple. susceptibles d'^etre visuellement illustr(cid:19)es n'est disponible. En fait, l'ensemble de cesconceptsn'estqu'assezvaguementd(cid:19)e(cid:12)ni. Cet aspectn'estd'ailleurspas Ctrl x y F sp(cid:19)eci(cid:12)que (cid:18)a la vision. Au contraire, dans bien des cas, la \r(cid:18)egle du jeu" n'est L0 3 ? ? pas fournie, et la d(cid:19)emarche intelligente requise consiste (cid:18)a d(cid:19)ecouvrircette r(cid:18)egle pluto^t qu'(cid:18)a la mettre en (cid:27)uvre. Que signi(cid:12)e par exemple la s(cid:19)equence: L0 : y :=1; L1 3 1 ? Which Atom Issue Art Tiny Finance Cigarette L1 : while x>0 do L2 3 1 ? All Inside Tear Llama Ignorant Enable Ceylon L2 : y :=y(cid:3)x; L3 3 3 ? 8 compos(cid:19)ee de mots sans suite logique apparente ? L3 : x:=x(cid:0)1; L1 2 3 ? L4 : F :=y: ::: ::: 10.2. Une d(cid:19)e(cid:12)nition orient(cid:19)ee de l'intelligence arti(cid:12)cielle L5 : L1 0 6 ? Le but de l'intelligence arti(cid:12)cielle est de simuler, au sens large,le travail de L4 0 6 ? contr^ole e(cid:11)ectu(cid:19)e par le cerveau. \Au sens large" signi(cid:12)e que seul le r(cid:19)esultat L5 0 6 6 de la simulation compte; les processus mis en (cid:27)uvre en intelligence arti(cid:12)cielle ne sont pas cens(cid:19)es ressembler aux processus physiologiques dont le cerveau Figure 10.3 Un programme imp(cid:19)eratif et un exemple d'ex(cid:19)ecution 9 humain est le si(cid:18)ege. L'intelligence arti(cid:12)cielle est donc une branche de l'(cid:19)etude des programmes. Etudier un programme signi(cid:12)e s'int(cid:19)eresser (cid:18)a la fonction de Le programme classique de calcul de la factorielle d'un nombre naturel est contr^olequeposs(cid:18)edel'ordinateurex(cid:19)ecutantceprogramme,maisn'impliquepas repr(cid:19)esent(cid:19)e (cid:18)a la (cid:12)gure 10.3, avec l'une de ses ex(cid:19)ecutions. D'un point de vue quel'onsepr(cid:19)eoccupedesprocessusphysiques,(cid:19)electroniques,misen(cid:27)uvrelors op(cid:19)erationnel, ce programme induit une s(cid:19)equence d'op(cid:19)erations arithm(cid:19)etiques de l'ex(cid:19)ecution. Nous consid(cid:19)ererons donc les ordinateurs comme des machines (cid:19)el(cid:19)ementaires qui conduit au r(cid:19)esultat, rang(cid:19)e dans la variable F. Pour justi(cid:12)er abstraitescapablesd'interpr(cid:19)eterlesprogrammesquileursontsoumis,sansnous que le programme fonctionne bien, c'est-(cid:18)a-dire qu'il fournit le r(cid:19)esultat exact, soucier de leur fonctionnement interne. on utilise la m(cid:19)ethode des invariants (voir x II.3). Un invariant appropri(cid:19)eest: Concr(cid:18)etement, l'intelligence arti(cid:12)cielle a donc pour objet l'(cid:19)elaboration de atL0 )x=x0 programmes munis d'une fonction de contr^ole ou, plus g(cid:19)en(cid:19)eralement, d'un aspect intelligent. Nous allons pr(cid:19)eciser les notions de programme et de ^ atL1 )(0(cid:20)x(cid:20)x0 ^ y(cid:3)x!=x0!) programme intelligent. ^ atL2 )(0<x(cid:20)x0 ^ y(cid:3)x!=x0!) ^ atL3 )(0<x(cid:20)x0 ^ y(cid:3)(x(cid:0)1)!=x0!) 10.2.1. Qu'est-ce qu'un programme? ^ atL4 )(x=0 ^ y=x0!) Tout programme a pour r^ole de contr^oler le fonctionnement de l'ordinateur ^ atL5 )(x=0 ^ y=x0! ^ F =x0!); qui l'ex(cid:19)ecute. Un ordinateur est une machine (cid:18)a (cid:19)etats et le programme induit ou(cid:18) x0 d(cid:19)esigne la valeur initiale de x, c'est-(cid:18)a-dire un entier naturel quelconque. La v(cid:19)eri(cid:12)cation elle-m^eme est un processus en deux temps. On s'assure 8\WhAtIsArTiFiCiAlInTeLlIgEnCe?" d'abord que la formule ci-dessus est bien un invariant, et ensuite que cet 9On peut aussi s'int(cid:19)eresser (cid:18)a la simulation sur machine des processus de l'intelligence invariantimpliquelebonfonctionnementduprogramme. Lapremi(cid:18)ere(cid:19)etapeest naturelle, maiscesderniers ne sont que tr(cid:18)es imparfaitementconnus. Cetype de simulation (cid:19)el(cid:19)ementairemais requiert une connaissance su(cid:14)sante de la fonction factorielle donne rarement des r(cid:19)esultats techniquement int(cid:19)eressants. Une exception notable est constitu(cid:19)ee par les r(cid:19)eseaux de neurones arti(cid:12)ciels, qui ont de multiples applications. Nous etdesop(cid:19)erationsarithm(cid:19)etiquesquipermettentdelad(cid:19)e(cid:12)nir. Parexemple,pour neles(cid:19)evoqueronspasici,carleurfonctionnementn'estpasbas(cid:19)esurlalogiqueformelle. v(cid:19)eri(cid:12)erla validit(cid:19)ede la transition conduisantdu point de contr^oleL2 au point 260 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 261 de contr^ole L3, il faut disposer du th(cid:19)eor(cid:18)eme suivant: int(cid:19)eressante est pluto^t de savoir si le r^ole de l'ordinateur (et du logiciel) Pour tous entiers x0, x et y, peut ^etre accru, r(cid:19)eduisant d'autant le r^ole des humains, impliqu(cid:19)es dans les si 0<x(cid:20)x0 ^ y(cid:3)x!=x0! est vrai, deux premi(cid:18)eres phases. On convertirait ainsi un ordinateur en un syst(cid:18)eme alors 0<x(cid:20)x0 ^ (y(cid:3)x)(cid:3)(x(cid:0)1)!=x0! est vrai. (relativement) intelligent. Ce th(cid:19)eor(cid:18)eme, quoique tr(cid:18)es simple, d(cid:19)ecoule d'un certain nombre de v(cid:19)erit(cid:19)es arithm(cid:19)etiques, notamment celles-ci: 10.2.2. Qu'est-ce qu'un syst(cid:18)eme intelligent? 8x8y8z[x(cid:3)(y(cid:3)z)=(x(cid:3)y)(cid:3)z]; L'exemple tr(cid:18)es(cid:19)el(cid:19)ementaireque nousvenonsd'(cid:19)evoquersugg(cid:18)ereune r(cid:19)eponse, 8x[x>0)x!=x(cid:3)(x(cid:0)1)!]: naturellement partielle, (cid:18)a cette question. Un syst(cid:18)eme relativement intelligent Laseconde(cid:19)etapeconsiste(cid:18)amontrerquecetinvariant(oupluto^t leprogramme serait capable, par exemple, de d(cid:19)eduire la factorielle d'un nombre naturel auquel il se rapporte) induit un moyen de calcul (cid:12)able de la factorielle d'un directement de la connaissance math(cid:19)ematique concernant cette fonction, sans nombre naturel quelconque x0. Cette (cid:19)etape est ici tr(cid:18)es simple: l'invariant passer par l'interm(cid:19)ediaire d'un texte op(cid:19)erationnel, (cid:19)ecrit par un concepteur de indique explicitement que tout calcul d(cid:19)emarrant au point L0 (en un (cid:19)etat programme. Cette \d(cid:19)e(cid:12)nition" n'est pas vraiment satisfaisante puisqu'il n'y a v(cid:19)eri(cid:12)antx=x0)etatteignantlepointL5esttelquel'(cid:19)etat(cid:12)nalv(cid:19)eri(cid:12)eF =x0!. pas une fronti(cid:18)ereclaireentre la connaissancemath(cid:19)ematiqueet laconnaissance Il estenoutrefacilede d(cid:19)eterminerquececalcul requiertl'ex(cid:19)ecutionde 3x0+3 op(cid:19)erationnelle. En particulier, il n'est pas absurde de consid(cid:19)ererque le texte transitions. (10.1) (x;y):=(n;1); while x>0 do (x;y):=(x(cid:0)1;y(cid:3)x); return y; Le proc(cid:19)ed(cid:19)e complet de calcul de la factorielle d'un entier naturel peut ^etre quoiquetypiquementop(cid:19)erationnel,constitueuned(cid:19)e(cid:12)nitionmath(cid:19)ematiquement structur(cid:19)e en trois phases comme suit. acceptable de n!, m^eme si le math(cid:19)ematicien pr(cid:19)ef(cid:19)erera naturellement une (cid:15) Les math(cid:19)ematiciens fournissent une d(cid:19)e(cid:12)nition (ou plusieurs d(cid:19)e(cid:12)nitions d(cid:19)e(cid:12)nition telle que (cid:19)equivalentes) de la fonction factorielle reposant sur des fonctions et (10.2) 0!=1; pour tout n>0, n!=n(cid:3)(n(cid:0)1)! concepts math(cid:19)ematiques ant(cid:19)erieurement d(cid:19)e(cid:12)nis (comme les op(cid:19)erations (cid:19)el(cid:19)ementaires) et sur des propri(cid:19)et(cid:19)es d(cid:19)eja(cid:18) d(cid:19)emontr(cid:19)ees de ces fonctions et ou encore que concepts (associativit(cid:19)ede la multiplication, par exemple). Z +1 n (cid:0)x (cid:15) Le concepteur de programme s(cid:19)electionne une d(cid:19)e(cid:12)nition se pr^etant (cid:18)a un (10.3) n!= x e dx: 0 calcul e(cid:11)ectif et la transforme en un programme ex(cid:19)ecutable. Le r^ole de La d(cid:19)e(cid:12)nition (10.2) semble plus d(cid:19)eclarative que la d(cid:19)e(cid:12)nition (10.1), ce qui la l'invariantest de convaincre le programmeurde la qualit(cid:19)e de son travail, rend plus attrayante pour le math(cid:19)ematicien, mais la di(cid:11)(cid:19)erence entre les deux en reliant le programme (cid:18)a la connaissance math(cid:19)ematique qu'il met en n'estpastr(cid:18)esimportante: laplupartdeslangagesdeprogrammationadmettent (cid:27)uvre. la r(cid:19)ecursion, ce qui rend la seconde d(cid:19)e(cid:12)nition aussi op(cid:19)erationnelle que la (cid:15) L'ordinateur, muni du logiciel ad(cid:19)equat (un syst(cid:18)eme d'exploitation, un premi(cid:18)ere. Lad(cid:19)e(cid:12)nition(10.3)estint(cid:19)eressantenotammentparcequ'ellepermet interpr(cid:19)eteur ou un compilateur, ::: ), ex(cid:19)ecute le code; cela signi(cid:12)e d'(cid:19)etendre la fonction factorielle (cid:18)a l'ensemble des nombres complexes, entiers que l'ordinateur passe, en un certain nombre d'(cid:19)etapes, d'un (cid:19)etat initial n(cid:19)egatifsexclus. D'un pointdevueop(cid:19)erationnel,parcontre,cetted(cid:19)e(cid:12)nitionest comportant les donn(cid:19)ees (cid:18)a un(cid:19)etat (cid:12)nal comportant les r(cid:19)esultats. moins int(cid:19)eressante parce qu'elle recourt (cid:18)a des concepts comme l'exponentielle Ceproc(cid:19)ed(cid:19)erequiertclairementdel'intelligence,delapartdumath(cid:19)ematicien et l'int(cid:19)egration, moins (cid:19)el(cid:19)ementaires que les op(cid:19)erations arithm(cid:19)etiques et plus et aussi du programmeur. On peut d(cid:19)efendre l'id(cid:19)ee que le programme et di(cid:14)ciles (cid:18)a mettre en (cid:27)uvre. l'ordinateur eux-m^emes pr(cid:19)esentent une certaine forme d'intelligence, mais elle D'une mani(cid:18)ere g(cid:19)en(cid:19)erale, le math(cid:19)ematicien privil(cid:19)egie un langage sp(cid:19)eci(cid:12)que, esticitr(cid:18)eslimit(cid:19)ee. Lamachineprogramm(cid:19)eenefaitqu'ex(cid:19)ecuterdesinstructions comportant les(cid:19)egalit(cid:19)es, les(cid:19)equations, les relations, etc., alors que les langages tr(cid:18)esd(cid:19)etaill(cid:19)eesettr(cid:18)essp(cid:19)eci(cid:12)ques,dansunbutbienpr(cid:19)ecis. Ilestn(cid:19)eanmoinsclair de programmation sont bas(cid:19)es sur des notions assez di(cid:11)(cid:19)erentes, comme les que l'intelligence r(cid:19)esideessentiellement dans les deux premi(cid:18)eresphases, et tr(cid:18)es it(cid:19)erations, les s(cid:19)equences, les a(cid:11)ectations, les proc(cid:19)edures. Les deux types peu, ou pas du tout, dans la troisi(cid:18)eme. de langages admettent des recouvrements partiels; par exemple, la notion Du point de vue de l'informaticien, il n'est pas n(cid:19)ecessaire d'approfondir ce math(cid:19)ematique de fonction est proche de la notion informatique de proc(cid:19)edure. point et de d(cid:19)ecidersil'ordinateur, dontl'intervention estlimit(cid:19)ee (cid:18)alatroisi(cid:18)eme Unpremierpas, relativementmodeste, verslessyst(cid:18)emesintelligents,consiste(cid:18)a phase,estounonpourvud'unecapacit(cid:19)eressemblant(cid:18)al'intelligence;laquestion doter la machine de l'aptitude (cid:18)a interpr(cid:19)eter op(cid:19)erationnellement des fragments 262 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 263 de connaissance math(cid:19)ematique(cid:19)ecrits en un langage math(cid:19)ematique, d(cid:19)eclaratif. est moins (cid:19)evident, on observe que, pour d(cid:19)eplacer N disques du piquet A vers Notons que le langage math(cid:19)ematique formel est, le plus souvent, une logique; le piquet B, il faudra proc(cid:19)eder n(cid:19)ecessairement en trois (cid:19)etapes. La premi(cid:18)ere ceci est une premi(cid:18)ere explication du lien (cid:19)etroit existant entre la logique et consiste (cid:18)a transf(cid:19)erer N (cid:0)1 disques du piquet A au piquet C, la deuxi(cid:18)eme (cid:18)a l'intelligence arti(cid:12)cielle. transf(cid:19)erer un disque (le plus grand) du piquet A au piquet B et la troisi(cid:18)eme (cid:18)a On peut estimer que, dans le cas du programme de calcul de la factorielle transf(cid:19)ererN(cid:0)1disquesdupiquet C aupiquet B. Cette tactique typiquement donn(cid:19)eplushaut,letravaildeconstructionestr(cid:19)eduitetqu'iln'estdoncpastr(cid:18)es r(cid:19)ecursiveest illustr(cid:19)ee (cid:18)a la (cid:12)gure 10.4, dans le cas N =5. utile de vouloir s'en dispenser. Remarquons n(cid:19)eanmoins que ce travail est plus important qu'il n'y para^(cid:16)t, puisque s'assurer de la correction du programme requiert la construction de l'invariant |une formule relativement longue| et la validation de celui-ci. Le fait que le processus de calcul associ(cid:19)e au programmesoitlem^emequeleprocessusdecalculemploy(cid:19)eparun^etrehumain pour calculer une factorielle n'incite pas non plus (cid:18)a chercher une solution plus \intelligente", qui ne serait sans doute pas meilleure. Nous pouvons admettre que tout moyen permettant de r(cid:19)eduire le travail de conversion de la connaissance math(cid:19)ematique d(cid:19)eclarative en connaissance informatique, c'est-(cid:18)a-dire en un programme ex(cid:19)ecutable, est un pas vers l'intelligencearti(cid:12)cielle. Ene(cid:11)et,lamachineprendalorsencharge,enpartiedu moins,untravailqui,accompliparl'^etrehumain,para^(cid:16)trequ(cid:19)eriruned(cid:19)emarche intellectuelle. Des langages fonctionnels comme Lisp, Scheme et ML permettent la mise =) en (cid:27)uvre op(cid:19)erationnelle imm(cid:19)ediate de connaissances \semi-d(cid:19)eclaratives"d'un type particulier, (cid:18)a savoir les d(cid:19)e(cid:12)nitions r(cid:19)ecursives telle que (10.2). Des syst(cid:18)emesdecalculsymbolique(macsymaetreduceparexemple)permettent d'exploiter de la connaissance math(cid:19)ematique d(cid:19)eclarative de types plus vari(cid:19)es, et notamment la d(cid:19)e(cid:12)nition int(cid:19)egrale (10.3). Le m(cid:19)ecanisme d'exploitation op(cid:19)erationnelle de la r(cid:19)ecursion est, en principe du moins, extr^emement simple; il ne su(cid:14)t donc pas (cid:18)a faire de Lisp un syst(cid:18)eme d'intelligence arti(cid:12)cielle dans l'acception courante du terme. En ce qui concerne reduce et macsyma, les m(cid:19)ecanismes sont plus nombreux et plus sophistiqu(cid:19)es. Figure 10.4 Tours de Hano(cid:127)(cid:16): approche classique 10.2.3. Les Tours de Hano(cid:127)(cid:16) Cette approche donne lieu au programme r(cid:19)ecursif ci-dessous: Un autre exemple bien connu, le probl(cid:18)eme des Tours de Hano(cid:127)(cid:16), peut aider Towers(1;X;Y;Z)=[X !Y] (cid:18)a mieux appr(cid:19)ehender le concept d'intelligence arti(cid:12)cielle. On dispose de trois Towers(N +1;X;Y;Z)= Towers(N;X;Z;Y) piquets, nomm(cid:19)es A, B et C, et de N disques de tailles (cid:19)echelonn(cid:19)ees, perc(cid:19)es (cid:3)Towers(1;X;Y;Z) en leur centre de mani(cid:18)ere (cid:18)a pouvoir ^etre empil(cid:19)es sur les piquets. Un disque (cid:3)Towers(N;Z;Y;X) plus grand ne peut jamais se trouver au-dessus d'un disque plus petit. Au d(cid:19)epart, tous les disques se trouvent empil(cid:19)es sur le piquet A. Le probl(cid:18)eme (Le symbole (cid:3) d(cid:19)esigne ici l'op(cid:19)erateurde concat(cid:19)enation de listes.) consiste(cid:18)aconstruireunesuitedemouvements(cid:19)el(cid:19)ementaires,impliquantchacun Cette mani(cid:18)ere de r(cid:19)esoudre le probl(cid:18)eme des Tours de Hano(cid:127)(cid:16) n'est pas le d(cid:19)eplacement d'un seul disque, conduisant (cid:18)a la situation ou(cid:18) tous les disques consid(cid:19)er(cid:19)ee habituellement comme un exemple d'intelligence arti(cid:12)cielle parce sont empil(cid:19)es sur le piquet B. que la machine, ou pluto^t l'interpr(cid:19)eteur du langage fonctionnel utilis(cid:19)e, n'a La mani(cid:18)ere classique d'aborder ce probl(cid:18)eme consiste (cid:18)a observer d'abord d(cid:19)echarg(cid:19)el'humainqued'uneta^chemodeste(enprincipe),(cid:18)asavoirl'exploitation qu'une solution imm(cid:19)ediate existe dans le cas ou(cid:18) N = 1. En outre, et ceci de la r(cid:19)ecursivit(cid:19)e. Remarquons aussi que la s(cid:19)equence de mouvements induits 264 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 265 par ce programme est optimale, c'est-(cid:18)a-dire aussi courte que possible. Si l'on (cid:15) d(cid:19)eplacerle petit disque dans le sens des aiguilles d'une montre; note (cid:21)(N) cette longueur, on a: (cid:15) s'arr^etersi la situation (cid:12)nale est atteinte; (cid:21)(1)=1; (cid:15) d(cid:19)eplacerun autre disque, de la seule mani(cid:18)ere possible. (cid:21)(N +1)=1+2(cid:21)(N); (Si N est impair, le sens de rotation du plus petit disque est invers(cid:19)e.) N d'ou(cid:18) on d(cid:19)eduit (cid:21)(N)=2 (cid:0)1. La ta^che de la machine est ici de simple ex(cid:19)ecution; cette approche a requis plus d'intelligence de la part du concepteur, et donc moins de la part de la Pour voir que la ta^che de \d(cid:19)er(cid:19)ecursivation"est modeste dans son principe, machine. Onpeuts'enrendrecomptefacilement: seconvaincredel'exactitude il su(cid:14)t de la simuler. On consid(cid:18)ere la relation r(cid:19)ecursive comme une r(cid:18)egle du second programme est moins simple que pour le premier. On peut aussi de r(cid:19)e(cid:19)ecriture et on convertit la liste initiale, comportant un seul mouvement consid(cid:19)erer que la tactique r(cid:19)ecursive sugg(cid:19)er(cid:19)ee dans la premi(cid:18)ere approche est compos(cid:19)e: plus facile (cid:18)a imaginer et (l(cid:19)eg(cid:18)erement) plus di(cid:14)cile (cid:18)a mettre en (cid:27)uvre que la Towers(N;X;Y;Z) tactique it(cid:19)erativede la seconde approche. en la liste: Le but ultime de l'intelligence arti(cid:12)cielle serait de dispenser l'^etre humain Towers(N (cid:0)1;X;Z;Y) de fournir une tactique; le syst(cid:18)eme intelligent disposerait (cid:18)a l'avance de toutes Towers(1;X;Y;Z) les tactiques n(cid:19)ecessaires ou, encore mieux, de l'aptitude lui permettant de Towers(N (cid:0)1;Z;Y;X) les \concevoir" au fur et (cid:18)a mesure qu'elles se r(cid:19)ev(cid:19)eleraient n(cid:19)ecessaires. Cette ambition est naturellement irr(cid:19)ealiste mais, en d(cid:19)elimitant le type de probl(cid:18)emes comportant trois mouvements dont le premier et le dernier sont encore que la machine intelligente est cens(cid:19)ee r(cid:19)esoudre, on peut arriver (cid:18)a des r(cid:19)esultats compos(cid:19)es, sauf si N = 2. On r(cid:19)eapplique le m^eme proc(cid:19)ed(cid:19)e de r(cid:19)e(cid:19)ecriture pour int(cid:19)eressants. Lesdeuxtactiquesfourniespourr(cid:19)esoudrenotreexempledesTours obtenir de Hano(cid:127)(cid:16) sont sp(cid:19)eci(cid:12)ques (cid:18)a ce probl(cid:18)eme mais on peut concevoir une tactique Towers(N (cid:0)2;X;Y;Z) plus g(cid:19)en(cid:19)erale,qui s'appliquerait (cid:18)a une vaste classe de probl(cid:18)emes. Towers(1;X;Z;Y) Cette tactique g(cid:19)en(cid:19)erale provient d'une constatation tr(cid:18)es simple. A chaque Towers(N (cid:0)2;Y;Z;X) (cid:19)etape,lenombredemouvementspossiblesestlimit(cid:19)e. Onpeutdoncrepr(cid:19)esenter Towers(1;X;Y;Z) le probl(cid:18)eme des Tours de Hano(cid:127)(cid:16) par un arbre (cid:12)nitaire; la racine correspond Towers(N (cid:0)2;Z;X;Y) (cid:18)a la situation initiale et tout n(cid:27)ud correspondant (cid:18)a une situation donn(cid:19)ee admet pour successeurs directs les situations que l'on peut atteindre en Towers(1;Z;Y;X) d(cid:19)epla(cid:24)cant un seul disque. Chaque branche repr(cid:19)esente donc une suite licite Towers(N (cid:0)2;X;Y;Z) de mouvements. Il su(cid:14)t donc de construire l'arbre, \en largeur d'abord", etainsidesuite. Apr(cid:18)esN(cid:0)1r(cid:19)ep(cid:19)etitionsduproc(cid:19)ed(cid:19)e,onobtientlalisteoptimale pourobtenir lameilleure solutionau probl(cid:18)eme. Cette tactique de construction des mouvements(cid:19)el(cid:19)ementaires. d'arbres'applique(cid:18)aunetr(cid:18)eslargeclassedeprobl(cid:18)emes,maissonint(cid:19)er^etpratique semble limit(cid:19)e par un ph(cid:19)enom(cid:18)ene (cid:19)evident: le processus de construction de Ilestint(cid:19)eressantd'observerqu'uneautreapprocheestpossible,dontlamise la solution est d(cid:19)esesp(cid:19)er(cid:19)ement lent. Dans le cas qui nous occupe, la plupart en (cid:27)uvrene requiertpasla ma^(cid:16)trisedu m(cid:19)ecanismede la r(cid:19)ecursion. Supposons des situations admettent trois successeurs directs, deux correspondant (cid:18)a un que les trois piquets soient dispos(cid:19)es en triangle, comme ci-dessous: mouvement du petit disque, et un correspondant au mouvement d'un autre (cid:19)(cid:16) disque. Cela signi(cid:12)e que pour obtenir (cid:18)a coup su^r la solution optimale dans A (cid:18)(cid:17) le cas de N disques, il faudrait construire un arbre ternaire de profondeur N 2N(cid:0)1 2 (cid:0) 1, comportant jusqu'a(cid:18) 3 feuilles (et autant de n(cid:27)uds internes). C'est naturellement impossible sauf pour les plus petites valeurs de N. On (cid:19)(cid:16) (cid:19)(cid:16) peut cependant observer que dans le cas pr(cid:19)esent, ainsi d'ailleurs que pour B C la plupart des probl(cid:18)emes similaires, l'arbre peut ^etre s(cid:19)erieusement (cid:19)elagu(cid:19)e. (cid:18)(cid:17) (cid:18)(cid:17) Tout d'abord, l'un des trois successeurs d'un n(cid:27)ud est n(cid:19)ecessairement le Le programme suivant convient, quand N est pair: pr(cid:19)ed(cid:19)ecesseur de ce n(cid:27)ud et peut, de ce fait, ^etre omis; il est en e(cid:11)et inutile R(cid:19)ep(cid:19)eter de repasser par une situation d(cid:19)eja(cid:18) rencontr(cid:19)ee. On peut encore r(cid:19)eduire l'arbre 266 Logique Introduction (cid:18)a l'intelligence arti(cid:12)cielle 267 en excluant des successeurs non seulement le pr(cid:19)ed(cid:19)ecesseur mais aussi toute cielle, il faut choisir la premi(cid:18)ere. Ceci n'est paradoxal qu'en apparence. Dans situationd(cid:19)eja(cid:18)rencontr(cid:19)eeplushautdansl'arbre,m^emedansuneautrebranche. une situation ou(cid:18) l'^etre humain peut r(cid:19)eagir par r(cid:19)e(cid:13)exe, il aurait g(cid:19)en(cid:19)eralement Ces optimisations (cid:19)el(cid:19)ementaires su(cid:14)sent (cid:18)a rendre plus acceptable la taille de tort de prendre le temps de v(cid:19)eri(cid:12)er le bien-fond(cid:19)e de l'action r(cid:19)e(cid:13)exe avant de 10 l'arbre, qui est repr(cid:19)esent(cid:19)e (cid:18)a la (cid:12)gure 10.5 dans le cas de trois disques. On l'accomplir. pourraitencorer(cid:19)eduirel'arbreentenantcomptedessym(cid:19)etries;sionconna^(cid:16)tla suiteS(3;A;B)demouvementsn(cid:19)ecessairespourfairepasser,parexemple,trois 10.2.4. Nim disques du piquet A vers le piquet B, on obtiendra S(3;C;A) en appliquant (cid:18)a Le jeu de Nim met en comp(cid:19)etitiondeux joueurs. Il nousint(cid:19)eresseparceque S(3;A;B) la substitution (A;B;C):=(C;A;B). l'on peut y jouer en utilisant les ressources de l'intelligence, naturelle ou non, avecuncertainint(cid:19)er^et;cependant,une tactiqueinfaillible, ne requ(cid:19)erantpasde raisonnement mais un simple calcul, permet de jouer de mani(cid:18)ere infaillible. Un certain nombre de tas d'allumettes sont disponibles au d(cid:19)epart. (La con(cid:12)guration initiale habituelle est de quatre tas, comportant respectivement sept, cinq, trois et une allumette, respectivement.) A tour de r^ole, chaque joueurenl(cid:18)eveune ouplusieursallumettes,prisesdansunseultas,auchoix. Le gagnant est le joueur prenant la derni(cid:18)ereallumette. La d(cid:19)emarche du joueur humain ne connaissant pas la tactique sp(cid:19)eci(cid:12)que du jeu serad'anticiper les r(cid:19)eactionspossibles de l'adversaire,en pr(cid:19)evoyantune certainnombredecoups(cid:18)al'avance. Cettestrat(cid:19)egieestoptimale::: (cid:18)acondition depouvoirlamettreen(cid:27)uvrecompl(cid:18)etement. Lenombredesituationspossibles cro^(cid:16)t tr(cid:18)es vite en fonction du nombre de coups consid(cid:19)er(cid:19)es. Un programme d'intelligence arti(cid:12)cielle proc(cid:19)edera de m^eme, en construisant un arbre de jeu analogue (cid:18)a celui d(cid:19)eja(cid:18) (cid:19)evoqu(cid:19)epour le probl(cid:18)eme des Tours de Hano(cid:127)(cid:16). Les coups jou(cid:19)esparleprogrammeviseront(cid:18)aexplorerune branchede cetarbre,gagnante pourleprogramme. Enpratique,silenombretotald'allumettesdisponiblesau d(cid:19)epart n'est pas tr(cid:18)es (cid:19)elev(cid:19)e, cette strat(cid:19)egie fonctionnera tr(cid:18)es bien; elle devient cependantimpraticables'ilyaparexemple200allumettesr(cid:19)epartiesendixtas. La tactique sp(cid:19)eci(cid:12)que repose sur les quelques notions simples suivantes. On repr(cid:19)esente une situation de jeu par la liste des e(cid:11)ectifs des tas, (cid:19)ecrits en num(cid:19)eration binaire. Par exemple, la con(cid:12)guration initiale habituelle est not(cid:19)ee Figure 10.5 Tours de Hano(cid:127)(cid:16): recherche syst(cid:19)ematique (111;101;11;1), soit l'(cid:19)equivalent binaire de (7;5;3;1). Une situation est paire si, pour tout n, le nombre de bits de rang n (cid:19)egaux (cid:18)a 1 est pair. C'est le cas Il est peu int(cid:19)eressant d'appliquer la recherche syst(cid:19)ematique dans le cas du pour la situation ci-dessus, qui comporte deux bits de rang 2 (cid:19)egaux (cid:18)a 1, deux probl(cid:18)eme des Tours de Hano(cid:127)(cid:16) parce qu'une tactique plus sp(cid:19)eci(cid:12)que et aussi bitsderang1(cid:19)egaux(cid:18)a1et quatrebitsderangz(cid:19)ero(cid:19)egaux(cid:18)a1;ceciseremarque plus e(cid:14)cace est connue ::: c'est-(cid:18)a-dire parce que la partie intelligente du imm(cid:19)ediatement si les e(cid:11)ectifs sont dispos(cid:19)es en une colonne: probl(cid:18)eme a d(cid:19)eja(cid:18) (cid:19)et(cid:19)e e(cid:11)ectu(cid:19)ee. En fait, on pourrait dire que ce probl(cid:18)eme 7 111 n'appartient plus (cid:18)a l'intelligence arti(cid:12)cielle. Les exemples qui suivent mon- treront que l'appartenance d'un probl(cid:18)eme (cid:18)a l'intelligence arti(cid:12)cielle d(cid:19)epend 5 101 aussi de la connaissance que nous avons de ce probl(cid:18)eme. En fait, une situa- 3 11 tion parfaitement connue requiert moins le recours (cid:18)a l'intelligence (arti(cid:12)cielle 1 1 ou non) qu'une situation mal connue. De toute mani(cid:18)ere, la fronti(cid:18)ere entre les situations requ(cid:19)erantde l'intelligence et les autres seranaturellement (cid:13)oue. Un autre point important, bien illustr(cid:19)e par le probl(cid:18)eme des Tours de Hano(cid:127)(cid:16), est 10Si on entre en contact avec un objet tr(cid:18)es chaud, le recul r(cid:19)e(cid:13)exe permettra d'(cid:19)eviter une que, si on a le choix entre l'approche classique et l'approche intelligence arti(cid:12)- bru^lure;parcontre,unreculconscientet motiv(cid:19)einterviendraittroptard.
Description: