我一直在使用纸浆库研究一个线性优化问题。如何在代码中包含此动态约束
snapshot of excel example with terms
我需要最小化由A和B目标函数的加权和形成的投资组合的Var1d(-19391.8)
同时,投资组合的VaR10D应减少给定的目标(-39100至-29100)。 噢,正如你所看到的,投资组合的Var10d和Var1d是“Total”列中的第二个最小值。现在,我需要在代码中添加一个约束,即Var10d应该减少10000(即-29100),但同时,它也应该是总列中的第二个最小值,该值由每天的“a”和“B”的加权和计算得出
因此,我需要可以为1的最佳权重。最小化Var1d(虽然它是Var10d的“总计”列中的第二个最小值),2。将Var10d减少10000(即减至-29100)(而在Var1d的“总计”列中它是第二小的)
最低-8000*x1-15000*x2+目标
我不明白你的限制,因为这些数字似乎只是目标函数中系数的其他值
所以我看不出为什么你的“程序”不只是设置x1,x2=0,没有什么可计算的,因为没有约束
如果希望目标值在特定范围内,可以添加: 系数x1+系数x2<;=(>;=)值 然后如果你想改变右边的值,你可以在第一个循环后再次运行程序,依此类推
相关问题 更多 >
编程相关推荐