Matlab代码-佛洛依德最短路径.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数学建模常用Matlab/Lingo/c代码总结系列——floyd最短路径 分类: Matlab 数学建模 2011-11-16 23:37 186人阅读 评论(0) 收藏 举报 例 9?? 某公司在六个城市 c1,c2, …c6 中有分公司,从 i ci 到 cj的直接航程票价记在下述矩阵的 (I,j) 位置上。(∞表示无直接航路),请帮助该公司设计一张城市c1 到其它城市间的票价最便宜的路线图。 ?? [plain] view plaincopyprint? clc,clear??? ?? a=zeros(6);??? ?? a(1,2)=50;a(1,4)=40;a(1,5)=25;a(1,6)=10;??? ?? a(2,3)=15;a(2,4)=20;a(2,6)=25;??? ?? a(3,4)=10;a(3,5)=20;??? ?? a(4,5)=10;a(4,6)=25;??? ?? a(5,6)=55;??? ?? a=a+a;??? ?? a(find(a==0))=inf;??? ?? pb(1:length(a))=0;pb(1)=1;index1=1;index2=ones(1,length(a));?? ?? d(1:length(a))=inf;d(1)=0;temp=1;??? ?? while?sum(pb)length(a)??? ?? ??tb=find(pb==0);??? ?? ??d(tb)=min(d(tb),d(temp)+a(temp,tb));??? ?? ??tmpb=find(d(tb)==min(d(tb)));??? ?? ??temp=tb(tmpb(1));??? ?? ??pb(temp)=1;??? ?? ??index1=[index1,temp];??? ?? ??temp2=find(d(index1)==d(temp)-a(temp,index1));??? ?? ??index2(temp)=index1(temp2(1));??? ?? end??? ?? d,?index1,?index2?? ? ? ? ?编写 LINGO 程序如下: [plain] view plaincopyprint? model:??? ?? sets:??? ?? cities/A,B1,B2,C1,C2,C3,D/;??? ?? roads(cities,cities)/A?B1,A?B2,B1?C1,B1C2,B1?C3,B2?C1,??? ?? B2?C2,B2?C3,C1?D,C2?D,C3?D/:w,x;??? ?? endsets??? ?? data:??? ?? w=2?4?3?3?1?2?3?1?1?3?4;??? ?? enddata??? ?? n=@size(cities);?!城市的个数;??? ?? min=@sum(roads:w*x);??? ?? @for(cities(i)|i?#ne#1?#and#?i?#ne#n:??? ?? @sum(roads(i,j):x(i,j))=@sum(roads(j,i):x(j,i)));?? ?? @sum(roads(i,j)|i?#eq#1:x(i,j))=1;??? ?? @sum(roads(i,j)|j?#eq#n:x(i,j))=1;??? ?? end?? ? ? ? ? [plain] view plaincopyprint? model:??? ?? sets:??? ?? cities/1..11/;??? ?? roads(cities,cities):w,x;??? ?? endsets??? ?? data:??? ?? w=0;??? ?? enddata??? ?? calc:??? ?? w(1,2)=2;w(1,3)=8;w(1,4)=1;??? ?? w(2,3)=6;w(2,5)=1;??? ?? w(3,4)=7;w(3,5)=5;w(3,6)=1;w(3,7)=2;??? ?? w(4,7)=9;??? ?? w(5,6)=3;w(5,8)=2;w(5,9)=9;??? ?? w(6,7)=4;w(6,9)=6;??? ?? w(7,9)=3;w(7,10)=1;??? ?? w(8,9)=7;w(8,11)=9;??? ?? w(9,10)=1;w(9,11)=2;w(10,11)=4;??? ?? @for(roads(i,j):w(i,j)=w(i,j)+w(j,i));??? ?? @for(roads(i,j):w(i,j)=@if(w(i,j)?#eq#?0,1000,w(i,j)));??? ?? endcalc??? ??

文档评论(0)

zywx66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档