拓扑优化是工业设计领域中常见的数学方法,旨在给定的物理领域内,满足各种约束条件、负载和其他边界条件等前提下,生成最佳的拓扑结构。传统的拓扑优化大多都依赖有限元方法(FEM),然而有限元方法的迭代计算很大程度上增加了拓扑优化的时间成本和算力成本。如今,机器学习和深度学习在图像生成领域内的快速发展为拓扑优化的发展带来了机遇。扩散模型是一种无监督图像生成模型,因生成效果优秀、细节完美等特点等得到广泛使用。本文将在扩散模型的基础上提出新的网络结构,让其适应拓扑优化生成特性,根据特定信息生成与之对应的最优拓扑优化结果。 Topology optimization is a common mathematical method in the field of industrial design, aiming to generate the best topology structure in a physical field under various constraints, loads, and boundary conditions. Most of the traditional topology optimization methods are based on finite element method (FEM) the iterative calculation of which increases the time cost and the demand of computing power greatly. Nowadays, the rapid developments of machine learning and deep learning in the field of image generation have brought opportunities to improve topology optimization methods. Diffusion model is a kind of unsupervised image generation model. Since the model can generate images with more detail efficiently, it is widely used in different fields. In this paper, a novel model is proposed based on the diffusion model for topology optimization. Given the characteristic of topology optimization, this model can generate optimal topology structures according to their specific information.
拓扑优化是工业设计领域中常见的数学方法,旨在给定的物理领域内,满足各种约束条件、负载和其他边界条件等前提下,生成最佳的拓扑结构。传统的拓扑优化大多都依赖有限元方法(FEM),然而有限元方法的迭代计算很大程度上增加了拓扑优化的时间成本和算力成本。如今,机器学习和深度学习在图像生成领域内的快速发展为拓扑优化的发展带来了机遇。扩散模型是一种无监督图像生成模型,因生成效果优秀、细节完美等特点等得到广泛使用。本文将在扩散模型的基础上提出新的网络结构,让其适应拓扑优化生成特性,根据特定信息生成与之对应的最优拓扑优化结果。
DDIM,拓扑优化,U-NET,DeepLearning,SE-ResNet
Fuhao Cui1, Tao Jiang2, Jiachen Han1, Nan Zhang1, Chaoqing Ma1
1School of Computer and Control Engineering, Yantai University, Yantai Shandong
2Science & Technology Office, Yantai University, Yantai Shandong
Received: Dec. 6th, 2023; accepted: Dec. 29th, 2023; published: Jan. 5th, 2024
Topology optimization is a common mathematical method in the field of industrial design, aiming to generate the best topology structure in a physical field under various constraints, loads, and boundary conditions. Most of the traditional topology optimization methods are based on finite element method (FEM) the iterative calculation of which increases the time cost and the demand of computing power greatly. Nowadays, the rapid developments of machine learning and deep learning in the field of image generation have brought opportunities to improve topology optimization methods. Diffusion model is a kind of unsupervised image generation model. Since the model can generate images with more detail efficiently, it is widely used in different fields. In this paper, a novel model is proposed based on the diffusion model for topology optimization. Given the characteristic of topology optimization, this model can generate optimal topology structures according to their specific information.
Keywords:DDIM, Topology Optimization, U-Net, Deep Learning, SE-ResNet
Copyright © 2024 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
传统的拓扑优化方法主要包括固体各向同性材料惩罚法SIMP (Solid Isotropic Material with Penalization) [
随着机器学习和深度学习的快速发展以及图像生成技术的逐渐成熟,这使得深度学习和拓扑优化的跨学科结合也迫在眉睫。拓扑优化是一种寻找最优结构的设计方法,而深度学习则是一种强大的学习模型,可以从大量数据中学习复杂的映射关系。如果在拓扑优化中引入深度学习,可以利用其高维映射关系而无需迭代即可得到最优解的优势,大大降低时间成本和算力成本。具体来说,可以通过训练深度神经网络来学习已有的优化结果中的约束条件、物理信息和最优结构之间的隐式映射关系,然后通过这个映射关系实现预测。
优化结构的探索可分为三个步骤:直接从噪声中预测优化结构,使用少量迭代计算预测最终优化结构,在边界条件的监督下预测优化结构。生成对抗网络(Generative Adversarial Network, GAN) [
本文将提出TOuCD模型(Topology Optimization using Conditional Diffusion Modes),该模型是一种有监督模型,能够预测生成特定的结果,TOuCD的预测能力和效果将优于上述探索的结果,同时也比传统的拓扑优化方法更加节省算力成本
拓扑优化是一种用于寻找最优结构设计的数学方法。拓扑优化通常将结构的密度场 ρ 表示为介于0~1的值,即可将拓扑优化问题转化为连续优化问题。拓扑优化通过最小化结构材料的体积或重量,获得最佳材料分布。不仅可以帮助工程师设计出满足各种约束条件的优化结构,还能够降低实验成本。拓扑优化的目标函数大致可以表示为:
f ( x ) = { min x f ( x , h ( x ) ) s . t . { d e s i g n c o n s t r a int o n x s t a t e c o n s t r a int o n h ( x ) e q u i l i b r i u m c o n s t r a int (1)
x表示物理域的材料分布, h ( x ) 所有约束的条件集合。
SIMP是Bendsoe [
min x : f ( x ) = U T K U = ∑ e = 1 N ( x e ) p u e T k e u e s u b j e c t t o : V ( x ) V 0 = v f : K U = F : 0 < x min ≤ x ≤ 1 } (2)
式中,x为设计变量(物理域), U 是全局位移, K 为全局刚度矩阵, x e 单元物理域, p 是SIMP的惩罚系数, u e 单元位移, k e 单元刚度矩阵, V ( x ) 和 V 0 分别为材料体积和设计域体积,两个的比值为体积分数 v f ,F为受力载荷, x min 为最小体积。
DDPM (Denoising Diffusion Probabilistic Models)是Jonathan Ho [
如图1所示,DDPM在训练的过程中可分为两大环节:数据集加噪过程、模型训练(去噪过程)。从 X 0 到 X T 的过程就是数据集加噪过程,向定初始图像 X 0 中逐步添加高斯噪声,加噪过程持续 T 次,产生 T 个加噪图像。这一目的是破坏图像,理论上 T 越接近无穷大,图像 X T 越趋近于高斯噪声。
X T 到 X 0 的过程是去噪过程,该过程无法使用数学方法直接计算,因此需要训练出一个合适的网络模型对其逐步去噪,逐步从 X T − 1 , X T − 2 ,…,复原出没有噪声的原图像 X 0 。所以加噪过程可以看作在为去噪过程构建训练模型的数据集。
图1. DDPM模型流程图
DDIM [
TOuCD模型是扩散模型在拓扑优化领域中的首次探索。扩散模型是一种无监督图像生成模型,整个训练过程包括加噪和降噪两大部分。加噪过程是一种数学方法,通过添加入高斯噪声逐渐把原始图像变成质量较差的图像;去噪过程无法采用数学方法直接求出原始图像,因此通过训练合适的网络模型完成这个去噪任务。在扩散模型完成训练之后,即可从随机噪声生成类似与数据集的高质量图像,虽然生成图像质量优秀,但是由于其无监督信息的特点无法生成特定结果,因此无法适应拓扑优化的求解过程。为此本文尝试在扩散模型上加入监督信息以适应拓扑优化的需求,提出TOuCD。
如图2所示提出的TOuCD网络流程结构,此模型是建立在扩散模型的基础之上。由于DDIM加噪思想的先进性,无需逐步对原始图片进行加噪,可直接求出对原始图像 X 0 加噪t步的结果 q ( X _ 0 : t ) 。TOuCD和DDIM的最大不同点是DDIM的训练和预测都是一种无监督过程,仅是前者时刻和后者时刻的高维映射,而TOuCD在训练的过程中,加入了标签信息,图中 p ( X t | X t + 1 , l a b e l ) 是模型预测结果。加入的标签信息可以是拓扑优化中的体积分数、应力、应变等其他边界条件,为此本文测试了多种不同输入组合对最终结果的影响。正是这些监督信息的加入,在测试环节可以约束随机噪声生成拓扑优化想要的结果,让拓扑优化结果更有物理意义。
在数据集中每组标签信息对应一个拓扑优化结果,即原始图像 X 0 。加噪是对拓扑优化结构的处理,去噪过程就是对拓扑优化结果的逐步预测,在这个过程中每一步都有监督信息,测试环节也是如此。
图2. TOuCD网络流程结构示意图
网络模型如图3所示。TOuCD由时间编码(Time Embedding)、编码器(Encoder)、自注意力机制(Self Attention)和解码器四部分组成。网络的工作步骤如下:1) 时间编码,将标签信息、加噪图像 X t 和时间t编码为128 * 4的特征图,然后通过两个线性层和一个激活层。这一步是为了给监督信息和噪声图像加上时间戳,便于网络识别当前网络步数。2) 特征提取,编码器中逐层提取输入数据的特征信息,首先通过一个卷积层,再通过若干个残差模块和卷积层组合成的网络,这一步是将输入图像映射到低维度的特征空间进行数据分类以分析,目的是获取高纬度的语义信息。3) 自注意力机制,这一部分包含两个残差模块和一个自注意力模块,目的是更加有效的提取特征图像,从而提高网络生成效果。4) 图像还原,这一部分由若干个残差模块和卷积层组成,其中层数和特征提取层数相同,并且拥有和Unet模型类似的以跳接方式进行特征融合的步骤。这些网络层主要任务是:逐步恢复输入图像的低级特征并收集编码器提取的语义信息,将相关信息对应到生成图像的像素点上,最终输出生成的图像。
图3. TOuCD网络结构示意图
在实验中,模型选择Smooth L1损失函数,其公式如3所示。均方误差和绝对值误差是最常用于图像生成的损失函数,他们各自拥有自己的优缺点。绝对值误差损失函数的梯度值稳定,使得训练平稳;不易受离群点(脏数据)影响,所有数据一视同仁。但E = 0 (E表示预测值与生成值之间的差值)处不可导,可能影响收敛;E值小时梯度大,很难收敛到极小值,只能通过降低学习率提高其收敛效果。绝对值误差损失函数平滑可导、E较大时梯度大,收敛快;E较小时梯度小,容易收敛至极值点。但是训练初期E较大导致梯度大,更新幅度太大使得训练不稳定,容易出现梯度爆炸现象;受离群点影响大,容易在离群点的干扰下大幅更新,使拟合函数偏向离群点而导致准确率低。Smooth L1是这两个损失函数的结合体,在根据生成数据与参考数据之间差距选用不太计算方法。
L o s s ( x ^ l a b e l : t ) = { 0.5 ( x ^ l a b e l : t − x t ) 2 | x ^ l a b e l : t − x t | < 1 | x ^ l a b e l : t − x t | − 0.5 o t h e r w i s e (3)
式中, x ^ l a b e l : t 为在监督信息干预的情况下第t步骤的预测数据, x t 通过SIMP计算出来的拓扑优化结果并添加t步高斯噪声。
实验的具体设置和TOuCD模型的参数如下:batch设置为8,epoch的数量设置为240000,加噪步数根据实验设定,采用线性加噪方法,加噪程度区间[0.0001, 0.01],学习率为0.00002,网络采用Adam优化算法。相关实验在Ubuntu 20.04.5 LTS系统下运行,CPU :11th Gen Intel (R)Core(TM)19-11900K 3.50 GHz,内存:32 G,GPU:NVIDIA GeForce RTX 3090。
实验中本文将整个数据集的80%用于训练,20%用于测试。生成数据集主要采用SIMP和FEM的传统计算方法生成,并保存为图像。具体参数设置如下:
设计域:64 * 128网格单元。
体积分数:0.3~0.5之间的随机值。
荷载:荷载分别为x轴方向的力和y轴方向的力,大小均为1,在设计域上随机给出方向和位置。
应力、应变:基于上述条件,采用FEM有限元法生成。
拓扑结构:根据上述条件使用SIMP生成。
实验一
在实验中,设置加噪步数为500,监督信息为应变。训练测试结果如图4所示。图中结构效果较差,只有黑白分明的区域,这说明网络模型只明白了拓扑优化的任务需要保留可用的物理域,即黑色图像区域。出现这种情况的原因可能是加噪步数过少导致图与图间隔过大,模型不容易学到太多有效相关信息。为此计划通过修改部分参数重新训练测试。由于模型结果不佳,就不再展示损失函数效果图以及和其他模型结果对比表。
图4. 加噪500步测试结果展示图
实验二
在此次实验中,设置加噪步数为700,监督信息依然为应变。训练测试结果如图5所示。此次效果相对于实验一效果有明显提升,在图中可以看出,已经有部分结构的轮廓特征,其中少部分结果已经很接近拓扑优化结果,如图5中第四个展示图。这说明,网络模型生成能力进一步提高,已经开始学习应变到拓扑优化结构的高维映射,只是这种学习能力还比较弱。同时也说明此次实验调试方向是正确的,为此决定继续加大加噪步数。显然现在结果依旧不好,因此也不展示损失函数以及与其他模型的对比效果图。
图5. 加噪700步测试结果展示图
实验三
在此次实验中,设置加噪步数为1000,监督信息依然为应变。部分测试结果如图6所示,第一行图像展示的是SIMP方法计算出的结果,第二行图像展示的是模型预测出的结果。直观的去看,大部分生成结果符合拓扑优化的结构轮廓,而且基本没有噪音,这说明TOuCD模型可以完成传统的拓扑优化。同时也可以发现,在预测结构中发现出现了部分不属于结构中的部分,比如图6中部分预测结果出现了类似于边框的细线,同时预测结构的体积略大与参考结构的体积,因此暂时推测,由于没有考虑预测结构的体积分数导致这种情况的产生,为此打算在下次实验中,通过加入体积分数观察这种情况是否解决。
图6. 测试结果展示图
损失函数如图7所示,图中展示了前6200 epoch损失函数结果。通过观察曲线,可以明显看出模型快速收敛,在2000个步骤之后,损失函数开始趋于稳定,并在允许的误差范围内波动,这表明模型已经取得了相对稳定的性能。表1中展示了TOuCD和其他模型预测结果的对比,可以看出TOuCD模型暂时落后其他两个模型,因此TOuCD还需要进一步优化。
图7. TOuCD损失函数
cGAN [
|
Topology GAN [
|
TOuCD | |
---|---|---|---|
MAE | 0.181095 | 0.078112 | 0.231374 |
MSE | 0.175226 | 0.074603 | 0.196078 |
表1. TOuCD和其他模型预测结果的对比
实验四
为了验证实验三中的猜想,本次实验修改了网络模型输入和部分参数。监督信息改为应变和体积分数,其他条件保持一致。由于在实验三中,模型预测效果已经比较好,所以两个实验最大的差距在细节部分,这此次实验中,改善了体积略大的问题,以及在边缘处出现不应该存在的物理结构。图8展示了本次实验的部分结构示意图。图中第一个行图像表示金标准数据可视化结果,第二行图像是预测模型预测结构的可视化效果图。在视觉上,预测数据和真实数据已基本吻合,也没有不该存在的物理域存在情况,说明这次模型调试比较成功,之前问题也基本解决。
图8. 测试结果展示图
在实验三中,观察到模型的预测能力相对逊色,与其他两个模型相比表现不佳。因此,在这次的预测中,再次与这两个模型进行对比,并将对比结果总结在表2中,以便更清晰地展示模型之间的性能差异。数据显示TOuCD预测能力已经超越cGAN的预测能力,虽然此次模型预测效果依旧逊色与TopologyGAN,但是TOuCD预测的拓扑优化结构轮廓更加完美,也没有像TopologyGAN出现不属于拓扑结构的噪声,也没有出现类似于TopologyGAN的噪音。实验后,把TopologyGAN预测结果、TOuCD预测结果与真实拓扑结构做了对比,最终发现TopologyGAN预测结果在体积分数上的表现能力依旧比TOuCD生成能力更强,这可能导致TopologyGAN在数据上看起来更好的原因。
cGAN | TopologyGAN | TOuCD | |
---|---|---|---|
MAE | 0.181095 | 0.078112 | 0.098732 |
MSE | 0.175226 | 0.074603 | 0.096843 |
表2. TOuCD和其他模型预测结果的对比
图9是本实验的损失函数展示图,图中展示了前6200 epoch损失函数结果。通过观察曲线,可以明显看出模型快速收敛,在2000个步骤之后,损失函数开始趋于稳定,并在允许的误差范围内波动,这表明模型已经取得了相对稳定的性能。其整体效果和实验三比较相似,都是快速收敛并趋向于稳定,只有损失函数的波动频率和幅度略有不同,出现这种情况的原因可能是加入体积分数后引起的,整体趋势相同可能是拓扑结构受应变的影响比较大。
图9. TOuCD损失函数
本文详细阐述了扩散模型的应用领域以及其特点。接着,介绍了为了满足拓扑优化需求而对模型架构进行的相应调整,以及模型重要参数和损失函数。最后,相继进行四个实验逐步升级改进,成功使TOuCD模型预测出拓扑优化结构。但是该模型在数据预测中需要预测1000步,虽然已经很大的节省了时间算力,但这不代表没有上升空间,在未来的工作中我们将会从损失函数和网络模型两个方面继续探索这种跨学科结合,进一步提升预测能力。
本研究在烟台市科技创新计划项目2022XDRH016支持下完成。
崔富豪,姜 滔,韩佳辰,张 楠,马朝青. 基于扩散模型的拓扑优化研究 Topology Optimization Based on Diffusion Model[J]. 传感器技术与应用, 2024, 12(01): 16-26. https://doi.org/10.12677/JSTA.2024.121003
https://doi.org/10.1007/s001580050176
https://doi.org/10.1016/j.cma.2020.113453
https://doi.org/10.1007/s00158-020-02685-2
https://doi.org/10.1007/s11042-019-08493-1
https://doi.org/10.1016/S0045-7825(02)00559-5
https://doi.org/10.1016/j.ijheatmasstransfer.2018.08.036
https://doi.org/10.1016/0045-7825(88)90086-2
https://doi.org/10.1016/j.camwa.2018.08.007
https://doi.org/10.1016/j.advengsoft.2017.12.002
https://doi.org/10.1007/978-1-4471-0985-3_2
https://doi.org/10.1007/s11831-016-9203-2
https://doi.org/10.1103/PhysRevLett.124.086102
https://doi.org/10.1109/MSP.2017.2765202
https://doi.org/10.1109/JAS.2017.7510583
https://doi.org/10.1515/rnam-2019-0018
https://doi.org/10.1115/1.4052757
https://doi.org/10.1007/s00158-018-2101-5
https://doi.org/10.1007/BF01650949
https://doi.org/10.1115/1.4049533