All Topics  
Cholesky decomposition

 

   Email Print
   Bookmark   Link






 

Cholesky decomposition



 
 
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....
, a subfield of mathematics
Mathematics

Mathematics is the study of quantity, structure, space, change, and related topics of pattern and form. Mathematicians seek out patterns whether found in numbers, space, natural science, computers, imaginary abstractions, or elsewhere....
, the Cholesky decomposition is a decomposition
Matrix decomposition

In the mathematics discipline of linear algebra, a matrix decomposition is a factorization of a matrix into some canonical form. There are many different matrix decompositions; each finds use among a particular class of problems....
 of a symmetric
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 ....
, positive-definite
Positive-definite matrix

In linear algebra, a positive-definite matrix is a Hermitian matrix matrix which in many ways is analogous to a positive real number. The notion is closely related to a Definite bilinear form symmetric bilinear form ....
 matrix
Matrix (mathematics)

In mathematics, a matrix is a rectangular array of numbers, as shown at the right. In addition to a number of elementary, entrywise operations such as matrix addition a key notion is matrix multiplication....
 into a lower triangular matrix and the transpose
Transpose

In linear algebra, the transpose of a matrix A is another matrix AT created by any one of the following equivalent actions:...
 of the lower triangular matrix. It was discovered by André-Louis Cholesky
André-Louis Cholesky

Andr?-Louis Cholesky was a France mathematician born in Montguyon, France. Educated at the Ecole polytechnique, he worked in geodesy and map-making, and developed the Cholesky decomposition to aid in this work....
. The lower triangular matrix is the Cholesky triangle of the original, positive-definite matrix. Cholesky's result has since been extended to matrices with complex entries. When it is applicable, the Cholesky decomposition is roughly twice as efficient as the LU decomposition
LU decomposition

In linear algebra, the LU decomposition is a matrix decomposition which writes a matrix as the product of a lower triangular matrix and an upper triangular matrix....
 for solving systems of linear equations
System of linear equations

In mathematics, a system of linear equations is a collection of linear equations involving the same set of variables. For example,is a system of three equations in the three variables ....
.

e L is a lower triangular matrix with strictly positive diagonal entries, and L* denotes the conjugate transpose
Conjugate transpose

In mathematics, the conjugate transpose, Hermitian transpose, or adjoint matrix of an m-by-n matrix A with complex number entries is the n-by-m matrix A* obtained from A by taking the transpose and then taking the complex conjugate of each entry....
 of L.






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



Encyclopedia


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....
, a subfield of mathematics
Mathematics

Mathematics is the study of quantity, structure, space, change, and related topics of pattern and form. Mathematicians seek out patterns whether found in numbers, space, natural science, computers, imaginary abstractions, or elsewhere....
, the Cholesky decomposition is a decomposition
Matrix decomposition

In the mathematics discipline of linear algebra, a matrix decomposition is a factorization of a matrix into some canonical form. There are many different matrix decompositions; each finds use among a particular class of problems....
 of a symmetric
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 ....
, positive-definite
Positive-definite matrix

In linear algebra, a positive-definite matrix is a Hermitian matrix matrix which in many ways is analogous to a positive real number. The notion is closely related to a Definite bilinear form symmetric bilinear form ....
 matrix
Matrix (mathematics)

In mathematics, a matrix is a rectangular array of numbers, as shown at the right. In addition to a number of elementary, entrywise operations such as matrix addition a key notion is matrix multiplication....
 into a lower triangular matrix and the transpose
Transpose

In linear algebra, the transpose of a matrix A is another matrix AT created by any one of the following equivalent actions:...
 of the lower triangular matrix. It was discovered by André-Louis Cholesky
André-Louis Cholesky

Andr?-Louis Cholesky was a France mathematician born in Montguyon, France. Educated at the Ecole polytechnique, he worked in geodesy and map-making, and developed the Cholesky decomposition to aid in this work....
. The lower triangular matrix is the Cholesky triangle of the original, positive-definite matrix. Cholesky's result has since been extended to matrices with complex entries. When it is applicable, the Cholesky decomposition is roughly twice as efficient as the LU decomposition
LU decomposition

In linear algebra, the LU decomposition is a matrix decomposition which writes a matrix as the product of a lower triangular matrix and an upper triangular matrix....
 for solving systems of linear equations
System of linear equations

In mathematics, a system of linear equations is a collection of linear equations involving the same set of variables. For example,is a system of three equations in the three variables ....
.

Statement


If A has real entries and is symmetric (or more generally, is Hermitian
Hermitian matrix

A Hermitian matrix is a square matrix with complex number entries which is equal to its own conjugate transpose — that is, the element in the ith row and jth column is equal to the complex conjugate of the element in the jth row and ith column, for all indices i and j:...
) and positive definite, then A can be decomposed as where L is a lower triangular matrix with strictly positive diagonal entries, and L* denotes the conjugate transpose
Conjugate transpose

In mathematics, the conjugate transpose, Hermitian transpose, or adjoint matrix of an m-by-n matrix A with complex number entries is the n-by-m matrix A* obtained from A by taking the transpose and then taking the complex conjugate of each entry....
 of L. This is the Cholesky decomposition.

The Cholesky decomposition is unique: given a Hermitian, positive-definite matrix A, there is only one lower triangular matrix L with strictly positive diagonal entries such that A = LL*. The converse holds trivially: if A can be written as LL* for some invertible L, lower triangular or otherwise, then A is Hermitian and positive definite.

The requirement that L have strictly positive diagonal entries can be dropped to extend the factorization to the positive semidefinite case. The statement then reads: a square matrix A has a Cholesky decomposition if and only if A is Hermitian and positive semi-definite. Cholesky factorizations for positive semidefinite matrices are not unique in general.

In the special case that A is a symmetric positive-definite matrix with real entries, L can be assumed to have real entries as well.

Applications


The Cholesky decomposition is mainly used for the numerical solution of linear equations Ax = b. If A is symmetric and positive definite, then we can solve Ax = b by first computing the Cholesky decomposition A = LLT, then solving Ly = b for y, and finally solving LTx = y for x.

Linear least squares

Systems of the form Ax = b with A symmetric and positive definite arise quite often in applications. For instance, the normal equations in linear least squares
Linear least squares

Linear least squares is an important computational problem, that arises primarily in applications when it is desired to fit a linear function mathematical model to measurements obtained from experiments....
 problems are of this form. It may also happen that matrix A comes from an energy functional which must be positive from physical considerations; this happens frequently in the numerical solution of partial differential equation
Partial differential equation

In mathematics, partial differential equations are a type of differential equation, i.e., a Relation involving an unknown Function of several independent variables and its partial derivatives with respect to those variables....
s.

Monte Carlo simulation

The Cholesky decomposition is commonly used in the Monte Carlo method
Monte Carlo method

Monte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used when computer simulation physics and mathematics systems....
 for simulating systems with multiple correlated variables: The matrix of inter-variable correlation
Correlation

In probability theory and statistics, correlation indicates the strength and direction of a linear relationship between two random variables....
s is decomposed, to give the lower-triangular L. Applying this to a vector of uncorrelated simulated shocks, u, produces a shock vector Lu with the covariance properties of the system being modeled.

Kalman filters

Unscented Kalman filter
Kalman filter

The Kalman filter is an efficient recursive filter that estimates the state of a Linear system from a series of noise measurements. It is used in a wide range of engineering applications from radar to computer vision, and is an important topic in control theory and control systems engineering....
s commonly use the Cholesky decomposition to choose a set of so-called sigma points. The Kalman filter tracks the average state of a system as a vector x of length N and covariance as an N-by-N matrix P. The matrix P is always positive semi-definite, and can be decomposed into LLT. The columns of L can be added and subtracted from the mean x to form a set of 2N vectors called sigma points. These sigma points completely capture the mean and covariance of the system state.

Computing the Cholesky decomposition


There are various methods for calculating the Cholesky decomposition. The algorithms described below all involve about n3/3 FLOP
Flop

Flop may refer to:...
s, where n is the size of the matrix A. Hence, they are half the cost of the LU decomposition
LU decomposition

In linear algebra, the LU decomposition is a matrix decomposition which writes a matrix as the product of a lower triangular matrix and an upper triangular matrix....
, which uses 2n3/3 FLOPs (see Trefethen and Bau 1997).

Which of the algorithms below is faster depends on the details of the implementation. Generally, the first algorithm will be slightly slower because it accesses the data in a more irregular manner.

The Cholesky algorithm


The Cholesky algorithm, used to calculate the decomposition matrix L, is a modified version of Gaussian elimination
Gaussian elimination

In linear algebra, Gaussian elimination is an efficient algorithm for solving system of linear equations, finding the Rank of a matrix , and calculating the inverse of an invertible matrix....
.

The recursive algorithm starts with i := 1 and

At step i, the matrix A(i) has the following form:

where Ii−1 denotes the identity matrix
Identity matrix

In linear algebra, the identity matrix or unit matrix of size n is the n-by-n square matrix with ones on the main diagonal and zeros elsewhere....
 of dimension i − 1.

If we now define the matrix Li by

then we can write A(i) as

where

Note that bi bi* is an outer product
Outer product

In linear algebra, the outer product typically refers to the Tensor product of two vector . The result of applying the outer product to a pair of vectors is a matrix ....
, therefore this algorithm is called the outer product version in (Golub & Van Loan).

We repeat this for i from 1 to n. After n steps, we get A(n+1) = I. Hence, the lower triangular matrix L we are looking for is calculated as

The Cholesky-Banachiewicz and Cholesky-Crout algorithms


If we write out the equation A = LL*,

we obtain the following formula for the entries of L:

The expression under the square root
Square root

In mathematics, a square root of a number x is a number r such that r2 = x, or, in other words, a number r whose square is x....
 is always positive if A is real and positive-definite.

For complex Hermitian matrix, the following formula applies:

So we can compute the (i, j) entry if we know the entries to the left and above. The computation is usually arranged in either of the following orders.
  • The Cholesky-Banachiewicz algorithm starts from the upper left corner of the matrix L and proceeds to calculate the matrix row by row.
  • The Cholesky-Crout algorithm starts from the upper left corner of the matrix L and proceeds to calculate the matrix column by column.


Stability of the computation


Suppose that we want to solve a well-conditioned
Condition number

In numerical analysis, the condition number associated with a problem is a measure of that problem's amenability to digital computation, that is, how numerically well-conditioned the problem is....
 system of linear equations. If the LU decomposition is used, then the algorithm is unstable unless we use some sort of pivoting strategy. In the latter case, the error depends on the so-called growth factor of the matrix, which is usually (but not always) small.

Now, suppose that the Cholesky decomposition is applicable. As mentioned above, the algorithm will be twice as fast. Furthermore, no pivoting is necessary and the error will always be small. Specifically, if we want to solve Ax = b, and y denotes the computed solution, then y solves the disturbed system (A + E)y = b where Here, || ||2 is the matrix 2-norm
Matrix norm

In mathematics, a matrix norm is a natural extension of the notion of a vector norm to matrix ....
, cn is a small constant depending on n, and ε denotes the unit round-off.

There is one small problem with the Cholesky decomposition. Note that we must compute square roots in order to find the Cholesky decomposition. If the matrix is real symmetric and positive definite, then the numbers under the square roots are always positive in exact arithmetic. Unfortunately, the numbers can become negative because of 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, in which case the algorithm cannot continue. However, this can only happen if the matrix is very ill-conditioned.
Avoiding taking square roots
An alternative form is the factorization

This form eliminates the need to take square roots. When A is positive definite the elements of the diagonal matrix D are all positive. However this factorization can be used for any square, symmetrical matrix.

The following recursive relations apply for the entries of D and L:

For complex Hermitian matrix, the following formula applies:

Proof for positive semi-definite matrices


The above algorithms show that every positive definite matrix A has a Cholesky decomposition. This result can be extended to the positive semi-definite case by a limiting argument. The argument is not fully constructive, i.e., it gives no explicit numerical algorithms for computing Cholesky factors.

If A is an n-by-n positive semi-definite matrix, then the sequence = consists of positive definite matrices. (This is an immediate consequence of, for example, the spectral mapping theorem for the polynomial functional calculus.) Also,

in operator norm
Operator norm

In mathematics, the operator norm is a means to measure the "size" of certain linear operators. Formally, it is a norm_ defined on the space of bounded linear operators between two given normed vector spaces....
. From the positive definite case, each Ak has Cholesky decomposition Ak = LkLk*. By property of the operator norm,

So is a bounded set in the Banach space
Banach space

In mathematics, Banach spaces are one of the central objects of study in functional analysis. They are topological vector spaces that have many interesting properties associated with them....
 of operators, therefore relatively compact (because the underlying vector space is finite dimensional). Consequently it has a convergent subsequence, also denoted by , with limit L. It can be easily checked that this L has the desired properties, i.e. A = LL* and L is lower triangular with non-negative diagonal entries: for all x and y,

Therefore A = LL*. Because the underlying vector space is finite dimensional, all topologies on the space of operators are equivalent. So Lk tends to L in norm means Lk tends to L entrywise. This in turn implies that, since each Lk is lower triangular with non-negative diagonal entries, L is also.

Generalization


The Cholesky factorization can be generalized to (not necessarily finite) matrices with operator entries. Let be a sequence of Hilbert spaces. Consider the operator matrix

acting on the direct sum

where each

is a bounded operator
Bounded operator

In functional analysis , a bounded linear operator is a linear transformation L between normed vector spaces X and Y for which the ratio of the norm of L to that of v is bounded set by the same number, over all non-zero vectors v in X....
. If A is positive (semidefinite) in the sense that for all finite k and for any

we have <h, Ah> ≥ 0, then there exists a lower triangular operator matrix L such that A = LL*. One can also take the diagonal entries of L to be positive.

See also

  • Symbolic Cholesky decomposition
    Symbolic Cholesky decomposition

    In the mathematics subfield of numerical analysis the symbolic Cholesky decomposition is an algorithm used to determine the non-zero pattern for the factors of a symmetric matrix sparse matrix when applying the Cholesky decomposition or variants....
  • Minimum degree algorithm
    Minimum degree algorithm

    In numerical analysis the minimum degree algorithm is an algorithm used to permute the rows and columns of a symmetric matrix sparse matrix before applying the Cholesky decomposition, to reduce the number of non-zeros in the Cholesky factor....
  • Matrix decomposition
    Matrix decomposition

    In the mathematics discipline of linear algebra, a matrix decomposition is a factorization of a matrix into some canonical form. There are many different matrix decompositions; each finds use among a particular class of problems....


External links


Information

  • , The Data Analysis BriefBook
  • on www.math-linux.com

Computer code

  • is a collection of FORTRAN subroutines for solving dense linear algebra problems
  • includes a partial port of the LAPACK to C++, C#, Delphi, Visual Basic, etc.


Use of the matrix in simulation

  • , Martin Haugh, Columbia University
    Columbia University

    Columbia University in the City of New York , is a private university in the United States and a member of the Ivy League. Columbia's main campus lies in the Morningside Heights, Manhattan neighborhood in the borough of Manhattan, in New York City....


Online calculators

  • Performs Cholesky decomposition of matrices online.