Lecture 5-2 February 4th, 1999 CS250 FOPL, Part Deux Lecture 5-2 February 4th, 1999 CS250 Lecture 5-2 CS250: Intro to AI/Lisp
Return to the Land of the Wumpus Use Tell to add assertions to the knowledge base Use Ask to pose queries Answers to Asked queries are binding lists (aka substitutions) Tell(KB,Percept([Smell, Breeze, None],5)) Ask(KB,a Action(a, 5)) Does the KB entail any particular action at t=5? {a/Shoot} (That’s a yes) Lecture 5-2 CS250: Intro to AI/Lisp
A Little Syntax Given a sentence S, and a substitution, S denotes the result of plugging into S S = Smarter(x, y) = {x/Hillary, y/Bill} S = Smarter(Hillary, Bill) What does Ask(KB, S) do in these terms? Returns some (or all) such that: KB |= S Lecture 5-2 CS250: Intro to AI/Lisp
KB for WW Represent perceptions more abstractly Write rules to transform percepts into predicates Map from predicates to actions Why is this a better approach? Lecture 5-2 CS250: Intro to AI/Lisp
“The Only Constant is Change” How do we reason about changing situations? Minimal internal state, but story history of percepts Build an internal model of the world Need diachronic rules Already use time, but not the whole context Lecture 5-2 CS250: Intro to AI/Lisp
Be here now. Predicate calculus doesn’t have time for time “For all x” means “for all x, today, tomorrow and the day after, and the day after that...” Fine for the immutable things in this world, but need a fix for changing predicates Lecture 5-2 CS250: Intro to AI/Lisp
Three’s Company Add situations to predicate calculus Lecture 5-2 CS250: Intro to AI/Lisp
Ever-Changing Predicates Add a situation argument to properties that change over time, Si Actions move from one situation to the next situation Result(action, situation) Actions have effects Lecture 5-2 CS250: Intro to AI/Lisp
Tracking Action Effects If the agent is at a location with gold, and grabs the gold, the agent is then holding the gold in the next situation Portable(Gold) s AtGold(s) Present(Gold, s) x,s Present(x,s) Portable(x) Holding(x, Result(Grab, s)) And if the agent releases the gold? x,s Holding(x, Result(Release, s)) Lecture 5-2 CS250: Intro to AI/Lisp
Flavors of Axioms State the effects of actions (Effect axioms) What about the non-effects of inaction? (Frame axioms) If the agent is Holding an object in a situation, and performs any action except Release, then the agent is Holding the object in the resulting situation Don’t forget about not Holding! Lecture 5-2 CS250: Intro to AI/Lisp
A New Flavor Combination Successor state axioms combine effect and frame axioms Each axiom is “about” a predicate: true afterwards [an action made it true true already and no action made it false] Lecture 5-2 CS250: Intro to AI/Lisp
Frame Problems Representational frame problem Writing down what doesn’t change Inferential frame problem Reasoning about what doesn’t change Situation calculus requires carrying every property through time - even if it doesn’t change What if most of the world doesn’t change? Lecture 5-2 CS250: Intro to AI/Lisp
Doin’ the Sherlock Thing Squares are near a breezy pit Diagnostic - infer cause from effect Causal - infer effect from cause Model-based reasoning versus diagnostic approaches Lecture 5-2 CS250: Intro to AI/Lisp
Planning Special search systems for reasoning about actions Different representations Making good choices Preferences among actions Lecture 5-2 CS250: Intro to AI/Lisp