线性规划笔记之单纯形法推导 | 您所在的位置:网站首页 › 圆锥公式的推导过程图解法 › 线性规划笔记之单纯形法推导 |
目录
线性规划单纯线性法算法原理推导例子
线性规划
假设一些食材的属性如下表所示: 名称价格(元/斤)维生素指数/斤美味指数/斤肥胖指数/斤猪肉300158鸡肉200123青菜51050面条2115番茄10834青椒814-20假设分别购买这些食材
x
1
x_1
x1,
x
2
x_2
x2,
x
3
x_3
x3,
x
4
x_4
x4,
x
5
x_5
x5,
x
6
x_6
x6斤, 则总开销为:
30
x
1
+
20
x
2
+
5
x
3
+
2
x
4
+
10
x
5
+
8
x
6
30x_1+20x_2+5x_3+2x_4+10x_5+8x_6
30x1+20x2+5x3+2x4+10x5+8x6。现在需要在满足维生素指数不小于100,美味指数不低于100,肥胖指数不超过30,以及总重不超过10斤的情况下组合出最省钱的菜单。则问题转化为:
m
i
n
30
x
1
+
20
x
2
+
5
x
3
+
2
x
4
+
10
x
5
+
8
x
6
min 30x_1+20x_2+5x_3+2x_4+10x_5+8x_6
min30x1+20x2+5x3+2x4+10x5+8x6 subject to
10
x
3
+
x
4
+
8
x
5
+
14
x
6
≥
100
10x_3+x_4+8x_5+14x_6≥100
10x3+x4+8x5+14x6≥100
15
x
1
+
12
x
2
+
5
x
3
+
x
4
+
3
x
5
−
2
x
6
≥
100
15x_1+12x_2+5x_3+x_4+3x_5-2x_6≥100
15x1+12x2+5x3+x4+3x5−2x6≥100
8
x
1
+
3
x
2
+
5
x
4
+
4
x
5
≤
30
8x_1+3x_2+5x_4+4x_5≤30
8x1+3x2+5x4+4x5≤30
0
≤
x
1
+
x
2
+
x
3
+
x
4
+
x
5
+
x
6
≤
10
0≤x_1+x_2+x_3+x_4+x_5+x_6≤10
0≤x1+x2+x3+x4+x5+x6≤10 我们把这类目标函数以及约束条件均为线性关系式的简单组合优化问题成为线性规划。对于这类问题在高中应该还是接触得比较多的,当初老师应该都教过用作图法来求解,比如: 自1947 年,面对美国制定空军军事规划时提出的问题,丹齐克( Dantzig)首次提出了单纯形法来解决这类极值问题的求解后,应用最广的线性规划通用解法就是单纯线性法,其基本思想时从一个基本可行解出发,不断移动到下一个能使目标函数值朝优化目标改善的基本可行解上,最终达到最优的基本可行解。因为基本可行解的个数有限,所以经过有限次转换必能得出问题的最优解。如果问题无最优解,我们也可以用单纯形法来判别。 算法原理推导对于一个线性规划问题(以下所有加粗字母表示矩阵或向量名):
即将 x k x_k xk取到所有 b i / p i k b_i/p_{ik} bi/pik 的最小值的时候,函数值会下降最快。此时将对应的基变量x_Bi变为非基变量并赋值0。并用 x B i x_{Bi} xBi对应的 p j p_j pj来替换 p i p_i pi。经过上述的替换后,目标函数值减少了 ( z k − c k ) x k (z_k-c_k ) x_k (zk−ck)xk。我们只需不断重复上述过程直到所有的 ( z j − c j ) (z_j-c_j ) (zj−cj)为非正数,也即此时取正增大任意一个非基变量 x j x_j xj都不能使函数值减少,说明已经找到了极小点。 例子举个栗子:
用
p
3
p_3
p3替换
p
4
p_4
p4进行第三次迭代: |
CopyRight 2018-2019 实验室设备网 版权所有 |