In numerical analysis, an incomplete Cholesky factorization of a symmetric positive definite matrix is a sparse approximation of the Cholesky factorization. An incomplete Cholesky factorization is often used as a preconditioner for algorithms like the conjugate gradient method. The Cholesky factorization of a positive definite matrix A of order N is A = LL* where L is a lower triangular matrix. An incomplete Cholesky factorization is given by a lower triangular matrix K that is sparser than L, but in some sense similar to L. The corresponding preconditioner is KK*. There are many ways of constructing incomplete Cholesky factorizations. This article reviews two of them.
Motivation Consider the following matrix as an example:
A = [ 5 − 2 0 − 2 − 2 − 2 5 − 2 0 0 0 − 2 5 − 2 0 − 2 0 − 2 5 − 2 − 2 0 0 − 2 5 ] {\displaystyle \mathbf {A} ={\begin{bmatrix}5&-2&0&-2&-2\\-2&5&-2&0&0\\0&-2&5&-2&0\\-2&0&-2&5&-2\\-2&0&0&-2&5\\\end{bmatrix}}}
If we apply the full regular Cholesky decomposition, it yields:
L = [ 2.24 0 0 0 0 − 0.89 2.05 0 0 0 0 − 0.98 2.02 0 0 − 0.89 − 0.39 − 1.18 1.63 0 − 0.89 − 0.39 − 0.19 − 1.95 0.45 ] {\displaystyle \mathbf {L} ={\begin{bmatrix}2.24&0&0&0&0\\-0.89&2.05&0&0&0\\0&-0.98&2.02&0&0\\-0.89&-0.39&-1.18&1.63&0\\-0.89&-0.39&-0.19&-1.95&0.45\\\end{bmatrix}}}
And, by definition:
A = L L ′ {\displaystyle \mathbf {A} =\mathbf {L} \mathbf {L'} }
However, by applying Cholesky decomposition, we observe that some zero elements in the original matrix end up being non-zero elements in the decomposed matrix, like elements (4,2), (5,2) and (5,3) in this example. These elements are known as "fill-ins". This is not an issue per se, but it is very problematic when working with sparse matrices, since the fill-ins generation is mostly unpredictable and reduces the matrix sparsity, impacting the efficiency of sparse matrix algorithms. Therefore, given the importance of the Cholesky decomposition in matrix calculations, it is extremely relevant to repurpose the regular method, so as to eliminate the fill-ins generation. Incomplete Cholesky factorizations do exactly that. They yield some matrix K {\displaystyle \mathbf {K} } that is sparser than L {\displaystyle \mathbf {L} } and gives an approximation A ≈ K K ′ {\displaystyle \mathbf {A} \approx \mathbf {K} \mathbf {K'} } .
… excerpt ends here. Continue reading the full article.
