Domains with contradictory effects

15 views
Skip to first unread message

Argaman Aloni

unread,
Dec 9, 2021, 2:53:35 AM12/9/21
to Fast Downward
Hi all,

I am using FD for my research and I encountered an interesting phenomenon. In some domains there are cases where there are contradictory effects such as can be seen in rover domain for the actions <communicate_soil_data>,  <communicate_rock_data> and <communicate_image_data> (domain attached in - link).

How can plans be created in such cases? their effects negate one another but how can a planner deal with these cases?

Thanks in advance,

Argaman.

Michael Katz

unread,
Dec 9, 2021, 7:07:55 AM12/9/21
to fast-d...@googlegroups.com
This is not a Fast Downward question,  but rather a STRIPS question. 
The question is, when add effects and delete effects intersect, it is not clear whether to first remove the delete effects, then add the add effects or the other way around. 
AFAIK,  there is no mention of the issue in the STRIPS paper, and I have seen different versions of course slides on this. 
If I am not mistaken,  Fast Downward implements delete-then-add, and this also makes more sense to me, but there may be some planners that behave differently.

--
You received this message because you are subscribed to the Google Groups "Fast Downward" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fast-downwar...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fast-downward/2c18329a-79fc-4095-b230-9646fa5b6f2an%40googlegroups.com.

Christian Muise

unread,
Dec 9, 2021, 8:01:57 AM12/9/21
to Fast Downward
Delete then add. Many domains that originally had this feature were temporal ones collapsed into instantaneous actions. Delete was the "at start" effect, and the add was the "at end".

Cheers

Coles, Andrew

unread,
Dec 9, 2021, 8:59:36 AM12/9/21
to Fast Downward
The motivation for doing a seemingly redundant delete-then-add goes back to GraphPlan-encoding-based planners -- it has the effect of stopping two communicate actions (or a communicate and a navigate action) for the same rover from being selected in the same action layer, i.e. being applied at exactly the same time in a solution plan.  The delete effect on (available ?r) interferes with any preconditions on it, so the actions concerned are mutex.

(None of this matters if sequential non-temporal plans are all you're interested in.)

Cheers,

Andrew


--
Dr Andrew Coles
Reader in Artificial Intelligence (on sabbatical 2021/22)
Department of Informatics, King's College London
Room: Bush House (N)7.04, Tel: +44 (0) 20 7848 1511



From: fast-d...@googlegroups.com <fast-d...@googlegroups.com> on behalf of Christian Muise <christi...@gmail.com>
Sent: 09 December 2021 13:01
To: Fast Downward <fast-d...@googlegroups.com>
Subject: Re: [Fast Downward] Domains with contradictory effects
 

Malte Helmert

unread,
Dec 9, 2021, 12:45:08 PM12/9/21
to fast-d...@googlegroups.com, Michael Katz
On 09.12.21 13:07, Michael Katz wrote:
> This is not a Fast Downward question,  but rather a STRIPS question.
> The question is, when add effects and delete effects intersect, it is
> not clear whether to first remove the delete effects, then add the add
> effects or the other way around.
> AFAIK,  there is no mention of the issue in the STRIPS paper, and I have
> seen different versions of course slides on this.
> If I am not mistaken,  Fast Downward implements delete-then-add, and
> this also makes more sense to me, but there may be some planners that
> behave differently.

Different interpretations of the semantics existed for some time, but
this was resolved for PDDL as "the add effect wins" at IPC 2000 and at
the very latest at IPC 2002.

Best,
Malte

Michael Katz

unread,
Dec 9, 2021, 8:23:09 PM12/9/21
to Roni Stern, fast-d...@googlegroups.com
If you assume it to be initially true for all rovers, then I think the answer is yes. 

On Thu, Dec 9, 2021, 9:06 PM Roni Stern <ster...@post.bgu.ac.il> wrote:
Hmm. So, the implications of this is that in this domain the (available) predicate is basically redundant, I believe (for sequential non-temporal planning). 

--
You received this message because you are subscribed to the Google Groups "Fast Downward" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fast-downwar...@googlegroups.com.


--
Roni Stern, Associate Professor
Dept. of Software and Information Systems Engineering
Ben Gurion University of the Negev

roni.stern

unread,
Dec 10, 2021, 8:46:36 AM12/10/21
to Fast Downward
Hmm, so the implication of this is that in this domain the (available ?r) predicate is basically redundant, I believe. 

Best
Roni

Christian Muise

unread,
Dec 10, 2021, 8:53:22 AM12/10/21
to Fast Downward
Redundant in certain circumstances. If you want a partial-order plan (or indeed any plan that allows actions in parallel), then it helps prevent concurrent communication actions by the same rover. If you're just asking for a sequential plan, then in the case of rovers it would be redundant. The domain/problem spec doesn't stipulate what form of plan it expects (sequential, POP, etc), so I think it makes sense to have those included.

--
You received this message because you are subscribed to the Google Groups "Fast Downward" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fast-downwar...@googlegroups.com.

Malte Helmert

unread,
Dec 10, 2021, 9:04:17 AM12/10/21
to fast-d...@googlegroups.com, Christian Muise
On 10.12.21 14:52, Christian Muise wrote:
> Redundant in certain circumstances. If you want a partial-order plan (or
> indeed any plan that allows actions in parallel), then it helps prevent
> concurrent communication actions by the same rover. If you're just
> asking for a sequential plan, then in the case of rovers it would be
> redundant. The domain/problem spec doesn't stipulate what form of plan
> it expects (sequential, POP, etc), so I think it makes sense to have
> those included.

It made sense at the time, when there were both sequential planning and
partial-order metrics used in the IPC. These days it's more common for
benchmarks to come tied to specific semantics/optimization metrics, and
parallel plan length optimization isn't very commonly considered, unlike
temporal planning, which is a generalization.

If you're working with Fast Downward, sequential planning semantics are
baked in, and indeed Fast Downward removes these things during translation.

Best,
Malte
Reply all
Reply to author
Forward
0 new messages