The Multiple Signal Classification (MUSIC) algorithm tutorial

Post date: Jun 04, 2015 9:46:16 PM

MUSIC is a popular algorithm used to estimate the angle of arrivals (AOA) (a vector with dimension = the # of sources) in array signal processing. It is based on the following data model

where is the signal subspace for a particular AOA , is the received signal coefficient (source signal), and is assumed to be WGN. is the dimension of the vector-valued signal coming from 

sensors, is the # of sources. A straightforward analysis shows that the data autocorrelation matrix is

where is the signal autocorrelation matrix.

Let

and denote the eigenvalues and eigenvectors of , respectively. Then

Notice that,

=> spans the same space as the signal subspace , hence the name the signal subspace.

because only has rank

=> the grouping which means linear combination of

is orthogonal to ( is Hermitian), defined as the noise subspace.

Thus to find , search for a that is in the signal subspace/orthogonal to the noise subspace

where . MUSIC can be extended to exploit the symmetry of many sensor arrays with ESPRIT/rotation-invariance technique [2].

Finally, since eigenvalues of autocorrelation matrix of a signal form its power spectrum [1] (Szego's theorem), it is interesting to know that MUSIC is simply the frequency domain version of the

cross-correlation (CC) method. The following is a summarization of key points in [1].

- Complex exponentials uniformly spaced on a unit circle in the complex plane is the building block:

- Sinusoidal in, sinusoidal out, with changes in magnitude and phase: , where is the frequency index, is the time index (reversed from [1]), and are LTI impulse response in time and frequency domains, respectively.

- Filtering in circulant matrix form: If

, circulant, then . In other words, any circulant has complex eigenvalues given by and the (complex exp) eigenvectors.

- Apply the same analogy for the circulant correlation matrix