大学精品课件:6网络模型.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《大学精品课件:6网络模型.ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 精品 课件 网络 模型
- 资源描述:
-
1、运筹学运运 筹筹 学学运运 筹筹 学学 OperationsResearch Chapter6网络模型网络模型NetworkModeling6.1最小最小(支撑支撑)树问题树问题Minimal(Spanning)TreeProblem6.2最短路问题最短路问题ShortestPathProblem6.3最大流问题最大流问题MaximalFlowProblem6.4旅行售货员与中国邮路问题旅行售货员与中国邮路问题TravelingSalesmanandChinaCarrierProblem图论是专门研究图的理论的一门数学分支,属于离散数图论是专门研究图的理论的一门数学分支,属于离散数学范畴,与运
2、筹学有交叉,它有学范畴,与运筹学有交叉,它有200多年历史,大体可划分多年历史,大体可划分为三个阶段:为三个阶段:第一阶段是从十八世纪中叶到十九世纪中叶,处于萌芽第一阶段是从十八世纪中叶到十九世纪中叶,处于萌芽阶段,多数问题围绕游戏而产生,最有代表性的工作是所谓阶段,多数问题围绕游戏而产生,最有代表性的工作是所谓的的Euler七桥问题,即一笔画问题。七桥问题,即一笔画问题。第二阶段第二阶段从十九世纪中叶到二十世纪中叶,这时,图论问题从十九世纪中叶到二十世纪中叶,这时,图论问题大量出现,如大量出现,如Hamilton问题,地图染色的四色问题以问题,地图染色的四色问题以及可平面性问题等,这时,也出
3、现用图解决实际问题,及可平面性问题等,这时,也出现用图解决实际问题,如如Cayley把树应用于化学领域,把树应用于化学领域,Kirchhoff用树去研究用树去研究电网络等电网络等.第三阶段第三阶段二十世纪中叶以后,由生产管理、军事、交通、运输、二十世纪中叶以后,由生产管理、军事、交通、运输、计算机网络等方面提出实际问题,以及大型计算机使大规计算机网络等方面提出实际问题,以及大型计算机使大规模问题的求解成为可能,特别是以模问题的求解成为可能,特别是以Ford和和Fulkerson建立建立的网络流理论,与线性规划、动态规划等优化理论和方法的网络流理论,与线性规划、动态规划等优化理论和方法相互渗透,
4、促进了图论对实际问题的应用。相互渗透,促进了图论对实际问题的应用。哥尼斯堡(现名加里宁格勒)是欧洲一个城市,哥尼斯堡(现名加里宁格勒)是欧洲一个城市,Pregei河把该城分成两部分,河中有两个小岛,十八世纪时,河河把该城分成两部分,河中有两个小岛,十八世纪时,河两边及小岛之间共有七座桥,当时人们提出这样的问题:两边及小岛之间共有七座桥,当时人们提出这样的问题:有没有办法从某处(如有没有办法从某处(如A)出发,经过各桥一次且仅一次最出发,经过各桥一次且仅一次最后回到原地呢?后回到原地呢?ABCD数学家数学家Euler在在1736年巧妙地给出了这个问题的答案,年巧妙地给出了这个问题的答案,并因此奠
5、定了图论的基础,并因此奠定了图论的基础,Euler把把A、B、C、D四块陆地四块陆地分别收缩成四个顶点,把桥表示成连接对应顶点之间的边,分别收缩成四个顶点,把桥表示成连接对应顶点之间的边,问题转化为从任意一点出发,能不能经过各边一次且仅一问题转化为从任意一点出发,能不能经过各边一次且仅一次,最后返回该点。这就是著名的次,最后返回该点。这就是著名的Euler问题。问题。无向连通图无向连通图G为欧拉图为欧拉图的充要条件是的充要条件是G中所有顶点中所有顶点的度数都是偶数。的度数都是偶数。例例:有有7个人围桌而坐,如果要求每次相邻的人都与以前个人围桌而坐,如果要求每次相邻的人都与以前完全不同,试问不同
6、的就座方案共有多少种?完全不同,试问不同的就座方案共有多少种?用顶点表示人,用边表示两者相邻,因为最初任何两个人用顶点表示人,用边表示两者相邻,因为最初任何两个人都允许相邻,所以任何两点都可以有边相连。都允许相邻,所以任何两点都可以有边相连。假定第一次就座方案是假定第一次就座方案是(1,2,3,4,5,6,7,1),那么第二次就座方案),那么第二次就座方案就不允许这些顶点之间继续相邻,只能从图中删去这就不允许这些顶点之间继续相邻,只能从图中删去这些边。些边。1 12 23 34 45 56 67 7假定第二次就座方案是假定第二次就座方案是(1,3,5,7,2,4,6,1),那么第三次就座方案)
7、,那么第三次就座方案就不允许这些顶点之间继续相邻,只能从图中删去这就不允许这些顶点之间继续相邻,只能从图中删去这些边。些边。假定第三次就座方案是假定第三次就座方案是(1,4,7,3,6,2,5,1),那么第四次就座方案),那么第四次就座方案就不允许这些顶点之间继续相邻,只能从图中删去这就不允许这些顶点之间继续相邻,只能从图中删去这些边,只留下些边,只留下7点孤立点,所以该问题只有三个就座方点孤立点,所以该问题只有三个就座方案。案。例例10-3:哈密顿(:哈密顿(Hamilton)回路是十九世纪英国数回路是十九世纪英国数学家哈密顿提出,给出一个正学家哈密顿提出,给出一个正12面体图形,共有面体图
8、形,共有20个个顶点表示顶点表示20个城市,要求从某个城市出发沿着棱线寻个城市,要求从某个城市出发沿着棱线寻找一条经过每个城市一次而且仅一次,最后回到原处找一条经过每个城市一次而且仅一次,最后回到原处的周游世界线路(并不要求经过每条边)。的周游世界线路(并不要求经过每条边)。例例10-4:一个班级的学生共计选修:一个班级的学生共计选修A、B、C、D、E、F六门课程,其中一部分人同时选修六门课程,其中一部分人同时选修D、C、A,一部分人同时选修一部分人同时选修B、C、F,一部分人同时一部分人同时选修选修B、E,还有一部分人同时选修还有一部分人同时选修A、B,期终期终考试要求每天考一门课,六天内考
9、完,为了减轻考试要求每天考一门课,六天内考完,为了减轻学生负担,要求每人都不会连续参加考试,试设学生负担,要求每人都不会连续参加考试,试设计一个考试日程表。计一个考试日程表。解:以每门课程为一个顶点,共同被选修的课程之解:以每门课程为一个顶点,共同被选修的课程之间用边相连,得图,按题意,相邻顶点对应课程不间用边相连,得图,按题意,相邻顶点对应课程不能连续考试,不相邻顶点对应课程允许连续考试,能连续考试,不相邻顶点对应课程允许连续考试,因此,作图的补图,问题是在图中寻找一条哈密顿因此,作图的补图,问题是在图中寻找一条哈密顿道路,如道路,如CEAFDB,就是一个符合要求就是一个符合要求的考试课程表
10、。的考试课程表。图论是专门研究图的理论的一门数学分支,主要研图论是专门研究图的理论的一门数学分支,主要研究点和线之间的究点和线之间的几何关系。几何关系。设设G=(V,E,)其中:其中:V=(v1,v2,.vm)是)是m个顶点集合;个顶点集合;E=(e1,e2,.en)是)是n条边集合。条边集合。是描述边与顶点之间关系的函数是描述边与顶点之间关系的函数称称G=(V,E,)为为一个图,如果它满足:一个图,如果它满足:(1)V非空;非空;(2)E是一个不与是一个不与V中顶点相交的边集合;中顶点相交的边集合;(3)是关联函数。是关联函数。V,E,称为图的三要素。称为图的三要素。说明:说明:(1)V非空
11、,即没有顶点的图不讨论;非空,即没有顶点的图不讨论;(2)E无非空条件,即允许没有边;无非空条件,即允许没有边;(3)条件()条件(2)是指点只在边的端点)是指点只在边的端点处相交;处相交;(4)任一条边必须与一对顶点关联,)任一条边必须与一对顶点关联,反之不然。反之不然。6.1最小最小(支撑支撑)树问题树问题Minimal(Spanning)TreeProblem5v1v2v3v4v5v6843752618图图61运筹学中研究的图具有下列特征:运筹学中研究的图具有下列特征:(1)用点表示研究对象,用边(有方向或无方向)表示对)用点表示研究对象,用边(有方向或无方向)表示对象之间某种关系。象之
12、间某种关系。(2)强调点与点之间的关联关系,不讲究图的比例大小与)强调点与点之间的关联关系,不讲究图的比例大小与形状。形状。(3)每条边上都赋有一个权,其图称为赋权图。实际中权)每条边上都赋有一个权,其图称为赋权图。实际中权可以代表两点之间的距离、费用、利润、时间、容量等不同的可以代表两点之间的距离、费用、利润、时间、容量等不同的含义。含义。(4)建立一个网络模型,求最大值或最小值。)建立一个网络模型,求最大值或最小值。6.1最小树问题最小树问题Minimaltreeproblem126,Vv vv边用边用vi,vj表示或简记为表示或简记为i,j,集合记为集合记为如图如图61所示,点集合记为所
13、示,点集合记为12,13,5 6E,边上的数字称为权,记为边上的数字称为权,记为wvi,vj、wi,j或或wij,集合记为集合记为12131456,Wwwww连通的赋权图称为网络图,记为连通的赋权图称为网络图,记为 GV,E,W5v1v2v3v4v5v6843752618图图616.1最小树问题最小树问题Minimaltreeproblem6.1.1树的概念树的概念一个无圈并且连通的无向图称为树图或简称树一个无圈并且连通的无向图称为树图或简称树(Tree)。组织机组织机构、家谱、学科分支、因特网络、通讯网络及高压线路网络等构、家谱、学科分支、因特网络、通讯网络及高压线路网络等都能表达成一个树图
14、都能表达成一个树图。可以证明:可以证明:(1)一棵树的边数等于点数减)一棵树的边数等于点数减1;(2)在树中任意两个点之间添加一条边就形成圈;)在树中任意两个点之间添加一条边就形成圈;(3)在树中去掉任意一条边图就变为不连通。)在树中去掉任意一条边图就变为不连通。在一个连通图在一个连通图G中,中,取部分边连接取部分边连接G的所的所有点组成的树称为有点组成的树称为G的的部分树部分树或或支撑树支撑树(SpanningTree)。图图62是图是图61的的部分树。部分树。v1v2v3v4v5v64321图图6276.1最小树问题最小树问题Minimaltreeproblem6.1.2最小部分树最小部分
15、树将网络图将网络图G边上的权看作两点间的长度(距离、费用、时间),边上的权看作两点间的长度(距离、费用、时间),定义定义G的部分树的部分树T的长度等于的长度等于T中每条边的长度之和,记为中每条边的长度之和,记为C(T)。G的所有部分树中长度最小的部分树称为的所有部分树中长度最小的部分树称为最小部分树最小部分树,或简称,或简称为为最小树最小树。最小部分树可以直接用作图的方法求解,常用的有破圈法和最小部分树可以直接用作图的方法求解,常用的有破圈法和加边法。加边法。破圈法破圈法:任取一圈,去掉圈中最长边,直到无圈。:任取一圈,去掉圈中最长边,直到无圈。6.1最小树问题最小树问题Minimaltree
16、problem5v1v2v3v4v5v6843752618图图61【例例6.1】用破圈法求图用破圈法求图61的最小树。的最小树。图图64图图64就是图就是图61的最小部分树,最小树长为的最小部分树,最小树长为C(T)=4+3+5+2+1=15。当一个圈中有多个相同的最长边时,不能同时都去掉,只能去当一个圈中有多个相同的最长边时,不能同时都去掉,只能去掉其中任意一条边。最小部分树有可能不唯一,但最小树的长掉其中任意一条边。最小部分树有可能不唯一,但最小树的长度相同度相同6.1最小树问题最小树问题Minimaltreeproblem加边法加边法:取图:取图G的的n个孤立点个孤立点v1,v2,vn作
17、为一个支撑作为一个支撑图,从最短边开始往支撑图中添加,见圈回避,直到连通(有图,从最短边开始往支撑图中添加,见圈回避,直到连通(有n1条边)条边)v1v2v3v4v5v643521图图65在图在图65中,如果添加边中,如果添加边v1,v2就形成圈就形成圈v1,v2,v4,这时就这时就应避开添加边应避开添加边v1,v2,添加下一条最短边添加下一条最短边v3,v6。破圈法和加边破圈法和加边法得到树的形状可能不一样,但最小树的长度相等法得到树的形状可能不一样,但最小树的长度相等5v1v3v515v2v4v684375268MinC(T)=156.1最小树问题最小树问题Minimaltreeprobl
18、em下一节:最短路问题下一节:最短路问题1.树、支撑树、最小支撑树的概念树、支撑树、最小支撑树的概念2.掌握求最小树的方法:掌握求最小树的方法:(1)破圈法)破圈法(2)加边法)加边法作业:作业:P149T1,4,56.1最小树问题最小树问题Minimaltreeproblem6.2最短路问题最短路问题ShortestPathProblem最短路问题在实际中具有广泛的应用,如管道铺设、线路选择最短路问题在实际中具有广泛的应用,如管道铺设、线路选择等问题,还有些如设备更新、投资等问题也可以归结为求最短等问题,还有些如设备更新、投资等问题也可以归结为求最短路问题路问题求最短路有两种算法:求最短路有
19、两种算法:一是求从某一点至其它各点之间最短离的一是求从某一点至其它各点之间最短离的狄克斯屈拉狄克斯屈拉(Dijkstra)算法算法另一种是求网络图上任意两点之间最短路的另一种是求网络图上任意两点之间最短路的Floyd(弗洛伊德弗洛伊德)矩阵算法。矩阵算法。最短路问题,就是从给定的网络图中找出一点到各点或任意两最短路问题,就是从给定的网络图中找出一点到各点或任意两点之间距离最短的一条路点之间距离最短的一条路6.2.1最短路问题的网络模型最短路问题的网络模型6.2最短路问题最短路问题ShortestPathProblem610123214675811165图图669【例例6.3】图图66中的权中的
20、权cij表示表示vi到到vj的距离(费用、时间),从的距离(费用、时间),从v1修一条公路或架设一条高压线到修一条公路或架设一条高压线到v7,如何选择一条路线使距离如何选择一条路线使距离最短,建立该问题的网络数学模型。最短,建立该问题的网络数学模型。6.2最短路问题最短路问题ShortestPathProblem【解解】设设xij为选择弧为选择弧(i,j)的状态变量,选择弧的状态变量,选择弧(i,j)时时xij1,不不选择弧选择弧(i,j)时时xij0,得到最短路问题的网络模型:得到最短路问题的网络模型:(,)12(,)(,)57131467min102,3,610(,)ijiji jEijk
21、ii jEk iEijZc xxxxxxixxxi jE或1,6.2最短路问题最短路问题ShortestPathProblem6.2.2有向图的狄克斯屈拉有向图的狄克斯屈拉(Dijkstra)标号算法标号算法点点标号:标号:b(j)起点起点vs到点到点vj的最短路长;的最短路长;边边标号:标号:k(i,j)=b(i)+cij,步骤:步骤:(1)令起点的标号;令起点的标号;b(s)0。先求先求有向图的最短路,设网络图的起点是有向图的最短路,设网络图的起点是vs,终点是终点是vt ,以以vi为起为起点点vj为终点的弧记为(为终点的弧记为(i,j),距离为距离为cij(2)找出所有已标号找出所有已标
22、号vi未未标号标号vj的弧集合的弧集合B=(i,j),如果这样如果这样的弧不存在或的弧不存在或vt已已标号则计算结束;标号则计算结束;(3)计算集合计算集合B中弧中弧k(i,j)=b(i)+cij的标号的标号(4)选一个点标号选一个点标号返回到第返回到第(2)步。步。)(,),(|),(min)(lbvBjijiklblj处标号在终点6.2最短路问题最短路问题ShortestPathProblem610123214675811165图图6690610129209186161217162432182929【例例6.4】用用Dijkstra算法求图算法求图66所示所示v1到到v7的最短路及最短路长
23、的最短路及最短路长v1到到v7的最短路为:的最短路为:p17=v1,v2,v3,v5,v7,最短路长为最短路长为L17=296.2最短路问题最短路问题ShortestPathProblem14从上例知,只要某点已标号,说明已找到起点从上例知,只要某点已标号,说明已找到起点vs到该点的最短路到该点的最短路线及最短距离,因此可以将每个点标号,求出线及最短距离,因此可以将每个点标号,求出vs到到任意点的最短任意点的最短路线,如果某个点路线,如果某个点vj不能标号,说明不能标号,说明vs不可不可达达vj。6.2.3无向图最短路的求法无向图最短路的求法无向图最短路的求法只将上述步骤(无向图最短路的求法只
24、将上述步骤(2)改动一下即可。)改动一下即可。点标号:点标号:b(i)起点起点vs到点到点vj的最短路长;的最短路长;边标号:边标号:k(i,j)=b(i)+cij,步骤:步骤:(1)令起点的标号;令起点的标号;b(s)0。(3)计算集合计算集合B中边中边标号:标号:ki,j=b(i)+cij)(,|,min)(lbvBjijiklblj处标号在端点(4)选一个点标号选一个点标号:返回到第返回到第(2)步。步。(2)找出所有一端找出所有一端vi已标号另一端已标号另一端vj未标号的边集合未标号的边集合B=i,j如如果这样的边不存在或果这样的边不存在或vt已已标号则计算结束;标号则计算结束;6.2
25、最短路问题最短路问题ShortestPathProblem【例例6.4】求图求图6-10所示所示v1到各点的最短路及最短距离到各点的最短路及最短距离4526178393261216180452231039612641166188122482418所有点都已标号,点上的标号就是所有点都已标号,点上的标号就是v1到该点的最短距离,最短路到该点的最短距离,最短路线就是红色的链。线就是红色的链。图图6-106.2最短路问题最短路问题ShortestPathProblem6.2.4最短路的最短路的Floyd算法算法Floyd算法基本步骤算法基本步骤:(1)写出写出vi一步到达一步到达vj 的距离矩阵的距
展开阅读全文