Homework 5

Due: Friday, November 6th

The original STRIPS program was designed to control Shakey the robot. Although Shakey was never actually built to handle the situation below, the STRIPS planner was built to handle the following scenario.

Consider the following version of Shakey's world.  In this world there are four rooms that open onto a corridor (all labeled in red).  Each room consists of three locations -  middle, wall, and door- all labeled in blue. The corridor consists of four locations - the four doors.  Each room contains a light switch (in green) on the corresponding wall.  Furthermore, there are four boxes (in green) currently in room 4.  Shakey himself (in purple) is in the middle of room 2.

Shakey is able to move from location to location, push moveable objects, climb on and off of climbable objects, and turn light switches on and off.  In more detail, these actions are:

• Go(x,y)    Shakey moves from location x to location y
• x and y must both be locations in the same room.  Again, notice that a door is considered to be "in" both of the two rooms that it lies between.
• Push(b,x,y)   Push box b from location x to location y.
• Follows the same rules as Go for locations x and y.  Of course this requires the box to be available for pushing.
• ClimbUp(b)  Climb onto box b.
• Requires that Shakey is standing on the floor next to the box.
• ClimbDown(b)  Climb down off of box b.
• TurnOn(s)  Turn a light switch on.
• To turn a light on (or off) Shakey must be on top of a box at the light switch's location.
• TurnOff(s)

Part One

Write STRIPS descriptions for not only the world above (the start state) but also the six actions as described.  There are a couple of  "common sense" requirements for the actions above that I have not explicitly listed.

Part Two

The goal is to have the light in room 3 turned on (all lights are currently off).  Describe this goal state.

Part Three

Demonstrate that the start state and the actions that you created in part one are sufficient and correct to create a plan to arrive at the goal state in part two.  To do this you should list each of the actions in order AND demonstrate that when each action is performed that it's preconditions have been met.