Questions tagged [pddl]

Planning Domain Definition Language is used to define planning domain models used by AI Planning engines. Use this tag for questions about modeling in PDDL syntax, parsing PDDL models, interpreting constructs the PDDL syntax allows and about widely used tools such as VAL/Validate, or well known planner implementations.

Planning Domain Definition Language is used to define planning domain models used by AI Planning engines. Use this pddl tag for questions about:

  • modeling in PDDL and understanding of the syntax,
  • parsing PDDL models,
  • interpreting constructs the PDDL syntax allows and about
  • widely used tools such as VAL/Validate, or well known planner implementations.

For getting started, learning from examples or trying out AI Planning without installing anything, visit http://planning.domains/, where the AI planning community centralizes such resources. For more advance work and certainly when working on industrial applications, or your own planning engine implementation, it is convenient to use VS Code with PDDL Extension. These resources and tools guide the novice and empower the expert, thus provide the answer before you realize you had a question.

111 questions
7
votes
2 answers

Can I use an Antlr created lexer/parser to parse PDDL file and return data to a Java program?

I am new to Antlr, but have used Flex/Bison before. I want to know if what I want to do using Antlr is possible. I want to parse an PDDL file using Antlr and build up my own representation of the PDDL file's contents in a Java Class that I wrote as…
Steven
  • 73
  • 4
5
votes
2 answers

Plan Visualization and System Architecture in PDDL-based Planning

I have built several domains and problems in PDDL and now I'm looking for a possibilty to visualize my domains, problems and solutions. My questions are as follows: Are there any tools for a rather simple graphical representation of plans (e.g.…
Pold
  • 337
  • 1
  • 11
4
votes
2 answers

Why do we need PDDL, when we already have first order logic?

This might be a totally naive question, but i am interested to know the particular reasons. Why was PDDL developed in the first place? Why could we not do the reasoning using First Order Logic?
TimeToCodeTheRoad
  • 7,032
  • 16
  • 57
  • 70
4
votes
0 answers

PDDL library for checking/manipulating domains

Does anybody know a good PDDL library in python or C++ that has the following features Parsing of pddl domain/problem files Support for ADL (i.e. quantifiers in preconditions and effects) Applicability check: A function that tests if a specific…
veio
  • 507
  • 4
  • 16
4
votes
0 answers

Metric (total-cost) not minimized with Metric-FF

I'm trying to use Metric-FF (v2.1) to solve a classical planning problem. I noticed that my plans weren't optimal and started to play around with cost minimization. I realized that the planner doesn't seem to take the cost into consideration despite…
Roper
  • 903
  • 1
  • 9
  • 17
3
votes
1 answer

Is it possible to get multiple plans from a PDDL implementation?

I'm trying to write a program which can solve a maze in PDDL, for example by using graphplan. From the examples I have seen on the internet one gets A solution to the problem(e.g. PDDL Graphplan can't find plan), but only one. I have some specific…
Nekroz
  • 169
  • 1
  • 1
  • 11
2
votes
1 answer

Why isn't PDDL compiling correctly and resulting in parse error?

I am new to PDDL so I don't understand very well what's going on but I have this issue and it seems that black-box planner isn't able to parse my PDDL code. Here there is the domain: (define (domain vacuum) (:requirements :strips) …
Neskelogth
  • 91
  • 3
  • 12
2
votes
1 answer

PDDL Suspected timeout. arity of VALID_STATE to high! increase MAX_ARITY (currently 5)

I'm new to working with PDDL. I use an online editor. I have this problem: there are 3 agents, 3 cannibals and a boat with its maximum capacity of 2 people. There are also 2 shores and a river between them. All of the people are on one shore…
2
votes
1 answer

PDDL planner for Sokoban, Challenge

I was experimenting a bit with generation of Sokoban levels in PDDL and found out that many levels in Sokoban, which appear easy to humans, seem to be quite hard for PDDL planners (to be honest I also found vice versa examples). So I wonder whether…
bo198214
  • 178
  • 1
  • 4
2
votes
1 answer

PDDL planner does not recognize types

I wrote a pddl code in a domain file that describes kitchen environment (eggs, coffee, receptacles, surfaces etc.) thus types were defined in hierarchical manner. (define (domain robochef) (:requirements :adl :strips :fluents :typing) (:types …
roym18
  • 23
  • 4
2
votes
3 answers

PDDL forall with when condition in durative-action

This question builds on a previous question about forall clauses. I would like to limit the forall with a 'when' statement as shown below: (:durative-action finish :parameters (?r - robot ?p - part) :duration ( = ?duration 1) :condition (and …
steveb
  • 43
  • 4
2
votes
1 answer

A bug in PDDL AI Planning

I am trying to solve a Pacman problem using PDDL. The main thing I need to do is soft code the power duration without using functions or fluents. It returns no error but somehow I feel like it inits Powerlose(n2, n0). I never init Powerlose(n2, n0)…
Dan
  • 103
  • 7
2
votes
1 answer

How to get the functionality of break in PDDL forall

I am trying to solve the Light Up puzzle using PDDL. To implement the effect of the action placing a bulb in a cell, I have to place a bulb in (x, y) and then lit up the same row and column as long as there is no black cell. I am unable to lit up…
2
votes
1 answer

variable in PDDL that can be of more than one type?

Is there any version of this statement that is valid, expressing that an actor knows another actor or a location? Or must I specify separate predicates knows_actor and knows_location? (:predicates (knows ?a - ACTOR ?thing - ACTOR…
davideps
  • 541
  • 3
  • 13
2
votes
1 answer

maximize function in PDDL

I'm trying to solve a (single-agent) game with a planner using the description language pddl. My objetive is to get the most possible points delivering objects to persons in a world. The function (puntos) is given in the following action…
rafaelleru
  • 367
  • 1
  • 2
  • 19
1
2 3 4 5 6 7 8