• Aucun résultat trouvé

Le "General Problem Solver"

Dans le document Les systèmes de connaissances (Page 77-81)

Aspects fonctionnels

5.2.1. Le "General Problem Solver"

C'est à Simon et Newell qu'on doit les premières tentatives formalisées de décrire des mécanismes intellectuels, dans le but de décrire ce que nous appelons l'aspect phénoménologique de la connaissance sur l'axe sémantique, à savoir les stratégies que met en œuvre l'intelligence humaine pour utiliser des données sémantiques. Cette utilisation sera vue, en dehors de phénomènes cognitifs qui semblent plus complexes comme par exemple la compréhension du langage, dans l'optique de résoudre un problème donné. C'est d'ailleurs dans ces termes que les auteurs parlent du sujet, puisqu'il porte le nom générique de résolution de problème (problem solving). L'entreprise de Simon et Newell est clairement psychologique, leur proposition se veut valide en tant qu'un modèle psychologique de la pensée humaine. Ils vont même plus loin en affirmant que "la plupart des théories de psychologie prendront la forme de programmes d'ordinateurs, ou de spécification qualitative de programmes" ([Simon 58] cité dans [Ganascia 90] Chap. 4 § 4.2.5.1). Cette affirmation audacieuse peut aujourd'hui prêter à sourire, mais elle fondait une approche nouvelle du traitement de la connaissance. C'est sur cette ambition qu'est né le programme GPS (General Problem Solving) ([Newell 63], [Newell 72]), commencé en 1957 et dont la version finale fût réalisée en 1969. Ce logiciel était le premier à séparer les méthodes générales de résolution et les connaissances spécifiques.

GPS se décompose conceptuellement en deux sections. La première dont l'objectif est "l'analyse du problème et sa réduction en un problème plus élémentaire" (directement implémentée dans le code du programme) et la seconde ayant pour but "l'application de règles spécifiques du calcul des propositions" (implémentée comme des données). Cette décomposition conceptuelle existait déjà dans un précédent logiciel LT (the logic theorist) [Newell 72] réalisé par les mêmes personnes. Cependant elle n'était pas effective dans la programmation de ce dernier, où ces deux sections étaient totalement imbriquées.

Dans GPS la description conceptuel du monde où doit se résoudre le problème posé est construite de la façon suivante :

- la donnée d'un ensemble d'états que peut prendre le système considéré,

- la donnée d'un ensemble d'opérateurs, qui permettent de changer les états du système. Un opérateur peut être structurellement décrit dans le système GPS par trois listes. La première est une liste de conditions utilisées pour déterminer s'il est possible d'appliquer l'opérateur. Ces conditions portent essentiellement sur l'état du système. On peut les considérer comme des conditions d'application qui, lorsqu'elles sont vérifiées, permettent d'appliquer l'opérateur à la situation dans laquelle se trouve le système. La deuxième liste et la troisième fournissent les modifications à apporter à l'environnement c'est-à-dire à l'état du système, lorsque l'opérateur est appliqué. L'une donne l'ensemble des propositions à retrancher de la description de l'état, les retraits, et l'autre donne l'ensemble des propositions à ajouter à cette même description, les ajouts.

Pour donner un exemple, reprenons des éléments de signification attachés à un système de feux de circulation, tels qu'ils ont été élaborés dans le chapitre 2. Nous caractériserons ces données par des expressions portant sur les valeurs de l'accélération (G) et de la vitesse (V) d'un véhicule. La description des états et des opérateurs est donnée dans les figures 5.1 et 5.2.

Etat du système Caractérisation Passage V > 0 G > 0 Arrêt V > 0 G < 0 Attente V = 0 G = 0 Départ V = 0 G> 0

Figure 5.1. Description des états du système

Opérat eur

Conditions Retraits Ajouts

Ralenti r G > 0 ou G = 0 G > 0 ou G = 0 G < 0 S'arrête r G < 0 ou G = 0 G < 0 et V> 0 G = 0 et V = 0 Accélér er G < 0 ou G = 0 G < 0 ou G = 0 G> 0 Piler G > 0 et V> 0 G > 0 et V > 0 G = 0 et V = 0

Figure 5.2. Description des opérateurs du système

Un problème est défini par un état initial, donné par un ensemble de propositions permettant de décrire les différentes composantes du problème avec leurs valeurs au début de la résolution du problème et un état final qui correspond au but qu'on s'est fixé ou à l'objectif qu'on désire atteindre, ce dernier se décrit en terme de propositions de façon analogue à l'état initial.

Dans l'exemple ci-dessus, on peut prendre comme état initial l'état "Passage" (V > 0 et G > 0), et l'état final "Arrêt" (V = 0 et G = 0). Le problème est donc celui posé au conducteur qui désire s'arrêter à une intersection. La difficulté du problème peut se mesurer par une "distance" entre l'état initial et l'état final. Ici, si l'on prend pour distance le nombre de propositions différentes dans les deux états, la distance est de 2 (donc maximum).

La résolution d'un problème ne consiste donc plus qu'à trouver une bonne séquence d'opérateurs permettant de passer de l'état initial à l'état final. Pour cela GPS utilise deux principes fondamentaux : l'analyse

des fins et des moyens (means-ends analysis) qui permet de décider quel opérateur utiliser pour continuer la

résolution, et la résolution récursive qui peut être caractérisée par l'algorithme de recherche de solutions. La résolution du problème se fait par réduction successive de la "distance" entre l'état où le système se trouve et l'état que l'on veut atteindre (le but). Le problème est résolu lorsque cette distance est nulle. On appelle alors solution, la séquence d'opérateurs permettant le passage de l'état initial à l'état final. La résolution de problèmes, mise en œuvre selon ces principes, peut se décrire par un algorithme très général:

1 - Déterminer la distance d qui sépare l'état courant, de l'état final. 2 - Si d = 0

Alors On a une solution et on arrête Sinon 3.

3 - Déterminer l'ensemble des opérateurs qui réduisent la distance d 4 - Choisir un opérateur dans cet ensemble et appliquer l'opérateur choisi 5 - repartir en 1. Passage V > 0 et G > 0 Arrêt V > 0 et G < 0 Attente V = 0 et G = 0 S'arrêter Ralentir Passage V > 0 et G > 0 Piler Attente V = 0 et G = 0 Passage V > 0 et G > 0 Passage V > 0 et G > 0 Attente V = 0 et G = 0 Ralentir Piler Arrêt V > 0 et G < 0 Accélérer

Figure 5.3. Différentes solutions possibles dans la résolution du problème

Si l'on applique cet algorithme au cas ci-dessus, on voit que la manière de choisir l'opérateur adéquat au 4° détermine fortement le type de solution qu'on obtient. Voici par exemple quelques solutions possibles (Figure 5.3), où l'on notera qu'on a pris la réduction de distance au sens large, un opérateur pouvant conserver la distance entre deux états :

Analysons maintenant en termes de stratégie, et non plus de manière algorithmique, la manière de résoudre un problème proposée par le GPS. La résolution d'un problème passe par l'accomplissement des buts suivants :

- Transformer un état A en un état B

- Réduire la différence entre A et B par transformation de A en un autre état A'. - Déterminer un opérateur de réduction adéquat pour transformer A en A'. - Appliquer un opérateur à A permettant sa transformation en A'.

La stratégie du GPS peut donc se spécifier par une hiérarchisation de ces buts, en associant des méthodes associées à ces buts, comme le montre par exemple la figure 5.4. On obtient de cette manière une représentation générique très générale de la manière de résoudre un problème.

C'est sans doute cet exemple qui constitue la première tentative de représenter formellement des mécanismes généraux de certains processus mentaux qui manipulent des connaissances, dans leur composante sémantique et non pas informationnelle. On est loin de donner maintenant une quelconque universalité à ce modèle, à qui l'on peut reconnaître rapidement quelques défauts. GPS permet de réduire un problème en un problème plus élémentaire par le biais d'une action, il ne permet cependant pas la décomposition d'un problème en un ensemble de sous-problèmes. D'autre part, dans GPS, le choix de la stratégie de résolution n'est pas toujours satisfaisant. Prenons le cas d'un problème d'échecs où la solution "évidente" pour un bon joueur est d'effectuer un sacrifice de pièce (la reine par exemple). Le même problème soumis à GPS n'apporterait pas cette solution car GPS ayant une stratégie par réduction de la distance (la distance étant ici mesurée par l'avantage sur l'adversaire en un coup), ne pourrait envisager comme possible la progression de cette distance en sacrifiant la pièce. De même pour les résolutions de problèmes où l'on est obligé de s'écarter d'abord de la solution avant de pouvoir l'atteindre. Un autre inconvénient, lié à la conception même de GPS, est que certains problèmes n'ont pas nécessairement de solution. Dans ce cadre là on peut difficilement formuler l'état correspondant au but à atteindre ! Cela va à l'encontre de la notion même de généralité dont les auteurs ont qualifié leur programme. Notons encore que dans certains cas on peut vouloir approcher un but, même si ce but ne peut être atteint. Il est alors intéressant de trouver une séquence d'opérateurs permettant de parvenir à un état "plus proche" du but recherché que l'état initial. Dans ce cas de figure, GPS ne trouve pas de solution mais il peut être modifié pour conserver l'état le plus proche du but (c'est-à-dire l'état dont la distance par rapport au but à atteindre est la plus petite).

Résoudre un problème

Etat initial (A) Etat final (B)

Tant que A =/= B

Transformer

Etat (A) Etat (B)

Réduire

Etat (A) Etat (A') Transformer Etat (B)

Déterminer l'opérateur de réduction distance(A,B) Etat (A) Appliquer l'opérateur de réduction Etat (A') Etat (A) distance(A',B) < distance (A,B) Op Op(A) = A'

Figure 5.4. Stratégie générale de résolution d'un problème selon GPS

Des comparaisons ont été faites en psychologie pour valider ce modèle de résolution de problèmes. Bien sûr, des lacunes sont apparues (cf.. [Ganascia 90]). Cependant, malgré ses ambitions exagérées, le GPS a prouvé que qu'on "pouvait reproduire artificiellement des activités qui, pour s'accomplir naturellement auraient requis l'intervention d'un être doté d'intelligence [...]. Il rend bien compte de l'activité du sujet en situation de résolution de problèmes, (mais) ce modèle est limité à des situations abstraites" ([Ganascia 90]).

Ce modèle nous intéresse en tant que modèle de traitement de la connaissance dépassant largement le

cadre du traitement de l'information54.

54 "il a [aussi] aidé à éclaircir notre compréhension de l'activité cognitive humaine" ([Ganascia 90] Chap. 4 §

Dans le document Les systèmes de connaissances (Page 77-81)