QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4263|回复: 6
打印 上一主题 下一主题

[问题求助] 求大神解答,关于floyd算法

[复制链接]
字体大小: 正常 放大
Araneider        

8

主题

4

听众

114

积分

升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

    跳转到指定楼层
    1#
    发表于 2012-8-24 16:54 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    这是2000年b题的一个floyd算法matlab程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~
    & Q9 h, c3 s. b& H. @, E% ?) s2 u9 J  B/ o' c9 F7 _9 N, l
    Floyd算法函数在matlab下的M函数文件如下:9 V. E! x& g; S3 F& j
    function [D,path]=floyd(a)
    : E, g8 E* P8 v: ~$ \% a) V. En=size(a,1);
    ; f" h* S6 h1 ^) k: P5 ^6 uD=a;path=zeros(n,n);
    ; v, B) X8 D- Jfor i=1:n/ i( J5 l8 l) [& s# I3 o+ @+ |
        for j=1:n
    5 @2 Z- a4 X' @. C% I        if D(i,j)~=inf
    / X5 g. Y2 M- Q! a, \            path(i,j)=j;
    1 a: I% ~3 x6 i3 D& `  W. m' q        end
    . c$ |. u8 C# R$ \, e    end, o) R! @7 j1 |; @2 ]# d
    end* j' f7 `: ]& `! {% c' Q+ Z
    for k=1:n3 n( e9 d# G8 `' ?
        for i=1:n
    . ~1 j  k* [1 i. r4 w3 t        for j=1:n" \$ p% Y$ p6 j- B5 L! }& u* V
                if D(i,k)+D(k,j)<D(i,j), E9 \8 I- o* Y
                    D(i,j)=D(i,k)+D(k,j);$ ^7 l, e) W! _% [0 f! d
                    path(i,j)=path(i,k);
    " K5 r& c( R1 U/ p) O7 r) G0 ~            end3 M3 b% n3 p1 L- F1 _
            end# }" w% Q7 B' s6 b6 h* _
        end
    + D6 W2 z7 |( l0 D3 A; Fend3 ?, k" |/ S( T+ \
    上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。
    " l8 m/ s" i; S" v' Q0 Wab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];: j; L. I" v# u+ b! P) u
    bb=[ 14 15 15 16 19 18 23 24 10 10 11 15 13 14 16 17 19 19 20 21 22 23 24];/ h. d$ F" m  ^) s3 K
    w=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    . z6 A/ B# P, v& g( zab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];; u& }. l* Y9 ~
    bb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];( G& W1 \' s: ~" D+ f5 R" s
    w1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];' I7 M% {( U( b6 d- x
    a=sparse(ab,bb,w);; a/ ?  Q8 q5 U" G7 ?8 r
    a(24,24)=0;
    ' c; h) y. ~) T5 f: P& k9 l$ ?a=a+a’;
    5 E8 l2 o7 ?, y1 _+ d; ta=full(a);1 D( K2 J. M: r
    for i=1:245 B1 ]9 d. [" |$ S0 ~& E/ b
        for j=1:24' S% J  p0 O3 ?+ b+ }
            if(a(i,j)==0&i~=j)
    ( i: y! w) [9 o( Y            a(i,j)=inf;4 @0 Y3 d5 \; b1 n
            end
    ' H* N$ e+ T( |% ?  N& {5 D    end  y" l4 c' q  X; \2 J* v, x
    end
    2 h- p" q  s' f/ e* ?6 s; Z* P[D,path]=floyd(a);) e0 L- y+ @, y0 P2 }& p' E
    a1=sparse(ab1,bb1,w1);( C) l( V+ v& J; Q, I2 i
    a1(35,35)=0;! j+ s. G- R# g! m2 |+ h- d5 N# H
    a1=a1+(a1)';
    ! V3 U) Z" x6 f0 va1=full(a1);
    # \  L0 u- X. |for i=1:35! Y$ X9 l; O* x& e+ u
        for j=1:35
    . x2 \2 Z; ?$ J+ \9 _        if(a1(i,j)==0&i~=j)4 o( K3 z- p' W
                a1(i,j)=inf;
    $ U6 `+ ]: X; L' ~( Q2 q        end
    % u( o  m+ S; ~2 E. \3 ]; e    end6 ^. q& B8 G  Z5 q. [4 [
    end
    / @) g5 z; I( i' {* z& |[D1,path1]=floyd(a1);  T# J$ q: ^# f& o* U* n- V
    上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    3

    主题

    7

    听众

    179

    积分

    升级  39.5%

  • TA的每日心情
    擦汗
    2015-1-22 15:49
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    国际赛参赛者

    自我介绍
    我是本科在校学生,从小就喜欢数学,希望可以在这里学到想要的东西。。。

    群组学术交流B

    回复

    使用道具 举报

    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

    回复

    使用道具 举报

    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

    回复

    使用道具 举报

    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

      钢管订购和运输(2000年网易杯全国大学生数学建模竞赛B题)' S0 K+ x- W+ J. s1 d" i9 i* Q
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,
    2 m' l; `# U$ z  每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    1 Z# K# `! s3 Y/ v$ \8 F       为方便计,1km主管道钢管称为1单位钢管。
    + f, ?' ^! s2 b2 i    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    : w. O0 l6 V( E* c! `I           1           2           3          4          5          6           7
    7 M# y1 h! B- G% {+ RSi        800        800        1000        2000        2000        2000        3000
    2 {+ b( L9 K8 g/ O( l' ?4 xPi        160        155        155        160        155        150        1605 |- E9 ?4 ]  B7 r* [- R$ H
      一单位钢管的铁路运价如下表:  D$ A7 m& }/ D# h. E( ?+ V
    里程(km)        ≤300        301~350        351~400        401~450        451~500; p# F: I1 ?$ B. O- W- I% y
    运价(万元)        20        23        26        29        32
    7 w, L% i8 g& ?- T" ~3 d3 T1 D% H里程(km)        501~600        601~700        701~800        801~900        901~10007 d  e( P8 P$ G) B5 Z
    运价(万元)        37        44        50        55        60
    9 n, ^7 u; G) {0 U, Y- y& o( t- ]  1000km以上每增加1至100km运价增加5万元。
    , r, H( m, `8 Q  i( S     公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    7 Z( S$ P" M( r0 p8 h  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    4 [; ~2 d+ v9 Q% f; h1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。
    ! @, |. V! Z) T- t2 Y+ j4 F2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。6 q- g8 F3 _9 d1 i8 Z6 @
    3.如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    回复

    使用道具 举报

    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

    回复

    使用道具 举报

    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

  • TA的每日心情
    难过
    2012-9-7 13:32
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

    群组全国大学生数学建模竞

    群组建模讨论组

    群组竞赛备战群

      管订购和运输(2000年网易杯全国大学生数学建模竞赛B题)
    $ P6 u( b/ k' b# F( A     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,) J( e8 S# J7 ]
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    " z& ^2 m) z6 H       为方便计,1km主管道钢管称为1单位钢管。; i( y6 W5 n/ T. I0 |
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:4 J4 t9 z7 K4 A" O
    I           1           2           3          4          5          6           72 p8 s5 U! D- A
            800        800        1000        2000        2000        2000        30004 S4 A: c4 e. K  [1 U
            160        155        155        160        155        150        160- l3 L' ?+ E' N' Q/ O- C
      一单位钢管的铁路运价如下表:- W8 V$ t1 o4 m  r
    里程(km)        ≤300        301~350        351~400        401~450        451~500
    8 ]* d: e# P" [. n+ g运价(万元)        20        23        26        29        32
    * @  L1 M7 t0 }2 X: J里程(km)        501~600        601~700        701~800        801~900        901~10000 P# g) O. n* X) e8 e5 W: @
    运价(万元)        37        44        50        55        602 G0 d! ^* k" @, [) |
      1000km以上每增加1至100km运价增加5万元。# A3 n" A7 b5 H. Q( V. H
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。4 |$ w, O) M; u6 b5 w2 o
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。% I+ L# O1 R9 F% z7 v) ~$ E+ U
    请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。0 V- c# k* f$ \
    请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。6 \6 h4 R7 E  I: L
    如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    : o# {; e# K7 O* f1 i/ V( {) m/ r5 @+ i% G  O; L9 f
    C:\Documents and Settings\Administrator\桌面
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-19 19:24 , Processed in 0.498846 second(s), 89 queries .

    回顶部