书签 分享 收藏 举报 版权申诉 / 65
上传文档赚钱

类型机械优化设计MATLAB实现课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2987106
  • 上传时间:2022-06-19
  • 格式:PPT
  • 页数:65
  • 大小:1.71MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《机械优化设计MATLAB实现课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    机械 优化 设计 MATLAB 实现 课件
    资源描述:

    1、MATLAB在机械优化设计中的应用在机械优化设计中的应用湖南农业大学 工学院2007年9月主讲主讲:*绪绪 论论1.1 MATLAB系统简介系统简介 MATLAB 名字由 MATrix 和 LABoratory 两词的前三个字母组合而成。那是 20 世纪七十年代后期的事:时任美国新墨西哥大学计算机科学系主任的 Cleve Moler 教授出于减轻学生编程负担的动机,为学生设计了一组调用 LINPACK 和 EISPACK 库程序的“通俗易用”的接口,此即用 FORTRAN 编写的萌芽状态的 MATLAB 。 经几年的校际流传,在 Little 的推动下,由 Little 、 Moler 、 S

    2、teve Bangert 合作,于 1984 年成立了 MathWorks 公司,并把 MATLAB 正式推向市场。从这时起, MATLAB 的内核采用 C 语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。 MATLAB 以商品形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如英国的 UMIST ,瑞典的 LUND 和 SIMNON ,德国的 KEDDC )纷纷淘汰,而改以 MATLAB 为平台加以重建。在时间进入 20 世纪九十年代的时候, MATLAB 已经成为国际控制界公认的标准计算软件。 到九十年代初期,在国际上 30 几个数学类科

    3、技应用软件中, MATLAB 在数值计算方面独占鳌头,而 Mathematica 和 Maple 则分居符号计算软件的前两名。 Mathcad 因其提供计算、图形、文字处理的统一环境而深受中学生欢迎。 在欧美大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把 MATLAB 作为内容。这几乎成了九十年代教科书与旧版书籍的区别性标志。在那里, MATLAB 是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。 在国际学术界, MATLAB 已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),

    4、都可以看到 MATLAB 的应用。 在设计研究单位和工业部门, MATLAB 被认作进行高效研究、开发的首选软件工具。如美国 National Instruments 公司信号测量、分析软件 LabVIEW , Cadence 公司信号和通信分析设计软件 SPW 等,或者直接建筑在 MATLAB 之上,或者以 MATLAB 为主要支撑。又如 HP 公司的 VXI 硬件, TM 公司的 DSP , Gage 公司的各种硬卡、仪器等都接受 MATLAB 的支持。MATLAB具有以下几个特点具有以下几个特点: 功能强大的数值运算功能 强大的图形处理能力 高级但简单的程序环境 丰富的工具箱 优化工具箱

    5、中的所有函数都对应一个MATLAB 6.5 的.M文件(关于.M文件请查阅相关MATLAB 6.5 文献),这些.M通过使用MATLAB 6.5 基本语句实现了具体的优化算法.可以在 MATLAB 6.5 命令窗口键入命令:type function_name,来查看相应函数的代码. 1.2 优化工具箱的工程应用步骤优化工具箱的工程应用步骤当量化地求解一个实际的最优化问题时,首先要把这个问题转化为一个数学问题.建立数学模型:然后对建立的数学模型进行具体分析选择合适的优化算法:最后根据选定的优化算法,编写计算程序进行求解用MATLAB 6.优化工具箱解决实际应用问题可以概括为以下三个步骤: (1

    6、) 根据所提出的最优化问题,建立最优化问题的数学模型确定变量,列出约束条件和目标函数 (2) 对所建立的模型进行具体分析和研究选择合适的最优化求解方法 (3) 根据最优化方法的算法,列出程序框图,选择优化函数和编写语言程序,用计算机求出最优解 利用MATLAB的优化工具箱,可以求解线性规划,非线性规划和多目标规划问题。具体而言,包括线性,非线性最小化,最大最小化,二次规划,半无限问题,线性,非线性方程化,方程求解,曲线拟合,二次规划等问题中大型课题的求解方法,为优化方法在工程中的实际应用提供了更方便,快捷的途径。 1.3 优化问题的工程背景优化问题的工程背景随着生产,经济,技术的发展,工程技术

    7、,管理人才在实际工作中常常会面临这类问题:在工程设计中,怎样的分配方案既能满足各方面的基本要求,又能降低成本;在资源配中,怎样的分配既能满足各方面的基本要求,又能获得好的经济效益;在生产计划安排中,选择怎样的计划才能提高产值和利润;在原料配比问题中,怎样确定各种万分的比例才能提高质量,降低成本;在城建规划中,怎样安排工厂,机关,学校,商店,医院,住宅和其它单位的合理布置,才能方面群众,有利于城市各行各行的发展这一类问题的共同点就是迁出最合理,达到事先预定的最优目标的方案,这就是工程问题最优化问题 最优化方法发展很快,包含多个分支,如线性规划,整数规划,非线性规划,动态规划,多目标规划等。2.1

    8、 线性规划问题与线性规划问题与MATLAB实现实现 线性规划问题是目标函数和约束条件均为线性函数的问题,MATLAB解决的线性规划问题的标准形式为: min f(x) x R s.t. A.xb Aeq.x=beq lb x ub其中f、x、b、beq、lb、ub为向量,A、Aeq为矩阵。其它形式的线性规划问题都可经过适当变换化为此标准形式。在MATLAB6.5版中,线性规划问题(Linear Programming)已用函数linprog取其它形式的线性规划问题都可经过适当变换化为此标准形式。函数 linprog 调用格式 x = linprog(f,A,b) %求min f=f(x) x

    9、Rs.t. A.xb 线性规划的最优解。x = linprog(f,A,b,Aeq,beq) %等式约束Aeq.x=beq,若没有不等式约束,则A= ,b= 。x = linprog(f,A,b,Aeq,beq,lb,ub) %指定x的范围lbxub ,若没有等式约束Aeq.x=beq , 则Aeq= ,beq= x = linprog(f,A,b,Aeq,beq,lb,ub,x0) %设置初值x0 x = linprog(f,A,b,Aeq,beq,lb,ub,x0,options) % options为指定的优化参数 x,fval = linprog() % 返回目标函数最优值,即fval

    10、= f (x)。x,fval,lambda,exitflag = linprog() % lambda为解x的Lagrange乘子。x, favl,lambda,fval,exitflag = linprog() % exitflag为终止迭代的错误条件。x,fval, lambda,exitflag,output = linprog() % output为关于优化的一些信息说明 若exitflag0表示函数收敛于解x,exitflag=0表示超过函数估值或迭代的最大数字,exitflag1 g(1)=2*x(1); %用提供的梯度g使函数最小化 g(2)=50*x(2);end输入下列系数o

    11、ptions(6)=1; options(7)=1; %采用DFP变尺度方法立方插值法options=optimset(Display,iter,LargeScale,on,GradObj,on);%设置优化参数x0=2,2;x,fval,exitflag,output,grad=fminunc(jxyh4_1fun,x0,options)结果为:结果为:x = 1.0e-013 * 0.1155 0.0044fval = 1.3825e-028exitflag = 1output = iterations: 1 funcCount: 2 cgiterations: 1 firstordero

    12、pt: 2.3093e-014 algorithm: large-scale: trust-region Newton message: 1x137 chargrad =1.0e-013 * 0.2309 0.2220 Norm of First-order Iteration f(x) step optimality CG-iterations 0 104 100 1 1.38248e-028 2.82843 2.31e-014 1例例.2 求下面的优化问题求下面的优化问题(变尺度法变尺度法)对函数f(x)=x12+2x22-4x1-2x1x2,当给定初值x0=1,1,求其最小值x.编一个编

    13、一个M文件文件=jxyh4_2fun (x).m,返回返回x处的函数值处的函数值f.function y=jxyh4_2fun(x) y=x(1)2+2*x(2)2-4*x(1)-2*x(1)*x(2); %目标函数的M文件输入下列系数输入下列系数options(6)=0; options(7)=0; %采用DFP方法混合插值法options=optimset(Display,iter,LargeScale,off,); %设置优化参数x0=1,1;x,fval,exitflag,output=fminunc(jxyh4_2fun,x0,options)结果为:结果为:x = 4.0000 2

    14、.0000fval = -8.0000exitflag = 1output = iterations: 3 funcCount: 12 stepsize: 1 firstorderopt: 2.3842e-007 algorithm: medium-scale: Quasi-Newton line search message: Optimization terminated: relative infinity-norm of gradient less than options.TolFun. Iteration Func-count f(x) Step-size infinity-nor

    15、m 0 3 -3 4 1 6 -5.5 0.25 2 2 9 -6.4 1 1.6 3 12 -8 1 2.38e-007 例例4.3 求使方程求使方程的最小化当给定初值x0=pi/3,pi/3; 求其最小值x编一个M文件y=jxyh4_3fun (x).m,返回x处的函数值f.function f=jxyh4_3fun(x)f=sin(x(1)+cos(x(1)+ sin(x(2)+cos(x(2)+ sin(x(1)*cos(x(2);输入下列系数输入下列系数x0=pi/3,pi/3;options=optimset(Display,iter,LargeScale,off); %设置优化参

    16、数x,fval,exitflag,output=fminunc(jxyh4_3fun,x0,options)结果为:结果为:x = 3.6297 4.2242fval = -2.4844exitflag = 1output = iterations: 9 funcCount: 39 stepsize: 1 firstorderopt: 1.1495e-007 algorithm: medium-scale: Quasi-Newton line search message: Optimization terminated: relative infinity-norm of gradient

    17、less than options.TolFun.212211cossincossincossin)(xxxxxxxf Gradients Iteration Func-count f(x) Step-size infinity-norm 0 3 3.16506 1.12 1 9 -0.985033 2.38021 0.932 2 12 -1.87199 1 1.01 3 21 -2.46878 0.0614031 0.159 4 24 -2.47689 1 0.112 5 27 -2.48442 1 0.006 6 30 -2.48443 1 0.00133 7 33 -2.48444 1

    18、4.06e-005 8 36 -2.48444 1 6.42e-006 9 39 -2.48444 1 1.15e-007 .4.4 在MATLAB中,多变量非线性无约束优化问题也可以调用函数 fminsearch fminsearch函数是一个M文件,其算法基于单纯形法进行计算适合解决二次以上的问题,并问题为高度非线性时,具有稳定性但是不适合求解平方和问题函数函数 fminsearch 调用格式调用格式 :x = fminsearch(fun, x0 ) %给定初值x0,求fun 函数的局部极小点xx0可以是标量,矢量,矩阵x = fminsearch(fun, x0,options ) %

    19、用options参数指定的优化参数进行求解x,fval = fminsearch() %返回x处目标函数的值到fvalx,fval,exitflag = fminsearch() %返回exitflag值描述fminunc 函数的退出条件x,fval,exitflag,output = fminsearch() %返回包含优化信息的结构输出例例4.4 求使方程求使方程的最小化当给定初值x0=1; 求其最小值x编一个编一个M文件文件y=jxyh4_4fun (x).m,返回返回x处的函数值处的函数值f.function f=jxyh4_4fun(x)f=e(-x)+x2;2( )xf xex输入

    20、下列系数输入下列系数x0=1;options=optimset(Display,iter,LargeScale,off); %设置优化参数x,fval,exitflag,output=fminsearch(jxyh4_4fun,x0,options)结果为:结果为: Gradients Iteration Func-count f(x) Step-size infinity-norm 0 3 3.16506 1.12 1 9 -0.985033 2.38021 0.932 2 12 -1.87199 1 1.01 3 21 -2.46878 0.0614031 0.159 4 24 -2.47

    21、689 1 0.112 5 27 -2.48442 1 0.006 6 30 -2.48443 1 0.00133 7 33 -2.48444 1 4.06e-005 8 36 -2.48444 1 6.42e-006 9 39 -2.48444 1 1.15e-007 x = 0.3518 fval = 0.8272exitflag = 1output = iterations: 16 funcCount: 32 algorithm: Nelder-Mead simplex direct search message: 1x196 char5.1 有约束的非线性规划问题的有约束的非线性规划问

    22、题的MATLAB实现实现 这些问题通常用基于K-T(Kuhn-Tucker)方程解的方法,直接计算拉格朗日乘子用拟牛顿法更新过程这些方法称为二次规划法(SQP)利用MATLAB解决有约束的非线性规划问题问题调用函数 fmincon :利用 fmincon 函数求解多变量的有约束的最小值:其数学模型为:式中,x, b, beq, lb和ub为矢量,A和Aeq为矩阵,c(x)和ceq(x)为函数,返回标量f(x),c(x)和ceq(x)可以是非线性函数函数函数 fmincon 调用格式调用格式 :x=fmincon(fun,x0,A,b) 给定初值x0,求fun函数的极小值x,fun函数的约束条件

    23、为A*x=b, x0可以是标量,矢量,矩阵。x=fmincon(fun,x0,A,b,Aeq,beq) 最小化fun函数,约束条件为Aeq*x=beq和A*x=b。若没有不等式存在,则令Aeq=,beq=。min( ). .( )0( )0 xf xstA xbAeq xbeqc xceq xlbxubx=fmincon(fun,x0,A,b,Aeq,beq,lb,ub) 定义设计变量x的下界lb和上界ub。使得有lb=x=ub。若无等式则有:Aeq=,beq=;x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)在上面的基础上,在nonlcon参数中提供非线

    24、性不等式c(x)和等式ceq(x),通常也以M文件的方式调用。Fmincon函数也要求c(x)=0且ceq(x)=0当无边界存在时,令lb=,ub=x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options) 用options参数指定的优化参数进行求解x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options,P1,P2) 提供另外的参数P1,P2等,传输给目标函数fun和nonlin如果不需要这些变量,则传递空矩阵到A,b,Aeq,beq,lb,ub,nonlcon, options中x,fval= fmin

    25、con(.) 将解x处的目标函数的值返回到fval参数中x,fval,exitflag=fmincon(.) 返回exitflag的值,描述函数的输出条件x,fval,exitflag,output=fmincon(.) 返回包含优化作息的结构输出x,fval,exitflag,output,lambad=fmincon() 返回解x处包含拉格朗子乘子的lambad参数x,fval,exitflag,output,lambad,grad=fmincon() 返回解x处fun函数的梯度x,fval,exitflag,output,lambad,grad,hess=fmincon() 返回解x处f

    26、un函数的hess矩阵各调用格式中,nonlcon参数计算非线性不等式约束c(x)2 Gc= % 不等式的梯度 Gceq= %等式的梯度end5.1 计算计算 有约束的非线性规划问题有约束的非线性规划问题例题5-1 试求点集A(x1 , x2 , x3)和点集B (x4 , x5 , x6)之间的最短距离。限制条件为 由图可知,点集A(x1 , x2 , x3)在球面上取点。点集B (x4 , x5 , x6)在圆柱面上取点。因此该问题就是求这两个几何体间的最短距离的约束优化问题,其数学模型为。222512322(3)145486xxxxxx14253611232453636min( )()2

    27、()2()222250(3)22 108040f xxxxxxxstgxxxgxxgxgx 编一个编一个M文件文件=jxyh5_1fun (x).m,返回返回x处的函数值处的函数值f.function f=jxyh5_1fun(x)f=(x(1)-x(4)2+(x(2)-x(5)2+(x(3)-x(6)2; %目标函数的M文件 由于约束条件中非线性约束由于约束条件中非线性约束,所以要编写一个描述非线性约束条件的所以要编写一个描述非线性约束条件的M文件文件jxyh5_1con(x).m:function c,ceq=jxyh5_1con(x)c(1)=x(1)2+x(2)2+x(3)2-5;c(

    28、2)=(x(4)-3)2+x(5)2-1;ceq=; 下一步给定初值,给定变量的下限约束,并调用优化过程。输入下列系数输入下列系数A=;b=;Aeq=;beq=;lb=-sqrt(5),-sqrt(5),-sqrt(5),2,-1,4;ub=sqrt(5),sqrt(5),sqrt(5),4,1,8;x0=1,1,1,3,1,5;options=optimset(Display,iter,LargeScale,off);x,fval,exitflag,output,lambad=fmincon(jxyh5_1fun,x0,A,b,Aeq,beq,lb,ub,jxyh5_1con,options

    29、)结果为:结果为:max Directional First-order Iter F-count f(x) constraint Step-size derivative optimality Procedure 0 7 20 0 1 16 9.62539 0.3057 0.5 -14.7 3.5 2 24 5.7322 1.444 1 0.789 3.87 3 32 4.43066 0.7698 1 0.477 1.11 4 40 5.016 0.5863 1 1.23 1.92 5 48 4.71722 0.2918 1 -0.00998 0.269 6 56 4.99527 0.004

    30、732 1 0.282 0.0741 7 64 5 1.48e-006 1 0.00473 0.000828 8 72 5 1.116e-007 1 1.29e-006 0.000102 Hessian modified Optimization terminated: Magnitude of directional derivative in search direction less than 2*options.TolFun and maximum constraint violation is less than options.TolCon.Active inequalities

    31、(to within options.TolCon = 1e-006): lower upper ineqlin ineqnonlin 4 1 6 2x = 1.0000 -0.0000 2.0000 2.0000 -0.0000 4.0000fval = 5.0000exitflag = 5output = iterations: 8 funcCount: 72 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: 1.0234e-004 cgiterations: message

    32、: 1x172 charlambad = lower: 6x1 double upper: 6x1 double eqlin: 0 x1 double eqnonlin: 0 x1 double ineqlin: 0 x1 double ineqnonlin: 2x1 double 所以当x = 1.0000 -0.0000 2.0000 2.0000 -0.0000 4.0000时, 目标函数有最小值 fval = 5.0000。 exitflag =5,表示过程成功收敛于x处。 Output输出变量显示民收敛中的迭代次数、目标函数计算次数步长算法等信息。 Lambda则包含模型信息。5-2

    33、 求解含有等式约束问题的最优解,并用求解含有等式约束问题的最优解,并用MATlab计算下列约束优化问题。计算下列约束优化问题。MATLAB过程 编一个编一个M文件文件jxyh5_2fun(x).m,返回返回x处的函数值处的函数值f。function f=md65fun(x)f=x(2)+x(1); 由于约束条件中非线性约束由于约束条件中非线性约束,所以要编写一个描述非线性约束条件的所以要编写一个描述非线性约束条件的M文件文件jxyh5_2con(x).m:function c,ceq=jxyh5_2con(x)c=log(x(1);ceq=x(1)+x(2)-1; 下一步给定初值下一步给定初值

    34、,给定变量的下限约束给定变量的下限约束,并调用优化过程。并调用优化过程。options=optimset(Display,iter,LargeScale,off);x0=1,0;x,fval,exitflag,output,lambda=fmincon(md65fun,x0,md65con,options) 2111112min. .ln010f xxxstgxxh xxx 计算结果为计算结果为: max Directional First-order Iter F-count f(x) constraint Step-size derivative optimality Procedure

    35、0 3 1 0 1 7 1 0 1 0 2 Optimization terminated: first-order optimality measure less than options.TolFun and maximum constraint violation is less than options.TolCon.Active inequalities (to within options.TolCon = 1e-006): lower upper ineqlin ineqnonlin 1x = 1 0 fval = 1 exitflag = 1output = iteration

    36、s: 1 funcCount: 7 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: 1.1102e-016 cgiterations: message: 1x143 charlambda = lower: 2x1 double upper: 2x1 double eqlin: 0 x1 double eqnonlin: -1.0000 ineqlin: 0 x1 double ineqnonlin: 0 5-3 如图所示,已知跨距为L、截面为矩性的简支梁,其材料密度为,许用弯曲

    37、应力为,允许挠度为,在梁的中点作用一集中载荷P,梁的截面宽度b不得小于,现要求设计此梁,使其重量最轻,试写出其优化数学模型。若 试用MATlab优化工具计算。考虑简支梁自重后数学模型 令 x1=b, x2=h转化数学模型 3min7.8705P=50000kg50L=5.0maTMPmfmmbmm22243minmin33 ()245 3844800fPgbhLPLghLstbhbhPgbhLPLffEIEIbbh MATLAB过程过程 编一个编一个M文件文件jxyh5_3fun(x).m,返回返回x处的函数值处的函数值f。function f=jxyh5_3fun(x)f=5*1e4*0.0

    38、5*5*x(1)*x(2)*9.8; 由于约束条件中非线性约束由于约束条件中非线性约束,所以要编写一个描述非线性约束条件的所以要编写一个描述非线性约束条件的M文件文件 jxyh5_3con(x).m:function c,ceq=jxyh5_3con(x)c(1)=6*(5*1e4*5/4+7.8*1e3*9.8*x(1)*x(2)*52/8)/(x(1)*x(2)2)-7*1e7;c(2)=5*7.8*1e3*9.8*x(1)*x(2)*54/(384*2*1e11*x(1)*x(2)2/12)+5*1e4*53/(48*2*1e11*x(1)*x(2)2/12)-0.005;ceq=; 下

    39、一步给定初值下一步给定初值,给定变量的下限约束给定变量的下限约束,并调用优化过程。并调用优化过程。options=optimset(Display,iter,LargeScale,off);x0=0.08,0.08;lb=0.05,0;ub=;x,fval,exitflag,output,lambda=fmincon(jxyh5_3fun,x0,lb,ub,jxyh5_3con, options)计算结果为计算结果为: max Directional First-order Iter F-count f(x) constraint Step-size derivative optimality

    40、 Procedure 0 3 784 6.803e+008 Infeasible start point 1 7 805.593 3.745e+008 1 -168 6.57e+003 2 11 1149.16 1.507e+008 1 344 4.43e+003 Hessian modified 3 15 1548.41 5.302e+007 1 399 2.73e+003 4 19 1889.97 1.342e+007 1 342 2.53e+003 5 23 2046.3 1.485e+006 1 156 1.71e+003 6 27 2068.21 2.326e+004 1 21.9

    41、139 7 31 2068.56 5.913 1 0.354 0.195 8 35 2068.56 0 1 9.01e-005 3.06e-005 Hessian modified Optimization terminated: first-order optimality measure less than options.TolFun and maximum constraint violation is less than options.TolCon.Active inequalities (to within options.TolCon = 1e-006): lower uppe

    42、r ineqlin ineqnonlin 1 1x = 0.0500 0.3377fval = 2.0686e+003exitflag = 1output = iterations: 8 funcCount: 35 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: 7.2760e-012 cgiterations: message: 1x143 charlambda = lower: 2x1 double upper: 2x1 double eqlin: 0 x1 double

    43、eqnonlin: 0 x1 double ineqlin: 0 x1 double ineqnonlin: 2x1 double 所以当x = 0.0500 0.3377 时, 目标函数有最小值 fval = 2.0686e+003 。 exitflag =1,表示过程成功收敛于x处。 Output输出变量显示民收敛中的迭代次数、目标函数计算次数步长算法等信息。 Lambda则包含模型信息。 例5-4 有约束的非线性规划问题有约束的非线性规划问题机床主轴结构优化设计机床主轴结构优化设计 试对图8-2所示的主轴进行优化设计,已知主轴内径d=30mm,外力 F=15000N。设计变量数 n=3,

    44、约束函数个数m=5,设计函数初值,上下限如下表:MATLAB的实现过程的实现过程:编一个目标函数的编一个目标函数的M文件文件jxyh5_4fun(x).m,返回返回x处的函数值处的函数值f。function f=jxyh5_4fun(x)f=(x(1)-x(4)2+(x(2)-x(5)2+(x(3)-x(6)2;设计变量初始值48010060下限3006090上限6501401501x2x3x 由于约束条件中非线性约束由于约束条件中非线性约束,所以要编写一个描述非线性约束条件的所以要编写一个描述非线性约束条件的M文件文件jxyh5_4con(x).m:function c,ceq=jxyh5_

    45、4con(x)c(1)=64*15000*x(3)2*(x(1)+x(3)/(3*210*103*pi*(x(2)4 -304)/0.05-1;c(2)=1-x(1)/300;c(3)=1-x(2)/60;c(4)=x(2)/140-1;c(5)=1-x(3)/90;ceq=; 下一步给定初值下一步给定初值,给定变量的下限约束给定变量的下限约束,并调用优化过程。并调用优化过程。A=;b=;Aeq=;beq=;lb=300,60,90;ub=650,140,150;x0=480,100,120;options=optimset(Display,iter,LargeScale,off);x,fva

    46、l,exitflag,output,lambda,hess=fmincon(jxyh5_4fun,x0,A,b,Aeq,beq,lb,ub,jxyh5_4con, options)计算结果为计算结果为: max Directional First-order Iter F-count f(x) constraint Step-size derivative optimality Procedure 0 4 33.4485 -0.155 1 9 32.904 -0.1304 1 -0.542 0.73 2 14 29.9777 0.01382 1 -2.86 0.438 3 19 29.8701

    47、 3.683e-005 1 -0.107 0.387 4 24 20.3387 0 1 -8.49 0.511 5 29 19.9955 0.000541 1 -0.342 0.0563 6 34 19.997 1.56e-007 1 0.00154 0.0561 7 39 16.1698 -2.22e-016 1 -3.62 0.413 Hessian modified 8 44 11.3669 0 1 -4.38 0.115 9 49 11.2481 0.0002055 1 -0.119 0.00587 10 54 11.2494 2.679e-008 1 0.00134 2.83e-00

    48、6 11 59 11.2494 0 1 1.75e-007 2e-009 Hessian modified Optimization terminated: first-order optimality measure less than options.TolFun and maximum constraint violation is less than options.TolCon.Active inequalities (to within options.TolCon = 1e-006): lower upper ineqlin ineqnonlin 1 1 3 2 5lambda

    49、= lower: 3x1 double upper: 3x1 double eqlin: 0 x1 double eqnonlin: 0 x1 double ineqlin: 0 x1 double ineqnonlin: 2x1 doublehess = 7350000 36750000 0所以当 x = 300 60 120 时, 目标函数有最小值 fval = 2.2050e+009exitflag =1,表示过程成功收敛于x处。Output输出变量显示民收敛中的迭代次数、目标函数计算次数步长算法等信息。Lambda则包含模型信息。x = 300.0000 74.8898 90.0000

    50、fval = 11.2494exitflag = 1output = iterations: 11 funcCount: 59 stepsize: 1 algorithm: medium-scale: SQP, Quasi-Newton, line-search firstorderopt: 2.0000e-009 cgiterations: message: 1x144 charlambda = lower: 3x1 double upper: 3x1 double eqlin: 0 x1 double eqnonlin: 0 x1 double ineqlin: 0 x1 double i

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:机械优化设计MATLAB实现课件.ppt
    链接地址:https://www.163wenku.com/p-2987106.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库