收藏 分销(赏)

优化设计有约束优化无约束优化.doc

上传人:精**** 文档编号:3396287 上传时间:2024-07-04 格式:DOC 页数:13 大小:263KB 下载积分:8 金币
下载 相关 举报
优化设计有约束优化无约束优化.doc_第1页
第1页 / 共13页
优化设计有约束优化无约束优化.doc_第2页
第2页 / 共13页


点击查看更多>>
资源描述
目 录 1.多维有约束优化 - 3 - 1.1 题目 - 3 - 1.2 已知条件 - 3 - 1.3 建立优化模型 - 3 - 1.3.1问题分析及设计变量的拟定 - 3 - 1.3.2目的函数的拟定 - 4 - 1.3.3 约束条件的建立 - 4 - 1.4 优化方法的选择 - 5 - 1.5 数学模型的求解 - 5 - 1.5.1 拟定数学优化模型 - 5 - 1.5.2运用Matlab优化工具箱对数学模型求解 - 6 - 1. 5.3最优解以及结果分析 - 7 - 2.多维无约束优化 - 8 - 2.1 题目 - 8 - 2.2 拟定优化设计模型 - 8 - 2.3运用Matlab优化工具箱对数学模型求解 - 9 - 2.3.1 编写目的函数 - 9 - 2.3.2 绘制该函数的平面和空间等值线 - 9 - 2.3.3运用matlab工具箱fminunc函数对该模型进行求解 - 11 - 2.3.3求解结果 - 11 - 1.多维有约束优化 1.1 题目 对一对单级圆柱齿轮减速器,以体积最小为目的进行多维有约束优化设计。 1.2 已知条件 已知数输入功p=58kw,输入转速n1=1000r/min,齿数比u=5,齿轮的许用应力[]H=550Mpa,许用弯曲应力[]F=400Mpa。 1.3 建立优化模型 1.3.1问题分析及设计变量的拟定 由已知条件得求在满足零件刚度和强度条件下,使减速器体积最小的各项设计参数。由于齿轮和轴的尺寸(即壳体内的零件)是决定减速器体积的依据,故可按它们的体积之和最小的原则建立目的函数。 单机圆柱齿轮减速器的齿轮和轴的体积可近似的表达为: 式中符号意义由结构图给出,其计算公式为 由上式知,齿数比给定之后,体积取决于b、z1 、m、l、dz1 和dz2 六个参数,则设计变量可取为 1.3.2目的函数的拟定 根据以上分析,可知,该齿轮减速器以体积最小的目的函数为: 1.3.3 约束条件的建立 (1)为避免发生根切,应有,得 (2)齿宽应满足,和为齿宽系数的最大值和最小值,一般取=0.9,=1.4,得: (3)动力传递的齿轮模数应大于2mm,得 (4)为了限制大齿轮的直径不至过大,小齿轮的直径不能大于,得 (5)齿轮轴直径的范围:得 (6)轴的支撑距离按结构关系,应满足条件:(可取=20),得 (7)齿轮的接触应力和弯曲应力应不大于许用值,得 (8)齿轮轴的最大挠度不大于许用值,得 (9)齿轮轴的弯曲应力不大于许用值,得 1.4 优化方法的选择 由于该问题有6个设计变量,16个约束条件的优化设计问题,采用传统的优化设计方法比较繁琐,比较复杂,所以选用Matlab优化工具箱中的fmincon函数来求解此非线性优化问题,避免了较为繁重的计算过程。 1.5 数学模型的求解 1.5.1 拟定数学优化模型 将已知及数据代入上式,该优化设计的数学优化模型表达为: (1)求变量: (2)目的函数: (3)约束条件: 1.5.2运用Matlab优化工具箱对数学模型求解 (1)一方面在Matlab优化工具箱中编写目的函数的M文献 myfun.m,返回x处的函数值f: function f = myfun(x) f=0.785398*(4.75*x(1)*x(2)^2*x(3)^2+85*x(1)*x(2)*x(3)^2-85*x(1)*x(3)^2+0.92*x(1)*x(6)^2-x(1)*x(5)^2+0.8*x(1)*x(2)*x(3)*x(6)-1.6*x(1)*x(3)*x(6)+x(4)*x(5)^2+x(4)*x(6)^2+28*x(5)^2+32*x(6)^2) (2)由于约束条件中有非线性约束,故需要编写一个描述非线性约束条件的M文献mycon.m: function[c,ceq]=myobj(x) c=[17-x(2);0.9-x(1)/(x(2)*x(3));x(1)/(x(2)*x(3))-1.4;2-x(3);x(2)*x(3)-300;100-x(5);x(5)-150;130-x(6);x(6)-200;x(1)+0.5*x(6)-x(4)-40;1486250/(x(2)*x(3)*sqrt(x(1)))-550; 7098/(x(1)*x(2)*x(3)^2*(0.169+0.006666*x(2)-0.0000854*x(2)^2))-400;7098/(x(1)*x(2)*x(3)^2*(0.2824+0.00177*x(2)-0.0000394*x(2)^2))-400;117.04*x(4)^4/(x(2)*x(3)*x(5)^4)-0.003*x(4);(1/(x(5)^3))*sqrt((2850000*x(4)/(x(2)*x(3)))^2+2.4*10^12)-5.5;(1/(x(6)^3))*sqrt((2850000*x(4)/(x(2)*x(3)))^2+6*10^13)-5.5]; ceq=[]; (3)最后求解,调用目的函数和约束条件,用matlab软件中工具箱里的fmincon函数,求解有约束的优化,在command window里输入: x0=[230;21;8;420;120;160];%给定初始值 [x,fval,exitflag,output]=fmincon(@myfun,x0,[],[],[],[],[],[],@myobj,output) %调用优化过程 1. 5.3最优解以及结果分析 运营结果如下图所示: x = 123.3565 99.8518 1.7561 147.3757 150.4904 129.5096 fval = 2.3168e+007 exitflag = -2 output = iterations: 43 funcCount: 563 lssteplength: 1 stepsize: 2.0356e-006 algorithm: 'medium-scale: SQP, Quasi-Newton, line-search' firstorderopt: 1.9956e+007 constrviolation: 213.1511 message: [1x750 char] 故优化后的最终结果为 x=[123.3565 99.8517 1.7561 147.3157 150.4904 129.5096] f(x)=2.36e*107 由于齿轮模数应为标准值,齿数必须为整数,其它参数也要进行圆整,所以最优解不能直接采用,按设计规范,经标准化和圆整后: x=[124 100 2 148 150 130] f(x)=6.16 *107 结果对比分析: 若按初始值减速器的体积V大约为6.32×107mm3,而优化后的体积V则为6.16×107mm3,优化结果比初始值体积减少为: ΔV=1-(6.16×107/6.32×107)×100%=2.5% 所以优化后的体积比未优化前减少了2.5%,说明优化结果相对比较成功。 2.多维无约束优化 在机械设计问题中,难以避免生产,加工,装配,经济性等问题,故少有无约束优化设计问题。在本次实验中,针对一个管道流量问题的二维函数,设计了一个非线性无约束优化设计问题,并加以求解。 2.1 题目 已知梯形截面管道的参数:底边长c,高度h,斜边与底边的夹角θ,横截面积A=64516mm2,如图1所示。管道内液体的流速与管道截面的周长s的倒数成比例关系。试按照使液体流速最大的条件,拟定管道的参数。 图1 梯形截面管道参数 2.2 拟定优化设计模型 (1)管道截面周长: (2)管道截面面积: 由此可得底边长度的关系式:(与h和θ有关) 将c代入管道横截面周长的计算式中,得到管道截面周长关系式: 因此,取与管道界面周长有关的独立参数h和θ作为设计变量,有: 为使液体流速最大,取管道截面周长最小作为目的函数,即: Min 故该函数的数学模型: (1)变量: (2)目的函数: Min 2.3运用Matlab优化工具箱对数学模型求解 2.3.1 编写目的函数 一方面在Matlab优化工具箱中编写目的函数的M文献 sc_wysyh.m,返回x处的函数值f: % 1----二维无约束优化目的函数文献(sc_wysyh.m) function f=sc_wysyh(x) a=64516;hd=pi/180; f=a/x(1)-x(1)/tan(x(2)*hd)+2*x(1)/sin(x(2)*hd); 2.3.2 绘制该函数的平面和空间等值线 % 2----绘制水槽截面周长等高线和曲面图的程序 % 按(初值,终值,等分数)产生等间隔向量xx1,xx2 xx1=linspace(100,300,25); xx2=linspace(30,120,25); % 产生两个[5x10]的网格矩阵x1,x2 [x1,x2]=meshgrid(xx1,xx2); % 定义目的函数 a=64516;hd=pi/180; f=a./x1-x1./tan(x2*hd)+2*x1./sin(x2*hd); % 将整个图形窗口分隔成2个子窗口,取左边窗口 figure(1); % 绘制等值线并标注函数值 h=contour(x1,x2,f); clabel(h); % 定义左边窗口坐标轴刻度范围 axis([100 300 30 120]) % 标注左边窗口和坐标轴 xlabel('高度 h (mm)') ylabel('倾斜角 theta (度)') title('目的函数(截面周长)等值线') % 将整个图形窗口分隔成2个子窗口,取右边窗口 figure(2); % 绘制曲面图 surfc(x1,x2,f); % 定义右边窗口坐标轴刻度范围a axis([100 300 30 120 600 1200]) % 标注右边窗口 xlabel('高度 \bf h (mm)'); ylabel('斜边夹角 \bf theta(度)'); zlabel('目的函数值\bf f (mm)'); title('目的函数(截面周长)曲面图') 运营结果,目的函数的曲面如图2,目的函数等值曲线如图3。 图2 截面周长曲面图 图3 截面周长等值线 2.3.3运用matlab工具箱fminunc函数对该模型进行求解 % 初始点 x0=[25;45]; % 调用梯度法搜索 [x,Fmin,exitflag,output]=fminunc('sc_wysyh',x0); disp ' ******** 输出最优解 ********' fprintf (1,' 截面高度h x(1)* = %3.4f mm \n',x(1)) fprintf (1,' 斜边夹角theta x(2)* = %3.4f 度 \n',x(2)) fprintf (1,' 截面周长s f* = %3.4f mm \n',Fmin) 2.3.3求解结果 运营上述程序,可以解得如下参数: exitflag = 1 output = iterations: 18 funcCount: 60 stepsize: 1 firstorderopt: 6.2179e-005 algorithm: 'medium-scale: Quasi-Newton line search' message: [1x85 char] ******** 输出最优解 ******** 截面高度h x(1)* = 192.9958 mm 斜边夹角theta x(2)* = 60.0005 度 截面周长s f* = 668.5656 mm 最终圆整高度h = 193 mm,斜边夹角θ=60°。求解周长s= 668.5656mm,偏差几乎可以忽略。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服