24小时热门版块排行榜    

查看: 3628  |  回复: 6

不变的擎

新虫 (初入文坛)

[求助] 刚开始接触遗传算法,求大牛解答一下非线性约束的问题。

我使用的是matlab内置的gatool,在不加非线性约束的时候的最优求解时没有问题的,但是加了非线性约束后,不知道为什么每次优化,遗传算法只会走到第五代就结束,结果如图中所示,所得到的结果并不是最优的,因为我用fmincon函数得到了更优的解,跟遗传算法这个相比要相差很多。不知道遗传算法这里是不是需要设置什么参数?还是要怎样,才能得到最优解。我的非线性约束稍微有点复杂,中间调用了其他一些函数,但是我觉得约束应该没有问题,毕竟同样用fmincon在这个约束下得出了最优。只不过fmincon通常是求局部最优的,虽然在这里是一个约束内的全局最优,但是我还是想用遗传算法来求这个最优解。希望大神们可以帮我看看,一下是我的非线性约束的程序,问题的背景是关于轨道机动求速度增量的,这个约束就是速度增量的约束:
function [c,ceq]=Copy_of_constraints(x)
f1 = x(1);
f2 = x(2);
t = x(3);
ceq = [];
DeltaV_Limit=2800;
% *******************************输入参数******************************** %
% 初始轨道参数
a1=6771004; % 单位:m
e1=0.02;
i1=30; % 单位:度
Om1=30;
Omega1=100;
Root1=[a1 e1 i1 Om1 Omega1 f1];% 行向量
% 目标轨道参数
a2=15000000;
e2=0.01;
i2=30;
Om2=30;
Omega2=20;
Root2=[a2 e2 i2 Om2 Omega2 f2];
% ****************************计算位置速度矢量**************************** %
% 初始轨道位置速度矢量  R1=R1(f1);Vi=Vi(f1)
[R1,Vi]=Orbit_Vector(Root1);
% 目标轨道位置速度矢量  R2=R2(f2);Vf=Vf(f2)
[R2,Vf]=Orbit_Vector(Root2);
% **********************J2摄动下的实际目标位置与速度*********************** %
R=R2;
for k=1:5 % 迭代五次
v = Lambert_test(R1,R,t,Vi);
v1 = v(:,1);
Rootp = Vector_Orbit(R1,v1);
Rootq = solveJ2(Rootp,t);
[r2,v2]=Orbit_Vector(Rootq);% 实际的位置速度
dr = r2-R2;
R = R-dr;
end;
% 转移轨道在J2摄动下的实际速度增量
DeltaV=norm(v1-Vi)+norm(v2-Vf);
c=DeltaV-DeltaV_Limit;

所以我想不是约束的问题,那应该就是遗传算法参数选择的问题了吧。在这个ga工具箱中,我查看了帮助中的说明,在非线性约束的条件下,不能选择bit string的编码,于是只能选择了double vector的编码,相应的选择交叉变异等都是使用内置的函数,所以这些参数也就是概率什么的都是没有设置的。那么怎么样去让遗传算法求出最优解呢?其实我最核心的问题还是,为什么每次都是第五代就停止?这个norm of the step is less than......是不是表明有些参数设置的不对?如果没有非线性约束的时候,结果如第二张图所示。

刚开始接触遗传算法,求大牛解答一下非线性约束的问题。
filehelper_1489638505460_90.png


刚开始接触遗传算法,求大牛解答一下非线性约束的问题。-1
filehelper_1489987834719_66.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fxf142

金虫 (小有名气)

请问这个constraint是如何设置的呢
2楼2017-04-10 20:51:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
3楼2017-08-18 06:48:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
4楼2017-08-18 23:54:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
5楼2017-08-19 13:20:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
6楼2017-08-20 03:14:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

好哦咯不公哦

新虫 (初入文坛)

引用回帖:
1楼: Originally posted by 不变的擎 at 2017-03-20 13:32:30
我使用的是matlab内置的gatool,在不加非线性约束的时候的最优求解时没有问题的,但是加了非线性约束后,不知道为什么每次优化,遗传算法只会走到第五代就结束,结果如图中所示,所得到的结果并不是最优的,因为我用 ...

请问楼主你解决了吗?能分享一下吗?非常感谢!

发自小木虫Android客户端
7楼2017-11-16 20:25:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 不变的擎 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[职场人生] 40+中年人失业后,还能找到好工作吗? +9 xqy2009 2026-10-13 11/550 2026-10-15 16:37 by beefly
[有机交流] 用NBS溴化时溶剂除了CCl4外还有什么 +3 18834002860 2026-10-12 6/300 2026-10-15 14:30 by 长沙摩尔信息科�
[基金申请] 申请科研项目纯靠实力能成功吗? 200+7 David1982 2026-10-13 11/550 2026-10-15 10:30 by zyqchem
[硕博家园] 极限拉扯,如何抉择 +11 Isak0320 2026-10-12 15/750 2026-10-14 21:55 by 猫鱼不是鱼
[论文投稿] 二审4个多月了还是Awaiting Reviewer Scores 10+3 纳斯达克ML 2026-10-11 4/200 2026-10-14 17:30 by babero
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 13/650 2026-10-14 15:12 by zuesli
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见