For Friday Read chapter 12, sections 3-5 None Program 2 Any - - PowerPoint PPT Presentation

for friday
SMART_READER_LITE
LIVE PREVIEW

For Friday Read chapter 12, sections 3-5 None Program 2 Any - - PowerPoint PPT Presentation

For Friday Read chapter 12, sections 3-5 None Program 2 Any questions? Plan-Space Planners Plan-space planners search through the space of partial plans, which are sets of actions that may not be totally ordered.


slide-1
SLIDE 1

For Friday

  • Read chapter 12, sections 3-5
  • None
slide-2
SLIDE 2

Program 2

  • Any questions?
slide-3
SLIDE 3

Plan-Space Planners

  • Plan-space planners search through the

space of partial plans, which are sets of actions that may not be totally ordered.

  • Partial-order planners are plan-based and
  • nly introduce ordering constraints as

necessary (least commitment) in order to avoid unnecessarily searching through the space of possible orderings

slide-4
SLIDE 4

Partial Order Plan

  • Plan which does not specify unnecessary
  • rdering.
  • Consider the problem of putting on your

socks and shoes.

slide-5
SLIDE 5

Plans

  • A plan is a three tuple <A, O, L>

– A: A set of actions in the plan, {A1 ,A2 ,...An} – O: A set of ordering constraints on actions {Ai <Aj , Ak <Al ,...Am <An}. These must be consistent, i.e. there must be at least one total

  • rdering of actions in A that satisfy all the

constraints. – L: a set of causal links showing how actions support each other

slide-6
SLIDE 6

Causal Links and Threats

  • A causal link, Ap  QAc, indicates that

action Ap has an effect Q that achieves precondition Q for action Ac.

  • A threat, is an action A t that can render a

causal link Ap  QAc ineffective because:

– O  {AP < At < Ac} is consistent – At has ¬Q as an effect

slide-7
SLIDE 7

Threat Removal

  • Threats must be removed to prevent a plan

from failing

  • Demotion adds the constraint At < Ap to

prevent clobbering, i.e. push the clobberer before the producer

  • Promotion adds the constraint Ac < At to

prevent clobbering, i.e. push the clobberer after the consumer

slide-8
SLIDE 8

Initial (Null) Plan

  • Initial plan has

– A={ A0, A} – O={A0 < A} – L ={}

  • A0 (Start) has no preconditions but all facts

in the initial state as effects.

  • A (Finish) has the goal conditions as

preconditions and no effects.

slide-9
SLIDE 9

Example

Op( Action: Go(there); Precond: At(here); Effects: At(there), ¬At(here) ) Op( Action: Buy(x), Precond: At(store), Sells(store,x); Effects: Have(x) )

  • A0:

– At(Home) Sells(SM,Banana) Sells(SM,Milk) Sells(HWS,Drill)

  • A

– Have(Drill) Have(Milk) Have(Banana) At(Home)

slide-10
SLIDE 10

POP Algorithm

  • Stated as a nondeterministic algorithm where

choices must be made. Various search methods can be used to explore the space of possible choices.

  • Maintains an agenda of goals that need to be

supported by links, where an agenda element is a pair <Q,Ai> where Q is a precondition of Ai that needs supporting.

  • Initialize plan to null plan and agenda to conjunction
  • f goals (preconditions of Finish).
  • Done when all preconditions of every action in plan

are supported by causal links which are not threatened.

slide-11
SLIDE 11

POP(<A,O,L>, agenda)

1) Termination: If agenda is empty, return <A,O,L>.

Use topological sort to determine a totally ordered plan.

2) Goal Selection: Let <Q,Aneed> be a pair on the agenda 3) Action Selection: Let A add be a nondeterministically chosen action that adds Q. It can be an existing action in A or a new action. If there is no such action return failure.

L’ = L  {Aadd  QAneed} O’ = O  {Aadd < Aneed} if Aadd is new then A’ = A  {Aadd} and O’=O’ È {A0 < Aadd <A} else A’ = A

slide-12
SLIDE 12

4) Update goal set:

Let agenda’= agenda - {<Q,Aneed>} If Aadd is new then for each conjunct Qi of its precondition, add <Qi , Aadd> to agenda’

5) Causal link protection: For every action At that threatens a causal link Ap  QAc add an ordering constraint by choosing nondeterministically either

(a) Demotion: Add At < Ap to O’ (b) Promotion: Add Ac < At to O’

If neither constraint is consistent then return failure. 6) Recurse: POP(<A’,O’,L’>, agenda’)

slide-13
SLIDE 13

Example

Op( Action: Go(there); Precond: At(here); Effects: At(there), ¬At(here) ) Op( Action: Buy(x), Precond: At(store), Sells(store,x); Effects: Have(x) )

  • A0:

– At(Home) Sells(SM,Banana) Sells(SM,Milk) Sells(HWS,Drill)

  • A

– Have(Drill) Have(Milk) Have(Banana) At(Home)

slide-14
SLIDE 14

Example Steps

  • Add three buy actions to achieve the goals
  • Use initial state to achieve the Sells

preconditions

  • Then add Go actions to achieve new pre-

conditions

slide-15
SLIDE 15

Handling Threat

  • Cannot resolve threat to At(Home) preconditions
  • f both Go(HWS) and Go(SM).
  • Must backtrack to supporting At(x) precondition
  • f Go(SM) from initial state At(Home) and

support it instead from the At(HWS) effect of Go(HWS).

  • Since Go(SM) still threatens At(HWS) of

Buy(Drill) must promote Go(SM) to come after Buy(Drill). Demotion is not possible due to causal link supporting At(HWS) precondition of Go(SM)

slide-16
SLIDE 16

Example Continued

  • Add Go(Home) action to achieve At(Home)
  • Use At(SM) to achieve its precondition
  • Order it after Buy(Milk) and Buy(Banana)

to resolve threats to At(SM)

slide-17
SLIDE 17

GraphPlan

  • Alternative approach to plan construction
  • Uses STRIPS operators with some

limitations

– Conjunctive preconditions – No negated preconditions – No conditional effects – No universal effects

slide-18
SLIDE 18

Planning Graph

  • Creates a graph of constraints on the plan
  • Then searches for the subgraph that

constitutes the plan itself

slide-19
SLIDE 19

Graph Form

  • Directed, leveled graph

– 2 types of nodes:

  • Proposition: P
  • Action: A

– 3 types of edges (between levels)

  • Precondition: P -> A
  • Add: A -> P
  • Delete: A -> P
  • Proposition and action levels alternate
  • Action level includes actions whose preconditions

are satisfied in previous level plus no-op actions (to solve frame problem).

slide-20
SLIDE 20

Planning graph

… … …

slide-21
SLIDE 21

Constructing the planning graph

  • Level P1: all literals from the initial state
  • Add an action in level Ai if all its

preconditions are present in level Pi

  • Add a precondition in level Pi if it is the

effect of some action in level Ai-1 (including no-ops)

  • Maintain a set of exclusion relations to

eliminate incompatible propositions and actions (thus reducing the graph size)

slide-22
SLIDE 22

Mutual Exclusion relations

  • Two actions (or literals) are mutually

exclusive (mutex) at some stage if no valid plan could contain both.

  • Two actions are mutex if:

– Interference: one clobbers others’ effect or precondition – Competing needs: mutex preconditions

  • Two propositions are mutex if:

– All ways of achieving them are mutex

slide-23
SLIDE 23

Mutual Exclusion relations

Inconsistent Effects Inconsistent Support Competing Needs Interference (prec-effect)

slide-24
SLIDE 24

Dinner Date example

  • Initial Conditions: (and (garbage) (cleanHands) (quiet))
  • Goal: (and (dinner) (present) (not (garbage))
  • Actions:

– Cook :precondition (cleanHands) :effect (dinner) – Wrap :precondition (quiet) :effect (present) – Carry :precondition :effect (and (not (garbage)) (not (cleanHands)) – Dolly :precondition :effect (and (not (garbage)) (not (quiet)))

slide-25
SLIDE 25

Dinner Date example

slide-26
SLIDE 26

Dinner Date example

slide-27
SLIDE 27

Observation 1

Propositions monotonically increase

(always carried forward by no-ops) p ¬q ¬r p q ¬q ¬r p q ¬q r ¬r p q ¬q r ¬r A A B A B

slide-28
SLIDE 28

Observation 2

Actions monotonically increase

p ¬q ¬r p q ¬q ¬r p q ¬q r ¬r p q ¬q r ¬r A A B A B

slide-29
SLIDE 29

Observation 3

Proposition mutex relationships monotonically decrease

p q r … A p q r … p q r …

slide-30
SLIDE 30

Observation 4

Action mutex relationships monotonically decrease

p q … B p q r s … p q r s … A C B C A p q r s … B C A

slide-31
SLIDE 31

Observation 5

Planning Graph ‘levels off’.

  • After some time k all levels are identical
  • Because it’s a finite space, the set of literals

never decreases and mutexes don’t reappear.

slide-32
SLIDE 32

Valid plan

A valid plan is a planning graph where:

  • Actions at the same level don’t interfere
  • Each action’s preconditions are made true

by the plan

  • Goals are satisfied
slide-33
SLIDE 33

GraphPlan algorithm

  • Grow the planning graph (PG) until all

goals are reachable and not mutex. (If PG levels off first, fail)

  • Search the PG for a valid plan
  • If none is found, add a level to the PG and

try again

slide-34
SLIDE 34

Searching for a solution plan

  • Backward chain on the planning graph
  • Achieve goals level by level
  • At level k, pick a subset of non-mutex actions to

achieve current goals. Their preconditions become the goals for k-1 level.

  • Build goal subset by picking each goal and

choosing an action to add. Use one already selected if possible. Do forward checking on remaining goals (backtrack if can’t pick non- mutex action)

slide-35
SLIDE 35

Plan Graph Search

If goals are present & non-mutex:

Choose action to achieve each goal Add preconditions to next goal set

slide-36
SLIDE 36

Termination for unsolvable problems

  • Graphplan records (memoizes) sets of unsolvable

goals:

– U(i,t) = unsolvable goals at level i after stage t.

  • More efficient: early backtracking
  • Also provides necessary and sufficient conditions

for termination:

– Assume plan graph levels off at level n, stage t > n – If U(n, t-1) = U(n, t) then we know we’re in a loop and can terminate safely.

slide-37
SLIDE 37

Dinner Date example

  • Initial Conditions: (and (garbage) (cleanHands) (quiet))
  • Goal: (and (dinner) (present) (not (garbage))
  • Actions:

– Cook :precondition (cleanHands) :effect (dinner) – Wrap :precondition (quiet) :effect (present) – Carry :precondition :effect (and (not (garbage)) (not (cleanHands)) – Dolly :precondition :effect (and (not (garbage)) (not (quiet)))

slide-38
SLIDE 38

Dinner Date example

slide-39
SLIDE 39

Dinner Date example

slide-40
SLIDE 40

Dinner Date example

slide-41
SLIDE 41

Knowledge Representation

  • Issue of what to put in to the knowledge

base.

  • What does an agent need to know?
  • How should that content be stored?
slide-42
SLIDE 42

Knowledge Representation

  • NOT a solved problem
  • We have partial answers
slide-43
SLIDE 43

Question 1

  • How do I organize the knowledge I have?
slide-44
SLIDE 44

Ontology

  • Basically a hierarchical organization of

concepts.

  • Can be general or domain-specific.
slide-45
SLIDE 45

Question 2

  • How do I handle categories?
slide-46
SLIDE 46

Do I need to?

  • What makes categories important?
slide-47
SLIDE 47

Defining a category

  • Necessary and sufficient conditions
slide-48
SLIDE 48

Think-Pair-Share

  • What is a chair?
slide-49
SLIDE 49

Prototypes

slide-50
SLIDE 50

In Logic

  • Are categories predicates or objects?
slide-51
SLIDE 51

Important Terms

  • Inheritance
  • Taxonomy
slide-52
SLIDE 52

What does ISA mean?

slide-53
SLIDE 53

Categories

  • Membership
  • Subset or subclass
  • Disjoint categories
  • Exhaustive Decomposition
  • Partitions of categories
slide-54
SLIDE 54

Other Issues

  • Physical composition
  • Measurement
  • Individuation

– Count nouns vs. mass nouns – Intrinsic properties vs. extrinsic properties