请选择 进入手机版 | 继续访问电脑版

QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7461|回复: 10

matlab能解但是lingo不能解的规划问题,哪里错了呀????

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

4

主题

5

听众

139

积分

升级  19.5%

  • TA的每日心情
    擦汗
    2013-10-3 12:05
  • 签到天数: 42 天

    [LV.5]常住居民I

    自我介绍
    没什么好说的
    发表于 2013-4-24 18:33 |显示全部楼层
    |招呼Ta 关注Ta
    20体力
    本帖最后由 wujianjack2 于 2013-8-24 01:53 编辑

    model:
    sets:
    nvars/1..5/:x;
    endsets
    data:
    pi=3.14159216;
    enddata
    min=s;
    z=z1+z2;
    z1=-2*pi*@exp(-0.2*@sqrt(.2*(x(1)^2+x(2)^2+x(3)^2+x(4)^2+x(5)^2)));
    z2=-@exp(.2*(@cos(2*pi*x(1))+@cos(2*pi*x(2))+@cos(2*pi*x(3))+@cos(2*pi*x(4))+@cos(2*pi*x(5))))+2*pi;
    s=@if(-30#le#x(1)#le#30#and#-30#le#x(2)#le#30#and#-30#le#x(3)#le#30#and#-30#le#x(4)#le#30#and#-30#le#x(5)#le#30,z,300);
    @for(nvars:@bnd(-30,x,30));
    end
    这个我用lingo11解的时候他出来这样一句话:warning:the current solution may be nonoptimal /infeasible for the current model
    这句话,但是我用matlab的遗传工具箱能得出答案fmin=-e=-2.7......这是怎么回事呀??????
    请指教!!!!!!谢谢啦!!!!!

    最佳答案

    wujianjack2 查看完整内容

    第一次回答: 楼主的问题相当经典! 我用MATLAB的优化工具箱的遗传算法求解多次后得到较好值: x(1)=-0.001,x(2)=0.001,x(3)=0.001,x(4)=0,x(5)=0.001,目标函数值为:-2.7164245306426658 另外,楼主的LINGO程序编写无误,但稍显累赘,代码简化如下(楼主pi值小数点后8位数值不太对啊): model: sets: nvars/1..5/:x; endsets data: pi=3.14159265; enddata min=z; z=z1+z2; z1_1=-0.2*@sqrt(0.2*@sum(nvar ...
    zan

    21

    主题

    97

    听众

    3110

    积分

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

    [LV.8]以坛为家I

    本帖最后由 wujianjack2 于 2013-8-24 01:55 编辑

    第一次回答:
        楼主的问题相当经典!
        我用MATLAB的优化工具箱的遗传算法求解多次后得到较好值:
    x(1)=-0.001,x(2)=0.001,x(3)=0.001,x(4)=0,x(5)=0.001,目标函数值为:-2.7164245306426658

    另外,楼主的LINGO程序编写无误,但稍显累赘,代码简化如下(楼主pi值小数点后8位数值不太对啊):
    model:
    sets:
    nvars/1..5/:x;
    endsets
    data:
    pi=3.14159265;
    enddata
    min=z;
    z=z1+z2;
    z1_1=-0.2*@sqrt(0.2*@sum(nvars:x^2));
    z1=-2*pi*@exp(z1_1);
    z2_1=0.2*@sum(nvars:@cos(2*pi*x));
    z2=-@exp(z2_1)+2*pi;
    @for(nvars:@bnd(-30,x,30));
    end

    运行代码,提示201号错误---模型是局部不可行的。
    所以,我觉得,这可能是LINGO软件内部算法的缺陷,目标函数对于它来说太过复杂,它的算法对于解决此类问题有不足,我认为也正因为如此,现代智能优化算法才会有如此广泛的应用。最后,还是没能对楼主的问题给出好的回答,以上仅是个人见解,抱歉!


    第二次回答:
       之前没有很好地解决楼主的问题,深感惭愧!我觉得这个问题有必要进行进一步的思考,现在我给出我的另一种解决方式,虽然看上去与第一次的回答没有什么变化,但是,可以很好地求出结果,不知道楼主是否满意?

    程序代码如下:
    model:
    sets:
    nvars/1..5/:x;
    endsets
    data:
    pi=3.14159265;
    enddata
    min=z;
    z=z1+z2;
    z1_1=-0.2*@sqrt(0.2*@sum(nvars:x^2));
    z1=-2*pi*@exp(z1_1);
    z2_1=0.2*@sum(nvars(i):@cos(2*pi*x));
    z2=-@exp(z2_1)+2*pi;
    @for(nvars:@bnd(-30,x,30));
    z1_1<=0;z2_1<=1;
    @free(z);@free(z1);@free(z2);
    end

    运行结果如下(仅给出重要结果):
      Global optimal solution found.
      Objective value:                             -2.718282
      Objective bound:                           -2.718282
      Infeasibilities:                               0.1953993E-13
      Extended solver steps:                            0
      Total solver iterations:                            16

       Variable           Value        Reduced Cost
            PI         3.141593            0.000000
             Z        -2.718282            0.000000
            Z1       -6.283185            0.000000
            Z2        3.564903            0.000000
          Z1_1      0.000000            0.000000
          Z2_1      1.000000            0.000000
         X( 1)        0.000000            0.000000
         X( 2)        0.000000            0.000000
         X( 3)        0.000000            0.000000
         X( 4)        0.000000            0.000000
         X( 5)        0.000000            0.000000

    此结果在LINGO 11上运行通过,勾不勾选Global Solver选项都可以,用时0.03秒。

    以上是我的个人解答,或许有所疏漏,如有疑问与建议,望不吝指出,谢谢支持!
    有什么好说的
    回复

    使用道具 举报

    846257805        

    4

    主题

    5

    听众

    139

    积分

    升级  19.5%

  • TA的每日心情
    擦汗
    2013-10-3 12:05
  • 签到天数: 42 天

    [LV.5]常住居民I

    自我介绍
    没什么好说的
    还是谢谢啊!!!

    点评

    wujianjack2  哈哈,多谢鼓励!这个问题相当经典呢,让我有了一些新的感悟,如果再有什么问题,欢迎交流!  详情 回复 发表于 2013-7-21 21:10
    回复

    使用道具 举报

    21

    主题

    97

    听众

    3110

    积分

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

    [LV.8]以坛为家I

    846257805 发表于 2013-7-21 20:08
    还是谢谢啊!!!

    哈哈,多谢鼓励!这个问题相当经典呢,让我有了一些新的感悟,如果再有什么问题,欢迎交流!
    有什么好说的
    回复

    使用道具 举报

    21

    主题

    97

    听众

    3110

    积分

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

    [LV.8]以坛为家I

    楼主,这个问题我已尝试解决成功,参见2楼的第二次回复,解答仅供参考,谢谢支持!
    回复

    使用道具 举报

    0

    主题

    9

    听众

    37

    积分

    升级  33.68%

  • TA的每日心情

    2014-9-14 10:01
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    社区QQ达人

    群组2013数模夏令营A题

    回复

    使用道具 举报

    1

    主题

    13

    听众

    65

    积分

    升级  63.16%

  • TA的每日心情

    2015-2-6 18:31
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    邮箱绑定达人 社区QQ达人

    回复

    使用道具 举报

    1

    主题

    13

    听众

    65

    积分

    升级  63.16%

  • TA的每日心情

    2015-2-6 18:31
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    邮箱绑定达人 社区QQ达人

    回复

    使用道具 举报

    1

    主题

    13

    听众

    65

    积分

    升级  63.16%

  • TA的每日心情

    2015-2-6 18:31
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    邮箱绑定达人 社区QQ达人

    回复

    使用道具 举报

    0

    主题

    10

    听众

    7

    积分

    升级  2.11%

  • TA的每日心情
    郁闷
    2017-5-26 22:51
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    环境数学学习
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2024-3-29 08:33 , Processed in 0.674432 second(s), 101 queries .

    回顶部