在内部点求解器中,我们可以将单位约束设置为 x1+x2+x3+x4=1 我们可以设置约束,如 0.10<=x1+x3>=0.80 和 0.20<=x2+x4>=0.50



在内部点求解器中,我们可以设置像x1 x2 x3 x3 x4 = 1的统一约束,我们可以设置约束,例如0.10&lt; = x1 x3> = 0.80和0.80和0.80和0.20&lt; = = =x2 x4> = 0.50使用setCofficity。

请提供样本以设置扇区重量边界的约束和安全性级别。

https://csharp.hotexamples.com/examples/-/interiorpointsolver/addrow/php-interiorpointsolvointsolver-addrow-method-method-examples.html

我们已经使用了Markowitz模型的InteriorpointSolver代码,它已求解以最大程度地减少或最大化安全性。但是我们无法对所有证券子集的总和的总和进行设定。我们试图使用SetCefility设置约束,但它不起作用。请提供

的样本

这是一个奇怪的约束。

0.10 <= x1+x3 >= 0.80

可以作为

来重述
x1+x3 >= 0.10 
x1+x3 >= 0.80 

或只是

x1+x3 >= 0.80 

没有汗水!


如果海报确实意味着:

0.10 <= x1+x3 <= 0.80

(这总是有助于重新阅读您的问题!(然后我们可以将其写为:

x1+x3 >= 0.10
x1+x3 <= 0.80

这对于实施是微不足道的。

如果求和的长度很长:

0.10 <= x1+x2+x3+... <= 0.8

有一个更好的方法:

y in [0.1,0.8]     (extra variable with lower and upper bounds)
y = x1+x2+x3+...   (single equality constraint)

这可以防止在模型中两次长时间求和。基本上,我们创建一个额外的变量,但保存一个约束和相应的非零系数。


当然,Microsoft Solver Foundation不应在实际项目中使用:2012年已停止。

最新更新