200 likes | 346 Views
Planning to Learn, Learning to Plan. Announcements. Quiz A Review of AI Planning Techniques Reading for next time: Cognitive model for planning Allegro for Windows Project deadline I. What is planning?. “Figuring out what to do next” Wumpus agent already does that with: First-order logic
E N D
Planning to Learn, Learning to Plan CS251: Intro to AI/Lisp II
Announcements • Quiz • A Review of AI Planning Techniques • Reading for next time: Cognitive model for planning • Allegro for Windows • Project deadline I CS251: Intro to AI/Lisp II
What is planning? “Figuring out what to do next” • Wumpus agent already does that with: • First-order logic • Resolution • Shortcomings • Default values • Efficiency CS251: Intro to AI/Lisp II
Why do we need planners? CS251: Intro to AI/Lisp II
STRIPS Planning • State space search • Just like the search we saw last quarter • “It’s all in the operators” • What does a STRIPS operator look like? CS251: Intro to AI/Lisp II
STRIPS Operators At(here), Path(here, there) Go(there) At(there), At(here) CS251: Intro to AI/Lisp II
Planning Terminology I • STRIPS ops • Action description • Precondition • Effect / Postconditions / Add & Delete • Operator schemata • When is operator oapplicable in situation s? CS251: Intro to AI/Lisp II
Planning Terminology II • The final frontier of planning: space • State (situation) space • Plan space • Plan space is populated by __________ • Operators • Refine by eliminating plans from the set of plans under consideration • Modify plans by messing with them CS251: Intro to AI/Lisp II
Planning in Plan Space • NOAH planner (Sacerdoti 1975) was first partial-order planner • In state space, solution is a path • Series of operators • In plan space, series of plan transformations • Examples: Expand detail, adding ordering constraints CS251: Intro to AI/Lisp II
Pruning the Search Space • Cutting down the search space • Means-end analysis • Prioritize goals • Identify interactions • Parallelism • Abstraction levels • Different approaches • Early: NOAH, ABSTRIPS (Sacerdoti 1973) CS251: Intro to AI/Lisp II
A Problem in Plan Space • The goal: Getting milk, banana and a drill and heading home • Actions: • Go: From here to there • Buy: We’ve got money • Good things to know • Hardware stores sell drills • Supermarkets sell milk and bananas CS251: Intro to AI/Lisp II
Getting Started • Start with an initial plan Start At(Home) Sells(SM, Banana) Sells(SM, Milk) Sells(HWS, Drill) Have(Milk) Have(Banana) Have(Drill) At(Home) Finish CS251: Intro to AI/Lisp II
Next Step Start At(s) Sells(s, Bananas) At(s) Sells(s, Milk) At(s) Sells(s, Drill) Buy(Milk) Buy(Bananas) Buy(Drill) Have(Drill) Have(Milk) At(Home) Have(Banana) Finish CS251: Intro to AI/Lisp II
What have we got? • Protection • Need to have drill • Buy drill achieves Have(Drill) • If we mess with drill buying, then … • When doesn’t it matter? CS251: Intro to AI/Lisp II
And after that... Start At(SM) Sells(SM, Bananas) At(HWS) Sells(HWS, Drill) At(SM) Sells(SM, Milk) Buy(Milk) Buy(Bananas) Buy(Drill) Have(Drill) Have(Milk) At(Home) Have(Banana) Finish CS251: Intro to AI/Lisp II
What’s the problem? • Need to: • Go from home to hardware store • Go from home to supermarket • Pick one and then... CS251: Intro to AI/Lisp II
Interactive Problems • Big red arrows are protected links • Protected from … threats • Change the ordering • The problem in the abstract • Suppose S1 achieves c for S2 • Now S3 comes along and clobbers c CS251: Intro to AI/Lisp II
Project topics • Planning • Build a planner from scratch: (AB)STRIPS, NOAH • Explore current planners • Robotics • Investigate reactive planning: write a series of RAPs • “Build” a robot using subsumption CS251: Intro to AI/Lisp II
Project Topics II • Perception • Explore audio perception • Write an object recognizer (Pepsi cans in Wayne’s World) • Machine learning • Look at data mining (name & email from newsgroup sigs) CS251: Intro to AI/Lisp II
Project Topics III • Uncertainty • Build a system that constructs Bayesian networks • Look at HMMs in speech recognition • Natural language • Write a story generator • Tell jokes CS251: Intro to AI/Lisp II