we recently added a check to Fast Downward's translator to report
objects that are declared twice, including cases where the same object
is declared once in a :constants block and then again in an :objects block.
PDDL files with such duplicates were previously accepted by the planner
(which didn't check for duplicates), but could lead to bogus behaviour.
The planner considered such duplicates as different objects which
happened to have the same name and could get confused about which one
was which.
This is now fixed, and duplicates are treated as errors. It turns out
that the IPC "pathways" domain and its compiled variant "pathways-noneg"
had lots of such duplicates, which means that behaviour in these domains
could previously have been buggy.
We have fixed the pathways and pathways-noneg instances in the Fast
Downward repository, so if you have any precomputed translator results
for these domains floating around, we recommend that you update your
repository and rerun the translator in these domains.
Moreover, if your Fast-Downward-based planner showed suspiciously bad
performance in these domains, you might want to rerun it with this fix.
If you run into any problems with pathways after this fix, please let us
know. It is not easy to verify that everything was changed correctly,
since more than 2000 lines of PDDL had to be changed.
Cheers,
Malte