고윳값·고유벡터 계산기 쉽게 이해하기 — 개념과 원리
정사각행렬 A의 고유벡터는 A를 곱해도 방향은 그대로이고 길이만 바뀌는 0이 아닌 벡터 v이며, Av = λv에서 배율 λ를 고윳값이라고 합니다. 고윳값은 같은 선형 변환을 반복할 때 시스템이 어떻게 움직이는지 알려 줍니다. 진동 해석, 미분방정식의 안정성, 통계의 주성분 분석, 마르코프 연쇄의 장기 거동 등에 쓰입니다. 이 계산기는 실수와 복소수 고윳값을 모두 구하고 지배적 고유벡터도 보여 줍니다.
계산 방법
Av = λv는 (A − λI)v = 0이 0이 아닌 해를 갖는다는 뜻이고, 이는 det(A − λI) = 0일 때만 가능합니다. 이 식이 n차 특성다항식입니다. 계산기는 행렬 곱의 대각합을 이용하는 파데예프-르베리에 알고리즘으로 계수를 구한 뒤, 뒤랑-커너 반복법으로 n개의 근을 동시에 찾습니다. 복소근은 a ± bi 꼴로 표시됩니다. 지배적 고유벡터는 거듭제곱법으로 따로 구합니다. 벡터에 A를 계속 곱하고 매번 길이를 1로 맞추는 방식입니다.
2×2 행렬이라면 특성방정식은 λ² − (대각합)λ + det = 0입니다.
원리
v가 고유벡터라면 A를 k번 곱했을 때 λᵏ배가 됩니다. 아무 벡터나 고유벡터들의 일차결합으로 쓸 수 있으므로, 곱셈을 거듭하면 |λ|가 가장 큰 성분이 나머지를 압도해 벡터가 지배적 고유벡터 방향으로 정렬됩니다. 수렴 속도는 |λ₂/λ₁|에 달려 있습니다. 또한 고윳값의 합은 대각합과, 곱은 행렬식과 항상 같습니다.
예제 풀이
- 기본 입력: A = [2 1; 1 2], 대각합 4, 행렬식 2×2 − 1×1 = 3
- 특성방정식: λ² − 4λ + 3 = 0, 즉 (λ − 3)(λ − 1) = 0
- 고윳값: 3, 1(합 4, 곱 3으로 검산됩니다)
- λ = 3일 때 [−1 1; 1 −1]v = 0에서 v = (1, 1)이고, 길이를 1로 맞추면 (0.707107, 0.707107)입니다.
- λ = 1의 고유벡터는 (1, −1)로, 대칭행렬답게 첫 번째 벡터와 수직입니다.
결과 해석
|λ| > 1이면 그 방향으로 커지고, |λ| < 1이면 줄어들며, λ가 음수이면 방향이 뒤집힙니다. 복소수 고윳값은 회전을 뜻하며 절댓값이 한 단계당 확대·축소 비율입니다. 고윳값 0이 있으면 A는 역행렬이 없습니다. 실수 대칭행렬의 고윳값은 항상 실수이고 고유벡터끼리 직교합니다.
흔한 실수
- 고유벡터가 하나로 정해진다고 생각하는 경우. 0이 아닌 상수배(−v 포함)도 모두 고유벡터입니다.
- det(A − λI) 대신 det(A) − λ를 계산하는 경우
- 절댓값이 같은 최대 고윳값이 둘 이상일 때(예: 2와 −2, 복소켤레 쌍) 거듭제곱법 벡터를 그대로 믿는 경우
자주 묻는 질문
실수 행렬도 복소수 고윳값을 가질 수 있나요?
그렇습니다. 90° 회전행렬 [0 −1; 1 0]의 고윳값은 ±i이며, 실수 행렬의 복소 고윳값은 켤레 쌍으로 나타납니다.
교과서와 고유벡터가 다르게 나와요.
고유벡터는 상수배만큼 자유롭습니다. (1, 1)과 (0.707, 0.707)은 같은 방향입니다.
지배적 고윳값이란 무엇인가요?
절댓값이 가장 큰 고윳값으로, Aᵏv의 장기적인 증가 속도를 결정합니다.
출처: Gilbert Strang, Introduction to Linear Algebra, Wellesley-Cambridge Press · Gene H. Golub, Charles F. Van Loan, Matrix Computations, Johns Hopkins University Press