为了准备美赛,所以打算出这么一个系列,一方面是为了鞭策自己,一方面是希望能给其他跟我一样的建模人提供一些帮助,第一次写,写的不好请大家多多见谅,轻点喷[●´Å`●]
模型背景:最优化是在企业运作、科技研发和工程设计中经常会碰到的问题。这关乎到企业的经济效益,是非常重要的。因此便不断出现了很多优化模型与相关智能算法,这也是美赛中比较常见的模型。
线性规划三要素:决策变量、目标函数、约束关系
看概念谁都不喜欢,来看完下面的例子,你会很清晰的了解这些都是什么。
这就是一个很典型的线性规划问题,我们可以列出这个模型中的三要素
决策变量:
目标函数:获利
每天获利
约束条件:
至此,我们以及罗列出求解这个模型所需的所有条件,可以开始求解了
在MATLAB中,解决线性规划的标准格式为:
s.t.
在MATLAB中,求解线性规划可以使用linprog函数,此函数为MATLAB中求解线性规划的内置函数,使用格式为:
到这里,你应该能够轻松的写出求解这个问题的代码:
c=-[5,3]';
A=[2,1;1,2];
b=[40,50]';
lb=[0, 0];
[x,fmin]=linprog(c,A,b,[],[],lb);
Pmax=-fmin
x1=x(1), x2=x(2)
Pmax =
110
x1 =
10
x2 =
20
线性规划模型到这里也就搞定了,本文举例的问题较为简单,稍微复杂的问题可以类比写出线性规划模型中的三要素,依照此方法进行求解。线性规划模型在我个人觉得,是所有模型中最为简单的一个,希望以上的内容对你有所帮助