您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > 机械优化设计阻尼牛顿法
目录第1章选择方法及思路.....................................................................11.1概述.....................................................................................................................11.1.1优化设计...............................................................................................11.1.2优化设计的思想...................................................................................11.1.3优化设计的步骤...................................................................................11.2优化设计的方法.................................................................................................11.2.1分类.......................................................................................................11.2.2常用的优化方法...................................................................................2第2章阻尼牛顿法计算应用.............................................................42.1阻尼牛顿法的计算步骤.....................................................................................42.2阻尼牛顿法的程序框图.....................................................................................52.3实例解析.............................................................................................................52.4阻尼牛顿法的程序编程.....................................................................................6第3章总结........................................................................................91第1章选择方法及思路1.1概述1.1.1优化设计优化设计是一种规格化的设计方法,它首先要求将设计问题按优化设计所规定的格式建立数学模型,选择合适的优化方法及计算机程序,然后再通过计算机的计算,自动获得最优设计方案。1.1.2优化设计的思想优化设计的指导思想源于它所倡导的开放型思维方式,即在面对问题时,抛开现实的局限去想象一种最理想的境界,然后再返回到当前的现状中来寻找最佳的解决方案.在管理学中有一句俗语,“思路决定出路,心动决定行动”.如此的思维方式有助于摆脱虚设的假象,这并非属于异想天开或者好高骛远的空想,而是强调一切从未来出发,然后再从现实着手。1.1.2优化设计的步骤一般来说,优化设计有以下几个步骤:1、建立数学模型2、选择最优化算法3、程序设计4、制定目标要求5、计算机自动筛选最优设计方案等1.2优化设计的方法1.2.1分类根据讨论问题的不同方面,有不同的分类方法:1、按设计变量数量来分(1)单变量(一维)优化2(2)多变量优化2、按约束条件来分(1)无约束优化(2)有约束优化3、按目标函数来分(1)单目标优化(2)多目标优化4、按求解方法特点(1)准则法(2)数学归纳法1.2.2常用的优化方法常用的优化方法:单变量(一维)优化,无约束优化,多目标函数优化,数学归纳法。1、单变量(一维)优化(1)概述单变量(一维)优化方法是优化方法中最简单、最基本的方法。(2)具体优化方法1)黄金分割法(0.618法)黄金分割是指将一段线段分成两端的方法,使整段与较长段的比值等于较长段与较短段的比值,即2)插值法插值法又称“内插法”,是利用函数f(x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f(x)的近似值,这种方法称为插值法。黄金分割法(0.618法)与插值法的比较相同点:两种方法都是利用区间消去法原理将初始搜索区间不断缩短,求得极小值的3数值近似解。不同点:表现在试验点(插入点)位置的确定方法不同。黄金分割法:试验点是按照某种个特定的规律确定;不考虑函数值的分布;插值法:试验点是按照函数值近似分布的极小点确定;利用了函数值本身及其导数信息。2、无约束优化(1)概述无约束最优化问题是:求n维设计变量X=[x1,x2,…,xn]T使目标函数为minf(X),而对X没有任何限制;如果存在X*,使minf(X)=f(X*)分别称X*为最优点,f(X*)为最优值(2)具体优化方法无约束最优化方法归纳起来可分为两大类:直接法:变量(坐标)轮换法、共轭方向法、鲍威尔(Powell)法间接法:梯度法、共轭梯度法、牛顿法1)变量(坐标)轮换法它是把多变量的优化问题转化为一系列单变量的优化问题的一种方法。原理:沿着坐标轴的方向轮流进行搜索,直至最优点。又称坐标轮换法。特点:变量轮换法的基本思想认为坐标轴方向为有利的搜索方向,因此,在搜索时总是沿着互相垂直的坐标轴方向,并变换多次,才能达到极值点。搜索效率低,且越接近极值点,搜索速度越慢。2)共轭方向法设A为n×n阶实对称正定矩阵,如果有两个n维向量S1和S2满足S1TAS2=0则称向量S1与S2对于矩阵A共轭。共轭向量的方向称为共轭方向,沿着共轭向量的方向进行搜索的方法称为共轭方向法。3)鲍威尔(Powell)法鲍威尔(Powell)法又称鲍威尔共轭方向法,它是对原始共轭方向法的改进,与原始共轭法的区别在于它对于每一次的搜索结果进行判断,并选择最优方向继4续搜索。4)梯度法基本原理:人们利用函数在其负梯度方向函数值下降最快这一局部性质,将n维无约束极小化问题转化为一系列沿目标函数负梯度方向一维搜索寻优,这就成为梯度法的基本构想。5)共轭梯度法基本原理:在梯度法的基础上,利用目标函数的共轭方向和一阶导数推算和重置负方向梯度,从而得到最优的搜索结果。6)牛顿法①原始牛顿法基本原理:原目标函数f(X)用在迭代点X(k)邻域展开的泰勒二次多项式ψ(X)去近似的代替,再以ψ(X)这个二次函数的极小点Xψ*作为原目标函数的下一个迭代点X(k+1),这样重复迭代若干次后,使迭代点点列逐步逼近原目标函数的极小点。②阻尼牛顿法基本原理:在原始牛顿法的基础上,在搜索的的每一步选择最优因子进行下一步的搜索。第2章阻尼牛顿法计算应用2.1阻尼牛顿法的计算步骤1)给定初始点0x,收敛精度,置0k。2)计算()kfx、2()kfx、21(())kfx和21(())()kkkdfxfx3)求1kkkkxxd,其中k为沿kd进行一维搜索的最佳步长。4)检查收敛精度。若1kknxx,则*1kxx,停机;否则置1kk,5返回步骤2,继续进行进行搜索。2.2阻尼牛顿法的程序框图开始0,x给定0k1?kknxx*1kxx1kk是否结束12()()kkkfxfxd1:()kkkkkkkdxxminfdx图2-1阻尼牛顿法的程序框图2.3实例解析利用阻尼牛顿法求函数4212112(,)22fxxxxx()()的极小值点(迭代两次,一维搜索任选一种方法)。解:取初始值0Tx(3,0),则初始点初的函数梯度,海塞矩阵及其逆矩阵分别是03011221104(2)+2(2)()1284xxxxfxxx0220114144124850)()8484xxxfx201411148242412()772148482448fx6010013113102431270112924488x把1x代入()0fx中得最佳步长03631,求出181318162x13111221274364(2)+2(2)()29791840xxxxfxxx1322111192814412(2)2)12()31628844xxxfx21148()82389429791fx121181427436475583129791823892.37781402979162x把2x代入()0fx中得最佳步长10.4082,求出21.940.97x2.4阻尼牛顿法的程序编程程序如下://阻尼牛顿法.cpp:Definestheentrypointfortheconsoleapplication.#includestdio.h#includemath.h#includeconio.h#includeiostreamdoublefun1(doubleq1,doubleq2){return(pow((q1-2),4)+pow((q1-2*q2),2));//修改函数f(x1,x2)=(x1-2)*(x1-2)*(x1-2)*(x1-2)+(x1-2*x2)*(x1-2*x2)}doublefun2(doubleg,doublex,doubley,doubler1,doubler2){return(pow((x+g*y-2),4)+pow((x+g*y-2*(r1+g*r2)),2));//关于阻尼因子的函数}7voidmain(){doubleA[2][1],B[2][2],C[2][1],D[2][1],X[2][1];doubleE[2][1]={4,3};//迭代的初始点x0intt=0,i=0,j=0;doubleE0,x1,x2,x3,h(0.1);doubley1,y2,y3,m;doublea,b,k=0.618,a1,a2,f1,f2;printf(输入收敛精度:);//输入标准收敛精度std::cinE0;do{D[0][0]=E[0][0];D[1][0]=E[1][0];A[0][0]=4*(D[0][0]-2)*(D[0][0]-2)*(D[0][0]-2)+2*D[0][0]-4*D[1][0];A[1][0]=-4*(D[0][0]-2*D[1][0]);//A[0][0],A[1][0]为原函数梯度的各项B[0][0]=1.0/(12.0*(D[0][0]-2)*(D[0][0]-2));B[0][1]=1.0/(24.0*(D[0][0]-2)*(D[0][0]-2));B[1][0]=1.0/(24.0*(D[0][0]-
本文标题:机械优化设计阻尼牛顿法
链接地址:https://www.777doc.com/doc-5836806 .html