在 PDDL 2.1 中分配除法值,Metric FF

问题描述

我在函数部分有 3 个变量:

(x)
(y)
(z)

在我的问题 0 中,我已将它们全部初始化为 init

我域中的操作更改了 xy 的值。

现在,当我尝试将 x/y 的值分配给 z 时,它说这不是一个线性任务。

(assign (z) (/ (x) (y) ) )

但是当我写 (assign (z) (/ (x) 2 ) ) 时,它分配了正确的值 x/2,类似地 (assign (z) (/ (y) 2 ) ) 分配了正确的值 (y/2)。这确保 x 和 y 不为零。

现在为什么 (assign (z) (/ (x) (y) ) ) 不起作用?请帮帮我。

解决方法

Metric-FF 不支持非线性表达式,因为您正在使用该表达式将值分配给变量 z。尝试使 x 和 y 保持不变(删除任何修改它们的操作),看看它会起作用,但这可能不是您想要的。对于数值规划问题中的非线性表达式,请查看 ENHSP:https://sites.google.com/view/enhsp/