定义PDDL域时的一些标准



我最近开始使用PDDL,特别是使用PDDL和fast -down来解决问题。

然而,我在使用PDDL时遇到了一个问题。定义一个领域和一个可解决的问题并不具有挑战性,最大的问题是求解器的运行时间。

一个定义良好的领域可以在几秒钟内解决的问题,在一个定义不佳的领域可以在几分钟内解决。

我想询问在定义PDDL域时应该考虑哪些标准。(例如:少用谓语,尽量少用"forall";或"存在"等)

我一直在互联网上寻找关于优化PDDL的域定义,但是没有答案。

这是一个不可能明确回答的问题。一般经验法则:

  • 使用你能得到的最简单的形式(条是最简单的)

  • 避免使用多参数操作

  • 避免具有巨大条件或效果的操作

  • 避免使用参数过多的谓词

除此之外,它真的取决于在解决过程中发生了什么来诊断你可以改变什么。

相关内容

  • 没有找到相关文章

最新更新