QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4272|回复: 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程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~
    . N: c/ [3 H( ?4 j% \8 H( @
    4 U9 E3 e  a, h  f+ G" w" Y$ I4 v3 lFloyd算法函数在matlab下的M函数文件如下:
    ( X7 q$ M0 x8 M+ b2 A5 Y$ nfunction [D,path]=floyd(a), p1 c+ o3 k' u) D
    n=size(a,1);4 L' x7 @! ^3 c6 \9 g, B+ o* m
    D=a;path=zeros(n,n);
    ( ?% x! Q$ `" ]" w0 g- J1 Z5 Yfor i=1:n
    5 E9 v+ L$ x8 H5 ^9 G3 L' v    for j=1:n3 y6 n3 X% W5 G& [: ]; K
            if D(i,j)~=inf% m7 L2 v7 U4 M. K, @
                path(i,j)=j;
    0 H- f7 M# g( Z4 o9 U# R        end( a5 {* A5 L8 k& J6 {$ _  Z1 V
        end
    / Q' g5 ~( q# zend7 F5 _+ j( Y3 g4 x% S1 k
    for k=1:n
    - h3 a$ b1 M4 ?# l    for i=1:n
      {+ W9 d$ _9 [( U- R        for j=1:n
    / {8 ?' Z6 B  E+ J; Y) B            if D(i,k)+D(k,j)<D(i,j)2 I2 D( R6 c) |9 b9 \
                    D(i,j)=D(i,k)+D(k,j);
    9 O! I" ]$ }0 a# u  s2 n                path(i,j)=path(i,k);) W* b) a1 w$ C+ j( V  @
                end
    1 H$ N- x' K$ q# h4 f0 p2 d4 f        end
    $ {! X& K; a9 L& A' k$ W    end
    2 J4 `2 j. F( {! fend8 n1 W; T$ o+ i  @- ^0 L* P: S, Z
    上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。
    % _$ {2 [, E9 A* L( F& S+ Bab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];
    , O6 C8 I" {. k5 _bb=[ 14 15 15 16 19 18 23 24 10 10 11 15 13 14 16 17 19 19 20 21 22 23 24];3 M% R  r. `! v# e/ P
    w=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    $ m1 T) t# x( U' f! W# Zab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];
    . S7 W$ B5 C% f! xbb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];
    $ X6 `, _8 Q8 a# t3 V3 }w1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];9 s* L0 s. U1 |' P
    a=sparse(ab,bb,w);! X# w4 y. p# V1 J1 W8 B  p
    a(24,24)=0;; o! f# v' e- g( P* q) X  ?7 k5 F
    a=a+a’;0 V2 X# H" |8 B9 |8 C
    a=full(a);
    1 C: I3 S0 Z$ J0 Efor i=1:24
    2 ?9 E4 g  U# S' `* a$ U% w2 Z9 t    for j=1:24
    7 b1 U& T5 x' ~. a6 V+ Q: w9 V) T        if(a(i,j)==0&i~=j)) X) |/ n; m2 m! h& i
                a(i,j)=inf;
    7 u, T% O* o, a% M7 x7 O        end
    ' O. g: |' O- l! K9 \- M3 n9 f" e& W    end
    # ~' G* p1 W2 |" F  oend- j! S) Z  w% j; O- J, \6 @
    [D,path]=floyd(a);9 g( a$ q7 y5 _  @3 j6 @. A8 f* V( a
    a1=sparse(ab1,bb1,w1);
    5 ?1 i+ g; a; D$ j8 O  @- c) za1(35,35)=0;
    . P% S0 e' t+ o. D6 Ha1=a1+(a1)';
    5 H9 r( h( D1 H: |7 ~a1=full(a1);) A/ [. g6 A6 V, r! P0 `
    for i=1:35
    + K) S4 X3 @3 ^8 w    for j=1:352 |" r, W& G2 T. K
            if(a1(i,j)==0&i~=j)4 t- {0 I! [% A. k9 X5 m- r
                a1(i,j)=inf;% i* x8 A( m+ ^6 y0 K4 T
            end
    8 x3 [% j4 Q' s9 [! T    end2 F8 Y' E% r& P. H& q6 s% R7 o5 V
    end2 A) ]/ G: o: k/ Q4 T* M
    [D1,path1]=floyd(a1);
    & n4 E4 K" P9 c+ s上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    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题)
    * G, J: ^: h: U* w     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,
    % O4 F% J5 Z+ v  每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。/ H2 V7 u/ M* |/ R3 L* x) J
           为方便计,1km主管道钢管称为1单位钢管。
    7 O. u0 i* a; J! D/ Z5 N5 {, g    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:- m8 _/ A' m& Z# N' J, L
    I           1           2           3          4          5          6           7
    8 p9 \( K. L: W; ~! {" y% B        800        800        1000        2000        2000        2000        3000
    3 t0 K8 N: \# U        160        155        155        160        155        150        160! V/ L! h  g, w* R* [+ H
      一单位钢管的铁路运价如下表:0 s" h! X. @+ z2 o' P* x( z
    里程(km)        ≤300        301~350        351~400        401~450        451~500
    + y( Q0 c4 V6 f: S9 l运价(万元)        20        23        26        29        32
    8 u8 `) h/ ~( [里程(km)        501~600        601~700        701~800        801~900        901~1000
    3 z) |. {6 ?5 a运价(万元)        37        44        50        55        60
    & s/ m; O) \: s# C! Z7 x8 j$ u  1000km以上每增加1至100km运价增加5万元。# S7 l2 F$ K0 {8 H$ w3 }
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    2 {+ [: h0 M  a( M- i4 f% L  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    - _; P0 e( F" e: A! g请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。9 o6 G! {; ^2 X; v$ q' D4 h
    请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。+ o; p4 |5 G. |0 A
    如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.6 w& M5 C% Z( D1 s
    ; }; v8 M, k5 w& D6 R
    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题)
    ( Z) x, ?: e. j+ ]! p3 n     要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,8 n! F7 M4 {3 L" m' v3 u' d
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。
    4 h5 D6 Y: f  i2 V; c2 i       为方便计,1km主管道钢管称为1单位钢管。2 }: z# {1 C2 H+ n% S
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    / t# L+ U, y: rI           1           2           3          4          5          6           7
    ; D4 U: T# \* \( USi        800        800        1000        2000        2000        2000        3000& x5 P' X) G. J3 m5 _: q* _. M1 j
    Pi        160        155        155        160        155        150        160
    5 n+ [& T% i. l; g( w. ^% V0 K  一单位钢管的铁路运价如下表:
    & g% x. g0 r7 z8 r2 d! U里程(km)        ≤300        301~350        351~400        401~450        451~5003 h% I: X) a2 [
    运价(万元)        20        23        26        29        322 A! q7 S, t8 x
    里程(km)        501~600        601~700        701~800        801~900        901~1000( Z4 c: n$ q; r/ M8 L8 Q
    运价(万元)        37        44        50        55        60
    8 R0 N* C: ?; g) W3 F& R7 }  1000km以上每增加1至100km运价增加5万元。
    0 T% g  }+ m! h     公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    3 t" [: `6 Q2 ~' f4 o6 a- p+ J$ ^" }  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。# f$ ?! _+ D0 V; o% F) \
    1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。# t7 K. v6 [0 q) F
    2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
    8 Z0 s; J5 y: j( X, d/ _0 B' W  h3.如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(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-4-21 15:31 , Processed in 0.503611 second(s), 86 queries .

    回顶部