# Fast DOA Estimation Algorithm Based on a Combination of an Orthogonal Projection and Noise Pseudo-Eigenvector Approach

Authors: Ching Jer Hung
Journal: ISRN Signal Processing
 (2011)

---

## Abstract

This paper presents a new fast direction of arrival (DOA) estimation technique, using both the projection spectrum and the eigenspectrum. First, the rough DOA range is selected using the projection spectrum; then, a linear matrix equation is used to acquire a noise pseudo-eigenvector. Finally, the fine DOA estimation is obtained from an eigenspectrum approach based on the noise pseudo-eigenvector. Without the need to form the covariance matrix from a block of the array data and without a prior knowledge of the number of incoming signals, reduced complexity is achieved, in contrast to conventional subspace-based algorithms. Simulation results show that the proposed algorithm has a good resolution performance and deals well with both uncorrelated and correlated signals. Since the new approach can reduce computational complexity while maintaining better or similar resolution capability, it may provide wider application prospects in real-time DOA estimation when contrasted to other comparable methods.


---

## Body

## 1. Introduction

The direction of arrival (DOA) has been applied in many fields, including speech, radio, telecommunication, and medical signal processing. In the past few decades, a large number of accurate high-resolution DOA estimation techniques have been proposed. One popular approach is the subspace-based method, used in the well-known MUltiple Signal Classification (MUSIC) algorithm [1] and Estimation of Signal Parameters by Rotational Invariance Techniques (ESPRIT) [2]. However, the conventional subspace-based method has some inherent problems that require the assumption of the uncorrelated incident signals, prior knowledge of the number of incoming signals, a block of data snapshots to form a covariance matrix, and an eigendecomposition computation. We know that the estimations for the covariance matrix and the number of the incoming signals, the computation for eigendecomposition, and the procedure for decorrelating the high correlated signals are computationally intensive and time-consuming. Therefore, the conventional subspace-based will remain severely limited in fast DOA estimation under a   nonstationary environment if the above issues are not resolved.A direct data domain least squares (D3LS) approach [3–7] has recently been proposed and applied effectively in adaptive array processing. Based on the D3LS approach, methods [8, 9] developed a fast DOA estimation algorithm process, called the pseudo-covariance matrix technique, which estimated fast varying signals in two steps.  The rough incidence angle ranges are first obtained using the bearing response; then, exact incidence angles are determined by combing the bearing response and the directional spectrum. The bearing response and the directional spectrum are obtained using a pseudo-covariance matrix, based on a single snapshot [8]. The advantage of the approach given in [8] is that the DOA can be estimated on a snapshot-by-snapshot basis, without the need of prior knowledge of the number of incoming signals and without the need of the covariance matrix from a block of the array data. Kim’s algorithm performs well for both uncorrelated and correlated signals coexisting in nonstationary environments. However, it requires the solution of a nonlinear-generalized-eigenvalue equation of a pseudo-covariance matrix, resulting in a high computational burden, and, using this method, the number of resolved signals is at most half of the number of the sensor array. In order to enhance the resolution of Kim’s method, an improved pseudo-covariance matrix scheme was proposed. It was Wen’s method [9]which is called forward-backward pseudo-covariance matrix. Wen’s method processes more signals and obtains a better resolution than the forward-only matrix. However, it uses singular-value decomposition (SVD), requiring a greater computational burden than does Kim’s method.In this paper, an effective method is proposed for developing a fast DOA estimation algorithm when uncorrelated and correlated signals are present in highly nonstationary environments. The proposed method consists of two approaches. First, we use a suboptimal projection spectrum approach to select the rough DOA ranges of the incoming signals. This is done forming small spectrum peaks, generated by removing the signal from a given direction, instead of solving a more exact projection operator, as in Kim’s and Wen's methods. The whole process reduces algorithm computational cost. Secondly, the solution of a linear-matrix equation, formed by a forward-backward data matrix, is applied as a noise pseudo-eigenvector, which performs a function similar to a noise eigenvector. Then, a fine DOA estimation can be obtained from an eigenspectrum. This approach allows us to reduce computational cost and obtain a good algorithm resolution. In contrast to Kim’s and Wen's algorithms, the proposed algorithm has better or similar capability of resolution but offers lower computational complexity. Moreover, the proposed algorithm deals well with both uncorrelated and correlated signals and processes only a signal data snapshot without the use of the covariance matrix. Therefore, it may provide wider application prospects in real-time DOA estimation.This paper is organized as follows. In Section2, we briefly introduce the problem statement and signal model. In Section 3, we present the proposed DOA estimation algorithm.  In Section 4, some simulation results and a comparison of the proposed algorithm to MUSIC, ESPRIT, Kim’s, and Wen’s methods are presented. Finally, conclusions are presented in Section 5.


## 2. Problem Statement and Signal Model

In the section, we prepare mathematical models and representations of signals. In what follows, the operators[·]T, [·]H, [·]*, and ∥·∥ denote transpose, conjugate transpose, conjugate, and vector norm, respectively. diag[t1,…,tu] represents a diagonal matrix with diagonal entries t1,…,tu.Our objective is to estimate the DOA fromq incident signals coming from a received single snapshot. Let a single data snapshot vector b̲ received from a uniform linear array with m-omnidirectional sensors, representing a linear combination of q(m>q) narrow-band signals added with zero mean white Gaussian noise process, be given by (1)b̲=A(θ)s̲+n̲=[b1b2⋯bm]T,
where s̲=[s1s2…sq]T is a q×1  signal vector, n̲ is an m×1 noise process vector, and A(θ)=[a̲(θ1),a̲(θ2),…a̲(θq)] represents a m×q matrix of steering vectors. The ith column a̲(θi)=[1,ej2πd/λsinθi,…,ej2πd/λ(m-1)sinθi]T is the steering vector si coming from θi, i=1,2,…,q. Parameter d is the distance between the sensors and λ is the wavelength of the carrier.


## 3. Fast DOA Estimation of Proposed Method

In this section, the proposed DOA estimation is derived, determining the rough and fine DOA estimation algorithms, presented in Sections3.1 and 3.2, respectively.


### 3.1. Rough DOA Estimation Algorithm

In Kim’s and Wen’s methods, the rough incidence angle ranges are estimated by using the bearing response, requiring the use of nonlinear-generalized-eigenvalue or SVD algorithm in the different look directions. However, such processing may bring high computation complexity against real-time requirement. In the subsection, we present a simple novel DOA estimation algorithm, called the orthogonal projection technique, to estimate the rough DOA ranges from incoming signals using a single snapshot for achieving fast tracking varying signals under highly nonstationary environments. Let us define an orthogonal projection matrix as(2)Π⊥(θn)=I-a'̲(θn)a'̲(θn)H,n=1,2,…,180Δ,
where θn=nΔ∈[-90°,90°] denotes each search angle, Δ is search angle step, and a̲′(θn) is the normalized version of a̲(θn), determined as a̲′(θn)=a̲(θn)/∥a̲(θn)∥. Then, use (2) to form the following projected power spectrum:(3)PΠ(θn)=1‖Π⊥(θn)b̲‖.
When θn≠θi for i=1,2,…q, the projected signal is given by(4)b̲⊥=Π⊥(θn)b̲=∑i=1qΠ⊥(θn)sia̲(θi)+Π⊥(θn)n̲.Then, (4) is composed of all q incident signals with noise added. However, when θn=θi for i=1,2,…q, (5)b̲⊥=Π⊥(θi)b̲=∑j=1:j≠iq-1Π⊥(θi)sja̲(θj)+Π⊥(θi)n̲.Then, (5) is composed of q-1 incident signals with noise added, where the steering vector a̲(θi) is removed. The norm of (4) will have much greater value than the norm of (5). Thus, it is easy to show that we can obtain a peak in the projected power spectrum PΠ(θi) when the steering vector a̲(θn) coincides with the source direction, that is, θn=θi, i=1,2,…q. By using the projection matrix Π⊥(θn) for each steering vector a̲(θn),  the rough DOA incident signals ranges are estimated by searching local peaks from PΠ(θn), n=1,2,…,180/Δ.


### 3.2. Fine DOA Estimation Algorithm

In the conventional subspace-based methods, the covariance matrix is decomposed into its constituent eigenvectors and eigenvalues. Recalling that the eigenvectors of the noise eigenvalues are orthogonal to the signal subspace spanned by the eigenvectors of the signal eigenvalues, then MUSIC algorithm uses the orthogonality of these subspaces efficiently to get a high-resolution DOA estimation. However, such processing is time-consuming against real-time applications and may lose performance for correlated signals. This subsection presents a procedure of finding a noise pseudo-eigenvector based on the solution of a linear-matrix equation, formed by a forward-backward data matrix, for real-time requirement and for the purpose of working well in correlated signals.By using the orthogonal projection method, we state that ifPΠ(θCmin) has a minimum value at angle θn=θCmin, the steering vector a̲(θCmin) should be guaranteed to be too far from the signal directions. In order to acquire a noise pseudo-eigenvector, the steering vector a̲(θCmin) may be used. First, we form two data matrices, B1, and B2, by dividing the uniform linear array into M+N high overlapping subarrays of size M and N. Thus, the sensors {1,2,…,M} form the first subarray of B1 and the sensors {2,3,…,M+1} form the second subarray of B1 and so on; the sensors {M+2N-1,M+2N-2,…,M+N} form the first subarray of B2 and the sensors {M+2N-2,M+2N-3,…,M+N-1} form the second subarray of B2 and so on, that is, we rearrange the received single snapshot b̲=[b1b2…bm]T to form the following two data matrices:(6)B1=[b1b2…bM+Nb2b3…bM+N+1⋮⋮⋱⋮bMbM+1…b2M+N-1],(7)B2=[bM+2N-1*bM+2N-2*…bN*bM+2N-2*bM+2N-3*…bN-1*⋮⋮⋱⋮bM+N*bM+N-1*…b1*],
where M is equal to ⌈2m/3⌉, N(N>q) is equal to ⌈(m-1)/3⌉, and ⌈y⌉(y<⌈y⌉) is the closest integer to y. Finally, we combine the forward data matrix (6) and the backward data matrix (7) to form an (M+N)×(M+N) forward-backward data matrix as(8)B0=[B1TB2T]=[b1b2…bMbM+2N-1*bM+2N-2*…bM+N*b2b3…bM+1bM+2N-2*bM+2N-3*…bM+N-1*⋮⋮⋱⋮⋮⋮⋱⋮bM+NbM+N+1…b2M+N-1bN*bN-1*…b1*].We know that the resolution capability of the DOA estimation is relative to the number of sensors or to the degree of freedom (DOF) of the solved data matrix [7, 9]. For both the forward-only and backward-only methods, the maximum number of the DOF we can consider is given by ⌈m/2⌉.  In the proposed algorithm, we combine the forward data matrix B1 and backward data matrix B2 to double the received data and thereby increase the DOF significantly over that of either the forward-only or backward-only method alone. The maximum number of the DOF in the forward-backward method can be increased significantly to ⌈2m/3⌉ without increasing the number of sensors; thus, this is the reason that we set M=⌈m/3⌉ and N=⌈(m-1)/3⌉. Then, the proposed algorithm with about 2m/3 DOF can provide a better resolution performance than Kim’s forward-only method with about m/2 DOF, and a resolution performance similar to Wen’s forward-backward method with about 2m/3 DOF. Let b̲k denote the kth column vector of the data matrix (8). Then, we can write(9)b̲k=Ã(θ)Fh-1s̲+n̲k,(k,h)=(1,1),(2,2),…,(M,M),(M+1,-M-2N+3),…,(M+N,-M-N+2),
where Ã(θ) and F can be expressed as(10)Ã(θ)=[ã̲(θ1),ã̲(θ2),…,ã̲(θq)],ã̲(θi)=[1,eφi,…,e(M+N-1)φi]T,F=diag⁡[eφ1,…,eφq],
where φi=j2πd/λsinθi, i=1,2,…q. Suppose that the first two signals are highly correlated or coherent among the incident signals, that is, s2=ρs1, where ρ denotes a complex coefficient describing the phase and gain relationship between the two coherent signals. Under this assumption, we can rewrite the first column vector of the data matrix (8) as(11)b̲1=Ã(θ)F°s̲+n̲1=[ã̲(θ1),ã̲(θ2),…,ã̲(θq)][s1ρs1⋮sq]+n̲1=s1ã̲(θ1)+ρs1ã̲(θ2)⋯+sqã̲(θq)+n̲1,
then(12)[b̲1-s1ã̲(θ1)]=[ρs1ã̲(θ2)+⋯+sqã̲(θq)]+n̲1.
Based on (12), [b̲1-s1ã̲(θ1)] excludes the desired signal s1ã̲(θ1), that is, it only includes other q-1 desired signals ρs1ã̲(θ2),…,sqã̲(θq) and noise vector n̲1. If we can find a weight vector w̲(θ1)=[w1(θ1),w2(θ1),…,wM+N(θ1)]T to satisfy [ρ1s1ã̲(θ2)+⋯+sqã̲(θq)+n̲1]Tw̲(θ1)=0, then (12) can be rewritten as(13)[b̲1-s1ã̲(θ1)]Tw̲(θ1)=0.
Therefore,(12-1)b̲1Tw̲(θ1)=s1ã̲(θ1)Tw̲(θ1).
By the same process, we can then get(12-2)b̲2Tw̲(θ1)=s1eφiã̲(θ1)Tw̲(θ1),b̲3Tw̲(θ1)=s1e2φ1ã̲(θ1)Tw̲(θ1),⋮b̲MTw̲(θ1)=s1e(M-1)φ1ã̲(θ1)Tw̲(θ1),b̲M+1Tw̲(θ1)=s1e(-M-2N+2)φ1ã̲(θ1)Tw̲(θ1),b̲M+2Tw̲(θ1)=s1e(-M-2N+3)φ1ã̲(θ1)Tw̲(θ1),⋮b̲M+NTw̲(θ1)=s1e(-M-N+1)φ1ã̲(θ1)Tw̲(θ1).Combining (12-1) and (12-2) into matrix notation gives(14)[b̲1Tb̲2T⋮b̲MTb̲M+1Tb̲M+2T⋮b̲M+NT]w̲(θ1)=s1[ã̲(θ1)Teφ1ã̲(θ1)T⋮e(M-1)φ1ã̲(θ1)Te(-M-2N+2)φ1ã̲(θ1)Te(-M-2N+3)φ1ã̲(θ1)T⋮e(-M-N+1)φ1ã̲(θ1)T]w̲(θ1)=[s1ã̲(θ1)Ts1eφ1ã̲(θ1)T⋮s1e(M-1)φ1ã̲(θ1)Ts1e(-M-2N+2)φ1ã̲(θ1)Ts1e(-M-2N+3)φ1ã̲(θ1)T⋮s1e(-M-N+1)φ1ã̲(θ1)T][w1(θ1)w2(θ1)⋮wM+N(θ1)]=s1w1(θ1)ã̲̂(θ1)+⋯+s1wM+N(θ1)ã̲̂(θ1)=αã̲̂(θ1),
where
(15)α=(s1w1(θ1)+⋯+s1wM+N(θ1)),ã̲̂(θ1)=[1,eφ1,…,e(M-1)φ1,e(-M-2N+2)φ1,…,e(-M-N+1)φ1]T,
then (16)[b̲1Tb̲2T⋮b̲MTb̲M+1Tb̲M+2T⋮b̲M+NT]w̲(θ1)≈αã̲̂(θ1)≡ã̲̂(θ1).
Note that (16) skips the scalar α because it does not affect the vector direction of weight vector w̲(θ1). Weight vector w̲(θ1) has pattern nulls at the incident angles of the rest of incoming signals, θ2,θ3,…,θq. Therefore, if the steering vector ã̲̂(θCmin) is used in (16), then the corresponding weight vector w̲(θCmin) will be orthogonal to the signal steering vectors ã̲(θi) of the incoming signals, that is, w̲(θCmin)Tã̲(θi)≈0, where i=1,2,…,q.  In this paper, weight vector w̲(θCmin) is a noise pseudo-eigenvector because it performs a function similar to that of a noise eigenvector. Then, fine peaks corresponding to the DOA of the incoming signals can be found in eigenspectrum PE1(θn) using (17)PE1(θn)=1|w̲(θCmin⁡)Tã̲(θn)|2.
Moreover, since an eigenspectrum provides higher resolution DOA estimation than a projection spectrum, steering vector ã̲̂(θEmin) with minimum eigenspectrum PE1(θEmin) via (17) is more likely to be constrained too  far from the signal steering vectors ã̲(θi) than steering vector ã̲̂(θCmin). The corresponding weight vector w̲(θEmin) is obtained by using ã̲̂(θEmin) in (16), which is more orthogonal to the signal steering vectors ã̲(θi) than the weight vector w̲(θCmin).  Then, we can obtain a more accurate DOA estimation of the incoming signals than (17) by performing an eigenspectrum as follows:(18)PE2(θn)=1|w̲(θEmin⁡)Tã̲(θn)|2.
It is known that a linear matrix equation can be solved very efficiently by applying a conjugate gradient (CG) algorithm. The conjugate gradient method can provide a faster rate of convergence than other gradient methods and can be implemented to operate in real-time utilizing a digital signal processing chip  [7, 10]. Therefore, the use of the CG algorithm makes our proposed algorithm suitable for real-time implementation. The procedure of our proposed fast DOA estimation is as follows.(1)
Obtain the rough DOA ranges of the incoming signals and a steering vectorã̲̂(θCmin) by using the projection method via (3).(2)
Use the steering vectorã̲̂(θCmin) in (16) to obtain a noise pseudo-eigenvector w̲(θCmin).(3)
Obtain the fine DOA estimation of the incoming signals by searching for local peak values in the eigenspectrumPE1(θn) via (17) within the rough DOA ranges.(4)
Use the steering vectorã̲̂(θEmin) in (16) to obtain a noise pseudo-eigenvector w̲(θEmin).(5)
Fine-tune the DOA estimation of the incoming signals in step (3) by searching for local peak values of the eigenspectrumPE2(θn) via (18).The computational cost of solving a nonlinear generalized eigenvalue algorithm is aboutο(k3) flops for a k×k matrix. The computational cost of solving an SVD algorithm is about ο(kr2) flops for a k×r matrix. The computational cost of solving the CG algorithm is about ο(k2) flops per iteration for a k×k matrix. The size of resolved data matrix is approximately m/2×m/2 in Kim’s method, 2m/3×(2m/3+2) in Wen’s method and 2m/3×2m/3 in our proposed algorithm. The main computational complexity difference between the other methods and the proposed algorithm is the weight vector calculation, which requires about Lο(m3/8) from solving a nonlinear generalized eigenvalue algorithm in Kim’s method, Lο(8m3/27) from solving a SVD algorithm in Wen’s method, and 2Kο(4m2/9) in our proposed method, which is based on the CG algorithm. A flop is defined as a complex floating-point multiplication operation, where ο(·) denotes “the order of ·”, m is the number of the sensors, L denotes the total scanning number in the possible DOA range (i.e., the L different looking directions), and K is the number of iterations for executing the CG algorithm. We can see that the computational complexity of the DOA estimation for fast varying signals for our proposed method is significantly smaller than those that of Kim’s, and Wen’s methods because L≫m>K≫2 in general.


## 3.1. Rough DOA Estimation Algorithm

In Kim’s and Wen’s methods, the rough incidence angle ranges are estimated by using the bearing response, requiring the use of nonlinear-generalized-eigenvalue or SVD algorithm in the different look directions. However, such processing may bring high computation complexity against real-time requirement. In the subsection, we present a simple novel DOA estimation algorithm, called the orthogonal projection technique, to estimate the rough DOA ranges from incoming signals using a single snapshot for achieving fast tracking varying signals under highly nonstationary environments. Let us define an orthogonal projection matrix as(2)Π⊥(θn)=I-a'̲(θn)a'̲(θn)H,n=1,2,…,180Δ,
where θn=nΔ∈[-90°,90°] denotes each search angle, Δ is search angle step, and a̲′(θn) is the normalized version of a̲(θn), determined as a̲′(θn)=a̲(θn)/∥a̲(θn)∥. Then, use (2) to form the following projected power spectrum:(3)PΠ(θn)=1‖Π⊥(θn)b̲‖.
When θn≠θi for i=1,2,…q, the projected signal is given by(4)b̲⊥=Π⊥(θn)b̲=∑i=1qΠ⊥(θn)sia̲(θi)+Π⊥(θn)n̲.Then, (4) is composed of all q incident signals with noise added. However, when θn=θi for i=1,2,…q, (5)b̲⊥=Π⊥(θi)b̲=∑j=1:j≠iq-1Π⊥(θi)sja̲(θj)+Π⊥(θi)n̲.Then, (5) is composed of q-1 incident signals with noise added, where the steering vector a̲(θi) is removed. The norm of (4) will have much greater value than the norm of (5). Thus, it is easy to show that we can obtain a peak in the projected power spectrum PΠ(θi) when the steering vector a̲(θn) coincides with the source direction, that is, θn=θi, i=1,2,…q. By using the projection matrix Π⊥(θn) for each steering vector a̲(θn),  the rough DOA incident signals ranges are estimated by searching local peaks from PΠ(θn), n=1,2,…,180/Δ.


## 3.2. Fine DOA Estimation Algorithm

In the conventional subspace-based methods, the covariance matrix is decomposed into its constituent eigenvectors and eigenvalues. Recalling that the eigenvectors of the noise eigenvalues are orthogonal to the signal subspace spanned by the eigenvectors of the signal eigenvalues, then MUSIC algorithm uses the orthogonality of these subspaces efficiently to get a high-resolution DOA estimation. However, such processing is time-consuming against real-time applications and may lose performance for correlated signals. This subsection presents a procedure of finding a noise pseudo-eigenvector based on the solution of a linear-matrix equation, formed by a forward-backward data matrix, for real-time requirement and for the purpose of working well in correlated signals.By using the orthogonal projection method, we state that ifPΠ(θCmin) has a minimum value at angle θn=θCmin, the steering vector a̲(θCmin) should be guaranteed to be too far from the signal directions. In order to acquire a noise pseudo-eigenvector, the steering vector a̲(θCmin) may be used. First, we form two data matrices, B1, and B2, by dividing the uniform linear array into M+N high overlapping subarrays of size M and N. Thus, the sensors {1,2,…,M} form the first subarray of B1 and the sensors {2,3,…,M+1} form the second subarray of B1 and so on; the sensors {M+2N-1,M+2N-2,…,M+N} form the first subarray of B2 and the sensors {M+2N-2,M+2N-3,…,M+N-1} form the second subarray of B2 and so on, that is, we rearrange the received single snapshot b̲=[b1b2…bm]T to form the following two data matrices:(6)B1=[b1b2…bM+Nb2b3…bM+N+1⋮⋮⋱⋮bMbM+1…b2M+N-1],(7)B2=[bM+2N-1*bM+2N-2*…bN*bM+2N-2*bM+2N-3*…bN-1*⋮⋮⋱⋮bM+N*bM+N-1*…b1*],
where M is equal to ⌈2m/3⌉, N(N>q) is equal to ⌈(m-1)/3⌉, and ⌈y⌉(y<⌈y⌉) is the closest integer to y. Finally, we combine the forward data matrix (6) and the backward data matrix (7) to form an (M+N)×(M+N) forward-backward data matrix as(8)B0=[B1TB2T]=[b1b2…bMbM+2N-1*bM+2N-2*…bM+N*b2b3…bM+1bM+2N-2*bM+2N-3*…bM+N-1*⋮⋮⋱⋮⋮⋮⋱⋮bM+NbM+N+1…b2M+N-1bN*bN-1*…b1*].We know that the resolution capability of the DOA estimation is relative to the number of sensors or to the degree of freedom (DOF) of the solved data matrix [7, 9]. For both the forward-only and backward-only methods, the maximum number of the DOF we can consider is given by ⌈m/2⌉.  In the proposed algorithm, we combine the forward data matrix B1 and backward data matrix B2 to double the received data and thereby increase the DOF significantly over that of either the forward-only or backward-only method alone. The maximum number of the DOF in the forward-backward method can be increased significantly to ⌈2m/3⌉ without increasing the number of sensors; thus, this is the reason that we set M=⌈m/3⌉ and N=⌈(m-1)/3⌉. Then, the proposed algorithm with about 2m/3 DOF can provide a better resolution performance than Kim’s forward-only method with about m/2 DOF, and a resolution performance similar to Wen’s forward-backward method with about 2m/3 DOF. Let b̲k denote the kth column vector of the data matrix (8). Then, we can write(9)b̲k=Ã(θ)Fh-1s̲+n̲k,(k,h)=(1,1),(2,2),…,(M,M),(M+1,-M-2N+3),…,(M+N,-M-N+2),
where Ã(θ) and F can be expressed as(10)Ã(θ)=[ã̲(θ1),ã̲(θ2),…,ã̲(θq)],ã̲(θi)=[1,eφi,…,e(M+N-1)φi]T,F=diag⁡[eφ1,…,eφq],
where φi=j2πd/λsinθi, i=1,2,…q. Suppose that the first two signals are highly correlated or coherent among the incident signals, that is, s2=ρs1, where ρ denotes a complex coefficient describing the phase and gain relationship between the two coherent signals. Under this assumption, we can rewrite the first column vector of the data matrix (8) as(11)b̲1=Ã(θ)F°s̲+n̲1=[ã̲(θ1),ã̲(θ2),…,ã̲(θq)][s1ρs1⋮sq]+n̲1=s1ã̲(θ1)+ρs1ã̲(θ2)⋯+sqã̲(θq)+n̲1,
then(12)[b̲1-s1ã̲(θ1)]=[ρs1ã̲(θ2)+⋯+sqã̲(θq)]+n̲1.
Based on (12), [b̲1-s1ã̲(θ1)] excludes the desired signal s1ã̲(θ1), that is, it only includes other q-1 desired signals ρs1ã̲(θ2),…,sqã̲(θq) and noise vector n̲1. If we can find a weight vector w̲(θ1)=[w1(θ1),w2(θ1),…,wM+N(θ1)]T to satisfy [ρ1s1ã̲(θ2)+⋯+sqã̲(θq)+n̲1]Tw̲(θ1)=0, then (12) can be rewritten as(13)[b̲1-s1ã̲(θ1)]Tw̲(θ1)=0.
Therefore,(12-1)b̲1Tw̲(θ1)=s1ã̲(θ1)Tw̲(θ1).
By the same process, we can then get(12-2)b̲2Tw̲(θ1)=s1eφiã̲(θ1)Tw̲(θ1),b̲3Tw̲(θ1)=s1e2φ1ã̲(θ1)Tw̲(θ1),⋮b̲MTw̲(θ1)=s1e(M-1)φ1ã̲(θ1)Tw̲(θ1),b̲M+1Tw̲(θ1)=s1e(-M-2N+2)φ1ã̲(θ1)Tw̲(θ1),b̲M+2Tw̲(θ1)=s1e(-M-2N+3)φ1ã̲(θ1)Tw̲(θ1),⋮b̲M+NTw̲(θ1)=s1e(-M-N+1)φ1ã̲(θ1)Tw̲(θ1).Combining (12-1) and (12-2) into matrix notation gives(14)[b̲1Tb̲2T⋮b̲MTb̲M+1Tb̲M+2T⋮b̲M+NT]w̲(θ1)=s1[ã̲(θ1)Teφ1ã̲(θ1)T⋮e(M-1)φ1ã̲(θ1)Te(-M-2N+2)φ1ã̲(θ1)Te(-M-2N+3)φ1ã̲(θ1)T⋮e(-M-N+1)φ1ã̲(θ1)T]w̲(θ1)=[s1ã̲(θ1)Ts1eφ1ã̲(θ1)T⋮s1e(M-1)φ1ã̲(θ1)Ts1e(-M-2N+2)φ1ã̲(θ1)Ts1e(-M-2N+3)φ1ã̲(θ1)T⋮s1e(-M-N+1)φ1ã̲(θ1)T][w1(θ1)w2(θ1)⋮wM+N(θ1)]=s1w1(θ1)ã̲̂(θ1)+⋯+s1wM+N(θ1)ã̲̂(θ1)=αã̲̂(θ1),
where
(15)α=(s1w1(θ1)+⋯+s1wM+N(θ1)),ã̲̂(θ1)=[1,eφ1,…,e(M-1)φ1,e(-M-2N+2)φ1,…,e(-M-N+1)φ1]T,
then (16)[b̲1Tb̲2T⋮b̲MTb̲M+1Tb̲M+2T⋮b̲M+NT]w̲(θ1)≈αã̲̂(θ1)≡ã̲̂(θ1).
Note that (16) skips the scalar α because it does not affect the vector direction of weight vector w̲(θ1). Weight vector w̲(θ1) has pattern nulls at the incident angles of the rest of incoming signals, θ2,θ3,…,θq. Therefore, if the steering vector ã̲̂(θCmin) is used in (16), then the corresponding weight vector w̲(θCmin) will be orthogonal to the signal steering vectors ã̲(θi) of the incoming signals, that is, w̲(θCmin)Tã̲(θi)≈0, where i=1,2,…,q.  In this paper, weight vector w̲(θCmin) is a noise pseudo-eigenvector because it performs a function similar to that of a noise eigenvector. Then, fine peaks corresponding to the DOA of the incoming signals can be found in eigenspectrum PE1(θn) using (17)PE1(θn)=1|w̲(θCmin⁡)Tã̲(θn)|2.
Moreover, since an eigenspectrum provides higher resolution DOA estimation than a projection spectrum, steering vector ã̲̂(θEmin) with minimum eigenspectrum PE1(θEmin) via (17) is more likely to be constrained too  far from the signal steering vectors ã̲(θi) than steering vector ã̲̂(θCmin). The corresponding weight vector w̲(θEmin) is obtained by using ã̲̂(θEmin) in (16), which is more orthogonal to the signal steering vectors ã̲(θi) than the weight vector w̲(θCmin).  Then, we can obtain a more accurate DOA estimation of the incoming signals than (17) by performing an eigenspectrum as follows:(18)PE2(θn)=1|w̲(θEmin⁡)Tã̲(θn)|2.
It is known that a linear matrix equation can be solved very efficiently by applying a conjugate gradient (CG) algorithm. The conjugate gradient method can provide a faster rate of convergence than other gradient methods and can be implemented to operate in real-time utilizing a digital signal processing chip  [7, 10]. Therefore, the use of the CG algorithm makes our proposed algorithm suitable for real-time implementation. The procedure of our proposed fast DOA estimation is as follows.(1)
Obtain the rough DOA ranges of the incoming signals and a steering vectorã̲̂(θCmin) by using the projection method via (3).(2)
Use the steering vectorã̲̂(θCmin) in (16) to obtain a noise pseudo-eigenvector w̲(θCmin).(3)
Obtain the fine DOA estimation of the incoming signals by searching for local peak values in the eigenspectrumPE1(θn) via (17) within the rough DOA ranges.(4)
Use the steering vectorã̲̂(θEmin) in (16) to obtain a noise pseudo-eigenvector w̲(θEmin).(5)
Fine-tune the DOA estimation of the incoming signals in step (3) by searching for local peak values of the eigenspectrumPE2(θn) via (18).The computational cost of solving a nonlinear generalized eigenvalue algorithm is aboutο(k3) flops for a k×k matrix. The computational cost of solving an SVD algorithm is about ο(kr2) flops for a k×r matrix. The computational cost of solving the CG algorithm is about ο(k2) flops per iteration for a k×k matrix. The size of resolved data matrix is approximately m/2×m/2 in Kim’s method, 2m/3×(2m/3+2) in Wen’s method and 2m/3×2m/3 in our proposed algorithm. The main computational complexity difference between the other methods and the proposed algorithm is the weight vector calculation, which requires about Lο(m3/8) from solving a nonlinear generalized eigenvalue algorithm in Kim’s method, Lο(8m3/27) from solving a SVD algorithm in Wen’s method, and 2Kο(4m2/9) in our proposed method, which is based on the CG algorithm. A flop is defined as a complex floating-point multiplication operation, where ο(·) denotes “the order of ·”, m is the number of the sensors, L denotes the total scanning number in the possible DOA range (i.e., the L different looking directions), and K is the number of iterations for executing the CG algorithm. We can see that the computational complexity of the DOA estimation for fast varying signals for our proposed method is significantly smaller than those that of Kim’s, and Wen’s methods because L≫m>K≫2 in general.


## 4. Computer Simulation

To compare the performance of the described DOA finding method, MUSIC, ESPRIT, Wen’s, and Kim’s method, in terms of the probability of resolution, the methods were investigated in the narrowband farfield DOA estimations with computer experiments. The probability of resolution is defined as follows. Two signals with DOAθ1 and θ2 are said to be resolved if the respective estimates θ̂1 and θ̂2 are such that both |θ̂1-θ1| and |θ̂2-θ2| are less than |θ1-θ2|/2 [11]. Four different experiments were done with variations in SNR value, the separation between sources, and the number of sensors.In each experiment, it was assumed that the powers of all the incoming sources were equal. The noise at each array sensor was assumed to be additive white Gaussian noise process with zero mean. We also assumed a uniform linear array with half-wavelength element spacing. We examined the conventional MUSIC and ESPRIT algorithm when the number of snapshots was 100, whereas the proposed algorithm, Kim’s, and Wen’s methods only used a single snapshot. A total of 300 independent test runs were done to get each simulated point, and the DOA scanning was performed over [0°,90°] with a step size ofΔ=0.1. In these simulations, the solution of a linear matrix equation was solved using the CG method.In the first experiment, three signals with the same SNR of 20 dB were impinging on the array of 23 sensors.  Figures1(b) and 1(c) show that we can estimate the three uncorrelated signals from [2.3°,9.7°,17.8°] using the proposed algorithm and MUSIC, respectively.  Figure 2(b) shows that we can still estimate the two coherent signals from [2.3°,9.7°] and one uncorrelated signal from [17.8°] using the proposed algorithm but Figure 2(c) shows that MUSIC was unable to estimate the DOA of the two coherent signals. Also, Figures 1(a) and 2(a) show that the angles [2.3°,9.7°,17.8°] of the three incident signals were within the estimated possible ranges.DOA estimation using the proposed algorithm and MUSIC for three uncorrelated signals from [2.3°,9.7°,17.8°] under the SNR of 20 dB and the number of sensorsm=23.
(a)(b)(c)DOA estimation using the proposed algorithm and MUSIC for two coherent signals from [2.3°,9.7°] and one uncorrelated signal from [17.8°] under the SNR of 20 dB and the number of sensorsm=23.
(a)(b)(c)In the second experiment, we considered three uncorrelated signals from [2.3°,9.7°,17.8°], impinging on the array of 23 sensors. Figure3 shows the comparison result of the probability of resolution versus various SNR values. As seen, ESPRIT has best resolution, the proposed algorithm and Wen’s method have almost identical resolution, and Kim’s method has worst resolution. When an  SNR = −5 dB, the resolution probability of the proposed algorithm, Kim’s and Wen’s methods was less than 50% while it is close to 60% for ESPRIT.Figure 3
Comparison of results of the probability of resolution from ESPRIT, the proposed algorithm, Kim’s, and Wen’s methods, with for three uncorrelated signals from [2.3°,9.7°,17.8°] having different SNR, where the number of sensorsm=23.In the third experiment, three uncorrelated signals from [2.3°,2.3° +δθ,2.3° + 2δθ], impinging on the array of 23 sensors and SNR of 20 dB, were considered where the δθ denote a small angle spacing. Figure 4 shows the comparison result of the probability of resolution versus the angle spacing of the incoming signals. As seen in that figure, ESPRIT achieves a higher rate of successful source separation in comparison with the proposed algorithm, Kim’s, and Wen’s methods. For an angle spacing δθ=2°, the resolution probability of the proposed algorithm, Kim’s and Wen’s methods was close to 0%. When an angle spacing δθ<7°, the Wen’s method and the proposed algorithm had better performance than Kim’s method.Figure 4
Comparison of results from ESPRIT, the proposed algorithm, Kim’s, and Wen’s methods, for the probability of resolution versus the angle spacing of the incoming signals for three uncorrelated signals from [2.3°,9.7°,17.8°] having the SNR of 20 dB, where the number of sensorsm=23.In the fourth experiment, we considered three uncorrelated signals from [2.3°,9.7°,17.8°], impinging on the array with SNR of 20 dB. Figure5 shows the comparison result of the probability of resolution versus the number of sensors for ESPRIT, the proposed algorithm, Kim’s, and Wen’s methods. The simulations showed that the performance could be improved by using more number of sensors for all algorithms, but that more processing time is required.Figure 5
Comparison of results of results of the probability of resolution from ESPRIT, the proposed algorithm, Kim’s, and Wen’s methods, with three uncorrelated signals from [2.3°,9.7°,17.8°] having the different number of sensors, where the SNR of 20 dB.As expected, from Figure1 to Figure 5, the simulations showed that the proposed method outperformed Kim’s methods and performed almost the same as Wen’s method with regards to resolution capabilities because the effective array size in both the proposed algorithm and Wen’s method is 15, but in Kim’s method is 11.  If the number of signal sources is known exactly and has enough input data snapshots, of course, the MUSIC or ESPRIT provides us with better performance than the proposed algorithm in cases with uncorrelated signals.


## 5. Conclusion

A new fast direction of arrival estimation technique is presented based on both a simple projection spectrum and the eigenspectrum.  The advantages of this method over MUSIC, ESPRIT, Kim’s, and Wen’s methods are as follows: (1) it has a lower computation loads; (2) it allows arbitrary signal statistics, for example, nonstationary and coherent; (3) it is capable of tracking high varying signals. Computer simulations have shown that the proposed algorithm handles the coherent or uncorrelated signals well, whereas MUSIC does not, as well as better resolution as compared with Kim’s method, or similar resolution to Wen's method. Since this new approach improves performance by reducing computational complexity while maintaining sufficient resolution in highly nonstationary environments, it will have a wider range of prospective applications in real-time DOA estimation than other comparable methods.



---

*Source: 751670-2010-12-22.xml*