Excel 如果线性规划决策变量>;0则>;=3000

Excel 如果线性规划决策变量>;0则>;=3000,excel,if-statement,conditional,solver,Excel,If Statement,Conditional,Solver,我试图使用Excel中的解算器创建一个线性规划,以最小化共同基金费用。我的决策变量是每个基金的投资金额。如果有任何投资,它必须满足基金的最低要求。我如何编程 投资于基金1的金额>=如果投资于基金1的金额>0,则投资于基金1的金额>=3000,否则投资金额=0 非常感谢您的帮助。谢谢。这些类型的约束由 假设x是对应于基金1投资金额的决策变量。在x的可能值上选择一个上限M。例如,如果你只有1000000美元可投资,那么让M=1000000你不需要在x上有最小上限M=2000000也可以工作(尽管如果

我试图使用Excel中的解算器创建一个线性规划,以最小化共同基金费用。我的决策变量是每个基金的投资金额。如果有任何投资,它必须满足基金的最低要求。我如何编程

投资于基金1的金额>=如果投资于基金1的金额>0,则投资于基金1的金额>=3000,否则投资金额=0


非常感谢您的帮助。谢谢。

这些类型的约束由

假设
x
是对应于基金1投资金额的决策变量。在
x
的可能值上选择一个上限
M
。例如,如果你只有1000000美元可投资,那么让
M=1000000
你不需要在
x
上有最小上限
M=2000000
也可以工作(尽管如果
M
不是不合理的大,通常收敛速度更快,舍入误差更小)

引入一个新变量
y
,该变量被限制为
0
1
(即二进制决策变量)。将以下两个约束添加到模型中:

x >= 3000*y
x <= M*y
x>=3000*y
x 0
然后第二个添加的约束强制
y
远离
0
,因此它强制
y=1
,因为
y
是二进制的。但如果
y=1
,则第二个约束将减少到
x