运筹学课件第八章 图与网络分析(1)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、寻找支撑树的方法
1)破圈法:在图中任取一个圈,从圈中去掉 任一边,对余下的图重复上述操作,即可 得到一个支撑树。
2)避圈法:每一步选取与已选的边构不成圈 的边,直到不能继续为止。
2019/9/21
运筹学
5、最小支撑树
1)赋权图:给图G=(V,E) ,对G中的每一条边 [vi,vj],相应地有一个数wij,则称这样的图G为赋 权图,wij称为边[vi,vj]上的权。
4、多重边:图中某两点之间有多余一条的边,称之为多重
边。
多重图:含有多重边的图。
5、简单图:无环、无多重边的图。
2019/9/21
运筹学
二、连通图
1、链:给定一个图G=(V,E),一个点边的交错序列 (vi1, ei1, vi2, ei2,…,vik-1,eik-1,vik),如果满足 eit=[vit,vit+1] (t=1,2,…,k-1),则称为一条联结vi1和 vik的链,称点vi2, vi3,…,vik-1为链的中间点。
2、树的性质:
1)图G是树的充分必要条件是任意两个顶点 之间恰有一条链。
2)在树中去掉任意一条边则构成一个不连通 图,不再是树;在树中不相邻的两点之间 添加一条边,恰好形成了一个圈,也就不 再是树。
3)树中顶点的个数为P,则其边数必为P-1。
2019/9/21
运筹学
3、支撑树:设图T=(V,E’) 是图G(V,E)的 支撑子图,如果图T=(V, E’) 是一个树,则 称T是G的一个支撑树。
4 12 32
5
2019/9/21
23 2
34
运筹学
2
12
2
2
3
四、一笔划问题
1、次:图中的点V,以V为端点的边的个数,称为V的 次,记为d(V)。
2、定理1:图G=(V,E)中,所有点的次之和是边数的两 倍,即设q边数,则Σd(vi)=2q ,其中viV
3、奇点:次为奇数的点。否则称为偶点。 4、任一图中,奇点的个数为偶数。 5、一笔划: 可以一笔划:没有或仅有两个奇次点的图形
4、环:某一条孤起点=终点,称为环。
5、基础图:给定一个有向图D=(V,A) ,从D中去掉所 有弧上的箭头,所得到的无向图。记之为G(D)。
2019/9/21
运筹学
6、链:设(vi1,ai1,vi2,ai2,…,vik-1,aik-1,vik)是D中 的一个点弧交错序列,如果这个序列在基础图 G(D)中所对应的点边序列是一条链,则称这个点 弧交错序列是D的一条链。
4
V8
2
V9
6 V4
4 V1
2019/9/21
4
6
2
V6Biblioteka Baidu
V5
2
3
4
4
V2
运筹学V3
二、最短路算法
1、情况一: wij≥0(E.W.Eijkstra算法) 原理:Bellman最优性定理 方法:图上作业法(标号法) 标号:对于点,若已求出到Vi的最短值,标号(αi,βi)
αi :表示到的最短路值 βi:表示最短路中最后经过的点 标号法步骤: 1)给V1标号(0, Vs) 2)把所有顶点分成两部分,X:已标号的点;X’未标号的点 考虑X,与Vj已∈标X号’若点不相存邻在的,弧此是问存题在无这解样,的否弧则(转V3i),Vj ), Vi ∈ 3)算选:m取i未n{标αi 号+ w中ij所}=有αj入线的起点与未标号的点Vj进行计 并对其进行标号(αj, Vi),重复2)
称矩阵A为网络G的权矩阵。
2、对于图G=(V,E), ∣V ∣=n,构造一个矩阵A=
(aij)n×n,其中: wij(vi,vj)∈E 0 其他
称矩阵A为网络G的权。
2019/9/21
运筹学
第二节 最短路问题
一、引例:
如下图中V1:油田,V9:原油加工厂 求使从V1到V9总铺路设管道最短方案。
V7
第八章 图与网络分析
图的基本知识 最短路径问题 网络最大流问题 网络最小费用流问题
2019/9/21
运筹学
§1.图的基本知识
一、图
1、图:由一些点及一些点的连线所组成的图形。
若V={V1,V2,…, Vn}是空间n个点的集合 E= { e1,e2,…, em}是空间m个点的集合
满足1)V非空
如没有奇次点:任取一点,它既是起点又是终点。 两个奇次点:分别选为起点和终点。
2019/9/21
运筹学
五、有向图
1、无向图:G(V,E)点集+边集
2、弧:点与点之间有方向的边,叫做弧。 弧集:A={a1,a1,…,am}
3、有向图:由点及弧所构成的图,记为D=(V,A),V,A 分别是D的点集合和弧集合。
2)最小支撑树:如果T=(V,E’) 是G的一个支撑树, 称E’中所有边的权之和为支撑树T的权,记为 w(T),即
w(T)=Σ wij (vi,vj)∈T
如果支撑树T*的权w(T*)是G的所有支撑树的权中最 小者,则称T*是G的最小支撑树(简称最小树)
w(T*)=min w(T)
T
2019/9/21
运筹学
3)求最小树的方法:
方法一(避圈法) 开始选一条最小权的边,以后每一步中, 总从未被选取的边中选一条权最小的边,并使之与已选取 的边不构成圈。
方法二(破圈法) 任取一个圈,从圈中去掉一条权最大的边。 在余下的图中,重复这个步骤,一直到一个不含圈的图为 止,这时的图便是最小树。
例 用破圈法求下图的最小树
7、路:如果(vi1,ai1,vi2,ai2,…,vik-1,aik-1,vik)是D 中的一条链,并且对t=1,2,…,k-1,均有 ait=(vit,vit+1),称之为从vi1到vik的一条路。
8、回路:若路的第一个点和最后一点相同,则称 之为回路。
2019/9/21
运筹学
六、图的矩阵表示
1、网络(赋权图)G=(V,E),其边(vi,vj)有权wij, 构 造矩阵A=(aij)n×n,其中: wij(vi,vj)∈E 0 其他
2)E中每一条线ei是以V中两个点Vs,Vt为端点 3)E中任意两条线之间除端点之外无公共点.
则由V、E构成的二元组合G=(V, E)就是图。
2、子图:已知图G1(V1,E1)若V1 V, E1 E 则称图G1(V1,E1)是图G=(V, E)的子图
3、若在图G中,某个边的两个端点相同,则称e是环。
2、圈:链(vi1,vi2,…,vik)中,若vi1=vik,,则称之为一 个圈。
3、简单链:若链(vi1,vi2,…,vik)中,点 vi1,vi2,…,vik都是不同的,则称之为简单链。
4、连通图:图G中,若任何两个点之间,至少有一 条链。
2019/9/21
运筹学
三、树
1、定义:一个无圈的连通图称为树。
1)破圈法:在图中任取一个圈,从圈中去掉 任一边,对余下的图重复上述操作,即可 得到一个支撑树。
2)避圈法:每一步选取与已选的边构不成圈 的边,直到不能继续为止。
2019/9/21
运筹学
5、最小支撑树
1)赋权图:给图G=(V,E) ,对G中的每一条边 [vi,vj],相应地有一个数wij,则称这样的图G为赋 权图,wij称为边[vi,vj]上的权。
4、多重边:图中某两点之间有多余一条的边,称之为多重
边。
多重图:含有多重边的图。
5、简单图:无环、无多重边的图。
2019/9/21
运筹学
二、连通图
1、链:给定一个图G=(V,E),一个点边的交错序列 (vi1, ei1, vi2, ei2,…,vik-1,eik-1,vik),如果满足 eit=[vit,vit+1] (t=1,2,…,k-1),则称为一条联结vi1和 vik的链,称点vi2, vi3,…,vik-1为链的中间点。
2、树的性质:
1)图G是树的充分必要条件是任意两个顶点 之间恰有一条链。
2)在树中去掉任意一条边则构成一个不连通 图,不再是树;在树中不相邻的两点之间 添加一条边,恰好形成了一个圈,也就不 再是树。
3)树中顶点的个数为P,则其边数必为P-1。
2019/9/21
运筹学
3、支撑树:设图T=(V,E’) 是图G(V,E)的 支撑子图,如果图T=(V, E’) 是一个树,则 称T是G的一个支撑树。
4 12 32
5
2019/9/21
23 2
34
运筹学
2
12
2
2
3
四、一笔划问题
1、次:图中的点V,以V为端点的边的个数,称为V的 次,记为d(V)。
2、定理1:图G=(V,E)中,所有点的次之和是边数的两 倍,即设q边数,则Σd(vi)=2q ,其中viV
3、奇点:次为奇数的点。否则称为偶点。 4、任一图中,奇点的个数为偶数。 5、一笔划: 可以一笔划:没有或仅有两个奇次点的图形
4、环:某一条孤起点=终点,称为环。
5、基础图:给定一个有向图D=(V,A) ,从D中去掉所 有弧上的箭头,所得到的无向图。记之为G(D)。
2019/9/21
运筹学
6、链:设(vi1,ai1,vi2,ai2,…,vik-1,aik-1,vik)是D中 的一个点弧交错序列,如果这个序列在基础图 G(D)中所对应的点边序列是一条链,则称这个点 弧交错序列是D的一条链。
4
V8
2
V9
6 V4
4 V1
2019/9/21
4
6
2
V6Biblioteka Baidu
V5
2
3
4
4
V2
运筹学V3
二、最短路算法
1、情况一: wij≥0(E.W.Eijkstra算法) 原理:Bellman最优性定理 方法:图上作业法(标号法) 标号:对于点,若已求出到Vi的最短值,标号(αi,βi)
αi :表示到的最短路值 βi:表示最短路中最后经过的点 标号法步骤: 1)给V1标号(0, Vs) 2)把所有顶点分成两部分,X:已标号的点;X’未标号的点 考虑X,与Vj已∈标X号’若点不相存邻在的,弧此是问存题在无这解样,的否弧则(转V3i),Vj ), Vi ∈ 3)算选:m取i未n{标αi 号+ w中ij所}=有αj入线的起点与未标号的点Vj进行计 并对其进行标号(αj, Vi),重复2)
称矩阵A为网络G的权矩阵。
2、对于图G=(V,E), ∣V ∣=n,构造一个矩阵A=
(aij)n×n,其中: wij(vi,vj)∈E 0 其他
称矩阵A为网络G的权。
2019/9/21
运筹学
第二节 最短路问题
一、引例:
如下图中V1:油田,V9:原油加工厂 求使从V1到V9总铺路设管道最短方案。
V7
第八章 图与网络分析
图的基本知识 最短路径问题 网络最大流问题 网络最小费用流问题
2019/9/21
运筹学
§1.图的基本知识
一、图
1、图:由一些点及一些点的连线所组成的图形。
若V={V1,V2,…, Vn}是空间n个点的集合 E= { e1,e2,…, em}是空间m个点的集合
满足1)V非空
如没有奇次点:任取一点,它既是起点又是终点。 两个奇次点:分别选为起点和终点。
2019/9/21
运筹学
五、有向图
1、无向图:G(V,E)点集+边集
2、弧:点与点之间有方向的边,叫做弧。 弧集:A={a1,a1,…,am}
3、有向图:由点及弧所构成的图,记为D=(V,A),V,A 分别是D的点集合和弧集合。
2)最小支撑树:如果T=(V,E’) 是G的一个支撑树, 称E’中所有边的权之和为支撑树T的权,记为 w(T),即
w(T)=Σ wij (vi,vj)∈T
如果支撑树T*的权w(T*)是G的所有支撑树的权中最 小者,则称T*是G的最小支撑树(简称最小树)
w(T*)=min w(T)
T
2019/9/21
运筹学
3)求最小树的方法:
方法一(避圈法) 开始选一条最小权的边,以后每一步中, 总从未被选取的边中选一条权最小的边,并使之与已选取 的边不构成圈。
方法二(破圈法) 任取一个圈,从圈中去掉一条权最大的边。 在余下的图中,重复这个步骤,一直到一个不含圈的图为 止,这时的图便是最小树。
例 用破圈法求下图的最小树
7、路:如果(vi1,ai1,vi2,ai2,…,vik-1,aik-1,vik)是D 中的一条链,并且对t=1,2,…,k-1,均有 ait=(vit,vit+1),称之为从vi1到vik的一条路。
8、回路:若路的第一个点和最后一点相同,则称 之为回路。
2019/9/21
运筹学
六、图的矩阵表示
1、网络(赋权图)G=(V,E),其边(vi,vj)有权wij, 构 造矩阵A=(aij)n×n,其中: wij(vi,vj)∈E 0 其他
2)E中每一条线ei是以V中两个点Vs,Vt为端点 3)E中任意两条线之间除端点之外无公共点.
则由V、E构成的二元组合G=(V, E)就是图。
2、子图:已知图G1(V1,E1)若V1 V, E1 E 则称图G1(V1,E1)是图G=(V, E)的子图
3、若在图G中,某个边的两个端点相同,则称e是环。
2、圈:链(vi1,vi2,…,vik)中,若vi1=vik,,则称之为一 个圈。
3、简单链:若链(vi1,vi2,…,vik)中,点 vi1,vi2,…,vik都是不同的,则称之为简单链。
4、连通图:图G中,若任何两个点之间,至少有一 条链。
2019/9/21
运筹学
三、树
1、定义:一个无圈的连通图称为树。