数学建模社区-数学中国

标题: 用lingo求解下面程序捞出现error code50(for函数用错),但检查没错误啊,求指点啊! [打印本页]

作者: nightmare啊    时间: 2012-8-6 13:21
标题: 用lingo求解下面程序捞出现error code50(for函数用错),但检查没错误啊,求指点啊!
model:
sets:
wh/wh1 wh2 wh3 wh4 wh5 wh6/:capacity;
ven/v1 v2 v3 v4 v5 v6/:demand;
links(wh,ven):cost,volume;
endsets
min=@sum(links(i,j):
cost(i,j)*volume(i,j);

@for(ven(j):
@sum(wh(i):volume(i,j))=demand(j));
@for(wh(i):
@sum(ven(j):volume(i,j))<=capacity(i));
data:
capacity=60 55 51 43 41 52;
demand=35 37 22 32 41 32 43 38;
cost=6 2 6 7 4 2 5 9
     4 9 5 3 8 5 8 2
     5 2 1 9 7 4 3 3
     7 6 7 3 9 2 7 1
     2 3 9 5 7 2 6 5
     5 5 2 2 8 1 4 3
enddata
end
作者: head_@_WOLF    时间: 2012-8-6 15:26
min=@sum(links(i,j):cost(i,j)*volume(i,j));
作者: head_@_WOLF    时间: 2012-8-6 15:30
Global optimal solution found.
  Objective value:                              664.0000
  Total solver iterations:                            15


                       Variable           Value        Reduced Cost
                   CAPACITY( 1)        60.00000            0.000000
                   CAPACITY( 2)        55.00000            0.000000
                   CAPACITY( 3)        51.00000            0.000000
                   CAPACITY( 4)        43.00000            0.000000
                   CAPACITY( 5)        41.00000            0.000000
                   CAPACITY( 6)        52.00000            0.000000
                     DEMAND( 1)        35.00000            0.000000
                     DEMAND( 2)        37.00000            0.000000
                     DEMAND( 3)        22.00000            0.000000
                     DEMAND( 4)        32.00000            0.000000
                     DEMAND( 5)        41.00000            0.000000
                     DEMAND( 6)        32.00000            0.000000
                     DEMAND( 7)        43.00000            0.000000
                     DEMAND( 8)        38.00000            0.000000
                    COST( 1, 1)        6.000000            0.000000
                    COST( 1, 2)        2.000000            0.000000
                    COST( 1, 3)        6.000000            0.000000
                    COST( 1, 4)        7.000000            0.000000
                    COST( 1, 5)        4.000000            0.000000
                    COST( 1, 6)        2.000000            0.000000
                    COST( 1, 7)        5.000000            0.000000
                    COST( 1, 8)        9.000000            0.000000
                    COST( 2, 1)        4.000000            0.000000
                    COST( 2, 2)        9.000000            0.000000
                    COST( 2, 3)        5.000000            0.000000
                    COST( 2, 4)        3.000000            0.000000
                    COST( 2, 5)        8.000000            0.000000
                    COST( 2, 6)        5.000000            0.000000
                    COST( 2, 7)        8.000000            0.000000
                    COST( 2, 8)        2.000000            0.000000
                    COST( 3, 1)        5.000000            0.000000
                    COST( 3, 2)        2.000000            0.000000
                    COST( 3, 3)        1.000000            0.000000
                    COST( 3, 4)        9.000000            0.000000
                    COST( 3, 5)        7.000000            0.000000
                    COST( 3, 6)        4.000000            0.000000
                    COST( 3, 7)        3.000000            0.000000
                    COST( 3, 8)        3.000000            0.000000
                    COST( 4, 1)        7.000000            0.000000
                    COST( 4, 2)        6.000000            0.000000
                    COST( 4, 3)        7.000000            0.000000
                    COST( 4, 4)        3.000000            0.000000
                    COST( 4, 5)        9.000000            0.000000
                    COST( 4, 6)        2.000000            0.000000
                    COST( 4, 7)        7.000000            0.000000
                    COST( 4, 8)        1.000000            0.000000
                    COST( 5, 1)        2.000000            0.000000
                    COST( 5, 2)        3.000000            0.000000
                    COST( 5, 3)        9.000000            0.000000
                    COST( 5, 4)        5.000000            0.000000
                    COST( 5, 5)        7.000000            0.000000
                    COST( 5, 6)        2.000000            0.000000
                    COST( 5, 7)        6.000000            0.000000
                    COST( 5, 8)        5.000000            0.000000
                    COST( 6, 1)        5.000000            0.000000
                    COST( 6, 2)        5.000000            0.000000
                    COST( 6, 3)        2.000000            0.000000
                    COST( 6, 4)        2.000000            0.000000
                    COST( 6, 5)        8.000000            0.000000
                    COST( 6, 6)        1.000000            0.000000
                    COST( 6, 7)        4.000000            0.000000
                    COST( 6, 8)        3.000000            0.000000
                  VOLUME( 1, 1)        0.000000            5.000000
                  VOLUME( 1, 2)        19.00000            0.000000
                  VOLUME( 1, 3)        0.000000            5.000000
                  VOLUME( 1, 4)        0.000000            7.000000
                  VOLUME( 1, 5)        41.00000            0.000000
                  VOLUME( 1, 6)        0.000000            2.000000
                  VOLUME( 1, 7)        0.000000            2.000000
                  VOLUME( 1, 8)        0.000000            10.00000
                  VOLUME( 2, 1)        1.000000            0.000000
                  VOLUME( 2, 2)        0.000000            4.000000
                  VOLUME( 2, 3)        0.000000            1.000000
                  VOLUME( 2, 4)        32.00000            0.000000
                  VOLUME( 2, 5)        0.000000            1.000000
                  VOLUME( 2, 6)        0.000000            2.000000
                  VOLUME( 2, 7)        0.000000            2.000000
                  VOLUME( 2, 8)        0.000000            0.000000
                  VOLUME( 3, 1)        0.000000            4.000000
                  VOLUME( 3, 2)        11.00000            0.000000
                  VOLUME( 3, 3)        0.000000            0.000000
                  VOLUME( 3, 4)        0.000000            9.000000
                  VOLUME( 3, 5)        0.000000            3.000000
                  VOLUME( 3, 6)        0.000000            4.000000
                  VOLUME( 3, 7)        40.00000            0.000000
                  VOLUME( 3, 8)        0.000000            4.000000
                  VOLUME( 4, 1)        0.000000            4.000000
                  VOLUME( 4, 2)        0.000000            2.000000
                  VOLUME( 4, 3)        0.000000            4.000000
                  VOLUME( 4, 4)        0.000000            1.000000
                  VOLUME( 4, 5)        0.000000            3.000000
                  VOLUME( 4, 6)        5.000000            0.000000
                  VOLUME( 4, 7)        0.000000            2.000000
                  VOLUME( 4, 8)        38.00000            0.000000
                  VOLUME( 5, 1)        34.00000            0.000000
                  VOLUME( 5, 2)        7.000000            0.000000
                  VOLUME( 5, 3)        0.000000            7.000000
                  VOLUME( 5, 4)        0.000000            4.000000
                  VOLUME( 5, 5)        0.000000            2.000000
                  VOLUME( 5, 6)        0.000000            1.000000
                  VOLUME( 5, 7)        0.000000            2.000000
                  VOLUME( 5, 8)        0.000000            5.000000
                  VOLUME( 6, 1)        0.000000            3.000000
                  VOLUME( 6, 2)        0.000000            2.000000
                  VOLUME( 6, 3)        22.00000            0.000000
                  VOLUME( 6, 4)        0.000000            1.000000
                  VOLUME( 6, 5)        0.000000            3.000000
                  VOLUME( 6, 6)        27.00000            0.000000
                  VOLUME( 6, 7)        3.000000            0.000000
                  VOLUME( 6, 8)        0.000000            3.000000

                            Row    Slack or Surplus      Dual Price
                              1        664.0000           -1.000000
                              2        0.000000           -4.000000
                              3        0.000000           -5.000000
                              4        0.000000           -4.000000
                              5        0.000000           -3.000000
                              6        0.000000           -7.000000
                              7        0.000000           -3.000000
                              8        0.000000           -6.000000
                              9        0.000000           -2.000000
                             10        0.000000            3.000000
                             11        22.00000            0.000000
                             12        0.000000            3.000000
                             13        0.000000            1.000000
                             14        0.000000            2.000000
                             15        0.000000            2.000000

model:
sets:
wh/1..6/:capacity;
ven/1..8/:demand;
links(wh,ven):cost,volume;
endsets
min=@sum(links(i,j):cost(i,j)*volume(i,j));
@for(ven(j)sum(wh(i):volume(i,j))=demand(j));
@for(wh(i)sum(ven(j):volume(i,j))<=capacity(i));
data:
capacity=60 55 51 43 41 52;
demand=35 37 22 32 41 32 43 38;
cost=6 2 6 7 4 2 5 9
     4 9 5 3 8 5 8 2
     5 2 1 9 7 4 3 3
     7 6 7 3 9 2 7 1
     2 3 9 5 7 2 6 5
     5 5 2 2 8 1 4 3;
enddata
end


作者: head_@_WOLF    时间: 2012-8-6 15:30
model:
sets:
wh/1..6/:capacity;
ven/1..8/:demand;
links(wh,ven):cost,volume;
endsets
min=@sum(links(i,j):cost(i,j)*volume(i,j));
@for(ven(j)sum(wh(i):volume(i,j))=demand(j));
@for(wh(i)sum(ven(j):volume(i,j))<=capacity(i));
data:
capacity=60 55 51 43 41 52;
demand=35 37 22 32 41 32 43 38;
cost=6 2 6 7 4 2 5 9
     4 9 5 3 8 5 8 2
     5 2 1 9 7 4 3 3
     7 6 7 3 9 2 7 1
     2 3 9 5 7 2 6 5
     5 5 2 2 8 1 4 3;
enddata
end


作者: zhangc_ningbo    时间: 2012-8-6 15:44
目标函数后面少了个括号!
作者: nightmare啊    时间: 2012-8-7 18:51
head_@_WOLF 发表于 2012-8-6 15:26
min=@sum(links(i,j):cost(i,j)*volume(i,j));

谢啦,改过来啦




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