Algorithm for the Adaptive Infinite Impulse Response Filter

Information

  • Patent Application
  • 20100299381
  • Publication Number
    20100299381
  • Date Filed
    May 20, 2010
    15 years ago
  • Date Published
    November 25, 2010
    14 years ago
Abstract
A new method to adjust the parameters of an adaptive Infinite Impulse Response (IIR) filter is suggested. The method adjusts the set of parameters of the pole polynomial of the filter. The parameters of the zero polynomial are calculated from the parameters of the pole polynomial. For efficiency, the pole polynomial is factored into a product of polynomials with at most quadratic order. To guarantee that the global minimum is achieved all the time, the algorithm ascertains that the new set of pole parameters gives smaller variance of the error than the set of pole parameters of the last adaptation time and the algorithm starts with the set of parameters that gives the global minimum.
Description
FIELD OF THE INVENTION

This invention relates to the adaptation of an adaptive Infinite Impulse Response (IIR) filter for system applications. The invention presents an algorithm to adjust the parameters of an adaptive IIR filter. The filter has two set of parameters. The algorithm adjusts them separately.


BACKGROUND OF THE INVENTION

The art of adjusting the parameters of a model of a linear system on line and in real time is possible only with the advent of a digital computer or a computer chip. This fact makes the discrete controller and filter more popular than their continuous counterparts. For a discrete or digital filter, the IIR filter is the preferred filter because it has an infinite impulse response. It is, however, difficult to adapt its parameters because it has a rational transfer function. This fact spawns research for the best adaptive algorithm for its industrial applications.


There are a number of algorithms suggested for the adaptive IIR filter. In the academic circle, we see the Instrumental Variable (IV) algorithm and some algorithms borrowed from the adaptive FIR filter like Least Squares (LS), Least Mean Squares (LMS) and Recursive Least Squares (RLS). These methods are called equation error methods. The gradient descent algorithms are output error methods because they minimize the sum of squares of the output errors. The method worths mentioning is the hybrid method of equation and output error methods. This method establishes algorithms called the Steiglitz-McBride algorithms. Many of these algorithms are discussed in the handbook: Digital Signal Processing Handbook, CRCnetBase 1999.


In the Canadian patent data base, we see the patent CA2074782 of NEC Corporation with the title “Method of and Apparatus for Identifying Unknown System Using Adaptive Filter”. The method of adaptation of this patent is LMS. The patent CA2318929 of Nortel Networks Limited with the title “Stable Adaptive Filter and Method” relates to an IIR filter more than an FIR filter because of the concern for stability. The method of adaptation is Normalized Least Mean Squares (NLMS). The patent was applied through PCT with the PCT filing number PCT/CA1999/001068.


Most of the adaptive algorithms have a weakness and that is they adapt the zero and pole parameters together. This weakness cannot be improved. The algorithm of this invention uses the concept of the self-adjusting control algorithms of AuLac Technologies Inc., (“Methods and Devices for the Discrete Self-adjusting Controllers”, Canadian patent application number 2,656,235), which adapts the two set of parameters separately and one calculates from the other. This invention, however, improves the adaptation by factoring the pole polynomial and assures a global minimal variance of the error at each adaptation time.


SUMMARY OF THE INVENTION

It is the object of this invention to introduce an effective algorithm to adjust the parameters of an adaptive IIR filter. The algorithm gives minimal variance of the output error.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1. Block diagram of an adaptive IIR filter in system identification configuration.





DESCRIPTION OF THE PREFERRED EMBODIMENT

This invention presents a new algorithm for the adaptation of the parameters of an adaptive IIR filter by factoring the pole polynomial and adapt the parameters of this factored polynomial by the steepest descent method. The parameters of the zero polynomial are calculated from the parameters of the pole polynomial. In the following text, we will discuss the method of adaptation of the parameters of an adaptive IIR filter of the invention.


Method

Consider the system depicted by the block diagram of FIG. 1. The system is an adaptive IIR filter system and is described by the equation











y
t

=




a


(

z

-
1


)



c


(

z

-
1


)





x

t
-
f



+

e
t



,






=







i
=
0

m








a
i



z

-
i





1
+




i
=
1

n








c
i



z

-
i








x

t
-
f



+


e
t

.









The sum of squares of the error et is given by







S
N

=


















(


y
t

-






i
=
0

m








a
i



z

-
i





1
+




i
=
1

n








c
i



z

-
i








x

t
-
f




)

2

.






By taking the derivatives of SN with respect to the parameters ai's and setting them to zeros, we get














S
N





a
i



=
0

,







=


-
2



















(


y
t

-






i
=
0

m









a
^

i



z

-
i





1
+




i
=
1

n








c
i



z

-
i








x

t
-
f




)



(


x

t
-
f
-
i



1
+




i
=
1

n








c
i



z

-
i






)





,







i
=
0

,








m
.









The last equation tells an engineer that the parameters âi's, optimal values of ai's, should be calculated from not together with the optimal values of the parameters ci's. This fact leads to the main point of this invention.


To calculate the optimal value of the step length parameter μ for the steepest descent method from the equation






c(z−1)=1+(c1−μg(c1))z−1+ . . . +(cn−μg(cn))z−n,


an adaptive algorithm has to ascertain that the optimal value of μ will not make the polynomial c(z−1) unstable: This is a task, which is not impossible but complicated. This invention then suggests that the polynomial c(z−1) is factored with the step length parameter μ as below







c


(

z

-
1


)


=


[

1
+


(


b
0

-

μ






g


(

b
0

)




)



z

-
1




]






j
=
1

l




[




1
+


(


b

1
,
j


-

μ






g


(

b

1
,
j


)




)



z

-
1



+







(


b

2
,
j


-

μ






g


(

b

2
,
j


)




)



z

-
2






]

.







Analysis for stability can be readily determined from this form. This form will increase the order of μ in the equation of the derivative of the sum of squares SN with respect to μ. Since the adaptive algorithm needs to calculate only the largest positive value of μ, the suggestion has a strong argument. Furthermore, if the degree is increased, more values of μ can satisfy the equation. The descent will be steeper, and this fact leads to a faster convergence to the optimal values of the pole polynomial parameters.


The global minimum of SN is still an unresolved problem of an adaptive IIR filter. If the zero polynomial parameters are calculated from the pole polynomial parameters, SN will be a quantity of only n pole polynomial parameters. Since N and n are finite numbers, there will be a finite number of extrema for SN. It is, therefore, possible to determine the exact global minimum of SN if all the extrema are known. Consider the case of two pole parameters, we can write






g
0
+g
1
ĉ
1
+g
2
ĉ
2
+g
12
ĉ
1
ĉ
2
+g
11
ĉ
1
2
+g
22
ĉ
2
2=0,






h
0
+h
1
ĉ
1
+h
2
ĉ
2
+h
12
ĉ
1
ĉ
2
+h
11
ĉ
1
2
+h
22
ĉ
2
2=0.


The first equation can be the result of taking the derivative of SN with respect to c1; the second equation, with respect to c2. We will know all the extrema of SN if we have all the values of the pair (ĉ1, ĉ2) that satisfy the last two equations. To accomplish this task, this invention suggests a method that eliminates ĉ2 out of the two equations as follows. We write









[




(





g
0

+








g
1




c
^

1


+







g
11




c
^

1
2





)




(


g
2

+


g
12




c
^

1



)




g
22



0




0



(





g
0

+








g
1




c
^

1


+







g
11




c
^

1
2





)




(


g
2

+


g
12




c
^

1



)




g
22






(





h
0

+








h
1




c
^

1


+







h
11




c
^

1
2





)




(


h
2

+


h
12




c
^

1



)




h
22



0




0



(





h
0

+








h
1




c
^

1


+







h
11




c
^

1
2





)




(


h
2

+


h
12




c
^

1



)




h
22




]



[



1






c
^

2







c
^

2
2







c
^

2
3




]


=
0

,




then obtain all the optimal values ĉ1's that satisfy the equation













(





g
0

+








g
1




c
^

1


+







g
11




c
^

1
2





)




(


g
2

+


g
12




c
^

1



)




g
22



0




0



(





g
0

+








g
1




c
^

1


+







g
11




c
^

1
2





)




(


g
2

+


g
12




c
^

1



)




g
22






(





h
0

+








h
1




c
^

1


+







h
11




c
^

1
2





)




(


h
2

+


h
12




c
^

1



)




h
22



0




0



(





h
0

+








h
1




c
^

1


+







h
11




c
^

1
2





)




(


h
2

+


h
12




c
^

1



)




h
22






=
0

,




which is a polynomial equation in ĉ1. By putting these values in the two original equations, we can obtain all the optimal values ĉ2's. All the extremal values of SN will be known, and we can determine the value of the pair (ĉ1, ĉ2) that gives the minimal value of SN. The same procedure can be followed when c(z−1) has more than two parameters. At each time of adaptation, the algorithm can determine the exact global minimum in this manner. However, since more data means higher orders for the parameters, the algorithm can determine the global minimum with less data then successively adjust the parameters with new data. This establishes the adaptive algorithm with assured global minimum.


Adaptation with a forgetting factor 0<λ≦1 can be carried out in the same manner by searching for the global minimum of







S
N

=



t
N










λ

N
-
t


(


y
t

-






i
=
0

m








a
i



z

-
i





1
+




i
=
1

n








c
i



z

-
i








x

t
-
f




)

2

.






INDUSTRIAL APPLICATIONS

The adaptive IIR filter has so many industrial applications that prompts researchers to work on algorithms to perfect the on-line adaptation of its parameters. Its applications include linear prediction, adaptive notch filtering, adaptive differential pulse code modulation, channel equalization, echo cancellation and adaptive array processing. These applications are so well known that it is not necessary to provide an industrial example to prove the usefulness of the invention.


IMPLEMENTATION

Implementation of the adaptive IIR filter usually takes the form of a digital chip, notably the DSP (digital signal processor). A DSP is a special microprocessor with some special instructions for efficiency. For most applications, however, the adaptive IIR filter can be materialized with a microcontroller and the software can be either in assembly language or C. The following code in Matlab language of The MathWorks, Inc., which can be converted to C and downloaded into a microcontroller, is part of the software used to test the adaptive algorithm.














%


% Define the necessary parameters and variables here


%


...


%


% Then start the algorithm


%


[c]=getInitialValuesC(yt,xt,lambda);


for t=startTime:endTime









[yN,XN,C1,C2,Lambda1,Lambda2]=setupMatrices(c,yt,xt,lambda);



[g,b]=getGradients(yN,XN,c,C1,C2,Lambda1,Lambda2);



[b]=getNewFactoredPoles(g,b);



[c]=getPoleParameters(b);



[a]=getZeroParameters(yN,XN,C1,C2,Lambda1,Lambda2);







end;








Claims
  • 1. A method to design and set up variables for the adaptive IIR filter with the following transfer function:
  • 2. A method to obtain the two real-valued parameters of a positive polynomial function ƒ(c1, c2) of these parameters that give the minimal value for the function, which consists of the following steps: (a) setting the derivatives of ƒ(c1, c2) with respect to the parameters to zeros to produce two polynomial equations in two parameters:
  • 3. A method to obtain the n real-valued parameters of a positive polynomial function ƒ(c) of these parameters that give the minimal value for the function, which consists of the following steps: (a) setting the derivatives of ƒ(c) with respect to the parameters to zeros to produce n polynomial equations in n parameters:
  • 4. A method to adapt the parameters, at the adaptation time N, of an adaptive IIR filter with the transfer function
  • 5. A method to adapt the parameters, at the adaptation time N, of an adaptive IIR filter with the transfer function
Priority Claims (1)
Number Date Country Kind
CA2666292 May 2009 CA national