PDDL 中的变量可以有多种类型?
variable in PDDL that can be of more than one type?
这个陈述是否有任何版本是有效的,表示一个演员认识另一个演员或一个地点?或者我必须指定单独的谓词 knows_actor 和 knows_location?
(:predicates
(knows ?a - ACTOR ?thing - ACTOR LOCATION)
)
如果您使用的规划器支持类型,一个可能的简单解决方案是在类型部分定义超类型:
ACTOR LOCATON - ACTOR_OR_LOCATION
然后定义谓词的第二个参数(?thing),类型为ACTOR_OR_LOCATION
这个陈述是否有任何版本是有效的,表示一个演员认识另一个演员或一个地点?或者我必须指定单独的谓词 knows_actor 和 knows_location?
(:predicates
(knows ?a - ACTOR ?thing - ACTOR LOCATION)
)
如果您使用的规划器支持类型,一个可能的简单解决方案是在类型部分定义超类型:
ACTOR LOCATON - ACTOR_OR_LOCATION
然后定义谓词的第二个参数(?thing),类型为ACTOR_OR_LOCATION