1 Introduction

In recent years, there has been a growing focus on the comfort of air travel, prompting aircraft manufacturers to actively seek ways to enhance the comfort of flight. Bouwens et al. [1] have identified several crucial environmental factors that significantly influence the comfort of passengers in air travel, including anthropometrics, noise, odors, climate, vibrations, and light, ranked in descending order of importance. A short test flight study with 94 participants revealed that noise was mentioned as a major contributor to discomfort by over 91% of the participants [2]. Notably, among the various types of aircraft used for passenger transportation, turboprop aircraft face a particularly severe noise problem. Consequently, it becomes imperative to find an effective solution to the problem of cabin noise in turboprop aircraft.

Turboprop noise is the main noise source of turboprop aircraft, characterized by a typical spectrum consisting of line spectrum noise superimposed on a broadband noise base. The main energy is distributed on the blade pass frequency (BPF) and its harmonic components, usually not exceeding 500 Hz. There are two main methods for noise control: passive noise control (PNC), which utilizes acoustic materials and structures to convert noise energy into thermal energy, such as sound insulation and vibration isolation, and ANC, which applies the superposition principle to counteract the noise by emitting sound waves with the same amplitude as the noise but with the opposite phase from a secondary sound source. PNC technology, due to its inherent principles, exhibits limited effectiveness in addressing low-frequency noise with longer wavelengths. Conversely, ANC method has proven to be effective in suppressing low-frequency noise, while also offering the advantages of smaller system volumes and weights [3,4,5]. Therefore, for noise control in the cabin of turboprop aircraft, the ANC method is a superior choice.

As soon as the ANC method was proposed, it was applied to the cabin of turboprop aircraft. Nelson and Elliott from the University of Southampton in the UK conducted ANC flight experiments on the cabin of the BAE748 twin propeller aircraft in the early 1990s. The experiment used 32 error microphones to collect sound signals, and 16 speakers were employed as secondary sound sources to control the noise generated by the turboprop. The experiment achieved good results: the cabin noise was measured at the BPF of the turboprop at 88 Hz and its two harmonic frequencies at 176 Hz and 264 Hz being reduced by 13 dB, 9 dB, and 6 dB, respectively [6, 7]. On this basis, ANC was soon applied to turboprop aircrafts, such as Dornier 328, ATR42/47, A400M, Q4000, etc., some of which are still in service today [8]. However, decades later, the commercial application of ANC technology to aircraft has not expanded, which is mainly due to the fact that in order to effectively reduce noise in the cabin of airplanes with large space, it is necessary to expand the scale of the ANC system, and the computational complexity of the system increases drastically, which leads to difficulties in the implementation of ANC algorithms.

To alleviate the computational complexity, numerous algorithms have been proposed to reduce the computations involved in the adaptation process [9,10,11,12,13,14,15]. The block FxLMS algorithm reduces the update frequency of filter weight coefficients [16,17,18,19], while the frequency-domain FxLMS algorithm uses fast Fourier transform (FFT) to convert the convolution operation in the time domain into the multiplication operation in the frequency domain [20, 21]. Both methods can effectively reduce the amount of calculation, but the introduction of latency deteriorates the performance of ANC system. The sign-FxLMS algorithm reduces multiplications in the weight update equation by replacing the filtered reference value with its sign, but this improvement comes at the cost of slower convergence and compromised noise reduction performance [22]. The block coordinate descent MCFxLMS algorithm takes each control filter as a block coordinate group to update alternatively during the control progress, resulting in a substantial reduction in computational load but poor convergence performance [23]. The partial-update FxLMS algorithm (PUFxLMS) updates only a portion of the filter weight coefficients within one iteration cycle and it also suffers from slow convergence [24, 25].

These algorithms demonstrate various trade-offs between computational complexity and noise control performance. To strike a balance, this paper proposes the Variable-P-Sequential-Partial-Update FxLMS (VP-SPUFxLMS) algorithm, which aims to update more control filter weight coefficients during the early stages of system operation and fewer weights as the system converges. By dynamically adjusting the update strategy according to the state of the system, the VP-SPUFxLMS algorithm achieves a favorable trade-off between computational complexity and noise control performance.

In addition, accurate modeling of the secondary path is crucial for the implementation of the FxLMS algorithm and its variations, as they rely on the estimation of the secondary path to facilitate the updating of adaptive noise control filters [26, 27]. Typically, a secondary path includes a sequence of components, such as a DAC (digital-to-analog converter), reconstruction (low pass) filter, power amplifier, loudspeaker, acoustic path, error sensor, preamplifier, anti-aliasing (low pass) filter, and an ADC (analog-to-digital converter) [28]. In practical ANC implementations, the secondary path is time varying, necessitating online modeling to ensure the performance of ANC systems based on FxLMS-type algorithms.

Eriksson [29] proposed the OSPM method in 1989, where he used additional random white noise as the modeling signal to model the secondary path online. This method has a drawback where the secondary modeling signal and the control signal can interfere with each other, leading to potential system instability, and the algorithm may diverge in severe cases. To address the limitation, Ming et al. [30, 31] proposed a cross-update secondary channel modeling method using an additional filter, effectively eliminating interactions between the noise active control and the secondary path modeling sessions. Akhtar [32, 33] introduced the variable step size LMS algorithm and proposed a method for continuous control of additional random white noise power, which serves to mitigate the effect of the secondary modeling signal on the noise active control session. Taking advantage of fractional signal processing, Aslam et al. [34] developed a new adaptive procedure using a multidirectional step size strategy in fractional LMS algorithm and applied it to weight adaptation of modeling filters, which demonstrates distinct advantages in terms of model accuracy and convergence rate. Ma et al. [35] used a decoupling filter consisting of multiple bandpass filters to separate the broadband noise component from the narrowband noise component for narrowband ANC. The remaining sinusoidal noise from the linear prediction filter output is used to update the controller and scale the auxiliary white Gaussian noise, while the linear prediction filter error signal is used as the desired signal for the OSPM subsystem. This approach effectively minimizes the coupling between the controller and the OSPM subsystem.

In fact, the current practical application of ANC systems rarely employs online modeling method. There are several challenges when applying the online modeling method to MCANC systems, including the coupling between the OSPM filters and the control filters, interchannel coupling effect, and the introduction of enormous computational complexity. This paper introduces a method that alternately updates the secondary paths corresponding to each group of secondary sources, effectively addressing these issues. Table 1 provides the abbreviations used in this paper along with their counterparts.

Table 1 Abbreviations used in this paper

The sections are organized as follows: Section 2 describes the VP-SPUFxLMS algorithm. The proposed online secondary path modeling method is presented in Sect. 3. The computational complexity analysis is given in Sect. 4. Sections 5 and 6 exhibit the simulation and real-time experiment results of the proposed method, respectively. Finally, Sect. 7 gives the concluding remarks.

2 Variable-P-Sequential-Partial-Update FxLMS (VP-SPUFxLMS) Algorithm

It is assumed that the MCANC system consists of I reference microphones, J secondary sources, and K error microphones, as shown in Fig. 1. There is a primary path between each reference microphone and each error microphone, resulting in a total of IK secondary paths, where \({P}_{ik}\) denotes the primary path between the ith reference microphone and the kth error microphone. Correspondingly, there is also a secondary path between each secondary source and each error microphone, resulting in a total of JK secondary paths. The secondary path between the jth secondary source and the kth error microphone is denoted as \({{\varvec{S}}}_{jk}(n)\), and \({\widehat{{\varvec{S}}}}_{jk}(n)\) represents the secondary path modeling estimation of \({{\varvec{S}}}_{jk}(n)\), where \(n\) represents the time.

Fig. 1
figure 1

Diagram of MCANC system

The ith reference signal vector is denoted by \({{\varvec{x}}}_{i}\left(n\right)={[{x}_{i}\left(n\right) {x}_{i}\left(n-1\right) \cdots { x}_{i}\left(n-L+1\right)]}^{T}\), and \({{\varvec{W}}}_{ij}\left(n\right)={[{w}_{ij1}\left(n\right) {w}_{ij2}\left(n\right) \cdots { w}_{ijL}\left(n\right)]}^{T}\) represents the adaptive filter weight vector corresponding to the ith reference signal and the jth speaker with the length of L, where T is the transpose operation. The cost function of the MCFxLMS algorithm is the sum of the mean squares of the K error signals, as shown below

$$J\left(n\right)=\sum_{k=1}^{K}E\left[{e}_{k}^{2}\left(n\right)\right]$$
(1)

Actually, it is impossible to record the error signal data at each moment, so the objective function is usually replaced by the sum of the squares of the instantaneous errors [36]:

$$J\left(n\right)=\sum_{k=1}^{K}{e}_{k}^{2}(n)$$
(2)

where \({e}_{k}\left(n\right)\) represents the error signal captured by the kth error microphone, which can be expressed as:

$${e}_{k}\left(n\right)={d}_{k}\left(n\right)-\sum_{j=1}^{J}{{\varvec{y}}}_{j}\left(n\right)*{{\varvec{S}}}_{jk}(n)$$
(3)

where * is the linear convolution operator. \({{\varvec{y}}}_{j}\left(n\right)={[{y}_{j}\left(n\right) {y}_{j}\left(n-1\right) \cdots { y}_{j}\left(n-M+1\right)]}^{T}\) indicates the output signal of the jth secondary source with the length of M, which can be expressed as:

$${{\varvec{y}}}_{j}\left(n\right)=\sum_{i=1}^{I}{{\varvec{W}}}_{ij}^{T}\left(n\right)\bullet {{\varvec{x}}}_{i}\left(n\right)$$
(4)

By substituting (3) and (4) into (1), the gradient of (1) in the terms of \({{\varvec{W}}}_{ij}\left(n\right)\) can be derived as:

$${\nabla }_{ij}J\left(n\right)=-2\sum_{k=1}^{K}{e}_{k}\left(n\right)\bullet {[{\varvec{x}}}_{i}\left(n\right)*{{\varvec{S}}}_{jk}(n)]$$
(5)

The adaptive filter weight coefficients get updated by LMS algorithm as

$${{\varvec{W}}}_{ij}\left(n+1\right)={{\varvec{W}}}_{ij}\left(n\right)+2\mu \sum_{k=1}^{K}{e}_{k}\left(n\right)\bullet {[{\varvec{x}}}_{i}\left(n\right)*{{\varvec{S}}}_{jk}(n)]$$
(6)

where \(\mu \) stands for the step size. Since the secondary path is unknown, its modeling estimation result \({\widehat{{\varvec{S}}}}_{jk}(n)\) is used as a substitute in the calculations. Note that the filtered-x signal is \({{\varvec{x}}}_{ijk}^{\mathrm{^{\prime}}}\left(n\right)={{\varvec{x}}}_{i}\left(n\right)*{\widehat{{\varvec{S}}}}_{jk}(n)\), then Eq. (6) can be rewritten as:

$${{\varvec{W}}}_{ij}\left(n+1\right)={{\varvec{W}}}_{ij}\left(n\right)+2\mu \sum_{k=1}^{K}{e}_{k}\left(n\right)\bullet {{\varvec{x}}}_{ijk}^{\mathrm{^{\prime}}}(n)$$
(7)

When the number of channels and the length of the control filters increase, the computational burden of the MCFxLMS algorithm increases rapidly, which poses a significant challenge to the real-time implementation of the algorithm. To tackle this challenge, the SPU-MCFxLMS algorithm is introduced, based on the core concept of assuming gradual changes in the statistical characteristics of the reference signal. It divides the weight coefficients of the control filter into P equal parts and updates the corresponding subset of coefficients at each sampling cycle while leaving the remaining coefficients unchanged. As the number of iterations increases, all weight coefficients are updated after P iterations. The weight coefficients update equation of the algorithm can be expressed as:

$$ \begin{aligned} &W_{ijl} \left( {n + 1} \right) \\ &= \left\{ {\begin{array}{*{20}l} {W_{ijl} \left( n \right) + 2\mu \mathop \sum \limits_{k = 1}^{K} e_{k} \left( n \right) \cdot x_{ijk}{\prime} \left( {n - l} \right), } \hfill & { \left( {n - l} \right)\% P = 0 } \hfill \\ {W_{ijl} \left( n \right), } \hfill & {\text{ otherwise}} \hfill \\ \end{array} } \right. \end{aligned}$$
(8)

where % represents the remainder operation, and l represents the lth element in the control filter weight coefficient array. From (8), it can be observed that the algorithm does not need to calculate the filtered-x signal at each iteration, but only needs to recalculate the new filtered-x signal every P iterations. It is worth noting that this algorithm not only reduces the computational complexity of the weight coefficient updating process, but also reduces the computational complexity of the filtered-x calculation, since it is no longer necessary to compute the corresponding filtered-x values for the weight coefficients that have not been updated. As a result, the SPU-MCFxLMS algorithm provides a significant reduction in computation.

However, compared to the MCFxLMS algorithm, the SPU-MCFxLMS algorithm requires more time to complete a full update of all weight coefficients, and the weight coefficients are not entirely up-to-date at each moment, which results in slower convergence speed and a delayed response to external changes [24]. Specifically, the larger the P-value, the fewer the weight coefficients updated in each iteration, the slower the convergence speed; the smaller the P-value, the more the weight coefficients updated in each iteration, the faster the convergence speed. To solve this problem, the SPU-MCFxLMS algorithm is improved by updating more weight coefficients, or even all of them, at the beginning of convergence and gradually updating fewer weight coefficients as the algorithm stabilizes. The value of P, which determines how many weight coefficients are updated, is calculated as follows:

$$P\left(n\right)={\text{floor}}[\rho \left(n\right){P}_{{\text{min}}}+\left(1-\rho \left(n\right)\right){P}_{{\text{max}}}]$$
(9)

where \({\text{floor}}\) denotes the floor operation, \({P}_{{\text{min}}}\) and \({P}_{{\text{max}}}\) can be determined by experiments, as long as their values do not cause the system to diverge, and \(\rho \left(n\right)\) is determined by the power of the error signal \({e}_{k}(n)\) and the output signal \({y}_{j}(n)\) as follows:

$$\rho \left(n\right)={P}_{e}\left(n\right)/({P}_{e}\left(n\right)+{P}_{y}\left(n\right))$$
(10)

It is evident that the range of \(\rho \left(n\right)\) is from 0 to 1. The calculation of \({P}_{e}\left(n\right)\) and \({P}_{y}\left(n\right)\) is smoothed to mitigate the interference of external noise, particularly impulse noise.

$${P}_{e}\left(n\right)=\lambda {P}_{e}\left(n-1\right)+(1-\lambda )\sum_{k=1}^{K}{e}_{k}^{2}\left(n\right)$$
(11)
$${P}_{y}\left(n\right)=\lambda {P}_{y}\left(n-1\right)+(1-\lambda )\sum_{j=1}^{J}{y}_{j}^{2}(n)$$
(12)

where \(\lambda \) is the forgetting factor and typically close to 1, which determines the extent to which the previous power value is considered in the current increment.

Actually, \(\rho \left(n\right)\) can be approximated as the ratio of the power of error signal power \({e}_{k}(n)\) to the power of primary noise signal \({d}_{k}(n)\), since the power of \({d}_{k}(n)\) is nearly equal to the sum of the power of \({e}_{k}(n)\) and \({y}_{k}(n)\). Therefore, the adjustment of P can be seen as being based on the amount of reduction in noise power. When the system converges, \(\rho \left(n\right)\) is close to 0 and P is close to its maximum value, while when the residual noise is high, \(\rho \left(n\right)\) is close to 1 and P is close to its minimum value. By dynamically adjusting the value of P, the proposed algorithm not only enhances convergence performance but also ensures a significant reduction in computational complexity.

3 Alternative Online Secondary Path Modeling (AOSPM) Method

The offline modeling approach estimates the secondary paths before the system starts, and once the results are imported into the control system, the model of the secondary paths will remain constant throughout the control process. However, when there are modeling errors, the FxLMS algorithm converges to a biased solution, which is inevitable in practical applications because the secondary paths are subject to constant changes that can be attributed to factors such as component aging, thermal variations, and environmental modifications [37].

The presence of modeling errors will lead to inaccurate updates of the control filter weight coefficients, thereby affecting the performance of the ANC system and leading to control failure in more severe cases [26]. OSPM is preferred to solve the problem. The fundamental method for ANC systems with OSPM was proposed by Eriksson et al. [29], as shown in Fig. 2.

Fig. 2
figure 2

Block diagram of Eriksson’s method

Eriksson introduces auxiliary white noise and another adaptive filter for secondary path modeling. The error signal \(e(n)\) comprises auxiliary noise filtered by the secondary path and the residual noise of the ANC system, where the auxiliary noise cannot be canceled out. To enhance the modeling accuracy, it is necessary to increase the energy of white noise. However, the error signal used to update the control filter coefficients contains this component, resulting in a deviation in the direction of coefficient updating and subsequently leading to a decline in control performance. In addition, when the OSPM is extended to MCANC, there is not only coupling between the OSPM filters and the control filters but also coupling between the different secondary paths. Actually, this cross-coupling effect occurs for both online and offline modeling. As an example, a 1 × 2 × 2 ANC system is used to briefly illustrate the cause of the problem, as shown in Fig. 3.

Fig. 3
figure 3

Secondary path modeling for a 1 × 2 × 2 ANC system

Define the error component attributed to the original noise as

$${e}_{p1}\left(n\right)={d}_{1}\left(n\right)-{{\varvec{y}}}_{1}\left(n\right)*{{\varvec{S}}}_{11}\left(n\right)-{{\varvec{y}}}_{2}\left(n\right)*{{\varvec{S}}}_{21}\left(n\right)$$
(13)

The control error and the modeling error can be expressed as follows:

$${e}_{1}\left(n\right)={e}_{p1}\left(n\right)+{\varvec{v}}\left(n\right)*{{\varvec{S}}}_{11}\left(n\right)+{\varvec{v}}(n)*{{\varvec{S}}}_{21}\left(n\right)$$
(14)
$${f}_{1}\left(n\right)={e}_{p1}\left(n\right)+{\varvec{v}}\left(n\right)*({{\varvec{S}}}_{11}\left(n\right)-{\widehat{{\varvec{S}}}}_{11}({\text{n}}))+{\varvec{v}}(n)*{({\varvec{S}}}_{21}\left(n\right)-{\widehat{{\varvec{S}}}}_{21}({\text{n}}))$$
(15)

where v(n) represents zero-mean white noise that is uncorrelated with the reference signal x(n). The coefficients of the modeling filter are updated by the LMS algorithm, which can be expressed as follows:

$$\begin{aligned} \hat{\user2{S}}_{11} \left( {{\text{n}} + 1} \right) &= \hat{\user2{S}}_{11} \left( {\text{n}} \right) + \mu_{s} {\varvec{v}}\left( n \right)f_{1} \left( n \right) = \hat{\user2{S}}_{11} \left( {\text{n}} \right) + \mu_{s} {\varvec{v}}\left( n \right)\\ & \quad \times \left[ {e_{p1} \left( n \right) + {\varvec{v}}\left( n \right){*}\left( {{\varvec{S}}_{11} \left( n \right) - \hat{\user2{S}}_{11} \left( {\text{n}} \right)} \right) }\right. \\ & \quad \left.{+ {\varvec{v}}\left( n \right){*}\left( {{\varvec{S}}_{21} \left( n \right) - \hat{\user2{S}}_{21} \left( {\text{n}} \right)} \right)} \right] \end{aligned}$$
(16)

Ideally, the LMS algorithm can accurately estimate the secondary paths \({{\varvec{S}}}_{11}\left(n\right)\) and \({{\varvec{S}}}_{21}\left(n\right)\) that can be represented as

$${{\varvec{S}}}_{11}\left(n\right)={\widehat{{\varvec{S}}}}_{11}\left({\text{n}}\right)+{\mu }_{s} {\varvec{v}}\left(n\right)\left[{\varvec{v}}\left(n\right)*\left({{\varvec{S}}}_{11}\left(n\right)-{\widehat{{\varvec{S}}}}_{11}({\text{n}})\right)\right]$$
(17)
$${{\varvec{S}}}_{21}\left(n\right)={\widehat{{\varvec{S}}}}_{21}\left({\text{n}}\right)+{\mu }_{s} {\varvec{v}}\left(n\right)\left[{\varvec{v}}\left(n\right)*\left({{\varvec{S}}}_{21}\left(n\right)-{\widehat{{\varvec{S}}}}_{21}({\text{n}})\right)\right]$$
(18)

By substituting (17) and (18) into (16), \({\widehat{{\varvec{S}}}}_{11}\left({\text{n}}+1\right)\) can be rewritten as:

$${\widehat{{\varvec{S}}}}_{11}\left({\text{n}}+1\right)={{\varvec{S}}}_{11}\left(n\right)+\left({{\varvec{S}}}_{21}\left(n\right)-{\widehat{{\varvec{S}}}}_{21}\left({\text{n}}\right)\right)+{\mu }_{s} {\varvec{v}}\left(n\right){e}_{p1}\left(n\right)$$
(19)

Since (n) is uncorrelated with (n), and \({e}_{p1}\left(n\right)\) is also uncorrelated with v(n), the LMS solution will not be influenced by \({e}_{p1}\left(n\right)\). In Eq. (19), \({\widehat{{\varvec{S}}}}_{11}\left({\text{n}}\right)\) will converge to \({{\varvec{S}}}_{11}\left(n\right)+\left({({\varvec{S}}}_{21}\left(n\right)-{\widehat{{\varvec{S}}}}_{21}\left({\text{n}}\right)\right)\) instead of the expected value \({{\varvec{S}}}_{11}\left(n\right)\). When the number of channels increases, this coupling effect will be more serious, and the accuracy of modeling will further decrease.

Furthermore, the additional computational complexity associated with OSPM is often considered unacceptable. The number of secondary paths is determined by both the number of secondary sources and the number of error signals. As the scale of MCANC systems expands from 1 × 2 × 2 to 1 × 4 × 4, the number of secondary paths increases from 4 to 16, indicating that online modeling necessitates 16 adaptive filters, while the number of control filters is only 4. In practice, the length of the secondary path model is often longer than that of the control filter, resulting in the computational burden of online modeling frequently exceeding that of the active control part, which severely increases the overall computational load of the MCANC system.

To address these problems, this paper proposes the AOSPM method, which employs the key strategy of grouping several secondary sources and alternately updating the secondary path models corresponding to each group online. Figure 4 provides an illustration of the modeling process.

Fig. 4
figure 4

The proposed secondary path modeling strategy (A group contains a secondary source)

The specific process of this method is as follows: Firstly, the system is turned on, and the first group of secondary sources emits white noise to model its corresponding secondary paths. After a certain duration, the first group ceases emitting white noise, and the next group emits white noise to model the corresponding secondary paths, and then, the process is repeated. It can be summarized as follows:

$$ \hat{\user2{S}}_{jk} \left( {n + 1} \right) = \left\{ {\begin{array}{*{20}l} {\hat{\user2{S}}_{jk} \left( n \right) + \mu_{s} v\left( n \right)f_{k} \left( n \right), } \hfill & {j \in {\text{group}}\left( n \right)} \hfill \\ {\hat{\user2{S}}_{jk} \left( n \right), } \hfill & {{\text{others}}} \hfill \\ \end{array} } \right. $$
(20)

where \(group(n)\) represents the group of secondary sources that should emit white noise to model the corresponding secondary paths at time \(n\). The duration of modeling for each group can be determined based on preliminary experiments. The principle of grouping secondary sources is to minimize the mutual interference of white noise emitted by the secondary sources in the group at the error sensors, which is mainly achieved by selecting secondary sources that are positioned at a considerable distance from each other. This method attenuates or even directly eliminates (when each group contains only one secondary source) the mutual coupling between secondary paths within the group and greatly reduces the computational complexity.

4 Computational Complexity Analysis

The proposed algorithm and secondary path modeling method, along with a detailed analysis of their computational complexity per iteration, are summarized in Table 2. Assuming that the MCANC system has I reference sensors, J secondary sources, and K error sensors, the length of the control filters is L, the length of the secondary path models is M, the partial update coefficient is P, and the secondary sources are divided into G groups. The calculations involving '%' and '\(\in \)' can be accomplished using conditional statements without additional calculation, and the computational complexity of division and conditional statements is not considered because they account for a small percentage.

Table 2 Algorithm description and detailed computational complexity analysis of the proposed method, MCFxLMS and MCFxLMS with OSPM (Eriksson)

In order to intuitively compare the computational complexity of these methods, Fig. 5 shows the computational complexity of the MCANC system with a scale of 1 × 16 × 16, where I = 1, J = 16, K = 16, L = 128, M = 128, P = 4, G = 8.

Fig. 5
figure 5

The computational complexity of the MCANC system with a scale of 1 × 16 × 16, where I = 1, J = 16, K = 16, L = 128, M = 128, P = 4, G = 8

It is evident that the proposed method, which directly reduces the computational complexity of the key steps: calculating \({{\varvec{x}}}_{ijk}^{\mathrm{^{\prime}}}\), updating \({W}_{ijl}\), calculating \({v}_{jk}^{\mathrm{^{\prime}}}\), and updating \({\widehat{{\varvec{S}}}}_{jk}\), greatly reduces the computational complexity of the system by nearly several times. In addition, the sustained large value of P after system stabilization contributes to an even lower computational load, which is advantageous for maintaining low power consumption during the long-term operation of the ANC system. This prevents excessive heat generation in the hardware, which could result in performance degradation and further cause the real-time requirements of the algorithm to be unsatisfied.

5 Simulation Results

In this section, simulations were conducted to evaluate the performance of the proposed method. The scale of the simulated MCANC system is 1 × 2 × 2, and its two primary paths are shown in Fig. 6. The sampling frequency for all simulations is 5 kHz and the primary and secondary paths are the same.

Fig. 6
figure 6

Primary paths

A certain type of turboprop aircraft adopts a dual turboprop engine, and its noise energy is primarily concentrated in the blade passing frequency of 108 Hz and its first- and second-order harmonic components of 216 Hz and 324 Hz. As long as these frequencies of noise can be controlled, the overall noise level can be significantly reduced. Therefore, the primary noise for simulation consists mainly of the above three specified frequencies with a certain amount of white noise superimposed to approximate reality, the spectrum of which can be seen in Fig. 11.

Three sets of simulations were used to compare and evaluate the performance of the VP-SPUFxLMS algorithm and the AOSPM method. In Case 1, the convergence speed between the VP-SPUFxLMS algorithm and the MCFxLMS algorithm was compared, and the ability of the adaptation strategy of P to handle sudden changes in noise was also verified; In Case 2, the AOSPM method was compared with the OSPM (Eriksson) method; in Case 3, the reduction in sound pressure level after convergence of the MCFxLMS algorithm, the MCFxLMS algorithm with OSPM (Eriksson) and the VP-SPUFxLMS algorithm with AOSPM was analyzed.

5.1 Case 1

In this case, it is assumed that all the estimates of the secondary paths are accurate. The step size \(\mu \) is set to 0.0001; \({P}_{{\text{min}}}\) and \({P}_{{\text{max}}}\) are set to 2 and 16, respectively. The forgetting factor \(\lambda \) is selected as 0.997. Figure 7 shows the time-domain waveforms of the VP-SPUFxLMS algorithm and the MCFxLMS algorithm running for 2 s.

Fig. 7
figure 7

The waveforms of the MCFxLMS algorithm and the VP-SPUMCFxLMS algorithm running for 2 s

From Fig. 7a, b, it can be observed that the VP-SPUFxLMS algorithm has a slightly slower convergence speed compared to the MCFxLMS algorithm, but both algorithms can reach a stable state within two seconds. The computational complexity of the VP-SPUFxLMS algorithm can be roughly estimated by observing the value of P, and the variation of P is depicted in Fig. 8a.

Fig. 8
figure 8

The variation of P over time

In Fig. 8b, the variation of P is shown when a sudden external disturbance occurs which is simulated by adding a square wave with an amplitude of + 5 to the error signals from iterations 5001 to 5100. It can be seen that P is not significantly affected by this disturbance; its value briefly decreases from 14 to 11 and then increases back to 14 immediately. Therefore, the P adaptation strategy of the VP-SPUFxLMS algorithm is effective in resisting strong external noise interference, ensuring low computational load during system convergence, and enabling sustained operation with low power consumption.

5.2 Case 2

In this case, the online modeling performance of AOSPM and OSPM is compared. The initial values of the secondary path models are set to 0, and it is assumed that the secondary paths undergo changes after 20,0000 iterations. The step sizes \(\mu \) and \({\mu }_{s}\) are set to 0.00001 and 0.01, respectively. The white noise with a variance of 0.005 is used for secondary path modeling, and the switching time of AOSPM is 0.1 s. The relative modeling error is defined as (21), its variation curve is shown in Fig. 9, and the convergence of two error signals can be seen in Fig. 10.

Fig. 9
figure 9

Modeling error. Sij represents the secondary path from speaker i to error sensor j

Fig. 10
figure 10

The waveform of the OSPM and AOSPM running for 40 s

$$\Delta S=10{{\text{log}}}_{10}\left\{\frac{\sum_{i=1}^{M}{\left[{s}_{i}\left(n\right)-\widehat{{s}_{i}}\left(n\right)\right]}^{2}}{\sum_{i=1}^{M}{\left[{s}_{i}\left(n\right)\right]}^{2}}\right\}$$
(21)

From the above results, it is evident that both online modeling strategies successfully completed the modeling of secondary paths and effectively track the changes in secondary paths, and AOSPM exhibited a slightly slower convergence speed compared to OSPM. However, in practice, AOSPM benefits from not considering the coupling issue, which allows it to utilize white noise with a higher energy for modeling, potentially enhancing its convergence speed.

5.3 Case 3

In this case, the steady-state performance of the MCFxLMS algorithm, the MCFxLMS algorithm with OSPM, and the proposed method are compared. It is assumed that the MCFxLMS algorithm has accurately estimated secondary path models, while the other two methods start modeling the secondary paths from 0. The power spectra of the two residual noises for the three methods are shown in Fig. 11.

Fig. 11
figure 11

Power spectrums of the two error signals

It can be seen that all three algorithms successfully attenuate the primary noise and have similar noise power spectra. The MCFxLMS algorithm shows slightly better performance, primarily due to its assumption of an accurately estimated secondary path model, which is impossible in practice. In contrast, the other two methods introduce additional white noise, which affects the noise power spectrum.

In summary, with greatly reduced computational complexity, the proposed method offers a convergence speed and steady-state performance that is close to the MCFxLMS algorithm, while it also demonstrates comparable capability to the OSPM method in terms of secondary path modeling.

6 Experimental Results

To further validate the performance of the proposed method in practical applications, a 1 × 4 × 4 MCANC system was constructed based on the NI-PXI platform, as shown in Fig. 12. The controller is PXIe-7862, which connects 16 analog input channels and 8 analog output channels directly to the Kintex-7325 T FPGA, each with a dedicated analog-to-digital converter (ADC) for independent timing and triggering. All algorithms have been coded by the FPGA module in the LabVIEW 2020 software.

Fig. 12
figure 12

Experimental platform

The step sizes \(\mu \) and \({\mu }_{s}\) are set to 0.00001 and 0.01, respectively, \({P}_{{\text{min}}}\) and \({P}_{{\text{max}}}\) are set to 2 and 16, respectively, the forgetting factor \(\lambda \) is selected as 0.997, and the sampling frequency is 5 kHz. The length of control filters and the secondary path modeling filters are both 128 taps. The primary noise is generated as a combination of multiple frequency components, including the frequencies of 108 Hz, 216 Hz, and 324 Hz, which is consistent with the simulation. Only model the secondary paths corresponding to one secondary source at a time, and the switching time of AOSPM is 2 s. The time-domain waveforms of the MCANC system based on the MCFxLMS, MCFxLMS with OSPM, and VP-SPUFxLMS with AOSPM in a steady state are shown in Fig. 13.

Fig. 13
figure 13

The waveforms of four error signals, when MCANC, based on the MCFxLMS, MCFxLMS with OSPM, and VP-SPUMCFxLMS with AOSPM is in steady-state

In the experiment, it was found that OSPM tends to diverge when the energy of white noise is low, necessitating an increase in the white noise energy, which will lead to a deterioration of the overall noise reduction performance. On the other hand, AOSPM, which emits white noise from only one secondary sound source at a time, had a relatively smaller impact on the final noise reduction performance. From Fig. 13, it can be observed that all three methods significantly reduce the amplitude of the waveforms compared to the uncontrolled waveforms. It is noteworthy that in the OSPM, the waveforms tend to be rougher with higher amplitude, while in the AOSPM this phenomenon is only more pronounced in the waveform of the error noise 4, which is closest to the secondary source emitting white noise. The steady-state performance of the three methods also demonstrates similar characteristics, as illustrated in Table 3 and Fig. 14. The noise reduction performance of MCFxLMS with OSPM is the poorest, with an average noise reduction level of 9.06 dB at the four positions. On the other hand, VP-SPUFxLMS with AOSPM and MCFxLMS show similar performance, with average noise reduction levels of 17.58 dB and 15.075 dB, respectively. Among the four positions, AOSPM only exhibits slightly inferior performance at position 4, where the fourth speaker emits white noise, while achieving almost the same level of noise reduction levels at the other positions.

Table 3 Total sound pressure-level comparison
Fig. 14
figure 14

The 1/3 octave power spectrum the ANC control results, when ANC, based on the MCFxLMS, MCFxLMS with OSPM, and VP-SPUMCFxLMS with AOSPM, is turned off and on

7 Conclusion

This paper proposed the VP-SPUFxLMS algorithm, which significantly reduces the computational complexity of the MCANC system while maintaining similar noise reduction performance to the traditional MCFxLMS algorithm. Additionally, the AOSPM method was introduced to overcome the challenges encountered in applying online modeling in MCANC systems. This method avoids excessive computational burden, mitigates the coupling between secondary paths modeling, and reduces the influence of modeling white noise on residual noise. The simulation results validated the performance of the proposed method. Finally, a 1 × 4 × 4 MCANC system was built, and the results showed excellent performance with an average total sound pressure level reduction of 15 dB at the four test positions, which further demonstrates the outstanding potential for the proposed method in engineering applications.