본문으로 바로가기

[공업수학] 행렬의 대각화

category Theory/Lecture 2009.10.11 21:41

본 자료는 국립 창원대학교 메카트로닉스 공학부 학생을 대상으로 한 공업수학 수업 자료입니다. 본 자료는 수업의 교재인 공업수학I 개정3판 (고형준 외, 도서출판 텍스트북스) 의 내용을 재구성한 것으로 수업보조 자료 이외의 목적이 없음을 알립니다.


대각화


먼저 위 A, B 행렬의 곱을 보면, B행렬의 각 열을 X1, X2로 표현해서 다시 맨 마지막 식처럼 표기할 수 있다는 것은 [공학기초/Theory] - [공업수학] 행렬의 기초의 첨부자료에서 이야기 했었습니다.

 
어떤 대각행렬 D를 A와 P를 이용해 위와 같이 표현할 수 있고, 또한 P행렬의 역행렬이 존재한다면 A는 대각화 가능하다고 이야기합니다.

 
대각화 가능성의 충분조건은 행렬 A의 고유벡터들이 full rank를 가진다면 대각화 가능합니다. 그것은 A*K1=lambda1*K1이기 때문에 AP를 처음 언급한데로 열벡터의 곱의 형태로  표현하고서 비교해보면 대각행렬 D를 나타낼 수 있기 때문입니다. 그러나 충분조건이라는 사실에 주의해주세요. 


대각화 가능하기 위한 필요충분조건은 A의 크기가 고유벡터들이 또한 일차독립이어야 하는데, 알다시피 꼭 서로 다른 고유치를 가지지 않아도 일차독립인 고유벡터가 나타날 수있다는 것은 알고 있을테니([공학기초/Theory] - [공업수학] 교유값과 고유벡터, 그리고 직교행렬) 혼돈해서는 안되겠습니다.^^

 
일단, 만약 행렬 A가 서로 다른 고유값을 가진다면, A는 대각화 가능합니다. (역시 충분조건이라는 사실...) 


위의 2차행렬 A의 고유값과 그에 따른 고유벡터를 구하고

 
그 고유벡터를 이용해서 P를 구하고 P역행렬과 A와 P를 차례로 곱해보면, 대각행렬 D가 만들어 집니다. 이때 대각행렬의 주 대각선상의 수치들은 고유치라는 것을 확인할 수 있네요.

 
위 행렬에서

 
각 고유치와 고유벡터를 구했습니다. 이를 이용해서


P와 D, P의 역행렬을 각각 구해볼수있네요.


물론 확인해 보면, 대각화가능성이 성립한다는 것을 확인할 수 있습니다.

 
그러나 위 예제를 보면 중복된 고유값에 대해 독립인 고유벡터를 도출해내지 못하여 예제의 행렬 A는 대각화가 가능하지 않습니다. 그러나,


위 행렬 A를 보면


고유치가 1을 두번가지긴 하지만


위와 같이 독립인 두 벡터를 만들어 낼 수 있어서, K1, K2, K3이렇게 독립인 세 벡터를 도출해 낼 수 있습니다.


물론 독립인 벡터를 모두 구할 수 있으므로, 대각화가 가능해 집니다. 

직교대각행렬


A행렬이 대칭행렬이라면 이 행렬은 직교대각화가 가능합니다.


역방향으로 일부만 증명한 것입니다.

 
위 행렬A에서 


고유치에 대한 고유벡터를 보면 K1과 K2, K3는 직교벡터지만, K2와 K3는 서로 직교하지 않음을 알 수 있습니다.


이런경우는 다시 직교하도록 고유벡터를 잡아줘야합니다.

 
그리고 P와 D를 찾아볼 수 있습니다.


이차형태 (Quadratic Form)


위와 같은 식을 우리는 2차식이라고 부릅니다.


이때 행렬 X와 A를 잡으면 위와 같이 표현할 수 있습니다.

 
위 식에 대해 좌표변환을 변환행렬없이 한 번 수행해보면


먼저 행렬로 표현하고

 
A행렬을 위와 같이 잡을 수 있고


역시 고유치와 고유벡터를 구하고


P를 구할 수 있고

 
X행렬을 PX'로 표현하고나면 다시 새로운 형태의 전개가 가능합니다. 이 식은

 
위의 그림처럼 새로운 좌표계에서 쌍곡선의 형태로 표현됨을 알 수 있습니다.


참고자료

08 Matrix 05.pdf




댓글을 달아 주세요

  1. BlogIcon 아고라 2009.10.12 23:10 신고

    아무래도 블로그명을 가우스나 라이프니쯔, 존내쉬....뭐 이런 이름으로 바꾸셔야 하는거 아닙니까?

  2. 영웅전쟁 2009.10.14 20:26 신고

    대학시절에 공업수학=저 였는데...
    어찌 지금은 머리에 쥐가 내리지요? ㅎㅎㅎㅎ

  3. 공업수학신 2010.04.04 06:44 신고

    이건 잘 못 보던 내용 같네요.

    시험에 안나올거 같으니 넘겨야 겠습니다.

    어유 어려워.....

  4. 공업수학신 2010.04.22 19:21 신고

    시험에 안나올거 같다고 넘겼지요...

    왠걸 10문제 중에 이거만 2문제 나왔습니다.

    3가지 방법으로 풀수 있던데

    1. 라플라스역변환[(sI-A)^-1] (대각행렬인 경우만...)

    2. A = XDX^-1

    3. Cayley-Hamilton Theorem

    2번방법이 젤 간단했는데 여기서 안보고 넘어가는 바람에 10문제중에 2문제를

    날리고 말았습니더... ㅠㅠ

    • BlogIcon PinkWink 2010.04.23 06:57 신고

      안타깝습니다..ㅜㅜ
      행렬의 대각화는 그 자체만으로 많은 것을 물어볼 수 있어서 출제 선호 문제 인데요^^ 그래도... 8/10의 성과면 좋은것 같은데요^^

  5. 궁금합니다 2011.11.10 18:18 신고

    위에 고유치가 1로 중복되는 대칭행렬에서 k3(0,0,1)은 어떻게 구한건가요? 그냥 고유벡터끼리 직교하게 잡은건가요?

  6. 대각화할때 P있잖아요 2012.06.28 21:23 신고

    대각화할때 임의의 P를잡는데 P잡기위해서는 고유벡터를찾아야하는데.고유벡터는제가임의로설정할수있잖아요....?
    그럼 P행렬이 임의로설정이되는데 그 P행렬이 답과달라도되는건가요?
    그리고 임의의 P행렬을잡았을때 D가 대각화가안된다면 잘못된거죠? 또 P의역행렬이 P의전치행렬과같아지는땐 직교일때만인가요? 당장내일이시험이라 질문드립니다ㅜㅜ

    • BlogIcon PinkWink 2012.06.18 11:12 신고

      대각화할때 사용되는 P행렬은 꼭... 고유벡터들로 구성되어야합니다.
      고유벡터가 단 하나만 존재하는 것이 아닐때가 더 많기 때문에
      임의로 잡으라는 뜻이었습니다.

  7. 기계공학도 2015.06.12 20:33 신고

    맨마지막예제에서요!
    죄송한데 .. 1차식에서도 예제를 하나들어주실수 없으신가요??

  8. 행인1 2018.09.24 18:09 신고

    안녕하세요 도움많이 받고 있습니다:)
    혹시 대각화가 최적화 어느 부분에 적용 도나요? 예를 들면 공분산행렬을 구할 때라든지...
    혼자 ML 공부중인데 대각화 왜 알아야 하는지, 최적화 어디에 활용되는 잘 몰라서요 ㅠㅠ