All Topics  
Levinson recursion

 

   Email Print
   Bookmark   Link






 

Levinson recursion



 
 
Levinson recursion or Levinson-Durbin recursion is a procedure in linear algebra
Linear algebra

Linear algebra is the branch of mathematics concerned with the study of Euclidean vectors, vector spaces , linear maps , and system of linear equations....
 to recursively
Recursion

Recursion, in mathematics and computer science, is a method of defining Function in which the function being defined is applied within its own definition....
 calculate the solution to an equation involving a Toeplitz matrix
Toeplitz matrix

In the mathematics discipline of linear algebra, a Toeplitz matrix or diagonal-constant matrix, named after Otto Toeplitz, is a matrix in which each descending diagonal from left to right is constant....
. The algorithm runs in T
Big O notation

In mathematics, big O notation describes the asymptotic analysis of a function when the argument tends towards a particular value or infinity, usually in terms of simpler functions....
(n2) time, which is a strong improvement over Gauss-Jordan elimination, which runs in T(n3).

Newer algorithms, called asymptotically fast or sometimes superfast Toeplitz algorithms, can solve in T(n logpn) for various p (e.g.






Discussion
Ask a question about 'Levinson recursion'
Start a new discussion about 'Levinson recursion'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Levinson recursion or Levinson-Durbin recursion is a procedure in linear algebra
Linear algebra

Linear algebra is the branch of mathematics concerned with the study of Euclidean vectors, vector spaces , linear maps , and system of linear equations....
 to recursively
Recursion

Recursion, in mathematics and computer science, is a method of defining Function in which the function being defined is applied within its own definition....
 calculate the solution to an equation involving a Toeplitz matrix
Toeplitz matrix

In the mathematics discipline of linear algebra, a Toeplitz matrix or diagonal-constant matrix, named after Otto Toeplitz, is a matrix in which each descending diagonal from left to right is constant....
. The algorithm runs in T
Big O notation

In mathematics, big O notation describes the asymptotic analysis of a function when the argument tends towards a particular value or infinity, usually in terms of simpler functions....
(n2) time, which is a strong improvement over Gauss-Jordan elimination, which runs in T(n3).

Newer algorithms, called asymptotically fast or sometimes superfast Toeplitz algorithms, can solve in T(n logpn) for various p (e.g. p = , p = ). Levinson recursion remains popular for several reasons; for one, it is relatively easy to understand in comparison; for another, it can be faster than a superfast algorithm for small n (usually n < 256 ).

The Levinson-Durbin algorithm was proposed first by Norman Levinson
Norman Levinson

Norman Levinson was an American mathematician. Some of his major contributions were in the study of Fourier transforms, complex analysis, non-linear differential equations, number theory, and signal processing....
 in 1947, improved by J. Durbin in 1960, and subsequently improved to 4n2 and then 3n2 multiplications by W. F. Trench and S. Zohar, respectively.

Other methods to process data include Schur decomposition
Schur decomposition

In the mathematics discipline of linear algebra, the Schur decomposition or Schur triangulation, named after Issai Schur, is an important matrix decomposition....
 and Cholesky decomposition
Cholesky decomposition

In linear algebra, a subfield of mathematics, the Cholesky decomposition is a matrix decomposition of a symmetric matrix, positive-definite matrix matrix into a lower triangular matrix and the transpose of the lower triangular matrix....
. In comparison to these, Levinson recursion (particularly Split-Levinson recursion) tends to be faster computationally, but more sensitive to computational inaccuracies like round-off error
Round-off error

A round-off error, also called rounding error, is the difference between the calculated approximation of a number and its exact mathematical value....
s.

Derivation


Background


Matrix equations follow the form:



The Levinson-Durbin algorithm may be used for any such equation, so long as M is a known Toeplitz matrix
Toeplitz matrix

In the mathematics discipline of linear algebra, a Toeplitz matrix or diagonal-constant matrix, named after Otto Toeplitz, is a matrix in which each descending diagonal from left to right is constant....
 with a nonzero main diagonal. Here is a known vector
Vector space

File:Vector addition ans scaling.pngA vector space is a mathematical structure formed by a collection of vectors: objects that may be Vector addition together and Scalar multiplication by numbers, called scalar s in this context....
, and is an unknown vector of numbers xi yet to be determined.

For the sake of this article, êi is a vector made up entirely of zeroes, except for its i'th place, which holds the value one. Its length will be implicitly determined by the surrounding context. The term N refers to the width of the matrix above -- M is an N×N matrix. Finally, in this article, superscripts refer to an inductive index, whereas subscripts denote indices. For example (and definition), in this article, the matrix Tn is an n×n matrix which copies the upper left n×n block from M -- that is, Tnij = Mij.

Tn is also a Toeplitz matrix; meaning that it can be written as:



Introductory steps


The algorithm proceeds in two steps. In the first step, two sets of vectors, called the forward and backward vectors, are established. The forward vectors are used to help get the set of backward vectors; then they can be immediately discarded. The backwards vectors are necessary for the second step, where they are used to build the solution desired.

Levinson-Durbin recursion defines the nth "forward vector", denoted , as the vector of length n which satisfies:

The nth "backward vector" is defined similarly; it is the vector of length n which satisfies:

An important simplification can occur when M is a symmetric matrix
Symmetric matrix

In linear algebra, a symmetric matrix is a square matrix, A, that is equal to its transposeThe entries of a symmetric matrix are symmetric with respect to the main diagonal ....
; then the two vectors are related by bni = fnn+1-i -- that is, they are row-reversals of each other. This can save some extra computation in that special case.

Obtaining the backward vectors


Even if the matrix is not symmetric, then the nth forward and backward vector may be found from the vectors of length n-1 as follows. First, the forward vector may be extended with a zero to obtain:

In going from Tn-1 to Tn, the extra column added to the matrix does not perturb the solution when a zero is used to extend the forward vector. However, the extra row added to the matrix has perturbed the solution; and it has created an unwanted error term εf which occurs in the last place. The above equation gives it the value of:



This error will be returned to shortly and eliminated from the new forward vector; but first, the backwards vector must be extended in a similar (albeit reversed) fashion. For the backwards vector,

Like before, the extra column added to the matrix does not perturb this new backwards vector; but the extra row does. Here we have another unwanted error εb with value:

These two error terms can be used to eliminate each other. Using the linearity of matrices,

If α and β are chosen so that the right hand side yields ê1 or ên, then the quantity in the parentheses will fulfill the definition of the nth forward or backward vector, respectively. With those alpha and beta chosen, the vector sum in the parentheses is simple and yields the desired result.

To find these coefficients, , are such that :

and respectively , are such that :

By multiplying both previous equations by one gets the following equation:


Now, all the zeroes in the middle of the two vectors above being disregarded and collapsed, only the following equation is left:



With these solved for (by using the Cramer 2x2 matrix inverse formula), the new forward and backward vectors are:





Performing these vector summations, then, gives the nth forward and backward vectors from the prior ones. All that remains is to find the first of these vectors, and then some quick sums and multiplications give the remaining ones. The first forward and backward vectors are simply:



Using the backward vectors


The above steps give the N backward vectors for M. From there, a more arbitrary equation is:



The solution can be built in the same recursive way that the backwards vectors were built. Accordingly, must be generalized to a sequence , from which .

The solution is then built recursively by noticing that if:



Then, extending with a zero again, and defining an error constant where necessary:



We can then use the nth backward vector to eliminate the error term and replace it with the desired formula as follows:



Extending this method until n = N yields the solution .

In practice, these steps are often done concurrently with the rest of the procedure, but they form a coherent unit and deserve to be treated as their own step.

Block Levinson algorithm


If M is not strictly Toeplitz, but block
Block matrix

In the mathematics discipline of matrix theory, a block matrix or a partitioned matrix is a partition of a Matrix into rectangular smaller matrices called blocks....
 Toeplitz, the Levinson recursion can be derived in much the same way by regarding the block Toeplitz matrix as a Toeplitz matrix with matrix elements (Musicus 1988). Block Toeplitz matrices arise naturally in signal processing algorithms when dealing with multiple signal streams (e.g., in MIMO
System analysis

System analysis is the branch of electrical engineering that characterizes electrical systems and their properties. Although many of the methods of system analysis can be applied to non-electrical systems, it is a subject often studied by electrical engineers because it has direct relevance to many other areas of their discipline, most notab...
 systems) or cyclo-stationary signals.

See also

  • Split Levinson recursion
  • Linear prediction
    Linear prediction

    Linear prediction is a mathematical operation where future values of a discrete time Signal processing are estimated as a linear transformation of previous samples....