1 Introduction

The minimum variance distortionless response (MVDR) beamformer is capable of maximizing the output signal to interference-plus-noise ratio (SINR). The MVDR requires using the interference-plus-noise covariance matrix; however, in many applications, it is impossible to obtain it. When the training data contains the desired signal component, the MVDR beamformer becomes the minimum power distortionless response (MPDR) beamformer [1, 2]. The MVDR beamformer maximizes the output SINR by minimizing the total beamformer output power, subject to a distortionless constraint for the desired signal. However, due to the desired signal component, even small error in the steering vector or covariance matrix can lead to severe performance degradation [3], this phenomenon is often called desired signal cancellation. In practice, many factors can lead to steering vector estimation errors, such as inaccurate signal model [4], direction of arrival (DOA) estimation error [5], array perturbations [6], and calibration errors [7]. Finite sample snapshots [8] lead to an inaccurate data covariance matrix. Therefore, a robust technology is required to overcome these problems. We refer to adaptive beamformer that attempts to preserve good performance in the presence of steering vector or covariance matrix error as robust adaptive beamformer (RAB).

In the past two decades, many technologies have been developed to improve the robustness of the MPDR beamformer against the steering vector error. For example, the class of diagonal loading technology [9, 10] augment the data covariance with a constant improves the robustness; the worst-case performance optimization-based beamformer (WCB) [11, 12] restrains the gain in signal uncertainty range that is larger than one; the covariance fitting-based beamformer [13, 14] solves a new steering vector which is fitting for the sample covariance matrix to avoid desired signal cancellation; the magnitude response constraints method [15, 16] improves the robustness by restraining the main beam pattern; the covariance matrix reconstruction approach [17, 18] eliminates the signal component from the data covariance matrix to prevent desired signal cancellation.

The classical WCB [11] minimizing the total beamformer output power, subject to the gain in desired signal steering vector’s uncertainty set, is larger than one. The WCB has a good robustness performance, but it has two inherent drawbacks. On the one hand, the constrained optimization equation of WCB is a nonconvex NP-hard problem; although there exists many methods [12, 19] to solve it, there is no closed-form solution until now. On the other hand, the performance of WCB is highly affected by the prior value of steering vector error norm bound. Unfortunately, the optimum bound value [20, 21] cannot be obtained in practice, and if the prior value is not big enough, the performance of WCB will decrease significantly.

To solve these two problems of WCB, we propose a novel beamformer; its idea and way are as follows. Firstly, we propose an approximate diagonal loading expression of WCB under certain conditions. Then, we build a feedback loop relationship between steering vector and weight vector based on this expression. At last, a novel RAB is developed based on the iterative implementation of this feedback loop.

The outline of this paper is as follows. The data model and background on adaptive beamforming are provided in Section 2. The proposed beamformer and its implementation are developed in Section 3. The simulation results are presented in Section 4. Finally, a brief conclusion appears in Section 5. In the paper, E[▪], (▪)H, (▪)−1, ∥▪∥, and ⊥ denote the expectation, Hermitian transpose, inverse, the two-norm, and orthogonal, respectively; superscript \(\hat {{}}\) denotes the estimated value.

2 Problem formulation

2.1 The MPDR beamformer

Considering a uniform linear array (ULA) with M omni-directional sensors, one desired signal and L interference signals impinging upon the array from different directions, and the source is in the far-field of the array. The received array signal can be expressed as

$$ \mathbf{x}(k)={{\mathbf{a}}_{S}}{{s}_{S}}(k)+\sum\limits_{i=1}^{L}{{{\mathbf{a}}_{i}}{{s}_{i}}(k)+n(k)} $$
(1)

where x(k), a, and n(k) are M×1 complex vector, k denotes the snapshot number, and a i , i=S,1,…,L is the actual steering vector of the i-th signal. s i (k) is zero-mean stationary i-th signal; n(k) denotes the noise. Assuming that each signal and noise are statistically independent, the data covariance matrix of the array output is given by

$$ \mathbf{R}=E[\mathbf{x}(k){{\mathbf{x}}^{H}}(k)]={{P}_{S}}{{\mathbf{a}}_{S}}\mathbf{a}_{S}^{H}+\sum\limits_{i=1}^{L}{{{P}_{i}}{{\mathbf{a}}_{i}}\mathbf{a}_{i}^{H}}+{{P}_{N}}\mathbf{I} $$
(2)

where P S , P i , and P N denote the power of desired signal, i-th interference, and noise, respectively.

The beamformer output signal can be written as

$$ \mathbf{y}(k)={{\mathbf{w}}^{H}}\mathbf{x}(k) $$
(3)

where w is the weighing vector of the beamformer. The MPDR beamformer is mathematically equivalent to the problem

$$ \underset{\mathbf{w}}{\mathop{\min }}\,{{\mathbf{w}}^{H}}\mathbf{Rw} \ s.t.\ {{\mathbf{w}}^{H}}{{\mathbf{a}}_{S}}=1 $$
(4)

The solution of MPDR is often called optimum weight

$$ {{\mathbf{w}}_{MPDR}}=\frac{{{\mathbf{R}}^{-1}}{{\mathbf{a}}_{S}}}{\mathbf{a}_{S}^{H}{{\mathbf{R}}^{-1}}{{\mathbf{a}}_{S}}} $$
(5)

However, we cannot achieve the optimum weight in practice due to two inaccurate parameters. On the one hand, since data covariance matrix R is unknown in practice, it is replaced by K snapshots sample covariance matrix \(\hat {\mathbf {R}}=\frac {1}{K}\sum \limits _{k=1}^{K}{\mathbf {x}(k){{\mathbf {x}}^{H}}(k)}\). On the other hand, steering vector a S relates to signal frequency, direction of arrival, sensors locations, coupling effect, as well as other factors, any inaccurate of these factors can lead to steering vector error.

If the signal-to-noise ratio (SNR) of desired signal is high, even slight error of R or a S will cause the MPDR beamformer suppresses the desired signal as an interference, which leads to a severe degradation of the performance [3]. This effect is often called desired signal cancellation.

This paper only concerns about the error of steering vector, so we use actual covariance matrix R in all of the following formulas.

2.2 The worst-case performance optimization-based beamformer

The WCB [11] minimizing the total beamformer output power, subject to the gain in desired signal steering vector’s uncertainty set, is larger than one. In rank-one signal and spherical uncertainty set case [22], the WCB can be expressed as

$$ \left\{ \begin{aligned} & \underset{\mathbf{w}}{\mathop{\min }}\,{{\mathbf{w}}^{H}}\mathbf{Rw} \\ & s.t.\,\left| {{\mathbf{w}}^{H}}({{{\hat{\mathbf{a}}}}_{S}}+\Delta \mathbf{a}) \right|\ge 1,\ for\ all\ \left\| \Delta \mathbf{a} \right\|\le \mathsf{\varepsilon} \\ \end{aligned} \right. $$
(6)

where \({{\hat {\mathbf {a}}}_{S}}\) is the assumed steering vector of desired signal (obtained from estimated DOA and nominal array manifold). The prior known positive constant ε [20] can be explained as a norm bound of the unknown error between a S and \({{\hat {\mathbf {a}}}_{S}}\).

Problem (6) is a nonconvex NP-hard problem. After some release and approximation [11], it can be converted to the following convex second-order cone programming problem

$$ \left\{ \begin{aligned} & \underset{\mathbf{w}}{\mathop{\min }}\,{{\mathbf{w}}^{H}}\mathbf{Rw} \\ & s.t.\,{{\mathbf{w}}^{H}}{{{\hat{\mathbf{a}}}}_{S}}-\varepsilon \left\| \mathbf{w} \right\|=1 \\ \end{aligned} \right. $$
(7)

There are many methods to solve the problem above, such as, the convex optimization tools solve method [11], the eigen-decomposition root-searching method [19], the diagonal loading method [23], the recursive implementation [12], etc.

2.3 Approximate diagonal loading solution of the WCB

Using the Lagrange multiplier method, problem (7) can be written as

$$ F(\mathbf{w},\lambda)={{\mathbf{w}}^{H}}\mathbf{Rw}-\lambda ({{\mathbf{w}}^{H}}{{\hat{\mathbf{a}}}_{S}}-\varepsilon \left\| \mathbf{w} \right\|-1) $$
(8)

where λ is the Lagrange multiplier. Differentiating (8) with w and equating the result to zero, we obtain the following equation:

$$ \mathbf{Rw}+\lambda \varepsilon \frac{\mathbf{w}}{\left\| \mathbf{w} \right\|}=\lambda {{\hat{\mathbf{a}}}_{S}} $$
(9)

Using the fact that multiplying the weight vector by any arbitrary constant does not change the output SINR, we can transform (9) to

$$ \mathbf{Rw}+\varepsilon \frac{\mathbf{w}}{\left\| \mathbf{w} \right\|}={{\hat{\mathbf{a}}}_{S}} $$
(10)

So that (10) does not contain the Lagrange multiplier anymore. Then, (10) can be written as

$$ \mathbf{w}={{\left(\mathbf{R}+\frac{\varepsilon }{\left\| \mathbf{w} \right\|}\mathbf{I}\right)}^{-1}}{{\hat{\mathbf{a}}}_{S}} $$
(11)

It can be seen from (11) that the WCB belongs to the class of diagonal loading. Taking the norm squared of the both sides of (11), and defining the diagonal loading level ρ=ε/∥w∥, we obtain

$$ {{\left(\frac{\varepsilon }{\rho} \right)}^{2}}={{\left\| {{(\mathbf{R}+\rho \mathbf{I})}^{-1}}{{{\hat{\mathbf{a}}}}_{S}} \right\|}^{2}} $$
(12)

In the following, we will solve (12). The solve idea takes reference to [9, 23], and [24]. Using Woodbury formula of matrix inverse, we have

$$ \begin{aligned} & {{\left(\mathbf{R}+\rho \mathbf{I}\right)}^{-1}}\\ &={{\left[{{P}_{S}}{{\mathbf{a}}_{S}}\mathbf{a}_{S}^{H}+\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)\right]}^{-1}} \\ &={{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}-\frac{{{P}_{S}}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}{{\mathbf{a}}_{S}}\mathbf{a}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}}{1+{{P}_{S}}\mathbf{a}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}{{\mathbf{a}}_{S}}} \\ \end{aligned} $$
(13)

where \({{\mathbf {R}}_{IN}}\text {=}{\sum \nolimits }_{i=1}^{L}{{{P}_{i}}{{\mathbf {a}}_{i}}\mathbf {a}_{i}^{H}}+{{P}_{N}}\mathbf {I}\) is interference-plus-noise covariance matrix. R IN can be expressed in eigen decomposition form as

$$ {{} \begin{aligned} {{\mathbf{R}}_{IN}}\,=\,{{\mathbf{U}}_{I}}{{\mathbf{\Gamma}}_{I}}\mathbf{U}_{I}^{H}\,+\,{{\mathbf{U}}_{N}}{{\mathbf{\Gamma}}_{N}} \mathbf{U}_{N}^{H}\,=\,\sum\limits_{i=1}^{L}{{{\mathsf{\gamma}}_{i}}{{\mathbf{u}}_{i}}\mathbf{u}_{i}^{H}} +{{P}_{N}}\sum\limits_{i=L+1}^{M}{{{\mathbf{u}}_{i}}\mathbf{u}_{i}^{H}} \end{aligned}} $$
(14)

where γ i and u i are the eigenvalues and corresponding eigenvectors of R IN , eigenvalues are sorted in descending order, γ 1≥…≥γ L γ L+1=…=γ M =P N ,U I =[u 1,…,u L ] spans the interference subspace, U N =[u L+1,…,u M ] spans the noise subspace, and \({{\mathbf {U}}_{I}}\mathbf {U}_{I}^{H}\text {+}{{\mathbf {U}}_{N}}\mathbf {U}_{N}^{H}\text {=}\mathbf {I}\), span{a i }=span{u i },i=1,2,…L [7].

When DOA separation between signal and interference is larger than a beam width, \(\left | \mathbf {a}_{S}^{H}{{\mathbf {a}}_{i}} \right |/M\ll 1\), i=1,…,L [25] (Fig. 1 gives an example). Assuming this condition always holds, we can make the approximation \({{\left | \mathbf {a}_{S}^{H}{{\mathbf {u}}_{i}} \right |}^{2}}\ll M\) and \(\mathbf {a}_{S}^{H}{{\mathbf {U}}_{I}}\mathbf {U}_{I}^{H}{{\mathbf {a}}_{S}}\ll M\), which can be further expanded to \(\mathbf {a}_{S}^{H}{{\mathbf {U}}_{N}}\mathbf {U}_{N}^{H}{{\mathbf {a}}_{S}}=\mathbf {a}_{S}^{H}(\mathbf {I}-{{\mathbf {U}}_{I}}\mathbf {U}_{I}^{H}){{\mathbf {a}}_{S}}=M-\mathbf {a}_{S}^{H}{{\mathbf {U}}_{I}}\mathbf {U}_{I}^{H}{{\mathbf {a}}_{S}}\approx M\), and \({{\left \| \mathbf {U}_{I}^{H}{{\mathbf {a}}_{S}} \right \|}^{2}}\ll {{\left \| \mathbf {U}_{N}^{H}{{\mathbf {a}}_{S}} \right \|}^{2}}\).

Fig. 1
figure 1

The value of \(\left | {{\hat {\mathbf {a}}}^{H}}({{\theta }_{i}})\hat {\mathbf {a}}({{\hat {\theta }}_{S}}) \right |/M\)

It is well known that the desired signal’s steering vector a S is orthogonal to the noise subspace of data covariance matrix R. The result \(\mathbf {a}_{S}^{H}{{\mathbf {U}}_{N}}\mathbf {U}_{N}^{H}{{\mathbf {a}}_{S}}\approx M\) reveals a new property: a S approximately belongs to the noise subspace of interference-plus-noise covariance matrix R IN . The precondition is that the DOA separation between desired signal and interference is larger than a beam width; this condition holds under normal conditions.

The following Lemma 1 is used in this paper:

Lemma 1

$$ {\begin{aligned} \mathbf{a}_{S}^{H}\!\sum\limits_{i=1}^{L}{f({{\mathsf{\gamma}}_{i}}){{\mathbf{u}}_{i}}\mathbf{u}_{i}^{H}}{{\mathbf{a}}_{S}} =\sum\limits_{i=1}^{L}{f\left({{\mathsf{\gamma}}_{i}}\right){{\left| \mathbf{a}_{S}^{H}{{\mathbf{u}}_{i}} \right|}^{2}}}\\=f(\tilde{\mathsf{\gamma}})\sum\limits_{i=1}^{L}{{{\left|\mathbf{a}_{S}^{H}{{\mathbf{u}}_{i}}\right|}^{2}}} \end{aligned}} $$
(15)

where f(·)is a monotonic function in this paper, and \({{\mathsf {\gamma }}_{1}}>\tilde {\mathsf {\gamma }}>{{\mathsf {\gamma }}_{L}}\gg {{P}_{N}}\) always holds. Lemma 1 is obvious, and it is easy to be proved, so we use this lemma directly.

Using Lemma 1, and defining f(γ)=1/(γ+ρ), we have

$$ \begin{aligned} \mathbf{a}_{S}^{H}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-1}}{{\mathbf{a}}_{S}}&=\mathbf{a}_{S}^{H}\sum\limits_{i=1}^{M}{\frac{{{\mathbf{u}}_{i}}\mathbf{u}_{i}^{H}}{{{\mathsf{\gamma }}_{i}}\text{+}\rho }}{{\mathbf{a}}_{S}} \\ & =\sum\limits_{i=1}^{L}{\frac{{{\left| \mathbf{a}_{S}^{H}{{\mathbf{u}}_{i}} \right|}^{2}}}{{{\mathsf{\gamma }}_{i}}\text{+}\rho }}+\sum\limits_{i=L+1}^{M}{\frac{{{\left| \mathbf{a}_{S}^{H}{{\mathbf{u}}_{i}} \right|}^{2}}}{{{P}_{N}}\text{+}\rho }} \\ & =\frac{{{\left\| \mathbf{U}_{I}^{H}{{\mathbf{a}}_{S}} \right\|}^{2}}}{\tilde{\mathsf{\gamma}}\text{+}\rho }+\frac{{{\left\| \mathbf{U}_{N}^{H}{{\mathbf{a}}_{S}} \right\|}^{2}}}{{{P}_{N}}\text{+}\rho} \\ \end{aligned} $$
(16)

Since \(\tilde {\mathsf {\gamma }}>{{\mathsf {\gamma }}_{L}}\gg {{P}_{N}}\), and \({{\left \| \mathbf {U}_{I}^{H}{{\mathbf {a}}_{S}} \right \|}^{2}}\ll {{\left \| \mathbf {U}_{N}^{H}{{\mathbf {a}}_{S}} \right \|}^{2}}\), (16) can be simplified as

$$ \mathbf{a}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}{{\mathbf{a}}_{S}}\approx \frac{{{\left\| \mathbf{U}_{N}^{H}{{\mathbf{a}}_{S}} \right\|}^{2}}}{{{P}_{N}}\text{+}\rho }\approx \frac{M}{{{P}_{N}}+\rho}\triangleq \mathsf{\kappa } $$
(17)

Usually, \({{\hat {\mathbf {a}}}_{S}}\) is very close to a S in practice, so we can make two approximations: \(\mathbf {a}_{S}^{H}{{\mathbf {U}}_{N}}\mathbf {U}_{N}^{H}{{\hat {\mathbf {a}}}_{S}}\approx M\) and \(\hat {\mathbf {a}}_{S}^{H}{{\mathbf {U}}_{N}}\mathbf {U}_{N}^{H}{{\hat {\mathbf {a}}}_{S}}\approx M\), which can be further extended to

$$ \mathbf{a}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}{{\hat{\mathbf{a}}}_{S}}\approx \hat{\mathbf{a}}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-1}}{{\hat{\mathbf{a}}}_{S}}\approx \frac{M}{{{P}_{N}}+\rho}=\mathsf{\kappa} $$
(18)

Similar to (16) and (17), we can obtain the following approximations

$$ \begin{aligned} \hat{\mathbf{a}}_{S}^{H}{{\left({{\mathbf{R}}_{IN}}+\rho \mathbf{I}\right)}^{-2}}{{{\hat{\mathbf{a}}}}_{S}}&=\hat{\mathbf{a}}_{S}^{H}\sum\limits_{i=1}^{M}{\frac{{{\mathbf{u}}_{i}} \mathbf{u}_{i}^{H}}{{{\left({{\mathsf{\gamma }}_{i}}+\rho\right)}^{2}}}}{{{\hat{\mathbf{a}}}}_{S}} \\ & \approx \frac{1}{{{({{P}_{N}}+\rho)}^{2}}}\hat{\mathbf{a}}_{S}^{H}\sum\limits_{i=L+1}^{M}{{{\mathbf{u}}_{i}}\mathbf{u}_{i}^{H}}{{{\hat{\mathbf{a}}}}_{S}} \\ & =\frac{\hat{\mathbf{a}}_{S}^{H}{{\mathbf{U}}_{N}}\mathbf{U}_{N}^{H}{{{\hat{\mathbf{a}}}}_{S}}}{{{({{P}_{N}}+\rho)}^{2}}}\approx \frac{{{\mathsf{\kappa }}^{2}}}{M} \end{aligned} $$
(19)
$$ {\begin{aligned} \mathbf{a}_{S}^{H}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-2}}{{\mathbf{a}}_{S}}&\approx \mathbf{a}_{S}^{H}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-2}}{{\hat{\mathbf{a}}}_{S}}\\ &\approx \hat{\mathbf{a}}_{S}^{H}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-2}}{{\mathbf{a}}_{S}}\approx \frac{{{\mathsf{\kappa}}^{2}}}{M} \end{aligned}} $$
(20)

According to (13), (18), (19), and (20), the following approximation holds

$$ {{} \begin{aligned} &{{\left\| {{(\mathbf{R}+\rho \mathbf{I})}^{-1}}{{{\hat{\mathbf{a}}}}_{S}} \right\|}^{2}}\\ &\,=\,\!{{\left\| {{({{\mathbf{R}}_{IN}}\,+\,\rho \mathbf{I})}^{-1}}{{{\hat{\mathbf{a}}}}_{S}}\,-\,\frac{{{P}_{S}}{{({{\mathbf{R}}_{IN}}\,+\,\rho \mathbf{I})}^{-1}}{{\mathbf{a}}_{S}}\mathbf{a}_{S}^{H}{{({{\mathbf{R}}_{IN}}\,+\,\rho \mathbf{I})}^{-1}}{{{\hat{\mathbf{a}}}}_{S}}}{1\!+{{P}_{S}}\mathbf{a}_{S}^{H}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-1}}{{\mathbf{a}}_{S}}} \right\|}^{2}} \\ &\approx {{\left\| {{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-1}}{{{\hat{\mathbf{a}}}}_{S}}-\frac{{{P}_{S}}\mathsf{\kappa }}{1+{{P}_{S}}\mathsf{\kappa }}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-1}}{{\mathbf{a}}_{S}} \right\|}^{2}} \\ & ={{\left({{{\hat{\mathbf{a}}}}_{S}}-\frac{{{P}_{S}}\mathsf{\kappa }}{1+{{P}_{S}}\mathsf{\kappa }}{{\mathbf{a}}_{S}} \right)}^{H}}{{({{\mathbf{R}}_{IN}}+\rho \mathbf{I})}^{-2}}\left({{{\hat{\mathbf{a}}}}_{S}}-\frac{{{P}_{S}}\mathsf{\kappa }}{1+{{P}_{S}}\mathsf{\kappa }}{{\mathbf{a}}_{S}}\right) \\ &\approx \frac{{{\mathsf{\kappa }}^{2}}}{M{{(1+{{P}_{S}}\mathsf{\kappa })}^{2}}} \\ \end{aligned}} $$
(21)

The approximate diagonal loading level can be solved by using (12) and (21) as

$$ \rho \approx \frac{\varepsilon \left(M{{P}_{S}}+{{P}_{N}}\right)}{\sqrt{M}-\varepsilon } $$
(22)

Finally, the weight vector of WCB is

$$ {{\mathbf{w}}_{WCB}}={{\left(\mathbf{R}+\rho \mathbf{I}\right)}^{-1}}{{\hat{\mathbf{a}}}_{S}} $$
(23)

Equation (22) indicates that the diagonal loading level relates to the desired signal’s power P S , noise power P N , and steering vector error norm bound ε. The premise behind (22) is the Eqs. (18), (19), and (20). If \({{\hat {\mathbf {a}}}_{S}}={{\mathbf {a}}_{S}}\), (18), (19), and (20) are strictly true and (22) is reliable. If there exists error between \({{\hat {\mathbf {a}}}_{S}}\) and a S , the following iterative method will reduce this error step by step so as to make (22) reliable.

3 The proposed beamformer

The key problem of (22) is how to obtain the accurate value of MP S +P N , or reliable approximate value, and how to set a suitable ε. The idea of the proposed beamformer is to use iterative implementation. Firstly, we estimate an approximate value of MP S +P N , and a prior value of ε, to obtain the weight vector. Then, we estimate a more accurate value of MP S +P N by using this weight vector. Repeating this process, it is maybe possible that the updated MP S +P N approaches to its actual value.

In this section, we propose a method to estimate the value of MP S +P N , establish a feedback loop relationship between desired signal’s steering vector and weight vector, and propose a novel beamformer based on iterative implementation of this feedback loop.

3.1 Feedback loop relationship between steering vector and weight vector

Under the condition that the interferences are absent, the data covariance matrix becomes \(\mathbf {R}={{P}_{S}}{{\mathbf {a}}_{S}}\mathbf {a}_{S}^{H}+{{P}_{N}}\mathbf {I}\). Its inverse is calculated by

$$ {{\mathbf{R}}^{-1}}=\frac{1}{{{P}_{N}}}\mathbf{I}-\frac{{{P}_{S}}{{\mathbf{a}}_{S}}\mathbf{a}_{S}^{H}}{{{P}_{N}}\left({{P}_{N}}+M{{P}_{S}}\right)} $$
(24)

Then, we have

$$ \frac{1}{\mathbf{a}_{S}^{H}{{\mathbf{R}}^{-1}}{{\mathbf{a}}_{S}}}={{P}_{S}}+\frac{{{P}_{N}}}{M} $$
(25)

Equation (25) reveals the relationship between steering vector a S and MP S +P N .

In practice, a S is replaced by \({{\hat {\mathbf {a}}}_{S}}\) for MPDR beamformer in (5). For a weight vector obtained by WCB or other beamformers, we can define an “equivalent steering vector” for MPDR beamformer. For example, by combining (5) and (23), we can establish the following relationship

$$ \alpha {{\left(\mathbf{R}+\rho \mathbf{I}\right)}^{-1}}{{\hat{\mathbf{a}}}_{S}}=\alpha {{\mathbf{w}}_{WCB}}={{\mathbf{w}}_{WCB-MPDR}}=\frac{{{\mathbf{R}}^{-1}}{{{\tilde{\mathbf{a}}}}_{S}}} {\tilde{\mathbf{a}}_{S}^{H}{{\mathbf{R}}^{-1}}{{{\tilde{\mathbf{a}}}}_{S}}} $$
(26)

where α is a constant, \({{\tilde {\mathbf {a}}}_{S}}\) is an equivalent steering vector for MPDR beamformer, and we guess that \({{\tilde {\mathbf {a}}}_{S}}\) is more accurate than \({{\hat {\mathbf {a}}}_{S}}\) if w WCB (obtained by (23)) is better than w MPDR (obtained by (5) with \({{\hat {\mathbf {a}}}_{S}}\)).

It is easy to express \({{\tilde {\mathbf {a}}}_{S}}\) by R and w from (26) [26]

$$ {{\tilde{\mathbf{a}}}_{S}}=\alpha '\mathbf{R}{{\mathbf{w}}_{WCB}} $$
(27)

where \(\alpha '=\alpha \tilde {\mathbf {a}}_{S}^{H}{{\mathbf {R}}^{-1}}{{\tilde {\mathbf {a}}}_{S}}\). The equivalent steering vector \({{\tilde {\mathbf {a}}}_{S}}\) should be scaled by the fact that the norm of \({{\tilde {\mathbf {a}}}_{S}}\) equals \(\sqrt {M}\), that is

$$ {{\tilde{\mathbf{a}}}_{S}}=\sqrt{M}\mathbf{R}{{\mathbf{w}}_{WCB}}/\left\| \mathbf{R}{{\mathbf{w}}_{WCB}} \right\| $$
(28)

Henceforth, we obtain the feedback loop relationship between steering vector a S , diagonal loading level ρ, and weight vector w through (22), (23), (25), and (28).

3.2 Iterative implementation

If the \({{\tilde {\mathbf {a}}}_{S}}\) obtained by (28) is closer to actual value than \({{\hat {\mathbf {a}}}_{S}}\), we preliminary think that the following iteration implementation will obtain a better steering vector and simultaneously obtain a better weight vector, step by step.

Initialization: \({{\mathbf {a}}^{(0)}}={{\hat {\mathbf {a}}}_{S}}\)

for k=1,2,…

\(\mathsf {\tau }=M\mathsf {\varepsilon }/\left (\sqrt {M}-\mathsf {\varepsilon }\right)\), p (k)=1/(a (k−1)H R −1 a (k−1))

w (k)=(R+τ p (k) I)−1 a (k−1)

\({{\mathbf {a}}^{(k)}}=\mathbf {R}{{\mathbf {w}}^{(k)}},{{\mathbf {a}}^{(k)}}=\sqrt {M}{{\mathbf {a}}^{(k)}}/\left \| {{\mathbf {a}}^{(k)}} \right \|\)

We call this iterative implementation as iterative robust adaptive beamformer (IRAB).

3.3 The performance proof of IRAB

The following two properties hold for the proposed IRAB:

Property 1

a (k)a S 2<∥a (k−1)a S 2 for each iteration.

Proof

The data covariance matrix R can be written in eigen-decomposition form as

$$ \mathbf{R}={{\mathbf{Q}}_{S}}{{\mathbf{\Sigma }}_{S}}\mathbf{Q}_{S}^{H}+{{\mathbf{Q}}_{N}}{{\mathbf{\Sigma}}_{N}}\mathbf{Q}_{N}^{H}\,=\,\sum\limits_{i=1}^{L+1}{{{r}_{i}} {{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}}+\sum\limits_{i=L+2}^{M}{{{r}_{i}}{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}} $$
(29)

where r i and q i are the eigenvalues and corresponding eigenvectors of R, eigenvalues are sorted in descending order r 1≥…≥r L+1r L+2=…=r M =P N , Q S =[q 1,…,q L+1] spans the signal-plus-interference subspace, Q N =[q L+2,…,q M ] spans the noise subspace.

Defining \({{\mathbf {a}}_{\parallel }}={{\mathbf {Q}}_{S}}\mathbf {Q}_{S}^{H}{{\mathbf {a}}^{(0)}}\) and a =Q N Q N a (0), we have the following formulas

$$ \left\{\begin{array}{l} {{\mathbf{a}}^{(0)}}={{\mathbf{a}}_{\parallel}}+{{\mathbf{a}}_{\bot}}\\ {{\mathbf{a}}_{\parallel}}\bot{{\mathbf{a}}_{\bot}}\\ {{\left\| {{\mathbf{a}}^{(0)}} \right\|}^{2}}={{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}+{{\left\| {{\mathbf{a}}_{\bot}} \right\|}^{2}}\\ {{\mathbf{a}}_{S}}=\sqrt{M}{{\mathbf{a}}_{\parallel}}/\left\|{{\mathbf{a}}_{\parallel}}\right\| \end{array}\right. $$
(30)

The weight vector of k-th iterative step can be expressed by a and a as

$$ \begin{aligned} {{\mathbf{a}}^{(k)}}& ={{\mu }_{1}}\mathbf{R}{{\mathbf{w}}^{(k)}} \\ & ={{\mu}_{1}}\mathbf{R}{{\left(\mathbf{R}+\tau {{p}^{(k)}}\mathbf{I}\right)}^{-1}}{{\mathbf{a}}^{(k-1)}} \\ & ={{\mu}_{1}}{{\left(\tau {{p}^{(k)}}{{\mathbf{R}}^{-1}}+\mathbf{I}\right)}^{-1}}{{\mathbf{a}}^{(k-1)}} \\ & ={{\mu}_{1}}\prod\limits_{i=2}^{k}{{{\left(\tau {{p}^{(i)}}{{\mathbf{R}}^{-1}}\,+\,\mathbf{I}\right)}^{-1}}\cdot {{\left(\tau {{p}^{(1)}}{{\mathbf{R}}^{-1}}+\mathbf{I}\right)}^{-1}}{{\mathbf{a}}^{(0)}}} \\ \end{aligned} $$
(31)

where μ 1 is a constraint constant which subject to ∥a (k)2=M.

We can obtain the following result from (29) and (30)

$$ \begin{aligned} &{{(\tau {{p}^{(1)}}{{R}^{-1}}+I)}^{-1}}{{a}^{(0)}} \\ =&{{(\tau {{p}^{(1)}}{{R}^{-1}}+I)}^{-1}}({{a}_{\parallel }}+{{a}_{\bot }}) \\ =&\sum\limits_{i=1}^{L+1}{\frac{{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}}{\tau {{p}^{(1)}}/{{r}_{i}}+1}{{\mathbf{a}}_{\parallel }}}+\sum\limits_{i=L+2}^{M}{\frac{{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}}{\tau {{p}^{(1)}}/{{P}_{N}}+1}{{\mathbf{a}}_{\bot }}} \\ =&\left\| \sum\limits_{i=1}^{L+1}{\frac{{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}}{\tau{{p}^{(1)}}/{{r}_{i}}+1}{{\mathbf{a}}_{\parallel }}} \right\|\frac{{{\mathbf{a}}_{\parallel }}}{\left\| {{\mathbf{a}}_{\parallel }} \right\|}+\frac{{{\mathbf{a}}_{\bot }}}{\tau {{p}^{(1)}}/{{P}_{N}}+1} \\ \end{aligned} $$
(32)

Similar to Lemma 1, by defining f(r)=1/(τ p (1)/r+1)2, we have

$$ {\begin{aligned} {{\left\| \sum\limits_{i=1}^{L+1}{\frac{{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}}{\tau {{p}^{(1)}}/{{r}_{i}}+1}{{\mathbf{a}}_{\parallel }}} \right\|}^{2}}=\sum\limits_{i=1}^{L+1}{\frac{\mathbf{a}_{\parallel }^{H}{{\mathbf{q}}_{i}}\mathbf{q}_{i}^{H}{{\mathbf{a}}_{\parallel }}}{{{\left(\tau {{p}^{(1)}}/{{r}_{i}}+1\right)}^{2}}}}\\=\frac{{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}}{{{\left(\tau {{p}^{(1)}}/r_{a}^{(1)}+1\right)}^{2}}} \end{aligned}} $$
(33)

where \({{r}_{1}}>r_{a}^{(1)}>{{r}_{L+1}}\gg {{P}_{N}}\). Substituting (33) into (32), we have

$$ {{} \begin{aligned} {{\left(\tau {{p}^{(1)}}{{\mathbf{R}}^{-1}}+\mathbf{I}\right)}^{-1}}{{\mathbf{a}}^{(0)}}&=\frac{{{\mathbf{a}}_{\parallel }}}{\tau {{p}^{(1)}}/r_{a}^{(1)}+1}+\frac{{{\mathbf{a}}_{\bot }}}{\tau {{p}^{(1)}}/{{P}_{N}}+1}\\ &={{\mu }_{2}}\left({{\mathbf{a}}_{\parallel }}+{{\hat{\mathsf{\eta }}}^{(1)}}{{\mathbf{a}}_{\bot }}\right) \end{aligned}} $$
(34)

where μ 2 is a constant, and

$$ {{\hat{\mathsf{\eta }}}^{(1)}}=\frac{\tau {{p}^{(1)}}/r_{a}^{(1)}+1}{\tau {{p}^{(1)}}/{{P}_{N}}+1} $$
(35)

From (31), (34), and (35), we can obtain

$$ {{\mathbf{a}}^{(k)}}={{\mathsf{\mu }}_{1}}\left({{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }}\right) $$
(36)

where

$$ {{\mathsf{\eta }}^{(k)}}=\prod\limits_{i=0}^{k}{{{{\hat{\mathsf{\eta }}}}^{(i)}}},{{\hat{\mathsf{\eta }}}^{(i)}}= \left\{ \begin{aligned} & \frac{\tau {{p}^{(i)}}/r_{a}^{(i)}+1}{\tau {{p}^{(i)}}/{{P}_{N}}+1},i>0 \\ & 1,i=0 \\ \end{aligned} \right. $$
(37)

Since \(r_{a}^{(i)}>{{P}_{N}}\), we have \(0<{{\hat {\mathsf {\eta }}}^{(i)}}<1\), i>0; therefore, 0<η (k)<η (k−1)≤1, k≥1. Then, the norm error of steering vector per iterative step is

$$ {{} \begin{aligned} {{\left\| {{\mathbf{a}}^{(k)}}-{{\mathbf{a}}_{S}} \right\|}^{2}}&=2M-2\operatorname{Re}\left\{{{\mathbf{a}}^{(k)H}}{{\mathbf{a}}_{S}}\right\} \\ & =2M-2\operatorname{Re}\left\{\frac{\sqrt{M}{{\left({{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }}\right)}^{H}}}{\left\| {{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }} \right\|}\frac{\sqrt{M}{{\mathbf{a}}_{\parallel }}}{\left\| {{\mathbf{a}}_{\parallel }} \right\|}\right\} \\ & =2M-\frac{2M\left\| {{\mathbf{a}}_{\parallel }} \right\|}{\sqrt{{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}+{{\mathsf{\eta }}^{(k)2}}{{\left\| {{\mathbf{a}}_{\bot }} \right\|}^{2}}}} \\ \end{aligned}} $$
(38)

Therefore, η (k)<η (k−1)⇒∥a (k)a S 2<∥a (k−1)a S 2. Equation (37) shows that η (k) is a product of k number of variables that are less than one, so η (k) will approach to zero. If η (k)=0, ∥a (k)a S 2=0, the actual steering vector is obtained. □

Property 2

SINR (k)>SINR (k−1) for each iterative step, and SINR has an upper bound.

Proof

$$ \begin{aligned} &{{\mathbf{w}}^{(k)H}}{{\mathbf{a}}_{S}} \\ =&{{({{\mathbf{R}}^{-1}}{{\mathbf{a}}^{(k)}})}^{H}}{{\mathbf{a}}_{S}} \\ =&{{({{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }})}^{H}}({{\mathbf{Q}}_{S}}\mathbf{\Sigma }_{S}^{-1}\mathbf{Q}_{S}^{H}+{{\mathbf{Q}}_{N}}\mathbf{\Sigma }_{N}^{-1}\mathbf{Q}_{N}^{H})\frac{\sqrt{M}{{\mathbf{a}}_{\parallel }}}{\left\| {{\mathbf{a}}_{\parallel }} \right\|} \\ =&\mathbf{a}_{\parallel }^{H}{{\mathbf{Q}}_{S}}\mathbf{\Sigma }_{S}^{-1}\mathbf{Q}_{S}^{H}{{\mathbf{a}}_{\parallel }}\frac{\sqrt{M}}{\left\| {{\mathbf{a}}_{\parallel }} \right\|} \\ =&\sum\limits_{i=1}^{L+1}{\frac{1}{{{r}_{i}}}{{\left| \mathbf{a}_{\parallel }^{H}{{\mathbf{q}}_{i}} \right|}^{2}}\frac{\sqrt{M}}{\left\| {{\mathbf{a}}_{\parallel }} \right\|}} \\ \end{aligned} $$
(39)

Similar to Lemma 1, we have

$$ \sum\limits_{i=1}^{L+1}{\frac{1}{{{r}_{i}}}{{\left| \mathbf{a}_{\parallel }^{H}{{\mathbf{q}}_{i}} \right|}^{2}}}=\frac{1}{{{r}_{b}}}\sum\limits_{i=1}^{L+1}{{{\left| \mathbf{a}_{\parallel }^{H}{{\mathbf{q}}_{i}} \right|}^{2}}}=\frac{1}{{{r}_{b}}}{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}} $$
(40)

where r 1>r b >r L+1P N . Therefore, \({{\mathbf {w}}^{(k)H}}{{\mathbf {a}}_{S}}=\sqrt {M}\left \| {{\mathbf {a}}_{\parallel }} \right \|/{{r}_{b}}\). Then, we have

$$ \begin{aligned} &{{\mathbf{w}}^{(k)H}}\mathbf{R}{{\mathbf{w}}^{(k)}}\\ &={{\mathbf{a}}^{(k)H}}{{\mathbf{R}}^{-1}}\mathbf{R}{{\mathbf{R}}^{-1}}{{\mathbf{a}}^{(k)}} \\ &={{\left({{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }}\right)}^{H}}\left({{\mathbf{Q}}_{S}}\mathbf{\Sigma}_{S}^{-1}\mathbf{Q}_{S}^{H}+{{\mathbf{Q}}_{N}}\mathbf{\Sigma}_{N}^{-1}\mathbf{Q}_{N}^{H}\right) \\&\qquad\left({{\mathbf{a}}_{\parallel }}+{{\mathsf{\eta }}^{(k)}}{{\mathbf{a}}_{\bot }}\right) \\ =&\frac{1}{{{r}_{b}}}{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}+\frac{1}{{{P}_{N}}}{{\mathsf{\eta }}^{(k)2}}{{\left\| {{\mathbf{a}}_{\bot }} \right\|}^{2}} \\ \end{aligned} $$
(41)
$$ {{} \begin{aligned} \frac{SIN{{R}^{(k)}}}{1+SIN{{R}^{(k)}}}=\frac{{{P}_{S}}{{\left| {{\mathbf{w}}^{(k)H}}{{\mathbf{a}}_{S}} \right|}^{2}}}{{{\mathbf{w}}^{(k)H}}\mathbf{R}{{\mathbf{w}}^{(k)}}}=\frac{\frac{1}{r_{b}^{2}}M{{P}_{S}}{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}}{\frac{1}{{{r}_{b}}}{{\left\| {{\mathbf{a}}_{\parallel }} \right\|}^{2}}+\frac{1}{{{P}_{N}}}{{\mathsf{\eta }}^{(k)2}}{{\left\| {{\mathbf{a}}_{\bot }} \right\|}^{2}}} \end{aligned}} $$
(42)

Therefore, \({{\mathsf {\eta }}^{(k)}}<{{\mathsf {\eta }}^{(k-1)}}\Rightarrow \frac {SIN{{R}^{(k)}}}{1+SIN{{R}^{(k)}}}>\frac {SIN{{R}^{(k-1)}}}{1+SIN{{R}^{(k-1)}}}\Rightarrow SIN{{R}^{(k)}}>SIN{{R}^{(k-1)}}\). The upper bound of SINR (k) is achieved if η (k)=0. □

3.4 Some remarks on the IRAB

3.4.1 The setting of prior parameter

Equation (22) indicates that not only MP S +P N but also the prior parameter ε can affect the diagonal loading level. Many existed RABs use the constraint condition ∥Δ a∥≤ε, so they face the same problem: how to set a suitable ε? Jian Li suggest that ε should be chosen as small as possible but \(\mathsf {\varepsilon }\ge {{\varepsilon }_{0}}\text {=}\underset {\phi }{\mathop {\min }}\,\left \| {{{\hat {\mathbf {a}}}}_{S}}{{e}^{j\phi }}-{{\mathbf {a}}_{S}} \right \|\) [20]. If ε<ε 0, the desired signal will be suppressed as interference. If ε is chosen much larger than ε 0, the ability of beamformer to suppress interferences that are close to the desired signal will degrade.

The parameter τ is defined in the implementation of IRAB in Section 3.2. It can be seen from (37) that, if τ>0, the two properties of IRAB will always hold, which indicates that the iteration will always converge if \(\mathsf {\varepsilon }<\sqrt {M}\). Therefore, the ε does no longer subject to the constraint εε 0; any \(0<\mathsf {\varepsilon }<\sqrt {M}\) is suitable for IRAB.

Notice that the value of \(\varepsilon _{0}^{(k)}\text {=}\underset {\phi }{\mathop {\min }}\,\left \| {{\mathbf {a}}^{(k)}}{{e}^{j\phi }}-{{\mathbf {a}}_{S}} \right \|\) will decrease and approach to zero as the iterative step increases and the ε is better to be decreased as the iteration time increases. An experiential way is to reduce ε by half per iterative step. Thus, the proposed IRAB can be modified as follows

\({{\mathsf {\varepsilon }}^{(0)}}=\mathsf {\varepsilon },{{\mathbf {a}}^{(0)}}={{\hat {\mathbf {a}}}_{S}},\beta =0.5\)

for k=1,2,…

\({{\mathsf {\varepsilon }}^{(k)}}=\mathsf {\beta }{{\mathsf {\varepsilon }}^{(k-1)}},{{\mathsf {\tau }}^{(k)}}\text {=}\frac {M{{\mathsf {\varepsilon }}^{(k)}}}{\sqrt {M}-{{\mathsf {\varepsilon }}^{(k)}}},{{p}^{(k)}}=\frac {1}{{{\mathbf {a}}^{(k-1)H}}{{\mathbf {R}}^{-1}}{{\mathbf {a}}^{(k-1)}}}\)

w (k)=(R+τ (k) p (k) I)−1 a (k−1)

\({{\mathbf {a}}^{(k)}}=\mathbf {R}{{\mathbf {w}}^{(k)}},{{\mathbf {a}}^{(k)}}=\sqrt {M}{{\mathbf {a}}^{(k)}}/\left \| {{\mathbf {a}}^{(k)}} \right \|\)

3.4.2 The stopping criterion

The iteration should be stopped under certain criterions, and the performance should not deteriorate on special occasions. On the one hand, three parameters are updated as the iterative step increases, the p (k), w (k), and a (k). The p (k) relates to a (k−1), the w (k) relates to p (k), and a (k−1), the a (k) relates to w (k). Therefore, we can make the stopping criterion only by the parameter a. If a (k) changes less than a threshold, such as a very small δ, with respect to a (k−1), we consider the iteration converges. Wei Jin uses ∥a (k)a (k−1)∥≤δ as the stopping criterion [26]. However, because the phase rotate of a does not affect the performance of beamformer, using \(\underset {\phi }{\mathop {\min }}\,\left \| {{\mathbf {a}}^{(k)}}-{{\mathbf {a}}^{(k-1)}}{{e}^{j\phi }} \right \|\le \delta \) is better, but the amount of calculation is increased.

As the norm of a (k) and a (k−1) are both equal to \(\sqrt {M}\), the stopping criterion 1 of IRAB is as follows

$$ \left| {{\mathbf{a}}^{(k)H}}{{\mathbf{a}}^{(k-1)}} \right|/M\ge 0.999999 $$
(43)

It is obvious that the smaller difference between a (k) and a (k−1) is, the larger of the value of |a (k)H a (k−1)| is; the maximum value of |a (k)H a (k−1)| equals to M if a (k)=a (k−1) e jϕ; the phase rotate of a does not affect the value of |a (k)H a (k−1)|.

On the other hand, two scenes should be considered. Firstly, when SNR of desired signal is very low, the updated steering vector cannot be able to converge to its actual value, even if it may converge to interferences or noise peaks. To avoid the desired signal’s steering vector deviating its actual value too large, we add the following stopping criterion 2 [27]

$$ {\begin{aligned} \left| {{\mathbf{a}}^{(k)H}}\hat{\mathbf{a}}({{{\hat{\theta }}}_{S}}) \right|<\min \left\{\left| {{{\hat{\mathbf{a}}}}^{H}}\left({{{\hat{\theta }}}_{S}}+\frac{{{\theta }_{W}}}{2}\right)\hat{\mathbf{a}}\left({{{\hat{\theta }}}_{S}}\right) \right|,\left| {{{\hat{\mathbf{a}}}}^{H}}\right.\right.\\ \left.\left.\left({{{\hat{\theta }}}_{S}}-\frac{{{\theta }_{W}}}{2}\right)\hat{\mathbf{a}}\left({{{\hat{\theta }}}_{S}}\right) \right|\right\} \end{aligned}} $$
(44)

where \({{\hat {\theta }}_{S}}\) is the prior DOA of desired signal and θ W is the uncertainty range. Stopping criterion 2 is based on the fact that, if |θ i θ S | is larger, \(\left | {{\hat {\mathbf {a}}}^{H}}({{\theta }_{i}})\hat {\mathbf {a}}({{\hat {\theta } }_{S}}) \right |\) is smaller (Fig. 1 shows an example, ignore the ripple). Therefore, the iteration stops when the corresponding DOA of a (k) is out of uncertainty range.

However, these two stopping criterions have a defect. When angular separation between θ i and \({{\hat {\theta }}_{S}}\) is larger than a beam width, \(\left | {{\hat {\mathbf {a}}}^{H}}({{\theta }_{i}})\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |\ll M\), i=1,…,L. At some specific angles, \(\left | {{\hat {\mathbf {a}}}^{H}}({{\theta }_{i}})\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |\) approaches to zero. Using a ULA with M=16 as example, we plot the value of \(\left | {{\hat {\mathbf {a}}}^{H}}({{\theta }_{i}})\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |/M\), \({{\hat {\theta }}_{S}}={{82}^{\circ }}\), θ i =1:180. As Fig. 1 shows, \(\left | {{\hat {\mathbf {a}}}^{H}}({{110}^{\circ}})\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |/M\approx 0\). If the interference’s DOA happens to be equal to 110°, \(\left | {{[{{\mathbf {\mathbf {a}}}^{(k)}}+\hat {\mathbf {a}}({{110}^{\circ}})]}^{H}}\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |\approx \left | {{\mathbf {a}}^{(k)}}^{H}\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right |\), thus the stopping criterion 2 may not work, and it does not affect the stopping criterion 1, which further means the updated steering vector may converge to the sum of desired signal and interferences. To deal with this special case, we add the following stopping criterion 3

$$ {{}\begin{aligned} \left\| {{\mathbf{a}}^{(k)}}-\hat{\mathbf{a}}\left({{{\hat{\theta}}}_{S}}\right) \right\|>&\max \left\{\left\| {{\mathbf{a}}^{(k)}}-\hat{\mathbf{a}}\left({{{\hat{\theta}}}_{S}}+\frac{{{\theta}_{W}}}{2}\right) \right\|,\left\| {{\mathbf{a}}^{(k)}}-\hat{\mathbf{a}}\right.\right.\\ &\left. \left.\left({{{\hat{\theta}}}_{S}}-\frac{{{\theta}_{W}}}{2}\right) \right\|\right\} \end{aligned}} $$
(45)

Stopping criterion 3 is based on the fact that if \(\left | {{\theta }_{i}}-{{{\hat {\theta }}}_{S}} \right |\) is larger than a threshold, \(\left \| \hat {\mathbf {a}}({{\theta }_{i}})-\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right \|\) is large. Figure 2 shows the value of \(\left \| \hat {\mathbf {a}}({{\theta }_{i}})-\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right \|/\sqrt {M}\), \({{\hat {\theta }}_{S}}={{82}^{\circ }}\), θ i =1:180 for a ULA with M=16. Once the interferences component in a (k) surplus threshold, the iteration stops.

Fig. 2
figure 2

The value of \(\left \| \hat {\mathbf {a}}({{\theta }_{i}})-\hat {\mathbf {a}}({{{\hat {\theta }}}_{S}}) \right \|/\sqrt {M}\)

3.4.3 The IRAB does not belong to the class of diagonal loading

When the iteration stops at k-th step, the weight vector of IRAB is

$$ {{} \begin{aligned} {{\mathbf{w}}^{(k)}}& ={{\left(\mathbf{R}+{{\tau }^{(k)}}{{p}^{(k)}}\mathbf{I}\right)}^{-1}}{{\mathbf{a}}^{(k-1)}} \\ & ={{\left({{\tau }^{(k)}}{{p}^{(k)}}{{\mathbf{R}}^{-1}}+\mathbf{I}\right)}^{-1}}{{\mathbf{w}}^{(k-1)}} \\ & =\prod\limits_{i=1}^{k}{{{\left({{\tau }^{(i)}}{{p}^{(i)}}{{\mathbf{R}}^{-1}}+\mathbf{I}\right)}^{-1}}{{{\hat{\mathbf{a}}}}_{S}}} \\ & =\mathbf{Q}~diag\left\{\frac{1}{{{\tau }^{(i)}}{{p}^{(i)}}/{{r}_{1}}+1},{\ldots},\frac{1}{{{\tau }^{(i)}}{{p}^{(i)}}/{{r}_{M}}+1}\right\}\mathbf{Q}{{{\hat{\mathbf{a}}}}_{S}} \\ \end{aligned}} $$
(46)

where the columns of Q contain the eigenvectors of R. Therefore, the IRAB does not belong to the class of diagonal loading.

3.4.4 The computational complexity

The computational complexity of IRAB is determined by the inversion of a M×M matrix, which is equal to O(M 3), per iterative step.

3.4.5 Relationship between the IRAB and some similar beamformers

Notice that the proposed IRAB relates to the following three beamformers: the DLWCB in [23], the IWCB in [26], and the IRCB2 in [24]. Their similarities and differences are as follows: (1) the equivalent diagonal loading levels of IRAB, DLWCB, and IRCB2 are the same, which is derived from the method in [9]; (2) DLWCB cannot be implemented in practice while IRAB is easy to be implemented; (3) although the equivalent steering vectors of IRAB and IWCB have the same form, which are deriving from Appendix B in [13], their solving methods per iterative step are quite different; (4) although the equivalent diagonal loading levels of IRAB and IRCB2 are the same, and their proof methods are similar, they are based on two different methods ([11] and [13]); and (5) the stopping criterion of IRAB is different to others.

4 Simulation results

In the following simulation examples, a ULA with M=16 antennas and half-wavelength antenna spacing is considered. Assume each antenna is omni-directional, the array has been calibrated and omit the coupling effect. The desired signal and interferences are stationary Gaussian random process, and the additive noise is a spatially white Gaussian process. There are two interferences with DOAs and interference-to-noise ratios (INR) of [ 55°, 20 dB] and [ 115°, 30 dB], respectively. One desired signal is impinging on the array from 80°, but its prior DOA is 82°, except example 5. The DOA uncertainty range of desired signal is θ W =8. The actual norm bound of the error between a S and \({{\hat {\mathbf {a}}}_{S}}\) is calculated by \({{\varepsilon }_{0}}=\underset {\phi }{\mathop {\min }}\,\left \| {{\mathbf {a}}_{S}}-{{{\hat {\mathbf {a}}}}_{S}}{{e}^{j\phi }} \right \|\). 1000 runs are performed except for example 2. The number of snapshots is 200 except for example 6.

The proposed IRAB is contrasted with some classical and similar RABs; they are as follows:

OPT: The MPDR beamformer of (5) with actual R and a S .

WCB: The WCB of [11]. The method proposed in [19] is used to solve WCB. The norm bound of steering vector error is set as ε WCB =1.1×ε 0, which is suggested by Jian Li [20], excepted for examples 1 and 5.

DLWCB: The diagonal loading approach of WCB, which is proposed in [23]. Its diagonal loading level has the same form with (22). Notice that the DLWCB cannot be implemented in practice, actual P S and P N are used to calculate the diagonal loading level in the simulations. The norm bound of steering vector error is set as ε DLWCB =1.1×ε 0, except for example 5.

IWCB: The iterative implementation of worst-case performance optimization-based beamformer [26]. The norm bound of steering vector error is set as ε IWCB =0.1.

4.1 SINR versus steering vector error bound

The first example simulates the SINR performance affected by norm bound of steering vector error. We set a group of different ε for WCB and IRAB. The actual norm bound of steering vector error corresponding to 2° pointing error is about ε 0=1.96. The input SNR of desired signal changes from −20 to 40 dB. Figures 3 and 4 show the results of WCB and IRAB, respectively. Results indicate that, when ε is set smaller than ε 0, the SINR performance of WCB decreases rapidly, while the performance of IRAB always keep stable. The theoretical analysis in Section 3.4 that the ε does no longer subject to the constraint εε 0 is verified. Figure 4 also shows that, the ε IRAB should be set appropriately, not too small or too large. An experience value is set \({{\varepsilon }_{IRAB}}=\sqrt {M}/2\); we use this setting in all the following examples.

Fig. 3
figure 3

SINR versus SNR with difference ε for WCB

Fig. 4
figure 4

SINR versus SNR with difference ε for IRAB

4.2 Iterative convergence property

The second example evaluates the convergence properties of IRAB and IWCB, SNR=25 dB. Figure 5 shows the norm bound error between the updated steering vector and actual steering vector per iterative steps. Figure 6 shows the updated SINR per iterative steps. Results show that as the iterative step increases, the error of updated steering vector grows smaller, and the updated SINR increases to a stable value. Additionally, the proposed IRAB has a faster convergence speed than IWCB.

Fig. 5
figure 5

The convergence properties of IRAB and IWCB: steering vector error versus iterative steps

Fig. 6
figure 6

The convergence properties of IRAB and IWCB: SINR versus iterative steps

4.3 Output SINR performance

The third example evaluates the output SINR performance versus input SNR. The result in Fig. 7 shows that the proposed IRAB outperforms other RABs almost at any input SNR.

Fig. 7
figure 7

Output SINR versus input SNR

4.4 Array beam pattern gain

The fourth example presents the array beam pattern gain of four RABs, SNR=25 dB. The results of Fig. 8 show that the main beam peak of IRAB and IWCB nearly points to the actual DOA of desired signal, while the WCB and DLWCB do not. The theoretical result of (37) indicates that, as the iterative step increases, the η (k) approaches to zero, the a (k) gets closer to actual value, and therefore the main beam peak points to the actual DOA. For this reason, the IRAB and IWCB have better SINR performance than WCB and DLWCB, especially at SNR <20 dB, as shown in Fig. 7.

Fig. 8
figure 8

Array beam pattern gain

4.5 SINR versus pointing error

The fifth example evaluates the SINR versus pointing error, SNR=25 dB. Setting ε WCB =ε DLWCB =2, which corresponds to about 2° pointing error. The results in Fig. 9 show that the SINR performance of WCB decreases greatly when pointing error exceeds 2°; the IRAB and IWCB exhibit stable performance in the DOA uncertainty range θ W =8; the DLWCB has a wilder pointing error range and does not subject to the 2° pointing error constraint.

Fig. 9
figure 9

Output SINR versus pointing error

4.6 SINR versus snapshots

We use actual data covariance matrix R in the theoretical analysis; the affect of finite sample effect with different snapshots is simulated in the sixth example, SNR=25 dB. The results in Fig. 10 show that as the snapshots increase from 16 to 400, the output SINR of WCB, DLWCB, IWCB, and IRAB increases about 7.5, 5.5, 8.0, and 7.0 dB respectively. The SINR performance of IRAB outperforms other RABs and goes to stable when snapshots number surplus 200.

Fig. 10
figure 10

Output SINR versus snapshots

4.7 SINR versus DOA separation and array size

As declared in Section 2.3, the effectiveness of the proposed algorithm requires “DOA separation between desired signal and interference is larger than a beam width”. In this section, we simulate the SINR performance versus different DOA separations between desired signal and interference and versus different array size. In the simulations, three arrays with element number M=10, 15, 20 are used; their mainbeam width are about 24°, 16°, and 12°, respectively (calculated by conventional beamformer with weight vector equals to the steering vector of desired signal). The SNR of desired signal is 20 dB. There is only one interference with INR=15 dB. The DOA separation between desired signal and interference varies from 0.4 to 5 times of main beam width. Other parameters are the same with the parameters declared in the beginning of Section 4.

The results in Figs. 11, 12, and 13 show that there are some ripples; they are caused by the nulls of beam pattern; the performance of IRAB is better than others in most cases; the proposed IRAB can work even when DOA separation between desired signal and interference is smaller than a mainbeam width (The IRAB can work with DOA separation larger than half a mainbeam width); and as the DOA separation increases, the performance of IRAB gets better.

Fig. 11
figure 11

SINR versus DOA separation: M=10, mainbeam width= 24°

Fig. 12
figure 12

SINR versus DOA separation: M=15, mainbeam width= 16°

Fig. 13
figure 13

SINR versus DOA separation: M=20, mainbeam width= 12°

5 Conclusions

We have derived an approximate diagonal loading solution of the WCB in this paper. A novel beamformer named IRAB have been proposed based on this solution. Theoretical analysis indicates that the proposed IRAB has three properties: the iteration will converge; the performance gets better as the iterative step increases; the IRAB does not subject to the steering vector error norm bound constraint and exhibits stable performance through a wide steering vector error bound range. Simulation results not only verify these properties but also show that the proposed IRAB outperforms other contrasted RABs under the set parameters.