You are on page 1of 7

T h e interpretations we provided for the coefficients { KM (i), KL (i), KL (i) } in ~ e c . 42.

1,
in terms of solutions to first-order least-squares problems, can be used to motivate yet an-
other lattice implementation in array form. We discussed array methods and their advan-
tages in some detail in Chapter 33. We show here that such array methods can also be
developed for order-recursive problems.
Thus, recall that in Sec. 42.1 we introduced the angle-normalized estimation errors
and the corresponding angle-normalized error vectors
{bLf,i, &,i, &,a, bh,A
We then argued that the reflection coefficients { KM (i), KL (i), K& (i)} can be interpreted
as the solutions to three simple (regularized) projection problems, namely
K E . M( ~ ) projects TL, ~ onto bh,i
K$ (i) projects jh,a onto
/c&(i) projects bLf,i onto fh,i
That is, each of these reflection coefficients solves the problem of projecting one angle-
normalized error vector onto another. More specifically, they solve the following regular-
ized least-squares problems:
where
i j =qXMf 2 and f j =qA2
The above interpretations were used in Sec. 42.1 to show that the reflection coefficients
{ K M ( ~ ) , ~ a ( i ) , ~ &( i ) } can be time-updated by resorting to the RLS algorithm in each
case.
680
Adaptive Filters, by Ali H. Sayed
Copyright @ 2008 John Wiley & Sons, Inc.
Now in Chapter 33, we argued that least-squares solutions can also be updated in array
form, e.g., by using the QR algorithm of Sec. 35.2. The QR method can therefore be used
here to develop array methods for updating the reflection coefficients themselves.
43.1 ORDER-UPDATE OF OUTPUT ESTIMATION ERRORS
We start with the reflection coefficient K M ( ~ ) . Comparing the cost function for I C M ( ~ ) in
(43.1) with the one that appears in the statement of the QR method in Alg. 35.2 we see that
we can make the following identifications:
and
Qi
+ d* A,b . = fj-lXi+l +&(i) = A CL(i)
M, i M, z
If we now write down the QR equations of Alg. 35.2 for these new variables, we arrive at
the following statement. Define the normalized reflection coefficient
Then start with Cz2 (- 1) = d v and q M (- 1) = 0, and repeat for i 2 0. At each
iteration, find a 2 x 2 unitary matrix OM,^ that generates the zero entry in the post-array
shown below, along with a leading positive entry in the first row and a positive entry s. The
entries in the post-array would then correspond to:
where, as was the case with Alg. 35.2, the scalar quantities {s, z} can be determined from
the identities:
The first identity follows by equating the inner products of the second and third lines of the
arrays, while the second identity follows from equating the norms of the last lines of the
arrays. It is easy to see that the first expression leads to
sz* = &(i) - b h ( Z ) K M( i )
689
SECTION 43.1
ORDER-UPDATE
OF OUTPUT
ESTIMATION
ERRORS
112 1/2
whereas the second expression leads to s = yM+l ( i ) / yM (i) and, correspondingly, z =
i;C;+l(i). The array algorithm then becomes
690
CHAPTER ARRAY 43
-
LATTICE
FILTERS
(43.4)
1
0
1
If we further multiply the last rows on both sides of (43.4) by rz2( i ) we arrive at the array
equation:
This step tells us how to order-update the angle-normalized variable r h( i ) . If desired, the
reflection coefficient KM (2) can be determined from the equality
(43.6)
We now derive array methods for order-updating the angle-normalized variables { &, (i) , bhf (i) }
by applying similar arguments to the other cost functions in (43.1).
43.2 ORDER-UPDATE OF BACKWARD ESTIMATION ERRORS
Consider the reflection coefficient ~ $ ( i ) . Comparing its cost function from (43.1) with
the one that appears in the statement of the QR method in Alg. 35.2 we see that we can
make the following identifications
If we now write down the QR equations of Alg. 35.2 for these new variables, we arrive at
the following statement. Define the normalized reflection coefficient
(43.7)
Then start with CC2(-l) = d v and &(-1) = 0, and repeat for i 1 0. At each
iteration, find a 2 x 2 unitary matrix O$,i that generates the zero entry in the post-array
below, along with a positive leading entry in the first row and a positive s. The entries in
the post-array would then correspond to:
where, as was the case with Alg. 35.2, the scalar quantities {s, z} can be determined from
the identities:
The first identity follows by equating the inner products of the second and third lines of the
arrays, while the second identity follows from equating the norms of the last lines of the
arrays. It is easy to see that the first expression leads to
SZ* = bh(i) - fh(i)&(i)
whereas the second expression gives s = ~ ~ + ~ ( i ) / T $ ~ ( i ) . 112 In this way, the array algo-
rithm (43.8) becomes
If we further multiply the last rows on both sides of (43.9) by 7Z2( i ) we arrive at the array
equation:
This step tells us how to order-update the angle-normalized variable bh(i). If desired, the
reflection coefficient K& (i) can be determined from the equality
43.3 ORDER-UPDATE OF FORWARD ESTIMATION ERRORS
Finally, consider the reflection coefficient KL (i). Comparing its cost function from (43.1)
with the one that appears in the statement of the QR method in Alg. 35.2 we see that we
can make the following identifications:
691
-
SECTION 43.3
ORDER-UPDATE
OF FORWARD
ESTIMATION
ERRORS
- 692
CHAPTER 43
If we now write down the QR equations of Alg. 35.2 for these new variables, we arrive at
the following statement. Define the normalized reflection coefficient
ARRAY
LATTICE
FILTERS
(43.12)
Then~t art wi t h&~(-l ) = d-and&(-l) = 0,andrepeatfori 2 0. Ateach
iteration find a 2 x 2 unitary matrix QL,, that generates the zero entry in the post-array
below, along with a leading positive entry in the first row and a positive s. The entries in
the post-array would then correspond to:
(43.13)
where, as was the case with Alg. 35.2, the scalar quantities {s, z} can be determined from
the identities:
The first identity follows by equating the inner products of the second and third lines of the
arrays, while the second identity follows from equating the norms of the last lines of the
arrays. It is easy to see that the first expression leads to
sz* = &(i) - 6/M(i)rcR(i)
whereas the second expression gives s = 7M+l ( i ) / 7M 1/2 1/2 (i) and, consequently, z =
fLcl(i). In this way, the array algorithm (43.13) becomes
If we further multiply the last rows on both sides of (43.14) by 7 z 2 ( i ) we arrive at the
array equation:
693
This step tells us how to order-update the angle-normalized variable &(i). If desired, the
-
SECTION 43.4
SlGNfFlCANCE
OF DATA
STRUCTURE
reflection coefficient &, (i) can be determined from the equality
(43.16)
43.4 SIGNIFICANCE OF DATA STRUCTURE
As we already know, when the successive regressors have shift structure it holds that
b M( i ) = b M( i - l), 6/M(i) = b/M(i - l), ? M( i ) = Y M ( i - l), &(i) = &( Z - 1)
and we are led to the array-based lattice algorithm, also known as the QRD-based lattice
filter - see Fig. 43.1; the qualification QRD-based is used to indicate that the array
recursions correspond to QR decompositions of the corresponding pre-arrays (recall the
third remark following the statement of Alg. 35.1).
For comparison purposes, Table 43.1 lists the estimated computational cost per itera-
tion for the various lattice filters derived in this chapter assuming real data. The costs are
in terms of the number of multiplications, additions, divisions, and square-roots that are
needed for each iteration. It is seen that lattice filters generally require O(20M) operations
per iteration.
. . .
. . .
FlOURE 43.1 The QRD-based lattice filter.
694
-
CHAPTER 43
ARRAY
LATICE
FILTERS
Algorithm 43.1 (Array lattice filter) Consider again the same setting of
Alg. 42.2. For each i 2 0, the M- t h order a posteriori estimation error,
r ~ ( i ) = d ( i ) - u ~ , i t u ~ , i , that results from the solution of the regularized
least-squares problem
min
W M
can be computed as follows:
1. Initialization. From m = 0 t o m = M - 1 set:
Ciyy-1) = JV, c2y-q = d-
qm(-l ) = o, q i ( - 1 ) = o, q&( - l ) = o, bm( - l ) = o
2. For i 2 0, repeat:
Set ~ ; / ~ ( i ) = 1, bb(i) = &(i) = u( i ) , and rb(i) = d( i )
For m = 0 t o m = M - 1, apply 2 x 2 unitary rotations
f
Om,i, and Oh,i, with positive (2,2) entries, in order t o annihilate
the (1,2) entries of the post-arrays below:
and set rm+l(i) = ~k+~(i)~~+~(i). 1/2
[ bk+l(i) O I
TABLE 43.1 Estimated computational cost per iteration for various lattice filters.

You might also like