개인공부/선형대수학

Av=b의 완전해 구하기

RAVIN 2021. 12. 25. 01:10

저번 두 포스트에서 행렬의 영공간과 영공간 해, 열공간을 공부했다. 이번 포스트에서는 추가적으로 방정식의 특수해(special 말고 particular)를 구하고, 이를 바탕으로 연립방정식의 완전해를 구한다.

기본적인 원리는 지난 포스트 "가우스 소거법으로 선형 연립방정식 풀기"와 같다. 연립방정식을 행렬 - 벡터 곱 Av = b 형태로 표현하고 가우스 소거와 조던 소거를 적용하여 U 혹은 R 형태로 만든 다음 후진대입하여 푼다. 다만 이 절에서는 주어진 시스템이 가역이 아닌 경우까지 포함하며, 다른 부분또한 조금 더 일반적으로 공부한다.

 

1. 방정식의 특수해와 완전해 구하기

직전 포스트에서 방정식의 영공간 해를 구하는 방법을 공부했다. 방정식의 완전해 = 특수해 + 영공간의 해 이므로, 특수해를 구하는 것만 배운다면 이제 방정식의 완전한 해를 구할 수 있다. 굳이 어려울 건 없고, 미분방정식의 특수해를 방정식 f(y_p) = q(t) 으로부터 구했듯이, 일반 연립방정식의 특수해 v_p 또한 방정식 Av_p = b 를 풀어 얻을 수 있다.

특수해는 그냥 방정식을 풀기만 하면 된다. (Av_p = b를 만족시키는 v_p 라면 아무거나 가능하다.) 여기서는 여러 가지 v_p중 찾기 쉬운 하나의 특수해를 찾는 방법을 공부한다.

예시를 하나 들어보면

방정식의 영공간 해를 구하는 방법은 이미 알고있고, 특수해를 구하는 방법도 알게 되었으니 두 개의 해를 더해주기만 하면 방정식의 완전해를 구할 수 있다. 위의 예시의 영공간 해를 구하고 완전해를 구해보자.

 

 

 

2. 행렬의 계수에 따른 해의 존재성과 유일성

방정식의 완벽한 해를 구하는 방법을 배웠고 이제 방정식의 행렬의 계수에 따라 해가 존재하는지, 존재한다면 유일한지를 판단할 것이다.

우선 해의 존재성을 판단하는 방법부터 알아보자.

해의 존재성 판단: 행렬의 계수와 실질적인 행의 개수가 일치할 때

시작하기 전에 설명의 편의를 위해 Av = b 에서 A가 m X n 행렬, v는 n X 1 열벡터, b는 m X 1 열벡터라고 가정한다.

연립방정식 Av = b 가 주어졌고, 소거를 통해 이를 Rv = d 꼴로 만들었다고 해보자. 이때 해가 존재하는지 판단하는 방법은 다음과 같다:

*주어진 행렬을 소거하여 RREF를 만들었을 때, 모든 성분이 0인 행이 존재하지 않는다면 주어진 방정식은 무조건 해를 가진다. 즉 r = m 이거나 r = m = n 이다. 특히 r = m 일때 방정식이 꽉 찬 행 계수(full row rank)를 가진다고 한다.

두 가지의 경우가 있다. 하나는 행렬이 가역 행렬일 때이며, 나머지 하나는 행의 개수가 열의 개수보다 작은 경우이다. 두 가지 행렬 모두 RREF로 전환 시 단위 행렬을 포함하며, 단위 행렬의 열들만으로 모든 열벡터를 생성 가능하기 때문에, 해는 반드시 존재한다.

*주어진 행렬을 소거하여 RREF를 만들었을 때, 모든 성분이 0인 행이 존재한다면, 우변의 소거된 벡터 d에서 모든 성분이 0인 행과 동일 위치에 존재하는 성분들이 모두 0이어야만 해가 존재한다. 만약 하나라도 0이 아니라면 시스템은 해를 가지지 않는다.

소거된 행렬에서 모든 성분이 0인 행이 존재한다는 것은 연립방정식에 좌변이 모두 0인 방정식이 존재한다는 것과 동치이다. 따라서 해당 방정식의 우변 또한 0이어야 방정식이 해를 가지며(0 = 0) 0이 아닌 경우 방정식은 해를 가지지 않는다.

이때 두 번째 경우처럼 소거된 행렬에서 방정식 0 = 0 이 존재하는 경우, 해당 행은 그냥 존재해지 않는다고 봐도 무방하다. 방정식 0 = 0은 모든 변수에 대해 성립하기 때문에, 해가 존재함을 보이는 것 말고는 아무 의미가 없다. 따라서 두 번째 경우에서 해가 존재함을 확인했다면, 그 후로는 첫 번째 경우와 같다고 보아도 무방하다.(r = m인 경우)

해의 유일성 판단: 행렬의 계수와 실질적인 열의 개수가 일치할 때

이번에는 해가 유일한지 판단한다. 방정식 Av = b 에서 A가 가역 행렬이면 해 v는 유일하다. 이건 이미 알고 있는 사실이다.

다만 조금 더 일반적인 경우를 따지고 있으므로, 이전과 마찬가지로 Av = b 에서 A가 m X n 행렬, v는 n X 1 열벡터, b는 m X 1 열벡터라고 가정한다. m과 n은 어떠한 자연수 값이던 가질 수 있다. 

첫번째, n > m이면, 즉 행의 개수가 열의 개수보다 적으면 방정식은 유일한 해를 가지지 않는다. 방정식은 해가 존재하지 않거나, 무한개의 해를 가진다. 이는 위에서 설명한 내용이다. 지금 고려할 것은 m > n인 경우이다. 이 경우 주어진 행렬을 소거하여 RREF를 만들었을 때, 두 가지 경우가 존재한다. 순서대로 알아보도록 하자.

*주어진 행렬을 소거하여 RREF 를 만들었을 때 모든 성분이 0인 행과 열이 존재하지 않는다. 즉 RREF = I 이다.

이 경우 주어진 행렬은 가역이고 이는 모든 열들이 피봇 열임과 동치이다. 따라서 방정식은 무조건 유일한 해를 가진다. 추가적인 설명은 굳이 하지 않는다.

*주어진 행렬을 소거하여 RREF 를 만들었을 때 모든 성분이 0인 열이 존재한다. 즉 RREF = [I 0] 이다.

이 경우 주어진 방정식은 무한 개의 해를 가진다. 모든 성분이 0인 열에 대응하는 변수들은 아무거나 와도 상관없기 때문이다.(어차피 0을 생성할 수 밖에 없음. 우변 열벡터들은 좌변 행렬의 열들을 선형결합하여 만들어지고, 0은 덧셈의 항등원이므로!) 실질적으로 우변을 생성하는 열들은 단위벡터 I에 들어있다.

정리: 꽉 찬 열 계수와 행 계수

Av = b 에서 A가 m X n 행렬, v는 n X 1 열벡터, b는 m X 1 열벡터이고 방정식이 해를 가질 때 행렬의 계수 r = rank(A)과 m, n의 관계로부터 다음을 알 수 있다.

꽉 찬 행 계수, 즉 r = m 인 경우 모든 행렬 A는 다음과 같은 특성을 가진다:

1. A의 모든 행은 피봇을 포함하며, RREF는 영벡터 행이 없다.

2. 방정식 Av = b는 어떠한 b에 대해서도 해를 가진다.

3. C(A) = R^m 이다.

4. N(A)에는 n - r 개의 special solution이 존재한다.

꽉 찬 열 계수, 즉 r = n 인 경우 모든 행렬 A는 다음과 같은 특성을 가진다:

1. A의 모든 열들은 피봇 열이며 그 열들은 서로 독립이다.

2. 자유 변수 혹은 special solution 은 존재하지 않는다.

3. 영벡터 v = 0만이 Av = 0의 해가 되며 N(A) = Z 이다.

4. 방정식 Av = b는 해를 가지지 않거나 유일한 해를 가진다.

 


연습 문제

(5.3절 연습문제 18번)주어진 행렬 A에 대해 다음 명제가 참임을 보여라: rank(A) = rank(A^T)

(5.3절 연습문제 36번)방정식 Av = b 와 Cv = b 가 모든 b에 대해 동일한 완전해를 가진다. A = C 임을 보여라.