[기초수학] 선형연립방정식의 해집합

2 분 소요

선형연립방정식

다음과 같이 미지수 x와 y에 관하여 일차식으로 표현되는 방정식을 미지수 x,y에 관한 일차방정식(linear equation)또는 선형방정식이라고 한다.

(그림) 2x-3y=1

이 2x-3y=1 식을 만족하는 순서쌍 (x,y)를 좌표로 하는 모든 점을 좌표평면 위에 나타내면 그래프는 직선이 된다.

다음과 같이 미지수 x,y에 관한 유한개의 선형방정식의 모임을 선형연립방정식(system of Linear Equations)라고 한다.

그리고 선형연립방정식의 해는 모든 선형방정식을 동시에 만족하는 x의 값과 y의 값 (또는 순서쌍(x,y))을 말한다. 한 개의 선형방정식은 좌표평면에서 하나의 직선을 나타내므로, 선형연립방정식의 경우, 두 직선의 교점을 나타내는 순서쌍 (x,y)가 바로 해가 된다.

아래의 그림을 보자

(1) 유일한 해를 갖는다.

(2) 무수히 많은 해를 갖는다.

(3) 해를 갖지 않는다.

일반적으로 n개의 미지수를 가진 선형연립방정식은 유일한 해를 갖거나, 무수히 많은 해를 갖거나, 해를 갖지 않거나 이 중 단 한가지만 만족한다.

첨가행렬(augmented matrix)

선형연립방정식은 행렬을 이용하여 표현할 수 있다. 다음과 같이 n개의 미지수를 갖는 m개의 선형연립방정식에 대하여

이때 행렬A를 선형연립방정식 (1)의 계수행렬(coefficient matrix)라고 하며, A에 b를 붙여서 만든 행렬이다.

image

x+y+2z=9
2x+4y+2z=10
x+2y+3z=5
 첨가행렬은 다음과 같다.
[ 1  1  2  9]
[ 2  4  2 10]
[ 1  2  3  5]

**n차의 정사각행렬 A가 가역이고 b가 R^n의 벡터일 때, 연립방정식 Ax=b는 유일한 해 x= A^-1b를 갖는다.

위의 정의를 가지고 역행렬이 존재할 때, 다음의 해를 구해보자.

A = matrix(3, 3,[1,2,3,2,5,3,1,0,8])
b = vector([1,3,-1])
print("x=",A.inverse()*b)
print("x=",A.solve_right(b))
x= (-1, 1, 0)
x= (-1, 1, 0)

가우스 소거법

선형연립방정식을 풀때, 3가지 연산을 하게 되는데 이를 기본행 연산이라고 하며 아래와 같다.

(1) 두 식을 교환한다.

(2) 한 식에 0아닌 실수를 곱한다.

(3) 한 식에 아닌 실수배를 하여 다른 식에 더한다.

이러한 기본행연산은 주어진 선형연립방정식을 단순한 선형 연립방정식으로 바꾸어줄 뿐 해집합을 바꾸지는 않는다는 것이 핵심 아이디어이다.

또한 선형연립방정식에 행한 기본행 연산은 첨가행렬에 행한 것과 일치하기 때문에 행렬에 대해서도 기본행 연산을 정의할 수 있다.

(1) 행렬에 두 행을 서로 바꾼다.

(2) 행렬의 한 행에 0이 아닌 실수를 곱한다.

(3) 행렬의 한 행에 실수배를 하여 다른 행에 더한다.

image

이렇게 기본행연산을 하면 행렬을 “간단히” 만들 수 있는데, 다음과 같은 특징이 있으면 기약 사다리꼴이라고 한다.

(1) 모든 원소가 0인 행은 모두 행렬의 바닥에 있다.

(2) 그 외의 각 행에서 0이 아닌 첫 원소는 1이다.(여기서는 첫번째 1이라고 하자,선행성분)

(3) 첫 행 이후의 각 행에서 첫번째 1은 윗 행의 첫번째 1 오른쪽에 위치한다.

(4) 첫번째 1을 포함하는 열의 다른 원소는 모두 0이다.

매우 복잡하게 보이지만, 아래의 그림과 같은 행렬이면 기약 행 사다리꼴(reduced row echelon form ,RREF)라고 한다.

image

따라서 연립일차방정식의 풀이는 연립일차방정식에 대응하는 첨가행렬을 구하고, 그 첨가행렬을 기본행 연산을 통해서 “간단히” 만들고 나서, 간단히 만든 첨가행렬에 대응하는 연립일차방정식의 해를 구하면 된다.

연립방정식의 해집합

주어진 선형연립방정식이 무수히 많은 해를 가질 수 있다.

선형연립방정식이 다음과 같이 주어졌을 때, 이를 첨가행렬로 바꾸고 기본행 연산을 적용하여 기역사다리꼴을 만들면 다음과 같은 결과가 나온다.

3x-2y+z-u+5v =1

2x+y-2z+3u =23

x+5y+4z-7u+v =-17


[      1       0       0    4/71   73/71  262/71]
[      0       1       0  -13/71  -42/71  107/71]
[      0       0       1 -109/71   52/71 -501/71]

변수가 5개이고, 미지수는 3개인데, 이것에 대응하는 선형연립방정식을 써주면 다음과 같은 식이 된다.

r과 s에 임의의 실수에 대입하여 얻는 (x,y,z,u,v)는 모두 해가 된다. 따라서 무수히 많은 해를 갖게되며, 이때 모든 해를 해집합이라고 한다.

위와 같은 연립방정식 이 외에도 주어진 연립방정식이 해를 없는 경우도 존재한다.

주어진 데이터에 대한 적절한 모델을 찾는 문제는 선형연립방정식으로 귀결되는데, 이 경우 일반적으로 해가 존재하지 않는다. 이를 해결하기 위해서 가능한 최적해인 <최소제곱해>를 찾는 문제가 대두되는데, 이와 관련된 내용은 다음에 살펴보자.

https://github.com/fenzhantw/fenzhantw.github.io/blob/master/_posts/2021-11-13-Basicmath2.md