240 likes | 586 Views
(Classical) AI Planning. General-Purpose Planning: State & Goals. Initial state : (on A Table) (on C A) (on B Table) (clear B) (clear C) Goals : (on C Table) (on B C) (on A B) (clear A). A. Initial state. Goals. C. B. A. B. C. ( Ke Xu ). No block on top of ?x.
E N D
General-Purpose Planning: State & Goals • Initial state: (on A Table) (on C A) (on B Table) (clear B) (clear C) • Goals: (on C Table) (on B C) (on A B) (clear A) A Initial state Goals C B A B C (Ke Xu)
No block on top of ?x No block on top of ?y nor ?x transformation On table General-Purpose Planning: Operators Operator: (Unstack ?x) • Preconditions: (on ?x ?y) (clear ?x) • Effects: • Add: (on ?x table) (clear ?y) • Delete: (on ?x ?y) ?x ?y ?y ?x … …
Planning: Search Space C A B C A B C B A B A C B A C B A B C C B A B A C A C A A B C B C C B A A B C (Michael Moll)
Some Examples Which of the following problems can be modeled as AI planning problems? • Route search: Find a route between Lehigh University and the Naval Research Laboratory • Project management: Construct a project plan for organizing an event (e.g., the Musikfest) • Military operations: Develop an air campaign • Information gathering: Find and reserve an airline ticket to travel from Newark to Miami • Game playing: plan the behavior of a computer controlled player • Resources control: Plan the stops of several of elevators in a skyscraper building. Answer: ALL!
Patrol • Preconditions: No Monster • Effects: patrolled • Fight • Preconditions: Monster in sight • Effects: No Monster FSM: Monster In Sight Planning Operators Patrol Fight No Monster A resulting plan: Monster in sight No Monster patrolled Fight Patrol FSM vs AI Planning Neither is more powerful than the other one
Patrol • Preconditions: No Monster • Effects: patrolled • Fight • Preconditions: Monster in sight • Effects: No Monster … reasoning knowledge Many potential plans: Planning Operators Fight Fight Fight Fight Fight Patrol Patrol Patrol Patrol Patrol … But Planning Gives More Flexibility • “Separates implementation from data” --- Orkin If conditions in the state change making the current plan unfeasible: replan!
But… Does Classical Planning Work for Games? F.E.A.R. not!
General Purpose vs. Domain-Specific • Planning: find a sequence of actions to achieve a goal • General purpose: symbolic descriptions of the problems and the domain. The plan generation algorithm the same • Domain Specific: The plan generation algorithm depends on the particular domain Advantage: - opportunity to have clear semantics Disadvantage: - symbolic description requirement Advantage: - can be very efficient Disadvantage: - lack of clear semantics - knowledge-engineering for plan generation
state • plan We are going to discuss these forms • Hierarchical • Disjunctive plans Classes of General-Purpose Planners General purpose planners can be classified according to the space where the search is performed: • SAT
State of the world State- and Plan-Space Planning • State-space planners transform the state of the world. These planners search for a sequence of transformations linking the starting state and a final state (total order) • Plan-space planners transform the plans. These planners search for a a plan satisfying certain conditions (partial-order, least-commitment)
Why Plan-Space Planning? • 1. Motivation: “Sussman Anomaly” • Two subgoals to achieve: (on A B) (on B C) A C B A B C
Why Plan-Space Planning? • Problem of state-space search: • Try (on A B) first: • put C on the Table, then put A on B • Accidentally wind up with A on B when B is still on the Table • We can not get B on C without taking A off B • Try to solve the first subgoal first appears to be mistaken A A B C A B C B C
Travel(UMD, Lehigh) Travel(UMD,National) Travel by car Taxi(UMD,UMD-Metro) Travel by plane Metro(UMD-Metro,National) Fly(National, L.V. International) Travel(L.V. Int’nal,Lehigh) Enough money for air fare available Enough money for gasoline Taxi(L.V. Int’nal,Lehigh) Seats available Roads are passable Hierarchical (HTN) Planning Principle: Complex tasks are decomposed into simpler tasks. The goal is to decompose all the tasks into primitive tasks, which define actions that change the world. Travel from UMD to Lehigh University alternative methods
Application to Computer Bridge • Chess: better than all but the best humans • Bridge: worse than many good players • Why bridge is difficult for computers • It is an imperfect information game • Don’t know what cards the others have (except the dummy) • Many possible card distributions, so many possible moves • If we encode the additional moves as additional branches in the game tree, this increasesthe number of nodes exponentially • worst case: about 6x1044 leaf nodes • average case: about 1024 leaf nodes Not enough time to search the game tree (Dana S. Nau)
How to Reduce the Sizeof the Game Tree? • Bridge is a game of planning • Declarer plans how to play the handby combining various strategies (ruffing, finessing, etc.) • If a move doesn’t fit into a sensible strategy,then it probably doesn’t need to be considered • HTN approach for declarer play • Use HTN planning to generate a game tree in which each move corresponds to a different strategy, not a different card • Reduces average game-tree size to about 26,000 leaf nodes • Bridge Baron: implements HTN planning • Won the 1997 World Bridge Computer Challenge • All commercial versions of Bridge Baron since 1997 have include an HTN planner (has sold many thousands of copies) (Dana S. Nau)
partially instantiated steps, plus constraints add steps & constraints State-space Plan-space Universal Classical Planning (UCP)(Khambampati, 1997) • Loop: • If the current partial plan is a solution, then exit • Nondeterministically choose a way to refine the plan • Some of the possible refinements • Forward & backward state-space refinement • Plan-space refinement • Hierarchical refinements
Initial plan: Plan-space refinement final state Initial state State-space refinement Plan-space refinement State-space refinement Abstract Example
Why “Classical”? • Classical planning makes a number of assumptions: • Symbolic information (i.e., non numerical) • Actions always succeed • The “Strips” assumption: only changes that takes place are those indicated by the operators • Despite these (admittedly unrealistic) assumptions some work-around can be made (and have been made!) to apply the principles of classical planning to games • Neoclassical planning removes some of these assumptions