【发布时间】:2017-02-04 01:32:23
【问题描述】:
我正在使用带有 Java 的求解器 Gurobi;我阅读了所有 Gurobi 的参考手册,但仍有一些问题
- 是否可以在没有目标函数的情况下优化模型,或者我必须添加目标函数?
- 是否可以添加类似“x=0 if c>a”的约束,其中 x 是决策变量且 c 和 a 已知?
有人可以帮助我吗?
谢谢。
【问题讨论】:
标签: java mathematical-optimization gurobi
我正在使用带有 Java 的求解器 Gurobi;我阅读了所有 Gurobi 的参考手册,但仍有一些问题
有人可以帮助我吗?
谢谢。
【问题讨论】:
标签: java mathematical-optimization gurobi
在使用 Java(或几乎任何接口)求解 Gurobi 模型时,您可以区分在获得 Gurobi 解决方案之前已知的值和在获得解决方案之前不知道的值。第一种情况包括纯 Java 变量和硬编码常量。后者包括决策变量。在您的示例中,您可以编写类似
如果 (c > a) { grb.addConstr(x, '=', 0); }
因为 c 和 a 都是 Java 变量,而不是决策变量。如果 c 或 a 是决策变量,您仍然可以对约束进行建模,但您需要添加二进制变量。
【讨论】: