第11章 图与网络模型最小生成树

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

“管理运筹学软件”有专门的子程序可以解决最小生成树问题。
一、求解最小生成树的破圈算法 算法的步骤: 1、在给定的赋权的连通图上任找一个圈。 2、在所找的圈中去掉一个权数最大的边(如果有两条或两条以
上的边都是权数最大的边,则任意去掉其中一条)。 3、如果所余下的图已不包含圈,则计算结束,所余下的图即为
最小生成树,否则返回第1步。
目录
图与网络 树 最短路问题 最大流问题 最小费用流问题
最小生成树:具有最小权的生成树
4 1
2
3
4 2
2
6
3
3
3
2 5
最小生成树不一定唯一
例4 用破圈算法求图(a)中的一个最小生成树
v2 1 v3
v2 1 v3
v1
3
34 7 v7 2
v4
10
35 4
8
v6 (a) v5
1
4
5
2
3
2
1
树是图论中的重要概念,所谓树就是一个无圈的连通图。
v1
v2
v3
v6
v5
v4
v7
v8
v9
(a)
v1
v2
v3
v4
v5
v6
(b)
v8 v7
图11-11
v1
v2
v8
v3
v4
v9
v5
v7
v6
(c)
图11-11中,(a)就是一个树,而(b)因为图中有圈所以就不 是树, (c)因为不连通所以也不是树。
求解。只要在算法中把从已标号的点到未标号的点的弧的集合改成已标号 的点到未标号的点的边的集合即可。
用Excel求解最短路算法
净流量 = 流出该节点的流量 — 流入该节点的流量
中间节点的平衡值为0,起点为1,终点为-1。各个点的净流量等于平衡值 最短路平衡流
这里我们仅通过Excel电子表格求解,在表格中,我们并不是把每一对连接的点都 输入进去,比如,我们输入了从V7到V10,很明显不需要再输入从V7到V8,从V8到 V10这两对点对,因为他们加起来的距离明显要比前者长。
某人买了一辆价值12000美元的新车,一辆车每 年的维护费用依赖于年初时的车龄,具体费用见下 表。为了避免旧车的高维护费用,他决定卖掉旧车 买新车。旧车的价格依赖于交易时的车龄,见下 表。为计算简单起见,假设任何时间新车的价格不 变均为12000美元。他希望在今后5年内的净费用 最小(即:净费用=购买价+维护价-售出价)。
(v3)孙
a5
a6
a12
a11
(v5) 周
a10
(v6)吴 a13
(v7)陈
图11-3
目录
图与网络 树 最短路问题 最大流问题 最小费用流问题
图论中图是由点和边构成,可以反映一些对象之间的关系。
例如:在一个人群中,对相互认识这个关系我们可以用图来 表示,图11-1就是一个表示这种关系的图。
给了一个无向图G=(V,E),我们保留G的所有点,而删掉部分G的边或 者说保留一部分G的边,所获得的图G,称之为G的生成子图。在图11-12 中,(b)和(c)都是(a)的生成子图。
如果图G的一个生成子图还是一个树,则称这个生成子图为生成树, 在图11-12中,(c)就是(a)的生成树。
最小生成树问题就是指在一个赋权的连通的无向图G中找出一个生成 树,并使得这个生成树的所有边的权数之和为最小。
(a)
图11-12
(b)
(c)
例5、某大学准备对其所属的7个学院办公室计算机联网,这个网络的可 能联通的途径如下图,图中v1,…,v7 表示7个学院办公室,请设计一个网 络能联通7个学院办公室,并使总的线路长度为最短。
图11-14
v2 1 v3
34
7
v1 3
v7 2
v4
10 3
5
8
v6 4
v5
解:此问题实际上是求图11-14的最小生成树,这在例4中已经求 得,也即按照图11-13的(f)设计,可使此网络的总的线路长度为最短, 为19百米。
(v1)
e2

(v3)孙
e1
e3
e4
(v4)
(v2)钱

e5
(v5)

(v6)吴
图11-1
(v7)陈
基本概念:
顶点、弧、有向图、无向图、链、道路、环、连通 图、连通子图、次
3
1
4
1
4
连无顶有弧通道向点连链环向次子路图通图图图
2
3
2
3
由组中 少 连 连连的 示 间 向都连子个有任果个顶列链每 是 起 称道弧边称由顶 数 次点 果 点 环环 次可通图分何每弧点弧通任 ,有有通顶了 可顶一 下 点 为路成是a时的。向点 称:组为顶与以子称图连一一恰,为图意 则一图两 能点个 面 , 一由点,一的以的 为分图为。个个有则一序b图接。两 称个成无运组弧 一 则 个点如一称条是一集图为,原a不弧一称个列a边 顶点 此链顶 动成的 个 这 道果对此同链点个的向点集若每图连与个这链弧和称间 图相点 的,终 弧 个 路的 点链有链一,与图干一的通前公一。,为图图弧和为至 为之 方表点 的 链 。中序为个如条 的个一b图一共序如
v1
3
34 7 v7 2
v4
35
8
4
v6 (b) v5
v2 1 v3
v1
3
34 7 v7 2
v4
35 4
v6 (c) v5
v2 1 v3
v1
3
34 7 v7 2
v4
3
4 v6 (d) v5
v2 1 v3
v1
3
34 7 v7 2
v4
3
v2 1 v3
3
7
v1 3
v7 2
v4
3
v6 (e) v5
图11-13
目录
图与网络 树 最短路问题 最大流问题 最小费用流问题
目录
图与网络 树 最短路问题 最大流问题 最小费用流问题
当然图论不仅仅是要描述对象之间关系,还要研究特定关 系之间的内在规律,一般情况下图中点的相对位置如何、点与 点之间联线的长短曲直,对于反映对象之间的关系并不是重要 的,如对赵等七人的相互认识关系我们也பைடு நூலகம்以用图11-2来表 示,可见图论中的图与几何图、工程图是不一样的。
树:连通且不含环的无向图
树的性质: ¾ 任意两顶点之间必有一条且仅有一条链。 ¾ 去掉任一条边,则树成为不连通图。 ¾ 不相邻的两个顶点间添上一条边,恰好得到一个环。
部分图、生成子图、部分树
部分图 生成子图 部分树
设G=(V,E)和G1=(V1,E1)
如果一如V 个果V,E1部G1⊆=1分==({树VV((u。,,V,v1E),E∈)的1EE1部|⊆)u分,∈E图GV则1G=,v1称(∈=V(GV,V1}1,E,E为)则1,)G称是并的G树且1部,V为1则分G⊆称的图G生;1成为子G图的;
2
TP(6)=8+∞
6
3
TP(3)=3+∞
3
3
2
TP(5)=6+∞
5
• 第0步:P(1)=0,T(i)=+∞; • 第1步:与1相连的标号为2,3,均是T标号,修改2,3的标号,T(2)=min{T(2),P(1)+w12}=4,T(3)=3; 在所有的T标号中,3的标号最小,改3的标号为P(3)=3; • 第2步:修改与3相连的T标号;在所有剩下的T标号中,2的标号最小,改为P(2)=4; • 第3步:修改与2相连的T标号;在所有剩下的T标号中,5的标号最小,改为P(5)=6; • 第4步:修改与5相连的T标号;在所有剩下的T标号中,4的标号最小,改为P(4)=7; • 第5步:修改与4相连的T标号;只剩下节点6是T标号,修改6的标号,P(6)=8。 • 从节点6开始回退,得到最短路。
例:从发电厂(记为节点1)向某城市(记为节点 6)输送电,必须通过中转站(记为节点2,3,4, 5)转送。图给出了两节点间的距离。电力公司希 望选择合适的中转站,使从电厂到城市的传输路线 最短。即从节点1到节点6的最短路径。这就是一个 最短路问题。
城市出租车公司在纽约市为出租车司机已经确定了10个搭乘 车站。为了减少运行时间,提高服务质量以及最大化利用公 司的车队,管理方希望出租车司机尽可能地选择最短路线。 使用下面公路与街道的网络图,请说明司机从车站1到车站10 应选择什么样的路线。运行时间如图所示。
f14 = f43 + f46 + f47 f23 + f43 = f35 + f36 f25 + f35 = f57 f36 + f46 = f67 f57 + f67 + f47 = f12 + f14
fij ≤ cij , (i = 1, 2,L , 6; j = 1, 2,L 7 ) fij ≥ 0, (i = 1, 2,L , 6; j = 1, 2,L 7 )
增广链
CC++中中每每一一条条弧弧是是非非饱饱和和弧弧; ; CC--中中每每一一条条弧弧是是非非零零流流弧弧。。
离离、、费费用用、、容容量量等等。。
4 1
23
4
2
2 6
3
3
3
2 5
左左图图可可以以看看作作:: ¾¾从从发发电电厂厂((节节点点11))向向某某城城市市 ((节节点点66))输输送送电电力力,,必必须须通通过过中中 转转站站((节节点点22,,33,,44,,55))转转送送,, 边边上上数数字字代代表表两两节节点点间间的的距距离离。。 电电力力公公司司希希望望选选择择合合适适的的中中转转 站站,,使使从从电电厂厂到到城城市市的的传传输输路路线线 最最短短。。 ¾¾一一个个输输油油管管道道网网。。节节点点11表表示示管管 道道的的起起点点,,节节点点66表表示示管管道道的的终终 点点,,节节点点22到到55表表示示中中转转站站,,旁旁边边 的的数数字字表表示示该该段段管管道道能能通通过过的的最最 大大输输送送量量。。应应怎怎样样安安排排输输油油线线 路路,,使使从从节节点点11到到节节点点66的的总总输输送送 量量最最大大?? ¾¾一一张张城城市市分分布布图图。。现现在在要要在在各各 城城市市之之间间架架设设电电话话线线,,应应如如何何架架 设设,,使使各各城城市市之之间间既既能能通通话话,,又又 使使总总的的架架设设路路线线最最短短??
P(6)=8
P(5)=6
P(3)=3
P(1)=0
最优路线为:1-5-4-6-7-10,最短距离是25
最大流问题
我们可以为此例题建立线性规划数学模型: 设弧(vi,vj)上流量为fij,网络上的总的流量为F,则有:
目 标 函 数 : max F = f12 + f14 约 束 条 件 : f12 = f23 + f25
v6 (f) v5
例:从发电厂(记为节点1)向某城市(记为节点 6)输送电,必须通过中转站(记为节点2,3,4, 5)转送。图给出了两节点间的距离。电力公司希 望选择合适的中转站,使从电厂到城市的传输路线 最短。即从节点1到节点6的最短路径。这就是一个 最短路问题。
最短路问题
从一特殊的节点出发,找出从该节点到网络中任何其它节点的最短路径问题
e2
赵(v1)
e1 e3
e4
(v2)钱 孙(v3) 李(v4)
周(v5)
图11-2
e5 吴(v6) 陈(v7)
网络
zz点点或或边边带带有有某某种种数数量量指指标标的的图图叫叫网网 络络图图,,简简称称网网络络。。
zz与与点点或或边边有有关关的的某某些些数数量量指指标标,,我我
们们经经常常称称之之为为权权,,权权可可以以代代表表如如距距
例2 电信公司准备在甲、乙两地沿路架设一条光缆线,问如何架设 使其光缆线路最短?下图给出了甲乙两地间的交通图。权数表示两地间公 路的长度(单位:公里)。
V7 (乙地)
17
v2
5
6
15
6 v4
V1
(甲地)
43
10
4
4
2
v5
v6
解:这是一个v3求无向图的最短路的问题。可以把无向图的每一边
(vi,vj)都用方向相反的两条弧(vi,vj)和(vj,vi)代替,就化为有向 图,即可用Dijkstra算法来求解。也可直接在无向图中用Dijkstra算法来
44
31
车龄
0 1 2 3 4 5
21
12
1
7
2
7
31 21
12
3
7
47
12
21
每年的维护费用
2000 4000 5000 9000 12000
57
6
12
交易费用
7000 6000 2000 1000
0
§2 最短路问题
例2最终解得:
最短路径v1 v3 v5 v6 v7,每点的标号见下图
15 (0,s)
如果我们把上面例子中的“相互认识”关系改为“认识” 的
关系,那么只用两点之间的联线就很难刻画他们之间的关系
了,这是我们引入一个带箭头的联线,称为弧。图11-3就是
一个反映这七人“认识”关系的图。相互认识用两条反向的弧
表示。
a1 a2
(v2)钱
a7
a8
(v1) 赵
a14 a15 a3
(v4) 李
a4
a9
V1 (甲地) 10
(13,3) v2 3
V3 (10,1)
17
5 6
V4
(18,5) 4
2
4
V5
(14,3)
(22,6) V7 (乙地) 6 V(166,5)
Dijkstra(迪杰斯特拉法)算法
P(6)=8
P(1)=0 4 1
P(5)=6
P(3)=3
TP(2)=4+∞
PT(4)=7+∞
2
3
4
2
P(1)=0
相关文档
最新文档