(工程力学专业论文)结构优化设计中的一种混合方法.pdf_第1页
(工程力学专业论文)结构优化设计中的一种混合方法.pdf_第2页
(工程力学专业论文)结构优化设计中的一种混合方法.pdf_第3页
(工程力学专业论文)结构优化设计中的一种混合方法.pdf_第4页
(工程力学专业论文)结构优化设计中的一种混合方法.pdf_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

中文摘罄 结构优化设计中的一种混合方法 工程力学 硕士生:陈光毅 指导老师:刘济科教授 摘要 结构优化设计在工程领域有着非常重要的地位,优化方法作为优化设计的手 段,在工程技术领域已经发展成为了一门重要的技术科学。本文首先介绍了遗传 算法的基本思想和实现方法。针对工程上较常用的浮点数编码遗传算法,以典型 的优化问题为例,讨论了遗传算法在求解最优化问题时的优点和不足。针对 a n s y s 优化模块中的一阶优化方法,探讨了该方法在求解最优化问题时的性能 表现。将一阶优化方法与遗传算法相结合,提出了一种混合方法,对上述算例进 行了求解。结果表明,混合方法兼顾了两种优化方法的优点,既具有良好的全局 寻优能力,又具有很好的计算精度。最后,将混合方法应用到实际工程,对某航 天仪器热控系统中的高压容器进行了结构优化设计,得到了令人满意的结果。 关键词:结构优化,遗传算法,一阶优化方法,a n s y s ,混合方法 英文摘要 am i x e dm e t h o da n di t sa p p l i c a t i o n s i ns t r u c t u r a lo p t i m i z a t i o n e n g i n e e r i n gm e c h a n i c s n a m e :c h e ng u a n g y i s u p e r v i s o r :p r o f l i uj i k e a b s t r a c t t h eo p t i m i z a t i o nm e t h o d , a st h et e c h n i q u e so fs t r u c t u r a lo p t i m i z a t i o n , h a sb e e n d e v e l o p e di n t o a ni m p o r t a n to , o u r s ei ne n g i n e e r i n gt e c h n o l o g y f i r s t l y , t h i sp a p e r i n t r o d u c e st h eb a s i ci d e aa n di m p l e m e n t a t i o no fg e n e t i ca l g o r i t h m ( g a ) f o rs o m e t y p i c a lo p t i m i z a t i o np r o b l e m s ,t h ef l o a t - e n c o d i n gg a ( f g a ) i s t a k e na sa ni l l u s t r a t i v e e x a m p l et os h o wt h ea d v a n t a g e sa n dd i s a d v a n t a g e so fg a b e s i d e s , t h ef i r s to r d e r o p t i m i z a t i o nm e t h o di na n s y sd e s i g no p t i m i z a t i o nm o d u l ei s a l s oe m p l o y e dt o a n a l y z e t h e s e o p t i m i z a t i o np r o b l e m s b yt a k i n ga d v a n t a g e o ft h e p o s i t i v e p e r f o r m a n c e so ft h ef a s to r d e ro p t i m i z a t i o nm e t h o da n dt h ef g a , a m i x e dm e t h o di s d e v e l o p e dt os o l v et h es a m eo p t i m i z a t i o np r o b l e m sa sm e n t i o n e da b o v e i ti ss h o w n t h a tt h ep r o p o s e dm i x e dm e t h o dn o to n l yp o s s e s s e st h ea b i l i t yt ol o c a t et h eg l o b a l o p t i m u m , b u ta l s oh a sg o o da c c u r a c y f i n a l l y , t h em i x e d m e t h o di sf u r t h e ra p p l i e dt o a l la c t u a le n g i n e e r i n go p t i m i z a t i o nd e s i g no fah i g h p r e s s u r ev e s s e li nt h et h e r m a l c o n t r o ls y s t e mi nc m m o n a u t i ca p p a r a t u s e s a n d , s a t i s f a c t o r yr e s u l t sa r eo b t a i n e d k e yw o r d s :s t r u c t u r a lo p t i m i z a t i o n , g e n e t i ca l g o r i t h m ( g a ) ,f a s to r d e ro p t i m i z a t i o n m e t h o d , a n s y s ,m i x e dm e t h o d 第1 章绪论 1 1 引言 第1 章绪论 在生产和生活中,人们需要建造各式各样的结构物,一般而言,对于结构设 计,其最主要的要求就是使结构在外力作用下,既有足够的强度与刚度,又要使 之具有尽可能轻的结构质量或低的成本,以提高该结构的工作性能并节约资源。 但是,这些要求通常是相互矛盾的,要处理好这些矛盾并不是轻而易举的事情l i j 。 所谓结构优化设计,就是为了更好的协调这些矛盾,实现最优的方案而产生的一 门学科。它指的是在满足各种规范或某些特定要求的条件下,使结构的某些广义 性能指标( 重量、成本、刚度或频率) 为最佳。也即是在所有可以完成某一任务 的可行方案中,找出符合某种特定条件的最佳方案。 以飞机机翼结构设计为例( 如图l - l 所示) ,已知机翼外形几何参数和外载 荷,并且机冀结构应满足的强度和最小的蒙皮厚度已确定,求满足设计要求时, 使得机翼结构重量最轻的机翼蒙皮厚度的分布规律。对于这个问题,优化的目的 是在满足设计要求的条件下,获得使机翼的重量最轻的机翼蒙皮厚度分布规律。 人们用于寻找这个最优分布规律的方法,就是优化方法了,优化方法是实现优化 的手段,它和优化设计是目标与手段的关系,是密不可分的。 图i - i 机翼结构不意图 现今,结构优化设计在工程领域有着非常重要的地位,它应用的领域涉及航 空航天、机械、土木、水利、桥梁、汽车、铁路、轻工纺织、能源工业及军事工 业等诸多方面,主要处理那些具有复杂结构系统的设计,如飞机、卫星、机器人、 射电望远镜等,或者大规模的工程建设,如大坝、桥梁、核电站,或者产量大的 汽车、机械和轻工产品以及创新型的产品设计【到。而优化方法作为优化设计的 手段,在工程技术及管理领域已经发展成为了一门重要的技术科学,它是现代工 程分析最佳设计的主要方法之- - h i 。因此对于优化方法的研究是一个同时具有 应用价值和理论意义的课题。 第1 章绪论 1 2 优化方法的发展和现状 最优化方法的出现。可以追溯到牛顿、拉格朗日和柯西时代。由于牛顿和莱 布尼兹对微积分的贡献,才使具有最优化思想的微分学的发展成为可能:而伯努 和j 、欧拉和拉格朗日等人则奠定了变分学的基础;柯西最早应用最速下降法求解 无约束极小化问题。但是当时由于这些优化方法本身的复杂性及计算工具的限 制,最优化没有得到发展。近代最优化方法成为- - f l 独立的学科要算是在1 9 4 7 年d a n t z i g 发表了求解线性优化问题的单纯形法,在五十年代鉴于线性规划的实 际效果,再加上大规模生产的需要,使得最优化的研究蓬勃兴起,到六十年代由 于高速计算机的结合,出现了大量的最优化的算法,同时逐渐形成了最优化的基 本理论 8 8 1 。1 9 6 0 年,s e h m i t t 9 1 首先引入数学规划理论并与有限元方法结合求解 多种载荷情况下弹性结构的最小重量设计问题,形成了全新的结构优化的基本思 想,意味着现代结构优化技术的开始。该概念一经出现,很快受到了许多学者尤 其是结构设计工程师的关注并开展了广泛深入的研究【1 1 i 。c h a m e s 和c o o p e r 在 1 9 6 1 年提出的目的规划,d u f f i n 、z e n e r 和p e t e r s o n 发展的几何规划,g e m o r y 对 整数规划的开拓等等都是这个时代的很有影响力的成果。到了七十年代,最优化 的发展就更加兴旺了,在这个时期,各种最优化问题理论或方法都有了新的进展, 同时也开始出现了一些优化方法软件,像面向航空结构的高效率结构优化程序系 统a c c e s s 的发表就是七十年代非线性规划的最好成就。到了八十年代,国内 外许多大学都已开设了最优化课程。 在这四十多年来优化方法的发展里,众多的学者们提出了各种各样的算法理 论,据不完全的统计,目前搜索最优解的方法已经超过了3 0 0 多种1 4 j ,这些方法 大致可以分为以下三类:数学规划法、最优准则法和仿生学方法。 1 2 1 数学规划法 数学规如法的主要思想是将优化问题抽象成数学规划形式来求解,即把问题 归结为在设计空间中,在由等式约束超曲面和不等式约束半空间所构成的可行域 内,寻求位于最小目标等值面上的可行点,它便是问题的最优解点。 对于线性规划问题( 目标与约束均为设计变量的线性函数) ,现在比较成熟 的求解方法是单纯形法,另外还有近年出现的椭球算法和k a r m a r k a r 算法,对于 线性规划的问题,这些算法一般能保证获得最优解。 而对于非线性问题,虽然现在的方法很多,却仍然是还没有一种通用的成熟 方法。目前用于非线性规划问题的方法大致有四种,一种是序列无约束极小化技 2 第1 章绪论 术( s u m t ) ,如罚函数法、乘子法等:第二种是线性近似技术,如序列线性规 划法、序列二次规翅j 法、割平面法等;第三种是探讨在约束边界处搜索的可行方 向法,如可行方向法、梯度投影法、广义简约梯度法等;第四种是只利用函数值 不使用导数信息的直接法,如复合形法、可变容差法、随机试验法等。这些不同 的算法各自有其本身的优劣性,往往对于不同的非线性问题,它们的优劣性会不 厨。为了评价这些算法的优劣,国内外也有不少学者采用了统一的考题对它们的 优劣性进行了数值试验和比较,s c h i t t k o w s k i 、z i l l o b c r 和z o t e n m a n t e l 1 4 1 在1 9 9 4 年应用基于有限元分析的结构优化程序m b b l a g r a n g e ,通过7 9 个算例主要 的几种优化方法进行了考核。结果表明,在效率与健壮性方面较好的是序列二次 规划法、序列线性规划法与广义简约梯度法,而对于罚函数法则认为其效率不高 亦不可靠,不予推荐。 总的来说,数学规划法有严格的理论基础,在一定条件下能收敛到最优解, 但是它要求问题能显式表示,大多数还要求设计变量是连续变量、目标与约束函 数连续且性态良好。对于大型的结构优化问题,它的收敛性并不好且迭代次数过 多,使结构重分析的工作量过大,效率不高。 1 2 2 最优准则法 对于实际的工程问题,特别是对于大型的结构系统,由于设计变量的增多, 结构重分析次数的剧增,使单纯的数学规划法在工程实际上遇到了困蝌删。在 这样的背景下,优化准则法就出现了。 1 9 6 8 年,p r a g e r 等针对简单连续体问题提出了分析形式的优化准则,后经 一系列发展,这些形式准则通常称之为所谓的连续型准则( c o c c o n t i n u mt y p e o p t i m a l i t yc r i t e r i a ) ,这种准则往往难于应用于实际。实际结构以多离散化,即 以有限元进行分析,因此,实用的方法应是以离散化结构为对象的优化准则,即 离散型优化准则( d o c d i s c r e t i z e do p t i m a l i t yc r i t e r i a ) 。多数情况下,优化准则 就是指离散型优化准则。1 9 6 8 年v e n k a y y a 提出了一个离散型优化准则均匀 应变能密度准则,标志着离散优化准则得到了极大重视的开始,几年内,它获得 了很大进展。这类方法基于某一设计准则,建立一组相应的迭代公式,按这组迭 代公式修改设计,直至收敛。7 0 年代,人们把数学中最优解应满足的k u h n t u c k e r 条作为最优结构满足的准则,使准则法通用性得到提高,理论性得到加科“j 。 准则法可以分为两类:直观的准则法和理性的准则法。常用的最优准则法主 要包括:满应力设计方法、极限位移设计法和广义优化准则法i l j 。它与数学规 划法相比,不是直接去处理优化的目标函数,而是以满足给定的准贝帕q 解作为最 优近似解。它的最大优点是收敛快,结构重分析的次数较少,且一般跟设计变量 第t 章绪论 的数量没有多大关系,对大型结构的优化设计有重要的实用意义。而准则优化方 法的不足之处就是其局限性。由于准则法利用了结构优化问题的物理特征,聚焦 于最优解处的已知的或假设的形态,不同约束有不同的准则,故其局限性较大【4 。 另外,准贝f j 方法中,每次迭代必须选取主动约束集合,而临界约束估计的合理与 否,直接影响收敛的速度,这就对选取f 临界约束有严格的要求。更重要的是,准 则法的递推公式缺乏数学基础,没有收敛性证明,这也许是引起过程振荡或不收 敛的原匿乎”i 。 因为最优准则法和数学规划法各有不足之处,有些学者就开始寻求将这两种 方法结合,以求让它们各自互补长短来进行结构优化。在二十世纪七十年代末开 始出现了将准则法和数学规划法逐步统一的趋势。对偶法的出现,标志着数学规 划方法与优化准则方法的统一。f l e u r y 和s a n d e r 在原有最优准则法的基础上, 提出了广义最优准则以及用对偶公式求解结构优化,并研究了准则法和规划方法 的关系。接着s c h m i t 和f l e u r y 提出了近似概念和对偶方法结合的算法,进一步 提高了规划法的效率。这几项工作把数学规划法和优化准则法联系并统一了起 来。对偶方法对于准则法使其系统化、理论化,对于近似概念提高了求解近似子 问题的计算效率,它使原来相对立的两种方法统一起来,因而,具有重要的意义。 1 2 3 仿生学方法 随着仿生学的巨大进展,近十多年来,开始出现各种仿生学优化方法。目前 模拟自然界进化的算法主要有两类,一类是模仿自然界结构的算法,另一类是模 仿自然界过程的算法。它们主要有:神经元网络算法、模拟退火法和遗传算法【4 l 。 神经元网络算法是利用神经网络中神经元的协同并行计算能力来构造的优 化算法,它将实际问题的优化解与神经网络的稳定状态相对应,把对实际问题的 优化过程映射为神网络系统的演化过程。由于神经网络算法对目标函数的性态没 有严格要求,具有很高的平行处理能力,因而是一种很有发展前途的工程优化方 法。它的主要缺点是容易陷入局部最优解与计算工作量大。 模拟退火法( s i m u l a t e d a n n e a l i n g ,s a ) 是基于m e n t ec a r l o 迭代求解策略的 一种随机寻优算法,它的出发点是基于物理中固体物质的退火过程与一般优化问 题的相似性。模拟退火法是一种通用的优化算法,目已在工程中得到了广泛的应 用嗍。模拟退火法的优点是能处理连续一离散一整数设计变量的非线性规划问 题,医不使用梯度和二阶导数阵,故不要求函数可微与连续,能寻求全局最优点 防止过早隐入局部最优点。它的主要缺点是效率不高,在搜索过程中需要根据冷 却进程相应确定有效温度下降比,而参数的选取又无确定的准则,此外,试探数 的控制上限以及达到多少开始降低有效温度等较难确定。 4 第1 章绪论 遗传算法( g e n e t i ca l g o r i t h m s ,g a ) 是在模拟生物进化的自然过程而发展起 来的一种算法。与传统的算法相比,它的主要优点是有很强的解题能力和很广的 适应性。由于处理对象不是问题参数,而是这些参数或设计变量转化而成的编码, 故算法的使用可以不受问题本身的限制,并且因为它寻优过程不需要目标函数连 续、可导等信息,所以它具有很广的适用性;而它的主要缺点是算法寻优的进化 过程冗长,迭代的次数和计算量都非常庞大。 1 3 本文的主要研究工作 本文的主要研究工作包括: 1 对结构优化方法的发展与现状进行了回顾。 2 遗传算法用于最优化问题求解的性能讨论。介绍了遗传算法的基本思想 和具体的实现方法,并以浮点数编码遗传算法为对象,通过一些典型测试函数和 桁架优化算例,讨论了遗传算法在最优化问题求解上的优越性及局限性。 3 a n s y s 优化模块中的一阶优化方法的性能探讨。通过一些典型测试函 数和桁架优化算例,探讨了该优化方法在求解最优化问题时的性能。 4 将遗传算法与a n s y s 优化模块中的一阶优化方法结合,提出了一种混 合方法,并且通过典型测试函数和桁架优化算例验证了该混合方法的性能。 5 将混合方法应用到实际工程,对某航天仪器热控系统中的高压容器进行 了结构优化设计。 5 第2 章遗传算法及其在最优化问题中的应肿 第2 章遗传算法及其在最优化问题中的应用 2 1 遗传算法的起源与现状 遗传算法的起源可以追溯到二十世纪六十年代,当时h o l l a n d 在f r a s e r 和 b r e m e r m a n n 等人工作的基础上提出了位串编码技术。这种编码既适用于变异操 作,又适用于交叉( 即杂交) 操作,并且强调将交叉作为主要的遗传操作。1 9 6 7 年,b a g l e y l 首次提出“遗传算法( g a ) ”这一术语并发表了一篇有关遗传算法 的论文。随后,h o l l a n d 将该算法用于自然和人工系统的自适应行为的研究中, 并于1 9 7 5 年出版了其开创性著作【l 卅,提出了模式理论( s c h e m a t at h e o r y ) 。同年, d ej o n g 完成了他的博士论文【1 9 1 ,把h o l l a n d 教授的模式理论与他的计算试验结 合起来,把选择、交叉和变异操作作了进一步的完善和系统化d 9 - 4 0 1 。 二十世纪八十年代遗传算法迎来了的兴盛发展时期,在这一时期,遗传算法 无论是理论上还是应用研究都成了十分热门的课题。1 9 8 9 年g o l d b e r g 教授出版 了专著【加,对遗传算法的理论及应用展开了较全面的分析和例证。 二十世纪九十年代之后,随着应用领域的扩展和深入,遗传算法的研究出现 了几个引入注目的新动向:一是基于遗传算法的机器学习;二是遗传算法正日益 和神经网络、模糊推理以及混沌理论等其它智能计算方法相互渗透和结合;三是 并行处理的遗传算法的研究十分活跃;四是遗传算法和另一个称为人工生命的崭 新研究领域正不断渗透;五是遗传算法和进化规划以及进化策略等进化计算理论 日益结合。 而遗传算法在结构优化中的应用,最早可见g o l d b e r g 和s a m t a n i t 2 1 1 的工作。 他们1 9 8 6 年在第九届电子计算机国际上所发表的论文,建立了十杆桁架仅受应 力约束的尺寸优化问题的遗传算法模拟。通过遗传算法4 0 代的计算得到了l o 杆桁架问题的可行设计,且其材料总费用不超过理论最优解的百分之一瞄l 。在 此之后,众多的学者开始了遗传算法在结构优化中应用的研究。高峰等用实数编 码,非一致变异优化了十杆桁架。陈新度和秦叶等利用遗传算法解决了离散变量 的桁架问题。g h a s e m i 等在变量分别为连续和离散的情况下,对4 杆、l o 杆、6 4 杆、2 0 0 杆、9 4 0 杆平面桁架进行优化。j e n k i n s 以优化桁架结构为例说明了遗传 算法在结构中的应用。k i t a 和t a n i e 应用边界元法分析了遗传算法在连续体结构 上的拓扑优化和形状优化。y a m a k a w a 同时进行结构的拓扑和形状,控制系统的 设计。s u g i m o t o 应用并行遗传算法同时解决拓扑、形状和致动器分配、反馈系 统等多约束优化。r o d o l p h e 和r i c h e 等以找到最薄的对称并且平衡满足连续四层 6 第2 章遗传算法及其在最优化问题中的应甩 相同约束的复合板为目的,层总量、铺层角度为变量,提出新的遗传思想,用两 个惩罚因子进行优化。v e n t e r 等利用两物种遗传算法,优化了具有不确定性复合 材料版【2 5 1 。 以上的遗传算法结构优化研究主要是集中三个方面:一是桁架结构优化;二 是拓扑优化和形状优化:三是复合材料铺层优化。综合来看,将遗传算法用于桁 架结构优化的研究很多,主要是处理离散变量和混合变量问题。 2 2 遗传算法的主要思想和特点 遗传算法( g a ) 是基于“适者生存”的一种高度并行,随机和自适应的优化 算法,它的主要思想是将问题的求解表示成个体的适者生存过程,通过种群的一 代代不断进化( 包括复制、交叉和变异等操作) ,最终收敛到最适应环境的个体, 从而求得问题的最优解或满意解【1 5 1 。 标准遗传算法的主要步骤可描述如下: ( 1 ) 随机产生一组初始个体构成初始种群,并计算每一个体的适应值 ( f i t n e s sv a l u e ) ( 2 ) 判断算法是否满足收敛准则。若满足则输出搜索结果;否则执行以下 步骤; ( 3 ) 根据适应值大小以一定方式执行复制操作; ( 4 ) 按交叉概率以执行交叉操作: ( 5 ) 按变异概率如执行变异操作; ( 6 ) 返回步骤( 2 ) 。 上述算法中,适应值是对个体进行评价的一种指标,是遗传算法进行优化所 用的主要信息,它与个体的目标函数值存在一种对应关系;复制操作通常采用比 例复制,即复制概率正比于个体的适应值,如此意味着适应值高的个体被复制的 概率大,从而提高了种群的平均适应值;交叉操作通过交换父代个体的部分信息 构成后代个体,使得后代继承父代的有效模式,从而有助于产生优良个体;变异 操作通过随机改变个体中某些基因而产生新个体,有助于增加种群的多样性,避 免早熟。 遗传算法利用生物遗传和进化的思想实现优化,对比传统优化算法,它具有 以下特点: ( 1 ) g a 对问题参数编码成基因串后进行进化操作,而不是针对参数本身, 这使得g a 不受函数约束条件的限制,如连续性,可导性等。 ( 2 ) g a 的搜索过程是从厨题解的一个集合开始的,而不是从单个解开始 7 第2 章遗传算法及其在最优化问题中的应用 的,具有隐含并行搜索特性,从而大大减小了陷入局部极小的可能。 ( 3 ) g a 使用的遗传操作均是随机操作,同时g a 根据个体的适应值信息进 行搜索,无需其它信息,如导数信息等。 2 3 遗传算法的关键参数与操作算子的设计 一般地,最优化问题( o p t i m i z a t i o np r o b l e m ) f l j 目标函数( o b j e c t i v ef u n c t i o n ) 和 约束条件( c o 璐t m m t s ) 两部分构成【柏】,其数学式表达如( 2 1 ) 所示: m i n f ( x ) s t ( x ) = 0 j = l ,2 ,m g ,( x ) 茎0 。_ ,= l ,2 ,栉 x = ix lx 2 i ,黾s k = i ,2 ,q ( 2 - 1 ) 其中,八x ) 为目标函数,在函数优化问题中,f ( x ) 可以为函数值,而在结构 优化中,( x ) 可以是结构重量、体积或造价等;鱼( x ) 和g j ( x ) 为约束条件,前 者表示问题的等式约束,后者表示问题的不等式约束;4 为变量的总个数,m 为 等式约束个数,疗为不等式约束个数,它们是相互独立的;和分别为第k 个 设计变量的上限和下限。 对于最优化问题,通常遗传算法的设计是按以下步骤进行的: ( 1 ) 根据问题确定编码方案; ( 2 ) 根据目标函数设计算法的适应值函数; ( 3 ) 遗传算子的设计。主要包括复制算子、交叉算子和变异算子; ( 4 ) 算法参数的确定。主要包括种群数目、交叉与变异概率、进化代数等 ( 5 ) 确定算法的终止条件。 下面就本文所实现的浮点数遗传算法( f g a ) ,详细介绍操作算子的设计和关 键参数的选取。 2 3 i 编码方案的确定 编码就是将问题的解用一种码来表示,从而将问题的状态空间与g a 的码空 间相对应。由于g a 的优化过程不是直接作用在问题参数本身,而是在一定编码 机制的码空间上进行的,因此编码的选择是影响算法性能与效率的重要因素。 工程结构设计一般具有设计变量数目多、计算精度要求高等特点。针对这些 特点,本文采用浮点数编码方式5 ,用一个实数基因对应一个变量的方式进行 $ 第2 章遗传算法及其在最优化问题中的应用 编码,并将所有设计变量连在一起作为一个个体。下面是一个浮点数编码的例子: 变量值:x l = 1 5 2 ,x 2 = - 3 0 5 ,x 3 = 0 1 3 2 ,x 4 = - - | o 2 ,x s = 2 2 编码形式;三习e 夏三匪互重工互匿固 例子中,五个实数变量在编码串中顺序对应着五个实数基因。通过这样的编 码方式,编码串的长度仅与变量数目有关,而与计算精度无关,从而可以很方便 地根据要求提高计算精度,而不必担心会因此产生过长的编码串,影响遗传算法 的性能。 2 3 2 适应值函数的设计 遗传算法设计的第二步是建立适应值函数,用以评价个体的优劣性。 在遗传算法中,适应值函数的设计主要需要处理两个方面的问题。 其一,由于遗传算法只能处理极大化问题,同时要求所有适应值为正,所以 对于极小化问题需进行适应值函数变换。本文采用了方程( 2 2 ) 的方式将极小化问 题( 2 1 ) 转换为极大化问题m : f ( x ) = c 一,( x )( 2 2 ) 其中c 为足够大的正数,使凡的恒为正值。 其二,由于遗传算法只能处理无约束问题,对于约束问题需要转换为无约束 问题进行求解。 对于方程( 2 - 1 ) 中的等式约束,可以利用等式关系,将原来的q 个变量用q 一珊 个变量表示,从而将等式约束消除。 消去等式约束后,优化问题( 2 - 1 ) 的优化问题改写成( 2 - 3 ) 的形式: m i n f ( x ) s ,g ,( x ) 0 ,j = i ,2 ,一( 2 3 ) 对于约束优化问题( 2 3 ) 。本文的采用了两种方法将其转化为无约束问题,以 便于用遗传算法进行求解。第一种是罚参数较容易确定的准精确罚函数法1 7 0 - 7 3 1 , 具体的做法是: 采用凝聚函数【7 2 1 将约束优化最小化问题( 2 3 ) 转化为无约束优化问题。用最 大熵作为一个辅助推理准则,导出一个可微函数( z ) 。用( x ) 直接逼近原来 的约束,则( 2 3 1 的约束等价于: 上 ( x ) = h a l + e x p p g , ( x ) p ( 2 - 4 ) j ,i 其中p 是一个控制参数 9 第2 章遗传算法及其在最优化问题中的应用 那么问题( 2 3 具有惩罚项的目标函数定义为: 烈x ) = ,( x ) + 口五( x ) ( 2 - 5 ) 其中口是惩罚因子。 李兴斯等已证明,当惩罚因子口大于某个门槛值,控制参数p 趋近无穷 时,无约束优化问题( 2 5 ) 的解,即是原问题( 2 3 ) 1 懈t 7 0 - 7 2 1 。其中门槛值等于 问题( 2 - 3 ) 全部l a g r a n g e 乘子之和,是一个有限值。在实际计算时,控制参数p 只能取一有限值,将会导致更严厉的惩罚,从而使搜索点更迅速地逼近可行域, 这在计算中是有利的。用准精确罚函数法处理约束,对惩罚因子的选择不敏感, 比较容易确定因子值。 此时,优化问题( 2 3 ) 在遗传算法中的适应值表达式变为 f ( x ) = c 一烈x )( 2 6 ) 其中c 为足够大的正数,使,的恒为正值。 第二种是可行解变换法湖。该方法主要是用于本文的桁架算例。在平面桁 架中,结构元件的刚度矩阵与设计变量成线性关系,应力矩阵与设计变量无判“, 所以采用改进满应力法中的射线调参法可以把遗传进化过程中的不可行解转化 为可行解。其具体的做法是【5 0 1 : 首先对当代种群中的个设计进行结构分析,得到了这个设计在设计载 荷下各节点的位移“。和各杆单元的应力a k ,接着按式( 2 - 7 ) 求出它们与允许位移 u :和许用应力一的比值: 几= 粤沩单元号 q ( 2 7 ) 2 等伪节点号 其中k 为个体编号,t 为遗传代数 则当其中某比值大于l 时,约束被违反了。因此,对于每个个体,找出其最大的 比值瓯 瓯= m a x 芦i ,打 ( 2 8 ) 判断每是否大于l ,若大于1 ,则对此个体的所有截面积4 * 和总质量进行射 线调整。 撼 , 经过这样的操作,此设计中的应力值a k 和位移值“廊都会相应地按比例缩小 盈倍,使得设计处于满应力状态或者是位移最大状态。 第2 章遗传算法及其在最优化问题中的应用 对于桁架杆截面积与应力位移之闻这种的反比关系,简单证明如下: 就平面桁架结构而言,对某设计向量4 = f 44 4 t 】,可有如下关系“l : p = k 口 ( 2 一i o ) 盯= s ( 2 一1 1 ) 其中,p 为结构节点上的载荷向量,盯为结构元件的应力向量,口为节点的位移 向量,置为结构的总刚度矩阵,s 为结构的应力矩阵 同时,对于桁架中的第j 个单元,其单元刚度矩阵的表达式为: 五= 竽 ! ,1 p 忉 其中易为单元的模量,厶为单元的长度 若将其中某杆件的截面积a ,乘以一系数j ,得到一个新的截面积,即 4 = 8 x 4( 2 - 1 3 ) 财由盈与五之间的线性关系,可以导出新的单元冈度矩阵为: 五= 五万( 2 一t 4 ) 由于总刚度矩阵是由单元刚度矩阵线性叠加而成,所以当4 中所有的元素 ( 截面积) 都乘以了系数占后,则新总刚度矩阵置与原总刚度矩阵置存在关系: 置= k x 8 ( 2 1 5 ) 于是,对于进行线性变换后的设计向量a = 8 x a ,可以有如下关系: p ;置u = 8 - k 脚 佗1 6 ) 一= s | i , 佗- 1 7 ) 对比方程( 2 1 6 ) 与方程( 2 - l o ) ,可以得到新旧位移向量的关系: = u 8 ( 2 - 1 8 ) 再将方程( 2 i s ) 代入方程( 2 - 1 7 ) ,并与方程( 2 一i i ) l 比较,可以求得新旧应力向量之 间的关系: 一= 盯万( 2 1 9 ) 至此,平面桁架结构中的杆截面积向量与应力位移向量间的反比关系得证。 在遗传算法优化过程中,利用这种反比关系,采用射线调参实现可行解变换, 可以将在可行域外的个体“拉回”可行域内,保证了整个进化过程都在可行域内 进行,从而将约束优化问题( 2 3 l 转化为无约束优化问题。需要注意的是,作这样 的射线调整有可能会出现截面积如的值超出截面面积上限的情形,对于这样的 情况,考虑到这类个体的质量相对比较大,在比例选择的复制过程中,其被复制 的概率很小,并不影响整个遗传算法的进化,所以对这个问题可以不作处理。 第2 章遗传算法及其在最优化问题中的应用 通过可行解变换,优化问题( 2 - 3 ) 在遗传算法中的适应值表达式变为 f ( x ) = c 一矿( 2 2 0 ) c 为足够大的正数,使目标函数凡的恒为正值,肜为桁架质量。 2 3 3 遗传算子的设计 优胜劣汰是g a 寻优的基本思想,它应在选择( s e l e c t i o n ) 、交叉( c r o s s o v e r ) 和 变异( m u t a t i o n ) 等遗传算子中得以体现,并考虑到对算法效率与性能的影响【坫i 。 以下详细介绍本文中这三种算子的设计。 ( 1 ) 选择算子 从群体中选择优胜的个体,淘汰劣质个体的操作叫选择。它的目的是把优秀 的个体( 或解) 直接遗传到下一代或通过配对产生新的个体再遗传到下一代。选 择操作是建立在群体中个体的适应度评估基础上的1 3 9 1 。 本文遗传算法采用适应值比例方法( f i t n e s sp r o p o r t i o n a lm o d e l ) 和最佳个体保 存方法( e l i t i s tm o d e l ) 混合的选择算子。适应值比例方法保证了适应值大的个体在 进化过程中以较大的概率生存,而最佳个体保存方法则是遗传算法收敛至最优解 的必要条件之一【1 5 1 。 适应值比例方法也叫赌轮或蒙特卡罗( m o n t ec a r l o ) 选择。在该方法中各个个 体的选择概率与其适应度值成比例。 设群体大小为订,其中个体i 的适应值为e ,则i 被选择的概率己为: 巴= e c ( 2 - 2 1 ) j t l 式( 2 - 2 t ) 计算的巴反映了个体i 的适应值与整个群体的适应值总和之间的比 值。个体适应值越大,其比值越大,被选择的概率也就越高。其算法描述如下: p r o c e d u r es e l e c t i o n b e g i n i = 0 s u m = 0 w h e e l p o s = r a n d o m 。f s u m w h i l es u m - w h e e l p o so ri = p s i z ed o i = i + l s u m 2s u m + f i e n d w h i l e s t r - n o = i e n d 这里,f s u m 为群体中所有个体的适应值之和,f 为个体i 的适应值,r a n d o m 是 在区间( o ,l 】内的随机数。w h e e l p o s 相当于赌轮环上的位置,s t r - n o 是被选个体号。 表2 t 给出了采用适应值比例方法的例子( 例中适应度函数采用了幂函数变换法 第2 章遗传算法及其在最优化河题中的应甩 ( j i = 2 ) 进行变换) 。个体被选中后,放入交配池,进行随机配对,以供交叉操作 调用。 表2 - 1 个体适应值与选择概率 最佳个体保存方法的思想是把群体中适应值最高的个体不进行交叉与变异 操作而直接复制到下一代中。d ej o n g 对此方法作了如下定义: 设到时刻f ( 第r 代) 时,群体中盯o ) 为最佳个体。又设d ( t + 1 ) 为新一代群 体,若彳( f + 1 ) 中不存在口( ,) ,则把口( r ) 作为a ( t + 1 ) 中的第疗+ 1 个个体( 其中t 为群体大小) 。 采用此最优保留方法的优点是进化过程中某一代的最优个体可不被遗传操 作所破坏。但是,这同时也隐含了一种危机,即局部最优个体的个数有可能会在 种群中急速增加而使算法只找到局部解。也就是说该方法的全局搜索能力差,更 适合单峰值问题的搜索,而不适于多峰问题的求解。所以此方法一般都与其它选 择方法结合使用。 ( 2 ) 交叉算子 遗传算法中起核心作用的是遗传操作的交叉算子。所谓交叉是指把两个父代 个体的部分基因加以交换重组而生成新个体的操作。常用的交叉算子有单点交 叉、二点交叉、多点交叉和一致交叉等 3 9 1 。 本文采用的是单点交叉方法,它的具体操作是:在个体串中随机确定一个交 叉位置,交叉的两个个体在该点前或后部分的基因进行互换,生成两个新个体。 下面给出了单点交叉的例子。 配对个体a1 0 0 1i “l 一1 0 0 10 0 0 新个体a 配对个体b0 0 1 li o o o 一一o o l ll l l 新个体b 交叉点 其中,交叉点设置在第4 和第5 个基因之间。两个体交叉时,它们交叉点后 第2 章遗传算法及其在最优化问题中的应甩 基因互换。这样,个体a 的第l 到第4 个基因与个体b 第5 到第7 个基因组成 一个新的个体a 。同样,也得到了新个体b 。交叉点是随机设定的,当编码长 度为r 时,则可能的交叉点有r - - 1 个,所以,单点交叉可以实现疗一1 个不同的交 叉结果。 ( 3 ) 变异算子 变异算子的作用是对群体中的个体串的某些基因的值作变动。遗传算法引入 变异的目的主要有两个:一是使遗传算法具有更好的局部搜索能力;二是维持遗 传算法种群的多样性,以防止出现早熟收敛。 对于浮点数编码,较常用的变异方法有两种:随机变异和非均匀变异朋。 随机变异的具体做法是,对于被某一概率选中进行变异的个体编码串中的基 因,均匀地在其取值范围内产生一随机数替换原有基因值。在遗传算法的运行的 初期,随机变异可以使搜索点在整个搜索空间内自由移动,从而有效地保持种群 的多样性。 但是由于随机变异算子与进化操作的本身没有直接关系,从而,在遗传算法 后期,随机变异无法产生有针对性的局部搜索,导致进化的迟缓。为此,引入了 非均匀变异的做法。本文中采用的就是非均匀变异【川,它一种在进化的初期, 变异的范围相对较大,而随着进化的推进,变异范围越来越小而重点搜索原个体 附近的微小区域的变异方法。其具体的操作是: 若个体= ( h ,v 2 ,唯,) 的基因唯被选择变异,屹嘭,】,则变异结 果为“= ( v l ,吃,唯,) ,其中k = l ,2 ,疗 唯= 瓷:譬薏二芝; 若若:。r a a 。n 。d 伽o m 。( 。o ,, ,i ,) :- - o 。,) c z - z z , ( f ,y ) = j ,( 1 一f r ) 6 ( 2 2 3 ) a ( t ,j ,) 返回区间【0 ,y 】里的一个值,a ( t ,j ,) 的值接近0 的概率随代数r 的增加而增 加。这一性质使算子在初始阶段均匀地搜索空间,而在后面阶段非常局部化。, 是【o ,1 】之间的随机数:丁为最大进化代数;b 为决定非均匀度的系统参数,它决 定了随机扰动对进化代数t 的依赖程度口9 1 。 2 3 4 算法参数 在实现遗传算法时,一方面需要针对具体问题选择适当的编码方法与设计相 应的遗传算子;另一方面也需要确定算法的参数。参数的选择常常会对算法的性 能产生较大的影响。遗传算法的主要参数包括编码长度,种群数目,交叉概率, 变异概率和算法终止条件等。 1 4 第2 章遗传算法及其在最优化问题中的应用 ( 1 ) 编码长度 本文采用浮点数编码,编码长度与变量的个数相等。 ( 2 ) 种群数目 种群数目是影响算法优化性能和效率的因素之- - ”1 。通常,种群太小则不 能提供足够的采样点,以致算法性能很差,甚至得不到问题的解;种群太大时虽 然可增加优化信息以阻止早熟收敛的发生,但无疑会增加计算量,从而使计算时 间太长。本文的种群规模设定在6 0 到5 0 0 之间。 ( 3 ) 交叉概率 交叉概率用于控制交叉操作的频率。概率太大时,种群中个体的更新很快, 进而会使高适应值的个体很快被破坏掉;概率太小时,交叉操作很少进行,从而 会使搜索停滞不前。本文的交叉概率取为o 8 到0 9 之间。 ( 4 ) 变异概率 变异是加大种群多样性的重要手段。在g a 中,通常一个较小的变异率已经 可以防止整个群体中任一位置的基因一直保持不变。但是,概率太小则不会产生 新个体,概率太大则使g a 成为随机搜索。本文的变异概率取为o 1 到0 2 之间。 ( 5 ) 算法终止条件 终止条件是确定遗传算法结束的一个参数,由于遗传算法不同于传统的优化 算法,它没有利用目标函数的梯度等信息,所以在遗传进化过程中,很难有明确 的搜索终止准则。本文采用的是指定最大遗传代数的方法来终止算法的搜索,取 定的终止代数为1 0 0 到5 0 0 之间。 2 3 5 算法流程 通过以上的设置,本文实现的遗传算法的流程如下: s t e p0 初始参数设置( 指定最大进化代数 厶种群大小| v ,交叉概率见,变 异概率儿等) ; s t e pl 令g e n = o :随机生成初始种群;最优个体的适应值置o ;( g e n 为遗传 代数) s t e p2 计算当前代种群中每个个体的适应值月p p ; s t e p3 判断当前代种群中最优个体的适应值是否大于上一代最优个体的适 应值,执行最优个体保留操作; s t e p 4 选择操作:按适应值比例方法选出新的个个体,放入交配池中; 第2 章遗传算法及其在最优化问题中的应甩 s t e ps 交叉操作:按概率见对交配池中的个体进行单点交叉操作: s t e p6 变异操作:按概率儿对交叉后的各个个体基因进行非均匀变异操作; s t e p7g e n = g e m - i ,若g e n ,则转s t e p 2 :否则终止算法,输出最优解。 算法的流程图如图2 1 所示: 图2 - i 遗传算法流程图 2 4 遗传算法的优化性能测试 n 为了解本文实现的浮点数编码遗传算法的寻优能力及其在结构优化中的有 效性,本节通过五个典型测试函数和两个桁架优化算例对其进行测试。 1 6 第2 章遗传算法及其在最优化问题中的应用 2 4 1 函数优化算倒 澳4 试函数l ( z ) :s h u b e r

温馨提示

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

评论

0/150

提交评论