这里写自定义目录标题
用于求解二维磁场的物理约束的神经网络(论文学习笔记)
文章标题:Physics-Informed Neural Networks for Solving Two-Dimensional Magnetostatic Fields
原文链接:https://ieeexplore.ieee.org/abstract/document/10141630.
第一作者单位:之江实验室,北京研究中心
摘要
物理信息神经网络(PINN)在电气工程中的逆设计和参数设计问题上显示出巨大潜力。此外,关于 PINN 的现有著作大多致力于计算流体,很少有人关注电气工程应用中的多介质静态和低频电磁近场。本研究提出了一种用于求解电磁设备和系统中二维(2D)静态磁场的 PINN。磁场强度和磁矢量势通过训练神经网络求解,神经网络将偏微分方程和边界条件编码为残差。消除了对 PINN 训练产生负面影响的介质构成的参数空间导数的计算。为了进一步提高 PINN 的性能,还提出了一种网格辅助非均匀采样法来选择配点。在两个二维静磁场案例研究中,通过比较 PINN 与有限元法的结果,验证了所提出的 PINN。预计这项工作将促进 PINN 在电磁设备和系统的建模、数值分析和参数化设计中的进一步应用。
1.引言
对PINN的综述
\fbox{对PINN的综述}
对PINN的综述物理信息神经网络(PINN)是一种新兴的深度学习方法,它利用自动微分将偏微分方程(PDE)、边界条件(BC)和/或初始条件编码到神经网络中,并通过最小化优化问题的损失函数来解决边界值问题[1]-[2]。PINNs 在计算流体[3]、电力系统[4]、生物医学工程[5]以及各学科逆问题[6]-[8]中的应用近来已得到广泛探索。据报道,与传统的科学计算方法相比,PINN 在解决非线性问题方面显示出强大的能力,并具有高时空分辨率[9]和无时间步进[10]等优势。
PINN在电磁领域的应用以及存在的问题
\fbox{PINN在电磁领域的应用以及存在的问题}
PINN在电磁领域的应用以及存在的问题PINN 在求解电磁设备和系统中的二维磁场时也很有吸引力 [11]-[13]。由于 PINN 的计算成本不随定位点数量的增加而增加,因此 PINN 有助于减轻传统求解器在求解高维问题时所需的计算成本[1]。此外,通过利用先进的随机优化方法和并行计算硬件,逆问题和参数设计问题可以很容易地纳入 PINN 框架并求解[11],[14]。然而,PINN 在解决电磁系统中的磁场问题时仍面临一些困难。首先,电磁设备和系统的计算域通常由不同介质组成,而传统的磁矢量势求解方案需要对内边界的构成参数进行空间导数求导,难以确定,可能导致 PINN 训练的不稳定性。此外,对于构成参数依赖于场的非线性介质,人们必须在训练历元中反复评估构成参数的空间导数,这大大降低了 PINN 训练的速度。其次,[11] 提出可以使用域中的负耦合场共能而不是 PDE 作为损失函数,以避免构成参数的空间导数。然而,这种损失函数的评估需要多次积分,导致训练时间过长。时间维度也很难纳入这种基于能量的损失函数。第三,广泛使用的采样方法会在整个计算域生成均匀分布的定位点,但这种方法可能无法准确有效地捕捉电磁场的所有细节。有人提出了基于残差的自适应细化(RAR)方法,通过在梯度快速变化区域自适应地添加新的配准点并重新训练来提高训练效率[15]。然而,RAR 方法由于需要重复训练,因此训练时间较长。总之,用于电磁近场计算的 PINN 尚处于早期阶段。
对本文内容的概括
\fbox{对本文内容的概括}
对本文内容的概括 为了解决上述问题,我们提出了一种用于计算二维磁静力场的 PINN。磁场强度和磁矢势同时求解,并消除了构成参数的空间导数。为了进一步提高 PINN 的精度,还提出了一种网格辅助配位点采样方法。通过比较 PINN 与有限元法(FEM)的计算结果,对 PINN 进行了验证。所提出的 PINN 可以很容易地扩展到非线性问题、多物理耦合问题、逆向和参数设计问题以及时域和复杂频域计算中。
2.用于二维磁静电场计算的 PINN
A.边界值问题
忽略位移电流密度,就可以得出磁静电场的安培定律:
∇
×
H
=
J
i
(1)
\nabla \times H = {J_i}\tag{1}
∇×H=Ji(1)
公式中
J
i
{J_i}
Ji是感应电流密度。静磁情况下不包括涡流密度。磁场强度
H
H
H与磁矢势
A
A
A的关系为:
μ
0
μ
r
H
=
B
=
∇
×
A
(2)
{\mu _0}{\mu _r}H = B = \nabla \times A\tag{2}
μ0μrH=B=∇×A(2)
其中,
μ
r
{\mu _r}
μr是相对磁导率,
B
B
B是磁通密度。其他方法,如磁化法[13],也可用于表征材料的磁性能。对于直角坐标系中的二维情况,(1)和(2)可扩展为:
(
∂
H
y
/
∂
x
−
∂
H
x
/
∂
y
)
=
J
i
(3)
\left( {\partial {H_y}{\rm{/}}\partial x - \partial {H_x}{\rm{/}}\partial y} \right) = {J_i}\tag{3}
(∂Hy/∂x−∂Hx/∂y)=Ji(3)
{
μ
0
μ
r
H
x
=
∂
A
/
∂
y
μ
0
μ
r
H
y
=
−
∂
A
/
∂
y
(4)
\begin{cases} {\mu _0}{\mu _r}{H_x} = \partial A{\rm{/}}\partial y \\ {\mu _0}{\mu _r}{H_y} = - \partial A{\rm{/}}\partial y \end{cases}\tag{4}
{μ0μrHx=∂A/∂yμ0μrHy=−∂A/∂y(4)
其中下标表示每个方向上的分量。(3)-(4)中的磁场强度
H
x
{{H_x}}
Hx
H
y
{{H_y}}
Hy、 和磁矢势
A
A
A是通过PINN同时求解的。显然,(3)-(4)中不包括构成参数的空间导数。此外,还需要
H
x
{{H_x}}
Hx
H
y
{{H_y}}
Hy 和
A
A
A的边界条件:
A
∣
Γ
=
0
,
H
n
∣
Γ
=
0
(5)
A{\mid _{\rm{\Gamma }}} = 0,{H_n}{\mid _{\rm{\Gamma }}} = 0\tag{5}
A∣Γ=0,Hn∣Γ=0(5)
并且(3)-(5) 是要解决的边界值问题。
B.PINN用于二维磁场计算
图 1 是 PINN 的示意图。首先,构建一个神经网络(NN)来逼近 BVP 的解。神经网络的输入是计算域中采样的配准点的空间坐标,输出是
H
x
{{H_x}}
Hx
H
y
{{H_y}}
Hy 和
A
A
A。然后重申 (3)-(5) 的残差形式
{
r
e
s
1
=
(
∂
H
y
/
∂
x
−
∂
H
x
/
∂
y
)
−
J
i
r
e
s
2
=
μ
0
μ
r
H
x
−
∂
A
/
∂
y
r
e
s
3
=
μ
0
μ
r
H
y
+
∂
A
/
∂
y
(6)
\begin{cases} {re{s_1} = \left( {\partial {H_y}{\rm{/}}\partial x - \partial {H_x}{\rm{/}}\partial y} \right) - {J_i}} \\ {re{s_2} = {\mu _0}{\mu _r}{H_x} - \partial A{\rm{/}}\partial y} \\ {re{s_3} = {\mu _0}{\mu _r}{H_y} + \partial A{\rm{/}}\partial y} \end{cases}\tag{6}
⎩
⎨
⎧res1=(∂Hy/∂x−∂Hx/∂y)−Jires2=μ0μrHx−∂A/∂yres3=μ0μrHy+∂A/∂y(6)
r
e
s
4
=
A
∣
Γ
,
r
e
s
5
=
H
n
∣
Γ
,
.
.
.
(7)
{res_4} = A{\mid _{\rm{\Gamma }}},{res_5} = {H_n}{|_\Gamma },...\tag{7}
res4=A∣Γ,res5=Hn∣Γ,...(7)
然后利用残差计算损失函数。(6)-(7) 中的空间导数是通过自动微分(AD) [2] 获得的。AD 利用链式法则和反向传播计算 NN 输出相对于 NN 输入的单流导数,从而得到
H
x
{{H_x}}
Hx
H
y
{{H_y}}
Hy 和
A
A
A的空间导数。与有限差分法相比,AD 既高效又具有数值稳定性[2],能更好地与神经网络配合。图 1 中不包括磁阻的空间导数。
接下来,计算神经网络的损失。计算域内部和外部边界上的配准点训练集分别记为
S
f
{{S_f}}
Sf和
S
b
{{S_b}}
Sb。残差的
L
2
{L^2}
L2范数为:
{
L
f
i
=
1
∣
S
f
∣
∑
(
x
,
y
)
∈
S
f
∥
r
e
s
(
x
,
y
)
i
∥
2
2
L
b
j
=
1
∣
S
b
∣
∑
(
x
,
y
)
∈
S
b
∥
r
e
s
(
x
,
y
)
j
∥
2
2
(8)
\left\{ {\begin{array}{ccccccccccccccc}{{L_{fi}} = \frac{1}{{\mid {S_f}\mid }} \sum \nolimits_{(x,y) \in {S_f}} \parallel res{{\left( {x,y} \right)}_i}\parallel _2^2}\\{{L_{bj}} = \frac{1}{{\mid {S_b}\mid }} \sum \nolimits_{(x,y) \in {S_b}} \parallel res{{\left( {x,y} \right)}_j}\parallel _2^2}\end{array}} \right.\tag{8}
{Lfi=∣Sf∣1∑(x,y)∈Sf∥res(x,y)i∥22Lbj=∣Sb∣1∑(x,y)∈Sb∥res(x,y)j∥22(8)
公式中
L
f
i
{{L_{fi}}}
Lfi表示第
i
i
i个偏微分方程残差的
L
2
{L^2}
L2范数,
L
b
j
{{L_{bj}}}
Lbj表示第
j
j
j个边界条件残差的
L
2
{L^2}
L2范数,
∣
S
f
∣
{\mid {S_f}\mid }
∣Sf∣和
∣
S
b
∣
{\mid {S_b}\mid }
∣Sb∣是
S
f
{{S_f}}
Sf和
S
b
{{S_b}}
Sb的绝对值。然后损失函数
L
L
L被定义为
L
f
i
L_{fi}
Lfi和
L
b
L_b
Lb的加权和:
L
=
∑
i
ω
f
i
L
f
i
+
∑
j
ω
b
j
L
b
j
(9)
\begin{array}{rrrrrrrrrrrrrrr}{L = \sum \limits_i {\omega _{fi}}{L_{fi}} + \sum \limits_j {\omega _{bj}}{L_{bj}}}\end{array}\tag{9}
L=i∑ωfiLfi+j∑ωbjLbj(9)
公式中
ω
\omega
ω是权重因子。
最后,Adam、随机梯度下降和L-BFGS等优化器用于最小化
L
L
L,并更新神经网络中所有神经元的权重和偏置。通过最小化
L
L
L,训练出的NN输出满足(3)-(5),从而解决了BVP。训练完成后,就可以通过 NN 的前向传播(预测)获得任意位置
(
x
,
y
)
(x, y)
(x,y)的场解。
值得一提的是,通过添加时间坐标作为神经网络的额外输入,提出的PINN 可以轻松扩展到时域计算[15]。时域导数与空间导数的获取方式相同,无需采用耗时的时间步进方案。此外,通过使用未知数的实部和虚部作为神经网络输出,所提出的 PINN 还可以扩展到复频域计算。
∇
×
(
1
/
μ
0
μ
r
)
∇
×
A
=
J
i
(10)
\nabla \times (1{\rm{/}}{\mu _0}{\mu _r})\nabla \times A = {J_i}\tag{10}
∇×(1/μ0μr)∇×A=Ji(10)
与许多传统线性求解器一样,在计算域中存在多种介质的情况下,磁阻无法移出旋度算子。由于自动微分无法计算公式(10)中磁阻的空间导数,因此必须使用有限差分来计算。介质边界附近磁阻的急剧变化会导致导数过大,对 PINN 训练的稳定性产生负面影响。此外,对于非线性磁介质,如软铁氧体,其磁导率取决于磁场。由于磁场解在每个训练时程中都会更新,因此必须在每个训练时程中重新计算所有定位点的磁阻空间导数,这非常耗时。因此,使用 (3) 和 (4) 所提出的 PINN 比使用 (10) 的 PINN 更稳定,计算效率更高。
C.网格辅助非均匀采样
配点的选择对 PINN 的训练和计算精度有重大影响。广泛使用的方法,如 Hammersley 序列,会在整个计算域随机生成均匀分布的配准点。然而,这些方法并没有利用计算域几何形状的先验信息。如图 2(a)所示,在磁静电场计算中,
Ω
\Omega
Ω是一个由电流源和磁性材料组成的代表性域。如果对
Ω
\Omega
Ω采用简单的均匀采样方法,大量的定位点位于远离源的气罩中,由于对源附近的重要解的训练不足,导致计算精度降低。
为了解决这个问题,我们提出了一种非均匀采样方法。首先,从
Ω
\Omega
Ω中分离出一个子域
Ω
′
\Omega'
Ω′ 。如图 2(a)所示,磁场主要集中在
Ω
′
\Omega'
Ω′,其余部分只包含空气,称为
Ω
a
i
r
\Omega_{air}
Ωair。为了捕捉磁场的细节, 中需要较高的采样密度,而 中则需要较低的采样密度,以避免
Ω
′
\Omega'
Ω′中的定位点训练不足。
S
t
o
t
a
l
=
S
′
∪
S
a
i
r
∪
S
m
e
s
h
(11)
{S_{total}} = S' \cup {S_{air}} \cup {S_{mesh}}\tag{11}
Stotal=S′∪Sair∪Smesh(11)
基于训练集
S
t
o
t
a
l
S_{total}
Stotal,可以实施自适应采样[15]和加权采样等技术来进一步增强PINN的训练性能。
总而言之,为了实现所提出的PINN方法,首先使用低差异方法在计算域中进行采样,然后生成 FEM 网格并使用(11)获得训练集。 然后将 BVP 公式化为 PINN 的剩余部分,如 (6)-(7) 所示。 最后通过网络训练得到BVP的解。
3.数值验证
实验的模型是基于DeepXDE代码搭建的 \fbox{实验的模型是基于DeepXDE代码搭建的} 实验的模型是基于DeepXDE代码搭建的为了验证所提出的 PINN 方法,我们解决了两个案例研究。在这两个案例中,PINN 都是使用带有 PyTorch 后端的 DeepXDE 软件包[15]构建的。一个全连接神经网络(FNN)被用来近似现场解决方案。FNN 由 3 个隐藏层组成,每个隐藏层有 800 个神经元。tanh 函数被用作激活函数。通过硬约束法 [15] 强化了 Dirichlet 边界条件。(9) 中权重系数的选择是为了使所有残差规范保持在同一量级。训练结束后,在计算域的均匀网格上对 800 个均匀采样点计算 PINN 和 FEM 解之间的相对误差:
e r r = n o r m ( F E M − P I N N ) / n o r m ( F E M ) (12) err = norm(FEM - PINN){\rm{/}}norm(FEM)\tag{12} err=norm(FEM−PINN)/norm(FEM)(12)
为了测试 PINN 的鲁棒性并消除随机性,在每种情况下都使用重新生成的网格独立重复训练 10 次。
A.案例研究:电机开槽
为了验证所提出的 PINN 方案,我们首先研究了一个带有两种材料(一种是空气,一种是导体)的简单电机槽。电机槽的 x-y 截面如图 3 所示。为简化起见,假设磁芯的磁导率为无限大。线圈的外部电流密度为
J
i
=
250
A
/
c
m
2
J_i=250 A/cm^2
Ji=250A/cm2,边界条件如图 3 所示。使用哈默斯利序列法对配准点进行均匀采样。为了获得更好的训练稳定性,首先使用 Adam 算法训练 PINN 95000 个 epochs,然后使用 L-BFGS 算法训练 PINN 100000 个 epochs。
损失函数
L
L
L的收敛轨迹如图 4(a)所示,表明 PINN 训练已经收敛。如图 4(b)所示,拟议的 PINN 获得了令人满意的计算结果。绝对误差如图 4(c)所示,最大绝对误差仅为 8.86 μWb/m。此外,10 次独立训练的平均相对误差为 0.17%。因此,可以得出结论,利用(3)和(4)作为训练残差的 PINN 是稳定的,即使没有网格辅助配位采样的帮助,也能达到令人满意的精度。
B.案例研究:E型变压器
为了进一步验证 PINN 的性能和网格辅助取样方法,我们计算了带有多种磁介质的 E 型变压器的磁静电场。变压器的 x-y 截面图如图 5 所示。计算域由相对磁导率
μ
r
=
100
μ_r=100
μr=100的磁芯和电流密度
J
i
=
1000
A
/
c
m
2
J_i=1000 A/cm^2
Ji=1000A/cm2的线圈组成。根据 E 型变压器的对称性,只对其一半进行建模,对称轴为 O-Y。由于磁静电场的快速衰减,在模型外放置了一个大的气罩来截断无限空间,气罩上的边界条件如图 5 所示。根据磁静电场衰减遵循平方反比定律的事实和我们的数值实验,建议气罩的大小约为主体结构的 4 倍。
可以根据此来设置PMD仿真的空气域环境
\fbox{可以根据此来设置PMD仿真的空气域环境}
可以根据此来设置PMD仿真的空气域环境为了获得更好的训练稳定性,首先使用 Adam 算法对 PINN 进行了 26000 个 epochs 的训练,然后使用 LBFGS 算法进行了 300000 个 epochs 的训练。
为了验证所提出的网格辅助非均匀采样方法,我们生成了 3 个训练集。首先,使用Hammersley序列法对整个计算域进行均匀采样,如图 6(a) 所示。其次,从计算域中分离出一个子域
Ω
′
\Omega'
Ω′,然后使用Hammersley序列法生成配点,在
Ω
′
\Omega'
Ω′和域的其他部分采用不同的采样密度,如图 6(b)所示。第三种方法是使用有限元网格对计算域进行离散化处理,如图 6(c)所示,然后使用建议的网格辅助非均匀采样方法生成训练集,结果如图 6(d)所示。图 6(a)和(b)中的配点数量比较接近,图 6(d)中的配点数量最少。
然后分别使用图 6(a)、(b)和(d)中的训练集对 PINN 进行训练,每个训练集独立重复 10 次。损失函数
L
L
L的代表性轨迹如图 7 所示,表明使用所有 3 个训练集进行的 PINN 训练收敛性良好。图 8 (a) (
c
c
c)和(e)是计算出的矢量势能图,可以看出使用所有 3 个训练集都获得了良好的计算结果。图 8(b)、(d)和(f)显示的绝对误差仅在边角处相对较大。均匀采样法的最大绝对误差为 2.36 μWb/m,子域采样法为 2.53 μWb/m,网格辅助非均匀采样法为 2.69 μWb/m。虽然网格辅助采样法的最大绝对误差最大,但这些误差高度集中在边角处。此外,使用图 6(a)和(b)中的配准点(即不包含几何信息)得到的解显然在电流源附近训练不足,导致线圈区域附近的误差相对较大,这一点在图 8(b)和(d)中得到了清晰的展示。相比之下,图 6(d) 中包含有限元网格的定位点有助于减少整个计算域的总体绝对误差,如图 8(f) 所示。表 1 进一步评估了计算结果的平均相对误差。结果表明,网格辅助非均匀采样法的相对误差最小,精度最高。还测试了多个配点数量接近的相似有限元网格,结果与图 8(e)-(f) 和表1中的结果非常相似。
总之,可以确认所提出的 PINN 在多磁介质的复杂情况下达到了令人满意的精度,而且所提出的网格辅助非均匀采样方法有助于进一步提高 PINN 的性能。值得注意的是,网格辅助采样的配点最少。换句话说,所提出的网格辅助采样方法能以更少的计算资源获得更好的结果。
训练集 | Value |
---|---|
非均匀采样 | 2.286% |
子域采样 | 1.196% |
网格辅助的采样 | 0.816% |
4.结论
本文介绍了一种用于计算电磁设备静磁场的 PINN。磁矢势和磁场强度同时求解,消除了导致 PINN 精度下降的磁阻空间导数。提出了一种网格辅助非均匀配点采样方法,为 PINN 提供计算域几何形状的先验信息。在两个案例研究中对所提出的 PINN 的精度进行了测试和验证。在所提出的 PINN 的基础上,可以广泛探索高级网络架构和技术,如残差神经网络 (ResNet) 和输入编码层,以进一步提高 PINN 的性能。需要注意的是,我们需要针对不同的 BVP 对 PINN 进行重新训练。要将网络推广到所有 BVPs 类别,需要进行算子学习和迁移学习,而这并不包括在本研究中。这项工作有助于 PINN 在电气工程电磁设备和系统的数值分析和参数化设计中的应用。
参考文献
[1] The Old and the New: Can Physics-Informed Deep-Learning Replace Traditional Linear Solvers?
说明:提出将旧的传统线性求解器方法与新出现的深度学习技术相结合的混合策略。
[2] Automatic Differentiation in Machine Learning: a Survey
说明:关于自动微分的综述,提供了代码。
[3] Physics-informed neural networks (PINNs) for fluid mechanics a review
用于流体力学的物理信息神经网络(PINNs)综述
[4] Applications of Physics-Informed Neural Networks in Power Systems - A Review
PINN在电力系统中的应用。
[5] Systems biology informed deep learning for inferring parameters and hidden dynamics
PINN在生物医学工程领域的应用
[6] Physics-informed neural networks for solving forward and inverse flow problems via the Boltzmann-BGK formulation
PINN应用于计算流体力学
[7] Physics-informed neural networks for diffraction tomography
用于衍射断层成像的物理信息神经网络
[8] A Physics-Informed Neural Network for Quantifying the Microstructural Properties of Polycrystalline Nickel
量化多晶镍微观结构特性的物理信息神经网络
[9] MESHFREEFLOWNET A Physics-Constrained Deep Continuous Space-Time Super-Resolution Framework
物理约束的深度连续时空超分辨率框架
[10] A Deep Learning-Based Particle-in-Cell Method for Plasma Simulations
等离子体仿真
[11] Physics-informed neural networks for solving parametric magnetostatic problems
用于解决参数磁静力问题的物理信息神经网络
[12] Physics informed neural networks for electromagnetic analysis
PINN用于电磁分析
[13] Magnetostatics and micromagnetics with physics informed neural networks
使用PINN求解静磁学和微磁学问题
[14] Physics-informed neural networks with hard constraints for inverse design
非开源期刊,收费下载
[15] DeepXDE: A deep learning library for solving differential equations
本文代码的重点参考文献,涉及自适应采样技术。