中国邮路问题及其算法

合集下载

中国邮路问题

中国邮路问题
3 5 1 2 2 3 1 2 3 6 3 5 1 2 2
3 1 2 3 6
思考: 思考:如何求恰好有 2k (k > 0) 个奇点的赋权图的最优 环游? 环游? 中国邮路问题的一个好算法是Edmonds Edmonds提出的最小 注:中国邮路问题的一个好算法是Edmonds提出的最小 匹配算法。 匹配算法。
例1 下图(a)给出赋权图G , , x, l和m 是G 的四个奇点。根据 v 上述算法,求下图的最优环游。
u
1
v
5
1
w
7
5
x
6
2
y
2
z
8
4
m
6
3
t
l
4
k
(a)
v 解:根据上述算法(1),把x 和 m 配对,和l 配对,取 P = xtlkzm , 1 并对 P 中每条边各添加一条边;又取P2 = vwzkl ,并对 P2 中每条 1 边各添加一条边。得图(b).依次按算法,得到图(c),(d),(e)
u
1
v
5
1
w
7
u
1
v
5
1
w
7
5
5
4
m
x
6
2
y
2
z
8
x
6
2
y
2
z
8
4
m
6
3
6
3
1
t
u
l
4
1
k
t
u
l
4
1
k
1
(b) v
5
w
7
(c ) v
5
w
7

图论及应用课件-欧拉图与中国邮路问题

图论及应用课件-欧拉图与中国邮路问题

解:
d
f
h
a
b
c
e
g
i
j
图G
例4 某博物馆的一层布置如下图,其中边代表走廊, 结点e是入口,结点g是礼品店,通过g我们可以离开博物 馆。请找出从博物馆e进入,经过每个走廊恰好一次,最 后从g处离开的路线。
d
j
b a
h
i
e
g
c
f
10
1
0.5 n 0
0.5
1 2 1.5 t1
0.5
00
1 0.8
0.6 0.4 x 0.2
0.5
00
1 0.8
0.6 0.4 x 0.2
(二)、Fleury算法
该算法解决了在欧拉图中求出一条具体欧拉环游的方 法。方法是尽可能避割边行走。
1、 算法 (1)、 任意选择一个顶点v0,置w0=v0;
8
1
0.5 n 0
0.5
1 2 1.5 t1
0.5
00
1 0.8
0.6 0.4 x 0.2
(2)、 假设迹wi=v0e1v1…eivi已经选定,那么按下述方 法从E-{e1,e2,…,ei}中选取边ei+1:
问题 某地区的双车道公路如图1的图G(单 位是千米),路上积满了雪 。一辆扫雪车从
v1点出发,扫除公路上的所有积雪,最后回 到v1 。
要求1) 请你为扫雪车选择一条路径,使它 经过的总路程最短。
要求2) 现在先进的喷气扫雪车只需沿公 路一侧行驶,就能清除两个车道的积雪。如
v1
4 v2 2
v3
1
v7
2 9
v8
5 3
1
v4
1

中国邮路问题及解决方案

中国邮路问题及解决方案

中国邮路问题及解决方案中国邮递员问题一个邮递员送信,要走完他负责投递的全部街道(所有街道都是双向通行的且每条街道可以经过不止一次),完成任务后回到邮局,应按怎样的路线走,他所走的路程才会最短呢?解决方案1、图论建模由于街道是双向通行的,我们可以把它看成是赋权无向连通图,将路口模型为点,街道模型为边,街道的长度就是每条边的权值,问题转化为在图中求一条回路,使得回路的总权值最小。

1.1最理想的情况若图中有欧拉回路,因为欧拉回路通过所有的边,因此任何一个欧拉回路即为此问题的解。

1.2若G只有两个奇点Vi,Vj则有从Vi到Vj的欧拉迹,从Vj回到Vi则必须重复一些边,使重复边的总长度最小,转化为求从Vi到Vj的最短路径。

算法:1)找出奇点Vi,Vj之间的最短路径P;2)令G’ = G + P;3)G’为欧拉图,G’的欧拉回路即为最优邮路。

1.3一般情况,奇点数大于2的时,邮路必须重复更多的边。

Edmonds算法(匈牙利算法)思想:步骤:1)求出G所有奇点之间的最短路径和距离;2)以G的所有奇点为结点(必为偶数),以他们之间的最短距离为节点之间边的权值,得到一个完全图G1;3)将M中的匹配边(Vi,Vj)写成Vi与Vj之间的最短路径经过的所有边集合Eij;4)令G’ = G U { Eij | (Vi,Vj)属于M},则G’是欧拉图,求出最优邮路。

2、具体模块实现2.1最短路径用 Dijkstra算法计算Dijkstra算法是一种最短路径算法,用于计算一个节点到其它所有节点的最短路径。

2.1.1算法思想:按路径长度递增次序产生最短路径算法:把V分成两组:1)S:已求出最短路径的顶点的集合2)V-S=T:尚未确定最短路径的顶点集合将T中顶点按最短路径递增的次序加入到S中,保证:1)从源点V0到S中各顶点的最短路径长度都不大于从V0到T中任何顶点的最短路径长度2)每个顶点对应一个距离值S中顶点:从V0到此顶点的最短路径长度T中顶点:从V0到此顶点的只包括S中顶点作中间顶点的最短路径长度2.1.2求最短路径步骤1)初始时令 S={V0},T={ 其余顶点},T中顶点对应的距离值若存在<V0,Vi>,d(V0,Vi)为<V0,Vi>弧上的权值;若不存在<V0,Vi>,d(V0,Vi)为∝2)从T中选取一个其距离值为最小的顶点W且不在S中,加入S3)对S中顶点的距离值进行修改:若加进W作中间顶点,从V0到Vi的距离值缩短,则修改此距离值;重复上述步骤2、3,直到S中包含所有顶点,即W=Vi为止2.2图的连通性测试检测用户输入的图是否是连通图,不是的话没办法求解,提醒用户重新输入。

归纳中国邮递员问题.pptx

归纳中国邮递员问题.pptx

精品文档
4
– 第二步:考虑到从配货中心出发的送货车辆,在送完所有的门店货物 后,仍需要返回配货中心,故再需对生成的最小树采用中国邮递员线 路的算法进行扩充。
奇点有:V0,V1,V3,V4,V6,V7,V8,V9,V10,V12。故需增加边 V3V5,重复边V0V1,V5V6,V4V9,V9V10,V7V12,V8V12,V9V12等 7条。
精品文档
6
– 第四步:检查有重复边的线路是否是多余的。即检查重复边的两端是
否已有其他线路相连通,如有的话,可将重复边连同原边从线路图中 删去。发现重复边V4V5的两端可通过其他线路相连,可将V4V5及重复 边一起从线路图中删去。即可得送货线路如下:V0—V1—V2—V3— V5—V6—V10—V9—V12—V7—V8—V12—V9—V4—V11—V1—V0。线 路的总长度减少为215千米。总长度较前减少了20千米。
精品文档
7
– 第五步:要综合考虑问题,在优化第三步时,同时考虑第四步有没有 重复边是多余的。此例题发现:圈V0—V1—V2—V13—V0中,加重复 边的长度为23, 不加重复边的长度为15+9+8=32,故不需要改进,但 是,去掉重复边V0V1,增加重复边V1V2,V0V13,V13V2。则V1V2成 为重复边,发现重复边V1V2的两端可通过其他线路相连,可将V1V2及 重复边一起从线路图中删去。这样去掉重复边V0V1和V1V2,总和长度 为31千米,增加V0V13和V13V2,总和长度为24千米,总长度较前减少 了7千米。即可得送货线路如下: V0—V1—V11—V4—V9—V12—V7— V8—V12—V9—V10—V6—V5—V3—V2—V13—V0。线路的总长度减少 为208千米。

中国邮路问题的excel解法

中国邮路问题的excel解法

中国邮路问题的excel解法
中国邮路问题是一种优化问题,它描述的是在各个城市之间建立邮路时,如何使总投资最少,以便使所有城市都能够相互之间发送信件。

Excel解法是一种常用的解决中国邮路问题的方法。

它的原理是把问题转换为一个数学规划问题,然后用Excel 来求解。

具体步骤如下:
1. 确定目标函数:首先,根据问题的要求,确定目标函数,即最小化总投资。

2. 确定约束条件:其次,根据问题的要求,确定约束条件,即所有城市之间必须存在信件路径。

3. 建立Excel模型:将目标函数和约束条件建立成Excel模型,并用数学规划工具求解最优解。

4. 分析结果:最后,分析Excel求解的结果,找出最优的信件路径方案,即最少的投资实现所有城市之间的信件路径。

(六)中国邮递员问题

(六)中国邮递员问题
该图特点:d(vi )均为偶数
v•1 e 1 v•2
e4
e5
e2
v•3 e 3 v•4
该图不存在欧拉回路
存在奇点
定理 无向连通图G为欧拉图的 充要条件是G中无奇点
证明:必要性
已知G=(V,E)为欧拉图,即存在一条欧拉回路C, C经过G的每一条边,由于G为连通图, 所以G中的每个点至少在C中出现一次
v•35
• • 9
v
4
4
4
4 v9
G1
步骤1、若图中某条边有两条或多于两条的重复边
同时去掉偶数条,使图中每一条边最多有一条重复边
可得到重复边权和较小的欧拉图 G2 G2的重复边权和= 21
v•1 2 •v 6 4 •v 7
• • • v
5
2
6
v
3
5
4
3
v8
v•3 5
4
4
9 v•4 4 •v 9
G2
G2是欧拉图, 重复边权和=21
记 G G C 1 ( V , E ) E , EE1, V是 E中边的端 在 G 中, G 与 C 以 1的公v共 2为顶 起点 点取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中边的
必要性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 )为奇数

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

关于中国邮递员问题和欧拉图应用

关于中国邮递员问题和欧拉图应用
完整的算法流程如下:
1如果G的基图连通且所有顶点的入、出度均不为0,转2,否则返回无解并结束;
2计算所有顶点v的d’(v)值;
3构造网络N;
4在网络N中求最小费用最大流;
5对N中每一条流量f(u,v)的边(u,v),在图G中增加f(u,v)次得到G’;
6在G’中求欧拉回路,即为所求的最优路线。
NPC问题:
if(in[i] +1 == out[i]) ...{
spos = i;
break;
}
}
}
else ...{
for(i=0;i<30;i++) ...{
if(f[i] != -1) ...{
spos = i;
break;
}
}
}
for(i=0;i<30;i++) sort(words[i].begin(), words[i].end());
如果部分街道能够双向通行,部分街道只能单向通行。这个问题已被证明是NPC的。[5]
--------------------------------------------------------------------------------
[1]大城市邮政投递问题及其算法研讨
[2]忽略有向图所有边的方向,得到的无向图称为该有向图的基图。
step = 0;
memset(vis, 0, sizeof(vis));
find_euler(spos);
//memset(vis, 0, sizeof(vis));
for(i=step-1;i>0;i--) ...{
spos = seq[i];
string snext;

2.8中国邮路

2.8中国邮路

V2
2 5
4
V7
3 3
2 6 1 2
V2
2 4 5
4 3
V7
3
V1
4 3
V3 V4
4
V6 V1
4
V3
3 6
2
1
V6
V5 4 V2与V4度数为3,首先使之为偶数。重复部 分长=6,只考虑最小的回路V1,V2,V3,V4。该 回路长=14,未超一半。
V5
V4
V2
2 2 5 4 4 3
4 3
V7
3 3
有向图的中国邮路
d-(vi)+∑fji = d+(vi)+∑fij ∑(fij-fji )= d-(vi)-d+(vi)=d'(i). 如果d'(i)>0,表示进入Vi的边>出去的边,要 使之平衡,须重复d’(i)条出边 ,供应点 如果d'(i)<0,表示进入V i的边<出去的边, 要使之平衡,须重复d’(i)条入边。消费点 如果这些重复边的总长最小,它即是最佳邮 路.
各点利润标示如图,Vs出发到入度超过出度的 结点,使之入度更多,接收点发出边到超收点,使 之更能接收,为什么? 盈者更盈、亏者更亏 Vs 0
0 V2 2 7 5 -1 V3 3 1 2
2
V5
0
V1
8
5
0
Vt
V4
-1
Vs-V2-V4-Vt(起止于超级,经过不平衡点的路) 5 Vs-V2-V4-V3-Vt,路长6,这些路之和=11,这些路 d(Vs)条路,(V2,V4)重复2次,(V4,V3)重复1次. Vs 0 V2 0 V2 2
有向图的中国邮路基本思想

中国邮递员问题——欧拉巡回

中国邮递员问题——欧拉巡回

案例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有欧拉道路的充要条件是ቤተ መጻሕፍቲ ባይዱ最多有 两个奇次顶点。 结论三:任何无向图的奇次顶点数目必为偶数。

中国邮路问题及解决方案

中国邮路问题及解决方案

中国邮路问题及解决方案中国邮递员问题一个邮递员送信,要走完他负责投递的全部街道(所有街道都是双向通行的且每条街道可以经过不止一次),完成任务后回到邮局,应按怎样的路线走,他所走的路程才会最短呢?解决方案1、图论建模由于街道是双向通行的,我们可以把它看成是赋权无向连通图,将路口模型为点,街道模型为边,街道的长度就是每条边的权值,问题转化为在图中求一条回路,使得回路的总权值最小。

1.1 最理想的情况若图中有欧拉回路,因为欧拉回路通过所有的边,因此任何一个欧拉回路即为此问题的解。

1.2 若G只有两个奇点Vi,Vj则有从Vi 到Vj 的欧拉迹,从Vj 回到Vi 则必须重复一些边,使重复边的总长度最小,转化为求从Vi 到Vj 的最短路径。

算法:1) 找出奇点Vi,Vj 之间的最短路径P;2) 令G' = G + P ;3) G'为欧拉图,G'的欧拉回路即为最优邮路。

1.3 一般情况,奇点数大于2 的时,邮路必须重复更多的边。

Edmonds算法(匈牙利算法)思想:步骤:1) 求出G所有奇点之间的最短路径和距离;2) 以G的所有奇点为结点(必为偶数),以他们之间的最短距离为节点之间边的权值,得到一个完全图G1;3) 将M中的匹配边( Vi ,Vj )写成Vi 与Vj 之间的最短路径经过的所有边集合Eij ;4) 令G' = G U { Eij | (Vi,Vj) 属于M},则G'是欧拉图,求出最优邮路。

2、具体模块实现2.1 最短路径用Dijkstra 算法计算Dijkstra 算法是一种最短路径算法,用于计算一个节点到其它所有节点的最短路径。

2.1.1 算法思想:按路径长度递增次序产生最短路径算法:把V 分成两组:1) S:已求出最短路径的顶点的集合2) V-S=T:尚未确定最短路径的顶点集合将T 中顶点按最短路径递增的次序加入到S 中,保证:1) 从源点V0到S 中各顶点的最短路径长度都不大于从V0到T中任何顶点的最短路径长度2) 每个顶点对应一个距离值S 中顶点:从V0到此顶点的最短路径长度T中顶点:从V0到此顶点的只包括S中顶点作中间顶点的最短路径长度2.1.2 求最短路径步骤1)初始时令S={V0},T={ 其余顶点},T 中顶点对应的距离值若存在<V0,Vi> ,d(V0,Vi) 为<V0,Vi>弧上的权值;若不存在<V0,Vi> ,d(V0,Vi) 为∝2)从T 中选取一个其距离值为最小的顶点W且不在S中,加入S3) 对S 中顶点的距离值进行修改:若加进W作中间顶点,从V0到Vi 的距离值缩短,则修改此距离值;重复上述步骤2、3,直到S 中包含所有顶点,即W=Vi为2.2 图的连通性测试检测用户输入的图是否是连通图,不是的话没办法求解,提醒用户重新输入。

中国邮递员问题

中国邮递员问题

管梅谷
管梅谷教授。 上海市人。1957年毕业于华 东师范大学数学系。历任 山东师范大学讲师、副教 授、教授、校长,中国运 筹学会第一、二届常务理 事,山东省数学学会第四 届副理事长,山东省运筹 学会第一届副理事长,山 东省世界语协会理事长。 是第六届全国政协委员。 从事运筹学及其应用的研 究,对最短投递路线问题 的研究取得成果。所提模 型在国外称为中国投递问 题。
求解。
推广的中国邮递员问题: 混合图的中国邮递员问题,有各种限制 的中国邮递员问题,动态网络的中国邮 递员问题。 其他相关问题-旅行售货员(TSP)问题, 灾清巡视路线。

谢谢!
v1 2 5 v2 5 9 v3 v4 图2 3 v8
4
3
v7
6
v9 4 4 4
v6
4
v5

这样就得到初始方案.在这个图中,没有奇点, 故称它为欧拉图。对应于这个可行方案,重复 边总权为51。
思考



这样的可行方案是不是只有一种呢? 在确定一个可行方案后,怎么判断这个方案是 否为最优方案? 若不是最优方案,如何调整这个方案?

欧拉图及求欧拉回路的算法
欧拉行迹—含所有边恰好一次的行迹 欧拉回路—含所有边恰好一次的回路 欧拉图—存在欧拉回路的图

设G是连通图, 下列命题等价: (1) G是欧拉图. (2) 每个顶点的度数都是偶数. (3) G是两两无公共边的圈的并.
欧拉图及求欧拉回路的算法
求欧拉回路的算法(Fleury算法,1921年) 算法思想: “过河拆桥,尽量不走独木桥”. 即若已选定迹 Wi v0e1v1e2 eivi , 从 G Wi 中选 取下一条边 ei 1 使得ei 1 与 vi 相关联, 且ei 1 不是 G Wi 的桥, 除非无边可选.

图论与网络模型_中国邮递员问题

图论与网络模型_中国邮递员问题
● 管梅谷首先提出的方法是奇偶点图上作业法(1962 年) ● Edmonds,Johnson(1973 年)给出有效算法。
Edmonds-Johnson 算法
有奇点的中国邮路问题,这种情形下,有的边要通过至少两次。下图中,边旁写的是权。
图3
(1)在图 3 中,奇点集合为
V 0={v1 , v2 , v3, v4}
(5,6),(9,7)。
邮递员问题
一位邮递员从邮局选好邮件去投递,然后返回邮局,他必须经过由他负责投递的每条街 道至少一次,为这位邮递员设计一条投递线路,使其耗时最少。
用图的语言来描述,就是给定一个连通图 G,在每条边 e 上有一个非负的权 w(e),要寻 求一个回路 W,经过 G 的每条边至少一次,并且回路 W 的总权数最小。
图论中的图是由点和点与点之间的线所组成的。 通常,我们把点与点之间不带箭头的线叫做边,带箭头的线叫做弧。
如果边 [ vi, v j]∈ E ,E 是边集合,那么称 vi, vj 是边的端点,或者称 vi, vj 是相邻的。 如果一个图 G 中,一条边的两个端点是相同的,那么称为这条边是环。 如果两个端点之间有两条以上的边,那么称为它们为多重边。 一个无环,无多重边的图标为简单图。 一个无环,有多重边的图标图称为多重图。
∑ w(e )=min
e∈W
如果 G 是欧拉图,则所求的 W 就是一条欧拉回路。 由于这个问题是我国菅梅谷同志于 1962 年首先提出来的,因此国际上长称它为中国邮递 员问题。
求无奇点连通图的中国邮递员问题的算法(Fleury 算法)
就是求欧拉回路。算法思想:“过河拆桥,尽量不走独木桥”。 例如,下图是欧拉图,设从 v1 开始,寻找一条欧拉回路,如果开始三步是 v1v3v2v1,那 么就失败了,因为回到 v1 之后发现左侧的 v3 上的边还没有用过,而 v1 的关联边已全用过, 不能从 v1 再去通过左侧那些未用过的边了(注意每边只能用一次)。

中国邮递员问题

中国邮递员问题

(割边)
FE算法复习:
(1)任取 v0属于V(G),令W0=v0. (2)设行迹Wi=v0v1v2…vi已选定,则从E(G)-E(W)中 选一条边ei+1,使得ei+1与vi相关联,且非必要时, ei+1 不要选G-E(W)的桥(所谓桥是一条删除后使连通图 不再连通的边)。 (3)反复执行(2), 直至每边e属于E(G)皆入选为止。

情况2:加权图G中有奇次顶时中国邮路问 题的解法(某些边要通过两次)
解法步骤:设G是连通加权图 1)求G中奇次顶集合V0; 2)对V0中的每个顶对u,v,用Dijkstra算法求距离d(u,v); 3)构造加权完全图K|V0|,完全图中顶点即为V0中顶点,边uv 之权为d(u,v); 4)求加权图K|V0|的总权最小的完备匹配M。 5)在G中求M中同一边之端点间的最短轨。 6)把G中在(5)求得的每条最短轨之边变成同权倍边,得 Euler图G’. 7)用FE算法求G’的一条Euler回路W’,W’即为中国邮路。 实例探讨

中国邮递员问题--邮递员从选好邮件去投递,然后返回邮 局,必须经过由他负责的每条街道至少 一次,怎么走耗时最少?
情况 1:邮路可抽象为 Euler图,则所有路经过恰好一次。 情况 2:邮路抽象成的图 G中包含奇次顶。(有的路径需要 重复走)
情况1:仍要遵循一定规则走
定理6.3
若G是Euler图,FE算法终止时得 到的W是Euler回路。
本质:此算法能实现无重复边的一笔画,且
回到出发点。

证明思路 (1)证明是闭行迹。 (2)证明能够经过一切边。(反证不能经过一切边)
基本概念复习
行迹:各边相异的道路。 Euler行迹:在图G中含一切边的行迹。 Euler回路:含一切边的闭行迹。 Euler图:若G中存在Euler回路。

中国邮路问题及其算法

中国邮路问题及其算法

目录1引言 (1)2中国邮路问题 (1)2.1图的概念 (1)2.2道路与回路 (2)2.2.1基本概念 (2)2.2.2欧拉回路 (3)2.3中国邮路问题 (3)2.3.1无向图的中国邮路问题 (4)2.3.2有向图的中国邮路问题 (6)3中国邮路问题的算法 (8)3.1无向图的中国邮路问题的算法 (8)3.1.1奇偶点图上作业法 (8)3.1.2最小权匹配算法 (10)3.1.3破圈法 (12)3.2有向图的中国邮路问题的算法 (14)4中国邮路问题在实际生活中的应用与推广 (15)4.1无向图的中国邮路问题在实际生活中的应用 (15)4.2有向图的中国邮路问题在实际生活中的应用 (21)5结束语 (23)参考文献 (24)致 (25)中国邮路问题及其算法Xxxxxx系本xxxxx班xxxxxx指导教师:xxxxxxx摘要:本文利用图论中的相关概念阐述并解决中国邮路问题,通过比较不同路径,归纳总结,找到其具体算法,再利用上述方法找到的具体算法,求解实例,加以验证,然后将其推广到实际生活中,帮助人们快速找到欧拉回路,即找到省时,省力,省钱的最佳路线,对于图论教学及理论研究均有一定的指导意义。

关键词:中国邮路,欧拉回路,最佳路线。

China's postal problem and its algorithmXxxxxxxxxClass xxxxx,The Department of mathematicsInstructor: xxxxxxAbstract:in this paper, using the relevant concepts in this paper, the graph theory and solve the problem of China post road, through comparing the different paths, sum up, find its specific algorithm, using the above to find the specific algorithm, solving the instance, verified, and then to promote it to real life, to help people quickly find eular loop, namely find to save time, effort, save money, the best way of the graph theory teaching and theoretical research have certain guiding significance.Key words: China post road, eular circuit, the best route.1引言中国邮路问题是我国著名图论学者管梅谷教授首先提出并解决的。

中国邮路问题中的让步和最优化

中国邮路问题中的让步和最优化

2007年第l期河北理科教学研究问题讨论中国邮路问题中的让步和最优化北京航空航天大学理学院邱岳王宁0lo000中国邮路问题(TSP)的原型如下:一个邮递员从邮局出发,遍历他所管辖的每一条街道,最后返回邮局,要求所走过的路程最短.这个问题在图论中抽象为从某一点出发,遍历所有的边之后回到出发点,要求“路程最短”,以P表示顶点的集合,用E表示边的集合,将图表示成为G=(y,E).在各边之上加入相应的权,将“边长”引入到图中,用c(e)表示e这条边的权.用度来表示一个点所连接边的数目.如果所有点的度都是偶数的时候,那么在该图中存在~个欧拉回路即为邮路问题当中的回路.如果存在有奇数度的点,那么图中某些边需要重复走以满足构成回路.因此,可以说中国邮路问题之所以可以成为一个独立的问题,恰恰是因为有这些奇数度点的存在.下边我们从中国邮路问题中一个基本定理的阐述来探讨问题的思想价值所在.,定理设E。

[E是使彤(E‘)=∑c(e)达到最小的重复边的集合,当且仅。

∈E。

当对于图的任何一条回路刁,恒有形(E(刁)nE+)≤Ⅳ(E(C)\E‘).定理中矽(E(C)nE”)表示最后所添加的重复边的权的和,即重复走的路的长度.矽(E(C)、E。

)是表示原有边的权之和,即没有重复走的路的长度.首先看定理的直观表达,由于奇数度点的存在,需要加入边保证每个点的度为偶数,在得到的新图中,我们最后所要求的路径是广。

义上的欧拉回路,即在欧拉路径的基础上让步得到一个满足题目条件的回路.但是这-26・样的让步是否合理,按照定理所说是有限制的,这个限制就是看重复走的路径长度是否超过了没有重复走的路径长度.所以我们在寻找这个新图的回路时不是去检查添加的路径走哪一部分更合适,而是应该在充分利用原来路径的基础上去寻找重复走哪一部分能够得到最优解.因此从让步的角度,这个定理所表达的意思是:对于这个问题的最终求得的最优路径,应该充分利用现有的路径,而不应当过分依赖于后添加的道路.从优化的角度则需要考虑构造回路时选择哪一部分添加路径可以得到最佳的结果.首先将所有的边都加一条平行边,添加的边一部分要留下来,而另外一部分则要被去掉.由此得到了一个构造中国邮路问题的回路的算法,即把所有边添加一条平行边,然后进行删减,在实际操作时,只添加那些度为奇数点的平行边,可保证所有点的度数为偶数.定理提供了两种构造解的方法,一种是让步思想,而另外一种是最优化思想.让步思想的实质是利用特殊回路的解拓展到所有回路的解,即利用特殊回路的解来表示所有回路的解.而最优化的思想则是先求出一个次解,然后对这个次解进行优化得到最终解.这两个方法虽然在理论上是平行的,但是在实际操作中则相差很多,特殊解拓展到~般解的条件是隐式的,而从次解到最终解的约束条件月Ⅱ是显式的.这样就在实际应用中使得最优化方法要比特殊解拓展方法要有更多的优势.而这个问题本身就是一个寻求最优的问题,利用最优化方法求解自然是顺理成章.万方数据。

邮差问题算法

邮差问题算法

邮差问题算法1. 简介邮差问题是指在一个给定的地图上,邮差需要按照一定的规则,将所有的街道都至少走一遍的问题。

这个问题可以被抽象为图论中的一个经典问题,即中国邮政员问题(Chinese Postman Problem,CPP)。

邮差问题算法被广泛应用于城市交通规划、物流配送、电网规划等领域。

通过优化邮差的路线,可以提高效率、减少成本,并且能够更好地满足人们的需求。

本文将介绍邮差问题算法的基本原理、解决方法以及应用领域,并结合实际案例进行说明。

2. 基本原理邮差问题算法的基本原理是通过图论中的欧拉回路(Eulerian circuit)来解决。

欧拉回路是指一条路径,能够经过图中的每一条边恰好一次,并且最终回到起点。

对于一个连通图(connected graph),如果该图的所有顶点的度数(即与该顶点相连的边的数量)都是偶数,那么这个图一定存在欧拉回路。

如果有两个顶点的度数是奇数,那么这个图一定存在欧拉路径,即除了起点和终点,其他顶点的度数都是偶数。

邮差问题的目标是找到一条最短的路径,使得该路径满足欧拉回路或欧拉路径的条件。

3. 解决方法3.1 Fleury算法Fleury算法是一种常用的解决邮差问题的算法。

该算法的基本思想是通过不断选择合适的边,构建欧拉回路或欧拉路径。

具体步骤如下: 1. 选择一个起点,并将其作为当前节点。

2. 在当前节点的邻接边中选择一个未被访问的边。

3. 如果选择该边后,剩余图中存在欧拉回路或欧拉路径,那么选择该边并将其加入路径中,并更新当前节点。

4. 重复步骤2和步骤3,直到无法选择合适的边为止。

5. 如果路径中的边数量等于图中的边数量,那么得到了一个欧拉回路;如果路径中的边数量等于图中的边数量减1,那么得到了一个欧拉路径。

3.2 Hierholzer算法Hierholzer算法是另一种常用的解决邮差问题的算法。

该算法的基本思想是通过分解图中的欧拉回路或欧拉路径,构建最短路径。

中国邮路问题及其算法

中国邮路问题及其算法

目录2中国邮路问题...........................................................................................................................2.1图的概念..................................................................................................................................2.2道路与回路..............................................................................................................................2.2.1基本概念...........................................................................................................................2.2.2欧拉回路...........................................................................................................................2.3中国邮路问题..........................................................................................................................2.3.1无向图的中国邮路问题...................................................................................................2.3.2有向图的中国邮路问题...................................................................................................3中国邮路问题的算法............................................................................................................3.1无向图的中国邮路问题的算法..............................................................................................3.1.1奇偶点图上作业法...........................................................................................................3.1.2最小权匹配算法...............................................................................................................3.1.3破圈法...............................................................................................................................3.2有向图的中国邮路问题的算法..............................................................................................4中国邮路问题在实际生活中的应用与推广 ...............................................................4.1无向图的中国邮路问题在实际生活中的应用......................................................................4.2有向图的中国邮路问题在实际生活中的应用......................................................................5结束语 .........................................................................................................................................参考文献 ........................................................................................................................................致谢..................................................................................................................................................中国邮路问题及其算法Xxxxxx系本xxxxx班xxxxxx指导教师:xxxxxxx摘要:本文利用图论中的相关概念阐述并解决中国邮路问题,通过比较不同路径,归纳总结,找到其具体算法,再利用上述方法找到的具体算法,求解实例,加以验证,然后将其推广到实际生活中,帮助人们快速找到欧拉回路,即找到省时,省力,省钱的最佳路线,对于图论教学及理论研究均有一定的指导意义。

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

目录1引言 (1)2中国邮路问题 (1)2.1图的概念 (1)2.2道路与回路 (2)2.2.1基本概念 (2)2.2.2欧拉回路 (3)2.3中国邮路问题 (3)2.3.1无向图的中国邮路问题 (4)2.3.2有向图的中国邮路问题 (6)3中国邮路问题的算法 (8)3.1无向图的中国邮路问题的算法 (8)3.1.1奇偶点图上作业法 (8)3.1.2最小权匹配算法 (10)3.1.3破圈法 (12)3.2有向图的中国邮路问题的算法 (14)4中国邮路问题在实际生活中的应用与推广 (15)4.1无向图的中国邮路问题在实际生活中的应用 (15)4.2有向图的中国邮路问题在实际生活中的应用 (21)5结束语 (23)参考文献 (24)致谢 (25)中国邮路问题及其算法Xxxxxx系本xxxxx班 xxxxxx指导教师: xxxxxxx摘要:本文利用图论中的相关概念阐述并解决中国邮路问题,通过比较不同路径,归纳总结,找到其具体算法,再利用上述方法找到的具体算法,求解实例,加以验证,然后将其推广到实际生活中,帮助人们快速找到欧拉回路,即找到省时,省力,省钱的最佳路线,对于图论教学及理论研究均有一定的指导意义。

关键词:中国邮路,欧拉回路,最佳路线。

China's postal problem and its algorithmXxxxxxxxxClass xxxxx,The Department of mathematicsInstructor: xxxxxxAbstract:in this paper, using the relevant concepts in this paper, the graph theory and solve the problem of China post road, through comparing the different paths, sum up, find its specific algorithm, using the above to find the specific algorithm, solving the instance, verified, and then to promote it to real life, to help people quickly find eular loop, namely find to save time, effort, save money, the best way of the graph theory teaching and theoretical research have certain guiding significance.Key words: China post road, eular circuit, the best route.1引言中国邮路问题是我国著名图论学者管梅谷教授首先提出并解决的。

它起初为了帮助邮递员选择一条合适道路,使其在完成任务的同时所走路程最短,后来其方法在实际生产生活中有广泛的应用,如邮政部门,扫雪车线路,洒水车路线,警车巡逻路线等,具有很强的实用价值,本文紧抓其实质与核心,通过对传统中国邮路问题研究方法的归纳总结,帮助人们快速找出欧拉回路,实现了将数学知识应用于实际生活中,服务于人类。

2中国邮路问题2.1图的概念定义1 二元组()()()G E G V ,称为图,其中()G V 是非空集合,称为结点集,()G E 是()G V 诸结点之间边的集合,常用()E V G ,=表示图。

(1) 图可分为有限图与无限图两类,现只讨论V ,E 都是有限集,给定某个图()E V G ,=,如果不加特别说明,认为()n v v v v V Λ321,,=,()m e e e e E Λ321,,=,即结点数n V =,边数m E =。

(2) 图G 的边可以是有方向的,也可以是无方向的,它们分别称为有向边 和无向边,用()j i k v v e ,=表示。

定义2 ()E V G ,=的某结点v 所关联的边数称为该结点的度,用()v d 表示。

定义3 任意两结点间最多只有一条边,且不存在自环的无向图称为简单图。

性质1 设()E V G ,=有n 个结点,m 条边,则()()m v d G V v 2=∑∈。

性质2 G 中度为奇数的结点必为偶数个。

定义4 若图()E V G ,=的每条边()j i k v v e ,=都赋以一个实数k w 作为该边的权,则称G 是赋权图,特别地,如果这些权都是正实数,就称G 是正权图,权可以表示该边的长度,时间,费用或容量等,如下图2.1所示:v v 1v 5v 3图2.12.2道路与回路2.2.1 基本概念定义1 有向图()E V G ,=中,若边序列()iq i i i e e e e P Λ321,,=,其中()j i ik v v e ,=,满足i v 是1-ik e 的终点,j v 是1+ik e 的始点,就称P 是G 的一条有向道路,如果iq e 的终点是1i e 的始点,则称P 是G 的一条有向回路。

如果P 中的边没有重复出现,则分别称为简单有向道路和简单有向回路,进而,如果P 中结点也不重复出现,又分别称它们为初级有向道路或初级有向回路,简称为路或回路。

显然,初级有向道路(回路)一定是简单有向道路(回路)。

如下图2.2.1(a)所示:v v 3v 2v 4图2.2.1(a)边序列()7545,,,e e e e 是有向道路;边序列()37545,,,,e e e e e 是有向回路;边序列()2145,,,e e e e 是简单有向道路;边序列()32145,,,,e e e e e 是简单有向回路;边序列()21,e e 是初级有向道路;边序列()321,,e e e 是初级有向回路。

定义2 无向图()E V G ,=中,若点边交替序列()iq iq i i i i v e e v e v P ,,,,12211-=Λ满足ik v ,1+ik v 是ik e 的两个端点,则称P 是G 中的一条链或道路;如果1i iq v v =,则称P 是G 中的一个圈或回路。

如下图2.2.1(b)所示:v 1v 3v 2v 4图2.2.1(b)边序列()6454,,,e e e e 是道路;边序列()36454,,,,e e e e e 是回路;边序列()2154,,,e e e e 是简单道路;边序列()32154,,,,e e e e e 是简单回路; 边序列()21,e e 是初级道路;边序列()321,,e e e 是初级回路。

定义3 设G 是无向图,若G 的任意两结点之间都存在道路,则称G 是连通图,否则称为非连通图。

2.2.2欧拉回路定义1 对于连通的无向图G ,若存在一简单回路,它通过G 的所有边,则这回路称为G 的Euler 回路。

定理1 无向连通图G 存在欧拉回路的充要条件是G 中各结点的度都是偶数。

推论1 若无向连通图G 中只有2个度为奇数的结点,则G 存在欧拉道路。

推论2 若有向连通图G 中各结点的正、负度相等,则G 存在有向欧拉回路。

2.3中国邮路问题中国邮路问题,它是由中国数学家管梅谷教授首先提出而得名。

设邮递员从邮局出发,遍历他所管辖的每一条街道,将信件送到后返回邮局,要求所走的路径最短,当然如若他所管辖的街道构成一欧拉回路,则这欧拉回路便是所求的路径,如若不然,即存在度数为奇数的顶点时,必然有些街道需要走多于1遍,如何寻求最短的路?(基本思路:根据欧拉圈原理,用奇偶点图上作业法,使邮递路线为最短)现将中国邮路问题用图论的语言描述如下:设()E V G ,=是连通图,而且对于所有的E e ∈,都赋以权()0≥e c ,求以点V v ∈出发,通过所有边至少一次,最后返回v 点的回路C ,使得()∑∈Ce e c 达到最小。

2.3.1无向图的中国邮路问题邮递员从邮局出发,走完投递线路后又回到邮局,这就要求邮递员的行走路径必须是欧拉圈,但是由于城市街道及邮递点组成的图有三种基本类型,相应的就有三种类型线路,不管何种类型,归根到底,都要设法使之形成欧拉圈。

(1)图G 里没有奇次定点。

即G 中各结点的度都是偶数,那么G 一定有欧拉回路,显然任何一条欧拉回路都是该问题的解。

如下图2.3.1(a)所示:C B图2.3.1(a)投递路线为:A I H D E G H K J I C B A →→→→→→→→→→→→ 或者可为:A B C I J K H D E G H I A →→→→→→→→→→→→ 这时没有重复行走的街道,当然邮路最短。

(2)图G 中只有2个结点i v ,j v 的度是奇数,则一定存在从i v 到j v 的一条欧拉道路,它经过了G 的各边一次。

在G 中再找一条从j v 到i v 的最短道路ji p ,则ji p G G +='中存在欧拉回路。

这样G '中的欧拉回路,即对应于G 中ji p 的边重复一次而其余边只过一次的回路是一条中国邮路,即最佳邮路。

如下图2.3.1(b)所示:2B C D A图2.3.1(b )如图,B ,E 是奇次顶点,因此要构成一个欧拉回路,E B →线路必须重复走一次,这样存在许多重复走的方案,例如E F B →→;E C F B →→→;E D C B →→→;E C B →→等。

我们计算一下重复走的长度分别为4,6,5,5;当然需要重复走的线路以E F B →→为最好,故巧加边,是使其形成欧拉回路的方法,故此时线路为A FBC F E CDEF B A →→→→→→→→→→→.总长度为21,且此路线是最短的。

(3)图G 中度为奇数的结点数多于2个,则需要添加很多条边,才能形成欧拉回路,且有几对奇次顶点,就要加几条边,此时巧加边问题更加重要。

如下图2.3.1(c):3314A B C L E图2.3.1(c)如图,有8个奇次顶点,它们是B ,C ,E ,H ,G ,J ,I ,L .如何巧妙地把这8个奇次顶点恰当地组合成4对呢?我们参照上一题的例子,便可将8个奇次顶点配成以下4对:LI ,BC ,JG ,HE .这是必须重复走的最短线路,且长度为11,最优投递路线总长为60,其中一条最佳路线为AL I L K J G J I B C H E H G F E D C B A →→→→→→→→→→→→→→→→→→→→2.3.2有向图的中国邮路问题(1) 图G 中含有正度或负度为0的结点,此时不存在最佳邮路。

如图2.3.2(a)所示:B C图2.3.2(a)(2) 图G 中各结点的正,负度相等,此时G 中一定存在有向欧拉回路。

相关文档
最新文档