• Aucun résultat trouvé

Intelligence Artificielle Logique (1/3)

N/A
N/A
Protected

Academic year: 2022

Partager "Intelligence Artificielle Logique (1/3)"

Copied!
86
0
0

Texte intégral

(1)

Intelligence Artificielle Logique (1/3)

Bruno Bouzy

http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr

Licence 3 Informatique

UFR Mathématiques et Informatique

Université Paris Descartes

(2)

Agents logiques

Motivations

Agents fond´es sur lesconnaissances Repr´esentationdes connaissances Processus deraisonnement

⇒ Tirer parti de connaissances grˆace `a une capacit´e `a combiner et recombiner des informations pour les adapter `a une multitude de fins.

Math´ematicien d´emontre un th´eor`eme

Astronome calcule la dur´ee de vie de la Terre

⇒ Environnementspartiellement observables: combiner connaissances g´en´erales et percepts re¸cus pour inf´erer des aspects cach´es de l’´etat courant.

edecin ausculte un patient

Compr´ehension du langage naturel :

“John a vu le diamant `a travers le carreau etl’a convoit´e”

“John a lanc´e un caillou `a travers le carreau etl’a cass´e”

Connaissances desens commun

2 / 59 Intelligence artificielle N

(3)

Agents logiques

Motivations

Agents fond´es sur lesconnaissances Repr´esentationdes connaissances Processus deraisonnement

⇒ Tirer parti de connaissances grˆace `a une capacit´e `a combiner et recombiner des informations pour les adapter `a une multitude de fins.

Math´ematicien d´emontre un th´eor`eme

Astronome calcule la dur´ee de vie de la Terre

⇒ Environnementspartiellement observables: combiner connaissances g´en´erales et percepts re¸cus pour inf´erer des aspects cach´es de l’´etat courant.

edecin ausculte un patient

Compr´ehension du langage naturel :

“John a vu le diamant `a travers le carreau etl’a convoit´e”

“John a lanc´e un caillou `a travers le carreau etl’a cass´e”

Connaissances desens commun

2 / 59 Intelligence artificielle N

(4)

Agents logiques

Motivations

Agents fond´es sur lesconnaissances Repr´esentationdes connaissances Processus deraisonnement

⇒ Tirer parti de connaissances grˆace `a une capacit´e `a combiner et recombiner des informations pour les adapter `a une multitude de fins.

Math´ematicien d´emontre un th´eor`eme

Astronome calcule la dur´ee de vie de la Terre

⇒ Environnementspartiellement observables: combiner connaissances g´en´erales et percepts re¸cus pour inf´erer des aspects cach´es de l’´etat courant.

edecin ausculte un patient

Compr´ehension du langage naturel :

“John a vu le diamant `a travers le carreau etl’a convoit´e”

“John a lanc´e un caillou `a travers le carreau etl’a cass´e”

Connaissances desens commun

2 / 59 Intelligence artificielle N

(5)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

3 / 59 Intelligence artificielle N

(6)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

4 / 59 Intelligence artificielle N

(7)

Agents logiques

Base de connaissances (BC)

Base de connaissances: ensemble d’´enonc´esexprim´es dans unlangage formel

Les agents logiques peuvent ˆetre vus au :

niveau des connaissances: ce qu’ils savent, quelle que soit l’impl´ementation niveau des impl´ementations: structures de donn´ees dans la BC, et les algorithmes qui les manipulent

Approched´eclarativepour construire la base de connaissances Tell: ce qu’ils doivent savoir

Ask: demander ce qu’ils doivent faire. La r´eponse doitesulterde BC

5 / 59 Intelligence artificielle N

(8)

Agents logiques

Agent bas´ e sur les connaissances

Un agent bas´e sur les connaissances doit ˆetre capable de : Repr´esenter les ´etats, les actions

Incorporer de nouvelles perceptions

Mettre `a jour sa repr´esentation interne du monde D´eduire les propri´et´es cach´ees du monde

D´eduire les actions appropri´ees

6 / 59 Intelligence artificielle N

(9)

Agents logiques

Exemple simple d’un agent bas´ e sur les connaissances

Programme agent bas´e sur les connaissances fonction KB-Agent(percept)retourneaction

variables statiques: KB, base de connaissances

t, compteur initialis´e `a 0, indique le temps Tell(KB, Make-percept-sentence(percept,t))

action←Ask(KB, Make-action-query(t)) Tell(KB, Make-action-sentence(action,t)) t ←t+ 1

retourneraction

7 / 59 Intelligence artificielle N

(10)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

8 / 59 Intelligence artificielle N

(11)

Agents logiques

Le monde du Wumpus

Environnement

Agent commence en case [1,1]

Cases adjacentes au Wumpus sentent mauvais

Brise dans les cases adjacentes aux puits

Lueur dans la cases contenant de l’or Tirer tue le Wumpus s’il est en face On ne peut tirer qu’une fois S’il est tu´e, le Wumpus crie Choc si l’agent se heurte `a un mur Saisir l’or si mˆeme case que l’agent Capteurs : odeur, brise, lueur, choc, cri Percepts : liste de 5 symboles

Ex : [odeur, brise, rien, rien, rien]

Actions : tourne gauche, tourne droite, avance, attrappe, tire

Mesures de performance : or : +1000;

mort : -1000;

action : -1;

utiliser la fl`eche : -10

9 / 59 Intelligence artificielle N

(12)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observable

Non. Perception locale uniquement

D´eterministe

Oui

Episodique

Non. S´equentiel au niveau des actions

Statique

Oui. Le Wumpus et les puits ne bougent pas

Discret

Oui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(13)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministe

Oui

Episodique

Non. S´equentiel au niveau des actions

Statique

Oui. Le Wumpus et les puits ne bougent pas

Discret

Oui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(14)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministeOui

Episodique

Non. S´equentiel au niveau des actions

Statique

Oui. Le Wumpus et les puits ne bougent pas

Discret

Oui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(15)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministeOui

EpisodiqueNon. S´equentiel au niveau des actions Statique

Oui. Le Wumpus et les puits ne bougent pas

Discret

Oui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(16)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministeOui

EpisodiqueNon. S´equentiel au niveau des actions StatiqueOui. Le Wumpus et les puits ne bougent pas Discret

Oui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(17)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministeOui

EpisodiqueNon. S´equentiel au niveau des actions StatiqueOui. Le Wumpus et les puits ne bougent pas DiscretOui

Mono-agent

Oui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(18)

Agents logiques

Caract´ erisation du monde du Wumpus

Totalement observableNon. Perception locale uniquement D´eterministeOui

EpisodiqueNon. S´equentiel au niveau des actions StatiqueOui. Le Wumpus et les puits ne bougent pas DiscretOui

Mono-agentOui. Le Wumpus est une caract´eristique de la nature

10 / 59 Intelligence artificielle N

(19)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(20)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(21)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(22)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(23)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(24)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(25)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(26)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(27)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(28)

Agents logiques

Explorer un monde du Wumpus

11 / 59 Intelligence artificielle N

(29)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

12 / 59 Intelligence artificielle N

(30)

Agents logiques

Principe g´ en´ eraux de la logique

Logique: langage formel permettant de repr´esenter des informations `a partir desquelles on peu tirer des conclusions

Lasyntaxed´esigne les phrases (ou ´enonc´es) bien form´ees dans le langage Las´emantiqued´esigne la signification, le sens de ces phrases

Par exemple, dans le langage arithm´etique : x+y= 4 est une phrase syntaxiquement correcte x4y+ = n’en est pas une

2 + 3 = 4 est une phrase syntaxiquement correcte mais s´emantiquement incorrecte

x+y= 4 est vraie ssixetysont des nombres, et que leur somme fait 4 x+y= 4 est vraie dans un monde o`ux= 1 ety= 3

x+y= 4 est fausse dans un monde o`ux= 2 ety= 1

13 / 59 Intelligence artificielle N

(31)

Agents logiques

Relation de cons´ equences

Relation de cons´equences : un ´enonc´ed´ecoule logiquementd’un autre

´

enonc´e : α|=β

α|=βest vraie si et seulement siβest vraie dans tous mondes o`uαest vraie

Siαest vraie,βdoit ˆetre vraie

Par exemple, (x+y= 4)|= (x+y4)

Bases de connaissances = ensemble d’´enonc´es. Une BC a un ´enonc´e pour cons´equence : BC |=α

La relation de cons´equences est une relation entre des ´enonc´es (la syntaxe) bas´ee sur las´emantique

14 / 59 Intelligence artificielle N

(32)

Agents logiques

Les mod` eles

Les logiciens pensent en terme demod`eles, qui sont des mondes structur´es dans lesquels la v´erit´e ou la fausset´e de chaque ´enonc´e peut ˆetre ´evalu´ee mest un mod`elede l’´enonc´eαsiαest vraie dansm

M(α) est l’ensemble de tous les mod`eles deα BC |=αsi et seulement siM(BC)⊆M(α)

15 / 59 Intelligence artificielle N

(33)

Agents logiques

Relation de cons´ equences dans le monde du Wumpus

Situation apr`es avoir effectu´e Rien en [1,1]

Droite Brise en [2,1]

Consid´erer les mod`eles possible pour la base de connaissances en ne

consid´erant que les puits 23= 8 mod`eles possibles

16 / 59 Intelligence artificielle N

(34)

Agents logiques

Mod` eles du monde du Wumpus

17 / 59 Intelligence artificielle N

(35)

Agents logiques

Mod` eles du monde du Wumpus

BC = r`egles du monde Wumpus + observations

17 / 59 Intelligence artificielle N

(36)

Agents logiques

Mod` eles du monde du Wumpus

BC = r`egles du monde Wumpus + observations α1= “[1,2] est sans puits”

17 / 59 Intelligence artificielle N

(37)

Agents logiques

Mod` eles du monde du Wumpus

BC = r`egles du monde Wumpus + observations α1= “[1,2] est sans puits”

BC |=α1, prouv´e parv´erification des mod`eles(model checking)

17 / 59 Intelligence artificielle N

(38)

Agents logiques

Mod` eles du monde du Wumpus

BC = r`egles du monde Wumpus + observations α2= “[2,2] est sans puits”

BC 6|=α2

17 / 59 Intelligence artificielle N

(39)

Agents logiques

Inf´ erence logique

KB`iα: l’´enonc´eαest d´eriv´e deKBpar la proc´edurei

Validit´e(soundness) : i est valide si, lorsqueKB`i αest vrai, alors KB|=αest ´egalement vrai

Compl´etude(completness) : i est compl`ete si, lorsqueKB|=αest vrai, alorsKB`iαest ´egalement vrai

Une proc´edure valide et compl`ete permet de r´epondre `a toute question dont la r´eponse peut ˆetre d´eduite de la base de connaissances

18 / 59 Intelligence artificielle N

(40)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

19 / 59 Intelligence artificielle N

(41)

Agents logiques

Logique propositionelle - syntaxe

Logique propositionnelle = logique tr`es simple

Un´enonc´eest un ´enonc´e atomique ou un ´enonc´e complexe

Unsymbole propositionnelest une proposition qui peut ˆetre vraie ou fausseP,Q,R...

Enonc´es atomiques: un seul symbole propositionnel,vrai oufaux. Appel´e aussi unlitt´eral

Enonc´es complexes:

SiEest un ´enonc´e,¬Eest un ´enonc´e (n´egation)

SiE1etE2sont des ´enonc´es,E1E2est un ´enonc´e (conjonction) SiE1etE2sont des ´enonc´es,E1E2est un ´enonc´e (disjonction) SiE1etE2sont des ´enonc´es,E1E2est un ´enonc´e (implication) SiE1etE2sont des ´enonc´es,E1E2est un ´enonc´e (´equivalence)

20 / 59 Intelligence artificielle N

(42)

Agents logiques

Logique propositionelle - s´ emantique

Un mod`ele : une valeur de v´erit´e (vrai oufaux) pour chaque symbole propositionnel

3 symboles propositionnelsP1,1,P2,2etP3,1

m1={P1,1=Faux, P2,2=Faux, P3,1=Vrai}

nsymboles propositionnels = 2nmod`eles possibles

R`egles pour ´evaluer un ´enonc´e en fonction d’un mod`elem:

¬E est vrai ssi E est faux

E1∧E2 est vrai ssi E1est vraietE2est vrai E1∨E2 est vrai ssi E1est vraiouE2est vrai E1⇒E2 est vrai ssi E1est fauxouE2est vrai E1⇒E2 est faux ssi E1est vraietE2est faux

E1⇔E2 est vrai ssi E1⇒E2est vraietE2⇒E1est vrai Un processus r´ecursif simple permet d’´evaluer un ´enonc´e. Par exemple :

¬P1,2∧(P2,2∨P3,1) =Vrai∧(Faux∨Vrai) =Vrai∧Vrai=Vrai

21 / 59 Intelligence artificielle N

(43)

Agents logiques

Table de v´ erit´ e des connecteurs logiques

P Q ¬P P∧Q P∨Q P⇒Q P⇔Q

vrai vrai faux vrai vrai vrai vrai

vrai faux faux faux vrai faux faux

faux vrai vrai faux vrai vrai faux

faux faux vrai faux faux vrai vrai

22 / 59 Intelligence artificielle N

(44)

Agents logiques

Base de connaissances du monde du Wumpus (simplifi´ e)

Pi,jvrai s’il y a un puits en [i,j]

Bi,j vrai s’il y a une brise en [i,j]

Base de connaissances : R1:¬P1,1

Brise ssi puits dans une case adjacente : R2:B1,1(P1,2P2,1)

R3:B2,1(P1,1P2,2P3,1) R4:¬B1,1

R5:B2,1

BC :R1∧R2∧R3∧R4∧R5

23 / 59 Intelligence artificielle N

(45)

Agents logiques

Base de connaissances du monde du Wumpus (simplifi´ e)

7 symboles propositionnels : 27= 128 mod`eles possibles

B1,1 B2,1 P1,1 P1,2 P2,1 P2,2 P3,1 R1 R2 R3 R4 R5 BC faux faux faux faux faux faux faux vrai vrai vrai vrai faux faux faux faux faux faux faux faux vrai vrai vrai faux vrai faux faux ..

. .. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. . faux vrai faux faux faux faux faux vrai vrai faux vrai vrai faux faux vrai faux faux faux faux vrai vrai vrai vrai vrai vrai vrai faux vrai faux faux faux vrai faux vrai vrai vrai vrai vrai vrai faux vrai faux faux faux vrai vrai vrai vrai vrai vrai vrai vrai faux vrai faux faux vrai faux faux vrai faux faux vrai vrai faux ..

. .. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. .

.. . vrai vrai vrai vrai vrai vrai vrai faux vrai vrai faux vrai faux

24 / 59 Intelligence artificielle N

(46)

Agents logiques

Inf´ erence par ´ enum´ eration

Enum´eration en profondeur d’abord de tous les mod`eles

fonctionTT-Entails(KB,α)retournevraioufaux variables statiques:KB, base de connaissances

α, requˆete, ´enonc´e propositionnel symbolesliste de symboles propositionnels dansKB etα retournerTT-Check-All(KB,α,symboles, [])

fonctionTT-Check-All(KB,α,symboles,modele)retournevraioufaux siEmpty?(symboles)alors

siPL-True?(KB,modele)alors retournerPL-True?(α,modele) sinon retournervrai

sinon faire

PFirst(symboles);resteRest(symboles)

retournerTT-Check-All(KB,α,reste, Extend(P,vrai,modele)) etTT-Check-All(KB,α,reste, Extend(P,faux,modele))

25 / 59 Intelligence artificielle N

(47)

Agents logiques

Inf´ erence par ´ enum´ eration

Algorithmevalideetcomplet Pournsymboles :

complexit´e temporelle enO(2n) complexit´e spatiale enO(n)

26 / 59 Intelligence artificielle N

(48)

Agents logiques

Equivalence logique

Deux ´enonc´es sontlogiquement ´equivalentssi et seulement s’ils sont vrais dans les mˆeme mod`eles :

α≡β⇔α|=β etβ|=α

β) α) commutativit´e de β) α) commutativit´e de ((αβ)γ) γ)) associativit´e de ((αβ)γ) γ)) associativit´e de

¬(¬α) α´elimination de la double n´egation β) (¬β⇒ ¬α) contraposition β) (¬αβ) ´elimination de l’implication

β) ((αβ)α)) ´elimination de l’´equivalence

¬(αβ) (¬α∨ ¬β) De Morgan

¬(αβ) (¬α∧ ¬β) De Morgan

γ)) ((αβ)γ)) distributivit´e de par rapport `a γ)) ((αβ)γ)) distributivit´e de par rapport `a

27 / 59 Intelligence artificielle N

(49)

Agents logiques

Validit´ e et satisfiabilit´ e

Un ´enonc´e estvalides’il est vrai danstousles mod`eles. On dit aussi tautologie

Exemples : vrai;A∨ ¬A;AA; (A(AB))B Th´eor`eme de la d´eduction:

KB|=αsi et seulement si (KB⇒α) est valide Un ´enonc´e estsatisfiables’il est vrai danscertainsmod`eles

Exemples : AB;C

Un ´enonc´e estinsatisfiables’il n’est vrai dansaucunmod`ele Exemple : A∧ ¬A

Satisfiabilit´e :

KB|=αsi et seulement si (KB∧ ¬α) est insatisfiable

28 / 59 Intelligence artificielle N

(50)

Agents logiques

Validit´ e et satisfiabilit´ e

Un ´enonc´e estvalides’il est vrai danstousles mod`eles. On dit aussi tautologie

Exemples : vrai;A∨ ¬A;AA; (A(AB))B Th´eor`eme de la d´eduction:

KB|=αsi et seulement si (KB⇒α) est valide Un ´enonc´e estsatisfiables’il est vrai danscertainsmod`eles

Exemples : AB;C

Un ´enonc´e estinsatisfiables’il n’est vrai dansaucunmod`ele Exemple : A∧ ¬A

Satisfiabilit´e :

KB|=αsi et seulement si (KB∧ ¬α) est insatisfiable

28 / 59 Intelligence artificielle N

(51)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

29 / 59 Intelligence artificielle N

(52)

Agents logiques

M´ ethodes de preuve

Les m´ethodes de preuves sont de deux principaux types : Application des r`egles d’inf´erence

en´eration l´egitime (valide) de nouveaux ´enonc´es `a partir de ceux que l’on a d´ej`a

Preuve: s´equence d’applications des r`egles d’inf´erence ecessite la transformation des ´enonc´es enforme normale V´erification des mod`eles(Model checking)

Enum´eration de la table de v´erit´e (toujours exponentiel enn)

Am´elior´e par backtracking (Davis-Putnam-Logemann-Loveland (DPLL)) Recherche heuristique dans l’espace d’´etat (valide mais incomplet)

30 / 59 Intelligence artificielle N

(53)

Agents logiques

Sch´ emas de raisonnement en logique propositionnelle

Modus Ponens : α⇒β, α

β

Elimination de la conjonction : α∧β

α

Elimination de l’´equivalence : α⇔β

(α⇒β)∧(β⇒α) (α⇒β)∧(β⇒α)

α⇔β

31 / 59 Intelligence artificielle N

(54)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(55)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(56)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(57)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(58)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(59)

Agents logiques

Exemple

R1: ¬P1,1;R2: B1,1⇔(P1,2∨P2,1);R3 : B2,1⇔(P1,1∨P2,2∨P3,1);

R4: ¬B1,1;R5: B2,1

On veut prouver¬P1,2(pas de puits en [1,2]) Elimination de l’´equivalence`aR2 :

R6: (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1) Elimination de la conjonction`aR6 :

R7: (P1,2∨P2,1)⇒B1,1

Equivalence logique des contrapos´ees: R8: ¬B1,1⇒ ¬(P1,2∨P2,1)

Modus PonensavecR8 etR4: R9: ¬(P1,2∨P2,1)

R`egle de De Morgan: R10: ¬P1,2∧ ¬P2,1

32 / 59 Intelligence artificielle N

(60)

Agents logiques

R´ esolution : exemple

Pas de brise en [1,2]; on ajoute les r`egles suivantes dans la base de connaissance :

R11: ¬B1,2

R12: B1,2⇔(P1,1∨P2,2∨P1,3) Mˆeme processus que pour obtenirR10: R13: ¬P2,2

R14: ¬P1,3

Elimination de la double implication enR3 + Modus ponens avecR5: R15: P1,1∨P2,2∨P3,1

R`egle de r´esolution: ¬P2,2dansR13se r´esoud avecP2,2dansR15: R16: P1,1∨P3,1

¬P1,1dansR1 se r´esoud avecP1,1dansR16: R17: P3,1

33 / 59 Intelligence artificielle N

(61)

Agents logiques

R´ esolution

Forme normale conjonctive(CNF) :conjonctiondedisjonctionsde litt´eraux.

Une disjonction de litt´eraux est uneclause Exemple : (A∨ ¬B)(B∨ ¬C∨ ¬D)

R´esolution unitaire. Chaquel est un litt´eral,li et¬li sont deslitt´eraux compl´ementaires:

l1∨. . .∨li∨. . .∨lk, ¬li

l1∨. . .∨li−1∨li+1∨. . .∨lk

R´esolution. Chaquel est un litt´eral,mj=¬li :

l1∨. . .∨li∨. . .∨lk, m1∨. . .∨mj∨. . .∨mn

l1∨. . .∨li−1∨li+1∨. . .∨lk∨m1∨. . .∨mj−1∨mj+1∨. . .∨mn

La r´esolution est valide et compl`ete pour la logique propositionnelle

34 / 59 Intelligence artificielle N

(62)

Agents logiques

Transformation d’un ´ enonc´ e en CNF

B1,1⇔(P1,2∨P2,1)

1. Elimination de⇔: remplacement deα⇔βpar (α⇒β)∧(β⇒α) (B1,1⇒(P1,2∨P2,1))∧((P1,2∨P2,1)⇒B1,1)

2. Elimination de⇒: remplacement deα⇒βpar¬α∨β (¬B1,1∨P1,2∨P2,1)∧(¬(P1,2∨P2,1)∨B1,1)

3. D´eplacer¬“`a l’int´erieur” en utilisant les r`egles de Morgan et la double n´egation :

(¬B1,1∨P1,2∨P2,1)∧((¬P1,2∧ ¬P2,1)∨B1,1) 4. Appliquer la loi de distributivit´e sur∧et∨

(¬B1,1∨P1,2∨P2,1)∧(¬P1,2∨B1,1)∧(¬P2,1∨B1,1)

35 / 59 Intelligence artificielle N

(63)

Agents logiques

Algorithme de r´ esolution

D´emonstration par l’absurde : pour montrerKB|=α, on montre que KB∧ ¬αn’est pas satisfiable

Algorithme de r´esolution

fonctionPL-Resolution(KB,α)retournevraioufaux

clauses←ensemble de clauses dans la repr´esentation CNF deKB∧ ¬α nouveau ← {}

loop do

pour chaqueCi,Cj dansclauses faire resolvants←PL-Resoud(Ci,Cj)

siresolvantscontient la clause videalors retournervrai nouveau←nouveau∪resolvants

sinouveau⊆clausesalors retournerfaux clauses←clause∪nouveau

36 / 59 Intelligence artificielle N

(64)

Agents logiques

Clauses de Horn

Clauses de Horn: disjonction de litt´eraux dontun au maximum est positif

(¬L1,1∨ ¬BriseB1,1) est une clause de Horn (¬B1,1P1,2P2,1) n’est pas une clause de Horn

Toute clause de Horn peut s’´ecrire sous la forme d’une implication avec Pr´emisse = conjonction de litt´eraux positifs

Conclusion = litt´eral positif unique

(¬L1,1∨ ¬BriseB1,1) = ((L1,1Brise)B1,1)

Clauses d´efinies: clauses de Horn ayantexactementun litt´eral positif Litt´eral positif =tˆete; litt´eraux n´egatifs =corpsde la clause

Fait= clause sans litt´eraux n´egatifs

37 / 59 Intelligence artificielle N

(65)

Agents logiques

Formes de Horn

Forme de Horn: BC =conjonctiondeclauses de Horn Modus Ponenspour les clauses de Horn :

α1, . . . , αn1∧. . .∧αn)⇒β β

Ce Modus Ponens peut ˆetre utilis´e pour lechaˆınage avantouchaˆınage arri`ere

Ces algorithmes sont tr`es naturels et sont r´ealis´es entemps lin´eaire

38 / 59 Intelligence artificielle N

(66)

Agents logiques

Chaˆınage avant

Id´ee : appliquer toutes les r`egles dont les pr´emisses sont satisfaits dans la base de connaissances

Ajouter les conclusions de ces r`egles dans la base de connaissances, jusqu’`a ce que la requˆete soit satisfaite

Le chaˆınage avant est valide et complet pour les bases de connaissances de Horn

39 / 59 Intelligence artificielle N

(67)

Agents logiques

Chaˆınage avant

Chaˆınage avant

fonctionPL-FC-Entails(KB,q)retournevraioufaux variables locales:

compteur table index´ee par clause, initialement le nombre de pr´emisses infer table, index´ee par symbole, chaque entr´ee initialement `afaux agendaliste de symboles, initialement symboles vrais dans KB tant queagendan’est pas videfaire

pPop(agenda)

sip=qalors retournervrai si noninfer[p]alors faire

infer[p]vrai

pour chaqueclause de Hornc dans laquelle la pr´emissep apparait faire

compteur[c]compteur[c]1

sicompteur[c] = 0alors fairePush(Head[c],agenda) retournerfaux

40 / 59 Intelligence artificielle N

(68)

Agents logiques

Chaˆınage avant : exemple

41 / 59 Intelligence artificielle N

(69)

Agents logiques

Preuve de compl´ etude

La proc´edure de chaˆınage avant permet d’obtenir tout ´enonc´e atomique pouvant ˆetre d´eduit de KB

1. L’algorithme atteint unpoint fixeau terme duquel aucune nouvelle inf´erence n’est possible

2. L’´etat final peut ˆetre vu comme unmod`elemdans lequel tout symbole inf´er´e est mis `avrai, tous les autres `afaux

3. Toutes les clauses d´efinies dans laKBd’origine sont vraies dansm 4. Doncmest un mod`ele deKB

5. SiKB|=qest vrai,qest vrai danstousles mod`eles deKB, donc dansm

42 / 59 Intelligence artificielle N

(70)

Agents logiques

Chaˆınage arri` ere

Id´ee : Partir de la requˆete et rebrousser chemin erifier siqn’est pas v´erifi´ee dans la BC

Chercher dans la BC les implications ayantqpour conclusion, et essayer de prouver leurs pr´emisses

Eviter les boucles : v´erifier si le nouveau sous-but n’est pas d´ej`a dans la liste des buts `a ´etablir

Eviter de r´ep´eter le mˆeme travail : v´erifier si le nouveau sous-but a d´ej`a

´

et´e prouv´e vrai ou faux

43 / 59 Intelligence artificielle N

(71)

Agents logiques

Chaˆınage arri` ere

44 / 59 Intelligence artificielle N

(72)

Agents logiques

Chaˆınage avant vs chaˆınage arri` ere

Chaˆınage avant : raisonnement pilot´e par les donn´ees Conclusions `a partir de percepts entrants

Pas toujours de requˆete sp´ecifique en tˆete

Beaucoup de cons´equences d´eduites, toutes ne sont pas utiles ou ecessaires

Chaˆınage arri`ere : raisonnement pilot´e par le but epondre `a des questions sp´ecifiques

Se limite aux seuls faits pertinents

La complexit´e du chaˆınage arri`ere peut ˆetrebien inf´erieure`a une fonction lin´eaire `a la taille de la base de connaissances

45 / 59 Intelligence artificielle N

(73)

Agents logiques

Algorithmes efficaces d’inf´ erence propo- sitionnelle

Deux familles d’algorithmes efficaces pour l’inf´erence propositionnelle : Exploration parbacktracking

Algorithme DPLL (Davis, Putnam, Logemann, Loveland) Algorithmes de recherche locale incompl`ete

AlgorithmeWalkSAT

46 / 59 Intelligence artificielle N

(74)

Agents logiques

Algorithme DPLL

Cet algorithme d´etermine si un ´enonc´e logique en CNF est satisfiable Am´eliorations par rapport `a l’´enum´eration de la table de v´erit´e

Elagage

Une clause est vraie si l’un des litt´eraux est vrai Un ´enonc´e est faux si l’une des clauses est fausse Heuristique des symboles purs

Unsymbole purest un symbole qui apparait toujours avec le mˆeme “signe” dans toutes les clauses

(A∨ ¬B)(¬B∨ ¬C)(CA). AetBsont purs,Cest impur Instancier les litt´eraux des symboles purs `avrai

Heuristique de la clause unitaire

Clause unitaire: clause qui ne contient qu’un litt´eral Ce litt´eral doit ˆetrevrai

47 / 59 Intelligence artificielle N

(75)

Agents logiques

Algorithme DPLL

Algorithme DPLL

fonctionDPLL-Satisfiable?(s)retournevraioufaux entr´ees:s, un ´enonc´e propositionnel

C ensemble des clauses dans la repr´esentation CNF des Sliste des symboles propositionnels danss

retournerDPLL(C,S, [])

fonctionDPLL(C,S,modele)retournevraioufaux

sitoute clause deCest vraie dansmodelealors retournervrai siune clause deC est fausse dansmodelealors retournerfaux P,valeurFind-Pure-Symbol(S,C,modele)

sinon nul(P)alors retournerDPLL(C,S\P, Extend(P,valeur,modele)) P,valeurFind-Unit-Clause(C,modele)

sinon nul(P)alors retournerDPLL(C,S\P, Extend(P,valeur,modele)) PFirst(S);resteRest(S)

retournerDPLL(C,reste, Extend(P,vrai,modele)) ouDPLL(C,reste, Extend(P,faux,modele))

48 / 59 Intelligence artificielle N

(76)

Agents logiques

Algorithme WalkSAT

Algorithme de recherche locale incompl`ete

Chaque it´eration : s´election d’une clause non satisfaite et un symbole `a

“basculer”

Choix du symbole `a basculer :

Fonction d’´evaluation : heuristique Min-Conflicts qui minimise le nombre de clauses non satisfaites

Etape de parcours al´eatoire qui s´electionne le symbole au hasard

49 / 59 Intelligence artificielle N

(77)

Agents logiques

Algorithme WalkSAT

Algorithme WalkSAT

fonctionWalkSAT(clauses,p,max flips)retourneun mod`ele satisfiable ouerreur entr´ees:clauses, un ensemble de clauses

pprobabilit´e de choisir le parcours al´eatoire

max flipsle nombre de “bascules” autoris´ees avant de renoncer

modeleaffectation al´eatoire devrai/faux des symboles dansclauses pouri= 1`amax flips faire

simodelesatisfaitclausesalors retournermodele

clauseune clause s´electionn´ee au hasard parmi lesclauses fausses de modele

avec la probabilit´epbasculer dansmodelela valeur d’un symbole selec- tionn´e au hasard dansclause

sinonbasculer le symbole dansclausequi maximise le nombre de clauses satisfaites

retournererreur

50 / 59 Intelligence artificielle N

(78)

Agents logiques

Probl` emes de satisfiabilit´ e difficiles

Soit l’´enonc´e 3-CNF g´en´er´e al´eatoirement suivant :

(¬D∨ ¬BC)(B∨ ¬A∨ ¬C)(¬C∨ ¬BE)(E∨ ¬DB)(BE∨ ¬C) 16 des 32 affectations possibles sont des mod`eles de cet ´enonc´e

en moyenne 2 tentatives al´eatoires pour trouver un mod`ele

Probl`eme difficile : augmenter le nombre de clauses en laissant fixe le nombre de symboles

Probl`eme plus contraint

mnombre de clauses,nnombre de symboles

Probl`emes difficiles : ratio aux alentours de mn = 4.3 : point critique

51 / 59 Intelligence artificielle

N

(79)

Agents logiques

Probl` emes de satisfiabilit´ e difficiles

52 / 59 Intelligence artificielle

N

(80)

Agents logiques

Probl` emes de satisfiabilit´ e difficiles

Temps d’execution m´edian sur 100 ´enonc´es 3-CNF al´eatoiressatisfiables avec n=50

53 / 59 Intelligence artificielle

N

(81)

Agents logiques

Agents logiques

Agents fond´es sur les connaissances Le monde du Wumpus

Principe g´en´eraux de la logique Logique propositionnelle

Sch´emas de raisonnement en logique propositionnelle Agents bas´es sur la logique propositionnelle

Conclusion

54 / 59 Intelligence artificielle

N

(82)

Agents logiques

Agents bas´ es sur la logique proposition- nelle dans le monde du Wumpus

¬P1,1

¬W1,1

Bx,y ⇔(Px,y+1∨Px,y−1∨Px+1,y∨Px−1,y

Sx,y ⇔(Wx,y+1∨Wx,y−1∨Wx+1,y ∨Wx−1,y

W1,1∨W1,2∨. . .∨W4,4

¬W1,1∨ ¬W1,2

¬W1,1∨ ¬W1,3

. . .

⇒ 64 symboles propositionnels distincts; 155 ´enonc´es

55 / 59 Intelligence artificielle

N

Références

Documents relatifs

Dans ce dernier cas, donner un contre-exemple et modifier l’´ enonc´ e pour qu’il devienne vrai.. La d´ eriv´ ee d’une fonction f qui est C 1 par morceau sur [a, b],

Comment s’assurer que les agents individuels représentent et raisonnent au sujet des actions, des plans et de la connaissances des autres agents afin qu’ils puissent être

En r ´ealit ´e le m ´ecanisme est plus complexe, c’est une r ´eaction d’autocatalyse dans laquelle interviennent plusieurs r ´eactions avec des vitesses de diff ´erents ordres

l’algorithme EM pour l’estimation dans les mod` eles de mixture l’estimation des Chaˆınes de Markov Cach´ ees. nous avons vu la n´ ecessit´ e de faire des calculs de

Th´ eor` eme quantile : besoin d’un terme suppl´

Un agent rationnel choisit l’action qui maximise la valeur attendue de la mesure de performance en fonction de la s´ equence de percepts obtenue jusque l` a.. Rationnel

Les objets et relations sont des primitives de la s´ emantique Syntaxe : constantes, fonctions, pr´ edicats, ´ egalit´ e, quantifieurs. Augmentation du pouvoir expressif :

Th´ eor` eme de Turing et Church (1936) : En logique du premier ordre, la question de la cons´ equence logique est semi-d´ ecidable. → Il existe des algorithmes qui disent “oui” `