DEUXIEME CHAPITRELA LOGIQUE FLOUE
Fiction en guise d'introduction
Dans l'avion qui vous ramène des sports d'hiver, vous décrochez votre téléphone de poche et vous entrez en communication avec votre ordinateur domestique. "C'est moi, dites-vous dans le combiné, bien persuadé que l'ordinateur vous reconnaîtra, peux-tu mettre en marche le chauffage ?" Sur la réponse affirmative de votre correspondant, vous enchaînez : "Tu le mets assez fort, parce qu'il fait froid. Enfin, pas trop fort, mais plus fort que pas assez fort. Tu as compris ?" Nouvelle approbation de votre correspondant. Rassuré, vous coupez la communication. Science fiction ? Pas tout-à-fait. Des ordinateurs capables de reconnaître la voix humaine existent. Mais le plus surprenant est encore d'avoir une machine capable de comprendre des phrases comme "c'est moi" ou "assez fort", "pas trop fort" etc. Et pour réaliser cette opération que nous faisons sans nous en rendre compte en permanence, les logiciens ont dû développer un nouveau concept, celui de logique floue, une logique capable de comprendre les ambiguités du langage naturel. Beau paradoxe quand on sait que la tâche essentielle de la logique pendant 23 siècles fut précisément d'éliminer les à peu près ou les approximations du raisonnement humain.
Socrate est un homme, tous les hommes sont mortels, donc Socrate est mortel. Bonne vieille logique classique inventée par Aristote au IIIème siècle avant Jésus-Christ et dont Kant, 21 siècles plus tard, dira qu'elle est "close et achevée". I1 est vrai qu'après plusieurs dizaines de siècles de stagnation, on pouvait raisonnablement penser que la logique était dans sa forme définitive et ne connaîtrait plus que quelques progrès de détails. Mais voilà que, dans les années 1870, un mathématicien du nom de Frege lance un pavé dans la mare en proposant un nouvel idéal aux mathématiciens : je demande, et c'est en cela que je vais plus loin qu'Euclide, que toutes les méthodes d'inférence qu'on utilise soient spécifiées à l'avance. Un tel idéal exige l'emploi d'un symbolisme. Bien sûr, les mathématiques de l'époque utilisaient déjà un symbolisme très élaboré. Mais le raisonnement s'exprimait, lui, dans le langage ordinaire, avec toutes les approximations que cela suppose. C'est pourquoi la sécurité d'un tel raisonnement n'est jamais assurée. Frege cherche donc à établir un langage absolument dépourvu d'ambiguïtés, de telle sorte que tout raisonnement puisse être ramené à l'application de formules. Son système va mettre en ébullition le petit monde de la logique. Et pourtant, la solution de Frege ne résiste pas à l'épreuve du temps : moins de trente ans après sa parution, le jeune mathématicien-philosophe Bertrand Russel l met en évidence l'existence d'une contradiction dans le système. Paradoxalement, c'est cette faille du système qui déclenche l'activité fébrile des chercheurs. Et ce qu'ils trouvent va provoquer une révolution qui, restée discrète pendant cinquante ans, prend aujourd'hui les dimensions d'un ras de marée, par le biais de l'informatique.
Le barbier
En 1918, Russell expose un paradoxe connu sous le nom de paradoxe du barbier. Dans un village, un barbier rase tous les hommes qui ne se rasent pas eux-mêmes. On peut en effet supposer que les hommes qui savent manier le rasoir n'ont pas besoin du barbier. Jusqu'ici, aucun problème. Mais, demande Russell, qui rase le barbier ? S'il se rase lui-même, il contrevient à la loi qui stipule qu'il rase seulement ceux qui ne se rase pas eux-mêmes. Inversement, s'il ne se rase pas lui même, il viole la règle selon laquelle il doit raser tous les hommes qui ne se rasent pas euxmêmes. Pour le logicien, la réponse est simple, l'existence d'un tel barbier est impossible. Simple amusement ? Pas tout-à-fait. C'est à cause d'un raisonnement analogue que le système de Frege s'est effondré et que Russell a développé une théorie originale pour éviter les failles de ce genre.
Les choses tournèrent au cauchemar le jour où Gödel et Church démontrèrent chacun de leur côté les limites de tous les systèmes formels. Sans rentrer dans le détail disons simplement que tout système susceptible de contenir la théorie des nombres contient des propositions énonçables selon les règles du système mais dont on ne peut savoir si elles sont vraies ou fausses. Il est en outre impossible faire la liste de toutes ces propositions. En clair, tout système a besoin de quelque chose à l'extérieur de lui pour garantir sa vérité. Ce principe s'applique en particulier aux mathématiques, ce qui signifie que personne ne peut démontrer que les mathématiques sont un système cohérent.
La machine de Turing
De quoi donner des sueurs froides à tous les scientifiques : imaginons un instant que les mathématiques contiennent une contradiction. Cela signifierait qu'elles sont fausses. Et toute la belle science qui s'enseigne dans nos belles universités et qui permet de faire fonctionner nos belles machines deviendrait tout d'un coup caduque. Tout ça à cause de l'aveuglement des mathématiciens. "Ce n'est tout de même pas possible", pense Allan Turing dans les années 40. Et pour essayer de résoudre ce problème il invente sa célèbre machine (le modèle de tous les ordinateurs actuels) : simplement pour apporter une réponse aux questions dérangeantes des logiciens. Hélas, Turing se rendit compte que, non seulement les logiciens avaient raison mais qu'en outre sa machine ne pourrait jamais calculer certains nombres. En clair, il a buté sur l'existence de nombre non calculables. Aujourd'hui, non seulement tout le monde admet aujourd'hui l'existence de ces nombres mais c'est devenu une astuce classique pour démontrer la fausseté d'une proposition . si une proposition résout le problème des nombres non calculables, cette proposition est fausse. A partir de 1950, les choses évoluèrent de plus en plus vite : il se produit aujourd'hui annuellement plus de chose en logique qu'il ne s'en est produit entre Aristote et 1950 !
Qu'est-ce qui peut bien expliquer cet engouement pour cette discipline aride ? D'abord, elle pose des problèmes philosophiques complexes. Ensuite, elle a réveillé les mathématiciens de leur sommeil dogmatique. Enfin, elle est la base de l'informatique. En clair, tout langage informatique est un système logique. Il serait donc désastreux pour la totalité de l'informatique que l'on découvre une faille dans la logique. Les langages formels, en effet, sont des ensembles de formules destinées à donner des instructions à une machine. I1 faut donc démontrer que, quelle que soit la combinaison des symboles donnés, et s'il n'y a pas d'erreur dans la programmation, la machine fera bien ce qu'on lui demande.
Dans le même temps, les possibilités des machines ont donné aux logiciens l'idée d'élaborer des systèmes de plus en plus "bizarres". D'abord on a cherché à faire des systèmes pour engendrer automatiquement des erreurs. L'Université de Paris VIII, par exemple, s'est illustrée par la création d'une "machine à condamner à mort", c'est-à-dire une machine à explorer les éventuelles contradictions du code pénal. Imaginons en effet que le code pénal contiennent une contradiction cela signifie que tout individu est potentiellement coupable. Des recherches sont aussi en cours pour fabriquer un apôtre automatique, un générateur de plaisanteries etc.
A côté de ces recherches folkloriques que n'auraient pas désavouées Queneau, figurent aussi des recherches plus "sérieuses" sur la logique temporelle ou sur la logique floue. "Ces systèmes sont extraordinaires, raconte un étudiant de l'Université de Paris VIII, grâce à eux nous aurons enfin des ordinateurs qui feront des erreurs." L'intérêt de fabriquer de telles machines ? "Eh bien lorsque nous y parviendrons, poursuit-il, nous aurons des engins proches de l'être humain. Et si les machines savent se tromper, elles sauront aussi faire preuve d'intuition voire d'imagination. L'évolution passe par l'erreur".
Numériser l'ambiguïté
Qu'est-ce que la logique floue ? Un concept qui permet à des informations ambiguës d'être transformées en valeurs numériques. Là où l'ordinateur classique, qui repose sur une logique binaire ne peut traiter que des données spécifiques et précises, la logique floue permet de traiter des données comme "un peu plus près°", "plus chaud", "assez fort" etc. Tout commence dans les années 70 quand Lofti Zadeh, de l'Université de Californie, constate que la plupart des informations dont nous disposons sont ambiguës et qu'une bonne partie de notre activité est fondée, non pas sur des certitudes absolues mais sur une intuition de ce qui est hautement probable. Son idée est assez simple : apprendre ce type de raisonnement, illogique mais typiquement humain, à une machine. I1 est poussé dans cette direction par les premiers travaux en Intelligence Artificielle, notamment dans le domaine des systèmes experts, ces systèmes censés être capable de remplacer un expert humain dans un domaine très spécialisé. Malheureusement, le savoir de l'expert n'est pas constitué de données théoriques rigoureuses. Au contraire, l'expert est celui qui a de l'expérience, c'est à dire qu'il sait tempérer les certitudes de l'école par le flou de la réalité. I1 sait en outre prévoir ou deviner ce qui va se passer, alors même qu'il dispose de données incomplètes.
Lofti Zadeh s'attaque au problème. Il s'agit de créer un "moteur d'inférence" c'est-à-dire la partie logique d'un système expert, obéissant à des règles très strictes, mais capables de s'adapter à la relative incertitude touchant les connaissances qui sont entrées dans la machine. Au lieu d'être réduite à deux, le vrai et le faux, le nombre de valeurs de vérité devient potentiellement infini. Chaque donné reçoit un coefficient de vraisemblance, également appelé poids d'évidence, qui peut prendre n'importe quelle valeur entre 0 et 1.
Curieusement,ce ne sont pas les Américains qui ont été les premiers à utiliser la logique floue à l'échelle industrielle. Les Japonais se sont montrés les pionniers dans ce domaine, surtout pour la reconnaissance des formes et la robotique. Dans une usine automatisée, par exemple, la logique floue peut accomplir les tâches jusqu'ici réservées aux ouvriers spécialisés : elle sait utiliser des informations ambiguës et apporter le genre de réponse qui vient habituellement de l'expérience. Nishinbo Industries, par exemple, a développé un mélangeur de couleur qui sait reconnaître de subtiles distinctions comme "un peu plus sombre","un poil plus bleu" ou "avec un soupçon de blanc". L'application la plus connue est celle du métro de Sendai au Japon, opérationnel depuis trois ans. Le système à contrôle flou fait tout ce que peut faire un conducteur de train, à commencer par le démarrage, en passant par le contrôle de la vitesse quand il est en mouvement, jusqu'à l'arrêt en station. Inutile de se demander s'il y a encore un pilote dans le métro la réponse est non, la machine veille à tout. L'intérêt du système de Sendai est qu'il utilise un système de contrôle flou et prédictif, ce qui signifie qu'il peut prédire la conséquence vraisemblable d'une situation donnée. Par exemple, il "sait" ce qui se passe si le frein est actionné lorsque le train avance à une certaine vitesse. Il choisit les meilleures réponses possibles en fonction de cette prédiction. A la différence d'un conducteur humain, surtout d'un débutant, des trains flous ne font pas d'arrêt brutaux à la station et ne dépassent pas les quais. Les passagers peuvent donc espérer une conduite plus souple.
Mais ce n'est pas seulement dans des champs spécialisés de l'industrie que ce type de logique est en train de connaître une grande expansion. Le mot "flou" est en train de devenir une banalité au Japon maintenant que les grands de l'électronique mettent sur le marché des appareils domestiques avec des noms comme "day fuzzy" (jour flou). La plupart de ces appareils domestiques utilisent des senseurs pour capter un grand nombre de données ambiguës qu'un microprocesseur avec un programme flou va manipuler pour déterminer la réaction appropriée. Les machines à laver flou font fureur à Tokyo. Elles choisissent automatiquement le niveau d'eau, le cycle de lavage et le temps de lavage à partir des données recueillies par des
senseurs concernant le poids de la charge, le type de crasse et le type de lessive à utiliser. "Il ne s'agit pas vraiment de logique floue, explique Xavier Lefranc, de l'Université de Paris VII, c'est l'intox japonaise !
L'électronique qui est derrière est tout-à-fait classique : c'est toujours du 01. En revanche les Japonais sont très forts pour créer des interfaces qui donnent l'impression que la machine comprend le flou. Nous ne savons pas, pour l'instant, gérer du hard avec trois états. C'est trop complexe. On se borne à traduire des situations floues en logique binaire. C'est déjà très bien."
Dernier grand domaine de la logique floue, la reconnaissance des formes. Combien de temps mettez-vous à reconnaître votre femme ou votre mari ? Non seulement vous le faites en moins d'une seconde 10 5, mais encore vous êtes capable de reconnaître la personne même si elle a changé de coiffure, de vêtements, bref, si elle a considérablement changé d'apparence. Comment faire pour qu'une machine puisse reconnaître un visage ? Nous en sommes loin. Mais déjà, des résultats commencent à poindre dans la reconnaissance des signaux radars. Les militaires poussent évidemment ce genre de recherche. Gageons qu'ils n'en deviendrons pas flous pour autant.
Applications industrielles
La logique floue peut aussi être utilisée pour introduire des capacités visuelles dans un processeur à l'intérieur d'un robot domestique. Des robots utilisant une telle logique pourrait sans doute reconnaître une scène compliquée, par exemple une personne dormant dans un lit, chose aujourd'hui impossible avec nos techniques actuelles d'intelligence artificielle.
La logique floue prédictive a été développée par Seiji Yasunobu pendant qu'il travaillait sur le système Sendai avec Hitachi, qui a réalisé le métro automatique. Yasunobu est maintenant directeur de division au Laboratoire de recherche internationale en ingénierie floue, une organisation de 49 compagnies qui a été établie sous l'égide du MITI (Ministry of International Trade and Industry).
A l'origine, les applications de la logique floue impliquent qu'on utilise un hard classique et un soft flou. Le développement, par un nombre croissant d'entreprises comme Omron, de puces qui peuvent manipuler des inférences floues a élargi la sphère des applications à des domaines comme l'électronique grand public où des traitements plus rapides sont nécessaires. La machine de Matsushita choisit entre 600 différents cycles. Et celle d'Hitachi est également capable de repérer la qualité du vêtement.
Les mesures floues sont également bien adaptés au contrôle de la température. Le "Beaveer Warp Inverter Air Conditionner 65", développé par Mitsubishi peut maintenir une température plus constante que celle des thermostats habituels. Le système repose sur l'utilisation de 50 règles floues telle que "s'il y a un tout petit changement de température, laisser la machine en l'état.
Les machines à air conditionné habituelles, si le thermostat est réglé à 24 Celsius, fonctionnent jusqu'à ce que la température de la pièce atteigne ce niveau. Dès qu'il est atteint, elles s'arrêtent et ne se remettent en marche que si la température baisse de manière significative. Un contrôle flou permet à la machine de moduler cette distinction de telle sorte que le radiateur ne soit pas successivement allumé et arrêté, mais qu'il soit réduit, pour maintenir la température "autour" de 24 . Mitsubishi affirme que le système a en outre l'avantage de baisser la quantité d'énergie requise par 76% par rapport aux systèmes binaires. Tout simplement parce que la logique floue évite les seuils arbitraires.
Les machines qui reposent sur un système classique vont comprendre le concept de chaud comme signifiant, par exemple, tout ce qui est d'une température supérieure à 40 . Tout le reste sera défini comme "non chaud". La logique floue, en revanche, module le concept en "plutôt chaud" ou "pas si chaud" etc. Un autre domaine prometteur dans lequel les Japonais ont introduit la logique floue est celui des systèmes experts. Dans le domaine des investissement technologiques, par exemple, plusieurs compagnies ont développé des systèmes qui utilisent la logique floue pour faire des décisions à partir de données comme des prix de gros, des prix et des taux de change que les experts utilisent pour prendre des décisions.