Tải bản đầy đủ (.pdf) (13 trang)

chuong 3 - he pt tuyen tinh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (144.39 KB, 13 trang )

I. ĐẶT BÀI TOÁN :
Hệ phương trình tuyến tính n pt và n
ẩn có dạng
Ax = b

CHƯƠNG 3
HỆ PHƯƠNG TRÌNH
TUYẾN TÍNH

với

 a11 a12
a
a22
A = ( aij ) =  21
 ... ...

 a n1 a n 2

... a1n 
... a2 n 
... ... 

... ann 

 x1 
 b1 
x 
b 
x = 2 b= 2
 ... 


 ... 
 
 
 xn 
 bn 

1

2

II. PHƯƠNG PHÁP GAUSS

Các phương pháp giải
 Phương pháp giải chính xác

1. Các dạng ma trận đặc biệt :

 Phương pháp Gauss
 Phương pháp Gauss-Jordan
 Phương pháp nhân tử LU
 Phương pháp Cholesky

a. Ma trận chéo :
 a11
 0
A= 
 ...

 0


 Phương pháp giải gần đúng

0
a 22

...
...

...
0

...
...

0 
0 

... 

a nn 

detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i

 Phương pháp lặp Jacobi
 Phương pháp lặp Gauss-Seidel

Nghiệm xi = bi/aii
3

4



b. Ma trận tam giác dưới
 a11
a
A=  21
 ...

 a n1

0
a 22

...
...

...
an 2

...
...

c. Ma trận tam giác trên :

0 
0 

... 

a nn 


 a11
 0
A= 
 ...

 0

a12

...

a 22
...
0

...
...
...

a1 n 
a 2 n 
... 

a nn 

detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i

detA = a11a22 . . . ann ≠ 0 ⇔ aii ≠ 0, ∀i


Phương trình có nghiệm

Phương trình có nghieäm
bn

 xn = a

nn

 x = 1 [b −
 k a kk k

b1

 x1 = a

11

k −1
 x = 1 [ b − ∑ a x ] , k = 2, n
k
k
kj j

a kk
j =1

n




a kj x j ] , k = n − 1..1

j = k +1

5

6

Ví dụ : Giải hệ phương trình

2. Phương pháp Gauss :
Ta sử dụng các phép biến đổi sơ cấp theo
dòng để chuyển ma trận A về ma trân
tam giác trên

Giải

 x1 − x 2 + 2 x 3 − x 4 = − 8
2 x − 2 x + 3x − 3x = −20
 1
2
3
4

+
+
=
−2
x

x
x
1
2
3


x1 − x 2 + 4 x 3 + 3 x 4 = 4

 1 −1
 2 −2
[ A / b] = 
1 1

 1 −1

Các phép biến đổi sơ cấp theo dòng
 hoán chuyển 2 dòng

1
0
h4 = h4 /2

→
0

0

 nhân 1 dòng với 1 số khác 0


h2 ↔ h3

 cộng 1 dòng với dòng khác
7

2 −1 −8  h2 =h2 −2 h1  1 −1
h3 = h3 − h1
0 0
3 −3 −20 
h4 = h4 − h1

→
1 0 −2 
0 2


4 3 4 
0 0
−1 2 −1 −8 
 1 −1
2 −1 1 6  h 4=h 4+h 3  0 2
→ 
0 −1 −1 −4 
0 0


0 1 2 6
0 0

2 −1 −8 

−1 −1 −4 
−1 1 6 

2 4 12 
2 −1 −8 
−1 1 6 
−1 −1 −4 

0 1 2

Giải pt ma trận tam giác trên, ta được nghiệm
x = (-7, 3, 2, 2)t

8


Phương pháp Doolittle :

III. PHƯƠNG PHÁP NHÂN TỬ LU

Giả sử A ma trận không suy biến và a11 ≠ 0
Ta có thể phân tích A thành
A = LU

Phân tích ma trận A thành tích 2 ma trận L và U
A = LU
L : ma trận tam giác dưới
U : ma trận tam giác trên

 1

l
L =  21
 ...

 ln1

Phương trình Ax = b ⇔ L(Ux) = b
Ta đưa về giải 2 hệ phương trình

0
1

...
...

...
ln 2

...
...

 u11 u12
 0 u
22
U= 
 ... ...

0
 0


 Ly = b

Ux = y

0
0

... 

1

Ma trân ∆ dưới

... u1n 
... u2 n 
... ... 

... unn 

Ma trân ∆ trên

10

9

Ví dụ : Giải hệ phương trình

Các phần tử của L và U được xác định theo
công thức














 2 x1 + 2 x 2 − 3 x 3 = 9

 − 4 x1 − 3 x 2 + 4 x 3 = − 15
2x + x + 2x = 3
 1
2
3

u1 j = a1 j , 1 ≤ j ≤ n
li1 =

Giải
Ta phân tích

ai1
, 2≤i≤n
u11
i −1


 2
A =  − 4
 2


k =1

u 22 = a 22 − l 21u12 = 1

uij = aij − ∑ lik ukj , 1 < i ≤ j
j −1
1
lij = [aij − ∑ lik ukj ], 1 < j < i
u jj
k =1

2
−3
1

−3   1
4  =  − 2
2   1

0
1
l 32

02

0   0
1   0

2
u 22
0

−3 
u 23 
u 33 

u 23 = a 23 − l 21u13 = − 2
l 32 =
11

1
( a 32 − l 31u12 ) = − 1
u 22

u 33 = a 33 − l 31u13 − l 32 u 23 = 3

12


TH đặc biệt : A ma trận 3 đường chéo

Giải heä Ly = b
0 0   y1   9 
 1
 −2 1 0   y  =  −15 


 2  

 1 −1 1   y   3 

 3  


 a11 a12
a
 21 a22
A =  0 a32

 ... ...
 0
0


 y1   9 
⇒  y2  =  3 
   
 y   −3 
 3  

Giải hệ Ux = y

0
a23
a33
...

0

0
0 
...
0
0 
...
0
0 

... ...
... 
... ann −1 ann 

...

Ta phân tích A thành LU với

 2 2 −3   x1   9 
 x1   2 
 0 1 −2   x  =  3 
   

  2    ⇒  x2  =  1 
 0 0 3   x   −3 
 x   −1 

 3   
 3  


 1 0 0 ...
l
 21 1 0 ...
L =  0 l32 1 ...

 ... ... ... ...
 0 0 0 ...


0
 u11 u12
 0 u

0
22

0
0 U = 0


... 
 ... ...

 0
0
1


0 

0 
... 0 

... ... 
... unn 

0 ...
u23 ...
u33
...
0

13

14

Ví dụ : Giải hệ phương trình Ax = b

Các phần tử của L và U được xác định theo
công thức

 2
A =  −1

 0


a21

u

=
a
,
u
=
a
,
l
=
11
11
12
12
21

u11

uii = aii − li i −1ui −1i , i = 2, n

ui i +1 = ai i +1 , i = 2, n − 1

a
li +1i = i +1i , i = 2, n − 1
uii


−1
2
−1


Giải
Ta phân tích
0
 1

A =  −1 / 2 1
 0
l32


0 
−1

2 

2
b = 1
 
 
2

0   2 −1 0 
0   0 u22 u23 
1   0 0 u33 

u22 = a22 − l21u12 = 3 / 2
u23 = a23 = −1, l32 =
15

a32

= −2 / 3
u22

u33 = a33 − l32u23 = 4 / 3

16


Giải hệ Ly = b

IV. PHƯƠNG PHÁP CHOLESKY

 y1   2 
⇒  y2  =  2 
  

 y   10 / 3 
 3 


0
0   y1   2 
 1
 −1 / 2
1
0   y2  =  1 

   
 0
−2 / 3 1   y3   2 



Định nghóa :
 Ma trân A gọi là đối xứng nếu
A = At

Giải hệ Ux = y
0   x1   2 
 2 −1
 0 3 / 2 −1   x  =  2 

 2  

0
  x   10 / 3 
0
4
/
3

 3  


 Ma trân A gọi là xác định dương nếu

 x1   5 / 2 
⇒  x2  =  3 
  

 x  5 / 2

 3 


n

n

x t Ax = ∑∑ aij xi x j > 0, ∀x = ( x1 , x2 ,..., xn )t ∈ R n , x ≠ 0
i =1 j =1

17

Để kiểm tra xác định dương, ta dùng đình lý sau:
Định lý :
Ma trận A là xác định dương khi và chỉ khi tất
cả các định thức con chính của nó đều dương
Ví dụ : Kiểm tra tính xác định dương của ma trận
 1 1 −1 
A =  1 2 0 
 −1 0 4 



Giải

Các định thức con chính:
1

1


∆3 = 1 2
−1 0

−1

∆1 = 1 > 0, ∆ 2 =

1 1
1 2

=1> 0

1 2
1 1
1 1
0 = −1
−0
+4
=2>0
−1 0
−1 0
1 2
4

Vaäy A là xác định dương

19

18


Định lý (Cholesky) :
Nếu A ma trận đối xứng và xác định dương, thì
tồn tại ma trận ∆ dưới, khả đảo B sao cho
A = BBt
Ma trận B = (bij) tìm theo công thức sau :
 b11 = a 1 1

 b = a i1 , 2 ≤ i ≤ n
 i 1 b1 1

i −1

b
a
bik2 , 2 ≤ i ≤ n
=


ii
 ii
k =1

j −1

1
b
=
a

bik b jk ], 2 ≤ j ≤ i

[
 ij

ij
b jj
k =1


20


Ví dụ : Giải hệ phương trình Ax = b

Giải

 1
A= 1

 −1


1
2
0

−1
0 

4 


Giải hệ By = b

1

b = 2
 
 3
 

1 0

1 1
 −1 1


0
0 
b33 

 y1   1 


⇒  y2  =  1 
y  
 3   3 / 2 

Giải hệ Bt x = y

Ta có A ma trận đối xứng và xác định dương
Phân tích A = BBt

1 0
B =  1 b22
 −1 b
32


  y1   1 
   
  y2  =  2 
   
2   y3   3 

0
0

1 1

0 1
0 0


Các hệ số
b = a − b 2 = 1
22
21
 22

1
[a32 − b31b21 ] = 1
 b32 =

b
22


2
2
 b33 = a33 − b31 − b32 = 2

−1   x1   1 



1   x2  =  1 
 
 
2   x3   3 / 2 

 x1   3 
⇒  x2  =  −1 / 2 
 x   3/ 2 
 3 


21

Ví dụ :

22

V. PHƯƠNG PHÁP LẶP


6
−9 
9


A =  6 20 −22 
 −9 −22 26 



1. Chuaån :
a. Chuaån vector :
Định nghóa :
Chuẩn của vector x∈Rn là hàm số thực
ký hiệu là ||x||, thỏa 3 điều kiện sau :

Phân tích A = BBT theo pp cholesky
Tính b11+b22+b33

(i) ||x||≥0, ∀x∈Rn và ||x|| = 0 ⇔ x=0
(ii) ||λx|| = |λ| ||x||, ∀x∈Rn, ∀ λ∈R
(iii) ||x+y|| ≤||x|| + ||y||, ∀x,y∈Rn
23

24


Có nhiều công thức chuẩn khác nhau, xét 2
công thức


b. Chuẩn ma trận :
Định nghóa :
Chuẩn của ma trân A được xác định theo
công thức

∀x= (x1,x2,…, xn)t

|| x ||∞ = max {| xi |}
1≤ i ≤ n
n

|| x ||1 = ∑ | xi |

|| A ||= max
x ≠0

i =1

Dễ dàng kiểm tra ||x||∞, ||x||1 là các chuẩn
gọi là chuẩn ∞ và chuẩn 1
Ví dụ :

 −5 
 
4
cho vector x =  
 3
 
 −2 


Định lý : Cho ma trận A = (aij), ta có
n

|| A ||∞ = max{∑ | aij |}
1≤ i ≤ n

|| x ||∞ = 5
|| x ||1 =

|| Ax ||
= max || Ax ||
||x||=1
|| x ||

j =1

n

|| A ||1 = max{∑ | aij |}

14

1≤ j ≤ n

i =1

25

Ví dụ :


26

c. Hội tụ theo chuẩn :

 −1 3 6 


Cho ma traän A =  3 −5 3 
 8 −2 −4 



Định nghóa :
Dãy các vector {x(m)}∈Rn hội tụ về x
theo chuẩn nếu ||x(m) –x|| →0 khi m→∞

Tính

Định lý :
Dãy {x(m)=(x1(m), x2(m),…, xn(m) )}∈Rn hội tụ về
x = (x1, x2, …, xn) theo chuẩn nếu và chỉ nếu
dãy {xk(m)}hội tụ về xk khi m→∞, ∀k=1,n

|| A ||∞ = 14
|| A ||1 = 13

27

28



2. Phương pháp lặp :
Ta chuyển hệ pt về dạng
x = Tx + c
Với T là ma trận vuông cấp n và c là 1 vector
Để tìm nghiệm gần đúng, với vector ban đầu
x(0), ta xây dựng dãy lặp theo công thức
x(m) = Tx(m-1)+ c, ∀m=1,2,…
Ta cần khảo sát sự hội tụ của dãy {x(m)}

Ta có định lý sau
Định lý :
Nếu ||T|| < 1 thì dãy lặp x(m) sẽ hội tụ về nghiệm
x của hệ pt, với mọi vector ban đầu x(0).
Ta có công thức đánh giá sai số :
(1) || x

(m)

|| T ||m
− x ||≤
|| x (1) − x (0) || tiền nghiệm
1− || T ||

hoặc (2) || x ( m ) − x ||≤

|| T ||
|| x ( m ) − x ( m−1) || hậu nghiệm
1− || T ||


29

Phương trình

VI. PHƯƠNG PHÁP LẶP JACOBI
Ta phân tích
A=D+L+U
trong đó
 a11

0
D=
 ...

 0

0
a22
...
0

...

0 

... 0 
ma trận chéo
... ... 


0 ann 

 0

a
L =  21
 ...

 an1

0
0
...
an 2

 0 a12

0 0
U =
 ... ...
 0 0


30

... 0 

... 0 
ma trận ∆ dưới
... ... 


... 0 

... a1n 

... a2 n 
ma trận ∆ trên
... ... 

0 0 
31

Ax = b



(D+L+U)x = b



Dx = -(L+U)x + b



x = -D-1(L+U)x + D-1b



x = Tx + c


với T = -D-1(L+U) và c = D-1b
pp lặp theo phân tích trên gọi là pp lặp Jacobi
Bây giờ ta tìm điều kiện để pp laëp Jacobi HT
32


Định nghóa :

Định lý :

Ma trận A gọi là ma trận đường chéo trội nghiêm
ngặt nếu nó thỏa điều kiện sau :

Nếu A là ma trận đường chéo trội nghiêm ngặt, thì
pp lặp Jacobi hội tụ với mọi vector ban ñaàu x(0)

n

∑ |a

j =1, j ≠i

ij

| <| aii |, ∀i = 1, n

Ta có công thức lặp Jacobi

Nhận xét :
Nếu A là ma trận đường chéo trội nghiêm ngặt thì

detA ≠ 0 vaø aii ≠ 0 ∀i=1,n

xi( m ) =

n
1 i −1
[−∑ aij x (jm −1) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1

33

CM

34

Ta coù x(m) = Tx(m-1)+ c

Ta coù T = -D-1(L+U) vaø c = D-1b
 1 / a11
0
...
0 


0
1
/
a
...

0 
22
D −1 = 
 ...
...
...
... 


0
0
0
1
/
ann 



 0

 a
 − 21
T =  a22
 ...

 an1
−
 ann

a

− 12
a11
0
...


an 2
ann

a 
... − 1n 
a11 
a2 n 

... −
a22 
...
... 

...
0 


 x1(m)   0
−a12 / a11
 (m)  
0
 x2  =  −a21 / a22
   ...
...

 (m)  
 x  −a / a −a / a
n2
nn
 n   n1 nn

 b1 


 a11 
b 
 2 
c =  a22 
 .. 


 bn 


 ann 

Vậy

A ma trân đường chéo trội nghiêm ngặt neân
n

| aij |

j =1, j ≠i


| aii |

|| T ||∞ = max{ ∑
1≤i ≤ n

... −a1n / a11  x1(m−1)   b1 / a11 
 


... −a2n / a22  x2(m−1)   b2 / a22 
+
  ... 
...
... 
 


...
0  xn(m−1)   bn / ann 

xi( m ) =

}<1

n
1
[−∑ aij x (jm −1) + bi ], ∀i = 1, n
aii j =1
j ≠i


xi( m ) =

⇒ pp lặp hội tụ
35

n
1
[−∑ aij x (jm −1) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1
i −1

36


a.

Ví dụ : Cho hệ phương trình
 10 x1 + x 2 − x 3 = 7

 x1 + 10 x 2 + x 3 = 8

 − x1 + x 2 + 10 x 3 = 9

 10 1

A =  1 10
 −1 1



−1 

1 
10 

ma traän đườn g chéo trội nghiêm ngặt

Công thức lặp Jacobi
 ( m) 1
− x2( m −1) + x3( m−1) + 7)
 x1 = 10 (

 ( m) 1
( m −1)
− x3( m −1) + 8)
 x2 = (− x1
10

 ( m ) 1 ( m −1)
− x2( m −1)
+ 9)
 x3 = 10 ( x1


a. Tìm nghiệm gần đúng x(5) với vector ban đầu
x(0) = 0
b. Tính ma trận T và c
c. Tính sai số của nghiệm x(5) theo công thức
hậu nghiệm


m

0

1

2

3

4

5

x1(m)

0

0.7

0.71

0.725

0.7267

0.72717

x2(m)


0

0.8

0.64

0.640

0.6368

0.63648

x3(m)

0

0.9

0.89

0.907

0.9085

0.90899

37

VII. Phương pháp lặp Gauss-Seidel :


b. Ta có

Ta phân tích
A=D+L+U
như trong phần trước

 0
−0.1 0.1 
 0.7 


 
T =  −0.1 0
−0.1 c =  0.8 
 0.1 −0.1 0 
 0.9 


 

c. Công thức sai số
|| x

38

(5)

Phương trình





|| T ||
|| x (5) − x (4) ||
− x ||≤
1− || T ||

Ta có ||T||∞=0.2, nên
|| x (5) − x ||≤

0.2
4.9 *10−4 = 0.1225*10−3
0.8

39

Ax = b
(D+L+U)x = b
(D+L)x = -Ux + b
x = -(D+L)-1Ux + (D+L)-1b

⇔ x = Tx + c
với T = -(D+L)-1U và c = (D+L)-1b
pp lặp theo phân tích này gọi là pp lặp Gauss-Seidel
40


Ví dụ : Cho hệ phương trình

Định lý :


 20 x1 − x 2 + 2 x 3 = 12

 x1 + 20 x 2 − x 3 = 13

 − 2 x1 − x 2 + 20 x 3 = 14

Nếu A là ma trận đường chéo trội nghiêm ngặt,
thì pp lặp Gauss-Seidel hội tụ với mọi vector
ban đầu x(0)

a. Tìm nghiệm gần đúng x(4) với vector ban đầu
x(0) = 0
b. Tính ma trận T và c
c. Tính sai số của nghiệm x(4)

Ta có công thức lặp Gauss-Seidel
xi( m ) =

n
1 i −1
[−∑ aij x (j m ) − ∑ aij x (j m −1) + bi ], ∀i = 1, n
aii j =1
j =i +1

41

a.

 20


A= 1
 −2


−1
20
−1

2 

−1 
20 

b. Ta có
ma trận đườn g chéo trội nghiêm ngặt

 20 0 0 


D + L =  1 20 0  ⇒ ( D + L )−1 =
 −2 −1 20 



Công thức lặp Gauss-Seidel
 ( m) 1
+ x2( m −1) − 2 x3( m −1) + 12)
 x1 = 20 (


 ( m) 1
(− x1( m )
+ x3( m−1) + 13)
 x2 =
20

 ( m) 1
( m)
+ x2( m )
+ 14)
 x3 = 20 (2 x1


m

42

x1(m)

0
0

1
0.6

2
0.5519

3
4

0.554268975 0.554233852

x2(m)

0

0.62

0.661955

0.661700938 0.661713904

x3(m)

0

0.791 0.78828775

 0.05
0
0 


0.05
0 
 −0.0025
 0.004875 0.0025 0.05 




 0 −1 2 
0
0.05
−0.1 




−1
U =  0 0 −1 ⇒ T = −( D + L ) U =  0 −0.0025
0.055 
0 0 0 
 0 0.004875 −0.00725 




 0.6 


c = ( D + L )−1 b =  0.62 
 0.791



0.788511944 0.788509080
43

44



c. Công thức sai số
|| x

(4)

VIII. Hệ pt ổn định và số điều kiện :

|| T ||
− x ||≤
|| x (4) − x (3) ||
1− || T ||

1. Heä pt ổn định :

Ta có ||T||∞=0.15, nên
|| x (4) − x ||≤

Xét hệ phương trình Ax = b

0.15
3.5123*10−5 = 0.6199 *10−5
0.85

Định nghóa :
Hệ phương trình gọi là ổn định nếu mọi thay
đổi nhỏ của A hay b thì nghiệm của hệ chỉ
thay đổi nhỏ
45


Ví dụ : Xét hệ phương trình Ax = b với

Ví dụ : Xét hệ phương trình Ax = b với

10

7
A=
8

7

1 2 
 3 
A=
 b=

1 2.01
 3.01

Hệ phương trình có nghiệm x = (1, 1)T
Thay đổi

46

7
 32 

 
5 6 5

23
b= 
 33 
6 10 9 

 
5 9 10 
 31 

7

8

Hệ có nghiệm x = (1, 1, 1, 1)T
Thay đổi A một ít

 3 
b= 
 3.1

7
8.1 7.2 
 10


7.08
5.04
6
5 
A=

 8
5.98 9.98
9 


9
9.98 
 6.99 4.99

Nghiệm của hệ : x=(-17, 10)T

Nghiệm của hệ : x=(-81, 137, -34, 22)T

Ta thấy nghiệm của hệ khác rất xa khi b
thay đổi nhỏ. Vậy hệ không ổn định

Ta thấy nghiệm của hệ khác rất xa khi A
thay đổi nhỏ. Vậy hệ không ổn định
47

48


Nhận xét :
Số điều kiện của ma trận đặc trưng cho tính
ổn định của hệ phương trình
 k(A) càng gần 1 thì hệ càng ổn định
 k(A) càng xa 1 thì hệ càng không ổn định

2. Số điều kiện :

Ta tìm điều kiện để hệ ổn định
Định nghóa : Số
k(A) = ||A|| ||A-1||
Gọi là số điều kiện của ma trận A

Ví dụ :

Ta có các tính chất :
(i ) 1 ≤ k ( A)
|| ∆x ||
|| ∆b ||
(ii )
≤ k ( A)
|| x ||
|| b ||
|| ∆x ||
|| ∆A ||
(iii )
≤ k ( A)
|| x + ∆x ||
|| A + ∆A ||

Trong đó

Ta có

∆b thay đổi của b
∆A thay đổi của A
∆x thay đổi của nghiệm
49


Ví dụ :
Ta có

 3 1 −1


A= 1 2 1 
 −1 1 4 



Tính số điều kiện
k(A) theo chuẩn ∞

 7 /13 −5 /13 3 /13 


A =  −5 /13 11/13 −4 / 13 
 3 /13 −4 /13 5 /13 


−1

⇒ k(A) = 6 x 20/13 = 9.2308 >> 1
Vậy hệ không ổn định

51

1 2 

Tính số điều kiện
A=

k(A) theo chuẩn ∞
1 2.01
 201 −200 
A−1 = 

 −100 100 

⇒ k(A) = 3.01 x 401 = 1207.01 >> 1
Vậy hệ không ổn định
50



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×