Question 19
AUTOMATED PLANNING
The domain description of a Blocks World with a single one-armed robot is given below. Note: this is the same domain description used in the weekly assignments.
PREDICATES
armEmpty The arm is not holding any block, it is empty.holding(X) The arm is holding X.onTable(X) X is on the table.clear(X) X has nothing above it, it is clear.on(X,Y) X is directly placed on Y.
OPERATORS
Pickup(X): pick up X from the table. Preconditions: { armEmpty, clear(X), onTable(X) } Add Effects : { holding(X) } Del Effects : { armEmpty, onTable(X) }
Putdown(X): place X on the table. Preconditions: { holding(X) } Add Effects : { armEmpty, onTable(X) } Del Effects : { holding(X) }
Unstack(X,Y): pick up X that is directly sitting on Y. Preconditions: { armEmpty, clear(X), on(X,Y) } Add Effects : { clear(Y), holding(X) } Del Effects : { armempty, on(X,Y) }
Stack(X,Y): place X directly on top of Y. Preconditions: { holding(X), clear(Y) } Add Effects : { armEmpty, on(X,Y) } Del Effects : { holding(X), clear(Y) }Tie-breaker: When actions are chosen non-deterministically, choose actions that lead to a plan. Throw away the actions that lead to dead-ends or cycles.
Tie-breaker: Treat the goal description, preconditions and effects as lists that are accessed from left to right. When the elements in a list are pushed one by one to a stack, the last element in the list will be at the top of the stack. It has the effect of reversing the list.
A planning problem is given below, find a plan using the operators and predicates defined in the blocks-world domain.
Based on the above data, answer the given subquestions
What is the length of the optimal plan? Enter the number of actions in the optimal plan. NO SPACES, TABS, DOTS, BRACKETS OR EXTRANEOUS CHARACTERS.
Answer format: 42