《MATLAB多目标优化计算.pptx》由会员分享,可在线阅读,更多相关《MATLAB多目标优化计算.pptx(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、多目标优化问题的MATLAB函数有fgoalattain需确定各分目标的加权系数需知各分目标的单个的最优值目标函数的最大值逐次减小fminimax第1页/共48页6.1 函数fgoalattain min v s.t.fi(X)-wiv goali i=1,2,t AXb (线性不等式约束)AeqX=beq (线性等式约束)C(X)0 (非线性不等式约束条件)Ceq(X)=0 (非线性等式约束)Lb X Ub (边界约束条件)一、多目标优化问题数学模型标量变量各分目标函数分目标函数的权重各分目标函数的目标值第2页/共48页 二、优化函数使用格式 x,fval,exitflag,output,g
2、rad,hessian=fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2)设置优化选项参数设置优化选项参数各分目标权重各分目标权重各分目标期望值各分目标期望值目标函数在最优解的海色矩阵目标函数在最优解的海色矩阵返回目标函数在最优解的梯度返回目标函数在最优解的梯度优化算法信息的一个数据结构优化算法信息的一个数据结构返回算法的终止标志返回算法的终止标志返回目标函数的最优值返回目标函数的最优值返回目标函数的最优解返回目标函数的最优解附加参数附加参数非线性约束条件的函数名非线性约束条件的函数名设计变量的下界和上界设计变量的下界和
3、上界线性等式约束的常数向量线性等式约束的常数向量线性等式约束的系数矩阵线性等式约束的系数矩阵线性不等式约束的常数向量线性不等式约束的常数向量线性不等式约束的系数矩阵线性不等式约束的系数矩阵无定义时以空矩阵符号“”代替6.1 函数fgoalattain初始点初始点目标函数文件名目标函数文件名第3页/共48页三、例题 设计带式输送机传动装置上的普通V带传动。已知电机额定功率P=4kW,转速n1=1440r/min,传动比i=3,采用A型V带,每天工作不超过10小时。要求传动结构紧凑(带的根数尽量少,带轮直径和中心距尽量小)。解:(1)建立优化设计的数学模型 设计变量:V带传动的独立设计变量是小带轮
4、直径dd1和带的基准长度Ld X=dd1,LdT=x1,x2T 目标函数:l小带轮直径:l中心距:l带的根数:6.1 函数fgoalattain1.1拟合直线P0=(0.02424dd1-1.112879)(kW)0.17kWKL=0.20639Ld0.211806拟合幂函数方程拟合双曲线方程minf1(X)=dd1=x1第4页/共48页 约束条件:含性能约束和边界约束小带轮直径=推荐的A型带轮最小直径最大带速120带传动的中心距要求小带轮基准直径的下限和上限带基准长度的下限和上限性性 能能 约约 束束边边 界界 约约 束束三、例题6.1 函数fgoalattain第5页/共48页6.1 函数
5、fgoalattain三、例题解:(1)建立优化设计的数学模型 设计变量:X=dd1,LdT=x1,x2T 目标函数:l小带轮直径:l中心距:l带的根数:minf1(X)=dd1=x180100mm320400mm14按容限值确定权重,按容限值确定权重,以使目标函数值在以使目标函数值在数量级上统一数量级上统一 约束条件约束条件:(2)确定分目标和它们的权重确定分目标和它们的权重第6页/共48页(3)编制优化设计的M文件 x,fval,exitflag,output,grad,hessian=fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,opti
6、ons,P1,P2)%V带传动多目标优化设计的目标函数文件带传动多目标优化设计的目标函数文件function f=VDCD_3mb_MB(x)P=4;i=3;KA=1.1;%已知条件:功率,传动比,工况系数已知条件:功率,传动比,工况系数f(1)=x(1);%f1-小带轮基准直径小带轮基准直径:目标函数目标函数1a1=x(2)/4-pi*x(1)*(i+1)/8;a2=x(1)2*(i-1)2/8;a=a1+sqrt(a12-a2);f(2)=a;%f2,中心距中心距:目标函数:目标函数2P0=0.02424*x(1)-1.1128789;%单根带额定功率单根带额定功率DP0=0.17;%功率
7、增量功率增量alpha=180-180*x(1)*(i-1)/pi/a;%小带轮包角小带轮包角Kalp=alpha/(0.549636*alpha+80.396114);%包角系数包角系数KL=0.20639*x(2)0.211806;%长度系数长度系数f(3)=KA*P/(P0+DP0)/Kalp/KL;%f3-V带根数带根数:目标函数:目标函数36.1 函数fgoalattain三、例题第7页/共48页(3)编制优化设计的M文件%V带传动多目标优化设计的约束函数文件 functiong,ceq=VDCD_3mb_YS(x)i=3;n1=1440;%已知条件:传动比,转速 g(1)=100-
8、x(1);%小带轮直径=Ddmin g(2)=pi*x(1)*n1/6e4-25%带速范围V=alpmin g(4)=0.7*x(1)*(i+1)-a;%中心距范围a=amin ceq=;6.1 函数fgoalattain三、例题 x,fval,exitflag,output,grad,hessian=fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2)第8页/共48页(3)编制优化设计的M文件%V带传动多目标优化设计的带传动多目标优化设计的调用命令调用命令P=4;i=3;n1=1440;KA=1.1;%已知条件:功率,传
9、动比,转速,工况系数已知条件:功率,传动比,转速,工况系数x0=100;1250;%初始点(小带轮直径,初始点(小带轮直径,V带基准长度带基准长度)goal=75,280,2;%分目标分目标w=10(-2),40(-2),1.5(-2);%分目标加权系数分目标加权系数lb=80,630;%最小带轮直径和最小带轮直径和A型型V带的基准长度带的基准长度ub=100;4000;%最大带轮直径和最大带轮直径和A型型V带基准长度带基准长度xopt,fopt=fgoalattain(VDCD_3mb_MB,x0,goal,w,lb,ub,VDCD_3mb_YS)6.1 函数fgoalattain三、例题
10、x,fval,exitflag,output,grad,hessian=fgoalattain(fun,x0,goal,w,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2),第9页/共48页Optimization terminated successfully:Search direction less than 2*options.xopt=1.0e+003*0.1000 1.2269fopt=100.0000 281.5296 3.5957(4)M文件运算结果6.1 函数fgoalattain三、例题(5)优化结果处理 dd1100mm1227mmLd小带小带轮基
11、轮基准直准直径径带传带传动中动中心距心距带带的的根根数数1250mm圆圆整整4圆圆整整第10页/共48页%优化结果数据处理后部分参数计算优化结果数据处理后部分参数计算Dd1=100;Dd2=Dd1*i;z=4;Ld=1250;v=pi*Dd1*n1/6e4;a1=Ld/4-pi*Dd1*(i+1)/8;a2=Dd12*(i-1)2/8;a=a1+sqrt(a12-a2);alpha=180-180*Dd1*(i-1)/pi/a;disp disp*计算结果计算结果*fprintf(1,小带轮基准直径小带轮基准直径 Dd1=%3.0fmmn,Dd1);fprintf(1,大带轮基准直径大带轮基准
12、直径 Dd2=%3.0fmmn,Dd2);fprintf(1,V带基准长度带基准长度 Ld=%3.0fmmn,Ld);fprintf(1,传动中心距传动中心距 a=%3.2fmmn,a);fprintf(1,小带轮包角小带轮包角 alpha=%3.2f度度n,alpha);fprintf(1,V带根数带根数 z=%3.0fmmn,z);(4)M文件运算结果6.1 函数fgoalattain三、例题(5)优化结果处理 第11页/共48页*计算结果计算结果*小带轮基准直径小带轮基准直径 Dd1=100mm 大带轮基准直径大带轮基准直径 Dd2=300mm V带基准长度带基准长度 Ld=1250mm
13、 传动中心距传动中心距 a=293.82mm 小带轮包角小带轮包角 alpha=141.00度度 V带根数带根数 z=4mm(4)M文件运算结果6.1 函数fgoalattain三、例题(5)优化结果处理 (6)最终方案 第12页/共48页6.2 函数fminimax min max f1,f2,f3 s.t.AXb (线性不等式约束)AeqX=beq (线性等式约束)C(X)0 (非线性不等式约束条件)Ceq(X)=0 (非线性等式约束)Lb X Ub (边界约束条件)一、多目标优化问题数学模型各分目标函数第13页/共48页 二、优化函数使用格式 x,fval,exitflag,output
14、,grad,hessian=fminimax(fun,x0,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2)设置优化选项参数设置优化选项参数目标函数在最优解的海色矩阵目标函数在最优解的海色矩阵返回目标函数在最优解的梯度返回目标函数在最优解的梯度优化算法信息的一个数据结构优化算法信息的一个数据结构返回算法的终止标志返回算法的终止标志返回目标函数的最优值返回目标函数的最优值返回目标函数的最优解返回目标函数的最优解附加参数附加参数非线性约束条件的函数名非线性约束条件的函数名设计变量的下界和上界设计变量的下界和上界线性等式约束的常数向量线性等式约束的常数向量线性等式约束的系数矩
15、阵线性等式约束的系数矩阵线性不等式约束的常数向量线性不等式约束的常数向量线性不等式约束的系数矩阵线性不等式约束的系数矩阵无定义时以空矩阵符号“”代替6.2 函数fminimax初始点初始点目标函数文件名目标函数文件名第14页/共48页三、例题 已知直径为1单位长度的圆柱梁,要求将它制成矩形截面梁,满足重量最轻和强度最大的条件,试确定矩形截面尺寸。解:(1)建立优化设计的数学模型 设计变量:矩形截面的宽和高 X=x1,x2T 目标函数:l重量截面积:l弯曲强度 矩形截面矩量:6.2 函数fminimaxminf1(X)=x1x2r=1x1x2 约束条件:含性能约束和边界约束变量x1的上下限变量x
16、2的上下限等式约束性性 能能 约约 束束边边 界界 约约 束束第15页/共48页6.2 函数fminimax三、例题(2)编制优化设计的M文件 x,fval,exitflag,output,grad,hessian=fminimax(fun,x0,A,b,Aeq,beq,Lb,Ub,Nlc,options,P1,P2)%矩形截面梁两目标优化设计的目标函数文件矩形截面梁两目标优化设计的目标函数文件function f=JXL_2mb_MB(x)f(1)=x(1)*x(2);%f1:梁的截面积:梁的截面积f(2)=-x(1)*x(2)2/6;%f2:梁的截面矩量梁的截面矩量%矩形截面梁两目标优化设
17、计的约束函数文件矩形截面梁两目标优化设计的约束函数文件function c,ceq=JXL_2mb_YS(x)ceq=x(1)2+x(2)2-1;%非线性等式约束非线性等式约束c=;%所所有非线性不等式约束有非线性不等式约束%矩形截面梁两目标优化设计矩形截面梁两目标优化设计x0=1;1;lb=0;0;ub=1;1;xopt,fopt=fminimax(JXL_2mb_MB,x0,lb,ub,JXL_2mb_YS)(3)运行结果Optimization terminated successfully:xopt=0.7071 0.7071fopt=0.5000 -0.0589,第16页/共48页二
18、 GUI优化工具启动命令行输入optimtool;Start-Toolboxes-Optimization-Optimizationtool(optimtool)。第17页/共48页分为三块:最左边是优化问题的描述及计算结果显示,中间为优化选项的设置,右边是帮助(可隐藏,右上角的)。第18页/共48页使用步骤选择求解器solver和优化算法algorithm;选定目标函数(objectivefunction);设定目标函数的相关参数;设置优化选项;单击“start”按钮,运行求解;查看求解器的状态和求解结果;第19页/共48页步骤示意图第20页/共48页2.1应用实例1无约束优化(fminun
19、c求解器)求f(x)=x2+4*x-6极小值,初始点取x=0。解:首先建立目标函数文件FunUnc.m文件:functiony=FunUnc(x)y=x2+4*x-6;然后启动优化工具(如图):第21页/共48页Algorithm有两个选择:Large scale和Medium scale,设置完参数点击start即可得到如图中的结果。第22页/共48页2无约束优化(fminsearch求解器)求f(x)=|x2-3*x+2|的极小值,初始点取x=-7,比较fminunc和fminsearch的差别解:启动优化工具;用fminunc时设置参数如图:点击start得到结果。第23页/共48页用f
20、minunc时结果是1.5,而用fminsearch时结果是2。计算原等式有极小值为2,由此有对于非光滑优化问题fminunc可能求不到正确的结果,而fminsearch却能很好地解决这类问题的求解。用fminsearch时如下图:第24页/共48页3约束优化(fmincon求解器)可用算法有Trustregionreflective(信赖域反射算法)、Activeset(有效集算法)、Interiorpoint(内点算法)。求minf(x)=-x1*x2*x3-x1-2*x2-2*x3=0 x1+2*x2+2*x3=72,初始点(10,10,10)。解:functiony=FunUnc(x)
21、y=-x(1)*x(2)*x(3);第25页/共48页l启动优化工具,设置参数如图:第26页/共48页杆单元第27页/共48页杆单元functiony=bareal(e,a,l)%计算单元刚度矩阵y=e*a/l-e*a/l;-e*a/le*a/l;第28页/共48页functiony=barass(kk,k,i,j)%计算节点i,j整体刚度矩阵kk(i,i)=kk(i,i)+k(1,1);kk(i,j)=kk(i,j)+k(1,2);kk(j,i)=kk(j,i)+k(2,1);kk(j,j)=kk(j,j)+k(2,2);y=kk;杆单元第29页/共48页functiony=barelefo
22、r(k,u)%计算单元节点力矢量y=k*u%u位移functiony=barelestr(k,u,a)%计算单元应力矢量y=k*u/a杆单元第30页/共48页E=210GPa,A=0.003m2,P=10kN,右端点位移0.002m,L12=1.5m,L23=1m12P3杆单元第31页/共48页e=210e6;a=0.003;l1=1.5;l2=1;k1=bareal(e,a,l1)%单元刚度矩阵k2=bareal(e,a,l2)杆单元k1=420000 -420000 -420000 420000k2=630000 -630000 -630000 630000第32页/共48页kk=zero
23、s(3,3);%整体kk=barass(kk,k1,1,2)kk=barass(kk,k2,2,3)杆单元kk=420000 -420000 0 -420000 420000 0 0 0 0kk=420000 -420000 0 -420000 1050000 -630000 0 -630000 630000P=10kN,节点3位移0.002m 0 u20.002f1-10f3第33页/共48页k=kk(2,2);k0=kk(2,3);u0=0.0020;f=-10;%边界条件f0=f-k0*u0;u=kf0%节点2位移uu=0;u;u0;ff=kk*uu%支反力杆单元u=0.0012ff=-
24、500.0000 -10.0000 510.0000第34页/共48页u1=0;uu(2)f1=barelefor(k1,u1)s1=barelestr(k1,u1,a)u2=uu(2);uu(3)f2=barelefor(k2,u2)s2=barelestr(k2,u2,a)f1=-500.0000 500.0000s1=1.0e+005*-1.6667 1.6667f2=-510.0000 510.0000s2=1.0e+005*-1.7000 1.7000杆单元第35页/共48页半径为r的轮子沿直线轨道无滚动的滑动设轮子转角=t,为常量。求轮缘上点M的运动方程,并求该点的速度和加速度。第
25、36页/共48页w=5;t=0:0.00005*pi:4*pi;r=0.5;x=r*w*t-r*sin(t);y=r-r*cos(t);x1=diff(x);y1=diff(y);x2=diff(x1);%x方向加速度 y2=diff(y1);%y方向加速度c=sqrt(x1.2+y1.2);%速度d=sqrt(x2.2+y2.2);figure(1);第37页/共48页subplot(4,1,1),plot(x,y);ylabel(m);xlabel(m);title(运动轨迹,fontsize,16);subplot(4,1,2),plot(t(1:(length(t)-1),c);yla
26、bel(rad/s);xlabel(时间(t);title(速度图,fontsize,16);subplot(4,1,3),plot(t(1:(length(t)-2),x2);ylabel(rad/s2);xlabel(时间(t);title(x方向加速度图,fontsize,16);subplot(4,1,4),plot(t(1:(length(t)-2),y2);ylabel(rads2);xlabel(时间(t);title(y方向加速度图,fontsize,16)第38页/共48页第39页/共48页40 作业要求:(1)对该问题进行分析,写出该问题的物理模型;(2)将物理模型转化为优
27、化模型(包括设计变量、目标函数、约束条件);(3)将优化模型转化为matlab程序(m文件);(4)利用matlab软件求解该优化问题,写出最优解。(5)要求写出问题和上述4个过程,条理清晰。1.问题分析2.优化模型3.matlab程序4.最优解和结果分析第40页/共48页411.机床主轴结构优化设计 机床主轴是机床中重要零件之一,一般为多支承空心阶梯轴。为了便于使用材料力学公式进行结构分析,常将阶梯轴简化成以当量直径表示的等截面轴。下图所示的为一根简化的机床主轴。要求以主轴的自重为目标,对该主轴进行优化设计。大作业第41页/共48页42 已知条件:主轴材料为45#,内径d=30mm,外力F=
28、15000N,许用挠度y0=0.05mm,材料的弹性模量E=210GPa,许用应力=180MPa。300 l650,60 D110,90 a150。dDE-EABCFlaEE第42页/共48页432.2.人字架结构优化设计 受力分析图圆杆截面图桁杆示意图d由两根空心圆杆组成对称的两杆桁架,其顶点承受负载为由两根空心圆杆组成对称的两杆桁架,其顶点承受负载为2p2p2p2p,两支座之间的水平距离为,两支座之间的水平距离为2L2L2L2L,圆杆的壁厚为,圆杆的壁厚为B B B B,杆的比重为,杆的比重为,弹性模量为,弹性模量为E E E E,屈服强度为,屈服强度为。求在桁架不被破坏的情况。求在桁架不
29、被破坏的情况下使桁架重量最轻的桁架高度下使桁架重量最轻的桁架高度h h h h及圆杆平均直径及圆杆平均直径d d d d。第43页/共48页443.3.圆形等截面销轴的优化设计的数学模型圆形等截面销轴的优化设计的数学模型 已知:已知:轴的一端作用载荷轴的一端作用载荷 P=1000NP=1000N,扭矩,扭矩 M=100NM=100Nm m;轴;轴长不得小于长不得小于8cm8cm;材料的许用弯曲应力;材料的许用弯曲应力 w w=120MPa=120MPa,许用扭剪应力许用扭剪应力 =80MPa=80MPa,许用挠度,许用挠度 f=0.01cmf=0.01cm;密度;密度=7.8t/m=7.8t/
30、m,弹性模量,弹性模量E=210E=2105 5MPaMPa。分析:分析:设计目标是轴的质量最轻设计目标是轴的质量最轻 Q=1/4 dQ=1/4 d2 2 l min.l min.;要求:要求:设计销轴,在满足上述条件的同时,轴的质量应为最轻。设计销轴,在满足上述条件的同时,轴的质量应为最轻。设计限制条件有设计限制条件有5 5个:个:弯曲强度:弯曲强度:maxmax w w 扭转强度:扭转强度:刚度:刚度:f ff f 结构尺寸:结构尺寸:l 8l 8 d 0 d 0 设计参数中的未定变量:设计参数中的未定变量:d d、l l第44页/共48页4、求下述凸轮机构在升程中的最大压力角max及其相
31、对应的凸轮转角max,迭代精度取=0.01。对心尖顶从动件盘形凸轮机构的基圆半径rb=40mm,推杆行程h=20mm,升程角0=/2,推杆运动规律为 和 压力角的计算公式为。第45页/共48页5、如图所示的偏置直动滚子从动件盘形凸轮机构,凸轮顺时针方向等角速转动,rads,推程运动角 ,推程时从动件按正弦加速度运动规律上升,其行程h=40mm,从动件导路偏置于凸轮回转中心左侧。机构有关尺寸及其他设计数据为:a50mm,c15mm,d160mm,从动件质量m5.0kg;凸轮轴半径 ,外载荷 ;弹簧初压力 ,弹簧刚度K5N/mm;从动件与导路接触面间摩擦系数 ;凸轮理论轮廓基圆半径与滚子半径之比k3.5;凸轮与滚子材料的综合弹性模量 ;凸轮的许用接触应力 ;凸轮机构推程许用压力角 。试通过优化设计使凸轮基圆半径最小.第46页/共48页6、有一鼓风机用普通V带传动,所需传递的功率P10kW,采用转速n11450rmin的交流异步电动机驱动。又知鼓风机每天工作16h,转速630rmin。并希望D1150mm,a880mm。原设计用B型带5根,D1 140mm,D2 315mm,带的节线长度L2280mm,a 778mm。现要求在传递功率P、转速n1、n2和V带型号不变的条件下,按带的最佳传动能力设计此V带传动。第47页/共48页感谢您的观看。第48页/共48页
限制150内