or-tools,CP SAT:在目标函数中使用 AddDivisionEquality 的目标
Posted
技术标签:
【中文标题】or-tools,CP SAT:在目标函数中使用 AddDivisionEquality 的目标【英文标题】:or-tools, CP SAT: usage of target of AddDivisionEquality in a goal function 【发布时间】:2020-07-06 16:35:15 【问题描述】:亲爱的, 是否可以使用 CP SAT(或工具)的 AddDivisionEquality 的目标值作为在目标函数中最大化的变量?
【问题讨论】:
【参考方案1】:当然。任何变量的线性组合都是有效的目标函数。
【讨论】:
谢谢,我问这个的原因如下:假设 x 是 AddDivisionEquality 的目标变量(X,分子,分母)。其中分子是表达式,分母是常数。如果我最大化 X 如果我最大化分子表达式,我会得到不同的结果。你知道原因吗? 我不明白,AddDivisionEquality 只接受整数变量或整数常量作为参数。表达式不应该是有效的。你传什么表情? 在约束中,我创建了一个类似 int_var=expression 的约束,然后我使用 int_var 作为除法的分子,而分母是一个常数。如果我最大化除法目标变量,我得到的结果与我直接最大化我在 int_var 中使用的表达式时不同。我希望这能澄清 x [0..10],如果最大化 x / 3,则得到 x = 9 或 10,如果最大化 x,则始终得到 10以上是关于or-tools,CP SAT:在目标函数中使用 AddDivisionEquality 的目标的主要内容,如果未能解决你的问题,请参考以下文章
addDivisionEquality with Java google or-tools CP-SAT
Or-Tools CP-SAT 求解器导出/导入:加载模型后如何访问变量?