QQ登录

只需要一步,快速开始

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

求大神指点代码错误。。。在线等。。。

[复制链接]
字体大小: 正常 放大
waslalal        

1

主题

6

听众

28

积分

升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    跳转到指定楼层
    #
    发表于 2013-7-3 08:59 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    本帖最后由 waslalal 于 2013-7-3 13:21 编辑

    sets:
    C/1..1000/:x,A,B,D,E;



    endsets

    data:
    A=@OLE('C:\shuju.xls',A);
    B=@OLE('C:\shuju.xls',B);
    D=@OLE('C:\shuju.xls',D);
    E=@OLE('C:\shuju.xls',E);



    enddata

    max=@sum(C(I):A(I)*x(I));
    @for(C(I) : @sum(C(I):B(I)*x(I))=10000);
    @for(C(I) : @sum(C(I) : (E(I)-0.498*D(I))*X(I))=0);
    @for(C : @bin(x));
    end

    shuju.xls

    1.01 MB, 下载次数: 3, 下载积分: 体力 -2 点

    数据文件

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    waslalal        

    1

    主题

    6

    听众

    28

    积分

    升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    qlb061 发表于 2013-7-5 12:28
    显然你的集合有1000个成员,所以:
    第一个@for约束生产了1000个等式约束;
    同样,第二个@for约束也生产了 ...

    嗯。谢谢指出。。。已求出结果
    回复

    使用道具 举报

    waslalal        

    1

    主题

    6

    听众

    28

    积分

    升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    madio 发表于 2013-7-5 06:04
    这里注意一下,并不是Lingo不行,而是你的问题太复杂了,尤其是等式约束对于优化求解上更是困难,一般的软件 ...

    谢谢指出。。。昨天已经通过matlab解出了
    回复

    使用道具 举报

    qlb061        

    3

    主题

    9

    听众

    3480

    积分

    升级  49.33%

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

    [LV.10]以坛为家III

    自我介绍

    邮箱绑定达人

    群组LINGO

    显然,你的集合成员个数为1000;但是,第一个@for约束生成了1000个等式约束,同样,第二个@for也生成了1000个等式约束。而求解有1000个自由变量的线性方程组只需要1000个线性不相关的方程组即可。
    显然,你的模型提供了太多的等式约束,原问题不可能有解!
    回复

    使用道具 举报

    qlb061        

    3

    主题

    9

    听众

    3480

    积分

    升级  49.33%

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

    [LV.10]以坛为家III

    自我介绍

    邮箱绑定达人

    群组LINGO

    显然你的集合有1000个成员,所以:
    第一个@for约束生产了1000个等式约束;
    同样,第二个@for约束也生产了1000个约束;
    即使不考虑变量类型约束,你的方程个数已经达到2000个。
    而求解1000个自由变量的线性方程组只需要1000个独立的方程即可。
    显然,你提供了太多的等式约束,原问题无解!

    点评

    waslalal  嗯。谢谢指出。。。已求出结果  详情 回复 发表于 2013-7-6 11:31
    回复

    使用道具 举报

    madio        

    3万

    主题

    1311

    听众

    5万

    积分

  • TA的每日心情
    奋斗
    2024-7-1 22:21
  • 签到天数: 2014 天

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

    社区QQ达人 邮箱绑定达人 优秀斑竹奖 发帖功臣 风雨历程奖 新人进步奖 最具活力勋章

    群组数学建模培训课堂1

    群组数学中国美赛辅助报名

    群组Matlab讨论组

    群组2013认证赛A题讨论群组

    群组2013认证赛C题讨论群组

    这里注意一下,并不是Lingo不行,而是你的问题太复杂了,尤其是等式约束对于优化求解上更是困难,一般的软件很难求解,你把@for(C(I) : @sum(C(I):B(I)*x(I))=10000)中的=号改为<=就可以顺利求解出来,而且得到的就是你所要的解,这是一个建模的要求,一定要能求解才行。

    点评

    waslalal  谢谢指出。。。昨天已经通过matlab解出了  详情 回复 发表于 2013-7-6 11:28
    数学建模社会化
    回复

    使用道具 举报

    waslalal        

    1

    主题

    6

    听众

    28

    积分

    升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    wujianjack2 发表于 2013-7-4 12:08
    我再看了下您问题,发现两个疑惑,一是男粉丝数不是整数,二是用户影响力这一栏似乎有数据缺失。您再看看吧 ...

    谢谢指出,由于给出的男粉丝比例是经过四舍五入的,所以计算得到的男粉丝数也不是整数,然后用户影响力没有缺失啊,有些确实是0...
    回复

    使用道具 举报

    21

    主题

    97

    听众

    3110

    积分

  • TA的每日心情
    奋斗
    2014-3-2 00:26
  • 签到天数: 243 天

    [LV.8]以坛为家I

    我再看了下您问题,发现两个疑惑,一是男粉丝数不是整数,二是用户影响力这一栏似乎有数据缺失。您再看看吧!您的这个问题很好,可我目前解决不了,抱歉。

    点评

    waslalal  谢谢指出,由于给出的男粉丝比例是经过四舍五入的,所以计算得到的男粉丝数也不是整数,然后用户影响力没有缺失啊,有些确实是0...  详情 回复 发表于 2013-7-4 20:02
    有什么好说的
    回复

    使用道具 举报

    waslalal        

    1

    主题

    6

    听众

    28

    积分

    升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    wujianjack2 发表于 2013-7-3 23:32
    楼主你好!我是一名LINGO初学者,刚看了您的问题,尝试计算了下。
    如果不去掉对X为整数的限制,则提示说B( ...

    我也是初学者。。正在尝试修改模型,昨天改了一晚上,也尝试用matlab去解,还是一无所获。。。。
    o(︶︿︶)o 唉。。。。继续改吧。。。
    回复

    使用道具 举报

    21

    主题

    97

    听众

    3110

    积分

  • TA的每日心情
    奋斗
    2014-3-2 00:26
  • 签到天数: 243 天

    [LV.8]以坛为家I

    楼主你好!我是一名LINGO初学者,刚看了您的问题,尝试计算了下。
    如果不去掉对X为整数的限制,则提示说B(I)*X(I)=10000的约束太强,请放松约束;
    如果去掉对X为整数的限制,则提示无可行解。
    所以,我想您是不是可以考虑修改下模型,再试试吧!我对这个问题也想了解了解,新手不太懂,请您指点下。

    点评

    waslalal  我也是初学者。。正在尝试修改模型,昨天改了一晚上,也尝试用matlab去解,还是一无所获。。。。 o(︶︿︶)o 唉。。。。继续改吧。。。  详情 回复 发表于 2013-7-4 09:43
    有什么好说的
    回复

    使用道具 举报

    waslalal        

    1

    主题

    6

    听众

    28

    积分

    升级  24.21%

  • TA的每日心情

    2013-9-13 20:18
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    自我介绍
    挑战一切。

    群组2013年数学建模国赛备

    madio 发表于 2013-7-3 10:58
    提示了什么错误,没有你的数据文件可用

    数据文件我放上去了,里面数据引用的设置已经弄好了的。。。大神你再看看呗~~
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2025-10-6 01:27 , Processed in 0.926752 second(s), 108 queries .

    回顶部