基于深度学习的多材料结构拓扑优化方法

2022-08-02 13:54陈艾荣
关键词:卷积精度神经网络

项 程,陈艾荣

(同济大学土木工程学院,上海 200092)

结构拓扑优化旨在研究给定约束条件下设计域内材料的最佳分布,使结构某种性能达到最佳。与传统的形状优化及尺寸优化方法相比,拓扑优化只需定义约束条件及结构所可能存在的范围,而无其他限制,因此可能得到设计范围内找到材料利用率最高的结构形式。自Prager和Rozvany[1],Cheng和Olhoff[2]以及Bendsøe 和Kikuchi[3]等学者们的开创性研究以来,各种拓扑优化方法相继涌现,如SIMP方法[4-6],渐进结构优化法[7],双向渐进结构优化法[8],水平集法[9]及可移动变形组件法[10]等。然而,尽管新的理论和技术不断发展,目前主流的拓扑优化方法在优化过程中均不可避免地要进行多次迭代分析,导致计算成本著增加。

近年来,随着机器学习算法的发展及图形处理器(GPU)的广泛应用,机器学习尤其是深度学习在图像处理、自动驾驶[11]及信号识别[12]等领域得到了广泛应用。深度学习神经网络具有强大的拟合复杂函数的能力,而拓扑优化的结果可以抽象为优化目标和初始约束条件之间的复杂函数。基于这一理解,若能将深度学习技术引入拓扑优化领域[13],将会极大提高拓扑优化效率。

Sosnovik 等[14]最早开始探索基于深度学习的拓扑优化方法。通过将拓扑优化问题转化为图像分割任务并训练卷积编码器-解码器网络,无需迭代即可预测得到优化结构,显著提高了拓扑优化效率。Yu等[15]基于SIMP方法构造的数据集,分别训练了基于卷积神经网络(CNN)的自编码器及条件生成对抗网络(cGAN),能够在无需任何迭代的情况下得到近似最优的拓扑设计,有效减少了总时间消耗。Wang等[16]构造并训练了一种增强的深度超分辨率神经网络和CNN,可在极短的时间内获得精确的高分辨率结构,并具有在不同几何边界条件下预测高分辨率结构的泛化能力。在导热结构的拓扑优化领域,也有学者引入了深度学习技术加以尝试,Li等[17]基于两个耦合的GAN,提出了一种基于深度学习的导热结构非迭代拓扑优化算法,实现了低分辨率和高分辨率下优化结构的预测。不同于上述研究的线弹性优化设计领域,Abueidda等[18]将基于深度学习的拓扑优化方法应用到了非线性领域,通过构造考虑材料和几何非线性的数据集并训练所设计的CNN,实现了给定边界条件、载荷和优化约束下的优化结构预测。

综上,深度学习技术在拓扑优化领域的应用才刚起步,现有基于深度学习的拓扑优化方法均只考虑了单种材料,关于多材料的拓扑优化国内外尚无相关研究。因此,提出了一种基于深度卷积神经网络的多材料结构拓扑优化方法,旨在提高多材料拓扑优化问题的计算效率。首先,对语义分割及Ordered SIMP 方法[6]的基本原理进行简要介绍,接着采用该方法构造训练数据集,训练提出的U-Net神经网络。最后对所建立方法的性能开展评估,结果表明,所提出的方法能够在极短的时间内预测得到多材料拓扑优化结构,显著提高了多材料拓扑优化的计算效率。

1 语义分割

计算机视觉中的语义分割是将图像中的每一个像素划分为特定类别的过程。多材料拓扑优化的目标是确定结构中每个单元应该分配的材料类别,从这个意义上说,拓扑优化可以看成一种广义的语义分割。近年来,随着CNN 技术的成熟,语义分割得到广泛应用。CNN是一种特殊的人工神经网络,能够分层提供卷积运算的抽象表示,因此特别适用于图像处理。其架构通常由一系列不同功能的网络层的堆叠而成,包括用于卷积运算的卷积层、用于降维的池化层以及与普通神经网络类似的全连接层。卷积层是构建CNN的核心层,不同的卷积层可以提取输入张量的不同特征。每一次卷积运算都可以看作是一个特征抽取器,分别提取不同维度的特征,减少人为分割任务的识别偏差。卷积神经网络结构示意图及典型卷积操作如图1所示。

图1 卷积神经网络结构及典型卷积操作Fig.1 CNN structure and typical convolution operation

2 基于Ordered SIMP 插值方法的拓扑优化问题

Ordered SIMP插值方法[6]是一种用于求解多材料连续设计变量(0 ≤ρ≤1)结构优化问题的有效方法。考虑材料的三种材料特性,即材料密度、弹性模量和成本,以结构柔顺度(Compliance)最小化为优化目标,受结构质量和成本约束的多材料拓扑优化问题可以表述为

式中:c是结构柔顺度;K为整体刚度矩阵,U和F分别为位移向量及力向量;k0和ue分别为无弹性模量的单元位移向量和单元位移向量;ρe表示第e个单元的标准化材料密度;Ee和Ce分别为第e个单元的材料弹性模量及成本;Ve为第e个单元的体积,M和C分别为当前设计域的质量和成本;M0和C0分别为完全填充ρe=1 时设计域的质量和成本;εM和εC分别是预设的质量和成本分数。

根据Zuo 等[6]提出的Ordered SIMP 插值方法,按归一化密度变量ρi的升序对多材料进行排序,即

式中:ρiT为第i个材料的实际密度;ρmax是所有候选密度中的最大值;m为材料的总数。通过引入比例系数AE和平移系数BE,可得到扩展的幂函数如下:

式中:p为材料插值模型的惩罚因子。

对于ρe∈[ρi,ρi+1],AE和BE定义为

式中:Ei和Ei+1分别为材料i和材料i+1 的弹性模量。

多材料的成本插值公式为

对于ρe∈[ρi,ρi+1],AC和BC定义为

式中:Ci和Ci+1分别为材料i和材料i+1的成本。

3 神经网络模型

3.1 数据生成

鉴于多材料拓扑优化问题十分复杂,现拟从相对简单的悬臂梁初始设计域着手,研究存在钢和铝合金这两种常见建筑材料时的最优拓扑形式。参考Wang 等[13]的研究,采用Ordered SIMP 方法,生成34 000个数据的初始数据集,并按9:0.5:0.5的比例将其分为训练集、验证集及测试集。在生成训练数据时,荷载作用于悬臂梁端部,荷载数量取1 个,荷载作用节点,体积分数,成本分数以及力的作用方向均服从均匀分布。训练样本的详细信息如下:

(1)设计域尺度:40×80

(2)体积分数:0.2~0.8(均匀分布)

(3)成本分数:0.2~0.8(均匀分布)

(4)惩罚因子:3

(5)过滤半径:2.5

(6)作用力数量:1

(7)作用力方向:0°~360°(均匀分布)

考虑到训练集的生成是主要的时间成本所在,训练集数量应当是在满足神经网络训练精度情况下尽可能的少。神经网络验证集精度随训练样本数量的变化情况如图2 所示。可以看出,当训练样本数量小于5 000时,神经网络验证集精度随着训练样本数量的增加而显著增加;而当训练样本数量超过5 000后,验证集精度不再随着训练样本数量的增加而提升。因此,理论上只需要构造5 000个样本即可满足神经网络的训练需求。

图2 不同训练样本数量下神经网络验证集精度Fig.2 The accuracy on validation set of the neural network under different training sample numbers

神经网络的输入为一个41×81×6的张量,输入信息包括体积分数,成本分数,边界条件及荷载作用边界条件,如图3 所示。其中前两个通道为体积分数和成本分数通道,通道中所有数据均等域体积分数及成本分数;第三和第四个通道表示水平向(X)和竖向(Y)的边界条件,通道中数字0表示相应节点无约束,数字1表示相应方向对应节点为固定约束;最后两个通道为所施加的荷载条件,数值0 表示相应节点处未施加荷载,数值Fx及Fy表示相应方向对应节点处作用力的大小。

图3 初始设计域Fig.3 The initial design domain

3.2 CNN神经网络结构

神经网络的结构对模型解决问题的能力起着至关重要的作用。U-Net网络具有能够高精度提取目标物边界的优势[19],满足多材料拓扑优化问题要求的拥有明确的材料边界及结构轮廓这一需求,因此本研究采用U-Net网络解决多材料结构拓扑优化问题。整个网络由卷积编码器(下采样)、卷积解码器(上采样)及跳跃连接三部分构成,如图4所示。

图4 神经网络结构Fig.4 The architecture of the neural network

设计的张量首先被输入编码器,进行特征提取。在编码器内,输入张量先后经过多次卷积(Conv)、标准化(Batch Normalization)及最大池化(Maxpoling)处理,提取得到不同维度的特征图,最终输出张量的形状比输入张量缩小了8 倍。随后,编码器输出的特征图被输入与之对应的解码器。在先后经过多个连接层、转置卷积层、标准化及卷积层后,从输入的特征图中提取不同单元对应的材料类别。在上采样过程中,将来自前一个卷积层输出的通道与特征提取部分对应的通道在Channel维度上进行拼接,形成更厚的特征,使解码器部分具备高频信息。在网络的最后部分,采用一组具有批量归一化层的卷积层来获得单元解。网络的输出层采用softmax 激活函数,输出三通道特征图,代表对应单元属于三种不同材料的概率。单元的材料类别,取决于这三个通道的概率值,即哪个通道的概率值最大,则认为相应单元属于该材料。

神经网络模型在配备Intel®Core ™i7-8700k CPU 处理器和NVIDIA GeForce GTX1080 Ti GPU 的计算机上使用Keras框架进行训练。模型使用Adam 优化算法[20]进行神经网络训练,并采用了带L2正则化的交叉熵损失函数,防止神经网络训练过拟合。训练时,L2正则化系数取1e-4,初始学习率为0.001,当验证损失在10 个epoch 内没有减少时,学习率将衰减0.1 倍。神经网络训练的损失函数如下:

式中:p(x)为优化目标;q(x)为神经网络的输出;λ为正则项系数;θi表示神经网络的权重。

神经网络的训练过程中模型精度和损失的变化趋势如图5所示。

图5 神经网络训练过程中训练集和验证集准确率和损失变化Fig.5 The accuracy and loss on training and validation set of the neural network during training

经过约46 个epoch 后,模型在验证集上的精度大致收敛于94%,损失收敛于0.14,而训练上的精度(损失)仍保持上升(下降),意味着模型训练出现过拟合。因此,在70个epoch后停止训练,在后续研究中,采用第46 个epoch 的神经网络参数开展模型性能评估。

4 模型性能评估

用测试集数据对训练好的卷积神经网络的性能(计算效率及精度)进行评估。模型的精度包含像素精度、结构柔顺度精度、质量分数精度及成本分数精度等。模型测试的所有计算均在配备Intel®Core™i7-8 700k CPU处理器的计算机上进行。

大多数情况下,神经网络预测的结构与Ordered SIMP方法计算得到的多材料优化结构在结构形式、材料分布及结构性能等方面十分相似,如图6 a 所示。但采用Ordered SIMP 方法的平均计算时间为27.51 s,而采用基于深度学习方法的计算时间为0.157 s(0.156 s 数据预处理+0.001 s 模型预测,生成数据的时间及训练神经网络的时间未被计入),仅相当于Ordered SIMP 方法的0.57%。这是由于Ordered SIMP 方法在优化过程中需要进行上百次有限元迭代分析及灵敏度分析,花费了大量时间。而基于深度学习的拓扑优化方法在模型训练完成后可以直接预测得到优化后的结构,而无需任何迭代,计算效率得到显著提升。应该注意的是,基于深度学习方法的计算时间不包括生成数据集的时间(生成5 000 个训练样本需要38.21 h)和训练神经网络的时间(0.79 h),因为数据准备和模型训练仅为一次离线成本,而训练后的模型可以用来解决无数类似的拓扑优化问题。此外,图6 中Ordered SIMP 方法得到的一些结果存在类似传统单一材料拓扑优化的棋盘格现象。相较而言,深度学习方法得到的优化结构具有更好的材料连续性,材料边界更加明确,未发现类似的棋盘格现象。

图6 给定约束条件下多材料预测结构与传统方法得到的优化结构对比Fig.6 Comparison of predicted and optimized structures of multi-materials under given constraints

两种方法的评估结果如表1 所示,在预测精度方面,基于深度学习方法的柔顺度、像素、质量分数及成本分数的误差分别为6.49%,6.71%,-2.74%及-2.76%。然而,在得到的结果中,也存在误差较大(柔顺度误差>25%)的情况,如图6 b所示。两个方面的原因可能导致了较大误差的出现:一方面,多材料拓扑优化问题难度较大,在生成训练数据集时,所采用的算法仅能得到局部最优解,导致部分训练数据不够理想(图6 b中前两个算例),进而影响到模型预测结果的准确性。另一方面,所提出的方法中,高像素相似度是深度学习网络唯一的训练目标,这意味着只要结果具有较高的像素相似度,材料分布不一致的出现就不会得到惩罚。在类似的研究中[13,15],也存在结构预测不理想的问题。这也为开展进一步研究指出了改进方向:如何将力学信息融入训练目标,使得神经网络预测的结果不仅仅只具有像素概念。

表1 神经网络预测方法及Ordered SIMP方法优化结果比较Tab.1 Comparison of analysis results between neural network prediction method and Ordered SIMP Method

除了部分结果出现较大误差外,一些深度神经网络预测得到的结果甚至比Ordered SIMP 方法表现更佳(即:采用更少的材料,更低的成本得到结构柔顺度更小的结构),如图6 c 所示。取得这种表现的主要原因在于深度神经网络训练过程中对分类标签的处理:Ordered SIMP 方法得到的优化结构的单元密度分布在0~1之间,密度接近何种材料,就认为此单元被该材料填充。为了提高数据生成效率,在采用Ordered SIMP 方法生成训练数据时,当相邻迭代步的最大单元密度变化小于1.01×10-3时,终止迭代分析,并认为得到的结果为相应约束下的优化结构。因此,这种处理方法可能存在许多密度介于两种材料之间的中间密度单元。而深度学习方法在训练时,预先对语义分割的分类标签进行处理,使得输出的标签只有三种,即三种材料的相对密度。因而随着神经网络训练的进行,深度学习方法得到的结果将不断向三种材料的相对密度值趋近,使得输出结果的中间密度单元减少,结构具有更低的柔顺度。

5 结论

提出了一种基于深度学习的多材料结构拓扑优化方法,首次尝试将深度学习技术引入了多材料结构拓扑优化领域。相较于传统的拓扑优化方法,所提出的方法能够在几乎不牺牲结构性能的情况下在极短的时间内得到多材料优化结构,而无需进行任何迭代分析。此外,深度学习方法得到的优化结构具有更好的材料连续性,材料边界更加明确,且未发现Ordered SIMP 方法得到的结果中出现的类棋盘格现象。当然,本研究还存在许多问题有待进一步解决,如找到更好的数据生成方法,提高神经网络的精度,降低大误差出现的比例等

然而,基于深度学习的结构拓扑优化这种方法,尤其是多材料的结构拓扑优化方法才刚起步。无论是本研究还是国外的一些相关研究中,都存在一定的局限性。一方面,由于部分训练数据不理想及神经网络的精度等原因,一些神经网络的预测结果存在较大误差,亟待研究更好的数据生成方法及具有力学信息的训练目标。另一方面,本研究的设计域选为相对简单的长方形悬臂梁边界条件,荷载作用于悬臂端,当荷载作用位置,设计域形状及优化材料种类变化时,则需要构造新的数据集及训练新的神经网络。因此,神经网络的泛化能力有待进一步提高。此外,目前,几乎所有基于深度学习的拓扑优化方法都是依托于柔顺度优化问题,如何将基于深度学习的拓扑优化方法拓展到其他更复杂的优化问题(如应力优化等)将是未来研究的一个重要方向。

作者贡献声明:

项程:具体研究工作的开展和论文初稿撰写。

陈艾荣:指导论文的选题,负责论文思路的把控和核准。

猜你喜欢
卷积精度神经网络
基于不同快速星历的GAMIT解算精度分析
基于神经网络的船舶电力系统故障诊断方法
MIV-PSO-BP神经网络用户热负荷预测
热连轧机组粗轧机精度控制
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
从滤波器理解卷积
基于神经网络的中小学生情感分析