【发布时间】:2020-05-04 08:13:45
【问题描述】:
我正在尝试解决一个 Pacman 风格的 PDDL 问题,并且有一个特殊的场景我已经坚持了好几天了。我得到了经典
ff: 目标可以简化为 FALSE。没有计划能解决它
这意味着这个问题是微不足道的和逻辑相关的。但是,我是 PDDL 的新手,似乎无法弄清楚是什么原因造成的。
问题很简单,吃豆人 (P) 必须吃掉食物 (F),但有两个幽灵特工 (G) 挡住了它。为了通过他们,吃豆人需要消耗胶囊(C),使他隐形。
(编辑:我已删除该问题,因为它是作业的一部分。我设法解决了该问题,并将在作业评分后立即发布解决方案。)
【问题讨论】:
-
尽量避免使用
when;许多可用的求解器无法处理它。 -
我正在使用solver.planning.domains,它普遍允许
:conditional-effects(即when)。 -
它允许它,但这并不意味着它可以工作......
-
我在作业的其他一些问题中使用了
when子句,似乎效果很好。我愿意接受有关在没有when的情况下如何应用条件的建议。 -
@OliverMason 正如我所提到的,问题不在于
when子句,而只是动作定义中缺少谓词。然而,PDDL 对何时而不是某个条件谓词可以应用有一定的规则(when、either、forall等)。同样可以参考here。
标签: pddl