运筹学第六章 图与网络模型 第6节 最大基数匹配问题
合集下载
最大基数匹配
• 最大基数匹配问题是多项式时间可解的,这里仅讨论二 分图的最大基数匹配问题.
• 对于图G的任意一个顶点的子集X,定义X的邻域N(X)为
与X中的点相邻接的所有点的全体. • 定理2:设G为二分图,顶点集分划为S,T,则G有饱和S 的每个顶点的匹配当且仅当对一切
X S ,有 | N ( X ) || X | .
最大基数匹配
• 给定一个图G=(V,E),设M是E的一个子集,
如果M不含环且其中任意两边均不是邻接的,
则称M是G的一个匹配.
• 如果某顶点和M的一条边关联,则称其为M饱和点,否则称为M-非饱和点. 如果G的每
一点都是M-饱和点,则称M是G的完美匹配.
• 若M是G的边数最多的匹配,则称M是G的最 大基数匹配. 完美匹配是最大基数匹配.
其中某个 y j 是M-非饱和点,转3;否则对所有 y j ,把与 y j 在M中配
对的顶点 xi 给予标号“j”和未检查,并把.从得到标号T中的M-非饱和点 y j 开始反向 搜索,一直找到S中标号为“0”的M-非饱 和点 xi 为止,得到G中M-增广路P, 置M
( 0,0) (0,1)
2
1
v2 v1
v2 v1
(0,1) ( 0,0)
(10,1)(10 ,0)
5 5
(8,1) (8,0) (7,1) ( 7,0)
5
M P ( M P) \ ( M P)
,去掉M中所有
顶点标号,转2.
• 4.M是G的最大基数匹配,结束.
• 求下图所示二分图的最大基数匹配.
v5
v4
v10 v9 v8 v7 v6
v5
v4
v10 v9 v8 v7 v6
运筹学(第6章 图与网络分析)
a1 (v1) 赵
(v2)钱
a2 a3 a4 a14 a15
a8 a9
a7 (v4) 李
(v3)孙
a5 (v5) 周 a6 a10 (v6)吴
图6-3
a12 a11 a13
(v7)陈
定义: 图中的点用v表示,边用e表示。对每条边可用它
所连接的点表示,记作:e1=[v1,v1]; e2=[v1,v2];
树是图论中结构最简单但又十分重要的图。在自然和社会领 域应用极为广泛。 例6.2 乒乓求单打比赛抽签后,可用图来表示相遇情况,如 下图所示。
运动员 A
B C
D
E
F G
H
例6.3 某企业的组织机构图也可用树图表示。
厂长
人事科
财务科
总工 程师
生产副 厂长
经营副 厂长
开发科
技术科
生产科
设备科
供应科
动力科
e2
(v1) 赵
e1
e3
e4 孙(v3) 李(v4)
周(v5)
图6-2
e5 吴(v6) 陈(v7)
(v2)钱
如果我们把上面例子中的“相互认识”关系改为“认识” 的关系,那么只用两点之间的联线就很难刻画他们之间的关 系了,这是我们引入一个带箭头的联线,称为弧。图6-3就是 一个反映这七人“认识”关系的图。相互认识用两条反向的 弧表示。
端点,关联边,相邻 若有边e可表示为e=[vi,vj],称vi和
e2 v2 e6 e1 e4 v1 e3 v3 e8
vj是边e的端点,反之称边e为点vi
或vj的关联边。若点vi、vj与同一条 边关联,称点vi和vj相邻;若边ei和
e5
e7
(v2)钱
a2 a3 a4 a14 a15
a8 a9
a7 (v4) 李
(v3)孙
a5 (v5) 周 a6 a10 (v6)吴
图6-3
a12 a11 a13
(v7)陈
定义: 图中的点用v表示,边用e表示。对每条边可用它
所连接的点表示,记作:e1=[v1,v1]; e2=[v1,v2];
树是图论中结构最简单但又十分重要的图。在自然和社会领 域应用极为广泛。 例6.2 乒乓求单打比赛抽签后,可用图来表示相遇情况,如 下图所示。
运动员 A
B C
D
E
F G
H
例6.3 某企业的组织机构图也可用树图表示。
厂长
人事科
财务科
总工 程师
生产副 厂长
经营副 厂长
开发科
技术科
生产科
设备科
供应科
动力科
e2
(v1) 赵
e1
e3
e4 孙(v3) 李(v4)
周(v5)
图6-2
e5 吴(v6) 陈(v7)
(v2)钱
如果我们把上面例子中的“相互认识”关系改为“认识” 的关系,那么只用两点之间的联线就很难刻画他们之间的关 系了,这是我们引入一个带箭头的联线,称为弧。图6-3就是 一个反映这七人“认识”关系的图。相互认识用两条反向的 弧表示。
端点,关联边,相邻 若有边e可表示为e=[vi,vj],称vi和
e2 v2 e6 e1 e4 v1 e3 v3 e8
vj是边e的端点,反之称边e为点vi
或vj的关联边。若点vi、vj与同一条 边关联,称点vi和vj相邻;若边ei和
e5
e7
运筹学:第6章 图与网络分析
给图中的点和边赋以具体的含义和权值,我们称 这样的图为网络图(赋权图)
2021/4/18
6
图中的点用 v 表示,边用 e 表示,对每条边可用
它所联结的点表示,如图,则有:
e1 = [v1 , v1], e2 = [v1 , v2]或e2= [v2 , v1]
2021/4/18
7
用点和点之间的线所构成的图,反映实际生产和 生活中的某些特定对象之间的特定关系。
第一种解法:
1. 在点集中任选一点,不妨取 S,令 V={S} 2. 找到和 S 相邻的边中,权值最小的 [S , A] 。
2021/4/18
22
3.V={S , A} 4. 重复第2,3步,找到下一个点。
2021/4/18
23
第二种做法求解过程:
2021/4/18
24
破圈法求解步骤:
1. 从图 N 中任取一回路,去掉这个回路中边 权最大的边,得到原图的一个子图 N1。
Dijkstra 算法假设:
1.设 dij 表示图中两相邻点 i 与 j 的距离,若 i 与 j 不相邻,令 dij =∞,显然 dii =0。 2. 设 Lsi 表示从 s 点到 i 点的最短距离。
2021/4/18
31
求从起始点 s 到终止点 t 的最短路径。 Dijkstra 算法步骤:
1.对起始点 s ,因 Lss =0 ,将 0 标注在 s 旁的小 方框内,表示 s 点已标号;
终点重合的链称为圈,起点和终点重合的路称为回
路,若在一个图中,每一对顶点之间至少存在一条
链,称这样的图为连通图,否则称该图为不连通的。
2021/4/18
12
2021/4/18
链
2021/4/18
6
图中的点用 v 表示,边用 e 表示,对每条边可用
它所联结的点表示,如图,则有:
e1 = [v1 , v1], e2 = [v1 , v2]或e2= [v2 , v1]
2021/4/18
7
用点和点之间的线所构成的图,反映实际生产和 生活中的某些特定对象之间的特定关系。
第一种解法:
1. 在点集中任选一点,不妨取 S,令 V={S} 2. 找到和 S 相邻的边中,权值最小的 [S , A] 。
2021/4/18
22
3.V={S , A} 4. 重复第2,3步,找到下一个点。
2021/4/18
23
第二种做法求解过程:
2021/4/18
24
破圈法求解步骤:
1. 从图 N 中任取一回路,去掉这个回路中边 权最大的边,得到原图的一个子图 N1。
Dijkstra 算法假设:
1.设 dij 表示图中两相邻点 i 与 j 的距离,若 i 与 j 不相邻,令 dij =∞,显然 dii =0。 2. 设 Lsi 表示从 s 点到 i 点的最短距离。
2021/4/18
31
求从起始点 s 到终止点 t 的最短路径。 Dijkstra 算法步骤:
1.对起始点 s ,因 Lss =0 ,将 0 标注在 s 旁的小 方框内,表示 s 点已标号;
终点重合的链称为圈,起点和终点重合的路称为回
路,若在一个图中,每一对顶点之间至少存在一条
链,称这样的图为连通图,否则称该图为不连通的。
2021/4/18
12
2021/4/18
链
运筹学 第6章 图论与网络分析
(4) 重复第3步,一直到t点得到标号为止。 例3 求从v1到v7的最短路
v2
5 2 7 6
v5
3 1 2 6
v1
2 7
v4
v7
解:
5
v3
v2
0 2 7 7
4
v6
v5
6 1 2 6 3
(1)
v1
2
v4
v7
v3
4
v6
(2)
L1 p min d12 , d13 min 5, 2 2 L13
• 若两个点之间的边多于一条,称为具有多重边;
• 对无环、无多重边的图称为简单图。 次、奇点、偶点、孤立点、悬挂点 • 与某一个点vi 相关联的边的数目称为次(也称度),记d(vi);
次为奇数的点称为奇点;次为偶数的点称为偶点;
次为0的点称为孤立点;次为1的点称为悬挂点。
多重边 v1 e'13 v3 e13
( vi , v j )
3-1 迪杰斯特拉(Dijkstra)算法 算法的思想:如果P是从vs到vt的最短路,vi是P上的一个 点,那么,从vs沿P到vi的路是从vs到vi的最短路。 设dij为图中两相邻点i与j的距离,若不相邻,dij=0;Lsi为点 s到i的最短距离, 求s点到t点最短距离。 算法的步骤:
v4
v7
v3
2
4
v6 6
(5) L1 p min L12 d 25 , L12 d 24 , L13 d 34 , L16 d 64 , L16 d 65 , L16 d 67 min 5 7, 5 2, 2 7, 6 2,6 1,6 6 7 L14 L15
网络优化图及网络(运筹学)
27
(2,1) (0,S)
28
(2,1) (0,S)
(3,3)
29
(0,S) (3,3)
(2,1) (5,2)
30
(0,S)
(2,1) (5,2)
(3,3) (7,5)
31
(0,S)
(2,1) (5,2)
(3,3)
(7,5)
(8,4)
32
用WinQSB求解 把节点数和节点之间边的长度输入,节 点间没有边则不输入任何值 注意:无向图中i-j的边与j-i的边的长度相 同
C1 根
C2
C3
C4
叶
6
例5(石油流向管网示意图,P131)
此为一个有向图
v2
24
v5
20 8
11 10
v1
15
10
v4 8
v7
20
v3
6
v6
7
1 图的基本概念
无向图:G={V,E} V v1,v2,...,vp E e1,e2,...,eq
顶点或节点:v 边:e=eij=[vi,vj] =[vj,vi] 链:连接两个顶点的一个序列;例1中{a,b,c},{a,b,e,d}等 圈:两个端点重合的链,例1中{a,b,c,a},{a,b,d,a}等
v5
38
(16, v1)
v2
22
41
16 16
30
30
(0,S) v1
59
41(22, v1) v3
23
(30, v1) v4 23 17
v6
18 v5 (41, v1) 39
(16, v1) v2
16 16
30
v1
59
(2,1) (0,S)
28
(2,1) (0,S)
(3,3)
29
(0,S) (3,3)
(2,1) (5,2)
30
(0,S)
(2,1) (5,2)
(3,3) (7,5)
31
(0,S)
(2,1) (5,2)
(3,3)
(7,5)
(8,4)
32
用WinQSB求解 把节点数和节点之间边的长度输入,节 点间没有边则不输入任何值 注意:无向图中i-j的边与j-i的边的长度相 同
C1 根
C2
C3
C4
叶
6
例5(石油流向管网示意图,P131)
此为一个有向图
v2
24
v5
20 8
11 10
v1
15
10
v4 8
v7
20
v3
6
v6
7
1 图的基本概念
无向图:G={V,E} V v1,v2,...,vp E e1,e2,...,eq
顶点或节点:v 边:e=eij=[vi,vj] =[vj,vi] 链:连接两个顶点的一个序列;例1中{a,b,c},{a,b,e,d}等 圈:两个端点重合的链,例1中{a,b,c,a},{a,b,d,a}等
v5
38
(16, v1)
v2
22
41
16 16
30
30
(0,S) v1
59
41(22, v1) v3
23
(30, v1) v4 23 17
v6
18 v5 (41, v1) 39
(16, v1) v2
16 16
30
v1
59
运筹学第六章图与网络分析
S
2
4
7
2 A
0 5
S
5 45 B
98
14
5
13
D
T
C
E
4
4
4
7
最短路线:S AB E D T
最短距离:Lmin=13
2.求任意两点间最短距离的矩阵算法
⑴ 构造任意两点间直接到达的最短距离矩阵D(0)= dij(0)
S A B D(0)= C D E T
SABCDET 0 25 4 2 02 7 5 20 1 5 3 4 1 0 4 75 0 15 3 41 0 7 5 7 0
e1 v1
e5
v0 e2
e3
v2
e4
e6 e7
v3
v4
(4)简单图:无环、无多重边的图称为简单图。
(5)链:点和边的交替序列,其中点可重复,但边不能 重复。
(6)路:点和边的交替序列,但点和边均不能重复。
(7)圈:始点和终点重合的链。
(8)回路:始点和终点重合的路。
(9)连通图:若一个图中,任意两点之间至少存在一条 链,称这样的图为连通图。 (10)子图,部分图:设图G1={V1,E1}, G2={V2,E2}, 如果有V1V2,E1E2,则称G1是G2的一个子图;若 V1=V2,E1E2,则称G1是G2的一个部分图。 (11)次:某点的关联边的个数称为该点的次,以d(vi)表示。
步骤:
1. 两两连接所有的奇点,使之均成为偶点;
2. 检查重复走的路线长度,是否不超过其所在 回路总长的一半,若超过,则调整连线,改 走另一半。
v1
4
v4
4
1
4
v2
v5
5
运筹学第6章 图与网络
也就是说| V1 |必为偶数。
定理6.2有学者也称作定理6.1的推论。根据定理6.2,握手定理也可以 表述为,在任何集体聚会中,握过奇次手的人数一定是偶数个。
12 该课件的所有权属于熊义杰
另外,现实中不存在面数为奇数且每个面的边数也是奇数的多面 体,如表面为正三角形的多面体有4个面,表面为正五边形的多面体有 12个面等等,也可以用这一定理予以证明。因为在任意的一个多面体 中, 当且仅当两个面有公共边时,相应的两顶点间才会有一条边,即 任意多面体中的一个边总关联着两个面。所以,以多面体的面数为顶
v j V2
(m为G中的边数)
因式中 2m 是偶数, d (v j ) 是偶数,所以 d (vi ) 也必为偶数
v j V2
vi V1
( 两个同奇同偶数的和差必为偶数 ), 同时,由于 d (vi ) 中的每个加数 d (vi )
均为奇数,因而 d (vi ) 为偶数就表明, d (vi ) 必然是偶数个加数的和 ,
图论、算法图论、极值图论、网络图论、代数图论、随机图论、 模糊图论、超图论等等。由于现代科技尤其是大型计算机的迅 猛发展,使图论的用武之地大大拓展,无论是数学、物理、化 学、天文、地理、生物等基础科学,还是信息、交通、战争、 经济乃至社会科学的众多问题.都可以应用图论方法子以解决。
1976年,世界上发生了不少大事,其中一件是美国数学家 Appel和Haken在Koch的协作之下,用计算机证明了图论难题— —四色猜想(4CC):任何地图,用四种颜色,可以把每国领土染 上一种颜色,并使相邻国家异色。4CC的提法和内容十分简朴, 以至于可以随便向一个人(哪怕他目不识丁)在几分钟之内讲清 楚。1852年英国的一个大学生格思里(Guthrie)向他的老师德·摩 根(De Morgan)请教这个问题,德·摩根是当时十分有名的数学家, 他不能判断这个猜想是否成立,于是这个问题很快有数学界流 传开来。1879年伦敦数学会会员Kemple声称,证明了4CC成立, 且发表了论文。10年后,Heawood指出了Kemple的证明中
运筹学课件 第六章图与网络分析
v 若 eij i , v j ,称 vi , v j 是边 eij 的端 点,反之,称边 eij 为点 v i 或 v j 的关联边。 若点 vi , v j 与同一条边关联,称点 vi v j 相邻; 若边 和 具有公共的端点,称 ei ei ej 和 相邻
e3 e13 v1, v3 v3 , v1 e31
2013-12-3
18
图中有些点和边的交替顺序 0 , e1 , v1 ,...,ek , vk v ,若其中各边 e1 , e2 ,...,ek 互不相同,且对 任意 vt 1 和 vt (2 t k ) 均相邻,称为 链。 上图中 1 v5 , e8 , v3, e3, v1, e2 , v2 , e4 , v3, e7 , v4
27
解
因要使上述村镇全部通上电,村镇之间必 须连通,又图中必不存在圈,否则从图中去掉一 条边图仍连通,就一定不是最短路线,故架设长 度最短的路线就是从上图中寻找一棵最小树。
2013-12-3
28
用避圈法时,先从图中任选一点 S , 令 S V ,其余点 V , V 与 V 间的最 短边为( S , A) ,将该边加粗,标志它是最小 树内的边。再令 V A V ,V V A 重复上述步骤,一直到所有点连通为止。过程 如下:
如果用点表示研究的对象,用边表示这些 对象之间的联系,则图G可以定义为点与边的集 合,记作 G , E V
V v1 , v2 ,...,vn
E e1 , e2 ,..,em
式V是点的集合,E是边的集合。
2013-12-3 13
注意,上面定义的图G区别于几何学中的图。 几何学中,图中点的位置、线的长度和斜率等都 十分重要,而这里只关心图中有多少个点以及哪 些点之间有线相连。 如果给图中的点和边以具体的含义和权数 (如距离、费用、容量等)。把这样的图称为网 络图,记作N。 图和网络分析的方法已广泛应用于物理、化 学、控制论、信息论、计算机科学和经济管理等 各领域。
系统工程与运筹学 第6章 图与网络最优化方法
属于部分树的边称为内边,不属于部分树的边称为外边。
连通图G (V, E)中,内边权值总和最小的部分树为最小部分树( 最小支撑树)。
最大部分树?
6.2 最小部分树问题
6.1.1图的基本概念和术语
1. 最小部分树定理 树的任意一条外边Cij比所对应的链中最长的边还长;即最小部 分树是指内边权总和最小的那棵树 2. 最小部分树算法 【例6.1】 某市区准备在五个社区间架设光纤网络,各社区的位 置如图6.2.1(a),如何架设光纤网络可使各社区间均能通网且光纤线 路最短。
欧拉回路也称一笔圈图,欧拉链也称一笔链图,二者均为一笔画图。
6.3.2 中国邮递员问题
由中国数学家管梅谷先生在1962年提出.
抽象成图的语言就是:给定一个无向的连通图,怎样 才能使每条边至少出现一次并使边长总和最小。这类问 题叫中国邮递员问题或一笔画问题。
中国邮递员问题可以描述为:在一个有奇点的连通图 中,增加一些重复边,使得该图成为一笔圈图,并且要 求重复边的总路长最小。
A
D C
B 图6.3.1 哥尼斯堡七桥问题
【定理1】 若图G的每个顶点所关联的边数是偶数条,则图G是欧拉回路,这
样的图能一笔画出;
【定理2】 若除链的端点以外其余每个顶点所关联的边数是偶数 条(即图中奇点数为2),则图是欧拉链,若想走过该图所有的边而不 走重复路,就只能从一个奇点出发到达另一个奇点。
1736年著名数学家欧拉(Euler)发表了图论方面第一篇论文,解 决了有名的哥尼斯堡七桥难题,欧拉被公认为图论的创始人。
图论以集合元素间某种二元关系生成的拓扑图形为研究对象,任 何一个包含了某种二元关系的系统都可以用图论的方法来分析。
经过200多年的发展,图论已经发展成为一个理论与应用兼有的 数学领域,在自然科学和社会科学研究中有着广泛的应用。
连通图G (V, E)中,内边权值总和最小的部分树为最小部分树( 最小支撑树)。
最大部分树?
6.2 最小部分树问题
6.1.1图的基本概念和术语
1. 最小部分树定理 树的任意一条外边Cij比所对应的链中最长的边还长;即最小部 分树是指内边权总和最小的那棵树 2. 最小部分树算法 【例6.1】 某市区准备在五个社区间架设光纤网络,各社区的位 置如图6.2.1(a),如何架设光纤网络可使各社区间均能通网且光纤线 路最短。
欧拉回路也称一笔圈图,欧拉链也称一笔链图,二者均为一笔画图。
6.3.2 中国邮递员问题
由中国数学家管梅谷先生在1962年提出.
抽象成图的语言就是:给定一个无向的连通图,怎样 才能使每条边至少出现一次并使边长总和最小。这类问 题叫中国邮递员问题或一笔画问题。
中国邮递员问题可以描述为:在一个有奇点的连通图 中,增加一些重复边,使得该图成为一笔圈图,并且要 求重复边的总路长最小。
A
D C
B 图6.3.1 哥尼斯堡七桥问题
【定理1】 若图G的每个顶点所关联的边数是偶数条,则图G是欧拉回路,这
样的图能一笔画出;
【定理2】 若除链的端点以外其余每个顶点所关联的边数是偶数 条(即图中奇点数为2),则图是欧拉链,若想走过该图所有的边而不 走重复路,就只能从一个奇点出发到达另一个奇点。
1736年著名数学家欧拉(Euler)发表了图论方面第一篇论文,解 决了有名的哥尼斯堡七桥难题,欧拉被公认为图论的创始人。
图论以集合元素间某种二元关系生成的拓扑图形为研究对象,任 何一个包含了某种二元关系的系统都可以用图论的方法来分析。
经过200多年的发展,图论已经发展成为一个理论与应用兼有的 数学领域,在自然科学和社会科学研究中有着广泛的应用。
运筹学第六章 网络规划与网络分析
与无向图和有向图相对应,网络又分为无向网络 和有向网络。
图的矩阵表示方法: 关联矩阵:在图G=(V,E) 中,V=(v1,v2,…,vp),E=(e1,e2 ,…,eq), 构造一个矩阵 A (aij ) pq ,其中
1 当点vi与边e j 关联 aij 否则 0
则称A为G的关联矩阵。关联指顶点与边的关系。
vit
的一条链,简记为
v , v
i1
i2
,, vit 。其中 eik (eik , ei ( k 1) ), k 1, 2,..., t 1 。称 vi1和
1 2 3 2 4 5 1 2 4 5
vit 为链的两个端点。图6-3 中的 v , v , v ,v , v , v ,v , v , v , v
为区别起见,把两点间不带箭头的连线称为边, 带箭头的连线称为弧。 由此看出,用图来描述事物间的联系,不仅 直观清晰,便于统观全局,而且网络图的画法简 便,不必拘泥于比例和曲直。总之,这里所讲的 图是反映对象之间关系的一种工具。这样的例子 也很多,电路网络、城市规划、信息传递、物质 结构、物资调配等也都可以用点和线连接起来的 图进行模拟。
都是链。 两个端点重合的链,称为圈。在一个图中,如果任何两个 顶点之间都有一条链,该图称为连通图。
二、有向图
(1)有向图
有向图是一个有序二元组(V,A),记为D(V,A),其中
V (v1 , v2 ,..., vp ) 是p个顶点的集合,A (a1 , a2 ,..., aq ) 是q条弧
ait vi ( t 1) , vit ,则称P是一条链接 vi1 和 vit 的有向路。
三、网络
实际问题中,往往只用图来描述所研究对象之间的 关系还不够,如果在图中赋予边一定的数量指标,我们 常称之为“权”。依据研究问题的需要,权可以代表距 离,也可以代表时间、费用、容量、可靠性等。通常把 这种赋权图称为网络。
运筹学chap6网络优化模型
如果V1 V, E1 E则称G1为(全部顶点和部分边)G的部分图;
部分图、生成子图、部分树
部分图 生成子图
设G=(V,E)和G1=(V1,E1)
如果G1=(V1,E1),G=(V,E),并且V1
V ,E 1 {u ,v ( ) E |u V 1 ,v V 1 } ,则称G1为G的生成子图;
部分图、生成子图、部分树
部分图 生成子图
设G=(V,E)和G1=(V1,E1)
部分树
则如如V如果称果果,VGGE G11 1=1 =为{ (V(u VVG,,1v ,( ,的)E EE一1E 1))|,个u 的 GE部部V =则1 (,分称v 分V ,G树图V E1 1} )。为G,,则G1并称=的且G(部V1V为1分,G图的E生;1成)是子图树;,
例:用Dijkstra方法求图8-4所示的赋权图中,从v1 到所有点的最短路。
图8-4
解: 计算的最后结果为
P(v1)=0,P(v4)=1,P(v3)=3,P(v2)=5,P(v5)=6,P(v9)=8, P(v7)=9,P(v6)=10,P(v8)=11。
这样从v1到v8的最短链为(v1,v3,v2,v5,v9,v8),总 权为11。
Dijkstra方法的基本思想:
从vs出发,逐步向外探寻最短路。执行过程中, 与每个点对应,记录下一个数(称为这个点的标 号),它或者表示从vs到该点的最短路的权(称为P 标号),或者是从vs到该点的最短路的权的上界 (称为T标号),方法的每一步是去修改T标号,并 且把某一个具T标号的点改变为具P标号的点, 从而使D中具P标号的顶点数多一个,这样,至 多经过p−1步,就可以求出从vs到各点的最短路。
最小生成树: 设有一连通图G=(V,L),对于每一边e=(vi,vj),有一个权wij≥0。 一棵生成树所有树枝上权的总和,称为这个生成树的权。具
第六章物流运筹学——图与网络分析.
L( )
( vi ,v j )
l
ij
最小的 。
Dijkstra算法
算法的基本步骤: (1)给 v s 以 P 标号, P(vs ) 0 ,其余各点均给 T 标号, T (vi ) 。 (2)若 vi 点为刚得到 P 标号的点,考虑这样的点 v j: (vi , v j ) E ,且 v j 为 T 标号,对 v j 的 T 标号进行如下的更改:
v2
(4,3)
v4
(3,3)
(5,3) (1,1) (1,1) (3,0)
vs
(5,1)
vt
(2,1)
v1
(2,2)
v3
图 6-14
运输线路图
第四节 最小费用最大流问题
在容量网络 G (V , E, C ) ,每一条边 (vi , v j ) E 上,除了已 给容量 cij 外,还给了一个单位流量的费用 bij 0 ,记此时的容 量网络为 G (V , E, C , B) 。 所谓最小费用最大流问题就是要求一个最大流 f ,使流的 总运输费用 b( f )
定理 6-1 任何图中顶点次数的总和等于边数的 2 倍。 推论 6-1 任何图中,次为奇数的顶点必有偶数个。 图 G (V , E ) 和图 H (V , E ) ,若 V V且E E ,则 称 H 是 G 的子图,记作: H G ;特别的,当 V V 时, 称 H 为 G 的生成子图。
容量网络g若?为网络中从sv到tv的一条链给?定向为从sv到tv?上的边凡与?同向称为前向边凡与?反向称为后向边其集合分别用??和??表示??ijff?是一个可行流如果满足??????0ijijijijiijjffcvv??????????c???0ijijijfvv????则称?为从sv到tv的关于f的可增广链
( vi ,v j )
l
ij
最小的 。
Dijkstra算法
算法的基本步骤: (1)给 v s 以 P 标号, P(vs ) 0 ,其余各点均给 T 标号, T (vi ) 。 (2)若 vi 点为刚得到 P 标号的点,考虑这样的点 v j: (vi , v j ) E ,且 v j 为 T 标号,对 v j 的 T 标号进行如下的更改:
v2
(4,3)
v4
(3,3)
(5,3) (1,1) (1,1) (3,0)
vs
(5,1)
vt
(2,1)
v1
(2,2)
v3
图 6-14
运输线路图
第四节 最小费用最大流问题
在容量网络 G (V , E, C ) ,每一条边 (vi , v j ) E 上,除了已 给容量 cij 外,还给了一个单位流量的费用 bij 0 ,记此时的容 量网络为 G (V , E, C , B) 。 所谓最小费用最大流问题就是要求一个最大流 f ,使流的 总运输费用 b( f )
定理 6-1 任何图中顶点次数的总和等于边数的 2 倍。 推论 6-1 任何图中,次为奇数的顶点必有偶数个。 图 G (V , E ) 和图 H (V , E ) ,若 V V且E E ,则 称 H 是 G 的子图,记作: H G ;特别的,当 V V 时, 称 H 为 G 的生成子图。
容量网络g若?为网络中从sv到tv的一条链给?定向为从sv到tv?上的边凡与?同向称为前向边凡与?反向称为后向边其集合分别用??和??表示??ijff?是一个可行流如果满足??????0ijijijijiijjffcvv??????????c???0ijijijfvv????则称?为从sv到tv的关于f的可增广链
运筹学第六章图与网络分析(ppt文档)
§6.1 图的基本概念和模型
一、概念
(1)图:点V和边E的集合,用以表示对某种现实事物
的抽象。记作 G={V,E}, V={v1,v2,···,vn}, 点:表示所研究的事物对象; E={e1,e2,···,em}
边:表示事物之间的联系。
e0
(2)若边e的两个端点重 合,则称e为环。
(3)多重边:若某两端点之 间多于一条边,则称为多重边。
D 8 64 5 0 15
E 7 53 4 1 0 6
T 14 11 9 10 5 6 0
i
dir(1)
r
drj(1)
j
⑷ 构造任意两点间最多可经过7个中间点到达的最短距 离矩阵 D(3)= dij(3)
其中
dij(3)=
min
r
{
dir(2)+
drj(2)
}
SABCDET
S 0 2 4 4 8 7 13
dir(0)
r i
drj(0)
j
⑶ 构造任意两点间最多可经过3个中间点到达的最短距 离矩阵 D(2)= dij(2)
其中
dij(2)=
min
r
{
dir(1)+
drj(1)}
SABCDET
S 0 2 4 4 8 7 14
A 2 0 2 3 6 5 11
B 4 20 1 43 9 D(2)= C 4 3 1 0 5 4 10
2. 破圈法:
⑴ 任取一圈,去掉其中一条最长的边, ⑵ 重复,至图中不存在任何的圈为止。
2. 破圈法
A
S
5 × B 5× D 5 T
C
4× E
最小部分树长Lmin=14
运筹学第6章:图与网路分析
13
6.3 最短路问题
6.3.1 狄克斯特拉算法 (Dijkstra algorithm, 1959)
• 计算两节点之间或一个节点到所有节点之间的最短路
令 dij 表示 vi 到 vj 的直接距离(两点之间有边),若两点之间 没有边,则令 dij = ,若两点之间是有向边,则 dji = ; 令 dii = 0,s 表示始点,t 表示终点
10 16 11 10 17 10 9.5 19.5 16 9.5 7 12 7 8 7 11 10 8 9 17 19.5 12 7 9
• • • • •
Prim算法是多项式算法 Prim算法可以求最大生成树 网路的边权可以有多种解释,如效率 次数受限的最小生成树—尚无有效算法 最小 Steiner 树—尚无有效算法
j dij i dik djk k
17
6.3.2 Floyd-Warshall 算法 (1962)
for i=1 to n do dii=; for all eij=0; for j=1 to n do for i=1 to n do if ij then for k=1 to n do if kj then begin dik=min{dik, dij+djk}; if dik>dij+djk then eik=j end;
7
6.2 树图与最小生成树
• 一般研究无向图 • 树图:倒臵的树,根(root)在上,树叶(leaf)在下 • 多级辐射制的电信网络、管理的指标体系、家谱、分 类学、组织结构等都是典型的树图
C1
根
C2
C3
C4
运筹学第6章图与网络分析
2020/7/14
A
C
D
B
哥尼斯堡七空桥
2020/7/14
A
C B
D
一笔画问题
哈密尔顿(Hamilton)回路是十九世纪 英国数学家哈密顿提出,给出一个正12 面体图形,共有20个顶点表示20个城市, 要求从某个城市出发沿着棱线寻找一条 经过每个城市一次而且仅一次,最后回 到原处的周游世界线路(并不要求经过 每条边)。
其链长为 n ,其中 v0 ,vn 分别称为链的起点和终点 。 若链中所含的边均不相同,则称此链为简单链;所含的点 均不相同的链称为初等链 , 也称通路。
v2
e1
v1
e2
e3
v3
e4
v4
e5 e7
e9
e8
v6
e10
e6
v5
11、图中任意两点之间均至少有一条通路,则称此图为 连通图,否则称为不连通图。
3、如果一个图是由点和弧所构成的,那么称它为有向图,记作
D=(V, A),其中V 表示有向图D 的点集合,A 表示有向图D 的弧 集合。一条方向从vi指向vj 的弧,记作(vi , vj)。
V = {v1 , v2 , v3 , v4 , v5 , v6 },
v2
A = {(v1 , v3 ) , (v2 , v1) , (v2 , v3 ) , v1
合
E构成{ek的} 二元组,记为G =(V,E),其中 V 中的
元素 叫做顶点v j ,V 表示图 G 的点集合;E 中的元素
叫做边,Ee表k 示图 G 的边集合。
例
v1
V v 1 ,v 2 ,v 3 ,v 4 ,v 5 ,v 6
E { e 1 , e 2 ,e 3 ,e 4 ,e 5 ,e 6 ,e 7 ,e 8 ,e 9 ,e 1 } 0e10
A
C
D
B
哥尼斯堡七空桥
2020/7/14
A
C B
D
一笔画问题
哈密尔顿(Hamilton)回路是十九世纪 英国数学家哈密顿提出,给出一个正12 面体图形,共有20个顶点表示20个城市, 要求从某个城市出发沿着棱线寻找一条 经过每个城市一次而且仅一次,最后回 到原处的周游世界线路(并不要求经过 每条边)。
其链长为 n ,其中 v0 ,vn 分别称为链的起点和终点 。 若链中所含的边均不相同,则称此链为简单链;所含的点 均不相同的链称为初等链 , 也称通路。
v2
e1
v1
e2
e3
v3
e4
v4
e5 e7
e9
e8
v6
e10
e6
v5
11、图中任意两点之间均至少有一条通路,则称此图为 连通图,否则称为不连通图。
3、如果一个图是由点和弧所构成的,那么称它为有向图,记作
D=(V, A),其中V 表示有向图D 的点集合,A 表示有向图D 的弧 集合。一条方向从vi指向vj 的弧,记作(vi , vj)。
V = {v1 , v2 , v3 , v4 , v5 , v6 },
v2
A = {(v1 , v3 ) , (v2 , v1) , (v2 , v3 ) , v1
合
E构成{ek的} 二元组,记为G =(V,E),其中 V 中的
元素 叫做顶点v j ,V 表示图 G 的点集合;E 中的元素
叫做边,Ee表k 示图 G 的边集合。
例
v1
V v 1 ,v 2 ,v 3 ,v 4 ,v 5 ,v 6
E { e 1 , e 2 ,e 3 ,e 4 ,e 5 ,e 6 ,e 7 ,e 8 ,e 9 ,e 1 } 0e10
运筹学06图与网络分析
满足w(T*)=min(w(T))的树T*称为最小支撑树 (最小树)。
求最小树的方法 求最小树的避圈法 求最小树的破圈法
根树及其应用
有向树中的根树在计算机科学、决策论中有 很重要的应用
有向树:若一个有向图在不考虑边的方向时 是一棵树,则称这个有向图为有向树。
根树:有向树T,恰有一个结点入次为0,其 余各点入次均为1,则称T为根树(又称外向 树)。根树中入次为0的点称为根。根树中出 次为0的点称为叶。入次和出次均大于0的点 称为分枝点。由根到某一顶点vi的道路长度 (设每边长度为1),称为vi点的层次。
v4
a5 a4 a7
a1=(v1,v5)
a6
a2=(v5,v4) a3=(v1,v4) a4=(v3,v1) a5=(v1,v2) a6=(v2,v3) a7=(v1,v4)
v2
v3
d-(v1)=1;d+(v1)=3 d-(v2)=1;d+(v2)=1 d-(v3)=1;d+(v3)=2 d-(v4)=3;d+(v4)=0 d-(v5)=1;d+(v5)=1
树及其性质
树在现实中随处可见,如电话线架设、比赛 程序、组织结构等。
树:连通的无圈的无向图称为树。
树的性质 图G=(V,E),p个点、q条边,下列说法是等价
的
(1)G是一个树 (2)G连通,且恰有p-1条边 (3)G无圈,且恰有p-1条边 (4)G连通,但每舍去一边就不连通 (5)G无圈,但每增加一边即得唯一一个圈 (6)G中任意两点之间恰有一条链(简单链)
如果对于给定的图G=(V,E)的任意一边e∈E, 有一实数W(e)与之对应,则称G为赋权图,称 W(e)为边e的权。
第六章 图与网络最大流问题运筹学基础及其应用胡运权第五版
j i it
3.对于收点vt有:
f
i
f tj v
j
4.对于中间点点vm有:
i
f im
j
f mj
则称流量集合{f ij}为网络的一个可行流,简记为 f , v称为可 行流的流量或值,记为v(f).
以下假设网络是一个简单连通图。
§7.4 最大流问题
Maximum Flow Problems
增广链 设 f 是一个可行流,如果存在一条从vs到vt的链,满足: 想一想,这 1.所有前向弧上fij<Cij 43 ② ④ 是一条增广 2.所有后向弧上fij>0 链吗? 4 2 则该链称为增广链 前向弧 ① ⑥ 6 4 容量 8 5 96 后向弧 流量 ③ ⑤
§7.4 最大流问题
Maximum Flow Problems
1
§7.4 最大流问题
Maximum Flow Problems
Ch7 Graph and Network
2012年12月31日星期一 Page 10 of 12
4.求调整量 min ,6,2,1,7 1 5.调整可行流 去掉所有标号,重新标号
2②
64
42 10
④ 6 0
74 ⑥7 92
Ch7 Graph and Network
2012年12月31日星期一 Page 4 of 12
又如下图所示的截集为 (V1 ,V1 ) (2,4), (3,4), (5,4), ,6) (5
截量C (V1 ,V1 ) 4 2 6 9 21
② 6 ① 4 1 1 4 4 ④
2 min f (i, j ) | (i, j )是后向弧 =min 1 , 2 | 无前向弧时1 , 无后向弧 2
3.对于收点vt有:
f
i
f tj v
j
4.对于中间点点vm有:
i
f im
j
f mj
则称流量集合{f ij}为网络的一个可行流,简记为 f , v称为可 行流的流量或值,记为v(f).
以下假设网络是一个简单连通图。
§7.4 最大流问题
Maximum Flow Problems
增广链 设 f 是一个可行流,如果存在一条从vs到vt的链,满足: 想一想,这 1.所有前向弧上fij<Cij 43 ② ④ 是一条增广 2.所有后向弧上fij>0 链吗? 4 2 则该链称为增广链 前向弧 ① ⑥ 6 4 容量 8 5 96 后向弧 流量 ③ ⑤
§7.4 最大流问题
Maximum Flow Problems
1
§7.4 最大流问题
Maximum Flow Problems
Ch7 Graph and Network
2012年12月31日星期一 Page 10 of 12
4.求调整量 min ,6,2,1,7 1 5.调整可行流 去掉所有标号,重新标号
2②
64
42 10
④ 6 0
74 ⑥7 92
Ch7 Graph and Network
2012年12月31日星期一 Page 4 of 12
又如下图所示的截集为 (V1 ,V1 ) (2,4), (3,4), (5,4), ,6) (5
截量C (V1 ,V1 ) 4 2 6 9 21
② 6 ① 4 1 1 4 4 ④
2 min f (i, j ) | (i, j )是后向弧 =min 1 , 2 | 无前向弧时1 , 无后向弧 2