数学建模社区-数学中国

标题: 这个怎么用LINGO写编程~!!急。。。 [打印本页]

作者: alanloveai    时间: 2009-7-14 16:50
标题: 这个怎么用LINGO写编程~!!急。。。
里面的a,b,m,B,k,s,R 是已知的,y是要用那个@bin的 ,大概写写,我看看。。。。。急~!!

未命名.jpg (36.79 KB, 下载次数: 202)

未命名.jpg


作者: alanloveai    时间: 2009-7-14 16:51
d也是已知的。。。。才刚学LINGO, 看不懂这么复杂的,555555555
作者: alanloveai    时间: 2009-7-14 16:59
a=1        2        3        4        5        6        7        8        9        10
6        6        5        5        4        3        3        3        2        2
3        2        3        2        2        3        2        3        4        4
6        6        6        5        4        4        3        3        2        2
2        3        2        3        3        3        5        4        5        6
5        4        4        4        3        4        2        2        2        2;!每次最多可以接受的车辆(Aij);

b=1        2        3        4        5        6        7        8        9        10
15        15        18        19        23        24        25        29        44        35
29        39        29        37        35        27        33        28        22        20
14        14        14        17        20        20        25        25        38        45
44        30        35        30        24        25        18        20        16        14
17        19        20        22        27        23        42        32        35        47;!各路线上每辆卡车8小时最多运行次数(Bij);
m=78,85,85,124,85!卸货点折合成车次数;
d=5.26 5.19        4.21        4        2.95        2.74        2.46        1.9        0.64        1.27
1.9        0.99        1.9        1.13        1.27        2.25        1.48        2.04        3.09        3.51
5.89        5.61        5.61        4.56        3.51        3.65        2.46        2.46        1.06        0.57
0.64        1.76        1.27        1.83        2.75        2.6        4.21        3.72        5.05        6.1
4.42        3.86        3.72        3.16        2.25        2.81        0.78        1.62        1.27        0.5;!各铲位到目的地的距离;
k=61        68        64        68        71        81        68        84        87        81;
s=81        71        97        68        74        87        68        74        87        81;
R=30%        28%        29%        32%        31%        33%        32%        31%        33%        31%;
作者: ykl126    时间: 2009-7-14 17:19
还没有学到这个软件
作者: ljwabc115    时间: 2009-7-14 18:32
好像蛮难,蛮复杂的诶
先收了
作者: 神帝在线    时间: 2009-7-14 20:53
给你个教程自己学吧,与建模最密切相关的lingo用法http://www.madio.cn/mcm/viewthread.php?tid=28520&extra=
作者: alanloveai    时间: 2009-7-14 22:06
sets:
changdian / 1..10 /:Fe,cnum,yanshi,kuangshi,flag;
xiedian / 1 .. 5 /:mubiao,xnum;
link( xiedian,changdian ):distance,zuidazeci,number,che,b;
endsets
data:
Fe=30 28 29 32 31 33 32 31 33 31;
mubiao= 1.2 1.3 1.3 1.9 1.3 ;
distance= 5.26 5.19 4.21 4.00 2.95 2.74 2.46 1.90 0.64 1.27
          1.90 0.99 1.90 1.13 1.27 2.25 1.48 2.04 3.09 3.51
          5.89 5.61 5.61 4.56 3.51 3.65 2.46 2.46 1.06 0.57
          0.64 1.76 1.27 1.83 2.74 2.60 4.21 3.72 5.05 6.10
          4.42 3.86 3.72 3.16 2.25 2.81 0.78 1.62 1.27 0.50;
yanshi = 1.25 1.10 1.35 1.05 1.15 1.35 1.05 1.15 1.35 1.25;
kuangshi = 0.95 1.05 1.00 1.05 1.10 1.25 1.05 1.30 1.35 1.25;
b  = 15 15 18 19 23 24 25 29 44 35
     29 39 29 37 35 27 33 28 22 20
     14 14 14 17 20 20 25 25 38 45
     44 30 35 30 24 25 18 20 16 14
     17 19 20 22 27 23 42 32 35 47;!卡车每一条路线上最多可以运行的次数;
zuidazeci=6 6 5 5 4 3 3 3 2 2
         3 2 3 2 2 3 2 3 4 4
         6 6 6 5 4 4 3 3 2 2
         2 3 2 3 3 3 5 4 5 6
         5 4 4 4 3 4 2 2 2 2;!每一条路线上的最大总车次的计算;
enddata
min=@sum(changdian (i):
        @sum ( xiedian (j):
          number (j,i)*154*distance (j,i)));!目标函数;
@for (changdian(j):
      cnum(j)=@sum(xiedian(i):number(i,j)));!计算各个铲位的总产量;
@for (xiedian(i):
      xnum(i)=@sum(changdian(j):number(i,j)));!计算各个卸点的总产量;
@for (link (i,j):
      number(i,j)<=zuidazeci(i,j));!道路能力约束;
@for (changdian (j) :
      cnum(j) <= flag(j)*8*60/5 );!电铲能力约束;
@sum(changdian(j): flag(j) ) <=7; !电铲数量约束;
@for (xiedian (i):
      xnum (i)<=8*20);!卸点能力约束;
@for (changdian (i):number(1,i)+number(2,i)+number(5,i)<=kuangshi(i)*10000/154);
@for (changdian (i):number(3,i)+number(4,i)<=yanshi(i)*10000/154);!铲位产量约束;
@for (xiedian (i):
      xnum (i)>= mubiao (i)*10000/154);!产量任务约束;
@sum(changdian (j):number(1,j)*(Fe(j)-30.5) )<=0;
@sum(changdian (j):number(2,j)*(Fe(j)-30.5) )<=0;
@sum(changdian (j):number(5,j)*(Fe(j)-30.5) )<=0;
@sum(changdian (j):number(1,j)*(Fe(j)-28.5) )>=0;
@sum(changdian (j):number(2,j)*(Fe(j)-28.5) )>=0;
@sum(changdian (j):number(5,j)*(Fe(j)-28.5) )>=0; !铁含量约束;
@for (link (i,j):
       che (i,j)=number (i,j)/b(i,j));!关于车辆的具体分配;
hehe=@sum (link (i,j): che (i,j));!各个路线所需卡车数简单加和;
@for (link (i,j): @gin(number (i,j)));
@for (changdian (j): @bin(flag (j)));!整数约束;
hehe<=20;
ccnum=@sum(changdian (j): cnum(j) );!车辆能力约束;


帮我看下哪里错了。。。。。。
作者: alanloveai    时间: 2009-7-14 22:08
希望有人帮忙啊~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!111
作者: alanloveai    时间: 2009-7-15 19:32
还没有人会?
作者: rever99    时间: 2009-7-23 23:47
oooO ↘┏━┓ ↙ Oooo
( 踩)→┃你┃ ←(死 )
  \ ( →┃√┃ ← ) /
  \_)↗┗━┛ ↖(_/
作者: 吴小王    时间: 2009-8-19 17:09
你牛…………呵呵!这样你都能搞
作者: 秋水长天    时间: 2009-8-19 18:45
循环就行了啊




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5