Top Banner
Cooperating Intelligent Systems Logical agents Chapter 7, AIMA This presentation owes some to V. Pavlovic @ Rutgers and D. Byron @ OSU
86

Cooperating Intelligent Systems

Feb 25, 2016

Download

Documents

bat

Cooperating Intelligent Systems. Logical agents Chapter 7, AIMA. This presentation owes some to V. Pavlovic @ Rutgers and D. Byron @ OSU. Motivation for knowledge representation. The search programs so far have been ”special purpose” – we have to code everything into them. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Cooperating Intelligent Systems

Cooperating Intelligent Systems

Logical agentsChapter 7, AIMA

This presentation owes some to V. Pavlovic @ Rutgers and D. Byron @ OSU

Page 2: Cooperating Intelligent Systems

Motivation for knowledge representation

• The search programs so far have been ”special purpose” – we have to code everything into them.

• We need something more general, where it suffices to tell the rules of the game.

Page 3: Cooperating Intelligent Systems

1 2 3 4

1

2

3

4

The Wumpus World

Page 4: Cooperating Intelligent Systems

1 2 3 4

1

2

3

4

The Wumpus World

Start position = (1,1)Always safe

Page 5: Cooperating Intelligent Systems

1 2 3 4

1

2

3

4

The Wumpus World

Goal: Get the gold

Page 6: Cooperating Intelligent Systems

1 2 3 4

1

2

3

4

The Wumpus World

Problem 1: Big, hairy, smelly, dangerous Wumpus.Will eat you if you run into it, but you can smell it a block away. You have one (1) arrow for shooting it.

Page 7: Cooperating Intelligent Systems

1 2 3 4

1

2

3

4

The Wumpus World

Problem 2: Big, bottomless pits where you fall down.You can feel the breeze when you are near them.

Page 8: Cooperating Intelligent Systems

1 2 3 41

2

3

4

The Wumpus World

PEAS description

Performance measure: +1000 for gold-1000 for being eaten or falling down pit-1 for each action-10 for using the arrow

Environment:44 grid of ”rooms”, each ”room” can be empty, with gold, occupied by Wumpus, or with a pit.

Actuators:Move forward, turn left 90, turn right 90Grab, shoot

Sensors:Olfactory – stench from WumpusTouch – breeze (pits) & hardness (wall)Vision – see goldAuditory – hear Wumpus scream when killed

}1,0{ ,

5

4

3

2

1

ix

screamglitterwall

breezestench

xxxxx

x

Page 9: Cooperating Intelligent Systems

1 2 3 41

2

3

4

The Wumpus World

PEAS description

Performance measure: +1000 for gold-1000 for being eaten or falling down pit-1 for each action-10 for using the arrow

Environment:44 grid of ”rooms”, each ”room” can be empty, with gold, occupied by Wumpus, or with a pit.

Acuators:Move forward, turn left 90, turn right 90Grab, shoot

Sensors:Olfactory – stench from WumpusTouch – breeze (pits) & hardness (wall)Vision – see goldAuditory – hear Wumpus scream when killed

}1,0{ ,

5

4

3

2

1

i

shootgrab

right turnleft turn

forward

α

Page 10: Cooperating Intelligent Systems

Exploring the Wumpus world

A

ok

ok

ok

Slide adapted from V. Pavlovic

Agent senses nothing (no breeze, no smell,..)

00000

1,1x

Page 11: Cooperating Intelligent Systems

Exploring the Wumpus world

B

A

ok

ok

ok

P?

P?Agent feels a breeze

Slide adapted from V. Pavlovic

A

00010

2,1x

Page 12: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P?

Agent feels a foul smell

Slide adapted from V. Pavlovic

A

S

W?

W?

00001

1,2x

Page 13: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P?

Wumpus can’t be heresince there was nosmell there...

Slide adapted from V. Pavlovic

A

S

W?

W?

Pit can’t be theresince there was nobreeze here...

ok

Page 14: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P

Slide adapted from V. Pavlovic

S

W

W?

A

ok

A

Agent senses nothing (no breeze, no smell,..)

ok

ok

P

W

00000

2,2x

Page 15: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P

Slide adapted from V. Pavlovic

S

W

W?ok

A

Agent senses breeze,smell, and sees gold! ok

ok

A

BSG

01011

x

Page 16: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P

Slide adapted from V. Pavlovic

S

W

W?ok

Grab the gold andget out!

ok

ok

A

BSG

A

Page 17: Cooperating Intelligent Systems

Exploring the Wumpus world

B ok

ok

ok

P?

P?

Wumpus can’t be heresince there was nosmell there...

Slide adapted from V. Pavlovic

A

S

W?

W?

Pit can’t be theresince there was nobreeze here...

How do we automate this kind of reasoning?(How can we make these inferences automatically?)

Page 18: Cooperating Intelligent Systems

LogicLogic is a formal language for representing information such

that conclusions can be drawn

A logic has– Syntax that specifies symbols in the language and how they can be

combined to form sentences– Semantics that specifies what facts in the world a semantics refers to.

Assigns truth values to sentences based on their meaning in the world.– Inference procedure, a mechanical method for computing (deriving)

new (true) sentences from existing sentences

Page 19: Cooperating Intelligent Systems

Entailment

The sentence A entails the sentence B• If A is true, then B must also be true• B is a ”logical consequence” of A

Let’s explore this concept a bit...

A ⊨ B

Page 20: Cooperating Intelligent Systems

Example: Wumpus entailmentAgent’s knowledge base (KB) after

having visited (1,1) and (1,2):

1) The rules of the game (PEAS)2) Nothing in (1,1)3) Breeze in (1,2)

Which models (states of the world) match these observations?

1 2 3 41

2

3

4

00010

00000

2,11,1 xx

Page 21: Cooperating Intelligent Systems

Example: Wumpus entailmentWe only care about neighboring

rooms, i.e. {(2,1),(2,2),(1,3)}. We can’t know anything about the other rooms.

We care about pits, because we have detected a breeze. We don’t want to fall down a pit.

There are 23=8 possible arrangements of {pit, no pit} in the three neighboring rooms.

1 2 3 41

2

3

4

Possible conclusions:1 : There is no pit in (2,1)2 : There is no pit in (2,2)3 : There is no pit in (1,3)

Page 22: Cooperating Intelligent Systems

The eight possible situations...

Page 23: Cooperating Intelligent Systems

The eight possible situations... ...let’s explore this conclusion

1 : There is no pit in (2,1)

Page 24: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

1 = The set of models that agrees with conclusion 1 [conclusion 1 is true in these models]

If KB is true, then1 is also true.KB entails 1.

KB ⊨ 1

1 : There is no pit in (2,1)

Page 25: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

2 = The set of models that agrees with conclusion 2 [conclusion 2 is true in these models]

KB ⊭ 2

If KB is true, then2 is not also true.KB does not entail 2.

2 : There is no pit in (2,2)

Page 26: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

3 = The set of models that agrees with conclusion 3 [conclusion 3 is true in these models]

?

3 : There is no pit in (1,3)

3

Page 27: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

3 = The set of models that agrees with conclusion 3 [conclusion 3 is true in these models]

If KB is true, then3 is not also true.KB does not entail 3.

3 : There is no pit in (1,3)

KB ⊭ 3

3

Page 28: Cooperating Intelligent Systems

Inference engine• We need an algorithm (a method)

that automatically produces the entailed conclusions.

• We will call this an ”inference engine”

Page 29: Cooperating Intelligent Systems

Inference engine

”A is derived from KB by inference engine i”

• Truth-preserving: i only derives entailed sentences• Complete: i derives all entailed sentences

KB ⊢i A

We want inference engines that are both truth-preserving and complete

Page 30: Cooperating Intelligent Systems

Atomic sentence = a single propositional symbole.g. P, Q, P13, W31, G32, T, F

Complex sentence = combination of simple sentences using connectives¬ (not) negation∧ (and) conjunction∨ (or) disjunction⇒ (implies) implication⇔ (iff = if and only if) biconditional

Propositional (boolean) logic Syntax

Wumpus in room (3,1)Pit in room (1,3)

P13 ∧ W31

W31 ⇒ S32

W31 ∨ ¬W31

Precedence: ¬,∧,∨,⇒,⇔

Page 31: Cooperating Intelligent Systems

Semantics: The rules for whether a sentence is true or false

• T (true) is true in every model• F (false) is false in every model• The truth values for other proposition

symbols are specified in the model.

• Truth values for complex sentences are specified in a truth table

Propositional (boolean) logic Semantics

Atomicsentences

Page 32: Cooperating Intelligent Systems

Boolean truth table

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse FalseFalse TrueTrue FalseTrue True

Please complete this table...

Page 33: Cooperating Intelligent Systems

Boolean truth table

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

Page 34: Cooperating Intelligent Systems

Boolean truth table

Not P is the opposite of P

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

Page 35: Cooperating Intelligent Systems

Boolean truth table

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

P ∧ Q is true only when both P and Q are true

Page 36: Cooperating Intelligent Systems

Boolean truth table

P ∨ Q is true when either P or Q is true

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

Page 37: Cooperating Intelligent Systems

Boolean truth table

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

P ⇒ Q : If P is true then we claim thatQ is true, otherwise we make no claim

Page 38: Cooperating Intelligent Systems

Boolean truth table

P Q ¬P P∧Q P∨Q P⇒Q P⇔QFalse False True False False True TrueFalse True True False True True FalseTrue False False False True False FalseTrue True False True True True True

P ⇔ Q is true when the truth values for P and Q are identical

Page 39: Cooperating Intelligent Systems

Boolean truth table

P Q P⊕QFalse False Fals

eFalse True TrueTrue False TrueTrue True Fals

e

The exlusive or (XOR) is differentfrom the OR

Page 40: Cooperating Intelligent Systems

Graphical illustration of truth table

P

Q

0

0

1

1

(1,0) = [P is true, Q is false]

(1,1) = [P is true, Q is true]

P

Q

0

0

1

1

P ∧ Q

Black means true, white means false

P

Q

0

0

1

1

P ∨ Q

P

Q

0

0

1

1

P ⇒ QP

Q

0

0

1

1

P ⇔ QP

Q

0

0

1

1

P ⊕ Q ≡ ¬(P ⇔ Q)

Page 41: Cooperating Intelligent Systems

Example: Wumpus KBKnowledge base

1 2 3 41

2

3

4

1. Nothing in (1,1)2. Breeze in (1,2)

R1: ¬P11

R2: ¬B11

R3: ¬W11

R4: ¬S11

R5: ¬G11

R6: B12

R7: ¬P12

R8: ¬S12

R9: ¬W12

R10: ¬G12

KB = R1 ∧ R2 ∧ R3 ∧ R4 ∧ R5 ∧ R6 ∧ R7 ∧ R8 ∧ R9 ∧ R10

Interesting sentences [tell us what is in neighbor squares]

Plus the rules of the game

Page 42: Cooperating Intelligent Systems

Example: Wumpus KBKnowledge base

1 2 3 41

2

3

4

1. Nothing in (1,1)2. Breeze in (1,2)

KB = R1 ∧ R2 ∧ R3 ∧ R4 ∧ R5 ∧ R6 ∧ R7 ∧ R8 ∧ R9 ∧ R10

R1: ¬P11

R2: ¬B11 ⇔ ¬(P21 ∨ P12)R3: ¬W11

R4: ¬S11 ⇔ ¬(W21 ∨ W12)R5: ¬G11

R6: B12 ⇔ (P11 ∨ P22 ∨ P13)R7: ¬P12

R8: ¬S12 ⇔ ¬(W11 ∨ W21 ∨ W13)R9: ¬W12 (already in R4)R10: ¬G12

We infer this from the rules of the game

Plus the rules of the game

Page 43: Cooperating Intelligent Systems

Inference by enumerating modelsWhat is in squares (1,3), (2,1), and (2,2)?

# W21 W22 W13 P21 P22 P13 R2 R4 R6 R8

1 0 0 0 0 0 0 1 1 0 12 0 0 0 0 0 1 1 1 1 13 0 0 0 0 1 0 1 1 1 14 0 0 0 0 1 1 1 1 1 15 0 0 0 1 0 0 0 1 0 1⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮63 0 1 1 1 1 1 0 1 1 064 1 1 1 1 1 1 0 0 1 0

We have 6 interesting sentences: W21, W22, W13, P21, P22, P13 : 26 = 64 comb.

KB (interesting sentences)

KBtrue

Page 44: Cooperating Intelligent Systems

Inference by enumerating modelsWhat is in squares (1,3), (2,1), and (2,2)?

# W21 W22 W13 P21 P22 P13 R2 R4 R6 R8

1 0 0 0 0 0 0 1 1 0 12 0 0 0 0 0 1 1 1 1 13 0 0 0 0 1 0 1 1 1 14 0 0 0 0 1 1 1 1 1 15 0 0 0 1 0 0 0 1 0 1⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮63 0 1 1 1 1 1 0 1 1 064 1 1 1 1 1 1 0 0 1 0

KBtrue

What do we deduce from this?

Page 45: Cooperating Intelligent Systems

Inference by enumerating modelsWhat is in squares (1,3), (2,1), and (2,2)?

# W21 W22 W13 P21 P22 P13 R2 R4 R6 R8

1 0 0 0 0 0 0 1 1 0 12 0 0 0 0 0 1 1 1 1 13 0 0 0 0 1 0 1 1 1 14 0 0 0 0 1 1 1 1 1 15 0 0 0 1 0 0 0 1 0 1⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮63 0 1 1 1 1 1 0 1 1 064 1 1 1 1 1 1 0 0 1 0

KBtrue

KB ⊨ ¬W21 ∧ ¬W22 ∧ ¬W13 ∧ ¬P21

Page 46: Cooperating Intelligent Systems

Inference by enumerating models

• Implement as a depth-first search on a constraint graph (backtracking)

• Time complexity ~ O(2n)where n is the number of relevant sentences

• Space complexity ~ O(n)

Not very efficient...

Page 47: Cooperating Intelligent Systems

Inference methods1. Model checking (enumerating)

- Just seen that2. Using rules of inference

- Coming next

Page 48: Cooperating Intelligent Systems

Some definitionsEquivalence:

A ≡ B iff A ⊨ B and B ⊨ A

Validity: A valid sentence is true in all models (a tautology)

A ⊨ B iff (A ⇒ B) is valid

Satisfiability: A sentence is satisfiable if it is true in some model

A ⊨ B iff (A ∧ ¬B) is unsatisfiable

Let’s explore satisfiability first...

Page 49: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

1 = The set of models that agrees with conclusion 1 [conclusion 1 is true in these models]

If KB is true, then1 is also true.KB entails 1.

KB ⊨ 1

KB ⊆ 1

¬1

KB ^ ¬1 never true

Page 50: Cooperating Intelligent Systems

Some definitionsEquivalence:

A ≡ B iff A ⊨ B and B ⊨ A

Validity: A valid sentence is true in all models (a tautology)

A ⊨ B iff (A ⇒ B) is valid

Satisfiability: A sentence is satisfiable if it is true in some model

A ⊨ B iff (A ∧ ¬B) is unsatisfiable

A B A⇒B A∧¬BFalse False True FalseFalse True True FalseTrue False False TrueTrue True True False

Page 51: Cooperating Intelligent Systems

Some definitionsEquivalence:

A ≡ B iff A ⊨ B and B ⊨ A

Validity: A valid sentence is true in all models (a tautology)

A ⊨ B iff (A ⇒ B) is valid

Satisfiability: A sentence is satisfiable if it is true in some model

A ⊨ B iff (A ∧ ¬B) is unsatisfiable

A B A⇒B A∧¬BFalse False True FalseFalse True True FalseTrue False False TrueTrue True True False

Page 52: Cooperating Intelligent Systems

Some definitionsEquivalence:

A ≡ B iff A ⊨ B and B ⊨ A

Validity: A valid sentence is true in all models (a tautology)

A ⊨ B iff (A ⇒ B) is valid

Satisfiability: A sentence is satisfiable if it is true in some model

A ⊨ B iff (A ∧ ¬B) is unsatisfiable

A ⊨ B means that the set of modelswhere A is true is a subset of the modelswhere B is true: A ⊆ B

B ⊨ A means that the set of modelswhere B is true is a subset of the modelswhere A is true: B ⊆ A

Therefore, the set of models where A is true must be equal to the set of models where B is true: A ≡ B

A B

B A

A≡B

Page 53: Cooperating Intelligent Systems

Some definitionsEquivalence:

A ≡ B iff A ⊨ B and B ⊨ A

Validity: A valid sentence is true in all models (a tautology)

A ⊨ B iff (A ⇒ B) is valid

Satisfiability: A sentence is satisfiable if it is true in some model

A ⊨ B iff (A ∧ ¬B) is unsatisfiable

A B A⇒BFalse False TrueFalse True TrueTrue False FalseTrue True True

KB ⊨ 1

Page 54: Cooperating Intelligent Systems

Logical equivalences(A ∧ B)≡ (B ∧ A) ∧ is commutative(A ∨ B)≡ (B ∨ A) ∨ is commutative

((A ∧ B) ∧ C)≡ (A ∧ (B ∧ C)) ∧ is associative((A ∨ B) ∨ C)≡ (A ∨ (B ∨ C)) ∨ is associative

¬(¬A)≡ A Double-negation elimination(A ⇒ B)≡ (¬B ⇒ ¬A) Contraposition(A ⇒ B)≡ (¬A ∨ B) Implication elimination(A ⇔ B)≡ ((A ⇒ B) ∧ (B ⇒ A)) Biconditional elimination

¬(A ∧ B)≡ (¬A ∨ ¬B) ”De Morgan”¬(A ∨ B)≡ (¬A ∧ ¬B) ”De Morgan”

(A ∧ (B ∨ C))≡ ((A ∧ B) ∨ (A ∧ C)) Distributivity of ∧ over ∨ (A ∨ (B ∧ C))≡ ((A ∨ B) ∧ (A ∨ C)) Distributivity of ∨ over ∧

Page 55: Cooperating Intelligent Systems

Logical equivalences(A ∧ B)≡ (B ∧ A) ∧ is commutative(A ∨ B)≡ (B ∨ A) ∨ is commutative

((A ∧ B) ∧ C)≡ (A ∧ (B ∧ C)) ∧ is associative((A ∨ B) ∨ C)≡ (A ∨ (B ∨ C)) ∨ is associative

¬(¬A)≡ A Double-negation elimination(A ⇒ B)≡ (¬B ⇒ ¬A) Contraposition(A ⇒ B)≡ (¬A ∨ B) Implication elimination(A ⇔ B)≡ ((A ⇒ B) ∧ (B ⇒ A)) Biconditional elimination

¬(A ∧ B)≡ (¬A ∨ ¬B) ”De Morgan”¬(A ∨ B)≡ (¬A ∧ ¬B) ”De Morgan”

(A ∧ (B ∨ C))≡ ((A ∧ B) ∨ (A ∧ C)) Distributivity of ∧ over ∨ (A ∨ (B ∧ C))≡ ((A ∨ B) ∧ (A ∨ C)) Distributivity of ∨ over ∧

Work out these on paper for yourself, before we move on...

Page 56: Cooperating Intelligent Systems

Inference rules• Inference rules are written as

If the KB contains the antecedent, you can add the consequent (the KB entails the consequent)

ConsequentAntecedent

Slide adapted from D. Byron

Page 57: Cooperating Intelligent Systems

Inference rules• Inference rules are written as

If the KB contains the antecedent, you can add the consequent (the KB entails the consequent)

ConsequentAntecedent

Slide adapted from D. Byron

After""Before""

Page 58: Cooperating Intelligent Systems

Commonly used inference rulesModus Ponens

Modus Tolens

Unit Resolution

And Elimination

Or introduction

And introduction

BABA ,

ABBA

,

ABBA ,

ABA

BAA

BABA

,

Slide adapted from D. Byron

Page 59: Cooperating Intelligent Systems

Commonly used inference rulesModus Ponens

Modus Tolens

Unit Resolution

And Elimination

Or introduction

And introduction

BABA ,

ABBA

,

ABBA ,

ABA

BAA

BABA

,

Slide adapted from D. Byron Work out these on paper for yourself too

Page 60: Cooperating Intelligent Systems

Example: Proof in Wumpus KBKnowledge base

1 2 3 41

2

3

4

1. Nothing in (1,1)

R1: ¬P11

R2: ¬B11

R3: ¬W11

R4: ¬S11

R5: ¬G11

Page 61: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”

Page 62: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”

(A ⇔ B) ≡ ((A ⇒ B) ∧ (B ⇒ A))

Page 63: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”BBA

Page 64: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”(A ⇒ B) ≡ (¬B ⇒ ¬A)

Page 65: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”

¬(A ∨ B) ≡ (¬A ∧ ¬B)

Page 66: Cooperating Intelligent Systems

Proof in Wumpus KBB11 ⇔ (P12 ∨ P21) Rule of the game

B11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11Biconditional elimination

(P12 ∨ P21) ⇒ B11 And elimination

¬B11 ⇒ ¬(P12 ∨ P21) Contraposition

¬B11 ⇒ ¬P12 ∧ ¬P21 ”De Morgan”

Thus, we have proved, in four steps, that no breeze in (1,1) means there can be no pit in either (1,2) or (2,1)

The machine can come to this conclusion all by itself if we give therules of the game. More efficient than enumerating models.

Page 67: Cooperating Intelligent Systems

The Resolution ruleAn inference algorithm is guaranteed to be

complete if it uses the resolution rule

CACBBA

,

ABBA , Unit resolution

Full resolution

(A B) BA

Page 68: Cooperating Intelligent Systems

The Resolution ruleAn inference algorithm is guaranteed to be

complete if it uses the resolution rule

CACBBA

,

ABBA , Unit resolution

Full resolution

A clause = a disjunction (∨) of literals (sentences)

Page 69: Cooperating Intelligent Systems

The Resolution ruleAn inference algorithm is guaranteed to be

complete if it uses the resolution rule

mk

mk

CCCAAACCCBBAAA

2121

2121 ,

k

k

AAABBAAA

21

21 ,

Note: The resulting clause should only contain one copy of each literal.

Page 70: Cooperating Intelligent Systems

Resolution truth tableA B ¬B C A∨B ¬B∨C A∨C

1 0 1 1 1 1 11 1 0 1 1 1 10 1 0 1 1 1 10 0 1 1 0 1 11 0 1 0 1 1 11 1 0 0 1 0 10 1 0 0 1 0 00 0 1 0 0 1 0

((A ∨ B) ∧ (¬B ∨ C)) ⇒ (A ∨ C)

Page 71: Cooperating Intelligent Systems

Resolution truth tableA B ¬B C A∨B ¬B∨C A∨C

1 0 1 1 1 1 11 1 0 1 1 1 10 1 0 1 1 1 10 0 1 1 0 1 11 0 1 0 1 1 11 1 0 0 1 0 10 1 0 0 1 0 00 0 1 0 0 1 0

((A ∨ B) ∧ (¬B ∨ C)) ⇒ (A ∨ C)Proof for the resolution rule

Page 72: Cooperating Intelligent Systems

Conjunctive normal form (CNF)• Every sentence of propositional logic is equivalent

to a conjunction or disjunction of literals.

• Sentences expressed in this way are in conjunctive normal form (CNF)[if conjunctions are used]

• A sentence with exactly k literals per clause is expressed in k-CNF

This is good, it means we can get far with the resolution inference rule.

Page 73: Cooperating Intelligent Systems

Wumpus CNF exampleB11 ⇔ (P12 ∨ P21) Rule of the

gameB11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11

Biconditional elimination

(¬B11 ∨ (P12 ∨ P21)) ∧ (¬(P12 ∨ P21) ∨ B11) Implication elimination

(¬B11 ∨ P12 ∨ P21) ∧ ((¬P12 ∧ ¬P21) ∨ B11) ”De Morgan”

(¬B11 ∨ P12 ∨ P21) ∧ ((¬P12 ∨ B11) ∧ (B11 ∨ ¬P21)) Distributivity

(¬B11 ∨ P12 ∨ P21) ∧ (¬P12 ∨ B11) ∧ (B11 ∨ ¬P21) Voilá – CNF

(A ⇒ B) ≡ (¬A ∨ B)

(A ⇔ B) ≡ ((A ⇒ B) ∧ (B ⇒ A)) ¬(A ∨ B) ≡ (¬A ∧ ¬B)

(A ∨ (B ∧ C)) ≡ ((A ∨ B) ∧ (A ∨ C))

Page 74: Cooperating Intelligent Systems

Wumpus CNF exampleB11 ⇔ (P12 ∨ P21) Rule of the

gameB11 ⇒ (P12 ∨ P21) ∧ (P12 ∨ P21) ⇒ B11

Biconditional elimination

(¬B11 ∨ (P12 ∨ P21)) ∧ (¬(P12 ∨ P21) ∨ B11) Implication elimination

(¬B11 ∨ P12 ∨ P21) ∧ ((¬P12 ∧ ¬P21) ∨ B11) ”De Morgan”

(¬B11 ∨ P12 ∨ P21) ∧ ((¬P12 ∨ B11) ∧ (B11 ∨ ¬P21)) Distributivity

(¬B11 ∨ P12 ∨ P21) ∧ (¬P12 ∨ B11) ∧ (B11 ∨ ¬P21) Voilá – CNF

Page 75: Cooperating Intelligent Systems

The resolution refutation algorithm

Proves by the principle of contradiction:Show that KB ⊨ by proving that (KB ∧ ¬) is

unsatisfiable.

• Convert (KB ∧ ¬) to CNF• Apply the resolution inference rule repeatedly to

the resulting clauses• Continue until:

(a) No more clauses can be added, KB ⊭ (b) The empty clause (∅) is produced, KB ⊨

Page 76: Cooperating Intelligent Systems

KB = The set of models that agrees with the knowledge base (the observed facts) [The KB is true in these models]

1 = The set of models that agrees with conclusion 1 [conclusion 1 is true in these models]

If KB is true, then1 is also true.KB entails 1.

KB ⊨ 1

KB ⊆ 1

¬1

KB ^ ¬1 never true

Page 77: Cooperating Intelligent Systems

Wumpus resolution exampleB11 ⇔ (P12 ∨ P21) Rule of the

game

(¬B11 ∨ P12 ∨ P21) ∧ (¬P12 ∨ B11) ∧ (B11 ∨ ¬P21) CNF

¬B11 Observation

(¬B11 ∨ P12 ∨ P21) ∧ (¬P12 ∨ B11) ∧ (B11 ∨ ¬P21) ∧ ¬B11 KB in CNF

¬P21Hypothesis()

KB ∧ ¬ = (¬B11∨P12∨P21)∧(¬P12∨B11)∧(B11∨¬P21)∧¬B11 ∧ P21

Page 78: Cooperating Intelligent Systems

Wumpus resolution example

KB ∧ ¬ = (¬B11∨P12∨P21)∧(¬P12∨B11)∧(B11∨¬P21)∧¬B11 ∧ P21

¬P21

(B11 ∨ ¬P21) , ¬B11

P21 , ¬P21

Not satisfied, we conclude that KB ⊨

Page 79: Cooperating Intelligent Systems

Completeness of resolutionS = Set of clauses

RC(S) = Resolution closure of S RC(S) = Set of all clauses that can be derived from

S by the resolution inference rule.

RC(S) has finite cardinality (finite number of symbols P1, P2, ..., Pk) ⇒ Resolution refutation must terminate.

Page 80: Cooperating Intelligent Systems

Completeness of resolutionThe ground resolution theorem

If a set S is unsatisfiable, then RC(S) contains the empty clause ∅.

Left without proof.

Page 81: Cooperating Intelligent Systems

Horn clauses and forward- backward chaining

• Restricted set of clauses: Horn clauses

disjunction of literals where at most one is positive, e.g.,

(¬A1 ∨ ¬A2 ∨ ⋯ ∨ ¬Ak ∨ B) or (¬A1 ∨ ¬A2 ∨ ⋯ ∨ ¬Ak)

• Why Horn clauses?Every Horn clause can be written as an implication, e.g.,

(¬A1 ∨ ¬A2 ∨ ⋯ ∨ ¬Ak ∨ B) ≡ (A1 ∧ A2 ∧ ⋯ ∧ Ak) ⇒ B(¬A1 ∨ ¬A2 ∨ ⋯ ∨ ¬Ak) ≡ (A1 ∧ A2 ∧ ⋯ ∧ Ak) ⇒ False

• Inference in Horn clauses can be done using forward-backward (F-B) chaining in linear time

Slide adapted from V. Pavlovic

Page 82: Cooperating Intelligent Systems

Forward or Backward?Inference can be run forward or backward

Forward-chaining: – Use the current facts in the KB to trigger all

possible inferences

Backward-chaining: – Work backward from the query proposition Q– If a rule has Q as a conclusion, see if

antecedents can be found to be trueSlide adapted from D. Byron

Page 83: Cooperating Intelligent Systems

Example of forward chaining

Slide adapted from V. Pavlovic (who borrowed from Lee?)

KB

ABLMPQ

Agenda

AND-OR graph

Every step is Modus Ponens, e.g.L

BALBA ,

We’ve proved that Q is true

Page 84: Cooperating Intelligent Systems

Slide adapted from Lee

Example of backward chaining

KB

Page 85: Cooperating Intelligent Systems

Wumpus world revisited

1-16 Bi,j ⇔ (Pi,j+1 ∨ Pi,j-1 ∨ Pi-1,j ∨ Pi+1,j) ROG: Pits17-32 Si,j ⇔ (Wi,j+1 ∨ Wi,j-1 ∨ Wi-1,j ∨ Wi+1,j) ROG: Wumpus’ odor

33 (W1,1 ∨ W1,2 ∨ W1,3 ∨ ⋯ ∨ W4,3 ∨ W4,4) ROG: #W ≥ 134-153 ¬(Wi,j ∧ Wk,l) ROG: #W ≤ 1

154 (G1,1 ∨ G1,2 ∨ G1,3 ∨ ⋯ ∨ G4,3 ∨ G4,4) ROG: #G ≥ 1155-274 ¬(Gi,j ∧ Gk,l) ROG: #G ≤ 1

275 (¬B11 ∧ ¬W11 ∧ ¬G11) ROG: Start safe

Knowledge base (KB) in initial position (ROG = Rule of the Game)

There are 5 ”on-states” for every square, {W,P,S,B,G}. A 4 4 lattice has 16 5 = 80 distinct symbols. Enumerating models means going through 280 models!

The physics rules (1-32) are very unsatisfying – no generalization.

Page 86: Cooperating Intelligent Systems

Summary• Knowledge is in the form of sentences in a

knowledge representation language.• The representation language has syntax and

semantics.• Propositional logic: Proposition symbols and

logical connectives.• Inference:

– Model checking– Inference rules, especially resolution

• Horn clauses