Làm thế nào để xấp xỉ số điều kiện của một ma trận lớn?


9

Làm cách nào để tôi tính gần đúng số điều kiện của ma trận lớn , nếu G là tổ hợp biến đổi Fourier F (không đồng nhất hoặc đồng nhất), khác biệt hữu hạn R và ma trận đường chéo S ?GGFRS

Các ma trận rất lớn và không được lưu trữ trong bộ nhớ và chỉ có sẵn dưới dạng các hàm.

Cụ thể, tôi có ma trận sau:

Gμ=SHFHFS+μRHR

Tôi muốn điều tra mối quan hệ giữa và số điều kiện k ( G μ ) .μk(Gμ)

Tôi giả sử người ta cần một số cách tiếp cận lặp đi lặp lại? Tối ưu sẽ có một số mã MATLAB có sẵn.


1
Gμ

Câu trả lời:


11

MATLAB có một vài hàm "chính xác" cho điều này, condrcondsau đó trả về một đối ứng của số điều kiện. Hàm gần đúng Matlab condestđược mô tả đầy đủ hơn dưới đây.

Thông thường các ước tính về số điều kiện được tạo ra dưới dạng các sản phẩm phụ của giải pháp hệ thống tuyến tính cho ma trận, do đó bạn có thể cõng các ước tính số điều kiện cho công việc khác mà bạn cần thực hiện. Xem ở đây để mô tả ngắn gọn về cách ước tính được tính toán. Ngoài ra, nhận xét tài liệu AztecOO của Sandia Labs (xem Phần 3.1) rằng các ước tính số điều kiện tùy chọn có sẵn từ các bộ giải lặp (sử dụng ma trận Lanczos ba cực được tạo với các Conjugate Gradents hoặc ma trận Hessenburg được tạo với GMRES đã khởi động lại).

Vì ma trận của bạn là "rất lớn" và "chỉ có sẵn dưới dạng hàm", nên cách tiếp cận logic sẽ là phương pháp cõng trên một bộ giải gradient hoặc biến thể liên hợp.

Một bài báo gần đây của arXiv.org Các phép tính xấp xỉ eigenvalue không cố định trong các giải pháp lặp của các hệ thống tuyến tính và các công cụ ước tính cho lỗi tương đối đề xuất một cách tiếp cận như vậy và có một vài trích dẫn cho tài liệu trước đó.

Bây giờ tôi nhìn, diễn đàn này có một số Câu hỏi trước đó liên quan chặt chẽ (không phải tất cả với Câu trả lời, nhưng kiểm tra Nhận xét):

Ước tính giá trị bản địa cực cao với CG

Ước tính số điều kiện cho ma trận rất lớn

Thuật toán nhanh nhất để tính số điều kiện của một ma trận lớn trong Matlab / Octave


condestA1A11A1A11

Vì ma trận của bạn rõ ràng là Hermiti và xác định dương, có lẽ số điều kiện 2 chỉ tiêu được quan tâm nhiều hơn. Vấn đề sau đó là ước tính tỷ lệ giữa các giá trị riêng lớn nhất (nhỏ nhất). Thách thức có phần song song với trường hợp 1 định mức trong đó nói chung có thể dễ dàng ước tính tốt cho giá trị riêng lớn nhất , nhưng ước tính giá trị riêng nhỏ nhất chứng tỏ khó khăn hơn.

Mặc dù nhắm vào các trường hợp không phải SPD (và thậm chí không phải hình vuông), bài viết gần đây của arXiv.org, Ước tính số điều kiện lặp đáng tin cậy này , đưa ra một cái nhìn tổng quan về vấn đề ước lượng eigenvalue nhỏ nhất và một đường tấn công đầy hứa hẹn của không gian con Krylov phương thức (LSQR) tương đương với các lớp liên hợp trong trường hợp SPD.


Cảm ơn bạn vì câu trả lời. Làm cách nào để có được số điều kiện làm sản phẩm phụ của bộ giải gradient liên hợp?
Stiefel

@Stiefel: Có một bài báo năm 1992 Về tính toán gần đúng của các giá trị bản địa cực trị và số điều kiện của các ma trận không tính toán của Lei Guang-yao. Hãy để tôi xem nếu tôi có thể tìm thấy một tài liệu tham khảo tốt hơn (không phải đằng sau một bức tường trả tiền).
hardmath

@Stiefel: Đã thêm một số liên kết. Bạn cũng có thể quan tâm đến việc kiểm tra Google Sách (hoặc thư viện) để biết Phương pháp giải pháp lặp của Owe Axelsson (1996), đặc biệt. Chap. 13 Tỷ lệ hội tụ của Phương pháp Gradient liên hợp , mặc dù nhấn mạnh vào việc ước tính tốt hơn số lần lặp cần thiết cho hội tụ so với chỉ số điều kiện cung cấp.
hardmath

1
@Stiefel Với một cái tên như của bạn, bạn nên dạy chúng tôi về phương pháp CG :) Xem en.wikipedia.org/wiki/Eduard_Stiefel
stali
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.