These are the current rules for finding a domain file for a given task file in the driver:
dirname, basename = os.path.split(task_filename)
domain_basenames = [
"domain.pddl",
basename[:3] + "-domain.pddl",
"domain_" + basename,
"domain-" + basename,
]
The second rule only works for tasks of the name "xxx.pddl" and the corresponding domain files "xxx-domain.pddl". This works for names like p01 but is, in my opinion, a very arbitrary rule. I would suggest to change this line to
basename[:-5] + "-domain.pddl"
which works for all task files called <anything>.pddl and corresponding domain files <anything>-domain.pddl, which is probably still not a perfect rule, but much better in my opinion. I also checked the downward benchmarks and all files there end on ".pddl". Any objections?
|