数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
楼主: dingjun

lingo代码求教

[复制链接]
发表于 2008-4-6 14:47:00 | 显示全部楼层 |阅读模式
  1. model:
  2. sets:
  3. pipe/1..200/:n;
  4. size/1..4/:length,need;
  5. links(size,pipe):number;
  6. endsets
  7. data:
  8. length=1.5 1.45 1.3 0.35;
  9. need=200 200 300 1200;
  10. enddata
  11. @for(pipe(j):@bin(n(j)));
  12. @for(links(i,j):@gin(number(i,j)));
  13. @for(pipe(i)|i#lt#200:n(i)>=n(i+1));
  14. @for(pipe(j):@sum(size(i):length(i)*number(i,j))<=8*n(j));
  15. @for(size(i):@sum(pipe(j):number(i,j))=need(i));
  16. min=@sum(pipe(i):n(i));
复制代码
  

以上是我写的lingo代码,无法运行,求高人指教
发表于 2008-4-6 16:31:54 | 显示全部楼层
我要看的是数学表达试!
 楼主| 发表于 2008-4-6 18:59:19 | 显示全部楼层
多明显的数学式啊,强人同志
 楼主| 发表于 2008-4-6 20:03:24 | 显示全部楼层
代码没错,溢出了
发表于 2008-4-6 21:58:23 | 显示全部楼层
呵呵,同学你认为就这种规模的问题在计算机上会发生溢出,你不觉得你的程序很有问题吗?不是说语法没错程序就一定对的.我用的lingo是正版的10.0版本根本无法计算你的程序.求助也是需要耐性的......
 楼主| 发表于 2008-4-6 22:04:59 | 显示全部楼层
你把need里的数全改至小于10就可以运行了
 楼主| 发表于 2008-4-6 22:20:50 | 显示全部楼层
请问你的正版lingo10.0多少钱买的,我也想买.
发表于 2008-4-7 12:56:25 | 显示全部楼层
正版起码要十几万呢!
发表于 2008-4-17 22:01:14 | 显示全部楼层
唉,想找正版或破解的lingo10 或11,又没多少钱呀。谁能帮忙呀?
发表于 2008-4-18 19:38:41 | 显示全部楼层
同志,我很负责的告诉你,你的模型可以解,但是你可能用的是DEMO版本无法超过整型32个变量的版本,可能显示超过变量数目。

但是1000个变量的PILP模型,想要求得全局最优解是有困难的,更何况你有一条强严格约束
你的模型写的也不是非常好读,我帮你改了一下顺序和语法(不要吝啬用空行):

model:
sets:
  pipe/1..200/:n;
  size/1..4/:length,need;
  links(size,pipe):number;
endsets
data:
  length=1.5 1.45 1.3 0.35;
  need  =200 200  300 1200;
enddata

    min=@sum(pipe:n);

@for(pipe(i)|i#lt#200:n(i)>=n(i+1));

@for(pipe(j):
  @sum(size(i):length(i)*number(i,j))
  <= 8*n(j)
);

@for(size(i):
  @sum(pipe(j):number(i,j))
  = need(i)
);

@for(pipe: @bin(n));
@for(links: @Gin(number));
end

我帮你求了个可行解,如下:
  Feasible solution found.  
Objective value:  186.0000

                    Variable            Value            Reduced Cost
                  NUMBER( 1, 1)        1.000000            0.000000
                  NUMBER( 1, 2)        5.000000            0.000000
                  NUMBER( 1, 3)        5.000000            0.000000
                  NUMBER( 1, 4)        5.000000            0.000000
                  NUMBER( 1, 5)        2.000000            0.000000
                  NUMBER( 1, 6)        5.000000            0.000000
                  NUMBER( 1, 8)        2.000000            0.000000
                 NUMBER( 1, 10)        1.000000            0.000000
                 NUMBER( 1, 15)        1.000000            0.000000
                 NUMBER( 1, 19)        5.000000            0.000000
                 NUMBER( 1, 20)        5.000000            0.000000
                 NUMBER( 1, 21)        5.000000            0.000000
                 NUMBER( 1, 22)        5.000000            0.000000
                 NUMBER( 1, 23)        5.000000            0.000000
                 NUMBER( 1, 24)        5.000000            0.000000
                 NUMBER( 1, 25)        5.000000            0.000000
                 NUMBER( 1, 26)        5.000000            0.000000
                 NUMBER( 1, 27)        5.000000            0.000000
                 NUMBER( 1, 28)        5.000000            0.000000
                 NUMBER( 1, 30)        5.000000            0.000000
                 NUMBER( 1, 31)        5.000000            0.000000
                 NUMBER( 1, 32)        5.000000            0.000000
                 NUMBER( 1, 33)        5.000000            0.000000
                 NUMBER( 1, 34)        5.000000            0.000000
                 NUMBER( 1, 35)        5.000000            0.000000
                 NUMBER( 1, 36)        5.000000            0.000000
                 NUMBER( 1, 37)        5.000000            0.000000
                 NUMBER( 1, 38)        5.000000            0.000000
                 NUMBER( 1, 39)        5.000000            0.000000
                 NUMBER( 1, 40)        5.000000            0.000000
                 NUMBER( 1, 41)        5.000000            0.000000
                 NUMBER( 1, 42)        5.000000            0.000000
                 NUMBER( 1, 43)        5.000000            0.000000
                 NUMBER( 1, 57)        5.000000            0.000000
                 NUMBER( 1, 76)        5.000000            0.000000
                 NUMBER( 1, 80)        5.000000            0.000000
                 NUMBER( 1, 81)        5.000000            0.000000
                NUMBER( 1, 117)        2.000000            0.000000
                NUMBER( 1, 118)        1.000000            0.000000
                NUMBER( 1, 119)        2.000000            0.000000
                NUMBER( 1, 128)        5.000000            0.000000
                NUMBER( 1, 130)        1.000000            0.000000
                NUMBER( 1, 141)        1.000000            0.000000
                NUMBER( 1, 143)        1.000000            0.000000
                NUMBER( 1, 150)        4.000000            0.000000
                NUMBER( 1, 153)        4.000000            0.000000
                NUMBER( 1, 154)        1.000000            0.000000
                NUMBER( 1, 158)        4.000000            0.000000
                NUMBER( 1, 159)        3.000000            0.000000
                NUMBER( 1, 175)        2.000000            0.000000
                NUMBER( 1, 184)        1.000000            0.000000
                NUMBER( 1, 186)        1.000000            0.000000
                 NUMBER( 2, 61)        5.000000            0.000000
                 NUMBER( 2, 63)        5.000000            0.000000
                 NUMBER( 2, 64)        5.000000            0.000000
                 NUMBER( 2, 65)        5.000000            0.000000
                 NUMBER( 2, 66)        5.000000            0.000000
                 NUMBER( 2, 67)        5.000000            0.000000
                 NUMBER( 2, 68)        5.000000            0.000000
                 NUMBER( 2, 69)        5.000000            0.000000
                 NUMBER( 2, 70)        5.000000            0.000000
                 NUMBER( 2, 71)        5.000000            0.000000
                 NUMBER( 2, 73)        5.000000            0.000000
                 NUMBER( 2, 92)        5.000000            0.000000
                 NUMBER( 2, 93)        5.000000            0.000000
                 NUMBER( 2, 94)        5.000000            0.000000
                 NUMBER( 2, 97)        5.000000            0.000000
                 NUMBER( 2, 98)        5.000000            0.000000
                 NUMBER( 2, 99)        5.000000            0.000000
                NUMBER( 2, 100)        1.000000            0.000000
                NUMBER( 2, 101)        5.000000            0.000000
                NUMBER( 2, 102)        5.000000            0.000000
                NUMBER( 2, 104)        1.000000            0.000000
                NUMBER( 2, 106)        1.000000            0.000000
                NUMBER( 2, 111)        3.000000            0.000000
                NUMBER( 2, 113)        1.000000            0.000000
                NUMBER( 2, 114)        2.000000            0.000000
                NUMBER( 2, 115)        4.000000            0.000000
                NUMBER( 2, 119)        3.000000            0.000000
                NUMBER( 2, 120)        5.000000            0.000000
                NUMBER( 2, 121)        5.000000            0.000000
                NUMBER( 2, 122)        5.000000            0.000000
                NUMBER( 2, 123)        5.000000            0.000000
                NUMBER( 2, 124)        4.000000            0.000000
                NUMBER( 2, 125)        5.000000            0.000000
                NUMBER( 2, 126)        5.000000            0.000000
                NUMBER( 2, 129)        5.000000            0.000000
                NUMBER( 2, 138)        5.000000            0.000000
                NUMBER( 2, 140)        4.000000            0.000000
                NUMBER( 2, 144)        2.000000            0.000000
                NUMBER( 2, 147)        5.000000            0.000000
                NUMBER( 2, 148)        2.000000            0.000000
                NUMBER( 2, 156)        1.000000            0.000000
                NUMBER( 2, 157)        5.000000            0.000000
                NUMBER( 2, 158)        1.000000            0.000000
                NUMBER( 2, 161)        5.000000            0.000000
                NUMBER( 2, 163)        5.000000            0.000000
                NUMBER( 2, 165)        3.000000            0.000000
                NUMBER( 2, 168)        2.000000            0.000000
                NUMBER( 2, 170)        2.000000            0.000000
                NUMBER( 2, 174)        2.000000            0.000000
                NUMBER( 2, 175)        1.000000            0.000000
                NUMBER( 2, 182)        1.000000            0.000000
                NUMBER( 2, 186)        4.000000            0.000000
                  NUMBER( 3, 1)        5.000000            0.000000
                  NUMBER( 3, 5)        3.000000            0.000000
                  NUMBER( 3, 7)        6.000000            0.000000
                  NUMBER( 3, 8)        1.000000            0.000000
                  NUMBER( 3, 9)        3.000000            0.000000
                 NUMBER( 3, 10)        1.000000            0.000000
                 NUMBER( 3, 12)        3.000000            0.000000
                 NUMBER( 3, 14)        3.000000            0.000000
                 NUMBER( 3, 15)        1.000000            0.000000
                 NUMBER( 3, 17)        6.000000            0.000000
                 NUMBER( 3, 18)        5.000000            0.000000
                 NUMBER( 3, 44)        6.000000            0.000000
                 NUMBER( 3, 48)        6.000000            0.000000
                 NUMBER( 3, 54)        3.000000            0.000000
                 NUMBER( 3, 55)        3.000000            0.000000
                 NUMBER( 3, 56)        6.000000            0.000000
                 NUMBER( 3, 58)        6.000000            0.000000
                 NUMBER( 3, 72)        1.000000            0.000000
                 NUMBER( 3, 75)        6.000000            0.000000
                 NUMBER( 3, 77)        4.000000            0.000000
                 NUMBER( 3, 78)        6.000000            0.000000
                 NUMBER( 3, 82)        1.000000            0.000000
                 NUMBER( 3, 87)        4.000000            0.000000
                 NUMBER( 3, 88)        1.000000            0.000000
                 NUMBER( 3, 91)        1.000000            0.000000
                NUMBER( 3, 103)        6.000000            0.000000
                NUMBER( 3, 104)        5.000000            0.000000
                NUMBER( 3, 105)        6.000000            0.000000
                NUMBER( 3, 114)        3.000000            0.000000
                NUMBER( 3, 115)        1.000000            0.000000
                NUMBER( 3, 116)        1.000000            0.000000
                NUMBER( 3, 130)        2.000000            0.000000
                NUMBER( 3, 131)        6.000000            0.000000
                NUMBER( 3, 132)        6.000000            0.000000
                NUMBER( 3, 133)        5.000000            0.000000
                NUMBER( 3, 134)        5.000000            0.000000
                NUMBER( 3, 135)        2.000000            0.000000
                NUMBER( 3, 136)        6.000000            0.000000
                NUMBER( 3, 137)        6.000000            0.000000
                NUMBER( 3, 139)        6.000000            0.000000
                NUMBER( 3, 140)        1.000000            0.000000
                NUMBER( 3, 141)        5.000000            0.000000
                NUMBER( 3, 142)        4.000000            0.000000
                NUMBER( 3, 143)        3.000000            0.000000
                NUMBER( 3, 144)        1.000000            0.000000
                NUMBER( 3, 145)        6.000000            0.000000
                NUMBER( 3, 146)        6.000000            0.000000
                NUMBER( 3, 148)        3.000000            0.000000
                NUMBER( 3, 149)        6.000000            0.000000
                NUMBER( 3, 150)        1.000000            0.000000
                NUMBER( 3, 151)        6.000000            0.000000
                NUMBER( 3, 152)        6.000000            0.000000
                NUMBER( 3, 154)        2.000000            0.000000
                NUMBER( 3, 155)        5.000000            0.000000
                NUMBER( 3, 156)        5.000000            0.000000
                NUMBER( 3, 159)        2.000000            0.000000
                NUMBER( 3, 160)        6.000000            0.000000
                NUMBER( 3, 162)        6.000000            0.000000
                NUMBER( 3, 164)        1.000000            0.000000
                NUMBER( 3, 165)        1.000000            0.000000
                NUMBER( 3, 166)        6.000000            0.000000
                NUMBER( 3, 167)        6.000000            0.000000
                NUMBER( 3, 169)        6.000000            0.000000
                NUMBER( 3, 170)        2.000000            0.000000
                NUMBER( 3, 173)        6.000000            0.000000
                NUMBER( 3, 176)        6.000000            0.000000
                NUMBER( 3, 178)        6.000000            0.000000
                NUMBER( 3, 179)        6.000000            0.000000
                NUMBER( 3, 180)        6.000000            0.000000
                NUMBER( 3, 181)        6.000000            0.000000
                NUMBER( 3, 182)        5.000000            0.000000
                NUMBER( 3, 183)        6.000000            0.000000
                  NUMBER( 4, 2)        1.000000            0.000000
                  NUMBER( 4, 3)        1.000000            0.000000
                  NUMBER( 4, 4)        1.000000            0.000000
                  NUMBER( 4, 5)        3.000000            0.000000
                  NUMBER( 4, 6)        1.000000            0.000000
                  NUMBER( 4, 8)        10.00000            0.000000
                  NUMBER( 4, 9)        11.00000            0.000000
                 NUMBER( 4, 10)        14.00000            0.000000
                 NUMBER( 4, 11)        22.00000            0.000000
                 NUMBER( 4, 12)        11.00000            0.000000
                 NUMBER( 4, 13)        22.00000            0.000000
                 NUMBER( 4, 14)        11.00000            0.000000
                 NUMBER( 4, 15)        14.00000            0.000000
                 NUMBER( 4, 16)        22.00000            0.000000
                 NUMBER( 4, 18)        4.000000            0.000000
                 NUMBER( 4, 19)        1.000000            0.000000
                 NUMBER( 4, 20)        1.000000            0.000000
                 NUMBER( 4, 21)        1.000000            0.000000
                 NUMBER( 4, 22)        1.000000            0.000000
                 NUMBER( 4, 23)        1.000000            0.000000
                 NUMBER( 4, 24)        1.000000            0.000000
                 NUMBER( 4, 25)        1.000000            0.000000
                 NUMBER( 4, 26)        1.000000            0.000000
                 NUMBER( 4, 27)        1.000000            0.000000
                 NUMBER( 4, 28)        1.000000            0.000000
                 NUMBER( 4, 29)        22.00000            0.000000
                 NUMBER( 4, 30)        1.000000            0.000000
                 NUMBER( 4, 31)        1.000000            0.000000
                 NUMBER( 4, 32)        1.000000            0.000000
                 NUMBER( 4, 33)        1.000000            0.000000
                 NUMBER( 4, 34)        1.000000            0.000000
                 NUMBER( 4, 35)        1.000000            0.000000
                 NUMBER( 4, 36)        1.000000            0.000000
                 NUMBER( 4, 37)        1.000000            0.000000
                 NUMBER( 4, 38)        1.000000            0.000000
                 NUMBER( 4, 39)        1.000000            0.000000
                 NUMBER( 4, 40)        1.000000            0.000000
                 NUMBER( 4, 41)        1.000000            0.000000
                 NUMBER( 4, 42)        1.000000            0.000000
                 NUMBER( 4, 43)        1.000000            0.000000
                 NUMBER( 4, 45)        22.00000            0.000000
                 NUMBER( 4, 46)        22.00000            0.000000
                 NUMBER( 4, 47)        22.00000            0.000000
                 NUMBER( 4, 49)        22.00000            0.000000
                 NUMBER( 4, 50)        22.00000            0.000000
                 NUMBER( 4, 51)        22.00000            0.000000
                 NUMBER( 4, 52)        22.00000            0.000000
                 NUMBER( 4, 53)        22.00000            0.000000
                 NUMBER( 4, 54)        11.00000            0.000000
                 NUMBER( 4, 55)        11.00000            0.000000
                 NUMBER( 4, 57)        1.000000            0.000000
                 NUMBER( 4, 59)        22.00000            0.000000
                 NUMBER( 4, 60)        22.00000            0.000000
                 NUMBER( 4, 61)        1.000000            0.000000
                 NUMBER( 4, 62)        22.00000            0.000000
                 NUMBER( 4, 63)        2.000000            0.000000
                 NUMBER( 4, 64)        2.000000            0.000000
                 NUMBER( 4, 65)        1.000000            0.000000
                 NUMBER( 4, 72)        15.00000            0.000000
                 NUMBER( 4, 74)        22.00000            0.000000
                 NUMBER( 4, 76)        1.000000            0.000000
                 NUMBER( 4, 77)        4.000000            0.000000
                 NUMBER( 4, 79)        22.00000            0.000000
                 NUMBER( 4, 82)        17.00000            0.000000
                 NUMBER( 4, 83)        22.00000            0.000000
                 NUMBER( 4, 84)        22.00000            0.000000
                 NUMBER( 4, 85)        22.00000            0.000000
                 NUMBER( 4, 86)        22.00000            0.000000
                 NUMBER( 4, 87)        6.000000            0.000000
                 NUMBER( 4, 88)        17.00000            0.000000
                 NUMBER( 4, 89)        22.00000            0.000000
                 NUMBER( 4, 90)        22.00000            0.000000
                 NUMBER( 4, 91)        16.00000            0.000000
                 NUMBER( 4, 92)        2.000000            0.000000
                 NUMBER( 4, 93)        2.000000            0.000000
                 NUMBER( 4, 94)        2.000000            0.000000
                 NUMBER( 4, 95)        22.00000            0.000000
                 NUMBER( 4, 96)        22.00000            0.000000
                 NUMBER( 4, 97)        2.000000            0.000000
                 NUMBER( 4, 98)        2.000000            0.000000
                 NUMBER( 4, 99)        2.000000            0.000000
                NUMBER( 4, 100)        18.00000            0.000000
                NUMBER( 4, 101)        2.000000            0.000000
                NUMBER( 4, 102)        2.000000            0.000000
                NUMBER( 4, 106)        18.00000            0.000000
                NUMBER( 4, 107)        22.00000            0.000000
                NUMBER( 4, 108)        22.00000            0.000000
                NUMBER( 4, 109)        22.00000            0.000000
                NUMBER( 4, 110)        22.00000            0.000000
                NUMBER( 4, 111)        10.00000            0.000000
                NUMBER( 4, 112)        22.00000            0.000000
                NUMBER( 4, 113)        18.00000            0.000000
                NUMBER( 4, 114)        3.000000            0.000000
                NUMBER( 4, 115)        2.000000            0.000000
                NUMBER( 4, 116)        19.00000            0.000000
                NUMBER( 4, 117)        14.00000            0.000000
                NUMBER( 4, 118)        1.000000            0.000000
                NUMBER( 4, 119)        1.000000            0.000000
                NUMBER( 4, 120)        2.000000            0.000000
                NUMBER( 4, 121)        2.000000            0.000000
                NUMBER( 4, 122)        2.000000            0.000000
                NUMBER( 4, 123)        2.000000            0.000000
                NUMBER( 4, 124)        6.000000            0.000000
                NUMBER( 4, 125)        2.000000            0.000000
                NUMBER( 4, 126)        2.000000            0.000000
                NUMBER( 4, 127)        22.00000            0.000000
                NUMBER( 4, 128)        1.000000            0.000000
                NUMBER( 4, 129)        2.000000            0.000000
                NUMBER( 4, 133)        4.000000            0.000000
                NUMBER( 4, 135)        15.00000            0.000000
                NUMBER( 4, 138)        2.000000            0.000000
                NUMBER( 4, 144)        10.00000            0.000000
                NUMBER( 4, 148)        3.000000            0.000000
                NUMBER( 4, 153)        5.000000            0.000000
                NUMBER( 4, 157)        2.000000            0.000000
                NUMBER( 4, 158)        1.000000            0.000000
                NUMBER( 4, 163)        2.000000            0.000000
                NUMBER( 4, 164)        19.00000            0.000000
                NUMBER( 4, 165)        6.000000            0.000000
                NUMBER( 4, 168)        14.00000            0.000000
                NUMBER( 4, 170)        7.000000            0.000000
                NUMBER( 4, 171)        22.00000            0.000000
                NUMBER( 4, 172)        22.00000            0.000000
                NUMBER( 4, 174)        14.00000            0.000000
                NUMBER( 4, 175)        10.00000            0.000000
                NUMBER( 4, 184)        8.000000            0.000000


[ 本帖最后由 tangbaby 于 2008-4-18 19:45 编辑 ]
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-30 15:50 , Processed in 0.055299 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表