QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4361|回复: 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程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~9 O' l  p% n4 Q1 |5 D7 s

    4 ]& q& c, }' a  \+ VFloyd算法函数在matlab下的M函数文件如下:
    & T, ~! E! r! v# J, A! N2 s! g8 bfunction [D,path]=floyd(a): h5 `. Y' t* V" ?
    n=size(a,1);" M3 A; b4 A2 U
    D=a;path=zeros(n,n);& b) Z8 f3 L& Z
    for i=1:n9 P5 E5 J5 m6 p* R3 ?4 F/ _
        for j=1:n$ V: g0 m. F& r
            if D(i,j)~=inf
    - ^7 p% F$ j& P0 ]3 y            path(i,j)=j;4 r; r+ u) }8 D1 b) T* m- x
            end0 w  W1 [4 p  F! D3 F1 R! m
        end
    - u+ [+ @9 x9 n' J1 Z" D4 ]6 bend$ ~  ^% q8 B* L+ g" ?& k3 F
    for k=1:n
    5 c5 _0 m( C* X2 p. _9 R! i0 I    for i=1:n
    , [6 M5 v/ ~# `, B5 O% U1 R* q        for j=1:n9 A" ?1 W4 ]6 a. E! T0 N3 Q, U
                if D(i,k)+D(k,j)<D(i,j)
    1 B; a& u# d1 y2 V                D(i,j)=D(i,k)+D(k,j);
    / i. ]0 E( }. }! K+ V4 R                path(i,j)=path(i,k);
    0 L5 l; J/ @" C' R4 \# y  j            end, D$ p4 a6 ?1 k8 X' ]- F; r
            end$ v+ g/ }0 _* x' [# W
        end+ `" ]4 Q  f0 N: t3 g6 Z/ M
    end
    2 K0 e, v( ^% ~+ D# Z; y( I上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。) q. o. @$ j- W- k2 P& y
    ab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];
    4 |! P9 H% J) l) \% d, @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% Q$ v% N6 N8 t. l. b7 }2 e: Rw=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    0 ]" \7 x2 |$ sab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];
    % @4 [* a5 N& V' Sbb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];
    ) g# M2 j" J/ Gw1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];- h1 v& \9 Z" |& {2 q
    a=sparse(ab,bb,w);( D' {  [6 k2 E. K
    a(24,24)=0;0 }* e% x! x. y8 b
    a=a+a’;
    ! v% H- g+ W: Y' ^a=full(a);
      B: o' U8 `5 _0 Afor i=1:24! m, ]9 H" C0 }8 E6 ~
        for j=1:24: V, h: D8 F( F
            if(a(i,j)==0&i~=j)
    1 W+ m# E5 h9 J" n' J3 {) P            a(i,j)=inf;0 i3 G4 s. V$ v; u2 z0 K! k4 r0 d
            end
    / ~+ g. [% \2 A# r# Y) g    end% i7 n0 l+ O1 v# @$ s% d, B7 ]$ Y
    end4 Z- B7 ^. ~: k+ h  I2 u
    [D,path]=floyd(a);4 \) T- ~, t% @, i
    a1=sparse(ab1,bb1,w1);
    ; q6 ?. }% k) F3 ~5 b) O+ }a1(35,35)=0;
    5 k9 l9 H( f. O5 u& G3 wa1=a1+(a1)';# l- R+ j7 v: J
    a1=full(a1);
    2 M! t0 Z- ?8 o& Wfor i=1:35
    ' @& V$ I0 @2 n    for j=1:35
    $ v" [2 S& S3 b( j& O        if(a1(i,j)==0&i~=j)) A( S: t6 q. S. a  h
                a1(i,j)=inf;
    $ ~- X- W; |+ w3 q( c( }        end) @% G/ ^/ N& |
        end. ~, e; q8 y* j3 o4 i
    end
    2 ^$ w( P& x' Y7 H; |[D1,path1]=floyd(a1);
    3 w" [- v. v( o& r; b4 C上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    Araneider        

    8

    主题

    4

    听众

    114

    积分

    升级  7%

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

    [LV.4]偶尔看看III

    自我介绍
    一名新人

    群组学术交流B

    群组学术交流A

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

    群组建模讨论组

    群组竞赛备战群

      管订购和运输(2000年网易杯全国大学生数学建模竞赛B题)
    & y% T  C# G  g) H: K     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,
    4 S4 p# L! O; u  {) P9 h" ^, j  每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。) ?  F; F4 Y- F" n
           为方便计,1km主管道钢管称为1单位钢管。! H# E* b; b' u
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:: T8 N1 ^- x8 {4 {3 K0 t
    I           1           2           3          4          5          6           7
    6 N( `7 {% R! E  H6 D3 P        800        800        1000        2000        2000        2000        3000
    + ]6 g$ \0 ], [7 e8 ^) {        160        155        155        160        155        150        160
    3 O% w' [5 K" D. d. |  一单位钢管的铁路运价如下表:5 ~4 g1 K* W5 Z8 z. Z7 \8 H, F
    里程(km)        ≤300        301~350        351~400        401~450        451~500' d0 H" }: x( x( }% N' f1 i
    运价(万元)        20        23        26        29        32# S( L3 v( c6 z
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    " i* w$ W# o+ h运价(万元)        37        44        50        55        60! _; O; n3 y+ B4 y; ~" ~9 X7 F$ O' x
      1000km以上每增加1至100km运价增加5万元。2 R: W( I/ M8 u# P
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。1 A3 @; c5 w/ v+ b! Z- i
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。/ D% J1 x  G1 ]) m: B5 e, T
    请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。' Y, A5 U) u* D1 W: {$ c- \2 {
    请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。& o+ O3 Z# r" N
    如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    9 `: b/ M5 _  R$ [6 {8 v. m# |  T8 k2 W* Q! s
    C:\Documents and Settings\Administrator\桌面
    回复

    使用道具 举报

    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题)8 g. n5 R3 k7 }6 X. S2 z) X7 t+ S
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站," d/ \5 a+ h$ g+ S' t6 `9 x
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。- W; U& a" M! u
           为方便计,1km主管道钢管称为1单位钢管。
    " E) i5 L: ^/ G4 [4 B, a8 N    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    ; H7 x, W" q' i' y; uI           1           2           3          4          5          6           72 |! x/ [7 q4 F: Z- e. `4 M
    Si        800        800        1000        2000        2000        2000        3000, ^- F! R5 E/ t$ k  {# B
    Pi        160        155        155        160        155        150        160% f! i9 E3 F: b. A0 n" W9 d
      一单位钢管的铁路运价如下表:6 _* ]; Y$ p5 I$ d" b* d* T
    里程(km)        ≤300        301~350        351~400        401~450        451~5007 v0 w) `' ]' C. E
    运价(万元)        20        23        26        29        32# _0 V& H) _1 A5 Z& }
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    " x8 r& h# F1 x4 s  W运价(万元)        37        44        50        55        60
    ! H7 h/ ^- C* V* n" D4 c  1000km以上每增加1至100km运价增加5万元。: O1 x. T+ u: e$ `+ u
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。! Q' N3 w+ k0 P. G2 N. c; C
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    . J0 o. A: q; p1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。' {% _7 ]9 L0 T) r$ C  k
    2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
    ! @. }+ S! \- C( f3.如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(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

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

    群组建模讨论组

    群组竞赛备战群

    回复

    使用道具 举报

    3

    主题

    7

    听众

    179

    积分

    升级  39.5%

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

    [LV.4]偶尔看看III

    国际赛参赛者

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

    群组学术交流B

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-21 23:54 , Processed in 0.535149 second(s), 84 queries .

    回顶部