Anda di halaman 1dari 26

LAPORAN AKHIR PRAKTIKUM

KOMPUTASI GEOFISIKA TG2204

MODUL KE-4
CURVE FITTING DAN OPTIMALISASI

Oleh :
Hana Naomi A. Situmorang 122120069

Asisten :
Sarah Manurung 120120019
Magdalena Marpaung 120120058
Jeremia Hotma Denata Pasaribu 121120037
Probo Pangestu Haryadi 121120054
Muhammad Exel Putra 121120059
Dea Febiana 121120088
Amelia Kartika 121120107
Ganefran Siregar 121120148

PROGRAM STUDI TEKNIK GEOFISIKA


FAKULTAS TEKNOLOGI INDUSTRI
INSTITUT TEKNOLOGI SUMATERA
2024
DAFTAR PUSTAKA

I. TUJUAN PRAKTIKUM ............................................................................ 2


II. TEORI DASAR........................................................................................... 3
2.1 Curve Fitting............................................................................................. 3
2.2 Regresi Linier ........................................................................................... 3
2.3 Regresi Polinomial .................................................................................... 4
III. LANGKAH PENGERJAAN ..................................................................... 5
a. Script........................................................................................................ 5
b. Langkah kerja ......................................................................................... 7
c. Diagram Alir............................................................................................ 9
IV. HASIL DAN PEMBAHASAN................................................................. 12
4.1 Hasil ........................................................................................................ 12
4.2 pembahasan ............................................................................................ 19
V. KESIMPULAN.......................................................................................... 23
DAFTAR PUSTAKA ....................................................................................... 24
LAMPIRAN ..................................................................................................... 25
I. TUJUAN PRAKTIKUM
Mahasiswa mengerti dan mampu mengetahui kegunaan regresi linear dan
regresi polynomial dalam geofisika.
II. TEORI DASAR

2.1 Curve Fitting


Curve fitting adalah proses mencari kurva atau fungsi matematika yang
paling dekat dengan serangkaian titik data yang diberikan. Kurva ini dapat
digunakan sebagai alat untuk visualisasi data, memperkirakan nilai-nilai di
antara titik-titik data, dan menjelaskan hubungan antara dua atau lebih
variabel. Curve fitting dapat dilakukan dengan metode interpolasi, dimana
kurva harus melewati setiap titik data, atau dengan metode regresi, dimana
kurva hanya harus mewakili pola umum data yang diberikan. Curve fitting
juga dapat digunakan untuk ekstrapolasi, yaitu untuk memperkirakan nilai-
nilai di luar kisaran titik-titik data. Curve fitting artinya membuat sebuah
kurva dari rentetan titik. Kurva yang dihasilkan berupa persamaan linear
ataupun non linear. Biasanya dijumpai ketika praktikum yang menguji satu
variabel dengan perbedaan perlakuan tertentu. Hasilnya pun hanya dengan
menarik garik lurus (linear) terhadap serangkaian titik hasil uji coba
tersebut.

2.2 Regresi Linier


Regresi linier adalah sebuah metode statistika yang digunakan untuk
menemukan hubungan linier antara satu atau lebih variabel independen
(disebut sebagai variabel prediktor atau variabel penjelas) dan satu variabel
dependen (variabel yang ingin diprediksi). Tujuan utama dari regresi linier
adalah untuk memodelkan hubungan antara variabel-variabel tersebut
sehingga dapat digunakan untuk memprediksi nilai variabel dependen
berdasarkan nilai variabel independen. Model regresi linier berusaha untuk
menemukan garis atau bidang terbaik yang menggambarkan hubungan
antara variabel-variabel tersebut. Garis atau bidang tersebut
direpresentasikan oleh persamaan matematis yang dapat digunakan untuk
memprediksi nilai variabel dependen berdasarkan nilai-nilai variabel
independen. Metode ini sangat penting karena memungkinkan kita untuk
memahami dan mengukur hubungan antara variabel-variabel tersebut serta
membuat prediksi berdasarkan data yang tersedia. Misalnya, regresi linier
dapat digunakan untuk memahami hubungan antara data seismik dan
struktur geologi di bawah permukaan bumi. Ini dapat membantu dalam
penilaian potensi sumber daya alam, seperti minyak dan gas bumi. Linear
Curve Fitting (Regresi Linier) yaitu memodelkan dengan menggunakan
fungsi linier atau fungsi polinom derajat 1 sebagai berikut, 𝑇 = 𝑎 + 𝑏𝑧.

2.3 Regresi Polinomial


Regresi polinomial adalah teknik yang didasarkan pada penggunaan model
linier ketika dataset yang dianalisis bersifat tidak linier pada data aslinya.
Konsepnya adalah melakukan tranformasi data sesuai pola hubungan antara
variabel dependen dan independen. Dataset non-linear yang dapat
diinterpolasi menggunakan regresi parabola sehingga hasil interpolasinya
menjadi linier. Dalam regresi linier sederhana, terdapat satu variabel
independen dan satu variabel dependen, sedangkan dalam regresi linier
berganda, terdapat lebih dari satu variabel independen. Bentuk umum
polynomial curve fitting adalah sebagai berikut :

𝑓 (𝑥 ) = 𝑎0 + 𝑎1 𝑥 + 𝑎2 𝑥 + 𝑎3 𝑥 + ⋯ + 𝑎𝑗 𝑥 = 𝑎0 + ∑ 𝑎𝑘 𝑥 𝑘
2 3 𝑗

𝑘=1
III. LANGKAH PENGERJAAN

a. Script
#METODE REGRESI LINIER

import matplotlib.pyplot as plt


import numpy as np

n=int(input('Masukan jumlab data yang ingin diinput: '))


s = []

x = []
for i in range(n):
X = float(input('Masukan data kedalaman ke-%d : ' %i))
x.append(X)

y=[]
for i in range(n):
Y = float(input('Masukan data temceratur ke-%d: ' %i))
y.append(Y)

print('Data Input : ')


print('Data X: ', x)
print('Data Y:', y)

xsum = 0
ysum = 0
x2sum = 0
xy = 0

for i in range(n):
xsum += x[i]
ysum += y[i]
x2sum += x[i] ** 2
xy += x[i] * y[i]

a = (n * xy - xsum * ysum) / (n * x2sum - xsum ** 2)


b = (x2sum * ysum - xsum * xy) / (n * x2sum - xsum ** 2)

y_fit = np.zeros(n)
for i in range(n):
y_fit[i] = a * x[i] + b
print('The linear fitting is:', y_fit)
print('The linear function is: T =', a, 'Z +', b)

plt.plot(x, y, 'o', color='purple', markersize=8, label='titik data')


plt.plot(x, y_fit, '-', color='green', linewidth=2,label='regresi
linear')
plt.title('Linear Regression')
plt.xlabel('Kedalaman')
plt.ylabel('Suhu')
plt.legend()
plt.show()

#METODE REGRESI POLINOMIAL


import numpy as np
import matplotlib.pyplot as plt

#Input jumlah data


n = int(input('Masukkan jumlah data input: '))

#input Data X
x=[]
for i in range(n):
data_x = float(input('Masukkan Nilai Dari Axis-X ke-%d: '
%i))
x.append(data_x)

#input data Y
y = []
for i in range(n):
data_y = float(input('Masukkan Nilai dari Axis-Y ke%d: '
%i))
y.append(data_y)

print('\nData Input: ')


print('x:',x)
print('y:',y)

polinom = int(input('Masukan Derajat Polinom Yang


Dingunakan: '))

#Menggunakan modul numpy untuk polinom derajat N


z = np.polyfit(x,y,polinom)
f = np.poly1d(z)
print('\npersamaan yang fit untuk derajat %d: \n' %polinom,
f,'\n')
#Menghitung Interpolasi Nilai Polinom
x_pol = np.linspace(x[0], x[-1], 50)
y_pol = f(x_pol)

plt.plot(x,y,'o',x_pol,y_pol)
plt.title('Kurva Fitting Regresi Polinom (069_Hana)')
plt.xlabel('Data Kedalaman Axis-X')
plt.ylabel('Data Temperatur Axis-Y')
plt.show()

b. Langkah kerja
Regresi Linier

1. Pertama, buka software Visual Studio Code yang telah dihubungkan


dengan bahasa pemrograman pada leptop
2. Kemudian klik new file dan klik python file pada jendela explorer untuk
membuat file baru
3. Pertama-tama yang dilakukan adalah “import numpy as np” dan import
matplotlib.pyplot as plt”. Penggunaan as ini yaitu untuk menggantikan
pemanggilan numpy dengan np untuk proses berikutnya. import numpy
as
4. membuat tempat penginputan jumlah data yang akan dimasukkan
dengan formula n = int(input(‘Masukkan jumlah data yang ingin di input
: ‘))
5. Membuat loop for untuk meminta pengguna memasukkan data
kedalaman dan menambahkannya ke dalam list x.
6. Membuat loop for untuk meminta pengguna memasukkan data
temperature dan menambahkannya ke dalam list y.
7. Menggunakan fungsi print untuk menampilkan list x dan y
8. Membuat variable xsum, ysum, x2sum dan jumlah dengan bernilai 0.
9. Untuk menghitung nilai xsum, ysum, x2sum dan jumlah masukkan
sesuai rumus yang diberikan
10. Kemudian menghitung nilai a dan b
11. menghitung nilai y[i] menggunakan rumus gradient dan
menambahkannya de dalam list y.
12. menggunakan fungsi print untuk menampilkan hasil linear fitting dan
fungsi linear fitting
13. Menggunakan plt untuk menampilkan grafik kurva fitting regresi linier
14. Lakukan running
15. Setelah melakukan input pada tahap running, maka hasil akan keluar
pada terminal disertai dengan gambar grafik kurva regresi linear

Regresi Polinomial

1. Pertama, buka software Visual Studio Code yang telah dihubungkan


dengan bahasa pemrograman pada leptop
2. Kemudian klik new file dan klik python file pada jendela explorer untuk
membuat file baru
3. Pertama-tama yang dilakukan adalah “import numpy as np” dan import
matplotlib.pyplot as plt”. Penggunaan as ini yaitu untuk menggantikan
pemanggilan numpy dengan np untuk proses berikutnya. import numpy
as
4. membuat tempat penginputan jumlah data yang akan dimasukkan
dengan formula n = int(input(‘Masukkan jumlah data yang ingin di input
: ‘))
5. Masukkan formula data untuk menginput jumlah kedalaman x
6. Masukkan formula data untuk menginput jumlah temperature y
7. Menampilkan data yang di input, baik jumlah data (n), kedalaman (x)
dan temperature (y)
8. Mendefinisikan formula untuk menginput dan mencari nilai polinom
9. Menampilka nilai derajat polinom (z) dan nilai (f)
10. Membuat persamaan untuk menghitung interpolasi nilai polinom x dan
polinom y
11. Membuat formula untuk menampilkan hasil regresi polinom berupa data
x, data y, polinom x, polinom y, dan grafik hubungan antara kedalaman
dan temperature
12. Lakukan running
13. Setelah melakukan input pada tahap running, maka hasil akan keluar
pada terminal disertai dengan gambar grafik kurva regresi polynomial.

c. Diagram Alir
1. Regresi Linier
2. Regresi Polinomial
IV. HASIL DAN PEMBAHASAN

4.1 Hasil
1. Regresi Linier
a) Data temperatur bawah permukaan terhadap kedalaman

Gambar 4.1. 1 Hasil Regresi Linear data temperatur bawah permukaan terhadap kedalaman

Gambar 4.1. 2 Kurva Regresi Linear data temperatur bawah permukaan terhadap kedalaman
b) Data variasi offset dan travel time

Gambar 4.1. 3 Hasil Regresi Linear Data variasi offset dan travel time

Gambar 4.1. 4 Kurva Regresi Linear Data variasi offset dan travel time
2. Regresi Polinom
a) Data temperatur bawah permukaan terhadap kedalaman

Gambar 4.1. 5 Hasil Variasi Derajat Polinom = 5

Gambar 4.1. 6 Kurva Variasi Derajat Polinom = 5


Gambar 4.1. 7 Hasil Variasi Derajat Polinom = 10

Gambar 4.1. 8 Kurva Variasi Derajat Polinom = 10


Gambar 4.1. 9 Hasil Variasi Derajat Polinom = 15

Gambar 4.1. 10 Kurva Variasi Derajat Polinom = 15


b) Data ketinggian terhadap waktu dari planet x

Gambar 4.1. 11 Hasil Variasi Derajat Polinom = 1

Gambar 4.1. 12 Kurva Variasi Derajat Polinom = 1


Gambar 4.1. 13 Hasil Variasi Derajat Polinom = 2

Gambar 4.1. 14 Kurva Variasi Derajat Polinom = 2


Gambar 4.1. 15 Hasil Variasi Derajat Polinom = 20

Gambar 4.1. 16 Kurva Variasi Derajat Polinom = 20

4.2 pembahasan
Pada praktikum modul 4 ini digunakan dua regresi yaitu Regresi Linier
dan Regresi Polinomial. Dalam geofisika kedua regresi ini digunakan untuk
menentukan nilai parameter-parameter model yang ada dalam geofisika
seperti kedalaman, suhu, resistivitas dan lain sebagainya, yang kemudian
dengan diplotkan dengan regresi curve fitting untuk menentukan seberapa
‘fits’ sebuah data. Semakin minimum jarak antara parameter model yang
dicari dengan garis regresi maka mengestimasikan semakin baik regresi itu
bekerja dalam menggambarkan struktur bawah permukaan bumi. Regresi
linier digunakan dalam geofisika untuk memprediksi nilai suatu variabel
berdasarkan nilai variabel lain. Misalnya, regresi linier dapat digunakan
untuk memprediksi nilai suhu dari kedalaman tanah.

Regresi linear merupakan pemodelan dengan menggunakan fungsi


linear atau fungsi polinom derajat 1. Untuk menentukan persamaan garis
lurus yang fit dengan data maka syaratnya adalah jarak setiap data terhadap
garis tersebut harus minimum. Oleh karena itu, eror atau selisih data
observasi dengan hasil kalkulasi melalui fungsi atau model harus minimum.
Pada regresi linear tersebut pada sumbu x menggunakan kedalaman dan
pada sumbu y menggunakan suhu, dilihat dari grafik tersebut dapat
disimpulkan bahwa semakin jauh nilai kedalaman maka temperaturnya akan
semakin tinggi. Dilihat dari pencocokan data atau curve fitting, pada regresi
linear data yang dihasilkan kurang fit dikarenakan titik biru (data observasi)
tidak menyatu dengan garis berwarna oren (garis kalkulasi atau
pengukuran).

Sama halnya dengan variasi yang pertama. Pada data variasi offset dan
travel time digunakan regresi linier. Regresi linier dapat menggunakan
metode "kuadrat terkecil" untuk menemukan garis yang paling cocok untuk
menghitung nilai X (variabel dependen) dari Y (variabel independen).
Variabel dependen adalah variabel yang ingin diprediksi, sedangkan
variabel independen adalah variabel yang digunakan untuk memprediksi
nilai variabel dependen. Pada regresi linear tersebut pada sumbu x
menggambarkan offset dan pada sumbu y menggambarkan travel time,
dilihat dari grafik tersebut dapat disimpulkan bahwa semakin jauh nilai
offset maka nilai travel time akan semakin bertambah besar. Dilihat dari
pencocokan data atau curve fitting, pada regresi linear data yang dihasilkan
kurang fit dikarenakan titik biru (data observasi) tidak menyatu dengan garis
berwarna oren (garis kalkulasi atau pengukuran).
Regresi polinomial adalah salah satu teknik regresi yang digunakan
untuk memodelkan hubungan antara variabel independen (x) dan variabel
dependen (y) dengan menggunakan fungsi polinomial. Fungsi polinomial
adalah fungsi matematika yang terdiri dari satu atau lebih istilah dengan
pangkat berbeda dari variabelnya. Dalam regresi polinomial, model regresi
dibangun dengan menggunakan persamaan polinomial untuk menemukan
polinomial yang paling sesuai dengan data yang diberikan. Dalam
praktiknya, regresi polinomial digunakan ketika hubungan antara variabel
independen dan variabel dependen tidak linear, dan model linear tidak dapat
memberikan hasil yang memuaskan. Namun, perlu diingat bahwa
penggunaan model regresi polinomial dengan orde yang tinggi dapat
menghasilkan overfitting dan membuat model menjadi kurang umum,
sehingga perlu dilakukan evaluasi kembali terhadap model yang dibangun
dengan mempertimbangkan aspek statistik.

Hasil dari derajat polinom pada percobaan ini yang pertama regresi
polinomial dengan memasukkan 8 jumlah data dan pengukuran kedalaman
dan temperatur yang sudah divariasikan dengan dilakukan percobaan 3 kali
dengan menggunakan besar derajat yang berbeda-beda mulai dari angka
5,10, dan 15. Pada variasi derajat = 5 maka diperoleh hasil pengukuran yang
menunjukkan garis melengkung dengan arah seperti menanjak pada kurva
pengukuran warna jingga. Namun kurva pengukuran masih belum fit
terhadap data observasi. Pada variasi derajat = 10, dapat dilihat bahwa kurva
pengukuran menunjukkan garis yang akurat terhadap data observasi,
sehingga semua titik data observasi dapat fit secara sempurna. Pada variasi
derajat = 15 maka kurva pengukuran sudah fit sebagaian dengan titik-titik
data observasi, namun belum bisa dikatakan fit sempurna dikarenakan data-
data observasi belum berada tepat di arah trend garis kurva pengukuran.

Hasil dari derajat polinom pada percobaan ini yang pertama regresi
polinomial dengan memasukkan 8 jumlah data dan pengukuran ketinggian
dan waktu planet X yang sudah divariasikan dengan dilakukan percobaan 3
kali dengan menggunakan besar derajat yang berbeda-beda mulai dari angka
1,2, dan 20. Pada variasi derajat = 1 maka diperoleh hasil pengukuran yang
menunjukkan garis melengkung dengan arah seperti menurun dan
berbentuk U terbalik pada kurva pengukuran warna jingga. Namun kurva
pengukuran masih belum fit terhadap data observasi. Pada variasi derajat =
2, dapat dilihat bahwa kurva pengukuran menunjukkan garis yang akurat
terhadap data observasi, sehingga semua titik data observasi dapat fit secara
sempurna. Pada variasi derajat = 20 maka kurva pengukuran sudah fit
sebagaian dengan titik-titik data observasi, namun belum bisa dikatakan fit
sempurna dikarenakan data-data observasi belum berada tepat di arah trend
garis kurva pengukuran.
V. KESIMPULAN
Dalam Curve Fitting terdapat dua metode regresi yang digunakan untuk
mempelajari hubungan antara dua variabel atau lebih. Regresi ini terbagi
menjadi regresi linier dan polinomial.
1. Regresi polinomial dapat menyatakan hubungan antara dua variabel
atau lebih yang memiliki persamaan kompleks (tidak linear). Pada
regresi polinomial juga nilai error lebih kecil jika dibandingkan dengan
regresi linier. Semakin besar orde pada regresi polinomial, maka model
regresi akan semakin kompleks. Namun, peningkatan orde pada regresi
polinomial juga dapat menyebabkan overfitting yang dapat
menghasilkan prediksi yang buruk pada data baru dan mengurangi
kemampuan model untuk digunakan dalam memprediksi. Jumlah data
observasi dan derajat polinom yang digunakan mempengaruhi hasil
fitting regresi polinomial yang dihasilkan. Jumlah data input yang lebih
banyak akan memberikan hasil fitting yang lebih akurat dan presisi.
DAFTAR PUSTAKA
ADLANA, L. O. (2021). Regresi Linier Dan Formulasi Inversi Linier Dalam
Pemodelan Geofisika. 6-9.
Grandis, D. H. (2019). Pengantar Pemodelan Inversi Geofisika. Bandung: CV.
Bhumi Printing.
Rusman, I. A. (2016). Aplikasi Pencocokan Kurva (Curve Fitting) Dalam
Menganalisis Pengaruh SOI (Southern Oscillation Index) Terhadap Curah
Hujan di Indonesia. 1.
Saragih, I. J. (2020). PREDIKSI CURAH HUJAN BULANAN DI DELI
SERDANG MENGGUNAKAN PERSAMAAN REGRESI DENGAN
PREDIKTOR DATA SUHU DAN KELEMBAPAN UDARA. Jurnal
Meteorologi Klimatologi dan Geofisika .
Yuniarko, T. (2019). PENCOCOKAN KURVA DENGAN FUNGSI LINIER
BAGIAN DEMI BAGIAN. Jurnal Incomtech, 1-2.
LAMPIRAN

Anda mungkin juga menyukai