You are on page 1of 4

Minimax Design of IIR Digital Filters Using SDP

Relaxation Technique
Aimin Jiang and Hon Keung Kwan
Department of Electrical and Computer Engineering
University of Windsor
401 Sunset Avenue, Windsor, Ontario, Canada N9B 3P4
Emails: jiang13@uwindsor.ca, kwan1@uwindsor.ca
AbstractIn this paper, a new iterative algorithm is proposed to
design IIR digital filters in the minimax sense. Instead of
directly minimizing the error limit of the approximation error,
the proposed algorithm employs a bisection searching procedure
to locate the minimum error limit. At each iteration, a feasibility
problem with a given error limit is to be solved, which is
constructed by applying the semidefinite programming (SDP)
relaxation technique to transform the nonconvex approximation
error into a convex form. In practice, however, the truly
minimax solution cannot be always obtained by using this
iterative procedure. Therefore, a regularization term needs to be
incorporated in the objective of the feasibility problem at each
iteration. Another bisection searching procedure is then
deployed to find the minimum weight utilized in the regularized
objective function of the feasibility problem. The stability of
designed filters can be guaranteed by a monitoring strategy,
which does not need to incorporate any other constraint to the
formulation of the feasibility problem. The convergence of the
proposed method can be guaranteed. The performances have
been demonstrated by filter examples.

I.
INTRODUCTION
IIR digital filter design faces more challenges than FIR
filter design due to the existence of denominator in its transfer
functions. Recently, a number of algorithms [1]-[7] have been
proposed to design IIR filters under the minimax criterion.
The most prevalent design strategy is to employ iterative
procedures to gradually approach the optimal designs. An
iterative method using the second-order cone programming
(SOCP) relaxation is proposed in [1], where the nonconvex
approximation error is relaxed into a convex form. Then an
iterative procedure is employed to gradually reduce the
discrepancy between the original and relaxed design problems.
The Steiglitz-McBride (SM) scheme [8] is utilized by the
iterative design algorithms proposed in [2], [4] to design IIR
filters under different optimal criteria. At each iteration, the
denominator part of the approximation error is replaced by the
counterpart obtained at the previous iteration. Then, the
approximation error can be expressed as a quadratic function
of filter coefficients. In [5], the frequency response of the IIR
filter at each iteration is approximated by its first-order Taylor
series expansion in terms of denominator coefficients. Using
the linearized frequency response, the descent direction for the

978-1-4244-3828-0/09/$25.00 2009 IEEE

denominator can be first determined. Then, the best numerator


to the updated denominator can be computed and taken into
the next iteration. In [3] and [7], another iterative strategy is
based on a sufficient condition for the optimal rational
approximation, which states that the approximation error has a
specific number of extremal points over the frequency bands
of interest. The Remez multiple exchange algorithm is
adopted to identify these extremal points. In this paper, a
semidefinite programming (SDP) relaxation method is to be
developed. Instead of directly minimizing the error limit of the
approximation error, the algorithm proposed in this paper tries
to locate the minimum error limit and find a corresponding
feasible solution using the bisection searching procedure.
The paper is organized as follows. The original design
problem is introduced in Section II-A. Then, the iterative
scheme using the SDP relaxation technique is presented in
Sections II-B and II-C. The trace heuristic approximation is
described in Section II-D. Finally, the stability issue is
addressed in Section II-E. Two examples and conclusions are
given in Sections III and IV, respectively.
II.

MINIMAX DESIGN OF IIR DIGITAL FILTER

A.

Problem Formulation
Let D() denote the ideal frequency response over [0, ],
and H(z) be the transfer function of an IIR digital filter with
real coefficients, i.e.,
N

P( z )
=
H ( z) =
Q( z )

p z
n

n =0
M

1 + qm z

pT N ( z )
1 + qT M ( z )

(1)

m =1

where p = [p0, p1, , pN]T, q = [q1, q2, , qM]T, N = [1, z-1, ,


z-N]T, and M = [z-1, z-2, , z-M]T. Let the (weighted) complex
approximation error E() be defined by
(2)
E ( ) = W ( ) D ( ) H (e j ) , I

where I denotes frequency bands of interest, and W()0 is a


given weighting function. Our design task can be expressed as
(3)
min
2
s.t. E ( ) , I
(3.a)

477

There is an implicit constraint on q, that is, for stability all the


poles of Q(z) should lie inside the unit circle. For clarity, the
design algorithm is first to be presented without any stability
constraint. At the end of this section, the stability issue will
then be addressed.
B. Iterative Scheme
Instead of directly solving the design problem (3), a
bisection searching procedure is adopted to locate the
minimum error limit * of |E()|2. The iterative scheme is
shown below:
1) Given the design specifications, set k = 0, and then
estimate the upper bound +(0) and lower bound -(0) for *.
2) Set k = k + 1, and choose (k) = [+(k-1)-(k-1)]1/2. Then, solve
a feasibility problem, in which (3.a) is recast in a convex
form by using the fixed error limit (k). If a feasible
solution is found, set +(k) = (k) and -(k) = -(k-1); Otherwise,
-(k) = (k) and +(k) = +(k-1). The formulation of the
feasibility problem will be presented later.
3) If the following condition is satisfied,
+( k ) ( k )
min
( k )

qqT
X = xx T = T
pq

W (i ) D(i )Q (e ji ) P (e ji )

2
= W 2 (i ) D(i ) + 2 Re { D (i )c H (i )} x + x T A(i ) x

( k ) Q (e ji )

= ( k ) 1 + 2 Re MH (e ji ) q + qT B (i )q

(6)

(7)

(k )
2
1 + 2 Re {MH (e j )} q + Tr { X q B (i )}
W (i )

(8)

where Tr{} denotes the trace of a square matrix. Now, (3.a) is


transformed into a linear inequality constraint with respect to
the entries of x and X. However, the matrix equality constraint
(7) is still nonconvex. In order to overcome this obstacle, we
relax it as X xxT. Here, the relation A B between two
symmetric matrices A and B means AB is a positive
semidefinite (PSD) matrix. The relaxed constraint X xxT is
equivalent to
1
Z =
x

xT
0
X

(9)

By introducing an auxiliary variable z into (8), the


feasibility problem can be cast as
(10)
min z
2
H
s.t.
D(i ) + 2 Re { D(i )c (i )} x + Tr { XA(i )}
(k )
1 + 2 Re {MH (e j )} q + Tr { X q B(i )} + z
W 2 (i )
i I , i = 0,1,", L
1 xT
Z=
0
x X
X q X q, p
q
where X = T
and x =

p
X q, p X p

Here |x| denotes the largest integer less than or equal to x.

C. Feasibility Problem Using SDP Relaxation Technique


For convenience, the constraint (3.a) is imposed on a set of
frequency grid points, i.e., i I for i = 1, 2, , L. Given the
error limit (k) at the kth iteration, by multiplying |Q(ej)|2 on
both sides of (3.a), we have

X q, p
X p

D(i ) + 2 Re { D(i )c H (i )} x + Tr { XA(i )}

(5)

2. Normally, +(0) and -(0) can be arbitrarily selected as long


as the condition 0 < -(0) * +(0) is satisfied. As an
attempt to obtain +(0) closer to *, we firstly utilize the LP
method [6] to design an IIR filter under the same
specifications. Then, +(0) can be chosen as the maximum
value of |E()|2 over I for the obtained filter. In order to
achieve a reasonable lower bound -(0) for *, the SOCP
relaxation technique employed in [1] can be applied to
formulate a relaxed design problem. Since the feasible set
defined by the relaxed constraint is larger than that of
(3.a), we always have *rel *, where *rel denotes the
optimal value of the relaxed design problem. Then, *rel
can be chosen as -(0).

qpT X q
= T
ppT X q , p

the constraint (6) can be rewritten in a matrix form as

(4)

where min > 0 is a prescribed small number, then terminate


the iterative procedure; Otherwise, go to Step 2.
Some remarks to the iterative procedure are made here:
1. Let To denote the estimated total number of iterations.
Then, it can be verified that

log (0) log10 (0)


+1
To log 2 10 +
log (1 + )
10
min

where xT = [qT, pT], cT() = [D()MT(ej), NT(ej)], A() =


c()cH(), and B() = M(ej)MH(ej). In (6), Re{} denotes
the real part of a complex variable. By introducing a
symmetric matrix

(10.a)

(10.b)

For a given (k), if there exists a feasible solution under the


constraints (7) and (8), the problem (10) also has a feasible
solution and, accordingly, the minimum value of z should be
less than or equal to 0. On the contrary, if the minimum value
of z for (10) is larger than 0, which means (8) and (10.b)
cannot be satisfied simultaneously. Since (10.b) defines a
larger feasible set than (7), it follows that there is no feasible
solution satisfying (7) and (8).
D. Trace Heuristic Approximation
Note that if the rank of Z is constrained equal to 1, (10.b)
is equivalent to (7). However, the rank constraint is generally
nonconvex. Here, we employ a trace heuristic method [9] to
approximate the design problem with the rank constraint. The
idea behind this approximation method is to incorporate a
regularization term Tr{Z} = ii(Z) into the objective of (10),
where i(Z) (i = 1, 2, , N+M+2) denote the eigenvalues of Z.
Without loss of generalization, we can assume that i(Z) are
arranged in a non-ascending order, i.e., 1(Z) 2(Z)
N+M+2(Z). Since Z is PSD, Tr{Z} is also equal to ||(Z)||1 =
i|i(Z)| = ii(Z), where (Z) = [1(Z), , N+M+2(Z)]T, and
||||1 denotes l1-norm of a vector. By incorporating ||(Z)||1 into

478

the objective of (10), the final (Z) tends to be a sparse vector.


Thus, minimizing Tr{Z} renders many of the eigenvalues of Z
as zeros, resulting in a low-rank matrix.
The regularization term Tr{Z} is linearly combined with z.
The objective function of (10) is then modified as Tr{Z}+(1
)z where 0 1. The weight should be chosen as small
as possible so as to best approximate (10). In order to
determine the minimum value of , another bisection
searching procedure is introduced. Note that for the complete
algorithm, there are two nested bisection searching
procedures. For clarity, in the following, we use l to represent
the iteration number of the inner bisection searching
procedure, while k for the outer iterative procedure.
Accordingly, z, , and Z in the regularized (10) are replaced
by z(k,l), (k,l), and Z(k,l) at the iteration step (k, l), respectively.
The iterative scheme of the inner bisection searching
procedure is shown below:
1) Given (k), set l = 0, and choose the initial upper bound
+(k,0) and lower bound -(k,0), respectively.
2) Set l = l + 1, and choose (k,l) = [+(k,l-1)-(k,l-1)]1/2. Using (k)
and (k,l), solve the regularized (10). If 2(Z(k,l)) < , set
+(k,l) = (k,l) and -(k,l) = -(k,l-1); Otherwise, -(k,l) = (k,l) and
+(k,l) = +(k,l-1).
3) If the predetermined accuracy of locating the minimum
value of is satisfied, terminate the inner iterative
procedure; Otherwise, go to Step 2 and continue.
Some remarks regarding the inner iterative procedure are
made here:
1. In practical designs, we use 2(Z(k,l)) < to replace the
condition that the rank of Z(k,l) is equal to 1. Here, > 0 is a
given small number.
2. At the kth outer iteration, (10) should be first solved. Let
Z(k,0) denote the corresponding solution. The inner
bisection searching procedure will be triggered only if
2(Z(k,0)) .
3. In general, +(k,0) and -(k,0) can be arbitrarily chosen as long
as 0 < -(k,0) +(k,0) 1 is satisfied. In our designs, the
initial upper and lower bounds of at the kth outer
iteration (k > 1) are chosen as
(11)
+( k ,0) = +( k 1,T ( k 1)) , k = 2,3,"
( k ,0)
1 ( k 1,T ( k 1))
(12)
=
, k = 2,3,"
i

where 1, and Ti(k) (k = 1, 2, , To) denotes the total


number of the inner iterations at the kth outer iteration. At
the first outer iteration, +(1,0) and -(1,0) are specified by
designers. Since there is no enough prior information to
determine +(1,0) and -(1,0), normally +(1,0) and -(1,0) can be
chosen close to 1 and 0, respectively.
4. The convergence of the inner iterative procedure can be
guaranteed, and Ti(k) can be estimated in a similar manner
as (5).
E. Stability Issue
The stability of designed filters can be guaranteed by a
monitoring strategy, which does not need to incorporate any
other constraint to the regularized (10). The idea behind the
strategy is based on the observation that by suppressing the
energy of impulse responses of the denominator polynomial,

Figure 1. Design results of Example 1. Solid curves: designed by the


proposed method; Dashed curves: designed by the SM method [2].
TABLE I.
Method
Proposed
SM [2]

MEASUREMENTS OF DESIGN RESULTS IN EXAMPLE 1


Stopband MAG Minimax
Passband (Peak/ L2)
(Peak/ L2 in dB)
MAG (in dB)
GD
Error
-45.802/
2.785e-1/
-45.661/
5.269e-3
-55.159
2.538e-2
-50.430
-45.998/
2.933e-1/
-44.807/
5.747e-3
-54.561
2.604e-2
-50.543

we can force the poles to move towards the origin. As the rank
2
of Z is equal to 1, Tr{Xq} = ||q||2. Therefore, we can suppress
the energy of impulse responses of the denominator
polynomial by reducing Tr{Xq}, which can be achieved by
increasing used in the regularized (10). In order to
appropriately select , we also resort to the inner bisection
searching procedure. Suppose that the admissible maximum
pole radius is denoted by max 1. In Step 2 of the inner
bisection searching procedure, after solving the regularized
(10), besides 2(Z(k,l)) we also need to check the maximum
pole radius of the obtained filter, which is denoted by (q(k,l)).
If 2(Z(k,l)) < and (q(k,l)) max, then set +(k,l) = (k,l) and -(k,l)
= -(k,l-1); Otherwise, -(k,l) = (k,l) and +(k,l) = +(k,l-1). Similarly,
at each outer iteration, we need to check 2(Z(k,0)) and (q(k,0))
after solving (10) in order to determine whether the inner
iterative procedure is to be invoked.
III. SIMULATIONS
Two examples are presented in this section to demonstrate
the effectiveness of the proposed method. For all the designs,
the parameters and min are chosen as 510-2 and 10-3. The
initial upper and lower bounds of at the first outer iteration
are set equal to 10-1 and 10-9, respectively. At the succeeding
outer iterations, we choose = 2 in (11)-(12) to determine
+(k,0) and -(k,0). The weighting function is always set equal to
1 over I, and 0 otherwise. Besides the peak and L2 errors of
the magnitude (MAG) and group delay (GD) responses over
I, the following (weighted) minimax error is also adopted to
evaluate the performances:
(13)
eMM = max E()
I

In our designs, all the SDP problems are solved by the


SeDuMi [10] in MATLAB environment. For comparison, the
SM design method [2] is employed to design IIR filters under

479

the same specifications. The iterative procedure of the SM


method starts from the optimal FIR filter design.
The first example is to design a lowpass digital filter [11]
with the following ideal frequency response
e j12
D( ) =
0

0 0.4
0.56 <

Filter orders are chosen as N = 15 and M = 4. The design


results are shown in Fig. 1. The maximum pole radius of the
obtained IIR filter is 0.8588. Simulation result reveals that in
this design the inner bisection searching procedure is never
invoked during the outer iterative procedure, which means the
rank and stability requirements can be always satisfied under
the relaxed constraint (10.b). The design results of the SM
method are also given in Fig. 1 as dashed lines. The maximum
pole radius of the obtained filter is 0.8622. All the error
measurements are summarized in Table I. Obviously, the
proposed method can achieve lower eMM.
The second example is to design a halfband highpass filter
[12]. The ideal frequency responses are given by
e j12
D( ) =
0

Figure 2. Design results of Example 2. Solid curves: designed by the


proposed method; Dashed curves: designed by the SM method [2].
TABLE II.
Method

0.525 <

Proposed

0 0.475

The filter orders are chosen as M = N = 14. In order to


illustrate the effectiveness of the monitoring strategy described
in Section II-E, we choose max = 0.98. The design results are
presented in Fig. 2. The maximum pole radius of the designed
filter is 0.9799. Simulation result reveals that the minimum
value of determined by each inner iterative procedure is
within the range of [1.36710-7, 2.34510-7]. The design
results of the SM method are also shown in Fig. 2. The
maximum pole radius of the obtained filter is 0.9346. In both
designs, there is no constraint imposed on the transition band.
All the error measurements are summarized in Table II.
Apparently, the proposed method can achieve much better
performances than the SM method.
IV. CONCLUSIONS
In this paper, a new IIR filter design algorithm in the
minimax sense has been presented. The bisection searching
procedure is deployed to locate the minimum error limit of
|E()|2. At each iteration, a feasibility problem with the fixed
error limit is constructed using the SDP relaxation technique.
In practice, a regularization term needs to be incorporated
into the objective function of the feasibility problem
formulated in (10) to attain a truly minimax solution. The
minimum weight can be determined by another bisection
searching procedure nested in the outer iterative procedure.
The stability of designed filters can be guaranteed by using
the monitoring strategy.
Simulation results reveal that in some situations we can
obtain satisfactory designs by successively solving the
feasibility problem without the regularization term. However,
in other designs, the regularization term is required. By
utilizing the inner bisection searching procedure, we can find
the minimum value of , which can lead to a truly minimax
design.

SM [2]

MEASUREMENTS OF DESIGN RESULTS IN EXAMPLE 2


Stopband MAG Minimax
Passband (Peak/ L2)
(Peak/ L2 in dB)
Error
MAG (in dB)
GD
-30.805/
1.818/
-30.664/
2.933e-2
-38.934
1.690e-1
-34.980
-25.333/
4.062/
-25.051/
6.140e-2
-32.497
4.030e-1
-29.538

REFERENCES
[1]

A. Jiang and H. K. Kwan, Minimax IIR digital filter design using


SOCP, in Proc. IEEE Int. Symp. on Circuits and Systems, Seattle,
USA, May 2008, pp. 2454-2457.
[2] C. Tseng and S. Lee, Minimax design of stable IIR digital filter with
prescribed magnitude and phase responses, IEEE Trans. Circuits Syst.
I, vol. 49, pp. 547-551, Apr. 2002.
[3] X. Zhang, K. Suzuki, and T. Yoshikawa, Complex Chebyshev
approximation for IIR digital filters based on eigenvalue problem,
IEEE Trans. Circuits Syst. II, vol. 47, pp. 1429-1436, Dec. 2000.
[4] W.-S. Lu, Design of stable minimax IIR digital filters using
semidefinite programming, in Proc. IEEE Int. Symp. on Circuits and
Systems, Geneva, Switzerland, May 2000, pp. 355-358.
[5] X. Chen and T. W. Parks, Design of IIR filters in the complex
domain, IEEE Trans. Acoust., Speech, Signal Processing, vol. 38, pp.
910-920, Jun. 1990.
[6] A. T. Chottera and G. A. Jullien, A linear programming approach to
recursive filter design with linear phase, IEEE Trans. Circuits Syst.,
vol. CAS-29, pp. 139-149, Mar. 1982.
[7] A. G. Deczky, Equiripple and minimax (Chebyshev) approximations
for recursive digital filters, IEEE Trans. Acoust., Speech, Signal
Processing, vol. ASSP-22, pp. 98-111, Apr. 1974.
[8] K. E. Steiglitz and L. E. McBride, A technique for the identification of
linear systems, IEEE Trans. Automat. Contr., vol. AC-10, pp. 461-464,
Oct. 1965.
[9] M. Fazel, H. Hindi, and S. Boyd, Rank minimization and applications
in system theory, in Proc. American control conference, Boston, USA,
Jul. 2004, pp. 3273-3278.
[10] J. F. Sturm, Using SeDuMi 1.02, a MATLAB toolbox for optimization
over symmetric cones, Optim. Meth. Softw., vol. 11-12, pp. 625-653,
1999.
[11] M. C. Lang, Least-squares design of IIR filters with prescribed
magnitude and phase responses and a pole radius constraint, IEEE
Trans. Signal Processing, vol. 48, pp. 3109-3121, Nov. 2000.
[12] W.-S. Lu, S. Pei, and C. Tseng, A weighted least-squares method for
the design of stable 1-D and 2-D IIR digital filters, IEEE Trans. Signal
Processing, vol. 46, pp. 1-10, Jan. 1998.

480

You might also like