首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有多种类型的PDDL谓词变量

具有多种类型的PDDL谓词变量
EN

Stack Overflow用户
提问于 2021-04-22 15:48:37
回答 2查看 111关注 0票数 0

我正在尝试编写一个PDDL域。我有4种类型。我的问题是,在指定其中一个谓词时:

代码语言:javascript
复制
At(?x - type ?l - location)

我希望x能够接受其中的三种类型,但它只允许我做一种。我该怎么办?

EN

回答 2

Stack Overflow用户

发布于 2021-04-22 16:53:59

syntax of PDDL期望您的谓词声明如下所示:

代码语言:javascript
复制
(at ?x - entity ?l - location)

仔细检查括号的用法。

否则,你就做对了。通过期望entityagentobjectrobot的超类型,您将接受这些子类型中的任何一个。

但是请注意,在许多规划器中,类型object已经被隐式定义为根类型。我建议您将其重命名为physical_object

票数 0
EN

Stack Overflow用户

发布于 2021-04-22 17:33:21

实际上,我创建了一个名为entity的类型,然后指定我的机器人、代理和对象类型都是实体:

代码语言:javascript
复制
        (:types
    entity
    agent - entity
    object - entity
    robot - entity
    location
    )

(:predicates
At(?x - entity, ?l - location)
)
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67208973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档