1

在 PDDL 中,我可以像这样定义“子”类型:

(:types
  one two - parent other
)

onetwo也是parent,other是不同的。

就像,谓词(both ?x - parent)接受ones 和twos。

我想做多级继承,我试过

(:types
  sprite fanta - fizzy water - drink
  food
)

I want spriteand fantato be fizzy, and fizzyand waterare both the type drink.

所以我的谓词(pour ?x - drink)应该接受sprite,但目前还没有。

如何正确设置此类型树?

object
├── drink
│   ├── fizzy
│   │   ├── fanta
│   │   └── sprite
│   └── water
└── food
4

1 回答 1

1

我希望现在回答你的问题还为时不晚。这段代码应该做你想做的事:

(:types
   food drink - object
   water fizzy - drink
   fanta sprite - fizzy)

希望它有所帮助!您可以在此处找到完整的 PDDL 参考。

于 2019-05-14T11:52:31.707 回答