pddl4j icon indicating copy to clipboard operation
pddl4j copied to clipboard

Compilation error with object-fluents

Open miquelbofill opened this issue 8 years ago • 7 comments

It seems that object-fluents are not parsed correctly. I attach a minimal toy PDDL domain example to check. object-fluents.txt

miquelbofill avatar Apr 06 '16 18:04 miquelbofill

Object-fluent are not parsed correctly this is a known issue that must be corrected. The correction will be done as soon as possible.

pellierd avatar Apr 07 '16 14:04 pellierd

Any update on this?

JoanEspasa avatar Jan 10 '19 09:01 JoanEspasa

Hi, Object fluents are not implemented in PDDL4J for the moment. Considering the example attached in previous message, it seems like there is a problem on how PDDL is used.

(= (at ?x) ?y)

?y must be a number instead of an object

Best regards, Emmanuel.

ghost avatar Jan 21 '19 12:01 ghost

I see. Pardon my inexperience with BNFs and parsing in general, but shouldn't that be acceptable from the definition of the bulit-in 2-ary = predicate (in case the :equality requirement is given)?:

<atomic formula(t)> ::= :equality (= t t)

http://www.plg.inf.uc3m.es/ipc2011-deterministic/attachments/OtherContributions/kovacs-draft-2011.pdf

If that is not the case, what should be the correct way to check the value of an object-fluent in a precondition?

Thank you for your time :+1:

JoanEspasa avatar Jan 21 '19 13:01 JoanEspasa

Hi,

First I need to apologize about my last answer. What you did in object-fluents.txt seems to be right. The problem is in the PDDL4J parser. As noticed above, Object-fluent are not parsed correctly. This is a known issue that must be corrected. We need to discuss in the team how we can tackle the problem.

Sorry again, we will keep you in touch in this thread when the issue will be corrected.

Best regards, Emmanuel.

ghost avatar Jan 22 '19 09:01 ghost

My experience with object-fluents has been always positive, as in some sense it lets you express problems more compactly, and in this area, all state-space reductions are more than welcome. If you are interested, you could check H. Geffner [1] work on Functional Strips.

Anyway, i'll keep my eye on the Issue and see what your team decide. Thanks to you Emmanuel and your team for your work on PDDL4J :)

[1] Geffner, H. (2000). Functional STRIPS: a more flexible language for planning and problem solving. In Logic-based artificial intelligence (pp. 187-209). Springer, Boston, MA.

JoanEspasa avatar Jan 22 '19 10:01 JoanEspasa

You right but added object-fluent is not a priority. Feel free to develop this feature and make a pull request.

pellierd avatar Jun 26 '20 22:06 pellierd