1
DCP 1172Introduction to Artificial Intelligence
Lecture notes for Chap. 7 & 10 [AIMA]Chang-Sheng Chen
DCP 1172, Ch. 7 2
Knowledge and reasoning – second part
• Knowledge representation• Logic and representation• Propositional (Boolean) logic• Normal forms• Inference in propositional logic• Wumpus world example
DCP 1172, Ch. 7 3
Review
• We studied search because it facilitates the creation of agents that can reason about hypothetical (future) states of the world.
But… we haven’t said much of anything about how those states should be represented.
Or about how these future (successor) states can be generated from current states
DCP 1172, Ch. 7 4
Knowledge-Based Agents
• A knowledge-based agent is one that chooses its actions at least in part on the basis of the contents of its knowledge-base.• A knowledge-base is simply a repository of
things (i.e., domain-specific) you know represented in some useful way.
• The knowledge base cannot be a simple table.• It has to be set up so that an agent can
conclude facts about the world that are not already represented in the knowledge base.
• In other words, it has to reason about unseen worlds
DCP 1172, Ch. 7 5
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 (KRL), 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
DCP 1172, Ch. 7 6
Generic knowledge-based agent
1. TELL KB what was perceivedUses a Knowledge Representation Language (KRL) to insert new sentences, representations of facts, into KB
2. ASK KB what to do.Uses logical reasoning to examine actions and select best.
DCP 1172, Ch. 7 7
Knowledge Representation
• A knowledge representation is a formal scheme that dictates how an agent is going to represent its knowledge.• Syntax (語法 ): Rules that determine the possible strings
in the language.• Semantics(語意 ): Rules that determine a mapping from
sentences in the representation to situations in the world.
DCP 1172, Ch. 7 8
Reasoning
DCP 1172, Ch. 7 9
Wumpus world example
DCP 1172, Ch. 7 10
Wumpus world characterization
• Deterministic? Yes – outcome exactly specified.
• Fully Observable? No – only local perception.
• Static? Yes – Wumpus and pits do not move.
• Discrete? Yes
• Episodic? (Yes) – because static.
DCP 1172, Ch. 7 11
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 12
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 13
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 14
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 15
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 16
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 17
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 18
Exploring a Wumpus world
A= AgentB= BreezeS= SmellP= PitW= WumpusOK = SafeV = VisitedG = Glitter
DCP 1172, Ch. 7 19
Other tight spots
DCP 1172, Ch. 7 20
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)
DCP 1172, Ch. 7 21
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
DCP 1172, Ch. 7 22
Representation and Mappings
• Two different kinds of entities are usually mentioned in the discussions about AI programs:• Facts: truths in some relevant world (e.g.,
including each agent’s behavior and goals, etc.).
• Representation of facts in some chosen formalism.
• These are the things that we will actually be able to manipulate.
DCP 1172, Ch. 7 23
Mapping between Facts and Representations
Facts Internal Representations
Natural Language Representation
(e.g., English, Chinese, etc.)
Reasoning Programs
*
*Natural Languagegeneration
Natural Languageunderstanding
DCP 1172, Ch. 7 24
Representation of Facts
Initialfacts
Finalfacts
Internal representationof initial facts
Internal representationof final facts
Desired real reasoning
Operation ofprogram
*Forwardrepresentationmapping
*Backwardrepresentationmapping
DCP 1172, Ch. 7 25
Logic in general
DCP 1172, Ch. 7 26
Types of logic
DCP 1172, Ch. 7 27
The Semantic Wall
Physical Symbol System World
+BLOCKA+
+BLOCKB+
+BLOCKC+
P1:(IS_ON +BLOCKA+ +BLOCKB+)P2:((IS_RED +BLOCKA+)
DCP 1172, Ch. 7 28
Truth Depends on Interpretation (e.g., Anti-spam or anti-virus mail filtering)
FilteringFilteringwithwith
HH11(msg)(msg)
FilteringFilteringWithWith
HH22(msg)(msg)
Mail Spool
Discard
•MTA1 (or MUA1)
Accept•MTA0
•MTA = Mail Transfer Agent•MUA = Mail User Agent •MTA2 (or MUA1)
DCP 1172, Ch. 7 29
Entailment
Entailment is different than inference
DCP 1172, Ch. 7 30
Reasoning - Logic as a representation of the World
DCP 1172, Ch. 7 31
Models
DCP 1172, Ch. 7 32
Inference
DCP 1172, Ch. 7 33
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
DCP 1172, Ch. 7 34
Propositional logic: syntax
DCP 1172, Ch. 7 35
Propositional logic: semantics
DCP 1172, Ch. 7 36
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 QT T TT F TF T TF F F
DCP 1172, Ch. 7 37
Truth tables for basic connectives
P Q ¬P ¬Q P V Q P ^ Q P=>Q PQ
T T F F T T T TT F F T T F F FF T T F T F T FF F T T F F T T
DCP 1172, Ch. 7 38
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• …
DCP 1172, Ch. 7 39
Propositional inference: enumeration method
DCP 1172, Ch. 7 40
Enumeration: Solution
DCP 1172, Ch. 7 41
Propositional inference: normal forms
“ sum of products of simple variables ornegated simple variables”
“ product of sums of simple variables ornegated simple variables”
DCP 1172, Ch. 7 42
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 RESULTT T FT F T P ^ (¬Q)F T T (¬P) ^ QF F F
RESULT = (P ^ (¬Q)) V ((¬P) ^ Q)
DCP 1172, Ch. 7 43
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.
DCP 1172, Ch. 7 44
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:
DCP 1172, Ch. 7 45
Tautologies
• Logical expressions that are always true. Can be simplified out.
Examples:
TT V AA V (¬A)¬(A ^ (¬A))A A((P V Q) P) V (¬P ^ Q)(P Q) => (P => Q)
DCP 1172, Ch. 7 46
Validity and satisfiability
Theorem
DCP 1172, Ch. 7 47
Proof methods
DCP 1172, Ch. 7 48
Inference Rules
DCP 1172, Ch. 7 49
Inference Rules
DCP 1172, Ch. 7 50
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• …
DCP 1172, Ch. 7 51
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
DCP 1172, Ch. 7 52
Summary
DCP 1172, Ch. 7 53
Next time
• First-order logic: [AIMA] Chapter 7
DCP 1172, Ch. 7 54
Knowledge Representation
• A knowledge representation is a formal scheme that dictates how an agent is going to represent its knowledge.• Syntax: Rules that determine the possible strings in the
language.• Semantics: Rules that determine a mapping from
sentences in the representation to situations in the world.
DCP 1172, Ch. 7 55
Reasoning
• The knowledge base can’t be a simple table.• It has to be set up so that an agent can conclude facts about
the world that are not already represented in the knowledge base.
• In other words, it has to reason about unseen worlds
DCP 1172, Ch. 7 56
Reasoning