QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4415|回复: 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程序。。。。。但是有些看不懂啊~~~那个大神指教一下~~~~
    2 u, F, J$ g: k" @/ Y: A5 T
    . ~: o4 e  H8 cFloyd算法函数在matlab下的M函数文件如下:
    - U3 a" I$ c/ l% [) K/ b- Lfunction [D,path]=floyd(a)
    % ^# \- M0 Q5 a0 }9 V/ E( `! ]n=size(a,1);
    ! S3 O  `+ v5 o6 vD=a;path=zeros(n,n);
    3 d' i6 c3 r# x  Afor i=1:n
    - a# a8 k2 S$ P2 {, f, l  `    for j=1:n, w2 N. r" B" D! l
            if D(i,j)~=inf4 h2 m; t  I' M3 w  f
                path(i,j)=j;/ e: M/ S3 b0 n: L, L* E( a
            end
    & _: P) P3 P4 z7 A! s+ Y6 l! W) d    end
    3 y* Z  m$ }# E  n' Send: u. u& _4 L4 b% h, h
    for k=1:n3 r" ~( v' ^# n3 {( p2 X$ v
        for i=1:n
    , @  ~6 p+ S: W6 `        for j=1:n  o/ g/ y; l3 ]- s# O, |0 T
                if D(i,k)+D(k,j)<D(i,j)3 ^0 q6 D; t* g
                    D(i,j)=D(i,k)+D(k,j);* m/ Q0 @- l- N; r% t) A* c/ ?$ Y
                    path(i,j)=path(i,k);+ h" w) W3 T3 l9 ^! v& H$ d
                end
    2 y7 c' u8 g$ o        end+ [. P1 |5 G1 _4 @' F1 V! ^
        end: k: F- G9 I' |0 R
    end7 L5 G6 O! J, {! F) ~  K+ I1 s
    上面是一个函数,这一部分可以看懂,但是下面这个求最小费的问题就看不懂了。。。。8 T" Z; Y( B- U
    ab=[1 1 2 3 4 5 6 7 8 9 10 11 12 13 15 16 17 18 19 20  20 22 23];- N7 M* Z8 n7 e1 p
    bb=[ 14 15 15 16 19 18 23 24 10 10 11 15 13 14 16 17 19 19 20 21 22 23 24];
    + R1 }4 |% J: s6 Dw=[20 202 1200 690  690 462 70 30 450 80 1150 1100 306 195 720 520 170 88 160 70 320 160 290];
    . t# A. A5 Y0 ]6 D0 d) f3 fab1=[1 2 4 5 6 7 8 9 10 11 14 15 16 17 18 33 34 35];
    6 V3 @7 n# ]' {' a0 G# i( u$ Nbb1=[19 20 21 22 23 24 25 26 27 28 29 30 31 31 19 24 31 32];
    ; _* G  ^) x3 V: c/ E& z, ~6 Dw1=[3 2 600 10 5 10 12 42 70 10 10 62 30 20  104 31 110 20];
    $ J2 |; U" Y9 }7 }a=sparse(ab,bb,w);
    5 P1 Q! Y5 B, u+ a# E$ ja(24,24)=0;
    ' y7 c* S+ q8 m2 X& f- aa=a+a’;# ^2 l& w9 u' D" y) z( ]4 I' [
    a=full(a);- B  y1 g* Z! x
    for i=1:248 P3 J$ N; W+ w3 E1 j
        for j=1:240 K' w6 d$ U2 N7 J# J( @$ Y  B) S
            if(a(i,j)==0&i~=j)5 s3 c3 ?* N" P, R  L* p- @7 I5 E
                a(i,j)=inf;0 l' d- b7 z3 g. C" M  t
            end" B) x( l% y1 E3 t7 c5 ]
        end
    7 w0 R$ S9 W  H# @) N' j4 rend
    1 F" d7 R/ a$ ]; h! q[D,path]=floyd(a);' g" B0 ?/ ^. X, W$ J
    a1=sparse(ab1,bb1,w1);
    7 X4 }/ ]- Y$ W3 c0 ua1(35,35)=0;  Z8 y2 r! \# ~- y5 J" p* Y' [
    a1=a1+(a1)';
    6 `& o! M9 r- S, G4 @4 Ia1=full(a1);
    ' b) p4 j* L3 R* l4 X) v5 ^* ufor i=1:35) \6 l3 G$ r1 s* }% J7 E
        for j=1:35
    : ?/ q) q" m; K* \4 g3 x  `0 d( u        if(a1(i,j)==0&i~=j)
    / E6 X& \; U8 c* J  N: {; b1 Y            a1(i,j)=inf;" S; s3 n- q' r7 W  @7 l- g
            end
    & M4 e" N" B& a    end
    3 k, {. x7 P( ^9 W- d1 Q* Wend
    ' g' |0 w* K( r* o& k( k[D1,path1]=floyd(a1);
      p* Q% O. D- h* s  H上面这一段应该是赋值求最短路了吧,,,但是这赋值是赋得什么值额????有大神的话可以在后面注释一下。。。万分感谢。。。
    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题), H  I& p9 I  |# n
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,
    & G; D6 ~; R! @1 b; x$ |6 U  每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。+ R9 w; O" C- d* ~: M" ~
           为方便计,1km主管道钢管称为1单位钢管。/ ]" I" j3 ?/ k8 k7 s% F
        一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:
    3 p9 |) I: R" U& z, Q  _' }( i8 VI           1           2           3          4          5          6           7
    $ R# j4 z; b( I) ]* Z        800        800        1000        2000        2000        2000        3000
    / o6 n4 ~; O( o1 M* f        160        155        155        160        155        150        160
    3 u; h; Z% L5 a5 a7 N, p  一单位钢管的铁路运价如下表:# h6 e5 {" Y9 p! t" ~$ o
    里程(km)        ≤300        301~350        351~400        401~450        451~500
    " [% d0 `) ^& M/ C0 g/ y运价(万元)        20        23        26        29        32
    ) J& v& S- \, \: D+ E里程(km)        501~600        601~700        701~800        801~900        901~10005 @; q7 u! u. v, a5 [! x  R3 [
    运价(万元)        37        44        50        55        606 f, w8 R7 @# C" e+ w- q
      1000km以上每增加1至100km运价增加5万元。
    ! A6 m) B0 K7 ~2 a1 e. N2 e     公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。) [# H: f4 L% K6 S1 U" R
      钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    1 k1 J7 p) Q( ^; r请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。
    % ~: o9 b2 O# t6 {0 M& L& e请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。3 a# ^3 r. Q- f. w& r2 d# J
    如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(1)的要求给出模型和结果.
    - O  ^$ G1 [0 f3 }/ u, H; O/ Y+ s4 Y3 P! I4 p! u9 `2 x" c5 M8 h& Z
    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题)+ `7 N% j  t1 v! c6 \
         要铺设一条的输送天然气的主管道,如图所示。经筛选后可以生产这种主管道钢管的钢厂有。图中粗线表示铁路,单细线表示公路,双线表示要铺设的管道(假设沿管道或者原有公路,或者建有施工公路),圆圈(点) 表示火车站,+ c* P# ], e1 H) V6 V  y. v
      每段铁路、公路和管道旁的阿拉伯数字表示里程(单位km)。' d: m; e9 s$ f% V
           为方便计,1km主管道钢管称为1单位钢管。
    4 ^* {9 x; i8 c( C6 o  r$ [4 J3 c    一个钢厂如果承担制造这种钢管,至少需要生产500个单位。钢厂在指定期限内能生产该钢管的最大数量为个单位,钢管出厂销价1单位钢管为万元,如下表:% }! M% H& s1 n/ O
    I           1           2           3          4          5          6           7( l( x5 f9 R; m8 Y+ l& C
    Si        800        800        1000        2000        2000        2000        3000
    3 B3 S7 u* a7 Y+ t; V4 KPi        160        155        155        160        155        150        160# l6 x. R8 N- n, y; r9 K$ g% N$ V: d" f% P
      一单位钢管的铁路运价如下表:0 X% ?; w9 Q" T/ s  Q9 g
    里程(km)        ≤300        301~350        351~400        401~450        451~500
    : z- J  r' g! L* o8 o1 n* f运价(万元)        20        23        26        29        32# G8 s% J! l/ j5 @. o9 P% Z
    里程(km)        501~600        601~700        701~800        801~900        901~1000
    ' a8 G2 m( h* g4 @+ c运价(万元)        37        44        50        55        60, B* o9 K2 c4 j6 s  L& f
      1000km以上每增加1至100km运价增加5万元。) S1 n7 u2 k" o* q
         公路运输费用为1单位钢管每公里0·1万元(不足整公里部分按整公里计算)。
    ) p" P9 r; \& p8 I% S9 b  钢管可由铁路、公路运往铺设地点(不只是运到点,而是管道全线)。
    ) c0 d6 f/ g# K1.请制定一个主管道钢管的订购和运输计划,使总费用最小(给出总费用)。% v, l) r# P' D- L/ @
    2.请就(1)的模型分析:哪个钢厂钢管的销价的变化对购运计划和总费用影响最大,哪个钢厂钢管的产量的上限的变化对购运计划和总费用的影响最大,并给出相应的数字结果。
    - T9 ~; x: Q6 A% T2 C3.如果要铺设的管道不是一条线,而是一个树形图,铁路、公路和管道构成网络,请就这种更一般的情况给出一种解决办法,并对图二按(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-9-9 11:58 , Processed in 0.490466 second(s), 86 queries .

    回顶部