Skip to content

A free and open guide to Planning Domain Definition Language to help you get started

Notifications You must be signed in to change notification settings

jan-dolejsi/pddl-reference

 
 

Repository files navigation

layout title permalink nav_order
default
Home
/
0

{% if false %} If you can see this and want to view the reference guide, you're in the wrong place, the reference guide has been rebranded and moved here: https://planning.wiki {% endif %}

{% if site.url == "https://nergmada.github.io/planning-wiki/" %} WARNING This is the old website, please use https://planning.wiki as this URL is closing {% endif %}

Planning.Wiki - The AI Planning & PDDL Wiki

Our Contributors: {% git_author_all %}Jonathan Mounty

Join The Planning Community on Slack

Introduction

This Wiki is here to provide easy access to resources related to the field of AI Planning. AI Planning is difficult to quantify under one roof, due to the variety of ongoing research in the field.

The International Conference on Autonomous Planning and Scheduling has in the course of supporting AI Planning research created a competition for the AI Planning Software (Planners) that have been built to solve AI Planning problems.

This competition, dating from 1998, has defined a general purpose definition language, Planning Domain Definition Language (PDDL) {% cite pddl1998 %}, which is designed to be capable of specifying any planning or scheduling problem you could come across.

In reality, PDDL since it's first incarnation in 1998 has had serious modifications to make it capable of handling the complex tasks we expect of modern autonomous planning and scheduling techniques. {% cite pddl212003 pddlplus2003 pddl222004 pddl32005 %}

For more details on PDDL, Planning, the history, the usage and the research, see the guide.

Using This Guide

This wiki splits into three main sections, guide, reference and examples.

The guide section is here to help the uninitiated get an idea of what planning is and how it can be used. It glazes over technical details where they're complex and difficult to understand. This is not intended to be a substitute to the copious academic literature written in the subject.

The reference guide itself splits into two sections, one for the language of planners, PDDL. The other section for the planners which can read and solve PDDL problems.

The nature of AI planning and the language means that not all features are supported by all planners and not all techniques are used as often as others. The reference here aims to help with that by firstly showing next to each definition an indication of how well supported the feature is and how commonly used it is.

Support:

Universal {: .label .label-blue } High {: .label .label-green } Medium {: .label .label-yellow } Poor {: .label .label-red }

Usage:

High {: .label .label-green } Medium {: .label .label-yellow } Low {: .label .label-red } Rare/None {: .label .label-purple }

For planners, this reference will aim to provide indication of what features are supported by what planners. It also provides useful hints and notes about the quirks and specific issues certain planners have in running certain problems.

Community

To help grow the community and support available to new and experienced users alike, we work with The Planning Community slack, to help connect people working and using planning & PDDL. Drop in and say hello

Contributions, Corrections and Feedback

Contributions are always welcome!

The best way to provide multiple contributions is to request collaborator access to this repository, either via emailing [email protected] or by filing an issue on this repo. You can fork this repository to your GitHub, make changes and file a pull request.

Alternatively, if you are not able to provide a contribution, but maybe think there is something this guide is missing or is incorrect, please add a new issue to this repo, and a correction, or additional will be made based on priority. Please use the "Report a problem with this guide" button available on most pages.

Finally, if you have a planner which you think should be included in this reference guide, please ask for collaborator access or fork the repository (if you're the creator of the planner), or create an issue (if you're a user) and we'll try to include it.

Any other issues/concerns should be sent to [email protected] and I'll try to get back to you ASAP.

Contents

This site breaks down into two major content sections

  • the guide - Focuses on what planning is and using planning and planners to solve planning problems
  • the reference - Provides a "handbook" to the language and the planners which solve the problems modelled in said language.

FAQ

Additional Resources

Below you can find a collection of resources for writing, learning and using PDDL and planning. For more information on what these tools and resources are and how they can help, please visit the additional resources page.

References

{% bibliography %}

Non Academic References

About

A free and open guide to Planning Domain Definition Language to help you get started

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • SCSS 47.8%
  • TeX 29.8%
  • Shell 14.3%
  • Ruby 8.1%