efficient convex optimization for real-time robust ... - IEEE Xplore

3 downloads 0 Views 319KB Size Report
EFFICIENT CONVEX OPTIMIZATION FOR REAL-TIME ROBUST BEAMFORMING. WITH MICROPHONE ARRAYS. Eric Durant, Ivo Merks, Bill Woods,.
EFFICIENT CONVEX OPTIMIZATION FOR REAL-TIME ROBUST BEAMFORMING WITH MICROPHONE ARRAYS Eric Durant, Ivo Merks, Bill Woods, Jinjun Xiao, Tao Zhang

Zhi-Quan Luo Dept. of Electrical and Computer Engineering University of Minnesota Minneapolis, MN 55455 [email protected]

Starkey Laboratories, Inc. Eden Prairie, MN 55344 ivo [email protected] ABSTRACT This paper presents an efficient implementation of a robust adaptive beamforming algorithm based on convex optimization for applications in the processing-constrained environment of a digital hearing aid. Several modifications of the standard interior point barrier method are introduced for use where the array data covariance matrix is changing rapidly relative to the algorithm’s convergence rate. These efficiency improvements significantly simplify the computation without affecting the algorithm’s fast convergence, and are useful for real-time adaptive beamforming regardless of the rate of array correlation change. Simulation results show that this implementation is numerically stable and succeeds where many minimum-variance distortionless response (MVDR) solutions fail. Index Terms— adaptive directionality, acoustic beamforming, second-order cone programming, barrier method, hearing aids 1. INTRODUCTION

2. REAL-TIME ROBUST MVDR

Although adaptive beamforming algorithms can improve the signal-to-noise ratio at the output of a microphone array [1], they are not robust against any mismatch in the steering vector [2]. Several methods have been proposed in the literature to resolve the steering mismatch issue [3, 4, 5]. The first two papers [3, 4] estimate the steering vector in real-time as part of the adaptive beamforming algorithm, while the third paper [5] establishes a protected region around the steering vector where it allows no reduction. For hearing aids, the estimation of the steering vector would be difficult, because the steering vector changes every time the wearer puts on the hearing aid and the steering vector can change when the wearer touches the hearing aid. Hence the method in [5] is the most promising solution to solve the robustness problem of adaptive beamformers. It minimizes the output of the microphone array while maintaining a distortionless response for the worst-case (mismatched) steering

978-1-4577-0539-7/11/$26.00 ©2011 IEEE

vector. Furthermore it admits a convex formulation for such a robust adaptive beamforming problem using second-order cone programming (SOCP) [5]. The paper has, however, not been written with a hearing-aid application in mind; it neither takes into account the hearing aid’s constraints on the computational complexity nor the ever-changing sound fields in which hearing aids are typically used (which result in time-varying data covariance matrices). This paper proposes an efficient real-time convex optimization algorithm to solve the robust adaptive beamforming problem in a rapidly changing environment. It uses the modified logarithmic barrier method to solve the time-varying SOCP problem. The focus is on the balance among robustness, real-time adaptivity, and computational efficiency. The remainder of this paper is organized as follows. Section 2 introduces the logarithmic barrier algorithm and its real-time implementation. Section 3 presents the evaluation of the new robust adaptive beamformer and its comparison to a non-robust MVDR implementation. Section 4 gives conclusions of the paper.

2656

Consider an MVDR beamformer that is robust against an arbitrary signal steering vector mismatch. The beamformer can be obtained by solving the following optimization problem [5] min w

subject to

wH Rw |wH a| ≥ 1, for all a ∈ A()

(1)

where w is the beamformer, R is the data covariance matrix, a is the steering vector, and A() is the uncertainty set of the steering vector. Assume that the mismatch between the actual steering vector and the nominal one can be bounded by some known constant . The uncertainty set can then be expressed as: A() = {a | a = a0 + Δ, ||Δ|| ≤ } . The problem in (1) is a nonconvex quadratic programming problem with infinitely many constraints and is thus compu-

ICASSP 2011

tationally intractable. However, it has been shown in [5] that (1) can be rewritten in the following equivalent convex form: min w

subject to

wH Rw wH a ≥ ||w|| + 1 Im{wH a} = 0

(2)

Then its gradient, given in [7, Chapter 11], and its derivative, the Hessian, can be expressed as:

In (2), the objective is a convex quadratic form and a is the nominal steering vector. One can apply the Cholesky factorization R = U H U to obtain wH Rw = ||U w||2 . Thus minimizing the output power wH Rw is equivalent to minimizing ||U w||. One can further introduce an additional variable, τ , as an upper bound on ||U w|| and obtain: min τ,w

subject to

τ wH a ≥ ||w|| + 1 ||U w|| ≤ τ

(3)

Im{w a} = 0 The problem in (3) has the standard form of an SOCP and can be solved using a standard convex optimization solver such as SeDuMi [6]. In many real applications the data covariance matrix R is time-varying (e.g., due to moving interferers). In such cases, an SOCP needs be solved for each new R. Solving each SOCP independently is very inefficient and not feasible, especially in embedded applications such as hearing aids where computational resources are severely limited. The next section presents an efficient real-time implementation of solving (3) for varying R using an improved logarithmic barrier method [7, Chapter 11].

The logarithmic barrier method is used to solve the problem in (3). The barrier function that corresponds to the secondorder cone constraints (SOCCs) in (3) is:   φ(τ, w) = − log (wH a − 1)2 − 2 ||w||2   2 (4) − log τ − ||U w||2 The idea of the logarithmic barrier method is to solve the following minimization problem with equality constraints only:

subject to

τ + (1/t)φ(τ, w) Im{wH a} = 0

=

∇2x ψ(x)

=

f (x) ∈ N ×1 g(x)   −2g −2 (x)[g(x) ccT + AT A − −2

(7)

2f (x)f T (x)] ∈ N ×N

(8)

where = =

(cT x + d)c − AT (Ax + b) (cT x + d)2 − ||Ax + b||2

As an example, to obtain ∇w φ(τ, w) and ∇2w φ(τ, w) for the first term in φ(τ, w), one can choose A = I, b = 0, c = a, and d = −1, with the real and imaginary components separated as in [5]. 2.2. Real-time Implementation This section presents an efficient real-time implementation for solving (3) when R is time-varying. Initialization consists of the following steps: • R is initialized to the first estimate given to the system. • w is initialized to be feasible; that is, it slightly exceeds the robustness constraint for the given  and a. • τ is initialized to meet the SOCC involving it from (3). • t is initialized a small value that provides a gentle slope throughout the feasible region.

2.1. Logarithmic Barrier Method

τ,w

∇x ψ(x)

f (x) g(x)

H

min

of the barrier function φ(τ, w), which can be derived from the following proposition. Proposition: Assume a logarithmic function of the form   ψ(x) = − log (cT x + d)2 − ||Ax + b||2 (6)

(5)

where t is a parameter that sets the accuracy of the approximation of the inequality constraints by the barrier function φ(τ, w). For fixed R, the optimal beamformer w can be solved by choosing large enough t. For each fixed t, the barrier method uses Newton’s method to solve (5). This requires both the gradient and the Hessian

2657

At each iteration, which might be much less often than the sampling period, the following steps are taken: 1. Track environment change • Update R using a one-pole averaging filter. • Adjust τ upward if needed to ensure the solution is feasible (meets all SOCCs). 2. Update the multiplier t • If t is high enough to yield the desired solution precision of (τ, w), go to step 3. • Otherwise, if the root mean square change in (τ, w) in the last iteration was small, increase t by a fixed percentage. 3. For fixed t, Newton’s update method is adopted to proceed toward the optimum solution of (5) • Calculate the gradient and Hessian of φ(τ, w).

• Obtain the Newton step by solving a linear system [7, Eqn. 11.14] using the conjugate gradient (CG) method. • Update (τ, w) by adding the Newton step.

in the first 5 s. During the remaining 5 s, the interference stays at 105◦ . The output data covariance R is updated 20 times per second. • The white noise in each microphone is taken to be −40 dB.

2.3. Efficiency Improvement A few efficiency improvements are obtained in the proposed algorithm when compared to the standard SOCP solver:

14 SOCC#1: Realized power Actual, instantaneous power

• Eliminating the Cholesky factorization: The problem formulation (3) requires the Cholesky factor U of R. But, the form (6) squares ||U w||, so calculating wH Rw directly suffices as suggested by (2), removing the computationally expensive Cholesky factorization. • Iteration number reduction per update: Instead of solving a new SOCP per update of R, the method above requires very few iterations to track changes in the environment. Also, the solution (τ, w) from the previous R provides an excellent basis for taking the next step. • Truncating the CG method: The CG method is efficient for solving the linear systems in the barrier method. It iterates to the exact solution through a number of steps equal to the system order, with earlier steps making the most progress. Convergence is accelerated when eigenvalues are clustered [8]. With M = 3 microphones and the resulting system of order 6, truncating the solution after 3 iterations results in a negligible performance degradation across a wide range of inputs.

3. EVALUATION Three simulations are provided to illustrate the performance of the algorithm. For all simulations, there are three microphones in a uniform linear array. The distance between two adjacent microphones is 7.5 mm. The simulation results are shown in the 2 kHz frequency band. The array output is simulated as follows: • There is a point source with signal strength 10 dB coming from azimuth angle 0◦ and elevation angle 0◦ . The robust region is 5◦ around the nominal source direction. • There is a moving interference with strength 10 dB and elevation 5◦ . Its azimuth angle changes from 0◦ to 105◦

2658

13 12.5 12 11.5 11 10.5 10

0

50

100 Iteration

150

200

Fig. 1. Output power vs. iteration. Fig. 1 gives the relation of output power vs. iteration. It shows that most of the interferer power is eliminated even for a rapidly moving interferer. The solid line indicates how much power the algorithm assumes is coming out of the beamformer based on its estimate of R; due to robustness, this never goes below the 10 dB level of the target signal. The dot-dash line shows the actual, instantaneous power output. 200

20

180

15

160 10 140

Iteration

• Eliminating the linear constraint: The linear constraint Im{wH a} = 0 is used to eliminate a variable from the solution vector, which contains τ and the real and imaginary portions of w, resulting in a system of order 2M , where M is the number of microphones. This also eliminates a rank deficiency in the Hessian caused by the linear constraint. The variable elimination can be done without division if a is properly normalized.

SOCC #1: Output Power (dB)

13.5

5

120

0

100 80

í5

60 í10 40 í15

20 0

20

40

60

80

100

120

140

160

180

í20

Angle (degree)

Fig. 2. Filter directional response vs. simulation iteration: robust case. The vertical white line at left shows the protected region. The white line with a bend shows the instantaneous position of the interferer, which the algorithm only sees through the averaging filter.

105°

90°

75°

120°

Polar pattern 0 dB

60°

135°

45° 30°

150°

15°

165° í5

±180°

í15 í25 í35



í165°

Iteration

5

í15°

í150°

í30°

í135°

í45° í120°

200

30

180

25

160

20

140

15

120

10

100

5

80

0

60

í5

40

í10

20

í15

í60° í105°

í90°

í75°

0

20

40

60

80

100

120

140

160

180

í20

Angle (degree)

Fig. 3. Final polar pattern Fig. 2 shows the array response vs. time. The robustness constraint combined with the minimum power constraint keeps any null a sufficient angle away from the region that is guaranteed to have at least 0 dB gain. The null cannot move into the “protected region” around azimuth and elevation angles of 0◦ . It can also not move too close to this region because that would require large values for the beamformer w resulting in a large amplification of the white noise and thereby it would be a non-minimum solution for the array output power. Once the interferer moves sufficiently far from the protected region, the null begins tracking the interferer. In more detail, for the early iterations, the maximum gain is at 180◦ , reaching a maximum of 15.5 dB at iteration 40 and surpassing 5.0 dB only between iterations 27 and 78. Regarding the robustness constraint, the gain at 5◦ never goes below 0 dB; it reaches a maximum of 1.2 dB at iteration 38. The final polar pattern in the azimuth plane is given in Fig. 3. Fig. 4 shows a simulation of the non-robust MVDR with no protection region and a 5◦ steering vector mismatch. This allows signal nulling, which persists at −17 dB after iteration 20, −11 dB after iteration 40, and −7 dB after iteration 60, −3 dB after iteration 80, and −1 dB after iteration 100. 4. CONCLUSIONS This paper has shown that the barrier method of solving an SOCP problem is well suited to adaptive acoustic beamforming with robustness to steering vector uncertainty. The method can be implemented with low computational complexity approaching the available processing power in current hearing aids. Furthermore, the barrier method has been adapted to solve a continually changing problem to sufficient precision instead of solving a static problem to great precision as is the common case. Several other techniques to minimize the computational complexity have been applied. Simulations show that the method can adapt quickly even when the interferer moves rapidly. Also, the results are robust

2659

Fig. 4. Filter directional response vs. simulation iteration: non-robust case to a user-specified level of steering vector mismatch. 5. REFERENCES [1] H. Cox, R. M. Zeskind, and M. M. Owen, “Robust adaptive beamforming,” IEEE Trans. Acoust., Speech, Signal Processing, vol. 35, pp. 1365–1376, October 1987. [2] J. E. Greenberg and P. M. Zurek, “Evaluation of an adaptive beamforming method for hearing aids,” J. Acoust. Soc. Am., vol. 91, no. 3, pp. 1662–1676, March 1992. [3] O. Hoshuyama, A. Sugiyama, and A. Hirano, “A robust adaptive beamformer for microphone arrays with a blocking matrix using constrained adaptive filters,” IEEE Trans. Signal Processing, vol. 47, no. 10, pp. 2677–2684, October 1999. [4] P. Stoica, Z. Wang, and J. Li, “Robust capon beamforming,” IEEE Signal Processing Letters, vol. 10, no. 6, pp. 172–175, June 2003. [5] S. A. Vorobyov, A. B. Gershman, and Z.-Q. Luo, “Robust adaptive beamforming using worst-case performance optimization: A solution to the signal mismatch problem,” IEEE Trans. Signal Processing, vol. 51, no. 2, pp. 313–324, February 2003. [6] Jos F. Sturm, “Using SeDuMi 1.02, MATLAB toolbox for optimization over symmetric cones,” http://citeseerx.ist.psu.edu /viewdoc/summary?doi=10.1.1.49.6954, 1998. [7] S. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 7th edition, 2004. [8] J. R. Shewchuck, “An introduction to the conjugate gradient method without the agonizing pain,” http://math.nyu.edu /faculty/greengar/painless-conjugate-gradient.pdf, 1994.

Suggest Documents