原文地址:
推荐通过原文了解更多没有翻译到位的内容。
PDDL2.1
简介
为了补充领域文件的语法,必须扩展PDDL 2.1中的Probelm的语法。PDDL 2.1中语法的一个有趣扩展是添加了一个度量( metric)。行为类似于优化函数的 metric 为计划定义了一个成本值。然后,我们表示是否希望这个指标最大化(如足球)或最小化(如高尔夫球)。
老规矩,先引入一个简单的例子:
(define
(problem rover1)
(:domain rover-domain)
(:objects
r1 r2 - rover
wp1 wp2 - waypoint
)
(:init
(= (battery-amount r1) 100)
(= (recharge-rate r1) 2.5)
...
)
(:goal (and
...
)
)
(:metric maximize (+
(battery-amount r1)
(battery-amount r2)
)
)
)
内容
- Numeric Fluents
- Metric
- Length(Deprecated)
1、Numetric Fluents
(= (<fluent_name> <argument>) <value>)
等号前缀表示法用于为数值流分配一个值。一些规划器将要求所有可能的数值为数值通量应声明之前
译者注:
也即是需要在init中对此数值流进行初始化赋值,如 (:init (= (battery-amount r1) 10) ...
2、MeTric
(:metric minimize (<numeric_operation>))
metric
可以使用对fluents
的一些数值操作来定义,包括只使用单个fluent
。声明 metric
的最常用方法是声明一个没有参数的数值流,并在每个操作的effect内按该操作的成本来增加它。
我们可以选择最小化或最大化 metric 函数的值。注意, metric 函数不能代替目标。
(:metric maximize (+
(battery-amount r1)
(battery-amount r2)
)
)
3、Length
长度参数是不推荐使用的。几乎没有规划器会支持它。(此处为原文)
PDDL 2.2的语法补充
简介
为了支持定时初始( 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>)
使用at
关键字定义 timed initial的初始值,然后是谓词变为true的时间点的值,然后是谓词本身。
在规划中,时间只是一个数字,没有对它所代表的含义做任何假设,比如10可以表示10秒,分钟,甚至是小时。最终,建模用户的责任是确定他们希望将模型映射到什么范围,从而确定他们获得的时间精确度的“分辨率”。
(at 20 (train-not-in-use train2))
上述声明表示,在某一时刻,2号列车将不再使用
References
PDDL - The Planning Domain Definition Language, [Ghallab, M. Howe, A. Knoblock, C. McDermott, D. Ram, A. Veloso, M. Weld, D. Wilkins, D.]
PDDL2.1: An Extension to PDDL for Expressing Temporal Planning Domains, [Fox, M. Long, D.]
PDDL2.2: The Language for the Classical Part of the 4th International Planning Competition[Edelkamp, S. Hoffmann, J.]
PDDL Examples
OPTIC - Optimising Preferences and Time Dependent Costs