第六章(六)中国邮递员问题
6-5中国邮递员问题

Xi'an post and telecommunications university modern post College
第六章 图与网络
主讲教师 武小平
主要内容
1 欧拉回路与道路
2 奇偶点表上作业法
运
筹
3 中国邮递员问题求解
学
1 欧拉回路与道路
1、 连通图G中,若存在一条道路,经过每边一次且 仅一次,则称这条路为欧拉道路。若存在一条回路,经过 每边一次且仅一次,则称这条回路为欧拉回路。
4
v1
9
v4
4
v7
图5
v3 5 v2
5
v1
2 v6 4
3
6
4
v5
4
9
v4 4
图6
v9 3 v8 4
v7
v3 5 v2 5
v1
2 v6 4
63
4
v5
4
v9
3 v8 4
9
v4
4
v7
图7
v3 2 v6 4
5
v2
6
5
3 4
v5 4
v9
3 v8 4
v1
9
v4
4
v7
图8
v3 2 v6 4
5
v2
6
5
3 4
v5 4
判定标准2 : 在最优邮递员路线上,图中每一个圈的重
复边总权小于或等于该圈总权的一半。
3 中国邮递员问题求解
例1 求解下图5所示网络的中国邮路问题,
图中数字为该边的长。
v3 2 v6 4 v9
5
3
v2
6 v5
运筹学 中国邮递员问题

§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课件

中国邮递员问题
管梅谷教授首先提出的方法是奇偶点图上作业 法(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年毕业于华 东师范大学数学系。历任 山东师范大学讲师、副教 授、教授、校长,中国运 筹学会第一、二届常务理 事,山东省数学学会第四 届副理事长,山东省运筹 学会第一届副理事长,山 东省世界语协会理事长。 是第六届全国政协委员。 从事运筹学及其应用的研 究,对最短投递路线问题 的研究取得成果。所提模 型在国外称为中国投递问 题。
中国邮递员问题

中国邮递员问题第一篇:中国邮递员问题运筹学第六组运筹学个人心得之中国邮递员问题我们第六组做的第二次案例就是中国邮递员问题,这个问题是运筹学中的经典命题。
这个案例讲的是:在中国的六个县城,每个县城都有一个县局,县局下面设立若干个邮政所,每天邮递员的任务就是从县局出发,依次到每一个邮政所送邮件,要求每个邮政所都必须去,而且只能去一次。
这就涉及到一个路线的规划问题,怎么走才能使得邮递员走的路最少,而且能够完成任务。
在做题之前考虑了很久,真不知道从何着手,国为以前确实没有接触过这个类型的题,没有一个能够行得通的办法。
后来,我们选定了一个代表性的区域,来尝试求解,国为第六个区域的变量最多,所以就选择这个区域作为突破口。
只要第六个区域求解成功,其它五个区域便迎刃而解了。
首先,我们画了一个由第六区域的十七个点所组成的17*17矩阵,一一对应设定变量,在去除对角线的17个变量之后,我们得到272个变量。
这是一个非常庞大的变量群体,若按传统的线性规划方法求解,求解过程将会变得异常艰辛,而且以前的模板,求解工具都不能求解这么多变量。
所以我们一度陷入混乱,求解工作停滞不前。
后来老师在对这价目案例作初步的讲解的时候,提出了用运输模型来对这个问题进行求解,此话一出,真是如醍醐灌顶,酣畅极了,眼前简直豁然一亮,真想“拍案而起”。
若用运输模型求解,这个问题将会变得非常简单。
一方面由于每行的出发点只能有一个,而每列的终点也只能有一个,这样看来,邮运筹学第六组递员总是变成了一个产销平衡的运输问题,产量和销量都有是1。
这样我们就完成了求解工作,在第一次求解得出结论后,我们画了一个路线图,发现有几个两点循环,没有形成一条大通路,于是我们重新加入了两点循环约束,进行二次求解;在第二次求解完成后,我们又重新画了路线图,结果发现有四点循环于是我们又加入四点循环约束,进行第三次求解,在得到第三次求解的结果后,我们又画出了路线图,这次刚好形成了一个完整的通路,保证了邮递员每点都走到且行走的路线最合理。
中国邮递员问题——欧拉巡回

案例2:铲雪车的行驶路线问题
铲雪车的行驶路线问题(MCM 90B题)
返回
案例1:双车道公路扫雪模型
问题 某地区的双车道公路如图1的图G(单 位是千米),路上积满了雪 。一辆扫雪车从 v1点出发,扫除公路上的所有积雪,最后回 到v1 。 要求1) 请你为扫雪车选择一条路径,使它 经过的总路程最短。 要求2) 现在先进的喷气扫雪车只需沿公 路一侧行驶,就能清除两个车道的积雪。如 果改用喷气扫雪车来扫雪,再请你为它选择 一条路径,使它经过的总路程最短。
6 8 v4 5 7 3 v5
5 4
9 6 v9 1 v10 2 v15
v6 5 v12
v7
4 3
2 v8
3
v11 1 1 v13 v14
案例1:双车道公路扫雪模型
深度优先搜索法遍历求解
要求1)的解法2 还可用深度优先搜索法(迷宫法则),遍历所有边,且 每边正好来回各走一次。 迷宫任务:从迷宫入口处出发,每个走廊都要搜索,最后 再从入口出来.
求解中国邮递员问题的算法
最小权对集法(Edmonds) 设G是连通加权图。 1) 求G的所有奇次顶点之间的最短路径及其 长度; 2) 以G的所有奇次顶点为顶点集作一完全图, 各条边上的权赋为两端点在原图中的最短路径长度, 得到一个加权完全图,记为G1;求G1的最小权理想 匹配M, 得到奇次顶点的最佳配对; 3)在G中,沿最佳配对奇次顶点间的最短路径 添加重复边得欧拉图G*,G*的欧拉巡回即为所求。
基本概念与基本结论
无向图的情形
结论一:连通图G是欧拉图的充要条件是G无奇次顶 点。
结论二:连通图G有欧拉道路的充要条件是ቤተ መጻሕፍቲ ባይዱ最多有 两个奇次顶点。 结论三:任何无向图的奇次顶点数目必为偶数。
运筹学 中国邮递员问题

§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 的边重复一次。
01-中国邮递员问题

欧拉图及判定定理
顶点可能重复
一进一出
经过一次 且不重复
偶点
如果一个连通图有欧拉环游,即从某个顶点出发,经过该图所有边一次,且不 重复,最后回到出发点,则对中间经过的任一顶点都是一进一出,而出发点开始出 去最后又进来,也是一进一出。注意有的顶点可能有若干次一进一出。不论如何, 都意味着该图的每个顶点都应该是偶点(即进出总共偶数条边)。
中国邮递员问题
厦门大学数学科学学院 金贤安
引言
中 国 邮 递 员 问 题 是 由 山 东 师 范 大 学 管 梅 谷 同 志 1960年首先提出的。
这是数学中为数不多的几个以“中国”命名的问题 或定理之一。
该问题涉及著名的的哥尼斯堡(Königsberg) 七桥问题。
七桥问题是图论和拓扑学的起源。
以交叉路口为顶点,街道为边,街道的长度为边的权得 到 一赋权图,我们称之为街道图。 不妨设邮局在一条街道上。 若街道图是欧拉图,有欧拉环游,无需重复走街道,沿 着 一个欧拉环游作为投递路线即可。
中国邮递员问题
若街道图不是欧拉图,则有些街道需要重复 走,那么中国邮递员问题就变为:重复走哪 些街道,使总路程最短?
给定一个连通图,我们称经过图的所有边一次且只有一次 的走法为一个欧拉通路。
如果进一步该走法还回到出发点,则称之为欧拉环游(回 路)。
具有欧拉环游的图称之为欧拉图。
C
哥尼斯堡问题即图3是否是欧拉图的问题。
A
B
D
图3 七桥问题对应图
欧拉图及判定定理
一笔画问题:什么样的图形可以一笔画成,笔不离纸,而 且每条线都只画一次不准重复?
(1) 在最优方案中,对街道图的任意一边,所添加的平行边的次数不会超过1。 事实上,若在某可行方案中,对街道图的某边,所添加的平行边的次数 大于等于2,那么在该方案中去掉该边2次,将得到一个新的更优的可行 方案,矛盾。
中国邮递员问题小论文

中国邮递员问题摘要:一名邮递员带着要分发的邮件从邮局出发,经过要分发的每个街道,送完邮件后又返回邮局.如果他必须至少一次走过他管辖范围内的每一条街道,如何选择投递路线,使邮递员走尽可能少的路程.这个问题是由我国数学家管梅谷先生(山东师范大学数学系教授)在1962年首次提出的,因此在国际上称之为中国邮递员问题本文主要介绍了中国邮递员问题的基本分析、求解中国邮递员问题的方法以及有关欧拉回路的算法实现。
关键词:中国邮递员欧拉图欧拉回路一、中国邮递员问题的分析中国投递员问题是1960年我们从生产实际中提出的一个数学问题,它是从下述实际问题中抽象出来的:“一个投递员应该怎么选择一条线路,才能既把所有由他负责的信件都送到,而所走的路程又最短”。
在我们开始研究中国投递员问题以前,国外有人研究过所谓旅行售货员的问题,即:“一个售货员要到n个城市去售货,问他应该选择怎样的一条线路,才能既走遍所有城市,并且走的路程最短”。
这是一个著名的难题.当n较大时,即使使用大型电子计算机,也很难解决。
投递员面临的问题显然可以归纳为旅行售货员问题,事实上,只要把投递员必须送的每一个地点看成是一个城市就行了.但是一般来说,投递员每次要到约二、三百个地点送信,如果归纳为旅行售货员问题来解决,将是一个规模很大的问题,是无法解决的.但是,在仔细分析了投递员面临的问题后,我们发现这个问题具有一定的特点,即需要送信的地点一般都是比较密集的排列在街道上的,因此,实际上,我们称这个问题为“最短投递线路问题”,1965年后国外称之为“中国投递员问题”(这个问题是我国数学家管梅谷先生在20世纪60年代提出来的)用图论的语言来描述就是在一个带权图G中,能否找到一条回路C,使C包含G的每条边至少一次且C的长度最短?如若他所管辖的街道构成一欧拉回路,则这欧拉回路便是所求路径。
如若不然,即存在度数为奇数的顶点,必然有些街道需要多走至少一遍,这时用中国邮路问题算法可求出最短路径。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
再把 C从C1的v2点处插C入 1,即得所求欧拉回路
{v3,e3,v4,e9,v 2 ,e 1 ,v 5 0 ,e 5 ,v 6 ,e 6 ,v 1 ,e7,v5,e4,v4,e8,v1,e 1 ,v 2 , e2 , v3}
例:判断下图是否为欧拉图,若是,求出欧拉回路
• • • v 1
e1 e6
若vi 是C的中间点v, i 每出现一次,必关联两条边 如 C : { v 1 , e 1 , v 2 , e 2 , v 3 , v i 1 , e i 1 , v i , e i , v i 1 , , v 1 } d(vi )为偶, 数即vi为偶点
若vi 是C的起点v,i 也是C的终点, vi必关联两条边
Байду номын сангаас
推论 无向连通图G有欧拉道路的充要条件 是G中恰有两个奇点
证明:充分性v: i ,v设 j是G的奇点, 在G上增加一e条 (v边 i ,vj ), 则G中无奇点,所以G存在欧拉回C路 去掉C中的边e,即得以vi为起点,vj为终点的欧拉道路
必要性G : 有设 一条 vi为 以起,v点 j为终点的欧L拉道 在G上增加一e条 (v边 i,vj), 得连通图 G, 把边 e加到 L中得 G的一条欧拉 C,回 即G路 为欧拉图 d(v)为偶 ,v 数 G 在 G 中,,d(vi ),d(vj )为奇数
Euler circuit and Chinese Postman Problem
※歌尼斯堡七桥难题
普莱格尔河
七桥问题的数学模型:
用A、B表示两座小岛,C、D表示两岸, 连线AB表示A、B之间有一座桥。
C•
A•
•B
•
问题简化为:
D
在该图中,从任一点出发,能否通过每条线段 一次且仅仅一次后又回到原来的出发点
在 G中, G以 与 C2的公共 v1为 顶起 点点取一C 个 3
简单 C 3 : {回 v1,e7,v路 5,e4,v4,e8,v1}
v1 e1
• •• v 6
e6
e8
e5
e7
v
5
e10
e
4
G
• v 2
•e 9 e 2 v 3 • • • e 3
v6
•v 4
v1 e1
e6
e8
e5
e7
v
e10
5
e4
记 G GC 1 ( V, E)E, EE1,V是E中边的端 在 G中, G与 以 C1的公共 v2为 顶起 点点取一C 个 2 简
简单 C 2 : { v 2 ,回 e 1,0 v 5 ,e 5 路 ,v 6 ,e 6 ,v 1 ,e 1 ,v 2 }
记 G G C 2 ( V, E ) E, EE1, V是 E中边的
•v 1 e 1
e5 e6
•v 5 e 4
•v 2 • e 2 v 3
v•4 e 3
存在
v 2到
v
的
4
一条欧拉道路:
v•1 e 1 •v 2
• e 4 e 2
v3
v•4 e 3
存在
v
到
3
v
的
4
一条欧拉道路:
• e 2 v 1 e 1 •v 2
•v 3
e3
•v 4
任两点之间都不 存在欧拉道路
{ v 2 ,e 1 ,v 1 ,e 5 ,v 4 ,e 3 ,v 3 ,e 2 ,v 2 ,e 6 ,v 5 ,e 4 ,v 4 } {v3,e3,v4,e2,v2,e1,v1,e4,v4}
v1 e1
• •• v 6
e6
e8
e5
e7
v
5
e10
e
4
v2
v1 e1
• • e 9 e 2 v 3 • • e 3
• • v 4
v6
e6
e8
e5
e7
v
5
e10
e4
•v 2 v•4
•v 1
e8 e7
•v 5 e 4 v•4
G
G
G
把C3从C2的v1点处插 C2, 入得一简单 C,回路
C : { v 2 ,e 1 ,v 0 5 ,e 5 ,v 6 ,e 6 ,v 1 ,e7,v5,e4,v4,e8,v1,e 1 ,v 2 }
d(vi )为偶数 ,即vi为偶点
充分性:若无向连通图G=(V,E)中无奇点,则G为欧拉图
例: G 连通, d(vi )为偶数
v1 e1
• •• v 6
e6
e8
e5
e7
v
5
e10
e
4
•v 2 • e 9 e 2 v 3 v•4 e 3
G
任取一点,如v3,找一个以v3为起点的一个简单回C1路 简单 C 1 : {v 回 3,e3,v路 4,e9,v2,e2,v3}
• 欧拉回路:
欧拉图
圈
设G是一个无向连存 通在 图一 ,个 若回路 G中 ,的 经 每一条边一次, 且则 仅称 一这 次个回回 路路 为欧
v•1 e 1
e6
e5
•v 5 e 4
•v 2 • e 7 e 2 v 3 v•4 e 3
存在欧拉回路:
{ v 1 ,e 1 ,v 2 ,e 2 ,v 3 ,e 3 ,v 4 ,e 7 ,v 2 ,e 5 ,v 5 ,e 4 ,v 4 ,e 6 ,v 1 }
v2 e2 v3
e4 e3 e7
•v 5 e 5 v•4
•v 3
e4
e7
•v 5 e 5 v•4
C 1 : { v 1 ,e 1 ,v 2 ,e 2 ,v 3 ,e 3 ,v 4 ,e 6 ,v 1
C 2 : v 3 ,e 7 ,v 4 ,e 5 ,v 5 ,e 4 ,v 3
欧拉回路 :
{v1,e1,v2,e2,v3,e7,v4,e5,v5,e4,v3,e3,v4,e6,v1
结论:不存在这样一种走法。
类似的问题:一笔画问题
图的一笔画: 可一笔画
不可一笔画
字的一笔画:如“中、日、口、串”等可一笔画 而:“田、目”等不能一笔画
6.6.1 欧拉图与中国邮递员问题 开
• 欧拉道路: 一笔画问题
链
设G是一个无向连存 通在 图一 ,条 若道路 G中 ,的 经 每一条边一次, 且则 仅称 一这 次条道道 路路 为欧
该图特点:d(vi )均为偶数
v•1 e 1 v•2
e4
e5
e2
v
•
3
e3
v•4
该图不存在欧拉回路
存在奇点
定理 无向连通图G为欧拉图的 充要条件是G中无奇点
证明:必要性
已知G=(V,E)为欧拉图,即存在一条欧拉回路C, C经过G的每一条边,由于G为连通图, 所以G中的每个点至少在C中出现一次
对vi V
G
•v 2 v•4
•v 1
e8 e7
•v 5 e 4 v•4
G
简单 C 1 : {v 回 3,e3,v路 4,e9,v2,e2,v3}
简单 C 2 : { v 2 ,回 e 1,0 v 5 ,e 5 路 ,v 6 ,e 6 ,v 1 ,e 1 ,v 2 }
简单 C 3 : {回 v1,e7,v路 5,e4,v4,e8,v1}