IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
669
Efficient Adaptive Nonlinear Filters for Nonlinear Active Noise Control Dayong Zhou, Member, IEEE, and Victor DeBrunner, Senior Member, IEEE
Abstract—In this paper, we treat nonlinear active noise control (NANC) with a linear secondary path (LSP) and with a nonlinear secondary path (NSP) in a unified structure by introducing a new virtual secondary path filter concept and using a general function expansion nonlinear filter. We discover that using the filtered-error structure results in greatly reducing the computational complexity of NANC. As a result, we extend the available filtered-error-based algorithms to solve NANC/LSP problems and, furthermore, develop our adjoint filtered-error-based algorithms for NANC/NSP. This family of algorithms is computationally efficient and possesses a simple structure. We also find that the computational complexity of NANC/NSP can be reduced even more using block-oriented nonlinear models, such as the Wiener, Hammerstein, or linear–nonlinear–linear (LNL) models for the NSP. Finally, we use the statistical properties of the virtual secondary path and the robustness of our proposed methods to further reduce the computational complexity and simplify the implementation structure of NANC/NSP when the NSP satisfies certain conditions. Computational complexity and simulation results are given to confirm the efficiency and effectiveness of all of our proposed methods. Index Terms—Active noise control (ANC), adaptive filters, nonlinear filters, nonlinear systems.
I. INTRODUCTION
A
CTIVE noise control (ANC) is based on the superposition principle that a noise can be canceled by another noise with the same amplitude but an opposite phase [1], [2]. This principle has also been applied to reduce vibrations present in both machines and structures, e.g., see [2], [3]. In this case, the term active vibration control (AVC), is commonly used. The filtered-x LMS (FXLMS) algorithm is the most commonly used algorithm in ANC and AVC because of its simple implementation. In the FXLMS algorithm shown in Fig. 1, the main, or primary, path defines the path from the noise source to the cancellation is the usual term for the path point. The secondary path leading from the adaptive filter output to the cancellation point. usually contains a D/A converter, an The secondary path amplifier, and an actuator. In some systems, it will also include the error sensor transfer function. In ANC systems, the actuator is most often an audio loudspeaker. In AVC systems, the actuator may consist of piezoelectric material, mass actuators with motor control, hydraulic systems with motor control, or other shaker or stiffening devices. Typically, in ANC or AVC, both Manuscript received July 16, 2005; revised January 8, 2006 and June 16, 2006. This paper was recommended by Associate Editor M. Chakraborty. D. Zhou is with the University of Oklahoma, Norman, OK 73072 USA (e-mail:
[email protected]). V. DeBrunner is with the Florida Sate University, Tallahassee, FL 32310 USA (e-mail:
[email protected]). Digital Object Identifier 10.1109/TCSI.2006.887636
Fig. 1. Block diagram of a feedforward active control system using the FXLMS algorithm.
the main path and the secondary path are assumed to be linear and it is further assumed that linear filtering will effectively deal with the sound or vibration signals. However, in actual systems, the plant may be nonlinear, the reference noise may exhibit nonlinear distortion, and the secondary path may also have some nonlinear distortion [4]–[15]. In each of these cases, research results (see [4], [12], [13]) have reliably shown that the adaptive linear filter performs poorly, and in some cases even fails, when the secondary path has severe nonlinear distortion. As a result, the nonlinearities must be accounted for in the design of these control systems. Here, we refer to the use of adaptive nonlinear controllers [such as adaptive polynomial filters and artificial neural networks (ANNs)] for these situations as nonlinear ANC (NANC). Algorithmically, a NANC can be divided into two categories: NANC with a linear secondary path (LSP) [4], [5], [9], [11], [15] and NANC with a nonlinear secondary path (NSP) [6], [14]. In this paper, we treat these two categories in a unified structure—NANC/LSP is treated as a special case of NANC/NSP. For NANC/LSP, the problem becomes one of using a nonlinear controller on a linear device, which is originally discussed by Strauch and Mulgrew [4]. He showed that NANC will perform better than linear ANC when: 1) the secondary path is linear non-minimum-phase and the reference noise is either non-Gaussian or predictable nonlinear noise such as chaotic noise; or 2) the main path is nonlinear and the secondary path is linear. Tan and Jiang [5] reinforced these statements and developed NANC using an adaptive Volterra filter—an algorithm they called the Volterra FXLMS (VFXLMS) algorithm. Das and Panda [15] proposed the filtered-s LMS (FSLMS) algorithm to tackle this problem based on the functional-link ANN (FLANN) using trigonometric bases, which is updated using the same principle as is used in the VFXLMS algorithm,
1549-8328/$25.00 © 2007 IEEE
670
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
but outperforms VFXLMS in terms of the excess (or residual) noise power. However, the main drawbacks of both VFXLMS and the FSLMS-based algorithms are their complicated structure, heavy computational burden, and slow convergence. Kuo and Wu [11] proposed the adaptive bilinear filter to reduce the computational complexity of the adaptive Volterra filter. However, as in the linear infinite-impulse response (IIR) case, filter stability and the presence of local minima are significant concerns. A filtered-x affine projection algorithm based on the adaptive Volterra filter was recently proposed by Carini and Sicuranza [9] to improve the convergence rate at the cost of increased computational complexity. NANC/NSP finds even broader applications than does NANC/LSP because of the widespread existence of nonlinearities in the secondary paths of so many ANC and AVC systems. Furthermore, if we can develop some efficient algorithms for NANC/NSP, then the cost of our control system could be greatly reduced by choosing some low-cost devices (e.g., amplifiers, sensors, and actuators), which may have nonlinear distortion. As a result, our study of NANC/NSP is of intrinsic merit. However, due to the complexity of the NANC/NSP problem, only multilayer ANN (MLANN) solutions have been proposed, e.g., see [6], [14]. The applications of NANC algorithms that use MLANN are limited by the following factors: 1) modeling a practical nonlinear actuator usually requires a significantly large number of artificial neurons; and 2) MLANN algorithms are known for their slow convergence. Finding efficient adaptive nonlinear filters to solve the NANC/NSP problem will certainly have practical significance. In summary, the heavy computational burden and structural complexity limit the practical applications of available NANC algorithms. In this paper, we focus on developing computationally and structurally efficient adaptive control algorithms for both NANC/LSP and NANC/NSP that use a general function expansion nonlinear filter to generalize the Volterra polynomial model [5] and the trigonometric-based FLANN model [15], as well as the linear finite-impulse response (FIR) filter. The major contributions of this work are as follows. 1) Through direct extension of linear filtered-error LMS algorithms, we develop several efficient algorithms for NANC/ LSP, which greatly reduce the control system complexity compared with available NANC/LSP algorithms. 2) By introducing the virtual secondary path concept, we unify the control system structures of NANC/LSP and NANC/NSP, which paves the way for extending the NANC/LSP algorithms and analyses to the NANC/NSP case. 3) Using the adjoint virtual secondary path concept, we develop a novel adjoint LMS-based control algorithm for NANC/NSP, which can significantly reduce the computational and structural complexity. 4) We further propose two ways to reduce the computational and structural complexity of NANC/NSP. One is using block-oriented nonlinear models, such as the Wiener, Hammerstein, and linear–nonlinear–linear (LNL) models for the NSP; the other is based on the statistical properties of the virtual secondary path and the robustness of our developed algorithms.
The paper is arranged as follows. A nonlinear filter using an expansion of functions and its multichannel representation is provided in Section II. Using this nonlinear function expansion filter, we derive FXLMS-based control algorithms for NANC/NSP (NANC/LSP is treated as a special case) in Section III. Efficient filtered-error-based control algorithms for both NANC/LSP and NANC/NSP are developed in Section IV. The control algorithms for NANC with a block-oriented NSP are given in Section V. We further simplify our proposed algorithms under certain described conditions by using their robustness in Section VI. The computational complexity and some simulation results are provided in Sections VII and VIII, respectively, to confirm the efficiency and effectiveness of our developed algorithms. In Section IX, we conclude with discussion. II. GENERAL FUNCTION EXPANSION NONLINEAR FILTER AND ITS MULTICHANNEL IMPLEMENTATION In this work, the adaptive nonlinear controllers for NANC systems use a general functional expansion nonlinear filter (1) represents the input sequence to a nonlinear device where i.e. is the output, is the th coefficient at time is the total number of terms, belongs to a set of linearly independent functions and of , which generates nonlinear states. This general function expansion nonlinear filter is well known to researchers working in the area of nonlinear signal processing, e.g., [4] and [10]. The functional expansion provides a nonlinear filter that is a subset of the FLANN model [16], but is identical to the FLANN model used in [15]. Furthermore, a linear filter is a special case of this function expansion nonlinear filter. Also, this functional expansion is the truncated Volterra filter of [17] when (2) Here are arbitrary integers representing delay. The maximum delay determines the memory size, and represents the order of the nonlinearity. Consequently, we can develop the multichannel implementation of this nonlinear filter as the multichannel structure of the Volterra filter (referred to as the diagonal representation in [18]). in (1) For channels, we group the nonlinear states into several groups , with (3) where that the elements tionship, e.g., by one sample, by
, and are integers, such within each group have a time-delayed relais obtained by delaying , and is obtained by delaying samples. So, we can define the state vector as (4)
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
671
represent the primary path, adaptive nonlinear conand troller, and (nonlinear or linear) secondary path, respectively. is the output of the adaptive nonlinear filter The signal and is the indirectly generated canceling signal at the error and , resensor. Similar to (5) and (6), we use vectors spectively, to represent the coefficient vectors for the nonlinear controller and the (nonlinear or linear) secondary path. We have (9) Fig. 2. Multichannel implementation of the function expansion nonlinear filter.
and (10)
Correspondingly, we can group the coefficients of the nonlinear filter in (1) as (5) with
where and , similar to the definition in (3) and (4), are corresponding nonlinear state vectors of the adaptive nonlinear controller and the secondary path, respectively. If the secondary is linear, then vector only consists of and path its delays. The associated error is (11)
(6) corresponding to the state groups in (3). As a result, we can write the nonlinear filter in (1) as (7) and in the multichannel form as (8) By this arrangement, we only need to calculate the first nonlinear state of each group in (3) and then the remaining terms are obtained by delay. The structure of the multichannel implementation of this nonlinear filter is shown in Fig. 2, where are filters with corresponding coefficient vectors defined in (6). The function expansion box in Fig. 2 generates the nonlinear states required for each channel. The output of the nonlinear filter can be regarded as the sum of the is the outputs of several linear filters (or channels). Here, maximum number of channels: for a memory length of and th-order truncated Volterra series, [5]; for the trigonometric-based FLANN used in [15] with . As a result, the number of channels order increases as the order and/or the memory size increase. Filter represents the linear component of the nonlinear filter and represent the nonlinear the higher-order channels components.
As in [19], the cost function is defined as (12) Note that, like many other nonlinear adaptive filters, this cost function is not generally quadratic with respect to the nonlinear filter coefficients when the secondary path is nonlinear. Consequently, the adaptive filter may converge to a local minimum. A detailed study of global optimization is currently underway. However, it is certainly true that by minimizing this cost function, the residual noise power will be reduced, which is the main purpose of ANC systems. What is not clear presently is whether we achieve the optimal reduction of this residual signal. Using the steepest descent method, the update equation in this case is
(13) where is the step size, which controls the convergence and stability. As in the classic LMS algorithm, we can use the instantaneous value to approximate the ensemble mean, yielding (14) Note that
III. FILTERED-X-BASED NANC ALGORITHMS Lim et al. [19] developed a nonlinear FXLMS algorithm for updating the coefficients of a nonlinear Volterra pre-filter to linearize a nonlinear system. Here, we apply their algorithm to our NANC problem using the function expansion nonlinear filter as the nonlinear controller. The diagram of the so-obtained FXLMS-based algorithm is shown in Fig. 3, where the multi, channel implementation is embedded within, and
(15) where is the memory size of the NSP. We assume that for small step size Thus, since
is slowly varying.
(16)
672
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
Fig. 3. Block diagram of the FXLMS-based NANC algorithm.
we have (17) If we define the signal (18) we can write the update equation of
as
(19) This update function is the same as that used in [19]. However, this nonlinearly FXLMS algorithm is complicated in structure (refer to [19]) with a significant computational load. We wish to reduce this burden. Consequently, we introduce a new concept, the virtual secondary path filter with coefficients
(20) This filter is a time-varying filter whose coefficients are obtained from (18). Note that the last term in (19), , is determined by filtering the nonlinear states through this virtual secondary path filter. We further define the filtered signal as (21) where
denotes convolution. Combining (19) and (21) yields (22)
Using (20), (21), and (22) yields the FXLMS-based NANC algorithm. Note that we must know the nonlinear model coefficients in order to get the virtual secondary path filter .
may be identified using eiThe secondary path coefficients ther off-line or on-line methods. From Fig. 3, we can find that the virtual secondary path concept reduces the structural complexity of the filtered-x-based algorithms for NANC/NSP—they have a structure similar to that of the FXLMS algorithm for linear ANC. Also, this structures shows that our developed algorithm is a generalized version of the FXLMS algorithm. When the secondary path is nonlinear, the virtual secondary filter is time-varying even if the NSP is stationary. Consequently, we cannot take advantage of the delay relationship existing in the nonlinear states. Thus, each element of must be filtered by , significantly increasing the computational complexity of NANC/NSP. When the secondary path is linear, the virtual secondary path filter coefficient vector defined in (20) is equal to , the estimated LSP coefficients. As a result, using the virtual secondary path concept, we obtain a unified filtered-x structure for both NANC/LSP and NANC/ NSP. Consequently, some available methods for NANC/LSP (e.g., the affine projection algorithms discussed in [9], [10]) could be easily extended to solve NANC/NSP problems. For the NANC/LSP configuration, if we use an adaptive Volterra filter as controller, we can obtain the VFXLMS algorithm developed in [5]; and if we incorporate this FXLMS-based algorithm with the trigonometric-based FLANN model, the control algorithm obtained is more efficient than the fast FSLMS algorithm deand calveloped in [14]. Specifically, the number of to . This computational efficulations is reduced from ciency is achieved by exploiting the delay relationship not only in the filtering of the nonlinear states, but also in the generation of the nonlinear states. IV. FILTERED-ERROR-BASED NANC ALGORITHMS In the filtered-x-based NANC algorithm, the signals from each channel must be filtered by the virtual secondary path. Thus, the computational complexity increases as the order and/or the memory size of the nonlinear filters increase (details will be given in Section VII). It is well known that filtered-errorbased algorithms can be applied to linear multichannel ANC systems to reduce control computational complexity [1], [2], [20]–[23]. The filtered-error structure can also be applied to our NANC problems (in this paper we only consider the single channel NANC) to reduce NANC system complexity. One can see from Fig. 3 that if only the error signal needs to be
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
673
Fig. 4. Block diagram of filtered-error LMS-based NANC algorithm.
filtered by an error filter, rather than filtering every component , great savings in the computation and memory signal in requirements can be achieved. Currently, there are three filtered-error-based LMS algorithms available for linear ANC, i.e., the secondary path equalization algorithm [1] (also referred to as the filtered- LMS algorithm in [20]), the adjoint LMS algorithm [21], [22], and the hybrid filtered-error LMS algorithm [23]. These filtered-error LMS algorithms can each be extended to solve the NANC/LSP directly and to generate filtered-error-based NANC algorithms—this structure is shown in Fig. 4. The update for the filtered error LMS-based algorithms is
We define the adjoint virtual secondary path filter coefficient vector
with
(27) The relationship between the virtual secondary path filter and the adjoint virtual secondary path filter is shown in Fig. 5. Using this figure, we see that the adjoint virtual secondary path filter not only requires us to reverse the order of the coefficients as in [21], [22] for the LSP cases, but it also requires us to delay the time-varying coefficients. Using the adjoint virtual secondary path filter concept, we define the filtered error
(23) where represents the error filter and is the reference uses the polynomials from (2), then signal delay. If we get a filtered-error LMS-based adaptive Volterra filter, which is more computationally efficient than the VFXLMS algorithm [5]. Different filtered-error LMS algorithms result from various methods of choosing the error filter. These methods generate different delays and different convergence properties. Detailed analyses of filtered-error LMS algorithms can be found in [23] and references therein. However, unlike in the NANC/LSP case, the time-varying nature of the virtual secondary path precludes direct application of the available filtered-error-based algorithms to NANC/ NSP. Here, we develop a novel filtered-error-based algorithm for NANC/NSP by rewriting (22) as (24) with (25) represents the where secondary path coefficient vector . Then that
th component of the virtual . Let , so
(26)
(28) where represents the th component of the ad. The filtered joint virtual secondary path coefficient vector error in (28) is equivalent to passing the error signal through the adjoint virtual secondary path filter of (27). Consequently, we have a new update equation (29) Equations (27)–(29) describe the adjoint LMS algorithm for NANC/NSP, which has the same block diagram shown in Fig. 4 and . We see that, like the applicawith tion of adjoint LMS in multichannel linear ANC [2], [21], the adjoint LMS algorithm for NANC/NSP requires significantly fewer computations and possesses much smaller memory requirements, which are crucial in the practical implementation of NANC algorithms. Clearly, too, the adjoint LMS algorithm for NANC/NSP is a generalized version of the adjoint LMS algorithm in [21], [22] and the adjoint LMS algorithm for NANC/ LSP. V. NANC WITH BLOCK-ORIENTED NSP In practice, many nonlinear systems can be represented or approximated by block-oriented nonlinear models (e.g., see [17] and [24]) to reduce the number of coefficients and the size of the required memory, which leads to much more efficient representation of nonlinear systems. Moreover, these
674
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
Fig. 5. Comparison of (a) virtual secondary path filter s~(n), and (b) adjoint virtual secondary path filter s~ (n).
block-oriented nonlinear models match practical ANC system configurations because the secondary path usually combines several components. As a result, we are motivated to study NANC with these kinds of secondary paths. From our discussion in Sections III and IV, we see that finding the virtual secondary and adjoint virtual secondary paths is the key to solving a NANC/NSP problem. In this section, we derive the virtual secondary and adjoint virtual secondary paths of three of the most popular block-oriented nonlinear models—the Wiener, the Hammerstein, and the LNL (linear–memoryless nonlinear–linear) cascade—shown in Fig. 6. The linear time-in, and with variant FIR filters are denoted using symbols , and , respectively. The memoryless coefficient vectors nonlinear functions are represented by the symbol . Intermediate signals are represented by , and .
Fig. 6. Block-oriented nonlinear models. (a) Wiener. (b) Hammerstein. (c) LNL cascade.
A. Wiener Secondary Path Model If the secondary path takes the Wiener structure shown in Fig. 6(a), the resultant virtual secondary path coefficient vector can be obtained from (20) as
Fig. 7. Block diagram of the (a) virtual and (b) adjoint virtual secondary paths for the Wiener secondary path model.
(30) where is the order of the linear filter . In this case, the virtual secondary path is expressed using the block diagram shown in Fig. 7(a), where the rectangle represents a linear filter and the triangle represents a simple gain (the same representations will be used in Figs. 8 and 9). This virtual secondary path is simple in structure and efficient to calculate because it connects the
linear FIR filter in the Wiener model to a time-varying gain. This virtual secondary path is still a time-varying linear FIR filter. Similarly, we find the adjoint virtual secondary path coefficient vector from (27) as
(31)
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
675
before the Thus, we must place a time-varying gain linear system . The block diagram is shown in Fig. 8(a). The coefficient vector of the adjoint virtual secondary path is similarly obtained by combining (27) and (34), giving (36)
Fig. 8. Block diagram of the (a) virtual and (b) adjoint virtual secondary paths for the Hammerstein secondary path model.
A block diagram of the adjoint virtual secondary path described in (36) is shown in Fig. 8(b). The virtual secondary path and the corresponding adjoint virtual secondary path are easy to implement. C. LNL Secondary Path Model
Fig. 9. Block diagram of the (a) virtual and (b) adjoint virtual secondary paths for the LNL secondary path model.
where represents the th element of the time-invariant filter coefficient vector . Note that the time-varying gain must be placed before the linear FIR filter in the adjoint virtual secondary path as shown in Fig. 7(b), where is the time-reversed version of linear FIR filter . B. Hammerstein Secondary Path Model If the secondary path is the Hammerstein model shown in Fig. 6(b), the virtual secondary path can be calculated by (20). The th term of the virtual secondary path coefficient vector is
(32) is the order of the linear filter . Because where oryless nonlinear function, we have
is a mem-
.
(33)
As a result
(34) and the virtual secondary path filter coefficient vector is written
(35)
If a NSP can be represented by the LNL model shown in Fig. 6(c), then the corresponding virtual secondary path and adjoint virtual secondary path are obtained by combining the results just derived for the Wiener and Hammerstein models. The block diagrams are shown in Fig. 9(a) and (b), respecand are the time-reversed versions of the tively, where linear FIR filters and respectively, with corresponding orand . Fig. 10 gives the block diagram of ders denoted by the adjoint LMS-based algorithm for NANC with a LNL secondary path. Note that the reference signal needs to be delayed samples to maintain the reference error signal by alignment. VI. SIMPLIFIED ALGORITHMS FOR NANC/NSP As discussed earlier, the FXLMS-based and adjoint LMS-based NANC algorithms can be regarded as extensions (or generalizations) of the linear FXLMS and adjoint LMS algorithms, respectively. The main concern behind the nonlinear FXLMS and nonlinear adjoint LMS algorithms is the same as with their linear counterparts—to keep the reference and error signals properly aligned in time [1]. The virtual secondary and adjoint virtual secondary paths in these algorithms serve this purpose. However, to make the adaptive filters converge for a sufficiently small step size, we only need to filter the reference signal or the error signal with a filter that possesses a frequency of the actual phase response [25], response phase within [26]. As a result, we can say that all developed algorithms are robust and able to tolerate some estimation errors of the secondary paths. We now want to use this robustness and the statistical properties of the virtual secondary filter to further simplify our proposed algorithms for NANC/NSP. A. Simplified Algorithms for NANC With a Block-Oriented NSP By examining the virtual secondary path filter of the Wiener model in Fig. 7, we see that the mean value of is a simple gain. Because a simple gain does not introduce phase delay, it may be disregarded during the weight update. Using this approximation, we can further simplify our developed algorithms for NANC/NSP. However, it is now necessary to pursue the effect of this approximation on the step size. Here, we only consider the update function for the adjoint LMS-based algorithm, written as (37)
676
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
Fig. 10. Block diagram of adjoint LMS-based algorithm for a LNL secondary path.
The update function for the simplified adjoint LMS-based NANC algorithm obtained by disregarding the gain function of the adjoint virtual Wiener modeled secondary is represented as '
(38)
where is obtained by filtering the error signal through the linear part of the Wiener system. By defining in (38), the update (37) is equivalent to (38), and so it is now clear that the approximation will affect the step size stability (as is the bound of the adaptive algorithm. If case with a heavy saturation nonlinearity), then should take a value much smaller than for convergence. In this analysis, we have only considered the Wiener nonlinear model, but the simplified method could also be applied to the NANC problem with a Hammerstein or LNL secondary path. B. Simplified NANC Algorithm for a “Weakly” Nonlinear System
VII. COMPUTATIONAL COMPLEXITY ANALYSIS OF THE DIFFERENT ALGORITHMS
An NSP can also be modeled as the parallel connection and a nonlinear path , i.e., of a linear path (39) According to (18) and (20), the virtual secondary path of
Using this approximation allows us to further simplify the NANC/NSP algorithms. The simplified FXLMS-based NANC algorithm is exactly the same as our previously developed algorithm in [27]. However, our discussion here provides a theoretical foundation and framework for this simplification. Also, a similarly simplified adjoint LMS-based NANC algorithm is more efficient than the proposed algorithm in [27]. These simplifications can reduce the computations and simplify the structure of the adaptive nonlinear filters during updating. Even more importantly, in the identification procedure, we need only identify the linear part of a weakly nonlinear system. As well, we need only identify the linear part of the Wiener model if the memoryless nonlinear part does not significantly constrain the step size. However, the adaptive nonlinear filters in the simplified algorithms do not converge as a steepest descent. As a result, these simplified algorithms slow the convergence rate and increase the residual noise power.
is (40)
The virtual secondary path for a LSP is precisely that LSP itself—consequently we have (41) and is within If the phase response difference of —which is the operational meaning of “weakly” used here—then we can approximate the virtual secondary path of the NSP using only its estimated linear part (42)
In order to show the efficiency of our developed algorithms, we compare their computational complexity in terms of the number of multiplications per iteration for both NANC/LSP and NANC/NSP. A. Computational Complexity for NANC/LSP Because the adaptive Volterra filter and trigonometric-function-based FLANN controller algorithms are both available for NANC/LSP, we will calculate the computational complexity for each controller separately. We first calculate the number of multiplications required by the adaptive Volterra filter, based on different update algorithms for NANC/LSP. The results are provided in Table I. This analysis does not include the computations required for the secondary path identification procedure because this is required (and equal) for every algorithm. In the table, and represent the order of the nonlinearity and the memory size of the adaptive Volterra filter, respectively. The value represents the memory size of the LSP. The derivation of these tables can be obtained by applying the analyses given in [5]. In the filtered-error LMS-based algorithm for the adaptive Volterra filter controller, we assume in the calculation that the error filter has the same order as the LSP.
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
677
TABLE I COMPUTATIONAL COMPLEXITY OF DIFFERENT ALGORITHMS FOR NANC/LSP USING ADAPTIVE VOLTERRA FILTERS
TABLE II COMPUTATIONAL COMPLEXITY OF DIFFERENT ALGORITHMS FOR NANC/LSP USING FLANN CONTROLLERS
TABLE III COMPUTATIONAL COMPLEXITY OF DIFFERENT ALGORITHMS FOR NANC WITH A VOLTERRA MODELED NSP USING ADAPTIVE VOLTERRA FILTER
Table II compares the computational complexity of the trigonometric-function-based FLANN controller updated by the fast FSLMS algorithm with one updated by our developed filtered-error LMS-based algorithm. Using the notation of , and represent the order of the nonlinearity, the [15], memory length of the nonlinear controller, and the length of the secondary path, respectively. The derivation of this table can be easily obtained by applying the analyses in [15]. From Tables I and II, we find that great computational savings can be achieved for NANC/LSP by using the filtered-errorbased algorithms over the FXLMS-based algorithms. B. Computational Complexity for NANC/NSP For NANC with a NSP, we only consider the adaptive Volterra filter controller because it generates better performance than the trigonometric-function-based FLANN discussed in [15] (see simulations in Section VIII). We calculate the number of multiplications of the different NANC algorithms with a Volterra modeled NSP and a Wiener modeled NSP in Tables III and IV, respectively. As before, we do not include the nonlinear system identification procedure into the calculations. In these tables,
and represent the adaptive Volterra filter’s order of nonlinearity and memory size, respectively. The value also represents the order of the nonlinearities for the Volterra NSP and represents the memory size of the NSP. Wiener NSP; and The derivation of these tables can also be obtained by applying the analyses in [5], and so the details are not given in this paper due to limited space. From Table III, we can see that the adjoint LMS-based algorithm greatly reduces the computational complexity of the FXLMS-based algorithm. The simplified adjoint LMS algorithm based on the weakly nonlinear assumption further reduces the computational complexity; specifically, the computational complexity is reduced to the same level as required by NANC/LSP. In Table IV, we observe again the reduction in computations of the adjoint LMS-based algorithm and the simplified adjoint LMS-based algorithm over the FXLMS-based algorithm. Comparing the results of Table IV with those of Table III, we see the computational savings of the FXLMS-based and adjoint LMSbased algorithms obtained by resorting to the block-oriented nonlinear models.
678
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
TABLE IV COMPUTATIONAL COMPLEXITY OF DIFFERENT ALGORITHMS FOR NANC WITH A WIENER NSP USING ADAPTIVE VOLTERRA FILTER
VIII. SIMULATIONS We provide several simulation results in this section to prove the effectiveness of our proposed NANC algorithms. In these simulations, all adaptive controllers are updated by LMS-based algorithms. Note that the convergence speed of our proposed algorithms can be greatly improved by using other updating algorithms, e.g., the recursive least square (RLS) algorithm [1], [2] and the affine projection algorithm [9], [10]. Obviously, the cost of faster convergence speed is increased computational complexity. Simulation 1: We simulate the control of a logistic chaotic noise with a linear non-minimum-phase secondary path and the same configuration as in [5] and [15]. The primary path is modeled as an FIR filter with transfer function (43) The secondary path is a non-minimum-phase FIR filter with and (perfectly) estimated secondary path transfer function transfer function (44) The reference noise is the logistic chaotic noise generated by (45) where and are used. This noise process is . We normalized to have unit signal power, i.e., to yield implement the adaptive Volterra controller with order and memory size (as in [5]) and the FLANN controller with first-order function expansion and memory size of 10 (as in [15]), which are updated by both the FXLMS-based algorithm and the adjoint LMS-based algorithm. For the adaptive Volterra filter based on the filtered-x algorithm, i.e., the VFXLMS algorithm [5], the step size for the linear part is and the step size for the nonlinear part is ; for the adaptive Volterra filter based on the adjoint LMS algoand . These step sizes enrithm, sure that the adaptive Volterra filters achieve the same residual noise power. For the FLANN controllers based on the FXLMS algorithm, i.e., the fast FSLMS algorithm, and the adjoint LMS . The average learning curves for 200 structure, runs of each of the algorithms are shown in Fig. 11. In this simulation, we find that the adjoint LMS-based algorithms converge at almost the same speed as the filtered-x-based
Fig. 11. Learning curves using different control algorithms for NANC with a LSP. (a) Adaptive Volterra filters based on the FXLMS. (b) Adjoint LMS algorithms. (c) FLANN based on the FXLMS. (c) Adjoint LMS algorithms .
algorithms for both the adaptive Volterra filters and the FLANN nonlinear controllers—their corresponding learning curves are overlapped in Fig. 11. However, it is easy to see from Tables I and II that our proposed algorithms (based on the filtered-error structure) provide a savings of 36 multiplications over filtered-x-based adaptive Volterra controller, and a savings calculations over the of 10 multiplications and fast FSLMS algorithm, respectively. In this case, our proposed filtered-error-based algorithms reduce the computational and structural complexity without sacrificing performance. In other simulations (not provided here due to limited space), we actually see that by using different error filters, the convergence speed of the filtered-error-based nonlinear controller for NANC/LSP can be even further improved. Some linear case examples can be found in [23]. Simulation 2: We simulate NANC with a NSP, which is modeled by a Volterra filter. Like the structure in Figs. 3 and 4, the is also modeled by a Volterra series whose input main path to output relationship is described as
(46)
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
Fig. 12. Learning curves of different algorithms for NANC/NSP. (a) Adaptive and = Volterra filter based on FXLMS algorithm with = 5 10 5 10 . (b) Adaptive Volterra filter based on adjoint LMS algorithm with = 4 10 and = 4 10 . (c) Adaptive Volterra filter based on simplified adjoint LMS algorithm with = 2 10 and = 2 10 ; (d) FLANN controller with third-order function expansion and = 1 10 .
2
2
2
2
The secondary path has the input relationship
2
2 2
to output
(47) The reference signal is white noise. The adaptive Volterra filters and , and FLANN controller with 3rd-order with trigonometric functional expansion, as in [15], and memory size 10 are used in our simulations, based on different updated algorithms. For the adaptive Volterra filter based on the FXLMS and ; for the adaptive structure, Volterra filter based on the adjoint filtered-error LMS structure, and , which ensure that both adaptive Volterra filters algorithms have the same residual noise power after they converge. For the simplified adjoint LMS aland . The FLANN gorithm, controller is updated by the FXLMS algorithm with step size . The average learning curves for 200 runs of each of the algorithms are shown in Fig. 12. We see that all controller-based proposed algorithms can successfully reduce the noise. The FLANN controller results in 5 dB more noise power than the adaptive Volterra controller. As pointed out by an anonymous reviewer, this is due to the fact that the FLANN controller structure does not include mixed terms with different delays, which exist in the main path and the secondary path. Nevertheless, comparing the performance of different nonlinear controllers is not the focus of this work. For adaptive Volterra filters, the one based on the adjoint LMS algorithm converges at almost the same rate as the one based on the filtered-x algorithm; the adaptive Volterra filtered-based simplified adjoint LMS algorithm has slower convergence and slightly higher residual noise power than does the other two, which is the price paid for the
679
Fig. 13. Learning curves for NANC with a LNL secondary path. (a) Adjoint LMS-based adaptive Volterra filter with = 2 10 and = 2 10 . (b) Simplified adjoint LMS-based adaptive Volterra filter with = 2 10 and = 2 10 .
2
2
2 2
computational simplification. Also in our simulations, we find that as the nonlinearity becomes severe, these disadvantages of the simplified algorithm become more prominent. Simulation 3: We simulate NANC with an LNL secondary path as discussed in Section V. We implement the adaptive Volterra filter of order 2 and memory size 10 updated by the adjoint LMS-based algorithm described by Fig. 10 and the simplified algorithm in Section VI. The Wiener and Hammerstein secondary path models can be thought of as special cases of the LNL structure. The reference signal is white Gaussian noise. to output The nonlinear main path is modeled with input relation
(48) The secondary path takes the LNL structure shown in Fig. 6(c). , and are represented The (49) (50) (51) In this simulation, for the adaptive Volterra filter based on the and ; adjoint LMS algorithm, for the adaptive Volterra filter based on the simplified algorithm, and . (For this case, our simulation results also show that the adaptive Volterra filter based on the FXLMS algorithm has the same performance as the one based on the adjoint LMS algorithm, so these results are not provided here.) The learning curves of the different algorithms for an average of 200 runs are shown in Fig. 13. Here, we see that the adaptive Volterra filter based on both algorithms can successfully reduce the excess noise power. However, reduction in the
680
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS, VOL. 54, NO. 3, MARCH 2007
computational burden of the simplified algorithms is achieved at the cost of reduced convergence speed and increased residual noise power. We also implemented a FLANN controller with 3rd-order trigonometric function expansion and memory size 10 updated by the adjoint LMS algorithm. Similar to the results in Simula-dB residual noise tion 2, the FLANN controller results in a power, which is about 5 dB greater than adaptive Volterra filter based on the adjoint LMS algorithm. IX. CONCLUSION This paper focuses on developing computationally efficient NANC algorithms based on a functional expansion nonlinear filter, which includes the Volterra nonlinear filter [5] and the trigonometric function-based FLANN model [15]. The control algorithm structure of NANC/LSP is unified with that of NANC/NSP through our introduction of the virtual secondary path concept; we point out that by using the filtered-error structure, the computational and structural complexity can be greatly reduced for NANC with either a LSP or a NSP. Correspondingly, several efficient filtered-error algorithms for NANC/LSP and NANC/NSP based on the functional expansion nonlinear model are developed. The developed algorithms are applied to NANC with a block-oriented NSP. Our studies show that the computational complexity and implementation cost are greatly reduced when the NSP is modeled by a block-oriented nonlinear model. Furthermore, through our study of the statistical properties of our algorithms, and by exploiting their robustness, we can further reduce the computational complexity and memory requirements of a NANC that has either a “weakly” NSP or a block-oriented NSP model. Under these circumstances, the implementation cost of NANC/NSP is reduced to that of NANC/LSP, though at the cost of reduced convergence speed and an increase of residual noise power. We believe the algorithms introduced in this paper will not only have broad application in the area of ANC, but also in the area of adaptive inverse control for a nonlinear plant [19]. We have also successfully applied some of the proposed adaptive nonlinear filter techniques to develop efficient adaptive nonlinear predistorters based on a general nonlinear polynomial model for high power amplifiers (HPAs) in [28]. Our future work will concentrate on theoretical analyses of the convergence properties of the developed efficient algorithms and a detailed study of the global optimization problems of NANC/NSP. REFERENCES [1] S. M. Kuo and D. R. Morgan, Active Noise Control Systems: Algorithm and DSP Implementations. New York: Wiley, 1996. [2] S. J. Elliott, Signal Processing for Active Control. London: Academic, 2001. [3] L. Wang, “Active vibration control systems in the frequency and subband domain,” Ph.D. dissertation, School of Elect. Comp. Eng., University of Oklahoma, Norman, 2001. [4] P. Strauch and B. Mulgrew, “Active control of nonlinear noise processes in a linear duct,” IEEE Trans. Signal Process., vol. 46, no. 9, pp. 2404–2412, Sep. 1998.
[5] L. Tan and J. Jiang, “Adaptive volterra filters for active control of nonlinear noise processes,” IEEE Trans. Signal Process., vol. 49, no. 8, pp. 1667–1676, Aug. 2001. [6] S. D. Snyder and N. Tanaka, “Active control of vibration using a neural network,” IEEE Trans. Neural Netw., vol. 6, no. 4, pp. 819–828, Jul. 1995. [7] S. J. Elliott, “Active control of nonlinear systems,” Noise Contr. Eng. J., vol. 49, pp. 30–53, Jan./Feb. 2001. [8] F. J. Doyle, R. K. Pearson, and B. Ogunnaike, Identification and Control Using Volterra Models. New York: Springer Verlag, 2001. [9] A. Carini and G. L. Sicuranza, “Filtered-X affine projection algorithms for active noise control using Volterra filters,” Eurasip J. Appl. Signal Process., vol. 2004, pp. 1841–1848, Sep. 2004. [10] A. Carini and G. L. Sicuranza, “Filtered-X affine projection algorithms for a class of nonlinear multichannel active noise controllers,” in Proc. Int. Workshop on Acoust. Echo and Noise Control, 2005, pp. 9–12. [11] S. M. Kuo and H.-T. Wu, “Active noise control systems with adaptive nonlinear filters,” in Proc. IEEE Int. Conf. Contr. Appl., 2004, pp. 1330–1335. [12] M. H. Costa, J. C. M. Bermudez, and N. J. Bershad, “Stochastic analysis of the LMS algorithm with a saturation nonlinearity following the adaptive filter output,” IEEE Trans. Signal Process., vol. 49, no. 7, pp. 1370–1387, Jul. 2001. [13] M. H. Costa, J. C. M. Bermudez, and N. J. Bershad, “Stochastic analysis of the filtered-X LMS algorithm in systems with nonlinear secondary paths,” IEEE Trans. Signal Process., vol. 50, no. 6, pp. 1327–1342, Jun. 2002. [14] M. Bouchard, B. Paillard, and C. T. L. Dinh, “Improved training of neural networks for the nonlinear active control of sound and vibration,” IEEE Trans. Neural Netw., vol. 10, no. 2, pp. 391–401, Mar. 1999. [15] D. P. Das and G. Panda, “Active mitigation of nonlinear noise processes using a novel filtered-s LMS algorithm,” IEEE Trans. Speech Audio Process., vol. 12, no. 3, pp. 313–322, May 2004. [16] N. Sadegh, “A perceptron network for functional identification and control of nonlinear system,” IEEE Trans. Neural Netw., vol. 4, no. 5, pp. 982–988, Nov. 1993. [17] J. Mathews and G. L. Sicuranza, Polynomial Signal Processing. New York: Wiley, 2000. [18] G. M. Raz and B. D. Van Veen, “Baseband Volterra filters for implementing carrier-based nonlinearities,” IEEE Trans. Signal Process., vol. 46, no. 1, pp. 103–114, Jan. 1998. [19] Y. H. Lim, Y. S. Cho, I. W. Cha, and D. H. Youn, “Adaptive nonlinear prefilter for compensation of distortion in nonlinear systems,” IEEE Trans. Signal Process., vol. 46, no. 6, pp. 1726–1730, Jun. 1998. [20] B. Widrow and E. Wallach, Adaptive Inverse Control. Upper Saddle River, NJ: Prentice-Hall, 1996. [21] E. A. Wan, “Adjoint LMS: An efficient alternative to the filtered-X LMS and multiple error LMS algorithms,” in Proc. ICASSP, 1996, pp. 1842–1845. [22] S. R. Popovich, “Simplified parameter update for identification of multiple input, multiple output systems,” in Proc. Internoise, 1994, pp. 1129–1232. [23] V. DeBrunner and D. Zhou, “Hybrid filtered error LMS algorithm: Another alternative to filtered-x LMS,” IEEE Trans. Circuits Syst. I, Reg. Papers, vol. 53, no. 3, pp. 653–661, Mar. 2006. [24] A. E. Nordsjo and L. H. Zetterberg, “Identification of certain time-varying nonlinear Wiener and Hammerstein systems,” IEEE Trans. Signal Process., vol. 49, no. 3, pp. 577–592, Mar. 2001. [25] S. D. Snyder and C. H. Hansen, “Effect of transfer function estimation errors on the filtered-X LMS algorithm,” IEEE Trans. Signal Process., vol. 42, no. 4, pp. 950–953, Apr. 1994. [26] D. R. Morgan, “Analysis of multiple correlation cancellation loops with a filter in the auxiliary path,” IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-28, no. 8, pp. 454–467, Aug. 1980. [27] V. E. DeBrunner and D. Zhou, “Active noise control with weak nonlinearities in the secondary path,” in Proc. 45th MSCAS, 2002, vol. III, pp. 17–20. [28] D. Zhou and V. DeBrunner, “Novel adaptive nonlinear predistorter based on the direct learning algorithm,” IEEE Trans. Signal Process., vol. 55, no. 1, pp. 120–133, Jan. 2007.
ZHOU AND DEBRUNNER: EFFICIENT ADAPTIVE NONLINEAR FILTERS FOR NANC
Dayong Zhou (S’02–M’06) received the B.S. degree in electronic mechanical engineering from the University of Electronic Science and Technology, Chengdu, China, in 1995, and the M.S. and Ph.D. degrees in electrical engineering from the University of Oklahoma, Norman, OK, in 2001 and 2005, respectively. From 1995 to 1998, he worked as a Design Engineer and Group Leader in an institute of the Shanghai Aerospace Industry Bureau. In 1999, he worked as an Electrical Engineer at Perkin Elmer Analytical Instruments, Shanghai, China. Since May 2005, he has been a Post-Doctoral Research Associate at the Dynamic Structures Sensing and Control (DySSC) Center, University of Oklahoma. His current research interests include signal processing for wireless communication, speech signal processing, system identification, nonlinear signal processing, noise and vibration mitigation, intelligent transportation infrastructure, and structural health monitoring. Dr. Zhou has served as an active reviewer for several IEEE and other international journals. He is currently a Program Committee Member of several international conferences on signal processing and intelligent systems. He also received the Provost Dissertation Reward in 2006.
681
Victor DeBrunner (S’82–M’90–SM’00) was born in Auburn, AL, on August 21, 1962. He received the B.E.E. degree from Auburn University, Auburn, AL, in 1984 and the M.S. and Ph.D. degrees in electrical engineering from Virginia Polytechnic Institute and State University, Blacksburg, in 1986 and 1990, respectively. He moved to Florida State University, Tallahassee, in August 2006, where he serves as Professor and Department Chair at the FAMU-FSU Department of Electrical and Computer Engineering. He was at the University of Oklahoma, Norman, from 1990 to 2006, where he left as the Kerr-McGee Presidential Professor in the School of Electrical and Computer Engineering and the Director of the Dynamic Structures Sensing and Control (DySSC) Center. His research interests include signal and image processing algorithms and implementations. Dr. DeBrunner has served as an Associate Editor of the IEEE TRANSACTIONS ON SIGNAL PROCESSING and the IEEE Signal Processing Letters, and he is currently an Associate Editor for the IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS—I: REGULAR PAPERS. He is the Technical Chair of the 2006 IEEE Digital Signal Processing Workshop as well as the 2006 Asilomar Conference on Signals, Systems, and Computers, where he is also a member of the steering committee. He is the General Chair of the Asilomar Conference for 2007.