1 logical agents chapter 7. 2 logical agents what are we talking about, logical? arent search-based...

95
1 Logical Agents Chapter 7

Upload: willa-daniels

Post on 18-Jan-2018

243 views

Category:

Documents


5 download

DESCRIPTION

3 Why study knowledge-based agents Partially observable environments –combine available information (percepts) with general knowledge to select actions Natural Language –Language is too complex and ambiguous. Problem- solving agents are impeded by high branching factor. Flexibility –Knowledge can be reused for novel tasks. New knowledge can be added to improve future performance.

TRANSCRIPT

Page 1: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

1

Logical Agents

Chapter 7

Page 2: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

2

Logical Agents

• What are we talking about, “logical?”– Aren’t search-based chess programs logical

• Yes, but knowledge is used in a very specific way– Win the game– Not useful for extracting strategies or understanding

other aspects of chess

– We want to develop more general-purpose knowledge systems that support a variety of logical analyses

Page 3: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

3

Why study knowledge-based agents

• Partially observable environments– combine available information (percepts) with general

knowledge to select actions• Natural Language– Language is too complex and ambiguous. Problem-

solving agents are impeded by high branching factor.• Flexibility– Knowledge can be reused for novel tasks. New

knowledge can be added to improve future performance.

Page 4: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

4

Outline

• Knowledge-based agents• Wumpus world• Logic in general - models and entailment• Propositional (Boolean) logic• Equivalence, validity, satisfiability• Inference rules and theorem proving

– forward chaining– backward chaining– resolution–

Page 5: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

5

Knowledge bases

• Knowledge base = set of sentences in a formal language• Declarative approach to building an agent (or other

system):– Tell it what it needs to know

• Then it can Ask itself what to do - answers should follow from the KB

• Agents can be viewed at the knowledge leveli.e., what they know, regardless of how implemented

• Or at the implementation level– i.e., data structures in KB and algorithms that

manipulate them

––

•–

Page 6: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

6

A simple knowledge-based agent

• The agent must be able to:– Represent states, actions, etc.– Incorporate new percepts– Update internal representations of the world– Deduce hidden properties of the world– Deduce appropriate actions

–––––

Page 7: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

7

7.2 Wumpus World PEAS description

• Performance measure– gold +1000, death -1000– -1 per step, -10 for using the arrow

• Environment– Squares adjacent to wumpus are smelly– Squares adjacent to pit are breezy– Glitter iff gold is in the same square– Shooting kills wumpus if you are facing it– Shooting uses up the only arrow– Grabbing picks up gold if in same square– Releasing drops the gold in same square

• Sensors: Stench, Breeze, Glitter, Bump, Scream• Actuators: Left turn, Right turn, Forward, Grab, Release, Shoot

••

–––––––

Page 8: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

8

Wumpus world characterization

• Fully Observable No – only local perception• Deterministic Yes – outcomes exactly specified• Episodic No – sequential at the level of actions• Static Yes – Wumpus and Pits do not move• Discrete Yes• Single-agent? Yes – Wumpus is essentially a

natural feature••••••

Page 9: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

9

Exploring a wumpus world

Page 10: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

10

Exploring a wumpus world

Page 11: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

11

Exploring a wumpus world

Page 12: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

12

Exploring a wumpus world

Page 13: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

13

Exploring a wumpus world

Page 14: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

14

Exploring a wumpus world

Page 15: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

15

Exploring a wumpus world

Page 16: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

16

Exploring a wumpus world

Page 17: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

17

7.3 Logic in general• Logics are formal languages for representing information

such that conclusions can be drawn• Syntax defines the sentences in the language• Semantics define the "meaning" of sentences;

– i.e., define truth of a sentence in a world

• E.g., the language of arithmetic– x+2 ≥ y is a sentence; x2+y > {} is not a sentence– x+2 ≥ y is true iff the number x+2 is no less than the number y– x+2 ≥ y is true in a world where x = 7, y = 1– x+2 ≥ y is false in a world where x = 0, y = 6

–––

•–

•••

Page 18: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

18

Entailment• Entailment means that one thing follows from

another:KB ╞ α

• Knowledge base KB entails sentence α if and only if α is true in all worlds where KB is true

– E.g., the KB containing “the Giants won” and “the Reds won” entails “Either the Giants won or the Reds won”

– E.g., x+y = 4 entails 4 = x+y– Entailment is a relationship between sentences (i.e.,

syntax) that is based on semantics––

••

Page 19: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

19

Models• Logicians typically think in terms of models, which are

formally structured worlds with respect to which truth can be evaluated

• We say m is a model of a sentence α if α is true in m

• M(α) is the set of all models of α

• Then KB ╞ α iff M(KB) M(α)– E.g. KB = Giants won and Reds

won α = Giants won

–•••

Page 20: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

20

Entailment in the wumpus world

Situation after detecting nothing in [1,1], moving right, breeze in [2,1]

Consider possible models for KB assuming only pits

3 Boolean choices 8 possible models

Page 21: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

21

Wumpus models

Page 22: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

22

Wumpus models

• KB = wumpus-world rules + observations•

Page 23: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

23

Wumpus models

• KB = wumpus-world rules + observations• α1 = "[1,2] is safe", KB ╞ α1, proved by model checking

••

Page 24: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

24

Wumpus models

• KB = wumpus-world rules + observations

Page 25: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

25

Wumpus models

• KB = wumpus-world rules + observations• α2 = "[2,2] is safe", KB ╞ α2

Page 26: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

26

Inference• KB ├i α = sentence α can be derived from KB by

procedure i• Soundness: i is sound if whenever KB ├i α, it is also true

that KB╞ α• Completeness: i is complete if whenever KB╞ α, it is also

true that KB ├i α • Preview: we will define a logic (first-order logic) which is

expressive enough to say almost anything of interest, and for which there exists a sound and complete inference procedure.

• That is, the procedure will answer any question whose answer follows from what is known by the KB.

•••••

Page 27: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

27

What is a logic?• A formal language

– Syntax – what expressions are legal– Semantics – what legal expressions mean– Proof system – a way of manipulating syntactic

expressions to get other syntactic expressions (which will tell us something new)

• Why proofs? Two kinds of inferences an agent might want to make:– Multiple percepts ) conclusions about the world– Current state & operator ) properties of next state

Page 28: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

28

Models

Page 29: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

29

Propositional (Boolean) Logic

• Syntax of allowable sentences– atomic sentences

• indivisible syntactic elements• Use uppercase letters to represent a proposition

that can be true or false• True and False are predefined propositions where

True means always true and False means always false

Page 30: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

30

Atomic sentences

• Syntax of atomic sentences– indivisible syntactic elements– Use uppercase letters to represent a

proposition that can be true or false– True and False are predefined propositions

where True means always true and False means always false

Page 31: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

31

Complex sentences

• Formed from atomic sentences using connectives– ~ (or = not): the negation– ^ (and): the conjunction– V (or): the disjunction– => (or = implies): the implication (if and only if): the biconditional

Page 32: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

32

Backus-Naur Form (BNF)

Page 33: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

33

Propositional (Boolean) Logic

• Semantics– given a particular model (situation), what are

the rules that determine the truth of a sentence?

– use a truth table to compute the value of any sentence with respect to a model by recursive evaluation

Page 34: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

34

Propositional logic: Syntax• Propositional logic is the simplest logic – illustrates basic

ideas

• The proposition symbols P1, P2 etc are sentences– If S is a sentence, S is a sentence (negation)– If S1 and S2 are sentences, S1 S2 is a sentence

(conjunction)– If S1 and S2 are sentences, S1 S2 is a sentence

(disjunction)– If S1 and S2 are sentences, S1 S2 is a sentence

(implication)– If S1 and S2 are sentences, S1 S2 is a sentence

(biconditional)–––––

Page 35: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

35

Propositional logic: Semantics• Each model specifies true/false for each proposition symbol

– E.g. P1,2 P2,2 P3,1– false true false

• With these symbols, 8 possible models, can be enumerated automatically.• Rules for evaluating truth with respect to a model m:

S is true iff S is false S1 S2 is true iff S1 is true and S2 is trueS1 S2 is true iff S1is true or S2 is trueS1 S2 is true iff S1 is false or S2 is true i.e., is false iff S1 is true and S2 is falseS1 S2 is true iff S1S2 is true andS2S1 is true

• Simple recursive process evaluates an arbitrary sentence, e.g.,

P1,2 (P2,2 P3,1) = true (true false) = true true = true

••

–•

Page 36: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

36

Truth tables for connectives

Page 37: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

37

Wumpus world sentences

Let Pi,j be true if there is a pit in [i, j].Let Bi,j be true if there is a breeze in [i, j].

P1,1

B1,1

B2,1

• "Pits cause breezes in adjacent squares"B1,1 (P1,2 P2,1)B2,1 (P1,1 P2,2 P3,1)

Page 38: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

38

Truth tables for inference

Page 39: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

39

Inference by enumeration• Depth-first enumeration of all models is sound and complete

• For n symbols, time complexity is O(2n), space complexity is O(n)

••

Page 40: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

40

Logical equivalence• Two sentences are logically equivalent} iff true in same

models: α ≡ ß iff α╞ β and β╞ α

••

Page 41: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

41

Validity and satisfiability• A sentence is valid if it is true in all models,

– e.g., True, A A, A A, (A (A B)) B

• Validity is connected to inference via the Deduction Theorem:– KB ╞ α if and only if (KB α) is valid

• A sentence is satisfiable if it is true in some model– e.g., A B, C

• A sentence is unsatisfiable if it is true in no models– e.g., AA

• Satisfiability is connected to inference via the following:– KB ╞ α if and only if (KB α) is unsatisfiable

–––

Page 42: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

42

Propositional inference: normal forms

“ sum of products of simple variables ornegated simple variables”

“ product of sums of simple variables ornegated simple variables”

Page 43: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

43

7.5 Reasoning Pattern in propositional Logic

Page 44: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

44

7.5 Reasoning Pattern in propositional Logic

• Inference Rules– Modus Ponens:

• Whenever sentences of form => and are giventhe sentence can be inferred

– R1: Green => Martian

– R2: Green– Inferred: Martian

Page 45: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

45

Reasoning w/ propositional logic

• Inference Rules– And-Elimination

• Any of conjuncts can be inferred– R1: Martian ^ Green– Inferred: Martian– Inferrred: Green

• Use truth tables if you want to confirm inference rules

Page 46: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

46

Example of a proof

~P ~B

BP?

P?

P?

P?

Page 47: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

47

Example of a proof

~P ~B

B~P

~P

P?

P?

Page 48: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

48

Inference Rules

Page 49: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

49

Inference Rules

Page 50: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

50

Constructing a proof• Proving is like searching

– Find sequence of logical inference rules that lead to desired result

– Note the explosion of propositions• Good proof methods ignore the countless irrelevant

propositions

• The fact that inference in propositional logic is NP-complete.

• In many practical cases, finding a proof can be highly efficient simply because it can ignore irrelevant propositions, no matter how many of them.

Page 51: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

51

Monotonicity of knowledge base

• Knowledge base can only get larger– Adding new sentences to knowledge base can only

make it get larger– If (KB entails )– ((KB ^ ) entails )

• This is important when constructing proofs– A logical conclusion drawn at one point cannot be

invalidated by a subsequent entailment

Page 52: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

52

Resolution• Conjunctive Normal Form (CNF)

conjunction of disjunctions of literalsclausesE.g., (A B) (B C D)

• Resolution inference rule (for CNF):li … lk, m1 … mn

li … li-1 li+1 … lk m1 … mj-1 mj+1 ... mn

where li and mj are complementary literals. E.g., P1,3 P2,2, P2,2

P1,3

• Resolution is sound and complete for propositional logic

»•

Page 53: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

53

Resolution

Soundness of resolution inference rule:

(li … li-1 li+1 … lk) li mj (m1 … mj-1 mj+1 ...

mn)

(li … li-1 li+1 … lk) (m1 … mj-1 mj+1 ... mn)

Page 54: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

54

Conversion to CNFB1,1 (P1,2 P2,1)β

1. Eliminate , replacing α β with (α β)(β α).(B1,1 (P1,2 P2,1)) ((P1,2 P2,1) B1,1)

2. Eliminate , replacing α β with α β.(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

3. Move inwards using de Morgan's rules and double-negation:(B1,1 P1,2 P2,1) ((P1,2 P2,1) B1,1)

4. Apply distributivity law ( over ) and flatten:(B1,1 P1,2 P2,1) (P1,2 B1,1) (P2,1 B1,1)

–•

–•

–•

Page 55: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

55

Resolution algorithm• Proof by contradiction, i.e., show KBα unsatisfiable

Page 56: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

56

Resolution example

• KB = (B1,1 (P1,2 P2,1)) B1,1 α = P1,2

Page 57: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

57

Forward and backward chaining• Horn Form (restricted)

KB = conjunction of Horn clauses– Horn clause =

• proposition symbol; or• (conjunction of symbols) symbol

– E.g., C (B A) (C D B)• Modus Ponens (for Horn Form): complete for Horn KBs

α1, … ,αn, α1 … αn ββ

• Can be used with forward chaining or backward chaining.

• These algorithms are very natural and run in linear time

•••

Page 58: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

58

Forward chaining• Idea: fire any rule whose premises are satisfied in the

KB,– add its conclusion to the KB, until query is found

Page 59: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

59

Forward chaining algorithm

• Forward chaining is sound and complete for Horn KB

Page 60: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

60

Forward chaining example

Page 61: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

61

Forward chaining example

Page 62: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

62

Forward chaining example

Page 63: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

63

Forward chaining example

Page 64: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

64

Forward chaining example

Page 65: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

65

Forward chaining example

Page 66: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

66

Forward chaining example

Page 67: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

67

Forward chaining example

Page 68: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

68

Proof of completeness• FC derives every atomic sentence that is

entailed by KB1. FC reaches a fixed point where no new atomic

sentences are derived2. Consider the final state as a model m, assigning

true/false to symbols3. Every clause in the original KB is true in m

a1 … ak b4. Hence m is a model of KB5. If KB╞ q, q is true in every model of KB, including m6.

–•

1.2.–

Page 69: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

69

Backward chaining• Idea: work backwards from the query q:

– to prove q by BC,• check if q is known already, or• prove by BC all premises of some rule concluding q

• Avoid loops: check if new subgoal is already on the goal stack

• Avoid repeated work: check if new subgoal– has already been proved true, or– has already failed––

••

Page 70: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

70

Backward chaining example

Page 71: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

71

Backward chaining example

Page 72: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

72

Backward chaining example

Page 73: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

73

Backward chaining example

Page 74: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

74

Backward chaining example

Page 75: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

75

Backward chaining example

Page 76: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

76

Backward chaining example

Page 77: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

77

Backward chaining example

Page 78: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

78

Backward chaining example

Page 79: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

79

Backward chaining example

Page 80: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

80

Forward vs. backward chaining• FC is data-driven, automatic, unconscious processing,

– e.g., object recognition, routine decisions

• May do lots of work that is irrelevant to the goal

• BC is goal-driven, appropriate for problem-solving,– e.g., Where are my keys? How do I get into a PhD program?

»

• Complexity of BC can be much less than linear in size of KB

»–

Page 81: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

81

7.6 Efficient propositional inference

Two families of efficient algorithms for propositional inference based on model checking:

• Complete backtracking search algorithms– DPLL algorithm (Davis, Putnam, Logemann, Loveland)– Incomplete local search algorithms

• WalkSAT algorithm

• Hillclimbing search•

–•

Page 82: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

82

The DPLL algorithm• Checking satisfiability:

– Determine if an input propositional logic sentence (in CNF) is satisfiable.• DPLL (Davis-Putnam Algorithm

– Search through possible assignments to (G, L, M) via depth-first search

• Improvements over truth table enumeration:– Early termination: avoids examination of entire subtrees in the search space

• A clause is true if any literal is true. (A B) (A C) is true if A is true• A sentence is false if any clause is false.

– Pure symbol heuristic• Pure symbol: always appears with the same "sign" in all clauses. • e.g., In the three clauses (A B), (B C), (C A), A and B are pure, C is impure. • Make a pure symbol literal true.

– Unit clause heuristic: assigns all unit clause symbols before branching• Unit clause: only one literal in the clause, e.g. if B=false, (B C) become a unit clause (C) ≡true , C

≡false.• The only literal in a unit clause must be true.

•••

•• )

Page 83: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

83

The DPLL algorithm

Page 84: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

84

The WalkSAT algorithm

• Incomplete, local search algorithm• Evaluation function: The min-conflict heuristic of

minimizing the number of unsatisfied clauses• Balance between greediness and randomness•••

Page 85: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

85

Searching for variable values• Other ways to find (G, L, M) assignments for:• G ^ L ^ (~L V ~G V M) ^ ~M == 0

– Simulated Annealing (WalkSAT)• Start with initial guess (0, 1, 1)• With each iteration, pick an unsatisfied clause and flip

one symbol in the clause• Evaluation metric is the number of clauses that

evaluate to true• Move “in direction” of guesses that cause more clauses

to be true• Many local mins, use lots of randomness

Page 86: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

86

WalkSAT termination

• How do you know when simulated annealing is done?– No way to know with certainty that an answer

is not possible• Could have been bad luck• Could be there really is no answer• Establish a max number of iterations and go with

best answer to that point

Page 87: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

87

The WalkSAT algorithm

Page 88: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

88

Hard satisfiability problems• Consider random 3-CNF sentences. e.g.,

(D B C) (B A C) (C B E) (E D B) (B E C)

m = number of clauses n = number of symbols

• 16 of 32 possible assignments are models (are satisfiable) for this sentence

• Therefore, 2 random guesses should find a solution– WalkSAT and DPLL should work quickly

••

Page 89: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

89

Critical point• Increase m (number of clauses)

– Hard problems seem to cluster near m/n = 4.3 (critical point)

Page 90: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

90

Hard satisfiability problems

• Median runtime for 100 satisfiable random 3-CNF sentences, n = 50

Page 91: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

91

7.7 Inference-based agents in the wumpus world

A wumpus-world agent using propositional logic:

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 (at least one wumpus)W1,1 W1,2 (at most one wumpus) n(n-1)/2W1,1 W1,3 …

64 distinct proposition symbols, 155 sentences•

Page 92: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

92

Terminology

Fringe squaresProvably safePossible safe square

Page 93: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

93

Algorithm

Page 94: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

94

• KB contains "physics" sentences for every single square• The larger the environment the larger the knowledge

base.Goal: two sentences: for all squares• For every time t and every location [x,y],Lx,y FacingRightt Forwardt Lx+1,y

• Rapid proliferation of clauses

Expressiveness limitation of propositional logic

t

t

Page 95: 1 Logical Agents Chapter 7. 2 Logical Agents What are we talking about, logical? Arent search-based chess programs logical Yes, but knowledge is used

95

Summary• Logical agents apply inference to a knowledge base to

derive new information and make decisions• Basic concepts of logic:

– syntax: formal structure of sentences– semantics: truth of sentences wrt models– entailment: necessary truth of one sentence given another– inference: deriving sentences from other sentences– soundness: derivations produce only entailed sentences– completeness: derivations can produce all entailed sentences

• Wumpus world requires the ability to represent partial and negated information, reason by cases, etc.

• Resolution is complete for propositional logicForward, backward chaining are linear-time, complete for Horn clauses

• Propositional logic lacks expressive power

••

––––––

••