1. Introduction
In feedforward active noise control (ANC) systems, the control sound produced by the secondary source might propagate to the reference microphone, resulting in a contaminated reference signal. This acoustic feedback deteriorates the control performance and sometimes causes an instability issue [
1,
2]. Several approaches have been proposed to overcome this issue. Directional microphones and loudspeakers can be used to avoid the acoustic feedback [
3,
4]. However, the directivity is poor in the low-frequency range and the performance is limited. The use of non-acoustic sensors to obtain the reference signal avoids the acoustic feedback, but the existing one is only applicable for tonal noise control [
5].
Signal processing techniques have been used to overcome the feedback issues. The infinite impulse response (IIR) based adaptive feedback neutralization methods have been proposed, but are constrained by the local minimum solution and stability issue [
6,
7]. To address the stability issue of the IIR adaptive filtering, the lattice form IIR filter is introduced [
8]. The most popular method for solving the feedback problem is the finite impulse response (FIR)-based feedback neutralization, where a fixed neutralization filter is used to subtract the feedback signal from the reference signal. In some applications, the feedback path is time varying, so online feedback path modelling is needed.
Auxiliary noise generated by a white noise generator can be injected into the system for online feedback path modelling, but the injected signal is mixed with the residual noise and deteriorates the noise reduction performance [
9]. A three adaptive filter-based method has been proposed in [
10] to control both the predictable and broadband noise with online feedback path modelling using auxiliary noise, in which an adaptive control filter is used to update the control coefficients, a feedback path modelling filter is used to compensate the acoustic feedback, and the third filter is used to remove the disturbance during the modelling of the feedback path. Nevertheless, the method in [
10] uses separate filters for feedback path modelling (FBPM) and feedback path neutralization (FBPN), which in turn increases the computational burden. A computationally efficient feedback path modelling and neutralization (FBPMN) method has been proposed for multichannel active noise control systems by combining the FBPM and FBPN filters into a single FBPMN filter [
11]. A variable step size technique has been used for updating the coefficients of the FBPMN filter, which improves the performance of the online feedback path modelling [
12]. However, in all the above methods, the injected auxiliary noise affects the noise reduction performance.
A power scheduling strategy was imposed for the auxiliary noise used for modelling the feedback path to meet the conflicting requirement of faster convergence of feedback path modelling and lower steady-state residual error [
13,
14]. A robust variable step size method for feedback path modelling and neutralization in a single channel narrowband system is proposed to achieve faster convergence [
15]. Recently, a feedback path neutralization filter is used to compensate feedback and a time-varying gain is incorporated for generating the auxiliary noise [
16]. Incorporating frequency weighted penalties, a robust controller can be designed with a fixed feedback neutralization filter to control noise in a ventilation duct system [
17].
To avoid using auxiliary sound for feedback path modelling, in this paper we propose to use the control signal for online feedback path modelling and neutralization. A systematic method is proposed, which includes controller initialization, feedback path estimation, active control operation, and feedback path changing detection for maintaining the control operation. In the online feedback path modelling, de-correlation filters are used to increase the convergence rate and reduce the bias of the feedback path modelling. Unlike the existing methods, the proposed method has three advantages. First, it avoids the need for an extra auxiliary noise generator; second, it uses a single filter for feedback path modelling and neutralization to reduce the overall computational complexity, and third, it decouples the feedback path modelling and control process to improve the performances. Furthermore, a stability detector is set in the ANC system to ensure the system stability in the event of howling or a feedback path change. In the first stage of the proposed method, if howling is detected, a nominal estimate of the feedback path is used in order to stabilize the system. Then feedback path is estimated followed by the control operation. If a feedback path change is detected depending upon the preset thresholds in the middle of control operation, the control filter update is ceased and feedback path is remodeled. The proposed method, therefore, helps in decoupling the control operation and feedback path modelling.
2. Proposed Method
The proposed method shown in
Figure 1 consists of four stages: controller initialization, feedback path estimation, active control operation, and feedback path changing detection for maintaining control operation.
P(
z) is the primary path between the reference microphone and error microphone,
is the estimate of the primary path,
F(
z) is the acoustic feedback path from output of control filter
W(
z) to the reference microphone,
is the estimate of
F(
z),
S(
z) is the secondary path from output of control filter to the error microphone, and
is the estimated secondary path. Five switches are used to manage the control flow: control signal generation (K
1), control filter update (K
2), feedback path estimation (K
3), and detection of secondary path change (K
4, K
5).
Figure 2 depicts the flowchart of the proposed method. In the initialization, the primary path estimate
can be obtained by using the reference microphone signal and the error microphone signal with K
1 switched off, and the estimated secondary path
is assumed to be identified as
S(
z) to focus on feedback path modelling in the paper. To detect the path changes, three thresholds are defined:
where
Tr(
n) is the threshold to detect the residual noise level,
Ts(
n) is the threshold to detect the accuracy of the estimated secondary path,
Td(
n) is the threshold to detect the feedback path change (stability).
is the power of the measured error signal
e(
n), which can be estimated by
where
λ = 0.999 is the forgetting factor with
, and the range of
λ is 0.9 <
λ < 1, in general [
18].
is the power of the primary disturbance, which can be estimated similarly with Equation (4) by turning off K
1. For
is the power of the modelling error signal
ε(
n), and
is the power of the signal
x(
n).
is the power of the signal
, where
β is a scaling parameter that determines the mapping of the signal
x(
n) to the linear range of tanh function. The value of
β is chosen by trial and error in such a way that the most likely range of the incoming reference signal
r(
n) lies in the linear range of the tanh function, i.e.,
, which is depicted in
Figure 3. The normal residual noise level with control, the normal estimated secondary path accuracy and the normal threshold
Td(
n) are assumed to be
Tr0,
Ts0 and
Td0, respectively. All the powers are estimated recursively similar to Equation (4) with their initial values equal to zero, i.e.,
,
,
and
.
After initialization, the system enters into the first stage. In the first stage, K1 is turned on and the other switches are turned off for setting the initial controller. The last coefficient of the control filter is set as a single gain G, and all other coefficients are set as zeros, i.e., , with Lw denoting the length of the control filter. G is tuned in such a way that the amplitude of the residual error signal e(n) is higher than that of the undesired noise p(n) without howling. At this stage, if the power of the residual error signal e(n) becomes 20 dB higher than the power of undesired noise p(n), it is considered as the start of howling.
If howling happens, record 2
Lf (
Lf denotes the length of
) controller output signal
y(
n) and reference microphone signal
m(
n) and use them directly to calculate a nominal estimate of
F(z). The nominal estimate of
F(z) can be obtained as:
where IFFT denotes the inverse Fourier transform,
is the impulse response vector of the nominal estimate,
M(
ω) is the FFT of the microphone signal
m(
n), and
Y(
ω) is the FFT of
y(
n). Although Equation (5) might not provide an exact estimate of
F(z) because the reference signal is contaminated, it can be used to stabilize the system for further feedback path modelling. It should be noted that the magnitude of
y(
n) should be quite large in the above identification because it makes the power of the residual error signal
e(
n) about 20 dB higher than the power of
p(
n) when howling happens.
If there is no howling, the controller G is increased from a small pre-defined value (for example, G = 1% of the maximal gain can be applied on the system without causing howling) by 2 times each step until . That means the system stays in the first stage until without causing howling. Once the system is stable and the above condition is satisfied, it is ready to enter the second stage.
In the second stage, K
1 and K
3 are turned on and the other switches are turned off. The feedback path
F(
z) is estimated as an FIR filter
using the control signal as the excitation signal. The initial impulse response vector of
can be a vector of zeros if no howling occurs in the first stage or the one obtained with Equation (5) if howling occurs. Because the control signal
y(
n) and reference signal
r(
n) are correlated, the obtained model is biased. Although a delay present in the control filter in the first stage can reduce correlation somehow, normalized least mean square (NLMS) decorrelation filters are used in this stage to whiten the signals used in the feedback path modelling process to increase the convergence speed and reduce the bias of the adaptive filter [
19,
20].
Two identical adaptive decorrelation filters L(z) = 1 − z−1A(z) are employed to address the bias and slow convergence issue of feedback path modelling in the second stage, where A(z) is the z-transform of with N denoting the tap-weight length of A(z). The feedback compensated signal passes through the adaptive decorrelation filter to provide the signal , where . Similarly, the control signal y(n) passes through the decorrelation filter to provide , where . The pre-whitened signals and are used to update the filter .
The adaptive decorrelation filter is updated using the NLMS algorithm as:
where
is the step size and
is used to avoid divide by zero. The tap-weights of the of
are updated as:
where
is the step size,
is used to avoid divide by zero, and
. It is to be noted that the method described above is applicable for broadband control only. In this stage, the feedback path modelling is carried out for a certain time, which depends on the feedback signal to reference signal amplitude ratio. A higher value of the feedback to reference signal ratio can have shorter time
, whereas a smaller value requires a longer time. Here, the modelling time duration is chosen by trial and error and can be started with the same time that is used to model the secondary path.
In the third stage, the switches K
1 and K
2 are turned on and the other switches are turned off, the control operation is carried out with the filtered-x least mean square (FxLMS) algorithm. The control weights are updated as:
where
μw is the step size with initial control weights
, a null vector of length
Lw,
xs(
n) = [
xs(
n),
xs(
n−1), …,
xs (
n−
Lw+1)]
T with
Lw denoting the tap-weight length of the control filter, and
xs(
n) is the filtered reference signal, which is obtained by filtering
x(
n) with the secondary path estimate
. The residual noise is reduced continuously towards normal noise reduction
Tr0. If the noise reduction level increases suddenly, it triggers the system into the fourth stage.
The fourth stage involves the feedback path changing detection. Assume that the normal residual noise level is
Tr0 = −10 dB in the operation. If suddenly it becomes greater than −10 dB, i.e.,
Tr (
n) >
Tr0, there is a path change. It is to be noted that
Tr(
n) is calculated for each instance of time. At the same time,
,
and
Td(
n) are also estimated in a side branch of the system (detector in the schematic diagram shown in
Figure 1). If
Td (
n) <
Td0 (
Td0 = −10 dB for example), the system is stable and the change is caused by the primary path and the control operation is resumed. If
Td(
n) >
Td0, the rise in
Tr(
n) may be due to the secondary path change or the feedback path change, and the control filter update is ceased by turning off K
2. In practice, the secondary path and the feedback path usually change simultaneously when the secondary source or sound propagation paths change.
To check whether the change is due to the secondary path, K
1, K
4 and K
5 are turned on and the other switches are turned off. At this time, there is controller output but without controller update,
and
Ts(
n) are estimated. If
Ts(
n) >
Ts0 (
Ts0 = −15 dB for example), the change is in the secondary path. In this case, the secondary path is remodelled and then the control operation is resumed with the new model. Here,
Ts0 = −15 dB is chosen based on an adequate secondary path model, which can be obtained with the extended filtering method [
21,
22]. Although the proposed method focuses on the feedback path modelling, the secondary path modelling is highlighted here for the sake of completeness of the whole ANC system.
If Ts(n) < Ts0 (when K1, K4 and K5 are turned on and the other switches are turned off), the rise in e(n) is due to the feedback path change. The feedback path is modelled by turning on switches K1 and K3 and turning off the other switches with the previously obtained W(z). After obtaining a new , K1 and K2 are turned on, the other switches are turned off, the active control operation is resumed by updating the control coefficients as in Equation (8), and the system runs in the third stage.
3. Simulations
In the literature, little research can be found for feedback path modelling using the control signal. The closest related algorithm is Akhtar’s method [
10], which uses random noise for online feedback path modelling, so it is used as a benchmark for comparison with the proposed method. In the simulations, the primary path
P(
z), secondary path
S(
z) and the feedback path
F(
z) are FIR filters of lengths 48, 16 and 32, respectively, which are collected from the data provided in [
2], Their spectra are shown in
Figure 4. The adaptive filters
W(
z),
and
are selected as FIR filters of lengths
Lw = 48,
Ls = 16 and
Lf = 32, respectively. The adaptive de-correlation filter
A(
z) is an FIR filter of length
N = 5.
The reference signal
r(n) is generated from an autoregressive process:
where
v(
n) is a white noise with zero-mean and unit variance. The white noise injected in Akhtar’s method is a zero-mean with variance 0.05. The sampling frequency used in the simulation is 2 kHz. All the simulation results are averaged over 10 independent realizations. The mean square error (MSE) and the relative modelling error Δ
F are used as the metrics for comparison, which are defined as:
In the first stage, K
1 is turned on and the other switches are turned off for initializing the controller. The control filter is set as
, representing a delay of
samples followed by unit gain. The amplitude of the residual error signal
e(
n) is higher than that of the undesired noise
p(
n) in this initialization, howling occurs. A nominal estimate of the feedback path using Equation (5) is used to maintain the stability of the control system. In the second stage, the feedback path modelling is carried out using the proposed decorrelation filters for 10 s, during which K
1 and K
3 are turned on and the other switches are turned off. The benefit of using the decorrelation filters can be noticed from the modelling error shown in
Figure 5.
The improved modelling accuracy is due to the reduction of bias, which is achieved by the whitening property of the decorrelation filter. The steady-state modelling error without using the decorrelation filters fluctuate more as compared to that with the decorrelation filters due to the existence of bias. Furthermore, the decorrelation filters aid in faster convergence of the adaptive filter, e.g., to achieve −16 dB modelling error, the one with the decorrelation filters takes 0.7 s compared to 1.1 s taken by the one without decorrelation filters. The modelling error obtained with and without decorrelation filters at 2.0 seconds are −20.3 dB and −17.4 dB, respectively.
After the feedback path modelling, K
1 and K
2 are turned on and the other switches are turned off, the simulation for control operation runs for 50 s with the original acoustic paths shown in
Figure 4. Then the feedback path changes suddenly, resulting in a situation
Tr(
n) > −10 dB and
Td(
n) > −10 dB, the control update is ceased. The switches K
1, K
4 and K
5 are turned on and the other switches are turned off, the threshold
Ts(
n) is checked confirming a feedback path change. The feedback path remodelling is carried out to estimate the new feedback path. After an adequate modelling, the control operation is resumed. The simulation parameters used for the proposed method are:
,
,
,
, and
. For Akhtar’s method
,
, and
. The step sizes are chosen by trial and error to make the system stable yet with the fastest convergence speed.
Figure 6a depicts the modelling error obtained for the whole duration of control operation. One can notice that the proposed method maintains constant modelling error for the first 50 s because the feedback path is modelled before the control operation. After the detection of feedback path change at the 50th second, the controller update is ceased, K
1 and K
3 are turned on and the other switches are turned off. The feedback path modelling is carried out from the 50th second to the 70th second, and reasonably accurate feedback path is obtained using the decorrelation filters. The feedback path remodelling in the fourth stage takes longer time compared to the feedback path modelling in the second stage because of the presence of the control filter, whose frequency response is not flat in general.
The control operation is resumed after the 70th second, K1 and K2 are turned on, the other switches are turned off and thus the modelling error is constant. But for Akhtar’s method, both the control operation and feedback path modelling occur simultaneously, resulting in a continuous variation of modelling error. It is important to note that the proposed method with the decorrelation filters obtained approximately 11 dB less modelling error than the one without using the decorrelation filters and approximately 6 dB less modelling error than Akhtar’s method.
The learning curves for the control operation are depicted in
Figure 6b, which shows the superiority of the proposed method with the decorrelation filters before and after the feedback path change. For the first 50 s, the proposed method achieves faster convergence and lower steady-state residual error. The convergence of Akhtar’s method is slow due to the fact that the control operation and feedback path modelling process interfere with each other. An inaccurate feedback path estimation filter leads to increased interferences in control operation, i.e., the presence of feedback component in reference signal affects the active control performance.
After the 50th second, the feedback path is changed and, therefore, the residual error increases sharply. From the 50th second to the 70th second, feedback path modelling is carried out neutralizing the feedback component, and hence the magnitude of the feedback compensated input signal to the control filer is reduced, consequently the error level reduces due to the existence of the fixed control filter. After the 70th second, the control operation is resumed and the noise is further reduced. The improvement in control performance in the proposed method is attributed to the inclusion of the decorrelation filters to address the issue of biased estimation and the decoupling between the control operation and feedback path modelling.
Using decorrelation filters in the proposed method increases the computational load, which include two identical decorrelation filtering, the coefficient update of the decorrelation filter and obtaining the prewhitening signal, but it has less computational burden compared to Akhtar’s method using auxiliary noise (see Figure 5 of [
10]), which uses an adaptive noise cancellation (ADNC) filter of length
Lh and two separate filters for FBPM and FBPN. Furthermore, it is to be noted that the feedback path modelling and the control operation are not carried out simultaneously, leading to a reduced computational load.
The computational complexity is calculated in terms of the number of multiplications (per samples) and number of additions (per sample). All the methods require
multiplications and
additions to obtain the controller output;
multiplications and
additions to obtain the filtered reference signal;
multiplications and
additions to obtain the estimated feedback signal;
multiplications and
additions to update the control filter. Unlike Akhtar’s method a single filter is used for feedback path modelling and neutralization. The proposed method requires
multiplications and
additions to obtain the decorrelation filter outputs;
multiplications and
additions for updating the feedback path modelling and neutralization filter; and
multiplications and
additions for updating the decorrelation filter. Akhtar’s method requires
multiplications and
additions for obtaining the ADNC filter output;
multiplications and
additions for updating the ADNC filter using the NLMS algorithm. The basic computational load (filtering and filter update) for the related methods are summarized in
Table 1, in which
denotes the number of multiplications per sample and
denotes the number of additions per sample associated with different operations. For a particular case considered in the simulations, the total number of multiplications per sample and additions per sample are also included in the last row of
Table 1.
In summary, the proposed four-stage method and the decorrelation filters maintain the control operation with improved performance and system stability when the feedback path changes. In contrast to the existing algorithm, the proposed method detects the change of acoustic paths by monitoring the preset thresholds, and uses five switches to decouple the feedback path modelling from control operation. Therefore, the implementation of the proposed algorithm is quite simple. Although, the proposed method can be useful for broadband signals for feedback path modelling, it is not effective for tonal signals because it is not possible to compensate all the feedback components when the feedback path modelling is carried out using a tonal control signal. The auxiliary noise injection method still holds good for a tonal active control system.