Download Planning - Xavier Institute of Management Bhubaneswar (XIMB)

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Artificial intelligence wikipedia , lookup

Transcript
Artificial Intelligence and Decision Making
Session9: Planning
11.1 A Simple Planning Agent
11.2 From Problem Solving to Planning
11.2.1 Representation of actions
11.2.2 Representation of states
11.2.3 Representation of goals
11.2.4 Representation of plans
11.3 Planning in Situation Calculus
11.4 Basic Representations for Planning
11.4.1 Representations for states and goals
11.4.2 Representations for actions
11.4.2.1 action description
11.4.2.2 precondition
11.4.3 Situation Space and Plan Space
11.4.4 Representations for plans
11.4.5 Solutions
11.5 A Partial- Order Planning Example
11.6 A Partial – Order Planning Algorithm
11.7 Planning with Partially Instantiated Operators
11.8 Knowledge Engineering for Planning
11.8.1 The blocks world
11.8.2 Shakey’s world
11.9 Summary
References
Biundo, S. (2000) Recent Advances in AI Planning. New York: Springer Verlag.
Fourth Annual Conference : AI, Simulation, and Planning in High Autonomy Systems :
Theme : Integrating Virtual Reality and Model-Based Environments. Portland, Or: Book
News, Inc.
IEEE Computer Society (1991). AI. Simulation and Planning in High Autonomy
Systems. Los Alamitos, CA: IEEE Computer Society Press.
Oresky, C.M., Lenat, D.B., Clarkson, A., Kaisler, S.H. (1991) Strategic Automatic
Discovery System (STRADS) (Pp. 223–260) In Fishwick, P, & Modjeski, R.B. (Eds)
Knowledge-Based Simulation: Methodology and Application. New York: Springer
Verlag. (Note: Recommended Reading for the Course)
Wilkins, D.E. (1989) Practical Planning : Extending the Classical Ai Planning Paradigm
(Morgan Kaufmann Series in Representation and Reasoning). San Mateo, CA: Morgan
Kaufman.
Web Sites (Use highlight then Edit (copy) and then paste in your browser)
http://www.isi.edu/~blythe/cs541/syllabus.html
http://rakaposhi.eas.asu.edu/planning-class.html
http://www.cs.washington.edu/homes/weld/
http://www.cs.washington.edu/homes/weld/pubs.html
http://www.isr.umd.edu/TechReports/ISR/1995/TR_95-4/TR_95-4.phtml
http://citeseer.nj.nec.com/context/15778/0
http://citeseer.nj.nec.com/context/25638/0
http://www.eecis.udel.edu/~albuz/Robot/sld029.htm
http://www.ifs.org.uk/~popx/students/practicals/ps/node3.html
http://www.me.iastate.edu/me522_f99/new/ME522ProcessPlanning99/sld022.htm
http://www.cs.umd.edu/projects/planning/
http://cs-gw.utcluj.ro/~jim/Planning/doc/ai-pages.html
http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/planning/0.html
http://www.laas.fr/aips/
http://crl.nmsu.edu/users/sb/papers/textgen/tech-report/node6.html
http://www.ai.mit.edu/research/
http://www.ai.sri.com/~wilkins/mpa/
http://www.computer.org/proceedings/issre/0443/04430250abs.htm
This overview of AI planning supplements the textbook. It can be found at
http://blackcat.brynmawr.edu/~dkumar/UGAI/planning.html
Planning









Introduction
Logic-based planning
Operator-based planning
Planning Algorithms
Case-based planning
Reactive Approaches
Scheduling vs. Planning
Planning in AI Texts
References & Resources
Introduction
I like to open this topic by giving a general introduction to problem solving and then
putting planning, scheduling, learning, etc. in the context of problem solving. This is one
approach to planning among many.
Planning = How do I get from here to there?
There have been various formulations that attempt to solve the planning problem:







Logic-based approaches
Operator-based approaches
Time-based approaches
Case-based approaches
Constraint-based approaches
Distributed Planning
Reactive approaches
Logic-based Planning
Also sometimes categorized as change-based planning . This is best introduced by the
following figure taken from Genesereth & Nilsson (page 286, see References &
Resources below):
Given the following:




\alpha designating an initial state
\Gamma designating a set of actions
\rho designating a goal
\Omega is a database of sentences about the initial state
The planner will try to generate a plan, \Gamma which, when executed by the acting
module or the executor when the system is in the state i satisfying the initial state
description, will result in the state g satisfying the goal state description.
This can then lead into a presentation/discussion of situation calculus . Also, a good point
to introduce various planning problems:



Frame Problem
After you drive your 4-door car from point A to point B
what is its color?
how many doors does it have?
...etc.
Qualification Problem
If you turn the ignition key of your car the engine will start...
unless the battery is dead...
or it is out of gas...
or there is a potato blocking the tailpipe...
...etc.
Ramification Problem
If you drive your car from point A to point B, then as a result
your car is now at B...
so is its engine...
its tires...
...etc.
Another good place to introduce nonmonotonic logics (circumscription, default logic,
modal logic, etc.) .
Operator-based Planning
Actions are represented as operators . This approach, also called, the STRIPS approach ,
utilizes various operator schema and plan representations . The frame problem is solved
by using the STRIPS assumption. The major points to be presented in this context are:




Design of the operator schema
Add-delete lists, procedural vs. declarative representations (NONLIN vs. NOAH),
etc.
Design of plan representations
Linear plans, non-linear plans, hierarchical (abstract) plans, partial-order plans,
conditional plans, etc.
Planning Algorithms
Planning as search, world-space vs. plan-space, partial-order planning, total-order
planning, progression, goal-regression, etc.
The computational complexity of planning.
Plan Critiquing
Plan reformulation, repair, total-ordering, etc.
It is also a good idea to show an example of the kind of planning done by STRIPS (a nice
combination of heuristic state space search and resolution theorem proving). Bratko's
text presents a PROLOG implementation of STRIPS (and more). Forms a nice basis if
your course (or students) is PROLOG literate.
Additionally, one or more advanced aspects of Planning algorithms can be presented.
Several texts now have detailed discussions on partial-order planning algorithms, etc.
(see below).
Planning Algorithms
Introduce planning as search . There are two approaches:

Searching a World Space:
Each node in the graph denoted a state of the world. Arcs in the graph correspond
to the execution of a specific action. The planning problem is to find a path from
the initial state to the goal state. There are two algorithms:
o
o
Progression: An algorithm that searches for the goal state by searching
through the states generated by actions that can be performed in the given
state, starting from the initial state.
Regression: An algorithm that searches backward from the goal state by
finding actions whose effects satisfy one or more of the posted goals, and
posting the chosen action's preconditions as goals ( goal regression).
Both the algorithms are sound (if a plan is returned, will it work?) and complete
(if a plan exists, does the algorithm guarantees that it will find it?). In most
situations regression is a better strategy.

Searching a Plan Space:
Each node in the graph represents partial plans. Arcs denote plan refinement
operations. One can search for a plan with a totally-ordered sequence of actions
(total order planning), or a plan with a partially ordered set of actions (partial
order planning (POP) or least commitment planning).
Partial Order Planning (POP): A partial order plan has three components:
o
A set of actions: For example,
{eat-breakfast, take-shower, wake-up, go-to-work}.
o
A set of ordering constraints: For example,
{wake-up before eat-breakfast,
wake-up before take-shower,
wake-up before go-to-work,
take-shower before go-to-work}
o
A set of causal links: For example,
wake-up ---awake---> eat-breakfast
is a link from the action, wake-up to the action eat-breakfast. When the
action wake-up is added to the plan, the above causal link is recorded,
along with the ordering constraint [wake-up before eat-breatfast], because
wake-up's effect that the individual is awake is a precondition of eatbreakfast. Causal links help detect inconsistencies whenever a partial plan
is refined.
Present a complete partial order planning algorithm.
Case-based Planning
Given a new problem, a goal, and a description of an initial state.
Look into the library of cases to recall a similar problem, with similar initial and goal
states.
Modify the retrieved solution for the new problem.
The key is to find good similarity metrics.
Reactive Approaches











Planning & Execution
Planners think , executors do .
Predictability (thinking) vs. Reactivity (doing)
on-line vs. off-line planning
Classical planning is done off-line. The generated plan is then fed to the on-line
execution module.
Closed vs. open-loops
Reaction rules encode sense-act cycles.
Triangle Tables
Universal Plans
Situated Automata
Action Nets
Reactive Action Packages
Task Control Architectures
Subsumption Architectures
Scheduling vs. Planning
Planning is deciding what to do.
Scheduling is deciding when to do it.
Planning in AI Texts
The chapter on Planning in Ginsberg's text starts by introducing the frame, qualification,
and ramification problems in the context of reasoning about action. It gives a short
overview of action description models. The chapter concludes with a description of a
STRIPS-like planning algorithm.
Tanimoto's text concentrates on operator-based planning. First, it presents a simple linear
planner (in Common Lisp) that uses iterative deepening depth first search. This is then
used to motivate hierarchical planning and STRIPS-based operator schema. A planning
algorithm that uses a propositional representation for facts and STRIPS-like operators is
presented (in Common Lisp). Nonlinear planning is then introduced in the context of
partial-order planning. A detailed algorithm and its Common Lisp implementation is also
included. Exercises at the back are based upon the programs in the chapter.
By way of using the agent-oriented approach, Russell & Norvig 's text has acting (and
thereby planning) as a running theme in several chapters. There are also 3 chapters
devoted specifically to acting logically as well as one chapter on robotics . The first
chapter deals with situation calculus-based planning, STRIPS representations, and
presents a partial-order planning algorithm (which is based on SNLP). The blocksworld
and SHAKEY world are described. The planning algorithm is further used as a basis for
introducing hierarchical planning, conditional effects, and other issues in Practical
planning . There is also some discussion of the algorithmic complexity of planning. The
refined version on the planning algorithm presented is based on the UCPOP algorithm (of
which SNLP is a forerunner). The third chapter is devoted to conditional planning (an
algorithm based on CNLP is presented), replanning, and planning and acting.
While there isn't a specific chapter devoted to planning in Luger & Stubblefield , there
is a section in one of the search chapters. It presents predicate-calculus-based planning (a
PROLOG implementation is included in a later chapter), and STRIPS-based operator
representations, and triangle tables.
The chapter in Rich & Knight covers situation calculus, STRIPS-based planning, and
nonlinear planning (a TWEAK-based algorithm is presented).
Dean, Allen, & Aloimonos present a general discussion of various approaches to the
planning problem. Partial-order planning, hierarchical planning, adaptive planning, and
conditional planning are given detailed treatment (with Lisp code as well as complexity
measures and analyses).
Below is a table showing a survey of six AI texts and their coverage of Planning. Pairs of
numbers indicate the approximate number of pages of text, and an estimate of the number
of lectures that will typically be required to cover all the material in the text. Each lecture
is assumed to be 75 minutes long. A typical semester has about 13 weeks of lectures,
each week having two 75 minute lectures, giving a total of 26 lectures.
----------------------------------------------------------------------------Dean,
Allen &,
Russell &
Rich & Luger
&
Aloimonos
Ginsberg
Norvig
Tanimoto Knight
Stubblefield
----------------------------------------------------------------------------Overall Text 500/40
400/24
850/52
760/42
580/40
700/40
----------------------------------------------------------------------------Planning
50/4
20/2
80/6
55/5
38/2
12/1
-----------------------------------------------------------------------------
References & Resources
Clicking below on names will take you to the individual's home page. Generally a good
starting point for locating current information. Clicking below on titles of the
publications will take you to homepages of the documents where other resources like
code, instructional materials, and related software may be available.
Please write back to the author for any corrections/additions
Bratko : PROLOG Programming for Artificial Intelligence, Second Edition, Addison
Wesley, 1990.
Dean, Allen, & Aloimonos : Artificial Intelligence -Theory and Practice, Benjamin
Cummings Publishing Company, 1995.
Genesereth & Nilsson : Logical Foundations of Artificial Intelligence , Morgan
Kaufmann Publishers, Los Altos, CA, 1987.
Georgeff : Planning, in Annual Reviews of Computer Science, Annual Reviews Inc.,
pages 359-400, 1987. (A nice survey)
Ginsberg : Essentials of Artificial Intelligence, Morgan Kaufmann Publishers, 1993.
Artificial Intelligence: Structures and Strategies for Complex problem Solving,
Second Edition, Benjamin Cummings Publishing Company, 1993.
Rich & Knight : Artificial Intelligence, Second Edition, McGraw Hill, 1991.
Russell & Norvig : Artificial Intelligence: A Modern Approach, Prentice Hall, 1995.
Shapiro : The Encyclopedia of Artificial Intelligence, Second Edition, John Wiley &
Sons, Inc., 1992.
Tanimoto : The Elements of Artificial Intelligence Using Common Lisp, Second
Edition, Computer Science press, 1995.
Software: UCPOP : A partial-order planner developed by Daniel Weld, runs under
Common Lisp (preferably with CLIM), available by anonymous FTP.
CMU Software Repository: This link points to planning-related software contained
in the CMU AI Repository maintained by Mark Kantrowitz.
Last updated: June 5, 1995.
Deepak Kumar
Bryn Mawr College
[email protected]
From: http://www.sju.edu/~jhodgson/ai/plan.html
Planning in AI
Warning: Most of the links on this page are not yet connected.
Planning is an important activity for autonomous agents. It is used for more than just
moving objects around. Examples include the following:



Planning to achieve some goal such as move an object from one location to
another,
Planning a discourse that will cause another agent to do something,
Understanding the plans of another agent in order to be able to assist (thwart) that
agent.
We concentrate on the first of these. We remark here that if one uses top down plan
generation then a bottom up analysis of the plan tree can be used for pan understanding.
We use a state space model for the planning process. We must be able to represent the
current state of the world and the effects of the agent's actions upon it. T this end we
associate to each action three things:
1. The preconditions: The conditions that must be satisfied if the action is to be
possible;
2. The add-list: list of relations that are made true as a result of taking the action;
3. The delete-list: the list of relationships that the action destroys;
This raises the (in)famous frame problem which for the moment we deal with by ignoring
it.
There are various approaches to planning. We will consider three examples of planning.
1. STRIPS
2. Goal regression
3. Nonlinear planning
To return to the AI home page click AIHOME.
Jonathan Hodgson
Last Changed 23/11/94
This is a hotlink list of AI Planning resources (applications).
From: (Note: Use the Edit (Copy) function and paste the URL in your browser)
http://www.csc.ncsu.edu/faculty/stamant/planning-resources.html
AI Planning Resources
Planning Systems and Testbeds
This is a list of AI planners and where they were developed, or where implementations
are currently accessible. Some of these places do a good deal of planning-related
research, and of course this list is not exhaustive. I have however tried to include
representative examples of the latest research directions, including Graphplan-oriented
work and planning under uncertainty, as well as pointers to planners of historical interest.
If you have a suggestion for additions or changes to this list, send mail to Rob St. Amant.

Aristotle University, Greece
GRT

Arizona State University
The Yochan
group
The planning
digest

AT&T Labs
blackbox

Unified SAT-based and graph-based planning
Brown University
STRIPS
ABSTRIPS
ABTWEAK
PEST

A mailing list on planning topics
Stanford Research Institute Problem Solver --- the grandfather of them all
Abstraction STRIPS
Abstraction TWEAK
Planning and Execution System Testbed
Carnegie Mellon University
Architecture for planning and learning
Founded a new generation of planners
PRODIGY
Graphplan

University of Chicago
RAPs

University of Durham
STAN
TIM

Single Interface to Multiple Sources
Institute for Computer Science, Albert Ludwigs University
IPP
Fast Forward

Planning domain models and object-centred planning
Information Sciences Institute (ISI)
SIMS
Abstraction
hierarchies

Action-decomposition and action-based constraint forms
University of Huddersfield
General

Open Planning Architecture
Goddard Space Flight Center
COLLAGE

Planning under uncertainty, MDPs
University of Edinburgh
O-Plan

STate ANalysis Planner
An automatic planning domain analysis tool
Duke University
General

Reactive Action Packages
Winner, ADL track, 1998 planning competition
Jet Propulsion Laboratory
APS
Adaptive Problem Solver
MVP

Multimission VICAR Planner
University of Kaiserslautern
CAPlan

University of Maryland
HTN planning
UMCP
UM Nonlin
SHOP

Shared discourse planning
University of Michigan
UM-PRS
Decision
machines

The Yellowstone fire-fighting simulation
Multiple-Event Stream Simulator
Mixed-Initiative Plan Evaluation and Repair
Transportation Simulation
Resolving Sources of Uncertainty
Mitsubishi Electric Research Laboratories (MERL)
COLLAGEN

Hierarchical Task Network planning
Universal Method Composition Planner
Common Lisp version of early system
Simple Hierarchical Ordered Planner
University of Massachusetts
Phoenix
MESS
MIPER
TransSim
RESUN

Computer Assisted Planning
Real Time Planning and Control Procedural Reasoning System
University of Oregon
General

North Carolina State University
Planning agents in the interface (my own small contribution. . .)
Ibots
DPOCL/Longbow Discourse planning

University of Pittsburgh
Dynamic plan management
Planning testbed
General
Tileworld

University of Rochester
TRAINS
TRIPS

Universidad Simon Bolivar
HSP

Heuristic Search Planner
SRI International
SIPE
PRS

Mixed-initiative planning
The Rochester Interactive Planning System
System for Interactive Planning and Execution
Procedural Reasoning System
Stanford University
Nobots
General

Teknowledge
CPR

University of Toronto
Markov decision
processes

University of Washington
SGP
TGP
UCPOP
Older planners

Sensory Graphplan
Temporal Graphplan
Partial Order Planner with Universal quantification and Conditional effects
FABIAN (abstract actions), PYRRHUS (value-directed), ZENO (temporal plan
deadline goals and continuous change), BURIDAN (probabilistic planning),
CBURIDAN (sensing actions and contingent execution), XII (sensing actions to
handle incomplete information).
University of Waterloo
General

University of Wisconsin-Milwaukee
DRIPS

Decision-theoretic Refinement Planning System
Yale University
XFRM, plus
RPL
a Transformational planner based on a Reactive Plan Language
Other planning sites




A nice site maintained by the U.K. Planning and Scheduling Special Interest
Group
A list of planners (with installation instructions) at ISI
A short planning list at CMU
A short planning list at Yale
Contacts

The planning and scheduling mailing list
Planning domains
A number of members of the planning community have expressed a desire to be better
able to compare planning systems on common problems and domains. In response, Jim
Hendler has created a Web repository, in which one can find links to existing domains as
well as post details of a new domain.
Related information


ARPA/Rome Laboratory Planning Initiative
Handbook of Evaluation for the ARPA/Rome Lab Planning Initiative
Last Update: 12/17/99
Rob St. Amant