一种基于协同近似的多学科设计优化方法
2021-01-18易永胜邱浩波
易永胜 李 伟 高 亮 肖 蜜 邱浩波
1. 华中科技大学数字制造装备与技术国家重点实验室,武汉,430074 2. 湘电风能有限公司风电研究院,湘潭,411100
0 引言
现代复杂工程系统的设计优化通常涉及一些复杂耦合的学科或子系统。多学科设计优化(multidisciplinary design optimization, MDO)作为一种整体设计方法[1],在飞机设计[2]、再入飞行器设计[3]、小卫星系统设计[4]等方面得到了广泛的关注。现代工程系统日益复杂,对这些系统性能的仿真分析,如有限元分析和计算流体动力学,需要大量的计算资源。虽然计算机技术已经取得了很大的进步,但是仍然不能满足仿真分析的计算量要求。另一方面,仿真分析程序通常呈现黑盒函数的特征,其对应的设计变量与系统响应之间的关系完全是未知的,这进一步增加了工程系统设计优化的难度。同时,为避免求解复杂工程系统多学科设计优化问题时需要反复调用复杂耗时的多学科分析和进行繁琐的灵敏度计算,寻求一种高效的方法来求解MDO问题成为了当前MDO研究的重点。
针对上述问题,本研究提出了一种基于协同近似(collaboration model surrogate optimization,CMSO)的多学科设计优化方法,阐述了CMSO方法的流程和主要步骤。通过一个数学算例和圆柱螺旋压缩弹簧设计案例,并与已有的单学科可行法(individual discipline feasible, IDF)进行对比,验证了CMSO方法的有效性。
1 协同模型
为了获得满足系统分析或多学科分析(systems analysis/multidisciplinary analysis, SA/MDA)的可行样本,构建一个协同模型(collaboration model, CM)作为过滤器[5-6]。为了便于解释和保持通用性,考虑一个具有两个相互耦合状态变量的简单例子。耦合状态方程表示为
(1)
将求解这个耦合状态方程的过程称作系统分析或多学科分析。式(1)中,Y1是一个显式函数,它反映了Y1、xs、x1和y2之间的物理关系,同时Y1也是一个隐式函数,反映了xs、x1和x2之间的数学关系。协同模型通过构造两个近似模型的相同耦合状态变量来构建:一个是反映物理关系的显式关系模型,另一个是反映数学关系的隐式关系模型。显式函数和隐式函数具体如下:
(2)
给定一组设计变量x,定义D表示学科一致性/不一致性,具体表达如下:
(3)
其中,n为耦合状态变量的个数。与对应大D值的样本点相比,对应小D值的点更有可能满足SA/MDA。
该协同模型能够有效地剔除不符合设计要求的样本点,从而加快优化过程,提高求解效率。构建近似模型有多种选择,如多项式响应面(RSM)模型[7]、径向基函数(RBF)模型[8]和克里金(Kriging)[9]模型。然而,这些近似模型只是一个“筛子”,仅筛选出更能反映多学科问题本身属性的样本点,而不是优化目标函数的近似模型,因此,不需要很高的精度。本研究利用径向基函数建立协同模型。给定一组实验点{xk,k=1, 2, …,N}对应的N个值{y(xk)},RBF模型的构造如下:
(4)
式中,a(·)为一个线性多项式函数;λk为每个样本点的权重系数;φ(·)为径向基函数;‖·‖为欧几里德范数。
最常用的径向基函数包括三次函数、薄板样条函数、线性函数、二次函数和高斯函数。由于式(4)只是一个指导抽样模型,故本研究采用一个简单的线性径向基函数来构造协同模型。线性径向基函数表示为
(5)
代理模型技术主要包括实验设计(DOE)和代理模型的构建两部分。DOE方法有多种,如均匀设计(UD)[10]、中心复合设计(CCD)[11]、拉丁超立方体抽样(LHS)[12-13]。LHS抽样是代理模型中最常用的DOE方法之一,LHS抽样在保证分层抽样的同时,提供了多种样本量,每个输入变量可以覆盖其范围的所有部分,得到的训练样本可以很好地填充设计空间。由此,本研究采用LHS抽样对设计域空间进行抽样,并抽取104个样本点构建协同模型。
2 自适应代理模型
复杂工程系统往往包含复杂和耦合的学科或子系统,系统性能的仿真分析(如有限元分析和计算流体动力学)需要大量的计算资源,代价非常昂贵。代理模型技术作为一种易于处理的廉价工具,在复杂系统设计的优化过程中得到了广泛的应用。由上文可知,代理模型的构建方法常用的有RSM模型、RBF模型和Kriging模型等。其中RSM模型是一种广泛使用的代理模型,对于N个输入变量的问题,需要确定(N2+3N+2)/2个系数,且随着变量数量的增加,三阶和更高阶的模型需要确定的系数太多,因而不是很常用。一般来说,RSM模型适用于非线性程度较低的近似问题;RBF模型不需要指定目标函数表达式或导数信息,它只需要选择一个径向基函数,就可以有效地用较少的设计点构造一个相对精确的模型;Kriging模型对各种非线性函数具有较高的逼近精度,在优化领域得到了广泛的应用。
对MDO优化模型进行近似,如果代理模型精度太低,那么优化的实现就没有意义。为了选择一个合理的模型,本研究使用了一些常用的度量方法来评估代理模型的准确性,包括中位数绝对偏差(MAD)、最大绝对误差(MAE)、均方根误差(RMSE)[14]。
MAD定义为预测值绝对值的中位数,其表达式为
(6)
MAE表示局部误差,越小越好,其表达式为
(7)
RMSE表示预测值与观测值之差的样本标准差,其表达式为
(8)
分别计算代理模型的MAD、MAE和RMSE,对比代理模型的精度,选择最佳的代理模型来构建MDO优化模型。
3 基于协同近似的多学科设计优化
本研究提出的CMSO方法的基本思想是:通过一种协同模型来选择满足多学科可行的样本点,本研究中称为协同抽样(collaboration sampling, CS),然后通过这些样本点构建3种代理模型,并进行代理模型的验证和确认,之后选择最佳的代理模型,并使用序列二次规划(SQP)法来进行优化求解。
图1描述了CMSO法求解的具体流程。运用CMSO方法求解工程产品MDO问题的主要步骤如下:
(1)构建协同模型,进行协同抽样。①采用拉丁超立方均匀抽样n=104个初始样本点;②利用核函数是线性函数的径向基函数构建协同模型;③利用协同模型筛选出m个满足多学科可行的样本点,并按D值的大小升序排列,m值可以根据设计变量的多少而取不同的值,一般取值是设计变量个数的10倍。
(2)构建代理模型并验证和确认。①利用协同模型筛选出的m个样本点分别构建响应面模型、径向基函数模型和Kriging模型;②使用代理模型的评价准则来判断和确定最优代理模型;③通过计算得到各个样本点处的响应值。
(3)构建MDO问题的优化模型并求解。①利用得到的相关数据和选定的最优代理模型构建MDO问题的优化模型;②使用基于梯度的优化方法求解MDO问题,本研究中采用SQP法。
图1 CMSO方法流程图Fig.1 Flow chart of the CMSO method
4 实例验证
4.1 数学算例
为了测试CMSO法的效果,选取了一个非常经典的MDO数学算例[15],该算例是评估MDO方法性能的常用算例之一,这里对目标函数f和耦合状态变量y2进行了适当的修改。该算例包括两个互相耦合的子系统,每个子系统都有一个耦合状态变量和一个约束条件,子系统划分如图2所示,其数学表述如下:
s.t.g1=y1/3-1≥0g2=1-y2/30≥0 0≤x1≤10 0≤x2≤10 0≤x3≤10
图2 数学算例子系统划分Fig.2 Mathematical example system division
利用CMSO法求解这个优化问题,首先采用LHS随机生成104个样本点来构建协同模型,选取100个D值较小的样本点并升序排列,把这100个点分为三部分,第1~80是训练集,第81~90是验证集,第91~100是测试集。协同抽样的样本点分布如图3所示。前80个样本用于y1和y2的RSM、RBF和Kriging模型的构建,验证集用于评估代理模型,采用交叉验证法对模型的性能进行了估计。最后10个点用于计算代理模型的MAD、MAE和RMSE,代理模型的交叉验证误差如表1所示。表2给出了代理模型的测试结果,可以看出,RSM方法比其他两种方法具有更高的精度。本研究采用RSM模型来构建MDO优化模型。
图3 协同抽样的样本点分布图Fig.3 Distribution of collaboration sampling points
表1 代理模型的交叉验证误差
表2 代理模型的测试结果
为了更好地体现CMSO法对该问题求解的准确性和高效性,分别采用了CMSO法和IDF法对该算例进行了优化计算,求得的结果列于表3。从表3中可以看出,CMSO法和IDF法都能求得该问题的最优解7.982 4,体现了CMSO法拥有与IDF法一样的求解精度,设计变量和状态变量的值也是一样,说明求得的解完全满足多学科一致性。CMSO法对目标函数的计算次数是46,而IDF法需要153次,CMSO法相对于IDF法需要对目标函数的计算次数明显要少,并且更快收敛,由图4迭代收敛曲线也同样可以看出CMSO法比IDF法更快收敛到最优满意解,这体现了CMSO法在求解这个问题上比IDF法更高效。通过对这个经典的MDO数学算例的成功求解验证了CMSO法的准确性与高效性。
表3 CMSO与IDF求解数学算例的优化结果对比
图4 CMSO与IDF求解数学算例迭代收敛曲线Fig.4 Iterative convergence curve of CMSO and IDF solving mathematical examples
4.2 圆柱螺旋压缩弹簧设计
为了验证CMSO法对求解工程实例的有效性,选取圆柱弹簧设计[16-17]这个工程应用案例进行测试与分析。图5为圆柱螺旋压缩弹簧的结构示意图。该优化问题的设计目标是在满足实际使用中对强度和刚度的要求下使其质量最小,3个设计变量分别为:弹簧丝的直径d0、弹簧的中径D0、弹簧的总圈数n0。
图5 圆柱螺旋压缩弹簧结构示意图Fig.5 Schematic of cylindrical spiral compression spring
将该优化问题划分为质量、刚度和强度3个子系统,优化模型表述如下:
其中,r(x)为刚度子系统目标函数;s(x)为强度子系统目标函数;m(x)为质量子系统目标函数;g1为旋绕比约束;g2~g5分别为弹簧的稳定性约束、无共振约束、刚度条件约束和强度条件约束;其他螺旋压缩弹簧设计的相关参数取值或范围如表4所示。
表4 圆柱螺旋压缩弹簧设计的相关参数取值或范围
图6 圆柱螺旋压缩弹簧优化框架图Fig.6 Optimization frame diagram of cylindrical spiral compression spring
利用CMSO法求解这个工程应用实例,求解的流程与前文数学算例相同,这里就不再赘述。针对这个实例,本研究采用协同抽样同样抽取100个点,得到的样本点分布见图7,同时采用RSM模型来构建MDO优化模型。为了验证CMSO法对求解工程实例的有效性和更好地体现CMSO法对该问题求解的准确性和高效性,同样分别采用了CMSO法和IDF法对该实例进行了优化设计,求得的结果列于表5。从表5中可以得到,CMSO法求得该问题的目标函数值是2.051 3,比IDF方法求得的目标函数值2.068 2小,表明CMSO法在求解这个问题上比IDF法更加准确,验证了CMSO法对求解工程实例的有效性。CMSO法收敛时对目标函数的计算次数是118,而IDF法需要127次,CMSO法相对于IDF法对目标函数的计算次数也要少,并且更快收敛,从图8中迭代收敛曲线也同样可以看出CMSO法比IDF法更快收敛到最优满意解,从而体现了CMSO法在求解这个问题上比IDF法更高效。通过对这个工程实例的求解,不仅验证了CMSO法求解工程实例的有效性,同时也成功验证了CMSO法的准确性与高效性。
图7 协同抽样的样本点分布图Fig.7 Distribution of collaboration sampling points
表5 CMSO与IDF求解圆柱弹簧设计的优化结果对比
图8 CMSO与IDF求解圆柱弹簧设计迭代收敛曲线图Fig.8 Iterative Convergence Curve Diagram of CMSO and IDF Solving Column Spring Design
5 结论
本研究提出了一种基于协同近似的多学科设计优化方法,主要是通过一种协同模型来选择满足多学科可行的样本点,然后通过这些样本点构建3种代理模型,并进行代理模型的验证和确认,之后选择最佳的代理模型来进行优化求解。本研究提出的CMSO方法具有以下特点:①通过协同模型筛选出更能反映多学科问题本身属性的样本,保持多学科的一致性;②通过构建代理模型并验证和确认,避免了复杂耗时的多学科分析,从而提高计算效率。实例计算结果表明,和IDF法相比,CMSO法求解精度高、迭代次数少和收敛快,是一种有效的MDO方法。
进一步的工作是对CMSO法的性能进行更加全面的研究,考虑与其他典型的MDO方法(MDF、CSSO、CO等)作比较,体现CMSO法的高效性。