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>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章