오늘은, 우리가 푸는 문제인, ((A))((x)) ((=)) ((b)) 를 풀기 전 확인해야하는 해의 존재성에 대해서 알아보도록 하겠습니다. 해가 유일할 때, 없을 때, 무한할 때와 그에 따른 ((A))의 모양과 함꼐 연관지어 살펴보도록 하겠습니다.
해가 유일할 때 / 없을 때 / 무한할 때 - 해는 어떤 상황에서 과연 몇 개인가?
우리는 이제
((x)) ((+)) ((y)) ((=)) ((2))
((x)) ((-)) ((y)) ((=)) ((0))
과 같은 선형시스템을 ((A))((x)) ((=)) ((b)) 처럼 행렬을 이용해서 표현할 수 있다는 것을 알고 있습니다.
((\begin{bmatrix}
1 & 1\\
1 & -1
\end{bmatrix}))((\begin{bmatrix}
x\\
y
\end{bmatrix})) ((=)) ((\begin{bmatrix}
2\\
0
\end{bmatrix}))
이런 식으로 표현하면 되겠죠.
해가 유일하게 존재하는 경우
우리는 여태까지 해가 유일하게 존재하는 경우에 대해서 다루었습니다. LU 분해로 해를 구할 때도 그렇고, 기존에 다루었던 경우도 ((A))가 ((n)) x ((n))의 정방행렬이고, dependent column이 없는 경우였습니다.
실제로 우리는 ((A))((x)) = ((b))인 상황에서 LU분해, backsubstitution을 통해 문제를 풀었습니다.
https://jaehoonstudy.tistory.com/12
하지만 이 경우도 ((b))가 ((A))의 column space 내에 위치한 경우였고, 우리가 구했던 row echelon form을 rref로 바꾸어보면 identity matrix가 나오면서 dependent column이 없는 것을 알 수가 있습니다.
이를 통해 우리는 "((A))((x)) ((=)) ((b)) 일 때, ((b))가 ((A))의 column space 내에 존재한다면", 즉 ((A))의 column들 간의 linear combination으로 ((b))를 나타낼 수 있다면, augmented matrix을 사용하여 소거법 후, backsubstitution으로 유일한 해를 구할 수 있다는 것을 알게 되었습니다.
해가 없는 경우
하지만 우리의 어떤 데이터가, 행렬 ((A))가 항상 ((n)) x ((n))일 수는 없습니다. 오히려 드문 경우겠죠. ((b))가 ((A))의 column space에 없을 수도 있습니다. 이와 같은 경우에는 ((A))의 column들을, ((x))와 같이 무슨 수로 조합해도 ((b))가 절대 나올 수 없기 때문에 해가 없는 경우입니다. 이 같은 경우, 정확한 해는 구할 수 없지만 주어진 정보들을 가장 잘 활용할 수 있는, 가장 근사치의 해를 구하는 방법이 사용됩니다.
해가 무한한 경우
또한 해가 무한히 많을 수도 있습니다. 기하학적 관점에서 보면, 차원이 찌그러지면서 하나의 축 자체가 점이나 선으로 전부 다 무너질 수 있기 때문입니다. 방정식적인 관점에서 보면,
((x)) ((+)) ((y)) ((=)) ((1))
((2x)) ((+)) ((2y)) ((=)) ((2))
이런 경우인데, 지금 2번째 식을 2로 나누면 첫 번째 식과 같으므로, 그냥 ((x)) + ((y)) ((=)) ((1)) 밖에 안남습니다.
그러면 현재 ((x)) = ((1)) ((-)) ((y))의 값입니다. 여기서 ((x))의 값은 ((y))의 값이 결정된 후에 계산되는 방식입니다. 그러니까 ((y))를 결정하는데에 있어서 ((y))를 아무거나로 설정해도 상관없습니다. 이 상황에서 ((y))를 'free variable' 이라고 하고, ((y))의 값으로 아무거나 가능하므로 해가 무한하다는 뜻입니다.
기하학적인 관점으로 보면 재미있는 일이 일어납니다. 저는 이를 차원이 '찌그러진다' 또는 '무너진다' 라고 항상 표현합니다. 위의 방정식 관점보다 머리에 딱 들어오는게 저는 기하학적 관점이라고 생각합니다.
차원이 무너지는 경우 어떻게 되는지 보겠습니다. 예시로, 어떤 line vector가 있는데 얘가 어떤 선형변환 ((A))로 인해서 zero vector로 무너졌다고 생각해봅시다. 그러면 1차원인 선에서 0차원인 점으로 차원이 무너진 셈입니다. 이 벡터가 span 하는 공간도 선에서 점으로, span하는 공간이 무너진 것입니다.
지금 파란색 ((x)) 벡터가 있고, ((b))는 zero vector인 상황입니다. 이 상태에서 ((A)) 변환이 ((x))를 ((0))으로 만드는 변환이라면, ((x))가 span하는 공간은 어떻게 될까요? 더욱 쉽게 생각하기 위해 ((x))가 span하는 공간인 선을 연속된 점들로 표현해보겠습니다.
자 이제 ((x))가 span하는 공간이 영벡터로 찌그러질 차례입니다. ((x))가 span하는 공간은 무한히 많은 초록색 점들입니다(무한히 많은 점이 모여서 선이 되기 때문에). 얘네가 전부 원점으로 쪼그라드는것 입니다.
손으로 그린 그림이라 좀 난잡하긴 하지만, 선 위의 여러 점들이 원점으로 확 빨려들어가는 형태일 것입니다. 이 괴정에서 무수히 많은 초록색 점들 중 ((x))가 뭐가 되던 간에 무조건 0이 됩니다. 그러므로 무한한 ((x))들이 모두 조건을 충족하는 것입니다. 아름다운 시각이라고 생각합니다.
그래서 dependent한 column이 ((A)) 내에 있다면, 위와 같은 일련의 과정이 일어나 해가 무한한 것입니다.
다른 선형대수 게시물이나 인터넷을 보고 오신 분들이라면 ((A))((x)) ((=)) ((b))에서 ((x))의 particular solution을 구하고, special solution은 ((A))((x)) ((=)) ((0))인 nullspace로 구한다 이런 식의 서술을 보셨을 수도 있을 것입니다. 이 special solution이 바로 제가 지금 직관적으로 말씀드린, nullspace로 collapse해버리는 벡터들의 basis를 이용해서 서술되는 것입니다. 무한한 것들이 더 낮은 차원으로 무너지는 다대일 매핑? 같은 느낌이 일어나기 때문에 해가 무한한 것입니다.
((A))의 모양과 관련하여 선형시스템의 해
이번에는 ((A))의 모양과 관련지어 일어나는 ((A))((x)) = ((b))의 다양한 상황들에 대해서 자세히 다뤄보도록 하겠습니다.
우리는 ((A))가 ((n)) x ((n))인 경우를 다뤘었습니다. 정사각형이죠. 흔히 행렬은 행의 개수, 열의 개수로 ((m)) x ((n)) 행렬로 표현합니다. 다. 직사각형 행렬도 있을 것입니다. 세로로 길쭉한 직사각형도 있을 것이고, 가로로 길쭉한 직사각형도 있을 것입니다.
이를 수식으로 정리하면, ((m)) > ((n)), ((m)) ((=)) ((n)), ((m)) < ((n)) 이렇게 일 것입니다.
이런 상황들입니다.
하나하나 볼까요?
((A))가 ((m)) > ((n)) 일 경우
위의 사진을 예시로 들면, 지금 ((x))에는 미지수가 3개 있습니다. ((x₁)) 부터 ((x₃)) 이렇게 3개입니다. 그런데 방정식은 지금 4개 있습니다(행렬의 행이 4개입니다). 이렇게 행렬이 세로로 길쭉한 경우, ((m)) > ((n)) 인 경우는 방정식의 개수가 미지수의 개수보다 많은 상황입니다. 이러한 경우를 overdetermined된 경우라고 합니다.
영어 단어를 보면 알겠지만, 미지수가 만족시켜야할 조건인 방정식이 미지수에 비해 너무 많습니다. 적은 미지수로 많은 조건들을 싹 다 만족시켜주어야 해가 존재할 수 있는 상황입니다. 이 연립방정식에 포함된 방정식 전부를 만족시켜주는 부분이 없기에 해가 없는 것입니다.
물론 존재할 수 있습니다. 적은 미지수로 방정식이 제시하는 조건들을 싹 다 만족시켜줄 수도 있겠죠. 그래도 해가 없을 가능성이 훨씬 높습니다. 그래서 정리하면, ((m)) > ((n)) 상황에서는 해가 존재할 수도 있으나, 해가 없을 확률이 훨씬 높다고 할 수 있겠습니다.
((A))가 ((m)) = ((n)) 일 경우
위와 동일한 접근으로, 지금은 방정식과 미지수의 개수가 같은 상황입니다. 이러한 경우를 determined된 경우라고 합니다.
<일반적인 경우>
((A)) 내에 dependent column이 없는 '일반적'인 경우에서는 해가 유일하게 존재하고, 이를 구할 수 있습니다.
<특수한 경우>
((A)) 내에 dependent column이 있는 '특수한' 경우에서는 해가 무한하게 존재하고, 이들을 basis를 이용해서 표현할 수 있습니다.
일반적인 경우는 유일하게 존재하는 것을 backsubstitution으로 구하면 되니 잠깐 넘겨두고, 특수한 경우에 대해서 조금 더 설명해보겠습니다. 위에서 해가 무한한 경우를 보시면, 지금 무한한 점들이 더 낮은 차원으로 줄어들고 있습니다.
행렬 내에 dependent한 column들이 있다는 뜻이고, matrix가 full rank가 아니라는 뜻이며(열이 3개 있으면 3개 열을 full로 활용해서 3차원을 span해야 하는데 그게 아니니), nullspace에 영벡터가 아닌 다른 벡터가 있다는 뜻입니다.
null space에 영벡터가 아닌 다른 벡터가 있다는 뜻은, 위의 제 손그림을 예로 들면, 원래 full rank일 때는 full rank의 선형변환 이후에 원점의 영벡터만 영벡터로 가야되는데, 지금 다른 파란색 벡터인 ((x))도 영벡터로 가는 중입니다. 그러면 ((A))((x)) ((=)) ((0))이 어떤 벡터 ((x))에 변환 ((A))를 가했을 때 ((0))이 되는 상황인데, 이 ((x))가 영벡터가 아닌 다른 벡터들도 있다는 뜻이고, 그러면 nullspace 부분공간의 정의에 의해 ((A))((x)) ((=)) ((0))을 만족시키는 ((x))가 있다는 것입니다.
이 nullspace의 벡터들도 해를 만족하기 때문에, 얘네도 해에 포함시켜야 합니다.
왜 해인지가 잘 이해가 안된다면,
저렇게 nullspace를 만족하는 ((x))도 어차피 더하면 = b 부분을 만족할 수 있기에 더 낮은 차원으로 찌그러드는 벡터들(해)도 고려해주는 것입니다.
((A))가 ((m)) < ((n)) 일 경우
이번에는 미지수가 방정식보다 많은 경우입니다. 아까 ((A))가 ((m)) > ((n))일 경우에는 미지수가 방정식보다 적어서, 모든 방정식을 만족시켜주는 미지수가 없다라고 해석했습니다. 여기서는 반대로 모든 방정식을 만족시켜줄 미지수가 남아돕니다. 방정식들을 만족시키고도 남아, 어떤 값을 가져도 상관없이 모든 방정식들을 만족시켜줄 수 있는 것입니다. 이 '남아도는' 미지수들을, 어떤 값으로도 자유롭게 assign해줄 수 있다고 보고 이를 'free variable' 이라고 합니다. 말그대로 자유롭게 값을 가질 수 있다는 의미입니다.
그래서 남아도는 애들이 아무 값이나 가질 수 있으므로, 또 무한하게 있는 경우입니다. ((A))가 ((m)) = ((n))의 , <특수한 경우> 처럼 무한한 상황이므로 똑같이 해주면 됩니다. 그냥 free variable 없이 풀어도 만족하는 해와, free variable들을 고려하여 nullspace, ((A))((x)) = ((0))인 애들을 고려해주면 되는 것입니다.
((A))가 ((m)) < ((n))일 경우에, ((A))((x)) = ((0))의 0이 아닌 해가 무조건 있다고 생각하시면 됩니다.
이를 해가 있냐 없냐로 정리해보면, 다음과 같을 것입니다.
생각의 흐름을 어떻게 해야하는가?
이렇게 지금까지,
해가 유일한 경우, 해가 무한한 경우, 해가 없는 경우 에 대해서 살펴보았고
((m)) > ((n))인 ((A)), ((m)) = ((n))인 ((A)), ((m)) < ((n))인 ((A)) 에 대해서 살펴보았습니다.
먼저 선형시스템을 맞닥뜨릴 때, ((A))((x)) = ((b))인 상황과 마주했을 때 어떻게 해야할까요?
((A))의 모양을 보자 → Nullspace를 보자
((A))가 어떻게 생겼는지 보면 일단 1차적으로 명확해지고 경우를 나눌 수 있습니다.
((A))의 모양이 ((m)) > ((n))일 경우: 아, 해가 없을 확률이 높겠구나?
((A))의 모양이 ((m)) = ((n))일 경우: 해가 있겠다! 근데 1개일 수도 있고 무한할 수도 있겠다! dependent한 column을 찾아봐야지!
((A))의 모양이 ((m)) < ((n))일 경우: 해가 무조건 있겠다. ((A))((x)) ((=)) ((0))을 만족하는 ((x))들을 잘 확인해봐야지!
이렇게 생각하면 됩니다.
선형대수의 맥락이 바로 이것입니다. ((A))((x)) = ((b))를 어떻게 풀 것인가가 바로 주요 선형대수의 주요 관심사이기에, 이 해의 존재성을 기준으로 경우를 나눠서 '아 이럴 때는 이렇게 푸는구나", "아 이럴 때는 이러한 방법들을 쓰는구나" 이렇게 큰 그림을 보면서 이해하면 훨씬 머리에 더 잘 들어올 것입니다.
이전에 LU분해를 통해 해가 유일한 상황에서 이를 어떻게 구하는지 다루었습니다.
다음에는 해가 무한한 경우일 때 어떻게 해를 구하는지 같이 살펴보도록 하겠습니다.
'선형대수' 카테고리의 다른 글
직교성(Orthogonality)과 부분공간(Subspaces) (1) | 2024.01.31 |
---|---|
Solving ((A))((x)) ((=)) ((b)) (When ((m)) < ((n))) (2) | 2024.01.30 |
Gauss-Jordan Elimination(가우스-조던 소거법) & RREF (1) | 2024.01.29 |
Four Fundamental Subspaces(4개의 주요 부분공간) (0) | 2024.01.28 |
Vector Space(벡터공간), Subspace(부분공간) (0) | 2024.01.27 |