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

Nhóm 2 l04 Đstt (2) (4) (1)

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 (781.18 KB, 30 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA </b>

 Giảng viên hướng dẫn: Nguyễn Hữu Hiệp

<b>ĐỀ TÀI </b>

<b>PHÂN TÍCH QR BẰNG 2 TRONG 3 PHƯƠNG PHÁP: GRAM-SMITH, HOUSEHOLDER, GIVEN </b>

<b>MÔN: ĐẠI SỐ TUYẾN TÍNH Lớp: L04 </b>

<b>TP.HỒ CHÍ MINH, tháng 4 năm 2023 </b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI MỞ ĐẦU </b>

Môn học Đại số tuyến tính là mơn đại cương có tầm quan trọng đối với sinh viên Đại học Bách Khoa – ĐHQG TPHCM nói riêng và sinh viên thuộc các khối ngành khoa học kỹ thuật – cơng nghệ nói chung. Vì vậy, việc dành ra một thời gian để nghiên cứu và thực hành là điều tất yếu để giúp cho sinh viên hiểu sâu sắc về mơn học và có được cơ sở vững chắc từ lý thuyết để áp dụng vào thực tế. Những bài toán về ma trận phức tạp sẽ khiến chúng ta tốn rất nhiều thời gian và đôi khi hiệu quả công việc không cao nếu chúng ta chỉ giải bài toán theo phương pháp truyền thống. Sự ra đời và phát triển của toán tin đã góp phần hỗ trợ rất lớn trong quá trình phát triển của các lĩnh vực trong đại số tuyến tính. Việc ứng dụng tin học trong q trình giải thích các cơ sở dữ liệu của đại số tuyến tính để giải các bài tốn đã giúp rút ngắn thời gian để giải các bài toán phức tạp và mang lại hiệu quả cao hơn. Một trong những phần mềm ứng dụng giúp giải quyết những vấn đề đó là phần mềm ứng dụng Matlab. Vì vậy, việc tìm hiểu và ứng dụng phần mềm Matlab trong việc thực hành môn. Đại số tuyến tính là rất quan trọng và có tính cấp thiết cao. Ở bài tập lớn này, nhóm tập trung thực hiện nội dung “Phân tích QR bằng phương pháp: Gram-smith, Householder, Given” thông qua phần mềm Matlab. Đây là một nội dung khá quan trọng của bộ mơn Đại số tuyến tính.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>MỤC LỤC </b>

CHƯƠNG I. MỞ ĐẦU ... ...

<b> 1.1 Giới thiệu về đề tài ... 1 </b>

<b>CHƯƠNG II. CƠ SỞ LÝ THUYẾT ... 1 </b>

2.1 Giới thiệu thuật toán A=QR: ... 1

4.1 Ứng dụng phân tích QR cho hệ phương trình tuyến tính: ... 13

4.2 Ánh xạ tuyến tính trong phân tích mã QR: ... 14

4.3 Sử dụng phương pháp QR để tìm trị riêng của ma trận: ... 15

<b>CHƯƠNG V. LẬP TRÌNH BẰNG PHẦN MỀM MATLAB: ... 20 </b>

5.1 Phương pháp Gram-Schmidt: ... 20

5.2 Phép biến đổi Household: ... 22

<b>CHƯƠNG VI. TÀI LIỆU THAM KHẢO ... 24 </b>

<b>LỜI CẢM ƠN ... 25 </b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<small>1 </small>

<b>CHƯƠNG I. MỞ ĐẦU 1.1 Giới thiệu về đề tài </b>

Trong đại số tuyến tính, phân rã QR, cịn được gọi là phân tích nhân tố QR hoặc phân tích nhân tố QU là phân rã ma trận A thành tích A = QR của ma trận trực giao Q và ma trận tam giác trên R. Phân rã QR thường được sử dụng để giải quyết vấn đề bình phương tối thiểu tuyến tính và là cơ sở cho một thuật toán eigenvalue cụ thể, thuật toán QR. Tronng đó là hai phép phân tích A=QR qua phép biến đổi Householder và Gram-Schmidt.

<b>1.2.1 Đối tượng nghiên cứu </b>

Thuật toán phân rã A = QR bằng phép biến đổi Householder, Gram-Schmidt.

<b>1.2.2 Phạm vi nghiên cứu </b>

• Ma trận vng

• Ma trận hình chữ nhật

<b>1.2.3 Phương pháp nghiên cứu </b>

Sử dụng thuật tốn để giải các bài tốn, chạy chương trình Matlab để phân rã A = QR bằng phép biến đổi Householder, Gram-Schmidt.

<b>1.2.4 Mục đích nghiên cứu </b>

Đề tài nhằm đáp ứng nhu cầu học tập của học sinh, sinh viên. Giải quyết các bài toán liên quan đến trực giao ma trận với sai số nhỏ nhằm giải quyết các bài toán và các ứng dụng thực tế chính xác hơn.

<b>CHƯƠNG II. CƠ SỞ LÝ THUYẾT </b>

<b>2.1 Giới thiệu thuật toán A=QR: </b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<small>2 </small>

Phân rã QR, cịn được gọi là phân tích nhân tố QR hoặc phân tích nhân tố QU là phân rã ma trận A thành tích A = QR của ma trận trực giao Q và ma trận tam giác trên R. Phân tích thừa số A = QR của ma trận A là một kỹ thuật hữu ích để ước tính giá trị riêng. Nó ln tồn tại khi số hạng của A bằng số cột của A.Vì thế nếu A là ma trận vng cấp n thì Q là ma trận trực giao cấp n.

Trong đó :

• A là ma trận ban đầu cần phân rã

• Q là ma trận có các cột trực giao (có nghĩa là 𝑄<small>𝑇</small>𝑄 = 𝑄𝑄<small>𝑇</small> = 𝐼) • R là ma trận tam giác trên cấp m khả nghịch

b. Các phương pháp thực hiện phân rã A=QR

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<small>3 </small>

<b> Định nghĩa 3.4.2: </b>

Tập hợp con M được gọi là họ trực chuẩn, nếu: M là họ trực giao ||x|| = 1, ∀x ∈ M.

<b>Định lý 3.4.1: </b>

Cho E = {e1,e2, · · · ,en} là cơ sở trực chuẩn của không gian V.

1/ ∀x ∈ V. Giả sử [x]E = (x<small>1</small>; x<small>2</small>; · · · ; x<small>n</small>) <small>T </small>. Khi đó ∀i = 1 · · · n, xi = (x,e<small>i</small>); 2/ Giả sử [x]E = (x<small>1</small>; x<small>2</small>; · · · ; x<small>n</small>) <small>T </small>và [y]E = (y<small>1</small>; y<small>2</small>; · · · ; y<small>n</small>)<small> T</small> . Khi đó: (x, y) = x<small>1</small>y<small>1</small> + x<small>2</small>y<small>2</small> + · · · + x<small>n</small>y<small>n</small>.

<b>Định lý 3.4.2: </b>

Cho E = {e<small>1</small>,e<small>2</small>, · · · ,en} là một họ độc lập tuyến tính. Khi đó có thể xây dựng một họ trực giao F = {f<small>1</small>, f<small>2</small>, · · · , fn} sao cho không gian con được sinh ra bởi F trùng với không gian con được sinh ra bởi E.

• Xem xét quy trình Gram – Schmidt được áp dụng cho các cột của ma trận xếp hạng cột đầy đủ A=[a<small>1</small>,…,a<small>n</small>], với sản phẩm bên trong 〈u,w〉=v<small>T</small>w (hoặc là 〈u,w〉=v<small>*</small>w đối

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<small>4 </small>

Bây giờ chúng ta có thể thể hiện a<small>i</small> dựa trên cơ sở chuẩn mực mới được tính tốn: a<small>1</small>=〈e<small>1</small>,a<small>1</small>〉e<b><small>1 </small></b>

a<small>2</small>=〈e<small>1</small>,a<small>2</small>〉e<small>1 </small>+ 〈e<small>2</small>,a<small>2</small>〉e<small>2 </small>

a<small>3</small>=〈e<small>1</small>,a<small>3</small>〉e<small>1 </small>+ 〈e<small>2</small>,a<small>3</small>〉e<small>2 </small>+ 〈e<small>3</small>,a<small>3</small>〉e<small>3 </small>

a<small>k</small>=∑<sup>𝑘</sup> 〈

<small>𝑗=1</small> e<small>j</small>,a<small>k〉ej</small>

Ở đây 〈e<small>i</small>,a<small>i</small>〉=||u<small>i</small>||.

Điều này có thể được viết dưới dạng ma trận:

Phép chiếu Householder cho phép thực hiện phân tích QR: Mục tiêu là tìm một phép biến đổi tuyến tính biến đổi vector X thành một vector có cùng độ dài và song song với e1. Chúng ta có thể sử dụng phép chiếu trực giao (Gram-Schmidt) nhưng điều này sẽ không ổn

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<small>5 </small>

định số học nếu các vector x và e1 gần với trực giao. Thay vào đó, phép phản xạ Householder phản chiếu qua đường chấm (được chọn để chia đơi góc giữa x và e1). Góc tối đa với phép biến đổi này là 45 độ.

Householder chiếu vectơ qua một “tấm gương”. Chúng ta có vectơ x mà chúng ta muốn phản chiếu vectơ Qx. Để phản chiếu, chúng ta sẽ sử dụng ma trận trực giao Q.

Nội dung phản chiếu:

Từ trước, chúng ta biết rằng hình chiếu x lên u là: 𝑢<sup>𝑇</sup>𝑥 𝑢<small>𝑇</small>𝑢<sup>𝑢 </sup>

Từ biểu đồ phản chiếu của Householder, chúng ta có thể thấy rằng nếu chúng ta lấy x

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b> 2.3.2 Lý thuyết và các bước hiện thực thuật tốn: a) Đối với ma trận vng: </b>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<small>7 </small>

<b>Nhận xét: </b>

- Nếu A là khả nghịch, thì việc phân tích này là duy nhất nếu chúng ta yêu cầu các phần

tử đường chéo của R dương. Nếu thay vào đó A là một ma trận vng phức, thì có một phép phân tách A = QR, trong đó Q là một ma trận đơn vị (vì vậy Q*Q = QQ* = 1).

- Nếu A có n cột độc lập tuyến tính, thì n cột đầu tiên của Q tạo thành cơ sở trực giao

cho không gian cột của A. Tổng quát hơn, các cột k đầu tiên của Q tạo thành cơ sở trực giao cho nhịp của các cột k đầu tiên của A cho bất kì 1 ≤ k ≤ n. Thực tế là bất kì cột k nào của A chỉ phụ thuộc vào các cột k đầu tiên của Q chịu trách nhiệm cho dạng tam giác của R.

<b>b) Đối với ma trận hình chữ nhật: </b>

Chúng ta có thể tính đến một ma trận m×n phức tạp A, với m ≥ n, là tích của ma trận đơn nhất M×m Q và ma trận hình tam giác trên m×n R. Vì các hàng dưới cùng (m−n) của ma trận hình tam giác trên m×n bao gồm hồn tồn các số khơng, nó thường hữu ích cho

<b>c) Thuật toán phép biến đổi Householder: </b>

Giả sử 𝑢 là vectơ khác khơng tùy ý, khi đó hình chiếu vng góc của vectơ 𝑣 lên khơng gian con F sinh bởi vectơ 𝑢 là pr<small>u</small>(𝑣) = 𝑢𝑢<small>𝑇</small>𝑣

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<small>8 </small>

Vectơ 𝑣 được phân tích thành 𝑣 = a + b, với a là hình chiếu vng góc của 𝑢 lên F và b là hình chiếu vng góc của 𝑣 lên F.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>Trong quá trình biến đổi, chúng ta tình cờ thu được một ma trận R 4x3 với ma trận vuông 3x3 ở trên là ma trận tam giác trên bên phải, còn hàng 4 ở dưới cùng chỉ gồm số 0. Như vậy chúng ta đã tìm được ma trận R mà không phải làm bước biến đổi Householder lần thứ 3. </b>

<b>*Lưu ý: Đây là trường hợp đặc biệt, ở những trường hợp khác sẽ có thể phải làm thêm 1 bước biến đổi Householder tương tự </b>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<small>13 </small>

- Phân hủy QR bằng đường chéo và ứng dụng để thiết kế mã cho trước.

- Phân tích phân biệt trọng số dựa trên hạt nhân với phân rã QR và ứng dụng của nó dễ nhận dạng khn mặt.

- Phân tích QR được sử dụng trong các mơ hình hồi quy nếu các đầu vào có tương quan cao.

- Phép biến đổi cho ma trận Q với các vectơ cột độc lập.

<b>4.1 Ứng dụng phân tích QR cho hệ phương trình tuyến tính: </b>

- Phân tích QR có thể giải quyết trên cả ma trận vng và ma trận hình chữ nhật.

- Các phương pháp phân tích thừa số có thể sử dụng để giải quyết bài tốn về ma trận, điển hình là giải hệ phương trình tuyến tính.

- Nếu A ∈ 𝑅<sup>𝑚 𝑥 𝑛</sup> có các cột độc lập tuyến tính thì

<i><b>A = QR </b></i>

Q: - Là m x n với các cột trực giao (𝑄<sup>𝑇</sup>𝑄 = I)

- Nếu A là ma trận vng (m = n), thì Q trực giao (𝑄<small>𝑇</small>𝑄 = 𝑄𝑄<small>𝑇</small> = I)

R : - Là n x n, gồm các ma trận tam giác trên với các phần tử đường chéo ≠ 0

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

- Là tập hợp của hai hay nhiều phương trình có cùng tập ẩn số. Khi giải hệ phương trình, ta

tìm các giá trị cho từng ẩn số thỏa mãn {

<b>4.2 Ánh xạ tuyến tính trong phân tích mã QR: </b>

<i><b>*Ánh xạ tuyến tính cho phép chuyển đổi một ma trận từ không gian n chiều sang </b></i>

<i>không gian m chiều, với điều kiện n >= m. </i>

Trọng tâm: Phân tích mã QR bằng các phương pháp Gram-smith, Householder, Given sử dụng ánh xạ tuyến tính để giải quyết vấn đề xác định vectơ cột và ma trận Q.

1.Phương pháp Gram-smith sử dụng ánh xạ tuyến tính để biến đổi ma trận đầu vào sao cho các vectơ trong ma trận đó trở thành đơi một vng góc và có độ dài là 1. Kết quả của phương pháp này là một ma trận Q có các cột là những vectơ vng góc có độ dài bằng 1. 2.Phương pháp Householder cũng sử dụng ánh xạ tuyến tính để biến đổi ma trận đầu vào thành một ma trận tam giác trên. Quá trình này tạo ra một ma trận Q thỏa mãn tính chất

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<small>15 </small>

Q.T = I, trong đó T là ma trận tam giác trên thu được sau khi biến đổi đầu vào và I là ma trận đơn vị.

3.Phương pháp Given sử dụng ánh xạ tuyến tính để xác định kỹ thuật xoay Givens, giúp biến đổi ma trận đầu vào thành một ma trận tam giác trên hoặc tam giác dưới. Quá trình này cho phép xác định ma trận Q với các cột tạo thành bởi các vectơ cột khơng thay đổi.

<i><b>=> Tóm lại, ánh xạ tuyến tính là một cơng cụ hữu ích trong phân tích mã QR bằng 2 trong </b></i>

<i>3 phương pháp Gram-smith, Householder, Given. Nó cho phép biến đổi một ma trận đầu vào để thu được ma trận Q với các cột là các vectơ vng góc hoặc thu được ma trận tam </i>

<i><b>giác trên hoặc tam giác dưới. </b></i>

<b>4.3 Sử dụng phương pháp QR để tìm trị riêng của ma trận: </b>

Các công thức cần lưu ý:

<i>A<sup>(i) </sup>= Q<sup>(i) </sup>R<sup>(i)</sup>A<small>(i+1) </small>= R<small>(i) </small>Q<small>(i)</small></i>

<i>A<small>2</small><sup>(1) </sup>= P<small>2</small>A<small>(1)</small></i>

<i>A<small>3</small><sup>(1) </sup>= P<small>3</small>A<small>2</small><sup>(1)</sup></i>

<i>A<small>(2) </small>= R<small>(1)</small>Q<small>(1)</small> = P<small>3</small>P<small>2</small>A<small>(1) </small>P<small>2</small><sup>t </sup>P<small>3</small><sup>t</sup></i>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

là ma trận 3 đường chéo, đối xứng

❖ Ta tính s<small>1</small> bằng cách tìm trị riêng ma trận vng 2x2 tạo bởi dịng thứ 2,3 và cột thứ 2, 3

[3 1 1 3]

❖ Ma trận trên có 2 giá trị riêng là μ<small>1 </small>= 2 và μ<small>2 </small>= 4.

Ta phải chọn s<small>1</small> là 1 trong 1 trị riêng gần với giá trị a<small>3</small> = A<small>33</small>= 3 (ở đây chọn 2 hay 4 đều được).

<i>❖ Sau khi có A<small>1</small><sup>(i) </sup></i>ta tìm ma trận quay P<small>2 </small>

<i>❖ Từ dạng tổng quát của A<small>k</small><sup>(i) </sup>ta sẽ có dạng của A<small>1</small><sup>(i) </sup></i>là:

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

❖ Nhận xét nếu b<small>2</small><sup>(2)</sup> và b<small>3</small><sup>(2)</sup> đủ nhỏ thì có thể dừng lại, để tính toán các trị riêng ❖ Tiếp tục lặp lại các bước như trên

❖ Đầu tiên, ta tính s<small>2</small> bằng cách tìm trị riêng ma trận vng 2x2 tạo bởi dòng thứ 2,3 và cột thứ 2, 3 của ma trận A<small>(2)</small> vừa thu được

❖ Tiếp theo, từ ma trận A<small>(3)</small> ta bỏ đi hàng thứ 3 và cột thứ 3, rồi tính trị riêng của ma trận vừa thu được:

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

% Phan tich QR bang Gram-Schimidt

A=input(' Nhap ma tran A can phan tich ' );

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<small>21 </small>

<b>5.1.2 Kết quả: </b>

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<small>23 </small>

<b>5.2.2 Kết quả: </b>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<small>24 </small>

<b>CHƯƠNG VI. TÀI LIỆU THAM KHẢO </b>

[1] Giáo trình đại số tuyến tính – Đại học Bách Khoa (tác giả: Đặng Văn Vinh) [2] QR FACTORIZATION (tác giả: E.Anderson, Z.Bai and J. Dongarra) [3] QR decomposition - Wikipedia

[4] Tài liệu hướng dẫn sử dụng Matlab. [5] Tài liệu của các anh chị khóa trước.

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<small>25 </small>

<b>LỜI CẢM ƠN </b>

Trong suốt quá trình thực hiện đề tài trên, nhóm đã gặp khơng ít khó khăn và thực sự may mắn khi nhóm đã nhận được sự quan tâm, ủng hộ và giúp đỡ tận tình từ các thầy cơ, anh chị và bạn bè. Ngồi ra, nhóm cũng xin gửi lời biết ơn chân thành nhất đến thầy Nguyễn Hữu Hiệp là giảng viên hướng dẫn cho đề tài này. Nhờ sự hết lịng và ln nhắc nhở của các thầy mà nhóm đã hồn thành đề tài đúng tiến độ và giải quyết tốt những khó khăn, vướng mắc mà nhóm gặp phải. Sự hướng dẫn của các thầy đã giúp nhóm xác định được đúng hướng đi và phát huy được những điểm tốt, khắc phục những hạn chế còn tồn tại. Bên cạnh đó, kiến thức vũ trụ là vơ hạn nhưng sự lĩnh hội, tiếp thu kiến thức của con người là hữu hạn. Do đó, lần đầu tiên tiếp xúc với việc làm đề tài ở môi trường Đại học, nhóm chắc chắn khơng tránh khỏi những sai sót, nhóm chúng em hi vọng sẽ nhận được sự góp ý từ các thầy cơ, để lấy kinh nghiệm cho bản thân, hoàn thành tốt hơn nữa những đề tài tiếp theo. Lời cuối, xin một lần nữa gửi lời cảm ơn chân thành nhất đến thầy cô và mọi người đã dành thời gian để chia sẻ và chỉ dẫn nhóm. Đây chính là động lực to lớn giúp nhóm làm việc hết mình để hồn thành đề tài một cách tốt nhất.

Chúng em xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<small>26 </small>

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<small>27 </small>

</div>

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

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