Page 184 - 《应用声学》2025年第3期
P. 184
718 2025 年 5 月
每一行的对角线元素给出了第ξ 次迭代时对应
X Y
维数的反演参数的试步长。G ξ 为 X Ā X Y Ā Y
Ӝᦡిϙs
X r Y r
G ξ = G 0 = [I, −I] , (17) ̄ѬڏQ
式(17)中,I 为l 阶单位矩阵,G ξ 在整个反演过程中 图 6 二分图匹配模型
保持不变。χ ξ 的每一列都用来扰动当前的模型 p ξ , Fig. 6 Bipartite graph matching model
因此第ξ 次迭代将产生2l 个试验模型,其中一个是:
Kuhn-Munkres算法求解步骤:
j
j
p = p ξ + χ . (18) 步骤1 初始化可行顶标的值。
ξ
对于 Q 中的任意一个节点,给定一个函数
j
利用 χ ξ 的 j 列对 p ξ 进行扰动,生成试模型 p ,
f(node) 求出结点的顶标值。 规定 f x (x) 和 f y (y)
将这些试模型的最小目标函数值与当前模型 p ξ 的
分别记录集合 X 和 Y 中的结点顶标值,初始设
目标函数进行比较,得到模型更新的规则如下:
定 f x (x i ) 的值为与 x i 关联边 e(x i , y i ) 的最大权值
p ξ+1 = p = p ξ + χ , φ(p ) < φ(p ξ ), s(x i , y i ),令 f y (y i ) = 0,满足 f x (x i ) + f y (y i ) >
min min min
ξ
p ξ+1 = p ξ , φ(p ) > φ(p ξ ),
min s(x i , y i )。
(19) 步骤 2 使用 Kuhn-Munkres 算法寻找相等子
图的完美匹配。
其中,p min 为各试验模型中目标函数值最小的模型。
( min ) Kuhn-Munkres 算法采用增广路径求最大匹
如果 φ p < φ (p ξ ),步长将被扩大或保留;反
配,通过寻找一条增广路径O,在取反操作获得更大
之,减小步长以重复,即:
的匹配,直至找不到增广路径为止。
α ξ+1 = λα ξ , λ > 1, 步骤3 修改可行顶标的值。
(20)
α ξ+1 = θα ξ , 0 < θ < 1,
对于访问过的顶点 x,将它的可行顶标减去
d = min{f(x) + f(y) − s(x i , y i )},而对于所有访问
其中,λ为大于等于1的膨胀系数,θ 为小于1的收缩
过的顶点y 的可行顶标增加d。
系数。
重复步骤2和步骤3,直到找到完备匹配为止。
按照式 (15)∼(20) 开始迭代,使得目标函数值
不断减小,迭代的终止条件:(1) 达到最大迭代次数; 2 数值测试
(2) 达到最小目标函数值;(3) 横波速度或厚度步长
小于收敛容差。 Scholte 波场模拟采用交错网格时域有限差分
法,流体层上界面为自由表面,将流体层剪切模量
1.2.3 Kuhn-Munkres算法
设置为零以满足流固边界 [20] ,模型大小为 100 m×
Kuhn-Munkres 算法 [18−19] 被提出来解决最优 100 m,空间网格大小为0.5 m,时间步长为0.0001 s,
分配问题,其实际上是一种加权二分图的最大匹配 设置主频为 30 Hz、脉冲宽度为 0.1 s 的余弦包络作
问题。在迭代过程中从模型 p中计算出的频率 f i 处 为声源函数来激励垂直振动,声源时域波形及频谱
的理论频散曲线 V theo (f i , p) 作为理论值与人工合 如图 7 所示,声源位于流固界面 (0,50) 处,检波器
成的频散数据 V obs (f i ) 作为观测值来构造一个加 按照线阵排列在流固界面上 (图 1),最小偏移距为
权二分图 Q 来寻找匹配方案,通过将观测值的顶点 10 m,道间距为 5 m,共 19 道接收垂直分量的时域
与特定频率下使用的理论值的顶点连接起来,通过 信号,采样率为 0.001 s,每道 500 个采样点,共记录
观测值与理论值之间的 L 2 范数导出的距离来确定 0.5 s,三类固体模型均采用上述参数。
边缘的权值 s,使观测值与理论值之间的差异最小 提频散方法采用 Matrix pencil 算法 [21] ,首先
化。图 6 给出了二分图 Q 匹配模型,观测值和理论 对合成波形数据进行快速傅里叶变换,将时域信号
值的顶点分别放在集合 X = {X 1 , X 2 , · · · , X r } 和 转换到频率域,然后根据频谱构建 Hankel 矩阵,最
Y = {Y 1 , Y 2 , · · · , Y r }中,然后,通过Kuhn-Munkres 后通过自适应速度窗挑选频率点速度范围限定的
算法得到集合X和Y的匹配关系。 频散曲线。