Professional Documents
Culture Documents
BTL ĐSTT 12
BTL ĐSTT 12
PHÂN TÍCH LU
Nhóm: 12 - L12
Giảng viên hướng dẫn: ThS. Nguyễn Xuân Mỹ
Họ và tên MSSV
1 Trần Danh Quang 2312810
2 Trần Hoàng Lâm 2311830
3 Trạc Minh Nhựt 2312552
4 Thân Hoàng Long 2311927
5 Trần Anh Khôi 2311699
6 Tôn Văn Gia Bảo 2310259
7 Trần Lê Gia Thoại 2313323
8 Trần Hữu Nguyên Sơn 2312981
9 Trần Nguyễn Khánh Bảo 2310264
10 Thái Minh Nghi 2312248
2. Viết chương trình Matlab áp dụng phân tích LU vào giải hệ phương trình
tuyến tính.
4. Tổng kết.
1
BTL Đại số tuyến tính L12 - Nhóm 12
2
BTL Đại số tuyến tính L12 - Nhóm 12
Lời cảm ơn
Để hoàn thành bài tập lớn là kết quả của sự hợp tác và không ngừng cố gắng
của các thành viên trong nhóm, cùng với đó là cả sự hỗ trợ rất lớn đến từ giảng
viên là cô Nguyễn Xuân Mỹ. Vì thế, nhóm chúng em muốn gửi lời cảm ơn chân
thành đến cô Nguyễn Xuân Mỹ vì đã hỗ trợ chúng em để nhóm có thể đạt được
thành quả này.
Dù vậy, đây là một chủ đề hoàn toàn mới mà lần đầu nhóm chúng em được tiếp
xúc nên sẽ không tránh khỏi những thiếu sót. Vì thế, nhóm chúng em xin được
nhận góp ý từ cô Mỹ và mọi người để chúng em có thể hoàn thiện thêm. Chúc cô
và mọi người có trải nghiệm tốt.
3
Mục lục
LỜI CẢM ƠN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
GIỚI THIỆU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 MATLAB 11
2.1 Tổng quan về Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Mô tả thuật toán được sử dụng trong phân tích LU: . . . . . . . . . 11
3 ỨNG DỤNG 14
3.1 Đề bài 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Đề bài 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4 TỔNG KẾT 19
4.1 Kiến thức . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4
GIỚI THIỆU
Lời mở đầu
Trong cuộc sống ngày càng phát triển, các máy móc, công nghệ không ngừng
được nâng cao, dẫn đến sự phát triển mạnh mẽ của khoa học kỹ thuật và các mô
hình tính toán phục vụ cho đời sống sinh hoạt hằng ngày. Khi đó, vấn đề về một
phương pháp để đo lường hiệu suất ngày càng được chú trọng.
Có rất nhiều mô hình như vậy với rất nhiều thuật toán, biến đổi toán học đã được
nghiên cứu. Trong số đó, phương pháp phân tích LU hiện nay đang được xem là
một mô hình rất nổi tiếng và được ứng dụng rộng rãi trong các lĩnh vực như kinh
tế tài chính, khoa học dữ liệu, truyền thông và viễn thông,...
Trong bài báo cáo này, chúng em xin phép được giới thiệu về: “Phương pháp phân
tích LU”.
5
Chương 1
6
BTL Đại số tuyến tính L12 - Nhóm 12
trong đó:
1 u12 u13
U = 0 1 u23
0 0 1
là ma trận tam giác có phần tử đường chéo là 1 (có thể tìm bằng cách áp dụng
Phương pháp Gauss với ma trận A).
l11 0 0
L = l21 l22 0
l31 l32 l33
Khi đó
7
BTL Đại số tuyến tính L12 - Nhóm 12
l11 u11 l11 u12
A = LU = và l11 u11 = 0
l21 u11 l21 u12 + l22 u22
Tương đương với có ít nhất 1 trong 2 l11 và u1 1 = 0. Như vậy 1 trong 2 ma trận
L và U là không khả nghịch (Ma trận tam giác chỉ khả nghịch khi mọi phần tử
thuộc đường chéo chính đều khác 0).
Điều này mâu thuẫn với việc A là ma trận khả nghịch và L,U phải là ma trận khả
nghịch.
(AB)−1 = B −1 A−1
• Nếu có thể đưa ma trận vuông ( A ) thành dạng bậc thang mà không cần
hoán đổi hàng, thì ( A ) sẽ có phân tích LU.
• Trong một số trường hợp, có thể cần phải hoán vị các hàng của ma trận trước
khi thực hiện phân tích LU. Điều này được gọi là phân tích LU với hoán vị
một phần (LUP), trong đó P là ma trận hoán vị (chỗ này có hoán vị toàn
phần (PAQ) khi có thêm cả hoán vị cột).
1.4 Áp dụng phương pháp phân tích LU vào giải hệ phương trình
tuyến tính
Phân tích LU cho phép giải hệ phương trình bằng cách thay thế hệ ban đầu
(AX = b) bằng hai hệ có ma trận hệ số tam giác (LUx = b), từ đó giải (Ly = b)
để tìm (y ) và sau đó giải (Ux = y ) để tìm (x).
Cho một tập hợp các phương trình tuyến tính, trước tiên hãy chuyển chúng
thành dạng ma trận.
Ax = b
Trong đó:
• A là ma trận hệ số.
8
BTL Đại số tuyến tính L12 - Nhóm 12
Đầu tiên ta đưa ma trận A về ma trận bậc thang bằng phương pháp Gauss, mà
không hoán vị hàng, ta thu được ma trận bậc thang U.
Để tìm L:
• Khi nhân vào U số (a) nào đó để đưa các phần tử trên đường chéo của U về
1, thì nghịch đảo của số (a) sẽ là 1 phần tử ở vị trí tương ứng trên đường chéo
của L.
• Khi nhân vào U số (b) nào đó để đưa các phần tử phía dưới đường chéo của
U về 0, thì số trừ của số (b) sẽ là 1 phần tử ở vị trí tương ứng của L.
Ax = b
Thay
A = LU
Do đó:
LUx = b
Đặt
y = Ux
Trong đó: y là ma trận các biến 3 × 1.
Ly = b
Ux = y
1.5 Đánh giá phương pháp phân tích LU và phương pháp Gauss
Phân tích LU:
• Ưu điểm:
– Phương pháp này tách biệt ma trận A khỏi b, cho phép sử dụng lại phân
tích cho các hệ phương trình có cùng ma trận A nhưng b khác nhau.
9
BTL Đại số tuyến tính L12 - Nhóm 12
– Ngoài ra khi giải các hệ tuyến tính dài, bộ nhớ của máy tính rất quan
trọng các số 0 phía dưới đường chéo chính của U có thể được loại bỏ và
không gian mở sẽ dùng để lưu trữ các giá trị tương tự trên L.
– Nếu A là một ma trận lớn gồm chủ yếu các giá trị 0, và nếu các giá trị
khác không tập trung trong một "dải" xung quanh đường chéo chính, thì
có các kỹ thuật có thể được sử dụng để giảm chi phí của phương pháp LU,
mang lại ưu điểm rõ rệt hơn so với phương pháp Gauss.
• Nhược điểm:
– Không phải mọi ma trận vuông đều có thể áp dụng phân tích LU. Nếu
không thể biến đổi ma trận A thành dạng hàng bậc thang mà không cần
hoán đổi hàng, thì A sẽ không có phân tích LU.
• Ưu điểm:
– Đơn giản và dễ hiểu: Phương pháp Gauss có quy trình rõ ràng và dễ hiểu.
• Nhược điểm:
– Tính tuyến tính: Hệ phương trình phải là hệ phương trình tuyến tính.
10
Chương 2
MATLAB
2. Kiểm tra ma trận vừa nhập có phải là ma trận vuông hay không, nếu không,
thông báo lỗi, dừng thuật toán. Ngược lại, qua bước 3
3. Đưa ma trận vừa nhập về thành ma trận bậc thang, nếu rank(B) không bằng
cấp của B, tức là tồn tại 1 hàng bằng 0, thông báo lỗi và dừng thuật toán.
Ngược lại, qua bước 4
4. Ma trận B sau khi đưa về bậc thang chính là ma trận trên U, để tìm ma trận
dưới L, ta biến đổi công thức A=LU thành AU−1 =L. Đưa ra màn hình hai
ma trận L và U và kết thúc thuật toán.
11
BTL Đại số tuyến tính L12 - Nhóm 12
12
BTL Đại số tuyến tính L12 - Nhóm 12
Ví dụ cụ thể:
13
Chương 3
ỨNG DỤNG
3.1 Đề bài 1
Một ví dụ cụ thể về ứng dụng của phương pháp phân tích LU là trong giải hệ
phương trình tuyến tính.
Trong hệ thống điện lưới, việc giải các hệ phương trình tuyến tính là rất quan
trọng để dự đoán và quản lý các dòng điện, điện áp và công suất trong các phần
tử của hệ thống, như dây dẫn, biến áp, và các thiết bị khác.
Khi đó:
Ax = b (1)
Đầu tiên ta đưa ma trận A về ma trận bậc thang bằng phương pháp Guass, mà
khi đó ta sẽ nhận thấy rằng cần phải hoán vị hàng đầu tiên và hàng thứ hai để
tránh việc chia cho 0.
Ma trận hoán vị hàng đầu tiên và hàng thứ hai:
14
BTL Đại số tuyến tính L12 - Nhóm 12
0 1 0
P = 1 0 0
0 0 1
Từ đó ta sẽ có:
0 1 0 2 3 4 1 1 1
P A = 1 0 0 × 1 1 1 = 2 3 4
0 0 1 3 4 4 3 4 4
H2 → H2 − 2H1
H3 → H3 − 3H1
1 1 1 1 0 0
0 1 2 2 1 0
0 1 1 3 · ·
H3 → H3 − H2
1 1 1 1 0 0
0 1 2 2 1 0
0 0 −1 3 1 ·
H3 → −H3
1 1 1 1 0 0
U = 0 1 2 L = 2 1 0
0 0 1 3 1 −1
Ta có:
1 1 1 1 0 0
1 1 1
P A = LU (2) ⇔ 2 3 4 = 2 1 0 × 0 1 2
3 4 4 3 1 −1 0 0 1
Ta đặt:
y = U x (3)
y1
Trong đó y = y2
y3
15
BTL Đại số tuyến tính L12 - Nhóm 12
Từ (3):
1 1 1 x1 2
U x = y ⇔ 0 1 2 × x2 = −3
0 0 1 x3 0
Vậy:
x1 = 5, x2 = −3, x3 = 0
16
BTL Đại số tuyến tính L12 - Nhóm 12
3.2 Đề bài 2
Trong nhiều thuật toán tối ưu hóa và phân tích dữ liệu, việc tính toán ma trận
nghịch đảo có thể là một phần quan trọng. Phương pháp phân tích LU có thể
được sử dụng trong các phương pháp như tối ưu hóa hàm mất mát (hàm cho phép
xác định mức độ sai khác của kết quả dự đoán so với giá trịthực cần dự đoán) và
phương pháp hồi quy tuyến tính.
Lưu ý: phương pháp này chỉ hoạt động khi ma trận A là khả nghịch và có thể
phân tích thành LU.
Xét một ví dụ sau đây:
1 2 3
Tìm ma trận nghịch đảo của ma trận A = 0 1 4
5 6 0
Khi đó:
1 0 0
1 2 3
L= 0 0 ; U = 0 1 4
1
−5 −4 1 0 0 1
17
BTL Đại số tuyến tính L12 - Nhóm 12
18
Chương 4
TỔNG KẾT
• Tìm hiểu và sử dụng phần mềm Matlab viết chương trình dùng phương pháp
LU để giải hệ phương trình.
• Sau khi làm bài tập lớn, mọi người làm quen với nhau nhiều hơn.
• Biết phân chia công việc hợp lý và hoàn thành công việc đúng hạn.
• Biết thêm nhiều hơn về kiến thức Matlab, LaTeX, Word, Powerpoint, ...
• Biết giúp đỡ các bạn khác trong quá trình làm bài tập lớn trong bộ môn Đại
số tuyến tính cũng như các môn khác.
19