如何在Python中使用PuLP在线性优化中包含动态约束?

问题描述 投票:0回答:1

我一直在使用PuLP库解决线性优化问题。如何在我的代码中包含此动态约束?

snapshot of excel example with terms

我需要最小化由A和B的加权和形成的投资组合(-19391.8)的VaR 1D-目标函数

同时,投资组合的VaR10D应减少给定的目标(-39100至-29100)。现在,您可以看到的是,投资组合的Var10d和Var1d是“总计”列中的第二个最小值。现在,我需要添加一个约束,以使Var10d应该减少10000(即,降至-29100),但同时,它也应该是按权重之和计算得出的总列中的第二个最小值每天都有“ A”和“ B”。

因此,我需要最佳权重,这些权重可以1.最小化Var1d(虽然它是Var10d的“总计”列中的第二个最小值),2.减小Var10d 10000(即至-29100)(而它是第二个最小的值) Var1d的“总计”列)。

python optimization linear-programming pulp
1个回答
0
投票

最小-8000 * x1-15000 * x2 +目标

我没有您的约束,因为数字似乎只是目标函数中系数的其他值。

所以我看不到您的“程序”不仅仅设置x1,x2 = 0的原因,除了您想要的原因。 1000x1 + 100000x2> = 250200您的程序将只设置为0,2和2,5,因此没有什么可计算的,因为没有约束。

© www.soinside.com 2019 - 2024. All rights reserved.