You are on page 1of 7

Inexact Gauss-Newton

Untuk menyelesaikan persamaan Gaussian-Newton yang dinyatakan dalam persamaan berikut:

(𝑱𝑻 𝑱 + 𝜷𝑾𝑻 𝑾). 𝜹𝒎 = −𝑱𝑻 (𝑸𝑨−𝟏 . 𝒒 − 𝒅𝒐𝒃𝒔) + 𝜷𝑾𝑻 𝑾(𝒎 − 𝒎𝒓𝒆𝒇))

Diberikan dua solusi diantaranya yaitu:


1. Selain menggunakan penyelesaian matrix-vector product, matrik J dapat diselesaikan dengan
sistem linier yaitu dimana 𝒚 = 𝑨−𝟏 . 𝒘. Persamaan linier tersebut penting untuk diselesaikan
karena menjadi salah satu kendala dalam proses komputasi lebih lanjut.
2. Melibatkan solusi perhitungan:

𝜹𝒎 = −𝑯−𝟏 . 𝒈 (11)

menggunakan metode langsung atau iterasi. Namun karena matrix H sangat besar dan
padat (dense) maka persamaan 𝜹𝒎 membutuhkan toleransi tinggi untuk diselesaiakan.
Dembo et.al (1982), menyatakan bahwa penyelesaian matrix J atau 𝑯−𝟏 tidak perlu
toleransi tinggi untuk medapat model pembaruan. Oleh karenanya, persamaan matrix J
(equation 8) dapat diselesaikan dengan toleransi rendah (algoritma Inexact Gauss-
Newton). Dengan algoritma tersebut, persamaan 𝜹𝒎 dapat diperoleh melalui:
a) Gunakan algoritma J, hitung nilai 𝒈 = −𝑱𝑻 (𝑸𝑨−𝟏 . 𝒒 − 𝒅𝒐𝒃𝒔) + 𝜷𝑾𝑻 𝑾(𝒎 − 𝒎𝒓𝒆𝒇)
dalam toleransi tinggi, sehingga arah penurunannya benar.
b) Masukkan ke dalam preconditioned conjugate gradient (PGC) solver untuk
menyelesaiakan persamaan 11
c) Bentuklah H dalam PCG solver dimana dalam setiap iterasi, untuk toleransi yang rendah
menggunakan algoritma J (menyelesaiakan 𝒚 = 𝑨−𝟏 . 𝒘).
d) Lakukan iterasi dalam PCG solver dalam jumlah kecil (< 5) untuk mendapatkan pembaruan
model yang diperkirakan.
Pembaruan model dengan metode ini jauh lebih murah dibandingkan dengan metode inversi
Gauss-Newton yang tradisional.
Line Search and Further Iterations
Setelah diperoleh pembaruan model vektor menggunakan algoritma 𝜹𝒎 di atas, maka dapat dibuat
model baru:
𝒎𝑖 + 1 = 𝒎𝑖 + 𝜶𝜹𝒎 (12)

Dimana mi+1 adalah model baru dan 𝜶 adalah parameter pencarian baris yang digunakan untuk
mengontrol magnitude dari pembaruan model yang telah dibuat sebelumnya. Penentuan nilai 𝜶
dengan menetapkan kondisi penurunan yang sesuai dengan aturan Armijo (1966):

𝛷(𝒎𝑖 + 1) = 𝛷(𝒎𝑖 + 𝜶𝜹𝒎) ≥ 𝜱(𝒎𝑖 ) + 𝑐1𝜶𝜵𝜱𝑻 (𝒎𝑖) 𝜹𝒎 (13)

Dimana c1 adalah konstanta yang memiliki nilai yang sangat kecil (10−4 ). Persamaan 13
digunakan untuk memastikan bahwa pembaruan model baru mengurangi fungsi objektif.
Sedangkan ketika menampilkan pembaruan model dengan equation 12, nilai 𝜶 adalah 1 (satu)
sehingga model baru tersebut valid atau dapat diterima. Jika kondisinya tidak terpenuhi, 𝜶
dikurangi satu setengah dan dievaluasi kembali. Prosedur tersebut diulangi hingga menemukan
model baru yang sesuai dengan kriteria equation 13.

Karena equation 8 dihasilkan dari linearisasi model mi dan model mi+1 belum mencapai lokal
minimum, maka dilakukan iterasi lain dari pembaruan IGN, yaitu melakukan linierisasi model
mi+1 tersebut. Proses iterasi diulangi hingga fungsi objektif / ketidakcocokan data menurun hingga
level tertentu. Secara alternatifnya, inversi dapat dihentikan ketika besaran gradien g dibawah
toleransi yang diberikan. Hal ini mengindikasikan bahwa fungsi objektif telah diratakan dan tidak
ada perbaikan model lanjutan yang dibuat. Ambang batas untuk menghentikan kriteria sangat besar
sehingga tidak ada nilai spesifik untuk menghentikannya. Berdasarkan pengalaman, cara terbaik
untuk menghentikan kriteria yang dicari adalah melalui eksplorasi model sintetik.

Dalam prakteknya, jika tebakan model awal mendekati solusi, maka jumlah pembaruan model
yang diperoleh dengan iterasi IGN jarang >10. Ketika tebakan model awal jauh dari solusi, maka
iterasi IGN menjadi lebih sering dilakukan. Sedangkan jika tebakan model awal sangat buruk,
maka algoritma yang diharapakan kemungkinan tidak konvergen.
IMPLEMENTASI MATLAB
Pada bagian ini dijelaskan rincian terkait implementasi algoritma Inexact Gauss-Newton. Semua
source code telah dikembangkan dalam MATLAB. Adapun penjelasan lebih lanjut meliputi:

Data Structure
Kode inversi yang dimiliki terdiri atas 35 m-file yang diantaranya dapat memanggil fungsi built-
in MATLAB. Dengan sejumlah fungsi tersebut, penyusunan struktur array MATLAB menjadi
lebih mudah. Struktur array pada MATLAB dapat diberi nama dan nilainya dapat ditetapkan
dalam skalar untuk matrix multidimensional. Dalam hal ini diperlukan dua struktur data yang
ditetapkan pengguna untuk operasi inversi yaitu: MTX dan Para. Kedua struktur ini berisikan
semua informasi yang dibutuhkan untuk menjalankan inversi. Adapun komponen utama kedua
struktur ini dapat dilihat pada gambar 1 dan 2. Rincian lebih lanjut dapat ditemukan di file driver
untuk kode inversi. Untuk struktur Para, pengguna akan lebih mudah menyelesaikan regulasi
dengan tipe yang sangat kecil yang diaplikasikan pada permasalahan spesifik. Sedangkan struktur
MTX mengandung semua informasi berdasarkan model dan ruang data. Deskripsi dari tiap
komponen MTX ini dapat ditemukan pada dokumen m-file, updateMTX.m, dan generateMTX.m.

Solving the Forward Problem


Untuk tiap iterasi IGN, harus dibuat suatu matrix operator single forward yang dideskripsikan oleh
equation 2. Untuk membentuk operator matrix single forward, maka harus dibuat matrik operator
divergensi dengan memanggil fungsi div.m kemudian membuat matrik S dengan fungsi massf.m.
Selanjutnya, tiga sparse matrik yang dihasilkan dikalikan Bersama untuk menghasilkan matrik
forward modelling yang tersimpan dalam struktur MTX sebagai MTX.FOR. sebelum menyimpan
operator matrik forward dilakukan reverse simetri permutasi Cuthill-McKee symcrm.m untuk
membentuk kembali problem sehingga preconditioner untuk solver iterasi dapat dihitung lebih
cepat. Sehingga permutasi dari operator forward dapat tersimpan.

Operator forward bersifat jarang (sparse) dan terikat sehingga equation 3 lebih mudah diselesaikan
menggunakan metode iterasi preconditioned. Namun, karena harus menyelesaiakan system linier
pada equation 3 untuk setiap term source, secara komputasi perlu dihitung prekonduktor yang baik
di setiap iterasi IGN yang dilakukan. Dalam hal ini digunakan faktorisasi LU incomplete dengan
built-in fungsi MATLAB luinc untuk menghasilkan matrik prakondisi. Adapun rentang toleransi
drop yang digunakan diantara 10-3 dan 10-4. Toleransi drop menentukan seberapa dekat faktorisasi
LU incomplete dengan faktorisasi LU complete. Dengan preconditioner ini equation 3 dapat
diselesaikan dalam semua algoritma term source diantaranya menggunakan preconditioned,
biconjugate, dan algoritma gradien stabil (bicgstb.m).

Making a Right-hand Side and Picking Data


Dalam rangka memecakan equation 3 maka diperlukan membuat vektor sumber sisi kanan (right-
hand side). Dalam prakteknya terdapat kendala lapangan seperti topografi dan penyimpangan
lubang bor sehingga untuk menemukan sumber di pusat lokasi menjadi sulit. Dengan
menyelesaikan equation 3 tersebut maka bidang potensial di masing-masing pusat lokasi dapat
diamati. Seperti halnya data yang diamati dalam hal ini mungkin receiver tidak berada di pusat
lokasi namun tetap menjadi bagian dari pengukuran ini. Oleh karena itu, term source q dan matrik
proyeksi Q harus diinterpolasi ke pusat lokasi. Matrik q dan Q disimpan dalam struktur MTX
sebagai MTX.RHS dan MTX.OBS.

Proses untuk membuat q adalah sama, kecuali dalam q, bobot interpolasi diskalakan dengan faktor
1
dimana ∆𝑉 adalah volume cell. Jika receiver tidak terletak di pusat lokasi cell, maka interpolasi
∆𝑉

linier dilakukan ke titik cell sekitarnya. Sehingga menghasilkan row entry pada Q yang memiliki
8 nilai bobot. Sedangkan untuk data yang terletak dipermukaan dimana koordinat z =0, data
tersebut diberi koordinat z sesuai dengan pusat cell pertama. Selanjutnya diinterpolasi ke 4 cell
disemitarnya dalam arah x dan y. Dalam kasus ini row Q memiliki 4 bobot data. Jika datum terletak
di pusat cell, maka row entry yang dihasilkan pada titik Q hanya satu. Survei permukaan dan
lubang bor yang digabungkan berpotensi menguntungkan karena memungkinkan untuk
memperoleh set data permukaan yang lengkap secara spasial, sementara secara bersamaan dapat
diperoleh informasi kedalaman dari distribusi secara vertikal lubang bor.
Gambar 1. Rincian komponen yang menyusun struktur Para yang diinput sebelum struktur MTX dibuat

Gambar 2. Rincian komponen yang menyusun struktur MTX


Data Weighting
Untuk memastikan data sesuai dengan besarannya, diberikan bobot yang sesuai dengan inversinya
yang biasanya disebut pembobotan data. Istilah ini didasarkan pada eror relative pada setiap datum
yang diaplikasikan pada termpertama dalam fungsi objektif sesuai dengan equation 6. Data
residual dalam term objektif diberi skala oleh matrix MTX.WdW sehingga diperoleh:

𝟏 𝜷
𝜱(𝒎) = 𝟐 ‖𝑾𝒅𝑾(𝒅(𝒎) − 𝒅𝒐𝒃𝒔)‖𝟐 + 𝟐 ‖𝑾(𝒎 − 𝒎𝒓𝒆𝒇)‖𝟐 (14)

WdW adalah bentuk standar yang sederhana. Diagonal utama dari WdW mengandung input
eror absolut:

1
𝒅𝒊𝒂𝒈(𝑾𝒅𝑾) = |𝒅𝒐𝒃𝒔|.𝑺𝑫(𝒅𝒐𝒃𝒔)+𝜺
(15)

Dimana 𝑺𝑫(𝒅𝒐𝒃𝒔) adalah standar deviasi dari data observasi (MTX.DTW) dan 𝜺 adalah bobot.

Regulation and Model Weighting


Regulasi merupakan bagian penting dari proses inversi. Untuk system yang tidak ditentukan,
regulasi menjadi tingkat control tertinggi atas solusi yang akan dihasilkan. Dalam hal ini
digunakan regulasi Tikhonov-style namun kekurangannya pengguna dapat dengan mudah
memodifikasi kode dan menerapkan skema regulasi yang berbeda. Adapun fungsi calcWTW.m
membuat model regulasi matrik W dala equation 14. Output disimpan dalam MTX.WTW yang
diatur supaya tidak berubah selama inversi. Adapun bentuk regulasi W:

𝑾 = (𝑎𝑙𝑠. 𝑰 + 𝑎𝑙𝑥. 𝐺𝑥 + 𝑎𝑙𝑦. 𝐺𝑦 + 𝑎𝑙𝑧. 𝐺𝑧)𝑇 (𝑎𝑙𝑠. 𝑰 + 𝑎𝑙𝑥. 𝐺𝑥 + 𝑎𝑙𝑦. 𝐺𝑦 + 𝑎𝑙𝑧. 𝐺𝑧) (16)

Dimana Gx, Gy, dan Gz, adalah komponen gradien arah x, y, dan z. I adalah matrik identitas,
alx, aly, dan alz adalah bobot relative dalam gradien komponen x, y, dan z. Sebagai contoh, jika
nilai alx lebih besar maka solusi menjadi datar dalam arah x. sehingga penerapan bobot yang
berbeda pada masing-masing komponen gradien menyebabkan tingkat flatten menjadi berbeda
pada arah tertentu.
Selain mengenal adanya istilah smallness dan faltness, MTX.WTW juga memiliki vector bobot
yang dapat ditentukan oleh pengguna itu sendiri yaitu MTX.wt. dengan vector tersebut, dapat
memungkinkan untuk mengetahui lebih lanjut pengetahuan yang belum diketahui tentang operator
regulasi tersebut. Dalam kasus yang disajikan ini diberikan istilah pembobotan kedalaman yang
memiliki model bobot 1/z2. Sehingga dengan model bobot tersebut inversi data dapat disesuaikan
dengan log lubang bor yang ada.

A note on β
Banyak pekerjaan yang telah diselesaikan sebagai keuntungan dari pengurangan β selama proses
inversi. Banyak pendekatan dan yang disrankan dari literature dan secara prakteknya oleh
(Constable et.al.,1987; Hansen,1998). Tiga pendekatan umum yang sesuai dengan β adalah:
1). Memperbaiki β untuk seluruh inversi
2). Mengurangi β dengan jumlah tetap setelah iterasi
3). Menggunakan kriteria L-curve untuk memilih yang sesuai dengan iterasi.
Pendekatan terakhir ini dikatakan memberikan hasil yang terbaik. Namun, biaya komputasinya
cukup besarsehingga pada implementasi ini dipilih inversi yang sesuai dengan β. Oleh karena itu
dalam hal ini ditulis kode untuk mempermudah pengguna dalam mengimplementasi perbedaan
strategi dalam menentukan β. Para pengguna harus sering menentukan β melalui trial. Ketika
melakukan trial, pengguna harus mencari nilai terbesar yang memungkinkan data dapat
disesuaikan dengan level noise-nya.

You might also like

  • NOTE
    NOTE
    Document1 page
    NOTE
    Wanie Tathawookiepoenya
    No ratings yet
  • NOTE
    NOTE
    Document1 page
    NOTE
    Wanie Tathawookiepoenya
    No ratings yet
  • Daftar Isi
    Daftar Isi
    Document2 pages
    Daftar Isi
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Maneks
    Tugas Maneks
    Document7 pages
    Tugas Maneks
    Wanie Tathawookiepoenya
    No ratings yet
  • Modul Pengolahan Data Geolistrik Dengan Res2dinv
    Modul Pengolahan Data Geolistrik Dengan Res2dinv
    Document1 page
    Modul Pengolahan Data Geolistrik Dengan Res2dinv
    Wanie Tathawookiepoenya
    No ratings yet
  • Ringkasan Papaer
    Ringkasan Papaer
    Document15 pages
    Ringkasan Papaer
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Maneks 1
    Tugas Maneks 1
    Document8 pages
    Tugas Maneks 1
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Maneks
    Tugas Maneks
    Document7 pages
    Tugas Maneks
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Maneks
    Tugas Maneks
    Document7 pages
    Tugas Maneks
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Messa
    Tugas Messa
    Document11 pages
    Tugas Messa
    Wanie Tathawookiepoenya
    No ratings yet
  • Tugas Maneks
    Tugas Maneks
    Document7 pages
    Tugas Maneks
    Wanie Tathawookiepoenya
    No ratings yet
  • STRATIGRAFI SEISMIC
    STRATIGRAFI SEISMIC
    Document6 pages
    STRATIGRAFI SEISMIC
    Wanie Tathawookiepoenya
    No ratings yet
  • Ring Kasan
    Ring Kasan
    Document4 pages
    Ring Kasan
    Wanie Tathawookiepoenya
    No ratings yet
  • Review Jurnal2
    Review Jurnal2
    Document1 page
    Review Jurnal2
    Wanie Tathawookiepoenya
    No ratings yet