首页 > 解决方案 > 优化线性方程以获得最大最小值

问题描述

我有一组线性方程,我想以这样一种方式进行优化,以使任何方程的最小结果都是最好的。

for example

Solve for
x1*1 + x2*2 
x1*3 + x2*4

constraint
x1+x2=<12

我在 python 中使用 Pulp 进行线性最大化,结果产生一个输出太大而另一个输出太小。目前,我正在通过设置另一个约束来检查最佳最小值

x1*1 + x2*2 >= minval
x1*3 + x2*4 >= minval

我现在正在迭代 minval 的最佳可能值,直到问题不可行,但这是 CPU 昂贵的方法,因为优化针对minval的每个值运行

标签: pythonoptimizationscipypulp

解决方案


引入一个新变量z和新约束z <= x1 + 2*x2z <= 3*x1 + 4*x2然后最大化z。这与您尝试使用的类似minval,但告诉线性规划求解器优化该值,而不是自己上下摆弄它。


推荐阅读