4 장 . 선형방정식의 해법과 응용 (1~3 장 까지의 내용 review)

61
4 장 . 장장장장장장 장장장 장장 (1~3 장 장장장 장장 review 장장 ) 장 장장

description

4 장 . 선형방정식의 해법과 응용 (1~3 장 까지의 내용 review). 최 윤정. Contents. 4.1 가우스 소거법을 이용한 선형방정식의 해법 첨가행렬로의 표현 가우스 - 조단 소거법에 의한 선형방정식의 해법 LU- 분해법에 의한 선형방정식의 해법 4.2 선형방정식의 다양한 응용들 여러 가지 응용들 화학방정식에의 응용 교통 흐름에의 응용 마르코프 체인에의 응용 암호 해독에의 응용 키르히호프 법칙에의 응용. 4.1.1 첨가행렬로의 표현. 4.1.1 첨가행렬로의 표현. - PowerPoint PPT Presentation

Transcript of 4 장 . 선형방정식의 해법과 응용 (1~3 장 까지의 내용 review)

Page 1: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

4 장 . 선형방정식의 해법과 응용(1~3 장 까지의 내용 review 포함 )

최 윤정

Page 2: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

Contents

4.1 가우스 소거법을 이용한 선형방정식의 해법

• 첨가행렬로의 표현

• 가우스 - 조단 소거법에 의한 선형방정식의 해법

• LU- 분해법에 의한 선형방정식의 해법

- 두리틀 , 촐스키

4.2 선형방정식의 다양한 응용들

• 여러 가지 응용들

• 화학방정식 / 교통 흐름 / 마르코프 체인 / 암호 해독 등에 응용

Page 3: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

3

4.1.1 첨가행렬로의 표현

Page 4: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

4

4.1.1 첨가행렬로의 표현

Page 5: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

5

4.1.1 첨가행렬로의 표현

Page 6: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

6

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 7: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

7

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 8: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

8

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 9: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

9

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 10: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

10

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 11: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

11

Page 12: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

12

4.1.2 가우스 - 조단 소거법에 의한 선형방정식의 해법

Page 13: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

행렬의 계수와 연립방정식의 해의 관계

• 다른 형식으로 정의해도 좋습니다 .

13

m 행 n 열의 A

Page 14: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

가우스소거법 : 첨가행렬과 RREF 를 이용한 풀이방법

>>A = [ 1 3 -2 0 2 0 ;

2 6 -5 -2 4 -3;

0 0 5 10 0 15 ;

2 6 0 8 4 18 ];

>>b = [ 0 -1 5 6 ]’;

>>C = [A b];

>> rank(A)

>> rank(C)

이 때 rank(C) < 4 보다 작으므로 무수히

많은 해를 갖는다 . 14

>> rref(C)

위 결과에 대해 다시 정리

>> syms r s t

>> x2 = r; x4=s ; x5=t;

x6=1/3;

>> x1=-3*x2-4*x4 - 2*x5;

>> x3 = -2*x4;

>> sol = [x1 x2 x3 x4 x5 x6]

Page 15: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

상수항이 0 일 때와 0 이 아닐 때를 함께 비교해보세요 .

1) 2x –y =0

x + 3y =0

2) 2x –y =0

4x -2y =0

15

>>A= [ 2 -1; 1 3];

>>rref(A)

>>b=[0 0]’

>>rref([A,b])

>>A= [ 2 -1; 4 -2];

>>rref(A)

>>b=[0 0]’

>>rref([A,b])

• 무수히 많은 해를 가지는 경우

• rank(A) < n

ans =

1 0 0 0 1 0

ans =

1 -1/2 0 0 0 0

Page 16: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

LU-Decomposition

• Ax = b 에서 A = L U 로 인수분해하여 중간해를 구한 후 , 다시 원래의 해를 구하는 방법 .

• L = 하부삼각행렬 , U = 상부삼각행렬

• 두리틀 (Doolittle method), 촐스키 (cholesky), 크라우트 (crout)

• 조사해보기 .

진행방법

• Step1 : Ax = b 를 LUx = b 로 치환

• Step2 : Ux = y 로 두고 , Ly = b 로 대체

• Step3: Ly=b 에 대하여 y 를 구하고

• Step4 Ux=y 를 대입하여 x 에 대한 최종해를 구한다 .16

http://numericalmethodsece101.weebly.com/doolittlersquos-method.html

Page 17: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

예제 4-8

• x1 + x2 + x3 = 7

• x1 + 2x2 + 2x3=7

• x1 + 2x2 + 3x3=5

• Step1 : Ax = b 의 형태로 .

17

1 1 11 2 21 2 3

x1

X2

x3

=775

1 1 11 2 21 2 3

a1 0 0b1 b2 0c1 c2 c3

a'1 a'2 a'3 0 b'1 b'20 0 c'1

• Step2 : A = LU 의 형태로 !

a1 0 0b1 b2 0c1 c2 c3

a'1 a'2 a'3 0 b'1 b'20 0 c'1

x1

X2

x3

=775

• Step3 : LUx = b 에서 Ux 를 y 로 치환 !

a1 0 0b1 b2 0c1 c2 c3

=y1

y2

y3

775

a1 y1 = 7b1 y1 + b2 y2 = 7

c1 y1 + c2 y2 + c3 y3 = 5

• Step4 : Ux 대신 y 를 대입하여 L y = b

……..

Page 18: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

18

>> [L U]=lu(A) 를 이용하여 L 과 U 를 구해보세요 .

Page 19: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

19

Page 20: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

20

Page 21: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

LU 분해론 – 두리틀 알고리즘http://www.engr.colostate.edu/~thompson/hPage/CourseMat/Tutorials/CompMethods/doolittle.pdf

• 수치해석에서 다루긴 하지만 알고리즘에 따라 구현해보겠습니다 .

• A = LU . 정방행렬 이므로 m=n

21

l11 0 … 0l21 l22 … 0…lm1 lm2 … lm3

u11 u12 … u1n

0 u21 … u2n

… 0 0 … umn

=a11 a12 … a1n

a21 a22 … a2n

am1 am2 … amn

* a ij  = ∑𝑘=1

𝑛

𝐿𝑖𝑘∗𝑈𝑘𝑗❑

2 -1 -1-4 6 1-4 -2 6

L 의 대각원소를 1 로 만들어 주고 시작한다 ...

Page 22: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

LU 분해론 – 두리틀 알고리즘

일반적인 Step :

1. 하삼각행렬 (L 행렬 ) 의 대각을 1 로 정한다 . L[i,i]=(1)

2. 상삼각행렬의 1 행의 값을 원 행렬의 1 행과 동일하기 때문에 대입을 한다 .

3. 구하고자 하는 행렬의 값을 대각으로 나눈다 .       ( 대각을 기준으로 위는 U 를 구하고 , 아래는 L 를 구한다 .)

            3-1. 대각의 위쪽 : L[i,j]U[i,j] = a(ji)-sum(L[i,j-1]U[i-1,j])

                  -> A[j,i] 에서 L 은 (i j-1) 까지와 U 은 (i-1 j) 까지의 합을 뺀다 .

            3-2. 대각의 아래쪽 : L[i,j]U[i,j] = a(ji)-sum(L[i,j-1]U[i-1,j])

                    -> A[j,i] 에서 L 은 (i j-1) 까지와 U 은 (i-1 j) 까지의 합을 뺀다 .

  4. 대각으로 나눈다 .( 대각을 기준으로 위는 U 를 구하고 , 아래는 L 를 구한다 .)

            4-1. 대각의 위쪽은 U[i,j)]= A[i,j] - ' 생각 3' 에서 구한값을 뺀다 .

            4-2. 대각의 아래쪽은 L[i,j] = (A]i,j]-' 생각 3' 구한 합 )/U(ji)

22

Page 23: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

23

jiii

ji

ii kiikii

Page 24: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

코드로 확인하고 , lu() 와 비교해봅니다 .

24

function my_lu(A)[m,n]=size(A) if( m ~= n) error(‘ 정방행렬이 아닙니다 .’)endL=eye(n);U=zeros(n,n) %LU 분해for i = 1:n U(i,i)=A(i,i) - L(i, 1:i-1) * U(1:i- 1, i); for j= i+1:n U(i,j)= A(i,j) - L(i,1:i-1) * U(1:i-1,j); L(j,i)= (A(j,i) - L(j,1:i-1) * U(1:i-1, i)) / U(i,i); endend% 출력해보고LU% 확인해보세요A2= L*UA

>>A=[1 2 3; 4 5 6; 7 8 9] ;Ax=B

>>my_lu(A)

>>lu(A)

Page 25: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

LU- 분해론에 대하여 . 좀더 찾아보세요 .

• 원 행렬 A 를 L 과 U 의 두 개의 단순한 문제로 바꾸어 ( 물론 분해연산은 필요합니다 .)

• 순서대로 대입하는 것과 거꾸로 대입하는 방법을 몇 번함으로써 ( 역행렬의 존재와 상관없이 ) 너무도 쉽게 풀 수 있게 된다 .

• 이것이 Von Neumann 과 함께 최초의 stored-program 컴퓨터를 개발한 Alan Turing 이 1948 년에 소개한 LU- 분해이며 그 후 10 년만에 ,

주어진 행렬를 그와 닮음인 (similar) block 대각 행렬로 수렴시키는 QR-factorization 을 이용한 QR-algorithm 이 F. H. Wilkinson 과 House-

holder 등의 기여로 개발되었으며

• 이러한 분해이론은 그후 Cholesky 분해 , Polar Decomposition, Singular Value Decomposition, L D LT Decomposition 등으로 다양한

연구의 한 분야가 되어 오고 있다 .

• 실제로 , 이 기간동안 행렬이론의 기존의 또 , 새로운 지식은 선형계획법 , 비선형계획법 , Markov Chain, 암호이론 , 인구문제 , 교통문제 ,

최적화이론 , 수치해석학등의 다양한 연구분야를 개척하고 발전시키는데 큰 기여를 기여했던 것이다 .

• 우리 사회의 여러 문제를 수학적으로 표현하여 수학 문제로 바꾸어 놓은 후 , 그 문제를 선형화하여 일차연립방정식과 관련된 문제로 바꾼 후 , 행렬에

대한 지식을 이용하여 쉽게 해를 구한 다음 그 해를 원래 사회문제에 대한 답으로 해석하는 것이 바로 수학의 역할 중의 하나이다 .

• 이 과정에서 선형성에 근거한 컴퓨터를 만들었으며 그러한 컴퓨터의 발전과 더불어 선형대수학을 포함한 선형대수학의 연구와 이용이 20 세기 후반에

가히 폭발적으로 활발해졌다………

• ( … )

25

Page 26: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

* 행렬식의 활용 : 보간다항식

• * 보간다항식 : n 개의 점을 지나는 n-1 차 다항식

• P(x) = a0 + a1x1 + … + an-2x n-2 + an-1x n-1

= an-1x n-1 + an-2x n-2 + …..+ a1x1 + a0

• 반데르몽드 행렬을 이용할 수 있습니다 .

26

Page 27: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

네 점을 지나는 3 차 보간다항식 구하기

• (-1, 3), ( 0,4), (1,2), (3, 6)

det(A) !=0 이므로 유일한 해

>>format rat

>>rref([A b]) =

27

1 -1 1 -1 1 0 0 01 1 1 11 3 9 27

a0

a1

a2

a3

3426

A x b

1 0 0 0 40 1 0 0 -29/240 0 1 0 -3/20 0 0 1 17/24

=

P(x) = a0 + a1x1 + a2x2 + a3x3 에 대입

= 4 - 29/24 x1 - 3/2x2 + 17/24x3

1 x1 x2 x3

방법 1: polyfit(X, Y, 3) //X,Y 를 지나는 3 차 다항식의 계수구하기방법 2: A = [ X.^3 X.^2 X [1 1 1 1]’ ] 로 생성한 후 구하기 .

방법 3: 반데르몽드 함수 이용해보기>> X=[-1 0 1 3];

>> A=vander(X)

A =

-1 1 -1 1

0 0 0 1

1 1 1 1

27 9 3 1

>> y=[3 4 2 6]’;

>> C= inv(A)*y 또는 rref([A y])

17/24

-3/2

-29/24

4

>> syms x

>> S=C(4) + C(3).*x.^1 + C(2).*x.^2 + C(1)*x.^3

>> ezplot(S)

an-1x n-1 + an-2x n-2 +… + a0 의 형태

x3 x2 x1

1

Page 28: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

행렬식도 활용할 수 있습니다 .

• 직선방정식 : y= ax + b

• 원 방정식 : (x-a)2+(x-b)2 = r 2

a(x2 + y2 ) + bx + cy + d=0

• 원을 제외한 2 차 곡선의 방정식 : 포물선 , 타원 , 쌍곡선 등

c1x2 + c2xy +c3 y2 + c4x + c15y + c16 = 0

28

Page 29: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

직선의 방정식 : y= ax + b

• ax + by + c = 0 ---1)

• 서로 다른 두 점 (x1, y1) (x2, y2) 를 지나는 직선의 방정식은 주어진 직선 위에 있으므로

• ax1 + by1 + c =0 ---2)

• ax2 + by2 + c =0 ---3)

• 즉 , 이 세 방정식은 변수 a,b,c 에 대한 연립방정식이 된다 .

• Ax = b 에서 b=0 인 동차연립방정식에서 자명해 ( 미지수가 모두 0) 를 가지지 않으려면 , 그리고 직선은 무수히 많은 해를 가지므로 |A| = 0 이 되어야 한다 .

• 따라서 =0 을 구한다 .

• x*(y1-y2) - y*(x1-x2) + x1y2-y1x2 =0 ^^

• 29

x y 1 x1 y1 1 x2 y2 1

Page 30: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

두 점 ( 9 -7), (-8 3) 을 지나는 직선방정식

= 0 을 구한다 .

1 행에 대핸 여인자 전개에 의한 행렬식 구하기

det(A) = sum(akj*Akj) ( k=1 부터 n 까지 )

따라서 x * -10 - y * 17 - 29 = 0

>> syms x y

>> X=[9 -8] ; Y=[-7 3];

>> [X; Y]’

>> A = [x y ; [X; Y]']

>> A =[A, [1 1 1]’]

>> det(A)

>> ezplot(det(A))30

x y 1 9 -7 1 -8 3 1

A = [ x, y][ 9, -7][ -8, 3]

A =[ x, y, 1][ 9, -7, 1][ -8, 3, 1]

- 10*x - 17*y - 29

Page 31: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

원의 방정식 : a(x2 + y2 )+ bx + cy + d=0

• 서로 다른 세 점 ( x1, y1) (x2, y2) (x3, y3) 이 한 원 위에 있다고 가정하면 , a, b, c ,d 에

대한 연립방정식을 얻을 수 있고 , 이때

• a,b,c,d 가 모두 0 인 자명해를 가지면 원은 존재하지 않는다 .

• 원은 무수히 많은 해를 가지므로 이 선형시스템의 행렬식은 0 이다 .

• a(x12 + y12 )+ bx1 + cy1 + d=0

• a(x22 + y22 )+ bx2 + cy2 + d=0

• a(x32 + y32 )+ bx3 + cy3 + d=0

31

x2+y2 x y 1

x12+y12 x1 y1 1 x22+y22 x2 y2 1 x32+y32 x3 y3 1

=0

Page 32: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

세 점 (1,7) (4,-3) (2,3) 을 지나는 원의 방정식

>> syms x y

>> point=[1 7; 4 -3; 2, 3];

>> X=point(:,1) ; Y=pont( : , 2);

A = [ x^2 + y^2 x y ;

X.^2 + Y.^2 X Y ]

>>A=[A, [ 1 1 1 1]’]

A =

[ x^2 + y^2, x, y 1]

[ 50, 1, 7, 1]

[ 25, 4, -3, 1]

[ 13, 2, 3, 1]

>> det(A)

ans =

- 2*x^2 + 270*x - 2*y^2 + 86*y – 772

>> ezplot(det(A))

>> ezplot(det(A),[-20 140], [-60 100])32

Page 33: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

2 차 곡선 방정식 : 원이 아닌 타원 , 쌍곡선 , 포물선

• 어떤 소행성의 궤도 위에 있는 5 개의 점 (5.764, 0.648) (6.268, 1.202)

(6.759, 1.823) ( 7.168, 2.526) (7.480, 3.380) 을 지나는 궤도 방정식

33

x2 xy y2 x y 1

. . . . . . . . . . . . . . . . . .

=0

x2 xy y2 x y 133.224 3.735 0.42 5.764 0.648 139.514 7.556 1.44 6.286 1.202 145.685 12.332 3.32 6.759 1.823 151.38 18.106 6.38 7.168 2.526 155.95 25.133 11.29 7.48 3.36 1

Page 34: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

34

입력과 계산의 편의를 위해 열벡터로 변환하기 .

>> X = [ 7.4800 , 7.1680, 6.7590, 6.2860, 5.7640 ]’;

>> Y = [ 3.3800, 2.5260, 1.8230, 1.2020, 0.6480 ]’;

>> D=[X.^2 X.*Y Y.^2 X Y ]

D =

55.9504 25.2824 11.4244 7.4800 3.3800

51.3802 18.1064 6.3807 7.1680 2.5260

45.6841 12.3217 3.3233 6.7590 1.8230

39.5138 7.5558 1.4448 6.2860 1.2020

33.2237 3.7351 0.4199 5.7640 0.6480

>> C = [ 1 1 1 1 1]’ ;

>> D =[ D, C] ;

>> syms x, y;

>> A=[ x^2 x*y y^2 x y 1 ];

>> F = [A ; D] ;

>> ezplot(det(F), [0 10], [-2 6])

>> hold on, plot(X,Y,'Marker','diamond','LineWidth',2,'LineStyle',':','Color',[1 0 0]);

Plot 은 plot 에디터에서 ..

Page 35: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

35

Page 36: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

응용하기 화학방정식

교통 흐름

마르코프 체인

암호 해독

키르히호프 법칙

실제로는 훨씬 더 많아요

36

Page 37: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

37

4.2.1 여러 가지 응용들

Page 38: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

38

4.2.1 여러 가지 응용들

Page 39: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

39

Page 40: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

40

Page 41: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

41

4.2.2 화학방정식에 응용 1

Page 42: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

42

Page 43: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

43

Page 44: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

44

4.2.2 화학방정식에 응용 2

Page 45: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

45

4.2.2 화학방정식에 응용

Page 46: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

46

4.2.3 교통 흐름에 응용

Page 47: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

47

4.2.3 교통 흐름에 응용

Page 48: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

48

Page 49: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

49

Page 50: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

50

Page 51: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

51

4.2.4 마르코프 체인에 응용

Page 52: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

52

Page 53: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

53

Page 54: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

54

Page 55: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

55

Page 56: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

56

4.2.5 암호 해독에 응용

Page 57: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

57

4.2.5 암호 해독에 응용

Page 58: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

4.2.6 키르히호프 법칙에 응용

58

Page 59: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

59

Page 60: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

60

Page 61: 4 장 .   선형방정식의 해법과 응용 (1~3 장 까지의 내용  review)

61