运筹学-邮递员问题

合集下载

(优选)中国邮递员问题

(优选)中国邮递员问题

v1 a
b
c
v2
v3
v4
图1
图2
图1和图2当中哪一个图满足:从图中任何一点出 发,途径每条边,最终还能回到出发点?
试想:一个图应该满足什么条件才能达到上面要 求呢?
凡是能一笔画出的图,奇点的个数最多 有两个。始点与终点重合的一笔画问题, 奇点的个数必是0。
奇点:那个点的角度来看,数有多少条线从连接着那 个点,如果连接那个点的线的数量是奇数条,那这个 点就是奇点,反之,就是偶点。
其实可以通过连接匹配的奇点得到!
v1 2
v8 4
v7
5 v2 6
3 v9 4
3 v6
5
4
4
9
4
v3
v4
v5
图2
这样的可行方案是不是只有一种呢? 在确定一个可行方案后,怎么判断这个方案是
否为最优方案?
若不是最优方案,如何调整这个方案?
第二步:调整可行方案
最优方案必须满足以下(1)(2)两个条件:
欧拉于1736年研究并解决了 此问题, 他用点表示岛和陆
地,两点之间的连线表示连 接它们的桥,将河流、小岛 和桥简化为一个网络,把七 桥问题化成判断连通网络能 否一笔画的问题。之后他发 表一篇论文,证明了上述走 法是不可能的。并且给出了 连通网络可一笔画的充要条 件这一著名的结论。
一笔画问题:从某一点开始画画,笔不离纸, 各条线路仅画一次,最后回到原来的出发点。
O(|V (G) |2| E(G) |)
解决这样的问题,可以采用奇偶 点图上作业法:如果在配送范围 内,街道中没有奇点,那么他就 可以从配送中心出发,走过每条 街道一次,且仅一次,最后回到 配送中心,这样他所走的路程也 就是最短的路程。

第六节 中国邮递员问题

第六节 中国邮递员问题
2
e4
3
4
e3
e4
e1
V4 V2
3
4
e3
2
V2
e2
2
e5
V3
1
e2
2
e5
V3
1
e1
V4
(b)
8 30(a )
V1
V1
2
e4
3
4
e3
e4
e1
V4 V2
3
4
e3
2
V2
e2
2
e5
V3
1
e2
2
e5
V3
1
e1
V4
(d )
(c )

赋权图G的每个闭链上,
重复边权之和不超过该闭链总权数的一半
或该闭链中非重复边权之和. 设重复边权之和为a,非重复边权之和为b:
赋权图g的每个闭链上重复边权之和不超过该闭链总权数的一半或该闭链中非重复边权之和例例8888设有图830a所示的赋权图构造总权数最小的闭的欧拉链214321v2v3v4v1e2e3e4e5e214321v2v3v4v1e2e3e4e5e214321v2v3v4v1e2e3e4e5e2v214321v3v4v1e2e3e4e5ea830bcd赋权图g的每个闭链上重复边权之和不超过该闭链总权数的一半或该闭链中非重复边权之和设重复边权之和为a非重复边权之和为b
定理 8.6
加边法化欧拉图的原则和方法是:
在赋权图G的一些边上,加且仅加一条重 复边,使图G的每个顶点成为偶次顶点 ;

赋权图G的每个闭链上,重复边权之和不 超过该闭链总权数的一半或该闭链中非重复 边权之和.

例8.8 设有图 8-30(a)所示的赋权图,构造 总权数最小的闭的欧拉链.

邮递员问题

邮递员问题

邮递员问题简介邮递员问题(Travelling Salesman Problem,TSP)是一个著名的组合优化问题,被称为计算机科学中的经典问题之一。

该问题起源于邮递员在一天内送货的最短路径问题。

邮递员需要从一个起点出发,经过所有的目标点,最后回到起点。

问题的目标是找到一条最短的路径,使得所有目标点都被访问,同时回到起点。

TSP问题涉及到组合爆炸,通常在计算上是NP难的。

问题描述给定一个有向图和一个起点,邮递员需要从起点出发经过所有的节点,最后回到起点。

每条边的权重表示从一个节点到另一个节点的距离。

找到一条最短路径,使得所有的节点都被访问且回到起点。

解决方法1. 枚举法枚举法是最简单的解决TSP问题的方法。

它通过遍历所有可能的路径,计算每条路径的总长度,并返回最短路径的长度和路径本身。

然而,由于TSP问题是NP难的,当图的规模增加时,枚举法的计算复杂度呈指数增长,很难在合理的时间内求解。

2. 动态规划法动态规划法是解决TSP问题的常用方法之一。

该方法通过将问题划分为子问题,并使用递归的方式求解。

具体而言,我们可以定义一个状态数组dp,其中dp[S][i]表示从起点到节点i,经过节点集合S中的所有节点,最后回到起点的最短路径长度。

那么,我们可以使用如下的递推关系来计算dp数组:dp[S][i] = min(dp[S-{i}][j] + dis(j, i)),其中j∈S,j≠i通过不断更新dp数组,最终可以得到从起点出发经过所有节点并回到起点的最短路径长度。

3. 遗传算法遗传算法是一种启发式优化算法,被广泛应用于解决TSP问题。

它模拟生物进化的过程,通过基因交叉、变异等操作,生成新的个体,并通过评估函数对个体进行选择。

遗传算法的优点是能够在较短的时间内找到接近最优解的解,但不能保证找到全局最优解。

4. 改进算法针对TSP问题,还有一些改进的算法,如蚁群算法、模拟退火算法、禁忌搜索等。

这些算法在不同的问题实例上可能会有更好的表现。

运筹学 中国邮递员问题

运筹学 中国邮递员问题

§4.中国邮递员问题(Chinese Postman Problem)1.问题的提出例5. 一个邮递员从邮局出发投递信件, 然后再返回邮局, 如果他必须至少一次地走过他负责投递范围内的每条街道, 街道路线如下图所示, 问选择怎样的路线才能使所走的路为最短?5 6 78问题的图论表述:在赋权G=[V, E]上找一条经每条边至少一次的权最小的圈。

1960年山东师范学院管梅谷教授首先提出此问题,并设计了一个“奇偶点表上作业法”,后来发现此法不是多项式算法,1973年,Edmonds和Johnson给出一个多项式算法。

2.哥尼斯堡七桥问题18世纪在哥尼斯堡城(今俄罗斯加里宁格勒)的普莱格尔河上有7座桥,将河中的两个岛和河岸连结,如下图所示。

城中的居民经常沿河过桥散步,于是提出了一个问题:能否一次走遍7座桥,而每座桥只许通过一次,最后仍回到起始地点。

3.Euler圈Euler圈:经图G的每条边的简单圈Euler图:具有Euler圈的图Euler图非Euler图下面讨论的图G允许有重边,且重边被认为是有区别的边。

伪Euler 圈:经图G 的每条边至少一次的圈点v 的次:与点V 关联的边的数目奇(偶)点:该点的次为奇(偶)数命题1:G 的奇点个数为偶数命题2:G 中有伪Euler 圈 ⇔ G 无奇点中国邮递员问题可表述为:在图G 中找一条权最小的伪Euler 圈。

对于邮递员来说,有些街道可能会重复走,原问题便转化为尽可能少走重复的 街道。

我们将这些重复的边组成的集合称可行集,即找最小的可行集。

命题3:E *是最小可行集 ⇔ωωμμμ()()()()*()*()e e e E E E e E E ≤∑∑∀μ∈∩∈∩\初等圈重复的边 非重复的边4.算法思路由命题1,简单图G 的奇点个数为偶数,可设为v 1 , v 2 , …, v 2k , 对每个1≤ i ≤k, 找v 2i − 1 至v 2i 的链p i ,将p i 的边重复一次。

中国邮递员问题 ppt课件

中国邮递员问题 ppt课件

中国邮递员问题
管梅谷教授首先提出的方法是奇偶点图上作业 法(1962年)
Edmonds,Johnson(1973年)给出有效算法。
复杂度为 O(|V(G)|2|E(G)|)
中国邮递员问题
中国邮递员问题
解决这样的问题,可以采用奇偶 点图上作业法:如果在配送范围 内,街道中没有奇点,那么他就 可以从配送中心出发,走过每条 街道一次,且仅一次,最后回到 配送中心,这样他所走的路程也 就是最短的路程。
原来的问题可以叙述为在一个有奇点的图中, 要求增加一些重复边,使新图不含奇点,并且 重复边的总权为最小。
我们把使新图不含奇点而增加的重复边简称为 可行(重复边)方案,使总权最小的可行方案 为最优方案。
现在的问题是第一个可行方案如何确定? 在确定一个可行方案后,怎么判断这个方案是
否为最优方案? 若不是最优方案,如何调整这个方案?
Fleury算法的复杂度是 O(| E(G)|2)
中国邮递员问题
求欧拉回路的算法(回路算法)
算法思想: 首先得到一个回路C1, 再在剩
下的图G- C1中求一条与C1有公共顶点的
回路C2, 则C1与 C2构成一个更长的回路,
继续下去可得到含所有边恰好一次的回
路. 回路算法的复杂度是
O(|
E(G) |)
这个问题就是一笔画问题。
中国邮递员问题
管梅谷教授。
上海市人。1957年毕业于华 东师范大学数学系。历任 山东师范大学讲师、副教 授、教授、校长,中国运 筹学会第一、二届常务理 事,山东省数学学会第四 届副理事长,山东省运筹 学会第一届副理事长,山 东省世界语协会理事长。 是第六届全国政协委员。 从事运筹学及其应用的研 究,对最短投递路线问题 的研究取得成果。所提模 型在国外称为中国投递问 题。

运筹学 中国邮递员问题

运筹学 中国邮递员问题

§4.中国邮递员问题(Chinese Postman Problem)1.问题的提出例5. 一个邮递员从邮局出发投递信件, 然后再返回邮局, 如果他必须至少一次地走过他负责投递范围内的每条街道, 街道路线如下图所示, 问选择怎样的路线才能使所走的路为最短?5 6 78问题的图论表述:在赋权G=[V, E]上找一条经每条边至少一次的权最小的圈。

1960年山东师范学院管梅谷教授首先提出此问题,并设计了一个“奇偶点表上作业法”,后来发现此法不是多项式算法,1973年,Edmonds和Johnson给出一个多项式算法。

2.哥尼斯堡七桥问题18世纪在哥尼斯堡城(今俄罗斯加里宁格勒)的普莱格尔河上有7座桥,将河中的两个岛和河岸连结,如下图所示。

城中的居民经常沿河过桥散步,于是提出了一个问题:能否一次走遍7座桥,而每座桥只许通过一次,最后仍回到起始地点。

3.Euler圈Euler圈:经图G的每条边的简单圈Euler图:具有Euler圈的图Euler图非Euler图下面讨论的图G允许有重边,且重边被认为是有区别的边。

伪Euler 圈:经图G 的每条边至少一次的圈点v 的次:与点V 关联的边的数目奇(偶)点:该点的次为奇(偶)数命题1:G 的奇点个数为偶数命题2:G 中有伪Euler 圈 ⇔ G 无奇点中国邮递员问题可表述为:在图G 中找一条权最小的伪Euler 圈。

对于邮递员来说,有些街道可能会重复走,原问题便转化为尽可能少走重复的 街道。

我们将这些重复的边组成的集合称可行集,即找最小的可行集。

命题3:E *是最小可行集 ⇔ωωμμμ()()()()*()*()e e e E E E e E E ≤∑∑∀μ∈∩∈∩\初等圈重复的边 非重复的边4.算法思路由命题1,简单图G 的奇点个数为偶数,可设为v 1 , v 2 , …, v 2k , 对每个1≤ i ≤k, 找v 2i − 1 至v 2i 的链p i ,将p i 的边重复一次。

中国邮递员问题算法

中国邮递员问题算法

G-E(C)仍然无奇数度结点。
?
由于G是连通的,C中应至少存在一点v,使G-
E(C)中有一条包含v的回路C′。(见示意图)
2019/7/8

计算机学院
7
C
v
C'
这样,就可以构造出一条由C和C′组成的 G的回路,其包含的边数比C多,与假设矛盾。 因此,C必是Euler回路,结论成立。
2019/7/8
计算机学院
类似于无向图的讨论,对有向图我们有以下 结论: 定理13-1.2 ⅰ)有向连通图G含有有向欧拉道路,当且仅当
除了两个结点以外,其余结点的入度等于出度, 而这两个例外的结点中,一个结点的入度比出 度大1,另一个结点的出度比入度大1。 ⅱ)有向连通图G含有有向欧拉回路,当且仅当G 中的所有结点的入度等于出度。
计算机学院
16
显然,当这个图是欧拉图时,任何一条欧拉回路都 符合要求;当这个图不是欧拉图时,所求回路必然要重复 通过某些边。
对此,管梅谷曾证明,若图的边数为m,则所求回 路的长度最小是m,最多不超过2m,并且每条边在其中 最多出现两次。中国邮递员问题,一般为在带权连通图 中找一条包括全部边的且权最小的关回键路是。:复制哪些边?
V6
d(V2,V5)=3, d(V3,V5)=4
G
各路径:V1V2(3),V3V5(4)—7
V1V3(5),V2V5(3)—8
V1
V1V5(4),V2V3(2)—6
∴两条长度最短P1=V1V7V5,P2=V2V3
3.构造G’的任一E图就是中国邮递员 V6
问题的解。
G′
V2
3
2
1 3
3 6
V3
3
V7
7

中国邮递员问题

中国邮递员问题

3, 一般情况下的邮路问题
当 G ( V , E )不是欧拉图也无欧拉 道路,即奇次 顶点数大于 2时,邮路必须重复更多 的边. Edmonds 算法
思想:利用奇次结点之 间的完美匹配来确定重 复边, 使欧拉图具有最优邮路 . 步骤: 1,求出 G 的所有奇次结点之间的 最短路径和距离. 2,以 G 的所有奇次结点为结点 (必为偶数),以他们 之间 最短距离为结点之间边 的权,得到一次完全图 G1 ; 3,将 M 中的匹配边( v i , v j)写成 v i 与 v j 之间最短路径 所经过的边集合 E ij ; 4,令 G = G U { E ij ( v i , v j ) ∈ M }, 则G是欧拉图,找到最优解 .
定理: 连通无向图 G (V , E )是欧拉图 每个顶点 的度数均为偶数.
推论1:连通无向图 G为欧拉图 G的边集可划分 为若干简单回路.
二,中国邮路问题
给定一个连通赋权图 G,要求一条回路经过 每边至少一次,且此回 路的权和最小.
1,最理想的情况 若G是一个连通的欧拉图, 则有欧拉回路.这时 每边只需经过一次,回 路长度(权和)为 L(c ) = ∑ w ij
第五节 中国邮递员问题
一,欧拉回路
在连通图中,经过图中 的每边一次且仅一次的 1, 道路为欧拉道路.经过 图中每边一次且仅一次 的 回路称为欧拉回路.
2, 具有欧拉回路的图称为 欧拉图.(简称 E图)
3, 边不重复的道称为简单 道路; 边不重复的回路称为简 单回路.
4, 区别:简单回路不必经 过图的每条边,欧拉回 路 必须经过图的每条边 .
2,若G只有两个奇次点 v i , v j , 则有从 v i 到v j的欧拉 道路,从 v j回到 v i 则必须重复一些边,使 重复边 的总长度最小,转化为 寻找 i 与v j 之间的最短路径 P ; 2, G = G + P ; 令 3, 为E图,的欧拉回路即为最优邮 路. G G

中国邮递员问题

中国邮递员问题

– 第四步:检查有重复边的线路是否是多余的。即检查重复边的两端是 否已有其他线路相连通,如有的话,可将重复边连同原边从线路图中 删去。发现重复边V4V5的两端可通过其他线路相连,可将V4V5及重复 边一起从线路图中删去。即可得送货线路如下:V0—V1—V2—V3— V5—V6—V10—V9—V12—V7—V8—V12—V9—V4—V11—V1—V0。线 路的总长度减少为215千米。总长度较前减少了20千米。
A
6
2 2 I 5 4
H 1
4
G 1 F 5
J 3 K 2
D
3
B 3 C
5
E
图中重复边的总距离W1为18<23(总距离的一半),为可行解; 检查是否每一个闭合圈的重复边的总距离都小于该闭合圈的总距离 的一半。 在圈(A,B,K,J,I,H)中,重复边总距离为8,小于该圈总距离19 的一半,满足要求,不需改进;在圈(B,C,D,K)中,不需改进; 在圈(D,E,F,J)中,不满足要求需改进
A 6 B 3 C 4 5
2
2 I
H 1 J 3 K 2 D
4 3
G 1 F 5
5
E
阅读推荐
1、《物流管理实务》,梁金萍 主编,清华大学出 版社,2010。 2、《运筹学》
– 第二步:考虑到从配货中心出发的送货车辆,在送完所有的门店货物 后,仍需要返回配货中心,故再需对生成的最小树采用中国邮递员线 路的算法进行扩充。 奇点有:V0,V1,V3,V4,V6,V7,V8,V9,V10,V12。故需增加边 V3V5,重复边V0V1,V5V6,V4V9,V9V10,V7V12,V8V12,V9V12等 7条。 粗线部分已给出了送货车量从配送中心出发,送货到10家门店后返回 配货中心的具体路线。即可为:V0—V1—V2—V3—V5—V6—V5—V4— V9—V10—V9—V12—V7—V12—V8—V12—V9—V4—V11—V1—V0。线 路的总长度为251千米。

运筹学最短路邮递员问题PPT课件

运筹学最短路邮递员问题PPT课件


新的T(vj)=min{老的T(vj),p(vi)+ ωij }
• 若T(vj)= p(vi)+ ωij ,则记k(vj )=vi(前点标记);
• 3°找出具有最小T标号的点,将其标号改为p标号。若vt 已获得p
标号,则已找到最短路,由k(vt)反向追踪,就可找出vs 到vt 的最
短路径,p(vt)就是vs 到vt 的最短距离。否则,转2°。
p(v2)
=3 3
p(v1) v1
p(v=30)
=4
6
v2
51 1
v4
7 4
v5
v3 3 2
5
v7
26 v6 9 15
v8
T(v4)=min{6,4+1}=5, k(v4 )=v3
T(v6)=min{7,4+2}=6, k(v6 )=v3
目前,点v4 具有最小T标号,将其标号改为p标号: p(v4)=5;
向继续前进,则最先到达终点vt 的流所走过的路径一定是最短的。
为了实现这一想法,对假想流依次到达的点,依次给予p标号,表
示vs到这些点的最短距离。对于假想流尚未到达的点给予T标号,
表示vs到这些点的最短距离的估计值。具体作法如下:
• 1°标p(vs)=0,其余点标T(vi)=+∞;
• 2°由刚刚获得p标号的vi 点出发,改善它的相邻点vj 的T标号,即
对于点v2 :d(v2)=min{16+31,22+23,30+18,41}=41, v对2→于v点6 v;1 :d(v1)=min{16+41,22+31,30+23,41+18,59}
试确定一个五年内的设备更新计划,使五年内总支出最小。

运筹学最短路邮递员问题

运筹学最短路邮递员问题
法求解,这里介绍一种有效算法—狄克斯拉(Dijkstra)算法,这一
算法是1959年首次被提出来的。该算法适用于每条弧的权数ωij ≥0 情形。算法的基本思路:从发点vs 出发,有一个假想的流沿网络一 切可能的方向等速前进,遇到新节点后,再继续沿一切可能的方向 继续前进,则最先到达终点vt 的流所走过的路径一定是最短的。为 了实现这一想法,对假想流依次到达的点,依次给予p标号,表示vs 到这些点的最短距离。对于假想流尚未到达的点给予T标号,表示vs 到这些点的最短距离的估计值。具体作法如下:
或v1 →v4。
v1 →vv31→5v36 或
v1 →v4→v6
22
30
41
59
23
16
v2v24→1 v61262
v3v33→1 v6 17 30
v4v42→3 v167 23
v5v51→8 v618 v6
41
31
21
2
6
5
08
7
1
17
2
1
9
32
5
9 3
79
66
11 2 13
431 4
9
1
10
21
p(v2)=3 3
v2
p(v1)=0 v1
p(v3)=4
6
51 1
v4
7 4
v5
v3 2 3
5
v7
26 v6 9
15
v8
T(v4)=min{6,4+1}=5, k(v4 )=v3
T(v6)=min{7,4+2}=6, k(v6 )=v3
目前,点v4 具有最小T标号,将其标号改为p标号: p(v4)=5;

中国邮递员问题

中国邮递员问题
一笔画问题:从某一点开始画画,笔不离纸, 各条线路仅画一次,最后回到原来的出发点。
h
5
v1 a
b
c
v2
v3
v4
图1
图2
图1和图2当中哪一个图满足:从图中任何一点出 发,途径每条边,最终还能回到出发点?
试想:一个图应该满足什么条件才能达到上面要
求呢?
h
6
一笔画问题
凡是能一笔画出的图,奇点的个数最多 有两个。始点与终点重合的一笔画问题, 奇点的个数必是0。
求解。
推广的中国邮递员问题: 混合图的中国邮递员问题,有各种限制
的中国邮递员问题,动态网络的中国邮 递员问题。 其他相关问题-旅行售货员(TSP)问题, 灾清巡视路线。
谢谢!
上述两算法都是在连通欧拉图中求欧拉 回路的算法.
h
11
中国邮递员问题
一个邮递员送信,要走完他负责投递的 全部街道,投完后回到邮局,应该怎样 走,使所走的路程最短?
这个问题是我国管梅谷同志1960年首先 求出来的,因此在国际上通称为中国邮 递员问题。在物流活动中,经常会遇到 这样的问题,如:每天在大街小巷行驶 的垃圾车、洒水车、各售货点的送货车 等都需要解决一个行走的最短路程问题。
h
15
求解中国邮递员问题的算法
管梅谷教授首先提出的方法是奇偶点图上作业 法(1962年)
Edmonds,Johnson(1973年)给出有效算法。
复杂度为 O(|V(G)|2|E(G)|)
h
16
求解中国邮递员问题的算法(例)
h
17
求解中国邮递员问题的算法(例)
h
18
解决这样的问题,可以采用奇偶 点图上作业法:如果在配送范围 内,街道中没有奇点,那么他就 可以从配送中心出发,走过每条 街道一次,且仅一次,最后回到 配送中心,这样他所走的路程也

中国邮递员问题

中国邮递员问题
运筹学之 中国邮递员问题
昆明理工大学 信息工程与自动化学院
七桥问题 Seven Bridges Problem(引点)
18世纪著名古典数学问题之一。在哥尼斯 堡的一个公园里,有七座桥将普雷格尔河 中两个岛以及岛与河岸连接起来。问是否 可能从这四块陆地中任一块出发,恰好通 过每座桥一次,再回到起点? (图见P251页,图10-1)
这个问题就是一笔画问题。
定理:连通多重图G有欧拉圈,当且仅当 G中无基点。
推论:连通多重图G有欧拉链,当且仅当 G恰有两个基点。
如图P277 图10-30 所示 ,现在的问题是:
如果我们已经知道图G是可以一笔画的,
首先引入割边概念,设e是连通图G的一个 边,如果从G中丢去e,图就不连通了, 则称e是图G的割边。
第二步:调整可行方案
在书P280图10-34中, 圈(v2,v3,v4,v9,v2)的总长度为24,但圈 上重复边总权为14,大于该圈总长度的 一半,因此可以做一次调整,以[v2,v9], [v9,v4]上的重复边代[v2,v3],[v3,v4]上的 重复边,使重复边总长度下降为17。见 图4
6
v9
4
v6
5
4
4
v3
9
v4
4
v5
图5
检查图5,均满足条件(1)和(2),于 是得到最优方案。图5中的任一欧拉圈都 是汽车的最优配送路线。
如:v1-v2-v9-v8-v1-v8-v7-v6-v5-v4-v9v6-v9-v4-v3-v2-v1是汽车的一条最优配送 路线。
注意:
奇偶点图上作业方法的主要困难在于检 查条件(2)(即在最优方案中,图中每 个圈上重复的重复边的总权不大于该圈 总权的一半),它要求检查每一个圈。 当图中点、边数较多时,圈的个数将会 很多。

运筹学课件4.8 中国邮递员问题

运筹学课件4.8 中国邮递员问题
第六节 中国邮递员问题

哥尼斯堡七桥问题与欧拉图 中国邮递员问题 求解中国邮递员问题的奇偶点图作业法 奇偶点图作业法的改进方法
一、哥尼斯堡七桥问题与欧拉图

哥尼斯堡七桥问题 欧拉图与一笔画问题
A
A C B 哥尼斯堡七桥问题 C D
D
B
二、中国邮递员问题

1962年,管梅谷先生提出 中国邮递员问题 若图中无奇点,欧拉圈即为所求 若图中有奇点,则奇点必为偶数,在奇点间加边 (重复走),使其变为偶数而成欧拉图。 中国邮递员问题是要求所加边的权之和最小。
三、求解中国邮递员问题的奇偶点图作业法


在奇点间加边,构造初始可行方案。 寻找改进可行方案:在两奇点间检查所有链,若 某链的长度小于已加重复边的长度,则在该链的 每边加上重复边,去掉原重复边。 重复以上步骤,直到任意两奇点间加重复边的链 是最短的为止。
求解中国邮递员问题:例子
v2
1 2 3 6
v3
4 2
5 1 2 2
v1
v6
v4
3
v5
例子的初始可行解
v2
1 2 3 6
v3
v4
4 2 3
5 1 2 2
5
v1
v6
2
v5
例子的修正解
v2
1 1 2 3 6
v3
v4
4 2 3
5 1 2 2 2
v1
v6
v5Leabharlann 四、奇偶点作业法的改进方法
奇偶点作业法的瓶颈是需检查太多的链 可以首先求出任意一对奇点之间的最短路, 从中选出总路长最小的组合方案。 也可以由奇点构成偶图,求最小匹配得到 最优解。

中国邮递员问题

中国邮递员问题

中国邮递员问题第一篇:中国邮递员问题运筹学第六组运筹学个人心得之中国邮递员问题我们第六组做的第二次案例就是中国邮递员问题,这个问题是运筹学中的经典命题。

这个案例讲的是:在中国的六个县城,每个县城都有一个县局,县局下面设立若干个邮政所,每天邮递员的任务就是从县局出发,依次到每一个邮政所送邮件,要求每个邮政所都必须去,而且只能去一次。

这就涉及到一个路线的规划问题,怎么走才能使得邮递员走的路最少,而且能够完成任务。

在做题之前考虑了很久,真不知道从何着手,国为以前确实没有接触过这个类型的题,没有一个能够行得通的办法。

后来,我们选定了一个代表性的区域,来尝试求解,国为第六个区域的变量最多,所以就选择这个区域作为突破口。

只要第六个区域求解成功,其它五个区域便迎刃而解了。

首先,我们画了一个由第六区域的十七个点所组成的17*17矩阵,一一对应设定变量,在去除对角线的17个变量之后,我们得到272个变量。

这是一个非常庞大的变量群体,若按传统的线性规划方法求解,求解过程将会变得异常艰辛,而且以前的模板,求解工具都不能求解这么多变量。

所以我们一度陷入混乱,求解工作停滞不前。

后来老师在对这价目案例作初步的讲解的时候,提出了用运输模型来对这个问题进行求解,此话一出,真是如醍醐灌顶,酣畅极了,眼前简直豁然一亮,真想“拍案而起”。

若用运输模型求解,这个问题将会变得非常简单。

一方面由于每行的出发点只能有一个,而每列的终点也只能有一个,这样看来,邮运筹学第六组递员总是变成了一个产销平衡的运输问题,产量和销量都有是1。

这样我们就完成了求解工作,在第一次求解得出结论后,我们画了一个路线图,发现有几个两点循环,没有形成一条大通路,于是我们重新加入了两点循环约束,进行二次求解;在第二次求解完成后,我们又重新画了路线图,结果发现有四点循环于是我们又加入四点循环约束,进行第三次求解,在得到第三次求解的结果后,我们又画出了路线图,这次刚好形成了一个完整的通路,保证了邮递员每点都走到且行走的路线最合理。

中国邮递员问题的求解实例

中国邮递员问题的求解实例

中国邮递员问题的求解实例前面已经讲过,对于欧拉图,可以直接用Fleury算法找出一条欧拉巡回路线;对于半欧拉图,可以先求出奇点u和v之间的最短路径P,令G =G P,贝U G *为欧拉图,然后用Fleury算法来确定一个G *的欧拉巡回,它就是G的最优巡回。

当G有2n个奇点(n>1),可以用Edmonds算法解决,步骤如下:(1) 用Floyd算法求出所有奇点之间的最短路径和距离矩阵。

(2) 用匈牙利法或0-1规划法求出所有奇点之间的最佳配对。

(3) 在原图上添加最佳配对所包含的两两顶点之间的最短路得到欧拉图G *。

⑷用Fleury算法确定一个G *的欧拉巡回,这就是G的最优巡回。

以上步骤的关键是找出2n个奇点的最佳配对,举例如下。

例图3是某区街道示意图,各边的长度数据如下表所示。

现在需要对每条街道找最优巡回,需要先求26个奇点的最佳配对。

先用Floyd算法求出所有42个顶点之间的最短路距离和路径。

程序如下:E=[1 2 10261 4 402........ 注:每一行代表一条边(两个顶点和边长),此处省略59行40 39 198];for i=1:42for j=1:42if j==ia(i,j)=0; elsea(i,j)=inf; end end endfor k=1:62 i=E(k,1);j=E(k,2);a(i,j)=E(k,3);a(j,i)=E(k,3); end[D,R]=floyd(a);图3某区街道示意图然后求26个奇点的最优配对,这可以用Lin go 求解,编写程序如下:MODEL: SETS:4U12°26"30 O3539 40413*27 21 4128* 3338仆2934O114251015• 1724,25201922 23 32313637dot/2,4,5,6,8,9,10,11,12,13,14,15,17,18,19,20,22,24,25,26,28,29,30,36,40,41/;LINKS(dot,dot)| &2 # GT # & 1:C,X;ENDSETSDATA:C=1319 1065 651 650 939 1228 1463 1500 1213 617 895 1590 1709 1377 1033 1112 1652 1761 1853 1418 1832 2124 2151 2479 1687254 668 1173 1462 1751 198 181 402 1140 1418 2113 453 601 945 1635 2175 2284 597 1941 2355 868 1463 1498 2104414 919 1208 1497 1732 435 148 886 1164 1859 679 347 691 1381 1921 2030 823 1687 2101 1094 1689 1724 1850505 794 1083 1318 849 562 472 750 1445 1058 726 382 967 1507 1616 1202 1273 1687 1473 2005 2103 1541289 578 813 1354 1067 471 245 940 1563 1231 887 462 1002 1111 1707 768 1182 1978 2005 2333 1541 289 524 1643 1356 760 534 651 1852 1520 1176 504 828 886 1996 594 1008 2267 2197 2525 1733235 1932 1645 1049 823 362 2141 1809 1465 793 706 597 2285 883 890 2556 2486 2814 20222167 1880 1284 1058 163 2376 2044 1700 1028 507 398 2520 1105 691 2766 2658 2986 2194306 1321 1599 2294 272 505 849 1571 2111 2220 416 1877 2291 687 1282 1317 20081034 1312 2007 531 199 543 1265 1805 1914 675 1571 1985 946 1541 1576 1702360 1411 1203 871 527 577 1117 1226 1347 883 1297 1618 1534 1862 10701101 1563 1231 887 217 757 866 1707 523 937 1978 1894 2222 14302282 1950 1606 884 344 235 2426 942 528 2603 2495 2823 2031332 676 1398 1938 2047 144 1704 2118 415 1010 1045 1824344 1066 1606 1715 476 1372 1786 747 1342 1377 1503722 1262 1371 820 1028 1442 1091 1623 1721 1159540 649 1542 306 720 1813 1729 2057 1265109 2082 598 184 **** **** 2479 16872191 707 293 2368 2260 2588 17961848 2262 271 866 901 1680414 1711 1603 1931 11392075 1967 2295 1503595 630 1409360 832792;ENDDATA图4 26个奇点的最优配对MIN=@SUM(LINKS:C *X);@FOR(LINKS:@BIN(X));@FOR(dot(l):@SUM(LINKS(J,K)| J #EQ# I #OR# K #EQ# I:X(J,K))=1);END运行以上程序,得到最优配对结果为:2与6、4与12、5与13、8与9、10与11、14 与15、17 与25、18 与26、19 与20、22 与28、24 与29、30 与36、40 与41。

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

13
(v2,v1,v8,v7,v6,v5,v4) (v8,v1,v2,v3,v4,v5,v6)
2


定理 一个连通多重图 G 是欧拉图的 充分必要条件是G中无奇点。
证:必要性,显然。 充分性,不妨设,连通多重图 G至少有三 点,对 G 的边数 q 用数学归纳法。因为 G 是连通的, 并且不含奇点,故q>=3。 当 q=3 时,显然 G 是欧拉图。假设 q=n 时成立, 看q=m+1的情形:由于 G是无奇点的连通图,并且 G的点数p>=3,因此存在三个点μ,v,w,使得[μ, v],[w,v]∈E 。从 G 中去掉边 [μ, v],[w,v] ,增 加新的边[μ,w],得到一个新的多重图G1,G1有 q-1条边,且仍不含奇点,G1至多有两个分图。
3

若G1是连通的,则由归纳假设,G1有欧拉圈C1。 把C1中的边[w,μ]换成[μ,v],[w,v],即是G中的 欧拉圈。若G1有两个分图G1’,G1’’,令v在G1’中。 由归纳假设,G1’,G1’’分别有欧拉圈C1’,C1’’,把 C1” 中的边 [μ,w] 换成 [μ,v],C1’ 及 [v,w] 即是 G 中 的欧拉圈。

6

v1-v2-v4-v3-v2-v4-v6-v5-v4-v6-v5-v3-v1,
总长是12。 也可以按照另一条路线走:

v1-v2-v3-v2-v4-v5-v6-v4-v3-v5-v3-v1,
总长是11。 按 照 第 1 条 路 线 走 , 在 边 [v2,v4],[v4,v6],[v6,v5] 上各走 3 两次,按照 第 2 条路线走,在边 [v3,v2],[v3,v5]上各走了 两次。
8
v1-v2-v4-v3-v2-v4-v6-v5-v4-v6-v5-v3-v1
v1
v3
v5
v1
v3
v5
v2
a
v4
v6
v2
v4
b
v6
v1-v2-v3-v2-v4-v5-v6-v4-v3-v5-v3-v1
图8.28
9
中国邮递员问题也可以表示为:在 一个有奇点的连通图中。要求增加一 些重复边,使得新的连通图不含有奇 点,并且增加的重复边总权最小。 我们把增加重复边后不含奇点的新 的连通图叫做邮递路线,而总权最小 的邮递路线叫做最优邮递路线。 (下略) 下面我们来介绍初始邮递 路线的确定,改进,以及一个邮递路 线是否是最优路线的判定标准的方法 ----图G有欧拉链的 充分必要条件是G有且仅有两个奇点。
这个推论的证明留给读者作为习题。 从这个定理的证明可以看出,识别一个连通 图能否一笔画出的条件是它是否有奇点。若有奇 点,就不能一笔画出。若没有奇点,就能够一笔 画出,并回到原出发地。
4

比如前面提到的哥尼斯堡七桥问题, 欧拉把它抽象成具有四个项点,并且都 是奇点的图 8.26 的形状。很明显,一个 漫步者无论如何也不可能重复的走完七 座桥,并最终回到原出发地。图 8.27 。 仅有两个奇点,可以一笔画出。 C
v1 v2
v3
v5
A D 图8.26
B
v4
图8.27
v6
5
二.图上作业法 从一笔画问题的讨论可知,一个邮递员 在他所负责投递的街道范围内,如果街道构 成的图中没有奇点,那么他就可以从邮局出 发,经过每条街道一次,且仅一次,并最终 回到原出发地。但是,如果街道构成的图中 有奇点,他就必然要在某些街道重复走几次。 例如 , 在图 8.27 表示的街道图中, v1 表 示邮局所在地,每条街道的长度是 1 ,邮递 员可以按照以下的路线行走:

10
(一)初始邮递路线的确定方法 由于任何一个图中,奇点的个数为偶数, 所以如果一个连通图有奇点,就可以把它们两 两配成对,而每对奇点之间必有一条链(图是 连通的),我们把这条链的所有边作为重复边 追加到图中去,这样得到的新连通图必无奇点, 这就给出了初始投递路线。 例如,在图 8.29 中, v1 是邮局所在地,并 有四个奇点 v2,v4,v6,v8, 将它们两两配对,比 如v2和v4为一对,v6和v8为一对。
7

在连通图 G 中,如果在边 [vi,vj] 上重复走几次,那么就在点 vi,vj 之 间增加了几条相应的边,每条边的 权和原来的权相等,并把新增加的 边叫做重复边。显然,这条路线构 成新图中的欧拉圈。如图 8.28a, b 所示。并且,邮递员的两条边走路 线总路程的差等于新增加重复边总 权的差。
中国邮递员问题

本章开始提到的邮递员问题,用 图的语言来描述,就是给定一个连通 图 G ,在每条边上有一个非负的权, 要寻求一个圈,经过 G 的每条边至少 一次,并且圈的权数最小。由于这个 问题是我国菅梅谷同志于1962年首先 提出来的,因此国际上长称它为中国 邮递员问题。
1
一.一笔画问题 一笔画问题,也称为遍历问题,是很 有实际意义的。 设有一个连通多重图 G ,如果在 G 中存 在一条链,经过G的每条边一次且仅一次, 那么这条链叫做欧拉链。如在G中存在一 个简单圈,经过G的每条边一次,那么这 个圈叫做欧拉圈一个图如果有欧拉圈, 那么这个图叫做欧拉图。很明显,一个 图G如果能够一笔画出,那么这个图一定 是欧拉图或者含有欧拉链。
11
中国邮递员问题
v1
5 2
v8
3
4
v7
3
v2
5
6
v9
4
4
v6
4 4
v3
9
v4
v5
图8.29
12
在连接 v2 和 v4 的链中任取一条 ,比如链 ( v2,v1,v8,v7,v6,v5,v4 ) , 在 加 入 重 复 边 [v2,v1],[v1,v8],[v8,v7],[v7,v6],[v6,v5],[v5,v4 ]. 同 样 , 任 取 连 接 v6 和 v8 的 一 条 链 (v8,v1,v2,v3,v4,v5,v6), 在 加 入 重 复 边 [v8,v1],[v1,v2],[v2,v3],[v3,v4],[v4,v5],[v5,v6 ].于是,得到图8.30 在连通图 8.30 中,没有奇点,故它是欧拉 图。对于这条邮递路线,重复边的总长 为:2W12+W23+W34+2W45+2W56+W67+W78+2W18=51。
相关文档
最新文档