Closed MFaisalZaki closed 6 months ago
Hi @MFaisalZaki! The reason is that the grounder removes all the grounded actions that are inapplicable or not useful to solve the problem. The smarter the grounder, the fewer grounded actions are generated.
That is so true @alvalentini, but I think this could impact when trying to solve goal recognition as planning tasks since an observation is a grounded action which may not be generated by the grounder. Is there any flag I can set to force the grounder to generate all actions?
It is possible using this grounder with the option prune_actions=False
.
with Compiler(name='up_grounder', params={'prune_actions':False}) as grounder:
grounded_problem = grounder.compile(task).problem
or
from unified_planning.engines.compilers.grounder import Grounder
grounder = Grounder(prune_actions=False)
grounded_problem = grounder.compile(task).problem
Awesome, thanks @alvalentini.
If the issue is solved, can you close the issue? Thanks!
Describe the bug For some reason, some grounded actions are unavailable when using
Pyperplan
Grounder.To Reproduce
Screenshots
Additional context instance.zip