<< Chapter < Page Chapter >> Page >

The algorithm described above is an interpolation method rather than an approximation one. If L > N + M + 1 and H ^ 2 is full column rank then [link] is an overdetermined linear system for which no exact solution exists; therefore an approximation must be found. From [link] we can define the solution error function E s ( ω k ) as

E s ( ω k ) = B ( ω k ) A ( ω k ) - H ( ω k )

Using this notation, the design objective is to solve the nonlinear problem

min a , b E s ( ω k ) 2 2

Consider the system in equation [link] . If H 2 is overdetermined, one can define an approximation problem by introducing an error vector e ,

b ^ = H a ˜ - e

where

e = e 1 e 2

Again, it is possible to uncouple [link] as follows,

b = H 1 a ˜ - e 1 e 2 = h ^ 2 + H ^ 2 a

One can minimize the least-squared error norm e 2 2 of the overdetermined system [link] by solving the normal equations [link]

H ^ 2 T h ^ 2 = - H ^ 2 T H ^ 2 a

so that

a = - [ H ^ 2 T H ^ 2 ] - 1 H ^ 2 T h ^ 2

and use this result in [link]

b = H 1 a ˜

[link] represents the following time-domain operation,

ε ( n ) = b ( n ) - h ( n ) L a ( n ) ^ 0 n M

(where L denotes circular convolution ) and can be interpreted in the frequency domain as follows,

E e ( ω k ) = B ( ω k ) - H ( ω k ) A ( ω k )

Equation [link] is a weighted version of [link] , as follows

E e ( ω k ) = A ( ω k ) E s ( ω k )

Therefore the algorithm presented above will find the filter coefficient vectors a and b that minimize the equation error E e in [link] in the least-squares sense. Unfortunately, this error is not what one may want to optimize, since it is a weighted version of the solution error E s .

Iterative prefiltering linearization methods

[link] introduced the equation error formulation and several algorithms that minimize it. In a general sense however one is more interested in minimizing the solution error problem from [link] . This section presents several algorithms that attempt to minimize the solution error formulation from [link] by prefiltering the desired response D ( ω ) in [link] with A ( ω ) . Then a new set of coefficients { a n , b n } are found with an equation error formulation and the prefiltering step is repeated, hence defining an iterative procedure.

Sanathanan-koerner ( SK ) method

The method by Levy presented in [link] suggests a relatively easy-to-implement approach to the problem of rational approximation. While interesting in itself, the equation error ε e does not really represent what in principle one would like to minimize. A natural extension to Levy's method is the one proposed [link] by C. K. Sanathanan and J. Koerner in 1963. The algorithm iteratively prefilters the equation error formulation of Levy with an estimate of A ( ω ) . The SK method considers the solution error function E s defined by

E s ( ω ) = D ( ω ) - B ( ω ) A ( ω ) = 1 A ( ω ) A ( ω ) D ( ω ) - B ( ω ) = 1 A ( ω ) E e ( ω )

Then the solution error problem can be written as

min a k , b k ε s

where

ε s = k = 0 L | E s ( ω k ) | 2 = k = 0 L 1 | A ( ω ) | 2 | E e ( ω k ) | 2 = W ( ω ) | E e ( ω k ) | 2

Note that given A ( ω ) , one can obtain an estimate for B ( ω ) by minimizing E e as Levy did. This approach provides an estimate, though, because one would need to know the optimal value of A ( ω ) to truly optimize for B ( ω ) . The idea behind this method is that by solving iteratively for A ( ω ) and B ( ω ) the algorithm would eventually converge to the solution of the desired solution error problem defined by [link] . Since A ( ω ) is not known from the beginning, it must be initialized with a reasonable value (such as A ( ω k ) = 1 ).

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Iterative design of l_p digital filters. OpenStax CNX. Dec 07, 2011 Download for free at http://cnx.org/content/col11383/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Iterative design of l_p digital filters' conversation and receive update notifications?

Ask