PDDL语法学习-Problem篇-3

为了支持定时初始( timed initial)字面值,PDDL 2.2中的问题语法进行了非常简单的扩展。关键字的选择是一个有趣的选择,因为 at 是一个常用的谓词名,用于指示某个可定位的位置 (at Adam Bush-House)

这个关键字用于定义定时初始( timed initial)字面值的方式意味着它不应该与使用 at 作为谓词名的域发生冲突。然而,这完全取决于规划器如何分析计划。

先引入一个简单的例子:

(define

    (problem trainplanning1)

    (:domain railways)

    (:objects

        Pompey Guildford London - station

        train1 train2 - train

    )

    (:init

        (train-not-in-use train1)

        (at 20 (train-not-in-use train2))

    )

    ... goal omitted

)

内容

  • Timed initial literals

Timed Initial Literals

(at <time_value> <predicate>)

使用time关键字定义 timed initial的初始文字,然后是谓词变为true的时间点的值,然后是谓词本身。

在计划中,时间只是一个数字,没有对它所代表的范围做任何假设,因此写一些东西,比如10可以表示10秒,分钟,甚至是小时。

最终,建模用户的责任是确定他们希望将模型映射到什么范围,从而确定他们获得的时间精确度的“分辨率”。

(at 20 (train-not-in-use train2))

上述声明表示,在某一时刻,2号列车将不再使用

References

 

来自 <https://github.com/nergmada/pddl-reference/blob/master/docs/reference/PDDL2.2/problem.md>

 

上一篇:PDDL语法学习-Domain篇-5


下一篇:PDDL语法学习-Problem篇-1