• Aucun résultat trouvé

L'intelligence artificielle

IX. 2 Représenta tion des connaissances

IX.2.2 Représentation déclarative

IX.2.2.1 Logique du premier ordre

La plus ancienne forme de représentation des connaissances en intelligence artificielle est la logique. Elle est définie par sa syntaxe qui permet, d'une part, d'exprimer la connaissance sur le monde réel sous la forme d'asser-tions et, d'autre part, de créer de nouvelles assertions grâce à des règles d'inférences. Une assertion, appelée proposition, peut prendre deux valeurs, vrai ou faux. Par exemple, on pourra dire Je corbeau est noir ou le corbeau est rose. On peut exprimer des propositions plus complexes, en les combinant au moyen des lois de l'algèbre booléenne. Les opérateurs logiques définissant ces combinaisons sont : /\(et), v(ou), , (non), --->(implique) et

168 CHAPITRE IX. L'INTELLIGENCE ARTIFICIELLE

Par exemple, si les deux propositions suivantes sont vérifiées :

• si le gel manque d'albumine, alors le patient est malade,

• le gel manque d'albumine,

alors on peut conclure que Je patient est malade.

Le calcul des prédicats est une extension du calcul des propositions qui permet de représenter des objets, ainsi que des relations entre des classes d'objets. On introduit les notions de variables et de quantificateurs. Les variables permettent de déterminer un objet, tandis que les quantificateurs limitent la portée des variables. On distingue le quantificateur universel V signifiant quelque soit et le quantificateur existentiel =3 signifiant il existe.

De plus, on définit le prédicat qui est un qualificatif pour les variables.

Par exemple, la phrase tous les oiseaux ont des ailes s'exprimera VX oiseau(X) --+ a-des-ailes(X),

X est une variable, oiseau() et a-des-ailes() des prédicats.

Prenons un exemple plus complet. Soient les propositions suivantes : 1. Marcus était un homme.

2. Marcus était Pompéien.

3. Tous les Pompéiens étaient romains. 4. César était un empereur.

5. Tous les romains étaient soit loyaux envers César, soit ils le haïssaient.

6. Chacun est loyal envers quelqu'un.

7. On essaie d'assassiner un empereur uniquement si on n'est pas loyal envers lui.

Représentation des connaissances 169

8. Marcus a essayé d'assassiner César.

Formellement, on écrira :

1. homme(Marcus) 2. pompéien(Marcus)

3. \IX pompéien(X) -, romain(X) 4. empereur(César)

5. \IX romain(X) -, loyal-envers(X, César) V hait (X, César) 6. \fX:lY loyal-envers (X, Y)

7. \fX\fY empereur(Y) /\

a-essayé-d'assassiner(X, Y) -, , loyal-envers(X, Y) 8. a-essayé-d'assassiner(Marcus, César)

Par cette courte description, on comprend la difficulté de prouver, par exemple:

, loyal-envers(Marcus, César)

Le lecteur trouvera une bonne description de ce problème dans [Rei47). En logique du premier ordre, seules les variables sont quantifiables.

Lorsque les prédicats le sont aussi, on parle de logique d'ordre 2, 3, ...

La logique du premier ordre est à la base du langage PROLOG [CKPR73).

170 CHAPITRE IX. L'INTELLIGENCE ARTIFICIELLE IX.2.2.2 Règles de production

Les règles de production sont la forme de représentation des connaissances la plus utilisée dans les systèmes experts (section IX.3). L'idée première,

2. les faits, qui décrivent la connaissance spécifique au domaine, 3. l'interpréteur, qui applique les règles aux faits connus, pour créer de

nouveaux faits. L'interpréteur cherche un fait connu qui corresponde à la partie gauche d'une règle, et déclenche cette dernière en exécutant l'action contenue dans sa partie droite.

La simplicité de ce mécanisme explique la popularité qu'a connu ce mode de représentation en intelligence artificielle. Les systèmes de produc-tions ont été utilisés pour décrire la manière dont une personne effectue un certain travail, et pour modéliser, en psychologie, le fonctionnement du raisonnement humain. La modularité de la base de connaissances est un avantage majeur des règles de production, les connaissances pouvant être ajoutées ou modifiées facilement et indépendamment du programme.

Un autre avantage est l'uniformité de la représentation, chaque règle ayant strictement la même forme. Enfin, la structure naturelle des règles facilite la compréhension. Elles expriment assez fidèlement, semble-t-il, le mode de raisonnement humain. Parmi les désavantages, mentionnons la surcharge du système, due à la structure uniforme de la base de données. Lorsque la base de connaissances est grande, le temps d'exécution devient souvent trop long.

Représentation des connaissances

meuble

siège fait- artie ___ ,_ai_t-,_pa_rt_ie _ _ _ dossier

est-un

moi

---=.Je..;;;;.;=...::...-~

ma-chaise-- - - -couleur

----est-un recouvert-de

personne

Figure IX.1: Un réseau sémantique

171

Le premier système de productions a été proposé par Post [Pos43].

Pour une implantation d'un tel système, on attendra toutefois Waterman [Wat70], Shortliffe [Sho76] et Davis [DBS77].

IX.2.2.3 Réseaux sémantiques

Les réseaux sémantiques ont été développés par Quillian [Qui68] et Ra-phael [Rap68], afin de représenter le sens des mots anglais. Un réseau sémantique est un graphe orienté et pondéré, où les noeuds contiennent l'information et les arcs représentent les relations entre les noeuds. Le réseau de la figure IX.1 en est un exemple typique.

Dans cette figure, l'arc est-un joue un rôle prépondérant. Il exprime l'héritage hiérarchique entre deux noeuds. Ainsi, on voit avec quelle facilité on peut manipuler des connaissances sur de telles dépendances.

Le réseau sémantique est un mode de représentation naturel dans les

do-172 CHAPITRE IX. L'INTELLIGENCE ARTIFICIELLE

_ M _ ar _ c _ u _ s ____ _ es_t-_ u - n _ _ _ _ ~ homme

Figure IX.2: Réseau sémantique pour Homme(Marcus)

maines possédant une taxinomie complexe. D'autres arcs permettent de représenter les propriétés des objets. L'arc fait-partie indique, dans notre exemple, que la chaise a comme propriété d'être composée d'un siège et d'un dossier. Les autres propriétés (couleur, appartenance) sont également représentées par des arcs.

On remarquera que la connaissance indiquée dans la section IX.2.2.1 peut tout-à-fait être décrite par un réseau sémantique. Par exemple, la phrase Marcus est un homme exprimée en logique du premier ordre par

Homme(Marcus)

sera représentée par le réseau sémantique de la figure IX.2, que l'on peut aussi écrire

est-un(Homme, Marcus).

Les réseaux sémantiques ont surtout été utilisés dans les approches formelles de la représentation des connaissances, ainsi que dans les systèmes de compréhension du langage naturel [Qui68,Sim73,Kay73,Hen79]. Les con-naissances relationnelles sont facilement représentées dans ce formalisme, mais il est ardu, à cause de leur fragmentation, de fournir des explications.