Metode Solusi Sistem Persamaan Lanjar[lanjutan2].pdf
-
Upload
agra-arimbawa -
Category
Documents
-
view
117 -
download
2
description
Transcript of Metode Solusi Sistem Persamaan Lanjar[lanjutan2].pdf
Jurusan Pendidikan Teknik Informatika
2013
Metode Numerik Solusi Sistem Persamaan Lanjar [lanjutan] Pengampu : Luh Putu Eka Damayanthi, S.Pd., M.Pd
1.1 Determinan
Pada pembahasan matriks balikan kita telah menyinggung sedikit tentang
determinan. Menghitung determinan matriks 2 x 2 sangat mudah. Misalkan matriks A
adalah matriks
=
2221
1211
aa
aaA
determinan matriks A adalah
( ) 211222112221
1211det aaaaaa
aaA −==
Begitupun menghitung determinan untuk matriks 3 x 3
=
333231
232221
131211
aaa
aaa
aaa
A
maka determinannya dihitung dengan aturan Cramer
( )
( ) ( ) ( )312232211331233321123223332211
3231
222113
3331
232112
3332
232211
333231
232221
131211
det
aaaaaaaaaaaaaaa
aa
aaa
aa
aaa
aa
aaa
aaa
aaa
aaa
A
−+−−−=
+−=
=
Menghitung determinan untuk matriks n x n dengan aturan Cramer menjadi tidak praktis
lagi. Metode eliminasi Gauss dapat diterapkan untuk menghitung determinan matriks n
x n. Determinannya dapat dihitung setelah ia ditransformasikan menjadi matriks segitiga
atas U. Pertama-tama kita lihat dulu dua hukum penting determinan.
Hukuk I : det(BC) = det(B) x det(C)
yaitu, determinan dari perkalian dua buah matriks sama dengan perkalian determinan
masing-masing matriks.
Hukum II : det(M) = hasil kali semua elemen diagonal M jika M adalah matriks
segitiga atas atau matriks segitiga bawah.
Jadi, jika semua elemen diagonal matriks adalah satu, maka determinannya sama
dengan satu. Dalam menghitung determinan, pertimbangkan dua kasus berikut: 1) bila
eliminasi Gauss-nya tanpa pivoting dan 2) bila eliminasi Gauss-nya dengan pivoting.
Kasus I : Bila eliminasi Gauss tidak menerapkan tataancang pivoting
Jika pivoting tidak diterapkan, determinan matriks A adalah
det(A) = det(LU) = det(L) x det(U) = det(U) = u11u22u33 ... unn
yang dalam hal ini det(L) = 1, sebab semua elemen diagonal L adalah satu.
Kasus II : Bila eliminasi Gauss menerapkan tataancang pivoting
Tataancang pivoting mengakibatkan pertukaran baris. Dekomposisis LU dengan
pivoting setara dengan mengerjakan dua proses terpisah berikut:
1) Transformasikan matriks A menjadi matriks A’ dengan cara permutasi baris-baris
matriks.
A ’ = PA atau setara dengan A = P-1 A’
2) Dekomposisikan A’ menjadi LU tanpa pivoting
A ’ = LU
Dari (1) dan (2), L dan U dihubungkan oleh
A = P-1 A’ = P-1LU
Determinan A dapat ditulis sebagai
det(A) = det(P-1) x det(L) x det(U)
det(A) = det(P-1) x 1 x det(U)
det(A) = det(P-1) x det(U)
det(A) = α det(U)
yang dalam hal ini α = det(P-1) = -1 atau 1 bergantung pada apakah pivoting sejumlah
bilangan ganjil atau genap. Jika pivoting dilakukan sejumlah kali, maka α dapat ditulis
sebagai
α = (-1)p
yang bernilai 1 untuk p genap dan -1 untuk p ganjil. Karena itu,
det(A) = (-1)p det(U) = (-1)p u11 u22 u33 ... unn
Contoh 1: Hitung determinan matriks A berikut.
−−−−
=132
344
132
A
Jawab:
( ) ( )
−−−−
−−
−−−−
−−−
−−−−
500
120
132
2/6260
120
132
2/2
2/4
132
344
132
2313
12
RRRR
RR
Tidak ada proses pivoting selama eliminasi Gauss, maka
det(A) = (2) (-2) (-5) = 20
Contoh 2: Hitung determinan matriks A berikut.
=482
063
121
A
Jawab:
⇔
−−
100
040
063
(*)040
100
063
3/2
3/1
482
121
063
32
13
12 RR
RR
RR
Pivoting diterapkan dua kali (p=2), sehingga determinan matriks A adalah
det(A) = (1)2 (3) (4) (1) = 12
1.2 Metode Lelaran untuk Menyelesaikan SPL
Metode eliminasi Gauss melibatkan banyak galat pembulatan. Galat pembulatan
yang terjadi pada eliminasi Gauss (maupun eliminasi Gauss-Jordan) dapat
menyebabkan solusi yang diperoleh “jauh” dari solusi sebenarnya. Gagasan metode
lelaran pada pencarian akar persamaan nirlanjar dapat juga diterapkan untuk
menyelesaikan SPL. Dengan metode lelaran, galat pembulatan dapat diperkecil, karena
kita dapat meneruskan lelaran sampai solusinya seteliti mungkin, sesuai dengan batas
galat yang kita perbolehkan. Dengan kata lain, besar galat dapat dikendalikan sampai
batas yang bisa diterima.
Pandang kembali sistem persamaan lanjar
nnnnnn
nn
nn
bxaxaxa
bxaxaxa
bxaxaxa
=+++
=+++=+++
...
:
...
...
2211
22222121
11212111
Dengan syarat akk ≠ 0, k = 1, 2, ..., n, maka persamaan lelarannya dapat ditulis sebagai
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
nn
knnn
kn
knnnk
n
knn
kkk
knn
kkk
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
112211
22
2323121212
11
1313212111
...
:
...
...
−−+
+
+
−−−=
−−−=
−−−=
dengan k = 0, 1, 2, ...
Lelaran dimulai dengan memberikan tebakan awal untuk x1
( )
( )
( )
=
0
02
01
0:
nx
x
x
x
Sebagai kondisi berhenti lelarannya, dapat digunakan pendekatan galat relatif
( ) ( )
( ) ε<−+
+
1
!
ki
ki
ki
x
xx untuk semua i = 1, 2, 3, ..., n
Syarat cukup agar lelarannya konvergen adalah sistem dominan secara diagonal
∑≠=
>n
ijjijii aa
,1
, i = 1, 2, 3, ..., n
Syarat cukup ini berarti bahwa agar lelarannya konvergen, cukup dipenuhi syarat itu.
Jika kondisi tersebut dipenuhi, kekonvergenan dijamin. Namun bila syarat cukup tidak
dipenuhi, lelarannyabelum tentu konvergen. Kekonvergenan juga ditentukan oleh
pemilihan tebakan awal. Tebakan awal yang terlalu jauh dari solusi eksaknya dapat
menyebabkan lelaran divergen.
Ada dua metode lelaran yang akan dibahas, yaitu:
1. Metode lelaran Jacobi
2. Metode lelaran Gauss-Seidel
1.2.1 Metode Lelaran Jacobi
Persamaan lelarannya adalah seperti yang ditulis di atas. Misalkan diberikan tebakan
awal x(0)
Lelaran pertama:
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
nn
nnnnnnnn
nn
nn
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
011
022
011
22
02
0323
012121
2
11
01
0313
021211
1
...
:
...
...
−−−−−=
−−−=
−−−=
Lelaran kedua:
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
nn
nnnnnnnn
nn
nn
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
111
122
112
22
12
1323
112122
2
11
11
1313
121212
1
...
:
...
...
−−−−−=
−−−=
−−−=
Rumus umum:
( )
( )
ii
n
ijj
kjiji
ki a
xab
x∑
≠=+
−= ,11 , k = 0, 1, 2, ...
1.2.2 Metode Lelaran Gauss-Seidel
Kecepatan konvergen pada lelaran Jacobi dapat dipercepat bila setiap harga xi yang baru
dihasilkan segera dipakai pada persamaan berikutnya untuk menentukan harga xi+1 yang
lainnya.
Lelaran pertama:
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
44
1343
1242
114141
4
33
0434
1232
113131
3
22
0424
0323
112121
2
11
0414
0313
021211
1
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
−−−=
−−−=
−−−=
−−−=
Lelaran kedua:
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
( )( ) ( ) ( )
44
2343
2242
214142
4
33
1434
2232
213132
3
22
1424
1323
212122
2
11
1414
1313
121212
1
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
a
xaxaxabx
−−−=
−−−=
−−−=
−−−=
Rumus umum:
( )
( ) ( )
11
1
1
1
1
1
a
xaxab
x
n
ij
kjij
i
j
kjiji
ki
∑∑+=
−
=
+
+
−−= , k = 0, 1, 2, ...
Program 1. Metode Lelaran Gauss-Seidel
procedure Gauss_Seidel(A:matriks; b:vektor; n:integ er; var x:vektor);
{ Menghitung solusi sistem persamaan lanjar Ax = b dengan metode Gauss-Seidel. Diandaikan lelaran selalu konvergen
K.Awal : A dan b sudah terdefinisi harganya; x sudah berisi vektor tebakan awal
K.Akhir : x berisi solusi SPL } const epsilon = 0.000001; var i,j:integer; konvergen : boolean; sigma1, sigma2 : real; xlama:vektor; begin repeat for i:=1 to n do begin xlama[i]:=x[i]; {simpan nilai x[i] sebelum nya} sigma1:=0; for j:=1 to i-1 do sigma1:=sigma1 + a[i,j]*x[j]; sigma2:=0; for j:=i+1 to n do sigma2:=sigma2 + a[i,j]*x[j]; x[i]:=(b[i]-sigma1-sigma2)/a[i,i]; {a[i ,i]<>0} end; {periksa kekonvergenan} konvergen:=true; i:=1; while (konvergen) and (i<=n) do begin {bila salah satu dari x[i], i=1,2,...,n tid ak memenuhi abs(xlama[i]-x[i])<epsilon berart i lelaran belum konvergen} if abs(xlama[i]-x[i])>epsilon then konvergen:=false; {belum konvergen} {end if} i:=i+1; end; until konvergen; end;
Contoh 1. Tentukan solusi SPL
1552
2184
74
=++−−=+−
=+−
zyx
zyx
zyx
dengan nilai awal P0 = (x0, y0, z0) = (1, 2, 2)
(solusi sejatinya adalah (2, 4, 3))
Jawab:
a) Metode lelaran Jacobi
Persamaan lelarannya:
5
2158
4214
7
1
1
1
rrr
rrr
rrr
yxz
zxy
zyx
−+=
−+=
−+=
+
+
+
Lelarannya:
( )
( )000.3
5
21215
375.38
21421
75.14
227
1
1
1
=−+=
=++=
=−+=
z
y
x
( )
( )
....
025.35
375.375.1215
875.38
00.3375.3421
84375.14
00.3375.37
2
2
2
=−+=
=−+=
=−+=
z
y
x
x19 = 2.00000000
y19 = 4.00000000
z19 = 3.00000000
b) Metode lelaran Gauss-Seidel
Persamaan lelarannya:
5
2158
4214
7
1
1
1
rrr
rrr
rrr
yxz
zxy
zyx
−+=
−+=
−+=
+
+
+
Lelarannya:
( )
( )000.3
5
75.375.1215
75.38
275.1421
75.14
227
1
1
1
=−+=
=++=
=−+=
z
y
x
( )
( )
....
98625.25
968375.395.1215
968375.38
95.295.1421
95.14
95.275.37
2
2
2
=−+=
=−+=
=−+=
z
y
x
x10 = 2.00000000
y10 = 4.00000000
z10 = 3.00000000
Latihan Menghitung:
1. Diberikan sistem persamaan lanjar Ax = b dengan A dan b sebagai berikut:
−−
−
=
2146
1224
8452
1321
A
−=
4
2
8
10
b
a. Tentukan solusinya dengan metode eliminasi Gauss
b. Tentukan determinan matriks A
c. Tentukan solusinya dengan metode eliminasi Gauss-Jordan
d. Tentukan solusinya dengan metode matriks balikan
e. Tentukan solusinya dengan metode dekomposisi LU
f. Tentukan solusinya dengan metode lelaran Gauss-Seidel
g. Tentukan solusinya dengan metode lelaran Jacobi
Terapkan strategi pivoting untuk (a), (b), (c), (d), dan (e).
2. Diberikan SPL Ax = b
−=
421
4350
30001002
A
=1
10
200
b
Tentukan solusinya sampai 4 angka bena dengan:
a. Metode eliminasi Gauss tanpa penskalaan
b. Metode eliminasi Gauss dengan penskalaan
3. Pecahkan sistem persamaan lanjar berikut dengan metode eliminasi Gauss:
( )200332000
622.15065.1500122.6
=+=+
yx
yxi
( )132
05.1001.1
=+=+
yx
yxii
a. Tanpa pivoting (naif)
b. Dengan pivoting
Referensi:
Rinaldi Munir, 2002. Metode Numerik untuk Teknik Informatika Edisi Kedua (Revisi). Bandung: Departemen Teknik Informatika, Fakultas Teknologi Industri, Institut Teknologi Bandung