In PDDL 2.1, durative-action
s were introduced. They are described (amongst others) with conditon
s and effect
s. Both can be defined at start
/at end
, condition
also over all
.
I found the following document, describing PDDL 2.1 quite extensively: pddl2.1 : An Extension to pddl for Expressing Temporal Planning Domains. Nevertheless, I have some problems getting the exact meaning.
The paper gives the following example:
(:durative-action heat-water
:parameters (?p - pan)
:duration (= ?duration (/ (- 100 (temperature ?p)) (heat-rate)))
:condition (and (at start (full ?p))
(at start (onHeatSource ?p))
(at start (byPan))
(over all (full ?p))
(over all (onHeatSource ?p))
(over all (heating ?p))
(at end (byPan)))
:effect (and
(at start (heating ?p))
(at end (not (heating ?p)))
(at end (assign (temperature ?p) 100)))
)
I'm wondering, whether (at start (onHeatSource ?p))
is redundant, as there is also the statement (over all (onHeatSource ?p))
. If not, where is the difference?
What is the order of evaluation? condition at start
, effect at start
, effect at end
, condition at end
? Does over all
include the time instance at start
and at end
?