Anda di halaman 1dari 8

Modul 2

INVERSI LINIER MENGGUNAKAN BOBOT

A. Tujuan Praktikum

a) Mampu mendemonstrasikan pengaruh ketidak pastian data pada solusi inversi


linier dan ketidak pastian solusi pada inversi linier.

B. Langkah Pengerjaan

B.1 Problem 1 Inversi Linier Berbobot Sederhana (Contoh)


Pada inversi linier dimana hubungan antara data observasi dan parameter model adalah
linear, kehadiran data outliers akan mempengaruhi hasil inversi. Data outliers ini
dihasilkan seringkali dari kesalahan saat pengukuran atau observasi di lapangan. Metode
leastsquare yang digunakan untuk memformulasikan solusi inversi merupakan
pemanfaatan konsep L2 norm, sehingga outliers ini akan terpetakan dan memberikan
efek pada solusi inversi. Untuk mengurangi pengaruh data outliers pada hasil inversi,
maka seringkali digunakan pembobotan pada data observasi pada inversi, yang dikenal
dengan istilah pembobotan (weight). Bobot diberikan kecil pada data outlier dan bobot
yang besar diberikan pada data yang dianggap benar (dalam arti plus minus dari standar
deviasinya).

Bobot dapat diberikan secara subyektif, misal W=[1 1 1 … 0.1] jika data terakhir
merupakan data outliers. Atau bisa juga diberikan bobot secara obyektif, dimana nilai
pembobotan diperoleh dari standar deviasi masing-masing data itu sendiri (untuk data
yang diambil berkali-kali). Sehingga solusi inversi liniernya :

𝑚 = [𝐺 𝑇 𝑊𝑒 𝐺]−1 𝐺 𝑇 𝑊𝑒 𝑑

Dengan 𝑤𝑖 = 𝜎𝑖 −2
Berikut adalah model true hubungan antara temperatur terhadap kedalaman :

𝑇 = 2 + 2𝑧

Seorang mahasiswa diminta untuk melakukan pengukuran temperature di beberapa


kedalaman, yaitu 0 sampai 10 sehingga banyak data x dan y adalah 11 (over-determined).
Data oulier diberi bobot 0.1 sedangkan data yang lain 1, dengan hasil sebagai berikut :

SCRIPT MATLAB

clc;clear;
% Generate data dummy (misal data kedalaman)
N=20;
zmin=0;
zmax=10;
z = sort(random('Uniform',zmin,zmax,N,1));

% Generate data observasi, misal data temperature Tobs = a + b*z + noise


a=2.0;
b=1.0;
sd=0.5;
Tobs = a+b*z+random('Normal',0,sd,N,1);

% one terrible outlier


%Tobs(1)=1;
%Tobs(N/2)=1;
Tobs(N)=1;

% create weighted matrix : subjective


w=eye(N,N);
% w(1,1)=0.1;
% w(N/2,N/2)=0.1;
w(N,N)=0.1;

% create weighted matrix : objective based on data


for i=1:1:N
%w(i,i)= Tobs(i)/(sqrt(Tobs(i)-mean(Tobs))^2);
End

%create matriks kernel


g=[ones(N,1) z];

%calculate model estimation with weighted scheme


m1=inv(g'*w*g)*g'*w*Tobs;

%calculate model estimation without weighted scheme


m2=inv(g'*g)*g'*Tobs;

%calculate data estimation with weighted scheme


dest1=m1(1,1)+m1(2,1)*z;

%calculate data estimation without weighted scheme


dest2=m2(1,1)+m2(2,1)*z;
%calculate misfit data with and without weighted scheme
E=(dest1-Tobs)'*(dest1-Tobs);
E2=(dest2-Tobs)'*w*(dest2-Tobs);
V=[Tobs dest1 dest2];

%PLOTTING
scatter(z,Tobs,'*')
hold on
plot(z,dest1,'color','blue','LineWidth',2)
hold on
theString = sprintf('T = %.3f + %.3f Z', m1(1,1), m1(2,1));
text(z(N-3),dest1(N-3), theString, 'FontSize', 10);
hold on
plot(z,dest2,'color','red','LineWidth',2)
hold on
theString2 = sprintf('T = %.3f + %.3f Z', m2(1,1), m2(2,1));
text(z(N-3),dest2(N-3), theString2, 'FontSize', 10);
hold on
xlabel('DEPTH (km)');ylabel('TEMP (oC)');

Dari hasil tersebut berikanlah pendapat Anda dan jelaskan pengaruh pembobotan pada
data observasi terhadap model parameter hasil inversi. Kemudian, bagaimana kalau
bobotnya diganti dengan memanfaatkan karakteristik datanya, yaitu

w(i,i)= abs(data ke-i/((data ke-I – rata-rata(data obs))));

Bobot di atas memanfaat informasi simpangan jarak antara data dengan rata – rata data.
Jika simpangannya jauh maka bobotnya akan kecil, dan sebaliknya.

B.2 PERCOBAAN 1 (Data outlier pada data observasi travel time pada Inversi
Penentuan Hiposeneter)

Inversi pada penentuan hiposeneter gempa pada 2D adalah dengan memanfaatkan data
waktu tempuh gelombang (misal gelombang P) dari titik sumber ke stasiun penerima.
Data waktu tempuh observasi tersebut disimbolkan 𝑇 𝑜𝑏𝑠 .

Penjalaran gelombang dari hiposenter ke stasiun menempuh waktu T yang dapat


dirumuskan sebagai berikut,

1
𝑇 = 𝑇𝑜 + √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2
𝑣

Sehingga

𝜕𝑡 𝜕𝑡
∆𝑇 = ∆𝑥 + ∆𝑧
𝜕𝑥 𝜕𝑧

1 −(𝑥𝑜 − 𝑥) 1 −(𝑧𝑜 − 𝑧)
∆𝑇 = ( ) ∆𝑥 + ( ) ∆𝑧
𝑣 √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2 𝑣 √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2
Persamaan diatas dapat direpresentasikan dalam bentukmatriks sebagai berikut:

1 −(𝑥𝑜 − 𝑥) 1 −(𝑧𝑜 − 𝑧)
∆𝑇 = [ ( ) ( )] [∆𝑥]
𝑣 √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2 𝑣 √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2 ∆𝑧

Disini ∆𝑇 merupakan residual, selsih antara 𝑇 𝑜𝑏𝑠 dengan 𝑇 𝑐𝑎𝑙 , dimana 𝑇 𝑐𝑎𝑙 diperoleh dari
persamaan berikut

1
𝑇 𝑐𝑎𝑙 = 𝑇𝑜 + √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2
𝑣
1 −(𝑥𝑜−𝑥) 1 −(𝑧𝑜−𝑧)
Sementara itu, matriks [𝑣 ( ) ( )] merupakan matriks
√(𝑧𝑜−𝑧)2 +(𝑥𝑜−𝑥)2 𝑣 √(𝑧𝑜−𝑧)2 +(𝑥𝑜−𝑥)2

kernel atau matriks Jacobi yang elemen – elemnnya merupakan nilai turunan pertama
∆𝑥
waktu tempuh terhadap model. Vektor [ ] merupakan vector perturbasi model.
∆𝑧
Sehingga hubungan antara residual, parameter perturbasi model adalah sebagai berikut:

∆𝑑 = 𝐺∆𝑚

Dengan ∆𝑑 adalah selisih antara 𝑇 𝑜𝑏𝑠 dan 𝑇 𝑐𝑎𝑙 , 𝐺 merupakan matriks kernel (matriks
jacobi dari turunan pertama waktu tempuh terhadap perturbasi parameter model, ∆𝑚,
yaitu [∆𝑥𝑜 ∆𝑧𝑜]𝑇 .

Pada kasus satu lapisan dimana hanya terdapat satu nilai kecepatan (misal V) maka sinar
gelombang dapat diasumsikan berupa garis lurus, sehingga persamaan untuk
menghitung waktu tempuh adalah sebagai berikut,

1
𝑇 𝑐𝑎𝑙 = 𝑇𝑜 + 𝑆
𝑣

Dimana 𝑇𝑜 merupakan waktu asal (origin time), yaitu waktu awal terjadinya rupture dan
𝑆 merupakan jarak yang ditempuh sinar dari sumber gempa ke stasiun yang dihitung
melalui persamaan jarak sebagai berikut,

𝑆 = √(𝑧𝑜 − 𝑧)2 + (𝑥𝑜 − 𝑥)2

Dengan (𝑥𝑜, 𝑧𝑜) merupakan lokasi hiposenter dan (𝑥, 𝑦) merupakan koordinat stasiun.

Prinsip utama dari inversi penentuan hiposenter ini adalah dengan cara meminimumkan
fungsi misfit sebagai berikut:

𝐸 = 𝑒 𝑇 𝑒 = (∆𝑑 − 𝐺∆𝑚)𝑇 (∆𝑑 − 𝐺∆𝑚)

Sehingga diperoleh hasil formulasi solusi inversi sebagai berikut,


∆𝑚 = (𝐺 𝑇 𝐺)−1 𝐺 𝑇 ∆𝑑

Perturbasi model tersebut selanjutnya digunakan untuk mengupdate model awal, yaitu

𝑚 = 𝑚𝑜 + ∆𝑚

Namun demikian, jika pada prakteknya data waktu tempuh yang kita observasi terdapat
kesalahan, misal pada saat kita picking waktu tiba gelombang P, karena faktor noise maka
kita tidak terlalu yakin dengan hasil picking kita (onsite pertama dari gelombang P tidak
jelas) maka data tersebut akan menyebakan kesalahan pula pada penentuan posisi
hiposenter. Dengan demikian, pengaruh data outlier tersebut perlu kita minimalkan
dampaknya terhadap hasil inversi, yaitu dengan cara memberikan bobot pafda setiap
data. Data outlier diberikan bobot rendah dengan tujuan memerkecil pengaruhnya
terhadap hasil inversi. Solusi matriks inversi dengan pembobotan adalah sebagai berikut,

∆𝑚 = (𝐺 𝑇 𝑊𝐺)−1 𝐺 𝑇 𝑊∆𝑑

Langkah – langkah Praktikum:

1. Forward Modelling

Pada tahap ini, mahasiswa melakukan pemodelan ke depan untuk menghitung waktu
tempuh real dari model (posisi hiposenter dan origin time) yang tersedia

a. Buat sembarang 1 posisi hiposenter 2D, misal H=[xo, yo,to];


b. Buat koordinat stasiun sejumlah 4, misal Sx=[x1;x2;x3;x4] dan Sz=[z1,z2,z3,z4];
DIasumsikan bahwa kejadian gempa di posisi pada no 1 tersebut berhasil direkam
oleh semua stasiun.
c. Berikan nilai kecepatan gelombang P rata – rata 1 layer
d. Hitung waktu tempuh gelombang dengan persamaan berikut:
1
𝑡 = 𝑡𝑜 + ∗ √(𝑧 − 𝑧𝑜)2 + (𝑥 − 𝑥𝑜)2
𝑣
e. Misalkan masih terdapat kesalahan picking waktu tiba gelombang P maka
tambahkan noise acak pada data travel time, diasumsikan noise memenuhi
persamaan
𝑛𝑜𝑖𝑠𝑒 = 𝑟𝑎𝑛𝑑𝑛 ∗ 0.03 ∗ 𝑟𝑎𝑡𝑎 − 𝑟𝑎𝑡𝑎 𝑑𝑎𝑟𝑖 𝑡
𝑡𝑜𝑏𝑠 = 𝑡 + 𝑛𝑜𝑖𝑠𝑒
f. Misalkan hasil rekaman di stasun ke-4 noise-nya sangat tinggi sehingga onsit
pertama dari gelombang P tidak jelas terlihat dan membuat kita tidak yakin
dengan hasil pickingan maka berikan noise yang tinggi pada data ke-4 tersebut.
Misal
𝑡𝑜𝑏𝑠(4) = 𝑡 + (𝑟𝑎𝑛𝑑𝑛 ∗ 0.5 ∗ 𝑟𝑎𝑡𝑎 − 𝑟𝑎𝑡𝑎 𝑑𝑎𝑟𝑖 𝑡)

2. Inversi
a. Berikan tebakan awal posisi hiposenter, misal (x1,y1)
b. Buatlah matrik bobot, W, yaitu matriks yang berukuran 4x4 (tergantung jumlah
data observasi, dalam kasus ini jumlah data observasi sebanyak 4).
c. Lakukan inversi sampai 1000 iterasi tanpa mengguanakan bobot dan
menggunakan bobot.
d. Plot posisi hiposenter setiap iterasi dan bandingkan posisi akhirnya dengan posisi
hiposenter yang sesungguhnya.
e. Bandingkan hasil kalkulasi posisi hiposenter antara yang menggunakan bobot dan
tidak.
f. Jelaskan pendapat dan analisis Anda.

B.3 TUGAS (Aplikasi Inversi Linier Berbobot pada Tomografi Seismik)

S1

S2

Pertanyaan
Tentukan nilai V1 dan V2 dengan menggunkan inversi linear, jika diketahui koordinat
hiposenter masing – masing adalah S1 (0, -250 m); S2 (0, -633 m); S3 (1000 m, 0); dan
koordinat stasiun R1 (2000 m, -1000 m). Sementara itu, waktu tempuh masing-masing
kejadian gempa ke stasiun adalah 1.5AB s, 1.4AB s dan 0.7AB + 0.3AB s!
Pada kasus di atas dimisalkan terjadi kesalahan pada observasi (kesalahan picking)
waktu tempuh data dari source ke-3 (S3) meleset sebesar 0.3AB sekon.
(Kerjakan secara manual dan menggunakan source code Matlab!) (AB = NIM akhir)

Solution

1. Hitung panjang ray setiap kotak (kecepatan awal)

𝑙11 = √(𝑅1 − 𝑆1𝑥)2 + (𝑅2 − 𝑆1𝑦)2

𝑙21 = √(𝑅1 − 𝑆2𝑥)2 + (𝑅2 − 𝑆2𝑦)2

𝑙31 = √(𝑅1 − 𝑆3𝑥)2 + (𝑅2 − 𝑆3𝑦)2


𝒍𝟏𝟏
𝒍𝟏𝟏𝟏 = 𝒍𝟐𝟏𝟏 =
𝟐
𝒍𝟐𝟏
𝒍𝟏𝟐𝟏 = 𝒍𝟐𝟐𝟏 =
𝟐
𝒍𝟐𝟑𝟏 = 𝒍𝟑𝟏
2. Menghitung model referensi

3. Mengitung waktu tempuh kalkulasi

4. Menghitung delay time

5. Membuat persamaan matriks tomografi

Gm = d
6. Membuat matriks bobot, W, berukuran NxN, dengan N adalah jumlah data
observasi. Lakukan inversi untuk menentukan nilai perturbasi model sebagai
berikut.

m = [GTWG]−1GTWd

7. Hitung V1 dan V2 menggunkan rumus

dan

Anda mungkin juga menyukai