Hi all,
Several of you have given us comments and corrections on the examples uploaded yesterday. Many thanks!
We uploaded the corrected files and you can download them from the same place. Thus, you can download them from the main competition wiki page (
http://ipc.informatik.uni-freiburg.de/HomePage). They are reorganized into the following directory structure: /Track/Domain/Variant with the variants now are "ObjectFluent" and "Propositional"; we may add other variants such as "ADL" later. As usual, comments/corrections/questions are very welcome! There are a couple of things, especially some new concepts/keywords, that were not clearly explained before so I will try to explain them below. We will also try to update the appropriate wiki pages asap to discuss those changes:
1. "change" effects. This is a new type of effect specification that exist in the "Temporal/ObjectFluent" variant (and in some "NetBenefit/ObjectFluent" -- if durative actions exist). The syntax, which is corrected in the newly uploaded file is: (change var value). This effect is the combination of the two effects "(at start (assign var undefined))" and "(at end (assign var value))". For the discussion on "undefined", please refer to the wiki page:
http://ipc.informatik.uni-freiburg.de/PddlExtension under the "Effects on object fluents" section.
2. ":goal-utilities" requirement: This is the counter-part of ":action-costs" keyword (
http://ipc.informatik.uni-freiburg.de/PddlActionCosts) to represent goal utility. When this requirement keyword is used, the "preference" feature of PDDL3 is enabled. However, only preference on goals (i.e. at-end soft goals) will be allowed and thus all other trajectory constraints/preferences will not be allowed.
3. Objective function in the NetBenefit tracks: we changed to "maximize" instead of the previous "minimize" objective to more naturally represent the nature of maximizing the total net-benefit of the final plan. BTW, the objective function for NetBenefit track looks ugly and yes, we know that. However, we think that it is important and also give less work to the competitors if we can reuse what we have in the latest PDDL specifications.
4. "(total-cost) - number": If you had a chance to look at all the examples, then you may realized that in some domains, we use "(total-cost) - number" under the :functions declaration, and in some other domains we use "(total-cost)" without the "- number" declaration. As specified in
http://ipc.informatik.uni-freiburg.de/PddlExtension, under the "Changes to prerequisites" section, they are the same. However, to minimize the work on developing parser, we will try to use "- number" explicitly in every place that we need numeric fluents.
Cheers,
Minh