应用萤火虫算法的混沌信号盲源分离*
2015-12-25李硕明
陈 越,李硕明
(1.中山职业技术学院 信息工程学院,广东 中山 528404;2.武汉大学 计算机学院,武汉 430072)
1 引言
混沌同步现象的发现开启了混沌技术在通信和信号处理领域应用的大门。相对于传统的通信方式,混沌通信具有很多优势,例如混沌映射可以生成无穷多个扩频序列、混沌载波具有更高的加密性能等[1]。同时,混沌通信技术也面临诸多挑战,其中之一是在多径、畸变和时变衰落的环境下实现多用户系统所要解决的盲源分离问题[2]。混沌信号所固有的非周期、宽带频谱和对初值极度敏感等特性[3]使得在噪声环境下分离混沌信号极为困难,这无疑限制了混沌技术在传感器网络、多用户通信等领域的应用。这个问题已经引起了不少研究者的兴趣,一些文献利用各个源混沌信号的动态特性,通过卡尔曼滤波[4-5]或者耦合同步[6]等方法重构源信号。这些方法都假设已知各个源信号的动态方程,这显然限制了其应用的灵活性。独立成分分析(Independent Component Analysis,ICA)这种传统的盲源分离方法也被一些研究者用来分离混沌信号[7-9]。这类方法一般利用信号的高阶统计量构造能表征分量间相互独立性的目标函数,通过梯度算法对目标函数进行优化,当目标函数达到极值时认为各分量间的独立性最强,从而在独立性假设下分离出源信号。然而,从后文中的仿真部分可以看到,这类方法在处理混沌信号时精度较低。为了更有效地解决混合混沌信号的盲源分离问题,本文提出了一种新的盲源分离方法,利用分离信号的峭度构造目标函数,通过对观测信号进行预白化和对正交分离矩阵的参数化表示,将混沌信号的盲源分离转化为一个无约束优化问题,并利用萤火虫算法(Firefly Algorithm,FA)[10]进行求解。
2 问题模型和假设
假设由不同混沌系统产生的源信号经过线性瞬时混合后产生n个观测信号:
式中,aij为混合系数,sj(t)为源信号,xi(t)为观测到的混合信号,vi(t)为观测噪声。式(1)可以写成向量形式:
式中,A∈Rn×n为元素aij组成的混合矩阵,x(t)=[x1(t),x2(t),…,xn(t)]T,s(t)=[s1(t),s2(t),…,sn(t)]T,v(t)=[v1(t),v2(t),…,vn(t)]T。盲源分离的问题是:源信号和混合系数都未知,仅利用观测信号xi(t)来重建各源信号sj(t),j=1,2,…,n。由于幅度和顺序的不确定性[11],盲源分离的目标应该是求得解混矩阵B,使BA=ΛP,其中Λ 是任意n 阶非奇异对角阵,P 是任意n 阶置换矩阵。
本文利用各混沌信号之间的相互独立性来求解解混矩阵,这需要对盲源分离模型(1)和(2)作下列假设:
(1)混合矩阵A 是非奇异的;
(2)各个源信号相互独立,显然,不同混沌系统产生的信号相互独立;
(3)观测噪声为零均值、互不相关的高斯噪声。
3 萤火虫算法
萤火虫算法[10]是一种受萤火虫发光寻找伙伴的行为启发而提出的群智能优化算法。这种算法对萤火虫的行为作如下假设:
(1)萤火虫的亮度由目标函数决定;
(2)萤火虫不区分性别地相互吸引,其吸引力随距离衰减;
(3)对于任意两只萤火虫,较暗的那只会受吸引朝较亮的移动,移动速度(即每次迭代中移动的距离)正比于吸引力。
萤火虫之间的吸引力定义为
式中,β0为r=0 处的吸引力,γ 为吸收系数。随着距离r 的增加萤光逐渐被传播介质吸收,萤火虫间的吸引力也逐渐减弱。
假设优化问题的维数为d,萤火虫的总数为N,萤火虫的位置向量x=(x1,x2,…,xd)T代表优化问题的一个可行解,第i 只萤火虫的亮度Ii由其位置向量xi处的目标函数值f(xi)决定,最大值优化时亮度可以直接取为目标函数值,最小值优化时可以取其相反数,每次优化迭代中,萤火虫i 受萤火虫j吸引移动的位置更新为
式中,α 为取值于[0,1]之间的常数步长因子,β 为式(3)中定义的吸引力,rand 是一个[0,1]之间的随机数。萤火虫算法的具体步骤可以归纳为以下伪代码:
(1)初始化萤火虫群xi,i=1,2,…,N;
(2)计算每只萤火虫处的目标函数值和亮度;
(3)按亮度对萤火虫排序;
(4)循环:
if(Ii>Ij)按式(4)将萤火虫i 向萤火虫j 移动,计算新解处的目标函数值并更新亮度。
按亮度对萤火虫排序并记录当前最优解。
直到终止条件被满足;
(5)输出当前最优解。
4 混沌信号的盲源分离
4.1 目标函数的选取
峭度[11]是度量信号非高斯性的一种有效指标。高斯信号的峭度为零,超高斯信号和亚高斯信号的峭度分别为正值和负值。对于零均值的混合信号x(t),可以通过寻求一个解混矩阵B,使y(t)=Bx(t)的各个分量y1(t),y2(t),…,yn(t)的峭度都尽可能地接近零,从而实现源信号的分离[7],相应的目标函数定义为
此时混沌信号的盲源分离转化为一个优化问题:
正交约束E(y(t)yT(t))=I 保证了每一路分离信号yi(t)与其他分离信号yj(t),j≠i 的解空间正交。
4.2 正交化
关于式(6)中对分离信号的正交约束,一种方法是通过在每次迭代中对分离数据进行白化运算[12]来实现;也有文献在目标函数的表达式中增加一项‖BBT-In‖2,当它经过优化趋近于0 时分离矩阵B 趋近正交[13],正交的分离矩阵乘以经过预白化的观测信号所得到的分离信号y(t)显然满足正交约束。然而,由于n 阶正交矩阵的自由度仅为n(n-1)/2,以上方法会增加优化问题的复杂性(维数)。通过Cayley 变换,任一非病态(行列式等于1)的n 阶正交矩阵可以分解为一系列旋转矩阵的乘积,并用参数向量θ={θ1,θ2,…,θn(n-1)/2}表示[14]。对正交矩阵采用这种参数化表示能减少待优化参数,提高算法的精度和鲁棒性。后续部分对3 阶正交矩阵采用式(7)中的参数化表示,其中参数向量θ={θ1,θ2,θ3},θi∈[0,2π]。
4.3 基于萤火虫算法的盲源分离方法
利用正交矩阵的参数化表示,式(6)可以转化为无约束优化问题:
将参数向量θ={θ1,θ2,…,θn(n-1)/2}作为萤火虫的位置用萤火虫算法进行盲源分离的流程如下:
(1)对观测信号x(t)去均值;
(2)对观测信号预白化得到珘x(t);
(3)用均匀分布于[0,2π]的随机向量θ 初始化每只萤火虫的位置;
(4)用式(7)计算解混矩阵B,计算y(t)=B珘x(t);
(5)用萤火虫算法对式(8)进行优化;
(6)终止条件满足后,获得当前最优解向量θopt;
(7)按式(7)计算最优解混矩阵Bopt;
(8)输出分离信号y(t)=Bopt(t)。
其中,萤火虫算法的参数设置为萤火虫数量N=10,吸收系数γ=1,步长因子α=0.02,最大吸引力β0=1,算法的终止条件设定为迭代100 次。
5 实验验证
本节通过仿真实验来验证算法的有效性,仿真在Matlab2012 软件中完成。实验中,混沌映射信号和混沌流信号将被分别研究。源信号按式(1)生成混合信号,观测噪声取实践中最常见的高斯白噪声,信噪比最低考察到10 dB,对于更低的信噪比,在盲源分离前应首先进行去噪处理。在盲分离实践中,如果没有关于混合矩阵A 的任何先验知识,则应假设A 的元素是独立同分布的随机变量,因此,在每次仿真中,混合矩阵A 的各个元素独立地由[-1,1]之间的均匀分布随机生成。
分离算法的性能将采用分离指数[15]和相关系数[8]这两种指标进行衡量。分离指数定义为
式中,pij是矩阵P=BWA 第i 行第j 列的元素,W 是观测信号的白化矩阵。很明显,IA∈[0,1],并且IA越小分离精度越高。第i 路分离信号和源信号间的相关系数定义为
式中,N 为观测信号长度。各路相关系数的平均值ζ将用来评价分离信号的质量,越接近1,分离精度越高。如无特殊说明,仿真结果都是在运行500 次独立的蒙特卡洛实验之后得到的。
5.1 混沌映射信号的盲源分离实验
混沌映射源信号分别由Logistic 映射(式(11))、Chebysev 映射(式(12))和Henon 映射(式(13))生成,数据长度N=100,如图1 所示。
图1 源信号波形(混沌映射)Fig.1 Waveform of the source signals(chaotic map)
对没有观测噪声和观测噪声信噪比为30 dB的混合信号用本文方法进行分离,分离指数随迭代步数的收敛情况如图2 所示。没有观测噪声时,从随机的初始位置出发,在重复进行的3 次独立实验中分离指数都能在数十步以内收敛到一个较小的稳定值;观测噪声为30 dB时,通过几次迭代后分离指数迅速减小,算法依旧能快速收敛,但在某些实验中分离指数会收敛到偏离理想值较远的位置,这表明目标函数的性能表面受噪声影响而改变,全局极值点有可能偏离最优解集。当然,这一问题在现有的ICA 方法中也存在[8]。进一步实验发现,在噪声水平较高时,对于同一组混合信号,如果用本文方法分离出现解的偏离,用其他分离时也会出现这一情况,其偏离程度随噪声水平的提高而增大。
图2 分离指数随迭代步数的收敛情况Fig.2 Convergence attribute of the separation index versus iteration steps
人工蜂群(Artificial Bee Colony,ABC)算法[12]和遗传算法(Genetic Algorithm,GA)[16]也是解决多元优化问题的有效工具。图3 比较了用它们替代萤火虫算法来优化式(8)的性能差异。通过设置算法参数,使得不同的优化算法在每次迭代中目标函数都被计算10 次,从而有相同的计算复杂度。可以看到,采用FA 和采用ABC 优化时有相似的收敛速度,但FA 的精度略高;而使用GA 时收敛较慢,并且在最大迭代次数不超过100 次时分离精度也低得多。
图3 FA、ABC 和GA 优化性能比较Fig.3 Optimization performance comparison among FA,ABC and GA
在不同的观测噪声下,盲分离算法的性能如表1 和表2 所示。参与性能对比的其他方法有文献[8]采用的快速独立成分分析(FastICA)方法和文献[12]提出的盲分离方法,这种方法将分离矩阵看作一个普通矩阵,通过在每次迭代中对分离数据做白化运算来保证解的正交,并使用人工蜂群算法求解,记为ABC*。总体来看,随着噪声强度的增加,各种算法的分离性能都逐渐下降。其中,FastICA 精度最低,采用FA 优化时本文方法精度最高,将优化算法由FA 替换为ABC 时性能差别不大,但替换为GA 时分离精度明显降低。另外,同样采用ABC 进行优化,文献[12]的方法比本文方法(采用ABC 优化时)精度低,这表明通过正交矩阵的参数化表示来降低优化问题的维数,能提高算法的精度和鲁棒性。
表1 分离指数的比较(混沌映射)Table 1 Comparison of separation index(chaotic map)
表2 平均相关系数的比较(混沌映射)Table 2 Comparison of mean correlation coefficient(chaotic map)
5.2 混沌流信号的盲源分离实验
混沌流源信号由Rossler 吸引子(式(14))、Lorentz 吸引子(式(15))和Duffing 吸引子(式(16))通过4 阶龙格库塔法积分生成,积分步长分别为0.05、0.01、0.1,数据长度取N=1000,如图4所示。
图4 源信号波形(混沌流)Fig.4 Waveform of the source signals(chaotic flow)
处理混沌流信号时的盲源分离性能如表3 和表4 所示。可以看到,本文方法的精度在各种噪声水平下都是最好的,这进一步说明FA 是一个适合本文方法的优化器,当然,ABC 的精度也不错,而GA性能略差。各种采用群智能优化算法的盲源分离方法性能都优于FastICA,在测试的每个噪声等级下,本文方法重构的源信号的平均相关系数比FastICA都高出0.02 左右,分离指数低0.05 以上,这说明本文方法非常适合于处理混沌流信号。
表3 分离指数的比较(混沌流)Table 3 Comparison of separation index(chaotic flow)
表4 平均相关系数的比较(混沌流)Table 4 Comparison of mean correlation coefficient(chaotic flow)
6 结束语
本文提出了一种基于萤火虫算法的混沌信号盲源分离方法。该方法利用正交矩阵的参数化表示将混合混沌信号的盲源分离转化为一个无约束优化问题,并利用萤火虫算法进行求解。仿真结果表明,对于混沌映射信号和混沌流信号,该方法的分离精度在每项仿真实验中都明显优于参与比较的其他盲源分离方法。同时,快速收敛的特性将使该方法具有很强的应用潜力。需要指出的是,对于某些特定的含有噪声的混合混沌信号,目标函数的性能表面会被噪声改变,使全局极值点偏离最优解集。这制约了包括本文方法在内的各种盲源分离方法精度的进一步提高,在实际应用中如何判定和处理这一现象尚需进一步研究。
[1]冯久超.混沌信号与信息处理[M].北京:清华大学出版社,2012.FENG Jiuchao.Chaotic signals and information processing[M].Beijing:Tsinghua University Press,2012.(in Chinese)
[2]Sung W Y,Jun H L,Heung G R.Chaos communication system using MIMO technique[C]//Proceedings of 2014 International Conference on Advanced Communication Technology.Pyeongchang:IEEE,2014:579-583.
[3]LYU S X,Wang Z S,Hu Z H,et al.Gradient method for blind chaotic signal separation based on proliferation exponent[J].Chinese Physics B,2014,23(1):142-147.
[4]黄锦旺,冯久超,吕善翔.混沌信号在无线传感器网络中的盲分离[J].物理学报,2014,63(5):050502-1-050502-8.HUANG Jinwang,FENG Jiuchao,LYU Shanxiang.Blind source separation of chaotic signals in wireless sensor networks[J].Acta Physics Sinica,2014,63(5):050502-1-050502-8.(in Chinese)
[5]王世元,冯久超.一种新的参数估计方法及其在混沌信号盲源分离中的应用[J].物理学报,2012,61(17):170508-1-170508-8.WANG Shiyuan,FENG Jiuchao.A novel method of estimating parameter and its application to blind separation of chaotic signals[J].Acta Physics Sinica,2012,61(17):170508-1-170508-8.(in Chinese)
[6]Xie Z B,Feng J C.Blind source separation of continuous time chaotic signals based on fast random search algorithm[J].IEEE Transactions on Circuits System II,2010,57(6):461-465.
[7]Yang J N,Fang Y.Blind separation of mixing chaotic signals based on ICA using kurtosis[C]//Proceedings of 2012 International Conference on Computer Science and Service System.Nanjing:IEEE,2012:903-905.
[8]Chen H B,Feng J C,Fang Y.Blind extraction of chaotic signals by using the fast independent component analysis algorithm[J].Chinese Physics Letters,2008,25(2):405-408.
[9]Kuraya M,Uchida A,Sano S,et al.Independent component analysis of mixed chaos in electronic circuits[J].Electronic Letters,2008,44(2):248-250.
[10]Yang X S.Nature- inspired metaheuristic algorithms[M].[S.l.]:Luniver Press,2008:83-96.
[11]Yu X C,Hu D,Xu J D.Blind source separation:theory and applications[M].Beijing:Wiley,2013.
[12]张银雪,田学民,邓晓刚.基于改进人工蜂群算法的盲源分离方法[J].电子学报,2012,40(10):2026-2030.ZHANG Yinxue,TIAN Xuemin,DENG Xiaogang.Blind source separation based on modified artificial bee colony algorithm[J].Acta Electronica Sinica,2012,40(10):2026-2030.(in Chinese)
[13]Ebrahimzadeh A,Mavaddati S.A novel technique for blind source separation using bees colony algorithm and efficient cost functions[J].Swarm and Evolutionary Computation,2014,14(2):15-20.
[14]Schaub H,Tsiotras P.Principal rotation representations of proper NxN orthogonal matrices[J].International Journal of Engineering Science,1995,33(15):2277-2295.
[15]唐波,程水英,张浩.基于多通道阵列处理的二次雷达混扰信号分选[J].电讯技术,2014,54(5):534-540.TANG Bo,CHENG Shuiying,ZHANG Hao.Separation of garbled secondary surveillance radar signal based on multichannel array processing[J].Telecommunication Engineering,2014,54(5):534-540.(in Chinese)
[16]杨朝阳,杨霄鹏,李腾,等.基于遗传算法的OFDM 高精度盲频偏估计器[J].电讯技术,2014,54(11):1522-1527.YANG Chaoyang,YANG Xiaopeng,LI Teng,et al.High accuracy blind carrier frequency offset estimator based on genetic algorithm for OFDM systems[J].Telecommunication Engineering,2014,54(11):1522-1527.(in Chinese)