您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > MATLAB在优化中的应用
MATLAB在机械优化设计中的应用林洋8153025Page2目录1了解MATLAB相关内容2优化设计理论相关内容3无约束优化问题算法4有约束优化问题算法5案例分析Page3MATLAB简介美国Mathworks公司推出了MATLAB以其强大的功能和易用性受到越来越多的科技工作者的欢迎。MATLAB由主包和功能各异的工具箱组成,其基本数据结构是矩阵。MATLAB具有非常强大的计算功能,其已成为世界上应用最广泛的工程计算应用软件之一。(Mathematica、Maple)Page4MATLAB主要功能和特点主要功能1,数字计算功能2,符号计算功能3,数据分析和可视化分析功能4,文字处理功能5,SIMULINK动态仿真功能主要特点1,功能强大含有四十多个应用于不同领域的工具箱2,界面友好其指令表达方式与习惯上的数学表达方式非常的接近3,扩展性强用户可自发的开发自己的应用程序Page5Matlab优化工具箱简介1.MATLAB求解优化问题的主要函数类型模型基本函数名一元函数极小MinF(x)s.t.x1xx2x=fminbnd(‘F’,x1,x2)无约束极小MinF(X)X=fminunc(‘F’,X0)X=fminsearch(‘F’,X0)线性规划MinXcTs.t.AX=bX=linprog(c,A,b)二次规划Min21xTHx+cTxs.t.Ax=bX=quadprog(H,c,A,b)约束极小(非线性规划)MinF(X)s.t.G(X)=0X=fmincon(‘FG’,X0)达到目标问题Minrs.t.F(x)-wr=goalX=fgoalattain(‘F’,x,goal,w)极小极大问题Minmax{Fi(x)}X{Fi(x)}s.t.G(x)=0X=fminimax(‘FG’,x0)Page62.优化函数的输入变量使用优化函数或优化工具箱中其它优化函数时,输入变量见下表:变量描述调用函数f线性规划的目标函数f*X或二次规划的目标函数X’*H*X+f*X中线性项的系数向量linprog,quadprogfun非线性优化的目标函数.fun必须为行命令对象或M文件、嵌入函数、或MEX文件的名称fminbnd,fminsearch,fminunc,fmincon,lsqcurvefit,lsqnonlin,fgoalattain,fminimaxH二次规划的目标函数X’*H*X+f*X中二次项的系数矩阵quadprogA,bA矩阵和b向量分别为线性不等式约束:bAX中的系数矩阵和右端向量linprog,quadprog,fgoalattain,fmincon,fminimaxAeq,beqAeq矩阵和beq向量分别为线性等式约束:beqXAeq中的系数矩阵和右端向量linprog,quadprog,fgoalattain,fmincon,fminimaxvlb,vubX的下限和上限向量:vlb≤X≤vublinprog,quadprog,fgoalattain,fmincon,fminimax,lsqcurvefit,lsqnonlinX0迭代初始点坐标除fminbnd外所有优化函数x1,x2函数最小化的区间fminbndoptions优化选项参数结构,定义用于优化函数的参数所有优化函数Page73.优化函数的输出变量下表:变量描述调用函数x由优化函数求得的值.若exitflag0,则x为解;否则,x不是最终解,它只是迭代制止时优化过程的值所有优化函数fval解x处的目标函数值linprog,quadprog,fgoalattain,fmincon,fminimax,lsqcurvefit,lsqnonlin,fminbndexitflag描述退出条件:exitflag0,表目标函数收敛于解x处exitflag=0,表已达到函数评价或迭代的最大次数exitflag0,表目标函数不收敛output包含优化结果信息的输出结构.Iterations:迭代次数Algorithm:所采用的算法FuncCount:函数评价次数所有优化函数Page8优化设计理论优化设计的必要性质量问题50%由于设计不周成本70%设计阶段决定总周期40%设计周期占据Page9优化设计的概念优化设计是借助最优化数值计算方法和计算机技术,求取工程问题的最优设计方案。即:进行最优化设计时,必须首先将实际问题加以数学描述,形成一组由数学表达式组成的数学模型,然后选择一种最优化数值计算方法和计算机程序,在计算机上运算求解,得到一组最优的设计参数。Page10优化设计问题分类函数优化问题组合优化问题无约束有约束Page11优化设计的一般实施步骤(1)根据设计要求和目的定义优化设计问题(2)建立优化设计问题的数学模型(3)选用合适的优化计算方法(4)确定必要的数据和设计初始点(5)编写包括数学模型和优化算法的计算机程序,通过计算机的求解计算获取最优结构参数(6)对结果数据和设计方案进行合理性和适用性分析Page12优化设计数学模型1,建立数学模型的基本原则数学模型的建立要求确切、简洁的反映工程问题2,数学模型的三要素设计变量目标函数约束条件Page13无约束优化方法最速下降法(梯度法)牛顿型方法共轭方向法变尺度法坐标轮换法鲍威尔方法单形变换法Page14最速下降法(梯度法)优化设计是追求目标函数值f(x)最小,因此,一个很自然的想法是从某点x出发,其搜索方向d取该点的负梯度方向-▽f(x),使函数值在该点附近的范围内下降最快。形成以下迭代算法1()(0,1,2,)kkkkafkxxxPage15为了使目标函数值沿搜索方向能够获得最大的下降值,其步长因子应取一维搜索的最佳步长。即有()kfxk1()[()]min[()]min()kkkkkkkaaffaffafxxxxx根据一元函数极值的必要条件和多元复合函数求导公式,得'()[()]()0Tkkkkfffxxx1[()]()0kTkffxx1()0kTkss相邻的两个迭代点上的函数梯度相互垂直而搜索方向就是负梯度方向,因此相邻的两个搜索方向相互垂直。这就是说在最速下降法中,迭代点向函数极小点靠近的过程,走的是曲折的路线。Page16Page1700102()10424()50100xfxfxxx沿负梯度方向进行一维搜索,有01000024()2100fxxx0为一维搜索最佳步长,应满足极值必要条件122()min(24)25(2100)min()fx例:求目标函数的极小点。解:取初始点则初始点处函数值及梯度分别为0[2,2]Tx2212()25fxxxPage1800'()8(24)5000(2100)0算出一维搜索最佳步长06260.0200307231252第一次迭代设计点位置和函数值0120241.91987721000.307178510x1()3.686164fx继续作下去,经10次迭代后,得到最优解00Tx()0fx|-|xxk1kPage19梯度法的特点(1)理论明确,程序简单,对初始点要求不严格。(2)对一般函数而言,梯度法的收敛速度并不快,因为最速下降方向仅仅是指某点的一个局部性质。(3)梯度法相邻两次搜索方向的正交性,决定了迭代全过程的搜索路线呈锯齿状,在远离极小点时逼近速度较快,而在接近极小点时逼近速度较慢。(4)梯度法的收敛速度与目标函数的性质密切相关。对于等值线(面)为同心圆(球)的目标函数,一次搜索即可达到极小点。Page20牛顿型方法1、牛顿法在xk邻域内用一个泰勒二次函数φ(X)来近似代替原目标函数,并将φ(X)的极小点作为对目标函数的一次近似值,若此值不满足收敛精度要求,则将其作为求优的下一次迭代的初始点。经多次迭代,使之逼近目标函数的极小点。Page21牛顿法))(()(21)()]([)()()()()()()()(KKTKKTKKXXXHXXXXXfXfx:,0)(求导得的点的最小点即导数为X)()]([)(1)()(*KKKXfXHXX0))(()()()()()(KKKXXXHXfxPage223.5约束优化方法约束优化设计问题,其数学模型为根据求解方式的不同,约束优化设计问题可分为:直接解法、间接解法minf(X)s.t.gu(X)≤0(u=1,2,…,m)hv(X)=0(v=1,2,…,pn)Page23直接解法通常适用于仅含不等式约束的问题,思路是在m个不等式约束条件所确定的可行域内,选择一个初始点,然后决定可行搜索方向S,且以适当的步长,沿S方向进行搜索,得到一个使目标函数值下降的可行的新点,即完成一次迭代。再以新点为起点,重复上述搜索过程,直至满足收敛条件。间接解法的基本思路是将约束优化问题中的约束函数进行特殊的加权处理后,和目标函数结合起来,构成一个新的目标函数,即将原约束优化问题转化成为一个或一系列的无约束优化问题。再对新的目标函数进行无约束优化计算,从而间接地搜索到原约束问题的最优解。Page24约束优化方法随机方向法复合型法可行方向法惩罚函数法增广乘子法直接解法间接解法Page25惩罚函数法惩罚函数法是一种间接解法。它的基本原理是将约束优化问题中的不等式和不等式约束函数经加权后,和原目标函数结合为新的目标函数,将约束优化问题转换为无约束优化问题。求解无约束优化问题的极小值,从而得到原约束优化问题的最优解。Page26按照惩罚函数在优化过程中迭代点是否可行,分为:内点法外点法混合法Page27案例分析单级直齿圆柱齿轮传动减速器的优化设计已知单级直齿圆柱齿轮减速器的输入扭矩T1=2674N·m,传动比i=5,现要求确定该减速器的结构参数,在保证承载能力条件下,使减速器的重量最轻。小齿轮拟选用实心轮结构,大齿轮为四孔辐板式结构,其结构尺寸如图所示,图中△1=280mm,△2=320mm。Page28建立数学模型(1)确定目标变量求质量最轻,也就是体积最小。体积V取决于齿轮宽度B,小齿轮齿数z1,模数m,轴的支承跨距l,主动轴直径d1',从动轮直径d2',和传动比i等七个参数。其中传动比i为常量,有已知条件给定。所以,该优化设计问题可取设计变量为X=(X1,X2,X3,X4,X5,X6)T=(B,z1,m,l,d1',d2')TPage29(2)建立目标函数以齿轮减速器的重量最轻为目标函数,而此减速器的重量可以一对齿轮和两根轴的重量之和近似求出。由此,减速器的重量W=(V1+V2+V3+V4)ρ,因钢的密度为常数,所以可取减速器的体积为目标函数。将设计变量带入减速器的体积公式,经整理后得目标函数为)()(26252642546316321251261331232123221432132286.18.092.08585xxx75.4785398.0VV-VVxfxxxxxxxxxxxxxxxxxxxxxxPage30(3)确定约束条件1,为了避免根切,小齿轮的次数z1=17,于是得到约束条件g1(X)=17-x2≤02,传动动力的齿轮,要求齿轮模数一般大于2mm,故得g2(X)=2-x3≤03,根据设计经验,主从动轮的直径范围取150mm≥d,1≥100mm,200mm≥d,2≥130mm,则轴直径约束为g3(X)=100-x5≤0g4(X)=x5-150≤0g5(X)=130-x6≤0g6(X)=x6-200≤0Page314,为了保证承载能力,且避免载荷沿齿宽分布严重不均,要求16≤B/m≤35,由此得G7(X)=x1/35x3-1≤0G8(X)=1-x1/16x3≤05,根据工艺装备条件,要求大齿轮
本文标题:MATLAB在优化中的应用
链接地址:https://www.777doc.com/doc-5383272 .html