MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   遗传算法 (https://www.labfans.com/bbs/showthread.php?t=4474)

kingdom_535 2008-09-16 17:44

遗传算法
 
各位大侠:
我做的是钢管混凝土构件的优化,柱的截面尺寸为d*t=120*5。其中d*t分别为矩形截面边长和钢管的壁厚。在用GAOT工具箱优化的时候总得不得好的结果,并且感觉约束条件没用上。
约束条件g1=d.^2*(1.18+0.85*4*t*(d-t)*215/(15*(d-2*t).^2))*15 是承载力约束
g2=15*(d-2*t).^2/(215*4*t*(d-t)+15*(d-2*t).^2) 是含刚率约束
编制的目标函数是
function[sol eval]=zyh(sol,options)
d=sol(1);
t=sol(2);
r1=0.1;
r2=0.8;
g1=d.^2*(1.18+0.85*4*t*(d-t)*215/(15*(d-2*t).^2))*15;
g2=15*(d-2*t).^2/(215*4*t*(d-t)+15*(d-2*t).^2);
if ((g1>=717390)&(g1<=755147)&(g2>=0.1)&(g2<=0.7))
eval=56991*4*t*(d-t)*360+470*(d-2*t).^2*360;
else
eval=56991*4*t*(d-t)*360+470*(d-2*t).^2*360+r1*g1+r2*g2;
end
eval=-eval;

d、t的范围分别是(110-120)、(4-5)。优化后得到的结果d=111.6,t=4.6。把这个结果带入到g1中得到的结果是652920 没有满足g1的下限。不知道是怎么回事!!哪位帮帮忙啊!!


所有时间均为北京时间。现在的时间是 11:23

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.