第六章图与网络规划
最短路问题
求最短路有两种算法,一是求从某一点至其他各点之间最短 距离的狄克斯屈拉(Dijkstra)算法;另一种是求网络图上任意 两点之间最短距离的矩阵算法 3.1 Dijkstra算法 此算法仅适用于所有的情形。
图6.7 图6.8(a) 用此方法求v1到v7的最短路的过程如下: 从v1点出发,对v1标号,将L11=0标注在v1旁的小方框内。 (见图6.7(a));
第一年 11
第二年 11
第三年 12
第四年 12
第五年 13
最短路问题
还已知使用不同时间(年)的设备所需要的维修费为:
使用年数 维修费用
0-1 5
1-2 6
2-3 8
3-4 11
4-5 18
可供选择设备更新更新方案显然是很多的。如,每年都购置一 台新设备,则其购置费用为11+11+12+12+13=59,而每年支付维 修费用为5,五年合计为25。于是五年总的支付费用为59+25=84。 又如决定在第一、三、五年各购置一台新设备,这个方案的设 备购置费为11+12+13=36,维修费为5+6+5+6+5=27。五年总的 支付费用为63。 可 可 可
图6.8(b)
图6.8(c)
最短路问题
同标号点v1,v2,v3相邻的未标号的有v4,v5,v6,有 故对点 v6标号,将L16的值标注在v6旁的小方框内。将[v3,v6]加粗,见 (图6.7(d)); 同标号点v1,v2,v3,v6相邻的未标号的点有v4,v5,v7,有
1p
L
= min{L12 + d 25, L12+d 24, L13+d 34, L13+d 36} = min{5+7,5+2,2 7,2+ } 6= + 4=
lg 2
最短路问题
如果计算过程中出现D (m+1) =D m时,计算也可以结束,矩阵中 Dm的各个元素值即为各点之间最短距离。 lg( p − 1) 本例中 lg 2 = lg 6 ≈2.6,所以最多计算到D(3),
lg 2
计算过程如下:
D3=D2 所以,D(2)中的元素表明网络中从i点j的最短距离。
L
16
L
1p
= min{L12 +d25, L12+d24, L13+d34, L16+d64, L16+d65, L16+d67} m +7,5+2,2 7,6+2,6+1,6+6= 14 = = in{5 + } 7=
L L
15
故对v4点和v5同时标号,将 L14=L15 = 7 的值分别标注在v4和v5旁的 小方框内。将[v2,v4],[v6,v5]加粗,见(图6.7(e));
图6.1 图6.2 当问题被提到的数学教授Euler面前,它把每块地用一个点代替,把每 座桥用连接对应点的一条边代替,把问题抽象为图6.2中的图。提出了 判断一般图存在这种走法的充要条件,并给出了必要性的证明。
图的基本概念
1.2基本概念 如果用V点表示研究对象,用E边表示这些对象之间的联系,则图G 可以定义为点和边的集合,记作 G={V,E} 边:两点之间的不带箭头的连线; 弧:两点之间带箭头的连线; 无向图:由点和边构成; 无向图 有向图:由点和弧构成; 有向图 混合图:既有边又有弧的图; 混合图 自回路:一条边的两端重合; 自回路 定向图:如果对无向图G的每条无向边指定一个方向由此得到的有 定向图 向图D,称D为的G定向图;G为D的基本图 基本图; 基本图 简单图:无平行边的图; 简单图 多重图:一个无环但有多重边的图; 多重图 完全图:图中任意两个顶点之间恰有一条边相关联; 完全图
内容提要
第一节 第二节 第三节 第四节 第五节 习题
图的基本概念 树 最短路问题 最大流问题 最小费用最大流问题
第一节 图论的基本概念
1.1图的导引 在哥尼斯堡城中有一条河叫普雷格尔河,河上有七座桥连接两岸及河中 的两个岛(如图6.1所示)。当时困扰当地居民的一个问题是:是否存 在一种走法,使走过桥每座桥恰好一次。虽然当时有许多人相信不存在 这种走法,但没有人能解释其原因。
图的基本概念
权:在图的点或边上表明某种信息的数; 赋权图:每条边都赋上了值; 赋权图 网络图:给点和边(弧)赋以具体的含义和权数的图; 网络图 出度:与顶点相连的边数称为该定点的度数(度数为零的定点称 出度 为孤立点 孤立点,度数为一的点为悬挂点),以该定点为始边的边数为 悬挂点) 孤立点 悬挂点 出度; 入度:以该定点为终边的边数为入度; 入度 子图:删去一条边或一点剩下的图。; 子图 连通图:在无向图中如果任意两点是可达的,否则是不连通图 不连通图; 连通图 不连通图 强连通图:在有向图中如果任意两点是互可达的; 强连通图
树
图6.4
2.1基本概念 树——无回路且连通的无向图G称为树,树中的边成为枝。 枝 生成树——若T是无向图G的生成子图,且T又是树,则称T是G的生成树。 生成树 根树——给有向图T,若顶点x至T中其他顶点u都恰有一条初等链,则称T 根树 为以x为根的根树。 有向树——给有向图T,若顶点x至T中其他顶点u都恰有一条初等链,则 有向树 称T为以x为根的根树。
第六章 图与网络规划
上海工程技术大学——管理学院
引言
图论是应用十分广泛的运筹学分支, 它已广泛地应用在物理学、化学、控制论、 信息论、科学管理、电子计算机等各个领 域。在实际生活、生产科学研究中,有很 多问题可以用图论的理论和方法来解决。 图论的概念和结果来源非常广泛,既有来 自生产实践的问题,也有来自理论研究的 问题。我们把图论在系统管理决策中卓有 成效的一些理论和方法称之为网络规划 网络规划。 网络规划
第三节 最短路问题
最短路问题是图与网络规划中的一个基本问题。许多管理问题 与最短路问题有关。
图6.6 有一批货物要从v1运到v6。这两点间的通路线如图6.5所示,每 条弧旁边的数字表示该弧的长度。总路径最短,那么运输费用也就 越小。为节省运输费用,应该怎样选择运输路线呢? 类似的问题在通信、石油管线铺设、公路网等实际问题中都普 遍存在,有时还要求计算任意两点间的最短距离。
(a) 图6.3
(b)
第二节 树
在各式各样的图中,有一类图是极其简单然而却是很有用的, 这就是树图。树图的定义是无圈的连通图。这类图与大自然中树 的特征相似,因而得名树图。管理组织机构、学科分类和一些决 策过程往往都可以用树图的形式表示。 举一个现实生活中的例子,五个城市,要在它们之间架设电 话线,要求任何两个城市都可以互相通话,并且电话线的根数最 少。 用五个点代表五个城市,如果在某两个城市之间架设电话 线,则在相应的两个点之间连一条边,这样一个电话线网就可以 用一个图来表示了。为了使任何两个城市都可以通话,这样的图 必须使连通的。其次,若图中由圈的话,从圈上任意去掉一条边, 余下的图仍是连通的,这样可以省去一条电话线。因而,满足要 求的电话线网所对应的图必定是不含圈的连通图。图6.4代表了 满足要求的一个电话线网。
最短路问题 同v1相邻的未标号点有v2、v3, L1r =min{d12,d13}=min{5,2}=2= L13 即对点v3标号,将L13的值标注在v3旁的小方框内。将 [v1,v3]加粗,见图(6.7(b)); 同标号点v1,v3 相邻的未标号点有v2、v4、v6,因有 in{0 4 L1p =min{L11+d12,L13+d34,L13+d36}=m +5,2+7,2+}=5=L ,故对v2标号, 12 将L12的值标注在v2旁的小方框内。将[v1,v2]加粗, 见(图6.7(c));
最短路问题
如何制定一个计划使得总的支付费用最少?可以把这个问题转化为最短 路问题。见图6.8。
图6.9 用点代表“第i年年初购进一台新设备”这种状态。(加设一点v6,可以 理解为第5年年底)。从vi到vi+1…v6各画一条弧。弧(vi,vj)表示在 第年年初购进的设备一直使用到第j年年初(即第j-1年底)。 每条弧的权可按已知资料计算出来。如,(v1,v4)是第一年年初购进一 台新设备(支付购置费11),一直使用到第3年年底(支付维修费5+6 +8=19),故(v1,v4)上的权为30。 这样一来,制定一个最优的设备更新计划的问题就等价于寻求从v1到v6 的最短路的问题。
最短路问题
下面介绍矩阵算法的具体步骤: 定义图中相邻两点的距离,若i与j不相邻,令dij=∞,根据图6.6可以得 到:
以上矩阵表明从点到点的直接最短距离。但从点i到点j的最短路不一 定是i→j,可能是i→l→j,i→l→k→j,或i→l→…→k→j。先考虑i与j之 间有一个中间点的情况。
最短路问题
图6.8(d)
图6.8(e)
最短路问题
同标号点相邻的未标号的点只有v7,有 L17 = min{L15 +d57, L16+d67} =m +3 +6= 故对点v7旁小方框内标注L17=10,加粗[v5,v7], in{7 ,6 } 10a 见(图6.7(f))。
图6.8(f) 3.2求任意两点间最短距离的矩阵算法——Floyed算法 Dijkstra算法提供了从网络图中某一点到其他点的最短距离。但 实际问题中往往要求网络任意两点之间的最短距离,如果仍采用 Dijkstra算法对各点分别计算,就显得很麻烦。 Floyed算法还有判断和寻找图中负回路的功能。
最短路问题
3.3应用举例 设备更新问题 某企业事业一台设备,在每年年初,企业领导部门就要决定是购置新 的,还是继续使用旧的,若购置新设备,就要支付一定的购置费用; 若继续使用旧设备,则需支付一定的维修费用。现在的问题是如何 制定一个几年之内的设备更新计划,使得总的支付费用最少。若已 知该设备在各年年初的价格为: