1 / 32

Planning - PowerPoint PPT Presentation

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

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
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

Thanks: Professor Dan Weld, University of Washington

Chapters 11 and 12

• 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

• 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

• 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

• 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)))

• 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)))

• Positive/Negative conditions

• Closed world assumption

• Negated Effects

• Quantified Effects

• Goals as conjunctions and disjunctions

• Conditional Effects (when …)

• Equality

• Predicate Typing

• Air Cargo Domain

• Spare Tire Problem

• The blocks world

• 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

C

B

C

B

A

Forward-Chaining World-Space Search

Initial

State

Goal

State

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

* * *

• 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

• 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

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?

• Partial Ordering

• Linearization

• Ordering constraints

• Causal Links

• Achieves

• Conflicts

• Open Preconditions

• Consistent Plans

• 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

Proposition

Init State

Action

Time 1

Proposition

Time 1

Action

Time 2

• 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

• 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

• 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...

• 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

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))

0 Prop 1 Action 2 Prop 3 Action 4 Prop

Planning Graph

cleanH

quiet

noGarb

cleanH

quiet

dinner

present

carry

dolly

cook

wrap

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

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

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

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

• PDDL Tutorials

• FF Planner

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!

• 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

• Rodney Brooks’ robots in a video

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

• 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