Le projet JACK-BOT

Historique

Depuis les années 70, la communauté des chercheurs en Intelligence Artificielle a utilisé beaucoup d'angles d'attaque différents pour répondre aux problèmes posés par "la Machine Intelligente" !!!
Certains ont cherché à émuler les processus de pensée, comme ils l'auraient fait pour un problème d'astrophysique ou des prédictions de marché boursier.
D'autres ont essayé de simuler le "modèle linguistique" théorique de l'intelligence humaine en créant des structures linguistiques conceptuelles.
Il faut dire que la recherche, en ces années-là, était galvanisée par le personnage-culte de HAL9000 dans "2001, l'odyssée de l'espace" – film de Stanley Kubrick (1968), adapté d'un roman non moins fameux de Arthur C. Clarke.

Quelques années sont passées depuis, et il faut bien dire que ces techniques réussiront peut-être sur le long terme, mais qu'aujourd'hui, les résultats sont peu convaincants.
La recherche en Intelligence Artificielle a depuis ce temps béni (où les subventions affluaient), marqué le pas.
Non pas définitivement, car ce serait mal connaître les hommes et sous-estimer leur ténacité…

Disons, pour résumer la situation actuelle, qu'on est revenu à des perspectives plus modestes, loin des grands modèles conceptuels et des analogies douteuses cerveau/ordinateur.

Une grande partie des efforts des chercheurs s'est portée sur l'heuristique et ses applications dans le domaine des jeux vidéo. Là, ce fut un succès (commercial aussi. Le Retour sur Investissement étant réel pour les jeux vidéo). Il n'est qu'à voir "Deep Blue" jouant et battant (au moins deux fois à ma connaissance) le champion du monde d'échecs, Youri Kasparov, pour en être convaincu.

Un autre groupe de "chercheurs" a planché sur un système plus modeste, constitué d'un langage dérivé du XML, donc basé sur un standard de l'Internet : le AIML (Artificial Intelligence Markup Language).

Le meilleur des outils actuels en ligne est ALICE, un système d'IA en open-source, créé par le Dr. Richard Wallace.
ALICE répond à la question de l'Intelligence Artificielle sous un angle typiquement Turingien :

« Si ça a l'air intelligent, alors ça doit l'être ! »

A la différence des autres systèmes propriétaires, ALICE peut être utilisé et adapté par n'importe qui et ce, gratuitement, ce qui lui assure un développement rapide à l'instar de beaucoup de projets portés sur le web (PHP par exemple).

Intelligence ?

Ce Robot est une autre approche de l'IA. En effet, aucune modélisation de la base de connaissance n'est implémentée, il n'y a pas d'intelligence à proprement parler, mais ce Bot est capable de générer des réponses surprenantes dues à la combinaison des nombreux patterns qui le constituent. C'est un modèle dit "à superviseur humain", ce qui lui confère une grande souplesse (scalabilité). On est, à la limite, plus proche d'un véritable comportement humain et non plus d'un système déductif. Son grand potentiel vient du grand nombre de conversations mémorisées (l'expérience). C'est un véritable "Robot de tchatche" et non un système expert !

ALICE est constitué d'un système de balises comme on en trouve dans le HTML, et qui permet aux non-programmeurs de personnaliser leur Robot facilement.
Bien sûr, un homme perspicace et déterminé, détectera que ALICE est un robot, tandis que les personnes non averties (comme dans une chatroom) feront souvent la confusion et penseront dialoguer avec un Humain…
ALICE a d'ailleurs gagné le prestigieux Loebner Prize en 2000 et 2001, ce prix visant à déceler si un interlocuteur est humain ou non.

ALICE sera remplacé sans aucun doute dans les prochaines années par des approches meilleures de l'IA, mais elle restera un des meilleurs moyens de l'aborder. En tant que système low-tech, elle permet à des artistes de se faire la main sur des concepts autrefois réservés à des prix Nobel !

Projet

Ce projet est parti, en premier lieu, d'un besoin de création artistique. Nous voulions montrer comment la personnalité d'un Serial Killer se construit "grâce" à ses victimes. Il nous est apparu rapidement que ça serait plus pertinent si le dispositif était interactif. Nous avons d'abord envisagé des techniques assez lourdes, sous forme d'une installation avec système de reconnaissance de formes pour automatiser le rapport visiteur/robot.
En faisant un état de l'art de l'Intelligence Artificielle sur le web, nous sommes tombés sur des pages, assez nombreuses, permettant le dialogue avec un robot appelé "Chatterbot", littéralement "Robot de tchatche" ! Cette expérience fut assez bluffante pour nous donner envie de l'utiliser et d'y participer.
Le potentiel de visiteurs étant énorme sur Internet, notre robot pourra s'enrichir rapidement des échanges avec les visiteurs.

Remarque : ce robot n'apprend pas réellement en dialoguant avec les visiteurs. L'historique de chaque conversation est enregistré et le webmaster peut à l'aide d'une interface appropriée choisir les questions les plus fréquemment posées, débusquer les impasses dans les conversations et améliorer la pertinence de son Robot tout en conservant les caractéristiques de sa personnalité, ce qui assurera la cohérence du système. Ce système est dit "à superviseur humain".

What's in a bot ?

Nous avons pour ce projet, utilisé Program E, une version PHP/MySQL du moteur d'ALICE, ceci pour des raisons de compatibilité avec la majorité des usagers d'aujourd'hui sur le web. Je rappelle que le principe même de ce projet repose sur des technologies Open-Source - et donc partageables - et que c'est de celles-ci qu'il tire sa force !

A notre avis, la partie à développer qui pourrait le plus faire progresser cette technologie est le développement d'une interface d'éducation du Robot…
Cela consiste à inventer un mode de représentation des connaissances acquises et un module de discussion avec le Robot, permettant au créateur/utilisateur, de la manière la plus transparente et intuitive possible, de créer son propre Bot facilement. Il faut, pour se rendre compte de l'intérêt de cet outil, imaginer que ce seront plusieurs méga-octets de texte qui vont être entrés dans la base de données !!! Sans l'aide de la machine, aucun humain ne pourrait s'y retrouver au bout de quelques jours…
A notre avis, l'idéal serait d'apprendre au Robot comme à un jeune enfant, en accumulant les données, même contradictoires parfois, sous forme de conversations (babillages) simples en se laissant guider par le moment et en fuyant toute tentative d'exhaustivité, qui au final donnerait un système expert de plus !

Perspectives

Voici quelques idées d'application de ce genre de système

- Une hôtesse virtuelle pour guider les visiteurs d'un site web : ceci est déjà fait (par ex: Gaz de France) et ne présente à nos yeux qu'un attrait dû à la nouveauté. Dans le même genre d'idées, un Robot qui nous aiderait à formuler nos requêtes sur un moteur de recherche (il connaît la structure de la base de données lui !), me paraît bien plus stimulant : à la manière d'une conversation entre humains, au cours de laquelle, les sujets s'enchaînent de manière fluide, les idées recueillant l'adhésion des participants étant développées, alors que meurent spontanément celles qui ennuient une majorité des personnes présentes ;-)

- D'un point de vue pédagogique, on peut considérer que la manière d'apprendre est aussi intéressante que ce qu'on apprend : on peut ainsi garder un historique du dialogue étudiant/robot qui pourrait s'avérer riche d'enseignements pour le formateur.

- Un nouveau territoire pour l'Art, un "art de construction de la personnalité".
Par exemple : créer un Robot à son image pour reprendre l'exercice traditionnel du portrait. Quelle ne sera pas notre surprise de se retrouver face à une machine empreinte de nos tics de langage ;-)
Parler avec soi-même = penser…

- Ce système peut être porté par d'autres technologies que le web, par exemple les SMS sur les téléphones mobiles. On pourra bien sûr adapter un module de reconnaissance de la parole.

retour