SIXIEME CHAPITRE

INFORMATIQUE ET GENETIQUE
 
 

La vie de la machine

"Vous voyez ce petit programme, s'enorgueillit Terry White de Neural Computer, avec des roucoulements de jeune mère devant son dernier né. Il n'a l'air de rien. Et pourtant, il bouleverse tout ce que nous savons. I1 flanque par terre nos convictions les plus ancrées. Parce qu'il vit. Oui, comme un petit animal, il est autonome, capable de se protéger des agressions, capable de se reproduire. Et même capable d'enfanter des programmes significativement différents de lui-même."

"Nous sommes en train de passer d'un coup de l'âge de pierre à l'âge de raison, renchérit Jean-Alain Le Borgne, chercheur à C2V (291). Au départ, l'informatique était de type soviétique . les électrons marchaient comme des petits soldats à l'exercice, pas question d'en voir un s'échapper du rang. Avec l'arrivée des algorithmes génétiques, l'anarchie est devenue le principe politique favori des ordinateurs . les électrons se sont mis à cavaler n'importe comment. Et comme des enfants sans surveillance, ils se sont mis à apprendre à leur propre rythme." Résultat, soumis à l'action de programmes de plus en plus complexes, les machines sont aujourd'hui susceptibles de laisser émerger en leur sein des programmes auto-créés. Et qui dit programme auto-créé dit aussi virus susceptible d'arriver "par hasard" dans une machine.

De fait, l'Intelligence Artificielle est en train de connaître un bouleversement radical. Pendant les 25 premières années de son existence, depuis sa naissance en 1958, elle s'est orientée vers une forme de recherche linéaire. Les programmes devinrent rapidement fascinants. Le célèbre "Elisa", par exemple, était capable d'imiter un psychiatre. Un certain nombre de patients ayant consulté Elisa par téléphone n'ont pas vu la différence avec un véritable être humain. Dans la foulée, on vit arriver des machines simulant la paranoïa, des apôtres automatiques, des générateurs de texte et autres programmes faisant penser au feuilleton "ces merveilleux fous volants dans leur drôles de machine". Mais, en dépit de l'inventivité de ces hommes, l'Intelligence Artificielle restait terriblement limitée. On ne pouvait jamais faire varier qu'un seul paramètre à la fois. "Comparé à la musique, remarque perfidement Jean Bernard Condat du Chaos Computer Club de France (le club des pirates informatiques français), c'est terriblement restreint. Un musicien sait faire varier cinq paramètres en même temps . la hauteur, l'intensité, la durée, le timbre et la spatialisation. A côté, les informaticiens font piètre figure!" De fait, avec des réseaux monocouches, il est quasiment impossible de faire des algorithmes capables de se modifier eux-mêmes. La chose a été démontré dans les années 60 par le mathématicien américain Minsky. De quoi réfréner considérablement l'ardeur des artificialistes qui ont dû abandonner leur rêve les plus fous. Les machines seraient peut-être capable d'imiter le comportement d'un être humain, dans le cadre précis d'un métier, mais ne parviendraient jamais à enfanter et encore moins à connaître le grand frisson de l'amour.

Pourtant, des programmes capables de se reproduire eux-mêmes existaient. Mais il ne s'agissait que d'une reproduction à l'identique, dans laquelle le programme va "écrire" dans une autre partie de la machine une copie de lui-même. "Vous parlez d'une reproduction, s'exclame Terry White, le programme fait ça tout seul dans son coin, sans supporter la moindre intervention de l'autre. Une vraie sexualité de maniaque !" Plus tard apparurent des programmes un peu plus élaboré qui pouvait choisir à quel moment et à quel endroit se reproduire. "Notre maniaque est devenu plus civilisé, commente Terry White, il ne fait plus ça n'importe où, n'importe quand !". Mais les programmes se reproduisaient toujours à l'identique. Aucun rapport avec ce qui se passe dans la vie où 1"'autre" est nécessaire pour introduire une modification dans le résultat de la reproduction.
 
 

291 : C2V a participé à un congrès patronné par l'Ecole Normale Supérieure consacré aux algorithmes génétiques quia eu lieu au ministère de la Recherche du 24 au 28 septembre 1991.
 
 

"Cette étape est aujourd'hui franchie, explique Renaud Dumeur, chercheur à C2V. Grâce aux algorithmes génétiques nous avons la possibilité de "marier" des programmes génétiques pour les faire évoluer d'eux-mêmes." Le principe de ces algorithmes vient de la biologie : on prend deux codes, non pas génétiques mais informatiques, pour en obtenir un troisième d'après certains critères. L'opération consiste à simuler le comportement d'une population et de voir quelle réponse les individus donnent à une question. On garde ceux qui donnent une réponse intéressante et on élimine les autres. Par mariage successif des "bons" éléments, on obtient assez vite une population de programmes capables de résoudre un problème complexe.

L'enjeu est considérable. Un peu partout dans le monde, des équipes de recherche se jettent sur ce nouvel outil, seul capable de résoudre les problèmes de la recherche opérationnel. Ce terme barbare bien connu des mathématiciens désigne l'ensemble des problèmes consistant à rechercher le chemin le plus court pour aller d'un point à un autre. Trivial ? Pas si sûr. Imaginez un touriste qui veut visiter une quarantaine de monuments à Paris. Comment doit-il procéder pour tout voir en un minimum de temps ? Le nombre de combinaisons possibles est astronomiques. Le touriste, habituellement, préfère perdre du temps dans les visites que perdre son temps à ce calcul fastidieux. Mais s'il s'agit de choisir le plus court chemin pour faire voyager l'électricité de son lieu de production jusqu'au consommateur, une mauvaise solution peut se traduire par un surcoût considérable.

Pour résoudre le problème, les algorithmes génétiques supposent que la situation soit décrite en terme informatique et que les solutions partielles possibles (les parcours dans le cas de notre touriste) soient décrites comme des individus. on peut alors simuler un comportement "darwinien" des individus. Ils vont se "marier" et entrer en compétition les uns avec les autres jusqu'à ce qu'on arrive à la solution optimale. Mais pour trouver la solution optimale, il faut parfois une innovation. Un peu comme dans la vie, il faut des mutations génétiques pour une meilleure adaptation de l'individu à son environnement. Le principe consiste à introduire un "gène" d'une façon plus ou moins aléatoire dans un programme quelconque. Le nouvel individu ainsi obtenu va à son tour entrer en compétition avec les autres, se croiser, avoir une descendance etc. Si la mutation est inopérante au regard du problème posé, le nouvel individu sera supprimé. Si, au contraire, elle est positive, elle va croître et se greffer sur d'autres individus. En clair, le système va s'auto-améliorer sans que le créateur du programme ne soit intervenu.

Avec les réseaux neuronaux, les algorithmes génétiques sont les premières créations humaines qui réagissent de manière "imprévisible"". Les machines commencent à avoir une espèce d'action autonome. Cela ne signifie pas qu'elles cessent d'obéir à des lois rigoureuses et connues. Mais il est impossible de prédire, avec un temps de calcul raisonnable, le résultat du télescopage de deux programmes. Résultat, la probabilité de voir naître spontanément un virus n'est pas nulle. D'autant plus que les informaticiens ont besoin de programmes qui voyagent, c'est-à-dire de programme qui vont s'écrire d'eux-mêmes dans d'autres machines. Une mutation dans un tel programme pourrait le conduire à se comporter comme un virus. Là encore, tout obéit à des lois déterministes, mais le résultat n'est pas prévisible.

L'analogie de la machine et du vivant a reçu une autre illustration magistrale : la lutte pour la survie peut aussi être simulée sur ordinateur en écrivant des programmes qui luttent les uns contre les autres. Les machines ne connaissant ni les sentiments ni la morale, les informaticiens s'attendaient à ce que les programmes les plus destructeurs gagnent rapidement. Et pourtant, contrairement à toute attente, lors des tournois réels entre ordinateurs, les "bons" ont gagné contre les "méchants", comme si une espèce de morale "naturelle" émergeait de l'égoïsme radical des ordinateurs simulant la lutte pour la vie. Trop beau pour être vrai ? Non, il existe une preuve empirique que la coopération peut apparaître "spontanément" dans un duel informatique. L'initiative en revient à Robert Axelrod du département des Sciences Politiques de l'Université du Michigan à Ann Arbor. En 1979, il convoque un certain nombre de mordus de l'informatique pour leur faire faire des programmes capables de s'affronter

les uns les autres. Le but n'est pas de gagner dans le plus grand nombre de rencontres, mais d'obtenir le score le plus élevé au final. Un peu comme dans un championnat du monde, on peut très bien terminer premier au classement général sans être celui qui a remporté le plus de victoires ponctuelles.

Juste avant le début de la compétition, Axelrod en ajoute lui-même un, baptisé HASARD, qui réagit à toute situation de manière aléatoire. Quand tout est prêt, 14 programmes entrent dans l'arène. L'ensemble est plutôt hétéroclite, souligne Douglas Hofstadter (292), un programme de 4 lignes côtoyant un programme de 77 lignes ! Chaque programme est opposé 200 fois à chacun des autres. Pour faire bonne mesure, Axelrod imagine même d'opposer chacun des "participants" à une réplique de lui-même. Enfin, le processus complet est répété cinq fois, afin d'atténuer les fluctuations statistiques dues aux générateurs de nombres aléatoires.

C'est finalement un programme baptisé OEIL POUR OEIL qui remporte la victoire. Ecrit par un philosophe-psychologue de l'Université de Toronto, Anatol Rapoport, c'était le plus court de tous les programmes. Sa tactique était on ne peut plus élémentaire, explique Douglas Hofstadter : au premier coup, coopérer ; ensuite, répéter le coup précédent de l'autre joueur. Comment concevoir qu'une tactique aussi triviale puisse avoir quelques chances de succès ? Souvent battu dans les rencontres ponctuelles, OEIL POUR OEIL réussit quand même à s'en sortir à cause du grand nombre de rencontres et du fait que les programmes les plus agressifs s'affaiblissent les uns les autres. L'analyse clés résultats, commente Axelrod, indique que n ous avons beaucoup à apprendre sur le comportement à adopter dans un environnement d'interdépendance. Même des experts en sciences politiques, en sociologie, en économie, en psychologie ou en mathématiques ont systématiquement commis l'erreur d'être trop gourmands, pas assez .indulgents, et trop pessimistes quant à la coopérativité de leurs partenaires.

L'histoire ne s'arrête pas là. Un second tournoi est organisé. 62 participants, venant de six pays différents, de tous âges (le benjamin a dix ans), ayant tous médité les résultats de la première rencontre, se lancent dans l'aventure."D'une manière générale, souligne Douglas Hofstadter, les programmes étaient considérablement plus élaborés que ceux du premier tournoi." OEIL POUR DEUX YEUX, par exemple, est toujours bienveillant lors de la première rencontre. I1 ne devient méchant qu'à partir de la deuxième agression d'un même joueur. SYSTEME D, au contraire, est systématiquement hostile : il agresse tout ce qui bouge. REPRESAILLES MASSIVES a un peu plus de discernement : il coopère avec les autres joueurs jusqu'à la première "tromperie". Mais une fois qu'un joueur est identifié comme agresseur, REPRESAILLES MASSIVES l'attaque automatiquement. HARRINGTON, quant à lui, fait semblant de coopérer avec les autres joueurs, pour tester leur capacité. Une fois qu'il a compris leur stratégie, il exploite sans vergogne leurs faiblesses en agressant tout ce qui est plus faible que lui. De plus,une dimension "écologique" est introduite dans le tournoi . "au tout début, explique Axelrod, les bons programmes et les mauvais programmes sont représentés dans des proportions équivalentes. Progressivement, les programmes les plus efficaces supplantent les autres. Mais le classement risque d'être bouleversé, car les rescapés se trouvent maintenant confrontés à un environnement nouveau."

Une fois tous installés dans la machine, Axelrod donne le signal du départ. Après plusieurs heures de calcul, le résultat sort enfin le vainqueur est une nouvelle fois OEIL POUR OEIL. OEIL POUR DEUX YEUX n'arrive que 21ème. Quant à Harrington, il est un exemple concret d'extinction écologique. "Durant les deux cents premières générations, remarque Douglas Hofstadter, lorsque les programmes bienveillants croissaient et multipliaient, HARRINGTON en faisait autant son côté "exploiteur" lui rapportait gros. A partir de la deux centième génération, le vent a tourné : les stratégies les plus faibles étaient exsangues, et HARRINGTON avait de plus en plus de mal à trouver des proies. Bientôt, l'issue devint claire : HARRINGTON ne pouvait plus se maintenir sur un pied d'égalité avec ses rivaux bienveillants. A la millième génération, il avait rejoint les dodos qu'il avait contribué à rayer du monde des vivants."

D'après Axelrod, "OEIL POUR OEIL a gagné le tournoi non pas en battant à plates coutures les autres stratégies, mais en suscitant chez elles une attitude dont les deux partenaires ne pouvaient que se féliciter. C'est cette remarquable capacité à engendrer un comportement mutuellement bénéfique qui lui a permis d'atteindre un score inégalé dans le tournoi."
 
 

292: Douglas Hofstadter, Ma Thémagie, InterEditions, Paris, 1988.
 
 

Biologie et informatique

Au delà de l'aspect ludique de ces bagarres de programmes, se dessine la possibilité d'avoir un modèle mathématique de la transmission des gênes et du néodarwinisme, ce qui passionne les biologistes. Les rapports entre biologie et informatique ne sont pas exempt de malentendus, même s'ils sont pafois féconds. Deux exemples montrent comment ces deux disciplines se sont mutuellement empruntés des concepts. La notion de programme, qui vient de l'informatique, s'est révélée féconde pour la biologie. Inversement, la notion d'auto-organisation, qui vient de la biologie, est aujourd'hui utilisée en informatique, dans les algorithmes génétiques par exemple. Quant à la réaction à un milieu, il y a peu l'apanage du vivant, elle pénètre à son tour dans les ordinateurs, capables aujourd'hui de comprendre la notion de "contexte", comme dans le cas de ces tournois de programmes.

I1 fut un temps où organisé était synonyme de vivant, puisque l'organisation était la caractéristique propre, irréductible, qui différenciait la matière vivante -celle des êtres "organisés"- de la matière inanimée. Aussi, dans ce contexte vitaliste, la question de la logique de l'organisation ne pouvait se poser. La situation s'est complètement renouvelée avec la fabrication de machines organisées d'une part, la découverte de substrat moléculaires, c'est-à-dire physicochimiques, de principes d'organisation cellulaire responsables des propriétés qui semblaient jusqu'alors les plus irréductibles de la matière vivante la reproduction héréditaire et l'expression des caractères génétiques. Dans ce renouvellement, la théorie de l'information, la cybernétique et l'informatique ont joué un rôle non négligeable, au moins en ce qui concerne les concepts, puisque c'est à elle que furent empruntés les concepts d'information génétique, de code et de programme génétiques, d'erreurs de biosynthèse, de boucles régulatrices etc.

Le deuxième exemple de convergence apparente entre la biologie et l'informatique est donné par l'auto-organisation. Au sens faible, l'autoorganisation est un artefact informatique fabriqué en vue des performance de l'intelligence artificielle. La finalité, dans ce cas, est pré-définie. L'objectif programmé, quant à lui, est atteint de façon non programmée explicitement. Par exemple, l'architecture et les règles d'apprentissage dans les réseaux d'automates forment une "auto-organisation" par application de règles générales non spécifiques pour la tâche particulière à effectuer.

Au sens fort, l'auto-organisation simule l'émergence de formes et de fonctions spécifiques dans des systèmes naturels à un niveau global à partir de contraintes physico-chimiques peu spécifiques au niveau local. Enfin, on peut introduire la notion philosophique d'intentionnalité dans l'auto-organisation . elle contient alors la conscience de soi. Cette dernière forme d'auto-organisation n'est pas encore formalisée, et c'est peut-être là le prochain défi de l'Intelligence Artificielle. Du côté de l'informatique, le réseau neuronal, qui date de 1940, n'a rien de biologique si ce n'est son nom : il s'agit de neurones formels, autrement dit d'un ensemble d'automates qui fonctionne avec un seuil, un peu à la manière d'un véritable neurone. Ils n'ont rien de biologiques au sens strict même si cette fonction de seuil est observée dès qu'on s'approche des "vrais" neurones. On ne peut donc pas dire que la biologie n'a pas joué un rôle dans l'informatique. Mais, comme dans les autres disciplines, les informaticiens prennent les concepts là où ils les trouvent, quitte a bâtir une théorie sur un malentendu.