290 likes | 582 Views
Agents that Reason Logically. Logical agents have knowledge base , from which they draw conclusions TELL: provide new facts to agent ASK: decide on appropriate action. Sample: Wumpus World. Show original wumpus game goal is to shoot wumpus example of logical reasoning
E N D
Agents that Reason Logically • Logical agents have knowledge base, from which they draw conclusions • TELL: provide new facts to agent • ASK: decide on appropriate action
Sample: Wumpus World • Show original wumpus game • goal is to shoot wumpus • example of logical reasoning • http://www.inthe70s.com/games/wumpus/index.shtml • Our version: • Kill the wumpus.
A Wumpus Agent • Agent does not perceive its own location (unlike sample game), but it can keep track of where it has been • Percepts: • Stench – wumpus is nearby • Breeze – pit is nearby
Wumpus Agent • Actuators: • Forward, Turn Left, Turn Right • Shoot (shoots arrow forward until hits wumpus or wall) • Environment: • 4x4 grid, start at (1,1) facing right
Wumpus Agent • Death • Agent dies if it enters a pit or square with wumpus • Goal: kill wumpus
Some complex reasoning examples • Start in (1,1) • Breeze in (1,2) and (2,1) • Probably a pit in (2,2) • Smell in (1,1) – where can you go? • Pick a direction – shoot • Walk in that direction • Know where wumpus is
The use of logic • A logic: formal language for representing information, rules for drawing conclusions • Two kinds of logics: • Propositional Logic (Chap 7) • Represents facts • First Order Logic (Chap 8) • Represents facts, objects, and relations
Soundness • Rules of inference allow us to derive new sentences entailed by a knowledge base • Rules of inference must be sound: sentences inferred by a KB should be entailed by that KB • What is a non-sound inference? • Video
Entailment • At any given time, we have a knowledge base of information • If Jan likes ice cream, we would share tastes • If we share tastes, I would like to know Jan better • Jan likes ice cream • The knowledge base KB entails a means a is true in all worlds where KB is true • e.g. if a = “I would like to know Jan better” • KB a
Enumeration is too computationally intense • For n proposition symbols, enumeration takes 2n rows (exponential) • Inference rules allow you to deduce new sentences from the KB • Can use inference rules as operators in a standard search algorithm • Think of testing if something as true as searching for it
Common inference rules for propositional logic • Modus Ponens (Implication-Elimination) • And-EliminationAnd-Introduction • “Or Introduction”
Double-Negation Elimination Unit Resolution Resolution Common inference rules for propositional logic
Example of using logic in Wumpus World • KB contains:
KB also contains knowledge of environment • No stench no wumpus nearby • Stench wumpus nearby
We can determine where wumpus is! • Method 1: Truth table • At least 14 symbols currently: S1,1, S2,1, S1,2, S2,2, W1,1, W2,1, W1,2, W2,2, W3,1, W1,3, B1,1, B2,1, B1,2, B2,2 • 214 rows, ouch!
We can determine where wumpus is! • Method 2: Inference • Modus Ponens • And-Elimination
Inference continued... • Modus Ponens and And-Elimination again: • One more Modus Ponens:
Inference continued... • Unit Resolution: Wumpus is in (1,3)!!! Shoot it. Shoot where?
Determining action based on knowledge • Propositional logic cannot answer well the question “What action should I take?” • It only answers “Should I take action X?”
Propositional logic seems inefficient • Rule: “Shoot if the wumpus is in front of you” • 16 x 4 = 64 rules for the 4x4 grid • Ditto for pits • First order logic is much more efficient
First-Order Logic: Better choice for Wumpus World • Propositional logic represents facts • First-order logic gives us • Objects • Relations: how objects relate to each other • Functions: return value for given input
Syntax and Semantics • First-order logic has the following: • Constants: represent objects • book, A, cs327 • Predicates: represent relations • OlderSibling(Lisa,Bart) • OlderSibling(Maggie,Lisa) • OlderSibling(Maggie,Bart) • Functions • FatherOf(Luke) = Anakin
Syntax and Semantics • Atomic Sentences • Father(Luke,Anakin) • Siblings(SonOf(Anakin), DaughterOf(Anakin)) • Complex Sentences • and, or, not, implies, equivalence • Equality
Universal Quantification • “For all, for every”: • Examples: • Usually use with • Common mistake to use
Existential Quantification • “There exists”: • Typically use with • Common mistake to use
First-Order Logic in Wumpus World • Suppose an agent perceives a stench, breeze, at time t = 5: • Percept([Stench,Breeze],5) • [Stench,Breeze] is a list • Then want to query for an appropriate action. Find an a (ask the KB):