Anda di halaman 1dari 23

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah


Sistem persamaan linier merupakan salah satu model dan masalah matematika
yang banak dijumpai dalam berbagai disiplin ilmu, termasuk matematika, fisika,
biologi, ilmu sosial, teknik dan bisnis. Sistem sistem persamaan linier muncul secara
langsung dari masalah-masalah nyata dan merupakan bagian dari proses penyelesaian
masalah masalah lain, misalnya sistem persamaan linier non simultan.
Suatu sistem persamaan linier terdiri atas sejumlah berhingga persamaan linier
dalam sejumlah berhingga variabel. Menyelesaikan persamaan suatu sistem persamaan
linier adalah mencari nilai nilai variabel variabel tersebut yang memenuhi
persamaan linier yang diberikan.
Sistem Persamaan Linear dalam bentuk persamaan perkalian matriks dapat
ditulis Ax = b. Di dalam penyelesaian sistem persamaan akan dicari nilai x 1, x2, ..., xn
yang memenuhi sistem persamaan berikut :

Dengan a adalah koefisien konstan, b adalah konstan, n adalah jumlah


persamaan, dan x1, x2, ..., xn adalah bilangan tak diketahui. Menyelesaikan suatu sistem
persamaan linier adalah mencari nilai-nilai variabel-variabel tersebut yang memenuhi
semua persamaan linier yang diberikan. Terdapat dua kelompok yang dapat digunakan
untuk menyelesaikan sistem persamaan linier. Metode pertama yaitu metode langsung,
yakni metode yang mencari sistem persamaan linier dalam langkah berhingga.
Contohnya seperti metode eliminasi gauss dan metode eliminasi gauss jordan.
Kelompok kedua dikenal sebagai metode tak langsung atau metode iterasi, yang
bermula dari suatu hampiran awal dan kemudian berusaha memperbaiki hampiran
penyelesaian awal dan kemudian berusaha memperbaiki hampiran dalam tak berhingga
namun menggunakan langkah konvergen. Metode iterasi digunakan untuk
menyelesaikan sistem persamaan linier berukuran besar dan proporsi koefisien nolnya
besar. Metode iterasi yang akan dibahas yaitu metode iterasi Jacobi dan metode iterasi
Gauss-Seidel.

1
Sistem persamaan linier merupakan kumpulan persamaan linier yang
mempunyai solusi (atau tidak mempunyai solusi) yang sama untuk semua persamaan.
Penyelesaian sistem persamaan linier terbagi menjadi dua metode, metode langsung dan
metode tak langsung (iteratif). Metode iteratif terdiri dari iterasi Jacobi dan iterasi
Gauss-Seidel. Metode iterasi jacobi adalah metode iterasi yang menghitung nilai
hampiran sekarang atau terbaru dengan mengacu pada nilai hampiran sebelumnya.
Metode iterasi Gauss-Seidel adalah metode iterasi yang menghitung nilai hampiran
sekarang dengan mengacu pada nilai hampiran terbaru. (Niyyaka : 2016)
Munculnya permasalahan yang terjadi dalam menyelesaikan persamaan linier
yang tidak dapat diselesaikan dengan metode langsung, mungkin dapat beralih
penyelesaiannya dengan menggunakan metode tak langsung. Dalam metode tak
langsung salah satu cara yang dapat digunakan adalah dengan cara metode Gauss
Seidel. Dalam Penerapannya pada program Matlab tentunya akan lebih memudahkan
pengguna dalam menyelesaikan persamaan linier dengan metode Gauss Seidel. Oleh
karena itu Makalah ini akan membahas tentang Metode Iterasi Gauss Seidel dalam
Aplikasi Matlab.

1.2. Rumusan Masalah


Dalam pembahasan latar belakang diatas. rumusan masalah dalam makalah ini
adalah :
1) Apakah dengan metode Gauss Seidel dalam sistem pemograman matlab mampu
menyelesaikan persamaan linier yang tidak memiliki solusi ?
2) Bagaimana cara metode Gauss Seidel dalam menyelesaikan persamaan linier
pada pemograman matlab ?
3) Bagaimana proses pembuatan aplikasi pemograman matlab dengan
menggunakan metode Gauss Seidel dalam menyelesaikan persamaan linier ?
4) Bagimana cara menjalankan aplikasi pemograman matlab dengan menggunakan
metode Gauss Seidel dalam menyelesaikan persamaan linier ?

1.3. Tujuan
Berdasarkan rumusan masalah yang diberikan sebelumnya, maka tujuan dari
pembuatan makalah ini adalah :

2
1) Untuk mengetahui apakah dengan metode Gauss Seidel dalam sistem
pemograman matlab mampu menyelesaikan persamaan linier.
2) Untuk mengetahui cara metode Gauss Seidel dalam menyelesaikan persamaan
linier pada pemograman matlab ?
3) Untuk mengetahui proses pembuatan aplikasi pemograman matlab dengan
menggunakan metode Gauss Seidel dalam menyelesaikan persamaan linier ?
4) Untuk mengetahui cara menjalankan aplikasi pemograman matlab dengan
menggunakan metode Gauss Seidel dalam menyelesaikan persamaan linier ?

1.4. Manfaat
Berdasarkan latar belakang, rumusan dan tujuan pembuatan makalah, maka
manfaat yang bisa diperoleh dari makalah ini adalah sebagai berikut :
1) Menambah referensi bacaan dalam mempelajari pemograman matlab dengan
metode Gauss Seidel.
2) Menambah referensi bagi para pembaca dalam membuat serta menjalankan
aplikasi pemograman matlab dengan dengan metode Gauss Seidel.
3) Sebagai bahan referensi bagi mahasiswa yang sedang memperlajari pemograman
matlab khususnya dengan metode Gauss Seidel.

3
BAB II
TINJAUAN TEORITIS

2.1. Sistem Persamaan Linier


Suatu Persamaan Linear dengan n peubah x1, x2, . . . , xn adalah persamaan yang
dapat ditulis dalam bentuk :

Dengan a1, a2, . . . , an dan b adalah konstanta-konstanta riil, n adalah jumlah persamaan,
dan x1, x2, . . . , xn adalah bilangan tak diketahui (Anton, 1987).
Penyelesaian dari persamaan linier a1x1 + a2x2 + ... + anxn = b adalah urutan dari
bilangan s1, s2, ... , sn sedemikian sehingga persamaan tersebut bernilai benar bila
bilangan s1, s2, ... , sn masing-masing disubstitusikan ke x1, x2, . . . , xn. Suatu sistem
sebarang yang terdiri dari n persamaan linear dengan peubah n ditulis sebagai :

Kuantitas-kuantitas aij (untuk i, j = 1, 2, ..., n) disebut koefisien. Nilai koefisien-


koefisien aij dan ruas kanan bi pada setiap persamaan diketahui. Kuantitas-kuantitas xij
disebut variabel, yang nilainya belum diketahui dan hendak dicari. Sistem persamaan di
atas dapat ditulis dalam bentuk matriks sebagai :
AX = B
Dengan A adalah sebuah matriks n x n :

dan X dan B adalah vektor-vektor n-komponen :

Dengan pangkat T menyatakan operasi transpose matriks, yakni mengubah baris


menjadi kolom dan kolom menjadi baris. Matriks A disebut matriks koefisien, vektor
kolom B sering disebut vektor konstanta. Sistem persamaan linier dapat
diklasifikasikan, menurut penyelesaiannya, menjadi tiga kelompok :
1. SPL yang mempunyai penyelesaian tunggal

4
2. SPL yang tidak mempunyai penyelesaian
3. SPL mempunyai tak berhingga penyelesaian (Sahid, 2005)

2.2. Matriks
Misalkan kita memiliki suatu susunan bilangan seperti yang dicontohkan di
bawah ini:

Maka susunan bilangan yang diatur sedemikan rupa dalam format baris dan
kolom yang membentuk sebuah persegi tersebut dinamakan Matriks. Sebuah matriks A
dikatakan berukuran (m n) jika memiliki m baris dan k kolom, dengan elemen pada
baris ke i dan kolom ke j dilambangkan dengan aij ,

kolom ke j

baris ke i

Dengan indeks i berjalan dari i = 1 hingga i = m , sedangkan indeks j dari j = 1 hingga


j=n.
Bila jumlah baris dan kolom sebuah matriks sama atau m = n , maka matriks
tersebut dinamakan sebagai matriks bujur sangkar berukuran n n , atau disebut
matriks berorde n. Jika setiap elemen sebuah matriks merupakan bilangan riil, maka
matriks tersebut dinamakan matriks riil. Sedangkan jika sekurang-kurangnya terdapat
satu elemen yang berbentuk bilangan kompleks, maka matriks tersebut dinamakan
matriks kompleks. Semua operasi matriks yang akan dibahas berikut ini berlaku baik
untuk matriks riil maupun matriks kompleks.Sebuah matriks A berukuran m n dengan
elemen aij seringkali ditulis secara ringkas dalam bentuk A = {aij}. (Alatas : 41)

2.3. Metode Iterasi Gauss-Seidel


Metode Gauss-Seidel digunakan untuk menyelesaikan sistem persamaan linier
(SPL) berukuran besar dan proporsi koefisien nolnya besar, seperti sistem-sistem yang

5
banyak ditemukan dalam sistem persamaan diferensial. Teknik iterasi jarang digunakan
untuk menyelesaikan SPL berukuran kecil karena metode-metode langsung seperti
metode eliminasi Gauss lebih efisien daripada metode iteratif. Akan tetapi, untuk SPL
berukuran besar dengan persentase elemen nol pada matriks koefisien besar, teknik
iterasi lebih efisien daripada metode langsung dalam hal penggunaan memori komputer
maupun waktu komputasi. Dengan metode iterasi Gauss-Seidel hampiran pembulatan
dapat diperkecil karena dapat meneruskan iterasi sampai solusinya seteliti mungkin
sesuai dengan batas hampiran yang diperbolehkan.
Menurut Sahid (2005) pada metode iterasi Gauss-Seidel, nilai-nilai yang paling
akhir dihitung digunakan di dalam semua perhitungan. Jelasnya, di dalam iterasi Jacobi,
menghitung
xi( k ) f ( x1( k ) , x2( k ) ,..., xi(k1) , xi(k1) ,..., xn( k )

sedangkan pada iterasi Gauss-Seidel menghitung


xi( k 1) f ( x1( k 1) , x2( k 1) ,..., xi(k11) , xi(k1) ,..., xn( k )

rumus untuk hampiran ke-k pada metode iterasi Gauss-Seidel adalah sebagai berikut :
xi( k )
1
aij

bi j 1 aij xi( k ) j i 1 aij x (j k 1)
i 1 n

dengan syarat aii 0 dan k = 1, 2, ...


Metode iterasi Gauss-Seidel dapat dinyatakan dalam bentuk matriks. Nyatakan
matriks koefisien A sebagai A = D + (L + U), dengan L dan U berturut-turut adalah
matriks segitiga bawah dan atas dengan diagonal nol dan D matriks diagonal. Rumus
iterasi Gauss-Seidel dapat ditulis dalam bentuk :

yang menghasilkan

Metode iterasi Gauss-Seidel hampir sama dengan metode iterasi Jacobi.


Perbedaannya hanya terletak pada penggunaan nilai elemen vektor xbaru yang langsung

6
digunakan pada persamaan di bawahnya. Untuk lebih jelasnya, perhatikan sistem
persamaan linier berikut,
10x1 x2 + 2x3 =6 (P1)
-x1 + 11x2 x3 +3x4 = 25 (P2)
2x1 x2 + 10x3 x4 = -11 (P3)
3x2 x3 + 8x4 = 15 (P4)
Nyatakan terlebih dahulu setiap variabel dalam ketiga variabel yang lain :
1. Nyatakan x1 dari persamaan (P1) dalam x2, x3, dan x4.
2. Nyatakan x2 dari persamaan (P2) dalam x1, x3, dan x4.
3. Nyatakan x3 dari persamaan (P3) dalam x1, x2, dan x4.
4. Nyatakan x4 dari persamaan (P4) dalam x1, x2, dan x3.
hasilnya adalah :

(P5)

(P6)

(P7)

(P8)

Pada baris pertama, x1baru dihitung berdasarkan x2lama dan x3lama. Kemudian x1baru
tersebut langsung dipakai pada baris kedua untuk menghitung x2baru. Selanjutnya x1baru
dan x2baru digunakan pada baris ketiga untuk mendapatkan x3baru. Begitu seterusnya
hingga x4baru pun diperoleh pada baris keempat.

7
Sistem persamaan tersebut dapat dinyatakan dalam indeks k seperti di bawah ini dimana
k adalah jumlah iterasi.

Jika diberikan nilai-nilai awal x(0) adalah x1(0) = 0, x2(0) = 0, x3(0) = 0, dan x4(0) = 0, atau
dinyatakan sebagai hampiran awal x(0) = (0;0;0;0)T, jika pada k = 1 akan memperoleh
hampiran pertama sebagai berikut :

Lalu proses perhitungan diulangi lagi dengan k = 2. Begitu seterusnya proses ini
diulang-ulang lagi untuk nilai-nilai k berikutnya sampai x(k) mendekati solusi yang
sesungguhnya, yaitu
x = (1; 2; -1; 1)T

2.4. Beberapa Catatan Tentang Metode Iterasi Gauss Seidel


Menurut Suryapratomo ada beberapa catatan yang harus diperhatikan dalam
menggunakan metode iterasi Gauss Seidel. Beberapa catatan tersebut antara lain :

8
1. Proses iterasi efisien jika tebakan dekat dengan nilai sejatinya.
Tebakan yang baik bisa dibuat jika fenomena fisiknya telah dipahami.
2. Proses iterasi bisa konvergen (menuju nilai sejatinya) atau sebaliknya.
Untuk menjaga konvergensi, pastikan persamaan iterasi disusun dari matriks
dominan diagonal.
Artinya, nilai mutlak kebanyakan elemen diagonal (aii) lebih besar daripada
elemen lainnya (aij).
Matriks [A] dalam SPL [A][X]=[B] dikatakan dominan diagonal jika :
n
a ii
j 1
a ij untuk semua baris i
j i
n
a ii
j 1
a ij untuk sedikitnya 1 baris i
j i

Untungnya, kebanyakan sistem fisik biasanya memberikan SPL yang


dominan diagonalnya.

2.5. Variabel Variabel yang Digunakan


Berikut variabel-variabel yang mungkin bisa digunakan dalam penerapan iterasi
gauss seidel sebagai berikut :
Abs = menghitung nilai absolut.
Break = keluar dari suatu loop.
Clc = membersihkan tampilan command window.
Clear = membersihkan variabel.
Eps = bilangan yang sangat kecil mendekati nol yang merupakan batas
akurasi perhitungan.
Length = untuk mengetahui ukuran atau dimensi dari matriks.
Load = mengeluarkan kembali pekerjaan dari dalam file.
N = berisi bilangan asli yaitu {0, 1, 2, ...}.
Norm = fungsi distribusi normal gaussian.
Operasi ( : ) = sampai dengan.
Operasi ( ; ) = perhitungan tetap dilakukan tanpa menuliskan hasilnya.
Operasi ( ) = operasi transposisi untuk matriks berisi bilangan riil atau transposisi
dan konjugasi untuk matriks kompleks.
Operasi ( * ) = perkalian.
Save = menyimpan pekerjaan ke dalam file.
Tic toc = menghitung waktu dari suatu operasi dalam second.

9
Zeros = membuat matrik atau vektor nol (semua elemennya berisi angka nol)
yang berukuran n x n.

2.6. Penerapan Metode Gauss Seidel Algoritma


1. Mulai
2. Input jumlah variabel yang akan dihitung, elemen matriks a, dan elemen vektor
ruas kanan b.
3. Proses iterasi
% proses iterasi
k=0;
for i=1:n
xk(i)=0.0;
end
4. Memasukkan
tol=5.0e-5;
delta=1.6e-4;
maxstep=100;
while((k<maxstep)&(delta>tol))
for i=1:n
ib = vb(i);
m = b(ib);
for j=i+1:n
m = m - a(ib,j)*xk(j);
end
for j=1:i
if (i==j)
x(i)=m/a(ib,i);
else
m = m - a(ib,j)*x(j);
end
end
end
5. Untuk mencek error
delta=0.0;
for i=1:n
d = (x(i)-xk(i));
dx(i)=abs(d);
xk(i)=x(i);
if(dx(i)>delta)
delta = dx(i);
end
end

10
k = k+1;
fprintf('iterasi ke-%g',k);
x
end
6. Stop

Implementasi Langkah pada Matlab


% Program untuk melakukan eliminasi Gauss Seidel
% n = dimensi matriks
% a = elemen matriks koefisien
% b = elemen ruas kanan
clear;
clc;
n = input ('Jumlah variabel yang akan dihitung=');
a = input ('Masukkan elemen matriks a:');
b = input ('Elemen vektor ruas kanan b:');
display('Elemen matriks');a
display('Elemen ruas kanan');b
vb = 1:n;
for i=1:n
ib=vb(i);
bar=i;
ibx=ib;
m = abs(a(ib,i));
for j=i+1:n
ib=vb(j);
if(abs(a(ib,i))>m)
m=abs(a(ib,i));
bar=j;
ibx=ib;
end
end
ib=vb(i);
vb(i)=ibx;
vb(bar)=ib;
end
% proses iterasi
k=0;
for i=1:n
xk(i)=0.0;
end
tol=5.0e-5;
delta=1.6e-4;
maxstep=100;
while((k<maxstep)&(delta>tol))
for i=1:n
ib = vb(i);
m = b(ib);

11
for j=i+1:n
m = m - a(ib,j)*xk(j);
end
for j=1:i
if (i==j)
x(i)=m/a(ib,i);
else
m = m - a(ib,j)*x(j);
end
end
end
%periksa error
delta=0.0;
for i=1:n
d = (x(i)-xk(i));
dx(i)=abs(d);
xk(i)=x(i);
if(dx(i)>delta)
delta = dx(i);
end
end
k = k+1;
fprintf('iterasi ke-%g',k);
x
end

Langkah-langkah dalam menjalankan progam matlab dengan menggunakan


metode Gauss Seidel sebagai berikut :
1. Buka aplikasi matlab dengan menekan double click pada dekstop MatLab

2. Sehingga akan muncul tampilan seperti gambar di bawah

12
3. Kemudian klik kanan menu File New - M-file

4. Selanjutnya masukkan coding yang telah disediakan ke dalam file yang baru di
buka seperti pada gambar berikut;

13
5. Setelah cooding dibuat, langkah selanjutnya yaitu menyimpan pada work Matlab
dengan syarat tidak boleh menggunaan spasi. Kemudian mengklik Debug-Run,
seperti langkah di bawah.

14
6. Setelah me-run, maka lakukan masukkan matriks yang dingin dicari.
Testing I
Sistem Persamaan linear
12x1-x2+3x3 = 8
x1+7x2-3x3 = -51
4x1-4x2+9x3 = 61

15
16
Catatan :
Hasil akar persaman tidak langsung diperoleh, namun diperoleh dalam
bentuk iterasi.
Jika kita masukkan nilai x pada iterasi terakhir pada persamaan,
diperoleh hasil yang sama maksudnya nilai ruas kanan sama dengan nilai
ruas kiri.
Banyaknya persamaan diperoleh melalui data matriks a dan matriks b.

Testing II
Sistem Persamaan Linear
12x1 x2 = -7
x1 + 7x2 = -36
4x1 -4x2 =16

17
Catatan :
Dengan nilai x yang sama dengan testing sebelumnya, dilakukan untuk
mencari 2 variabel, ternyata hasil yang diperoleh tetap sama.
Cooding persamaan ini tidak hanya berlaku pada matriks 3 x 3, namun
juga berlaku untuk matriks 2 x 3 atau yang lainya.

Testing III
Sistem Persamaan linear
12x1-x2+3x3 = 8

18
x1+7x2-3x3 = -51
4x1-4x2+9x3 = 61

Catatan :
Jika jumlah variabel yang kita masukkan tidak sesuai dengan jumlah
variabel yang ada pada matriks, maka hasil yang diperoleh tidak sesuai.

Testing IV
Sistem Persamaan Linear
12x1-x2+10x3 =33
x1+7x2+18x3 =45
4x1-4x2+31x3 =-30

19
20
Catatan:
Dengan memasukkan persamaan linear yang tidak ada solusi jika
diselesaikan dengan analitis, metode gauss seidel mampu menemukan
nilai variabel persamaan.
Nilai variabel yang diperoleh pada persamaan linear yang tidak ada
solusi dalam bentuk pecahan desimal.
Jika nilai variabel dimasukkan kedalam persamaan, hasil yang diperoleh
mendekati hasil yang sebenarnya.

21
BAB III
KESIMPULAN DAN SARAN

3.1. Kesimpulan
Berdasarkan penjelasan yang diberikan di atas dapat disimpulkan bahwa :
1) Dengan metode Gauss Seidel dalam sistem pemograman matlab mampu
menyelesaikan persamaan linier yang tidak memiliki solusi melalui iterasi-iterasi
yang dimunculkan pada pemograman.
2) Cara metode Gauss Seidel dalam menyelesaikan persamaan linier yang tidak
memiliki solusi pada pemograman matlab antara lain :
Nyatakan terlebih dahulu setiap variabel dalam variabel yang lainnya
Pada baris pertama, x1baru dihitung berdasarkan x2lama dan x3lama. Kemudian x1baru
tersebut langsung dipakai pada baris kedua untuk menghitung x2baru.
Selanjutnya x1baru dan x2baru digunakan pada baris ketiga untuk mendapatkan
x3baru. Begitu seterusnya untuk setiap variabel.
Jika diberikan nilai-nilai awal x(0) adalah x1(0) = 0, x2(0) = 0, x3(0) = 0, dan x4(0) =
0, atau dinyatakan sebagai hampiran awal x(0) = (0;0;0;0)T.
Proses perhitungan diulangi lagi dengan k = 1, 2, 3, ... dst. Begitu seterusnya
proses ini diulang-ulang lagi untuk nilai-nilai k berikutnya sampai x(k)
mendekati solusi yang sesungguhnya.

3.2. Saran

22
DAFTAR PUSTAKA

Niyyaka, Shella. 2016. Perbandingan Metode Iterasi Jacobi Dan Iterasi Gauss-Seidel
Dalam Penyelesaian Sistem Persamaan Linier Dengan Menggunakan Simulasi
Komputasi. Lampung : Universitas Negeri Lampung (skripsi)

Sahid. 2005. Pengantar Komputasi Numerik dengan MATLAB. Andi : Yogyakarta.

Alatas, Husin. Buku Pelengkap Fisika Matematika Edisi I. Bogor : Institut Pertanian
Bogor

Suryopratomo, Ketut. Metode Iterasi Gauss Seidel : Penyelesaian Sistem Persamaan


Linier. Jogjakarta : Universitas Gajah Mada

23