发明名称 基于初始状态向量控制的全反馈神经网络盲检测方法
摘要 本发明公开了一种基于初始状态向量控制的全反馈神经网络盲检测方法。在全反馈神经网络中使用该方法可有效加快算法的收敛速度,避开伪平衡点的吸引域,可一定程度提高算法检测性能。该方法通过接收信号矩阵的奇异值分解的值空间矩阵重构一个新矩阵,并计算该新矩阵的各列指标量最小的对应向量作为初始状态向量,并记录盲检测时的伪平衡点向量,进而从新矩阵中向量中寻找一组列向量,使得该基向量与伪平衡点间的欧氏距离大于伪平衡点吸引域半径,从而使得算法快速收敛。
申请公布号 CN102035610B 申请公布日期 2014.07.16
申请号 CN201010589007.3 申请日期 2010.12.15
申请人 南京邮电大学 发明人 张志涌;阮秀凯;张昀
分类号 H04L25/03(2006.01)I;H04B17/00(2006.01)I;H04L27/34(2006.01)I 主分类号 H04L25/03(2006.01)I
代理机构 南京经纬专利商标代理有限公司 32200 代理人 叶连生
主权项 一种基于初始状态向量控制的全反馈神经网络盲检测方法,其特征是通过控制迭代过程中的初始状态向量,使得该向量与伪平衡点间的欧氏距离大于伪平衡点吸引域半径,采用离散型全反馈神经网络动力学方程进行迭代,从而加快算法收敛速度;该方法具体步骤如下:①.接收数据矩阵构造接收端获得连续时间信道的接收方程:X<sub>N</sub>=SГ<sup>H</sup>式中,S=[s<sub>L+P</sub>(t),…,s<sub>L+P</sub>(t+N‑1)]<sup>T</sup>=[s<sub>N</sub>(t),…,s<sub>N</sub>(t‑P‑L)]<sub>N×(L+P+1)</sub>是发送信号阵,P为信道阶数,L为均衡器阶数,t为时间,N为所需数据长度;s<sub>L+P</sub>(t)=[s(t),…,s(t‑L‑P)]<sup>T</sup>;s属于集合A,A为任意调制信号数字星座图的实部和虚部的幅度集合,Г是由h<sub>jj</sub>,jj=0,1,…,P构成的块Toeplitz矩阵,h<sub>jj</sub>=[h<sub>0</sub>,…,h<sub>P</sub>]<sub>q×(P+1)</sub>是信道冲激响应;q是过采样因子;(·)<sup>H</sup>表示共轭转置;(·)<sup>T</sup>表示转置;(X<sub>N</sub>)<sub>N×(L+1)q</sub>=[x<sub>L</sub>(t),…,x<sub>L</sub>(t+N‑1)]<sup>T</sup>是接收数据阵,其中x<sub>L</sub>(t)=Г·s<sub>L+P</sub>(t);②.将接收数据矩阵进行奇异值分解获得值空间和零空间向量<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>X</mi><mi>N</mi></msub><mo>=</mo><mo>[</mo><mi>U</mi><mo>,</mo><msub><mi>U</mi><mi>c</mi></msub><mo>]</mo><mo>&CenterDot;</mo><mfenced open='[' close=']'><mtable><mtr><mtd><mi>D</mi></mtd></mtr><mtr><mtd><mn>0</mn></mtd></mtr></mtable></mfenced><mo>&CenterDot;</mo><msup><mi>V</mi><mi>H</mi></msup></mrow>]]></math><img file="FDA0000486699760000011.GIF" wi="458" he="138" /></maths>这里U是奇异值分解中的酉基阵;0是零矩阵,V和U<sub>c</sub>是酉基阵;D是奇异值阵;③.由于复数连续全反馈神经网络能量函数的平衡点就是优化问题对应的极值点,将检测信号的优化问题映射到能量函数,根据零空间构造性能函数与优化问题<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>J</mi><mn>0</mn></msub><mo>=</mo><msubsup><mi>s</mi><mi>N</mi><mi>H</mi></msubsup><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mi>d</mi><mo>)</mo></mrow><mi>Q</mi><msub><mi>s</mi><mi>N</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mi>d</mi><mo>)</mo></mrow><mo>=</mo><msup><mi>s</mi><mi>H</mi></msup><mi>Qs</mi><mo>,</mo></mrow>]]></math><img file="FDA0000486699760000012.GIF" wi="671" he="59" /></maths><maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mover><mi>s</mi><mo>^</mo></mover><mo>=</mo><munder><mrow><mi>arg</mi><mi>min</mi></mrow><mrow><mover><mi>s</mi><mo>^</mo></mover><mo>&Element;</mo><msup><mi>A</mi><mi>N</mi></msup></mrow></munder><mo>{</mo><msub><mi>J</mi><mn>0</mn></msub><mo>}</mo></mrow>]]></math><img file="FDA0000486699760000013.GIF" wi="318" he="90" /></maths>构造权矩阵W=1.1(I‑Q),其中,<img file="FDA0000486699760000014.GIF" wi="23" he="43" />表示信号的估计值,其每个元素都属于星座点其所属字符集;<img file="FDA0000486699760000017.GIF" wi="237" he="63" />I为单位阵;Г满列秩时,一定有<img file="FDA0000486699760000015.GIF" wi="208" he="59" />满足Qs<sub>N</sub>(t‑d)=0;d=0,…,K+L,且(U<sub>c</sub>)<sub>N×(N‑(L+K+1))</sub>是奇异值分解<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>X</mi><mi>N</mi></msub><mo>=</mo><mo>[</mo><mi>U</mi><mo>,</mo><msub><mi>U</mi><mi>c</mi></msub><mo>]</mo><mo>&CenterDot;</mo><mfenced open='[' close=']'><mtable><mtr><mtd><mi>D</mi></mtd></mtr><mtr><mtd><mn>0</mn></mtd></mtr></mtable></mfenced><mo>&CenterDot;</mo><msup><mi>V</mi><mi>H</mi></msup></mrow>]]></math><img file="FDA0000486699760000016.GIF" wi="458" he="138" /></maths>中的酉基阵;④.初始状态向量设置与网络运行记U:=[u<sub>1</sub>,u<sub>2</sub>,…,u<sub>r</sub>]<sub>N×r</sub>,u<sub>j</sub>为列向量,j=1,2,…r,r=L+P+1为列向量总数,迭代总数为n,设置放大因子α&lt;8,步骤一:首轮网络运行迭代,初始状态设置步骤如下;1)计算值空间矩阵U中每列元素绝对值的最大值β<sub>j</sub>,j=1,2,…r;2)构造<img file="FDA0000486699760000021.GIF" wi="572" he="502" />3)计算U<sub>z</sub>=f(U<sub>g</sub>),这里f(U<sub>g</sub>)是由f(v)=fix(v/2)+sign(v)所构成的算子,v表示自变量,这里fix(·)表示向原点取整,sign(·)为符号函数;4)记U<sub>z</sub>=[u<sub>z1</sub>,u<sub>z2</sub>,…,u<sub>zr</sub>],u<sub>zj</sub>为列向量,j=1,2,…r;计算指标量<img file="FDA0000486699760000022.GIF" wi="432" he="75" />diag(·)为取矩阵对角元运算,取C<sub>z</sub>中最小值所对应的列向量作为初始向量;步骤二:若采用统一的离散型全反馈神经网络动力学方程,将时间离散化s(k+1)=s<sup>R</sup>(k+1)+i·s<sup>I</sup>(k+1)=(Wf(s(k)))<sup>R</sup>+i·(Wf(s(k)))<sup>I</sup>进行迭代;这里i为虚数单位,k表示迭代次数,f(·)为非线性激活函数算子,(·)<sup>R</sup>和(·)<sup>I</sup>分别为取实部和虚部运算;若k&lt;n且此时s(k+1)=s(k),则退出迭代,算法结束,此时得到的信号就是待检测的原始发送信号;若k=n,且此时s(k+1)≠s(k),若U<sub>z</sub>中仍有剩余列向量可参与新一轮迭代计算,则存储s(k),记为s<sup>*</sup>,计算s<sub>0</sub>与s<sup>*</sup>的欧式距离d<sup>*</sup>,进入步骤三,否则结束;步骤三:分别计算U<sub>z</sub>矩阵中未参与过迭代计算的剩余列向量与s<sup>*</sup>之间的欧式距离,剔除值小于d<sup>*</sup>的对应列向量,并将大于d<sup>*</sup>的值按升序排列成向量d=[d<sub>1</sub>,d<sub>2</sub>,…,d<sub>m</sub>],将d中最小值所对应的U<sub>z</sub>矩阵中剩余列向量作为新的初始状态向量网络重新进入迭代。
地址 210003 江苏省南京市新模范马路66号