QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4230|回复: 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程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~
    " F' K4 L8 H9 B+ z% T& @6 d4 [% `& E8 R! m+ D! [
    Floyd算法函数在matlab下的M函数文件如下:
    8 L1 C2 J' Q  ^+ p3 nfunction [D,path]=floyd(a)
    * _. r8 _  R5 W% X% Mn=size(a,1);! c. t; W- V! L3 j. u+ t' t# G
    D=a;path=zeros(n,n);' a( I/ @3 O1 S5 b! [' r
    for i=1:n
    . W" w: m( d8 o2 @+ t) }' e    for j=1:n
    8 G3 P: I9 b5 a: i. U3 O        if D(i,j)~=inf
    4 L+ a9 ?8 I& Z$ ^0 t7 D9 U            path(i,j)=j;( P. r  G. L  f: |1 H; j7 W7 x
            end
    1 T* a0 b/ O0 T    end
    ) ?& _4 X9 W7 B% z8 x0 ~$ rend. v$ e" S2 G  ?/ D/ e2 V7 \
    for k=1:n
    1 C, `! @8 s6 M6 G% ~3 N5 M    for i=1:n
    * g5 c* x, ~, k  [8 P% y        for j=1:n$ K# u5 H" `* J) _. D; G: X8 C
                if D(i,k)+D(k,j)<D(i,j)9 E, A# V; c) ^5 m9 `0 K* I& K. F7 i
                    D(i,j)=D(i,k)+D(k,j);
    ! _/ G2 H& p( N( }                path(i,j)=path(i,k);) a$ [# Y: p% N( B
                end: w, E  G5 c; o1 M/ d8 a
            end( L& J" q* k( m5 K( b. K
        end
    6 d/ \4 g% a& P$ V6 Mend2 C1 i  T0 O4 W& Q' q7 ]6 \
    上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。
    : g1 S- d( x# ?6 {6 eab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];
    1 N0 k: c. B  Y/ ]" K' E6 ybb=[ 14 15 15 16 19 18 23 24 10 10 11 15 13 14 16 17 19 19 20 21 22 23 24];
    $ ?6 G7 ]* W- D% l- ^w=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    % y, T* o0 A: A# t" G, Q; uab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];; @/ k, `- ^5 q5 v5 v% L8 E
    bb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];
    2 c4 X% \9 o# C: uw1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];
    ! y! w3 x0 D, K6 g' ~4 S. @a=sparse(ab,bb,w);
    7 r+ y4 z0 d/ F7 d( Xa(24,24)=0;
    5 O* n: H/ u1 r" [* j4 Ha=a+a’;
    3 c# J8 y. c  {* m6 fa=full(a);
    $ e0 T) J5 B1 }0 s. b; Z0 Jfor i=1:24
    & n/ Y' b0 `- @5 V8 o5 e    for j=1:24& {1 j' ]& D7 c1 H7 h
            if(a(i,j)==0&i~=j)
    6 T4 k& ^. I9 }5 `3 U4 c            a(i,j)=inf;) N0 G& `5 w$ @) D4 t1 K; A4 Y
            end) ]2 a; _) Z- H" H. p: y5 h5 p6 a6 @
        end
    3 e7 d/ W, @7 Nend
    : y) v/ C) f) @! [[D,path]=floyd(a);
      _& U) E  ?( q8 d: F' F1 Ca1=sparse(ab1,bb1,w1);
    # z0 Z; J$ m, `: Q2 {# E  Ma1(35,35)=0;. u5 p- ?$ f1 b$ Q, D' u  ^) ~7 W) w
    a1=a1+(a1)';
    & z& B+ S) j& {, w% [. Ma1=full(a1);2 `7 T  ~$ d% B* `: f6 M
    for i=1:35
    & y# _' g  W% {    for j=1:35
    ' x1 p7 y! x! H2 m7 k        if(a1(i,j)==0&i~=j)
    1 n# z4 D9 D! G/ ~8 i1 z7 ?            a1(i,j)=inf;- A5 _+ v4 x3 O. U
            end
    . }* g: v/ U- l$ o/ G    end
    ) ^: F1 t" K/ zend7 q. V/ n% \  ?8 _8 _
    [D1,path1]=floyd(a1);# Z7 \6 b6 {  F: d* q6 c% ?; g
    上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    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题)" Q2 ]( d) y" d$ C1 |& c
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,/ P, b- t: O, J) S6 O
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。3 X, z! K4 b! K' V3 |* n, M
           为方便计,1km主管道钢管称为1单位钢管。
    7 i, W7 N9 U9 X; m6 n* D' b% |* s* H2 f    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:' C9 a: j0 x7 y: X
    I           1           2           3          4          5          6           75 \! ?- f& m& i
            800        800        1000        2000        2000        2000        3000
    # S+ m4 s! F5 \5 Z& E  |7 R        160        155        155        160        155        150        160! Q9 [& D' E7 M& ^
      一单位钢管的铁路运价如下表:
    8 h1 g" k2 ?: W: D" ?3 S; ?里程(km)        ≤300        301~350        351~400        401~450        451~500/ n! @" x# W) G- a7 Q/ K: C5 j! o
    运价(万元)        20        23        26        29        32  e  M1 O/ N/ E
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    * r% G/ k+ |/ T4 k- o运价(万元)        37        44        50        55        60% [3 w: w3 z. N7 z
      1000km以上每增加1至100km运价增加5万元。4 G, L6 ], d$ R& k
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    2 Z" Q/ r: O$ ^0 @, i  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    ! V$ z8 W% X% p3 l# Y$ z请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。* i( V3 t  f' R0 _7 d* K
    请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
    & M9 w6 P) t9 N5 q如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    : Q! N0 ?$ O0 @$ b, I* w
    6 \. _* |* L" p( HC:\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题)
    , J1 S+ u5 B+ |9 y) x% s8 U7 T) U     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,  l/ Q5 r0 q5 y8 z1 L: G, d2 Z- i
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    : H: _9 m  S. j) H3 H4 @9 l       为方便计,1km主管道钢管称为1单位钢管。! P. {" q+ o; T$ v
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    8 @1 g% f$ i2 e4 ]4 Z9 q" |, xI           1           2           3          4          5          6           7  D3 Q4 R! d2 T. \" {; [
    Si        800        800        1000        2000        2000        2000        30003 s; Z/ e. ]/ f1 t8 _/ h, w7 V
    Pi        160        155        155        160        155        150        160
    ! H- |6 v2 x5 I  u& }  一单位钢管的铁路运价如下表:) i& B4 t0 g% H9 C! H, ~* t
    里程(km)        ≤300        301~350        351~400        401~450        451~500" q& v7 H; [; R2 c9 d
    运价(万元)        20        23        26        29        32) ]) n' G8 c! l/ c' f" L, @
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    ' o% F: u. q. o+ c, k运价(万元)        37        44        50        55        60( f+ q! h2 p* T3 B8 N. h+ p. D) u
      1000km以上每增加1至100km运价增加5万元。
    ( D" C0 o. ]. a5 @     公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    & d6 t- c$ a! n  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。9 _5 m! E; l& O% P
    1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。  I( N# N4 T7 h8 R9 S
    2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
    # J5 r' X$ t; ~& y3.如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(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, 2025-12-29 09:49 , Processed in 0.885345 second(s), 85 queries .

    回顶部