-
以GPS为代表的卫星导航系统可提供高精度全天候的导航定位和授时信息,被广泛应用于国防建设和国民经济的众多领域[1]。近年来,随着GPS在移动和便携智能终端中普及,人们对其接收模块的功耗和成本提出了更高要求。在GPS信号处理过程中,捕获部分处理数据量大、消耗资源多,是影响接收模块功耗和成本的重要因素[2-3]。因此,减少捕获部分的数据量和运算量是进一步降低GPS接收模块功耗和成本的有效途径,但这具有相当的难度。由于采用了基于C/A码的直接序列扩频技术来保证远距离传输的抗干扰能力,GPS信号带宽相对较宽,导致接收端采样率较高(十几兆赫兹至几十兆赫兹)。对看重低功耗和低成本的便携式导航应用而言,高采样率为数据存储和处理带来了巨大负担。另一方面,大多数传统GPS信号捕获算法都基于循环相关运算,通过遍历所有可能的多普勒频率和码相位来完成信号粗同步,这也不可避免地导致了捕获过程的大运算量。
为降低捕获过程的数据量和运算量,人们进行了一系列研究。在基于时域相关的捕获算法方面,通用策略是在数据压缩的基础上尽量合并相同的运算。例如,考虑到半码片的捕获精度已经能够满足跟踪处理的入锁条件,很多算法都在相关运算之前按半码片精度对数据进行“打包”,以降低捕获过程的数据量。在此基础上,文献[4]通过数据重排处理,使得合并某些乘法运算成为可能,提高了相关运算的效率。文献[5]提出了先叠加再相关的方法,减少了相关运算的次数。文献[6]提出了基于两级捕获策略的XFAST算法,第一级对长扩频码分段折叠进行粗捕,然后第二级确认具体的码相位。文献[7]提出了基于局部积分的并行捕获算法,节省了运算资源。在频域捕获算法方面,基本考虑是将循环相关等效为卷积运算,然后利用FFT快速算法降低运算量[8-9]。针对某些长扩频码系统,研究人员进一步利用匹配滤波器降低捕获过程的运算量[10]。在数据压缩方面,研究人员利用基于平均相关处理的数据压缩技术[11-13]和由此改进而来的基于向上取整的压缩采样与冗余抗噪技术[14],提出了高效的频域捕获算法。文献[15]利用Walsh序列和Gold序列的映射关系,提出了基于Walsh变换的快速捕获算法。总体而言,上述算法都不同程度地降低了数据量和运算量,提高了捕获效率。但是,这些算法在进行数据压缩时,都无法突破半码片捕获精度的限制,即对于码长1 023的C/A码,要实现半码片捕获精度至少需要2 046个数据包。受此限制的影响,上述算法在运算量方面的改进也存在局限。
压缩感知理论为进一步降低捕获所需的数据量提供了新思路。区别于传统数据压缩方法,在压缩感知理论中数据量不取决于信号带宽或长度,而取决于信息在信号中的结构[16-17]。这使得突破半码片捕获精度对数据量的限制成为可能。事实上,压缩感知已经在图像处理、智能天线、认知无线电、超宽带系统等领域受到关注,但其在卫星导航中的研究还较少。在文献[18]中,压缩感知被用来解决GPS/SINS组合导航中的融合滤波问题。该方法为压缩感知在导航系统中的应用提供了思路,但主要针对后续组合导航中Kalman融合滤波的误差均方矩阵计算而言,没有涉及导航信号本身的处理。文献[19]首次将压缩感知理论用于导航信号捕获,并提出了基于正交匹配追踪法的捕获算法,文献[20]完成了该算法的具体实现工作。正交匹配追踪法本质上是一种贪婪算法,运算量较大且难以并行实现。文献[21-22]利用Walsh-Hadamard矩阵构造压缩测量矩阵,提出了双阶段GPS信号压缩感知捕获算法。该算法具有和传统相关捕获算法相同的性能,但要求压缩测量矩阵具有特殊的结构。另外,由于需要进行双阶段的压缩感知,该算法捕获过程略显复杂。文献[23]则提出了基于稀疏傅里叶变换(sparse Fourier transform, SFT)的捕获算法,它针对相关峰的稀疏特性,将SFT技术引入频域并行捕获中,简化基于FFT的传统频域码相位搜索算法。该算法运算量很低,效率非常高,但捕获性能损失较大。
基于上述考虑,本文不再采用循环相关的捕获方法,而是通过分析GPS信号的稀疏性,利用正交的C/A码构成基矩阵,以C/A码相位为稀疏系数,对GPS信号进行近似稀疏表示,并在此基础上建立GPS信号捕获的压缩感知模型。其次,将GPS压缩感知捕获问题纳入ADMM的框架[24],提出一种高效的并行捕获算法。和现有GPS信号压缩感知捕获算法相比,该算法将压缩感知问题分解成多个相对独立的子问题并行迭代求解,并且迭代的每一步都有简单闭合解,因而具有很低的运算量,能够高效地完成信号捕获的任务。
-
GPS信号的C/A码是码率为1.023 Mbps的Gold码,码长N=1 023。不同卫星的C/A码相互正交,同一卫星的C/A码及其循环移位序列也相互正交。因此,C/A码及其循环移位序列可以构成一个正交矩阵。将该正交矩阵作为变换基,就可以对GPS信号进行稀疏表示。
假设g0=[g(0), g(1), ···, g(N−1)]T∈RN×1为任意满足上述条件的Gold码,将g0循环移位m个码片后,得到序列gm=[g(m), g(m+1), ···, g(N−1), g(0), g(1), ···, g(m−1)]T∈RN×1,m=0, 1, 2, ···, N−1, 则gm可以表示为:
$${{{g}}_m}=\left[ {\begin{array}{*{20}{c}} {g(0)}&{g(1)}& \cdots&{g(N - 1)} \\ {g(1)}&{g(2)}& \cdots&{g(0)} \\ \vdots& \vdots& {\rm{}}& \vdots \\ {g(N - 1)}&{g(0)}& \cdots&{g(N - 2)} \end{array}} \right]\left[ {\begin{array}{*{20}{c}} {\gamma (0)} \\ {\gamma (1)} \\ \vdots \\ {\gamma (N - 1)} \end{array}} \right]={{G}}{{{\gamma }}_m}$$ (1) 式中,G=[g0, g1, ···, gN−1]∈RN×N是由Gold码及其循环移位序列构成的正交变换基矩阵;γm=[γ (0), γ (1), ···, γ (N−1)]T∈RN×1是变换系数向量。显然,在γm中,除了γ (m)=1外,其余系数都为0,即γm是稀疏向量。因此,GPS中任意相位的Gold码序列都可以用式(1)进行稀疏表示。
据此可对捕获过程中的GPS信号进行稀疏表示。捕获的实质是进行多普勒频率和C/A码相位二维搜索,根据相关峰位置获得频率和相位估计值。在对某颗GPS卫星的采样信号进行载波(多普勒)剥离和半码片数据打包等处理后,一个C/A码周期的信号可以表示为:
$$\begin{split} & r(n\,;\;{{\hat \omega }_d})=adc(n\,;\;{\omega _d})\exp [{\rm j}(({{\hat \omega }_d} - {\omega _d})n + \phi)] + v(n)=\!\!\!\\ &\qquad\qquad\quad \beta c(n\,;\;{\omega _d})\exp ({\rm j}\Delta {\omega _d}n) + v(n)\;\quad \\ &\qquad\qquad\qquad n=0,\;2,\; \cdots \;,\;2N - 1 \end{split} $$ (2) 式中,由于进行半码片打包,一个C/A码周期的序列长度为2N=2 046;ωd是GPS信号的多普勒频率;
${\hat \omega _d}$ 是多普勒频率估计值;Δωd=${\hat \omega _d}$ −ωd是多普勒估计误差;a、d和ϕ分别表示GPS信号的幅度、导航电文和载波初相,考虑到导航电文码率较低、信号幅度变化缓慢,这里假设它们在捕获处理的时间段内恒定,表示为β=adexp(jϕ);v(n)是噪声项;c(n; ωd)表示多普勒为ωd时的C/A码序列的半码片打包数据。当多普勒估计准确时,有
${\hat \omega _d}={\omega _d}$ 和Δωd=0,式(2)表示为:$$\begin{split} & r(n\,;\;{\omega _d})=\beta c(n\,;\;{\omega _d}) + v(n) \approx \\ & \qquad\;\;\; \beta c(n\,;\;0) + v(n)\quad \end{split} $$ (3) 式中的近似处理考虑如下:在非高动态应用中,多普勒频率的范围通常为[−5, 5] KHz,折算到C/A码上约为[−3.24, 3.24] Hz。相对于1.023 M的C/A码码率而言,这个多普勒频率在1 ms内的影响可以忽略不计[2]。因此,式中有c(n; ωd)≈c(n; 0)。
定义c0=[c(0; 0), c(1; 0), ···, c(2N−1; 0)]T∈C2N×1。根据上面的分析,c0及其循环移位序列之间仍可以看作是近似正交的。令cm为c0循环移位m个数据后的序列,即cm=[c(m; 0), c(m+1; 0), ···, c(2N−1; 0), c(0; 0), c(1; 0), ···, c(m−1; 0)]T∈R2N×1,m=0, 1, 2, ···, 2N−1。因此,在正确剥离载波和多普勒后,从任意码相位开始的一个C/A码周期的信号都可以构成一个向量,即r(ωd)=[r(0; ωd), r(1; ωd), ···, r(2N−1; ωd)]T∈C2N×1,它可以写成如下形式:
$$\begin{split} & {{r}}({\omega _d})=\beta \left[ {{{{c}}_0},\;{{{c}}_1},\; \cdots ,\;{{{c}}_{2N - 1}}} \right]\left[ {\begin{array}{*{20}{c}} {p(0;\;{\omega _d})} \\ {p(1;\;{\omega _d})} \\ \vdots \\ {p(2N - 1;\;{\omega _d})} \end{array}} \right]+\\ &\qquad\;\;\;\;{\rm{ }}\left[ {\begin{array}{*{20}{c}} {v(0)} \\ {v(1)} \\ \vdots \\ {v(2N - 1)} \end{array}} \right]={{Cp}}({\omega _d}) + {{v}} \end{split} $$ (4) 式中,C=[c0, c1, ···, c2N−1]∈C2N×2N为变换基矩阵;p(ωd)=β[p(0; ωd), p(1; ωd), ···, p(2N−1; ωd)]T∈C2N×1为多普勒估计准确时的码相位向量;v=[v(0), v(1), ···, v(2N−1)]T∈C2N×1为噪声向量。
显然,如果多普勒频率被成功剥离,则p(ωd)是一个稀疏向量,仅有少数较大的非零值,其峰值出现的地方为C/A码相位估计值。与之相对,如果多普勒估计值存在误差,即
${\hat \omega _d} \ne {\omega _d}$ ,则${{r}}({\hat \omega _d})$ 中仍残留有多普勒分量,${{p}}({\hat \omega _d})$ 的稀疏性就会受到影响。 -
基于式(1)中GPS信号的稀疏表示,可利用压缩感知理论[16-17]完成对稀疏向量p(ωd)的估计,从而取代传统捕获算法中的循环相关运算。
使用和变换基矩阵C不相关的观测矩阵Ω∈CM×2N,M<<2N,对r(ωd)进行压缩采样,得到观测序列:
$${{y}}({\omega _d})={{\varOmega r}}({\omega _d})={{\varOmega}} \left[ {{{Cp}}({\omega _d}) + {{v}}} \right]={{\varTheta p}}({\omega _d}) + {{u}}$$ (5) 式中,
${{\varTheta}}={{\varOmega C}}$ ∈CM×2N;u=Ωv。实际应用中,观测矩阵Ω的选择很多,常用的有随机高斯矩阵、贝努利矩阵、随机傅立叶矩阵等。由于多普勒估计准确时,p(ωd)为稀疏向量,可以通过求解如下优化问题:
$$\begin{split} & ({\rm{P}}1)\quad \mathop {\min }\limits_{{{p}}({\omega _d})} \;\;||{{p}}({\omega _d})|{|_0} \\ & \quad \;\quad \;\;{\rm{s}}{\rm{.t}}{\rm{.}}\;\;\,\,{{y}}({\omega _d})={{\varTheta p}}({\omega _d}) \end{split} $$ (6) 获得p(ωd)的估计值。
基于上述模型,本文提出了基于压缩感知的GPS信号捕获算法,其核心步骤为:
1)初始化捕获参数,获得随机观测矩阵Ω、基矩阵C和混合矩阵Θ=ΩC;
2) Repeat;
3)设置多普勒估计值
${\hat \omega _d}$ ;4)剥离载波和多普勒频率,半码片打包,获得
${{r}}({\hat \omega _d})$ ;5)压缩采样,获得
${{y}}({\hat \omega _d})={{\varOmega r}}({\hat \omega _d})$ ;6)
$ \begin{array}{l} {{p}}({{\hat \omega }_d})=\mathop {\arg \min }\limits_{{{p}}({{\hat \omega }_d})} \;||{{p}}({{\hat \omega }_d})|{|_0} \\ \quad \quad \quad \quad {\rm{s}}{\rm{.t}}{\rm{.}}\;\quad \;{{y}}({{\hat \omega }_d})={{\varTheta p}}({{\hat \omega }_d}) \\ \end{array}$ 7) Until遍历所有多普勒估计值
${\hat \omega _d}$ ;8)分析所有的
${\bf{p}}({\hat \omega _d})$ ,判断是否捕获成功;该算法与传统捕获算法最大的差别是不再需要循环相关运算,而是通过求解(P1)获得当前多普勒频率估计值
${\hat \omega _d}$ 对应的相位估计结果${{p}}({\hat \omega _d})$ ,如步骤6)所示。与此同时,捕获过程仅需要存储维度为M的向量${{y}}({\hat \omega _d})$ ,而非维度为2N的向量${{r}}({\hat \omega _d})$ ,这里有M<<2N。当获得所有多普勒估计值对应的相位估计结果后,通过峰值检测和计算峰均比来判断是否成功捕获到某颗卫星的信号,并给出相应的多普勒频率和C/A码相位估计值。由于l0范数项是非凸的,(P1)的求解十分复杂,常见处理方法是用l1范数来近似l0范数,即:
$$\begin{split} & ({\rm{P}}2)\quad \mathop {\min }\limits_{{{p}}({\omega _d})} \;\;||{{p}}({\omega _d})|{|_1} \\ & \quad \;\quad \;\;\;{\rm{s}}{\rm{.t}}{\rm{.}}\;\;\,\,{{y}}({\omega _d})={{\varTheta p}}({\omega _d}) \end{split} $$ (7) 由此得到的(P2)为凸优化问题,常见求解算法有基追踪法、(正交)匹配追踪法(orthogonal matching pursuit, OMP)、子空间追踪法[16-17]等。除此之外,还可以通过软件包(如CVX[24]等)直接求解。但是,上述一系列追踪算法本质上是贪婪搜索算法,计算复杂度偏高[17],同时难以并行执行(基于软件包的方法同样难以并行执行)。考虑到整个优化问题维数较高,分布式的并行求解算法显然更具吸引力。为此,本文将(P2)纳入ADMM的框架,提出一种高效的并行GPS信号捕获算法。
-
在下面的讨论中,考虑(P2)更一般的形式:
$$\begin{split} & ({\rm{P}}2{\rm{a}})\quad \mathop {\min }\limits_{{{p}}({{\hat \omega }_d})} \;\;||{{p}}({{\hat \omega }_d})|{|_1} \\ & \quad \;\quad \;\;\;\,\;{\rm{s}}{\rm{.t}}{\rm{.}}\;\;\,\,{{y}}({{\hat \omega }_d})={{\varTheta p}}({{\hat \omega }_d}) \\ \end{split} $$ (8) 由于存在噪声v[n],(P2a)可能没有可行解。为了完成捕获,对(P2a)做如下变形,得到:
$$({\rm{P}}2{\rm{b}})\quad \mathop {\min }\limits_{{{p}}({{\hat \omega }_d})} \;\;\lambda ||{{p}}({\hat \omega _d})|{|_1} + \frac{1}{2}||{{y}}({\hat \omega _d}) - {{\varTheta p}}({\hat \omega _d})||_2^2$$ (9) 式中,λ>0用于调节(P2a)求解过程中目标函数和限制条件的权重。
为将(P2b)分解成相对独立的子问题,引入冗余变量
${{q}}({\hat \omega _d})={{p}}({\hat \omega _d})$ ,则(P2b)可以等效为:$$\begin{split} & ({\rm{P}}2{\rm{c}})\;\,\;\mathop {\min }\limits_{\{ {{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d})\} } \;\;\lambda ||{{q}}({{\hat \omega }_d})|{|_1} + \frac{1}{2}||{{y}}({{\hat \omega }_d}) - {{\varTheta p}}({{\hat \omega }_d})||_2^2 \\ & \quad \;\quad \;\;\;\,\;\quad \;\;{\rm{s}}{\rm{.t}}{\rm{.}}\;\;\,\,\quad \,{{q}}({{\hat \omega }_d})={{p}}({{\hat \omega }_d}) \end{split} $$ (10) 使用增广拉格朗日(augmented Lagrangian)方法[25],(P2c)的最优解可以通过求解如下问题获得:
$$({\rm{P}}3)\quad \mathop {\max }\limits_{\{ {{\eta}} \} } \;\mathop {\min }\limits_{\{ {{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d})\} } \;\;{L_\rho }\left( {{{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d}),\;{{\eta}} } \right)$$ (11) 式中,ρ>0为惩罚因子;η=[η0, η1, ···, η2N−1]T是
${{q}}({\hat \omega _d})={{p}}({\hat \omega _d})$ 的拉格朗日乘子(Lagrangian Multiplier);${L_\rho }\left( {{{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d}),\;{{\eta}} } \right)$ 为增广拉格朗日函数,定义为:$$\begin{split} & \quad\quad\quad\quad\quad {L_\rho }({{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d}),\;{{\eta}}) = \\ & \quad\quad\;\lambda ||{{q}}({{\hat \omega }_d})|{|_1}{\rm{ + }}\frac{1}{2}||{{y}}({{\hat \omega }_d}) - {{\varTheta p}}({{\hat \omega }_d})||_2^2 + \\ & \operatorname{Re} \left\{ {{{{\eta}} ^{\rm{H}}}\left[ {{{q}}({{\hat \omega }_d}) - {{p}}({{\hat \omega }_d})} \right]} \right\} + \frac{\rho }{2}||{{q}}({{\hat \omega }_d}) - {{p}}({{\hat \omega }_d})||_2^2 \end{split} $$ (12) 于是,可将变量
$\left\{ {{{p}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d})} \right\}$ 分成${{p}}({\hat \omega _d})$ 和${{q}}({\hat \omega _d})$ ,按照如下的ADMM框架[25]迭代求解:$$\left\{ \begin{array}{l} {{{p}}^{(t + 1)}}({{\hat \omega }_d})=\mathop {\arg \min }\limits_{{{p}}({{\hat \omega }_d})} {L_\rho }\left( {{{p}}({{\hat \omega }_d}),\;{{{q}}^{(t)}}({{\hat \omega }_d}),\;{{{\eta }}^{(t)}}} \right) \\ {{{q}}^{(t{\rm{ + }}1)}}({{\hat \omega }_d})=\mathop {\arg \min }\limits_{{{q}}({{\hat \omega }_d})} {L_\rho }\left( {{{{p}}^{(t + 1)}}({{\hat \omega }_d}),\;{{q}}({{\hat \omega }_d}),\;{{{\eta }}^{(t)}}} \right) \\ {{{\eta }}^{(t + 1)}}={{{\eta }}^{(t)}} + \rho \left[ {{{{q}}^{(t + 1)}}({{\hat \omega }_d}) - {{{p}}^{(t + 1)}}({{\hat \omega }_d})} \right] \end{array} \right.$$ (13) 式中,t为迭代序号。尽管从表面上看,增加冗余变量
${{q}}({\hat \omega _d})$ 使问题更加复杂,但更新${{p}}({\hat \omega _d})$ 和${{q}}({\hat \omega _d})$ 的问题可以分解成更多相对独立的子问题,从而进行分布式并行求解。更新
${{p}}({\hat \omega _d})$ 时,利用一阶最优条件,即:$$ \begin{split} & \quad\quad\quad\quad\quad \frac{{\partial {L_\rho }\left( {{{p}}({{\hat \omega }_d}),\;{{{q}}^{(t)}}({{\hat \omega }_d}),\;{{{\eta }}^{(t)}}} \right)}}{{\partial {{p}}({{\hat \omega }_d})}} = \\ & {{{\varTheta }}^{\rm H}}\left[ {{{\varTheta }} {{p}}({{\hat \omega }_d}) - {{y}}({{\hat \omega }_d})} \right] - {{{\eta }}^{(t)}} + \rho \left[ {{{p}}({{\hat \omega }_d}) - {{{q}}^{(t)}}({{\hat \omega }_d})} \right] =0 \end{split} $$ (14) 求得
${{{p}}^{(t + 1)}}({\hat \omega _d})$ 的最优解为:$${{{p}}^{(t + 1)}}({\hat \omega _d})={\left( {{{{\varTheta }}^{\rm H}}{{\varTheta }} + \rho {{I}}} \right)^{ - 1}}\left[ {{{{\varTheta }}^{\rm H}}{{y}}({{\hat \omega }_d}) + \rho {{{q}}^{(t)}}({{\hat \omega }_d}) + {{{\eta }}^{(t)}}} \right]$$ (15) 注意
${{{\varTheta }}^{\rm H}}{{y}}({\hat \omega _d})$ 和逆矩阵${({{{\varTheta }}^{\rm H}}{{\varTheta }} + \rho {{I}})^{ - 1}}$ 都可以事先计算,不妨将后者简记为:$${{\varPhi }}={\left( {{{{\varTheta }}^{\rm H}}{{\varTheta }} + \rho {{I}}} \right)^{ - 1}}={\left[ {{{\varphi }}_0^{\rm T},\;\;{{\varphi }}_1^{\rm T},\;\; \cdots ,\;\;{{\varphi }}_{2N - 1}^{\rm T}} \right]^{\rm T}}$$ (16) 即φm∈C2N×1表示Φ的第m行,m=0, 1, ···, 2N−1。则
${{{p}}^{(t + 1)}}({\hat \omega _d})$ 中的各元素可以并行计算,即:$$\begin{split} & {p^{(t + 1)}}(m;\;{{\hat \omega }_d})={{{\varphi }}_m}\left[ {{{{\varTheta }}^{\rm H}}{{y}}({{\hat \omega }_d}) + \rho {{{q}}^{(t)}}({{\hat \omega }_d}) + {{{\eta }}^{(t)}}} \right] \\ & \qquad\qquad m=0,\;1,\;\cdots,\;2N - 1\quad \quad \\ \end{split} $$ (17) 根据式中各参数的维度,可知更新
${p^{(t + 1)}}(m;\;{\hat \omega _d})$ 的运算量为O(2N);更新整个${{{p}}^{(t + 1)}}({\hat \omega _d})$ 的运算量为O((2N)2)。更新
${{q}}({\hat \omega _d})$ 的问题可以表示为:$$({\rm{P}}4)\quad \mathop {\min }\limits_{{{q}}({{\hat \omega }_d})} \;\;\sum\limits_{m=0}^{2N - 1} {\left\{\!\! \begin{array}{l} |q(m;\;{{\hat \omega }_d})| + \operatorname{Re} \left\{ {{{[\eta _m^{(t)}]}^ * }q(m;\;{{\hat \omega }_d})} \right\}+\\ \dfrac{\rho }{2}|q(m;\;{{\hat \omega }_d}) - {p^{(t + 1)}}(m;\;{{\hat \omega }_d}){|^2} \end{array} \!\! \right\}} $$ (18) 显然,(P4)可以分解为2N个独立的子问题,分别更新
${q^{(t + 1)}}(m;\;{\hat \omega _d})$ , m=0, 1, ···, 2N−1,即:$$\mathop {\min }\limits_{q(m;\;{{\hat \omega }_d})} \;\;\left\{ \!\!\begin{array}{l} |q(m;\;{{\hat \omega }_d})| + \operatorname{Re} \left\{ {{{[\eta _m^{(t)}]}^ * }q(m;\;{{\hat \omega }_d})} \right\} + \\ \dfrac{\rho }{2}|q(m;\;{{\hat \omega }_d}) - {p^{(t + 1)}}(m;\;{{\hat \omega }_d}){|^2} \\ \end{array} \!\!\right\}$$ (19) 同样,利用一阶最优条件,有:
$$ - \eta _m^{(t)} - \rho \left[ {q(m;\;{{\hat \omega }_d}) - {p^{(t + 1)}}(m;\;{{\hat \omega }_d})} \right] \in \lambda \frac{{\partial \;{\rm{|}}q(m;\;{{\hat \omega }_d})|}}{{\partial \,q(m;\;{{\hat \omega }_d})}}$$ (20) 由于
${\rm{|}}q(m;\;{\hat \omega _d})|$ 是非平滑的,这里需要使用它的次梯度(sub-gradient),表示为[26]:$$\frac{{\partial \;{\rm{|}}q(m;\;{{\hat \omega }_d})|}}{{\partial \,q(m;\;{{\hat \omega }_d})}}=\left\{ \begin{array}{l} \dfrac{{q(m;\;{{\hat \omega }_d})}}{{|q(m;\;{{\hat \omega }_d})|}}\quad \;\;\;\;\;\;\; q(m;\;{{\hat \omega }_d}) \ne 0 \\ \left\{ {x\left| {\;\;|x|\; \leqslant 1} \right.\;} \right\}\quad\;\;\; q(m;\;{{\hat \omega }_d})=0 \\ \end{array} \right.$$ (21) 将式代入式有:
$$ {q^{(t + 1)}}(m;\;{\hat \omega _d})= \left\{ \begin{array}{l} 0\;\;\;\;\;\;\;\;\;\;\;\;\;\;\left| \xi \right| \leqslant \lambda \\ \dfrac{{\left| \xi \right| - \lambda }}{\rho }\dfrac{\xi }{{\left| \xi \right|}}\;\;{\text{其他}} \end{array} \right. $$ (22) 式中,
$\xi=\rho {p^{(t + 1)}}(m;\;{\hat \omega _d}) - \eta _m^{(t)}$ 。显然,更新${{{q}}^{(t + 1)}}(m;\;{\hat \omega _d})$ 的运算量为O(1);更新整个${{{q}}^{(t + 1)}}({\hat \omega _d})$ 的运算量为O(2N)。更新拉格朗日乘子η同样可以并行执行,即:
$$\begin{split} & \eta _m^{(t + 1)}=\eta _m^{(t)} + \rho \left[ {{q^{(t + 1)}}(m;\;{{\hat \omega }_d}) - {p^{(t + 1)}}(m;\;{{\hat \omega }_d})} \right] \\ & \qquad\qquad m=0,\;1,\;\cdots,\;2N - 1 \\ \end{split} $$ (23) 式中,更新
$\eta _m^{(t + 1)}$ 的运算量为O(1),更新整个${{{\eta}} ^{(t + 1)}}$ 的运算量为O(2N)。因此,上述步骤6)可以利用基于ADMM的并行迭代算法来完成,最终获得C/A码相位估计值
${{p}}({\hat \omega _d})$ ,算法的主要步骤如下所示。1) 初始化ρ, λ, η(0)和
${{{q}}^{(0)}}({\hat \omega _d})$ , 计算${{\varPhi }}={({{{\varTheta }}^{\rm H}}{{\varTheta }} + \rho {{I}})^{ - 1}}$ ;2) 重复
3) 更新
${{{p}}^{(t + 1)}}({\hat \omega _d})$ for m=0, 1, 2, …, 2N−1, 并行执行
${p^{(t + 1)}}(m;\;{\hat \omega _d})={{\bf{\varphi }}_m}\left[ {{{\bf{\varTheta }}^{\rm H}}{{y}}({{\hat \omega }_d}) + \rho {{{q}}^{(t)}}({{\hat \omega }_d}) + {{\bf{\eta }}^{(t)}}} \right]$ end
4) 更新
${{{q}}^{(t + 1)}}({\hat \omega _d})$ for m=0, 1, 2, ···, 2N−1, 并行执行
${q^{(t + 1)}}(m;\;{\hat \omega _d})=\left\{ \begin{array}{l} 0\quad \quad \quad \left| \xi \right| \leqslant \lambda \\ \dfrac{{\left| \xi \right| - \lambda }}{\rho } \dfrac{\xi }{{\left| \xi \right|}}\quad \text{其他} \\ \end{array} \right.$ end
5) 更新
${{\bf{\eta }}^{(t + 1)}}$ :for m=1, 2, ···, 2N−1, 并行执行
$\eta _m^{(t + 1)}=\eta _m^{(t)} + \rho \left[ {{q^{(t + 1)}}(m;\;{{\hat \omega }_d}) - {p^{(t + 1)}}(m;\;{{\hat \omega }_d})} \right]$ end
6) Until迭代过程收敛;
ADMM算法可以确保求得(P2b)的全局最优解。由文献[25]可知,如果(P2b)具有可行解,且ADMM各个子问题都可以唯一地求解,则ADMM迭代过程的每一个聚集点都是原问题的最优解。由于(P2b)是一个无限制条件的凸优化问题,因而必然具有可行解。同时,由于ADMM迭代过程的每一个子问题均为强凸(strongly convex)的,因此,使用一阶最优条件可以唯一地获得其最优解。因此,本文提出的ADMM算法能够获得原问题的全局最优解。
同时,本文提出的ADMM算法具有可分解的结构,特别适合分布式并行实现,能够提高算法效率。如图1所示,整个捕获算法可以由2N个捕获通道并行执行,同时需要一个数据通道负责数据收集和分发。具体而言,每一轮ADMM迭代分为4个阶段。在阶段1,通道m更新
${p^{(t + 1)}}(m;\;{\hat \omega _d})$ ;在阶段2,通道m更新${q^{(t + 1)}}(m;\;{\hat \omega _d})$ ;在阶段3,通道m更新$\eta _m^{(t + 1)}$ ;在阶段4,通道m将${q^{(t + 1)}}(m;\;{\hat \omega _d})$ 和$\eta _m^{(t + 1)}$ 传送给数据通道,数据通道收集整理这些数据,获得${{{q}}^{(t + 1)}}({\hat \omega _d})$ 和${{{\eta }}^{(t + 1)}}$ ,并将它们广播给2N个捕获通道。然后转入阶段1,开始下一轮ADMM迭代。注意到在算法并行迭代的每一步都有简单闭合解,因而运算量很低。根据上述分析,ADMM算法每轮迭代的运算量为O((2N)2),并行执行过程中单个通道的运算量为O(2N)。OMP算法每轮迭代的平均运算量为O(N3),主要用于求解最小二乘问题,同时,OMP算法难以并行执行。因此,本文提出的ADMM算法比OMP算法更高效。
Parallel GPS Signal Acquisition Algorithm Based on Alternating Direction Method of Multipliers
-
摘要: 信号捕获是GPS基带信号处理的核心组成部分,是影响GPS接收模块功耗和成本的重要因素。传统捕获算法处理数据量大、消耗资源多,该文利用压缩感知理论完成GPS信号捕获,将数据量降低到半码片捕获精度要求的门限之下,同时提出高效的并行捕获算法以降低运算量。具体而言,首先利用C/A码构造正交基,建立GPS信号捕获的压缩感知模型;其次,将该压缩感知问题纳入交错方向乘子法(ADMM)的框架,提出一种高效的并行捕获算法。在该算法中,压缩感知问题被分解成多个相对独立的子问题并行迭代求解,并且迭代的每一步都有简单的闭合解,因此运算量很低。仿真结果验证了该算法的正确性和有效性。Abstract: Signal acquisition is one of the key tasks in global position system (GPS) baseband signal processing, which determines the power consumption and the hardware cost of GPS receivers. However, most conventional acquisition algorithms are based on the correlation operations, thus demanding a large amount of data and consuming lots of computational resources. To alleviate this, we propose an efficient parallel GPS signal acquisition algorithm in this paper, utilizing the idea of compressive sensing. Specifically, we first represent the GPS signals in sparse form by projecting the signal onto a base matrix consisting of the orthogonal C/A codes. Based on this sparse representation, a compressive sensing model of GPS signal acquisition is established. Then, we develop an efficient iterative parallel acquisition algorithm for the compressive sensing problem by fitting it into the framework of alternating direction method of multipliers (ADMM). Each iteration of ADMM can be computed in closed form, thus giving it very low complexity. The efficiency and efficacy of the proposed algorithm are validated by numerical simulations.
-
Key words:
- ADMM /
- compressive sensing /
- GPS /
- signal acquisition /
- sparsity
-
[1] 陈忠贵, 帅平, 曲广吉. 现代卫星导航系统技术特点与发展趋势分析[J]. 中国科学, 2009, 39(4): 686-695. CHEN Zhong-gui, SHUAI Ping, QU Guang-ji. Technical characteristics and development tendency of modern satellite navigation systems[J]. Science in China, 2009, 39(4): 686-695. [2] JAMES B Y T. Fundamentals of global positioning system receivers: A software approach[M]. 2nd Ed. New York: Wiley, 2005. [3] LIN D M, TSUI B Y. Comparison of acquisition methods for software GPS receiver[C]//Proceedings of ION GPS 2000. Salt Lake City, USA: [s.n.], 2000: 2385-2390. [4] LIN Jing-ran, LUO Zheng-ping, LI Yu-bai. A fast time acquisition method for PSK-2DSS system[C]//Proc IEEE ICCP. Chengdu, China: IEEE, 2011: 414-418. [5] 覃新贤, 韩承德, 谢应科. GPS软件接收机中的一种实用高灵敏度快速捕获算法[J]. 电子学报, 2010, 38(1): 100-104. QIN Xin-xian, HAN Cheng-de, XIE Ying-ke. A high sensitive fast acquisition algorithm suitable to implementation software GPS receiver[J]. Acta Electronic Sinica, 2010, 38(1): 100-104. [6] YNAG C, VASQUEZ M J, CHAFFEE J. Fast direct P(Y)-code acquisition using XFAST[C]//Proceedings of ION GPS 1999. Nashville, USA: [s.n.], 1999: 317-324. [7] 杨浩钊. 地基北斗伪卫星捕获算法研究及实现[D]. 成都: 电子科技大学, 2016. YANG Hao-zhao. Research and realization on Beidou pseudolite acquisition algorithm[D]. Chengdu: University of Electronic Science and Technology of China, 2016. [8] VAN NEE D J R, COENEN A J R M. New fast GPS code acquisition technique using FFT[J]. Electronics Letters, 1991, 27(2): 158-160. doi: 10.1049/el:19910102 [9] 焦瑞祥, 茅旭初. 基于DBZP方法的微弱GPS信号快速捕获[J]. 电子学报, 2008, 36(2): 2285-2289. JIAO Rui-xiang, MAO Xu-chu. Double block zero padding based fast acquisition of weak GPS signal[J]. Acta Electronic Sinica, 2008, 36(2): 2285-2289. [10] STARZYK J A, ZHU Z. Averaging correlation for C/A code acquisition and tracking in frequency domain[C]//Proc MWSCAS 2001. Dayton: IEEE, 2001: 905-908. [11] LIU Ning-qing, SUN Bin, GUAN Chun-meng. Research on an improved PMF-FFT fast PN code acquisition algorithm[J]. Communication and Network, 2013, 5(3): 266-270. doi: 10.4236/cn.2013.53B2049 [12] 赵丽, 陈小惠, 潘树国. GPS频域并行码捕获改进算法[J]. 电子测量与仪器学报, 2011, 25(11): 985-990. ZHAO Li, CHEN Xiao-hui, PAN Shu-guo. Improved frequency domain parallel code acquisition algorithm for GPS signal[J]. Journal of Electronic Measurement and Instrument, 2011, 25(11): 985-990. [13] 李新山, 郭伟. GPS信号C/A码快速精密捕获技术研究[J]. 计算机应用研究, 2014, 31(4): 1131-1134. doi: 10.3969/j.issn.1001-3695.2014.04.042 LI Xin-Shan, GUO Wei. Research on fast fine C/A code acquisition technique of GPS signal[J]. Application Research of Computers, 2014, 31(4): 1131-1134. doi: 10.3969/j.issn.1001-3695.2014.04.042 [14] KOU Wei, WEN Zhi-ping, ZHANG Yong-xue, et al. New compress sampling algorithm for FFT-based GPS signal acquisition[C]//The 2007 International Conference on Convergence Information Technology. Gyeongju: IEEE, 2007: 1770-1774. [15] 李仰志, 程剑, 吕晶, 等. 基于Walsh变换的GPS C/A码快速捕获算法[J]. 电子学报, 2011, 39(6): 1384-1388. LI Yang-zhi, CHENG Jian, LÜ Jing, et al. The fast GPS C/A code acquisition algorithm based on Walsh transform[J]. Acta Electronic Sinica, 2011, 39(6): 1384-1388. [16] CANDES E J, ROMBERG J, TAO T. Robust uncertainty principles: Exact signal reconstruction from highly in-complete frequency information[J]. IEEE Trans. on In-formation Theory, 2006, 52(2): 489-509. doi: 10.1109/TIT.2005.862083 [17] 石光明, 刘丹华, 高大化, 等. 压缩感知理论及其研究进展[J]. 电子学报, 2009, 5(37): 1070-1081. SHI Guang-ming, LIU Dan-hua, GAO Da-hua, et al. Advances in theory and application of compressed sensing[J]. Acta Electronica Sinica, 2009, 5(37): 1070-1081. [18] 阮迪, 韩崇昭. 压缩传感理论在GPS/SINS组合导航中的应用[J]. 导弹与航天运载技术, 2010, 4: 49-53. doi: 10.3969/j.issn.1004-7182.2010.04.011 RUAN Di, HAN Chong-zhao. Application of compressive sensing theory in GPS/SINR integrated navigation[J]. Missiles and Space Vehicles, 2010, 4: 49-53. doi: 10.3969/j.issn.1004-7182.2010.04.011 [19] 林静然, 李玉柏. 一种新的直接序列扩频信号的捕获方法: 中国, CN201110278605.3[P]. 2011-09-25. LIN Jing-ran, LI Yu-bai. A novel acquisition algorithm for direct sequence spread spectrum signals: China, CN201110278605.3[P]. 2011-09-25. [20] 陈绘宇. 基于压缩感知的GPS信号捕获算法及其在OMAP3530-EVM板上的实现[D]. 成都: 电子科技大学, 2013. CHEN Hui-yu. The compressive sensing based GPS signal acquisition algorithm and its implementation on the OMAP3530-EVM board[D]. Chengdu: University of Electronic Science and Technology of China, 2013. [21] 程艳合, 杨文革. 基于压缩感知的DSSS信号双阶段捕获方法[J]. 北京航空航天大学学报, 2015, 41(4): 624-631. CHNEG Yan-he, YANG Wen-ge. Two-stage acquisition algorithm for DSSS signal based on compressive sensing[J]. Journal of University of Aeronautics and Astro-nautics, 2015, 41(4): 624-631. [22] 郭晓彤. 基于压缩感知的GPS信号捕获算法研究[D]. 西安: 西安电子科技大学, 2014 GUO Xiao-tong. A study of GPS signal acquisition algorithm based on compressive sensing[D]. Xi’an: Xidian University, 2014. [23] 龚巧娴. 基于SFT的快速捕获与干扰抑制联合算法研究[D]. 北京: 北京理工大学, 2015. GONG Qiao-xian. Research on combined algorithm of acquisition and anti-jamming based on SFT[D]. Beijing: Beijing Institute of Technology, 2015. [24] FUKUSHIMA M. Application of alternating direction method of multipliers to separable convex programming problems[J]. Computational Optimization and Applications, 1992, 1(1): 93-111. doi: 10.1007/BF00247655 [25] GRANT M, BOYD S. The CVX users’ guide[EB/OL]. (2014-03-24). http://cvxr.com/cvx/. [26] KIWIEL K. Methods of descent for nondifferentiable optimization[M]. Berlin: Springer, 1985.