Planning with Shakey

Represent the following planning problems in STRIPS, using the PDDL (planning domain definition language) notation.

shakey

1. Shakey the robot has to bring coffee to Prof. Kautz. In order to make the coffee, Shakey will need to gather coffee filters, coffee, and Prof. Kautz's mug and bring them to the coffee maker in the kitchen. The coffee and filters are in the supply room, but it is locked. To unlock the supply room, Shakey will need to get the key from Prof. Kautz's office.

The rooms are arranged as shown above. Shakey can only travel between adjacent rooms. If he needs to get to a more distant room, he will have to travel past the others first.

Shakey starts in the kitchen. His goal is to fill Prof. Kautz's mug with freshly made coffee and bring the filled mug to Prof. Kautz's office.

2. A Complication: Now, Ravi wants coffee as well. Ravi's mug is currently in his office. Extend the start and goal states to reflect this.

3. A Second Complication: Another robot, Flakey, has been brought on-line to help Shakey. Extend your representation so that both robots can plan to work together.

What is the actual distance from the start state to the goal state for your representation of the problem?

Suppose you use the heuristic that is the shortest solution to the relaxed problem where actions have no preconditions. What is the heuristic value of the start state?

Verify that your formulation accurately reflects the domain by solving it using the FF planning system. Linux source for FF can be downloaded from http://members.deri.at/~joergh/ff.html. A pre-compiled Windows binary of FF is here.