爲了支持定時初始( 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
- 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
來自 <https://github.com/nergmada/pddl-reference/blob/master/docs/reference/PDDL2.2/problem.md>