이 게시글은 장형기님의 SLAM 기술면접 질문 100선에 대한 제 생각을 정리한 글입니다.
정의
주어진 행렬 A가 다음과 같은 블록 형태를 가질 때:
여기서 는 각각 적절한 크기의 행렬입니다.
Schur Complement는 다양한 행렬 계산을 할 수 있도록 만드는 또 다른 block matrix라고 생각하시면 됩니다.
이것이 Schur Complement 정의입니다.
사실 여기까지만 보면 무슨 소리인가 싶을겁니다.
이 Schur Complement가 어떻게 활용되는지 알면 더욱 이해가 더 쉬울겁니다.
행렬의 역행렬 계산:
역행렬도 Schur Complement를 활용하면 Block으로 쪼개서 계산할 수 있게 됩니다.
전체 Matrix를 다 계산할 수 없을 때 Schur Complement를 통해 계산을 더 간략화할 수 있는 장점이 있습니다.
Determinant 계산
이렇게 determinant를 쪼개서 계산할 수도 있습니다.
저번 포스트 중에 Kalman filter 계산에도 Schur Complement를 활용해서 계산하는데
복잡해서 안썼었습니다. 하하
성질
Symmetry: Schur Complement는 주어진 행렬의 대칭 성질을 보존합니다.
즉, A가 대칭 행렬이면, 그 Schur Complement인 S도 대칭입니다.
Positive definiteness: A가 positive definite일 때, Schur complement S도 positive definite입니다.
결론
결론은 Schur Complement를 활용하면 역행렬이나 Determinant계산을 더욱 쉽게 할 수 있다는 것입니다.
이것이 생각보다 많이 쓰이더라고요 알아두어서 나쁠게 없을 것 같습니다.