Filtered-X Afﬁne Projection Algorithms for Active Noise Control Using Volterra Filters

We consider the use of adaptive Volterra ﬁlters, implemented in the form of multichannel ﬁlter banks, as nonlinear active noise controllers. In particular, we discuss the derivation of ﬁltered-X a ﬃ ne projection algorithms for homogeneous quadratic ﬁlters. According to the multichannel approach, it is then easy to pass from these algorithms to those of a generic Volterra ﬁlter. It is shown in the paper that the AP technique o ﬀ ers better convergence and tracking capabilities than the classical LMS and NLMS algorithms usually applied in nonlinear active noise controllers, with a limited complexity increase. This paper extends in two ways the content of a previous contribution published in Proc. IEEE-EURASIP Workshop on Nonlinear Signal and Image Processing (NSIP ’03), Grado, Italy, June 2003. First of all, a general adaptation algorithm valid for any order L of a ﬃ ne projections is presented. Secondly, a more complete set of experiments is reported. In particular, the e ﬀ ects of using multichannel ﬁlter banks with a reduced number of channels are investigated and relevant results are shown.


INTRODUCTION
Methods for active noise control are nowadays intensively studied and have already provided promising applications in vibration and acoustic noise control tasks.The initial activities originated in the field of control engineering [1,2], while in recent years a signal processing approach has been successfully applied.This approach strongly benefited of the advances in electroacoustic transducers, flexible digital signal processors, and efficient adaption algorithms [3,4].The technique used in a single-channel active noise controller is based on the destructive interference in a given location of the noise produced by a primary source and the interfering signal generated by a secondary source.
Most of the studies presented in the literature refer to linear models, while it is often recognized that nonlinear effects can affect actual applications [5,6,7,8,9,10,11,12,13,14].Such effects may arise from the behavior of the noise source which rather than a stochastic process may be depicted as a nonlinear deterministic noise process, sometimes of chaotic nature.Moreover, the primary path may exhibit a nonlinear behavior thus motivating the use of a nonlinear controller.
Recently, a model for a nonlinear controller based on Volterra filters [15] has been presented in [9] with interest-ing results.The model actually exploits the so-called diagonal representation introduced in [16].This representation allows a truncated Volterra system to be described by the "diagonal" entries of its kernels.In fact, if the pth-order kernel is represented as a sampled hypercube of the same order, the diagonal representation implies the change of the Cartesian coordinates to coordinates that are aligned along the diagonals of the hypercube.In this way, the Volterra filter can be represented in the form of a filter bank, where each filter corresponds to a diagonal of the hypercube.This representation is particularly useful for processing carrier-based input signals, since the frequency content of the output signal is directly related to the frequency response of the diagonal elements of the kernel.It has been exploited in the derivation of efficient implementations of Volterra filters for processing carrierbased input signals using fast convolution techniques [16].
A similar representation has been used in [17,18] to define the so-called simplified Volterra filters (SVF).Even though this model can be applied to kernels of arbitrary order, the simplest example of a Volterra filter, that is, the homogeneous quadratic filter, has been specifically considered in [17,18] with reference to the acoustic echo cancellation problem.An SVF is still implemented as a filter bank, but here the stress is on the fact that, according to the characteristics of the measured second-order kernel, it is possible to use a reduced number of active channels.In fact, it has been noted that the relevance of the quadratic kernel elements is strongly decreasing moving far from the main diagonal.Therefore, remarkable savings in implementation complexity can be achieved.It is worth noting that similar behaviors have been observed also in other real-world nonlinear systems.
The other relevant idea in [17,18] is that, exploiting the SVF structure, it is possible to extend the affine projection (AP) adaptation algorithm, originally proposed by Ozeki and Umeda [19] for linear filters, to quadratic filters.It has been shown that the AP technique offers also for quadratic filters better convergence and tracking capabilities than the classical LMS and NLMS.
Based on these premises, we present in this paper a couple of novel filtered-X AP (F-X AP) algorithms for nonlinear active noise control.The derivation of these algorithms is given according to the SVF model of a homogeneous quadratic filter.Extensions to higher-order Volterra filters can be obtained using the general diagonal representation mentioned above.The advantages given by the AP algorithms can be appreciated when changes in the characteristics of the noise source or of the room acoustics occur.It is also shown that the complexity increase with respect to the F-X LMS algorithm may be relatively small.
The outline of our paper is the following.In Section 2, the quadratic model used for the nonlinear active noise control is briefly described.The derivation of the novel F-X AP algorithms for homogeneous quadratic filters is presented in Section 3. Results of extensive computer simulations are presented in Section 4 for typical nonlinear situations and a few concluding remarks are given in Section 5.

MODELING THE NONLINEAR ACTIVE NOISE CONTROLLER
A single-channel acoustic noise controlling scheme is depicted in Figure 1.The corresponding block diagram is shown in Figure 2. The noise source is sensed by a reference microphone and the primary path P consists of the acoustic response from the reference microphone to the error microphone located at the canceling point.The signal to be attenuated is marked as d p (n).The reference microphone collects the samples x(n) of the noise source and feeds them as input to the adaptive controller.The controller is adapted according to the feedback signal e(n) coming from the error microphone.The controller output y(n) generates an acoustic signal that, traveling through the secondary path S, gives a signal d s (n) which destructively interferes with the undesired signal d p (n).It is usually assumed that the secondary path is linear and time invariant, and that its impulse response s(n) has been obtained by separate estimation procedures.Then, the signal d s (n) is given as the linear convolution of s(n) with the signal y(n) and thus the error signal can be expressed as where * indicates the operation of linear convolution.In the nonlinear situation we are dealing with, the controller is described as  a Volterra filter implemented by a multichannel filter bank.The adaptation of the nonlinear filter is controlled by means of the F-X AP algorithms introduced in the next Section.

SINGLE-CHANNEL F-X AP ALGORITHMS
We illustrate here the main steps leading to the derivation of F-X AP algorithms for a homogeneous quadratic filter represented as a filter bank according to the SVF implementation shown in Figure 3.The output y(n) in Figure 3 is obtained as where M is the number of channels actually used, with M ≤ N. N is the memory length of the quadratic filter and y i (n) is the output of the FIR filter in the generic channel i in Figure 3, given by the following equation: Using a vector notation, (2) becomes where h i (n) is the vector formed with the N −i+1 coefficients of the ith channel (1 The corresponding input vector x i (n), again formed with N− i + 1 entries, is defined as If we now define two vectors of formed, respectively, with the vectors h i (n) and x i (n) related to single channels of the filter bank, then the output of the homogeneous quadratic filter can be written as While the F-X LMS algorithm minimizes, according to the stochastic gradient approximation, the single error at time n, the aim of an F-X AP algorithm of order L is to minimize the last L F-X errors.The desired minimization can be obtained by finding the minimum norm of the coefficient increments that set to zero the last L a posteriori errors.More in detail, the a posteriori error at time n − j + 1, with j = 1, . . ., L, is defined as The set of constraints for an Lth order F-X AP algorithm is written in the following form: The function J to be minimized can then be defined as where and λ j are Lagrange's multipliers.By differentiating J with respect to δh(n + 1), the following set of K equations is obtained where the linearity of the convolution operation has been exploited.Equation ( 13) can be also rewritten as where the By premultiplying equation ( 14) by G T (n), the following equation is obtained: The L × 1 vector G T (n)2δh(n + 1) can be also written as Apart from the factor 2, the jth element of this vector ( j = 1, . . ., L), can be written, after some manipulations, as In deriving this expression, the linearity of the convolution operation and the constraints given by (10)

have been
Initialization: Algorithm 1: F-X AP adaptive algorithm of order L for an SVF using the direct matrix inversion.
exploited.As a conclusion, (18) can be rewritten as where e(n) is the L × 1 vector of the F-X a priori estimation errors, By combining ( 14), (17), and (20), the following relation is derived: By splitting the vector δh(n + 1) in its components, that is, and accordingly partitioning the matrix G(n) in submatrices G i (n) of congruent dimensions, the following set of equations is obtained: for i = 1, . . ., M. As a consequence, the updating relations for the coefficients of each branch are given by for i = 1, . . ., M, where µ i is a parameter that controls both the convergence rate and the stability of the F-X AP algorithm.The L × L matrix G T (n)G(n) represents an estimate of the filtered-X autocorrelation matrix of the signal formed with products of couples of input samples, obtained using the last L input vectors.The computation of its inverse is required at any time n.Since this step is often a critical one, we can distinguish the solution for the F-X AP algorithms of low orders, that is, with L = 2, 3 from that for greater orders.In fact, for L = 2, 3, even the direct inversion of the matrix is an affordable task.The only necessary care in order to avoid possible numerical instabilities is to add a diagonal matrix δI, where δ is a small positive constant, to the matrix G T (n)G(n).The equations employed for updating the coefficients and filtering the input signal using SVFs are summarized in Algorithm 1.
A general and efficient solution which can be applied to any order L of affine projections is derived by resorting to a simpler and more stable estimate for the inverse of the matrix G T (n)G(n).We introduce the vectors for i = 1, . . ., M, and the M × L matrix Then a recursive approximation of the G T (n)G(n) matrix is given by where λ is a forgetting factor (0 < λ < 1) which determines the temporal memory length in the estimation of the autocorrelation matrix.The higher the forgetting factor, the more insensitive to noise is the estimate.In practice, λ is always taken close to 1.The recursive estimate can now be used in the coefficient updating equation ( 25), where the computation of the inverse matrix is still required.To avoid such an inversion, it is convenient to directly update the inverse matrix R −1 (n), as done for the recursive least square (RLS) algorithm.We define the following matrices: for l = 1, . . ., M. Since, from (28), it immediately follows that R(n) = R M (n).By using the matrix inversion lemma [20], it is possible to derive from (30) the following updating rule: These expressions can be written in a more compact form by defining Therefore, P(n) = P M (n) and P 0 (n) = (1/λ)P(n − 1).As a consequence, the following recursive estimate for P l (n) is derived: Initialization: P(−1) = δI, Algorithm 2: Filtered-X AP adaptive algorithm of order L for an SVF using the matrix inversion lemma.
Finally, by replacing in (25) (G T (n)G(n)) −1 with the matrix P(n) = P M (n), the following updating expression for the ith branch of an SVF is obtained: for i = 1, . . ., M. The corresponding updating algorithm is described in Algorithm 2. Its complexity is given by O(ML 2 + KL).Since O(K) = O(MN) and usually L < M, the number of multiplications needed to implement SVFs equipped with this adaptive AP algorithm is O(LMN), Therefore, its complexity is of the order of L times that of the corresponding LMS algorithm.More specifically, the complexity of the F-X AP algorithm for a quadratic filter with per sample, while the complexity of the F-X LMS algorithm is O(N 2 ), as also reported in [9].On the other hand, for high values of L, the F-X AP algorithms tend to behave as the RLS algorithms with similar convergence rates and tracking capabilities.However, the complexity of RLS algorithms for quadratic filters is O(N 4 ) or O(N 3 ) for their fast versions [15, page 271].In addition, it is worth noting that often even small values of L, that is, L = 2, 3, are sufficient to obtain remarkable convergence improvements with respect to the F-X LMS algorithm.Moreover, while the F-X AP algorithm can be applied to complete quadratic filters simply by setting M = N, using a small number of channels M often permits to obtain good adaptation performances with a reduced computational complexity, as shown in the next Section.In fact, with reference to these aspects, the implementation complexity O(LMN) indicates a sort of tradeoff between the number L of APs used and the number of active channels M in the filter bank realization.Finally, it is worth noting that it is easy to pass from the algorithm for a homogeneous second-order Volterra filter to that of a generic Volterra filter.The SVF structure can be completed with the branches associated with the linear term and the higher-order Volterra operators according to their di-agonal representation.Each of these channels is then treated by the algorithms of Tables 1 and 2 in a way similar to the channels of the homogeneous second-order Volterra filter.

SIMULATION RESULTS
In this section, we present some simulation results obtained with the F-X AP algorithms of Tables 1 and 2.
In the first set of simulations, we consider the same experimental conditions of [9, Section IV-A].The source noise is a logistic chaotic noise, that is, a second-order white and predictable nonlinear process, generated with the recursive law, where ξ(0) is a real number between 0 and 1 different from k/4 with k = 0, 1, . . ., 4. The nonlinear process is then normalized in order to have a unit signal power x(i) = ξ(i)/σ ξ .The primary and secondary paths are modeled with the following FIR filters, respectively, The system is identified with a second-order Volterra filter with a linear part of memory length 10 and a quadratic part of memory length 10 and 10 diagonals (M = 10).Figures 4 and 5 plot the ensemble average of the resulting mean square error for 100 runs of the simulation system, using the direct matrix inversion as in Algorithm 1 and the recursive technique in Algorithm 2, respectively.The four curves refer to different values of the affine projection order L. The order L = 1 corresponds to a normalized LMS adaptation algorithm, which is the same adaptation algorithm employed in [9] apart from the normalization.In the experiments of Figure 4, the step size was equal to 0.005.In the experiments of Figure 5, the λ factor was equal to 0.9 and the step size value was set to 0.0009 in order to obtain the same convergence characteristics of the first set of experiments when the affine projection order L equals 1.For higher orders of affine projections, the improvement in the convergence behavior of the algorithm is evident.Moreover, the adaptation curves of Figure 5 indicate a slight but steady reduction of the asymptotic error for increasing values of L. This fact confirms the reliability of the recursive approximation leading to the algorithm of Algorithm 2.
In the second set of experiments, we simulate a sudden change in the noise source and its propagation model and we investigate the ability of the F-X AP algorithm to track the noise conditions.We employ the same experimental conditions of the first set of simulations, but after 100000 signal samples we modify the primary path model according to the following equation: (39) and we use as input signal x(i) = x 2 (i)/2, where x(i) is the normalized logistic noise of the previous experiments.Figure 6 plots the resulting adaptation curves for different orders of affine projections when the algorithm of Algorithm 2 is applied for the filter adaptation.Again, we can observe the improvement in the convergence behavior determined by the AP algorithm.
In the last set of experiments, we investigate the effects of modeling an active noise controller as a multichannel filter bank with a reduced number of channels.The noise source is the logistic chaotic noise of the first set of experiments.The primary and secondary paths are modeled as in (37), (38), respectively.The system is identified with an SVF with a linear part and a quadratic part, both of memory length 10.Figures 7 and 8  Mean square error of the resulting mean square error for 100 runs of the simulation system.The algorithm of Algorithm 2 was applied with an affine projection order L set to 4 and with λ = 0.9 and µ = 0.0005.The curves in Figure 7 refer to the linear controller and the quadratic controller with M = 2 and M = 4.The convergence improvement with respect to the linear case can be easily appreciated, especially for M = 2.It has been experimentally verified that the curves for 4 ≤ M ≤ 10 converge with a progressively slower behavior to about the residual error of the curve for M = 2. Therefore, using the full model, as done in [9], does not allow any improvement.It has been also observed that using a number L of APs equal to 2 gives, as expected, the same global performances, but with a reduced convergence speed.To complete this set of experiments, the primary path has been then replaced by the following second-order Volterra filter: and all the simulations have been repeated with the same parameters.The results obtained for different numbers of branches M of the quadratic part of the SVF are shown in Figure 8.Of course, the best approximation result is now that for M = 6, since in this case the SVF exactly corresponds to the system to be modeled.We observe that when M = 2, the resulting SVF is inadequate to model the noise generation system, while for M = 4 a better approximation is obtained.This case can be considered as a compromise in terms of modeling accuracy, speed of convergence, and computational cost.From Figure 8, it can be noted again that overdimensioning the model using a complete second-order Volterra filter, M = 10, does not offer particular advantages.In fact, this filter is able to model the noise generation system with slightly reduced accuracy and convergence speed at an increased computational cost with respect to the reference case M = 6.

CONCLUSIONS
In practical applications, methods for active noise control have often deal with nonlinear effects.In such environments, nonlinear controllers based on Volterra filters implemented in the form of multichannel filter banks can be usefully exploited.One of the crucial aspects is the derivation of efficient adaptation algorithms.Usually, the so-called filtered-X LMS or NLMS algorithms are used.In this paper we proposed the use of the affine projection technique, and we derived in detail the so-called filtered-X AP algorithms for homogeneous quadratic filters.According to the multichannel approach, these derivations can be easily extended to a generic Volterra filter.The extensive experiments we report confirm that the AP technique offers better convergence and tracking capabilities than the classical LMS and NLMS algorithms with a limited increase of the computational complexity.

Figure 6 : 4 M = 2 Figure 7 :
Figure 6: Adaptation curves with a sudden modification in the noise conditions.

Figure 8 :
Figure 8: Adaptation curves with different number of channels and nonlinear primary path.