QQ登录

只需要一步,快速开始

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

求助:如何将结果进行循环,1999国赛飞行问题

[复制链接]
字体大小: 正常 放大
潇然14        

1

主题

3

听众

78

积分

升级  76.84%

  • TA的每日心情
    奋斗
    2014-9-22 14:34
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    跳转到指定楼层
    1#
    发表于 2011-8-28 22:17 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定
    题目:Min z=abs(θ1)+abs(θ2)+abs(θ3)+abs(θ4)+abs(θ5)+abs(θ6)
    s.t.  θi≤30
         ■(x_i=x_i0+cos〖(θ〗_i0+θi)×800t@y_i=y_i0+sin⁡(θ_i0+θi)×800t)    初值带入具体数据
         d_ij=√((x_i-x_j )^2+(y_i-y_j )^2 )>8
    i,j=1,2,……,6
    0<t<0.5
    已有程序
    model:
    sets:
    chushi/1..6/:x0,y0,theta0;
    plane/1..6/:theta;
    xzhi/1..6/:x;
    yzhi/1..6/:y;
    link(plane,plane);
    endsets
    data:
    x0=150 85 150 145 130 0;
    y0=140 85 155 50 150 0;
    theta0=243 236 220.5 159 230 52;
    enddata
    min=@sum(planeabs(theta));
    @for(planebnd(-30,theta,30));
    @for(xzhi(i):x(i)=x0(i)+@cos(theta0(i)+theta(i))*800*t);
    @for(yzhi(i):y(i)=y0(i)+@sin(theta0(i)+theta(i))*800*t);
    @for(link(i,j)|i#ne#jx(i)-x(j))*(x(i)-x(j))+(y(i)-y(j))*(y(i)-y(j))>64);
    @bnd(0,t,0.5);
    end
    得出角度改变量,与初始数据相结合,得到第二个初始数据代入程序,如此循环,最终使目标函数min<0.01.
    请大家帮帮忙吧,万分感激啊!
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2025-8-14 18:54 , Processed in 1.058475 second(s), 50 queries .

    回顶部