Série 7 Systèmes experts solution
Exercice 1 : Soit un système expert contenant la BC ci-dessous. Vérifier le fait à démontrer
en chainage Avant.
Base de faits : A C D F
Base de règles : R1 R2 R3 R4
R1 : si E C alors B
R2 : si A D alors E
R3 : si A B F alors G
R4 : si C D alors F
Faits à prouver : FP={G F} ?
Solution :
Rappel de l’algorithme du chainage avant:
Entrée : une base de faits BF, une base de règles BR, un fait F à prouver
Sortie : la base de faits BF transformée
Algorithme du Chainage Avant
Début
Tant que F n'est pas dans BF et QU'il existe dans BR une règle applicable
faire
choisir une règle applicable R de BR /* étape de résolution de conflits (ensemble
de règles), utilisation d'heuristiques, de métarègles*/
BR = BR - R (désactivation de R)
BF = BF + conclusion(R) /* déclencher règle R, sa conclusion est rajoutée à la BF*/
fait
Si F appartient à BF
Alors F est établi
Sinon F n'est pas établi
Fsi
Fin
Base de faits : A C D F
Base de règles BR : R1 R2 R3 R4
R1 : si E C alors B R2 : si A D alors E
R3 : si A B F alors G R4 : si C D alors F
Faits à prouver FP: {G F} ?
(conflit= ensemble des règles applicables (dont la pré condition est dans la BF))
BF={A C D F}
cycle1 : BR={R1,R2,R3,R4} conflit={R2, R4}, /* FP∉ BF et conflits non vide*/
On applique R2 BF={A C D F E}
cycle 2 : BR={R1,R3,R4} conflit ={R1, R4} /* FP∉ BF et conflits non vide*/
On applique R1 BF={A C D F E B}
Cycle 3 : BR={R3,R4} conflit = {R4, R3} /* FP∉ BF et conflits non vide*/
On applique R4 BF={A C D E B F}
Cycle 4 : BR={R3} conflit={R3} /* FP∉ BF et conflits non vide*/
On applique R3 BF={A C D E B F G} /* FP∈ BF alors on sort*/
FP ∈ BF alors succès.
Master IL IL USTHB 2023/2024
Exercice 3 : Soit un système expert ayant comme BR les règles données par le tableau :
N° Règle Si Alors
1 ABC H
2 AUC F
3 EGB S
4 DG C
5 AE B
6 UST F
7 GH R
8 DE T
9 RSH F
10 AU B
Soit la Base de Faits BF={ADEG} et les Faits à Prouver FP={F}
En chainage Avant : BF={ ADEG} (en gras dans la BF : ce qui est ajouté)
cycle N° règles dans la BR Conflit Règle à appliquer BF
1 1 2 3 4 5 6 7 8 9 10 R4 R5 R8 R4 ADEGC
2 1 2 3 5 6 7 8 9 10 R5 R8 R5 ADEGCB
3 123 6 7 8 9 10 R1 R3 R8 R1 ADEGCBH
4 23 6 7 8 9 10 R3 R7 R8 R3 ADEGCBHS
5 2 6 7 8 9 10 R7 R8 R7 ADEGCBHSR
6 2 6 8 9 10 R8 R9 R8 ADEGCBHSRT
7 2 6 9 10 R9 R9 ADEGCBHSRTF
8 Succès FP ∈ BF
Master IL IL USTHB 2023/2024
Soit un système expert ayant comme BR les règles données par le tableau :
N° Règle Si Alors
1 ABC H
2 AUC F
3 EGB S
4 DG C
5 AE B
6 UST F
7 GH R
8 DE T
9 RSH F
10 AU B
Soit la Base de Faits BF={ADEG} et les Faits à Prouver FP={F}
Sous forme d’arbre : Tous les nœuds sont en « ou »
BF={ADEG}
ou
R4 R5 R8
ADEGC
ou
R5 R8
ADEGCB
ou
R1
R3 R8
ADEGCBH
ou
R3
R7 R8
ADEGCBHS
ou
R7
R8
ADEGCBHSR
ou
R8
R9
ADEGCBHSRT R9 ADEGCBHSRTF succès FP={F} ∈ BF
Master IL IL USTHB 2023/2024
En chainage Arrière :
entrée : BF, BR, un ensemble FP de faits à prouver sortie : la base de faits transformée BFT
Algorithme chainage Arrière
tant que FP ≠ Ø
faire extraire (en l'effaçant) un fait f de FP
si le fait f est absent de la base de faits BF
alors S=ensemble des règles concluant sur f /*ens de conflits (de règles)*/
si S ≠ Ø alors ‘a’ = choix d'une règle de S
prouver tous les faits pré condition de ‘a’
si ‘a’ est applicable
alors appliquer la règle ‘a’
finsi finsi fsi
fait
Exercice 2 : Soit BF = {B,C}, Fait à prouver FP ={H} et BR composée des règles :
R1) Si B D E alors F R2)Si G D alors A R3) Si C F alors A
R4)Si B alors X R5) Si D alors E R6)Si X A alors H
R7)Si C alors D R8)Si X C alors A R9) Si X B alors D
Prouvez que H se déduit de la base de connaissances en chainage Ar. En chainage
arrière, lorsqu’on veut prouver un fait H, on regarde les règles qui concluent sur H.
Master IL IL USTHB 2023/2024
N° Règle Si Alors
1 ABC H
2 AUC F
3 EGB S
4 DG C
5 AE B
6 UST F
7 GH R
8 DE T
9 RSH F
10 AU B
BF={ADEG} FP={F}
Cycle 1 : f=’F’, Conflit = {2 6 9} alors déclencher 2 alors FP = {A U C }
Cycle 2 : f=’A’, A ∈ BF alors FP = {U C }
Cycle 3 : f=’U’, conflit= {} alors échec alors Retour Ar vers cycle1 FP={F} et conflit={6 9}
Cycle 4 : f=’F’, conflit={6 9} déclencher 6 alors FP={U S T}
Cycle 5: f=’U’, conflit={}, alors échec alors Retour Ar vers cycle1 FP={F} et conflit={9}
Cycle 6 : f=’F’, conflit={9}, déclencher 9 alors FP={R S H}
Cycle 7 : f=’R’, conflit={7}, déclencher 7 alors FP={G S H}
Cycle 8 : f=’G’, G ∈ BF alors FP={S H}
Cycle 9 : f=’S’, conflit={3} alors déclencher 3 alors FP={E G B H}
Cycle 10 : f=’E’, E ∈ BF alors FP={G B H}
Cycle 11 : f=’G’, G ∈ BF alors FP={B H}
Cycle 12 : f=’B’, conflit={5 10} alors déclencher 5 alors FP={A E H}
Cycle 13 : f=’A’, A ∈ BF alors FP={E H}
Cycle 14 : f=’E’, E ∈ BF alors FP={H}
Cycle 15 : f=’H’, conflit={1} alors déclencher 1 alors FP={A B C}
Cycle 16 : f=’A’, A ∈ BF alors FP={B C}
Cycle 17 : f=’B’, conflit={5 10} alors déclencher 5 alors FP={A E C}
Cycle 18 : f=’A’, A ∈ BF alors FP={E C}
Cycle 19 : f=’E’, E ∈ BF alors FP={C}
Cycle 20 : f=’C’,conflit={4} alors déclencher 4 alors FP={D G}
Cycle 21 : f=’D’, D BF alors FP={G}
Cycle 22 : f=’G’, G ∈ BF alors FP={}
FP={} alors succès
Master IL IL USTHB 2023/2024
Sous forme de Graphe et/ou :
BF={ADEG} FP={F} (en gras ≡ ∈ BF)
N° Règle Si Alors
1 ABC H
2 AUC F
3 EGB S
4 DG C
5 AE B
6 UST F
7 GH R
8 DE T
9 RSH F
10 AU B
F BF={ADEG}
ou
R2 R6 R9
et et et
A U C U S T R S H
ok Echec échec et et
Et
G E G B C
ok ok ok ou et
A R5 R10
ok
et inutile
A E D G
Ok ok ok ok
Master IL IL USTHB 2023/2024