【PDDL语法学习】 了解问题文件(Problem)第二篇:PDDL2.1 & 2.2

原文地址:

推荐通过原文了解更多没有翻译到位的内容。​​

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值