Planning
Download
1 / 32

Planning - PowerPoint PPT Presentation


  • 71 Views
  • Uploaded on

Planning. Thanks: Professor Dan Weld, University of Washington. Chapters 11 and 12. Planning. Input Description of initial state of world (in some KR) Description of goal (in some KR) Description of available actions (in some KR) Output Sequence of actions

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Planning' - nam


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Planning

Planning

Thanks: Professor Dan Weld, University of Washington

Chapters 11 and 12


Planning1
Planning

  • Input

    • Description of initial state of world (in some KR)

    • Description of goal (in some KR)

    • Description of available actions (in some KR)

  • Output

    • Sequence of actions

    • Or, a partial order of actions


Input representation
Input Representation

  • Description of initial state of world

    • Set of propositions:

    • ((block a) (block b) (block c) (on-table a) (on-table b) (clear a) (clear b) (clear c) (arm-empty))

  • Description of goal (i.e. set of desired worlds)

    • Logical conjunction

    • Any world that satisfies the conjunction is a goal

    • (:and (on a b) (on b c)))

  • Description of available actions


How represent actions
How Represent Actions?

  • Simplifying assumptions

    • Atomic time

    • Agent is omniscient (no sensing necessary).

    • Agent is sole cause of change

    • Actions have deterministic effects

  • STRIPS representation

    • World = set of true propositions

    • Actions:

      • Precondition: (conjunction of literals)

      • Effects (conjunction of literals)

a

north11

north12

a

a

W0

W1

W2


Strips actions
STRIPS Actions

  • Action = a function from world-state to world-state

  • Precondition says when function defined

  • Effects say how to change set of propositions

north11

a

a

W1

W0

north11

precond: (and (agent-at 1 1)

(agent-facing north))

effect: (and (agent-at 1 2)

(not (agent-at 1 1)))


Action schemata
Action Schemata

  • Instead of defining: pickup-A and pickup-B and …

  • Variables: ?x. For example, ?ob1

  • Define a schema:

(:operatorpick-up

:parameters ((block ?ob1))

:precondition (and (clear ?ob1) (on-table ?ob1) (arm-empty))

:effect (and (not (on-table ?ob1))

(not (clear ?ob1))

(not (arm-empty))

(holding ?ob1)))


Strips vs adl
STRIPS vs ADL

  • Positive/Negative conditions

  • Closed world assumption

  • Negated Effects

  • Quantified Effects

  • Goals as conjunctions and disjunctions

  • Conditional Effects (when …)

  • Equality

  • Predicate Typing


Examples
Examples

  • Air Cargo Domain

  • Spare Tire Problem

  • The blocks world


Planning as search
Planning as Search

  • Nodes

  • Arcs

  • Initial State

  • Goal State

World states

Actions

The state satisfying the complete description of the initial conds

Any state satisfying the goal propositions


Forward chaining world space search

A

C

B

C

B

A

Forward-Chaining World-Space Search

Initial

State

Goal

State


Backward chaining world space search

D

A

D

C

B

A

E

D

C

E

B

D

C

B

A

E

A

C

B

E

Backward-Chaining World-Space Search

  • Problem: Many possible goal states are equally acceptable.

  • From which one does one search?

Initial State is completely defined

* * *


Backward planning
Backward Planning

  • Try out http://www.cs.ubc.ca/labs/lci/CIspace/Version4/planning/ at UBC which shows goal-directed planning

  • Shows blocks world planning

  • Idea: find a first subgoal

    • Achieve it by selecting an action

    • Regress to discover new subgoals from the action’s preconditions

    • Continue


Planning as search 2
Planning as Search 2

  • Nodes

  • Arcs

  • Initial State

  • Goal State

Partially specified plans

Adding + deleting actions or constraints (e.g. <) to plan

The empty plan

A plan which when simulated achieves the goal


Plan space search and partial order planning

pick-from-table(C)

put-on(C,B)

pick-from-table(C)

pick-from-table(B)

Plan-Space Search and Partial Order Planning

  • How represent plans?

  • How test if plan is a solution?


Terminologies
Terminologies

  • Partial Ordering

  • Linearization

  • Ordering constraints

  • Causal Links

  • Achieves

  • Conflicts

  • Open Preconditions

  • Consistent Plans


Planning as search 3
Planning as Search 3

  • Phase 1 - Graph Expansion

    • Necessary (insufficient) conditions for plan existence

    • Local consistency of plan-as-CSP

  • Phase 2 - Solution Extraction

    • Variables

      • action execution at a time point

    • Constraints

      • goals, subgoals achieved

      • no side-effects between actions


Planning graph
Planning Graph

Proposition

Init State

Action

Time 1

Proposition

Time 1

Action

Time 2


Constructing the planning graph
Constructing the planning graph

  • Initial proposition layer

    • Just the initial conditions

  • Action layer i

    • If all of an action’s preconds are in i-1

    • Then add action to layer I

  • Proposition layer i+1

    • For each action at layer i

      • Add all its effects at layer i+1

    • Also allow propositions at layer i to persist to i+1


Mutual exclusion or mutex
Mutual Exclusion (or Mutex)

  • Actions A,B exclusive (at a level) if

    • A deletes B’s precond, or

    • B deletes A’s precond, or

    • A & B have inconsistent preconds (so they cannot be executed at the same time)

  • Propositions P,Q inconsistent (at a level) if

    • all ways to achieve P exclude all ways to achieve Q


Graphplan
Graphplan

  • Create level 0 in planning graph

  • Loop

    • If goal  contents of highest level (nonmutex)

    • Then search graph for solution

      • If find a solution then return and terminate

    • Else Extend graph one more level

A kind of double search: forward direction checks necessary

(but insufficient) conditions for a solution, ...

Backward search verifies...


Searching for a solution
Searching for a Solution

  • For each goal G at time t

    • For each action A making G true @t

      • If A isn’t mutex with a previously chosen action, select it

      • If no actions work, backup to last G (breadth first search)

  • Recurse on preconditions of actions selected, t-1

Proposition

Init State

Action

Time 2

Proposition

Time 1

Action

Time 1


Dinner date
Dinner Date

Initial Conditions: (:and (cleanHands) (quiet))

Goal: (:and (noGarbage) (dinner) (present))

Actions:

(:operator carry :precondition

:effect (:and (noGarbage) (:not (cleanHands)))

(:operator dolly :precondition

:effect (:and (noGarbage) (:not (quiet)))

(:operator cook :precondition (cleanHands)

:effect (dinner))

(:operator wrap :precondition (quiet)

:effect (present))


Planning graph1

0 Prop 1 Action 2 Prop 3 Action 4 Prop

Planning Graph

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap


Are there any exclusions

0 Prop 1 Action 2 Prop 3 Action 4 Prop

Are there any exclusions?

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap


Do we have a solution

0 Prop 1 Action 2 Prop 3 Action 4 Prop

Do we have a solution?

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap


Extend the planning graph

0 Prop 1 Action 2 Prop 3 Action 4 Prop

Extend the Planning Graph

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap

carry

dolly

cook

wrap


One of 4 possibilities

0 Prop 1 Action 2 Prop 3 Action 4 Prop

One (of 4) possibilities

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap

carry

dolly

cook

wrap


Planning languages
Planning Languages

  • PDDL Tutorials

  • FF Planner


Robot architectures page787
Robot Architectures (page787)

Function Based Architecture:

Task Planning and Learning

Map based Navigation

Vision Inferencing

Sensors and Actuators

Problem: low level action takes too long to reason about!


Behavior based robotics page 788
Behavior-based Robotics (page 788)

  • Rodney Brooks designed behavior-based robotics

    • Agent design should not be function based (I.e., should not be based on learning, task planning, sensing, etc).

    • Instead, it should be indepdent modules

      • Each has own sensing, inferencing, and acting

      • Higher level modules more intelligent, and can access sensors independently, and can modify outputs of lower-level modules

Plan ahead

learn

vision

explore

sensors

actuators

wonder

Avoid objects


Robot insect video
Robot Insect Video

  • Rodney Brooks’ robots in a video

    • http://www.youtube.com/watch?v=C9p8B7-5MTI


Summary planning
Summary Planning

  • Reactive systems vs. planning

  • Planners can handle medium to large-sized problems

  • Relaxing assumptions

    • Atomic time

    • Agent is omniscient (no sensing necessary).

    • Agent is sole cause of change

    • Actions have deterministic effects

  • Generating contingent plans

    • Large time-scale Spacecraft control


ad