PDDL: точное значение эффектов и условий в длительных действиях - PullRequest
0 голосов
/ 07 сентября 2018

В PDDL 2.1 введено durative-action с. Они описаны (среди прочих) с conditon с и effect с. Оба могут быть определены at start / at end, condition также over all.

Я нашел следующий документ, довольно подробно описывающий PDDL 2.1: pddl2.1: Расширение до pddl для выражения доменов временного планирования . Тем не менее, у меня есть некоторые проблемы с получением точного значения.

В статье приводится следующий пример:

    (: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)))
    )

Мне интересно, является ли (at start (onHeatSource ?p)) избыточным, так как есть также утверждение (over all (onHeatSource ?p)). Если нет, то в чем разница?

Какой порядок оценки? condition at start, effect at start, effect at end, condition at end? Включает ли over all экземпляр времени at start и at end?

1 Ответ

0 голосов
/ 08 сентября 2018

На ваш вопрос фактически дан ответ в той же статье, которую вы цитируете. На странице 12 (или 72) вы найдете объяснение:

Инвариантные условия в длительном действии требуются для интервал, который открыт с обоих концов (начало и конец в конце точки действия). Они выражены с использованием над всеми построить видно на рисунках 6 и 8. Если кто-то хочет указать, что факт p держится в закрытом интервале в течение продолжительного действия, тогда требуются три условия: (at start p), (over all p) и (at end p).

Таким образом, я думаю, что больше ничего не нужно объяснять.

Относительно вашего второго вопроса:

Какой порядок оценки? состояние при запуске, эффект при запуске, эффект в конце, состояние в конце? Включает ли все время? экземпляр в начале и в конце?

На последний вопрос ответили раньше: over all - это интервал открытия . В остальном, то есть вопрос о порядке оценки, я не понимаю вопроса - мне это кажется бессмысленным. Условия - это критерии, которые необходимо соблюдать, чтобы действие было применимо. Но в отличие от недлительных действий, эти критерии оцениваются не только в конкретном состоянии, в котором они применяются, но и в последовательности состояний. К каким состояниям применяются эти условия, определяется ключевыми словами at start, at end и over all.

эффекты не оцениваются, но они «случаются», т. Е. Они определяют, как результирующее состояние (в at end) изменяется в результате применения этого действия.

- надеюсь, это поможет

...