550 likes | 1.45k Views
Planning in AI. Planning in AI. Determine the set of steps that are necessary to achieve a goal Some steps might be conditional, i.e., they are only taken when a set of conditions is present during plan execution. Typical Planning Problems *.
E N D
Planning in AI • Determine the set of steps that are necessary to achieve a goal • Some steps might be conditional, i.e., they are only taken when a set of conditions is present during plan execution.
Typical Planning Problems * • Representing and reasoning about time, causality, and intentions • Physical and other kinds of constraints on acceptable solutions • Uncertainty in the execution of plans • How the “real world” is sensed and perceived • Multiple agents who may cooperate or interfere * Lucci, Stephen; Kopec, Danny: Artificial Intelligence in the 21st Century
Terminology • Operator Schema • The sequence of steps followed to solve a planning problem • Characterize actions/events
Strips (StanFORD RESEARCH INSTITUE Problem Solver) • Operator Schema Consist of: • Precondition • Delete List • Add List • Variables in the Precondition, Delete List, and Add List that are bound at run-time • Example: • Pickup(X) • Precondition: OnTable(X) ^ HandEmpty ^ Clear(X) • Delete List: OnTable(X) HandEmpty Clear(X) • Add List: Holding(X)
Some Types of Planning • Hierarchical Planning • Goals are not equally valued • Some might be necessary • Others might be desirable, but not necessary • Numerical values provide hierarchical value • Opportunistic Planning • Exploit the conditions in a plan state to more easily achieve a goal • Conditional Planning • Planning based on things that “might happen.” • Partial Order Planning • Not all steps in the plan must be made in order
Planning Strategies • Means-Ends Analysis • Reduce the distance between the current state and the goal state (GPS – Newell and Simon) • Least Commitment Planner • Only commit to a plan when forced by constraints • Can maintain multiple/flexible “parallel” plans until forced to select a concrete alternative • Ordering of steps is deferred as long as possible • Depth-First Backtracking (“lifting”) • Generates combinations of steps until one that works is found • Impractical for large plans (exponential time)
Planning Strategies(continued) • Beam Search • Expand the top few (beam width) nodes at each level of a breadth-first search • One-The-Best Backtracking • Rely on local information to determine a best-guess path, then backtrack – looking for good alternative candidates along the path • Dependency-Directed Search • Store dependencies between decisions, assumptions, and alternatives for each • On failure, keep parts of the solution that are not dependent of the cause of failure
Planning Strategies(continued) • Opportunistic Search • Favor the most constrained operations • Meta-level Plans • Plans about plans • Techniques of planning can be selected dynamically based on the type of problem at hand. • Distributed Planning • Different parts (subplans) of the plan are developed by different “expert” components of the system
GraphPlan • Graph builds a graph starting from the initial state • Uses “layered” or “parallel” plans, where each layer provides a set of actions that can be performed simultaneously. • Mutually exclusive actions are identified at the level where they first occur. • Builds a graph where each node represents the state after all possible transitions from the previous state. • Solutions are found by working backward from the final node • GraphPlan can also be used to generate heuristics for A* search • http://web.engr.oregonstate.edu/~afern/classes/cs533/notes/graphplan.pdf