- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8讲最小生成树与最短路应用(第1次课)
第八讲 最小生成树算法应用(上) 内容:本讲主要介绍最小生成树算法及实现 目的:学习最小生成树算法的 MATLAB实现 要求:能够运用软件直接对小规模最小生成树 问题进行求解 回顾最小生成树问题所涉及的图的概念和术语 掌握Kruskal算法和Prim算法的描述和实现 通过范例,掌握最小生成树问题应用一般过程 最小生成树问题的引入和概述 最小生成树问题属于典型的基于图的网络优化问题,树(tree)在图论中是相当重要的一类图,它非常类似于自然界中的树,我们的着眼点在于:设计或寻找(更快地寻找)某种具有最优特性的最小生成树及其算法。 在工农业生产、交通运输、通讯和电力领域经常都能看到许多网络,如管道网、公路网、计算机通讯网、输电线网等等。还有许多看不见的网络,如各种关系网、事物的相互冲突关系等等,这些网络都可归结为网络最优化问题。 最小生成树是具有很多最优特性的一种图,最小生成树算法是重要的最优化算法(p173) 最小生成树的相关概念 最小生成树: 在一个加权连通图中,总权最小的那棵生成树 加权:边被赋予权重(比如费用,路程...) 连通图:任意两点间都有路径的图(可抵达) 树:没有圈的连通图(圈:路径终点回到起点) 生成树:包括原图所有点的树(属于原图子图) 最小生成树:所有生成树中权重之和最小的树 最小生成树问题的应用举例 电信局配接电缆问题: 电信总局要如何配接电缆才能使各电信局能互通讯息, 但同时令配线经费最低? 最小生成树问题的应用举例 大公司部门之间的沟通管道: 最小生成树问题的描述 要在n个城市间建立通信联络网,顶点—表示城市,权—城市间建立通信线路所需花费代价,希望找到一棵生成树,它的每条边上的权值之和(即建立该通信网所需花费的总代价)最小—最小代价生成树(最小生成树): 最小生成树算法- KR图示 Kruskal算法和Prim算法,都蕴涵了贪婪法的思想(p174),都属于构造性的方法。此外,最小生成树不一定唯一。 Kruskal算法示意图: 最小生成树算法- PR图示 Prim算法示意图: 最小生成树算法- KR演示 Kruskal算法动画演示1: 最小生成树算法- KR演示 Kruskal算法动画演示2: 最小生成树算法- PR演示 Prim算法动画演示1: 最小生成树算法- PR演示 Prim算法动画演示2: 最小生成树算法-程序实现 为简便起见,以一个小型的问题为例。假设各站点间可以铺设通讯线路进行连接的情况如下图所示,顶点为站点,边为连接两站点之间的通讯线,边权为费用。 我们的目的是找到图中一个连接所有顶点的具有最小总权数(费用)的连通子图—— 即最小生成树 最小生成树算法-KR程序 clear b=[1 1 1 2 2 3 3 4;2 4 5 3 5 4 5 5;8 1 5 6 7 9 10 3]; %边权阵 [B,i]=sortrows(b,3); B=B; m=size(b,2); n=5; t=1:n;k=0;T=[];c=0; for i=1:m if t(B(1,i))~=t(B(2,i)) k=k+1; T(k,1:2)=B(1:2,i); c=c+B(3,i); tmin=min(t(B(1,i)),t(B(2,i))); tmax=max(t(B(1,i)),t(B(2,i))); for j=1:n 最小生成树算法-PR程序 clear a=[0 8 inf 1 5; 8 0 6 inf 7; inf 6 0 9 10; 1 inf 9 0 3; 5 7 10 3 0]; %带权邻接阵 T=[];c=0;v=1;n=5;sb=2:n; for j=2:n b(1,j-1)=1; b(2,j-1)=j; b(3,j-1)=a(1,j); end while size(T,2)n-1 [min,i]=min(b(3,:)); T(:,size(T,2)+1)=b(:,i); 练习一:P178美森通信网络设计练习二:P188墨西哥海底石油网That’s all~3Q! * 第八讲 最小生成树与 最短路的应用 * 1 6 5 4 3 2 7 13 17 9 18 12 7 5 24 10 V1 V2 V4 V5 V3 V6 6 5 5 5 6 6 2 1 3 4 V1 V2 V4 V5 V3 V6 1 V1 V2 V4 V5 V3 V6 1 2 V1 V2 V4 V5 V3 V6 1
文档评论(0)