我正在尝试设置一个线性规划模型,其中目标函数会对决策变量与它们相应系数的乘积中的max
施加额外权重。
有没有一种方法可以在线性规划模型的目标函数内部使用min
或max
算子?
示例:
Minimize
(c1 * x1) + (c2 * x2) + (c3 * x3) + (c4 * max(c1*x1, c2*x2, c3*x3))
subject to
#some arbitrary integer constraints:
x1 >= ...
x1 + 2*x2 <= ...
x3 >= ...
x1 + x3 == ...
请注意,(c4 * max(c1*x1, c2*x2, c3*x3))
是我关心的“额外权重”项。我们用c4
表示“额外权重”系数。此外,请注意,在这个例子中x1
、x2
和x3
是整数。
我认为上述内容可能超出了线性规划提供的范围。然而,也许有一种方法可以通过修改/重新格式化将其转换成有效的线性规划问题?
如果此问题完全超出了线性规划的范围,也许有人可以推荐一种更适合这种类型问题的优化方法?(任何允许我避免手动枚举和检查所有可能解决方案的方法都会很有帮助。)