如何在目标函数中使用forall或聚合器?

时间:2019-03-28 16:46:07

标签: cplex opl

我有一个决策变量x [i,j],它是1或0,在这里我想最大化每一行的总和。我想使用诸如forall之类的东西,但似乎只能让我在约束中使用它。有没有办法将其用于目标函数?

1 个答案:

答案 0 :(得分:0)

https://www.ibm.com/support/knowledgecenter/SSSA5P_12.6.0/ilog.odms.ide.help/OPL_Studio/opllang_quickref/topics/tlr_opl_forall.html中的文档指出,forall仅适用于约束。

但是您可以使用类似的

dvar float obj;

maximize obj;
subject to
{
   forall (...) obj == sum(...);
}

这将允许您对obj变量的值施加约束,以便它表示您感兴趣的任何内容。