ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA BÁO CÁO BÀI TẬP LỚN MÔN ĐẠI SỐ TUYẾN TÍNH ĐỀ TÀI 2 CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG PHÂN TÍCH A = LU GVHD Nguyễn Xuân Mỹ Lớp DT01 Nhóm số 2 TP HỒ CHÍ MINH,[.]
Trang 1ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
-BÁO CÁO BÀI TẬP LỚN
MÔN ĐẠI SỐ TUYẾN TÍNH
ĐỀ TÀI 2
CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG
PHÂN TÍCH A = LU
GVHD: Nguyễn Xuân Mỹ
Lớp: DT01
Nhóm số: 2
TP HỒ CHÍ MINH, tháng 05 năm 2023
Trang 2ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
-BÁO CÁO BÀI TẬP LỚN MÔN ĐẠI SỐ TUYẾN TÍNH
ĐỀ TÀI 2
CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG
PHÂN TÍCH A = LU
GVHD Nguyễn Xuân Mỹ
Lớp: DT01
Nhóm số: 2
Trang 39 Phạm Trương Tung Hoành 2211127
Trang 1
Trang 4MỤC LỤC
Trang
MỤC LỤC _ 2
VỀ ĐỀ TÀI 3 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 4
I.1 CÁC KHÁI NIỆM VỀ MA TRẬN 4
I.1.1 Ma trận _ 4 I.1.2 Các loại ma trận 4
I.1.3 Phép nhân hai ma trận 5
I.1.4 Hệ phương trình tuyến tính 5 I.2 PHÂN TÍCH A = LU 5 I.2.1 Giới thiệu _ 5 I.2.2 Phân tích A = LU _ 5
I.3 PHÂN TÍCH PA = LU _ 7
CHƯƠNG 2: CHƯƠNG TRÌNH PHÂN TÍCH A = LU 8
II.1 THUẬT TOÁN CƠ BẢN 8
II.2 CHẠY CHƯƠNG TRÌNH 8
II.3 NHẬN XÉT CHƯƠNG TRÌNH _ 9
CHƯƠNG 3: ỨNG DỤNG CỦA PHÂN TÍCH A = LU _ 10
III.1 GIẢI PHƯƠNG TRÌNH TUYẾN TÍNH _ 10
III.2 TÌM MA TRẬN NGHỊCH ĐẢO _ 11
III.3 TÍNH ĐỊNH THỨC CỦA MA TRẬN _ 12
TÀI LIỆU THAM KHẢO _ 13
Trang 2
Trang 5VỀ ĐỀ TÀI
ĐỀ 2
1/ Nêu cơ sở lý thuyết của phân tích A = LU và phân tích PA = PLU
2/ Viết chương trình dùng để phân tích A = LU
3/ Tìm các ứng dụng của phân tích A = LU
Trang 6CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
I.1 CÁC KHÁI NIỆM VỀ MA TRẬN.
I.1.1 Ma trận.
Trong toán học, ma trận là một mảng chữ nhật – các số, ký hiệu, hoặc biểu thức, sắp xếp theo hàng và cột – mà mỗi ma trận tuân theo những quy tắc định trước Từng ô
trong ma trận được gọi là các phần tử hoặ1c mụ3c Ví dụ một ma trận có 2 hàng và 2 cột:
� −3 4�
I.1.2 Các loại ma trận.
Ma trận tam giác và ma trận đường chéo.
Nếu mọi phần tử của A ở bên dưới đường chéo chính bằng 0, thì A được gọi là
ma trận tam giác trên Tương tự, nếu mọi phần tử của A ở bên trên đường chéo chính bằng 0, thì A được gọi là ma trận tam giác dưới Nếu mọi phần tử nằm bên ngoài đường chéo chính đều bằng 0, thì A được gọi là ma trận đường chéo
Ma trận đơn vị.
Ma trận đơn vị In có số chiều n là một ma trận n × n trong đó mọi phần tử trên
đường chéo chính bằng 1 và tất cả những 1 ph 0 ần 0 tử khác đều bằng 0, ví dụ �010�
Ma trận bậc thang.
Ma trận A là ma trận bậc thang nếu thoả mãn hai điều kiện:
+ Các hàng bằng 0 (nếu có) ở dưới cùng của ma trận
+ Phần tử cơ sở của hàng phía dưới ở bên phải so với phần tử cơ sở của hàng trên
Biến đổi về ma trận bậc thang thông qua phương pháp khử Gauss Ví dụ
� 0 0 0 −1 2 �
0 0 0 0 0
Ma trận nghịch đảo.
+ Ma trận vuông A gọi là khả nghịch hay không suy biến nếu tồn tại một ma trận
B sao cho AB = BA = I n
+ Nếu B tồn tại, thì nó là duy nhất và được gọi là ma trận nghịch đảo của A, ký hiệu bằng A−1
+ Một số tính chất của ma trận khả nghịch:
Trang 4
Trang 7I.1.3 Phép nhân hai ma trận.
Cho hai ma trận Am×n và Bn×p trong đó ma trận A có số cột bằng số dòng của ma trận B Tích của ma trận A và ma trận B là ma trận cấp m×p, được kí hiệu là AB Ví dụ
phép tính ma trận 3×2 với ma trận 2×3:
c × h + d × k c × i + d × l�
I.1.4 Hệ phương
e × g + f × j e × h + f × k e × i + f × l
trình tuyến tính.
Một hệ phương trình tuyến tính là một tập hợp các phương trình tuyến tính có cùng những biến số, ví dụ: x1 − 2x2 − x3 + 5x4 = 1
−x 1 + 3x 2 + 4x 3 − 3x 4 = −1
� −x 1 + 4x 2 + 7x 3 − x 4 = −1
2x 1 − 5x 2 − 5x 3 + 8x 4 = 2
Giải hệ phương trình bằng cách đưa về dạng AX = b sử dụng phương pháp khử Gauss Nếu các biến số của hệ phương trình tuyến tính là số thực hoặc số phức, thì chỉ có
ba trường hợp xảy ra: hệ vô nghiệm, hệ có duy nhất một nghiệm, hệ có vô số nghiệm
I.2 PHÂN TÍCH A = LU.
I.2.1 Giới thiệu.
Một trong các ứng dụng của phép biến đổi sơ cấp là dùng để phân tích ma trận
A = LU Phân tích này có rất nhiều ứng dụng: dùng để tính định thức, giải phương trình tuyến tính, tìm ma trận nghịch đảo Trong đó:
+ A là ma trận vuông cấp n
+ L là ma trận tam giác dưới (L trong lower của lower triangle)
+ U là ma trận tam giác trên (U trong upper của upper triangle)
Sử dụng các phép biến đổi sơ cấp đưa A về ma trận phía trên U Để tính ma trận
L cần dùng phép biến đổi sơ cấp ngược lại với các biến đổi trên và biến đổi I thành L
I.2.2 Phân tích A = LU.
Tìm ma trận U.
Phép phân tích ma trận này khá đơn giản, đầu tiên ta thực hiện các phép biến đổi trên dòng để đưa A thành một ma trận bậc thang Lúc đó, ma trận bậc thang chính là ma
trận tam giác trên U Lấy một ma trận có kích thước 3×3 để làm ví dụ:
−2 2 7
Trang 8Đầu tiên, ta cần tính toán hệ số để nhân dòng 1 ( ) rồi trừ cho dòng 2 (
r ) để
thực hiện loại trừ Có thể tính được = ọ1i hệ số này là Vậy 2 phép
31 =A31 = −2 và phép biến r2 l 21 r 1 r 2 r 33
l
biến đổi dòng đầu tiên là − A 11 1 l
1 5 2 r2 đổi dòng thứ hai là − = + 2 Đến đây, ta có
một ký hiệu chung
6
là hệ số nhân cho dòng j và trừ cho dòng i
−2�
r 3 +
3
r 2
�
� �
3
0 12 11
U =
Vậy kết quả thu được là ma trận tam giác trên U: 0
�
�
25
�
3 Tiếp theo cần phải xác định ma trận tam giác dưới L
Ta có phân tích A = LU nên có thể tìm L thông qua công thức L = AU−1
0
0
Trên thực tế không cần thực hiện phép tính trên, ma tr ận L có thể tìm được như sau:
25
0�
l
31
l
32
1
−4
3
Những phần tử trong mỗi dòng của L giúp đảo lại cá c phép toán trên dòng mà ta đã làm.
Ví dụ với dòng 2 của ma trận U có được từ việc trừ đi 212 thì ở dòng 2 của ma trận L
ta đã khôi phục lại, lấy dòng 2 của U và cộng thêm vào dòng 1 để lấy lại dòng 2 ban đầu:
Trang 9(l 21 1 0) � 0 −9 −2 �
25
l21(1 5 2)
3
(0 −9 −2)=(3 6 4)
Trang 6
Trang 10L có thể được biểu diễn như sau: L =
Vậy kết quả của phân tích trên là
3
A=LU= 1
�
� ⋮
l m2
⋱
1
2
� �
�
−4
25
I.3 PHÂN TÍCH PA = LU.
Đôi khi chúng ta cần phải thay đổi các dòng với nhau mới có thể thực hiện loại trừ Trong trường hợp đó ta không thể sử dụng cách phân tích A = LU đã nói trên được
vì LU bây giờ là kết quả của phép phân tích trên ma trận A đã được đổi dòng (tạm gọi
là A′) Lúc này ta phải sử dụng⇔ thêm một ma trận P để thực hiện các phép hoán đổi
dòng trên A Lúc này: A′ = LU PA = LU.
Trang 7
Trang 11CHƯƠNG 2: CHƯƠNG TRÌNH PHÂN TÍCH A = LU
−
II.1 THUẬT TOÁN CƠ BẢN
Cho một ma trận m×m A = (an,n), đặt A(0) :=A và lặp với n = 1, 2, , m 1 Khử các phần tử bên dưới đường chéo chính của cột thứ n của A(n–1) bằng cách cộng vào dòng thứ i của ma trận này với dòng thứ n và nhân thêm hệ số li,n, với i = n + 1, n + 2,
…, m
Sau m 1 bước, ta đã khử tất cả các phần tử bên dưới đường chéo chính, và nhận
tam giác trên A (m–1) A (m–1) là ma trận tam giác trên U Có thể sử dụng ma
được ma trận −
trận nghịch đảo để tìm L một các đơn giản bằng công thức L = AU−1
II.2 CHẠY CHƯƠNG TRÌNH
1 3 4 Phân tích A = LU
Ví dụ 1: Cho A là ma trận cấp 2×3,
Hình 1 Chương trình báo lỗi.
Do ma trận A là ma trận cấp 2×3 nên chương trình không thể chạy Để chương trình
phân tích có thể chạy cần nhập vào một ma trận vuông cấp n
Ví dụ 2: Cho A là ma trận vuông cấp 3,
Kết quả của phân tích
1 2 −1
Hình 2 Cửa sổ Command Window của phân tích ma trận A = LU.
Trang 12A=�3 2 7 6�
Ví dụ 3: Cho A là ma trận vuông cấp 4,
4593
Phân tích A = LU 1121
Hình 3 Cửa sổ Command Window của phân tích ma trận A = LU.
II.3 NHẬN XÉT CHƯƠNG TRÌNH
Chương trình phân tích A = LU bằng Matlab giúp phân tích nhanh ma trận A thành ma trận tam giác trên U và ma trận tam giác dưới L Từ đó có thể ứng dụng vào các bài toán khác nhau Thuận tiện cho việc làm bài tập cũng như tính toán
Tuy nhiên để có thể viết ra chương trình cần có kiến thức cơ bản về lập trình cũng như các code trong Matlab Vì vậy cần có thời gian tìm hiểu và tìm tòi các thuật toán Nên sử dụng phân tích cho các bài tập có khối lượng tính toán nhiều Ngoài ra chương trình còn chưa giải được một số trường hợp đặc biệt cần hoàn thiện hơn
Trang 9
Trang 13CHƯƠNG 3: ỨNG DỤNG CỦA PHÂN TÍCH A = LU
III.1 GIẢI HỆ PHƯƠNG TRÌNH TUYẾN TÍNH.
Từ phương trình tuyến tính, ta có Ax = b (với A và b cho trước) Từ A ta có thể
phân tích thành A = LU Khi đó nghiệm của phương trình có thể được tính toán theo 2
bước sau:
1 Giải Ly = b => Tìm y.
2 Giải Ux = y => Tìm x.
−x 1 + 1x 2 − 1x 3 = −5
Ví dụ: Giải hệ phương trình
17x 1
Từ hệ phương trình trên 19x 1 + 6x 3 = −19
�
1
Phân tích ma trận A = LU:
1
x 3
0
A=LU=�−19 19� 1��
27
−5
b = �−1919�
−1
�
−−2817�27
Hình 4 Kết quả phân tích ma trận A bằng Matlab.
1
2
=�19�
−19 19
1
�y3�
−19
−1 1
y
−1
�
−5
� �
Ux = y ⇔ � �
−28
x
3 � = � − 608
⇔ � x 2 � = 1 −151 � Vậy nghiệm của hệ đã cho là
Trang 14x , x3 =
Trang 10
Trang 15III.2 TÌM MA TRẬN NGHỊCH ĐẢO
Khi giải hệ phương trình, thường thì b được xem là vector có chiều dài bằng số dòng của A Nếu thay vì vector b, ta có ma trận B, với B là ma trận kích thước n×p, thì
ta sẽ phải tìm ma trận X (cũng có kích thước n×p): AX = LUX = B.
Có thể sử dụng cùng phương pháp Ly = b, Ux = y để giải cho mỗi cột của ma
trận X Với giả sử rằng B là ma trận đơn vị với kích thước n thì X khi đó là nghịch đảo của A
A=�2 5 6�
Ví dụ cho ma trận
Tìm ma trận nghịch đảo
1 2 2 Gọi ma trận A, B, X:
B=�0 1 0�
A= �2 5 6 �
1
0
tích A = LU:
A=LU⇔�2 5 6�=�2 1
i
ột của ma trận B.
−
Giải Ly = B , với i là các c 1 1 3 1
⇔ y 11
�y 21 � =
Giải Ux = y
1
UX = y ⇔ 2 2 x11
�0 1 2� �x 21 � =
0 0 x 113 x 31
⇔ �x 21 � = � 0
x31
11
x 21
0
X = � x 31
1
= �0�
0
� 1 �
−−32
x 12 x 13 � x 22 x 23
32 33
−4
12
và B3, tìm được 13
Thực hiện tương tự với B2
� x �
1
Trang 16⇒ Vậy
là ma trận nghịch đảo của A
1
Trang 11
Trang 17III.3 TÍNH ĐỊNH THỨC CỦA MA TRẬN
Các ma trận L và U có thể được dùng để tính định thức của ma trận A rất hiệu quả vì det(A) = det(L) det(U) và định thức của các ma trận tam giác đơn giản là tích các phần tử trên đường chéo của nó Đặc biệt, nếu L là ma trận tam giác đơn vị thì:
2 3 5 4
�3 2 7 6�
Ví dụ: Tính định thức ma trận A =
.
�
− Hình 5 Kết quả phân tích ma trận A bằng Matlab.
−
3)) =
−
6
⇒ det(A) = det(L) × det(U) = (1×1×1×1) × (1×1×2×(
Vậy det(A) = 6
Trang 18TÀI LIỆU THAM KHẢO
[1] Đặng Văn Vinh, Giáo trình Đại Số Tuyến Tính, Nhà Xuất Bản Đại Học Quốc Gia, 2020
[2] https://vi.wikipedia.org/wiki/Phân_tích_LU
[3] https://tailieuvnu.com/wp-content/uploads/2020/11/19/Slide-2-Dai-so-Tuyen-Tinh-Ma-Tran-nghich-dao-va-phan-tich-LU-Le-Xuan-Thanh-UET.pdf
[4] https://rootonchair.blogspot.com/2019/06/phep-phan-tich-ma-tran-alu.html
[5] Vũ Thị Hương Trang, Phân Tích Ma Trận Và Một Số Ứng Dụng, Đại Học Thái Nguyên, 2016
Trang 13