最优化技术——线性规划
线性规划基本概念
线性规划问题就是在一组线性约束条件下,求解目标函数最优解的问题
标准形式
线性规划问题的标准形式:
- 目标函数求最大值
- 所有约束条件均由等式表示
- 每个约束条件右端常数常为非负值
- 所有决策变量为非负值
改造方法
所有的情况与改造方法
-
目标函数求最小值则应该改为求最大值:
-
约束条件中,某些常数项bi为负数
-
方法——在约束条件两边乘以负号
Σai,jxj>−3→−Σai,jxj<3
-
约束条件不等式符号为<=
-
方法——在不等式左边加上一个非负变量(松驰变量)
Σai,jxj≤bi→Σj=1maijxj+xm+1=bi
-
约束条件**不等式符号为>= **
-
在不等式左边减去一个非负变量(剩余变量)
Σai,jxj≥bi→Σj=1maijxj−xm+1=bi
-
约束条件中某变量有如下限制:
例题
一、
minF=−3x1+4x2−2x3+5x4
s.t.
4x1−x2+2x3−x4=−2
x1+x2+2x3−x4≤14
−2x1+3x2−x3+2x4≥2
x1≥0,x2≤0,x3≥0
将上面的式子化成标准型,首先需要检查上面的式子中有哪些地方不符合我们的要求:
- 目标函数为最小值
minF=−3x1+4x2−2x3+5x4
- 等式约束右边为负数
4x1−x2+2x3−x4=−2
- 不等式约束
x1+x2+2x3−x4≤14,
−2x1+3x2−x3+2x4≥2
- 约束中有小于零的
x1≥0,x2≤0,x3≥0
额,经过整理我们发现。。。都不符合,所以需要一条一条的改:
改前 |
改后 |
minF=−3x1+4x2−2x3+5x4 |
maxS=−minF=3x1−4x2+2x3−5x4 |
4x1−x2+2x3−x4=−2 |
−4x1+x2−2x3+x4=2 |
x1+x2+2x3−x4≤14 |
x1+x2+2x3−x4+x5=14 |
−2x1+3x2−x3+2x4≥2 |
−2x1+3x2−x3+2x4−x6=2 |
x2≤0 |
设
x7≥0,x7=−x2 |
x4无约束 |
设
x8,x9≥0,x4=x8−x9 |
整理之后得到:
maxS=−minF=3x1+4x7+2x3−5x8+5x9
s.t.
−4x1−x7−2x3+x8−x9=2
x1−x7+2x3−x8+x9+x5=14
−2x1−3x7−x3+2x8−2x9−x6=2
xi≥0,j=1,3,5,6,7,8,9
概念之凸集
- 凸集:如果集合C中任意两点
X1,X2,其连线上的所有点也都是集合C中的点,称C为凸集。
- 有限个凸集的交集仍然是凸集
- 顶点:如果凸集C中不存在任何两个不同的点
X1,X2,使
X成为这两个点连线上的一个点。
线性规划的一些定义
-
定义一:凡是满足
Ax=b及
x≥0的解
x=(x1,x2,..,xn)T称为线性规划问题的可行解。同时满足
maxZ=cx的可行解称为最优解
-
定义二:设线性规划约束方程组的系数矩阵
Am∗n的秩为
m,则
A中某
m列组成的任一个
m阶可逆阵
B称为该线性规划问题的一个基矩阵,简称基。若记
B=(p1,p2,…,pm),则称
pk(k=1,2,…m)为基B中的一个基向量。则A中其余n-m个列向量为非基向量。
感觉这里很象最大线性无关组。
-
定义3:当
Ax=b式中A确定了一个基B后,与基向量
pk相对应的决策变量
xk称为关于基B的一个基变量,而与非基向量所对应的决策变量称为非基变量。
-
定义4:设
B=(pk1,pk2,…,pkm)是A中的一个基,对应的基变量为
xk1,xk2,…,xkm,我们称非基变量的取值均为零且满足约束条件的一个解x,为关于基B的一个基本解。
解的确定
基本解的确定
B为一个基矩阵,
XB为对应的基变量,
N为非基矩阵,
XN为对应的非基变量,那么
Ax=b可以写成:
BXB+NXN=b
由这个式子可以推出:
XB=B−1b−B−1NXN
同时,根据基本解的定义,非基变量的解都是0,所以,最终的解是:
$$
\left[
\begin{matrix}
X_B\
X_N
\end{matrix}
\right]
\left[
\begin{matrix}
B^{-1}b\
0
\end{matrix}
\right]
$$
这样的解也被称为关于基B的基本解,同时有定义五:
- 满足非负条件
x≥0的基本解称为基本可行解
例题
求下列方程组的一个基本解、基本可行解
x1+2x2≤8
x2≤2
解:
-
首先将他化成标准形式
x1+2x2+x3=8
x2+x4=2
-
根据上方方程得到系数矩阵:
A=[10311001]
-
取前两个列向量作为基向量,后两个就是非基向量
B=[1021]
-
令非基变量
x3,x4=0,可以得到基本解
(4,2,0,0)T
图解法
假设解以下问题
我们可以用图解法的方法解决(初中生就会的那种)
关于图解法的一些定理:
- 定理一:若线性规划问题存在可行解,则该问题的可行域一定是凸集
- 定理二:线性规划问题的基本可行解X对应可行域(凸集)的顶点
- **定理三:**若问题存在最优解,一定存在一个基本可行解是最优解
看到定理二忽然恍然大悟,原来我初中铤而走险,每次都只试交点的方法是有科学依据的(逃
定理三也非常有意义,因为它直接给我们提供了一种解决优化问题的方法:找出所有基本可行解然后再一个一个比较,直接得到最大的,但是可惜的是,这样的做法时间复杂度过高,电脑有点遭不住。