Vous êtes sur la page 1sur 9

Chapitre2

La représentation des connaissances

1- Introduction
Un système d’IA associe deux aspects imbriqués :
− Bases de connaissances
− Mécanismes d’exploitation de ces connaissances (raisonnement)

Ces connaissances sont :


− Permanentes ou temporaires
− Précises ou floues
− Certaines ou incertaines
− Évolutives au cours du temps

Pour exploiter des connaissances :


− Il faut choisir un formalisme de représentation de ces connaissances
− Ce formalisme doit permettre au raisonnement de produire de nouvelles
connaissances

Une représentation de connaissances est dite :


− déclarative si elle est indépendante de leur exploitation future.
− procédurale si elle contient leur mode d’emploi

Il y a plusieurs modes de représentation des connaissances en IA :


− Représentations logiques
− Règles de production
− Réseaux sémantiques
− Objets structurés (frames, scripts)

2- Représentations logiques
C’est un langage symbolique issu des logiques mathématiques, il permet de formuler des
descriptions sous une forme proche du langage courant et en même temps représentable dans
un langage de programmation. Il y a des logiques classiques (ordre 0, 1, 2, …) et d’autres non
classiques (modale, temporelle, floue).

2-1- Logique des propositions ( logique propositionnelle / logique d'ordre zéro)


Le calcul des propositions est une théorie assez simple, mais ayant une utilité
fondamentale notamment dans la réalisation des systèmes d'IA. Le calcul des
propositions permet la manipulation d'assertions ainsi que la création de nouvelles
assertions à partir des anciennes ("Il fait beau" est une assertion). Il étudie des énoncés
qui sont soit vrais, soit faux. La manipulation et création d'assertions repose sur la règle
(P & (P  Q))  Q dite de "modus ponens".
Il fait beau
S'il fait beau alors il ne pleut pas
 il ne pleut pas

Vocabulaire :
Le langage d’ordre zéro est composé de symbole propositionnels (P, Q, …), de
connecteurs logiques et symboles auxiliaires ( ( , ) , , ). Il existe un ensemble infini
dénombrable de propositions (ou atome) et cinq connecteurs listés dans ce tableau dans
l’ordre de priorité. Un atome (ou formule atomique) est un symbole propositionnel autre
que T et F. Un littéral est une proposition ou la négation d'une proposition.

a. Syntaxe :
Les formules sont des assemblages par juxtaposition de connecteurs et de propositions.
Une formule bien formée (f.b.f) du calcul de propositions est définie récursivement
comme suit :
1. Un atome est une f.b.f.
2. Si G est une f.b.f alors 7G est une f.b.f.
3. Si F et G sont des f.b.f alors FoG est une f.b.f. (o désigne un connecteur binaire)

b. Sémantique :
La sémantique est l'ensemble des lois d'interprétation des formules. Interpréter une
formule consiste à lui attribuer l'une des deux valeurs de vérité T ou F. Domaine
sémantique = {T, F}.

c. Définitions :
 Une interprétation i est une fonction qui associe à toute proposition p une valeur
de vérité. On étend cette notion à la formule. Une interprétation I d’une formule G
est l’affectation d’une valeur de vérité à chacun des atomes de G
 Une formule G est dite vraie dans une interprétation ssi G est évalué à T dans cette
interprétation. Autrement, G est dite fausse dans cette interprétation.
 Une interprétation qui rend vraie une formule est dite un modèle de cette formule.
 Une formule est dite valide ssi elle est vraiedans toutes ses interprétations. Une
formule est invalide si elle n’est pas valide.
 Une formule est dite inconsistante (ou insatisfiable ou contradictoire) ssi elle est
fausse dans toutes ses interprétations. Une formule est dite consistante ou
satisfiable ssi elle n’est pas inconsistante.
 On dit que B est une conséquence logique de F1, F2, …, Fn ssi
− F1 ^ F2 ^ … ^ Fn  B est valide
ou bien
− F1 ^ F2 ^ … ^ Fn ^ 7B est inconsistante

 Une formule normale conjonctive (FNC) est sous la forme F1 ^ F2 ^ … ^ Fn où


les Fi sont des disjonctions de littéraux. Exemple.
 Une formule normale disjonctive (FND) est sous la forme F1 v F2 v …v Fn où
les Fi sont des conjonctions de littéraux. Exemple.

Exercice :
Compléter les assertions suivantes :
Si une formule est valide alors elle est …………………… L’inverse est faux.
Si une formule est …………………….. alors elle est invalide. L’inverse est faux.
Une formule est valide ssi sa négation est …………………….
Une formule est inconsistante ssi sa négation est …………………

d. Equivalences (formules ayant la même interprétation)

¬(¬P) équivaut à P
P ⇒ Q équivaut à (¬P) ∨ Q
Lois de Morgan :
¬(P∧Q) équivaut à ¬P ∨ ¬Q
¬(P∨Q) équivaut à ¬P ∧ ¬Q
Commutativité du ET et du OU
Distributivité du ET par rapport au OU et vice versa
Associativité du ET et du OU
Contraposée de l'implication : P ⇒ Q équivaut à ¬Q ⇒ ¬P

Exple : Ecrire (p ^ q) v (r ^ s) sous FNC


1.((p ^ q) v r) ^ ((p ^ q) v s)
2.( p v r) ^ ( q v r) ^ ((p ^ q) v s)
3.( p v r) ^ ( q v r) ^ ( p v s) ^ ( q v s)

e. Règles d’inférence
Nous avons besoin de règles d'inférence pour tirer des conclusions.

Modus Ponens
Si P et P⇒Q alors on déduit Q.

Modus Tollens
Si ¬Q et P⇒Q alors on déduit ¬P.

Enchaînement
Si P⇒Q et Q⇒ R alors on déduit P⇒R.
2-2- Logique des prédicats
Le calcul des propositions est trop pauvre pour représenter des activités du monde réel.
La logique du premier ordre introduit les notions de variables et de quantificateurs.
Tout directeur a un vélo
(‫׊‬X) (directeur (X)  (‫ ׌‬Y) vélo (Y) & possède (X,Y))
Les modes d'inférences sont le modus ponens et la spécification universelle. Celle-ci
consiste à substituer une variable quantifiée par une constante.

a. Vocabulaire :
L'alphabet de la logique des prédicats est constitué de :
- Un ensemble dénombrable de symboles de prédicats à 0, 1, ou plusieurs
arguments, notés A, P, ..., homme, mortel, père, ... p, q, r
- Un ensemble dénombrable de variables d'objets (ou variables d'individu),
notées x, y, z, x1, x2, ...
- Un ensemble dénombrable de fonctions à 0, 1, ou plusieurs arguments, notées f,
g, ... , père-de, ..., socrate
- les quantificateurs
- les connecteurs ainsi que les symboles auxiliaires de l’ordre 0

b. Syntaxe :
- Terme :
o toute variable est un terme
o f(t1,...,tn) est un terme si f est une fonction à n arguments et t1,...,tn sont
des termes

- Formule : Si p est un prédicat à n arguments et t1,...,tn sont des termes alors


p(t1,...,tn) est une formule atomique. L'ensemble des formules (ou formules
bien formées) de la logique des prédicats est alors défini de la même manière
qu'en logique propositionnelle, en rajoutant une clause pour les quantificateurs
: (Q x A) est une formule si Q est un quantificateur, x une variable et A une
formule f.b.f

c. Quantificateurs

On appelle instanciation ou substitution, s={x/b}, le fait de substituer une variable à une


constante.

Existentiel

- Forme générale : ∃ <variables><phrase>


Exemple : « Il y a quelqu'un de bizarre dans l'amphi » : ∃ x est-dans(x, amphi) ^
bizarre (x)
- ∃ x P(x) est équivalent à la disjonction d'instanciations de P.
Exemple : domaine fini de 2 individus Marco et Paula, ∃x, heureux(x) est
équivalent à heureux(Marco) ∨ heureux(Paula)
Universel

- Forme générale : ∀ <variables><phrase>


Exemple : « Toute personne dans cet amphi est intelligente » : ∀x est-dans(x,
amphi)  intelligent (x)
- ∀x P(x) est équivalent à la conjonction d'instanciations de P.
Exemple : domaine fini de 2 individus Marco et Paula, ∀x, ∀y, aime(x,y) est
équivalent à aime (Marco,Marco) ∧ aime(Paula,Paula) ∧ aime(Paula,Marco) …

d. Formalisation de phrases

Exemples :
Prédicats utilisés : champignon(x), violet (x) et empoisonnant (x).

− Tous les champignons violets sont empoisonnants.


∀x (champignon(x) ^ violet(x))  empoisonnant(x)
− Aucun champignon violet n'est empoisonnant.
∀x (champignon(x) ^ violet(x))  ~empoisonnant(x)
− Tous les champignons violets sauf un sont empoisonnants
∃x (violet(x) ^ champignon(x) ^ ~empoisonnant(x)) ^ (∀y, (violet(y) ^
champignon(y) ^ ~égal(x,y)) -> empoisonnant(y))

Non-unicité de la traduction
Souvent, il y a plusieurs manières de traduire :
Exemple :
Chacun aime sa mère :
1.∀x ∀y mère(y,x)  aime(x,y) ici, mère est prédicat
2.∀x aime(x, mère(x)) ici, mère est fonction
Quelle est la bonne représentation? Les deux ! C'est l'application qui pourrait en rendre
une plus appropriée que l'autre.

e. Règles d’Inférence
Modus ponens
Supposons que les deux expressions suivantes soient vraies :
Plumes (Dahu)
∀x, Plumes(x)  Oiseau(x)
On a donc par instanciation de x par Dahu : Plumes(Dahu)  Oiseau (Dahu)
D'après le Modus Ponens, on démontre que : Oiseau(Dahu).

2-3- Autres logiques


D’autres logiques offrent une extension des opérateurs de quantification. Les systèmes
modaux rajoutent des quantifications comme : « il est possible » ou « il est nécessaire ».
L’aspect temporel est traité par ailleurs sous forme de label symbolique associé à un
événement représentant des instants ou des durées. Le champ des logiques est tellement
vaste qu’il constitue à lui seul tout un domaine d’activité scientifique. Cependant la
logique floue est celle ayant le plus grand essor industriel à ce jour.
3- Représentation par les règles de production

3-1- Syntaxe des règles


< MG >  < MD >
Membre Gauche Membre Droite
Condition d’utilisation de la règle Conséquence ou conclusion de la règle

Si <condition> alors <conséquence>


Exemple : Si x est un avion alors x vole

3-2- Système de production


Définition
Un système de production est constitué d’un ensemble de règles de production qui permettent
à partir d’un état du problème donné de générer un ensemble d’états que l’on peut atteindre. Il
comporte :
- Une base de règles : BR
- Une base de faits : BF
- Un moteur d’inférence : MI : qui incarne un mécanisme de raisonnement en
exploitant les règles.
Exemple :
BR : Si vent fort alors drapeau rouge
Si vent moyen alors drapeau orange

Si drapeau rouge alors non bain
Si drapeau rouge alors non voile

Si non bain et non voile alors cinéma

BF : Vent fort ( mémoire de travail, mémoire à court terme)


MI :  mécanisme algorithmique chargé de manipuler la BC (BR + BF) dans une situation
de consultation donnée

3-3- Mécanisme de raisonnement


Le moteur d’inférence fonctionne suivant un régime à trois phases :
- Phase 1 : phase de détection : consiste à définir parmi l’ensemble des règles de la BR,
les règles potentiellement applicables en tenant compte de l’état de la mémoire de
travail (BF).
Résultat : ensemble de règles applicables

- Phase 2 : phase de choix ou résolution de conflits : consiste à choisir parmi les règles
applicables, les règles à appliquer effectivement selon une stratégie de choix donnée
(dans l’ordre de l’écriture de la BR / au hasard, selon les coefficients de priorité sur les
règles / règle dont al condition utilise les faits les plus récemment déduits).
Résultat : une règle à appliquer

- Phase 3 : phase de déduction : appliquer la règle choisie et mettre à jour la BF

Le moteur d’inférence exécute ces trois phases de façon cyclique jusqu’à ce qu’une
condition d’arrêt soit vérifiée. Elle peut être :

- Objectif atteint
- Epuisement de toutes les connaissances

Rq : S’il existe des variables, la même règle peut être appliquée plusieurs fois,
sinon une seule fois.

3-4- Approches de raisonnement


Soit la BC suivante :
BR : BF : {B,C}
R1 : B^D^E  F
R2 : B^G  A
R3 : C^F  A But : H
R4 : B  X
R5 : D  E
R6 : A^X  H
R7 : C  D
R8 : X^C  A
R9 : X^B  D

a. Approche par chainage avant


C’est un raisonnement dirigé par les données. Elle consiste à trouver une solution
déductive. Le sens d’utilisation d’une règle est MG  MD

Stratégie de choix : ordre de l’écriture de la BR.


N° Inférence Détection Choix Déduction
1 R4, R7 R4 BCX
2 R7, R8, R9 R7 BCXD
3 R5, R8, R9 R5 BCXDE
4 R1, R8, R9 R1 BCXDEF
5 R3, R8, R9 R3 BCXDEFA
6 R6, R8, R9 R6 BCXDEFAH
But atteint

b. Approche par chainage arrière


C’est un raisonnement dirigé par le but. Elle consiste à trouver une solution inductive.
Le sens d’utilisation d’une règle est MG  MD. Le choix de la règle est motivé par
l’objectif à atteindre. C’est une stratégie de déclenchement des règles qui concluent
sur le but.
Exemple :

BR : BF : {A,B}
R1 : A  C
R2 : A^D  E
R3 : B^C  E But : F
R4 : E  F

Arbre ET/OU

c. Approche par chainage mixte


Hybrider les deux approches précédentes : réaliser une partie de la recherche par chainage
avant et le reste par chainage arrière.

3-5- Les systèmes experts


- Un SE est un sustème à base de connaissances. C’est un ensemble de programmes
capables de reproduire la démarche d’un expert humain confronté à un problème
dans son domaine de compétences.
- On utilise un SE quand le domaine est complexe et les techniques de résolution sont
fortement liées au savoir faire de l’expert.
- Les SE suivent une approche déclarative contrairement à l’approche algorithmique.
Pour la programmation classique, le code contient la logique du problème et les
principes de résolution). Pour un SE, la spécificité du problème est contenue dans la
connaissance. La particularité des systèmes experts réside dans la séparation entre
raisonnement et connaissances. D’où la simplicité de son évolution.
- Un SE est composé de 5 modules :
o Base de règles (BR) : mémoire à long terme : connaissances formalisées sous
forme de règles de production.
o Base de faits (BF) : mémoire de travail liée aux informations spécifiques au
problème.
o Moteur d’inférences (MI) : mécanisme d’exploitation de la base de
connaissances. Ce module peut éventuellement poser des questions à l’utilisateur
pour raffiner sa requête afin de proposer la réponse la plus pertinente.
o Interface Expert : elle sert à implanter l’expertise et alimenter la BR.
o Interface Utilisateur : elle permet à l’utilisateur de communiquer avec le SE.

Rq : Les experts sont assistés par des cogniticiens (ingénieurs de la connaissance) pour
l’extraction, la formalisation et le stockage des connaissances dans la BC.

Vous aimerez peut-être aussi