Download presentation

1
**Knowledge and reasoning – second part**

Knowledge representation Logic and representation Propositional (Boolean) logic Normal forms Inference in propositional logic Wumpus world example SE 420

2
**Knowledge-Based Agent**

Agent that uses prior or acquired knowledge to achieve its goals Can make more efficient decisions Can make informed decisions Knowledge Base (KB): contains a set of representations of facts about the Agent’s environment Each representation is called a sentence Use some knowledge representation language, to TELL it what to know e.g., (temperature 72F) ASK agent to query what to do Agent can use inference to deduce new facts from TELLed facts Knowledge Base Inference engine Domain independent algorithms Domain specific content TELL ASK SE 420

3
**Generic knowledge-based agent**

TELL KB what was perceived Uses a KRL to insert new sentences, representations of facts, into KB ASK KB what to do. Uses logical reasoning to examine actions and select best. SE 420

4
Wumpus world example SE 420

5
**Wumpus world characterization**

Deterministic? Accessible? Static? Discrete? Episodic? SE 420

6
**Wumpus world characterization**

Deterministic? Yes – outcome exactly specified. Accessible? No – only local perception. Static? Yes – Wumpus and pits do not move. Discrete? Yes Episodic? (Yes) – because static. SE 420

7
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

8
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

9
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

10
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

11
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

12
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

13
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

14
**Exploring a Wumpus world**

A= Agent B= Breeze S= Smell P= Pit W= Wumpus OK = Safe V = Visited G = Glitter SE 420

15
Other tight spots SE 420

16
**Another example solution**

No perception 1,2 and 2,1 OK Move to 2,1 B in 2,1 2,2 or 3,1 P? 1,1 V no P in 1,1 Move to 1,2 (only option) SE 420

17
**Example solution S and No S when in 2,1 1,3 or 1,2 has W**

1,2 OK 1,3 W No B in 1,2 2,2 OK & 3,1 P SE 420

18
Logic in general SE 420

19
Types of logic SE 420

20
**Physical Symbol System World**

The Semantic Wall Physical Symbol System World +BLOCKA+ +BLOCKB+ +BLOCKC+ P1:(IS_ON +BLOCKA+ +BLOCKB+) P2:((IS_RED +BLOCKA+) Syntax: says what is allowed on the LHS Semantics: says how what is on the LHS relates to what is on the RHS Inference: says how you can manipulate (formally, i.e., with no reference to the RHS) the symbols. [remember PSSH] Want to be able to trust the results: want whatever the inference procedure does to “respect” what’s true or what follows in the world. So this is where we’re headed; good to keep in mind as we go through all the definitions now to follow. There is a method in this madness... algebra example (put on board): but don’t use “entails” instead convey the idea > n m: is this true or false? don’t know if n=3, m=5, and > has its usual meaning, then (>n m) is false (> n m) and (> m p) entail (n p) SE 420

21
**Truth depends on Interpretation**

Representation 1 World A B ON(A,B) T ON(A,B) F ON(A,B) F A ON(A,B) T B block pictures (on A B) and on(B C) entails (on A C) (again don’t say “entails) for this as well as for number example jus t did, need transitivity relationships spend time on why it matters: if build a KB want to be able to verify its answers introduce notion of “refer” “mean” idea of mapping into world; for this slide handwave about meaning of “on(a,b)” SE 420

22
**Entailment is different than inference**

SE 420

23
**Logic as a representation of the World**

Facts World Fact follows Refers to (Semantics) Representation: Sentences Sentence entails SE 420

24
Models SE 420

25
Inference SE 420

26
**Basic symbols Expressions only evaluate to either “true” or “false.”**

P “P is true” ¬P “P is false” negation P V Q “either P is true or Q is true or both” disjunction P ^ Q “both P and Q are true” conjunction P => Q “if P is true, the Q is true” implication P Q “P and Q are either both true or both false” equivalence SE 420

27
**Propositional logic: syntax**

SE 420

28
**Propositional logic: semantics**

29
**Truth tables Truth value: whether a statement is true or false.**

Truth table: complete list of truth values for a statement given all possible values of the individual atomic expressions. Example: P Q P V Q T T T T F T F T T F F F SE 420

30
**Truth tables for basic connectives**

P Q ¬P ¬Q P V Q P ^ Q P=>Q PQ T T F F T T T T T F F T T F F F F T T F T F T F F F T T F F T T SE 420

31
**Propositional logic: basic manipulation rules**

¬(¬A) = A Double negation ¬(A ^ B) = (¬A) V (¬B) Negated “and” ¬(A V B) = (¬A) ^ (¬B) Negated “or” A ^ (B V C) = (A ^ B) V (A ^ C) Distributivity of ^ on V A => B = (¬A) V B by definition ¬(A => B) = A ^ (¬B) using negated or A B = (A => B) ^ (B => A) by definition ¬(A B) = (A ^ (¬B))V(B ^ (¬A)) using negated and & or … SE 420

32
**Propositional inference: enumeration method**

SE 420

33
**Enumeration: Solution**

SE 420

34
**Propositional inference: normal forms**

“product of sums of simple variables or negated simple variables” “sum of products of simple variables or negated simple variables” SE 420

35
**Deriving expressions from functions**

Given a boolean function in truth table form, find a propositional logic expression for it that uses only V, ^ and ¬. Idea: We can easily do it by disjoining the “T” rows of the truth table. Example: XOR function P Q RESULT T T F T F T P ^ (¬Q) F T T (¬P) ^ Q F F F RESULT = (P ^ (¬Q)) V ((¬P) ^ Q) SE 420

36
A more formal approach To construct a logical expression in disjunctive normal form from a truth table: Build a “minterm” for each row of the table, where: - For each variable whose value is T in that row, include the variable in the minterm - For each variable whose value is F in that row, include the negation of the variable in the minterm - Link variables in minterm by conjunctions The expression consists of the disjunction of all minterms. SE 420

37
**Example: adder with carry**

Takes 3 variables in: x, y and ci (carry-in); yields 2 results: sum (s) and carry-out (co). To get you used to other notations, here we assume T = 1, F = 0, V = OR, ^ = AND, ¬ = NOT. co is: s is: SE 420

38
Tautologies Logical expressions that are always true. Can be simplified out. Examples: T T V A A V (¬A) ¬(A ^ (¬A)) A A ((P V Q) P) V (¬P ^ Q) (P Q) => (P => Q) SE 420

39
**Validity and satisfiability**

Theorem SE 420

40
Proof methods SE 420

41
Inference Rules SE 420

42
Inference Rules SE 420

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

Resolution Conjunctive Normal Form (CNF) conjunction of disjunctions of literals clauses E.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

44
**Conversion to CNF B1,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) 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)

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

46
Resolution example KB = (B1,1 (P1,2 P2,1)) B1, α = P1,2

47
**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

48
**Idea: fire any rule whose premises are satisfied in the KB,**

Forward chaining Idea: fire any rule whose premises are satisfied in the KB, add its conclusion to the KB, until query is found

49
**Forward chaining algorithm**

Forward chaining is sound and complete for Horn KB

50
**Forward chaining example**

51
**Forward chaining example**

52
**Forward chaining example**

53
**Forward chaining example**

54
**Forward chaining example**

55
**Forward chaining example**

56
**Forward chaining example**

57
**Forward chaining example**

58
**FC derives every atomic sentence that is entailed by KB**

Proof of completeness FC derives every atomic sentence that is entailed by KB FC reaches a fixed point where no new atomic sentences are derived Consider the final state as a model m, assigning true/false to symbols Every clause in the original KB is true in m a1 … ak b Hence m is a model of KB If KB╞ q, q is true in every model of KB, including m

59
**to prove q by BC, Backward chaining**

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

60
**Backward chaining example**

61
**Backward chaining example**

62
**Backward chaining example**

63
**Backward chaining example**

64
**Backward chaining example**

65
**Backward chaining example**

66
**Backward chaining example**

67
**Backward chaining example**

68
**Backward chaining example**

69
**Backward chaining example**

70
**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

71
**Efficient propositional inference**

Two families of efficient algorithms for propositional inference: Complete backtracking search algorithms DPLL algorithm (Davis, Putnam, Logemann, Loveland) Incomplete local search algorithms WalkSAT algorithm

72
The DPLL algorithm Determine if an propositional logic sentence (in CNF) is satisfiable. Improvements over truth table enumeration: Early termination A clause is true if any literal 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 Unit clause: only one literal in the clause The only literal in a unit clause must be true.

73
The DPLL algorithm

74
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

75
The WalkSAT algorithm

76
**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 W1,1 W1,2 W1,1 W1,3 … 64 distinct proposition symbols, 155 sentences

78
**Facts: Percepts inject (TELL) facts into the KB **

Wumpus world: example Facts: Percepts inject (TELL) facts into the KB [stench at 1,1 and 2,1] S1,1 ; S2,1 Rules: if square has no stench then neither the square or adjacent square contain the wumpus R1: !S1,1 !W1,1 !W1,2 !W2,1 R2: !S2,1 !W1,1 !W2,1 !W2,2 !W3,1 … Inference: KB contains !S1,1 then using Modus Ponens we infer !W1,1 !W1,2 !W2,1 Using And-Elimination we get: !W1,1 !W1,2 !W2,1 SE 420

79
**Limitations of Propositional Logic**

1. It is too weak, i.e., has very limited expressiveness: Each rule has to be represented for each situation: e.g., “don’t go forward if the wumpus is in front of you” takes 64 rules 2. It cannot keep track of changes: If one needs to track changes, e.g., where the agent has been before then we need a timed-version of each rule. To track 100 steps we’ll then need 6400 rules for the previous example. Its hard to write and maintain such a huge rule-base Inference becomes intractable SE 420

80
Summary SE 420

Similar presentations

© 2019 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google