pddl4j icon indicating copy to clipboard operation
pddl4j copied to clipboard

No plan / very long computing time

Open AlexDmr opened this issue 5 months ago • 0 comments

I used both PandaPI and PDDL4J for this problem. With PDDL4J, the problem is said to be unreachable, following text apply to PandaPI

Context: I have been conducting research on using planners to generate test cases, specifically for modeling a todolist application. The application consists of a list of items, each with the ability to be marked as done or undone. Users can add, mutate, or delete items from the list. Initially, I attempted to model this system using mere PDDL, but found HDDL to be more "natural" for representing such a system.

I've successfully modeled the domain using HDDL, employing recursive tasks implemented by methods. Some of these methods call back the task to enable the possibility of adding, editing, or removing several items before completing the task. The problem is modeled with an initial application state (a list with or without items) and a goal state (the list with additional items and/or items in different states).

Problem: I incrementally built the domain for the todolist application and tested it successfully. Plans to transition from the initial todolist state to the goal state were computed in less than 1 second. However, when I added a new method for managing the todolist—specifically, the ability to remove an item—the planner failed to find a solution. Parsing and grounding were completed without errors, but the planner spent an "infinite" amount of time searching for a plan (more than 300 seconds).

I attempted to use the problemSolver.sh script and the pandaPIengine program on the SAS file, but the results were consistent. Interestingly, if I comment out the "MtdEditItem_remove" method (lines 211-226), a plan can be found in less than 1 second.

Files: I am attaching the domain and problem files that trigger the infinite search. If I comment the "MtdEditItem_remove" method, a plan can be found quickly (less than 1s).

Question: I suspect that I am missing something, and despite spending several days searching, I haven't been successful in identifying the issue. I must also mention that I tested the remove action in other domain/problems, and it seems correct with plans found in those contexts. Is it normal for planning time to explode when adding a method? Is there a better way to model such a problem to avoid time explosion?

Thank you for your assistance.

problem.hddl.txt domain.hddl.txt

AlexDmr avatar Jan 23 '24 10:01 AlexDmr