MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
TESIS
Oleh
RAHAWARNI SRI RIZKI 117021028/MT
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2013
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
T E S I S
Diajukan Sebagai Salah Satu Syarat
Untuk Memperoleh Gelar Magister Sains dalam Program Studi Magister Matematika pada Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Oleh
RAHAWARNI SRI RIZKI 117021028/MT
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2013
Judul Tesis : MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY Nama Mahasiswa : Rahawarni Sri Rizki
Nomor Pokok : 117021028
Program Studi : Magister Matematika
Menyetujui, Komisi Pembimbing
(Prof. Dr. Saib Suwilo, M.Sc ) (Prof. Dr. Opim Salim S, M.Sc)
Ketua Anggota
Ketua Program Studi, Dekan,
(Prof. Dr. Herman Mawengkang) (Dr. Sutarman, M.Sc)
Tanggal lulus: 5 Juni 2013
Telah diuji pada Tanggal 5 Juni 2013
PANITIA PENGUJI TESIS
Ketua : Prof. Dr. Saib Suwilo, M.Sc Anggota : 1. Prof. Dr. Opim Salim S, M.Sc
2. Dr. Sutarman, M.Sc 3. Prof. Dr. Tulus, M.Si
PERNYATAAN
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
T E S I S
Saya mengakui bahwa tesis ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing dituliskan sumbernya
Medan, Juni 2013 Penulis,
Rahawarni Sri Rizki
i
ABSTRAK
Mengingat matriks jarang, matriks simetris definit positif C dan faktorisasi Choles- ky jarang LDLT sangat erat hubungannya, maka penyelesaian masalah faktorisasi Cholesky dapat dikembangkan dengan suatu teknik updating setelah memodifikasi baris dan kolom pada matriks simetris C. Dalam tesis ini, Peneliti menganalisis teknik modifikasi faktorisasi Cholesky pada C berhubungan dengan rank-2 yang dapat dikomputasi secara efisien menggunakan teknik rank-1 yang berkembang sebelumnya. Menghitung bagaimana solusi dari suatu persaman linier Lx = b setelah merubah baris dan kolom pada C atau setelah merubah rank-r pada C.
Kata kunci: Aljabar linear numerik, Metode langsung, Faktorisasi Cholesky, Matriks jarang, Update matriks.
ii
ABSTRACT
Given the sparse matrix, symmetric positive definite matrix C and sparse Cholesky factorization LDLT are closely related, then the Cholesky factorization problem solving can be developed with a technique of updating after modifying rows and columns on a symmetric matrix C. In this thesis, researchers analyzed the Cho- lesky factorization technique modification on C associated with rank–2 which can be efficiently computed using rank–1 technique developed previously. Calculate how a solution of a linear equation Lx = b after changing rows and columns on C or after a rank–r change in C.
Keyword: Numerical linear algebra, Direct method, Cholesky factorization sparse matrix, Update the matrix.
iii
KATA PENGANTAR
Puji syukur kepada Allah SWT yang selalu memberikan rahmat dan hidayat yang luar biasa sehingga penulis dapat menyelesaikan tesis dengan judul: MODI- FIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLES- KY. Penulis menyampaikan terima kasih yang sebesar-besarnya kepada :
Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
Bapak Dr. Sutarman, M.Sc, Dekan Fakultas Matematika dan Ilmu Penge- tahuan Alam Universitas Sumatera Utara sekaligus penguji I, yang telah membe- rikan kesempatan kepada penulis untuk mengikuti Program Magister Matematika di FMIPA Universitas Sumatera Utara.
Bapak Prof. Dr. Herman Mawengkang, Ketua Program Studi Magister Matematika FMIPA Universitas Sumatera Utara.
Bapak Prof. Dr. Saib Suwilo, M.Sc, selaku Sekretaris Program Studi Magister Matematika FMIPA Universitas Sumatera Utara, yang juga sebagai pembimbing utama, dan banyak memberikan bimbingan dan arahan dalam menyelesaikan tesis ini.
Bapak Prof. Dr. Opim Salim S, M.Sc, Pembimbing-II yang telah banyak memberikan bimbingan dan arahan dalam menyelesaikan tesis ini.
Bapak Prof. Dr. Tulus, M.Si, yang juga sebagai penguji II yang telah mem- berikan saran dan kritik dalam penyempurnaan tesis ini.
Bapak / Ibu Dosen Program Studi Magister Matematika FMIPA Universitas Sumatera Utara yang telah memberikan ilmunya selama masa perkuliahan.
Ibu Misiani, S.Si, staf administrasi Program Studi Magister Matematika FMIPA Universitas Sumatera Utara yang banyak membantu proses administrasi.
iv
Ucapan terimakasih juga penulis sampaikan kepada :
Ibunda dan ayahanda tercinta, Mary Untung Pohan, BA dan Alm. An- war Siregar,BA serta keluarga tercinta, suami : Ali Ahmad Ependi Nasu- tion, Adik : Mira Kurniati Siregar, Yudith Indra Malaon Siregar serta Wiyana Levi Santi Siregar yang telah memberikan kasih sayang dan dukungan baik moril maupun materiil selama penulis dalam pendidikan dan penyelesaian tesis ini.
Rekan-rekan mahasiswa Program Studi Magister Matematika FMIPA Universitas Sumatera Utara khususnya angkatan reguler tahun 2011 Ganjil, dan semua pihak yang tidak dapat penulis sebutkan satu persatu pada tesis ini. Semoga Allah SWT membalas segala kebaikan dan bantuan yang telah diberikan.
Medan, Juni 2013 Penulis,
Rahawarni Sri Rizki
v
RIWAYAT HIDUP
Rahawarni Sri Rizki, dilahirkan di Sipirok, Tapanuli Selatan pada tanggal 16 Maret 1968, merupakan anak tungga dari Mary Untung Pohan, BA dan Alm.
Anwar Siregar,BA. Penulis menyelesaikan pendidikan Sekolah Dasar (SD) di SD Negeri 2 Padang Sidempuan pada tahun 1981, Sekolah Menengah Pertama (SMP) di SMPN 1 Padang Sidempuan pada tahun 1984, dan Sekolah Menengah Atas (SMA) di SMA Negeri 2 Padang Sidempuan pada tahun 1987.
Pada tahun 1988 penulis melanjutkan pendidikan Strata-1 pada Fakultas Pen- didikan Matematika dan Ilmu Pengetahuan Alam jurusan Pendidikan Kimia di IKIP Medan dan melanjut pada tingkatan Strata-1 pada Fakultas Keguruan dan Ilmu Pendidikan jurusan Pendidikan Matematika Universitas Muslim Nusantara, dan memperoleh gelar Sarjana Pendidikan pada tahun 2000. Pada September 2011 penulis melanjutkan studi pada Program Studi Magister Matematika di FMIPA Universitas Sumatera Utara. Saat ini penulis, bertugas sebagai tenaga pengajar pada Sekolah SMPN 1 Percut Sei Tuan yang dimulai pada tahun 2003.
vi
DAFTAR ISI
Halaman
PERNYATAAN i
ABSTRAK ii
ABSTRACT iii
KATA PENGANTAR iv
RIWAYAT HIDUP vi
DAFTAR ISI vii
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Perumusan Masalah 2
1.3 Tujuan Penelitian 2
1.4 Manfaat Penelitian 2
1.5 Metode Penelitian 3
BAB 2 TINJAUAN PUSTAKA 4
BAB 3 LANDASAN TEORI 6
3.1 Matriks Jarang (Sparse) 6
3.2 Rank Matriks 6
3.3 Faktorisasi Cholesky 7
3.4 Faktorisasi Cholesky Sparse 7
3.5 Modifikasi Faktorisasi Cholesky 8
vii
3.6 Metode C1 9 BAB 4 MODIFIKASI BARIS DAN KOLOM MATRIKS SPARSE FAK-
TORISASI CHOLESKY 10
4.1 Penambahan Baris dan Kolom pada Matriks C 10 4.2 Penambahan Baris Sparse (Matriks Jarang) 13
4.3 Menghapus Baris 15
4.4 Menghapus Baris Sparse 17
4.5 Memodifikasi Sembarang Baris 18
4.6 Membuat Pertukaran Sparse ke Baris Sparse Lain 19 4.7 Memodifikasi Baris Rank-2 Outer-Product 21
4.8 Memodifikasi Sistem Segitiga Bawah 22
BAB 5 KESIMPULAN DAN SARAN 26
5.1 Kesimpulan 26
5.2 Saran 26
DAFTAR PUSTAKA 27
viii
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
T E S I S
Diajukan Sebagai Salah Satu Syarat
Untuk Memperoleh Gelar Magister Sains dalam Program Studi Magister Matematika pada Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Oleh
RAHAWARNI SRI RIZKI 117021028/MT
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2013
Judul Tesis : MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY Nama Mahasiswa : Rahawarni Sri Rizki
Nomor Pokok : 117021028
Program Studi : Magister Matematika
Menyetujui, Komisi Pembimbing
(Prof. Dr. Saib Suwilo, M.Sc ) (Prof. Dr. Opim Salim S, M.Sc)
Ketua Anggota
Ketua Program Studi, Dekan,
(Prof. Dr. Herman Mawengkang) (Dr. Sutarman, M.Sc)
Tanggal lulus: 5 Juni 2013
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
TESIS
Oleh
RAHAWARNI SRI RIZKI 117021028/MT
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2013
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
T E S I S
Diajukan Sebagai Salah Satu Syarat
Untuk Memperoleh Gelar Magister Sains dalam Program Studi Magister Matematika pada Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
Oleh
RAHAWARNI SRI RIZKI 117021028/MT
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2013
Judul Tesis : MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY Nama Mahasiswa : Rahawarni Sri Rizki
Nomor Pokok : 117021028
Program Studi : Magister Matematika
Menyetujui, Komisi Pembimbing
(Prof. Dr. Saib Suwilo, M.Sc ) (Prof. Dr. Opim Salim S, M.Sc)
Ketua Anggota
Ketua Program Studi, Dekan,
(Prof. Dr. Herman Mawengkang) (Dr. Sutarman, M.Sc)
Tanggal lulus: 5 Juni 2013
Telah diuji pada Tanggal 5 Juni 2013
PANITIA PENGUJI TESIS
Ketua : Prof. Dr. Saib Suwilo, M.Sc Anggota : 1. Prof. Dr. Opim Salim S, M.Sc
2. Dr. Sutarman, M.Sc 3. Prof. Dr. Tulus, M.Si
PERNYATAAN
MODIFIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLESKY
T E S I S
Saya mengakui bahwa tesis ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing dituliskan sumbernya
Medan, Juni 2013 Penulis,
Rahawarni Sri Rizki
i
ABSTRAK
Mengingat matriks jarang, matriks simetris definit positif C dan faktorisasi Choles- ky jarang LDLT sangat erat hubungannya, maka penyelesaian masalah faktorisasi Cholesky dapat dikembangkan dengan suatu teknik updating setelah memodifikasi baris dan kolom pada matriks simetris C. Dalam tesis ini, Peneliti menganalisis teknik modifikasi faktorisasi Cholesky pada C berhubungan dengan rank-2 yang dapat dikomputasi secara efisien menggunakan teknik rank-1 yang berkembang sebelumnya. Menghitung bagaimana solusi dari suatu persaman linier Lx = b setelah merubah baris dan kolom pada C atau setelah merubah rank-r pada C.
Kata kunci: Aljabar linear numerik, Metode langsung, Faktorisasi Cholesky, Matriks jarang, Update matriks.
ii
ABSTRACT
Given the sparse matrix, symmetric positive definite matrix C and sparse Cholesky factorization LDLT are closely related, then the Cholesky factorization problem solving can be developed with a technique of updating after modifying rows and columns on a symmetric matrix C. In this thesis, researchers analyzed the Cho- lesky factorization technique modification on C associated with rank–2 which can be efficiently computed using rank–1 technique developed previously. Calculate how a solution of a linear equation Lx = b after changing rows and columns on C or after a rank–r change in C.
Keyword: Numerical linear algebra, Direct method, Cholesky factorization sparse matrix, Update the matrix.
iii
KATA PENGANTAR
Puji syukur kepada Allah SWT yang selalu memberikan rahmat dan hidayat yang luar biasa sehingga penulis dapat menyelesaikan tesis dengan judul: MODI- FIKASI BARIS DARI MATRIKS SPARSE FAKTORISASI CHOLES- KY. Penulis menyampaikan terima kasih yang sebesar-besarnya kepada :
Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, M.Sc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
Bapak Dr. Sutarman, M.Sc, Dekan Fakultas Matematika dan Ilmu Penge- tahuan Alam Universitas Sumatera Utara sekaligus penguji I, yang telah membe- rikan kesempatan kepada penulis untuk mengikuti Program Magister Matematika di FMIPA Universitas Sumatera Utara.
Bapak Prof. Dr. Herman Mawengkang, Ketua Program Studi Magister Matematika FMIPA Universitas Sumatera Utara.
Bapak Prof. Dr. Saib Suwilo, M.Sc, selaku Sekretaris Program Studi Magister Matematika FMIPA Universitas Sumatera Utara, yang juga sebagai pembimbing utama, dan banyak memberikan bimbingan dan arahan dalam menyelesaikan tesis ini.
Bapak Prof. Dr. Opim Salim S, M.Sc, Pembimbing-II yang telah banyak memberikan bimbingan dan arahan dalam menyelesaikan tesis ini.
Bapak Prof. Dr. Tulus, M.Si, yang juga sebagai penguji II yang telah mem- berikan saran dan kritik dalam penyempurnaan tesis ini.
Bapak / Ibu Dosen Program Studi Magister Matematika FMIPA Universitas Sumatera Utara yang telah memberikan ilmunya selama masa perkuliahan.
Ibu Misiani, S.Si, staf administrasi Program Studi Magister Matematika FMIPA Universitas Sumatera Utara yang banyak membantu proses administrasi.
iv
Ucapan terimakasih juga penulis sampaikan kepada :
Ibunda dan ayahanda tercinta, Mary Untung Pohan, BA dan Alm. An- war Siregar,BA serta keluarga tercinta, suami : Ali Ahmad Ependi Nasu- tion, Adik : Mira Kurniati Siregar, Yudith Indra Malaon Siregar serta Wiyana Levi Santi Siregar yang telah memberikan kasih sayang dan dukungan baik moril maupun materiil selama penulis dalam pendidikan dan penyelesaian tesis ini.
Rekan-rekan mahasiswa Program Studi Magister Matematika FMIPA Universitas Sumatera Utara khususnya angkatan reguler tahun 2011 Ganjil, dan semua pihak yang tidak dapat penulis sebutkan satu persatu pada tesis ini. Semoga Allah SWT membalas segala kebaikan dan bantuan yang telah diberikan.
Medan, Juni 2013 Penulis,
Rahawarni Sri Rizki
v
RIWAYAT HIDUP
Rahawarni Sri Rizki, dilahirkan di Sipirok, Tapanuli Selatan pada tanggal 16 Maret 1968, merupakan anak tungga dari Mary Untung Pohan, BA dan Alm.
Anwar Siregar,BA. Penulis menyelesaikan pendidikan Sekolah Dasar (SD) di SD Negeri 2 Padang Sidempuan pada tahun 1981, Sekolah Menengah Pertama (SMP) di SMPN 1 Padang Sidempuan pada tahun 1984, dan Sekolah Menengah Atas (SMA) di SMA Negeri 2 Padang Sidempuan pada tahun 1987.
Pada tahun 1988 penulis melanjutkan pendidikan Strata-1 pada Fakultas Pen- didikan Matematika dan Ilmu Pengetahuan Alam jurusan Pendidikan Kimia di IKIP Medan dan melanjut pada tingkatan Strata-1 pada Fakultas Keguruan dan Ilmu Pendidikan jurusan Pendidikan Matematika Universitas Muslim Nusantara, dan memperoleh gelar Sarjana Pendidikan pada tahun 2000. Pada September 2011 penulis melanjutkan studi pada Program Studi Magister Matematika di FMIPA Universitas Sumatera Utara. Saat ini penulis, bertugas sebagai tenaga pengajar pada Sekolah SMPN 1 Percut Sei Tuan yang dimulai pada tahun 2003.
vi
DAFTAR ISI
Halaman
PERNYATAAN i
ABSTRAK ii
ABSTRACT iii
KATA PENGANTAR iv
RIWAYAT HIDUP vi
DAFTAR ISI vii
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Perumusan Masalah 2
1.3 Tujuan Penelitian 2
1.4 Manfaat Penelitian 2
1.5 Metode Penelitian 3
BAB 2 TINJAUAN PUSTAKA 4
BAB 3 LANDASAN TEORI 6
3.1 Matriks Jarang (Sparse) 6
3.2 Rank Matriks 6
3.3 Faktorisasi Cholesky 7
3.4 Faktorisasi Cholesky Sparse 7
3.5 Modifikasi Faktorisasi Cholesky 8
vii
3.6 Metode C1 9 BAB 4 MODIFIKASI BARIS DAN KOLOM MATRIKS SPARSE FAK-
TORISASI CHOLESKY 10
4.1 Penambahan Baris dan Kolom pada Matriks C 10 4.2 Penambahan Baris Sparse (Matriks Jarang) 13
4.3 Menghapus Baris 15
4.4 Menghapus Baris Sparse 17
4.5 Memodifikasi Sembarang Baris 18
4.6 Membuat Pertukaran Sparse ke Baris Sparse Lain 19 4.7 Memodifikasi Baris Rank-2 Outer-Product 21
4.8 Memodifikasi Sistem Segitiga Bawah 22
BAB 5 KESIMPULAN DAN SARAN 26
5.1 Kesimpulan 26
5.2 Saran 26
DAFTAR PUSTAKA 27
viii
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Faktorisasi suatu matriks merupakan cara untuk menyatakan hubungan se- buah matriks sebagai perkalian dari matriks-matriks lain. Selanjutnya, terdapat berbagai macam tipe matriks berdasarkan pengamatan ukuran maupun karakte- ristik dari entri matriks tersebut. Dengan adanya berbagai macam tipe matriks menimbulkan pula berbagai macam cara untuk memfaktorkan suatu matriks, di- antaranya dikenal sebagai faktorisasi Cholesky. Faktorisasi Cholesky adalah fak- torisasi suatu matriks persegi H yang dinyatakan sebagai bentuk perkalian matriks H= KKTdengan K adalah matriks segitiga bawah yang disebut segitiga Cholesky (Cholesky triangle) sebagaimana dikemukakan oleh Hager (1988).
Menurut Hager(1989), penyelesaian masalah faktorisasi Cholesky setelah me- rubah rank terkecil pada suatu matriks adalah masalah mendasar yang berkai- tan dengan beberapa aplikasi seperti algoritma optimasi, masalah kuadrat terkecil dalam bidang statistik, analisis sirkuit elektris dan power sistem, struktur mekanik, perubahan syarat batas pada persamaan diferensial parsial, metode domain dekom- posisi, dan metode elemen batas.
Pada penelitian selanjutnya dikemukakan oleh Davis dan Hager (2001) ten- tang faktorisasi Cholesky Sparse LDLT dari matriks C yaitu matriks simetris bernilai definit positif , dan modifikasi yang berkaitan dengan perubahan rank-r dari suatu bentuk matriks ¯C = C ± WWT, dimana matriks W berordo n × r dengan r < n. Ternyata dalam hal ini, pendekatan yang dilakukan dengan mem- pertimbangkan perubahan rank-2 terhadap modifikasi baris dan kolom matriks simetris C waktu yang digunakan dalam pekerjaan kurang efisien dan dapat meng- akibatkan entri nol pada matriks. Namun pada kasus matriks padat (dense) peng- gunaan tehnik rank-2 menghasilkan modifikasi faktorisasi dense yang komplit.
Pendekatan baru dilakukan dengan menghapus baris dan kolom nol yang berhubungan dengan update sparse rank-1, dengan menambahkan baris dan kolom nol baru berhubungan dengan downdate sparse rank-1.
1
2
Ketika menghapus elemen dari matriks berarti memperbaharui (update) fak- torisasi dan menambah elemen matriks berarti downdate faktorisasi yang meru- pakan solusi pada suatu sistem segitiga Lx = b setelah merubah baris dan kolom matriks sebagai hasil modifikasi.
Memodifikasi baris dan kolom ke-k dari matriks C dapat dipandang se- bagai dua hal yang berbeda.Misalkan matriks A berordo n × m, dan matriks C= aI + AAT. Maka memodifikasi baris ke-k pada matriks A mengakibat- kan perubahan pada baris dan kolom ke-k pada matriks C. Jika matriks C adalah sparse maka setiap langkah algoritma 1 harus beroperasi pada matriks jarang. Al- goritma grafik dan struktur data secara efisien harus mendukung setiap langkah. L disimpan dalam bentuk vektor kolom terkompresi, dimana indeks baris dan kolom masing masing telah diurutkan dalam suatu urutan (Davis dan Hager, 2001).
1.2 Perumusan Masalah
Yang menjadi masalah dalam penelitian ini adalah menemukan teknik mo- difikasi faktorisasi Cholesky Sparse untuk menyelesaikan masalah yang berkaitan terhadap penggunaan waktu yang kurang efisien dengan modifikasi rank-2 dari matriks C dengan pendekatan teknik sparse rank-1. Dimana matriks C adalah matriks sparse simetris yang bernilai definit positif. Dan bagaimana metode terse- but dapat dimanfaatkan dalam menyelesaikan sistem triangular Lx = b ketika L dan b berubah.
1.3 Tujuan Penelitian
Untuk menganalisis teknik memodifikasi matriks sparse faktorisasi Choles- ky yang berkaitan dengan modifikasi rank-2dan dapat dikomputasi secara efisien dengan menggunakan teknik sparse rank-1. Dan juga untuk menentukan solusi dari sistem persamaan linier Lx = b ketika L dan b berubah sebagai akibat dari modifikasi baris dan kolom matriks.
1.4 Manfaat Penelitian
Memperkaya literatur tentang modifikasi faktorisasi Cholesky sparse dan mem- berikan suatu solusi dari perubahan pada sistem persamaan linier Lx = b setelah merubah baris dan kolom matriks C atau setelah merubah rank–r dari matriks C.
3
1.5 Metode Penelitian
Metode penelitian ini bersifat literatur dan kepustakaan dengan mengum- pulkan informasi dari beberapa jurnal. Langkahlangkah yang dilakukan adalah sebagai berikut :
1. Meninjau konsep-konsep dasar matriks
2. Menguraikan matriks sparse dalam facktorisasi Cholesky
3. Mengidentifikasi kejadian-kejadian yang dapat menimbulkan modifikasi pada matriks sparse
4. Menentukan asumsi awal pada notasi terkait
5. Membentuk modifikasi baris dan kolom pada matriks sparse menggunakan faktorisasi Cholesky.
Notasi dan Lambang
Notasi matriks ¯C menyatakan matriks C yang telah dimodifikasi. Huruf kapital A menyatakan sebuah matriks. Huruf kecil tebal a menyatakan vektor kolom dan aT menyatakan vektor baris. Sedangkan a atau α menyatakan skalar.
|A | menyatakan banyaknya entri tak nol pada matriks sparse A. Notasi Ai atau Aij menyatakan sub matriks A. Dan notasi (A)ij menyatakan entri pada baris ke-i dan kolom ke-j pada matriks A. Sedangkan notasi (A)∗j menyatakan semua entri pada kolom j, dan notasi (A)i∗ menyatakan semua entri pada baris ke−i.
BAB 2
TINJAUAN PUSTAKA
Pada bab ini akan dibahas tinjauan pustaka dalam memperoleh implementasi dari suatu algoritma yang optimum, karena akan digunakan untuk memecahkan masalah sistem yang ada pada algoritma tersebut. Pemilihan metode sangat pen- ting, karena untuk masalah yang besar maka jenis metode yang digunakan akan sangat mempengaruhi efisiensi algoritma secara keseluruhan. Dalam hal ini struk- tur data yang digunakan adalah struktur data yang mendukung penyimpanan se- cara jarang (srparse) dengan menggunakan metode langsung (direct method) yaitu faktorisasi cholesky dan modifikasi faktorisasi cholesky yang sangat berperan dalam penyelesaian permasalahan sistem persamaan linear yang simetrik definit positif (Duff dan Reid, 1986) serta (Golub dan Loan 1989).
Faktorisasi Cholesky adalah suatu teknik untuk penyelesaian persamaan sis- tem linear Ax = b dimana A adalah suatu matriks simetrik definit positif. Dalam komputasi pemecahan sistem persamaan linear, sering digunakan metode lain mi- salnya metode titik interior, metode simpleks, teknik optimasi (Grondelle, 1999).
Metode langsung (direct method) yang banyak digunakan untuk memecahkan sistem persamaan linear (SPL) yang simetrik definit positif adalah faktorisasi Cho- lesky. Secara umum ada empat fase yang dilakukan dalam memecahkan SPL de- ngan menggunakan metode faktorisasi, yaitu : fase pengurutan (ordering), fase faktorisasi simbolik (symbolic factirization), fase faktorisasi numerik (numerical factorization) dan fase pencarian solusi.
Matriks jarang adalah matriks yang sebagian besar elemennya adalah nol.
Matriks seperti ini banyak ditemukan dalam orde besar dan berkembang dari ap- likasi nyata yang sudah diterapkan dilapangan (Rice dan John, 1981). Yang men- jadi masalah adalah ruang penyimpanan yang dibutuhkan, jika matriks seperti ini disimpan dengan menggunakan array, akan terjadi pemborosan penyimpanan elemen-elemen bernilai nol, maka perlu dirancang sruktur data yang lebih efisien dengan hanya mencatat elemen-elemen tidak nol dan posisinya di dalam ma- triks. Selain struktur data, perlu dirancang algoritma yang lebih ringkas dalam penelusuran setiap elemen matriks, agar tidak ada prosedur yang terbuang sia-sia dengan mengalikan elemen nol (Golub dan Loan 1989).
4
5
Penelitian ini pada akhirnya akan menyimpulkan algoritma dan struktur da- ta mana yang lebih sesuai untuk faktorisasi sparse dalam mengambil kesimpulan bahwa algoritma sudah optimal.
BAB 3
LANDASAN TEORI
3.1 Matriks Jarang (Sparse)
Pada bab ini akan dikemukakan suatu landasan teori yang mengacu pada faktorisasi chocesky. Dengan adanya berbagai tipe matriks menimbulkan pula berbagai macam cara untuk memfaktokan suatu matriks diantaranya dikenal se- bagai faktorisasi chocesky, faktorisasi LU, faktorisasi SUP, faktorisasi QR dan fak- torisasiloewner neville. Penggunan masing-masing faktorisasi ini tergantung pada tipe matriks yang difaktorkan ataupun tipe matriks sebagai faktor pada perkalian.
Matriks jarang adalah matriks yang sebagian besar elemennya adalah nol. Matriks seperti ini banyak ditemukan dalam orde besar dan berkembang dari aplikasi nyata yang sudah diterapkan di lapangan. Yang menjadi masalah adalah ruang penyim- panan yang dibutuhkan, jika matriks seperti ini disimpan dengan menggunakan ar- ray, akan terjadi pemborosan penyimpanan elemen-elemen bernilai nol, maka perlu dirancang struktur data yang lebih efisien dengan hanya mencatat elemen-elemen tidak nol dan posisinya di dalam matriks. Selain struktur data, perlu dirancang algoritma yang lebih ringkas dalam penelusuran setiap elemen matriks, agar tidak ada prosedur yang terbuang sia-sia dengan mengalikan elemen nol. Array dengan banyaknya elemen tidak nol sekitar 10% dari ukuran array dinamakan array jarang (Wilson, 1988).
3.2 Rank Matriks
Rank matriks adalah banyaknya jumlah baris dan kolom yang independen pada suatu matriks. Misalkan suatu matriks :
1 2 0 3 1 2 -3 0 0 0 4 8 2 4 0 6
Matriks pada baris pertama bernilai [ 1 2 0 3 ] dan matriks pada baris keempat bernilai [ 2 4 0 6 ] sehingga kedua baris matriks memiliki faktor skala, akibatnya jumlah baris sebanyak 3 dan jumlah kolom sebanyak 4 maka dikatakan rank matriks tersebut bernilai 3.
6
7
3.3 Faktorisasi Cholesky
Menurut Hager(1988), Faktorisasi Cholesky adalah faktorisasi suatu matriks persegi H yang dinyatakan sebagai bentuk perkalian matriks H = KKTdengan K adalah matriks segitiga bawah yang disebut segitiga Cholesky(Cholesky triangel).
Sebagai ilustrasi, misalkan matriks H sebagai berikut :
H =
h11 h12 · · · h1n
h21 h22 · · · h2n
... ... . .. ... hn1 hn2 · · · hn3
dengan hij = hji(i = 1, · · · , n dan j = 1, · · · , n)
Ambil K =
kii 0 · · · 0 k21 k22 · · · 0 ... ... . .. ... kn1 kn2 · · · knn
maka KT =
kii k21 · · · kn1
0 k22 · · · kn2
... ... . .. ... 0 0 · · · knn
Bentuk faktorisasi Cholesky dari matriks H berukuran n x n adalah:
h11 h12 · · · h1n
h21 h22 · · · h2n
... ... . .. ... hn1 hn2 · · · hn3
=
kii 0 · · · 0 k21 k22 · · · 0 ... ... . .. ... kn1 kn2 · · · knn
kii k21 · · · kn1
0 k22 · · · kn2
... ... . . . ... 0 0 · · · knn
(3.1) Dengan menyelesaikan persamaan (3.1) diperoleh :
hij= Xi p−1
k2ip (3.2)
hij= Xi p=1
kip kjp (3.3)
3.4 Faktorisasi Cholesky Sparse
Tujuan dari perhitungan faktorisasi Cholesky sparse adalah memfaktorkan suatu sparse dari matriks A yang simetris definit positif berdimensi n x n ke dalam bentuk A = LLT, dimana L adalah segitiga bawah. Perhtungan biasanya dilakukan sebagai rangkaian tiga langkah (step). Step (1), pengurutan ulang data
8
heuristik, menata ulang baris dan kolom dari matriks A untuk mengurangi fill-in (mengisi ke dalam) faktor matriks L. Step (2), faktorisasi simbolik. Melakukan faktorisasi simbolik untuk menentukan struktur nonzero (bukan nol) pada L yang diberi penataan tertentu.Dalam step ini ditentukan alokasi penyimpanan pada L Step (3), faktorisasi numerik. Berarti menghitung nilai aktual nonzero dalam L.
Langkah ini adalah langkah yang paling memakan waktu, merupakan hal yang perlu diperhitungkan. Penyimpanan dan melakukan operasi perhitungan dalam sparse hanya pada entri nonzero. Faktorisasi tersebut paling sering dinyatakan dalam bentuk kolom matriks sparse (George dan Liu, 1980).
3.5 Modifikasi Faktorisasi Cholesky
Suatu matriks simetrik definit positif A dimodifikasi oleh matriks simetrik dari rank-1 yaitu :
D + αppT = A + αzzT (3.4) dimana ¯A merupakan faktorisasi Cholesky dari A, yaitu A = LDLT , dapat di- tentukan dengan faktorisasi,
A = ¯¯ L ¯D¯LT
yang diperoleh dari : ¯A = A + αzzT = L (D + αppT) LT sebagaimana dike- mukakan oleh Gill, et al., (1974) dimana Lp = z , p diperoleh dari z oleh substitusi maju. Ketika faktorisasi berbentuk ,
D + αppT = ¯L ¯D¯LT membutuhkan modifikasi faktor Cholesky dari bentuk,
A = L¯¯ L ¯D¯LTLT
dan diberikan,
L = L¯¯ L dan ¯D = ¯D
saat memproduksi dua matriks segitiga bawah dapat menghasilkan satu matriks segitiga bawah. Sifat yang dimiliki pada faktorisasi dari persamaan (3.4) dibentuk dari suatu karakteristik metode khusus (Gill, et al., 1974).
9
3.6 Metode C1
Metode C1 sebagaimana dikemukakan oleh Gill, et al., (1974), menggunakan faktorisasi Cholesky klasik. Faktorisasi Cholesky dari D + αppT dapat dibentuk secara langsung. Metode ini digunakan untuk membuktikan induksi sebagaimana L memiliki sifat istimewa ketika subdiagonal elemen-elemen dari kolom pertama pada L merupakan perkalian dari hubungan beberapa elemen tersebut.
Menurut Bennett (1965), modifkassi faktorisasi suatu matriks adalah update pada faktor-faktor LDU mengikuti suatu rank-m :
L ¯¯D ¯U = LDU + XCYT (3.5) dimana X , Y adalah matriks berordo n×m dan C adalah matriks berordo m×m.
Hal ini dapat dinyatakan sebagai:
(i) Algoritma memiliki kestabilan sifat numerik ketika L = UT , X = Y dan kedua D dan ¯D matriks definit positif.
(ii) Algoritma C1 hampir bersifat identik pada kasus istimewa dari algoritma Bennett’s, saat m = 1, C = α dan X = Y = z.
BAB 4
MODIFIKASI BARIS DAN KOLOM MATRIKS SPARSE FAKTORISASI CHOLESKY
Bab ini akan memodifikasikan tentang baris dan kolom pada matriks sparse dalam faktorisasi cholesky seperti yang dikemukakan oleh Davis dan Hager.
4.1 Penambahan Baris dan Kolom pada Matriks C
Menurut Davis dan Hager (2003) memodifikasi baris dan kolom ke-k dari matriks C dapat dipandang sebagai dua hal yang berbeda. Misalkan matriks A berordo n × m, dan matriks C=αI + AAT. Maka memodifikasi baris ke-k pada matriks A mengakibatkan perubahan pada baris dan kolom ke-k pada matriks C. Secara umum, seolah-olah melakukan perubahan pada baris dan kolom ke-k dari matriks definit positif C. Dengan dugaan bahwa adanya kasus khusus dimana baris ke-k yang berinisial nol menjadi tak nol pada matriks A (kasus penambahan baris). Atau baris dan kolom ke-k dari C awalnya kelipatan dari baris dan kolom ke-k dari matriks identitas, dan perubahan untuk beberapa nilai lainnya. Misalkan
¯
aT2 adalah baris baru ke-k tak nol dari ¯A, maka
A =
A1
0T A3
, ¯A =
A1
¯ aT2 A3
Dimana 0T adalah vektor baris yang semua entrinya nol. Hal ini menunjukkan kita dalam memodifikasi baris dan kolom ke-k dari matriks C
C =
αI + A1AT1 0 A1AT3
0T α 0T
A3AT1 0 αI + A3AT3
=
C11 0 CT31 0T c22 0T C31 0 C33
Dimana c22 = α. Kita dapat memilih α = 0, walaupun matriks C tidak bernilai definit positif, submatriks diluar baris dan kolom k haruslah bernilai definit positif.
Sistem persamaan linier Cx = b terdefinisi secara jelas pada kasus ini, kecuali untuk xk. Matriks baru ¯C diperoleh sebagai berikut:
10
11
C =¯
αI + A1AT1 A1¯a2 A1AT3
¯
aT2AT1 α + ¯aT2¯a2 ¯aT2AT3 A3AT1 A3¯aT2 αI + A3AT3
=
C11 ¯c12 CT31
¯cT12 ¯c22 ¯cT32 C31 ¯c32 C33
Dengan demikian, penambahan baris k pada matriks A sama dengan penambahan baris dan kolom k pada matriks C.Perlu diketahui bahwa merubah baris dan kolom ke-k dari matrik C yang entrinya bernilai nol (kecuali diagonal utama) menjadi tak nol dapat juga dipandang sebagai pengurangan dimensi matriks (n − 1) × (n − 1),
C11 CT31 C31 C33
Faktorisasi sebelumnya terhadap matriks C berdimensi n × n diperoleh se- bagai berikut,
LDLT =
L11
0T 1 L31 0 L33
D1
d2
D3
LT11 0 LT31 1 0T LT33
=
C11 0 CT31 0T α 0T C31 0 C33
Sehingga diperoleh empat persamaan sebagai berikut;
L11D1LT11= C11
d2 = α L31D1LT11= C31
L31D1LT31+ L33D3LT33 = C33 (4.1) Setelah penambahan baris dan kolom ke-k diperoleh matriks ¯C, makan diperoleh faktorisasi matriks
LDLT =
L11
¯IT 1 L31 ¯I32 ¯L33
D1
d2
D¯3
LT11 0 LT31 1 0T
¯LT33
=
C11 ¯c CT31
¯
cT12 ¯c22 ¯cT32
‘C31 ¯c32 C33
(4.2)
12
Dimana L11dan L31tidak mengalami perubahan sebagai hasil dari modifikasi baris dan kolom ke-k dari matriks C. Dari (4.2), persamaan-persamaan yang relevan adalah :
L11D1¯I12= ¯c12 (4.3)
¯IT12D1¯I12+ ¯d2 = ¯c22
L31D1¯IT12+ ¯I32d¯2 = ¯c32
L31D1LT31+ ¯I32d¯2¯IT32+ ¯L33D¯3L¯T33 = C33 (4.4)
Misalkan w = ¯I32
pd¯2. Gabungan dari persamaan (4.4) dan persamaan awal (4.1) diperoleh :
L¯33D¯3L¯T33 = (C33−L31D1LT31) − ¯I32d¯2¯IT32 = L33D3LT33−wwT
Faktorisasi dari L33D3LT33−wwT dapat dikomputasi sebagai turunan (downdate) rank-1 dari faktorisasi L33D3LT33(Davis dan Hager,1999). Turunan ini mengarahkan kita pada algoritma 1 untuk komputasi modifikasi faktorisasi LDLT.
Algoritma 1( penambahan baris )
1. Selesaikanlah sistem triangularL11D1¯I12= ¯c12 untuk ¯I12
2. ¯d2 = ¯c22− ¯IT12D1¯I12
3. ¯I32= (¯c12−L11D1¯I12)/ ¯d2
4. w = ¯I32
pd¯2
5. Bentuklah rank-1 downdate ¯L33D¯3L¯T33= L33D3LT33−wwT
End Algorithm 1
Step (1) dari algoritma-1 membutuhkan solusi tunggal dari sistem segitiga bawah L11y = ¯c12orde (k − 1). Perhitungan y memerlukan (k − 1)2− (k − 1) flops (tahapan), dan perhitungan ¯I12 = D−11 y memerlukan (k − 1) flops yang lain. Step (2) memerlukan 2(k − 1) pekerjaan menggunakan y. Step (3) merupakan matriks hasil kali vektor L31y, dimana L31 berdimensi (n − 1) × (n − 1) dan memerlukan (n − k) × (k − 1), operasi selebihnya (k − 1) dibagi oleh ¯d2. Step (4) memerlukan
13
sekali operasi akar dan (n − k) perkalian. Dan yang terakhir downdate rank-1 memerlukan 2(n − k)2+ 4(n − k) operasi menggunakan metode C1 sebagaimana dikemukakan oleh Gill, et al., (1974) (mengacu pada Davis dan Hager (2001)).
Untuk kasus matriks dense, jumlah total operasi floating points yang dikerjakan menggunakan algoritma-1 adalah 2n2 + 3n + k2 − (2nk + 2k + 1). Untuk k = 1 diperoleh 2n2, untuk k = n diperoleh n2 dan untuk k = n/2 diperoleh (5/4)n2.
4.2 Penambahan Baris Sparse (Matriks Jarang)
Jika matriks C adalah sparse maka setiap langkah algoritma -1 harus ber- operasi pada matriks jarang. Algoritma grafik dan struktur data secara efisien harus mendukung setiap langkah. Dengan asumsi bahwa L disimpan dalam bentuk vektor kolom terkompressi, dimana indeks baris dan kolom masing−masing telah diurutkan dalam suatu urutan. Dengan menggunakan struktur data yang sama (Davis dan Hager, 2001), kecuali bila algoritma yang disajikan tidak memerlukan urutan indeks baris, tetapi memerlukan lebih banyak integer dari setiap entri yang bukan nol pada L untuk mendukung operasi yang efisien pada downdate simbolik.
Algoritma yang dibahas disini tidak dibutuhkan berulang-ulang.
Mempertahankan indeks baris yang telah terurut membutuhkan operasi gabu- ngan dalam mengatur kumpulan perhitungan untuk menentukan pola−pola entri baru bukan nol dari kolom L, dari pada urutan data yang lebih sederhana yang tidak terurut yang digunakan oleh Davis dan Hager (2001). Dalam hal ini tidak berpengaruh pada asimtot kompleksitas tetapi sedikit efek pada run time. Selan- jutnya memerlukan banyak pekerjaan dalam mempertahankan indeks baris untuk melakukan pengurutan, pada lain waktu dimana algoritma diperoleh. Selanjutnya dalam melakukan pengurutan pada kolom dapat dikerjakan dalam bentuk Lx = b, contohnya penghitungan lebih cepat dibanding pada kolom matriks dengan indeks yang acak.
Step (1), pada algoritma-1 menyelesaikan sistem segitiga bawah L11y = ¯c12, dimana ketiga istilah terdapat dalam sistem matriks jarang.
Step (2), adalah operasi perkalian skala produk, dan dapat dihitung dalam waktu sebanding dengan jumlah entri bukan nol pada ¯I12.
Step (3), adalah operasi perkalian vektor matriks, mengakses kolom yang sama pada L yang digunakan oleh segitiga bawah dalam menyelesaikan matriks jarang, yaitu masing-masing kolom j untuk yang entri ke j pada ¯I12 adalah bukan
14
nol. Dibutuhkan kolom yang sama untuk dimodifikasi, oleh pergeseran entri pada
¯I12 < 1, dan memasukkan entri baru pada ¯I12yaitu baris ke k pada L. Hanya kolom dalam kisaran 1 sampai k − 1 yang perlu diakses atau dimodifikasi oleh step (1) sampai (3). Ketika step (3) komplit, kolom baru k pada ¯L perlu dimasukkan ke dalam struktur data.
Hal ini dapat dilakukan dengan satu cara saja. Kasus ini umumnya dapat menyimpan kolom dengan sendirinya secara berjauhan dan dapat mengalokasikan ruang baru. Dengan strategi yang sama dapat digunakan pada setiap kolom 1 sam- pai k − 1 dari L tanpa alokasi awal dan peningkatan run time asimtotik. Atau, dapat diketahui suatu peringkat atas yang terikat pada ukuran setiap kolom L sete- lah semua penambahan baris selesai dilakukan. Strategi pengalokasian statis yang lebih sederhana adalah mungkin. Pada kedua kasus, waktu untuk memasukkan ¯I12
ke dalam struktur data untuk komputasi ¯I32 pada step (3) adalah:
O
X
(¯I12)j6=0)
|(L31)∗j|
Step (4) adalah operasi perkalian skalar vektor sederhana.Total waktu untuk step (1) sampai (4) adalah :
O
X
(¯I12)j6=0)
|(L)∗j|
Step (5) hampir sesuai dengan spesifikasi modifikasi rank-1 pada matriks jarang, tetapi terdapat suatu belokan menarik. Pada awalnya baris dan kolom ke k pada C adalah nol, kecuali untuk entri diagonal, α. Baris dan kolom baru hanya menambah entri ke C, dengan demikian pola bukan nol faktor asli dari L adalah subset dari pola nol pada L. Rank-1 pada modifikasi algoritma-1 merupakan update simbolik ( entri nol baru yang ditambahkan tidak dihapus) dan sebuah numerik downdate L33D3LT33−wwT. Perkalian digunakan hanya untuk downdate simbolik berikunya, dan tidak diperlukan dalam penambahan baris algoritma, tetapi akan diperlukan oleh algoritma penghapusan baris yang mempertahankan pola ketelitian bukan nol pada L.
Modifikasi rank-1 untuk mendapatkan faktorisasi ¯L33D¯3L¯T33 yang membu- tuhkan waktu sebanding dengan perubahan jumlah entri bukan nol pada ¯L33. Kolom yang berubah berhubungan dengan path dari node k ke akar eliminasi tree
15
pada ¯L. Path ini dilambangkan dalam ¯P( Davis dan Hager, 1999 ). Pada setiap node j pada path ¯P, maksimal 4 flops pekerjaan untuk setiap entri bukan nol pada (¯L)∗j.
Sebagai pilihan dalam struktur data, pemanfaatan eliminasi tree, dan me- modifikasi rank-1 (Davis dan Hager, 1999 ), total waktu yang digunakan pada algoritma-1 sama dengan jumlah total entri bukan nol dalam kolom yang berhu- bungan dengan entri bukan nol pada ¯I12, untuk menghitung step (1) sampai step (4), dibutuhkan penambahan waktu unuk modifikasi rank-1 pada step (5). Total waktu yang diperlukan adalah:
O
X
(¯I12)j6=0)
|(L)∗j| +X
j∈ ¯P
|(¯L)∗j|
Hal ini mencakup semua manipulasi struktur data, sparsiti pola perhitungan, dan algoritma grafik yang diperlukan untuk mengimplementasi algoritma. Hal ini iden- tik dengan jumlah total flops yang diperlukan, dan dengan demikian algoritma-1 optimal. Pada kasus matriks jarang, jika setiap kolom j mengambil bagian dalam perhitungan, waktunya adalah O(|¯L|). Biasanya, tidak semua kolom pada matriks jarang (sparse) akan terpengaruh oleh penambahan baris. Jika baris dan kolom baru pada ¯L sangat jarang, hanya beberapa kolom yang mengambil bagian dalam perhitungan.
4.3 Menghapus Baris
Dengan menghapus baris dan kolom k dari matriks C berarti merubah seluruh baris dan kolom menjadi nol kecuali entri diagonal pada (C)kk dirubah menjadi α.
Sebelum menghapus baris dan kolom k, diberikan faktorisasi asli sebagai berikut:
LDLT=
L11
¯IT12 1 L31 ¯I32 L¯33
D1
d2
D3
LT11 ¯IT12 LT31 1 ¯IT32 L¯T33
=
C11 c12 CT31 cT12 c22 cT32 C31 c32 C33
16
Setelah menghapus baris dan kolom k di peroleh:
LDLT =
L11
0T 1 L31 0 L¯33
D1
α D¯3
LT11 0T LT31 1 0T
L¯T33
=
C11 0 CT31 0T α 0T C31 0 C33
Jadi hanya perlu mengatur baris dan kolom k pada ¯L menjadi nol, mengatur entri diagonal menjadi α, dan menghitung ¯L33 dan ¯D3. Faktorisasi aslinya adalah:
L33D3LT33= C33−L31D1LT31−I32d2IT32 Sedangkan faktorisasi baru diberikan sebagai :
L¯33D¯3L¯T33= C33−L31D1LT31
Penggabungan dua persamaan, diperoleh numerik update rank-1
¯L33D¯3L¯T33= L31D1LT31−wwT (4.5) Dimana w = I32
√
d2 . Algoritma-2 memberikan penghapusan baris algoritma lengkap:
Algoritma 2(menghapus baris)
1. ¯I12= 0 2. ¯d2 = α 3. ¯I32= 0 4. w = I32
√ d2
5. Bentuk rank-1 update ¯L33D¯3L¯T33= L31D1LT31+ wwT
End Algorithm 2
Ketika matriks C berupa matriks padat, jumlah flops dilakukan pada algorit- ma-2 adalah 2(n−k)2+5(n−k)+1 (sama dengan step (4) dan (5) dari algoritma-1).
Kisaran nilai dalam hal ini adalah 2n2 ketika k = 1, dan 12n2 ketika k = n2. Tidak ada pekerjaan yang diperlukan ketika k = n.
17
4.4 Menghapus Baris Sparse
Ketika baris dan kolom k dari C dihapus (merubah ke nol) untuk menda- patkan ¯C, tidak ada istilah entri nol baru akan muncul di ¯L, dan beberapa entri nol di L dapat menjadi nol. Penghapusan entri dalam L sebagai downdate sim- bolik (Davis dan Hager, 1999). Downdate simbolik dapat dikombinasikan dengan update numerik rank-1, karena adanya penambahan wwT pada persamaan (4.5) yaitu ¯L33D¯3L¯T33 = L33D3LT33+ wwT. Tidak bisa hanya menghapus entri dari ¯L yang menjadi numerik nol. Sebuah entri di ¯L hanya dapat dihapus jika telah men- jadi simbolis nol (yaitu, nilainya adalah nol tanpa penugasan nilai numerik untuk pola nol pada C. Jika entri menjadi nol di sebabkan karena pembatalan nilai nu- merik yang eksak, dan diturunkan pada struktur data dari L, sehingga eliminasi tree tidak lagi menjadi struktur karakeristik dari suatu matriks. Jika eliminasi tree tidak berlaku lagi, update dan downdate berikutnya tidak akan dapat menentukan kolom L yang seharusnya dimodifikasi.
Step (1) sampai (3) dari algoritma-2 tidak memerlukan pekerjaan numerik, tetapi memang membutuhkan beberapa strukur data modifikasi. Semua entri dalam baris dan kolom k dari ¯L menjadi simbol nol dan dapat dihapus. Jika matriks L diisi oleh kolom, hal itu memudahkan pada step (3) untuk segera meng- hapus semua entri pada kolom I32. Disisi lain, peryataan ¯I12=0 pada step (1) kurang jelas.
Setiap elemen bukan nol pada baris k terletak pada kolom yang berbeda dan juga harus menetapkan nilai-nilai ke nol, menghapusnya dari struktur data atau deretan baris k sebagai nol dan memerlukan algoritma berikutnya yang mengak- ses baris matriks L yang ditandai diabaikan. Opsi terakhir akan menyebabkan baris sparse pada algoritma penghapusan dengan run time menjadi optimal, na- mun mempersulit semua algoritma lain dengan meningkatnya run time dalam aplikasinya. Pemilihan elemen-elemen bukan nol di setiap kolom akan muncul dan menghapusnya dari struktur data.
Untuk mengatur I12 ke bentuk nol dan menghapus entri-entri dari struktur data pada L membutuhkan scan semua kolom j pada L yang mana entri ke j dari I12 adalah entri yang bukan nol. Waktu yang diambil oleh operasi asimtotik disini dibatasi oleh waktu yang dibutuhkan pada step (1) sampai (3) melalui penambahan baris sparse (algoritma-1), tapi batasan waktunya agak sedikit luang.
18
Pola bukan nol (nonzero) dari baris k pada L dengan mudah dapat ditemukan oleh pohon eliminasi (elimination tree). Menemukan indeks baris dan kolom mem- butuhkan waktu lebih sedikit dari step (1) pada algoritma-1 sejak pencarian biner dilakukan. Menghapus entri-entri tersebut membutuhkan waktu yang sama dengan step (3) dari algoritma-1, karena mempertahankan setiap indeks baris dan kolom dengan data yang telah terurut.
Menghapus entri-entri dalam L33 dilakukan dengan menggunakan downdate simbolik rank-1 (Davis dan Hager, 1999). Walaupun membutuhkan sebuah ar- ray tambahan berulang-ulang, berupa nilai integer untuk setiap entri bukan nol dalam matriks. Sebaliknya entri ini bisa menjadi nol (nilainya sangat kecil) dalam struktur data tetapi tidak berpengaruh untuk operasi berikutnya pada matriks L.
Entri matriks dapat dikurangi pada faktorisasi simbolik dan membutuhkan waktu operasi sebesar O(|L|) (Eisenstat, et al., 1982). Jika dilakukan pada sparse saat menjalankan keseluruhan aplikasinya yang menggunakan algoritma penghapusan baris, tidak berdampak negatif.
Waktu asimtotik run time dari algoritma penghapusan baris sama dengan algoritma penambahan baris, penambahan baris sparse membutuhkan lebih banyak pekerjaan numerik. Dalam hal ini waktu asimtotik run time nya tidak optimal tetapi tidak lebih buruk dari penambahan baris sparse yang waktu run time nya optimal.
4.5 Memodifikasi Sembarang Baris
Hal ini dimungkinkan untuk menggeneralisasi penghapusan dan penambahan baris algoritma dalam menangani kasus dimana baris dan kolom k dari C yang awalnya bukan nol (kasus penambahan baris) atau diatur ke nol (kasus pengha- pusan baris) namun berubah tiba-tiba (sembarang). Beberapa perubahan dalam bentuk ini dapat ditangani sebagai suatu penghapusan baris diikuti dengan pe- nambahan baris berturut-turut. Pada bagian ini ditunjukkan bahwa tidak ada flops yang disimpan dalam algoritma modifikasi baris single-pass, dibanding de- ngan pendekatan penambahan dan penghapusan baris. Jika perubahan sembarang terjadi pada baris dan kolom k. Matriks asli C dan matris baru ¯C adalah:
C =
C11 c12 CT31 cT12 c22 cT32 C31 c32 C33
dan ¯C =
C11 ¯c12 CT31
¯cT12 ¯c22 ¯cT32 C31 ¯c32 C33
(4.6)
19
Menghitung ¯I12, ¯d2 dan ¯I32 sama dengan penambahan baris pada algoritma, dan menggunakan tepat jumlah flops yang sama. Faktorisasi asli dari blok–33 adalah :
L33D3LT33= C33−L31D1LT31−I32d2lIT32 Sedangkan faktorisasi baru adalah :
L¯33D¯3L¯T33= C33−L31D1LT31− ¯I32d¯2l¯IT32
Dapat dikombinasikan menjadi update rank-1 dan downdate rank-1
L¯33D¯3L¯T33= L33D3LT33+ w1wT1 −w2wT2 (4.7) Dimana w1 = I32
√
d2 dan w2 = ¯I32
pd¯2. Perkalian rank update atau downdate sebagaimana dikemukakan oleh Davis dan Hager (2001) tidak dapat melakukan update dan downdate simultan, tetapi jika downdate pada sparse (penghapu- san entri yang menjadi simbolik nol) tidak dilakukan, akan memungkinkan un- tuk menghitung update dan downdate simultan (4.7) dalam suatu single − pass.
Hal ini dapat mengakibatkan penghematan beberapa waktu, karena struktur data untuk L dipindai sekali, bukan dua kali. Tidak ada flops yang disimpan, namun perhitungan jumlah flops pada algoritma modifikasi baris, identik dengan pengha- pusan baris diikuti oleh penambahan baris berturut-turut.
4.6 Membuat Pertukaran Sparse ke Baris Sparse Lain
Dengan membatasi modifikasi baris dan kolom k dari C, diasumsikan dapat mengurangi jumlah total pekerjaan floating−point yang diperlukan untuk menghi- tung modifikasi faktorisasi LDLT.
Kasus yang dipertimbangkan hanya untuk perubahan beberapa entri dalam baris dan kolom k pada C. Diberikan :
∆c12= ¯c12−c12
∆c22= ¯c22− c22
∆c32= ¯c32−c32
Dengan dugaan bahwa perubahan baris dan kolom k sparser lebih banyak dari pada baris dan kolom k pada C asli (misalnya ,|∆c12| |¯c12|). Jika persamaan (4.3) dianggap sama dengan matriks C yang asli, maka
L11D1I12= c12 (4.8)
20
L11D1¯I12= ¯c12 (4.9) Gabungan dari kedua persamaan tersebut, diperoleh :
L11D1∆¯I12= ∆c12
Dimana ∆I12 = ¯I12−I12. Ketika ∆c12 adalah matriks jarang, solusi untuk sistem segitiga bawah akan cenderung menjadi matriks jarang. Hal ini dapat diselesaikan sesuai dengan waktu yang diperlukan dalam perkalian L11 dan ∆I12, atau seba- gaimana dikemukakan oleh Gilbert dan Peierls, (1988).
O
X
(∆I12)j6=0)
|(L11)∗j|
Kemudian dapat dihitung ¯I12 = I12+ ∆I12. Pendekatan untuk penghitungan ¯I12
jauh lebih cepat dari pada menyelesaikan persamaan (4.9) secara langsung, yang memberikan waktu
O
X
(¯I12)j6=0)
|(L11)∗j|
Menghitung ¯d2 dapat dilakukan pada waktu bersamaan dengan |∆I12| menggu- nakan rumus yang mengubah perkalian pada algoritma-1.
d¯2 = d2+ ∆d2 = d2+ ∆c22− X
(∆I12)j6=0
(∆I12)j ((I12)j+ (¯I12)j) (D1)jj
Demikian pula kolom k pada ¯L dapat dihitung dengan:
¯I32= (∆C32+ I32d2−L31D1∆I12) / ¯d2
Komponen kunci dalam perhitungan ini adalah perkalian vektor mariks jarang L31D1∆I12, yang membutuhkan waktu lebih sedikit dalam perhitungan sesuai de- ngan waktu yang diperlukan L31D1I12 pada step (2) dari algoritma-1.
Pekerjaan yang tersisa untuk update dan downdate rank-1 dari L33D3LT33 identik dengan modifikasi sembarang baris (4.7) jika jumlah k kecil, penurunan yang signifikan sejumlah pekerjaan dapat diperoleh dengan memanfaatkan sparsiti (kekurangan) dalam perubahan baris dan kolom C.