Tôi quan tâm đến sự phân hủy Cholesky của các ma trận thưa thớt lớn. Vấn đề tôi gặp phải là các yếu tố Cholesky không nhất thiết phải thưa thớt (giống như sản phẩm của hai ma trận thưa thớt không nhất thiết là thưa thớt). Ví dụ cho một ma trận với số không chỉ dọc theo hàng đầu tiên, cột đầu tiên, và chéo các yếu tố Cholesky có 100% điền vào (các hình tam giác phía trên và phía trên là 100% dày đặc). Trong các image dưới màu xám là số không và màu trắng là số không.Cholesky phân hủy các ma trận thưa thớt bằng cách sử dụng ma trận hoán vị
Một giải pháp Tôi biết là để tìm một hoán vị P ma trận và làm phân hủy Cholesky của P T AP. Ví dụ với cùng một ma trận bằng cách áp dụng một ma trận hoán vị di chuyển hàng đầu tiên đến hàng cuối cùng và cột đầu tiên đến cột cuối cùng, các yếu tố Cholesky là thưa thớt.
Câu hỏi của tôi là làm thế nào để xác định P nói chung?
Để có được một ý tưởng về sự khác biệt của quá trình phân hủy Cholesky của Một và P T AP từ một ma trận thực tế hơn xem hình ảnh dưới đây. Tôi mất tất cả các hình ảnh từ http://www.seas.ucla.edu/~vandenbe/103/lectures/chol.pdf
Theo lecture notes
nhiều phương pháp dựa trên kinh nghiệm (mà chúng ta không bao gồm) tồn tại để lựa chọn tốt hoán vị ma trận P.
Tôi muốn biết những gì một trong những phương pháp này là (mã trong C, C++, hoặc thậm chí Java sẽ là lý tưởng).
Những người đẹp đưa toàn bộ sách về chủ đề trực tuyến: [Y. Saad: Các phương pháp lặp lại cho các hệ thống tuyến tính thưa thớt] (http://www-users.cs.umn.edu/~saad/IterMethBook_2ndEd.pdf), đặc biệt. chương 3. Hãy thử "sắp xếp lại thưa thớt" trên google, có thể với "siêu đồ thị" làm từ khóa bổ sung. – LutzL
@LutzL, bạn có biết thư viện nào làm việc này không? Ví dụ. Eigen hoặc MKL? Hoặc một [đối với Java] (http://stackoverflow.com/questions/29604527/cholesky-decomposition-of-large-sparse-matrices-in-java)? –
[Patrick R. Amestoy et al .: Đại số tuyến tính và phương pháp trực tiếp thưa thớt] (http://amestoy.perso.enseeiht.fr/COURS/unesco2004.pdf) chương "Sắp xếp lại ma trận thưa thớt" và các văn bản khác trên trang của ông http : //amestoy.perso.enseeiht.fr/ – LutzL