QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3244|回复: 10
打印 上一主题 下一主题

有意者请入其实不算太难,LINGO 运输规划程序

[复制链接]
字体大小: 正常 放大
nibini1 实名认证       

7

主题

3

听众

56

积分

升级  53.68%

该用户从未签到

跳转到指定楼层
1#
发表于 2011-5-20 21:38 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
100体力
结果是没有可行解,为何??数据太多吗???谢谢
在线等。。。那个表情是“:@”不知为何变表情了

  1. model:
  2. sets:
  3. warehouses/wh1..wh6/:capacity;
  4. vendors/v1..v18/:demand;
  5. links(warehouses,vendors):cost,volume;
  6. endsets
  7. !目标函数;
  8. min=@sum(links:cost*volume*1);
  9. !需求约束;
  10. @for(vendors(j)sum(warehouses(i):volume(i,j))=demand(j);
  11. !产量约束;
  12. @for(warehouses(i)sum(vendors(j):volume(i,j))<=capacity(i));
  13. @for(linksgin(volume));
  14. !数据;
  15. data:
  16. capacity=1000 800 800 800 1000 700;
  17. demand=260 400 1300 420 600 300 220 300 300 320 480 300 300 800 280 450 1200 700;
  18. cost=  0 1520  1100 1400 1400 1600 1630 5100 2800 2100  3380 2680 1850 1750 1150 1000 730  940
  19.      1520 0    2620 2330 1630 1830 3150 5330 3030 2330 3610 2910 1530 1980  780  1330 2250 2460
  20.      1100 2620 0    300 1600  1800 2730 5300 3000 2300 3580 2880 2050 1250  1850 1300 1830 2040
  21.      1400 2330 300  0   1300  1500 3030 5000 2700 2000 3280 2580 1750 950   1550 1000 2130 2340
  22.      1400 1630 1600 1300 0    200  3030 3700 1400 700  1980 1280 450  350   850  400  2130 2340
  23.      1600 1830 1800 1500 200  0    3230 3500 1200 500  1780 1080 650  550   1050 600  2330 2540;
  24. enddata
  25. end
复制代码

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
nibini1 实名认证       

7

主题

3

听众

56

积分

升级  53.68%

该用户从未签到

回复

使用道具 举报

nibini1 实名认证       

7

主题

3

听众

56

积分

升级  53.68%

该用户从未签到

回复

使用道具 举报

nibini1 实名认证       

7

主题

3

听众

56

积分

升级  53.68%

该用户从未签到

回复

使用道具 举报

3

主题

3

听众

30

积分

升级  26.32%

  • TA的每日心情
    开心
    2011-9-12 08:41
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    群组LINGO

    群组Matlab讨论组

    群组我们一定会赢

    model:

    sets:

    warehouses/wh1..wh6/:capacity;

    vendors/v1..v18/:demand;

    links(warehouses,vendors):cost,volume;

    endsets
    !数据;

    data:

    capacity=1000 800 800 800 1000 700;

    demand=260 400 1300 420 600 300 220 300 300 320 480 300 300 800 280 450 1200 700;

    cost=  0 1520  1100 1400 1400 1600 1630 5100 2800 2100  3380 2680 1850 1750 1150 1000 730  940

         1520 0    2620 2330 1630 1830 3150 5330 3030 2330 3610 2910 1530 1980  780  1330 2250 2460

         1100 2620 0    300 1600  1800 2730 5300 3000 2300 3580 2880 2050 1250  1850 1300 1830 2040

         1400 2330 300  0   1300  1500 3030 5000 2700 2000 3280 2580 1750 950   1550 1000 2130 2340

         1400 1630 1600 1300 0    200  3030 3700 1400 700  1980 1280 450  350   850  400  2130 2340

         1600 1830 1800 1500 200  0    3230 3500 1200 500  1780 1080 650  550   1050 600  2330 2540;

    enddata

    !目标函数;

    min=@sum(links(i,j):cost(i,j)*volume(i,j)*1);

    !需求约束;

    @for(vendors(j)sum(warehouses(i):volume(i,j))=demand(j);

    !产量约束;

    @for(warehouses(i)sum(vendors(j):volume(i,j))<=capacity(i));

    @for(links(i,j)gin(volume(i,j)));
    end
    改了一下,好像最后一个end有错,有点事,你先看看!
    回复

    使用道具 举报

    12

    主题

    3

    听众

    674

    积分

    升级  18.5%

  • TA的每日心情
    难过
    2013-11-8 08:12
  • 签到天数: 114 天

    [LV.6]常住居民II

    群组Matlab讨论组

    群组数模应用

    群组我们一定会赢

    群组第一期sas基础实训课堂

    这三个地方要改一下:
    @for(vendors(j)sum(warehouses(i):volume(i,j))=demand(j);

    !产量约束;

    @for(warehouses(i)sum(vendors(j):volume(i,j))<=capacity(i));

    @for(links(i,j)gin(volume(i,j)));


    改为:
    !需求约束;

    @for(vendors(j):
    @sum(warehouses(i):volume(i,j))=demand(j);

    !产量约束;

    @for(warehouses(i):
    @sum(vendors(j):volume(i,j))<=capacity(i));

    @for(links(i,j):
    @gin(volume(i,j)));
    但还是运行不了,可能是数据有误,能将题目拿出来看看?


    回复

    使用道具 举报

    12

    主题

    3

    听众

    674

    积分

    升级  18.5%

  • TA的每日心情
    难过
    2013-11-8 08:12
  • 签到天数: 114 天

    [LV.6]常住居民II

    群组Matlab讨论组

    群组数模应用

    群组我们一定会赢

    群组第一期sas基础实训课堂

    回复

    使用道具 举报

    alair004        
    头像被屏蔽

    0

    主题

    4

    听众

    563

    积分

    升级  87.67%

  • TA的每日心情
    无聊
    2012-2-6 07:37
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    提示: 作者被禁止或删除 内容自动屏蔽
    回复

    使用道具 举报

    xupengman        

    0

    主题

    6

    听众

    21

    积分

    升级  16.84%

  • TA的每日心情
    无聊
    2012-3-13 11:11
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    自我介绍
    本人工程师1名。
    回复

    使用道具 举报

    qlb061        

    3

    主题

    9

    听众

    3480

    积分

    升级  49.33%

  • TA的每日心情
    奋斗
    2018-4-27 20:25
  • 签到天数: 969 天

    [LV.10]以坛为家III

    自我介绍

    邮箱绑定达人

    群组LINGO

    本帖最后由 qlb061 于 2012-6-28 18:20 编辑

    有些语法错误,已经修改了;另外添加了CALC部分帮你诊断可能的错误,总供给无法满足所有需求!
    1. model:
    2. sets:
    3. warehouses/wh1..wh6/:capacity;
    4. vendors/v1..v18/:demand;
    5. links(warehouses,vendors):cost,volume;
    6. endsets
    7. !目标函数;
    8. min=@sum(links:cost*volume*1);
    9. !需求约束;
    10. @for(vendors(j):@sum(warehouses(i):volume(i,j))=demand(j));
    11. !产量约束;
    12. @for(warehouses(i):@sum(vendors(j):volume(i,j))<=capacity(i));
    13. @for(links:@gin(volume));
    14. !数据;
    15. data:
    16. capacity=1000 800 800 800 1000 700;
    17. demand=260 400 1300 420 600 300 220 300 300 320 480 300 300 800 280 450 1200 700;
    18. cost=  0 1520  1100 1400 1400 1600 1630 5100 2800 2100  3380 2680 1850 1750 1150 1000 730  940

    19.      1520 0    2620 2330 1630 1830 3150 5330 3030 2330 3610 2910 1530 1980  780  1330 2250 2460

    20.      1100 2620 0    300 1600  1800 2730 5300 3000 2300 3580 2880 2050 1250  1850 1300 1830 2040

    21.      1400 2330 300  0   1300  1500 3030 5000 2700 2000 3280 2580 1750 950   1550 1000 2130 2340

    22.      1400 1630 1600 1300 0    200  3030 3700 1400 700  1980 1280 450  350   850  400  2130 2340

    23.      1600 1830 1800 1500 200  0    3230 3500 1200 500  1780 1080 650  550   1050 600  2330 2540;

    24. enddata

    25. CALC:
    26.         @SET('TERSEO',1);
    27.         TOTALDEMAND=@SUM(VENDORS:DEMAND);
    28.         TOTALSUPPLY=@SUM(WAREHOUSES:CAPACITY);
    29.         @SOLVE();
    30.         @WRITE('TOTAL DEMAND IS: ',TOTALDEMAND,@NEWLINE(1));
    31.         @WRITE('TOTAL SUPPLY IS: ',TOTALSUPPLY,@NEWLINE(1));
    32.         @IFC(TOTALDEMAND #GT# TOTALSUPPLY:
    33.                 @WRITE('THE DEMANDS ARE TOO BIG TO BE MET!',@NEWLINE(2));
    34.                 @DEBUG();
    35.         );
    36.         @SET('TERSEO');
    37. ENDCALC

    38. end
    复制代码
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-8-20 12:46 , Processed in 0.785472 second(s), 99 queries .

    回顶部