분해 과정에서의 행렬 계산

기본 개념

Sholesky 분해(Cholesky decomposition)는 양의 정부호 대칭 행렬 \mathbf{A}을 하삼각 행렬(Lower triangular matrix) \mathbf{L}과 그 전치 행렬(\mathbf{L}^T)의 곱 형태로 분해하는 방식이다. 즉, \mathbf{A} = \mathbf{L} \mathbf{L}^T와 같은 형태로 나타낼 수 있다.

행렬 계산 과정

Sholesky 분해 과정은 다음과 같은 단계로 구성된다:

  1. 주어진 대칭 행렬 \mathbf{A}를 읽는다.
  2. 하삼각 행렬 \mathbf{L}을 초기화한다.
  3. \mathbf{A}의 원소들을 직접적으로 이용하여 \mathbf{L}의 원소들을 계산한다.
\mathbf{A} = \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{bmatrix}, \quad \mathbf{L} = \begin{bmatrix} l_{11} & 0 & \cdots & 0 \\ l_{21} & l_{22} & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ l_{n1} & l_{n2} & \cdots & l_{nn} \end{bmatrix}

일반적인 계산 공식

하삼각 행렬 \mathbf{L}의 원소는 아래의 공식으로 구할 수 있다:

  1. 대각 원소 계산:
l_{ii} = \sqrt{a_{ii} - \sum_{k=1}^{i-1} l_{ik}^2}
  1. 비대각 원소 계산:
l_{ij} = \frac{1}{l_{jj}} \left(a_{ij} - \sum_{k=1}^{j-1} l_{ik} l_{jk}\right), \quad i > j

각 원소를 차례로 구하며 \mathbf{L}을 구성한다.

단계별 예제

다음은 단계별로 계산 과정에서 필요한 예제이다:

1. 초기화 단계

대칭 행렬 \mathbf{A}:

\mathbf{A} = \begin{bmatrix} 4 & 12 & -16 \\ 12 & 37 & -43 \\ -16 & -43 & 98 \end{bmatrix}

하삼각 행렬 \mathbf{L}:

\mathbf{L} = \begin{bmatrix} l_{11} & 0 & 0 \\ l_{21} & l_{22} & 0 \\ l_{31} & l_{32} & l_{33} \end{bmatrix}

2. 첫 번째 대각 원소 계산

l_{11} = \sqrt{a_{11}} = \sqrt{4} = 2

3. 첫 번째 행/열 비대각 원소 계산

l_{21} = \frac{a_{21}}{l_{11}} = \frac{12}{2} = 6
l_{31} = \frac{a_{31}}{l_{11}} = \frac{-16}{2} = -8

4. 두 번째 대각 원소 계산

l_{22} = \sqrt{a_{22} - l_{21}^2} = \sqrt{37 - 6^2} = \sqrt{1} = 1

5. 두 번째 행/열 비대각 원소 계산

l_{32} = \frac{1}{l_{22}} \left(a_{32} - l_{31} \cdot l_{21}\right) = \frac{1}{1} \left(-43 - (-8) \cdot 6\right) = \frac{1}{1} \left(-43 + 48\right) = 5

6. 세 번째 대각 원소 계산

l_{33} = \sqrt{a_{33} - (l_{31}^2 + l_{32}^2)} = \sqrt{98 - ((-8)^2 + 5^2)} = \sqrt{98 - (64 + 25)} = \sqrt{9} = 3

최종 하삼각 행렬

모든 원소를 계산하여 하삼각 행렬 \mathbf{L}를 완성한다:

\mathbf{L} = \begin{bmatrix} 2 & 0 & 0 \\ 6 & 1 & 0 \\ -8 & 5 & 3 \end{bmatrix}

그리고, \mathbf{A}는 이제 정말로 \mathbf{L} \mathbf{L}^T로 분해될 수 있다:

\mathbf{A} = \mathbf{L} \mathbf{L}^T = \begin{bmatrix} 2 & 0 & 0 \\ 6 & 1 & 0 \\ -8 & 5 & 3 \end{bmatrix} \begin{bmatrix} 2 & 6 & -8 \\ 0 & 1 & 5 \\ 0 & 0 & 3 \end{bmatrix} = \begin{bmatrix} 4 & 12 & -16 \\ 12 & 37 & -43 \\ -16 & -43 & 98 \end{bmatrix}

즉, 주어진 대칭 행렬 \mathbf{A}는 정확하게 하삼각 행렬 \mathbf{L}과 그 전치 행렬 \mathbf{L}^T로 분해되었다.


Sholesky 분해는 대칭이고 양의 정부호인 행렬을 하삼각 행렬과 그 전치 행렬의 곱으로 분해하는 매우 유용한 기법이다. 이를 통해 시스템의 연립방정식을 효율적으로 풀 수 있고 여러 수치해석 문제에 적용할 수 있다.