Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-09-16, 17:44   #1
kingdom_535
初级会员
 
注册日期: 2008-07-21
年龄: 41
帖子: 3
声望力: 0
kingdom_535 正向着好的方向发展
默认 遗传算法

各位大侠:
我做的是钢管混凝土构件的优化,柱的截面尺寸为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的下限。不知道是怎么回事!!哪位帮帮忙啊!!
kingdom_535 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 09:10


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