Solusi SPL (Bag 2) Invers dan Dekomposisi LU

Metode Matriks Balikan
• Misalkan A-1 adalah matriks balikan dari A. Sistem persamaan
lanjar Ax = b dapat diselesaikan sebagai berikut:
Ax = b
A-1 Ax = A-1 b
I x = A-1 b
(A-1 A = I )
x = A-1 b
• Cara penyelesaian dengan mengalikan matriks A-1 dengan b
itu dinamakan metode matriks balikan.

Rinaldi Munir - Topik Khusus Informatika I

39

• Contoh: Selesaikan sistem persamaan lanjar
x1 - x2 + 2x3 = 5
3x1 + x3 = 10
x1
+ 2x3 = 5
dengan metode matriks balikan.

Penyelesaian:
1
3
1

-1
0
0

~…~

2
1
2

1
0
0

1

0
0

0
1
0

0
1
0

0
0
1

0
0
1

R2 -3R1

~
R3 - R1

1
0
0

-1
3
1

2
-5
0

1
-3
-1

0

1
0

0
0
1

0 0.4 - 0.2
-1
0 1
0 -0.2 0.6
-1

A
Rinaldi Munir - Topik Khusus Informatika I

40

Solusinya adalah x = A-1 b.
x1

x2
x3

=

0
0.4
-1
0
0 -0.2

-0.2
1
0.6

5
10
5

=


0
-5
0

+ 4 - 1
+ 0 + 5
- 2 + 3

Rinaldi Munir - Topik Khusus Informatika I

=

3
0
1

41

Metode Dekomposisi LU

• Jika matriks A non-singular maka ia dapat difaktorkan
(diuraikan atau di-dekomposisi) menjadi matriks segitiga
bawah L (lower) dan matriks segitiga atas U (upper):
A = LU
a11
a21
a31
:
an1

a12 a13
a22 a23
a32 a33
:
an2 an3

… a1n
… a2n
… a3n
:

… ann

1
0 0 … 0
l21 1 0 … 0
= l31 l32 1 … 0
:
:
ln1 ln2 ln3 … 1

Rinaldi Munir - Topik Khusus Informatika I

u11
0
0
:
0

u12 u13 … u1n
u22 u23 … u2n

0 u33 … u3n
:
0
0 … unn

42

Sebagai contoh, matriks 3 × 3 di bawah ini difaktorkan menjadi :

2 −1 −1

1 0 0

0 −4

2

= 0 1 0

6 −3


1

3 0 1

2 −1 −1
0 −4

2

0

4

0

Sekali A difaktorkan menjadi L dan U, kedua matriks tersebut
dapat digunakan untuk menyelesaikan Ax = b.
Metode penyelesaian SPL dengan cara ini dikenal dengan nama
metode dekomposisi LU.

Metode ini dinamakan juga metode pemfaktoran segitiga
(triangular factorization).
Rinaldi Munir - Topik Khusus Informatika I

43

• Tinjau sistem persamaan lanjar
Ax = b
• Faktorkan A menjadi L dan U sedemikian sehingga
A = LU
• Jadi,
Ax = b
LU x = b
• Misalkan
Ux = y
maka
Ly = b
Rinaldi Munir - Topik Khusus Informatika I

44

Untuk memperoleh y1, y2,…, yn , kita menggunakan teknik penyulihan maju
(forward substitution) :

Ly = b

1
l21

...
ln1

0
1
...
ln2

0
0

ln3

...
...



0
0

1

y1
y2 =

yn

b1
b2

bn



diperoleh y1, y2,…,
yn dengan teknik
penyulihan maju

Dan untuk memperoleh solusi SPL, x1, x2,…, xn, kita menggunakan teknik
penyulihan mundur (backward substitution):

Ux = y



u11 u12 u13 … u1n
0 u22 u23 … u2n
...
...
0 0
0 … unn

x1
x2
:
xn

=

y1
y2
:
yn

diperoleh
x1, x2, …, xn
dengan teknik
penyulihan
mundur

Rinaldi Munir - Topik Khusus Informatika I

45

• Jadi, langkah-langkah menghitung solusi SPL dengan metode
dekomposi LU dapat diringkas sebagai berikut:
1. Bentuklah matriks L dan U dari A
2. Pecahkan Ly = b, lalu hitung y dengan teknik penyulihan
maju
3. Pecahkan Ux = y, lalu hitung x dengan teknik penyulihan
mundur
• Terdapat dua metode untuk memfaktorkan A atas L dan U:
1. Metode LU Gauss.
2. Metode reduksi Crout.

Rinaldi Munir - Topik Khusus Informatika I

46

Pemfaktoran dengan Metode LU Gauss
Misalkan matriks A berukuran 4 × 4 difaktorkan atas L dan U,
A = LU
a11
a21
a31
a41

a12
a22
a32
a42

a13
a23
a33
a43

a14
a24
a34
a44

=

1
0
m21 1
m31 m32
m41 m42

0
0
1
m43

0
0
0
1

u11
0
0
0

u12 u13
u22 u23
0
u33
0 0

u14
u24
u34
u44

Di sini kita menggunakan simbol mij ketimbang lij,
karena nilai lij berasal dari faktor pengali (mij) pada
proses eliminasi Gauss. Langkah-langkah pembentukan
L dan U dari matriks A adalah sebagai berikut:
Rinaldi Munir - Topik Khusus Informatika I

47

1. Nyatakan A sebagai A = IA
a11
a21
a31
:
an1

a12
a22
a32

a13
a23
a33





an2

an3



a1n
a2n
a3n
:
ann

=

1
0
0
:
0

0
1
0
0

0 … 0
0 … 0
1 … 0
:
0 … 1

a11 a12
a21 a22
a31 a32
an1 an2

a13 … a1n
a23 … a2n
a33 … a3n
:
an3 … ann

2. Eliminasikan matriks A di ruas kanan menjadi matriks segitiga atas U.
Tempatkan faktor pengali mij pada posisi lij di matriks I.
3. Setelah seluruh proses eliminasi Gauss selesai, matriks I menjadi matriks L,
dan matriks A di ruas kanan menjadi matriks U.

Rinaldi Munir - Topik Khusus Informatika I

48

a11
a21
a31
:
an1

a12
a22
a32

a13 … a1n
a23 … a2n
a33 … a3n

an2

an3 … ann

b1
b2
b3
:
bn
Solusinya:

1
0
0
:
0

0
1
0

0…0
0…0
1…0

0

0…1

x1
x2
...

b1'
b2'
b3'
:
bn'
= b1 '
= b2 '
...
xn = bn'

Seperti halnya metode eliminasi Gauss, tatancang pivoting
dan penskalaan juga dapat diterapkan pada metoda ini
untuk memperkecil galat pembulatan.

Rinaldi Munir - Topik Khusus Informatika I

49

• Contoh:
10 (LU Gauss naif)
A=

4
-2
1

3
-4
2

-1
5
6

=

1
0
0

0
1
0

0
0
1

4
-2
1

3
-4
2

-1
5
6

Eliminasikan matriks A di ruas kanan menjadi matriks segitiga atas U, dan tempatkan
faktor pengali mij pada posisi lij di matriks I.
4
-2
1

3
-4
2

-1
5
6

R2 - (-2/4)R1
~
1
R3-( /4)R1

4
0
0

3
-2.5
1.25

-1
4.5
6.25

Tempatkan m21 = -2/4 = 0.5 dan m31= 1/4 = 0.25 ke dalam matriks L:

L=

1
-0.5
0

0
1
m32

0
0
1

Rinaldi Munir - Topik Khusus Informatika I

50

Teruskan proses eliminasi Gauss pada matriks A,
4
0
0

3
-2.5
1.25

R3 - (1.25/-2.5)R2
~

-1
4.5
6.25

4
0
0

3
-2.5
0

-1
4.5
8.5

=U

Tempatkan m32 = 1.25/-2.5 = -0.5 ke dalam matriks L:

L=

1
-0.5
0.25

A =

4
-2
1

0
1
-0.5

0
0
1

Jadi,
3
-4
2

-1
5
6

=

1
0
-0.5 1
0.25 -0.5

0
0
1

Rinaldi Munir - Topik Khusus Informatika I

4
0
0

3
-2.5
0

-1
4.5
8.5

51

• Contoh:
(LU Gauss dengan tata-ancang pivoting)
Faktorkan matriks A berikut
1
2
-1

A=

1
2
1

-1
1
1

b=

1
5
1

lalu pecahkan sistem Ax = b.
Penyelesaian:
Eliminasikan matriks A di ruas kanan menjadi matriks segitiga atas U, dan tempatkan
faktor pengali mij pada posisi lij di matriks I.
1
2
-1

1
2
1

-1
1
1

R2 - (2)R1
~
1
R3-( /1)R1

1
0
0

Rinaldi Munir - Topik Khusus Informatika I

1
0
2

-1
3
0

52

Tempatkan m21 = 2 dan m31= 1/1 = 1 ke dalam matriks L:

L=

1
2
-1

0
1
m32

0
0
1

Teruskan proses eliminasi Gauss pada matriks A. Dalam hal ini ada pivoting karena calon
pivot bernilai 0, sehingga baris kedua dipertukarkan dengan baris ketiga:

1
0
0

1
0
2

-1
3
0

R2 ⇔ R3

1
0
0

1
2
0

-1
0
3

Jangan lupa mempertukarkan juga R2 ⇔ R3 pada matriks L, kecuali elemen diagonalnya

L=

1
2
-1

0
1
m32

0
0
1

R2 ⇔ R3

Rinaldi Munir - Topik Khusus Informatika I

1
-1
2

0
1
m32

0
0
1
53

Jangan lupa mempertukarkan juga R2 ⇔ R3 pada vektor b,

b =

1
5
1

1
1
5

R2 ⇔ R3

Teruskan proses eliminasi Gauss pada matriks A:

R3 - (0/2)R2

1
0
0

1
2
0

-1
0
3

=U

Tempatkan m32 = 0/2 = 0 ke dalam matriks L:

L=

1
-1
2

0
1
0

0
0
1

Rinaldi Munir - Topik Khusus Informatika I

54

Jadi,

A=

1
-1
2

1
1
2

-1
1
1

=

1
-1
2

0
1
0

0
0
1

1
0
0

1
2
0

-1
0
3

Berturut-turut dihitung y dan x sebagai berikut:

Ly = b

1
-1
2

0
1
0

0
0
1

y1
y2
y3

=

1
1
5

y1 , y2, dan y3 dihitung dengan teknik penyulihan maju:
y1
=1
= 1 → y2 = 1 + y1 = 1 + 1 = 2
-y1 + y2
= 5 → y3 = 5 - 2y1 = 3
2y1 + 0y2 + y3
Rinaldi Munir - Topik Khusus Informatika I

55

Ux = y

1
0
0

1
2
0

-1
0
3

x1
x2
x3

=

1
2
3

x1, x2, dan x3 dihitung dengan teknik penyulihan mundur:
3x3
=3
→ x3 = 1
2x2 + 0x3
=2
→ x2 = 1
x1 + x2 - x3
=1
→ x1 = 1
Jadi, solusi sistem persamaan lanjar di atas adalah x = (1, 1, 1)T.

Rinaldi Munir - Topik Khusus Informatika I

56

Pertukaran baris untuk matriks yang berukuran besar diperlihatkan oleh matriks
di bawah ini:

a1
0
0
0
0
0

a2
b2
0
0
0
0

a3
b3
c3
0
0
0

a4
b4
c4
0
e4
f4

a5
b5
c5
d5
e5
f5

a6
b6
c6
d6
e6
f6

R5 ⇔ R4
(*)

a1
0
0
0
0
0

a2
b2
0
0
0
0

a3
b3
c3
0
0
0

a4
b4
c4
e4
0
f4

a5
b5
c5
e5
d5
f5

a6
b6
c6
e6
d6
f6

Maka, baris ke-5 dan baris ke-4 pada matriks L juga harus dipertukarkan:
1
m21
m31
m41
m51
m61

0
1
m32
m42
m52
m62

0
0
1
m43
m53
m63

0
0
0
1
x
x

0 0
0 0
0 0
0 0
1 0
x 1

R5 ⇔ R4
(*)

1
0
0
m21 0
0
m31 m32 1
m51 m52 m53
m41 m42 m43
m61 m62 m63

Rinaldi Munir - Topik Khusus Informatika I

0
0
0
1
x
x

0 0
0 0
0 0
0 0
1 0
x 1
57

Pemfaktoran dengan Metode Reduksi Crout
• Meskipun metode LU Gauss dikenal paling baik untuk
melakukan dekomposisi LU, terdapat metode lain yang
digunakan secara luas, yaitu metode reduksi Crout
• Nama lain: metode reduksi Cholesky atau metode Dolittle
Dalam membahas metode reduksi Crout, tinjau matriks 3 × 3 berikut:

A =

a11
a21
a31

a12
a22
a32

a13
a23
a33

1
L = l21
l31

0 0
1 0
l3,2 1

Rinaldi Munir - Topik Khusus Informatika I

U=

u11
0
0

u12
u2,2
0

u13
u23
u33

2

Karena LU = A, maka hasil perkalian L dan U itu dapat ditulis sebagai

LU =

u11
l21u11
l31u13

u12
u13
l21u12 + u22 l21u13+u23
l31u12 + l32u22 l31u13 + l32u23 + u33

=A=

a11
a21
a31

a12
a22
a32

a13
a23
a33

Dari kesamaan dua buah matriks LU = A, diperoleh

u11 = a11 ,

u12 = a12 ,

l21u1 = a21



l31u11 =

a31 →

l21u12 + u22 =
l21u13 + u23 =

a22
a23

u13 = a13

a 21
u11
a
= 31
u11

l21 =
l31



u22 = a22 - l21u12
u23 = a23 - l21u13

Rinaldi Munir - Topik Khusus Informatika I

}

Baris pertama U

}

Kolom pertama L

}

Baris kedua U
3

l31u12 + l32u22 = a32 →

a 32 − l 31u12
l32 =
u 22

Kolom kedua L

l31u13 + l32u23 + u33 = a33 → u33 = a33 - ( l31u13 + l32u23) }

Baris
ketiga U

Kita perhatikan ada urutan pola teratur dalam menemukan
elemen-elemen L dan U, yaitu:
(1)elemen-elemen baris pertama dari U
(2)elemen-elemen baris pertama dari L
(3)elemen-elemen baris kedua dari U
(4)elemen-elemen baris kedua L
(5)…
(6)elemen-elemen baris ke-k dari U
(7)elemen-elemen baris ke-k dari L
Rinaldi Munir - Topik Khusus Informatika I

4

Rumus umum menghitung u dan l untuk sistem dengan matriks A yang berukuran
3 × 3 dapat ditulis sebagai berikut:
p −1

lpk ukj,

p = 1, 2, 3, …., n
j = p, p+1, …., n

(P.4.13)

1ik u kq

q = 1, 2, 3, …., n-1
, i = q+1, q+2, …., n
dengan syarat uqq ≠ 0

(P.4.14)

upj = apj k =1

dan
q −1

aiq −

liq =

k =1

u qq

Rinaldi Munir - Topik Khusus Informatika I

5

Contoh: Selesaikan
x1 + x2 - x3 = 1
2x1 + 2x2 + x3 = 5
-x1 + x2 + 2x3 = 5
dengan metode dekomposisi LU, yang dalam hal ini L dan U dihitung dengan
metode reduksi Crout.
Penyelesaian:

A=

Diperoleh:

1
2
-1

1
2
1

-1
1
1

b=

1
5
1

u11 = a11 = 1
u12 = a12 = 1
u13 = a13 = -1
l21 = a21/u11 = 2/1 = 2
l31 = a31/u11 = -1/1 = -1
u22 = a22 - l21u12 = 2 - 2 ⋅1 = 0
Rinaldi Munir - Topik Khusus Informatika I

6

Karena uqq tidak boleh nol, lakukan pertukaran baris, baik untuk matriks A maupun untuk
vektor b:
Matriks A
R2 ⇔ R3

1
-1
2

1
1
2

-1
1
1

Vektor b
R2 ⇔ R3

1
1
5

Hitung kembali nilai l21 , l31 , dan u22 (Perhatikan bahwa nilai u11, u12, u13 tidak berubah)
l21 = a21/u11 = -1/1 = -1
l31 = a31/u11 = 2/1 = 2
u22 = a22 - l21u12 = 1 - (-1)(1) = 1 + 1 = 2
u23 = a23 - l21u13 = 1 - (-1)(-1) = 1-1 = 0
l32 =

a32 − l 31u12
2 − 2(1)
=
=0
u 22
2
Rinaldi Munir - Topik Khusus Informatika I

7

Diperoleh L dan U sebagai berikut,

U=

1
0
0

1
2
0

-1
0
3

L=

1
-1
2

0
1
0

0
0
1

dan b =

1
1
5

Berturut-turut dihitung y dan x sebagai berikut:

Ly = b

1
-1
2

0
1
0

0
0
1

y1
y2
y3

=

1
1
5

y1, y2, dan y3 dihitung dengan teknik penyulihan maju:
=1
y1
-y1 + y2
= 1 → y2 = 1 + y1 = 1 + 1 = 2
2y1 + 0y2 + y3
= 5 → y3 = 5 - 2y1 = 3

Rinaldi Munir - Topik Khusus Informatika I

8

Ux = y

1
0
0

1
2
0

-1
0
3

x1
x2
x3

=

1
2
3

x1, x2, dan x3 dihitung dengan teknik penyulihan mundur:
3x3
=3
→ x3 = 1
2x2 + 0x3
=2
→ x2 = 1
x1 + x2 - x3
=1
→ x1 = 1
Jadi, solusi sistem persamaan lanjar di atas adalah x = (1, 1, 1)T.

Rinaldi Munir - Topik Khusus Informatika I

9

• Jika diamati elemen segitiga bawah pada matriks U
semuanya bernilai nol, sehingga ruang yang tidak
terpakai itu dapat dipakai untuk menyimpan elemen
matriks L.
• Elemen diagonal matriks L seluruhnya 1, jadi tidak perlu
disimpan (default). Dengan demikian, penyimpanan
elemen L dan U pada satu matriks dapat menghemat
penggunaan memori.
• Selain itu, matriks A hanya dipakai sekali untuk
memperoleh L dan U, sesudah itu tidak dipakai lagi.
• Dengan demikian, setelah L dan U diperoleh, elemennya
dapat dipindahkan ke dalam A.
• Karena alasan ini, maka metode dekomposisi LU
dinamakan juga metode kompaksi memori.
Rinaldi Munir - Topik Khusus Informatika I

10

Determinan
• Metode eliminasi Gauss dapat diterapkan untuk menghitung
determinan matriks n × n.
• Determinannya dapat dihitung setelah ia ditransformasi
menjadi matriks segitiga atas U.
• Dua hukum penting determinan:
Hukum 1: det(BC) = det(B) × det(C)
Hukum 2: det(M) = hasil kali semua elemen diagonal M
jika M adalah matriks segitiga atas atau matriks segitiga
bawah.
Rinaldi Munir - Topik Khusus Informatika I

11

Kasus 1: Bila eliminasi Gauss tidak menerapkan
tatancang pivoting.
• Jika pivoting tidak diterapkan, determinan matriks A
adalah:
det (A) = det (LU)
= det (L) × det(U)
= det(U)
= u11 u22 u33 ... unn
• yang dalam hal ini det(L) = 1 sebab semua elemen
diagonal L adalah satu.
Rinaldi Munir - Topik Khusus Informatika I

12

Kasus 2: Bila eliminasi Gauss menerapkan
tatancang pivoting.
• Tatancang pivoting mengakibatkan pertukaran baris.
Dekomposisi LU dengan pivoting setara dengan
mengerjakan dua proses terpisah berikut:
1. Transformasikan matriks A menjadi matriks A'
dengan cara permutasi baris-baris matriks (sama
dengan mengalikan A dengan matriks permutasi P),
A' = PA atau setara dengan A = P-1 A'
2. Dekomposisi A' menjadi LU tanpa pivoting
A' = LU
Rinaldi Munir - Topik Khusus Informatika I

13

• Dari (1) dan (2), L dan U dihubungkan dengan A oleh
A = P-1 A' = P-1 LU
• Determinan A dapat ditulis sebagai
det (A) =
=
=
=

det (P-1) × det (L) × det (U)
det (P-1) × 1 × det (U)
det (P-1) × det (U)
α det (U)

yang dalam hal ini α = det (P-1) = -1 atau 1 bergantung pada
apakah pivoting sejumlah bilangan ganjil atau genap.
Rinaldi Munir - Topik Khusus Informatika I

14

• Jika pivoting dilakukan sejumlah p kali, maka α dapat
ditulis sebagai:
α = (-1)p
• α bernilai 1 untuk p genap dan -1 untuk p ganjil.
Karena itu,
det(A) = (-1)p det(U) = (-1)p u11 u22 u33 ... unn

Rinaldi Munir - Topik Khusus Informatika I

15

• Contoh: Hitung determinan matriks A berikut:
2
4
-2

A=

3
4
3

-1
-3
-1

Penyelesaian:
2
4
-2

3
4
3

-1
-3
-1

R2 - 4/2 R1
R3 - -2/2 R1

2
0
1

3
-2
0

-1
-1
-2

R3 - 6/-2 R2

2
0
0

3
-2
0

-1
-1
-5

Tidak ada proses pivoting selama eliminasi Gauss, maka
det (A) = (2) (-2) (-5) = 20

Rinaldi Munir - Topik Khusus Informatika I

16