机械优化设计阻尼牛顿法复习过程_第1页
机械优化设计阻尼牛顿法复习过程_第2页
机械优化设计阻尼牛顿法复习过程_第3页
机械优化设计阻尼牛顿法复习过程_第4页
机械优化设计阻尼牛顿法复习过程_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品文档目录第1章选择方法及思路11.1概述11.1.1优化设计11.1.2优化设计的思想11.1.3优化设计的步骤11.2优化设计的方法11.2.1分类11.2.2常用的优化方法2第2章阻尼牛顿法计算应用2.1阻尼牛顿法的计算步骤42.2阻尼牛顿法的程序框图52.3实例解析52.4阻尼牛顿法的程序编程6第3章总结9第1章选择方法及思路1.1概述1丄1优化设计优化设计是一种规格化的设计方法,它首先要求将设计问题按优化设计所规 定的格式建立数学模型,选择合适的优化方法及计算机程序,然后再通过计算机 的计算,自动获得最优设计方案。1丄2优化设计的思想优化设计的指导思想源于它所倡导的开放型思维方式,

2、即在面对问题时,抛 开现实的局限去想象一种最理想的境界,然后再返回到当前的现状中來寻找最佳 的解决方案.在管理学中有一句俗语,“思路决定出路,心动决定行动”.如此的 思维方式有助于摆脱虚设的假象,这并非屈于异想天开或者好高莺远的空想,而 是强调一切从未來出发,然后再从现实着手。1丄2优化设计的步骤一般来说,优化设计有以下几个步骤:1、建立数学模型2、选择最优化算法3、程序设计4、制定目标要求5、计算机自动筛选最优设计方案等1.2优化设计的方法1.2.1分类根据讨论问题的不同方面,有不同的分类方法:1、按设计变量数量来分(1)单变量(一维)优化(2)多变量优化2、按约束条件來分(1)无约束优化(

3、2)有约束优化3、按目标函数來分(1)单目标优化(2)多目标优化4、按求解方法特点(1)准则法(2)数学归纳法122常用的优化方法常用的优化方法:单变量(一维)优化,无约束优化,多目标函数优化,数 学归纳法。1、单变量(一维)优化(1)概述单变量(一维)优化方法是优化方法中最简单、最基本的方法。(2)具体优化方法1)黄金分割法(0.618法)黄金分割是指将一段线段分成两端的方法,使整段与较长段的比值等于较长 段与较短段的比值,即1:久=久:(1 一力2)插值法插值法乂称"内插法”,是利用函数f (x)在某区间中若干点的函数值,作 出适当的特定函数,在这些点上取己知值,在区间的其他点上

4、用这特定函数的值 作为函数f (x)的近似值,这种方法称为插值法。黄金分割法(0.618法)与插值法的比较相同点:两种方法都是利用区间消去法原理将初始搜索区间不断缩短,求得极小值的数值近似解。不同点:表现在试验点(插入点)位置的确定方法不同。黄金分割法:试验点是按照 某种个特定的规律确定;不考虑函数值的分布;插值法:试验点是按照函数值近 似分布的极小点确定;利用了函数值本身及其导数信息。2、无约束优化(1)概述无约束最优化问题是:求n维设计变量 左&,左,,兀使目标函数为 minAAO ,而对X没有任何限制;如果存在X*,使minf(力二f(X獅分别称的为最 优点,为最优值(2)具体优

5、化方法无约束最优化方法归纳起來可分为两大类:直接法:变量(坐标)轮换法、共觇方向法、鲍威尔(Powell)法间接法:梯度法、共辄梯度法、牛顿法1)变量(坐标)轮换法它是把多变量的优化问题转化为一系列单变量的优化问题的一种方法。 原理:沿着坐标轴的方向轮流进行搜索,直至最优点。乂称坐标轮换法。 特点:变量轮换法的基本思想认为坐标轴方向为有利的搜索方向,因此,在 搜索时总是沿着互相垂直的坐标轴方向,并变换多次,才能达到极值点。搜索效 率低,且越接近极值点,搜索速度越慢。2)共辄方向法设1为nXn阶实对称正定矩阵,如果有两个n维向量5和$满足S加二0则称向量S与$对于矩阵力共辄。共辄向量的方向称为共

6、辄方向,沿着共轨向量的方向进行搜索的方法称为共觇方向法。3)鲍威尔(Powell)法鲍威尔(Powell)法乂称鲍威尔共辄方向法,它是对原始共觇方向法的改进, 与原始共辘法的区别在于它对于每一次的搜索结果进行判断,并选择最优方向继 续搜索。4)梯度法基本原理:人们利用函数在其负梯度方向函数值下降最快这一局部性质,将n维无约束 极小化问题转化为一系列沿目标函数负梯度方向一维搜索寻优,这就成为梯度法 的基本构想。5)共辄梯度法基本原理:在梯度法的基础上,利用目标函数的共辄方向和一阶导数推算和重置负方向 梯度,从而得到最优的搜索结果。6)牛顿法 原始牛顿法基本原理:原目标函数巩力用在迭代点才上)邻域

7、展开的泰勒二次多项式力0)去近似的 代替,再以”0)这个二次函数的极小点尤倂为原目标函数的下一个迭代点 f,这样重复迭代若干次后,使迭代点点列逐步逼近原目标函数的极小点。 阻尼牛顿法基本原理:在原始牛顿法的基础上,在搜索的的每一步选择最优因子进行下一步的搜 索。第2章 阻尼牛顿法计算应用2.1阻尼牛顿法的计算步骤1)给定初始点收敛精度G置20。2)计算wX)、V7c?)>(V7()r和dJvg)F3)3)求xk = xk + akdk,其中©为沿卅进行一维搜索的最佳步长。4)检查收敛精度。若曲1-叫则/ = xx+1,停机;否则置k<-k + l,返回步骤2,继续进行进行

8、搜索。2.2阻尼牛顿法的程序框图图21阻尼牛顿法的程序框图精品文档2.3实例解析利用阻尼牛顿法求函数fx2) = (x -2)4+(x1-2x2)2的极小值点(迭代两 次,一维搜索任选一种方法)。解:取初始值x°=(3,0)r,则初始点初的函数梯度,海塞矩阵及其逆矩阵分 别是W(牙0)= ' 4(兀一 2)3 十2(兀 - 2丕)V7(x°)=12-48 + 50)-4-4814-4、8 ) 丁(屮尸=%4%8 丿(48耳-4人X2X4/ Ik- I 7 3 o zf l=1o 23f I9 - 8把*代入Vf(x) = 0中得最佳步长 =求出十=号(旳="

9、;4(不-2尸+2(不-2丕) I8无4兀(27436297910丿f(x) = f 12(兀 _ 2) + 2xJ-412x<19?131丿2x8162v7(r =4823%791 丿_q8 448238929791、2743%97卯0把X2代入Vf(x) = 0中得最佳步长a严0.4082 ,求出%2 =-4755y-2.37741.94 A0.97?2.4阻尼牛顿法的程序编程程序如下:/ 阻尼牛顿»去 cpp : Defines the entry point for the c on sole applicatio n.#include<stdio.h>#

10、include<math.h># include<c onio.h>#include <iostream>double funl(double ql7double q2)return(pow(ql-2),4)+pow(ql-2*q2)/2); 修改函数f(xl/x2)=(xl-2)*(xl-2)*(xl-2)*(xl-2)+(xl-2*x2)*(xl-2*x2)double fun2(double g,double x,double y,double redouble r2)return (pow(x+g*y-2),4)+pow(x+g*y-2*(rl+g*

11、r2)z2);/关于阻尼因子的函数void main()double A21,B2,C21,D2,X2l;double E2l=4/3;/迭代的初始点 xOint t=Oj=Oj=O;double E0,x:tx2/X3,h(0l);double yby2,y3,m;double abk=0618,al,a2,fbf2;printf("输入收敛精度:”);/输入标准收敛精度std:cin»EO;doD00=E00;Dl0=El0;A00=4*(D00-2)*(D00-2)*(D00-2)+2*D00-4*Dl0;Al0=-4*(D00-2*Dl0);/A00/Al0为原函数

12、梯度的各项B00=1.0/(12.0*(D00-2)*(D00-2);B0l=1.0/(24.0*(D00-2)*(D00-2);Bl0=1.0/(24.0*(D00-2)*(D00-2);Bll=(6.0*(D00-2)*(D00-2)+l)/(48.0*(D00-2)*(D00-2);/B00LBO1,B1OLB1分别代表原函数的海赛矩阵的逆阵的各项C00=-(B00*A00+B0l*Al0);C10=-(B10*A00+B11*A10);/C00zC10为搜索方向 dk 的 各项下面利用外推法寻找函数2的区间,找单谷区间xl=0;x2=xl+h;yl=fun2(xl,D00,C00/Dl

13、0/Cl0);y2=fun2(x2/D00/C00/Dl0,Cl0);if(y2>yi)h=-h;x3=xl,y3=yl;xl=x2zyl=y2;x2=x3,y2=y3;x3=x2+h;y3=fun2(x3,D00,C00/Dl0/Cl0);while(y3<y2)h=2*h;xl=x2,yl=y2;x2=x3,y2=y3;x3=x2+h;y3=fun2(x3/D00/C00/Dl0/Cl0);i+;下面利用黄金分割法寻找函数2极值a=xl;b=x3;al=b-k*(b-a);a2=a+k*(b-a);fl=fun2(al,D00,C00/Dl0/Cl0);f2=fun2(a2,D

14、00/C00/Dl0/Cl0);doif(fl>=f2)a=al;al=a2;fl=f2;a2=a+k*(b-a);f2=fun2(a 2/D00/C00/Dl0/Cl0);elseb=a2;a2=al;f2=fl;al=b-k*(b-a);fl=fun2(al/D00/C00,Dl0/Cl0);j+;while(fabs(b-a)/b)>=EO&&fabs(f2-fl)/ f2)>=EO);m=0.5*(a+b);/m为阻尼因子E00=D00+m*C00;El0=Dl0+m*Cl0;printf("%d%15flO%15flOn,/t,EOO/El

15、O/funl(EOO/ElO);t+;while(fabs(E00-D00)>=E0&&fabs(ElO-DlO)>=EO);XOO=EOO;X1O=E1O;printf(”迭代了d 次printf(”极小点(xl/x2)=(%flO,%flO)n"/XOO,XlO);printf(”极小值 f(xl,x2)=%fl0n"/funl(X00/Xl0);该程序的运行结果,要求迭代两次后函数的极小值点在(1.94, 0.97)处。第3章总结学习机械优化设计以前,总感觉企业的生产,人类日常生活中的劳动等都是 一种简单的过程,总有一定的套路可循。但自从接

16、触了机械优化设计这门学科以 后,让我认识到在人类的生产中,我们总是意向于得到我们最满意的效果,如加 工零件怎样最省材料乂不影响零件的加工,生产的最优安排,设计的最优方案等, 看似很简单的问题,但其中却蕴藏着极大的智慧。以前在参加数学建模比赛的时 候接触到一定的优化设计。一些实例如管材问题中怎样剧料最省材料且利润最 大,就这一个问题细分下來积累的,让我们团队奋斗了三天三夜,经过这那次比 赛,我们都意识到原來优化设计是这么切合实际,贴近我们的生活。终于在即将毕业之际,我接触到了机械优化设计这么课程,系统的学习了优 化设计的各种方法。机械优化设计虽然只有从近代到现在短短儿十年的发展历史,但是其体系的 迅速完善我想是其他学科难以企及的。如今,机械优化方法也是各类决策方法中 普遍釆用的一种方法,机械优化设计作为一种现代化的设计方法己经广泛的机械

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论