An enhanced multiple-input multiple-output (MIMO) filtered-x least mean square (FXLMS) algorithm using improved virtual secondary path is proposed as the basis for an active noise control (ANC) system for treating vehicle powertrain noise. This new algorithm is developed to overcome the limitation caused by the frequency-dependent property of the standard FXLMS algorithm and to reduce the variation of convergence speed inherent in multiple-channel cases, in order to improve the overall performance of the control system. In this study, the convergence property of the proposed algorithm is analyzed in the frequency domain in order to yield a better understanding of the physical meaning of the virtual secondary path. In practice, because of the arrangement and sensitivities of the actuators (speakers), transducers (microphones), and physical environment, the magnitude response of the main secondary paths can be very different from each other. This difference will cause difficulty in the overall convergence of the algorithm, which will result in minimal attenuation at some of the channels. The proposed channel equalized (CE) virtual secondary path algorithm is designed to tackle this difficulty by equalizing the mean magnitude level of the main secondary paths and by adjusting other secondary paths correspondingly to keep the coupling effects among the control channels unchanged. The performance of the proposed algorithm is validated by analyzing a two-input two-output active powertrain noise control system.

## Introduction

Vehicle cabin noise is caused by several sources, including powertrain, road, wind, and a variety of electromechanical accessories. The powertrain noise is typically most dominant when the engine is idling or varying in speed. These noise components, especially the powertrain one inside the vehicle, can be an annoyance to the passengers and also play a major role in the perceived quality of the vehicle design. With increasing passengers' demands for better noise, vibration, and harshness performance, the powertrain response must be treated effectively. One of the countermeasures to tackle powertrain noise is the deployment of an active noise control system [1–12].

There are two primary characteristics of vehicle powertrain noise that are critical to the current analysis: (i) Powertrain noise is typically dominated by a large number of harmonics; and (ii) the amplitude and frequency of each harmonic are functionally related to the rotational speed of the engine. Therefore, the frequency range of interest can span a broad range. The most common active noise control (ANC) system for harmonic noise is based on filtered-x least mean square (FXLMS) algorithm [1–12]. It has been found that the properties of the convergence speed of the FXLMS algorithm are affected by the eigenvalue spread of the autocorrelation matrix of the filtered reference signals [13,14]. In general, the eigenvalues of the autocorrelation matrix of the filtered reference signals are varying throughout the entire frequency range, which leads to frequency-dependent behavior of the convergence speed. Hence, each frequency will have its own optimal step size (convergence factor). To maintain the stability, the step size of the control algorithm has to be chosen based on the frequency that has the smallest optimal step size. Otherwise, the system will become unstable at that frequency. Also, this tends to slow down the convergence speed for other frequencies and degrade the overall performance of the active noise control system.

Several variations of the FXLMS algorithm have been developed to overcome the performance degradation. A preconditioned least mean square (LMS) algorithm was developed by Elliott et al. [14–16], which adds an additional filter to flatten the magnitude response of the secondary path. To improve the convergence speed of the standard FXLMS algorithm, Chen et al. [17–21] proposed that the determinant of the autocorrelation matrix should be as flat as possible. They also developed three approaches to achieve that, including adjusting the positions of the secondary sources and the error sensors, increasing the number of secondary sources, and adding an inverse filter of the secondary path. In addition, Kuo et al. [22] suggested that the amplitude of the reference signals should be chosen to be inversely proportional to the magnitude response of the secondary path at the corresponding frequency. While these approaches work, they either increase the complexity of the control algorithm or are only effective for specific applications. Recently, a new approach called the eigenvalue equalization filtered-x least mean square (EE-FXLMS) algorithm has been developed by Sommerfeldt et al. [23–26]. The technique is designed to overcome the frequency-dependent performance problem. However, this method may experience difficulties when applied to a multiple-channel active noise control system, especially when there are imbalances in the secondary path responses, which will be discussed later in the study.

In this study, the convergence property of the multiple-input multiple-output (MIMO) FXLMS algorithm for a multichannel ANC system is analyzed in the frequency domain. This allows the convergence characteristic to be evaluated in each frequency component, which enables a better understanding of how the convergence property is affected by the step size, power spectra of the filtered reference signal, and multiple secondary paths. Furthermore, based on frequency analysis, the current study proposes an improved virtual secondary path algorithm to normalize the convergence speed among the control channels such that the overall performance of the ANC system can be improved. Finally, the proposed approach is verified numerically by employing a 2 × 2 (two error sensors and two secondary sources) ANC system to control actual vehicle powertrain noise.

This paper is organized as follows. First, the MIMO FXLMS algorithm is analyzed in the frequency domain. Section 2 also presents the concept of a virtual secondary path. Second, the virtual secondary path algorithm with channel equalization for application to a multichannel ANC control system is proposed. Then in the subsequent section, the proposed new implementation is applied numerically to control the vehicle powertrain noise.

## Convergence Analysis

A flow chart of the proposed MIMO ANC system for treating vehicle powertrain noise is illustrated in Fig. 1. For this setup, a single reference signal $x(n)$ is used for all the $M$ adaptive filters. The frequencies of the reference signal can be calculated by using the engine crankshaft speed data estimated from the measured raw tachometer signal. Then, assuming $x(n)$ is a superposition of a series of pure sine waves, it can be expressed as

where $ai$ is the amplitude of the *i*th engine order, $fi$ is the frequency of the *i*th engine order, and $fs$ is the sampling rate. With the information contained in the above equation, it is then possible to target the specific harmonics for attenuation.

*m*th secondary source to the

*k*th error sensor. In practice, $skm$ is unknown. However, it can be identified by injecting a small amount of white noise $v(n)$ through the control input speakers and measuring the responses at the error microphones. Then, the secondary paths are modeled by a series of

*I*-th order finite impulse response (FIR) filters, whose coefficients are updated using the LMS algorithm. This is an off-line system identification process due to the fact that the secondary path model should be identified prior to the beginning of the control effort. The estimated secondary path is denoted by $s\u2227km$. Thus, the filtered reference signal is calculated from $xkm'(n)=x(n)*s\u2227km$, where $*$ denotes the convolution process, and in vector form,

*m*th secondary source to the

*k*th error sensor. Equation (7) can be expanded as follows:

To achieve faster convergence, $\rho 3$ should be as small as possible. This implies that $|S\u2227H(\omega )S\u2227(\omega )|$ should be as flat as possible over the entire frequency range. By examining the eigenvalue equalization filtered-x least mean square (EE-FXLMS) algorithm [9–12], it is easily seen that the EE-FXLMS algorithm is a way to flatten the magnitude response of $S\u2227km(\omega )$ for every secondary path in the system by modifying the magnitude in the frequency domain. To maintain the stability, the phase is kept unchanged.

An example of an EE virtual secondary path is shown in Fig. 2. In this plot, the solid line is the estimated secondary path while the dotted line is the EE virtual secondary path. It is seen that the magnitude response is relatively flat over the entire frequency range after applying eigenvalue equalization.

## Channel Equalization

*M = K*. Thus, in the conventional FXLMS algorithm, the updating equation of the

*i*th adaptive filter can be written as

It is assumed that the estimated secondary path $S\u2227ii$ is the main path of the *i*th column of $S\u2227$ such that the main paths of each column vectors are the diagonal elements of the secondary path matrix $S\u2227$. The main path of the *i*th column is defined as the path from the *i*th control speaker, which generates the most dominant sound among all the error sensors, to the *i*th error sensor. In fact, the *i*th column of $S\u2227$ are the weights used to update the *i*th adaptive filter as described in Eq. (17). Hence, the main path $S\u2227ii$ is the largest weighting value for updating $wi$. Mathematically, the mean magnitude value of $S\u2227ii$ is larger than the mean magnitude value of $S\u2227j\u2260i,i$, where $j=1,2,\u2026,M$. Here, note that $S\u2227j\u2260i,i$ is the cross coupling term in the estimated secondary path for the *i*th channel. In practice, the magnitude of each main path is typically not identical to each other. Without losing generality, the mean magnitude value of $S\u2227ii$ is assumed larger than the mean magnitude value of $S\u2227$, expressed as $mean[S\u2227ii]>mean[S\u2227jj]$. The extreme case of this phenomenon is studied as follows. If $mean[S\u2227ii]>>mean[S\u2227jj]$, because the coupling secondary paths are even smaller than the main path, the adaptive filter $wj$ will converge much slower than the adaptive filter $wi$ when applying Eq. (17).

Again, $Se$ is the virtual secondary path. Here, the eigenvalue equalization technique is not used to modify the secondary path, but instead the proposed channel equalization technique is applied. More specifically, the virtual secondary path adopting channel equalization (CE) technique alone is called the channel-equalized virtual secondary path. In Eq. (19), $\alpha $ is a reference value that can be set to any desired value. Usually, $\alpha $ is set to unity value of 1 or the mean magnitude of the main secondary path that possesses the maximum mean magnitude among all main paths from columns 1 to $M$. Also, in the above equation, $mean[S\u2227ii]$ ($i=1,2,\u2026,M$) is the mean magnitude value of the secondary path $S\u2227ii$ in the frequency range of interest.

*i*th column of $S\u2227$. It is assumed that $S\u2227imain$ is the main path of the

*i*th column and $\alpha $ is a reference value. Then, the magnitude of the main path is equalized according to the reference value as

In this way, the mean magnitudes of the main secondary paths of the secondary path matrix are all equalized to the reference value $\alpha $. The mean magnitudes of other secondary paths in the column $i$ are adjusted correspondingly to keep the coupling effects unchanged.

Furthermore, the channel equalization technique can be combined with eigenvalue equalization technique to achieve better performance of MIMO ANC system in powertrain noise application. In this combined approach, $Se$ still represents the virtual secondary path, namely EE-CE virtual secondary path. The procedure is to equalize the magnitude among frequencies of each secondary path by the eigenvalue equalization technique and then equalize the mean magnitude among the control channels by the proposed channel equalization technique. Further demonstration is performed using a two-input, two-output (2I2O) ANC system as shown in Fig. 3. After applying the eigenvalue equalization, the virtual secondary path becomes

Consider the example of the experimentally obtained estimated secondary path transfer functions for the 2I2O ANC system, that are given by $S\u222711$, $S\u222712$, $S\u222721$, and $S\u222722$. The measured transfer functions from an actual test vehicle are shown in Fig. 4. The secondary path transfer functions are modeled by using an off-line system identification method. All four secondary path transfer functions have been modeled with 256-tap finite impulse response (FIR) filters. The application of the EE-CE virtual secondary path as dictated by Eqs. (22) and (23) yields four virtual secondary paths that are represented in Fig. 5. It is seen that the magnitude of $S11e$ is equal to the magnitude of $S22e$, and the ratios of $mean[S21e]/mean[S11e]$ and $mean[S12e]/mean[S22e]$ stay the same as the original ratios of $mean[S21]/mean[S11]$ and $mean[S12]/mean[S22]$ in the frequency range of interest from 50 Hz to 300 Hz.

## Numerical Simulation

The performance of the proposed active noise control system can be examined by performing a series of numerical simulations using experimental data for powertrain noise response. The simulation model is constructed using Matlab/Simulink [28]. The ANC system is designed to attenuate the powertrain noise around the driver's and passenger's head areas. Two error microphones are positioned at the ceiling of the passenger compartment directly above the driver's and passenger's head positions. Also, two loudspeakers are placed at the lower areas of left and right front doors. The test vehicle that has a V-6 engine is driven on asphalt road surface with a constant acceleration of 0.2 g (gravitational acceleration). The time duration for the entire acceleration operation is about 12 s, during which the engine changes from about 1000 rpm to 5500 rpm. A tachometer signal is recorded to generate the needed reference signal for the control system as discussed earlier in Sec. 2. The primary powertrain noises at two error microphones along with the tachometer signal were recorded by a computer through a dSPACE [29] system with a sampling frequency of 4096 Hz. The estimated secondary path transfer functions were measured experimentally by the off-line system identification method described in Sec. 2. Both the EE-FXLMS algorithm and the combined EE-CE FXLMS algorithm are applied. The adaptive filters have been implemented in the time domain with 256 coefficients. Note that the magnitudes of these transfer functions are shown in Figs. 4 and 5. For demonstration purposes, the aim of these simulations is to reduce the response of the 1.5th, second, and third engine order as much as possible. The engine order relates to multiples of engine crankshaft rotational frequency. For example, when the engine speed is 1800 rpm, the harmonic response of 45 Hz corresponds to the 1.5th engine order.

Figure 6 shows the simulation results for acoustic noise reduction at the third engine order, which is the primary firing order in this case. Here, we only show the control results of the third engine order for simplification. However, the performances of the 1.5th and second engine order responses are similar to the performance of the third engine order response. Figure 6(a) is the control result at the error microphone 1 (error microphone above the driver's head), and Fig. 6(b) is the control result at the error microphone 2 (error microphone above the passenger's head). The step size $\mu $ for each implementation is set to the largest value while still maintaining stability. The solid curves in Figs. 6(a) and 6(b) are the primary response of the powertrain noise at error microphones 1 and 2, respectively. The dashed curves are the sound pressure response after the control is activated using the EE virtual secondary path algorithm. The dotted curves show the control result of the implementation of the EE-CE virtual secondary path algorithm. It can be seen that the controlled response at error microphone 1 after applying the conventional EE virtual secondary path algorithm (dashed curve in Fig. 6(a)), does not show significant reduction at some engine speed. However, the reduction at error microphone 2 depicted by the comparison of the dashed and solid curves in Fig. 6(b) is more pronounced. Also, from the figures, it is obvious that the EE virtual secondary path algorithm yields an unbalanced noise reduction result between the two error microphones 1 and 2. This is because the magnitude of $S22$ is much higher than $S11$, and the primary noise response at microphone 2 is higher than the noise response at microphone 1. On the other hand, from the results represented by the dotted curve in Fig. 6, it can be seen that the EE-CE virtual secondary path algorithm can yield a much more balanced noise reduction result between the two different error microphones. Also, this improved virtual secondary path algorithm with CE applied produced a greater level of attenuation.

The performance can be further improved by adding a turning point where the step size changes. The turning point is determined experimentally based on the specific case under consideration. In this experimental case, 2400 rpm has been chosen as a turning point. Figures 7(a) and 7(b) shows the simulation results using the EE-CE secondary path with or without turning point for errors 1 and 2, respectively. In Fig. 7, the step size of the dotted curve is 1.6 times larger when the speed is less than 2400 rpm and is the same as the dashed curve when the speed is higher than 2400 rpm. Also, it can be clearly seen that the dotted curve is able to achieve more reduction when the engine speed is lower than 2400 rpm by using a larger step size.

## Conclusion

This paper proposed a MIMO ANC system with a virtual secondary path for applying active noise control of powertrain response inside the vehicle cabin. The proposed channel equalization technique substantially improves the overall performance of the control system by equalizing the amplitude levels of the estimated response of all primary channels in order to reduce the variation of noise reduction inherent in the multiple-channel setup. Numerical simulation studies are conducted for an engine speed run-up condition. Simulation results show that the proposed advanced virtual secondary path algorithm with channel equalization demonstrates better performance for 2I2O ANC system when the magnitude responses of physical secondary paths are quite different, as compared to the conventional system. Furthermore, the performance of the MIMO ANC system can be improved further by adding a turning point for the step size.

### Nomenclature

*K*=the number of the error sensors (microphones)

*M*=the number of the secondary actuators (speakers)

*R*=the autocorrelation matrix of the filtered reference signal

- $X(n,\omega )$ =
the frequency domain reference signal at time index

*n*and frequency $\omega $- $x(n)$ =
the reference signal at time index

*n*- $s$ =
the impulse response function of the secondary path

- $\alpha $ =
the reference value

- $\lambda $ =
the eigenvalue of the autocorrelation matrix

- $\mu $ =
the step size

- $\rho $ =
the ratio between the largest and smallest eigenvalues of the autocorrelation matrix

- $\omega $ =
frequency

- $S\u2227$ =
the estimated secondary path transfer function matrix in frequency domain

- $Se$ =
the virtual secondary path matrix

- $S\u2227km$ =
the frequency response of the estimated secondary path transfer function from the

*m*th secondary actuator (speaker) to the*k*th error sensor (microphone)- $SkmEE$ =
the eigenvalue-equalized virtual secondary path from the

*m*th secondary actuator (speaker) to the*k*th error sensor (microphone)- $X'$ =
the frequency-domain filtered reference signal matrix

- $ai$ =
the amplitude of the

*i*th engine order of the reference signal- $fi$ =
the frequency of the

*i*th engine order of the reference signal- $fs$ =
the sampling rate

- $s\u2227$ =
the estimated impulse response function of the secondary path

- $skm$ =
the impulse response of the secondary path from the

*m*th secondary actuator to the*k*th error sensor- $x'(n)$ =
the filtered reference signal at time index

*n*