10
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

Embed Size (px)

Citation preview

Page 1: 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

PLANNING IN AI

Page 2: 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

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.

Page 3: 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

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

Page 4: 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

TERMINOLOGY

• Operator Schema• The sequence of steps followed to solve a planning

problem• Characterize actions/events

Page 5: 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

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)

Page 6: 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

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

Page 7: 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

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)

Page 8: 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

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

Page 9: 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

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

Page 10: 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

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