Le site de la distanciation

Activités d'enseignement
Passions

Ecrire à
Jean-Luc Michel

Articles de vulgarisation

Chapitre "Articles"

Le système expert K2 : c'est deux fois mieux

 

Après Turbo Expert (Icônes n°16), nous poursuivons notre panorama des systèmes experts et entamons ce mois-ci l'examen d'un système réellement professionnel, au moins par ses fonctionnalités et son prix.
Comme on va le voir, l'accroissement des performances n'a rien à voir avec  celui des tarifs. Avec K2, produit par G+M, à qui l'on doit aussi ADN Concept et Samba Pomme, on entre de plain pied dans le domaine des logiciels hautement performants, mais non exempts d'importants défauts. Qui achète des générateurs de systèmes experts ? Sûrement des lecteurs d'Icônes 
, mais vraisemblablement pas avec leurs propres deniers. Si Turbo Expert est à la portée de toutes les bourses ou presque, il n'en est pas de même de K2 et des prochains générateurs que nous étudierons. Seuls des services de recherche de grandes entreprises peuvent pour le moment se les offrir, et surtout financer ce qui va avec, c'est-à-dire la formation afférente et l'assistance bienveillante, mais très onéreuse, d'un cogniticien performant, d'un “accoucheur de savoir” efficace. Le marché est encore extrêmement étroit, d'où les prix fort élevés, supérieurs à 15000 F et pouvant atteindre 35000 F. Le leitmotiv des vendeurs d'informatique est d'apporter des solutions. Mais avec les générateurs de systèmes experts, on en est loin. On vend plutôt des outils pour poser des problèmes aux acheteurs. Ensuite, on vend des aides pour les aider à les résoudre. Enfin, quand tout va bien, on vend ces aides à d'autres professionnels du même domaine.


Toutes proportions gardées et toutes choses différentes par ailleurs, acheter en 1989 un générateur de système expert fait penser à l'acquisition d'un bon vieux langage du genre du Basic dans le début des années quatre-vingt. On s'offrait la machine et le logiciel pour piloter des séquences d'ordres simples (Print ou Input !) et on essayait de bricoler une application convenable au prix de nombreux tâtonnements et d'encore plus de nuits blanches. Avec un générateur de systèmes experts, on commande l'organisation de la connaissance ou du savoir, donc du pouvoir, et au prix des mêmes tâtonnements, on peut espérer sortir une bonne simulation de raisonnement.


Les systèmes experts, c'est comme un drogue. Lorsqu'on y à  goûté une fois, on a du mal à s'en passer, tellement il est fascinant de “sentir” l'ordinateur “réfléchir”… A condition d'être déjà un expert bien sûr. Mais expert en quoi, voilà la question. D'une part tous les savoirs ne sont pas sûrement pas formalisables, d'autre part, certaines informations exigent d'être captées par l'intermédiaire d'interfaces spécialisées qui exigent de grands travaux de programmation. A l'heure actuelle, les plus grosses applications d'intelligence artificielle, ou plutôt de “décision assistée par ordinateur” sont réalisées en programmation originale, avec des langages spécialisés, comme notre Prolog national (choisi par les Japonais dans leur projet de machines de cinquième génération).


Dans ce paysage, les générateurs de systèmes experts occupent un étroit créneau pour le moment, mais une partie non négligeable de leurs utilisateurs sait bien qu'ils ont une puissance pédagogique ou plutôt maïeutique considérable. Ils obligent l'expert à se “distancier” de son savoir, à réfléchir sur son organisation, bref à optimiser ses connaissances. Cette discussion nous conduirait très loin, notamment en direction des plus récentes recherches en sciences cognitives. Nous y reviendrons un jour. La puissance de K2 Développé par un programmeur solitaire, K2 offre de nombreuses fonctions avancées, essentiellement la notion de module de règles s'appelant les uns les autres en fonction de l'avancement de l'expertise. On peut ainsi segmenter sa connaissance en blocs semi-indépendants qui n'apparaissent qu'au bon moment. Le gain est double : vitesse de traitement accrue (on passe en revue moins de règles) et vitesse de développement augmentée (en “dichotomisant”, on va plus vite). De plus, des “annexes” permettent d'adresser des ressources typiques du Macintosh ou des interfaces extérieures. A priori, K2 pourrait piloter un processus industriel ou des interfaces audiovisuelles ou télématiques (via Samba Pomme par exemple). La richesse de la logique Alors que Turbo Expert ne connaissait qu'au maximum six prémisses et une conclusion, sans passation de variables (logique propositionnelle d'ordre zéro), K2 offre un feu d'artifices de fonctions dont la compréhension logique et la mise en œuvre ne sont toutefois guère évidentes. Il est d'ordre zéro+, c'est-à-dire qu'il admet des variables globales (par exemple le “nombre de sorties au cinéma par mois”), mais sans quantificateur d'unification : il ne donne pas la liberté d'employer une métavariable “loisirs” pouvant correspondre alternativement à “cinéma”, “théâtre” ou “match de foot ball”. On peut certes se contenter d'une utilisation de premier niveau (calcul propositionnel, simples prémisses et conclusions uniques), mais ce serait dommage d'en rester là.
Outre un “sinon” bien pratique et permettant d'éviter de négativiser des règles et de se tromper dans de subtiles négations de négations, K2 reconnaît deux types de prémisses (appelées simplement “hypothèses”). Ainsi, la proposition “vous allez moins de deux fois au cinéma par mois” peut-elle rester une simple hypothèse modifiable  par la suite, par exemple lors d'une autre phase du dialogue (en demandant au système de poser la question correspondante et en lui laissant ajouter une structure interrogative paramétrable du genre “est-ce que”) ou devenir un fait non modifiable quel que soit le reste de l'expertise. K2 permet aussi de ne considérer qu'une hypothèse est vraie que si une action afférente et programmée a été effectuée (le système en demande alors confirmation). L'intérêt est évident en expertise mécanique : “Démonter le clapet du carburateur” peut être un préalable indispensable à la suite de l'analyse. Il est possible de poser des “drapeaux” pour savoir où l'on en est, et même si les habitués de la programmation trouveront ceci trivial, car on aboutit au même résultat en créant une règle tautologique qui ne ne fait que manifester son existence, preuve que le moteur d'inférence l'a bien activée, ces petits “trucs” vous rendront la vie plus facile lorsque vous dépasserez les quelques dizaines de règles des exemples standardisés. La gestion des variables Une autre différence énorme avec Turbo Expert tient à la possibilité de définir des variables entières ou réelles (par exemple l'âge ou toute autre quantité exprimée avec une unité spécifiable). Ceux de nos lecteurs qui ont fait l'effort de suivre nos explications dans Icônes n°16 seront récompensés en voyant immédiatement l'intérêt : grâce aux variables globales, K2 sait poser une question comme un bon vieux Basic et décider de la suite à donner (à condition que des règles lui indiquent quoi faire!). Ajoutons enfin que les prémisses et les conclusions sont en nombre illimité dans chaque règle. En fait, on sera bien inspiré de ne pas en abuser sous peine de se perdre dans un écheveau abominable. Sauf exception, mieux vaut définir plusieurs règles simples et suffisamment hiérarchisées (en jouant sur des coefficients d'importance bien choisis) que peu de règles trop touffues. C'est d'ailleurs pourquoi la logique dite du premier ordre est extrêmement difficile à manipuler en raison de son hyperformalisation (quantificateurs logiques).


On retrouve la même puissance avec les conclusions. Elles peuvent déclencher des interrogations, assigner un but à atteindre en obligeant le système à poser les questions correspondantes dans sa table logico-sémantique, voire oublier une hypothèse jugée un peu douteuse après coup. Cette faculté d'oubli, typiquement humaine, nous paraît être une fonction intellectuellement excitante mais difficile à mettre en œuvre sans déclencher des effets pervers incontrôlables et des paradoxes de Langevin en cascade : que se passe-t-il si l'on supprime la prémisse qui a fait aboutir à la conclusion de supprimer celle-ci ? Autoréférence ou incomplétude, les ennuis commencent… Les points positifs Comme ceci vient d'être montré, K2 est puissant, tellement puissant que pour en tirer toute la richesse, il vaut mieux faire appel à un dompteur sous la forme d'un cogniticien patenté, à moins de se contenter de n'en exploiter que les segments qui semblent les plus pertinents ou les plus simples. Avec les systèmes experts, on ne sent pas encore très bien la différenciation à présent évidente avec des logiciels comme 4D ou Excel : l'utilisateur entraîné parvient à en tirer déjà beaucoup, mais les grosses applications exigent de faire appel à un informaticien spécialiste des procédures ou des macro-instructions.


Après les fleurs, les épines. Elles ne sont pas très grosses, mais il y en a quand même beaucoup. Et le style Mac ? Décidément, les générateurs de systèmes experts ne semblent pas briller par leur prise en compte des immenses avantages du Macintosh. Ou alors, quand ils cherchent à faire du Mac, ils en font trop. Le programmeur de K2 a bien joué avec les menus “Pop Up” : certains sont totalement inutiles et parasitent les commandes quand ils ne s'écartent pas des habitudes Apple (la commande de “Enregistrez sous” s'appelle par un “Pop Up”, c'est trop !). Il y a plein de petits défauts incroyables pour un logiciel de ce prix. La touche “Retour” ne correspond pas toujours au “OK”, la régénération d'écran ne s'effectue pas lorsque l'on agrandit certaines fenêtres, le mode “Trace” ralentit considérablement les affichages. Il n'y a pas toujours d'annulation d'action, par exemple lors de l'effacement d'une règle par la touche de retour arrière (attention aux erreurs de manipulation, elles coûteront cher en temps perdu) et le noircissement d'une série de lignes (en mode simulation) ne permet pas de les copier ou de les coller. Du point de vue de l'affichage, K2 est presque aussi mauvais que Turbo Expert, mais en coûtant 35 fois plus cher. Le presse papier, vous connaissez ? C'est incroyable mais vrai ! Nous avions une version commerciale sur laquelle le presse papier ne fonctionnait pas en externe. Il est impossible de transférer ou de récupérer des textes (par exemple des règles). Il faut l'essayer pour le croire, on n'a plus un Macintosh entre les mains, mais un vieux PC avec une très ancienne bêta-version de Windows. Renseignement pris auprès de G+M, “ce défaut devrait disparaître dans de prochaines versions car il s'agit d'un produit en plein développement”. Mais ce n'est pas tout, en interne, c'est-à-dire au sein même de K2, le presse papier a des réactions curieuses : il est impossible de copier/coller un mot isolé d'une règle. K2 obéit au tout ou rien : toute la règle ou rien. Difficile de faire moins pratique. Des défauts de conception Nous avons renoncé à dresser une liste complète de tous les dysfonctionnements de K2, au demeurant pas trop gênants (sauf l'absence impensable de presse papier). En revanche, pour faire progresser une future grille de critique des générateurs de systèmes experts, nous allons rapidement lister des défauts semblant dus à un grand manque d'ergonomie. Ces logiciels sont encore plus que d'autres sensibles au syndrome du chercheur solitaire qui met au point des procédures puissantes mais absconses, des “trucs” qui ne fonctionnent qu'avec lui. Sur un programme à 500 F, c'est excusable, mais à plus de 15000 F on peut s'interroger et fulminer.


Ainsi, les questions que doit poser le système pour établir des faits et remplir la base de faits doivent être tapées comme des conclusions. Curieuse démarche intellectuelle. D'habitude, on commence une conversation en posant une question, mais dans la logique du système, il s'agit déjà d'une conclusion. 
K2 ne possède aucun module d'analyse syntaxique, et sa lourdeur peut devenir insupportable à la longue, en particulier quand il se révèle incapable d'identifier deux phrases identiques dont seule la première lettre diffère par une majuscule. Il n'y a pas de correction automatique, mais seulement une suggestion d'identification (cf. figure 3), ce qui n'est guère pratique. De même, le texte d'une question et le nom de la variable correspondante doivent être rigoureusement identiques et on ne peut raccourcir une appellation. Etant donné la lenteur de l'accès à l'éditeur, on est certain de perdre des heures à devoir reprendre des règles qui présenteront d'infimes variations orthographiques ou syntaxiques, et au prix de la sueur de cogniticien ou d'expert, la facture risque d'être lourde. Enfin, le mode “Trace” est très lourd, le suivi de l'itinéraire logique n'a pas été optimisé, il n'est pas facile, à partir d'un bon nombre de règles et de modules de s'y retrouver (cf. figure 5) - nous avons d'ailleurs tenté, sans succès, d'adapter une de nos propres expertises types sur K2 mais avons dû y renoncer, en grande partie pour cette raison. Il aurait fallu développer un ensemble logico-sémantique absolument neuf.. On attend toujours un éditeur de texte A voir les éditeurs de texte antédiluviens des générateurs de systèmes experts, on pourrait croire que les cogniticiens rédigent sur papier l'intégralité de leurs règles en prévoyant tous les itinéraires que pourra emprunter le système et se contentent de les taper une à une. En fait, il n'en est rien, et si la réflexion préalable est indispensable (comme en programmation), on a justement inventé les systèmes experts pour pouvoir essayer, tâtonner, procéder de manière heuristique, voire stochastique, au coup par coup erratique. D'où notre habituelle surprise de constater la pauvreté incroyable des éditeurs de règles. K2 ne déroge pas à la règle (!) : on ne peut rien faire, et surtout pas traiter ses textes. Il est impossible de lister à l'écran l'ensemble des règles, de faire des recherches/remplacements ou du copier/coller, de les renommer ou d'atteindre immédiatement la dernière, etc. L'immense force de Turbo Expert était là. On pouvait travailler tranquillement ses règles dans un logiciel de traitement de texte puis les enregistrer en mode “texte” et les récupérer directement dans le système expert. Cette souplesse a la saveur du Paradis perdu de la rusticité. K2 pourrait mieux faire ! Le système expert parfait n'existe toujours pas. K2 est puissant mais pataud, massif et lourd. La bonne idée des modules capables de s'appeler ne peut être exploitée à fond et c'est dommage.  On n'a pas l'impression qu'il a été écrit pour faciliter la vie de l'usager isolé et on sera presque obligé d'y passer des quantités d'heures ou bien de payer beaucoup de suppléments en formation ou en assistance pour en tirer une expertise valable.

Peut-être une prochaine version apportera-t-elle de substantielles améliorations. Aux acheteurs de les exiger. K2 en bref - Développé par Guillaume Doumenc.
- Système expert d'ordre zéro+.


- Nombre de règles illimité.
- Nombre de prémisses illimité par règle.
- Nombre de conclusions illimité par règle.
- Structuration par modules semi-indépendants.
- Grande richesse des variétés d'hypothèses et de conclusions.
- Paramétrage de la validité des règles (de 0 à 100%).
- Base des faits (des assertions) non communicable à d'autres logiciels (en mode texte).
- Base des connaissances (des assertions) non communicable à d'autres logiciels (en mode texte).
- Chaînage avant et arrière (déduction, induction).
- Dictionnaire des prémisses.
- Possibilité de ponctuer les règles.
- Aide en ligne sur la disquette.
- Fonctions classiques des systèmes experts (ajout, suppression de règles).
- Translation de règles possible mais difficile.
- Pas de gestion correcte des affichages (ascenseurs, cases d'agrandissement, etc.).
- Pas d'analyseur de syntaxe.
- Pas de presse papier externe. Presse papier interne insuffisant. 15000 F HT, protégé, mode d'emploi de 65 pages et deux exemples d'expertise.  Editions G+M. Ce prix inclut une demi-journée de formation. Serveur télématique d'assistance en 3616. Possibilité d'intervention de cogniticiens. Légendes des figures Figure 1 : Avec K2, les questions doivent figurer dans les conclusions des règles. Il faut s'y faire… “cinéma par mois” est compris comme une variable. Le mot “indiquez” est envoyé par le système. Les chiffres entre parenthèses donnent le coefficient de vraisemblance de la règle ou la conclusion (ici 100%). Figure 2 :
 
Règle activée par le dialogue de la figure. On remarque la richesse de définition (expression, forme négative, appel de module, question, variable, etc.). Figure 3 : K2 est très sourcilleux sur les majuscules, d'où des ralentissements importants et des risques d'erreurs si l'on a un grand nombre de règles. On ne peut “copier” séparément un des mots de la phrase, ce qui est insupportable. Figure 4 :
 
Exemple d'appel d'un module. Le symbole “=” indique la présence d'une variable. On remarque sa lourdeur. On ne peut la raccourcir ou employer une abréviation et on ne peut non plus la copier séparément. Figure 5 :
 
Le mode “Trace” en action. Il ralentit considérablement les affichages et la redéfinition des fenêtres est désespérément lente. La régénération d'écran ne s'effectue pas bien comme on le remarque en bas à droite. Dans le dialogue d'expertise, on repère une assez grande arborescence. L'utilisateur ne peut hélas taper un mot-clé correspondant à son problème, par exemple “consommation d'huile”, mais doit se plier à la logique du système. L'exemple fourni avec K2 n'est pas extraordinairement convaincant pour un bon programmeur de Pascal ou même de Basic. Figure 6 : Phases d'un dialogue et indications données à l'opérateur.
Figure 7 :
 
Figure 8 :
 
L'exemple fourni avec K2 paraît bien séduisant, mais il est loin d'être encore au point. C'est dommage et cela ne donne pas grande confiance à l'utilisateur de base. Profitons-en pour remercier un aimable contradicteur à qui nous avons donné la parole dans Icônes n°17 (“Intelligence artificielle et erreur humaine”, p. 76). Sa lettre appelle les observations et réponses suivantes :


A.        La brochure qu'il cite bien sommairement pour un universitaire spécialiste de la question (il existe des normes très strictes pour les citations) est actuellement introuvable au CNRS, et que le ministère de la Recherche et de l'Industrie n'existe plus sous cette forme depuis 1986. Il s'agit de toute évidence d'une série de recommandations à caractère général et en aucun cas d'un ouvrage scientifique faisant autorité en la matière.


B.        Notre contradicteur indique  lui même que la dénomination des ordres dits “Zéro+” est fluctuante. Ne dit-il pas que “ces formalismes Zéro+ n'ont pas un cadre logique très étudié”. Par définition, ils sont entre “Zéro” et “Un”. De plus, il précise bien qu'ils tolèrent des “items valués”, ce qui correspond très exactement à la possibilité d'attribuer des surcodages aux règles (ou “coefficients d'importance ou de relativisation”). En logique propositionnelle (ordre zéro), les règles ne contiennent que des constantes, en logique des prédicats (ordre un) elles contiennent des variables. “Entre les deux”, les générateurs de systèmes experts tentent d'offrir le maximum de souplesse en “référançant” les valeurs : c'est ce que nous nommons “coefficients d'importance” et  qui est exactement la même chose. Peut-être notre contradicteur a-t-il lu “coefficients de vraisemblance” en pensant à certains “gadgets” de pondération de déclenchement des règles. Et l'accusation un peu outrancière de notre spécialiste tombe d'elle même.


C.        Les exemples cités par notre spécialiste ne paraissent pas d'une clarté évidente. Ils rappellent trop les sempiternelles règles toujours reprises dans les modes d'emploi. Les systèmes experts permettent de traiter d'autres questions que des interrupteurs à éteindre ou des commandes thermostatées. L'ambition d'Icônes est de clarifier toutes ces notions pour ses lecteurs, sans leur faire perdre leur temps avec des débats de chapelle.


D.        Enfin, la maladresse de formulation de la présentation du PRC (Programme de recherches concertées) qui “rassemble les meilleurs chercheurs de l'Université et du CNRS dans ce domaine” prête à sourire. Qui décide quels sont les meilleurs chercheurs ? Un  (bon) système expert sans doute !                                                                          Jean-Luc MICHEL
                                                                         

Jean-Luc MICHEL

Retour Haut de page

Commentaire

Second article expliquant l'intérêt des systèmes experts.

Dans ma naïveté, je croyais qu'ils allaient connaaîtr ele succès.

Hélas, non, malgré leurs qualités.

C'est triste car on pouvait et on peut faire des choses extraodianires avec, en particulier des sujets liés à la psychologie.

 

Auhjourd'hui on parle d'Intelligence articielle (IA). Avec ces programmes, on en faisait assez facilement dans les années 1980…