1 Introduction

Time delay estimation (TDE) is a well-studied problem in applications such as radar [21], sonar [25] and wireless communication systems [22]. TDE can be commonly divided into two types, “active” [5] and “passive” [19]. In a passive system, i.e., passive target location estimation [24] and passive target tracking [27], passive time delay estimation is an important technique in multipath environment.

The passive TDE problems have been extensively studied in previous years. The maximum likelihood (ML) estimator is well known to be an optimal technique. The conventional ML estimators [13, 14] establish ML function according to the statistic characteristic of the received signal from two channels. In order to make the ML function more concise, a novel ML estimator [17] is established to estimate the time delay in single/multiple path environment based on the statistic characteristic of complex Gauss noise. It does not require estimating the signal power spectrum. Therefore, the authors focus on the new ML estimator in this paper.

A lot of algorithms are used to solve the solution of ML estimator. The direct method is grid search algorithm [17], but its precision depends on the interval of search, and the complexity increases quickly with the time delay path number. Therefore, iterative methods, such as the Newton’s method [1] and the expectation maximum (EM) [8] algorithm, have been used to estimate the time delay. They can achieve the well-known Cramer–Rao lower bound (CRLB) at a lower cost [17]. However, the performance of these methods depends on the initialization value which must be close to the true value. Meanwhile, these methods need many complex iterative steps to get the accuracy estimation. Alternatively, suboptimal methods based on the eigen-decomposition of the sample covariance matrix are also exploited in the context of TDE [19]. The representative algorithm is MUSIC method [9]. These suboptimal methods reduce the computational complexity compared to the above-mentioned grid search and iterative method. The suboptimal methods, however, still suffer from large computation because of the eigenvalue decomposition. Moreover, their performances are relatively poorer than ML estimator. They also need interpolation to enhance the estimation performance when time delays are not integer multiples of sampling interval. Furthermore, Monte Carlo (MC) techniques are also successfully applied in ML estimator [17], such as the traditional pure random search (PRS) and accelerated random search (ARS) [2]. However, because of the iterative requirement, its computational complexity is very high [17]. Furthermore, importance sampling (IS) method [16], a basic MC technique, is used to estimate the single/multiple path time delay and achieve the CRLB with lower computational complexity than the ML estimator in [17]. But the computational complexity of IS method increases quickly with the expanding ranges of parameters. Furthermore, it is difficult to achieve sample realizations [17] from the distribution function one by one with the IS method.

Motivated by these facts, we derive in this paper a new non-iterative implementation of the ML time delay estimator to avoid the multidimensional grid search. According to the characteristic of the ML function, a novel ML function with restraint conditions is established. Furthermore, the global maximization theorem of Pincus proposed in [20] is referred to for the reduction in the influence of the side lobes of the restraint ML function. Then, the Markov chain Monte Carlo (MCMC) algorithm, which has been applied in the estimation of the multiple path direction of arrival (DOA) [18] and more recently multi-target tracking [3], offers an efficient tool to find the global maximum of the restraint ML function and obtains the time delays estimation. Mixed sampling candidate state method [12] is applied in the MCMC technique. Finally, the passive time delay estimation CRLB of the new model is derived.

This paper is organized as follows. Section 2 presents the data model and builds the new likelihood function according to [17]; the characteristic of the ML function is analyzed and a new constraint ML function is established in this section. Section 3 describes the MCMC method, which is used in the new ML estimator. Furthermore, the CRLB of this model is derived in Sect. 4, followed by the simulation results and discussions in Sect. 5. Conclusions are given in Sect. 6.

2 Data Model And Ml Function

2.1 Data Model

In the passive system, the transmitted signal is considered unknown. In this case, the time difference of arrival (TDOA) can be estimated from multiple received signals at spatially separated destinations [17]. Supposing signal \(s(t)\) is the origin signal from the transmitter. Then the reference antenna is used to receive the direct signal, \(y_{1} (t)\), transmitted by illuminator. The effect of the multipath on the reference channel has been analyzed in [4], where possible algorithms for its removal have been presented. Another surveillance antenna is used to obtain the echo signals \(y_{2} (t)\). Because the weak target echoes are usually embedded in strong ground clutter, and the direct signal, cutter suppression algorithms [6] should be used. After the above-mentioned process, the received signals of two sensors are modeled as follows, which is same as the signal model in [17]:

$$\begin{aligned} y_{1}(t)= & {} a_{0} s(t-\tau _{0} )+w_{1} (t),\end{aligned}$$
(1)
$$\begin{aligned} y_{2} (t)= & {} \sum _{i=1}^{P} {a_{i} s(t-\tau _{i} )} +w_{2} (t), \end{aligned}$$
(2)

where \(P\) is the total number of multiple targets and it is the multipath components of time delay. \(\tau _i |_{i=0}^{P} \) and \(a_{i} |_{i=0}^{P} \) are the time delays and the complex gains of the received signals, respectively. \(w_{j_n } (t)|_{j_{n} =1}^{2} \) is the additive noise. If \(F_\mathrm{s} =1/T_\mathrm{s} \) is the sampling frequency, the resulting samples, taken at instances \(nT_\mathrm{s} \hbox {|}_{n=1}^{N} \), are

$$\begin{aligned} y_{1} (nT_\mathrm{s} )= & {} a_{0} s(nT_\mathrm{s} -\tau _{0} )+w_{1} (nT_\mathrm{s} ),\quad n=0,\ldots ,N-1 \end{aligned}$$
(3)
$$\begin{aligned} y_{2} (nT_\mathrm{s} )= & {} \sum _{i=1}^{P} {a_{i} s(nT_\mathrm{s} -\tau _{i} )} + w_{2} (nT_\mathrm{s} ),\quad n=0,\ldots ,N-1 \end{aligned}$$
(4)

where \(N\) stands for the total number of available samples. Suppose \(w_{1} (nT_\mathrm{s} )\) and \(w_{2} (nT_\mathrm{s} )\) are complex white Gaussian noises.

MCMC methods [3] are numerical techniques for performing Bayesian estimation, inference or detection. The basic idea behind MCMC methods is to draw samples from a posterior distribution of interest, which is the ML function in the TDE problem. ML function of time delay is constructed to estimate \(\varvec{\varDelta }_{\varvec{\tau }} =[\varDelta _\tau ^{1} ,\ldots ,\varDelta _\tau ^{P} ]^\mathrm{T}\), where \(\varDelta _{\tau } ^{i} =\tau _{i} -\tau _{0} |_{i=1}^{P} \). However, the time-domain input–output relation as (3) and (4) show cannot be used as an input of our estimator, and the performance of the time-domain estimator would degrade considerably compared to what can be achieved by the frequency-domain estimator [16]. So a frequency-domain formulation is adopted here. Applying the discrete Fourier transform to time-domain formulation, we obtain:

$$\begin{aligned} Y_{1} (k)= & {} a_{0} S(k)\hbox {e}^{-\frac{j2\pi k\tau _0 }{N}}+W_1 (k),\quad k=0,\ldots ,N-1, \end{aligned}$$
(5)
$$\begin{aligned} Y_{2} (k)= & {} \sum _{i=1}^{P} {a_{i} S(k)\hbox {e}^{-\frac{j2\pi k\tau _{i} }{N}}} +W_{2} (k),\quad k=0,\ldots ,N-1, \end{aligned}$$
(6)

where \(Y_1 (k)|_{k=0}^{N-1} , Y_2 (k)|_{k=0}^{N-1} , W_1 (k)|_{k=0}^{N-1} \) and \(W_2 (k)|_{k=0}^{N-1} \) are the discrete Fourier transform (DFT) of samples of \(y_{1} (n), y_{2} (n), w_{1} (n)\) and \(w_{2} (n)\), respectively. The TDOAs will be estimated by considering the received signal in the first senor as a reference signal. So, taking (5) into (6), (6) can be rewritten as follows:

$$\begin{aligned} Y_{2} (k)=\sum _{i=1}^{P} {b_{i} Y_{1} (k)\hbox {e}^{-\frac{j2\pi k\varDelta _{\tau } ^{i} }{N}}} +W_{P} (k), \quad k=0,1,\ldots ,N-1 \end{aligned}$$
(7)

where

$$\begin{aligned} b_{i}= & {} \frac{a_{i} }{a_{0} },\quad i=1,\ldots ,P \end{aligned}$$
(8)
$$\begin{aligned} W_{p} (k)= & {} W_{2} (k)-\sum _{i=1}^{P} {b_{i} W_{1} (k)\hbox {e}^{-\frac{j2\pi k\varDelta _{\tau } ^{i} }{N}}} \end{aligned}$$
(9)
$$\begin{aligned} \varDelta _{\tau } ^{i}= & {} \tau _{i} -\tau _{0} \end{aligned}$$
(10)

Then, considering this transformation, the channel coefficients vector \({\varvec{b}}=[b_1 ,\ldots ,b_P ]^\mathrm{T}\) and time delay \(\varvec{\varDelta } _{\tau } \) manifest themselves as the unknown linear and nonlinear parameters, respectively. (7) is rewritten into the matrix formulation as follows

$$\begin{aligned} {\varvec{Y}}={\varvec{\psi }}(\varvec{\varDelta }_\tau ){\varvec{b}}+ {\varvec{W}}, \end{aligned}$$
(11)

where \({\varvec{Y}}=[Y_{2} (0),Y_{2} (1),\ldots ,Y_{2} (N-1)]^\mathrm{T}\) is the DFT of the signal vector received by the second senor, \({\varvec{b}}\) is the relationship of unknown complex gains, and the matrix \(\varvec{\psi } (\varvec{\varDelta }_{\varvec{\tau }} )\) is the function of the TDOAs, defined as

$$\begin{aligned} {\varvec{\psi } }(\varvec{\varDelta }_{\varvec{\tau }})= & {} \left[ {{\varvec{\psi } }(\varDelta _{\tau } ^{1} ),{\varvec{\psi }}(\varDelta _{\tau } ^{2} ),\ldots , {\varvec{\psi } }(\varDelta _{\tau } ^{P} )} \right] \end{aligned}$$
(12)
$$\begin{aligned} {\varvec{\psi } }(\varDelta _{\tau } ^{i} )= & {} \left[ {Y_{1} (0),Y_{1} (1)\hbox {e}^{-\frac{j2\pi \varDelta _{\tau } ^{i} }{N}},\ldots ,Y_{1} (N-1)\hbox {e}^{-\frac{j2\pi (N-1)\varDelta _{\tau } ^{i} }{N}}} \right] ^\mathrm{T},\quad i=1,\ldots ,P\nonumber \\ \end{aligned}$$
(13)

where \({\varvec{W}}\) is a complex white Gaussian noise vector [17] containing the samples \(W_p (k)|_{k=1}^{N-1} \). Because we suppose that \(W_1 (k)\) and \(W_2 (k)\) are white Gaussian noises, the expectation of \(W_p (k)\,\hbox {can}\) be calculated as follows,

$$\begin{aligned} E\left[ {W_p (k)} \right] =E\left[ {W_{2} (k)-\sum _{i=1}^{P} {b_{i} W_{1} (k)\hbox {e}^{-\frac{j2\pi k\varDelta _{\tau } ^{i} }{N}}} } \right] =0 \end{aligned}$$
(14)

Supposing both the average power of \(W_1 (k)\) and \(W_2 (k)\) are \(\sigma _{0}^{2} \), we get the variance of \(W_p (k)\) as

$$\begin{aligned} \begin{array}{ll} Var\left[ {W_p (k)} \right] &{}=E\left[ {W_p (k)^{*}W_p (k)} \right] -\left\{ {E\left[ {W_p (k)} \right] } \right\} ^{2} \\ &{}=E\left[ {W_2 (k)^{*}W_2 (k)-\sum \limits _{i=1}^P {b_i ^{*}b_i W_1 (k)^{*}W_1 (k)\hbox {e}^{\frac{j2\pi k\varDelta _\tau ^i }{N}}\hbox {e}^{-\frac{j2\pi k\varDelta _\tau ^i }{N}}} } \right] \\ &{}= \sigma _0^2 +\sum \limits _{i=1}^P {\left| {b_i } \right| ^{2}} \sigma _0^2 \\ \end{array} \end{aligned}$$
(15)

2.2 Restraint Ml Function

According to the statistical properties of the noise, the probability density function (PDF) of \({\varvec{W}}\) is given by

$$\begin{aligned} P({\varvec{W}}|{\varvec{\varDelta } }_{\tau } ,{\varvec{b}})= \frac{1}{\pi ^{N}\sigma ^{2N}}\exp \left( {-\frac{1}{\sigma ^{2}}\left( {{\varvec{Y}}- {\varvec{\psi } }({\varvec{\varDelta } }_{\tau } ){\varvec{b}}} \right) ^{H}\left( {{\varvec{Y}}-{\varvec{\psi } }({\varvec{\varDelta } }_\tau ){\varvec{b}}} \right) } \right) \end{aligned}$$
(16)

where \(\sigma ^{2}\) is the power of complex noise \(W_p (k)\). Therefore, the likelihood function of the passive time delay estimation model can be given by

$$\begin{aligned} \varLambda ({\varvec{\varDelta } }_\tau ,{\varvec{b}})= -\frac{1}{\sigma ^{2}}\left( {{\varvec{Y}}-{\varvec{\psi } }({\varvec{\varDelta } }_\tau ) {\varvec{b}}} \right) ^{H}\left( {{\varvec{Y}}-{\varvec{\psi } }({\varvec{\varDelta } }_\tau ) {\varvec{b}}} \right) \end{aligned}$$
(17)

Actually, the ML solution \({\hat{\varvec{\varDelta }}}_\tau \) is defined as the global maximum of the likelihood function in (17) with respect to \({\varvec{\varDelta }}_{\tau } \). However, this formulation of the likelihood function imposes a joint estimation of \({\varvec{\varDelta }}_{\tau } \) and \({\varvec{b}}\), which is computationally intensive. Therefore, the likelihood function needs to be simplified into the only function of \({\varvec{\varDelta }}_{\tau } \). Observing that \(\varLambda ({\varvec{\varDelta }}_\tau ,{\varvec{b}})\) is quadratic with respect to \({\varvec{b}}\), so the estimation \({\hat{\varvec{b}}}\) can be obtained for a given \({\varvec{\varDelta }}_\tau \). Indeed, it can be shown that \({\hat{\varvec{b}}}\) is given by

$$\begin{aligned} {\hat{\varvec{b}}}= \mathop {\arg }\limits _{\varvec{b}} \left( {\frac{\partial \varLambda ({\varvec{\varDelta } }_{\tau } ,{\varvec{b}})}{\partial {\varvec{b}}} =0} \right) . \end{aligned}$$
(18)

Substituting (17) into (18) to solve the equation \(\partial \varLambda ({\varvec{\varDelta } }_\tau ,{\varvec{b}})/\partial {\varvec{b}}=0\), we have

$$\begin{aligned} {\hat{\varvec{b}}}=\left( {{\varvec{\psi } }^ {H}({\varvec{\varDelta }}_\tau ){ \varvec{\psi }}({\varvec{\varDelta }}_{\tau } )} \right) ^{-1} {\varvec{\psi }}^{H}({\varvec{\varDelta } }_{\tau } ){\varvec{Y}}. \end{aligned}$$
(19)

Replacing \({\varvec{b}}\) by \({\hat{\varvec{b}}}\) in (17), we get the so-called compressed likelihood function of the system as follows

$$\begin{aligned} L_c ({\varvec{\varDelta }}_\tau )=-\frac{1}{\sigma ^{2}}\left( {{\varvec{Y}}^{H}{\varvec{Y}}-{\varvec{Y}}^{H}{\varvec{\psi }}({\varvec{\varDelta }}_\tau ) \left( {{\varvec{\psi }}^{H}({\varvec{\varDelta }}_\tau ){\varvec{\psi }} ({\varvec{\varDelta }}_\tau )} \right) ^{-1}{\varvec{\psi }}^{H}({\varvec{\varDelta }}_\tau ) {\varvec{Y}}} \right) \end{aligned}$$
(20)

Omit the constant term in (20), then the likelihood function can be rewritten as

$$\begin{aligned} L_c ({\varvec{\varDelta }}_\tau )={\varvec{Y}}^{H}{\varvec{\psi }} ({\varvec{\varDelta }}_\tau )\left( {{\varvec{\psi }}^{H}({\varvec{\varDelta }}_\tau ) {\varvec{\psi }}({\varvec{\varDelta } }_\tau )} \right) ^{-1}{\varvec{\psi }}^{H}({\varvec{\varDelta }} _\tau ){\varvec{Y}} \end{aligned}$$
(21)

However, it is an important problem we should discuss whether the likelihood function \(L_c ({\varvec{\varDelta }}_\tau )\) has only one global maximum or not. Assuming that the true delays are \(\bar{\varDelta }_\tau ^1 ,\bar{{\varDelta }}_{\tau } ^{2} ,\ldots ,\bar{{\varDelta }}_{\tau } ^{P} \) and the estimation delays \(\hbox {are}\,\hat{{\varDelta }}_{\tau } ^{1},\hat{{\varDelta }}_\tau ^{2} ,\ldots ,\hat{{\varDelta }}_\tau ^P \), and \(L_c ({\varvec{\varDelta } }_\tau )\) has \(P!\) maximum values, because in any permutation of the \(\hbox {set}\,\{\bar{{\varDelta }}_\tau ^1 ,\bar{{\varDelta }}_\tau ^2 ,\ldots ,\bar{{\varDelta }}_\tau ^P \}\), \({\varvec{\psi }}({\varvec{\varDelta }}_\tau )\,\hbox {has}\) the same structure. Figure 1a shows the \(L_c ({\varvec{\varDelta }}_\tau )\) about (21) of linear frequency modulation (LFM) signal \(\hbox {when}\,P=2, \bar{{\varDelta }}_\tau ^1 =10T_\mathrm{s} , \hbox {and}\,\bar{{\varDelta }}_\tau ^2 =20T_\mathrm{s} \). The figure reveals two peaks of the likelihood function with 2-path time delay. However, the objective function can be solved only if it has one global maximum. Restraint conditions are needed to keep that (21) has only one global maximum. Hence, we get the new restraint time delay estimation ML function as follows.

$$\begin{aligned} \left\{ {\begin{array}{l} {\varvec{\varDelta }}_\tau =\arg \left( {\mathop {\max }\limits _{{\varvec{\varDelta } }_\tau } [L_c ({\varvec{\varDelta } }_\tau )]} \right) \\ \hbox {s.t.}\quad \varDelta _\tau ^1 >\varDelta _\tau ^2 >,\cdots ,>\varDelta _\tau ^P \\ \end{array}} \right. , \end{aligned}$$
(22)

where \({\varvec{\varDelta } }_\tau =[\varDelta _\tau ^1 ,\varDelta _\tau ^{2} ,\ldots ,\varDelta _\tau ^P ]\). The restraint condition restrains the value range of the variable, in which the ML function has only one maximum value. Therefore, the restraint ML function of the former signal is shown in Fig. 1b.

Fig. 1
figure 1

The likelihood function of TDE with 2-path time delay of LFM signal \((\bar{{\varDelta }}_\tau ^{1} =10T_\mathrm{s} , \bar{{\varDelta }}_\tau ^2 =20T_\mathrm{s})\). a Without restraint. b With restraint

3 Time Delay Estimation

According to the above analysis, \(L_c ({\varvec{\varDelta } }_\tau )\) is nonlinear with respect to \({\varvec{\varDelta }}_\tau \). A close-form solution seems analytically intractable. To solve the ML estimator, we need to numerically maximize the compressed likelihood function. It is quite a common solution in an iterative way, such as Newton’s method [1], iterative quadratic ML [28] and expectation maximization algorithm [8], but their performances are closely linked to the initialization values which determine that the estimation accuracy and their convergence may take many complex iterative steps. Other numerical algorithms have been developed to optimize the nonlinear function at the cost of computation simplicity, such as the simulated annealing technique [23], the accelerated random reach [2] and IS algorithm.

In this context, the global maximization approach, MCMC proposed by [11] and used in [18] offers an alternative to find the global maximum of the multidimensional functions. Because the initial values of this method are random numbers and a large amount of samples are used to approach the ML function, this approach does not require initial value and interpolation

3.1 MCMC Method

The basic idea of MCMC methods is to draw samples from a posterior distribution interest [28] and form the sample mean to approximate expectations, which then facilitates parameter estimation. The samples are generated by setting up a Markov chain, whose stationary distribution is the posterior distribution \(\varPi ({\varvec{x}})\) of interest variable \({\varvec{x}}\). Thus, each chain corresponds to a potential sample distributed with \(\varPi ({\varvec{x}})\).

The critical component of an MCMC method is an algorithm to draw samples from an arbitrary distribution. Metropolis–Hastings (M–H) [15] algorithm and Gibbs [10] algorithm are the common sampling methods, and we choose the M–H algorithm for this purpose here. The proposal function of M–H algorithm is chosen for its easy sampling, and it must be non-null over the support of distribution. Two methods are commonly used in choosing. The first one is random walk (RW), and another one is called independent Markov chain (IMC). The first method has a better partial search ability and better parameters precision, and the second method has a better global search ability. Hence, the mixed sampling method [12] is used here.

3.2 TDE Using MCMC

Figure 1 reveals that many side lobes are around the main lobe. On this condition, MCMC method could not estimate the accuracy time delay owing to unwanted samples around side lobes selected. Hence, we expect to make the ratio of the main lobe to side lobes higher. For this purpose, the global maximization theorem proposed by Pincus [20] is referenced. So the distribution function \(\varPi ({\varvec{\varDelta } }_{\varvec{\tau }} )\) of \({\varvec{\varDelta }}_{\varvec{\tau } } \) is expressed as

$$\begin{aligned} \varPi ({\varvec{\varDelta }}_{\varvec{\tau }})= \exp \left\{ {\rho L_c ({\varvec{\varDelta } }_\tau )} \right\} , \end{aligned}$$
(23)

where \(\rho \) is a constant. A suitable value of \(\rho \) could increase the ratio. The value of \(L_c ({\varvec{ \varDelta } }_\tau )\) is so large that we need another constant to put \(\rho L_c ({ \varvec{\varDelta } }_\tau )\) at suitable intervals. It is appropriate that

$$\begin{aligned} \rho =\frac{{\rho }'}{{\varvec{Y}}^{H}{\varvec{Y}}}. \end{aligned}$$
(24)

In order to view the \({\rho }'\) influence, we plot the comparison of function \(\varPi ({\varvec{\varDelta } }_{\varvec{\tau }} )\) with a different \({\rho }'\) in Fig. 2.

Fig. 2
figure 2

Plot of \(\varPi ({\varvec{\varDelta }}_{\varvec{\tau }} )\) at SNR \(=\) 10 dB for a \({\rho }'=500\) and b \({\rho }'=1500\)

In the presence of multipath, other secondary lobes appear and ultimately affect the MCMC sample. For this reason and as shown in Fig. 2, the parameter \({\rho }'\) should be increased to render the objective function \(\varPi ({\varvec{\varDelta }}_{\varvec{\tau }} )\) steeper around the actual delays \({\bar{\varvec{\varDelta }}}_{\varvec{\tau }} \). Obviously, the proper choice of \({\rho }'\) is of great importance. Its optimal value should be the highest one that makes at least secondary lobes disappear in \(\varPi ({\varvec{\varDelta }}_{ \varvec{\tau }} )\). Moreover, by a good choice of \({\rho }'\) to attenuate the secondary lobes, we reduce the probability of generating undesired samples [16] and hence reduce the complexity of the estimator.

Because stationary distribution \(\varPi ({\varvec{\varDelta }}_{\varvec{\tau }} )\) is a constraint function, the MCMC method cannot be used directly. Order sampling strategy in IMC we proposed afterwards makes the system satisfy the constraints. When IMC sampling method is selected, we get

$$\begin{aligned} q(\varDelta _\tau ^1 )\sim U\left[ {0,\varDelta _{\tau \max } } \right] . \end{aligned}$$
(25)

Therefore, the first element of the \(i_m^\mathrm{th}\) candidate state can be obtained as follows

$$\begin{aligned} (\varDelta _\tau ^1 )^{i_m }=\kappa _1 \varDelta _{\tau \max } ,\quad \kappa _1 \sim U[0,1] \end{aligned}$$
(26)

Furthermore, the distribution function of \(\varDelta _{\tau } ^{i} , \; i=2,\ldots ,P\) and the others elements of \(i_m ^\mathrm{th}\) sample can expressed as follows

$$\begin{aligned}&q(\varDelta _\tau ^i )\sim U\left[ {0,\varDelta _\tau ^{i-1} } \right] ,\quad i=2,\ldots ,P \end{aligned}$$
(27)
$$\begin{aligned}&(\varDelta _\tau ^i )^{i_m }=\kappa _i (\varDelta _\tau ^i )^{i_m },\quad \kappa _i \sim U[0,1] \end{aligned}$$
(28)

The RW method samples normally because the candidate state generates around current state.

Summary of Steps: In the following, we recapitulate the different steps for the direct implementation of the new algorithm.

  1. (1)

    Compute the DFT of the received signal samples \([Y_1 (0),Y_1 (1),\ldots ,Y_1 (N-1)]\) and \([Y_2 (0),Y_2 (1),\ldots ,Y_2 (N-1)]\).

  2. (2)

    Initialization. Generate a random sample \({\varvec{\varDelta } }_\tau ^0 \), according to (26) and (28), and then compute its function value \(\varPi ({\varvec{\varDelta }}_\tau ^0 )\) according to (23).

  3. (3)

    Sample the \({i}^\mathrm{th}\) sample, \({\varvec{\varDelta }}_\tau ^{i_m } ,i_m =1,\ldots ,R\), where \(R\) is the number of iterations. Generate a random number \(t, t\sim U[0,1]\). Then choose a suitable value \(\delta \).

    1. (a)

      If \(t\le \delta \), using IMC method, sample candidate state \({\varvec{\varDelta }}_\tau ^*=[(\varDelta _\tau ^1 )^{*},\ldots ,(\varDelta _\tau ^P )^{*}], (\varDelta _\tau ^1 )^{*}=\kappa _1 \varDelta _{\tau \max } \), and \((\varDelta _\tau ^i )^{*}=\kappa _i (\varDelta _\tau ^{i-1} )^{*}, \; i=2,\ldots ,P\), where \(\kappa _i \sim U[0,1], \; i=1,\ldots ,P\). After that, go to step 4).

    2. (b)

      Or else, sample candidate state using RW method. The candidate state is generated by \({\varvec{\varDelta }}_\tau ^*={\varvec{\varDelta }}_\tau ^{i_m -1} +{\varvec{\xi }}\), where \({\varvec{\xi } }\sim N({\varvec{0}}_{P\times 1} ,{\varvec{\lambda }}\varDelta _{\tau \max } )\), and where \({\varvec{\lambda }}\) is a constant vector. Then, go to step 4).

  4. (4)

    Calculate \(r({\varvec{\varDelta }}_\tau ^{*},{\varvec{\varDelta }}_\tau ^{i_m -1})\) using \(r({\varvec{\varDelta }}_\tau ^{*},{\varvec{\varDelta }}_\tau ^{i_m -1})=\frac{\pi ({\varvec{\varDelta }}_\tau ^{*})q({\varvec{\varDelta } }_\tau ^{i_m -1}|{\varvec{\varDelta }}_\tau ^{*})}{\pi ({\varvec{\varDelta }}_\tau ^{i_m -1})q({\varvec{\varDelta }}_\tau ^{*}|{\varvec{\varDelta }}_\tau ^{i_m -1})}\), and then compute \(\alpha ({\varvec{\varDelta }}_\tau ^{*},{\varvec{\varDelta }}_\tau ^{i_m -1})\) using \(\alpha ({\varvec{\varDelta }}_\tau ^{*},{\varvec{\varDelta }}_\tau ^{i_m -1})=\min \left\{ {1,r({\varvec{\varDelta }}_\tau ^{*},{\varvec{\varDelta }}_\tau ^{i_m -1})} \right\} \). Generate a random number \(\mu , \mu \sim N(0,1)\).

    1. (1)

      If \(\mu \le \alpha \), get \({i}^\mathrm{th}\) state, \({\varvec{\varDelta } }_\tau ^{i_m }={\varvec{\varDelta }}_\tau ^{*}\). After that, go to step 5).

    2. (2)

      Or else, get \(i_{m}^\mathrm{th}\) state, \({\varvec{\varDelta }}_\tau ^{i_m }={\varvec{\varDelta }}_\tau ^{i_m -1}\). Then, go to step 5).

  5. (5)

    If \(i_m <R, i_m \leftarrow i_m +1\) , go to step 3).

Or else, END.

In Table 1, the computational complexity of proposed MCMC algorithm is compared with the IS-based technique. Computational complexities here stand for the order of the number of complex-valued multiplying and adding operations of each technique based on its algorithmic description. In this table, \(K\) stands for the number of points in the interval \([0,\varDelta _{\tau \max } ]\). \(K=1001\), \(N=1024, R=3000\) in the simulation of this paper. The third column of this table shows the computational complexity ratio. From this table, it is seen that the new MCMC-based approach has lower complexity than IS-based method.

Table 1 Computational complexities of MCMC-based and IS-based algorithms

4 CRLB of TDE

The new data model in this paper is different from conventional time delay estimation [7, 26]. Therefore, the expression of CRLB in [7, 26] is not suitable here. In this section, the TDE CRLB of the new model is derived.

The CRLB is related to the \(P\times P\) Fisher Information Matrix (FIM). We get the distribution function of \({\varvec{\varDelta }}_\tau \) from (16),

$$\begin{aligned} P({\varvec{\varDelta }}_\tau ,{\varvec{b}})=\frac{1}{\pi ^{N}\sigma ^{2N}}\exp \left( {-\frac{1}{\sigma ^{2}}\left( {{\varvec{Y}}-{\varvec{\psi }}({ \varvec{\varDelta }}_\tau ){\varvec{b}}} \right) ^{H}\left( {{\varvec{Y}} -{\varvec{\psi }}({ \varvec{\varDelta }}_\tau ){\varvec{b}}} \right) } \right) . \end{aligned}$$
(29)

From (29), we can get

$$\begin{aligned} \frac{\partial \ln \left[ {P({\varvec{\varDelta }}_\tau ,{\varvec{b}})} \right] }{\partial {\varvec{\varDelta }}_\tau }=\frac{1}{\sigma ^{2}}\left( {{\varvec{Y}}-{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right) ^{H}\frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta }}_\tau )} \right] }{\hbox {d}{\varvec{\varDelta }}_\tau }{\varvec{b}} \end{aligned}$$
(30)

Assuming \({\varvec{J}}\) is a \(P\times P\) Fisher Information Matrix (FIM). The components of FIM are then defined as follows

$$\begin{aligned} \begin{array}{ll} [{\varvec{J}}(\varDelta _\tau )]_{kl} &{}=E\left[ {\frac{\partial \ln p({ \varvec{\varDelta }}_\tau ,{\varvec{b}})}{\partial \varDelta _\tau ^k }^{H}\frac{\partial \ln p({\varvec{\varDelta }}_\tau ,{\varvec{b}})}{\partial \varDelta _\tau ^l }} \right] \\ &{}=E\left[ {\left( {\frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right] }{\hbox {d}{\varvec{\varDelta }}_\tau }} \right) ^{H}\frac{1}{\sigma ^{4}}\left( {{\varvec{Y}}-{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right) \left( {{\varvec{Y}}-{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right) ^{H}\left( {\frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right] }{\hbox {d}{\varvec{\varDelta } }_\tau }} \right) } \right] \\ &{}=\frac{1}{\sigma ^{2}}\left( {\frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta } }_\tau ){\varvec{b}}} \right] }{\hbox {d}{\varvec{\varDelta }}_\tau }} \right) ^{H}\left( {\frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right] }{\hbox {d}{\varvec{\varDelta }}_\tau }} \right) \\ \end{array} \end{aligned}$$
(31)

According to (12), the derivatives of \(\left[ {{\varvec{\psi }}({ \varvec{\varDelta } }_\tau )} \right] \) is

$$\begin{aligned} \frac{\hbox {d}\left[ {{\varvec{\psi }}({\varvec{\varDelta }}_\tau ){\varvec{b}}} \right] }{\hbox {d}{\varvec{\varDelta }}_\tau }=\left[ {b_1 {\varvec{{\psi }}'}(\varDelta _{\tau 1} ),b_2 {\varvec{{\psi }}'}(\varDelta _{\tau 2} ),\ldots ,b_P {\varvec{{\psi }}'}(\varDelta _{\tau P} )} \right] , \end{aligned}$$
(32)

where

$$\begin{aligned} {\varvec{{\psi }}'}(\varDelta _{\tau i} )= & {} -\left[ {0,Y_1 (1)\frac{j2\pi }{N}\hbox {e}^{-\frac{j2\pi \varDelta _{\tau i} }{N}},\ldots ,Y_1 (N-1)\frac{j2\pi (N-1)}{N}\hbox {e}^{-\frac{j2\pi (N-1)\varDelta _{\tau i} }{N}}} \right] , \nonumber \\&i = 1,\ldots ,P \end{aligned}$$
(33)

We get

$$\begin{aligned} {\varvec{J}}=\frac{1}{\sigma ^{2}}\left[ {{\begin{array}{l@{\quad }l@{\quad }l} {b_1^2 {\varvec{{\psi }}'}^{H}(\varDelta _{\tau 1} ){\varvec{{\psi }}'}(\varDelta _{\tau 1} )}&{} \cdots &{} {b_1 b_P {\varvec{{\psi }}'}^{H}(\varDelta _{\tau 1} ){\varvec{{\psi }}'}(\varDelta _{\tau P} )} \\ \vdots &{} \ddots &{} \vdots \\ {b_1 b_P {\varvec{{\psi }}'}^{H}(\varDelta _{\tau 1} ){\varvec{{\psi }}'}(\varDelta _{\tau P} )}&{} \cdots &{} {b_P^2 {\varvec{{\psi }}'}^{H}(\varDelta _{\tau P} ){\varvec{{\psi }}'}(\varDelta _{\tau P} )} \\ \end{array} }} \right] , \end{aligned}$$
(34)

where

$$\begin{aligned} {\varvec{{\psi }}'}^{H}(\varDelta _{\tau i} ){\varvec{{\psi }}'}(\varDelta _{\tau j} )=\left\{ {\begin{array}{l} \sum \nolimits _{k=0}^{N-1} {\left| {Y_1 (k)} \right| ^{2}\frac{(2\pi k)^{2}}{N^{2}}} ,\quad \hbox {if} \quad i=j \\ \sum \nolimits _{k=0}^{N-1} {\left| {Y_1 (k)} \right| ^{2}\frac{(2\pi k)^{2}}{N^{2}}} \exp \left( {j\frac{2\pi k(\varDelta _{\tau i} -\varDelta _{\tau j} )}{N}} \right) ,\quad \hbox {else} \\ \end{array}} \right. \end{aligned}$$
(35)

Furthermore, \(\sigma ^{2}\) has been derived in (15)

$$\begin{aligned} \sigma ^{2}=\sigma _0^2 +\sum _{i=1}^P {b_i ^{2}} \sigma _0^2 \end{aligned}$$
(36)

The CLRB sets the lower bound for the mean square error (MSE) of MCMC time delay estimation. The relationship of CRLB and the TDE can be expressed as

$$\begin{aligned} E[(\hat{{\varDelta }}_\tau ^i-\bar{{\varDelta }}_\tau ^i )^{2}]\ge \left( {{\varvec{J}}^{-1}} \right) _{ii} ,\quad i=1,\ldots ,P \end{aligned}$$
(37)

where \(\hat{{\varDelta }}_\tau ^1 ,\ldots ,\hat{{\varDelta }}_\tau ^P \) are the estimated values of \(\bar{{\varDelta }}_\tau ^1 ,\ldots ,\bar{{\varDelta }}_\tau ^P\), respectively, and \(({\varvec{J}}^{-1})_{ii} \)is the \((i,i)^{th}\)element of the inverse matrix of \({\varvec{J}}\).

5 Simulation Results

In order to properly assess the performance of the new MCMC approach, we compare the performance of the proposed MCMC method with other multiple TDE algorithms. EM algorithm, MUSIC-type algorithm and ARS techniques have been compared to the IS-based algorithm in [17]. It has been proved that the IS-based method has better performance and lower computational complexity than others. Hence, we now only compare the proposed MCMC-based constraint ML estimator to IS-based algorithm. Furthermore, the estimation errors are also compared with the CRLB. The simulation pulse is a linear frequency modulation (LFM) signal which is widely used in radar and sonar application. The lower frequency of LFM is chosen to be 98 MHz, and its bandwidth is 10 MHz. The sampling frequency is 24.25 MHz. Other basic parameters in these simulations are listed in the table. Five hundred trials are simulated (Table 2).

Table 2 Values for the main parameters for the experiments

Some experiments are demonstrated to show the influence of some parameters in following section. The SNR of directly received signal \(y_1 (t)\) is defined as

$$\begin{aligned} \hbox {SNR}=10\log _{10} ({\varvec{Y}}_1^H {\varvec{Y}}_1 /\sigma _0^2 ), \end{aligned}$$
(38)

Figure 3 displays the iterations of three paths time delays estimation about the proposed algorithm. It takes about 200 iterations to converge to the correct order. It is clear that the Markov chain centers on the trues delays values as shown in Fig. 3.

Fig. 3
figure 3

Instantaneous estimations of the MCMC \({\varvec{\varDelta }}_\tau \) for three paths (SNR \(=\) 10 dB)

According to the characteristics of the MCMC method, we know that the larger the number of iterations is, the higher the estimation accuracy is. The performance of the MCMC algorithm with different iteration numbers is shown in Fig. 4. We can find that the variances of TDE errors are almost the same when iteration outnumbers 3000. Therefore, considering the computational complexity of the algorithm, the number of iteration is 3000 in the latter simulations.

Fig. 4
figure 4

Estimation performance of the MCMC algorithm for different number of iterations (SNR \(=\) 10 dB)

As mentioned in Sect. 3, the algorithm is sensitive to the choice of \(\rho ^{\prime }\). In order to study the effect of the parameter on the estimation performance, we vary it from 50 to 4500. It is seen from Fig. 5 that \(\rho ^{\prime }\) seriously affects the estimation performance of the new MCMC algorithm. As mentioned above, a small value of \(\rho ^{\prime }\) may not reduce the additive noise influence in ML function, while too large a value makes the formula (23) so large that it is out of the computation limit. Therefore, an appropriate choice of \(\rho ^{\prime }\) is necessary in order to obtain near-optimal performance. It is shown in Fig. 5 that for \(\rho ^{\prime }\) taking values between 600 and 2450, the performance is almost the same. Thus, the optimal \(\rho ^{\prime }\) value can be freely selected from this relatively large range. In the following simulations, \(\rho ^{\prime }\) is set at 2000.

Fig. 5
figure 5

Estimation performance of the MCMC algorithm for different \(\rho ^{\prime }\hbox {s}\) (SNR \(=\) 10 dB)

According to the analysis in Sect. 3, the choice of \(\lambda \) also affects the performance of the proposed MCMC algorithm. The estimation performances with different \(\lambda \,\hbox {s}\) are simulated in Fig. 6. We can conclude from Fig. 6 that when \(\lambda \varDelta _{\tau \max } \) takes value from 0.02 to 0.3, the proposed approach performances are almost the same. Thus, the optimal value can be freely selected from the interval. In the following simulations, the \(\lambda \varDelta _{\tau \max } \) value is set at 0.01111. The sampling methods could not get abundant samples around the true values of time delay when the selection of \(\lambda \varDelta _{\tau \max } \) out of the interval [0.02, 0.3] with the same iteration number, which leads to the phenomenon in Fig. 6.

Fig. 6
figure 6

Estimation performance of MCMC algorithm for different \(\lambda \)

These time delay estimation algorithms mentioned in former parts of this paper are compared to IS-based methods in [17], which get better performance than others. Hence, we only compare the MCMC-based algorithm to the IS-based approach here. It is important that there is no interpolation in the simulation of this paper, while some algorithms, such as the MUSIC-type method and GCC method, need interpolation to increase the estimation accuracy. Therefore, two schemes are simulated here. The first one sets the true time delay value as: \({\bar{\varvec{\varDelta }}}_\tau =[10.1T_\mathrm{s} ,20.2T_\mathrm{s} ,30.3T_\mathrm{s} ]\). Another scheme sets the true time delay values as \({\bar{\varvec{\varDelta }}}_\tau =[10T_\mathrm{s} ,20T_\mathrm{s} ,30T_\mathrm{s} ]\). Figure 7 depicts the performance of both two schemes with MCMC-based approach and IS-based algorithm, respectively. As accepted, the second scheme could get more accuracy estimation than the first one, because the time delays of this scheme are integer multiples of the sampling time \(T_\mathrm{s} \). As shown in Fig. 7d, the average MSE over paths is approximate between the comprehensive performance of MCMC-based algorithm and IS-based method. We still find some differences from Fig. 7a–c. The MCMC-based algorithm gets more precise estimation than the IS-based in the second path and the third path, while it is opposite in the first path, because the IS-based algorithm samples the integrations with one-dimensional function [16], in which the second and third paths have lower main lobes than the first one. The higher main lobe suppresses lower main lobes sampling chance, so the second and third paths get less precise estimation result than the first path with same integrations. Instead, MCMC-based algorithm samples with P-dimensional posterior function, which only have one main lobe, can get more precise results. Furthermore, Fig. 8 displays the simulation effect on time delay estimation performance with different signal sampling numbers. It can be seen that, with the increase in sampling number, the average MSE over paths is decreasing, and the MCMC-based algorithm and IS-based method have approximate performance.

Fig. 7
figure 7

Integer or non-integer time delays estimation performance of the MCMC-based and IS-based algorithms for different SNRs

Fig. 8
figure 8

Estimation performance of MCMC and IS-based algorithms with different snaps

The 3-path time delay process is discussed in the former part of this section. Meanwhile, three important parameters are explored to get a perfect estimation, and those parameters are suitable with the increasing time delay path. Because the value of \(\rho ^{\prime }\) is related to the received signal, it could change with the altering received signal. Meanwhile, the \(\lambda \varDelta _{\tau \max } \) value is independence from the received signal.

6 Conclusion

A novel restrained ML function of the signal is built to estimate multipath passive time delay using a new implementation based on the concept of MCMC sampling. The new algorithm is less expensive in terms of computational complexity than the IS-based algorithm and far less than traditional algorithms. The MCMC-based method has approximate performance with IS-based algorithm, whose MSE is close to CRLB. Unlike the EM methods, the estimation accuracy of MCMC-based algorithm does not suffer from initiation value limit. Furthermore, the novel approach gets better performance than GCC and MUSIC-type without interpolation. Meanwhile, we find that, with the increase of SNR, the MSE of estimation parameters cannot approach CRLB. At this time, increasing the snap of signal can enhance the estimation performance.