Title: CSC%20550:%20Introduction%20to%20Planning%20Fall%202004
1CSC 550 Introduction to PlanningFall 2004
- Goals
-
- 1. Defining Planning
- 2. Early planning systems
- 3. Types of Planning and their challenges
- - Hierarchical
- - Non-Hierarchical,
- - Other common approaches
- 4. Current Projects and challenges
2Definition of Planning
- Planning is reasoning about future events in
order to establish a series of actions to
accomplish a goal. -
- A common approach to planning is representing a
current state and determining the series of
actions necessary to reach the goal state. (or
vice versa) - Problem solving technique
- Plans are created by searching through a space of
possible actions until the sequence necessary to
accomplish the task is discovered. - Planning is a specific kind of state space search
- Deals with steps and goals that interact
- Initial State and Goal State (Next Slide)-
Hallmark example with blocks
3Initial State and Goal State
These two diagrams show the initial state and
goal state for a simple planning problem. The
purpose of planning is to find a sequence of
actions that gets from the initial state to the
goal state, or from the goal state back to the
initial state. Possible Solution
Pickup(c),Table(c), Pickup(b), PlaceOn(c),
Pickup(a), PlaceOn(b)
4Search in Planning
- Planning involves search through a search space
- Progression choose an action whose preconditions
are met until a goal state is reached - A forward approach, simple algorithm, but can
have large branching factor - Regression choose an action that matches an
unachieved subgoal while adding unmet
preconditions to the set of subgoals. Continue
until the set of subgoals is empty. - A backward approach, goal oriented, tends to be
more efficient
5Linear and Non-Linear
- Linear
- Solving one goal at a time with a stack of
unachieved goals, subgoals are solved in the same
order as the actions of the plan to be executed - Depth-first search
- Non-Linear
- Solving subgoals that are in a set of unachieved
goals, can solve parallel branches of the set of
goals arbitrarily. - Breadth-first search
- Tends to avoid backtracking
- More flexible execution
- Representing plans and search algorithms are more
complex than linear
6Definition of Planning, cont.
- Applications in robotics, expert systems,
manufacturing, and natural language understanding - Expert System reasoning about events occurring
over time - Manufacturing process control
- Robotics organization of partial plans in a
solution - Natural Language human interactions, goal
oriented
7Definition of Planning, cont.
- Potential Benefits of Planning
- Helps to solve large problems quickly
- Find better solutions
- Can resolve goal conflicts
- Can provide methods for error recovery
- General Limitations
- Complexity of state spaces, must represent the
whole environment, search can become
exponentially large - Frame Problem- being able to represent what
changes and what remains unchanged following an
action (by default, things stay the same, unless
you tell it otherwise) - Inconsistencies between the real world and the
program model, comes back to the complexity issue
8Early Planning Systems
- 1956 Logic Theorists Newell, Shaw, and Simon
- - One of the first to use heuristics, proved
theorems in propositional calculus, operated by
using backward reasoning from the theorem to the
axioms - - limited by its heuristics and certain theorems
could not be proven - 1957-1969 GPS Newell, Shaw, and Simon
- - The General Problem Solver, how to solve human
intelligence problems, areas propositional
calculus proofs, puzzles, symbolic integrations,
etc. - - Introduced means-end analysis which tried to
find the difference between the current state and
goal, then used a table to find an action to
minimize the difference between the two states.
9Non-Hierarchical Planners
- Earliest Method of Planning
- Made no distinction between more and less
important plan elements - Slowed by getting hung up on less important
elements - Lack of structure led to poor performance with
complex problems - Example STRIPS
- STanford Research Institute Planning System
- 1971 by Fikes and Nilsson
- Used to run the SHAKEY robot of the 1970s
- The block example
10STRIPS
- Goal states are maintained on a stack
- If the top goal on the stack matches the current
state, the goal is removed from the stack - Also adds to the goal stack any sub-goals found
while trying to get to the goal state - Initial State (On(C,A) and OnTable(B)) and Goal
State (On(C,B) and On(A,C))
11(No Transcript)
12STRIPS
This diagram is an example of a STRIPS search
graph with goal stacks included. The goal state
is On(A,C) On(C,B).
13STRIPS
14STRIPS
- Problems
- Does not always find the optimal solution (Ex
On(A,B) before On(B,C)) - Some simple problems that cannot be solved
switching the contents of two registers - Cannot tell the difference between important
information and details - No guidelines to tell it what to do first
- Cannot know when it is going down a bad path
- Memory Goal Stack and Start State
- Next slide
15Current State State Description Goal Stack
1 CONT(X,A) CONT(X,B) CONT(Y,A)
CONT(Y,B)
CONT(Z,0)
2 CONT(X,A) CONT(X,B)
CONT(Y,B) CONT(Y,A)
CONT(Z,0) CONT(X,B) CONT(Y,A)
3 CONT(X,A) CONT(r,B) CONT(X,t)
CONT(Y,B) Assign(X,r,t,B)
CONT(Z,0) CONT(Y,A)
CONT(X,B) CONT(Y,A)
4 CONT(X,B) CONT(Y,A)
CONT(Y,B) CONT(X,B) CONT(Y,A)
CONT(Z,0)
- At State 3, the program sees the goal CONT(X,B)
can be completed. The problem is the contents of
Y are never copied into Z and is lost. At State
4, the goal cannot be met due to A being lost. - An example of subgoals that conflict
16Hierarchical Planners
- Makes a distinction between more and less
important parts of the plan - Example When purchasing a new Jesuit statue, we
first need to decide where to get the funds. It
doesnt make sense to find a good place for it on
campus before you have the money. - Example ABSTRIPS 1974 Sacerdoti
- Abstract-Based STRIPS
- Like STRIPS but plans in a hierarchy, greatly
reduces search space, and is more efficient at
solving large problems - Certain preconditions are judged as more
important than others by adding weights to those
elements - Finds early recognition of bad paths and gets rid
of wasted search - Uses a hierarchy of abstraction levels
- Solves highest level of abstraction. If that
passes, it increases level of detail
17ABSTRIPS
- Example PUSH-THRU-DOOR (bx, dx, rx)
- Preconditions 6 PUSHABLE (bx)
- 6 IS-A (dx, DOOR)
- 6 IS-A (rx, ROOM)
- 2 STATUS (dx, OPEN)
- 1 NEXT-TO (bx, dx)
- 1 NEXT-TO (ROBOT, bx)
- Each number represents the weight of the element.
We see that the elements with weight 6 are the
first elements we need to know in order to get to
the goal state.
18Common Approaches
- Opportunistic Planning
- - Situation-based triggering of new goals,
subgoals, and/or partial plans - - Implementation is a bottom-up approach,
whereas Hierarchical planners start with the goal
and move down -
- Resource-Sensitive Planning
- - Takes into account the resources available and
the cost involved in plans - - Interval Logic, James Allen-1983
- - A system which represents actions where
timing is important - - Uses time interval relations (before, meets,
overlaps, during, etc.) - - Links are made between actions that satisfy
interval relations -
- Conditional and Uncertainty Planning
- - Deals with information that is incomplete,
devises generic plans that leave out specifics,
details are filled in later - - Emphasis on uncertainty in real world
applications
19Current Research Focus
- Emphasis on Hierarchical Planning with special
consideration given to - Complex Conditions
- Availability of Resources
- Uncertainty
- More practical approaches considering the complex
world that we live in. - - Biggest difficulty is in the representation of
complex states and actions - - Problems also arise as complexity leads to a
sometimes exponentially increased search
20Classical Planning Assumptions
- Perfect Information
- Deterministic Effects
- Instantaneous Execution
- Solo Agent
- No concern over time, cost, resources
- Etc.
- These assumptions were made early on because
complex tasks were too complex to solve. These
assumptions were used to complete smaller tasks
(blocks). - Modern approaches deal with the scaling issue.
21Recent Projects
- ASPEN
- Automated Scheduling and Planning ENvironment
- NASA application
- Used for mission design
- Surface rover planning
- Ground antenna utilization
- NASA operators send goals to ASPEN, then ASPEN
sends commands to the spacecraft, ASPEN
continually receives updates from the spacecraft
and the current plan is updated to reflect the
necessary environmental changes - PLANET
- Applications workflow management, intelligent
manufacturing, robot planning, aerospace and
airline planning - EXCULIBUR
- Computer gaming environment
- Pursue their given goals and adapt to new
opponents - Dynamic nature of games, uncertainty
22Sources of Information
- Luger, George F., Artificial Intelligence
Structures and Strategies For Complex Problem
Solving, Fourth Edition, Pearson Education
Limited 2002. - Nilsson, Nils J. Principles of Artificial
Intelligence, Tioga Publishing Co., 1980. - Shirai, Yoshiaki and Tsujii, Jun-ichi, Artificial
Intelligence Concepts Techniques, and
Applications, Iwanami Shoten, Publishers, Tokyo,
1982. - http//www.cs.washington.edu/ai/PLAN
- http//www.cs.dartmouth.edu/brd/Teaching/AI/Lectu
res/Summaries/planning.html - www.cs.bham.ac.uk/mmk/Teaching/Planning/l6.html
- www.cs.umbc.edu/671/fall03/slides/25
- http//www-2.cs.cmu.edu/reids/planning/handouts/R
eprSearch.pdf - http//vitalstatistix.nicve.salford.ac.uk/planet2/
desc.html - http//www.ai-center.com/projects/excalibur/goals.
html - http//www-aig.jpl.nasa.gov/public/planning/projec
ts/current.html