Download Theory and Practice - Automated Planning - Lecture Slides and more Slides Computer Science in PDF only on Docsity!
Chapter 1
Introduction
Lecture slides for
Automated Planning: Theory and Practice
- A systematic arrangement of elements or important parts; a configuration or outline: a seating plan; the plan of a story.
- A drawing or diagram made to scale showing the structure or arrangement of something.
- A program or policy stipulating a service or benefit: a pension plan.
plan n.
- A scheme, program, or method worked out beforehand for the accomplishment of an objective: a plan of attack.
- A proposed or tentative project or course of action: had no plans for the evening.
Some Dictionary Definitions of “Plan”
- Which of these do you think this course is about?
Conceptual Model
- Σ is an abstraction
- Deals only with the aspects that the planner needs to reason
about
State transition system Σ = ( S,A,E ,γ) S = {states} A = {actions} E = {exogenous events} γ = state-transition function
Example
- Σ = ( S,A,E ,γ)
- S = {states}
- A = {actions}
- E = {exogenous events}
- State-transition function γ: S x ( A ∪ E ) → 2 S
- Example:
- S = {s 0 , …, s 5 }
- A = {move1, move2, put, take, load, unload}
- E = {}
- γ: see the arrows
Dock Worker Robots (DWR) example
take
put
move
put
take
move
move2^ move
unload^ load
move
move
loc1 loc
s 0
loc1 loc
s 1
s 4
loc1 loc
s 5
loc1 loc
loc1 loc
s 3
loc1 loc
s 2
Controller
- Control may involve lower-level planning and/or
plan execution
Given observation o in O , produces action a in A
Instructions to the controller
move2^ move
loc1 loc
s 1
loc1 loc
s 3 Observation function h : S → O
Depends on whether planning is online or offline
Planning problem Planning problemPlanning problem
Planner
Instructions to the controller
Plans
- Classical plan : a sequence of actions 〈take, move1, load, move2〉
- Policy : partial function from S into A { (s 0 , take), ( s 1 , move1), ( s 3 , load), (s 4 , move2) }
take
put
move
put
take
move
move2^ move
unload^ load
move
move
loc1 loc
s 0
loc1 loc
s 1
s 4
loc1 loc
s 5
loc1 loc
loc1 loc
s 3
loc1 loc
s 2
take
move
load
move
Dock Worker Robots (DWR) example
Scheduler
Planning Versus Scheduling
- Scheduling
- Decide when and how to perform a given set of actions - Time constraints - Resource constraints - Objective functions
- Typically NP-complete
- Planning
- Decide what actions to use to achieve some set of objectives
- Can be much worse than NP-complete; worst case is undecidable
- Domain-Specific Planners (Chapters 19-
- Most successful real-world planning systems work this way - Mars exploration, sheet-metal bending, playing bridge, etc.
- Often use problem-specific techniques that are difficult to generalize to other planning domains
Types of Planners
2. Domain-Independent
- In principle, works in any planning domain
- No domain-specific knowledge except the description of the system Σ
- In practice,
- Not feasible to make domain- independent planners work well in all possible planning domains
- Make simplifying assumptions to restrict the set of domains - Classical planning - Historical focus of most research on automated planning
Classical Planning (Chapters 2-9)
- Classical planning requires all eight restrictive assumptions
- Offline generation of action sequences for a deterministic, static, finite system, with complete knowledge, attainment goals, and implicit time
- Reduces to the following problem:
- Given (Σ, s 0 , S (^) g )
- Find a sequence of actions ( a 1 , a 2 , … an ) that produces a sequence of state transitions ( s 1 , s 2 , …, s (^) n ) such that s (^) n is in S (^) g.
- This is just path-searching in a graph
- Nodes = states
- Edges = actions
- Is this trivial?
Classical Planning (Chapters 2-9)
- Generalize the earlier example:
- Five locations, three robot carts, 100 containers, three piles - Then there are 10 277 states
- Number of particles in the universe is only about 10 87 - The example is more than 10 190 times as large
- Automated-planning research has been heavily dominated by classical planning - Dozens (hundreds?) of different algorithms
loc1 loc
s 1
take
put
move2^ move
Planning Graphs (Chapter 6)
- Rough idea:
- First, solve a relaxed problem - Each “level” contains all effects of all applicable actions - Even though the effects may contradict each other
- Next, do a state-space search within the planning graph
- Graphplan, IPP, CGP, DGP, LGP, PGP, SGP, TGP, ...
Level 0 Level 1 Level 2
All appli- cable actions
All effects of those actions
All actions applicable to subsets of Level 1
All effects of those actions
Initial state
Heuristic Search (Chapter 9)
- Heuristic function like those in A*
- Created using techniques similar to planning graphs
- Problem: A* quickly runs out of memory
- So do a greedy search instead
- Greedy search can get trapped in local minima
- Greedy search plus local search at local minima
- HSP [Bonet & Geffner]
- FastForward [Hoffmann]