【发布时间】:2016-03-15 06:15:27
【问题描述】:
如何使用 scip python 接口添加二次约束?
在其中一个示例中,我看到类似 model.addCons(x*x+y*y<=6)
但是,由于我有很多变量(x1..xn 并且我的约束是 x'Qx<=0.2 的形式,其中 x 是 n*1,Q 是 n*n),所以这种方法是不可能的。当我做线性约束时,如何将二次约束放入 coeffs 的 python 字典中? (coeffs={x**2:3.0,y**2:1.0,z**2:5.0} 例如如果我想要 3x^2+y^2+5z^2<=10)
【问题讨论】:
-
{x:3, y:1, z:5}与 10 有何关系? -
10 并不重要,这里只是举例,后面会通过设置 lhs 将 10 放入约束中。
-
但是如何从 3,1 和 5 计算得出呢? 3+1+5=9 所以我想弄清楚 10 是从哪里来的。
-
3和1和5是变量x^2, y^2, z^2的系数
-
抱歉,我以为你想根据字典生成限制。