tweak solving the sussman anomaly on(a,b) on(b,c) on(c,a) ontable(a) ontable(b) clear(c) clear(b)...

6
TWEAK solving the Sussman anomaly ON(A, B) ON(B, C) ON(C,A) ONTABLE(A ) ONTABLE(B ) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A ,B) STACK(B ,C) Two step additions to satisfy the two goals Also, simple establishment achieves highlighted propositions. ON(A,B) CLEAR(A) ~CLEAR(B ) ARMEMPTY ON(B,C) CLEAR(B) ~CLEAR(C) ARMEMPTY ONTABLE(A ) CLEAR(A) CLEAR(B) HOLDING(A ) ONTABLE( B) CLEAR(B) CLEAR(C) HOLDING( B) Start state Goal state

Upload: brooke-ford

Post on 17-Dec-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

TWEAK solving the Sussman anomaly

ON(A,B)ON(B,C)

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

STACK(A,B)

STACK(B,C)

Two step additions to satisfy the two goalsAlso, simple establishment achieves highlighted propositions.

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)~CLEAR(C)

ARMEMPTY

ONTABLE(A)CLEAR(A)CLEAR(B)

HOLDING(A)

ONTABLE(B)CLEAR(B)CLEAR(C)

HOLDING(B)

Start state

Goal state

Page 2: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

ON(A,B)ON(B,C)

STACK(A,B)

STACK(B,C)

Two more step additions to satisfy the two HOLDING preconditions

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)

~CLEAR(C)ARMEMPTY

~ONTABLE(A)HOLDING(A)

CLEAR(B)PICKUP(A)

PICKUP(B)

ONTABLE(A)CLEAR(A)

ARMEMPTY

ONTABLE(B)CLEAR(B)

ARMEMPTY

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

Start state

Goal state

~ONTABLE(B)HOLDING(B)

CLEAR(C)

Normally, when steps are added to the plan, two states should be created: a precondition and a result (effect). This is because other steps might be inserted inbetween. In these diagrams, I have omitted some of these states so that the diagrams can fit on the slides.

Page 3: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

Promotion (or is it Declobbering??) establishes CLEAR(B) IN STATE A

State A

ON(A,B)ON(B,C)

STACK(A,B)

STACK(B,C)

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)~CLEAR(C)

ARMEMPTY

~ONTABLE(A)HOLDING(A)

CLEAR(B)~ARMEMPTY

PICKUP(A)

PICKUP(B)

ONTABLE(A)CLEAR(A)

ARMEMPTY

ONTABLE(B)CLEAR(B)

ARMEMPTY

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

Start state

Goal state

~ONTABLE(B)HOLDING(B)

CLEAR(C)~ARMEMPTY

Page 4: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

Step Addition achieves CLEAR(A) in State B

State B

ON(A,B)ON(B,C)

STACK(A,B)

STACK(B,C)

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)

~CLEAR(C)ARMEMPTY

~ONTABLE(A)HOLDING(A)

CLEAR(B)~ARMEMPTY

PICKUP(A)

PICKUP(B)

ONTABLE(A)CLEAR(A)

ARMEMPTY

ONTABLE(B)CLEAR(B)

ARMEMPTY

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

Start state

Goal state~ONTABLE(B)HOLDING(B)

CLEAR(C)~ARMEMPTY

UNSTACK(C,A)

CLEAR(C)ON(C,A)

ARMEMPTY

HOLDING(C)~ON(C,A)

~ARMEMPTY

Page 5: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

ON(A,B)ON(B,C)

STACK(A,B)

STACK(B,C)

Step Addition achieves ARMEMPTY in State C

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)

~CLEAR(C)ARMEMPTY

CLEAR(B)HOLDING(A)~ARMEMPTY

PICKUP(A)

PICKUP(B)

~ONTABLE(A)HOLDING(A)~ARMEMPTY

CLEAR(C)HOLDING(B)~ARMEMPTY

~ONTABLE(B)HOLDING(B)~ARMEMPTY

ONTABLE(A)CLEAR(A)

ARMEMPTY

ONTABLE(B)CLEAR(B)

ARMEMPTY

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

UNSTACK(C,A)

HOLDING(C)CLEAR(A)

~ARMEMPTY

ARMEMPTYON(C,A)CLEAR(C)

Start state

Goal state

State C

PUTDOWN(C)

Page 6: TWEAK solving the Sussman anomaly ON(A,B) ON(B,C) ON(C,A) ONTABLE(A) ONTABLE(B) CLEAR(C) CLEAR(B) ARMEMPTY STACK(A,B) STACK(B,C) Two step additions to

ON(A,B)ON(B,C)

STACK(A,B)

STACK(B,C)

ON(A,B)CLEAR(A)

~CLEAR(B)ARMEMPTY

ON(B,C)CLEAR(B)

~CLEAR(C)CLEAR(A)

ARMEMPTY

CLEAR(B)HOLDING(A)~ARMEMPTY

PICKUP(A)

PICKUP(B)

~ONTABLE(A)HOLDING(A)~ARMEMPTY

CLEAR(C)HOLDING(B)~ARMEMPTY

~ONTABLE(B)HOLDING(B)~ARMEMPTY

ONTABLE(A)CLEAR(A)

ARMEMPTY

ONTABLE(B)CLEAR(B)

ARMEMPTY

ON(C,A)ONTABLE(A)ONTABLE(B)

CLEAR(C)CLEAR(B)

ARMEMPTY

UNSTACK(C,A)

HOLDING(C)CLEAR(A)

~ARMEMPTY

ARMEMPTYON(C,A)CLEAR(C)

Start state

Goal state

State D

PUTDOWN(C)

Promotion (or is it Declobbering??) establishes ARMEMPTY IN STATE D