已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要优化设计的方法有多种,一般的就只是单纯的计算,运用数学方程式对弹簧的各个参数加以优化,后来人们有了更多更新的方法对其进行优化,例如,蚁群算法、MATLAB、遗传算法等等。在不同的机构或零件优化设计中,参数的性质也对优化设计有着至关重大的影响。其中变量参数有些是实数,还有些是整数,这就影响了在设计中用到的变量有着不同的选择,可以是实数变量或者整数变量甚至是混合变量。此次论文对压缩弹簧进行优化设计。首先,要确定目标函数与设计变量;其次,确定约束函数;最后,建立数学模型,利用计算机求出优化结果。此次设计运用了VB编程,并且根据弹簧参数特性运用了实数变量进行优化设计。与经验设计方法相比较,采用优化设计方法可节约原材料,并且有效实用。因此,优化设计方法在机械设计行业具有广阔的发展前景。关键词压缩弹簧;优化设计;遗传算法;整数变量;VB编程ABSTRACTTHEREAREMANYOPTIMIZATIONDESIGNMETHODS,WHICHAREGENERALLYTOOPTIMIZEALLTHEPARAMETERSOFASPRINGBYUSINGTHEPURECACULATIONANDMATHEMATICEQUATIONANDTHEREAREMOREANDNEWERMETHODSTODOITSUCHASMATLABGENETICALGORITHMANDSOONSINCETHENINTHEOPTIMIZATIONDESIGNOFTHEVARIOUSMACHINERYANDCOMPONENTS,THECHARACTEROFTHEPARAMETERTAKESAGREATEFFECTONTHEDESIGNTHEREARESOMEREALNUMBER,SOMEINTEGEROFALLTHEVARIABLEPARAMETERS,WHICHDECIDETHECHOICEOFTHEPARAMETERSUSEDINCLUDINGREALVARIABLEORINTEGERALVARIABLEANDEVENMIXEDVARIABLEINTHEDESIGNTHEPAPERDISSERTATESTHEOPTIMATIONDESIGNOFTHECOMPRESSINGSPINGFIRST,ASCERTAINTHEOBJECTFUNCTIONANDTHEDESIGNVARIABLESECOND,ASCERTAINTHERESTRICTIONFUNCTIONATLAST,BUILDTHEMATHEMATICMODELANDGETTHEOPTIMATIONRESULTBYCOMPUTERTHEAUTHORDOESTHEOPTIMATIONDESIGNBYUTILIZINGTHEVBWEAVEANDBYUTILIZINGTHEREALVARIABLEACCODINGTOTHECHARACTEROFTHEVARIABLEOFTHESPINGCOMPAREDWITHTHEEXPERIENTIALDESIGN,USINGTHEOPTIMIZATIONDESIGNCANCUTDOWNTHECOSTANDISEFFICIENTANDPRACTICALSOTHEOPTIMIZATIONDESIGNOWNSTHEWIDEVIEWINTHEMACHININGDESIGNKEYWORDSCOMPRESSINGSPRINGOPTIMIZATIONDESIGNGENETICALGORITHMINTEGERALVARIABLEVBWEAVE目录摘要IABSTRACTII目录III第1章绪论111课题研究的背景和意义及其研究现状112论文主要研究内容3第2章遗传算法的原理及改进421遗传算法概述422算法的基本步骤523遗传算法的基本要点724遗传算法的约束问题处理方式1125遗传算法的发展前景13第3章传动优化数学模型的建立1531弹簧相关参数的选择确定32弹簧优化设计数学模型的建立第4章齿轮传动优化设计的遗传算法实现方法2141设计变量的编码2142群体规模的选择2343初始解的产生2344目标函数和适应函数的产生2445选择复制操作2646交叉操作2747变异运算2848终止规则3149优化算例31410优化设计程序代码31结论44参考文献45致谢47附录1英文参考资料附录2英文参考资料的中文翻译第1章绪论11课题研究的背景和意义及其研究现状111课题研究的背景和意义遗传算法GENETICALGORITHM,GA是近年来迅速发展起来的一种全新的随机搜索与优化算法,其基本思想是基于DARWIN的进化论和MENDEL的遗传学说。该算法由密执安大学教授HOLLAND及其学生于1975年创建。作为一种通用的问题求解方法,遗传算法采用简单的编码技术来表示各种复杂的结构并通过对一组编码表示进行简单的遗传操作和优胜劣汰的自然选择来指导学习和确定搜索的方向。与此同时,基于遗传算法的机械优化设计是以数学规划论为理论基础,运用计算机求机械设计最优参数的现代先进设计方法利用计算机进行优化设计,无论在机构综合、通用机构零部件设计方面,还是在各种专业机械和工艺装备的设计方面都取得了显著成果弹簧的优化设计有其结构要求或其它规定,诸如强度、刚度、稳定性、结构等的限制因此弹簧优化设计的含意是选择设计变量,使目标函数值为最优极大或极小,并满足所有的技术性能及其它要求112研究现状压缩弹簧优化设计的基本原理是在满足强度等约束前提下,对弹簧的簧丝直径、弹簧中径、弹簧圈数等参数进行优化设计,以达到减小体积或提高运行可靠性、承载能力等目的。设计变量中,簧丝直径、弹簧中径和圈数均为离散的标准值,因此该优化设计问题是一个离散变量的非线形优化问题。传统的经验设计方法,。线性优化方法中把簧丝直径、弹簧中径和圈数离散的标准值均当作连续变量处理,优化后再取为标准值,无法保证结果的最优性。随着优化技术的发展,李智基于蚁群算法对齿轮传动进行了优化设计7,计算结果表明,该算法计算效率高,不失为一种多参数复杂约束条件下的有效的优化算法。MATLAB算法求解优化设计问题时911,虽然程序设计较为简单,但优化时需把标准值当作连续变量处理。遗传算法在弹簧优化设计中已有应用1417,但大都应用二进制编码遗传算法进行弹簧优化设计时18,19,20,对于连续变量存在精度低、存储量大的缺点,非连续的离散标准值优化后需进行圆整处理,从而无法保证结果的最优性。12论文主要研究内容本次论文的题目是“基于遗传算法的压缩弹簧的优化设计”。论文通过设计变量的选取、目标函数和约束条件的确定,建立了压缩弹簧的优化设计数学模型,利用遗传算法进行求解,最后借助VB语言编制优化程序,得到了弹簧的优化参数。全文的主要内容包括以下几个方面(1)对遗传算法的基本原理和方法进行阐述,并针对算法的局限性,对其操作过程进行改进。(2)压缩弹簧数学模型的建立。以簧丝直径、弹簧中径和工作圈数为设计变量,在满足相关约束条件的前提下,建立了以体积最小为目标函数的优化设计数学模型,并用惩罚函数法将其转换为无约束优化问题。(3)应用改进遗传算法进行压缩弹簧优化设计。在算法操作过程中,把目标函数转换为对应的适应函数,给出了约束条件的处理方法,使部分约束条件自动得到满足。操作过程中针对各变量均为离散型变量只采用了整数编码。(4)在前面理论研究工作的基础上,采用软件工程学方法在VB编程环境下将问题的模型建立,求解过程给予计算机实现,最终得出弹簧的最优参数,并对结果进行了讨论。第2章遗传算法的原理及改进21遗传算法概述以模拟自然界生物遗传和进化过程形式的遗传算法,是依据生物进化以集团的形式即群体共同进化的。组成群体的单个生物称为个体基本特征的遗传继承,由个体性质的染色体所决定。具有遗传基因染色体的个体对环境有不同的适应性。遗传算法正是基于自然界生物“物竟天泽,适者生存”的进化思想构造的一类算法,算法将保持一个竞争的解群体,经过杂交和(或)变异等遗传操作而更新换代,从而使待求的解逐步优化,最终找到问题的最优解或次优解。遗传算法的术语来源于自然遗传学。1975年由美国JHOLLAND教授提出的遗传算法(GENETICALGORITHM,简称GA)是基于自然选择原理、自然遗传机制和自适应搜索(寻优)的算法6。JHOLLAND教授的ADAPTATIONINNATURALANDARTIFICIALSYSTEMS一书的问世标志着遗传算法的诞生24。GA启迪于生物学的新达尔文主义(达尔文的进化论、魏茨曼的物种选择学说和孟德尔的基因学说),模仿物竟天演、优胜劣汰、适者生存的生物遗传和进化的规律性。1989年美国伊利诺大学的DAVIDEGOLDBERG博士出版的专著GENETICALGORITHMINSEARCH,OPTIMIZATIONANDMACHINELEARNING是遗传算法发展过程中的又一个里程碑,这本书全面地阐述了遗传算法的发展历程、现状、各种算法和应用实例,并附有PASCAL源程序,从而使得广大工程技术人员得以进行实际的应用,在全世界掀起了关于遗传算法的研究和应用热潮25。在进化论中,每一物种在不断的发展过程中都是越来越适应环境,物种的每个个体的基本特征被后代所继承,但后代又不完全等同于父代,这些新的变化若适应环境则被保留下来,否则就将被淘汰。在遗传学中认为,遗传是作为一种指令遗传密码封装在每个细胞中,并以基因的形式包含在染色体中,每个基因有特殊的位置并控制某个特殊的性质。每个基因产生的个体对环境有一定的适应性。基因杂交和基因突变可能产生对环境适应性强的后代,通过优胜劣汰的自然选择,适应值高的基因结构就保存下来。遗传算法就是模仿了生物的遗传、进化原理,并引用了随机统计理论而形成的。在求解过程中,遗传算法从一个初始变量群体开始,一代一代地寻找问题的最优解,直到满足收敛叛据或预先设定的迭代次数为止。它借助选择、交叉、变异等操作,使所要解决的问题一步步地逼近最优解。与其他优化方法相比,遗传算法以单一的字符串形式描述所研究的问题,只需要利用适应函数值来进行优化计算,而不需要函数导数等其他辅助信息。目前,随着计算机技术的发展,遗传算法越来越得到人们的重视,并在机器学习、模式识别、神经网络、优化控制、组合优化等领域得到了成功应用。遗传算法一般由4个部分组成26编码与解码、适应函数、遗传算子和控制参数(1)由设计空间向遗传算法编码空间的映射称为编码;而由编码空间向设计空间的映射称为解码。用遗传算法求解最优化问题时,必须先建立设计变量与染色体之间的对应关系,即确定编码与解码的规则。(2)适应函数是用以描述个体适应环境的程度,也是生物进化中决定哪些染色体可以产生优良后代的依据。一般是,个体的适应函数值愈大,则个体性能愈好,生存可能性愈大;反之,若个体的适应函数值愈小,则个体的性能愈差,淘汰愈有可能。(3)遗传算子包括复制算子、交配算子和变异算子。复制算子是根据个体的优劣程度决定在下一代是被淘汰还是被复制。交配是指两个相互配对的染色体按某种方式相互交换其部分基因而生成两个新的个体。变异是将个体染色体编码字符中的某些基因用其他等位基因来替换,从而生成一个新的染色体。这三个算子一般都按一定的种群选择概率、交配概率和变异概率随机地进行,造成遗传中的子代和父代的不同和差异。(4)算法的控制参数包括种群的规模N、交配率PC和变异率PM。迄今为止,有关遗传算法的理论研究还相当不完善,特别是有关遗传算法的收敛性研究,以及如何提高算法的收敛速度和计算的稳定性等,这些都是目前具有重要研究价值的问题。22算法的基本步骤遗传算法是一类随机优化算法,标准遗传算法(SGA)的主要步骤26(1)选择优化问题求解的一种编码。(2)随机产生N个染色体的初始群体。0POK,(3)对群体中的每个染色体POPIK计算适应函数(2FIITNES1)(4)若满足终止规则,则转向(9),否则计算概率,(2NIIFPI1,22)(5)以概率从中随机选一些染色体构成一个新群体(其中可以重复选IPKO中的元素)KPO(2NIKK,21PO1NEW3)(6)通过交配,按交配概率得到一个有N个染色体的交配群体。C1CROSPK(7)以一个较小的变异概率,得到一个染色体的一个基因发生变异,形成变MP异群体。1MUTPOK(8)令和,返回(3)。1UTOKK(9)终止计算,输出最优结果。由参考文献27,28可知,当参数满足交叉概率,变异概率,10CP10MP则简单遗传算法不收敛到全局最优解。而在以下几种改进中收敛到最优解(1)每次记录下当前最优解并将群体状态最前面增加一维存放当前最优解。(2)按交叉、变异、种群选取之后,更新当前最优染色体的进化循环过程。(3)按交叉、变异后就更新当前最优染色体,之后再进行种群选取的进化循环过程。遗传算法不同于传统的优化算法,它是利用生物进化和遗传的思想实现优化过程的,因此它具有如下几个优点(1)遗传算法是通过对优化问题的变量(或参数)编码成“染色体”后进行操作的,而不是对变量本身,因此这个不受变量性质(如连续、离散等)的限制,而且对多变量、多目标的优化问题也是一种很适用的方法,遗传算法也是一种随机搜索的数值求解方法,由于在求解过程中记录下一个群体,因而可提供多个解,而且在求解过程中无需提供其他如导数等一类信息。(2)遗传算法的求解是从一个群体开始的,并在求解过程中记录下一个群体。因此具有隐含并行搜索的特性,从而大大减小了陷入局部最优解的可能性。(3)遗传算法对优化问题的变量编码后,其计算过程比较简单,且可以较快地得到一个满意解。由于算法本身与其它启发式算法具有较强的兼容性,所以可以用其他算法产生初始群体,亦可以对每一群体用其他算法产生下一代新群体。遗传算法也还可以存在一些不足或是需要进一步深入研究的问题,如编码不规范性以及编码存在表示的不准确性、编码不能全面地表示出约束以及保证收敛到最优解等。23遗传算法的基本要点一、编码遗传算法的基础工作之一是解的编码,只有在编码之后才可能进行其他的计算。遗传算法的操作对象是字符串,编码方法要求一是字符串要反映所研究问题的性质;二是应遵循字符串长度最短、模式阶次最高、模式数目最大等原则。一般有两种编码方式,比较直观和常规的方法是0,1二进制编码,称这一类编码为常规码,这同人类的染色体成对结构类似。这种编码方式使算法的三个算子(选择、交叉、变异)构造比较简单,对一些优化问题有其表示简单和直观的优越性。但对于一些多维、高精度要求的连续函数优化,二进制编码存在着连续函数离散化时的映射误差,个体编码串较短时,可能达不到精度要求;而个体编码串的长度较长时,虽然能提高精度,但却会使算法的搜索空间急剧扩大,造成遗传算法的性能降低。其他的非0,1编码称为非常规编码,非常规编码同问题联系比较紧密。所以应针对问题的实际情况,适当选取。虽然遗传算法具有通用性的全局最优算法,如果不针对问题设计算法,其计算时间可能是非常大的,可以通过对问题的了解而换取计算时间的节省。二、群体规模群体规模是每一代个体的总数,也即初始解的个数。由于初始解的分布影SIZEPO响结果,而每一代的运算量影响总计算时间,所以对结果和计算时间都有影响,SIZEPO越大所需时间越多,但由于迭代终止条件取决于母体总体的平均水平,故SIZEPO的大小对迭代次数影响明显。为了让初始解在解空间分布均匀,不能SIZEPO去太小,且随节点数的增多而增大,不过太大也无益。三、适应函数遗传操作在进化搜索中基本不利用外部信息,仅以适应函数为依据,利用种群中每个个体的适应函数值来进行搜索。因此适应函数的选取至关重要,直接影响到遗传算法的收敛速度以及能否找到最优解。一般而言,适应函数是由目标函数变换而成的。简单适应函数是目标函数的简单变形,若为目标函数,则适应函数可以趣取XF为,优化目标为最大(24)XFFITNES且优化目标为最小(25)XFMMA,其它常见的适应函数形式见参考文献27,29,30。适应函数的设计主要满足以下几个条件(1)单值、连续、非负、最大化,这个条件是很容易理解和实现的。(2)合理、一致性,要求适应函数值反映对应解的优劣程度。(3)计算量尽量小,适应函数设计应尽可能简单,这样可以减少计算时间和空间上的复杂性,降低计算成本。(4)通用性强,适应函数对某类具体问题应尽可能通用。适应函数设计不当会出现以下问题(1)在遗传进化初期,通常会产生一些超常的个体,若按照一般选择方法,这些异常个体因竞争力太突出而控制了选择过程,影响算法的全局优化性能。(2)在遗传进化的后期,即算法接近收敛时,由于种群中个体适应函数值差异较小,继续优化的潜能降低,可能获得某个局部最优解。上述两个问题通常称为遗传算法的欺骗问题,适应函数设计不当可能造成问题的出现。四、选择过程选择过程的第一步是计算适应值,在被选集中的每个个体具有一个选择概率,这个选择概率取决于种群中个体的适应值及其分布。选择方法比较多,这里介绍常用的轮盘赌选择法,选择过程是以旋转赌轮次为基础的,每次旋转都为新的种群选择一个染色体,赌轮是按每个染色体的SIZEPO适应函数值进行选择染色体的。无论使用哪一种适应函数,选择过程总可以写成如下形式(1)对每个染色体,计算累积概率TIPOIP(26)SIZEPO,21,SIZEPOFJI(2)在区间1,2中产生一个随机数。R(3)若,则选择第个染色体。IRP1ITPOI(4)重复步骤(2)和步骤(3)共次,这样可以得到个复制的SZESIZEPO染色体。五、交叉交叉是遗传算法的核心操作,是产生新的优秀个体最主要的手段。交叉可以把两串中优良的性能传递到下一代的某一串中,使该串具有优于其父辈的性能,如果交叉后得到的后代性能不佳,则可以在以后的选择过程中将其屏弃。首先定义参数作为CP交叉操作的概率,这个概率说明种群中有期望值为个染色体进行交叉操作。SIZEPOC为确定交叉操作的父代,从到重复以下过程从0,1中产生随机数,1ISIZEPOR如果。则选择作为一个父代。将选择的父代随机分成两个一对,然后对每CPRTIO队父代进行交叉操作。常用的二进制编码交叉方法有单点交叉、多点交叉、均匀交叉、匹配交叉等。下面介绍下单点交叉。单点交叉是在两个参与交叉的父代个体确定后,随机产生一个交叉点,进行交叉点后的所有基因对换,对换后形成两个后代。简单K1SIZEPO,实例如下父个体101110011010符个体210101100101交叉点的位置为5。交叉后形成两个子个体子个体101110100101子个体210101011010常用的实数编码交叉方法有离散重组和算术交叉法。这里介绍下算术交叉方法,假设随机选择以下两个染色体和进行交叉,则交叉方法NIX,1NIYY,1为,(27)IIIIIIXYX1NI,1式中为0,1范围内的随机数。I六、变异变异是加大种群多样性的重要因素,变异可以使基因串在运算过程中丢弃的某些重要数字予以恢复。因为如果某一代中串的某位数字全是0,则无论选择和交叉如何进行,其后代的所有串中该数字永远是0,不会再出现1,也就是说1这个信息丢失了,只有通过变异才可将其恢复。变异操作是模拟生物在自然环境中由于各种偶然因素引起的基因突变过程,表现为字符串中字符的翻转,即0变成1或1变成0。变异率分布在0,1间,一般取0,02间的一个数。类似于交叉操作中选择父代的过程,MP由到重复以下过程从0,1中产生随机数,如果,则选择1ISIZEORMP作为一个父代。对每一个选择的父代,随机选择变异的基因位,进行变异操作。TI变异操作可使适应值小的个体或群体素质趋于一致时的个体发生变化,从而使每一代保持新鲜个体,避免进化停滞,过早收敛。变异率较小时,新个体出现的少,但由于个体较稳定,故收敛性好。随着变异MP率在一定范围内增大,新个体较多,优秀个体出现的几率大,故结果更优,收敛性也较好。但再增大,由于个体的稳定性差,可能使好的个体未保留下来就被破坏了,致使结果和收敛性都变坏了31。对于实数编码的个体,随机选择某位基因,其一般形式为(28)X式中为一较小的波动量,其选择比较困难,最优值视具体情况而定,甚至在优化过程中可以改变。七、终止条件遗传算法是一种反复迭代的搜索方法,它通过多次进化逐渐逼近最优解不一定是恰好等于最优解,因此需要确定其终止条件。最常用的终止方法是规定一个最大的遗传代数,算法迭代次数达到最大遗传代数时停止。当目标函数是方差这一类有最优目标值的问题时,可采用控制偏差的方法实现终止。一旦遗传算法得出的目标函数值与实际目标函数值之差小于允许值后,算法终止。终止条件也可通过检查适应函数值的变化来实现,如果群体平均适应函数值变化率和最优个体适应函数值变化率小于许可精度,则可以认为群体处于稳定状态,群体进化基本收敛,可结束群体进化过程,否则继续群体的进化过程。同时也可以应用上述几种终止规则的组合。24遗传算法的约束问题处理方式遗传算法最根本的是设法产生或助于产生优良的个体“成员”,且这些“成员”充分体现出求解空间中的解,从而提高算法效率和避免出现过早收敛。因此现今研究的努力方向都是针对基因操作、种群的宏观操作等方面,并在算法方法出现免疫遗传算法、并行遗传算法等26。对于有约束问题的求解,目前的处理反复法主要有以下几种(1)采用惩罚函数的方法处理约束问题;(2)在算法的运行过程中通过检查解的可行性来决定解的保留或弃用;(3)把问题的约束条件在染色体的表现形式中体现出来,设计专门的遗传算子,使染色体所表示的解在算法运行中保持可行性,这种方法实施起来难度也较大。到目前为止,采用遗传算法求解高维、多约束和多目标的优化问题已有一些成功的经验,但仍有一些问题需要进一步研究,它的进展将会推动遗传算法在工程领域中的广泛应用。241采用惩罚函数法处理约束问题由于很多优化问题都是带约束条件的,可是遗传算法紧靠适应度来评价和引导搜索,求解问题所固有的约束条件不能明确地表示出来,对某些典型的约束组合优化问题,用遗传算法求解此类问题要考虑一些对策。虽然在进化过程中检验一下新的个体是否满足约束条件,如果没有违背,则作为有效个体,反之,作为无效个体被除去,但这种方法对于弱约束问题求解是有效的,而对于强约束问题求解效果不佳。这是因为在这种场合,寻找一个有效个体的难度不亚于寻找最优个体。针对这样的问题,可采取罚函数方法。该方法的基本思想是对个体违背约束条件的情况给予惩罚,并将此惩罚体现在适应度函数设计中。这样一个约束优化问题就可以转换为一个附带考虑惩罚的非约束优化问题。例如,一个原本是约束最小化问题可描述如下MINXFST0GINI,21XHVMV式中是矢量。X通过罚函数将上述问题转化为非约束问题RX,(29)MINXRPFRX,式中为惩罚项,由下式表示XP(2XP21I21G0,MAXNIMVCXHC10)式中,分别为等式约束与不等式约束的不均衡加权系数,而1C2(22XG0,MAXGBII11)(在可行域外,即)XHI0XGI或0(在可行域内,即)I式(29)中的为惩罚因子。随着进化不断进行,惩罚项越来越小,为了保证惩R罚项的作用,必须逐步加大惩罚因子。R罚函数方法是处理非线性约束优化问题比较广泛的一种方法,由式(29)看出,它是由原目标函数及惩罚项的函数两部分组成,按惩罚项函数的不同,XFXPXP有以下几种方法(1)静态罚函数法该方法首先对第个约束条件建立个不同的约束违反水平,JI然后针对不同的水平确定惩罚因子,违反水平越高,惩罚因子的取值越大,这些IJRIJR惩罚因子在整个进化过程中保持不变,亦即称为“静态”的。静态罚函数的惩罚函数形式(212)MJJIXGRXP12式中即约束条件的形式约束条件;为矢量。XGJ0JX该法的主要缺点是罚因子参数太多,而且优化搜索的效率对参数的选择有明显的依赖性。对给定的问题,尽管存在较为理想的参数设置方案,但是要在事先正确地确定它们是困难的。同时,适宜的惩罚因子的值也会随着进化过程而改变。因此,采用静态惩罚因子往往不能保证正确地将搜索导向可行域。(2)动态罚函数法动态罚函数法使用随着进化而动态调整惩罚因子,它的惩惩罚函数为(213)MJJIXGRCTXP1式中为进化代数,通常取。随着代数的增加,对不可行个体的惩T2,50罚压力迅速地增长。动态罚函数法要求确定的独立约束的参数比上一种方法少的多,而且与约束数量无关,故这种方法比静态罚函数法便于实施。但要针对具体问题确定合适的惩罚因子也很困难,当惩罚因子设置不当时,搜索效率可能达不到期望要求。对于以上方法,惩罚因子取得过小时,可能造成整个罚函数极小解不是原目标函数的整体极小,而当惩罚因子取得过大时,有可能在可行域外造成多个局部极值点,XF给搜索过程增加困难。事先确定适宜的惩罚因子是困难的,一般需要通过多次实验来调节。25遗传算法的发展前景遗传算法将来与神经网络、模糊推理等相互渗透组合并丰富智能计算,它与进化规划和进化策略共同结合,完善进化计算框架。除此之外,展望在机械工程中将在以下几方面得到应用6(1)总体设计方面机械现代设计目标要求为功能质量成本的系统化,它包括方案选择、材料选择、结构优化、工艺规划、可靠性分析及成本分析等众多因素与综合知识,将遗传算法与CAD技术结合解决系统的优化问题。(2)系列化标准件选取方面应用遗传算法的组合优化来解决机械系统中多种系列化标准件的组合选取问题。通常主要靠经验的选取,用这类组合优化来解决,使组合系列化选取更科学化。(3)反求工程方面若要建立原设计产品的数学模型,因一些设计参数和工艺参数往往不易确定,可用遗传算法和计算机仿真技术,把这些参数作为参变量进行编码,使原设计产品的性能和数学模型的仿真性能之间差异最小的目标下,获得最符合原设计的设计与工艺参数。与此同时,利用遗传算法的优化设计将所得的原设计的数学模型改进原产品设计。(4)可靠性分析方面为了使机械系统获得最高可靠性,可用遗传算法进行系统可靠度分配;在机械维修和期望损失最小的前提下,用遗传算法确定机械系统最优维修策略;在有统计数据基础上,把失效分布模型及其参数作为参变量进行编码,可用遗传算法建立更符合实际的实效分布模型。(5)节能设计方面对于汽车、机床等设备的电动机类型、电气控制参数、机械传动方案与参数等,以这些参数为参变量编码,把能耗降低到最小为目标,在满足功能要求的约束下,利用遗传优化算法进行节能设计,使设备达到最佳效果。(6)FMS(柔性制造系统)调度方面使待加工的零件在FMS系统的制造时间最短,将该零件加工次序编码,用遗传优化运算实现最短加工;针对一个需多工序加工的零件,为求确定每道工序所合理分配设备,对每道工序分配设备号编码,在各台设备的负荷可能相等的前提下,用遗传算法实现机床设备的最优分配。(7)数控加工误差、自适应预报控制方面在获得误差实时检测数据后,对误差模型结构和参数进行编码,用遗传算法建立最优的误差模型。再根据误差预报的误差修改数控加工程序,实现加工误差和自适应控制。虽然遗传算法在机械工程应用中还有些问题有待于解决,但随着它的研究进一步深入和完善,遗传算法在机械工程领域的应用将越来越广泛。第3章传动优化数学模型的建立本次设计题目为弹簧材料为65MN,最大工作载荷40N、最小工作载荷为MAXP0,载荷变化频率25HZ,弹簧寿命为104H,弹簧簧丝直径D的取值范围为FR14MM,中径的取值范围为1030MM,工作圈数N不应小于45,弹簧旋绕比C不2D小于4,弹簧一端固定,一端自由,工作温度为50,弹簧变形量不小于10MM31弹簧相关参数的选择确定查阅有关机械设计资料2,查得选择弹簧固定圈数2,弹簧材料密度2N,切变模量7936/1087MKGGAP32传动优化设计数学模型的建立传统的齿轮传动设计一般是以安全系数或许用应力为基础的,由于安全系数主要是根据设计人员的使用经验确定的,缺乏定量的数学基础,具有明显的不确定性,因此,优化设计正逐步取代传统的设计方法。机械优化设计是以数学规划为理论基础、以计算机为工具、寻求最佳机械设计方案的现代设计方法之一,包括建立数学模型和选择恰当的优化设计程序。目前已有很多成熟的程序可供选择,但它们各有自己的特点和适用范围,实际应用时很容易因为优化方法或初始参数选择不当而无法得到全局最优解,本论文采用VB语言程序,初始参数输入简单,语法符合工程设计语言要求,编程工作量小,优越性非常明显。本文对直齿圆柱齿轮传动进行最优设计,讨论齿轮参数设计问题。321确定目标函数及设计变量根据工程设计的要求,压缩弹簧可以采用各种各样的优化目标建立目标函数,例如对因工作特点极易导致疲劳损坏的弹簧,则应以疲劳安全系数最大作为最优化设计目标;对于手高速运转机构变载作用的弹簧,则应以其自振频率最大或最小作为最优化设计的目标,使自振频率值远离载荷变化频率值,以避免共振;对于安装空间很紧、要求尽量减小轮廓尺寸的弹簧,则应以其外径或高度最小,从而得到最小安装尺寸作为优化的目标;等等情况。对于一般弹簧,通常以质量或钢丝体积最小作为优化设计的目标,此时的目标函数表达式为(34/22NDDFX1)式中为弹簧的簧丝直径;为弹簧中径;为弹簧的工作圈数D2函数中只有、为未知量,因此将这三个变量作为设计变量2N(3TNDDX,22)322确定约束函数(1)根据对弹簧刚度的要求范围()MAXINKNDGDK3248于是得约束函数(33)08324MIN1DGDKXG(3AX32424)(2)根据旋绕比的范围,即得约束函数DDC21842DDC(35)0G3X(36)24(3)根据弹簧在最大工作载荷下不碰圈的要求BHMAX0式中弹簧自由高度,当弹簧支撑圈数2且弹簧两端磨平0H2NDTH510节距,计算时取为04T2508DT2D弹簧在最大工作载荷下的变形量,MAXMAXF432MAXAX8GDNF弹簧并紧高度,当支撑圈数为2且弹簧两端磨平时,BHNHB51由此得约束条件(37)0/84042MAX25GDDFNDXG(4)弹簧变形量不小于10即得约束条件100BH(38)26(5)根据弹簧的强度条件832MAXAXDDFK式中在最大工作载荷作用下或在压并状态下钢丝截面内侧所产MAXAX生的最大扭转应力K曲度系数CK61504许用扭转应力,视弹簧材料及受载情况而定。在此处许用扭转应力为B40弹簧钢丝抗拉强度极限,与材料的簧丝直径有关,设计手册中BD列表给出。利用表中数据通过线性回归分析,可建立弹簧钢丝的回归方程,其B形式为BDAB由此得约束条件为(39)040832MAX7BDADDFKXG(6)根据压缩弹簧的稳定条件CBH20式中临界高径比,根据弹簧的支撑方式不同而定CB当两端固定时,35CB当一端固定,另一端不固定时,73CB当两端均不固定时,62C此处取的值为37,故可得约束条件CB(310)0/514028CBDDNXG(7)根据弹簧承受高速交变载荷不发生共振的要求RF式中弹簧的自振频率,对于一端固定一端自由的弹簧其自振频率为F251078NDDF由此得约束条件(311)0429RFXG(8)根据弹簧疲劳强度要求给出约束条件当弹簧承受交变载荷并在及之间做交替变化时,在钢丝截面内侧MAXFIN所产生的相应扭转应力分别为,32MAXAX8DDFK32MININ8DDFK对于为常数的弹簧,其疲劳安全系数为MIN750MAXINSS式中许用安全系数,此处我们取值为17S弹簧材料的疲劳极限,其工作时间为104H,可以将其作用次数定为0由此610N可得取值为0B30由此得约束条件(312)08752MAXIN0310SDFKDXG(9)根据弹簧簧丝直径、中径和工作圈数的系列值及题目要求,4D302354N得约束条件(313)11DXG(314)042(315)213D(316)4XG(317)0515N(318)36簧丝直径取值为1,12,16,2,25,3,35,4D中径取值为10,12,16,20,25,302D工作圈数取值为N45,475,5,6,65,7,75,8,85,9,95,10,105,115,125,135,145,15,16,18,20,22,25,28,30综上可知,压缩弹簧体积最小为优化目标的优化设计问题,是一个具有16个不等式约束的3维优化问题,其数学模型可简记为(319)04/DMIN222XGTSDDNFUT第4章齿轮传动优化设计的遗传算法实现方法41设计变量的编码本论文以在满足一定的承载能力前提下,要求齿轮传动体积为最小进行优化设计,单级直齿轮传动的最小体积由第3章式(311)可知(41)3124ZMUVD遗传算法不能直接处理解空间数据,通过编码将他们表示成遗传空间的基本型个体符号串。由式(41)知,单级直齿轮传动的变量可编成的个体编码为、,M1ZD以便建立直齿轮传动的遗传算法模型。常规遗传算法采用二进制编码,便于操作,但对于求解此类实数形优化问题时,二进制编码不能反映问题的固有结构特性,个体长度大,占有计算机内存多,在进行优化时的精度不高,且稳定性不如实数编码。当要求计算精度越高,、二进制编码需要的基因位数越多,并存在连续函数离散化时的映射误差,同时在计算目标函数时,需要把二进制编码解码成十进制浮点数,优化过程中编码和解码繁琐,这使得计算量增大,计算时间增加。另外,需要注意的是,对于连续变量二进制编码的实际经验和理论分析明确表明,二进制编码表示连续变量时具有严重缺陷,它通常会在目标函数中引入附加的多峰性,从而使编码后的目标函数比原始问题更加复杂36。相比之下,采用实数编码不仅无需转换数据和数据类型,并使得优化过程更容易理解,而且节省遗传操作时间,另外由于浮点数表示数的范围大且表示精度高、具有明确的物理意义,适合于复杂大工程搜索,对于优化结果也有益。另外考虑到设计变量中的模数和齿数均为离散量,如当作连续变量进行优化计算,再近似取标准值,则无法保证解的最优性。为了精确表示变量,采用了十进制整数编码。因此,本文采用整数编码和实数编码相结合的混合编码,以克服二进制的上述缺点。这样由三个设计变量的实数构成一个染色体,遗传算子直接对染色体进行操作。模数的编码对应标准模数的个数18,通过一数组CONST_M18,并对其赋予标准值,每个染色体POP_MI通过程序POP_MIINTRND181只能产生1到18的整数,从而得到对应的模数。齿数的编码因齿数只能为整数,故采用了四舍五入函数,保证了齿数只能为20到40间的整数。齿宽系数的编码采用实数编码,程序RND600800/1000保证了其在有效范围内。程序中的INT(X)函数为产生小于等于X的最大整数;CINT(X)为四舍五入函数;RND为产生随机数0,1)的函数。三个设计变量的编码(采用VB语言37)如下DIMPOPSIZEASINTEGERDIMPOP_M200ASINTEGERDIMPOP_Z200ASINTEGERDIMPOP_FAIDI200ASDOUBLEDIMCONST_M18ASDOUBLEPOPSIZE200FORI1TOPOPSIZEPOP_MIINTRND181POP_ZICINTRND2020POP_FAIDIIRND600800/1000NEXTICONST_M12CONST_M2225CONST_M325CONST_M4275CONST_M53CONST_M635CONST_M74CONST_M845CONST_M95CONST_M1055CONST_M116CONST_M127CONST_M138CONST_M149CONST_M1510CONST_M1612CONST_M1714CONST_M181642群体规模的确定遗传算法是对群体进行操作,需要准备一些初始搜索的群体,而初始群体中每个个体是通过随机方法产生后组成的一个染色体串,这个染色体串中的每个个体分别在每一个基因取值范围内取得一组基因而形成的。就群体染色体数的选择,从理论上说,群体染色体数越多,则遗传算法找到的最优解更优,但由于群体染色体数太大,必然增大寻找最优解的工作量。反之,当群体染色体数选少了,则寻找最优解的工作量减小,但是寻找的解是否是最优解就很难说了。因此对群体染色体数的大小,要根据具体问题来确定6。这里选取染色体数为200。43初始解的产生随机产生POPSIZE(群体规模)个长度为3的染色体,作为初始群体。产生初始解时,对于染色体的第1位基因值POP_MI,令其值等于1,18范围内的一个随机整数,产生方法为POP_MIINTRND181(42)POP_MI随机产生的整数再与数组CONST_M18一一对应。对于染色体的第2位基因值POP_ZI,令其值等于20,40范围内的一个随机整数,产生方法为POP_ZICINTRND2020(43)对于染色体的第3位基因值POP_FAIDII,令其值等于08,14范围内的一个随机实数,产生方法为POP_FAIDIIRND600800/1000(44)44目标函数和适应函数的计算441目标函数随机产生POPSIZE(即染色体群体规模,前面已经选择,为200)个染色体,作为初始种群,由于是实数编码和整数编码的混合编码,为了让初始种群尽量遍布整个解空间,其群体规模要相对比二进制编码优化时的群体规模大。为了减少不可行解的产生,提高优化算法的计算效率,产生初始解时使齿数、模数、齿宽系数等各约束条件自动得到满足。小齿轮齿数,模数,齿宽系数,另外还要满足402Z162M4180D两齿轮的接触疲劳约束和弯曲疲劳约束。此优化问题带有约束条件,我们采用惩罚函数法来对违背约束条件的个体进行惩罚,并将此惩罚体现在适应度函数设计中。可表示如下6(45)MINXRPFRX,式中为惩罚项,为惩罚因子,可根据经验选取,在本设计中为每个染色XPRX体的接触疲劳应力与标准接触疲劳应力之差和弯曲疲劳应力与标准弯曲疲劳应力之差的和。采用惩罚函数法的程序如下DIMP1ASDOUBLEDIMP2ASDOUBLEDIMP3ASDOUBLEDIMCHENGFAXISHU_MASDOUBLECHENGFAXISHU_M10000FORK1TOPOPSIZEIFCIGEMA_HKCIGEMABIAOZHUN_HTHENP1CIGEMA_HKCIGEMABIAOZHUN_HELSEP10ENDIFIFCIGEMA_F1KCIGEMABIAOZHUN_F1THENP2CIGEMA_F1KCIGEMABIAOZHUN_F1ELSEP20ENDIFIFCIGEMA_F2KCIGEMABIAOZHUN_F2THENP3CIGEMA_F2KCIGEMABIAOZHUN_F2ELSEP30ENDIFOBJFKOBJFKCHENGFAXISHU_MP1P2P3AKCHENGFAXISHU_MP1P2P3NEXTK程序中,P1,P2,P3分别为接触疲劳约束和弯曲疲劳约束时的惩罚项;CHENGFAXISHU_M为惩罚因子,此处选择100000;CIGEMABIAOZHUN_H为接触标准疲劳应力;CIGEMABIAOZHUN_F1为小齿轮弯曲标准疲劳应力;CIGEMABIAOZHUN_F2为大齿轮弯曲标准疲劳应力;CIGEMA_HK为每个染色体的接触疲劳应力;CIGEMA_F2K、CIGEMA_F2K分别为每个染色体(小大齿轮)的弯曲疲劳应力。故可得加上惩罚函数后的目标函数为OBJFKOBJFKCHENGFAXISHU_MP1P2P3(46)442计算适应函数遗传算法用适应度大小来评估个体(或解)的优劣,从而决定遗传机会的多少,这个评估个体适应度的函数称为适应度函数。适应度较高的个体遗传到下一代的概率较大;而适应度较底的个体遗传到下一代的概率相对小一些6。通常优化问题求解时是把待求问题的目标函数映射成适应度函数。对于求最小的目标函数映射成适应度函数的方法可为XF若(4XFCXPMAMAXCF7)这里的可取为最大目标函数的15倍,即适应函数为MAXCFITNESS15MAX_OBJFOBJF(48)XX由前面的式(313)得目标函数为(49)32324/14/1ZUZMUXFDD45选择复制操作选择复制操作是对群体中的个体按优胜劣汰的方式选取,并遗传到下一代群体的运算操作,它是建立在群体中个体的适应函数值评估基础上的。适应函数值较大的个体被遗传到下一代群体中的概率较大,适应函数值较小的个体被遗传到下一代群体中的概率较小。通过选择操作可避免基因缺失,提高全局收敛性和计算效率6。适应度比例选择方法是基本的选择方法,也叫轮盘赌选择。该方法的基本思想是各个个体的被选中的概率与其适应度大小成正比。由第2章中式(26)得每个个体的累计概率为(410)SIZEPO,21,SIZEPOFJI显然,概率反映了个体的适应度在整个群体的个体适应度总和中所占的比例,个体适应度越大,其被选择的概率就越高,反之亦然。此优化设计中我们随机产生一随机数TEMP_A,当累计概率大于TEMP_A时,则选择对应的个体,并用TEMP_B来记录。选择的轮盘赌函数程序如下FUNCTIONSELECT_LUNPANDURANDOMIZEDIMTEMP_AASDOUBLEDIMTEMP_BASINTEGERTEMP_ARNDFORI1TOPOPSIZEIFLEIJIGAILVITEMP_ATHENTEMP_BISELECT_LUNPANDUTEMP_BEXITFORENDIFNEXTI46交叉操作遗传算法的交叉是产生新个体的主要操作过程。某两个个体之间的部分染色体是以某一概率,进行部分基因交换,产生两个新的染色体。这一过程是模拟生物进化过程中繁殖的杂交现象。对于整数和实数编码的染色体可采用算术交叉的方法6。它是由两个个体的线形组合而产生出两个新个体,若两个个体、之间进行算术交叉,则交叉运算后所产TAXTB生出的两个新个体为(411)TTTBA1B式中为一随机产生的0,1间的随机数。本设计程序中用TEMP_GEMA表示。程序中利用随机产生的TEMP_PC,若TEMP_PC18THENNEWPOP_MI18ELSENEWPOP_MIINTNEWPOP_MITEMP2TEMP4IFNEWPOP_MI40THENNEWPOP_ZI40ELSENEWPOP_ZICINTNEWPOP_ZITEMP3TEMP7IFNEWPOP_ZI14THENNEWPOP_FAIDII14ELSENEWPOP_FAIDIINEWPOP_FAIDIITEMP5TEMP8IFNEWPOP_FAIDIIMIN_OBJFTHENQUANJU_MIN_OBJFMIN_OBJFPOP_M0POP_MMAX_FITNESS_NUMPOP_Z0POP_ZMAX_FITNESS_NUMPOP_FAIDI0POP_FAIDIMAX_FITNESS_NUMA0AMAX_FITNESS_NUMQ_NUM0ENDIFIFQ_NUM100YF2Y
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石河子大学《园林艺术原理》2022-2023学年第一学期期末试卷
- 石河子大学《水污染控制工程》2021-2022学年期末试卷
- 石河子大学《管理学》2021-2022学年第一学期期末试卷
- 石河子大学《城市规划原理》2023-2024学年第一学期期末试卷
- 沈阳理工大学《伺服系统》2022-2023学年第一学期期末试卷
- 沈阳理工大学《面向对象程序设计》2021-2022学年期末试卷
- 沈阳理工大学《机械工程控制基础》2021-2022学年期末试卷
- 沈阳理工大学《非线性光学原理及应用》2022-2023学年第一学期期末试卷
- 沈阳理工大学《城市规划原理》2021-2022学年第一学期期末试卷
- 国能 售电合同
- (零模)徐州市2024~2025学年上学期高三期中考试 英语试卷(含答案)
- 动脉瘤栓塞术术后护理
- 2024年煤矿主要负责人安全考试题库(浓缩500题)
- 四川公安基础知识模拟5
- 2024年全新公司股权期权协议书
- 口腔牙科诊所技工室工作制度
- 英语KET官方样题Test1- Test 2
- 七年级语文上册15梅岭三章课件
- 财务管理考试试题及答案
- Unit 4 The Earth【速记清单】含答案解析
- 【课件】第七单元能源的合理利用与开发新版教材单元分析-九年级化学人教版(2024)上册
评论
0/150
提交评论