基于生成对抗网络的跨分辨率拓扑优化方法的比较研究
2024-04-11朱赫鹏李小白
朱赫鹏, 丁 喆, 张 严, 李小白
(1. 武汉科技大学 机械传动与制造工程湖北省重点实验室,武汉 430081;2. 武汉科技大学 冶金装备及其控制教育部重点实验室,武汉 430081;3. 武汉科技大学 精密制造研究院,武汉 430081)
拓扑优化通过寻求设计域内材料的最优分布,力求在满足约束的条件下,获得性能最优的结构拓扑形式,是一种先进的结构优化设计方法,已被广泛地应用于汽车以及航空航天等领域[1-2]。目前,常用的拓扑优化方法主要有固体各向同性材料惩罚法(solid isotropic materialwith penalization, SIMP)[3]、渐进结构优化法[4]、水平集法[5]和独立连续映射法(independent continuous mapping, ICM)[6]等。为了实现复杂结构系统的高性能设计,需要对其进行更精细化的网格划分。而随着结构单元数量的增加,相应拓扑优化过程所需的计算成本也显著增加。尤其当涉及三维结构时,设计变量与结构单元数目的增加共同导致了拓扑优化中有限元分析和迭代过程计算消耗的急剧增加。值得一提的是,本文后续所指的“分辨率”表示有限元网格划分的精密度,获得高分辨率结构需要更精细的网格划分。因此,如何提高高分辨率拓扑优化方法的计算效率已成为当前拓扑优化领域的热点问题[7-8]。
近年来,由于深度学习算法具有强大的拟合复杂函数以及特征表示的能力,已在图像处理、自动驾驶和信号识别等领域得到了广泛应用[9-10]。实际上,拓扑优化问题可抽象表示为优化目标与初始约束条件间的复杂函数[11]。因此将深度学习算法与拓扑优化方法相结合,可大幅提高传统拓扑优化方法的计算效率,实现复杂结构系统的精细、高效和智能优化。目前,已有众多将深度学习与拓扑优化相结合的研究[12-13],按照优化前后分辨率是否发生变化可分为同分辨率和跨分辨率拓扑优化设计。
同分辨率拓扑优化指在深度学习模型中预测结构的输入与输出保持相同维度。Sosnovik等[14]通过SIMP法得到样本数据,利用U-Net网络将中间构型作为输入预测得到对应最优构型,实现了对SIMP法的加速。Deng等[15]针对柔顺度和应力约束的多目标拓扑优化问题,将密度场信息作为输入预测得到优化结构,与传统拓扑优化方法相比,基于深度学习的方法所需设计变量显著减少。Zhang等[16]基于神经网络算法,将位移和应变作为输入来预测最优构型。上述基于深度学习的拓扑优化方法虽大幅提高了优化效率,但并不能提高预测结构的分辨率。
为此,一些学者提出了跨分辨率的拓扑优化结构预测方法,通过对样本数据的学习,建立低分辨率与高分辨率结构之间的端到端映射关系,进而对输入的低分辨率结构进行重构,即通过输入低分辨率结构的特征可预测得到对应高分辨率的优化结构。Yu等[17]采用变分自编码器和生成对抗网络(generative adversarial network, GAN)通过两阶段方法实现了跨分辨率拓扑优化。Li等利用由两个耦合神经网络组成的两阶段预测-精细化网络结构进行跨分辨率导热结构的拓扑优化,显著降低了优化设计的计算量。虽然基于深度学习的非迭代拓扑优化方法具有较高的效率,且可以实现跨分辨率预测,但与单一网络的跨分辨率预测相比,多网络预测方法会加大预测结构的误差。此外,上述跨分辨率拓扑优化方法研究均未涉及三维结构的预测。
生成对抗网络通过生成器和判别器的相互博弈,来帮助生成器获取真实样本的数据分布情况,从而生成所需数据。目前,GAN网络在图像处理领域里的应用最为出彩,它可以实现各式各样的图像生成,例如图像分割等[18]。但在其应用中也面临着一些困难与挑战,例如训练不稳定、梯度消失和生成样本多样性不足等。因此,针对GAN的改进模型也不断涌现。在CGAN(conditional generative adversarial network)的基础上,Isola等[19]提出了Pix2pix网络,生成器的结构使用了U-Net结构,并引入了L1损失,极大地改善了图像映射效果。Wang等[20]在SRGAN(super resolution generative adversarial network)网络的基础上,提出了ESRGAN(enhanced super resolution generative adversarial network)网络,该模型在生成器上使用残差密集块来提升模型的结构,扩大了网络的容量且提高了网络的特征学习能力。叶红玲等[21]利用ICM法建立数据集并引入CGAN网络实现了单一网络的跨分辨率设计,但所得结果的效率和精度有待进一步提高。跨分辨率拓扑优化方法不仅提高了传统拓扑优化设计效率,且在保证预测结构精度的前提下,提高了预测结构的分辨率,进而实现对结构的精细化设计。
基于上述分析,本文利用改进的Pix2pix网络和Esrgan网络构建了两种单一网络的跨分辨率结构拓扑优化设计方法,并将其扩展至三维结构的跨分辨率拓扑优化预测。首先以结构柔顺度最小化为目标函数,利用SIMP法获得低分辨率和对应高分辨率构型的数据集,并将载荷方向和体积分数等变量编码化作为网络的输入;通过设置相关网络参数进行网络模型训练,进而得到预训练网络模型;基于预训练网络模型得到预测结果,并对两种网络所得预测结果进行评估;最后将上述方法所得预测结果与基于CGAN网络的预测结果进行对比,以验证所提方法在像素点准确率、柔顺度准确率、体积分数和预测时间等方面的优势。
1 相关理论和技术基础
1.1 基于SIMP的最小化柔顺度拓扑优化
SIMP方法是在均匀化方法的基础上提出的一种变密度法。在SIMP法中,通过引入0~1区间连续变化的单元密度,并以单元密度作为设计变量,通过建立单元密度与材料弹性模量之间的函数关系,将拓扑优化问题转化为最优材料分布问题。采用材料插值模型的方法,让优化过程中的单元密度趋向“1”和“0”,从而减少了中间密度单元的产生,成为目前拓扑优化方法中最常用的密度插值模型之一。
本文以单元相对密度为设计变量,结构的全局体积分数为约束条件,结构最小化柔顺度为目标函数来建立优化模型,对应的数学模型可表示为
(1)
式中:e为第e个单元;ρe为第e个单元的密度值,取值范围为[ρemin,1];ρemin为单元密度的最小密度值,本文设置为1×10-6;C为结构柔顺度;K为结构的整体刚度矩阵;U为位移矢量;F为施加载荷;V为迭代过程中的实体单元体积;V0为初始体积;Vf为优化结构的许用材料体积分数。
1.2 Pix2pix网络结构
生成对抗网络的结构对模型解决问题的能力起着至关重要的作用。相比于CGAN网络,Pix2pix网络修改了CGAN的损失函数,并将U-Net集成至框架中作为生成器。利用U-Net和CGAN的优势,大幅度提高了Pix2pix网络生成图像的精度,并具有能够高精度提取目标信息边界的优势。然而,传统U-Net网络结构内部为卷积模块,在卷积层传递信息时容易产生部分信息丢失的现象。如图1所示,本文使用残差模块替代传统U-Net网络内部的卷积模块,使信息直接从输入端传至输出端,进而保证输入信息的完整性,且满足拓扑优化问题要求得到明确结构边界和结构轮廓这一要求,为了实现跨分辨率结构预测,反卷积层输出维度为卷积层输入维度的两倍,以解决二维和三维结构的跨分辨率拓扑优化问题。判别器采用马尔科夫判别器,如图2所示,将输入图像切分成大小不同的图像块进行判别。该方法更注重输出图像整体的效果,避免了判别器因某个区域的生成效果“逼真”而将整幅图像判别为“真”。
图1 Pix2pix生成器网络结构Fig.1 Generator of the pix2pix network structure
图2 Pix2pix判别器网络结构Fig.2 Discriminator of the Pix2pix network structure
Pix2pix网络包含生成器和判别器损失函数。与CGAN网络相比,Pix2pix网络还在生成器内引入了像素损失,可增强模型的收敛能力并提高最终预测结构的准确率。生成器的整体损失可表示为
(2)
而判别器的损失函数是一个标准的二分类交叉熵损失函数,其公式为
(3)
1.3 Esrgan网络结构
增强型超分辨率生成对抗网络由生成器RRDBNet(residual in residual dense block net)与相对判别器组成[22]。相较于条件生成对抗网络Pix2pix,Esrgan网络做出了以下优化:①将网络的基本单元由残差模块替换为RRDB模块;②移除了生成网络中的标准化层,提升了网络的泛化能力;③将GAN网络改进为RaGAN(relativistic average generative adversarial network),这一改动有助于生成器学习更清晰的边缘信息和更丰富的纹理细节。因此,本文将引入Esrgan网络用于解决跨分辨率拓扑优化问题,生成器RRDBNet网络结构由多层残差网络和密集连接组成,如图3所示,该网络的主框架由浅层特征提取网络、深层特征提取网络、密集特征融合网络和上采样网络4个重要部分组成。
图3 Esrgan生成器网络结构Fig.3 Generator of the Esrgan network structure
判别器采用相对平均判别器(relativistic average discriminator,RaD)记为DRa,该判别器试图预测真实图像xr比样本图像xf更真实的概率。判别器的损失函数可定义为
LDRa=-Exr{ln[DRa(xr,xf)]}-
Exf{ln[1-DRa(xf,xr)]}
(4)
Esrgan网络的损失函数由生成器和判别器损失函数组成,且生成器损失函数除了对抗损失函数外,另引入了感知损失函数和平均绝对损失函数。具体公式如下
(5)
式中:LGRa为生成器的对抗损失;L1为平均绝对损失;Lpercep为感知损失函数;xi为低分辨率图像;xf为生成器所生成的高分辨率图像;λ和η为平衡不同损失项的系数。
1.4 所提出的基于深度学习的跨分辨率拓扑优化算法流程
本文基于Pix2pix和Esrgan网络所提出的跨分辨率拓扑优化方法主要分为三个部分:获取样本数据、训练网络结构以及得到预测结构。首先,通过SIMP法得到跨分辨率数据集;其次,搭建基于Pix2pix和Esrgan的深度学习模型,将样本数据输入至网络以得到预训练网络模型;最终,将低分辨率构型输入至预训练网络模型,网络直接生成对应高分辨率优化结构。其算法流程如图4所示。
图4 基于深度学习的跨分辨率拓扑优化算法流程图Fig.4 Algorithm flowchart of the cross-resolution topology optimization methods based on deep learning
2 数值算例
2.1 数据集生成
本文以二维悬臂梁和三维悬臂梁为优化算例,对二维方形悬臂梁进行42×42和84×84的单元划分;对二维矩形悬臂梁进行40×25和80×50的单元划分;对三维悬臂梁进行60×20×2和120×40×4的单元划分。上述低密度网格划分对应低分辨率中间结构,而高密度的网格划分对应高分辨率优化结构。采用SIMP插值模型在MATLAB软件中得到数据集。
二维悬臂梁的载荷均作用于悬臂梁右端,载荷数量为1、载荷作用点,体积分数以及载荷方向均在给定范围内均匀变化,变量编码信息如图5所示。设计每个输入通道的大小为86×86,三个通道分别表示X和Y方向上的载荷、位移和体积分数。三维悬臂梁的载荷作用在右端面中心节点线处,载荷数量为1,体积分数,载荷角度和载荷作用点也符合均匀分布,详细信息如下:①体积分数,0.4~0.6(每次增加 0.01);②载荷方向,0°~160°(每次增加20°);③载荷作用点,悬臂梁右端面。
图5 二维结构输入信息Fig.5 The input information of 2D structure
图6 三维结构输入信息Fig.6 The input information of 3D structure
与二维拓扑优化设计方法不同,三维结构在深度方向上具有一个维度的数据信息,每个变量信息的编码大小应该为 61×21×3,对应网络中输入层的每通道大小为61×21×1,三维结构的变量编码信息如图 6所示。
2.2 二维算例结果
2.2.1 网络的参数设置与损失函数对比
利用基于SIMP法的最小化柔顺度拓扑优化方法时,共计生成了3 780个低分辨率构型和对应的高分辨率优化构型,二者组成包含7 560个样本数据。数据集以9∶1的比率被分为训练集和测试集两部分。对生成对抗网络模型的参数进行设定,生成器和判别器模型的学习率均为0.000 2,小批量数据设置为5,使用ADAM优化器对模型进行训练,使用交替训练的方法更新生成器与判别器。由式(2)和式(3)计算得出Pix2pix网络生成器、判别器以及L1损失函数值;由式(4)和式(5)得出Esrgan网络生成器、判别器以及L1损失函数值。将Pix2pix和Esrgan网络训练过程曲线进行对比,如图7所示。
图7 网络损失函数曲线Fig.7 Network loss function curves
由图7可知,随着迭代次数的增加,两种网络的生成损失和判别损失整体呈现下降趋势,曲线后段趋于平缓。在经过200次迭代后,网络模型训练过程的曲线收敛,生成器与判别器之间的博弈达到均衡。由于Esrgan网络生成器采用密集残差块RRDB,增加了网络深度并减少了参数量;且相较于Pix2pix网络全卷积判别器,Esrgan采用的相对平均判别器有助于学习更优质的边缘与纹理信息,因此,Esrgan网络生成器损失值和判别器损失值均低于Pix2pix,准确率高于Pix2pix网络。
2.2.2 二维预测结构网络可行性对比
本节通过数值算例测试基于生成对抗网络拓扑优化方法的性能。将SIMP法计算的结果作为参考值分别与Pix2pix和Esrgan所得结果进行像素点准确率(Acc)、柔顺度(C)、体积分数(Vol)和预测时间的比较。
SIMP方法生成的高分辨率结构和三种生成对抗网络模型生成的高分辨率优化结构的比较,如表1所示(表中的例子为从测试集中随机选取的5个样本)。并在预测结果的下方依次展示了每个结果所对应的像素点准确率、预测时间和体积分数。结果表明,三种网络生成高分辨率结构的清晰度均十分理想,设计域的材料分布细节还原充分,生成对抗网络在模拟SIMP的优化过程中有着很好的性能。通过式(6)计算三种网络预测结果的Acc与SIMP法相比,本文所提出的两种方法大幅提高了获得二维高分辨率优化结构的时间,同时Acc值均在95%以上,且预测结构的体积分数与SIMP法获得的高分辨率结构的体积分数十分接近。这表明随着不断地更新迭代,生成对抗网络可学习到合适的网络参数用来表征拓扑优化内部的先验知识。
表1 二维结构在不同生成对抗网络下的预测结果比较Tab.1 Comparison of prediction results of two-dimensional structures under different generative adversarial networks
其次,将本文三种网络所得结果的评价指标进行对比。由于Esrgan网络较多关注图像感知质量上的提高,并加入了感知损失和对抗损失来提升重建图像的真实感,因此,相对于CGAN和Pix2pix网络,其评价指标Acc和预测时间均有所提升,且预测结构的体积分数更为接近真实结构,即 Esrgan网络具有更优的综合性能。
(6)
2.2.3 二维预测结构的柔顺度对比
对三种网络生成的二维高分辨率结构的柔度值与基于SIMP法生成的二维高分辨率结构的柔顺度进行了对比,如表2所示。利用式(7)计算得出本文方法相较于SIMP法的柔顺度准确率,其中,ObjPred为预测结构的柔顺度,ObjTrue为真实样本结构的柔顺度。由表2可知,由生成对抗网络预测的高分辨率优化结构的柔顺度与SIMP法获得的高分辨率结构的柔顺度是接近的,代表生成对抗网络生成的二维高分辨率结构是可靠的,证明了本文所提方法的有效性。
Esrgan网络的生成器删掉所有BN层并引入具有更大容量和更易训练的RRDB,结合了多层残差网络和密集连接;同时,判别器使用了激活前特征,增强了感知损失,这些特征可提供更强的监督,从而使该网络的预测结果具有更精确的边界信息和图像纹理。因此:由表2可知,Esrgan网络预测所得高分辨率结构的柔顺度准确率最高,且与目标柔顺度(SIMP法生成的高分辨率拓扑结构)最为接近。
(7)
2.3 三维算例结果
2.3.1 三维模型的可行性与计算成本对比
将文中使用的生成对抗网络扩展至三维拓扑结构的预测。将网络模型从二维扩展到三维的最显著差异是输入信息和输出结构的维度,对二维拓扑结构预测仅需要三个通道(体积分数、载荷大小、初始位移),而对三维结构进行预测,考虑厚度方向的特征则需要15个通道(见2.1节)。
用测试集数据对训练好的网络模型的性能(计算效率及精度)进行评估,模型的精度包括像素点准确率、柔顺度和体积分数。本节给出了两组SIMP方法生成的高分辨率结构和三种生成对抗网络模型生成的高分辨率优化结构。如表3所示,生成对抗网络模型生成的三维高分辨率结构与SIMP方法的结果几乎一样。但SIMP法的平均计算时间为460.659 s,而本文提出两种方法的平均时间约为0.4 s,大幅降低了获得三维结构的时间成本。值得注意的是,基于深度学习方法的计算时间不包括生成数据集的时间(生成7 680个样本需45 h)和训练网络的时间(2 h),因为数据准备和模型训练仅为一次离线成本,而训练后的模型可用来解决多种类似的拓扑优化问题。此外,通过式(8)计算得出三维结构的像素点准确率,并展示在预测结果的下方。由生成对抗网络预测得到的生成的三维高分辨率构型均具有良好的像素点准确率值。由表3可知,由生成对抗网络预测的高分辨率拓扑优化结构的体积分数均在由SIMP法计算得到的拓扑优化结构的体积分数附近波动。综上所述,本文提出的基于生成对抗网络的拓扑优化方法能在保证结果高准确性的情况下,高效地生成高分辨率优化结构。
表3 三维结构在不同生成对抗网络下的预测结果比较Tab.3 Comparison of prediction results of three-dimensional structures under different generative adversarial networks
由表3还可知,由生成对抗网络预测的三维高分辨率优化结构的柔顺度与体积分数均接近基于SIMP法获得的高分辨率优化结构,证明了基于生成对抗网络的三维拓扑优化方法的有效性。
(8)
2.3.2 三维模型预测结构的性能对比
两组数据对应的柔顺度和体积分数准确率,如表4所示,通过式(7)计算得出表中展示的两组算例的柔顺度准确率均大于92%。由于Esrgan网络的判别器可预测图像的相对真实性,且使用激活函数之前的所学特征,可提供对亮度一致性和纹理恢复更强的监督力,提高生成图片的视觉质量。综合分析表3与表4可得,Esrgan网络预测得到的高分辨率优化结构的柔顺度、体积分数和像素点准确率均高于Pix2pix网络和CGAN网络。
表4 三维结构在不同生成对抗网络下的柔顺度与体积分数准确率结果比较
3 结 论
(1) 本文基于Pix2pix和Esrgan提出了两种基于生成对抗网络的拓扑优化方法,并扩展至三维结构,实现了对结构系统的高效跨分辨率拓扑优化设计。与传统拓扑优化方法相比,本文所提出的两种方法能够在极短的时间内得到高分辨率优化结构,而无需进行任何迭代分析,且准确率可达94%以上,为高精度和高效率拓扑优化设计提供了理论参考,体现了所提方法的有效性。
(2) 相较于基于CGAN的拓扑优化方法,本文所改进的Pix2pix网络和引入的Esrgan网络的预测结果在效率和精度方面均有提高。对于Pix2pix网络,本文使用残差模块替代U-Net网络内部的卷积模块,保证了信息在传递过程中的完整性,增强了Pix2pix网络的特征学习能力和生成图像的精度;而Esrgan网络的生成器使用RRDB模块,提升了网络的深度与容量,且由于去除了BN层,增强了网络的稳定性。
(3) Esrgan网络所得预测结果的效率和精度均优于Pix2pix。相较于Pix2pix网络,Esrgan网络生成器中包含密集块与多级残差结构,加强了特征图在各个层中的复用,并有效提高网络的泛化能力。