METODE ITERASI GAUSS-SEIDEL DALAM SISTEM PERSAMAAN LINEAR

Penulis: Dr. Eng. Supriyanto, M.Sc, email: supri@fisika.ui.ac.id Staf Lab. Komputer, Departemen Fisika, Universitas Indonesia Pengenalan metode iterasi Metode Iterasi Gauss-Seidel merupakan modifikasi dari metode Iterasi Jacobi. Modifikasi tersebut terletak pada rumus berikut:
(k) xi

=

i−1 j=1

aij xj

(k)

n j=i+1

aij xj

(k−1)

+ bi

aii

(1)

dimana i=1,2,3,...,n. Untuk lebih jelasnya, marilah kita perhatikan contoh berikut, diketahui sistem persamaan linear Ax = b yaitu 10x1 − x2 + 2x3 = 6 −x1 + 11x2 − x3 + 3x4 = 25 2x1 − x2 + 10x3 − x4 = −11 3x2 − x3 + 8x4 = 15 Lalu, sistem persamaan tersebut diubah susunannya menjadi seperti ini x1 x2 x3 x4
(k) (k) (k) (k)

1 (k−1) 2 (k−1) 6 x2 − x3 + 10 10 10 1 (k) 1 (k−1) 3 (k−1) 25 x + x3 = − x4 + 11 1 11 11 11 2 (k) 1 (k) 1 (k−1) 11 = − x1 + x2 + x4 − 10 10 10 10 3 (k) 1 (k) 15 = − x2 + x3 + 8 8 8 =
(0) (0) (0)

Misalnya kita tentukan nilai-nilai awal x (0) sebagai berikut x1 = 0, x2 = 0, x3 = 0 dan x4 = 0. Atau dinyatakan seperti ini x(0) = (0; 0; 0; 0)t. Maka pada k = 1 kita akan
(0)

1

yaitu x = (1. memang secara umum demikian.0003 -1.0000 1 0.0000 -0.0025 -1..6000 2.n.0000 0.0000 1. 3272 = −0.0000 0..0000 Dari kasus ini. 1)t Marilah kita amati hasil seluruh iterasi. 2.9844 3 1.0000 0. bisa diselesaikan oleh metode iterasi GaussSeidel dalam 5 kali iterasi. akan tetapi ternyata ditemukan kondisi yang sebaliknya pada kasus-kasus yang lain..9983 4 1. Kita bisa saksikan bahwa dibandingkan dengan iterasi Jacobi.037 -1. bisa kita simpulkan bahwa iterasi Gauss-Seidel bekerja lebih efektif dibandingkan iterasi Jacobi.9873 -1.8789 2 1. k (k) x1 (k) x2 (k) x3 (k) x4 0 0. −1.. 8789 Lalu proses perhitungan diulangi lagi dengan k = 2. problem sistem persamaan linear yang sama.0003 0.. 6000 = 2. 9873 = 0.9999 5 1.3272 0.memperoleh nilai-nilai x(1) sebagai berikut x1 x2 x3 x4 (1) (1) (1) (1) = 0. hitunglah xi = − i−1 j=1 aij xj − n j=i+1 aij XOj + bi aii 2 .014 0.0036 0.030 2.0065 2.. Begitu seterusnya proses ini diulangulang lagi untuk nilai-nilai k berikutnya sampai x (k) mendekati solusi yang sesungguhnya. Ya.0001 2. Tabel di bawah ini menampilkan hasil perhitungan hingga iterasi yang ke-5.0009 2. Algoritma Iterasi Jacobi • Langkah 1: Tentukan k=1 • Langkah 2: Ketika (k ≤ N) lakukan Langkah 3-6 – Langkah 3: Untuk i=1.

I2. .– Langkah 4: Jika x − XO < . xn ) lalu STOP – Langkah 5: Tentukan k=k+1 – Langkah 6: Untuk i=1.*) ’==> ITERASI GAUSS-SEIDEL UNTUK SISTEM LINEAR <==’ WRITE(*.A.ITMAX WRITE(*.S1.J) CONTINUE WRITE (*.n.A)’) ’A(’.B(10).*) ’MASUKAN ELEMEN-ELEMEN MATRIK A DAN VEKTOR B’ DO 52 I = 1.’(1X.S2 INTEGER N.EPS..I.’) = ’ 62 READ (*..N WRITE (*.X(10).X.*) 52 CONTINUE WRITE (*.XO(10) REAL A.*) B(I) WRITE (*.A)’) ’NILAI EPSILON ATAU TOLERANSI ? ’ READ (*.*) A(I.’(1X.*) ’MASUKAN NILAI AWAL UNTUK XO’ DO 72 I = 1.’) ? ’ READ (*.’(1X.A.K.A)’) ’JUMLAH ITERASI MAKSIMUM ? ’ READ (*.10).A)’) ’JUMLAH PERSAMAAN ? ’ READ (*.NORM.A.I.XO.*) EPS WRITE (*.N 3 .*) ITMAX WRITE (*. tentukan XO i = xi • Langkah 7: OUTPUT (’Iterasi maksimum telah terlampaui’) lalu STOP Program dalam Fortran IMPLICIT NONE DIMENSION A(10.’.*) N WRITE (*.’(1X.’(1X.’.I2. maka keluarkan OUTPUT (x1 .*) WRITE(*..I.J.J.B.A)’) ’B(’.N DO 62 J = 1.*) WRITE (*....I2.

0 DO 20 J=I+1.GT.N 110 C WRITE (*.N) CONTINUE WRITE (*.0 4 .A)’) ’VEKTOR B:’ DO 111 I = 1.’(1X.I) CONTINUE SAYA PILIH NORM-2.*) MENAMPILKAN MATRIK A WRITE (*.A)’) ’MATRIK A:’ DO 110 I = 1. ANDA BOLEH PAKAI NORM YANG LAIN! NORM = 0.6) (A(I.*) LANGKAH 1 K = 1 LANGKAH 2 IF(K.I.’(1X.N 20 S1 = S1-A(I.J).*) MENAMPILKAN VEKTOR B WRITE (*.J=1.N S1 = 0.’) ? ’ READ (*.J)*X(J) 23 10 C CONTINUE X(I) = (S2+S1+B(I))/A(I.J)*XO(J) CONTINUE S2 = 0.A)’) ’XO(’.*) XO(I) 72 C CONTINUE WRITE (*.I-1 S2 = S2-A(I.WRITE (*.6) B(I) CONTINUE WRITE (*.N 111 C C 100 C WRITE (*.ITMAX) GOTO 200 LANGKAH 3 DO 10 I = 1.I2.’(1X.A.0 DO 23 J=1.

EPS) THEN WRITE(*. NORM= ’. K WRITE(*. *’ .I3) FORMAT(1X. Saya cukupkan sementara sampai disini.7) K.F14. silakan hubungi saya melalui email: supri92@gmail.8) FORMAT(1X.9) STOP FORMAT(1X.I.’MELEBIHI BATAS MAKSIMUM ITERASI’) END Demikianlah catatan singkat dari saya tentang metode Iterasi Gauss-Seidel.N XO(I) = X(I) 30 C 200 400 5 6 7 9 CONTINUE GOTO 100 LANGKAH 7 CONTINUE WRITE(*.’(1X.8)’) (’X(’.LE.A.com. NORM WRITE(*.N 40 NORM = NORM + (X(I)-XO(I))*(X(I)-XO(I)) CONTINUE NORM = SQRT(NORM) WRITE(*.8)’) ’NORM-2 = ’.I=1.N) WRITE(*.F14. Kalau ada yang mau didiskusikan. 5 .(6(1X.’.’(1X.A.F14.’) = ’.NORM GOTO 400 END IF C C LANGKAH 5 K = K+1 LANGKAH 6 DO 30 I=1.8))) FORMAT(1X.I3.DO 40 I=1.A.’KONVERGEN PADA ITERASI YANG KE.I3.F14. X(I). Insya Allah akan saya sambung lagi dilain waktu.A.’(1X.I3)’) ’ITERASI KE-’.*) C LANGKAH 4 IF(NORM.