首页 > 代码库 > 线性规划--概述

线性规划--概述

线性规划

在满足一组线性等式或不等式约束的条件下,使一个线性函数达到极值。即,目标函数与约束均为线性的规划称为线性规划。

常见形式

 

线性规划是凸优化

凸优化:

在凸集上的凸函数规划,称为凸规划。

可证明,线性集合是凸集,其满足

线性函数是凸函数, 即

但非严格凸。

统一形式

为了方便统一求解,得出线性规划的统一形式:


其中,通过引入松弛变量,把不等式变为等式。

 

进而可以写成矩阵的形式:

其中A称为约束矩阵。

可行解

在约束矩阵A的限制下,我们得到一个可行域,可行域里的解称为可行解。

那么求解可行域,也就是一个求解线性方程组的过程。

一般而言,A的秩m<<n,线性方程组Ax=b有无穷个解。我们取其中的m个线性无关向量为其基向量,设其他的非基向量系数 为0,就得到了约束方程A的一个解,称为基解。

 

定理:如线性规划存在可行解,则它必定存在基可行解是最优解。(证略)

 

即,若线性规划有最优解,只需从基可行解中寻找即可。

基变量规范式

不失一般性的,我们假设前k个列向量是基变量,把如上的矩阵形式写成分块矩阵形式:



继续变换,把分块形式推导成如下形式:

 


定理:x是对应于基B的基可行解,全体判别数非负,则x为最优解

 

证:我们看目标函数

分为两个部分,第一部分关于基向量B,为一个确定的数,之后为所有的非基向量。如果第二项系数非负,那么有:


即如果使这项系数为0,可以得到更优的解;取这些非基向量系数全为0,则可行解x为最优解。

 

那么,我们就可以不断地迭代不同的基向量,当满足上述判别系数全为非负,就得到最优解。相应的方法有单纯性法等。