Bài toán đặt không chỉnh và bài toán điều kiện xấu

Một phần của tài liệu Giải hệ phương trình kích thước lớn và điều kiện xấu trên bó máy tính (Trang 40 - 43)

Từ giữa thế kỷ 20 đến nay, các thuật ngữ "bài toán đặt không chỉnh" và "bài toán điều kiện xấu" đã trở nên quen thuộc và được thường xuyên nhắc đến trong nhiều lĩnh vực của khoa học, công nghệ và kinh tế. Nhiều bài toán không chỉnh có nguồn gốc vật lý (cơ học lượng tử, âm học, vật lý thiên văn, điện động học, vv...), địa vật lý (thăm dò địa chấn, thăm dò trọng lực, dò siêu âm, vv..) y học (chụp quang phổ, chụp cắt lớp máy tính, vv...), sinh thái học (quản lý chất lượng không khí và nước, giám sát không gian, vv...), kinh tế (toán tài chính, điều khiển tối ưu, vv...), vv... đã được tập trung nghiên cứu. Ngay trong toán học, một số vấn đề của đại số tính toán, phương trình vi phân thường, phương trình đạo hàm riêng, phương trình tích phân, giải tích hàm, vv... cũng dẫn đến những bài toán đặt không chỉnh. Đặc điểm của những bài toán này là lời giải có thể không tồn tại hoặc không duy nhất, hoặc lời giải không phụ thuộc liên tục vào dữ liệu của bài toán. Những bài toán đặt không chỉnh như vậy rất khó giải trong thực tế vì những sai số nhỏ của dữ liệu và sai số trong quá trình tính toán trên máy tính (sai số làm tròn, sai số tính toán với dấu phẩy động, vv...) dẫn đến những sai số lớn của nghiệm gần đúng, khiến nó khác xa nghiệm đúng.

Xét phương trình toán tử

trong đó F là ánh xạ từ không gian metric (X,d) vào không gian metric (Y,ρ), còny∈Y là dữ liệu đã cho.

Bài toán (1.7) được gọi là đặt chỉnh theo nghĩa J. Hadamard [90], nếu nó giải được duy nhất với mọi vế phảiyvà nghiệm phụ thuộc liên tục vàoy.

Bài toán (1.7) gọi là đặt không chỉnh, nếu nó không phải là bài toán đặt chỉnh, tức là nó có thể vô nghiệm hoặc vô định và nghiệm có thể không phụ thuộc liên tục vào dữ liệu y. Để giải số bài toán đặt không chỉnh một cách ổn định, người ta phải sử dụng quá trình chỉnh hóa, hay hiệu chỉnh bài toán, tức là thay bài toán đặt không chỉnh bằng một họ bài toán đặt chỉnh phụ thuộc vào tham số, sao cho nghiệm của những bài toán đặt chỉnh hội tụ đến nghiệm của bài toán đặt không chỉnh, khi tham số hiệu chỉnh dần tới không.

Một số kết quả về phương pháp hiệu chỉnh bài toán đặt không chỉnh sẽ được trình bày ở mục 1.2.3.

Xét hệ phương trình tuyến tính

Ax=y, (1.8)

trong đó A là ma trận cấp m×n, x và y là các véctơ n và m chiều tương ứng. Giả sử hạng của ma trận A, rankA = min(m,n). Nếu m<n phương trình (1.8) có vô số nghiệm còn nếu m>n phương trình này có thể vô nghiệm. Khi m=n phương trình (1.8) giải được với mọi vế phải nếu detA6=0. Trong trường hợp này tồn tại toán tử (ma trận) ngược A−1 và nó bị chặn do không gian đang xét hữu hạn chiều. Như vậy trong trường hợp m=n bài toán (1.8) có thể đặt chỉnh theo nghĩa Hadamard. Bây giờ ta sẽ phân tích sự phụ thuộc của nghiệm vào vế phải phương trình (1.8) trong trường hợp ma trậnAkhông suy biến.

Trừ từng vế của phương trình bị nhiễu động

A(x+δx) =y+δy (1.9)

với phương trình (1.8) ta được Aδx = δy, từ đó suy ra δx= A−1δy và do đó

kδxk ≤ kA−1kkδyk. Mặt khác,kyk=kAxk ≤ kAkkxk.

Từ đây ta nhận được ước lượng tốt nhất cho sai số tương đối của nghiệm

kδxk

kxk ≤ kAkkA

−1kkδyk

kyk . (1.10)

Ước lượng này cho thấy sai số tương đối của nghiệm có thể bằng sai số tương đối của vế phải khuếch đại lên cond(A):=kAkkA−1k lần.

Nếu ma trậnAsuy biến, hoặcm6=nta có thể định nghĩa cond(A):=kAkkA†k, trong đóA† là nghịch đảo suy rộng theo nghĩa Moore-Penrose của A.

Hệ (1.8) (hay ma trận A) được gọi là điều kiện xấu nếu cond(A)1. Trong trường hợp ma trậnAchịu nhiễu δA, ta có đánh giá sai số sau

kδxk kxk ≤

cond(A)kδAk/kAk

1−cond(A)kδAk/kAk, (1.11)

với điều kiệnkA−1kkδAk<1.

Như vậy nếu hệ (1.8) là điều kiện xấu thì mặc dù trên lý thuyết nó vẫn đặt chỉnh theo nghĩa Hadamard, song một sai số nhỏ của vế phải hoặc/và của ma trận hệ số có thể gây nên sai số rất lớn ở nghiệm. Người ta nói những bài toán này là "thực tế đặt không chỉnh" (practically ill-posed) và các phương pháp hiệu chỉnh cũng được sử dụng để giải những bài toán điều kiện xấu.

P. Deuflhard [35] gọi hệ phương trình phi tuyến là điều kiện xấu, nếu ma trận Jacobi của vế phải "gần suy biến" tại một số bước lặp nào đó. Ta sẽ trình bày rõ hơn về vấn đề này cho bài toán biên hai điểm

       x0= f(x,t), t ∈[a,b], x:[a,b]→Rn, r(x(a),x(b)) =0. (1.12)

Bài toán (1.12) được giải bằng phương pháp bắn bội, tức là xét m−1 bài toán giá trị ban đầu

       x0= f(x,t), t ∈[ti,ti+1], i=1, . . . ,m−1, x(ti,ti,si) =si, (1.13)

trong đó phân hoạcha=t1< . . . <tm =bđã cho và ta cần tìm véctơ bắnn(m−1)

chiềusT = (sT1, . . . ,sTm)thỏa mãn các điều kiện:

1. Điều kiện liên tục (m>2), tức là Fi(si,si+1):=x(ti+1,ti,si)−si+1 =0, i=1, . . . ,m−1,

2. Điều kiện biên Fm−1(s1,sm−1):=r(s1,x(tm,tm−1,sm−1)) =0.

Bây giờ ta sẽ dùng phương pháp Newton để giải hệ phương trình phi tuyến kích thước lớn thu được. Gọi∆s(k) là lượng hiệu chỉnh theo phương pháp Newton tại

bước lặp thứs(k). Khi đó ta sẽ tìm s(k+1)theo sơ đồ cải biên sau:

s(k+1)=s(k)+λk∆s(k), 0<λk≤1. (1.14)

Tham sốλk chọn sao cho

T(s(k+1))<T(s(k)), trong đóT(s):=∑im=−11kFi(s)k2.

Trong nhiều bài toán ứng dụng, do ma trận Jacobian suy biến hoặc điều kiện xấu tại một số bước lặp nên ta phải chọn bướcλk rất nhỏ. Điều này làm tăng thời gian tính toán, thậm chí làm thuật toán không hội tụ. Vì vậy ta cần nghiên cứu các thuật toán Newton hiệu chỉnh cho hệ phương trình phi tuyến thu được.

Một phần của tài liệu Giải hệ phương trình kích thước lớn và điều kiện xấu trên bó máy tính (Trang 40 - 43)