Hi,
I have rather simple domain and problem PDDL files (included below the message) and am hoping to use FD using the `lama-first` search alias to solve these. However, when I run the planner with `--alias lama-first`, I get "Completely explored state space -- no solution!". Interestingly though, I am certain this domain has a solution, because changing the alias to `--alias seq-opt-lmcut` yields a valid plan. Upon some further inspection, I found that removing `hlm` from the search arguments that `lama-first` is an alias for also yields a solution (i.e, running: `python fast-downward.py --evaluator 'hlm=lmcount(lm_factory=lm_rhw(reasonable_orders=true),transform=adapt_costs(one),pref=false)' --evaluator 'hff=ff(transform=adapt_costs(one))' --search 'lazy_greedy([hff],preferred=[hff,hlm],cost_type=one,reopen_closed=false)'`).
I suspect that there is some issue with using landmark-based heuristics with my PDDL files, but am unsure what the precise cause could be. Any help or pointers are much appreciated!
Best,
Nishanth
Domain PDDL:
(define (domain mydomain)
(:requirements :typing :equality :conditional-effects)
(:types
agent bed bucket pop room_floor - object
)
(:predicates
(handempty)
(holding ?x0 - pop)
(inside ?x0 - pop ?x1 - bucket)
(reachable-bucket ?x0 - bucket)
(reachable-pop ?x0 - pop)
)
(:action Grasp
:parameters (?x0 - pop)
:precondition (and (handempty)
(reachable-pop ?x0))
:effect (and (holding ?x0)
(not (handempty))
(not (reachable-pop ?x0))
)
)
(:action NavigateTo-bucket
:parameters (?x0 - bucket)
:precondition ()
:effect (and (reachable-bucket ?x0)
(forall (?x0 - pop) (not (reachable-pop ?x0)))
)
)
(:action NavigateTo-pop
:parameters (?x0 - pop)
:precondition (and (handempty))
:effect (and
(forall (?y - pop) (when (not (= ?y ?x0)) (not (reachable-pop ?y))))
(reachable-pop ?x0)
(forall (?x0 - bucket) (not (reachable-bucket ?x0)))
)
)
(:action PlaceInside
:parameters (?x0 - bucket ?x1 - pop)
:precondition (and (holding ?x1)
(reachable-bucket ?x0))
:effect (and (handempty)
(inside ?x1 ?x0)
(not (holding ?x1))
)
)
)
Problem PDDL:
(define (problem myproblem) (:domain mydomain)
(:objects
agent - agent
bed1 - bed
bucket1 - bucket
floor1 - room_floor
pop1 - pop
pop2 - pop
)
(:init
(handempty)
(reachable-agent agent)
)
(:goal (and (inside pop1 bucket1)
(inside pop2 bucket1)))
)