• Aucun résultat trouvé

VIl.3.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 asserd'asser-tions 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 le 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

=

(équivalent).

La logique du premier ordre repose sur la règle d'inférence dite du modus ponens qui stipule que si deux propositions de la forme X et

X ----, Y respectivement sont vraies, alors la proposition Y est vraie. Plus

formellement, on écrira :

(X J\ (X----, Y)) ----, Y.

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 le 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

Représentation des connaissances 69 limitent la portée des variables. On distingue le quantificateur universel \:/

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

\:/X 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.

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

Formellement, on écrira : 1. homme(Marcus) 2. pompéien(Marcus)

3. \:/X pompéien(X) - romain(X) 4. empereur(César)

70 CHAPITRE VII. MELANIS - ANALYSE ET INTERPRÉTATION

5. VX romain(X) -+ loyal-envers(X, César) V hait (X, César) 6. VX3Y loyal-envers (X, Y)

7. VXVY 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 [Rei4 7].

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].

Vll.3.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 VII.4). L'idée première, développée par Newell et Simon [NS72], est que la base de connaissances contient des règles de la forme condition-action : si fait, alors action. Par exemple:

Si il pleut, alors sortir lès parapluies est une règle de production.

Un système fonctionnant selon ce principe comporte en général trois parties :

1. les règles de production,

Représentation des connaissances 71

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.

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].

VII.3.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 phrases et mots anglais. Un réseau sémantique est un graphe orienté et pondéré, où les noeuds contien-nent l'information et les arcs représentent les relations entre les noeuds. Le réseau de la figure VII.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

72 CHAPITRE VII. MELANIS - ANALYSE ET INTERPRÉTATION

meuble

est-un

fait- artie _ _ ,_ai_t-p.__a_rt_ie _ _ _ dossier

est-un

moi

est-un recouvert-de

personne

Figure VIl.l: Un réseau sémantique

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-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 VIl.3.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 VIl.2, que l'on peut aussi écrire

est-un(Homme, Marcus).

Représentation des connaissances 73

_M_ar_c_u_s _:-__ es_t-_un _ _ ---9414 homme

Figure VIl.2: Réseau sémantique pour 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.

VIl.3.3 Représentation mixte