第7章线性规划问题与网络流
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
flow={flow(v,w)},并称flow(v,w)为边(v,w)上的流量。
18
(3) 可行流
满足下述条件的流flow称为可行流:
容量约束:对每一条边(v,w)∈E,0≤flow(v,w)≤cap(v,w)。
平衡约束:
对于中间顶点:流出量=流入量。 即对每个v∈V(v≠s,t)有:顶点v的流出量-顶点v的流入量=0,即
16
第一阶段:用辅助目标函数代替原来的目标函数。
辅助目标函数:
z' z1 z2 z m。
选择人工变量作为基本变量,其它变量作为非基本变量,构
造初始单纯形表。然后,运行该算法,当所有人工变量均变 成非基本变量时,辅助目标函数达到最大值,第一阶段算法 结束;如果所有人工变量无法全部变成非基本变量,则原线 性规划问题无解。
min z' x 2 3x3 2x4 x1 3x2 - x3 2x4 7 - 2x 4x x 12 2 3 5 - 4x2 3x3 8x4 x 6 10 6) x i 0(i 1,2,3,4,5,
13
表7-2 单纯形表2
流边;flow(v,w)>0的边称为非零流边。当边(v,w)既不是一条零流边也不是一
条饱和边时,称为弱流边。
(5) 最大流
最大流问题即求网络G的一个可行流flow,使其流量f达到最大。即flow满足: 0≤flow(v,w)≤cap(v,w),(v,w)∈E;且
flow(v, w)
10
步骤4:选离基变量。选取“常数列元素/入基列元
素”正比值的最小者所对应的基本变量为离基变量, bi bk min { } 即 a 0 a a ,选取基本变量xk为离基变量。 ie ke 步骤5:换基变换(转轴变换)。在单纯形表上将 入基变量和离基变量互换位置,并按照式如下公式 进行各元素的变换后得到一张新的单纯形表。转步 骤 2。
max z 2 x1 4 x2
练习:
max z x1 x2 2 x2 x1 2 x x 1 2 x2 x1 x1 0 2 2 4 x2 0
15
x1 2 x2 x 1 x2 x1 0
8 4 3 x2 0
1 基本概念和术语
(1) 网络
G是一个简单有向图,G=(V,E),V={1,2,…,n}。在V中
指定一个顶点s,称为源和另一个顶点t,称为汇。有向图G
的每一条边(v,w)∈E,对应有一个值cap(v,w)≥0,称为边的 容量。这样的有向图G称作一个网络。
(2) 网络流 网络上的流是定义在网络的边集合E上的一个非负函数
6
基本概念:
基本变量( m个):每个约束条件中的系数为正
且只出现在一个约束条件中的变量。 非基本变量(n-m):除基本变量外的变量全部为 非基本变量。 基本可行解:满足标准形式约束条件的可行解称 为基本可行解。由此可知,如果令n-m个非基本 变量等于0,那么根据约束条件求出m个基本变 量的值,它们组成的一组可行解为一个基本可行 解。
5
标准型线性规划问题的单纯形算法
单纯形法 是指1947年数学家George Dantzing(乔治· 丹捷格)发明 的一种求解线性规划模型的一般性方法。 约束标准型线性规划问题
为了便于讨论,先考察一类特殊的标准形式的线性规划
问题。在这类问题中,每个等式约束条件中均至少含有 一个正系数的变量,且这个变量只出现在一个约束条件 中。将每个约束条件中这样的变量作为非0变量来求解该 约束方程。这类特殊的标准形式线性规划问题称为约束 标准型线性规划问题。
第二阶段:将第一阶段得到的最后一张单纯形表中
的所有人工变量所在的列全部划掉,剩下的就只含 有xi的约束标准型线性规划问题,此时的目标函数 由辅助目标函数改为原来的目标函数,用剩下的单 纯形表作为第二阶段的初始单纯形表,再次运行约 束标准型单纯形算法,即得线性规划问题的解。
17
7.2 最大网络流问题
12
例题1
min z x 2 - 3x3 2x4 x1 3x2 - x 3 2x4 7 - 2x 4x 12 2 3 4x2 3x3 8x4 -10 ) x i 0(i 1,2,3,4
解:将线性规划问题转化为约束标准型如下: 令 z' z
i 1 n
z1 a11 x1 a12 x2 a1n xn b1 z a x a x a x b 2 21 1 22 2 2n n 2 z a x a x a x b m1 1 m2 2 mn n m m x j 0( j 1,2,, n), zi 0(i 1,2, m)
由约束标准形式可知:x1,x5,x6
是基本变量,x2,x3,x4是非基本 变量,建立初始单纯形表如表72所示。由此可得,基本可行解 为 X(0)=(7,0,0,0,12,10),z’=0。
由表 7-2 可知: x3 为入基变量,
表7-3 单纯形表3
x5 为离基变量,根据迭代公式 得出如表7-3所示的单纯形表3。 由此可得,基本可行解为 X(1)=(10,0,3,0,0,1), z’=9
8
约束标准型线性规划问题的单纯形算法
步骤1:找出基本变量和非基本变量,将目标函数由
非基本变量表示,建立初始单纯形表如表7-1所示。 表7-1 初始单纯形表1
9
步骤2;判别、检查目标函数的所有系数,即检验
数cj(j=1,2,…,n)。 (1)如果所有的cj≤0,则已获得最优解,算法结 束。 (2)若在检验数cj中,有些为正数,但其中某一正 的检验数所对应的列向量的各分量均小于等于0, 则线性规划问题无界,算法结束。 (3)若在检验数cj中,有些为正数且它们所对应的 列向量中有正的分量,则转步骤3。 步骤3:选入基变量。在所有cj>0的检验数中选取 值最大的一个,记为ce,其对应的非基变量为xe, 对应的列向量为[a1e,a2e,…,ame]T,称为入基列。
n
j
(8.1)
s.t.
a x a a
t 1 t 1 n t 1 n
n
it t
bi
i 1,2,, m1 j m1 1,, m1 m2
(8.2) (8.3)
jt t
x bj
kt t
x bk
k m1 m2 1,, m1 m2 m3 (8.4) t 1,2,, n (8.5)
ie
11
对应入基列位置元素=-原入基列元素/交叉位置元素
(不包括交叉位置)。 对应离基行位置元素=原离基行元素/交叉位置元素 (不包括交叉位置)。 交叉位置元素=原交叉位置元素的倒数。 目标函数的值=原目标函数的值+同行画线位置元素 ×同列画线位置元素/交叉位置的元素。 其它位置的元素=原对应位置的元素-同行画线位置 元素×同列画线位置元素/交叉位置的元素
14
由表 7-3 可知: x2 为入基变量,
表7-4 单纯形表4
x1 为离基变量,根据迭代公式 迭代得如表7-4所示的单纯形表4。 由此可得,基本可行解为 X(2)= ( 0,4,5,0,0,11 ) , z’=11 。同时, 由表 7-4 可知,所有检验数均小 于等于0,故 X(2)= ( 0,4,5,0,0,11 )为该线性 规划问题的唯一最优解,其最优 值z=-11。
3
标准线性规划问题描述
目标函数: max z c1 x1 c2 x2 cn xn a11 x1 a12 x2 a1n xn b1 a x a x a x b 21 1 22 2 2n n 2 约束条件: a x a x a x b m2 2 mn n m m1 1 x j 0( j 1,2, , n)
( v , w)E
flow(v, w) flow(w, v) 0
( w,v )E
对于源s:s的流出量-s的流入量=源的净输出量f,即
( s ,v )E
flow(s, v) flow(v, s) f
( v , s )E
对于汇t:t的流入量-t的流出量的=汇的净输入量f,即
( v ,t )E
flow(v, t ) flow(t, v) f
( t ,v )E
式中f 称为这个可行流的流量,即源的净输出量(或汇的净输入量)。
19
(4) 边流
对于网络G的一个给定的可行流flow,将网络中满足flow(v,w)=cap(v,w)的边
称为饱和边;flow(v,w)<cap(v,w)的边称为非饱和边;flow(v,w)=0的边称为零
4
将一般线性规划问题转化为标准型规划问题的方法
min z c j x j (1)一般线性规划形式中目标函数如果是求极小值的,即 n j 1 那么,令 z ' z ,则, max z ' c j x j min z max z '
j 1
n
(2)右端常数项如果小于零,则不等式两边同乘以(-1),将其变成大于 零;同时改变不等号的方向,保证恒等变形。如2x1+x2≥-6,-2x1- x2≤6。 (3)约束条件为大于等于约束时,则在不等式左边减去一个新的非负变量 将不等式约束改为等式约束。如3x1-2x2≥12,3x1-2x2-x3=12, x3≥0; (4)约束条件为小于等于约束时,则在左边加上一个新的非负变量将不等 式约束改为等式约束。如x1-2x2≤8,x1-2x2+x3=8,x3≥0; (5)无约束的决策变量x,即可正可负的变量,则引入两个新的非负变量x’ 和x”,令x=-x’-x”,其中x’≥0,x”≥0,将x代入线性规划模型。 (6)决策变量x小于等于0时,令x’=-x,显然x’≥0,将x'代入线性规划 模型。 在(3)~(6)中引入的新的非负变量称为松弛变量。
xt 0
2
变量满足约束条件(7.2)-(7.5)式的一组值称为线性规划问题的一个可 行解。
所有可行解构成的集合称为线性规划问题的可行区域。
使目标函数取得极值的可行解称为最优解。
在最优解处目标函数的值称为最优值。
有些情况下可能不存在最优解。
根本没有可行解,可行区域为空集;
目标函数没有极值,目标函数值无界。
两阶段单纯形算法
一般线性规划问题转化为标准形式的线性规划问题后,每个
约束条件中不一定都含有基本变量。在这种情况下,可在每 个约束条件表达式的左端添加一个非负变量zi(i=1,2,…,m), 将其转化为约束标准型的线性规划问题。添加的非负变量zi 称为人工变量。形式如下:
max z c1 x1 c2 x2 cn xn ci xi
7
线性规划基本定理
定理1(最优解判别定理)若目标函数中关于非
基本变量的所有系数(以下称检验数)小于等于 0,则当前基本可行解就是最优解。 定理2(无穷多最优解判别定理)若目标函数中 关于非基本变量的所有检验数小于等于0,同时 存在某个非基本变量的检验数等于0,则线性规 划问题有无穷多个最优解。 定理3(无界解定理)如果某个检验数cj大于0, 而xj对应的列向量中所有基本变量的系数 a1j,a2j,…,amj都小于等于0,则该线性规划问题有 无界解。
第7章 线性规划与网络流
学习要点
理解线性规划算法模型
掌握解线性规划问题的单纯形算法
理解网络与网络流的基本概念
掌握网络最大流的增广路算法 掌握网络最小费用流的消圈算法
1
线性规划问题和单纯形算法
线性规划问题及其表示
一般线性规划问题可表示为如下形式:
max
c x
j 1 j