# Direction of Arrival Estimation Based on DDOA and Self-Organizing Map

Authors: Xiuhui Tan; Hongping Hu; Rong Cheng; Yanping Bai
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

An effective two-level self-organizing map (SOM) neural network for direction of arrival (DOA) of sound signals estimation is proposed. The approach is based on the distance difference of arrival (DDOA) and a uniform linear sensor array in a 2D plane; it performs a nonlinear mapping between the DDOA vectors and angles of arrival (AOA). We found that the topological order of DDOA vectors and AOAs of same signals is uniform; thus, the topological order preserving of SOM network makes it valid to estimate AOA through DDOA. From the results of simulations and lake experiments, it is shown that the network has the advantage of accuracy and robustness, can be trained in advance, and is easy to implement.


---

## Body

## 1. Introduction

Target detection and localization are important problems in sonar, radar, radio emitter tracking, and mobile communications, and estimation of sound signal source direction is one of the basic issues. In the past few decades, varieties of approaches have been proposed for solving the direction of arrival (DOA) of signal source, such as the multiple signal classification (MUSIC) algorithm [1], the estimation of signal parameters via rotational invariance technique (ESPRIT) [2]. These algorithms are known for the resolution of high accuracy and well performance in case of low signal-to-noise ratios. They decompose the signal observation space into two orthogonal subspaces: signal subspace and noise subspace, and get the estimation of angle of arrival (AOA) by finding the peak of spatial spectrum function. However, MUSIC and ESPRIT need to calculate eigenvalue decomposition (EVD) of the cross-correlation matrix and singular value decomposition (SVD) of the sensor array output data, which makes the time of computation long and limits their practical applicability. Recently, artificial neural networks have been applied successfully in the estimation of DOA with high accuracy [3–9]. A neural network is proposed to approximate the relationship between the outputs of sensor array and the characters of signals to be estimated. First, Hopfield network was used for the signal processing community [3], and radial basis function (RBF) neural is known to be popular and of high accuracy subsequently [4]. Through the network trained in advance the AOA of unknown signal could be obtained immediately. Self-organizing map (SOM) is a self-organizing system: the data received from the sensor array put in it will be mapped automatically onto a set of output with the same topological order as the primary signals [10], and it is a self-organized network of unsupervised training. Recently, the application of SOM appears in the field of DOA estimation. Xun et al. [11] proposed a self-organizing map scheme for mobile location estimation, and the network is set up between the strengths of signals and user’s location. All these neural networks are efficient, blind, and easy to implement in practice. However, little research has been focused on the rationality of these neural networks.Regardless of the various methods in form, the nature of the issue is to explore the relationship between the time difference of arrival (TDOA) and the DOA of signals. In this paper, we proposed a two-level SOM network to approximate the relationship between the distance difference of arrival (DDOA) and DOA when there is only single signal waveform, and a 2D DOA problem with a uniform linear sensor array is considered. We found that, under this assumption, the topological structure of the DDOA vectors is similar to that of the AOA, but different from the locations of the signals. The similar topological structure decides a consistent correlation between DDOA and AOA. Therefore, we set up a two-level SOM network between them and train the network by simulation data in advance. In practical application, just put the estimated DDOA into the trained network and the corresponding DOA could be estimated immediately.The rest of this paper is organized into four sections. In Section2, we introduce the data model and the structure of Kohonen self-organizing map. Then, we analyze the relationship between DDOA vectors and AOA and set up a two-level SOM neural network for the estimation of AOA in Section 3. Section 4 is a simulation study and lake experiments of the proposed network and accuracy analysis. Finally, we conclude the paper in Section 5.


## 2. Background Material

### 2.1. Data Model

Assume that there is a uniform linear array ofM+1 sensors in the 2D plane and a sound source incident on the plane. Establish rectangular coordinate system as shown in Figure 1; let the linear array be placed along the x-axis, and the first left sensor is located at the origin; the array element spacing is r. Consider the distance from sound source S(x,y) to sensor i (i=0,1,…,M) is di, and then(1)di=x-ir2+y2,i=0,1,…,M.The distance difference of sensor i and i+1 is(2)di,i+1=di+1-di,i=0,1,…,M-1.Figure 1
Angle of arrival estimation with linear sensor array.Ifc is the speed of sound wave propagation in the media, then TDOA between sensor i and i+1 is(3)ti,i+1=di,i+1c,i=0,1,…,M-1.Let T=[t0,1,t1,2,…,tM-1,M]T∈RM be the TDOA vector. Obviously, it has the same topology order with the distance difference of arrival (DDOA) vector(4)d=d0,1,d1,2,…,dM-1,MT∈RM.Letθ be the angle of arrival (AOA); it is the angle of the connection of source and the array midpoint and the positive x-axis. Obviously, it is computed from(5)θ=arctan⁡yx-Mr/2.The core issue of the DOA problem is to explore a mappingF∶RM→R1 from the TDOA vector space to the AOA space. In the next section, we will analyse the relationship of the two spaces and set up the map.


### 2.2. Self-Organizing Map

The self-organizing map setup in this paper is a Kohonen self-organizing map, which is also called Kohonen feature map. It is a feed-forward neural network with unsupervised and competitive learning algorithm [12]. SOM is a system that maps high-dimensional or complex data into a one- or two-dimensional data and keeps the same topological order as original data in the meantime; thus, the features of the input data will be visualizing. On the other hand, SOM can be considered as an effective method for feature extraction and dimensionality reduction. It is usually used for classification or prediction of different problems [13, 14].A SOM network consists of two layers: input layer and competitive layer (also called output layer). The number of input layer nodes is equal to the input vector’s dimension; the neurons of competitive layer are arranged in a two-dimensional grid, usually as a rectangle or hexagon. The input nodes and output nodes are connected with a variable weight(6)ωj=ωj1,ωj2,…,ωjmTj=1,2,…,K,where m is the dimension of input vectors, as shown in Figure 2.Figure 2
Kohonen self-organizing map.Kohonen SOM works as follows. When the input sample vectors are put into the network, the Euclidean distance between competition layer neurons weights and the input sample vectors are calculated to obtain the winning neuron that has the minimum distance. Then adjust the weights of the winning neuron and its neighboring neurons, to make them similar to the input sample. So that all neurons’ connected weights have a certain distribution as input sample vectors by such training.The network training steps are as follows.Step 1.
Initialize the network. Normalize each input vectorx to x^ subject to x^=1,(7)x^=xx=x∑i=1mxi21/2,where x=[x1,x2,…,xm]T∈Rm is the training sample vector. Give neuron weights ωj (j=1,2,…,K) equal to part of the normalized input vectors x^, which are selected randomly.Step 2.
Calculate the Euclidean distance between the normalized input vectorx^ and each neuron weight ωj, and identify the winning neuron ωc which is single out as(8)x^-ωc=minjx^-ωj.Step 3.
Adjust the weights of winning neuronωc and its neighbor unit ωj:(9)ωjit+1=ωjit+ηtx^i-ωjit,j∈Uct,where η(t) is a decreasing learning rate function of step t, and Uc(t) is the neighborhood kernel with Gaussian function:(10)Uct=exp⁡rj-rc22σ2ηt,where r is the location of neurons on the two-dimensional grids, and σ is smoothing factor.Step 4.
Repeat Steps2 and 3 until the convergence criterion is satisfied. In this paper, the convergence criterion is set to a maximum iteration number.


## 2.1. Data Model

Assume that there is a uniform linear array ofM+1 sensors in the 2D plane and a sound source incident on the plane. Establish rectangular coordinate system as shown in Figure 1; let the linear array be placed along the x-axis, and the first left sensor is located at the origin; the array element spacing is r. Consider the distance from sound source S(x,y) to sensor i (i=0,1,…,M) is di, and then(1)di=x-ir2+y2,i=0,1,…,M.The distance difference of sensor i and i+1 is(2)di,i+1=di+1-di,i=0,1,…,M-1.Figure 1
Angle of arrival estimation with linear sensor array.Ifc is the speed of sound wave propagation in the media, then TDOA between sensor i and i+1 is(3)ti,i+1=di,i+1c,i=0,1,…,M-1.Let T=[t0,1,t1,2,…,tM-1,M]T∈RM be the TDOA vector. Obviously, it has the same topology order with the distance difference of arrival (DDOA) vector(4)d=d0,1,d1,2,…,dM-1,MT∈RM.Letθ be the angle of arrival (AOA); it is the angle of the connection of source and the array midpoint and the positive x-axis. Obviously, it is computed from(5)θ=arctan⁡yx-Mr/2.The core issue of the DOA problem is to explore a mappingF∶RM→R1 from the TDOA vector space to the AOA space. In the next section, we will analyse the relationship of the two spaces and set up the map.


## 2.2. Self-Organizing Map

The self-organizing map setup in this paper is a Kohonen self-organizing map, which is also called Kohonen feature map. It is a feed-forward neural network with unsupervised and competitive learning algorithm [12]. SOM is a system that maps high-dimensional or complex data into a one- or two-dimensional data and keeps the same topological order as original data in the meantime; thus, the features of the input data will be visualizing. On the other hand, SOM can be considered as an effective method for feature extraction and dimensionality reduction. It is usually used for classification or prediction of different problems [13, 14].A SOM network consists of two layers: input layer and competitive layer (also called output layer). The number of input layer nodes is equal to the input vector’s dimension; the neurons of competitive layer are arranged in a two-dimensional grid, usually as a rectangle or hexagon. The input nodes and output nodes are connected with a variable weight(6)ωj=ωj1,ωj2,…,ωjmTj=1,2,…,K,where m is the dimension of input vectors, as shown in Figure 2.Figure 2
Kohonen self-organizing map.Kohonen SOM works as follows. When the input sample vectors are put into the network, the Euclidean distance between competition layer neurons weights and the input sample vectors are calculated to obtain the winning neuron that has the minimum distance. Then adjust the weights of the winning neuron and its neighboring neurons, to make them similar to the input sample. So that all neurons’ connected weights have a certain distribution as input sample vectors by such training.The network training steps are as follows.Step 1.
Initialize the network. Normalize each input vectorx to x^ subject to x^=1,(7)x^=xx=x∑i=1mxi21/2,where x=[x1,x2,…,xm]T∈Rm is the training sample vector. Give neuron weights ωj (j=1,2,…,K) equal to part of the normalized input vectors x^, which are selected randomly.Step 2.
Calculate the Euclidean distance between the normalized input vectorx^ and each neuron weight ωj, and identify the winning neuron ωc which is single out as(8)x^-ωc=minjx^-ωj.Step 3.
Adjust the weights of winning neuronωc and its neighbor unit ωj:(9)ωjit+1=ωjit+ηtx^i-ωjit,j∈Uct,where η(t) is a decreasing learning rate function of step t, and Uc(t) is the neighborhood kernel with Gaussian function:(10)Uct=exp⁡rj-rc22σ2ηt,where r is the location of neurons on the two-dimensional grids, and σ is smoothing factor.Step 4.
Repeat Steps2 and 3 until the convergence criterion is satisfied. In this paper, the convergence criterion is set to a maximum iteration number.


## 3. DOA Estimation with SOM

### 3.1. DOA Estimation with SOM

Taken points in the two-dimensional plane as the locations of n sound sources; each point corresponds to a distance difference vector d. According to (3), there is only a constant factor c difference between the TDOA vector T and the DDOA vector; thus, we take d to be an alternative to T as training samples in this paper.Set up a two-level SOM neural network as shown in Figure3. The first level of SOM is an ordering process and the topological order of training samples is reproduced in the two-dimensional space. The input vectors are the normalized vectors d in the M-dimensional space, and they are mapped into the N (N≤n) nodes on the two-dimensional space. The connection weights are adjusted continuously through automatic competition, the result of competition is that each activated node represents a class, and the sample vectors close enough to Euclidean distance are gathered into one class. At the same time, the adjacent extent of neighboring nodes also reflects the degree of proximity between the input vectors. This shows that the neurons of the two-dimensional map keep the same topological order with the DDOA vectors.Figure 3
The architecture of the two-level SOM.The second level of SOM is a 1-1 mapping process from the trained two-dimensional space to another two-dimensional space, and there are same numbers of nodes on them. Each node of the second map represents an AOA, which is obtained according to the signal’s location that activates the node. Assume that nodej in the first layer is activated by nj sample vectors, where ∑j=1Nnj=n, the coordinates for the corresponding signals are (xi,yi) (i=1,2,…,nj), and the angle of arrival corresponding to (xi,yi) is θi=arctanyi/xi-Mr/2. According to the node activation of the first level, the output of second level is constructed by the following rules.(1)
If nodej is activated by one training input vector, and the location of the signal is (xi,yi), then the angle of the corresponding signal will be the output, and(11)θj=arctan⁡yixi-Mr/2.(2)
If nodej is activated by more than one training input, that is nj>1, and the locations of these signals are (xki,yki) (i=1,2,…,nj), then the average angle of the corresponding signals will be the output as this node stands for (12)θj=1nj∑i=1njarctan⁡ykixki-Mr/2.(3)
If nodej has been never activated by any training input, then the output will be considered as a null node. When it is activated by a new input vector, the output will be substituted with the value of the nearest node.


### 3.2. Analysis of Reliability

The process of establishing the SOM network described above shows that the topological order of AOA is the same as vector of DDOA. In other words, when the Euclidean distance between the vectors of DDOA of two signals is small, then the Euclidean distance between angles of arrival will be small as well. This is the theoretical basis of our estimation of DOA, and we will analyze this nature as follows.Assume that the DDOA vectors of two adjacent signals ared and d1=d+Δd, and the AOAs of them are θ and θ1=θ+Δθ, respectively. According to (1) and (2), the incremental can be obtained; that is,(13)Δd=Δd0,1,Δd1,2,…,ΔdM-1,MT,where Δdi,i+1=di,i+11-di,i+1 and Δθ=θ1-θ.Obviously, functiondi,i+1 is differentiable at point (x,y)∈R2; thus,(14)Δdi,i+1≈∂di,i+1∂x·Δx+∂di,i+1∂y·Δy=1di-1di+1xΔx+yΔy=Aix,yxΔx+yΔy,where Ai(x,y)=1/di-1/di+1, (i=0,1,…,M-1). Then,(15)Δd=A1x,y,A2x,y,…,AMx,yTxΔx+yΔy,and the Euclidean distance between d and d1 is(16)d1-d=∑i=1MAi2x,y1/2xΔx+yΔy.In the same way, functionθ is differentiable at point (x,y)∈R2 (x≠Mr/2). Then,(17)Δθ≈∂θ∂x·Δx+∂θ∂y·Δy=1x-Mr/22+y2·-yΔx+x-Mr2Δy=Bx,y-yΔx+x-bΔy,where B(x,y)=1/(x-Mr/2)2+y2 and b=Mr/2. Then, the Euclidean distance between θ and θ1 is(18)θ1-θ=Bx,y·-yΔx+x-bΔy.The ratio of the two distances is(19)θ1-θd1-d=Bx,y∑i=1MAi2x,y1/2·-yΔx+x-bΔyxΔx+yΔy=Cx,y·Rx,y,Δx,Δy,where(20)Cx,y=Bx,y∑i=1MAi2x,y1/2,Rx,y,Δx,Δy=-yΔx+x-bΔyxΔx+yΔy.As shown in Figure4, it is the maximum R(x,y,Δx,Δy) value of point (x,y) in the region [0,100]×[0,100], when (Δx,Δy) change in region [0.01,0.5]×[0.01,0.5]. It can be seen that there is a common upper bound for most of the points; assume that the common upper bound is L(L>0), and then(21)θ1-θd1-d<L,θ1-θ<Ld1-d.Figure 4
The maximum incremental ratio values of points in region[0,100]×[0,100].When the Euclidean distance ofd is small, the Euclidean distance of the corresponding θ will be small too. These indicate that there is consistency change trend between d and θ. In other words, when DDOA vectors of two signals are similar, the AOAs of them will be similar too, and therefore DDOA vectors and AOAs have a similar topological order and distribution.


## 3.1. DOA Estimation with SOM

Taken points in the two-dimensional plane as the locations of n sound sources; each point corresponds to a distance difference vector d. According to (3), there is only a constant factor c difference between the TDOA vector T and the DDOA vector; thus, we take d to be an alternative to T as training samples in this paper.Set up a two-level SOM neural network as shown in Figure3. The first level of SOM is an ordering process and the topological order of training samples is reproduced in the two-dimensional space. The input vectors are the normalized vectors d in the M-dimensional space, and they are mapped into the N (N≤n) nodes on the two-dimensional space. The connection weights are adjusted continuously through automatic competition, the result of competition is that each activated node represents a class, and the sample vectors close enough to Euclidean distance are gathered into one class. At the same time, the adjacent extent of neighboring nodes also reflects the degree of proximity between the input vectors. This shows that the neurons of the two-dimensional map keep the same topological order with the DDOA vectors.Figure 3
The architecture of the two-level SOM.The second level of SOM is a 1-1 mapping process from the trained two-dimensional space to another two-dimensional space, and there are same numbers of nodes on them. Each node of the second map represents an AOA, which is obtained according to the signal’s location that activates the node. Assume that nodej in the first layer is activated by nj sample vectors, where ∑j=1Nnj=n, the coordinates for the corresponding signals are (xi,yi) (i=1,2,…,nj), and the angle of arrival corresponding to (xi,yi) is θi=arctanyi/xi-Mr/2. According to the node activation of the first level, the output of second level is constructed by the following rules.(1)
If nodej is activated by one training input vector, and the location of the signal is (xi,yi), then the angle of the corresponding signal will be the output, and(11)θj=arctan⁡yixi-Mr/2.(2)
If nodej is activated by more than one training input, that is nj>1, and the locations of these signals are (xki,yki) (i=1,2,…,nj), then the average angle of the corresponding signals will be the output as this node stands for (12)θj=1nj∑i=1njarctan⁡ykixki-Mr/2.(3)
If nodej has been never activated by any training input, then the output will be considered as a null node. When it is activated by a new input vector, the output will be substituted with the value of the nearest node.


## 3.2. Analysis of Reliability

The process of establishing the SOM network described above shows that the topological order of AOA is the same as vector of DDOA. In other words, when the Euclidean distance between the vectors of DDOA of two signals is small, then the Euclidean distance between angles of arrival will be small as well. This is the theoretical basis of our estimation of DOA, and we will analyze this nature as follows.Assume that the DDOA vectors of two adjacent signals ared and d1=d+Δd, and the AOAs of them are θ and θ1=θ+Δθ, respectively. According to (1) and (2), the incremental can be obtained; that is,(13)Δd=Δd0,1,Δd1,2,…,ΔdM-1,MT,where Δdi,i+1=di,i+11-di,i+1 and Δθ=θ1-θ.Obviously, functiondi,i+1 is differentiable at point (x,y)∈R2; thus,(14)Δdi,i+1≈∂di,i+1∂x·Δx+∂di,i+1∂y·Δy=1di-1di+1xΔx+yΔy=Aix,yxΔx+yΔy,where Ai(x,y)=1/di-1/di+1, (i=0,1,…,M-1). Then,(15)Δd=A1x,y,A2x,y,…,AMx,yTxΔx+yΔy,and the Euclidean distance between d and d1 is(16)d1-d=∑i=1MAi2x,y1/2xΔx+yΔy.In the same way, functionθ is differentiable at point (x,y)∈R2 (x≠Mr/2). Then,(17)Δθ≈∂θ∂x·Δx+∂θ∂y·Δy=1x-Mr/22+y2·-yΔx+x-Mr2Δy=Bx,y-yΔx+x-bΔy,where B(x,y)=1/(x-Mr/2)2+y2 and b=Mr/2. Then, the Euclidean distance between θ and θ1 is(18)θ1-θ=Bx,y·-yΔx+x-bΔy.The ratio of the two distances is(19)θ1-θd1-d=Bx,y∑i=1MAi2x,y1/2·-yΔx+x-bΔyxΔx+yΔy=Cx,y·Rx,y,Δx,Δy,where(20)Cx,y=Bx,y∑i=1MAi2x,y1/2,Rx,y,Δx,Δy=-yΔx+x-bΔyxΔx+yΔy.As shown in Figure4, it is the maximum R(x,y,Δx,Δy) value of point (x,y) in the region [0,100]×[0,100], when (Δx,Δy) change in region [0.01,0.5]×[0.01,0.5]. It can be seen that there is a common upper bound for most of the points; assume that the common upper bound is L(L>0), and then(21)θ1-θd1-d<L,θ1-θ<Ld1-d.Figure 4
The maximum incremental ratio values of points in region[0,100]×[0,100].When the Euclidean distance ofd is small, the Euclidean distance of the corresponding θ will be small too. These indicate that there is consistency change trend between d and θ. In other words, when DDOA vectors of two signals are similar, the AOAs of them will be similar too, and therefore DDOA vectors and AOAs have a similar topological order and distribution.


## 4. Simulation Results

### 4.1. Absence of Noise

In this section, simulations are carried out to verify the effectiveness of the SOM network. In the simulations, a uniform linear sensor array of four sensors (M=3) is assumed along the x-axis, the array element spacing r=0.375m, and the array centered at 0.5625,0. Take 50×50 uniform distribution points in region [0,20]×[0,20] as the location of 50×50 signals, and the DDOA vectors d of them are taken as sample vectors, where the AOAs are assumed to be from 0° to 90°. For SOM network, 50×50 nodes are arranged on both first and second levels, and 1000 iterations are carried out.Put the sample vectors into the network for training the network, as shown in Figure5, (a) and (b) are distribution of sample vectors and weights positions of the trained SOM, respectively, and (c) and (d) are the distribution of the angles of arrival and locations of signals. It can be seen that (a), (b), and (c) have a similar topological order; their distribution density is consistent. While (d) is significantly different from the first two, the distribution of (d) is uniform. The self-organized map of angles of the trained network is as shown in Figure 6, each node in the AOA map holds a model of angle, and the neighboring models are mutually similar. It has the same distribution with the corresponding d vectors.Figure 5
Distributions of sample signals. (a) Distribution of sample vectors. (b) Distribution of weight vectors. (c) Distribution of AOA. (d) Distribution of sample points’ location.
(a)
(b)
(c)
(d)Figure 6
Angle of arrival map (degree).For testing the network, we choose six-group points of different distances from the coordinate origin: 8 m, 16 m, 20 m, 30 m, 50 m, and 100 m. Each group includes 21 points of different AOA. Calculate their distance difference vectors and then put them into the trained network to get the estimation of AOA. The absolute errors of test results are shown in Figure7. It can be seen from the figure that the network trained by near-field signals [0,20]×[0,20] works effectively in the estimation of the AOA, not only in trained field signals (8, 16, and 20), but also in far-field ones (30, 50, and 100). As shown in Table 1, the average error of estimation results is about 0.1° to 0.3°.Table 1
Results of angle estimation by SOM neural network.
Distance
8 m
16 m
20 m
30 m
50 m
100 m
Average error (°)
0.201
0.102
0.123
0.112
0.118
0.169
Pr. (err. < 0.3°)
0.852
0.952
0.905
1.00
0.852
0.905
Pr. (err. < 0.2°)
0.810
0.877
0.810
0.810
0.905
0.852Figure 7
Angles estimation absolute error of different distance by SOM neural network.To illustrate the efficacy and extensive adaptability of our method in the estimation of AOA, a RBF neural network is taken in comparison. The RBF network is trained by the same data set as the SOM network; the AOAs are as the target output. Then, the two trained networks are tested with 20 simulation signals, and the locations of test signals are distributed from 2 meters to 40 meters, which cover the training range and nontraining range. It can be seen from Figure8 that the RBF neural network performs well in the training range but poorly out of the training range, while the SOM’s estimation error changes in a very small way with the fluctuation of distance.Figure 8
Comparison of angles estimation error for SOM and RBF neural network.


### 4.2. Additive Gaussian Noise

In applications, the signals received by sensor array are always with additive noise; thus, the signals with Gaussian noise are used as test data. In the simulations performance, the ratio of signal to noise (SNR) is from 20 to 0, and the AOAs are assumed to be 10°, 30°, 40°, 60°, and 80° in the testing phases. With the network trained above, the errors in the AOA estimate are plotted in Figure9. It can be concluded that the error changes in a little way when SNR declined from 20 to 1. In other words, the error does not decrease as the apparent fluctuation of SNR when SNR>1, and the two-level SOM neural network we proposed has strong adaptability to noise.Figure 9
DOA estimation in Gaussian noise with SOM neural network.


### 4.3. Experimental Test

The experiments were conducted in a lake, the average depth of the lake is 40 m to 50 m, the open test area is greater than 200 m∗ 1000 m, and the calm waters are suitable for DOA estimation experiment. In this experiment, a uniform linear sensor array of four sensors was put about 4.5 m underwater, and the sound source was put in the same depth and in different distance away from the sensor array. The received signals were as shown in Figure 10(a), and the signal-to-noise ratio (SNR) was about −20 dB (Figure 10(a)). To illustrate the adaptability to noise of our method, we denoised the signals to SNR about 0 dB (Figure 10(b)). Consider the velocity of sound in water and the TDOA of the four signals after denoising; the DDOA vectors were gotten. Put the DDOA vectors into the trained SOM network in advance and we got the estimation of DOA. The results are as shown in Table 2.Table 2
Results of angle estimation in lake experiment.
Real AOA
Distance
Estimated  AOA
Error
90°
1000 m
83.3°
6.7°
60°
300 m
57.7°
2.3°
30°
50 m
31.9°
1.9°Figure 10
Received signals in experiments of lake. (a) Signals before denoising. (b) Signals after denoising.
(a)
(b)


## 4.1. Absence of Noise

In this section, simulations are carried out to verify the effectiveness of the SOM network. In the simulations, a uniform linear sensor array of four sensors (M=3) is assumed along the x-axis, the array element spacing r=0.375m, and the array centered at 0.5625,0. Take 50×50 uniform distribution points in region [0,20]×[0,20] as the location of 50×50 signals, and the DDOA vectors d of them are taken as sample vectors, where the AOAs are assumed to be from 0° to 90°. For SOM network, 50×50 nodes are arranged on both first and second levels, and 1000 iterations are carried out.Put the sample vectors into the network for training the network, as shown in Figure5, (a) and (b) are distribution of sample vectors and weights positions of the trained SOM, respectively, and (c) and (d) are the distribution of the angles of arrival and locations of signals. It can be seen that (a), (b), and (c) have a similar topological order; their distribution density is consistent. While (d) is significantly different from the first two, the distribution of (d) is uniform. The self-organized map of angles of the trained network is as shown in Figure 6, each node in the AOA map holds a model of angle, and the neighboring models are mutually similar. It has the same distribution with the corresponding d vectors.Figure 5
Distributions of sample signals. (a) Distribution of sample vectors. (b) Distribution of weight vectors. (c) Distribution of AOA. (d) Distribution of sample points’ location.
(a)
(b)
(c)
(d)Figure 6
Angle of arrival map (degree).For testing the network, we choose six-group points of different distances from the coordinate origin: 8 m, 16 m, 20 m, 30 m, 50 m, and 100 m. Each group includes 21 points of different AOA. Calculate their distance difference vectors and then put them into the trained network to get the estimation of AOA. The absolute errors of test results are shown in Figure7. It can be seen from the figure that the network trained by near-field signals [0,20]×[0,20] works effectively in the estimation of the AOA, not only in trained field signals (8, 16, and 20), but also in far-field ones (30, 50, and 100). As shown in Table 1, the average error of estimation results is about 0.1° to 0.3°.Table 1
Results of angle estimation by SOM neural network.
Distance
8 m
16 m
20 m
30 m
50 m
100 m
Average error (°)
0.201
0.102
0.123
0.112
0.118
0.169
Pr. (err. < 0.3°)
0.852
0.952
0.905
1.00
0.852
0.905
Pr. (err. < 0.2°)
0.810
0.877
0.810
0.810
0.905
0.852Figure 7
Angles estimation absolute error of different distance by SOM neural network.To illustrate the efficacy and extensive adaptability of our method in the estimation of AOA, a RBF neural network is taken in comparison. The RBF network is trained by the same data set as the SOM network; the AOAs are as the target output. Then, the two trained networks are tested with 20 simulation signals, and the locations of test signals are distributed from 2 meters to 40 meters, which cover the training range and nontraining range. It can be seen from Figure8 that the RBF neural network performs well in the training range but poorly out of the training range, while the SOM’s estimation error changes in a very small way with the fluctuation of distance.Figure 8
Comparison of angles estimation error for SOM and RBF neural network.


## 4.2. Additive Gaussian Noise

In applications, the signals received by sensor array are always with additive noise; thus, the signals with Gaussian noise are used as test data. In the simulations performance, the ratio of signal to noise (SNR) is from 20 to 0, and the AOAs are assumed to be 10°, 30°, 40°, 60°, and 80° in the testing phases. With the network trained above, the errors in the AOA estimate are plotted in Figure9. It can be concluded that the error changes in a little way when SNR declined from 20 to 1. In other words, the error does not decrease as the apparent fluctuation of SNR when SNR>1, and the two-level SOM neural network we proposed has strong adaptability to noise.Figure 9
DOA estimation in Gaussian noise with SOM neural network.


## 4.3. Experimental Test

The experiments were conducted in a lake, the average depth of the lake is 40 m to 50 m, the open test area is greater than 200 m∗ 1000 m, and the calm waters are suitable for DOA estimation experiment. In this experiment, a uniform linear sensor array of four sensors was put about 4.5 m underwater, and the sound source was put in the same depth and in different distance away from the sensor array. The received signals were as shown in Figure 10(a), and the signal-to-noise ratio (SNR) was about −20 dB (Figure 10(a)). To illustrate the adaptability to noise of our method, we denoised the signals to SNR about 0 dB (Figure 10(b)). Consider the velocity of sound in water and the TDOA of the four signals after denoising; the DDOA vectors were gotten. Put the DDOA vectors into the trained SOM network in advance and we got the estimation of DOA. The results are as shown in Table 2.Table 2
Results of angle estimation in lake experiment.
Real AOA
Distance
Estimated  AOA
Error
90°
1000 m
83.3°
6.7°
60°
300 m
57.7°
2.3°
30°
50 m
31.9°
1.9°Figure 10
Received signals in experiments of lake. (a) Signals before denoising. (b) Signals after denoising.
(a)
(b)


## 5. Conclusion and Discussion

In this paper, a scheme based on DDOA vectors and two-level SOM is set up for estimation of angles of arrival. By using the topological order preserving of SOM, we set up a map from DDOA vectors to AOA through SOM network, which maps similar DDOA vectors into similar AOAs. To illustrate the feasibility of the scheme, we analyze the topological order between DDOA and AOA theoretically and get the conclusion that similar DDOA vectors correspond to similar AOA. The simulation experiments are done to test the method. The experiment without noise shows the practicability on the signals of both near-field and far-field, and the experiment with Gaussian noise shows the high resolution under low SNR. Furthermore, the experiments in lake show the effectiveness of the scheme in practical application.In the processing, there is no need of calculating the covariance matrix and its eigenvectors; just the simulated locations of a group of signals at near-field is enough to set up and train the network in advance. When a new signal is detected by the sensor array, put the estimated DDOA vector in the network, and then the estimation of AOA can be obtained. In conclusion, the use of SOM network on estimation of DOA is worthy of being applied in practice.However, the scheme proposed in this paper is not suitable for the estimation of the locations of signals. According to the basis above, the topological orders of DDOA and location of signals are different. The Euclidean distance of two signals’ location isΔx2+Δy2, which is only associated with the changes Δx and Δy, while the corresponding Euclidean distance of DDOA vectors is(22)d1-d=∑i=1MAi2x,y1/2xΔx+yΔy,which is determined by not only Δx and Δy but also the original location (x,y), so the two Euclidean distances will not increase or decrease simultaneously, and the SOM network we proposed will be invalid. The estimation results will be of big error and not even authentic, as shown in Figure 11.Figure 11
Location estimation with SOM neural network.In this paper, we consider only the case under a uniform linear scalar sensor array for single signal waveform, and the estimation of DDOA from multisignals received by other kinds of senor arrays is to be further studied.



---

*Source: 231307-2015-08-13.xml*