CSE 473 Project 1

High-level planning for an office delivery robot

Spring 2001


General information

The objective of this project is to gain an understanding of knowledge-based planning systems. We will program a planning system using the Planning Domain Definition Language, or PDDL, and investigate the workings of a planning system (IPP for this project).

Your task is to implement a planning system for an office delivery robot in Sieg Hall. Since the planning is performed by the IPP planner, you can focus on the problem of modeling the task domain. Take a look at the maps given below. Imagine we want to implement a robot that is able to perform tasks such as "Bring coffee to Dieter's office", or "Get the fax, make a copy of it and deliver it to Pete".

As you already saw in the lecture, our robot is able to reliably navigate from one place to the other (given that they are on the same floor). For this project, you can make assumptions such as: If the robot is close enough to the fax machine, it can detect the fax with its cameras and pick it up with its manipulator.


Maps of the third and fourth floor of Sieg Hall.



Organization

We want you to work in groups of up to three students. Find partners for your group and send email to Bill Pentney with the names of the members of your group. Also send mail in case you have problems finding partners. The project will have two parts. The first part is due Wednesday, April 25, the second part is due Wednesday, May 2.

Part 1

This part will serve to acquaint you with planning systems in general, and IPP in particular. Use PDDL to describe the problem domain of an office delivery robot. Your robot should be able to perform tasks such as the ones described above. Use the map given above as a starting point for your domain. Since the map is incomplete, feel free to add locations (and problems for the robot). We want you to explore the capabilities of a state-of-the-art planning system such as IPP. Surprise us!

At the end of this part, you have to turn in your domain description (in PDDL) and some example plans generated within this domain. Furthermore, we need a short (2 pages) description of (a) the assumptions you made about the capabilities of the robot, (b) the assumptions you made about the environment, and, (c) how you assigned real world locations to the places used in your domain. For (c), you should use the images of the maps (third floor, fourth floor) and annotate them with the locations you use in your domain description.

To begin, download the project package. This package is for UNIX/Linux only. Unpack it by typing "tar zxvpf 473-proj-1.tar.gz"; the project files will be extracted into a directory called "473-proj-1". Read the README file contained within for further instructions. Read the papers given below.

Part 2

In this part of the project you are supposed to extend your domain to multiple robot scenarios (at least four robots). You should enforce collaboration between the different robots. This can be done by having robots with different capabilities and constraints. Some simple examples: All of your domains should include the constraint that the small hallways on the third and fourth floor (larry, zoran, etc.) can only be traversed by one robot at a time. You should turn in the description of your extended domain (hard copy), the problem description with example problems and solutions (electronic), and a one page description of how graph plan operates.

Additional material

Readings

You should start by reading Dan Weld's paper [1], which gives a good introduction to state-of-the-art planning. Papers [2] and [3] describe PDDL, the problem domain definition language used for this project. You need to understand this language in order to be able to model the service robot domain. IPP, the planner used in this project, is described in [4]. The IPP homepage [5] contains a lot of useful background information.

      [1] Dan Weld's paper Recent advances in AI planning, AI Magazine, 1999.

      [2] Short introduction to PDDL:How to describe simple planning domains and problems in IPP.

      [3] PDDL manual.

      [4] Technical report on IPP.

      [5] The IPP Homepage  Information on IPP and various papers on IPP and planning.

      [6] The AI Planning Competition - 2000