通信网络地设计问题_第1页
通信网络地设计问题_第2页
通信网络地设计问题_第3页
通信网络地设计问题_第4页
通信网络地设计问题_第5页
已阅读5页,还剩27页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、标准文档通信网络的设计问题摘要本文针对通讯网络设计问题,使用图论中最小生成树法、节点排除法、网络故障分析法、 对比分析法等方法,分别构建普里姆(prim )模型、节点故障模型、链路故障模型等模型, 使用Matlab软件编辑算法,得到通讯网络总费用最省的铺设方案、可靠性条件下最省铺设方案以及综合条件下最省铺设方案。针对问题一要求,具体要求为使得通信网络的总铺设费用最省,首先使用了简化模型分 析、反证法等方法,证明最小生成树算法能测算无向图遍历节点的最省方案,其次应用最小 生成树法中的普里姆(prim )算法构造通讯网络总费用最省模型使用 Matlab软件编程,得到 最优铺设方案并作图。针对问题二

2、要求任意一个结点出现故障时,其它结点间仍然能够保持通信畅通的可能性 都达到90%寸最省铺设方案设计问题,首先使用节点排除法进行处理,找到重要节点,利用树 图将节点分类,再通过分类失效节点与有效节点连接达到通畅性要求,最后使用Matlab软件编程得出节点故障模型下最省铺设方案。针对问题三要求,任意一条链路被破坏时,能够保持通信畅通的结点都能够达到90%寸最 省铺设方案设计问题,首先找到重要链路,并分析链路影响的节点,用树图将节点分类,再 通过分类失效节点与有效节点连接达到通畅性要求,最后使用Matlab软件编程得出链路故障模型下最省铺设方案。针对问题四要求,综合考虑网络的可靠性以及铺设费用确定合

3、理的铺设方案问题,首先 对比分析问题二与问题三的节点分类,得出节点稳定性比链路稳定性更重要的结论;再通过 节点故障模型分别构造通信畅通的可能性都达到 85% 90% 95%寸所对应的最低铺设费用,使 用Matlab软件编程,得到综合考虑下的铺设方案。本文后续对模型进行了误差分析。还基于对问题四中可靠性不仅仅与节点和链路的稳定 性有关,还与节点的度有关,故引进节点的度对模型进行改进,并利用蚁群算法建立综合目 标下的铺设模型;最后对模型做出了纵向的推广和横向的推广。关键词:网络通讯设计;最小生成树法;故障分析法;蚁群算法;matlab§ 1问题的重述、背景知识传统的通信网络是由传输、交换

4、和终端三大部分组成。传输是传送信息的媒体,交 换是各种终端交换信息的中介体,终端是指用户使用的话机、手机、传真机和计算机等。现代电信网是由专业机构以通信设备(硬件)和相关工作程序(软件)有机建立的 通信系统,为个人、企事业单位和社会提供各类通信服务的总和。现在计算机网络技术在各个领域的应用范围已经逐步广泛起来,其发展也在不断的推动人类社会逐渐走向信息时代。网络技术的发展不仅促进了社会生产力的提高,也为 人们的生活带来了很大的方便。然而,与此同时也存在着很多不足,诸如安全隐患、信 息漏洞等,这些对于人们的工作和生活造成了很大的影响。我们在需要在研究通信网络 铺设问题时的费用问题时,也要充分考虑其

5、的可靠性。可靠性是其重要的整体指标,通 信网络的可靠性不仅与通信设备、链路有关,而且还与网络结构有关。由于网络结构的 复杂多变,通信网络的可靠性分析一直是个棘手的问题。二、相关资料1. 80个节点之间的距离表和铺设线路的单位费用表(见附表 1);三、要解决的问题问题1要使得通信网络的总铺设费用最省,请建立问题的数学模型,设计求解算 法,给出铺设方案,并讨论方案的可靠性;问题2考虑到通信网络结点的可靠性,若要求任意一个结点出现故障时,其它结 点间仍然能够保持通信畅通的可能性都达到 90%请建立问题的数学模型,设计求解算 法,并给出使总铺设费用最少的铺设方案;问题3:考虑到通信网络链路的可靠性,若

6、要求任意一条链路被破坏时,能够保持 通信畅通的结点都能够达到90%请建立问题的数学模型,设计求解算法,并给出使总 铺设费用最少的铺设方案;问题4:综合考虑网络的可靠性以及铺设费用,试确定合理的铺设方案。§ 2问题的分析一、问题的总分析对于问题的总分析,可以给出四个问题整体框架图,见图1实用文案标准文档棚应最优濟间题一做出铺设图冋题四T即冋題二、三的推广对比分析法比较不同皿靠性概率下笳 最省运癸图1四个问题的整体框架图二、对具体问题的分析1. 对问题一的分析某通信公司拟建一个具有80个结点的通信网络,需要在这些结点之间铺设线路,进 行数据传输。我们需要根据附件内容建立数学模型,并设计算

7、法使得通信网络的总铺设 费用最省,并证明可靠性。我们引入图论中普里姆算法(Prim算法),算法对通信网络的每条路的铺设费用总额进行模拟测算,形成铺设费用的最小生成树,并通过简化模型 进行检验算法的可靠性。2. 对问题二的分析问题要求这80个节点任意一个节点出现故障时,其它节点间仍然能够保持通信畅 通的可能性都达到90%在问题一所得出的最小生成树的的基础上,若其中只有一个重 要节点发生故障时,会造成八个节点以上故障,那么通信畅通的可能性就不能达到 90% 故通过节点删除法找到重要节点,再从重要节点引起故障的其他失效节点中找到一个节 点与其他正常节点连通使得发生故障的节点数少于八个即可,并且改进方

8、案所铺设的费用是最省的。3. 对问题三的分析问题要求79个链路中任意一条链路被破坏时,能够保持通信畅通的节点都能够达 到90%同样在问题一所得出的最小生成树的的基础上,我们考虑到若其中只要有一个 重要链路被破坏时,会造成八个节点以上故障,那么通信畅通的可能性就不能保证达到 90%所以,我们可以通过逐个分析每条链路,找到重要链路,一个链路被破坏会使最 小生成树分割成两个部分,其中一部分则是失效的,然后再从重要链路被破坏而引起的 其他失效节点中找到一个节点与其他正常节点连通使得发生故障的节点数少于或等于 八个,我就能保证通信畅通的可能性达到 90%并且我们要找到的这个节点与其他正常 实用文案标准文

9、档节点连通所铺设的费用是最省的4. 对问题四的分析问题要求是综合考虑网络的可靠性以及铺设,试确定合理的铺设方案。首先对比分析问 题二与问题三的节点分类,发现问题三中节点的分类包含了问题二中节点的分类,若满足了 了节点稳定性的要求,则一定能满足链路稳定性的要求,故得出节点稳定性比链路稳定性更 重要的结论;再通过节点故障模型分别构造通信畅通的可能性都达到85% 90% 95%寸所对应的最低铺设费用,使用Matlab软件编程,综合考虑稳定性和铺设费用得出铺设方案。§ 3模型的假设1. 两个节点之间的费用仅由节点之间的距离和铺设线路的单位费用决定;2. 各节点和各链条间发生故障是相互独立的,

10、节点 1发生故障不影响节点2发生 故障;3. 每个节点的重要性是相等的,不存在次级差别;4. 任意两个节点之间可以进行连接,且一个节点可以连接的节点不受限制;5. 网路的稳定性与节点所连的链路条数无关,即每个节点和链路出现故障的可能 性是相等的;§ 4名词解释与符号说明、名词解释1. 最小生成树:一个有n个结点的连通图的生成树是原图的极小连通子图,且包 含原图中的所有n个结点,并且有保持图连通的最少的边。2. 普里姆算法(Prim算法)指可在加权连通图里搜索最小生成树。意即由此算法 搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点,且其所有边的权值之 和亦为最小。、主要符号说

11、明序号符号符号说明1Vr表示加权连通图的节点集合2E表示加权连通图的边集合3t表示V集合中的任意节点4V0表示初始的节点集合5u表示集合V。中的元素6v表示V中的节点但不是Vo中的节点7Xj表示一个0、1变量,0,1分别表示选中和未选中8Wj表示节点i到节点j铺设线路所花费的费用9Z表示所选的铺设方案所花费的总费用10e表示最小生成树的链路§ 5模型的建立与求解一、问题一的分析与求解1问题的分析问题要求根据附件内容建立数学模型,并设计算法使得通信网络的总铺设费用最 省,并证明可靠性;我们引入图论中普里姆算法(Prim算法),算法对通信网络的每条 路的铺设费用总额进行模拟测算,形成铺设

12、费用的最小生成树,并通过简化模型进行检 验算法的可靠性。本文中连通图的顶点为80个通讯网络的节点,所有边的权值为两节点之间的铺设通 讯链路的总费用,通过普里姆算法可以得出联通所有顶点并且使总铺设费用最低的树 图,即相对于问题一的最优铺设方案。2 问题的求解模型I总铺设费用最省模型模型的建立普里姆算法(Prim算法)的步骤:从单一点开始,普里姆算法按照以下步骤逐步扩大树中所含节点的数目,直到遍历连通图的所有节点。首先设加权连通图的节点集合为V,边集合为E,初始化V。二t,其中t为集合V中的任意节点,其次在集合E中选取权数最小的边(u,v),其中u为集合Vo中的元素,而v不是,如果存在权数一样的可

13、任选其中之一,再次,将v加入到Vo,重复第二第三步,直到V。二V。引入一个变量Xj,Xj =0时说明该路径未被选中,1则表示被选中count(V)为总结n nmin z _ ' ' wij xiji j d点数建立的数学模型如下" n n送送 Xjj = n -1s.t.7j#Z Xjj 兰| count(V) T算法流程图见图2实用文案图2问题一的算法流程图为了更好的表现算法内容,用以下简化模型来表示并验证:表1普里姆算法示例图6So 选择顶点集合中任意顶点,此处选择So为初始点。顶点a、b、c、d都有与So 直接相连的边,选取其中权重最小的点(图 中为a) 下一个

14、顶点为距离a或So最近的顶 点,a距离c为10,距d为6,距b为5; So距c为10,距d为15,距b为15;所以 最短的距离是a到b得距离为5,连接a与 b 继续重复上面的步骤。可以发现距离a,b和So最短的是b到c得距离为5,连 接b和c。反证法:设生成的树为:,假设存在:'使得总花费COSt( :):: COSt(:');则一定存在一个(u,v)不属于::;将(u,v)加入,而u,v在:本被其他点连接,加入(u,v)后会形成一个环;而(u, v) 一定小于环中某一边的权重,这与在生成树时每次都取权重最小值的步骤 矛盾;故假设不成立,原模型成立。模型的求解根据matlab运

15、行结果见表1 (程序见附录1),可以得到通信网络的总铺设费用 乙 为2947800元。得到的最优铺设方案如图3。表1问题一结果图连接顺序12345678节点序号346170623647219连接顺序910111213141516节点序号5352737849713连接顺序r 1718192021222324节点序号4028425366672254连接顺序2526272829304647节点序号1652561851127417连接顺序4849505152535455节点序号10442367564821连接顺序:5657585960616263节点序号1129201550327226连接顺序6465

16、666768697071节点序号439637924396569连接顺序7273747576777879节点序号5737482541146080图3最优铺设方案图二、问题二的分析与求解1对问题的分析在问题一所得出的最小生成树的的基础上, 我们考虑到若其中只要有一个重要节点 发生故障时,会造成八个节点以上故障,那么通信畅通的可能性就不能保证达到90%所以,我们可以通过节点删除法找到重要节点,然后再从重要节点引起故障的其他失效 节点中找到一个节点与其他正常节点连通使得发生故障的节点数少于八个,我们就能保证通信畅通的可能性达到90%并且我们要找到的这个节点与其他正常节点连通所铺设 的费用是最省的。可以

17、给出具体的算法流程图,如图4,图4问题二的算法流程图2 对问题的求解我们以节点22为中心节点,可以将最小生成树分成四个大部分:Ai为节点22左边部分,A为节点22右上方部分,A为节点22右下方部分,A即为剩下的部分,即A4=22 56 54。例如A.部分,当这部分有节点出现故障时,我们通过 A或A的点与这个故障 点引起的失效点之间用最省的方案再铺设一条线路后,保证任一点发生故障后也能使通 信畅通的可能性达到90%通过此方法,我们可以在A部分找到重要节点70,A部分找 到重要节点51,A部分找到重要节点77。找到重要节点后,要考虑这三个重要节点任一发生故障时,怎么增加最省的铺设线 路问题,然后我

18、们再分别将A、A2、A3分成两个部分,第一部分是重要节点出现故障后 造成可靠性小于90%勺节点之和,即我们必需增加铺设线路的点,第二部分是重要节点 发生故障后不影响可靠性的节点之和。所以A可分为:B=134 26 6150 32;C=70 368146667624769229194928 578 35 20 80 2439 40 6379273713425337;A可分为:D=30 3845831596048E=51 124633416865731821 5243916 5525A可分为:F=7111747217104415G=77 2366457757645对于任意节点发生故障时,要通过增加

19、铺设后保证至少有70个节点是通信畅通的。所以这六个部分要考虑连接的方案有:CDB- D和 F B C D E ; B F 和 D B C F G ;0D F 和 B- D E F G ;C5B- D E F G、D- B C F G 和 F B C D E ;可以通过matlab编程(见附录程序2)分别计算9条线路各自最小的费用,然后计 算4个方案费用。费用最小的方案所对应的线路即是我们要增加的铺设线路。Matlab算出的结果见表2:表2问题二结果图节点1节点2铺设费用6168528817645467152861685282354465102470CDB- D是60-61连接,对应费用为209

20、100元;F B C D E是2-10连接, 对应费用为47000元,所以增加的总费用为256100元。 B F是1-72连接,对应费用为78000元;D B C F G是15-38连接,对 应费用为53600元,所以增加的总费用为131600元。 D F是15-38连接,对应费用为53600元,B D E F G是61-68连接, 对应费用为52800元,所以增加的总费用为106400元。 B D E F G是61-68连接,对应费用为52800元;D B C F G是15-38 连接,对应费用为53600元;F B C D E是2-10连接,对应费用为47000元; 所以增加的总费用为15

21、3400元。通过比较4个方案,可以得知第三个方案所需要增加的费用是106400元,所以总的铺设费用Z2=Z1+106400=3054200元。增加的路线如图5。图5任一节点岀现故障可靠性达到90%的最优铺设方案图三、问题三的分析与求解1 对问题的分析同样在问题一所得出的最小生成树的的基础上, 我们考虑到若其中只要有一个重要链路被破坏时,会造成八个节点以上故障,那么通信畅通的可能性就不能保证达到 90%标准文档所以,我们可以通过逐个分析每条链路,找到重要链路,一个链路被破坏会使最小生成 树分割成两个部分,其中一部分则是失效的,然后再从重要链路被破坏而引起的其他失 效节点中找到一个节点与其他正常节

22、点连通使得发生故障的节点数少于或等于八个,我就能保证通信畅通的可能性达到 90%并且我们要找到的这个节点与其他正常节点连通 所铺设的费用是最省的。2 对问题的求解在第二问的基础上,我们已经将最小生成树分成四个大部分A、A2、A3和A4。再比如A部分,当这部分的一个链路被破坏时,我们通过A2或A3的点与这个故障点引起的 失效点之间用最省的方案再铺设一条线路后,保证任何一条链路被破坏后也能使通信畅 通的可能性达到90%通过此方法,我们可以在 A部分找到的重要链路是70与62之间 的链路,在A2部分找到重要链路是18与51之间的链路e2,在A3部分找到重要链路 是76与77之间的链路ea。找到三个重

23、要的链路ei、e2和ea后,我们要研究这三个重要链路任一发生故障时, 怎么增加最省的铺设线路问题,这三个重要的链路任意一个被破坏时都会导致其所在的 部分被分割成两个小的部分,一个部分中的节点都是有效的,一个部分的节点都是失效 的。所以我们将A分成:B = 1 34 26 61 50 32 70 36 814 66 67C = 6247 69 229 19 49 28 578 35 20 80 24 39 40 63 79 273713 42 53 37所以我们将A2分成:D = 5130 38 458 31 59 60 48 12 68 46 65 33 41 73E = 1821 52 43

24、 916 55 25所以我们将A3分成:F = 7723 664 57 75 71 11 74 72 17 10 44 15 76 45G = 7645代=22 56 54比如链路e被破坏后,会导致b 部分的节点都失效,保持通信畅通的节点就不能达 到90%同样,e和ea也是如此,即要保证这三条链路之一破坏时, B、C和D都不 能失效,所以要考虑的连接方案有:(DB - D 和 F - BCD E A4;Ob F 和 D B C F G A4 ;® D - F 和 B F ' G D E A ;Of - B C D E A、B C F G A 和 F G D E A实用文案通过

25、Matlab (见附录程序3)算出的结果如表3:表3冋题二结果图节点1节点2铺设费用6168528817645467152861685282354465102470B D 是 61-68连接,对应费用为52800元;F - B C D E A4是2-10 连接,对应费用为47000元,所以增加的总费用为998000元。OB F 是8-17连接,对应费用为64500元;D B C F G A是23-54 连接,对应费用为46500元,所以增加的总费用为111000元。 D F 是46-71连接,对应费用为52800元,B F G D E A是61-68 连接,对应费用为52800元,所以增加的总

26、费用为105600元。 F B C D E A是是2-10连接,对应费用为47000元,D B C F GA是23-54连接,对应费用为46500元,;B F G D E Aa是61-68连接,对应费用为52800元,;所以增加的总费用为146300元。通过比较4个方案,可以得知第一个方案所需要增加的费用最省,费用是是99800元,所以总的铺设费用 Z3= Z1+99800=3047600元。图6任一链路岀现故障可靠性达到 90%的最优铺设方案图四、问题四的分析与求解1 对问题的分析在问题二及问题三的基础上,首先对比分析问题二与问题三的节点分类,发现问题 三中节点的分类包含了问题二中节点的分类

27、,若满足了了节点稳定性的要求,贝定能 实用文案满足链路稳定性的要求,故得出节点稳定性比链路稳定性更重要的结论;再通过节点故 障模型分别构造通信畅通的可能性都达到 85% 90% 95%寸所对应的最低铺设费用,使 用Matlab软件编程,综合考虑稳定性和铺设费用得出铺设方案。2 对问题的求解我们以节点22为中心节点,可以将最小生成树分成四个大部分: Ai为节点22左边 部分,A为节点22右上方部分,A3为节点22右下方部分,A4即为剩下的部分,即A4=22 56 54。所问题二中A可分为:B=134 26 61 50 32;C=70 36 814 666762476922919492857835

28、20802439 40 63 79 27 3713425337;问题三中将A,可分为:B = 1 34 26 61 503270368146667C = 6247 69 2291949285783520802439406379273713 42 53 37可见问题三中Ai的节点分类包括了问题二中 A的分类问题二中A可分为:D=30 38 458 31596048E=51 12 46 33 4168657318 2152439165525问题三中将A2分成:D = 5130 38 458315960 48126846653341 73E = 1821 52 439165525利用matlab求解

29、结果见表4。(程序间附录程序4)表4问题四结果图节点1节点2铺设费用节点1节点2铺设费用2633207063642576:1382716246510302675342039413000110326340592738 :363810922431190066751296631011908176451962565 364128101962565可见问题三中A2的节点分类包括了问题二中A2的分类故节点稳定性的要求更高,即只要满足了节点稳定性就能满足链条稳定性的要求,F面仅考虑节点稳定性需求下的故障模型。 实用文案标准文档当若要求任意一个结点出现故障时, 其它结点间仍然能够保持通信畅通的可能性都 达到8

30、5%寸,通过问题二与问题三的模型计算出的最省铺设方案为3047600元。分配方案为:图7通畅度85%寸最省铺设方案同样若要求任意一个结点出现故障时,其它结点间仍然能够保持通信畅通的可能性都达到90%寸,通过问题二与问题三的模型计算出的最省铺设方案为3054200元。分配图8通畅度90%寸最省铺设方案同样若要求任意一个结点出现故障时,其它结点间仍然能够保持通信畅通的可能性都达到90%寸,通过问题二与问题三的模型计算出的最省铺设方案为3578800元。分配图9通畅度95%寸最省铺设方案可见当通畅度从85%曾加至90%寸,费用仅仅增加了 6400元,而当通畅度从90%曾 加至95%寸,费用增加了 5

31、24600元,故选择90%勺通畅度,此时可以满足当一个节点或 一个链条出现故障时,其它结点间仍然能够保持通信畅通的可能性都达到90%且费用适中,可以同时满足稳定性和铺设成本的条件,故本题选择图5所示的铺设方案为综合的最优方案。§ 6误差分析一、误差分析1 在取得两节点之间的距离数据时由于人工记取数据或者测量距离的工具不标准, 会造成读取数据的误差,从而造成模型的误差。2在论文中直接认为总的铺设费用是有距离和节点单位费用决定的,在实际解决 问题中,总铺设费用还要考虑其他因素的影响。3. 在问题二的分析方法中,我们直接认为每个节点之间发生故障的概率是相同的, 其实有的节点发生故障的概率大

32、,我们考虑的太理想化,而且有的节点发生故障会导致 其他某些节点发生故障的概率增大或者减小。§ 7模型的评价与推广一、模型的优点1. 本文对问题有合理的猜想、假设、计算以及检验;2. 按照需要求解的问题灵活选取数据,而不是每次都使用同一个数据;3问题三在求解出来之后又提出一个新思路,并且有一个新的解法。一题两解, 并且可以互相验证结果;4研究问题时循序渐进,在求解的过程中慢慢进步,逐步完善。二、模型的缺点1求解问题时用的数据是自己观察,手工计数的,这样得出的数据难免会有些误差,有些没有考虑到的因素;2在最后模型改进的时候,我们提出了思路和解法但是由于时间有限,我们并没 有将最后的具体结

33、果计算出来;三、模型的推广1排队论模型一一我们所研究的排队论是把排队论应用到交通中,道路发生事故时堵车所形成的类似排队现象这种情况运用排队论的相关知识来求解,我们还可以将排队论延伸到其它的领域,比如车站买票、医院取药、通讯服务等其它领域;2 交通流模型一一由于进出匝道或交通事故等原因而形成的交通瓶颈,是导致高 速道路交通拥挤和堵塞的最主要的根源,我们通过这个模型不仅仅能够对解决堵车时的 排队长度问题还可以解决密度,速度等其他的交通指标;3在解决第三问时,我们发现交通堵塞问题与管道收缩而导致的运动气流中形成 激动波过程很相似,所以我们就通过研究后者的模型来类比我们要解决的问题,这种联 想类比法也

34、可以推广到其它问题。§ 8模型的改进本题中线路的可靠性仅仅考虑了节点和链路的稳定性,在保证连通性的情况下最小化了铺设成本;但未考虑流量因素,流量与节点的度有关,节点的度是指与节点直接连 接的链路的数量,流量因素是指:一个节点的度越多,流过这个节点的最大流量就越大。 所以,流量可以看作是图中节点的度数之和的增函数。而在节点度之和一定的情况下, 各个节点度数的波动越大,度数小的节点就成为流量的约束。因此,流量的大小是节点 度数的方差函数。令M (deg)代表图中度的均值,std(deg)代表方差构造流量函数:f如型(1)std(deg)而本文问题一中有铺设成本的目标函数为:n nmin

35、Z 二- Wjj xij(2)i =1 j =1将两个因素综合考虑,这里利用线性加权的办法将其综合,首先将式(1)、( 2)归一化,然后定义偏好系数YE(O,, 丫越接近0表是决策者越倾向于费用因素,越接近 于1越倾向于流量因素,所以,最终的目标函数为:M (deg)std(deg)f = std(Wij Xj) std(i 4 j 4设置约束条件,其中假定每一个节点的度数属于2,5的闭区间。凡是有节点度数不在词区间的方案都被认为是不可行解。为防止蚂蚁在寻优的过程中产生不可行解,定 义(low,up )为度的约束区间。对于每一个节点i,其度deg(i),在此定义一个函数:0if deg(i)

36、e (low,up)s =lowdeg(i) if deg(i)乏(°o, low) deg(i) up if deg(i) (up,吒)则可以定义罚函数为:Nfhs(j)Sii 二预算成本的约束:因为前面推导出了一个新目标函数,所有铺设成本不再是要优化 的对象。而在实际过程中,决策放能够承担的最大铺设成本一定不大于预算。所以,定 义一个最大预算Fmax。根据心理学的知识,决策者对费用的容忍度通常都是在与最小成 本的比较中产生的,所以定义一个容忍百分比Ratio,其取值如下:F - fmaxp minRatio 一p一 100%fp min相应的最大容忍度为Rbd。节点稳定性的约束:

37、首先引入一个故障矩阵 DP, DPj表示在节点i和节点j之间 存在连接线时,连接线出现故障的概率。仍然假定节点不会出现故障,所有故障都来自 于链路。而每一条边对于点来说是并联的,利用概率统计的知识,可以求得节点i能够正常工作的概率为:RP =1-口 DPi令RPmin为用户规定的平均最小工作概率。如果在整个网络中所有节点工作的概率 的算数平均值大于RPmin,则这个网络是可接受的,否则是不可接受的。故RPi > RPmin由上述分析,这个优化的模型是一个组合优化模型,可以用蚁群算法来求解,这里 简要介绍一下蚁群算法的求解过程。1. 初始化参数2. 利用概率的方法构建蚂蚁的路径。本文综合考

38、虑了最小成本模型和度约束条件,同时在本模型中又加入了流量及链路概率的影响。 如当前位于节点i的蚂蚁k选择j作为 下一个节点的概率为:k Em*Pj _ ij- ij I N其中,-ij为链路ij信息素强度;ij为一个预先给定的启发式信息,初始值为链路 ij距离的倒数。为本算法设置了启发式信息的优先级:链路ij如果有一个端点的度为1,则j加1倍,若链路ij 2个端点的度都为1,0加2倍°a、B是2个参数,它们分别决定了信息素和启发式信息的相对影响力。Nik代表位于节点i的蚂蚁k可以直接到达的相邻节点的集合,也就是还没有被蚂蚁 k访问的节点的集合。Step3本文使用的后台策略是在蚂蚁前进

39、一步时就计算各个约束的值,看是否满足要求,当有一个约束不再满足要求时,蚂蚁不再前行。一轮路径探索完之后,计算目标 函数的值,进而挑选出最优的路径。Step4在每一轮路径探索之后,更新信息素,更新规则如下:mk.j(n 1) = 'j (n):二匚计(n)k壬其中为信息素挥发程度;/(n)表示第k次循环是否选择了链路ij,如果先择ij, kkj (n) =Q/diSij,否则,ij (n)=0, Q是常数。5. 当路径探索的论述达到NCmax时输出结果。因为蚁群算法有较强的收敛性,故当经过不同次数的迭代实验是,会得出较为相近 的结果,此时则为最优的结果,最终的结果可有C语言编程完成。参考

40、文献:1 /wiki/Prim%E6%BC%94%E7%AE%97%E6%B3%952 基于蚁群算法的多目标网络铺设策略研究龚承柱1,诸克军1,郭海湘1,2(1.中国地质大学经济管理学院,武汉430074 ;2.西安交通大学管理学院,西安710049).3 姜启源,谢金星,叶俊.数学模型M北京;高等教育出版社,2011,1.实用文案附录程序1:%A表示权值矩阵%C表示生成树的权和%visit标记是否访问过(1表示访问,0表示未访问),dis记录当前最短距离,R 矩阵表示结点序号之间从前往后依次连接clc,clearA=xlsread('dat

41、e.xls');%权值矩阵(节点之间的费用表 =距离*单位费用)L=le ngth(A);A(A=0)=i nf;% 初始化邻接矩阵 dis=zeros(1,L);dis(:)=inf;% 初始化 dis 数组 visit=zeros(1,L);RESULT=zeros(L,L);visit(1)=1;dis(1)=0; next=1;C=0;a=zeros(1,80);%初始时刻1点加入集合中R=zeros(2,79);R(1,:)=1:79;%初始化结果矩阵for k=1:L-1;now=n ext;% now 表示计算的当前节点m=i nf;%m 保存当前节点到集合的最短距离fo

42、r i=1:L;if visit(i)=0%如果没有标记,开始这个点dis(i)=min(dis(i),A(now,i);%更新这个i点到集合的最短距离,保存到dis中if(dis(i)<m)m=dis(i);n ext=i;%记录下最小的那个点,作为下一个计算的点。endendendC=C+m;%加权值visit( next)=1;%标记进集合的点RESULT(k, next)=1;%整合每次标记endfor t=1:79;R(2,t)=fi nd(RESULT(t,:)=1);%按顺序输出节点表示连接过程标准文档endR %结果矩阵输出,第一行表示连接顺序,第二行表示表示依次连接节点

43、数C %相应情况下的最省铺设费用程序二:A=xlsread('date.xls'); %权值矩阵(节点之间的费用表=距离*单位费用)n1=1 342661503270368146667;n 2=51 30384583159604812684665334173;n3=77 2366457757111747217104415;m1=1 342661503270368146667624769229194928578 35208024;m2=51 3038458315960481268466533417318215243916 5525; m3=7723 ;66457757111747

44、2171044157645;m4=542256;%输入六个节点分类矩阵x1=m2 m3 m4;x2=m1 m3 m4;x3=m1 m2 m4;L1=le ngth( n1);L2=le ngth( n2);L3=le ngth( n3);L4=le ngth(m1);L5=le ngth(m2);L6=le ngth(m3);L7=le ngth(m4);%分别求其长度和两两组合长度t=1;for i=1:L1;实用文案for j=1:L2;R(t,:)=n1(i) n2(j) A(n 1(i),n2(j) t=t+1;endendfor i=1:L1;for k=1:L3;R(t,:)=n1

45、(i) n3(k) A(n 1(i),n3(k); t=t+1;endendfor j=1:L2;for k=1:L3;R(t,:)=n2(j) n3(k) A(n2(j),n3(k); t=t+1;endendfor i=1:L1;for p=1:L5+L6+L7;R(t,:)= n1(i) x1(p) A(n 1(i),x1(p); t=t+1;endendfor j=1:L2;for q=1:L4+L6+L7;R(t,:)=n2(j) x2(q) A(n2(j),x2(q); t=t+1;endendfor k=1:L3;for r=1:L4+L5+L7;R(t,:)= n3(k) x3

46、(r) A( n3(k),x3(r); t=t+1;endendR1=sortrows(R(1:192,:),3);实用文案Result(1,:)=R1(1,:);R2=sortrows(R(193:360,:),3);Result(2,:)=R2(1,:);R3=sortrows(R(361:584,:),3);Result(3,:)=R3(1,:);R4=sortrows(R(585:1101,:),3);Result(4,:)=R4(1,:);R5=sortrows(R(1102:1997,:),3);Result(5,:)=R5(1,:);R6=sortrows(R(1998:2893

47、,:),3);Result(6,:)=R6(1,:);%逐个计算最省费用Result%输出分类比较下的最省费用及相应连接节点序号程序三:n1=1 342661503270368146667;n 2=51 30384583159604812684665334173;n3=77 2366457757111747217104415;m1=1 342661503270368146667624769229194928578 35208024;m2=513038458315960481268466533417318215243916 5525; m3=772366457757111747217104415

48、7645;m4=542256权值矩阵(节点之间的费用表=距离*单位费用)A=xlsread('date.xls'); %;x1=m2 m3 m4;x2=m1 m3 m4;x3=m1 m2 m4;L1= le ngth( n1);L2=le ngth( n2);实用文案L3=le ngth( n3);L4=le ngth(ml);L5=le ngth(m2);L6=le ngth(m3);L7=length(m4); %分别求其长度和两两组合长度t=1;for i=1:L1;for j=1:L2;R(t,:)=n1(i) n2(j) A(n 1(i),n2(j);t=t+1;en

49、dendfor i=1:L1;for k=1:L3;R(t,:)= n1(i) n3(k) A(n 1(i), n3(k);t=t+1;endendfor j=1:L2;for k=1:L3;R(t,:)=n2(j) n3(k) A(n2(j),n3(k);t=t+1;endendfor i=1:L1;for p=1:L5+L6+L7;R(t,:)= n1(i) x1(p) A( n1(i),x1(p);t=t+1;endendfor j=1:L2;for q=1:L4+L6+L7;R(t,:)=n2(j) x2(q) A(n2(j),x2(q);t=t+1;end实用文案endfor k=1:L3;for r=1:L4+L5+L7;R(t,:)= n3(k) x3(r) A( n3(k),x3(r);t=t+1;endend %分别求其长度和两两组合长度R仁sortrows(R(1:192,:),3);Result(1,:)=R1(1,:);R2=sortrows(R(193:360,:),3);Result(2,:)=R2(1,:);R3=sortrows(R(361:584,:),3);Result(3,:)=R3(1,:);R4=s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论