运筹学第六章图与网络分析a管理精品资料
合集下载
运筹学(第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(图与网络分析)
定义7:子图、生成子图(支撑子图)
图G1={V1、E1}和图G2={V2,E2}如果 V1 V2和E1 E2 称G1是G2的一个子图。
若有 V1=V2,E1 E2 则称 G1是G2的一 个支撑子图(部分图)。
图8-2(a)是图 6-1的一个子图,图8-2 (b)是图 8-1的支撑子图,注意支撑子图 也是子图,子图不一定是支撑子图。 e1
v2 ▲如果链中所有的顶点v0,v1,…,vk也不相
e1 e2 e4 v1 e3
v3 e5
同,这样的链称初等链(或路)。
e6
▲如果链中各边e1,e2…,ek互不相同称为简单链。
e7
e8
▲当v0与vk重合时称为回路(或圈),如果边不 v4
v5
重复称为简单回路,如果边不重复点也不重复
则称为初等回路。
图8-1中, μ1={v5,e8,v3,e3,v1,e2,v2,e4,v3,e7,v5}是一条链,μ1中因顶 点v3重复出现,不能称作路。
e1
e2 e4 v1 e3
v2
v3
e5
e6
e7
e8
v4
v5
定理1 任何图中,顶点次数的总和等于边数的2倍。
v1
v3
v2
定理2 任何图中,次为奇数的顶点必为偶数个。
e1
e2 e4 v1 e3
v2
v3
e5
e6
e7
e8
v4
v5
定义4 有向图: 如果图的每条边都有一个方向则称为有向图
定义5 混合图: 如何图G中部分边有方向则称为混合图 ② ⑤ ④
定理4 有向连通图G是欧拉图,当且仅当G中每个顶点的出 次等于入次。
② 15
9 10
运筹学-6(图与网络分析)PPT课件
4
3
验证:第一圈内总长:3+4+5+4+7=23 第一圈逆时针内配送路长:3+4+5=12>11.5,则不是最优方案 第二圈内配送路长:4+2+3+4=13 第二圈逆时针内配送路长:2<6.5,则是最优方案。 第二圈顺时针内配送路长:3<6.5,则是最优方案。
修正第一圈内方案,取逆时针方向最小值1,然后逆时针方向配送路线减去 1,顺时针方向配送及未走路线加上1,则得到第一圈内配送路长:5<总长 一半,则是最优方案。如图所示:
相关 成本
A 4C
E
A 5C
E F
A 6C
F I
D D, F F, I
D D I H, G
D D H, G H, J
348 291, 228 294, 258
348 291 258 288, 360
348 291 288, 360 390, 384
第n个 最近
节点
最小 成本
最新 连接
A到各 N节点 最短 路径
6.2.2 网络图的绘制原则
只能有一个始点事项和一个终点事项 不允许出现编号相同的箭线 不允许出现循环线路 作业要始于结点终于结点
网 络 规 则(2)
1、避免循环、不留缺口
2、一一对应:一道工序用两个事项表示
F 228 CF A→C→F
I
258 EI A→B→E
→I
H 288 FH A→C→F →H
步 已解点 候选点 骤
相关 成本
A C 7F I H
F 8I
H D
D D G J G, J
G J J G
348 291 360 384 336, 414 360 384 414 396
运筹学第六章图与网络分析
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的证明中
运筹学06图与网络分析PPT演示文稿
v4
v1 v2 v3 v4 v5 v1 0 1 1 0 0
起 v2 1 0 0 1 1
点 v3 1 0 0 0 1
v5
v4 0 1 0 0 1
v5 0 1 1 1 0
19
❖ 赋权无向图的邻接矩阵表示
▪ 两顶点之间有边相连的,写上其权数,无 边相连的记为∞,对角线上的数字为0。赋 权无向图对应的矩阵也是对称的。
1 图的基本概念
❖ 案例导引 ❖ 图论中的图 ❖ 图的矩阵描述
2
案例导引
❖ 图论是运筹学的一个重要分支,对其最早的 研究可以追溯到著名的哥尼斯堡七桥问题 (Konigsberg Bridges Problem)。18世纪,欧洲 的哥尼斯堡城有一条流经全城的普雷戈尔河, 河的两岸与河中两个小岛及两岛之间有七座 桥彼此相通(如左图)。
22
树及其性质
❖ 树在现实中随处可见,如电话线架设、比赛 程序、组织结构等。
❖ 树:连通的无圈的无向图称为树。
23
❖ 树的性质 ❖ 图G=(V,E),p个点、q条边,下列说法是等价
的 ▪ (1)G是一个树 ▪ (2)G连通,且恰有p-1条边 ▪ (3)G无圈,且恰有p-1条边 ▪ (4)G连通,但每舍去一边就不连通 ▪ (5)G无圈,但每增加一边即得唯一一个圈 ▪ (6)G中任意两点之间恰有一条链(简单链)
30
❖在根树中,若每个顶点的出次小于或等 于M,称这棵树为M叉树。
❖若每个顶点的出次恰好等于M或者零, 则称这棵树为完全M叉树。
❖当M=2时,称为二叉树、完全二叉树。
31
❖ 如图所示的树是根树。其 中根、分枝点、叶;各点 层次都标注在树上。
❖ 这是一棵三叉树
三叉树
根
运筹学胡运权第五版(第6章)课件
零图: 边集为空集的图。
运筹学胡运权第五版(第6章)
2、图的阶:即图中的点数。 例如 右图为一个五阶图
3、若图中边e= [vi,vj] ,则vi,vj称 为e的端点,
e称为vi,vj的关联边。 若vi与vj是一条边的两个端
点,则称vi与vj相邻; 若边ei与ej有公共的端点,
则称ei与ej相邻。
e8
1、图(graph):由V,E构成的有序二元组,用以表示对 某些现实对象及其联系的抽象,记作 G={V,E}。 其中V称为点集,记做V={v1,v2,···,vn}
E称为边集,记做E={e1,e2,···,em}
点(vertex):表示所研究的对象,用v表示; 边(edge):表示对象之间的联系,用e表示。 网络图(赋权图): 点或边具有实际意义(权数)的图, 记做N。
路:点不能重复的链。
圈:起点和终点重合的链。
回路:起点和终点重合的路。
连通图:任意两点之间至少存在一条链的图。
完全图:任意两点之间都有边相连的简单图。
n阶完全图用Kn表示,边数=
C 2 n(n 1)
n
2
注意:完全图是连通图,但连通图不一定是完全图。
运筹学胡运权第五版(第6章)
v1 e4
v4 e5 v5
依次下去,vn必然与前面的某个点相邻,图中有圈,矛盾!
注意:树去掉悬挂点和悬挂边后余下的子图还是树。
运筹学胡运权第五版(第6章)
(2)n阶树必有n-1条边。
证明(归纳法): 当n=2时,显然;
设n=k-1时结论成立。 当n=k时,树至少有一个悬挂点。
去掉该悬挂点和悬挂边,得到一个k-1阶的树,它有 k-2条边,则原k阶树有k-1条边。
7、已知图G1={V1,E1}, G2={V2,E2}, 若有V1V2,E1E2,则称G1是G2的一个子图; 若V1=V2,E1E2且 E1≠E2 ,则称G1是G2的一个部分图。
运筹学胡运权第五版(第6章)
2、图的阶:即图中的点数。 例如 右图为一个五阶图
3、若图中边e= [vi,vj] ,则vi,vj称 为e的端点,
e称为vi,vj的关联边。 若vi与vj是一条边的两个端
点,则称vi与vj相邻; 若边ei与ej有公共的端点,
则称ei与ej相邻。
e8
1、图(graph):由V,E构成的有序二元组,用以表示对 某些现实对象及其联系的抽象,记作 G={V,E}。 其中V称为点集,记做V={v1,v2,···,vn}
E称为边集,记做E={e1,e2,···,em}
点(vertex):表示所研究的对象,用v表示; 边(edge):表示对象之间的联系,用e表示。 网络图(赋权图): 点或边具有实际意义(权数)的图, 记做N。
路:点不能重复的链。
圈:起点和终点重合的链。
回路:起点和终点重合的路。
连通图:任意两点之间至少存在一条链的图。
完全图:任意两点之间都有边相连的简单图。
n阶完全图用Kn表示,边数=
C 2 n(n 1)
n
2
注意:完全图是连通图,但连通图不一定是完全图。
运筹学胡运权第五版(第6章)
v1 e4
v4 e5 v5
依次下去,vn必然与前面的某个点相邻,图中有圈,矛盾!
注意:树去掉悬挂点和悬挂边后余下的子图还是树。
运筹学胡运权第五版(第6章)
(2)n阶树必有n-1条边。
证明(归纳法): 当n=2时,显然;
设n=k-1时结论成立。 当n=k时,树至少有一个悬挂点。
去掉该悬挂点和悬挂边,得到一个k-1阶的树,它有 k-2条边,则原k阶树有k-1条边。
7、已知图G1={V1,E1}, G2={V2,E2}, 若有V1V2,E1E2,则称G1是G2的一个子图; 若V1=V2,E1E2且 E1≠E2 ,则称G1是G2的一个部分图。
运筹学课件 第六章图与网络分析
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。 图和网络分析的方法已广泛应用于物理、化 学、控制论、信息论、计算机科学和经济管理等 各领域。
运筹学课件-第六章图与网络分析
运筹学课件-第六章 图与网络分析
contents
目录
•的算法 • 图的应用
01
CATALOGUE
图的基本概念
图的定义
总结词
图是由顶点(或节点)和边(或弧) 组成的数据结构。
详细描述
图是由顶点(或节点)和边(或弧) 组成的数据结构,其中顶点表示对象 ,边表示对象之间的关系。根据边的 方向,图可以分为有向图和无向图。
04
CATALOGUE
图的算法
深度优先搜索
要点一
总结词
深度优先搜索是一种用于遍历或搜索树或图的算法。
要点二
详细描述
该算法通过沿着树的深度遍历树的节点,尽可能深地搜索 树的分支。当节点v的所在边都己被探寻过,搜索将回溯到 发现节点v的那条边的起始节点。这一过程一直进行到已发 现从源节点可达的所有节点为止。如果还存在未被发现的 节点,则选择其中一个作为源节点并重复以上过程,整个 进程反复进行直到所有节点都被访问为止。
物流网络设计的应用
在物流规划、供应链管理、运输优化等领域有广泛应用,例如通过物 流网络设计优化货物运输路径、提高仓储管理效率等。
生物信息学中的图分析
生物信息学中的图分析
利用图论的方法对生物信息进 行建模和分析,以揭示生物系 统的结构和功能。
生物信息学中的节点
代表生物分子、基因、蛋白质 等。
生物信息学中的边
Dijkstra算法
总结词:Dijkstra算法是一种用于在有向图中查找单源 最短路径的算法。
详细描述:Dijkstra算法的基本思想是从源节点开始, 逐步向外扩展,每次找到离源节点最近的节点,并更新 最短路径。该算法使用一个优先级队列来保存待访问的 节点,并将源节点加入队列中。然后,从队列中取出具 有最小优先级的节点进行访问,并将其相邻节点加入队 列中。这一过程一直进行,直到队列为空,即所有可到 达的节点都已被访问。Dijkstra算法的时间复杂度为 O((V+E)logV),其中V是节点的数量,E是边的数量。
contents
目录
•的算法 • 图的应用
01
CATALOGUE
图的基本概念
图的定义
总结词
图是由顶点(或节点)和边(或弧) 组成的数据结构。
详细描述
图是由顶点(或节点)和边(或弧) 组成的数据结构,其中顶点表示对象 ,边表示对象之间的关系。根据边的 方向,图可以分为有向图和无向图。
04
CATALOGUE
图的算法
深度优先搜索
要点一
总结词
深度优先搜索是一种用于遍历或搜索树或图的算法。
要点二
详细描述
该算法通过沿着树的深度遍历树的节点,尽可能深地搜索 树的分支。当节点v的所在边都己被探寻过,搜索将回溯到 发现节点v的那条边的起始节点。这一过程一直进行到已发 现从源节点可达的所有节点为止。如果还存在未被发现的 节点,则选择其中一个作为源节点并重复以上过程,整个 进程反复进行直到所有节点都被访问为止。
物流网络设计的应用
在物流规划、供应链管理、运输优化等领域有广泛应用,例如通过物 流网络设计优化货物运输路径、提高仓储管理效率等。
生物信息学中的图分析
生物信息学中的图分析
利用图论的方法对生物信息进 行建模和分析,以揭示生物系 统的结构和功能。
生物信息学中的节点
代表生物分子、基因、蛋白质 等。
生物信息学中的边
Dijkstra算法
总结词:Dijkstra算法是一种用于在有向图中查找单源 最短路径的算法。
详细描述:Dijkstra算法的基本思想是从源节点开始, 逐步向外扩展,每次找到离源节点最近的节点,并更新 最短路径。该算法使用一个优先级队列来保存待访问的 节点,并将源节点加入队列中。然后,从队列中取出具 有最小优先级的节点进行访问,并将其相邻节点加入队 列中。这一过程一直进行,直到队列为空,即所有可到 达的节点都已被访问。Dijkstra算法的时间复杂度为 O((V+E)logV),其中V是节点的数量,E是边的数量。
第六章物流运筹学——图与网络分析.
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
精选运筹学——图与网络分析资料
4:比较所有具有T标号的点,把最小者改为P标号.
P(vi
)
min
T
(vi
)
当存在两个以上最小值时,可同时改为P标号.
若全部改为P标号,则停止.否则转回(2).
OR3
15
用Dijkstra算法求图中v1到v8的最短路
OR3
16
最短路问题的算法:Bellman算法
适用范围:有向图,且图中有wij﹤0。
,
v
)
j
min
v v w d ( , )
s
i
ij
i
OR3
17
基本思路:
用逐次逼近来求网络中的最短路:每次求出从始 点到网络中其余各点有限制的最短路。
若第一次逼近即得最短路,则限制其最短路只有
一条弧,其路长记为
d
(1) sj
;
若第二次逼近即得最短路,则限制其最短路不超
过两条弧,其路长记为
d
1、令 d w (1)
1j
1j
,其中,若v1与vj间没弧,则记
w1j=+∞。
d min d w 2、
(t)
1j
( (t1) )
1i
ij
i
当计算到第k步时,若有
d d (k)
(k 1)
1j
1j
成立,则
停止计算。
d
(k 1j
)
即为从v1到各点的最短路。
OR3
20
举例:求v1到各点的最短路
2、掌握基本定理8及其证明 3、掌握求最大流的标号法
OR3
25
引例:如下输水网络,南水北调工程, 从vs到vt送水,弧旁数字前者为管道容量, 后者为现行流量,如何调运输水最多?
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
min T (v j) T ( v j) ,L ( v i) d ij j
3. 在与固定标号点相邻的临时标号点中选取 具有最小标号的点vi给予固定标号,即:
L(vi)=min{ T(vj) } 返回第2步。 4. 当vn得到固定标号时,计算结束。 注: 固定标号L(vi)表示v1到vi的最短距离, 临时标号T(vj)表示v1到vi距离的上界。
能一笔画的图一定是欧拉圈或含有欧拉链。 定理:连通的多重图G是欧拉图的充要条件是G 中无奇点。 推论:连通的多重图G有欧拉链的充要条件是G 中恰有两个奇点。
第二节 树图和图的最小部分树
树图:无圈的连通图称为树图,记为T(V,E)。 2-1 树的性质 性质1:任何树中必存在至少两个次为1的点(悬 挂点)。
若一个简单图中任意两点之间均有边相连,
则称该图为完全图。
对含有n个顶点的完全图,其边数有
Cn2
1n(n1) 2
条。
如果图的顶点能分成两个互不相交的非空
集合V1和V2 ,使在同一集合中任意两个顶点 都不相邻,则称该图为偶图(或二分图)。
若偶图的顶点集合V1、V2之间的每一对不 同顶点之间都有一条边相连,则称该图为完全 偶图。在完全偶图中, V1若有m个顶点, V2 有n个顶点,则其边数共有m×n条。
临时标号
v2(5) v3(2) v4(∞) v5(∞) v6(∞) v7(∞) v2(5) v4(9) v5(∞) v6(6) v7(∞) v4(7) v5(12) v6(6) v7(∞) v4(7) v5(7) v7(12)
v5(7) v7(12)
v7(10)
❖ Dijkstra 算 法 仅 适 合 于 所 有 的 权
Hale Waihona Puke 3-2 求任意两点间最短距离的矩阵算法(Floyd) 设邻接矩阵为D,计算D1=D+D, D2= D1 +D ,
D3= D2 +D ,… 。若Dm+1= Dm ,则Dm中的元 素值即为各点间的最短距离。
Dk+1= Dk +D算法: 例4:
D1=D+D=
+
=
d i(k j) m r d i(ik r 1 ) n d rj
第一节 图的基本概念
一、图的概念
1. 图(无向图) 图是由点与边组成的集合,记为:G=(V,E),
其中V≠Φ,表示图G中点的集合,E表示图G中 边的集合。图中点的个数记为p,称为图的阶; 图中边的条数记为q。
2. 端点、关联边、相邻 若边e可以表示为e=(vi,vj),则称vi和vj
是边e的端点;边e称为点vi和vj的关联边。 若点vi、vj与同一条边关联,称点vi和vj相
7. 子图,部分图 对图G1={ V1,E1 }和图G2={ V2,
E2 } ,若有V1V2和 E1E2 ,则称G1是 G2的一个子图。
若有 V 1V2和 E1E2 ,则称G1是G2 的一个部分图。
定理 :在图G中,所有顶点次之和等于边数
的两倍。即:
d(v) 2q
vV
定理 :在任一图中,奇点的个数必为偶数。
v1 10 0 5 2 7 7 6 10 v2 8 5 0 7 2 5 4 8 v3 7 2 7 0 6 5 4 8 v4 7 7 2 6 0 3 2 6 v5 7 7 5 5 3 0 1 3 v6 6* 6 4 4 2 1 0 4 v7 10 10 8 8 6 3 4 0
(2)找出与v1相邻的点中距离最小的一个, 设为vr,
将L1r= L11+ d1r的值标注在点vr旁的小 方框内,此时, vr也已经标号; (3)从已标号点出发,找出与已标号点相
邻的所有未标号点vp,若有 L 1 p m p L 1i 1 d n 1 p ,L 1 r d rp
则将L1p的值标在vp旁的小方框内,此时,点 vp已得到标号; (4)重复第(3)步,直到vn得到标号。
固定标号
1. v1(0) 2. 3. 2. v1(0) v3(2) 4. 5. 3. v1(0) v3(2) v2(5) 6. 7. 4. v1(0) v3(2) v2(5) 8. v6(6) 9. 5. v1(0) v3(2) v2(5) 10. v6(6) v4(7) 11. 6 v1(0) v3(2) v2(5) 12. v6(6) v4(7) v5(7) 13. 7. v1(0) v3(2) v2(5) 14. v6(6) v4(7) v5(7) 15. v7(10)
次为0的点称为孤立点。 次为1的点称为 悬挂点。
.v6
5. 链,圈,连通图 图中由相邻的点和互不相同的边组成的
交替序列μ称为链。 若链中的所有顶点也不相同,则该链称
为路。 起点与终点重合的链称为圈。起点与终
点重合的路称为回路。 若图中任意两个顶点之间都至少存在一
条链,则称该图为连通图。
6. 完全图,偶图
V4 8 0 2 3 -7 -7 -7
V5 -1 0 1 -3 -3
V6 1 0 1 7 -1 -1 -1
V7 -1 0 5 -5 -5
V8 -3 -5 0 6 6
❖ 为了求出从v1到各个点的最短路,一般采
用反向追踪的方法:如果已知L(vs,vj),那么寻 求一个点vk,使得L(vs,vk)+wkj=L(vs,vj),然后记 录 下 (vk,vj) 。 再 看 L(vs,vk), 寻 求 一 个 点 vi, 使 得 L(vs,vi)+wiK=L(vs,vk)… 依 次 类 推 , 一 直 到 达 L(vs,v1) 为 止 。 这 样 , 从 vS 到 vj 的 最 短 路 是 (vs,…vi,vk,vj)。 ❖ 在 本 例 中 , 由 表 知 , L(v1,v8)=6, 由 于 L(v1,v6)+d68=(-1)+7 记 录 下 v6 , 由 于 L(v1,v3)+d36=L(v1,v6),j 记 录 下 v3 , 由 于 L(v1,v1)+d13=L(v1,v3), 于 是 , 从 v1 到 v8 的 最 短 路是(v1,v3,v6,v8)。
1.若点vi到点vj之间有一条弧,则令权数为dij, 否则,令dij=+∞。 2.由于从vs到vj的最短路是从vs点出发,沿着这 条路到某个点vi,再沿弧(vi,vj)到点vj。显然, 从vs到vi必定是从vs到vj的最短路,否则从vs到 vj的这条路将不是最短路。于是,从vs到vj的最 短距离L(vs,vj)满足以下条件,
-3
v3
2
1
1 v6
-3 7
v8
8 -5 2 3
1
-5
v4
-1
v7
终 点
dij
L(t)(vs,vj)
起 V1 V2 V3 V4 V5 V6 V7 V8 t=1 t=2 t=3 t=4
点
V1 0 -1 -2 3 0 0 0 0
V2 6 0 2 -1 -5 -5 -5
V3 -3 0 -5 1 -2 -2 -2 -2
作业: P172 6.11 6.13
修正狄克斯特拉(标号)算法: 步骤: 1. 对起点v1给予固定标号L(v1)=0,其余点为 临时标号,并记为:
T(vj
)
d1j
v1与vj相邻 (j=1,2...n) v1与vj不相邻
2. 设vi是刚刚得到固定标号的点L(vi) ,修改与 其相邻的临时标号点vj :
性质2:具有n个顶点的树的边数恰好为(n-1)条。 性质3:任何具有n个顶点、(n-1)条边的连通图 是树。
2-2 图的最小部分树(最短树) 如果G1是G2的部分图,又是树图,则称G1
是G2的部分树(或支撑树)。 G2的树枝总长最 小的部分树称为该图的最小部分树。
定理1. 图中任一个点i,若j是与i相邻点中距离 最近的,则边(i, j)必含在该图的最小部分树内。 推 则论 两: 集合把之图间的连所线有的点最分短成边V一和定V 包两含个在集最合小,部 分树内。
L(vs,vj)=min{L(vs,vi)+dij}, i=1,…,p
i
这个关系式L(vs,v1)…L(vs,vp)可利用如
下的递推公式求解
L(1)(vs,vj)=dsj ,j=1…p L(t)(vs,vj)=miin{L(t-1)(vs,vi)+ dij},t=2,3…
3.当计算到第K步时,若对一切的j=1…p,有
L(k)(vs,vj)=L(k-1)(vs,vj)
则 L(k)(vs , vj),j=1…p, 就 是 从 vs 到 各 点 vj
的最短路径。
结论
❖ 设C是赋权函数有向图D中的一个回路。如果回路C的 权S(C)是负数那么称C是D中的一个负回路。
可以证明以下的结论:
1.如果赋权有向图D不含有负回路,那么从vs到任 一点的最短路至多包含P-2个中间点,并且必可取为
例: 在如下图所示的赋权有向图中求从v1到各
点的最短路。
解:利用上述递推公式,将求解结果列出如 下表所示。
可以看出,当t=4时,有:
L(t)(vs,vj)=L(t-1)(vs,vj) j=1…8 。 因 此 , 表 中的最后一列,就是从v1到v1,v2,..,v8的最短
路权。
v2
-1
v5
6
v1
-1 -2
例:有八种化学药品,某些不能放入同一个仓 库,用连线表示。见下图。 (v1) ( v2, v4,v7) (v3,v5) (v6,v8)
例:四色问题。
8. 同构 对图G1={ V1,E1 }和图G2={ V2,
E2 } ,如果顶点集合V1与V2之间以及边的集 合E1与E2之间都建立了一一对应关系,并且 图G1的两顶点之间的边对应于图G2对应顶点 的边,则称图G1与图G2是同构的。
9. 赋权图:对一个无向图G的每一条边(vi, vj) ,相应地有一个数wij,则称这样的图G为 赋权图(也称网络图,记为N),wij称为边(vi, vj) 上的权。
3. 在与固定标号点相邻的临时标号点中选取 具有最小标号的点vi给予固定标号,即:
L(vi)=min{ T(vj) } 返回第2步。 4. 当vn得到固定标号时,计算结束。 注: 固定标号L(vi)表示v1到vi的最短距离, 临时标号T(vj)表示v1到vi距离的上界。
能一笔画的图一定是欧拉圈或含有欧拉链。 定理:连通的多重图G是欧拉图的充要条件是G 中无奇点。 推论:连通的多重图G有欧拉链的充要条件是G 中恰有两个奇点。
第二节 树图和图的最小部分树
树图:无圈的连通图称为树图,记为T(V,E)。 2-1 树的性质 性质1:任何树中必存在至少两个次为1的点(悬 挂点)。
若一个简单图中任意两点之间均有边相连,
则称该图为完全图。
对含有n个顶点的完全图,其边数有
Cn2
1n(n1) 2
条。
如果图的顶点能分成两个互不相交的非空
集合V1和V2 ,使在同一集合中任意两个顶点 都不相邻,则称该图为偶图(或二分图)。
若偶图的顶点集合V1、V2之间的每一对不 同顶点之间都有一条边相连,则称该图为完全 偶图。在完全偶图中, V1若有m个顶点, V2 有n个顶点,则其边数共有m×n条。
临时标号
v2(5) v3(2) v4(∞) v5(∞) v6(∞) v7(∞) v2(5) v4(9) v5(∞) v6(6) v7(∞) v4(7) v5(12) v6(6) v7(∞) v4(7) v5(7) v7(12)
v5(7) v7(12)
v7(10)
❖ Dijkstra 算 法 仅 适 合 于 所 有 的 权
Hale Waihona Puke 3-2 求任意两点间最短距离的矩阵算法(Floyd) 设邻接矩阵为D,计算D1=D+D, D2= D1 +D ,
D3= D2 +D ,… 。若Dm+1= Dm ,则Dm中的元 素值即为各点间的最短距离。
Dk+1= Dk +D算法: 例4:
D1=D+D=
+
=
d i(k j) m r d i(ik r 1 ) n d rj
第一节 图的基本概念
一、图的概念
1. 图(无向图) 图是由点与边组成的集合,记为:G=(V,E),
其中V≠Φ,表示图G中点的集合,E表示图G中 边的集合。图中点的个数记为p,称为图的阶; 图中边的条数记为q。
2. 端点、关联边、相邻 若边e可以表示为e=(vi,vj),则称vi和vj
是边e的端点;边e称为点vi和vj的关联边。 若点vi、vj与同一条边关联,称点vi和vj相
7. 子图,部分图 对图G1={ V1,E1 }和图G2={ V2,
E2 } ,若有V1V2和 E1E2 ,则称G1是 G2的一个子图。
若有 V 1V2和 E1E2 ,则称G1是G2 的一个部分图。
定理 :在图G中,所有顶点次之和等于边数
的两倍。即:
d(v) 2q
vV
定理 :在任一图中,奇点的个数必为偶数。
v1 10 0 5 2 7 7 6 10 v2 8 5 0 7 2 5 4 8 v3 7 2 7 0 6 5 4 8 v4 7 7 2 6 0 3 2 6 v5 7 7 5 5 3 0 1 3 v6 6* 6 4 4 2 1 0 4 v7 10 10 8 8 6 3 4 0
(2)找出与v1相邻的点中距离最小的一个, 设为vr,
将L1r= L11+ d1r的值标注在点vr旁的小 方框内,此时, vr也已经标号; (3)从已标号点出发,找出与已标号点相
邻的所有未标号点vp,若有 L 1 p m p L 1i 1 d n 1 p ,L 1 r d rp
则将L1p的值标在vp旁的小方框内,此时,点 vp已得到标号; (4)重复第(3)步,直到vn得到标号。
固定标号
1. v1(0) 2. 3. 2. v1(0) v3(2) 4. 5. 3. v1(0) v3(2) v2(5) 6. 7. 4. v1(0) v3(2) v2(5) 8. v6(6) 9. 5. v1(0) v3(2) v2(5) 10. v6(6) v4(7) 11. 6 v1(0) v3(2) v2(5) 12. v6(6) v4(7) v5(7) 13. 7. v1(0) v3(2) v2(5) 14. v6(6) v4(7) v5(7) 15. v7(10)
次为0的点称为孤立点。 次为1的点称为 悬挂点。
.v6
5. 链,圈,连通图 图中由相邻的点和互不相同的边组成的
交替序列μ称为链。 若链中的所有顶点也不相同,则该链称
为路。 起点与终点重合的链称为圈。起点与终
点重合的路称为回路。 若图中任意两个顶点之间都至少存在一
条链,则称该图为连通图。
6. 完全图,偶图
V4 8 0 2 3 -7 -7 -7
V5 -1 0 1 -3 -3
V6 1 0 1 7 -1 -1 -1
V7 -1 0 5 -5 -5
V8 -3 -5 0 6 6
❖ 为了求出从v1到各个点的最短路,一般采
用反向追踪的方法:如果已知L(vs,vj),那么寻 求一个点vk,使得L(vs,vk)+wkj=L(vs,vj),然后记 录 下 (vk,vj) 。 再 看 L(vs,vk), 寻 求 一 个 点 vi, 使 得 L(vs,vi)+wiK=L(vs,vk)… 依 次 类 推 , 一 直 到 达 L(vs,v1) 为 止 。 这 样 , 从 vS 到 vj 的 最 短 路 是 (vs,…vi,vk,vj)。 ❖ 在 本 例 中 , 由 表 知 , L(v1,v8)=6, 由 于 L(v1,v6)+d68=(-1)+7 记 录 下 v6 , 由 于 L(v1,v3)+d36=L(v1,v6),j 记 录 下 v3 , 由 于 L(v1,v1)+d13=L(v1,v3), 于 是 , 从 v1 到 v8 的 最 短 路是(v1,v3,v6,v8)。
1.若点vi到点vj之间有一条弧,则令权数为dij, 否则,令dij=+∞。 2.由于从vs到vj的最短路是从vs点出发,沿着这 条路到某个点vi,再沿弧(vi,vj)到点vj。显然, 从vs到vi必定是从vs到vj的最短路,否则从vs到 vj的这条路将不是最短路。于是,从vs到vj的最 短距离L(vs,vj)满足以下条件,
-3
v3
2
1
1 v6
-3 7
v8
8 -5 2 3
1
-5
v4
-1
v7
终 点
dij
L(t)(vs,vj)
起 V1 V2 V3 V4 V5 V6 V7 V8 t=1 t=2 t=3 t=4
点
V1 0 -1 -2 3 0 0 0 0
V2 6 0 2 -1 -5 -5 -5
V3 -3 0 -5 1 -2 -2 -2 -2
作业: P172 6.11 6.13
修正狄克斯特拉(标号)算法: 步骤: 1. 对起点v1给予固定标号L(v1)=0,其余点为 临时标号,并记为:
T(vj
)
d1j
v1与vj相邻 (j=1,2...n) v1与vj不相邻
2. 设vi是刚刚得到固定标号的点L(vi) ,修改与 其相邻的临时标号点vj :
性质2:具有n个顶点的树的边数恰好为(n-1)条。 性质3:任何具有n个顶点、(n-1)条边的连通图 是树。
2-2 图的最小部分树(最短树) 如果G1是G2的部分图,又是树图,则称G1
是G2的部分树(或支撑树)。 G2的树枝总长最 小的部分树称为该图的最小部分树。
定理1. 图中任一个点i,若j是与i相邻点中距离 最近的,则边(i, j)必含在该图的最小部分树内。 推 则论 两: 集合把之图间的连所线有的点最分短成边V一和定V 包两含个在集最合小,部 分树内。
L(vs,vj)=min{L(vs,vi)+dij}, i=1,…,p
i
这个关系式L(vs,v1)…L(vs,vp)可利用如
下的递推公式求解
L(1)(vs,vj)=dsj ,j=1…p L(t)(vs,vj)=miin{L(t-1)(vs,vi)+ dij},t=2,3…
3.当计算到第K步时,若对一切的j=1…p,有
L(k)(vs,vj)=L(k-1)(vs,vj)
则 L(k)(vs , vj),j=1…p, 就 是 从 vs 到 各 点 vj
的最短路径。
结论
❖ 设C是赋权函数有向图D中的一个回路。如果回路C的 权S(C)是负数那么称C是D中的一个负回路。
可以证明以下的结论:
1.如果赋权有向图D不含有负回路,那么从vs到任 一点的最短路至多包含P-2个中间点,并且必可取为
例: 在如下图所示的赋权有向图中求从v1到各
点的最短路。
解:利用上述递推公式,将求解结果列出如 下表所示。
可以看出,当t=4时,有:
L(t)(vs,vj)=L(t-1)(vs,vj) j=1…8 。 因 此 , 表 中的最后一列,就是从v1到v1,v2,..,v8的最短
路权。
v2
-1
v5
6
v1
-1 -2
例:有八种化学药品,某些不能放入同一个仓 库,用连线表示。见下图。 (v1) ( v2, v4,v7) (v3,v5) (v6,v8)
例:四色问题。
8. 同构 对图G1={ V1,E1 }和图G2={ V2,
E2 } ,如果顶点集合V1与V2之间以及边的集 合E1与E2之间都建立了一一对应关系,并且 图G1的两顶点之间的边对应于图G2对应顶点 的边,则称图G1与图G2是同构的。
9. 赋权图:对一个无向图G的每一条边(vi, vj) ,相应地有一个数wij,则称这样的图G为 赋权图(也称网络图,记为N),wij称为边(vi, vj) 上的权。