The IPC-4 Domains

Our goals in the creation of the IPC-4 domains were to get as close as possible to applications, and to cover diverse kinds of problem structure. We invested significant effort into achieving these goals, and we believe we succeeded in providing an interesting set of benchmarks.

We contacted various people who developed/are developing planning application domains. In those cases where there was mutual interest in entering the application into IPC-4, we established collaborations, bringing the applications into forms suitable for IPC-4. We took care to select a range of intuitively structurally very different applications. In the process of adapting the applications for use in the IPC-4, inevitably some of the realism had to go, in order to accomodate language or system capabilities. Still, the domains are at least a large step into the right direction.

IPC-4 featured the following 7 domains:

Airport -- Developed by Jörg Hoffmann and Sebastian Trüg. Planners control the ground traffic on airports. The competition test suites were generated by exporting traffic situations arising during simulation runs in the airport simulation tool Astras (by Wolfgang Hatzack). The largest instances in the test suites are realistic encodings of Munich airport.

Pipesworld -- Developed by Frederico Liporace and Jörg Hoffmann. Planners control the flow of oil derivatives through a pipeline network, obeying various constraints such as product compatibility, tankage restrictions, and (in the most complex domain version) goal deadlines. One interesting aspect of the domain is that, if one inserts something into the one end of a pipeline segment, something potentially completely different comes out at the other end. This gives rise to several subtle phenomena that can arise in the creation of a plan.

Promela -- Developed by Stefan Edelkamp. Planners are asked to find deadlocks in communication protocols, translated into PDDL from the Promela specification language. Deadlocks were specified via blocked transitions and processes. The representation chosen for the processes are finite state transition systems, while communication channels are modelled by queues with moving head and tail pointers. The communication protocols used in IPC-4 were the dining philosophers problem, as well as an optical telegraph routing problem.

PSR -- Developed by Sylvie Thiebaux and Jörg Hoffmann. Planners must resupply a number of lines in a faulty electricity network. The flow of electricity through the network, at any point in time, is given by a transitive closure over the network connections, subject to the states of the switches and electricity supply devices. The domain is therefore a good example of the usefulness of derived predicates in real-world applications.

Satellite -- Adapted for IPC-4 by Jörg Hoffmann. Planners are asked to collect image data with a number of satellites. The domain was introduced by Maria Fox and Derek Long in IPC-3. All (but one) of the IPC-3 domain versions were re-used with the exact same suites of instances. Two of the IPC-3 domain versions were extended with time windows for the sending of the gathered data to earth, which is the most critical aspect of the problem in reality.

Settlers -- Introduced by Maria Fox and Derek Long in IPC-3. The domain, i.e. its test suite, could not be solved efficiently by any of the IPC-3 participants. We re-used the domain with no modifications whatsoever, except removing some quantified effects (that could easily be replaced with lists of non-quantified effects).

UMTS Developed by Stefan Edelkamp and Roman Englert. The task is to set up applications for mobile terminals. The objective is to minimize the time needed for the set up, i.e. to minimize the makespan of the plan. When ignoring that objective, i.e. for sub-optimal planners, the problem becomes trivial. For optimal planners, the domain is a realistic challenge.

For more detailed descriptions of the domains, see our extended abstract as appeared in the IPC-4 booklet distributed at ICAPS'04.

Domain Versions vs. Domain Formulations

All the domains are organized in a two-step hierarchy of domain versions, and domain version formulations. The domain versions differ in terms of the (number of) problem constraints they consider. The domain version formulations differ in terms of the language used to formulate the (same) problem constraints. Formulations of complex problem constraints in more primitive languages such as STRIPS are made by compiling down from the instances formulated in richer languages such as ADL. We let the competitors choose whichever formulation of a domain version they could handle best/handle at all. The results for each domain version were then evaluated together, irrespective of the formulations chosen by the individual planners. Our objective behind this strategy was to enable every planner -- even pure STRIPS planners -- to tackle a range of interesting problems, while at the same time not introducing too many distinction lines into the competition data.

Derived Predicates and Timed Initial Literals

Derived predicates are used in PSR to model the flow of electricity, and in Promela to detect deadlock states. Timed initial literals are used in Airport to model the times at which a runway will be blocked due to landing airplanes. They are used in Pipesworld to model goal deadlines. They are used in Satellite to model the times at which data can be sent to earth, and they are used in UMTS to model time windows during which certain set up steps can be accomplished.


The total ASCII size of the IPC-4 benchmark suite is about 500 MB. The following gzipped compressed tar-archive (3.8 MB) contains all the files.