线性规划算法原理介绍

来源:互联网 发布:缠通套利指标源码 编辑:程序博客网 时间:2024/05/16 16:55

线性规划定义:

求满足约束的最优目标,目标是变量的线性函数,约束是变量的相等或不等表达式。

单纯形算法

1 松弛变量 为将不等式转化为等式添加的非负变量
比如 将f(xi) >0 变成 yj= f(xi) ,那么xj就是松弛变量

主元操作(pivot)

1 任意在目标函数中系数为正的基本变量xi, 计算对其约束最紧的松弛变量yj
2 将yj= f(x) 转换成 xi = f(x,yj)
3 将上式代入其余约束和目标函数 ,从而生成新的线性方程组

单纯形算法(simplex)

1 将标准型转化为基本解可行的松弛型
2 如果目标函数里还有正系数,就执行主元操作
3 按照基本解,求基本变量和目标值,即位最优解

单纯形算法证明:

求证: 如果线性规划有最优解,那么单纯形算法得到的解一定是最优解;如果线性规划没有最优解,那么单纯形算法一定会返回无解
已知:
1 松弛变量>0
2 第一步转化好松弛型,其基本解可行
证明:
如果线性规划没有最优解,那么单纯形算法一定会返回无解
证明: 因为基本解可行,所以一定有解
如果线性规划有最优解,那么单纯形算法得到的解一定是最优解
证明:
1 目标函数都是等价变换的,不会影响其值
2 最后目标函数系数都是负的,而基本变量和松弛变量都是非负数

0 0