工程设计问题总结

优化函数的性能评估主要有两种方法:

1.利用不同的数学基准测试函数集

2.各种实际工程设计问题

设计工程是现代工程领域中非常重要的一部分。它涉及到许多不同类型的设计,包括速度减速器设计、张力/压缩弹簧设计、压力容器设计、三杆桁架设计问题、齿轮传动设计、悬臂梁、最小化I型梁垂直挠度、管式柱设计、活塞杆、波纹隔板设计、汽车侧面碰撞设计、焊接梁设计和钢筋混凝土梁设计等。现代工程领域中非常重要的一部分。它涉及到许多不同类型的设计,包括速度减速器设计、张力/压缩弹簧设计、压力容器设计、三杆桁架设计问题、齿轮传动设计、悬臂梁、最小化I型梁垂直挠度、管式柱设计、活塞杆、波纹隔板设计、汽车侧面碰撞设计、焊接梁设计和钢筋混凝土梁设计等。

例举两个的例子:

1.悬臂梁设计问题(Cantilever beam design problem)

对于工程设计问题一般采用罚函数的方法。在给定x的变量范围和g(x)的不等式约束条件下,求得目标函数f(x)的最小值。
完整代码在微信公众号:优化算法侠  中,此公众号还另给出了更多其它的工程设计问题。
fobj = @ cantilever_beam;
lb = [0.01,0.01,0.01,0.01,0.01];
ub= [100,100,100,100,100];
dim = length(lb);     


function fitness=cantilever_beam(x)
panalty_factor = 10e100;
%惩罚因子
g(1)=61/x(1)^3+37/x(2)^3+19/x(3)^3+7/x(4)^3+1/x(5)^3-1;% 惩罚项
penalty=panalty_factor*sum(g(g>0).^2);
fitness=0.0624*sum(x)+penalty;
end

结果为:

2.机器人夹持器优化问题( Robot gripper design optimization problem)
目标是尽量减少最大和最小的力之间的差异,由夹持器端位移的范围施加夹持器。有7个连续设计变量(a、b、c、d、e、f、δ),如图所示。机器人夹持器问题有7个不同的约束条件。
function fitness = Robot_Gripper(x)
panalty_factor = 10e100; %惩罚因子
a = x(1); b = x(2); c = x(3); e = x(4); ff = x(5); l = x(6); delta = x(7);
Ymin = 50; Ymax = 100; YG = 150; Zmax = 100;
% 目标函数
fhd1 = @(z) F1(x,z,2);
fhd2 = @(z) -F1(x,z,2);
options = optimset('Display','off');
[~,fit1]= fminbnd(fhd1,0,Zmax,options);
[~,fit2]= fminbnd(fhd2,0,Zmax,options);
f = -fit2-fit1;
% 约束
g(1) = -Ymin+F1(x, Zmax,1);
g(2) = -F1(x, Zmax,1);
g(3) = Ymax-F1(x, 0,1);
g(4) = F1(x, 0,1)-YG;
g(5) = l^2+e^2-(a+b)^2;
g(6) = b^2-(a-e)^2-(l-Zmax)^2;
g(7) = Zmax-l;
% 罚函数
panalty=panalty_factor*sum(g(g>0).^2);
fitness=f+panalty;

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值