QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4306|回复: 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程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~
    ( h/ O8 [( Y+ R, Z" m2 p) X
      N2 ]7 x! [/ G/ m: ^8 G* {Floyd算法函数在matlab下的M函数文件如下:. ?* V# p. w9 ^( B( C* L
    function [D,path]=floyd(a)
    ' K& z% ]2 m  M' rn=size(a,1);
    $ \0 y5 I; V7 ?+ bD=a;path=zeros(n,n);
    ! a( A" ^  G* k: S$ T# gfor i=1:n
    4 B% B/ b4 c! @  t7 W( M+ |    for j=1:n
    : O" Q! s) {0 ]        if D(i,j)~=inf
    & x7 ~% f# _/ p( ^4 V6 p  S, r+ O5 y            path(i,j)=j;, H9 |; V2 f* V
            end/ H' X- F* g% v7 x3 d" m5 U
        end
    ! d" P) O0 ]' k+ M4 O4 a, @end
    / B6 I4 W# E& ufor k=1:n
    7 F$ \1 B" b: j$ v- A3 d. v    for i=1:n
    $ Z& N( ]  ^; k) U1 U, Y        for j=1:n, d  }6 K4 ]# Q
                if D(i,k)+D(k,j)<D(i,j)
    ; K( q; @1 r8 M3 e; b                D(i,j)=D(i,k)+D(k,j);/ ^+ N- L) {* s: ?, B6 U( B' N
                    path(i,j)=path(i,k);& Y6 p9 s' v8 e( ^
                end
    1 Y( P& v8 Q, K! p  O4 o( u        end
    & C0 r0 X9 ?* h4 S6 [    end, ]6 a6 @2 J3 c# Q" W
    end! h- }  W- M3 \  `9 {
    上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。$ b6 V+ G. o: {( q" B1 }
    ab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];% Z7 J+ `+ ^7 M1 U8 z! V- c
    bb=[ 14 15 15 16 19 18 23 24 10 10 11 15 13 14 16 17 19 19 20 21 22 23 24];
    5 @2 q5 G1 V4 R+ H- L3 d4 gw=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    9 V, x; ?4 @& c8 j3 ~  pab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];% @% z2 t* @# S& _* M4 R( F: E
    bb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];
    % B8 b( ~' K1 M/ @9 C  Pw1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];7 Z5 X+ A% [1 D' D" B
    a=sparse(ab,bb,w);
    6 H1 x( G  f, h3 E( a' p6 Ka(24,24)=0;" v: y1 ~8 F5 M) i' ^4 O- v
    a=a+a’;
    $ Y) S' o& Z; J! }a=full(a);: e+ l/ l9 y  a1 {8 o
    for i=1:24, ]0 p8 s+ O5 c  ]) N$ K6 o
        for j=1:243 d" o, N: m; P- @6 U- o- W1 m
            if(a(i,j)==0&i~=j)
    ! ~+ h2 Y+ h. U3 I% C& s            a(i,j)=inf;
    # O1 K3 G, a9 g% g9 y* s8 l        end
    # h$ o3 v* T9 k% ?$ K; e) w    end
    ; z4 ?! v; K: E7 Fend) ^2 e! Z: ^6 q8 a( x% x
    [D,path]=floyd(a);
    % i" M* I" ~+ |* f. i0 J- @6 {a1=sparse(ab1,bb1,w1);! b3 J" Z$ r) i# w, p6 I
    a1(35,35)=0;
    $ J# ^6 d6 q2 ra1=a1+(a1)';
    7 n, _3 h! ~8 B' Z  l+ F* f% x$ ya1=full(a1);+ E* S/ S' S0 D
    for i=1:350 H& K4 G6 C& ~# R9 h
        for j=1:35$ I# ]2 G1 I. A7 O: v# M
            if(a1(i,j)==0&i~=j)
    ! k& q! c" v  V: s" q& x            a1(i,j)=inf;! `+ O0 B& d( z* \6 \# S
            end5 G$ \2 u; A1 U, `: L
        end
      ~1 I+ K  e5 o" ]end! B5 F& ^% b/ Q) Y6 b' P) z7 G* Z! W5 d
    [D1,path1]=floyd(a1);
    ! y9 k0 X4 t- T8 T上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    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题)
    6 B* _1 K/ H2 X& K6 s7 I     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,
    7 W" p  `- K/ x$ O( ?' f9 d  每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    ( h2 v( S! X0 s: k5 F       为方便计,1km主管道钢管称为1单位钢管。
    6 g0 P: w! V& @! m6 e8 S    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    # u9 l/ O& A* u) UI           1           2           3          4          5          6           74 @& p1 L( J/ c/ l8 h
            800        800        1000        2000        2000        2000        3000
      h1 S) M1 G; {4 _# T9 v! y  _' h! u        160        155        155        160        155        150        1606 Y7 _# o- d4 i* W" C
      一单位钢管的铁路运价如下表:
    - y' A: N* C3 R. j8 D里程(km)        ≤300        301~350        351~400        401~450        451~500
    ) X( a& a) `; ]! H. J/ E/ t, p运价(万元)        20        23        26        29        32, r0 I7 T8 E! N, A4 R& w
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    6 P! A. k% [# R运价(万元)        37        44        50        55        60
    2 s) ~6 y7 c& B! j- v. y. G  1000km以上每增加1至100km运价增加5万元。
    ' l- @" ^% u. @3 k. _     公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。, Y: r" A) m& E' p5 ^' K
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    9 Q& C! Y7 z! \! R, ]9 e# f请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。/ g' A4 A5 |) S: ~& r. r
    请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。$ W9 t* @: r, g6 p
    如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    $ A7 G! S7 S+ a& c4 z* t
      l$ i; V2 @& h* g: ]7 |# CC:\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题), r" s  m: \2 \, o% I
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,8 _" [3 H3 k; g$ ~4 ^3 i
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    ) Q0 i, J4 G; m5 v" l) x1 A  I       为方便计,1km主管道钢管称为1单位钢管。1 q* f5 }. v0 P5 s2 r4 ~8 b
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    % Z4 w: D9 o6 c, }/ o$ j0 E1 gI           1           2           3          4          5          6           7
    % k1 W# e' C/ P1 S+ w( r  zSi        800        800        1000        2000        2000        2000        3000
    ' g' Z* t* L1 `$ x& ~- Z: IPi        160        155        155        160        155        150        160
    # r* m" t1 g" O: N( ^/ m9 o  一单位钢管的铁路运价如下表:( _$ G' y+ l5 s
    里程(km)        ≤300        301~350        351~400        401~450        451~500
    / ], v' ?9 i2 Z3 r3 Q2 S, [运价(万元)        20        23        26        29        32+ K& I7 l/ k8 J. [8 N: U
    里程(km)        501~600        601~700        701~800        801~900        901~1000) a: e' X7 _$ s2 q/ l4 p0 H
    运价(万元)        37        44        50        55        60
    $ y* K/ O4 E# k$ @* H: ?  1000km以上每增加1至100km运价增加5万元。2 c. s/ a. J# Z+ p3 q7 ?! d
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。* J' j0 \, A" W" t9 k5 a- \
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。3 n7 [. _. p% u/ h) l! z0 y- W
    1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。/ W( |0 U$ }4 n( U
    2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。( o2 o; q9 j  Z/ q1 R2 `7 v
    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

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

    群组建模讨论组

    群组竞赛备战群

    回复

    使用道具 举报

    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-6-8 01:17 , Processed in 0.525449 second(s), 85 queries .

    回顶部