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

上传人:b****8 文档编号:28668894 上传时间:2023-07-19 格式:DOCX 页数:13 大小:298.90KB
下载 相关 举报
优化设计有约束优化无约束优化.docx_第1页
第1页 / 共13页
优化设计有约束优化无约束优化.docx_第2页
第2页 / 共13页
优化设计有约束优化无约束优化.docx_第3页
第3页 / 共13页
优化设计有约束优化无约束优化.docx_第4页
第4页 / 共13页
优化设计有约束优化无约束优化.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

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

《优化设计有约束优化无约束优化.docx》由会员分享,可在线阅读,更多相关《优化设计有约束优化无约束优化.docx(13页珍藏版)》请在冰豆网上搜索。

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

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

1.多维有约束优化

题目

对一对单级圆柱齿轮减速器,以体积最小为目标进行多维有约束优化设计。

已知条件

已知数输入功p=58kw,输入转速n1=1000r/min,齿数比u=5,齿轮的许用应力[

]H=550Mpa,许用弯曲应力[

]F=400Mpa。

建立优化模型

1.3.1问题分析及设计变量的确定

由已知条件得求在满足零件刚度和强度条件下,使减速器体积最小的各项设计参数。

由于齿轮和轴的尺寸(即壳体内的零件)是决定减速器体积的依据,故可按它们的体积之和最小的原则建立目标函数。

单机圆柱齿轮减速器的齿轮和轴的体积可近似的表示为:

式中符号意义由结构图给出,其计算公式为

由上式知,齿数比给定之后,体积取决于b、z1、m、l、dz1和dz2六个参数,则设计变量可取为

1.3.2目标函数的确定

根据以上分析,可知,该齿轮减速器以体积最小的目标函数为:

1.3.3约束条件的建立

(1)为避免发生根切,应有

,得

(2)齿宽应满足

为齿宽系数

的最大值和最小值,一般取

=,

=,得:

(3)动力传递的齿轮模数应大于2mm,得

(4)为了限制大齿轮的直径不至过大,小齿轮的直径不能大于

,得

(5)齿轮轴直径的范围:

(6)轴的支撑距离

按结构关系,应满足条件:

(可取

=20),得

(7)齿轮的接触应力和弯曲应力应不大于许用值,得

(8)齿轮轴的最大挠度

不大于许用值

,得

(9)齿轮轴的弯曲应力

不大于许用值

,得

优化方法的选择

由于该问题有6个设计变量,16个约束条件的优化设计问题,采用传统的优化设计方法比较繁琐,比较复杂,所以选用Matlab优化工具箱中的fmincon函数来求解此非线性优化问题,避免了较为繁重的计算过程。

数学模型的求解

1.5.1确定数学优化模型

将已知及数据代入上式,该优化设计的数学优化模型表示为:

(1)求变量:

(2)目标函数:

(3)约束条件:

1.5.2运用Matlab优化工具箱对数学模型求解

(1)首先在Matlab优化工具箱中编写目标函数的M文件,返回x处的函数值f:

functionf=myfun(x)

f=**x

(1)*x

(2)^2*x(3)^2+85*x

(1)*x

(2)*x(3)^2-85*x

(1)*x(3)^2+*x

(1)*x(6)^2-x

(1)*x(5)^2+*x

(1)*x

(2)*x(3)*x(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文件:

function[c,ceq]=myobj(x)

c=[17-x

(2);

(1)/(x

(2)*x(3));x

(1)/(x

(2)*x(3));2-x(3);x

(2)*x(3)-300;100-x(5);x(5)-150;130-x(6);x(6)-200;x

(1)+*x(6)-x(4)-40;1486250/(x

(2)*x(3)*sqrt(x

(1)))-550;7098/(x

(1)*x

(2)*x(3)^2*+*x

(2)*x

(2)^2))-400;7098/(x

(1)*x

(2)*x(3)^2*+*x

(2)*x

(2)^2))-400;*x(4)^4/(x

(2)*x(3)*x(5)^4)*x(4);(1/(x(5)^3))*sqrt((2850000*x(4)/(x

(2)*x(3)))^2+*10^12);(1/(x(6)^3))*sqrt((2850000*x(4)/(x

(2)*x(3)))^2+6*10^13)];

ceq=[];

(3)最后求解,调用目标函数和约束条件,用matlab软件中工具箱里的fmincon函数,求解有约束的优化,在commandwindow里输入:

x0=[230;21;8;420;120;160];%给定初始值

[x,fval,exitflag,output]=fmincon(@myfun,x0,[],[],[],[],[],[],@myobj,output)%调用优化过程

1.5.3最优解以及结果分析

运行结果如下图所示:

x=

fval=

+007

exitflag=

-2

output=

iterations:

43

funcCount:

563

lssteplength:

1

stepsize:

algorithm:

'medium-scale:

SQP,Quasi-Newton,line-search'

firstorderopt:

+007

constrviolation:

message:

[1x750char]

故优化后的最终结果为

x=[]

f(x)=*107

由于齿轮模数应为标准值,齿数必须为整数,其它参数也要进行圆整,所以最优解不能直接采用,按设计规范,经标准化和圆整后:

x=[1241002148150130]

f(x)=*107

结果对比分析:

若按初始值减速器的体积V大约为×107mm3,而优化后的体积V则为×107mm3,优化结果比初始值体积减少为:

ΔV=1-×107/×107)×100%=%

所以优化后的体积比未优化前减少了%,说明优化结果相对比较成功。

2.多维无约束优化

在机械设计问题中,难以避免生产,加工,装配,经济性等问题,故少有无约束优化设计问题。

在本次试验中,针对一个管道流量问题的二维函数,设计了一个非线性无约束优化设计问题,并加以求解。

题目

已知梯形截面管道的参数:

底边长c,高度h,斜边与底边的夹角θ,横截面积A=64516mm2,如图1所示。

管道内液体的流速与管道截面的周长s的倒数成比例关系。

试按照使液体流速最大的条件,确定管道的参数。

图1梯形截面管道参数

确定优化设计模型

(1)管道截面周长:

(2)管道截面面积:

由此可得底边长度的关系式:

(与h和θ有关)

将c代入管道横截面周长的计算式中,得到管道截面周长关系式:

因此,取与管道界面周长有关的独立参数h和θ作为设计变量,有:

为使液体流速最大,取管道截面周长最小作为目标函数,即:

Min

故该函数的数学模型:

(1)变量:

(2)目标函数:

Min

运用Matlab优化工具箱对数学模型求解

2.3.1编写目标函数

首先在Matlab优化工具箱中编写目标函数的M文件,返回x处的函数值f:

%1----二维无约束优化目标函数文件

functionf=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([10030030120])

%标注左边窗口和坐标轴

xlabel('高度h(mm)')

ylabel('倾斜角theta(度)')

title('目标函数(截面周长)等值线')

%将整个图形窗口分隔成2个子窗口,取右边窗口

figure

(2);

%绘制曲面图

surfc(x1,x2,f);

%定义右边窗口坐标轴刻度范围a

axis([100300301206001200])

%标注右边窗口

xlabel('高度\bfh(mm)');

ylabel('斜边夹角\bftheta(度)');

zlabel('目标函数值\bff(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,'截面高度hx

(1)*=%mm\n',x

(1))

fprintf(1,'斜边夹角thetax

(2)*=%度\n',x

(2))

fprintf(1,'截面周长sf*=%mm\n',Fmin)

2.3.3求解结果

运行上述程序,可以解得如下参数:

exitflag=

1

output=

iterations:

18

funcCount:

60

stepsize:

1

firstorderopt:

algorithm:

'medium-scale:

Quasi-Newtonlinesearch'

message:

[1x85char]

********输出最优解********

截面高度hx

(1)*=mm

斜边夹角thetax

(2)*=度

截面周长sf*=mm

最终圆整高度h=193mm,斜边夹角θ=60°。

求解周长s=,偏差几乎可以忽略。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1