Design Method of Ferroelectric Field Effect Transistor Polymorphic Gate Based on Immune Algorithm
-
摘要: 应用于硬件安全领域的多态电路对于除金属氧化物半导体场效应晶体管(MOSFET)外的新器件的研究较少,往往只有少数几个设计实例,缺乏一般化的研究方法和多态门设计平台。面向铁电场效应晶体管(FeFET)器件,该文提出一种多态门设计方法。该方法利用免疫算法,将基于FeFET的多态门电路生成问题归结为生物代际演化过程。该文利用C++语言平台和Hspice仿真工具实现了完整的FeFET多态门设计算法,结合具体的工艺和电路模型搭建了多态门的设计平台。实验结果表明,该设计方法可有效地生成出基于FeFET的多态电路,其所生成的多态门电路可实现温度、电源电压和外部信号多种控制方式。Abstract: The research on polymorphic circuits applied to the field of hardware security for new devices other than Metal Oxide Semiconductor Field-Effect Transistors (MOSFET) is relatively limited, often with only a few design examples, lacking general research methods and polymorphic gate design platforms. A polymorphic gate design method based on Ferroelectric Field Effect Transistor (FeFET) devices is proposed. Immune algorithms are used to attribute the generation problem of polymorphic gate circuits based on FeFET to the process of biological intergenerational evolution. A complete FeFET polymorphic gate design algorithm is implemented by combining the C++language platform with the Hspice simulation tool. Combining specific process and circuit models, a design platform for three types of polymorphic gates controlled by temperature, power supply voltage, and external signals is constructed. The results indicate that this design method can effectively generate FeFET based polymorphic circuits, and the generated polymorphic gate circuits can achieve multiple control methods for temperature, power supply voltage, and external signals.
-
1. 引言
目标跟踪是一种利用传感器原始量测信息获取实时目标运动状态的数据处理方法,该方法广泛应用于军事监测、航空航天、智能交通等诸多领域。非线性滤波是目标跟踪的常见手段之一,标准的非线性滤波方法只考虑随机误差的干扰,因此当传感器存在测量偏差[1,2]时,且测量偏差远大于随机误差时,目标跟踪精度将急剧恶化。
为提升测量偏差存在时的目标跟踪精度,文献[3]利用最大似然和期望最大化(Expectation-Maximization, EM)方法实现对多个传感器的测量偏差和单目标状态的联合估计,但该方法采用离线方式对量测数据进行批处理,在一些特定场景下,不满足实时性需求;文献[4]将目标状态和测量偏差联合扩维形成增广状态向量,利用卡尔曼滤波实现二者的实时估计;针对传感器时间非同步问题,文献[5]设计了一种两步融合的方法来同时估计目标状态和测量偏差。上述方法均假设同一目标可被多个传感器观测到,从而利用多个传感器与目标之间的位置关系建立估计方程,并不适用于单一传感器场景。
针对单传感器场景下的有偏量测目标跟踪问题,文献[6]利用变分贝叶斯理论设计了一种带有偏差检测与消除机制的非线性卡尔曼滤波方法,可在偏差恒定或突变的场景下对目标状态进行实时有效估计,但是该方法假设量测噪声协方差已知,在实际应用中具有一定的局限性;文献[7]提出了一种新的鲁棒卡尔曼滤波方法,该方法同时考虑了时变的测量偏差和厚尾量测噪声,将测量偏差和厚尾噪声联合建模为学生T逆Wishart分布,利用变分贝叶斯方法求解后可实时估计目标状态和测量偏差,但从实验结果可以看出,其对偏差的估计有一定的时间延迟;针对传感器存在未知测量偏差的欠观测系统,文献[8]提出一种增量卡尔曼滤波方法,该方法利用测量偏差恒定不变或缓变的性质,通过相邻时刻量测差分的方式消除未知偏差,同时构建增量量测方程,并推导了新的滤波方程。文献[9–13]在文献[8]的基础上提出了多种非线性增量滤波方法,但是上述基于增量的滤波方法均无法处理测量偏差随机突变且量测噪声未知的目标跟踪问题。
为有效解决测量偏差突变且量测噪声未知场景下的单传感器目标跟踪问题,本文提出一种偏差未补偿的自适应边缘化容积卡尔曼滤波跟踪方法。(1) 首先对相邻时刻的量测进行差分来构建差分量测方程,从而有效消除相邻时刻保持不变或缓变测量偏差的影响,同时,为实现目标状态的实时估计,将相邻时刻目标状态进行增广以构建扩展状态向量[14,15];(2) 量测差分后,突变的测量偏差将会使得当前时刻的差分量测成为离群值,通过构建Beta-Bernoulli指示变量[16]来判断偏差是否突变,若突变,则舍弃该时刻的差分量测,并用预测状态代替更新状态,若未发生突变,则正常滤波;未知的高斯量测噪声经过差分后,依然满足高斯分布,因此可用逆Wishart分布建模其协方差矩阵;(3)建立目标状态、指示变量和量测噪声的联合分布,并通过变分贝叶斯方法推导了各参数的近似后验;(4)为解决扩展状态向量维度较大导致滤波负担增大的问题,对扩展目标状态进行边缘化处理[17],并结合容积卡尔曼方法实现边缘化容积卡尔曼滤波跟踪;(5)仿真实验表明,与现有方法相比,本文方法在存在突变测量偏差和未知时变量测噪声场景下具有更好的跟踪性能。
2. 系统模型
目标在2维平面上运动,目标的运动方程和传感器观测方程为
xk=Fk−1xk−1+wk−1zk=h(xk)+bk+vk} (1) 其中,xk=[pxk,vxk,pyk,vyk]T, zk=[sk,θk]T。pxk, vxk分别表示x方向的位置和速度,pyk, vyk分别表示y方向的位置和速度,sk, θk分别表示传感器测量目标的距离和方位角。wk−1和vk表示过程噪声和量测噪声,均满足零均值高斯分布,噪声协方差矩阵分别为Qk−1和Rk。bk表示传感器测量偏差,假设测量偏差在相邻时刻具有保持不变或突变的性质,则其状态方程可表示为
bk=Fbk−1bk−1+wbk−1 (2) 其中,bk=[Δsk,Δθk]T。Fbk表示传感器测量偏差的状态转移矩阵,当Fbk=I2时,表示测量偏差保持不变,否则表示偏差发生突变,偏差突变包括偏差突然出现、突然消失、突然增大、突然减小,突变是随机发生的,且当偏差发生突变时,Fbk未知。
3. 算法描述
3.1 差分量测方程构建
由于传感器测量偏差在相邻时刻具有保持不变或突变的性质,通过前后时刻的量测差分可有效消除恒定的测量偏差,从而构建差分量测方程
Δzk=zk−zk−1=h(xk)−h(xk−1)+b∗k+v∗k (3) 其中
b∗k=(Fbk−1−I2)bk−1 (4) v∗k=vk−vk−1−wbk−1 (5) 将相邻时刻的目标状态进行扩维处理以满足实时滤波需求,即令ηk=[xk,xk−1]T,则
Δzk=h∗(ηk)+b∗k+v∗k (6) 当相邻时刻的偏差保持不变时,b∗k=0;当偏差发生突变时,相较于随机误差,b∗k通常是一个较大的数值,因此可以看作是一个离群值,从而可以通过检测离群值来判断偏差是否发生突变。v∗k的协方差矩阵可用R∗k表示。
3.2 变分贝叶斯建模与求解
(1)建模:为了检测离群值,设置二值指示变量rk,当rk=1时,表示未出现离群值,即测量偏差在相邻时刻保持不变,此时b∗k=0,由式(6)可知,似然函数p(Δzk|ηk)=N(Δzk;h∗(ηk),R∗k);当rk=0时,表示出现离群值,即测量偏差发生突变,此时b∗k可以看作是一个离群值,使得似然函数p(Δzk|ηk)≠N(Δzk;h∗(ηk),R∗k)。基于上述分析,可将似然函数建模为[16]
p(Δzk|ηk,rk)=N(Δzk;h∗(ηk),R∗k)rk (7) 其中,指示变量rk服从伯努利分布。同时将伯努利分布的参数变量τk建模为贝塔分布B(α0,β0),从而可构建如式(8)的Beta-Bernoulli分层先验模型
p(rk|τk)=τrkk(1−τk)1−rkp(τk)=τα0−1k(1−τk)β0−1B(α0,β0)} (8) 其中,B(α0,β0)是参数为α0和β0的贝塔函数。同时,由于R∗k未知,为构成共轭先验,可建模为逆Wishart分布,即p(R∗k|Δz1:k−1)=IW(R∗k;uk|k−1,Uk|k−1)。
假设k时刻先验密度p(ηk|Δz1:k−1)服从高斯分布,即p(ηk|Δz1:k−1)=N(ηk;˜ηk|k−1,Pηk|k−1),则由可构建高斯分层模型为
p(ηk|Δz1:k−1)=N(ηk;˜ηk|k−1,Pηk|k−1)p(Δzk|ηk,R∗k,rk)=N(Δzk;h∗(ηk),R∗k)rkp(R∗k|Δz1:k−1)=IW(R∗k;uk|k−1,Uk|k−1)p(rk|τk)=τrkk(1−τk)1−rkp(τk)=τα0−1k(1−τk)β0−1B(α0,β0)} (9) 其中,自由度参数uk|k−1=ρuk−1|k−1,逆尺度矩阵Uk|k−1=ρUk−1|k−1,遗忘因子ρ∈(0,1]。
联合后验可表示为
p(ηk,rk,τk,R∗k|Δz1:k)=p(ηk,rk,τk,R∗k,Δz1:k)p(Δz1:k) (10) 其中
p(ηk,rk,τk,R∗k,Δz1:k)∝p(ηk|Δz1:k−1)⋅p(Δzk|ηk,R∗k,rk)p(R∗k|Δz1:k−1)p(rk|τk)p(τk) (11) (2)求解:联合后验无法直接求解,因此使用变分贝叶斯方法近似求解。根据平均场理论
p(ηk,rk,τk,R∗k|Δz1:k)≈q(ηk)q(rk)q(τk)q(R∗k) (12) 其中,q(ηk), q(rk), q(τk), q(R∗k)分别表示ηk, rk, τk, R∗k的近似后验分布,其求解方法为[14]
q(ηk)∝exp{Er,τ,R[ln p(ηk,rk,τk,R∗k,Δz1:k)]}q(rk)∝exp{Eη,τ,R[ln p(ηk,rk,τk,R∗k,Δz1:k)]}q(τk)∝exp{Eη,r,R[ln p(ηk,rk,τk,R∗k,Δz1:k)]}q(R∗k)∝exp{Eη,r,τ[ln p(ηk,rk,τk,R∗k,Δz1:k)]}} (13) 其中,Er[⋅]表示对变量关于近似后验分布q(rk)求期望。
将式(11)代入式(13)可分别求解q(ηk), q(rk), q(τk), q(R∗k)。
(a)求解q(ηk)
q(ηk)∝exp{−0.5(ηk−˜ηk|k−1)T(Pηk|k−1)−1⋅(ηk−˜ηk|k−1)−0.5(Δzk−h∗(ηk))T⋅Er[rk]ER[(R∗k)−1](Δzk−h∗(ηk))} (14) 令⌢Rk=(Er[rk]ER[(R∗k)−1])−1,则
q(ηk)∝N(ηk;˜ηk|k−1,Pηk|k−1)N(Δzk;h∗(ηk),⌢Rk) (15) 由式(15)可知,ηk的近似后验密度满足高斯分布,即q(ηk)=N(ηk;˜ηk|k,Pηk|k)。
(b)求解q(rk)
q(rk)∝exp{rk[Eτ[lnτk]−0.5ER[lnR∗k]−0.5tr{DkER[(R∗k)−1]}]+(1−rk)Eτ[ln(1−τk)]} (16) 其中,Dk=Eη[(Δzk−h∗(ηk))(Δzk−h∗(ηk))T],由式(16)知,rk满足伯努利分布
p(rk=0)=C⋅exp{Eτ[ln(1−τk)]}p(rk=1)=C⋅exp{Eτ[lnτk]−0.5ER[lnR∗k]−0.5tr{DkER[(R∗k)−1]}}} (17) 其中,C表示伯努利分布的归一化常数。Eτ[lnτk]和Eτ[ln(1−τk)]可根据文献[18]计算,ER[lnR∗k] 可根据文献[19]计算。伯努利变量rk的期望计算为
Er[rk]=P(rk=1)P(rk=0)+P(rk=1) (18) (c)求解q(τk)
q(τk)∝exp{(α0−1+Er[rk])lnτk+(β0−Er[rk])ln(1−τk)} (19) 由式(19)可知,τk服从贝塔分布,即
q(τk)=B(αk,βk)αk=α0+Er[rk]βk=β0+1−Er[rk]} (20) (d)求解q(R∗k)
q(R∗k)∝ |R∗k|−uk|k−1+m+1+Er[rk]2⋅exp{−tr{(Uk|k−1+DkEr[rk])(R∗k)−1}2} (21) 其中,m表示矩阵R∗k的维度。则由式(21)可知,R∗k服从逆Wishart分布,即
q(R∗k)=IW(R∗k;uk|k,Uk|k)uk|k=uk|k−1+Er[rk]Uk|k=Uk|k−1+DkEr[rk]} (22) 3.3 目标状态的边缘化容积卡尔曼滤波估计
(1)预测步。假设k-1时刻,目标状态xk−1∼N(˜xk−1|k−1,Pk−1|k−1),则预测均值˜xk|k−1、预测协方差Pk|k−1、预测互协方差矩阵Ck|k−1计算为
˜xk|k−1=Fk−1˜xk−1|k−1Pk|k−1=Fk−1Pk−1|k−1FTk−1+Qk−1Ck|k−1=Pk−1|k−1FTk−1} (23) 扩展状态ηk的一步预测均值˜ηk|k−1及相应的协方差矩阵Pηk|k−1可表示为
˜ηk|k−1=[˜xk|k−1˜xk−1|k−1] Pηk|k−1=[Pk|k−1CTk|k−1Ck|k−1Pk−1|k−1]} (24) (2)边缘化处理。扩展状态ηk=[pxk,vxk,pyk,vyk,pxk−1,vxk−1,pyk−1,vyk−1]T是一个8维向量,为了减少容积卡尔曼滤波器(Cubature Kalman Filter, CKF)的计算量,利用边缘化思想[17],将ηk分解为线性和非线性两部分,非线性部分为ηnk=[pxk,pyk,pxk−1,pyk−1]T,线性部分为ηlk=[vxk,vyk,vxk−1,vyk−1]T。边缘化处理之后,只需对非线性状态进行容积点采样,相比于一般的CKF,采样点数减少了1/2,可有效减小计算量。扩展状态的一步预测均值˜ηk|k−1和协方差Pηk|k−1可重新表示为
˜ηk|k−1=[˜ηnk|k−1˜ηlk|k−1] Pηk|k−1=[Pηnk|k−1Pηnlk|k−1(Pηnlk|k−1)TPηlk|k−1]} (25) 其中,˜ηnk|k−1为非线性状态的预测均值,˜ηlk|k−1为线性状态的预测均值,Pηnk|k−1为非线性状态的预测协方差,Pηlk|k−1为线性状态的预测协方差,Pηnlk|k−1为非线性状态与线性状态的预测互协方差。
量测方程可重新表示为
Δzk=hn∗(ηnk)+b∗k+v∗k (26) 根据条件高斯分布的性质,线性状态ηlk一步预测的条件均值˜ηl|nk|k−1和条件协方差Pηl|nk|k−1计算为
˜ηl|nk|k−1(ηnk)=˜ηlk|k−1+(Pηnlk|k−1)T(Pηnk|k−1)−1⋅(ηnk−˜ηnk|k−1)Pηl|nk|k−1=Pηlk|k−1−(Pηnlk|k−1)T(Pηnk|k−1)−1Pηnlk|k−1} (27) (3) 更新步。根据非线性状态ηnk的预测均值˜ηnk|k−1和预测协方差Pηnk|k−1计算容积采样点
ξ(i)={˜ηnk|k−1+√dei, i=1,2,⋯,d˜ηnk|k−1−√dei−d, i=d+1,d+2,⋯,2d (28) 其中,d表示非线性状态的维度,ei表示d维空间点集e的第i列元素,e⊂Rd[10]。
预测量测均值Δ˜zk|k−1和协方差矩阵PΔzk|k−1计算为
Δ˜zk|k−1=12d2d∑i=1hn∗(ξ(i))PΔzk|k−1=12d2d∑i=1((hn∗(ξ(i))−Δ˜zk|k−1)⋅(hn∗(ξ(i))−Δ˜zk|k−1)T)+R∗k} (29) 扩展状态ηk与差分量测Δzk的互协方差PηΔzk|k−1计算为
PηΔzk|k−1=12d2d∑i=1(([ξ(i)˜ηl|nk|k−1(ξ(i))]−˜ηnk|k−1)⋅(hn∗(ξ(i))−Δ˜zk|k−1)T) (30) 当前时刻目标状态xk与Δzk的互协方差矩阵PxΔzk|k−1计算为
PxΔzk|k−1=12d2d∑i=1(([ξ(i)(1)˜ηl|nk|k−1(ξ(i))(1)ξ(i)(2)˜ηl|nk|k−1(ξ(i))(2)]−˜xk|k−1)⋅(hn∗(ξ(i))−Δ˜zk|k−1)T) (31) 其中,ξ(i)(1)表示向量ξ(i)的第1个元素。
上一时刻目标状态xk−1与Δzk互协方差矩阵PxΔzk−1,k|k−1计算为
PxΔzk−1,k|k−1=12d2d∑i=1(([ξ(i)(3)˜ηl|nk|k−1(ξ(i))(3)ξ(i)(4)˜ηl|nk|k−1(ξ(i))(4)]−˜xk−1|k−1)⋅(hn∗(ξ(i))−Δ˜zk|k−1)T) (32) 新息协方差矩阵Sk、卡尔曼滤波增益Kfk计算、一步平滑增益Ksk计算为
Sk=PΔzk|k−1+⌢RkKfk=PxΔzk|k−1(Sk)−1Ksk=PxΔzk−1,k|k−1(Sk)−1} (33) 其中,根据式(14)可知,⌢Rk=(Er[rk]ER[(R∗k)−1])−1。
由3.1节分析可知,当传感器测量偏差发生突变时,量测将被严重污染,无法为状态更新提供有用信息,此时可将预测值作为滤波输出值。根据式(18)计算的指示变量rk的期望Er[rk]来判断量测是否为离群值,进而判断传感器测量偏差是否发生突变,判断条件为
Er[rk]>ε, 测量偏差未突变Er[rk]≤ε, 测量偏差突变 } (34) 其中,ε表示人为设定的阈值。
当Er[rk]>ε时,即测量偏差未发生突变时,量测将被用来更新目标状态,xk的滤波估计值˜xk|k及相应的协方差矩阵Pk|k,xk−1的平滑估计值˜xk−1|k及相应的协方差矩阵Pk−1|k,xk−1与xk的互协方差矩阵Pk−1,k|k计算为
˜xk|k=˜xk|k−1+Kfk(Δz−Δ˜zk|k−1)Pk|k=Pk|k−1−KfkSk(Kfk)T˜xk−1|k=˜xk−1|k−1+Ksk(Δz−Δ˜zk|k−1)Pk−1|k=Pk−1|k−1−KskSk(Ksk)TPk−1,k|k=Pk−1,k|k−1−KskSk(Kfk)T} (35) 当Er[rk]≤ε时,即测量偏差发生突变时,量测无法提供有用信息,不再使用量测对目标状态进行更新,相关量计算为
˜xk|k=˜xk|k−1, Pk|k=Pk|k−1˜xk−1|k=˜xk−1|k−1, Pk−1|k=Pk−1|k−1Pk−1,k|k=Pk−1,k|k−1} (36) 扩展状态ηk的滤波估计值˜ηk|k与相应的误差协方差矩阵Pηk|k计算为
˜ηk|k=[˜xk|k˜xk−1|k] Pηk|k=[Pk|k(Pk−1,k|k)TPk−1,k|kPk−1|k]} (37) 3.4 算法伪代码
根据3.1~3.3节中内容,在算法1中给出了本文方法的具体实现步骤。
表 1 偏差未补偿自适应边缘化容积卡尔曼滤波跟踪算法输入:状态估计值˜x0|0,误差协方差P0|0,逆Wishart分布参数
u0|0, U0|0,贝塔分布参数α0, β0,初始时刻伯努利变量的期望
值E[r0],遗忘因子ρ,迭代次数N。输出:˜xk|k,Pk|k, uk|k, Uk|k。 (1) for k = 1:K (2) 通过式(23)计算˜xk|k−1, Pk|k−1, Ck|k−1; (3) 计算:uk|k−1=ρuk−1|k−1, Uk|k−1=ρUk−1|k−1; (4) 初始化:˜x(0)k|k=˜xk|k−1, P(0)k|k=Pk|k−1,
u(0)k|k=uk|k−1, U(0)k|k=Uk|k−1;(5) for i = 0:N (6) 通过式(14)计算⌢R(i+1)k; (7) 通过式(35)计算˜x(i + 1)k|k, P(i + 1)k|k; (8) 通过式(18)计算(E[rk])(i+1); (9) 根据式(34)判断传感器测量偏差是否突变 (10) 若传感器测量偏差突变: (11) ˜xk|k=˜x(0)k|k, Pk|k=P(0)k|k; (12) uk|k=u(0)k|k, Uk|k=U(0)k|k; (13) 跳出循环; (14) 若传感器测量偏差不突变: (15) ˜xk|k=˜x(i + 1)k|k,Pk|k=P(i+1)k|k; (16) 通过式(20)计算α(i+1)k和β(i+1)k; (17) 通过式(22)计算u(i+1)k|k和U(i+1)k|k; (18) uk|k=u(i + 1)k|k, Uk|k=U(i+1)k|k; (19) 计算迭代停止阈值κ:
κ=||˜x(i+1)k|k−˜x(i)k|k||/||˜x(i)k|k||;(20) 当κ≤10−6时: (21) 跳出循环。 (22) end for (23) end for 4. 仿真实验
4.1 场景设置
目标在2维平面上运动,运动方程为
xk=ψxk−1+wk−1 (38) 其中,xk=[pxk,vxk,pyk,vyk]T,wk−1是协方差矩阵为Qk−1的高斯白噪声,状态转移模型ψ为协同转弯模型[20]。
量测方程为
zk=h(xk)+bk+vk (39) 其中,zk=[sk,θk]T, bk=[Δsk,Δθk]T, vk是高斯白噪声,协方差矩阵为Rk,假设传感器位于坐标原点,则非线性量测函数h(xk)=[sqrt((pxk)2+(pyk)2)arctan(pxk/pxkpykpyk)]T 。
仿真实验中,目标初始状态为x0=[2000,5,1000,10]T,初始协方差矩阵为P0=diag([50,0.5,50,0.5]);过程噪声协方差矩阵为Qk−1=diag([10,0.1,10,0.1]);转弯运动的转弯率为−0.032 rad/s;仿真总时长为100 s,采样周期T=1 s。量测噪声矩阵Rk=vkRk−1,在1~10 s时,vk=0.96;在11~50 s时,vk=1.03;在51~80 s时,vk=0.96;在81~100 s时,vk=1.03。R0=diag([52,0.0012])。
传感器测量偏差设置为
bk=[50,0.001]T, k=1∼10 sbk=[300,0.0047]T, k=11∼30 sbk=[100,0.002]T, k=31∼90 sbk=[0,0]T, k=91∼100 s} (40) 上述参数设置中,距离单位为m,速度单位为m/s,角度的单位为rad。
4.2 对比分析
为验证本文方法的有效性,选取传统的CKF方法、文献[7]中的方法和文献[10]中的增量CKF方法与本文方法进行对比实验,其中文献[10]是对文献[8]方法的一种扩展实现。因为CKF方法和增量CKF方法无法有效处理量测噪声时变未知的情况,所以在该对比方法进行实验时,假设量测噪声精确已知,而在用本文方法实验时,量测噪声是未知的。为了保证对比的公平性,文献[7]中的方法同样用CKF实现,并记作NRCKF。本文方法的具体实现步骤见算法1。选取目标位置估计的均方根误差(Root Mean Square Error, RMSE)作为性能评价标准,为了使实验结果更具一般性,进行500次蒙特卡洛实验,则k时刻位置的RMSE计算为
RMSEpos(k)=√1500500∑i=1((px,ik−px,ik)2+(py,ik−ˆpy,ik)2) (41) 其中,第i次蒙特卡洛实验中,目标在k时刻的位置为(px,ik, py,ik),同理,可以计算速度的RMSE。
设置式(34)中的阈值ε=1e−15,目标跟踪效果如图1所示,其中绿色线是目标真实运动轨迹,红色线是所提方法的跟踪结果,其余为对比方法的跟踪结果,可以直观地看出,所提方法的跟踪性能是最优的。图2展示了指示变量期望值Er[rk]的变化曲线,可以看出,在偏差发生突变的时刻,即第11, 31和91 s,Er[rk]取值接近于0,且偏差突变程度越大,Er[rk]的值越小,而在偏差未发生突变的时刻,Er[rk]取值接近于1。偏差发生突变时的Er[rk]值与不发生突变时的Er[rk]值具有较大差异,进一步说明可以根据Er[rk]的值对偏差是否发生突变进行有效判别。
图3、图4分别为目标位置、速度的RMSE对比图,由图3可知,在0~10 s,由于测量偏差保持恒定不变,增量CKF与所提方法的估计精度基本保持一致,在第11 s,测量偏差发生突变,增量CKF的估计精度急剧下降,且在之后90 s,该方法均无法对目标进行有效跟踪,而所提方法能有效应对偏差突变问题,保持较高的估计精度。对于NRCKF,在偏差恒定的前10 s内,能到达较高的估计精度,当偏差突变时,由于无法及时估计出突变偏差值,导致之后的滤波估计精度大幅下降。在93~100 s,传统CKF的估计精度要高于所提方法的估计精度,这是由于所提方法通过差分方法构建量测方程,导致量测噪声协方差增大,会在一定程度上影响估计精度,且在用传统CKF进行实验时,假设量测噪声精确已知,而在用本文方法实验时,量测噪声是未知的。综合比较而言,所提方法的跟踪性能要优于对比方法。从图4中可以看出,所提方法的速度估计性能也是最优的。
为测试变分迭代次数对算法性能的影响,统计了不同迭代次数下的平均均方根误差(Average Root Mean Square Error, ARMSE),500次蒙特卡洛实验下,位置的ARMSE计算为
ARMSEpos(k)=√1500T500∑i=1T∑k=1((px,ik−px,ik)2+(py,ik−ˆpy,ik)2) (42) 同理,可计算速度的ARMSE。
图5、图6分别为不同方法的目标位置、速度ARMSE对比图,由此可知,所提方法在迭代次数N>2时收敛,此后,随着迭代次数的增加,估计性能保持稳定,位置和速度的ARMSE均保持最优。
为测试阈值ε对算法性能的影响,统计了不同ε值下所提方法的ARMSE,结果如图7、图8所示,可以看出,ε取值从1e–2到1e–20,所提方法的估计性能保持稳定。
为验证本文方法中边缘化处理的时间有效性,表1中统计了不同方法的500次蒙特卡洛运行总时间,其中迭代次数N设为3。由表可知,传统的CKF方法运行时间最短;增量CKF方法运行时间略高于传统CKF方法;NRCKF方法在滤波过程中需要进行变分迭代更新,因此需要较长时间;提出的方法(非边缘化)同样需要经过变分迭代的过程,运行时间要略高于NRCKF,但是经过边缘化处理后,运行时间将减少43%,这是因为在变分贝叶斯迭代过程中需要多次用到容积采样和积分,目标状态经过边缘化处理后,容积采样的维度降低至原来的1/2,每次变分迭代的采样点数随之减少1倍,采样点在非线性传递过程中的计算量会相应减少,且计算减少量随着变分迭代次数的增加而增加。
表 1 运行时间对比(s)方法 时间 传统CKF 1.038 1 增量CKF 1.210 0 NRCKF 11.343 8 提出的方法(非边缘化) 12.866 4 提出的方法(边缘化) 7.333 3 为测试边缘化处理对跟踪精度的影响,单独比较了所提方法在边缘化处理前、后的RMSE和ARMSE。图9和图10分别为边缘化处理前、后的RMSE差值图像和ARMSE差值图像。其中位置的RMSE差值的最大值为0.071 m,速度的RMSE差值的最大值为0.011 m/s,相对所提方法的真实RMSE, RMSE差值可以忽略不计;位置的ARMSE差值的最大值为0.103 m,速度的ARMSE差值的最大值为0.001 m/s,均远小于所提方法的真实ARMSE。因此,边缘化处理能够在不影响目标跟踪精度的前提下,有效减少所提方法的计算量。同理,边缘化处理方法也可应用到其它非线性变分贝叶斯滤波跟踪问题以减小计算负担。
为进一步验证所提方法的有效性,对测量偏差bk和量测噪声协方差矩阵Rk单独变化时该方法的跟踪性能进行测试。当bk单独变化时,其取值遵循式(40),设置Rk=diag([52,0.0012]),ARMSE对比结果如表2所示,可以看出,所提方法对目标速度和位置的估计性能均是最优的;当Rk单独变化时,其取值变化与4.1节中相同,同时设置bk=[50,0.001]T,ARMSE对比结果如表3所示,可以看出,所提方法的位置估计精度是最优的,速度估计精度要略低于传统的CKF方法,但在用传统CKF进行实验时,假设Rk精确已知,而在用所提方法进行实验时,Rk是未知的,综合比较而言,所提方法跟踪性能依然是最优的。
表 2 仅测量偏差bk变化时各方法ARMSE对比传统CKF 增量CKF NRCKF 提出的边缘化CKF ARMSEpos(m) 155.359 1 78.411 8 47.686 8 15.359 0 ARMSEvel(m/s) 6.533 4 3.533 9 2.062 2 1.549 0 表 3 仅量测协方差矩阵Rk变化时各方法ARMSE对比传统CKF 增量CKF NRCKF 提出的边缘化CKF ARMSEpos(m) 49.822 0 29.690 6 22.204 5 9.597 0 ARMSEvel(m/s) 1.481 2 1.655 1 1.696 7 1.518 7 5. 结论
针对存在突变测量偏差和未知时变量测噪声场景下的目标跟踪问题,本文提出了一种偏差未补偿自适应边缘化容积卡尔曼滤波跟踪方法,通过量测差分消除恒定的测量偏差,构建指示变量识别突变测量偏差,利用逆Wishart分布建模未知量测噪声协方差矩阵,从而建立各个参数的联合后验分布,并利用变分贝叶斯求解近似后验。同时,为降低滤波负担,首先对目标状态进行边缘化处理,然后在CKF框架下实现滤波跟踪。通过仿真实验得出以下结论:(1) 相比于现有方法,所提方法在测量偏差突变和量测噪声未知场景下具有更优的目标跟踪性能;(2) 边缘化处理能够大幅减小所提方法的滤波负担,因此可应用到其它更为复杂的非线性变分贝叶斯滤波问题以降低滤波复杂度,如鲁棒随机有限集类滤波跟踪[20,21]问题;(3) 本方法可以扩展至更高维的目标跟踪场景。
-
算法1 用于FeFET多态门设计的免疫算法 输入:电路的拓扑结构和器件参数、控制条件、器件模型和工艺 输出:符合设计目标的混合多态门电路 (1) 参数设置 Pop_num:每一个父代生成的个体数目 Gen_Max:最大免疫代数,即当进化的代数达到此值时,算法停止运行 Function_affinity:亲和度函数 r%:变异率 ncl:克隆个数 detas:相似度阈值 Num_FeFET:FeFET器件个数 Control:多态门的功能切换的控制条件 fi <i, a, b, ···>:控制条件为i,输入值为a, b, ···时设计目标的真值表 (2) 初始群体生成 Gen_now = 0; Survival_pop = ø; 生成包含Sur_num个初始电路网表的集合; for (n=0; n < Sur_num; n++) do 初始电路网表编码为初始个体chromo[n]; //对初始的电路网表进
行编码Survival_pop = Survival_pop ∪ chromo[n]; //生成初始群体 end for (3) 网表仿真并提取仿真结果 for (n=0; n < Pop_num×sur_num; n++) do 将Pop_chromo[n]译码为netlist[n]; for 不同的控制条件i do Simulate (i, a, b, ···netlist[n]); end for end for for (n=0; n < Pop_num×Sur_num; n++) do 提取仿真结果; 将仿真结果映射为不同控制条件下的真值表f’; end for (4) 亲和度计算 for (n = 0; n < Pop_num×Sur_num; n++) do aff(fi,f′i) = ∑2ni=1∂k//计算每个个体的亲和度 end for (5) 激励度计算 for (n = 0; n < Pop_num×Sur_num; n++) do sim(abi)=a×aff(fi,f′i)−b×den(abi) //计算每个个体的激
励度end for (6) 免疫操作 for (n = 0; n < Pop_num×Sur_num; n++) do Selection();// 进行选择操作 Clone();// 进行克隆操作 Mutation();// 进行选择操作 Cloneinhibition();// 进行克隆抑制操作 end for (7) 种群刷新 for (n = 0; n < Pop_num×Sur_num; n++) do 得到当前代群体chromo[Pop_num×Sur_num]; Current_check();//电路结构检测 end for Gen_now ++; (8) 停止条件判断 while (Gen_now < Gen_Max || aff(fi,f′i)≠2n)//进化代数未达到设定最大值或未出现满足预期目标的多态门结构 跳到步骤3 end while 表 1 利用免疫算法得到的FeFET多态门
序号 功能 控制条件 数值 器件数量 1 NAND/NOR T –25°C/100°C 6 2 NAND/AND T 75°C/125°C 6 3 XNOR/AND T 50°C/150°C 6 4 XOR/NAND VDD 1.2 V/1.8 V 6 5 NOR/AND VDD 1.2 V/2.1 V 6 6 XNOR/NOR VDD 2.7 V/3.3 V 6 7 NAND/NOR VCONTROL 1.2 V/2.1 V 6 8 XNOR/NOR VCONTROL 0.6 V/1.2 V 6 9 OR/XNOR/NOR VCONTROL 0 V/1.5 V/3.0 V 6 10 OR/NAND/XOR VCONTROL 0 V/0.9 V/1.2 V 6 -
[1] STOICA A, ZEBULUM R, and KEYMEULEN D. Polymorphic electronics[C]. 4th International Conference on Evolvable Systems: From Biology to Hardware, Tokyo, Japan, 2001: 291–302. [2] RUZICKA R, SEKANINA L, and PROKOP R. Physical demonstration of polymorphic self-checking circuits[C]. 2008 14th IEEE International On-Line Testing Symposium, Rhodes, Greece, 2008: 31–36. [3] SEKANINA L, RUZICKA R, and GAJDA Z. Polymorphic FIR filters with backup mode enabling power savings[C]. 2009 NASA/ESA Conference on Adaptive Hardware and Systems, San Francisco, USA, 2009: 43–50. [4] STARECEK L, SEKANINA L, and KOTASEK Z. Reduction of test vectors volume by means of gate-level reconfiguration[C]. 2008 11th IEEE Workshop on Design and Diagnostics of Electronic Circuits and Systems, Bratislava, Slovakia, 2008: 1–4. [5] SUAREZ A, ORO H, PEÑAREDONDA L, et al. Design of a new external signal controlled polymorphic gates[C]. 2016 7th International Conference on Intelligent Systems, Modelling and Simulation (ISMS), Bangkok, Thailand, 2016: 413–418. [6] WANG Tian, CUI Xiaoxin, YU Dunshan, et al. Polymorphic gate based IC watermarking techniques[C]. 2018 23rd Asia and South Pacific Design Automation Conference (ASP-DAC), Jeju, Korea (South), 2018: 90–96. [7] NEVORAL J, RUZICKA R, and SIMEK V. CMOS gates with second function[C]. 2018 IEEE Computer Society Annual Symposium on VLSI (ISVLSI), Hong Kong, China, 2018: 82–87. [8] BI Yu, GAILLARDON P E, HU X S, et al. Leveraging emerging technology for hardware security-case study on silicon nanowire FETs and graphene symfets[C]. 2014 IEEE 23rd Asian Test Symposium, Hangzhou, China, 2014: 342–347. [9] PARVEEN F, HE Zhezhi, ANGIZI S, et al. Hybrid polymorphic logic gate with 5-terminal magnetic domain wall motion device[C]. 2017 IEEE Computer Society Annual Symposium on VLSI (ISVLSI), Bochum, Germany, 2017: 152–157. [10] REZAEI A, SHEN Yuanqi, KONG Shuyu, et al. Cyclic locking and memristor-based obfuscation against CycSAT and inside foundry attacks[C]. 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE), Dresden, Germany, 2018: 85–90. [11] MACHA N, GEEDIPALLY S, REPALLE B, et al. Crosstalk based fine-grained reconfiguration techniques for polymorphic circuits[C]. The 14th IEEE/ACM International Symposium on Nanoscale Architectures, Athens, Greece, 2018: 114–120. [12] MACHA N K, REPALLE B T, IQBAL M A, et al. Crosstalk-computing-based gate-level reconfigurable circuits[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2022, 30(8): 1073–1083. doi: 10.1109/TVLSI.2022.3173344 [13] KAREMPUDI V S P, VATSAVAI S S, THAKKAR I, et al. A polymorphic electro-optic logic gate for high-speed reconfigurable computing circuits[C]. 2023 24th International Symposium on Quality Electronic Design (ISQED), San Francisco, USA, 2023: 1–8. [14] ZHANG Xiaoyu, LIU Rui, SONG Tao, et al. Re-FeMAT: A reconfigurable multifunctional FeFET-based memory architecture[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2022, 41(11): 5071–5084. doi: 10.1109/TCAD.2021.3140194 [15] SAITO D, KOBAYASHI T, KOGA H, et al. Analog in-memory computing in FeFET-based 1T1R array for edge AI applications[C]. 2021 Symposium on VLSI Circuits, Kyoto, Japan, 2021: 1–2. [16] FENG Ning, LI Hao, SU Chang, et al. A dynamic compact model for ferroelectric capacitance[J]. IEEE Electron Device Letters, 2022, 43(3): 390–393. doi: 10.1109/LED.2022.3141413 [17] SU Yuchao, LUO Naili, LIN Qiuzhen, et al. Many-objective optimization by using an immune algorithm[J]. Swarm and Evolutionary Computation, 2022, 69: 101026. doi: 10.1016/j.swevo.2021.101026 -