Operasi dan pada Rmax di atas dapat diperluas untuk operasi-operasi matriks dalam Rmmaxn seperti dalam definisi berikut.
Definisi 2.2.1
Diberikan Rmmaxn : = { A = (Aij)Aij Rmax , i = 1, 2, ..., m dan j = 1, 2, ..., n }. i) Diketahui Rmax , A, B Rmmaxn . Didefinisikan
A adalah matriks yang unsur ke-ij-nya:
( A)ij = Aij untuk i = 1, 2, ..., m dan j = 1, 2, ..., n dan
A B adalah matriks yang unsur ke-ij-nya:
(A B)ij= Aij Bij untuk i = 1, 2, ..., m dan j = 1, 2, ..., n.
ii) Diketahui A Rmmaxp, B Rmaxpn. Didefinisikan A B adalah matriks yang unsur ke-ij-nya:
(A B)ij= ik kj
=
Operasi dan untuk matriks di atas mempunyai sifat-sifat berikut:
Teorema 2.2.4
Pernyataan-pernyataan berikut berlaku untuk sebarang skalar dan , dan sebarang matriks A , B dan C asalkan operasi yang dimaksud terdefinisi.
i) (A B) C = A (B C) mengikuti definisi operasi dan sifat-sifat operasi padaRmax.
iii): Diambil sebarang matriks A Rmmaxp, B Rmaxpr, C Rrmaxn .
Karena
Berikut diperhatikan dua buah matriks khusus.
Didefinisikan matriks E Rnmaxn dengan (E)ij : = matriks
dan elemen satuan adalah matriks E.Matriks E di atas disebut juga matriks identitas max-plus, sedangkan matriks
disebut matriks nol max-plus. (Rnmaxn , , ) bukan semiring komutatif, karena terdapat matriks A =
Pangkat k N {0} dengan N adalah himpunan semua bilangan asli, dari matriks A Rnxnmax dalam aljabar max-plus didefinisikan dengan:
0
Untuk sebarang A Rnxnmax didefinisikan trace(A) : = ii
Untuk memudahkan perhitungan dalam perhitungan matriks, terutama perkalian dan perpangkatan matriks atas aljabar max-plus, berikut diberikan list program MATLAB untuk menghitung dua operasi matriks tersebut.
% Program Matlab Perkalian Max-plus Matriks A dan B
% Oleh: M. Andy Rudhito FKIP Universitas Sanata Dharma
% input: A = matriks max-plus Amxn
% B = matriks nxp
% output: Hasil kali max-plus A dan B function hasilkali = maxkali
disp(' ')
% Memasukkan matriks yang dikalikan
A = input(' Masukkan matriks A(mxn) = ');
AB(i, j) = max(AB(i, j) , A(i, p) + B(p, j));
end;
end;
end;
% Menampilkan hasil kali
disp(' HASIL PERHITUNGAN :') disp(' ===================') disp(' Matriks A = '),disp(A) disp(' Matriks B = '),disp(B)
disp(' Hasil kali max-plus matriks A dan B adalah'),disp(AB)
% Peringatan tidak dapat dikalikan else
disp(' Ordo tidak sesuai, matriks tidak dapat dikalikan ');
end;
Gambar 2.2.1 List Program MATLAB Perkalian Matriks Max-Plus
Berikut diberikan contoh entri matriks dan hasil eksekusi programnya.
Contoh 2.2.7
» maxkali
Masukkan matriks A(mxn) = [1 0 -2 -Inf 3 4 12 -Inf -1 0;
-Inf 2 3 0 -Inf 5 -6 11 20 -7;-3 1 -Inf 1 2 -3 0 0 1 0;
2 7 -1 -2 0 1 1 -Inf 0 4;-Inf 0 -Inf 6 6 7 10 -11 -5 1;
-1 0 1 -Inf -Inf 0 0 -Inf 0 7;4 4 -2 -2 -Inf 9 -6 -8 0 0;
-Inf -Inf 0 -Inf -Inf -Inf -Inf -Inf -Inf -Inf]
Masukkan matriks B(nxp) = [-Inf 0 -Inf 1 -4 0 -Inf;
4 -1 -Inf 2 4 -Inf 0;1 0 -Inf 0 -7 8 10;-Inf 11 -Inf 13 -Inf -Inf 1;
-2 1 -Inf 1 6 -2 -3;-Inf -Inf -Inf -Inf -Inf -Inf -1;
0 -1 -Inf 1 -2 2 0;0 0 -Inf 20 16 -2 1;1 0 -Inf -2 2 -Inf 3;
-Inf -Inf -Inf -Inf 7 4 1]
HASIL PERHITUNGAN : ===================
Matriks A =
1 0 -2 -Inf 3 4 12 -Inf -1 0 -Inf 2 3 0 -Inf 5 -6 11 20 -7 -3 1 -Inf 1 2 -3 0 0 1 0 2 7 -1 -2 0 1 1 -Inf 0 4 -Inf 0 -Inf 6 6 7 10 -11 -5 1 -1 0 1 -Inf -Inf 0 0 -Inf 0 7 4 4 -2 -2 -Inf 9 -6 -8 0 0 -Inf -Inf 0 -Inf -Inf -Inf -Inf -Inf -Inf -Inf
Matriks B =
-Inf 0 -Inf 1 -4 0 -Inf 4 -1 -Inf 2 4 -Inf 0 1 0 -Inf 0 -7 8 10 -Inf 11 -Inf 13 -Inf -Inf 1
-2 1 -Inf 1 6 -2 -3 -Inf -Inf -Inf -Inf -Inf -Inf -1 0 -1 -Inf 1 -2 2 0 0 0 -Inf 20 16 -2 1 1 0 -Inf -2 2 -Inf 3 -Inf -Inf -Inf -Inf 7 4 1 Hasil kali max-plus matriks A dan B adalah 12 11 -Inf 13 10 14 12 21 20 -Inf 31 27 11 23 5 12 -Inf 20 16 4 4 11 9 -Inf 11 11 8 9 10 17 -Inf 19 12 12 10 4 1 -Inf 2 14 11 11 8 9 -Inf 12 8 6 8 1 0 -Inf 0 -7 8 10
% Program Matlab Menghitung PANGKAT MAX-PLUS Matriks
% Oleh: M. Andy Rudhito FKIP Universitas Sanata Dharma
% input: A = matriks max-plus Anxn
% k = pangkat tertinggi
% output A pangkat max-plus 1 s/d k function kuadrat = pkmax
% Memasukkan matriks dan pangkat tertinggi disp(' ')
disp(' PANGKAT MAX-PLUS MATRIKS') disp(' ---') disp(' ')
A = input(' Masukkan matriks A = ');
disp(' ')
k = input(' Hitung sampai pangkat ke- ');
disp(' HASIL PERHITUNGAN :') disp(' ===================') disp(' Matriks A = '), disp(A) [m, n]= size(A);
if m==n D = A;
for r = 1 : k-1 r+1;
for i = 1: m for j = 1: n
C(i, j) = -Inf;
for p = 1: n
C(i, j) = max(C(i, j) , A(i, p) + D(p, j));
end;
end;
end;
D = C;
% Menampilkan hasil perhitungan
disp(' Matriks A pangkat max-plus'), disp(r+1), disp(C) end;
else
% Peringatan kalau matriksnya tidak bujur sangkar
disp(' Matriks A tidak bujur sangkar, pangkat tidak didefinisikan' )
end;
Gambar 2.2.2 List Program MATLAB Perpangkatan Matriks Max-Plus Berikut diberikan contoh entri matriks dan hasil eksekusi programnya.
Contoh 2.2.8
» maxpk PANGKAT MAX-PLUS MATRIKS ---
Masukkan matriks A = [1 0 -2 -Inf 3 -Inf -1 0;
-Inf 2 3 0 -Inf 5 -6 -7;-3 1 -Inf 1 2 0 1 0; -1 -2 0 1 1 -Inf 0 4;
-Inf 0 -Inf 7 10 -11 -5 1;-1 0 1 0 0 -Inf 0 7;4 4 -2 -2 -Inf 9 0 0;
-Inf -Inf 0 -Inf -Inf -Inf -Inf -Inf ]
Hitung sampai pangkat ke- 4 HASIL PERHITUNGAN :
===================
Matriks A =
1 0 -2 -Inf 3 -Inf -1 0 -Inf 2 3 0 -Inf 5 -6 -7 -3 1 -Inf 1 2 0 1 0 -1 -2 0 1 1 -Inf 0 4 -Inf 0 -Inf 7 10 -11 -5 1 -1 0 1 0 0 -Inf 0 7 4 4 -2 -2 -Inf 9 0 0 -Inf -Inf 0 -Inf -Inf -Inf -Inf -Inf Matriks A pangkat max-plus
2
3 3 3 10 13 8 0 4 4 5 6 5 5 7 5 12 5 5 4 9 12 10 1 7 4 4 4 8 11 9 1 5 6 10 7 17 20 5 7 11 4 4 7 7 10 9 2 4 8 9 10 9 9 9 9 16 -3 1 -Inf 1 2 0 1 0 Matriks A pangkat max-plus
3
9 13 10 20 23 9 10 15 9 9 12 12 15 14 7 14 9 12 11 19 22 10 10 17 8 11 10 18 21 10 9 16 16 20 17 27 30 16 17 21
8 10 10 17 20 11 9 16 13 13 16 16 19 18 11 16 5 5 4 9 12 10 1 7 Matriks A pangkat max-plus
4
19 23 20 30 33 19 20 24 13 15 15 22 25 16 14 21 18 22 19 29 32 19 19 23 17 21 18 28 31 18 18 22 26 30 27 37 40 26 27 31 16 20 17 27 30 18 17 21 17 19 19 26 29 20 18 25 9 12 11 19 22 10 10 17
2.3 Semimodul atas Aljabar Max-Plus
Bagian ini akan membahas struktur aljabar yang melandasi pembahasan konsep vektor dalam aljabar max-plus. Di samping itu juga akan dibahas konsep urutan dalam vektor di mana di dalamnya dibahas konsep lebih besar dan lebih kecil.
Definisi 2.3.1
Diberikan semiring komutatif (S, +, ) dengan elemen netral 0 dan elemen identitas 1. Semimodul M atas S adalah semigrup komutatif (M, + ) bersama operasi perkalian skalar : S M M , yang dituliskan dengan ( , x) x, yang memenuhi aksioma berikut:
, S dan x, y M berlaku:
i) (x + y) = x + y, ii) ( + ) x = x + x, iii) ( x) = ( ) x, iv) 1 x = x,
v) 0 x = 0 .
Elemen dalam semimodul disebut vektor.
Contoh 2.3.2
Diberikan Rnmax:= { x = [x1, x2, ... , x ]n T | x i Rmax , i = 1, 2, ... , n}.
Untuk setiap x, y Rnmax dan untuk setiap Rmax didefinisikan operasi dengan
x y = [x1y1, x2y2, ... , xny ]n T dan operasi perkalian skalar dengan
x = x = [ x1, x2, ... , x ]n T.
Perhatikan bahwa Rnmax dapat dipandang sebagai Rmaxn1 . Dengan memperhatikan Teorema 2.2.4 i) dan ii) terlihat bahwa (Rnmax, ) merupakan semigrup komutatif dengan elemen netral
= [, , ..., ]T. Kemudian dengan memperhatikan Teorema 2.2.4 x), ix), dan vii), Rnmax merupakan semimodul atas Rmax.Diberikan vektor-vektor x1, x2, ..., x di dalam semimodul M dan skalar-n skalar 1, 2 , ..., n di dalam semiring komutatif S. Didefinisikan kombinasi linear dari vektor-vektor x1, x2, ..., xn adalah suatu bentuk aljabar 1 x1 +
2 x2 + ... + n x . n
Definisi 2.3.3 (Wohlgemuth, 1990)
Relasi “” pada himpunan P disebut urutan parsial pada P jika untuk semua x, y, z P berlaku:
i) Sifat refleksif, yaitu: x x .
ii) Sifat antisimetris, yaitu: jika x y dan y x, maka x = y . iii) Sifat transitif, yaitu: jika x y dan y z, maka x z .
Elemen x dan y dikatakan komparabel (comparable) jika x y atau y x . Jika x y akan dituliskan juga dengan y x. Jika x y dan x y akan dituliskan juga dengan x y.
Definisi 2.3.4 (Wohlgemuth, 1990)
Urutan parsial “” pada himpunan P disebut urutan total pada P jika setiap dua elemen dalam P komparabel.
Teorema 2.3.5
Jika (S, + ) semigrup komutatif idempoten maka relasi “” yang didefinisikan pada S dengan x y x + y = y merupakan urutan parsial pada S.
Bukti: Diambil sebarang x, y, z S.
i) Karena berlaku sifat idempoten maka x + x = x x x .
ii) Jika x y dan y x maka x + y = y dan y + x = x. Karena berlaku sifat komutatif maka x = y.
iii) Jika x y dan y z maka x + y = y dan y + z = z. Dari sini karena berlaku sifat asosiatif maka x + z = x + (y + z) = (x + y) + z = y + z = z. Dengan demikian x z. ■
Akibat 2.3.6
Relasi “m” yang didefinisikan pada Rmax dengan x m y x y = y
merupakan urutan parsial pada Rmax. Lebih lanjut relasi ini merupakan urutan total pada Rmax.
Bukti: Karena (R , ) merupakan semigrup komutatif idempoten, maka menurut Teorema 2.3.5 relasi “m” yang didefinisikan pada Rmaxdi atas merupakan urutan parsial pada Rmax. Selanjutnya diambil x , y Rmax maka berlaku
x y = max (x, y) = x atau x y = max (x, y) = y. ■
Akibat 2.3.7
Relasi “
m” yang didefinisikan pada Rmmaxn denganA
mB A B = B AijBij = Bij Aij m Bij untuk setiap i dan j, merupakan urutan parsial pada Rmmaxn.Bukti: Dengan menggunakan Teorema 2.2.4 i), ii) dan xi) nampak (Rmmaxn, ) merupakan semigrup komutatif idempoten, sehingga menurut Teorema 2.3.5 relasi “
m” yang didefinisikan pada Rmmaxn di atas merupakan urutan parsial. ■Akibat 2.3.8
Relasi “
m” yang didefinisikan pada Rnmax denganx
m y x y = y xi m y i untuk setiap i , merupakan relasi urutan parsial pada Rnmax.Bukti: Karena (Rnmax, ) merupakan semigrup komutatif idempoten, maka relasi
“
m” yang didefinisikan pada Rnmaxmerupakan urutan parsial pada Rnmax. ■Relasi “
m” yang didefinisikan pada Rmmaxn di atas bukan merupakan urutan total, karena terdapat matriks A =
2 1
1
0 dan B =
0 1
1
2 dengan
A B =
2 1
1
0
0 1
1
2 =
2 2
2
2 , sehingga A B B dan A B A.
Demikian juga relasi “
m” yang didefinisikan pada Rnmax di atas bukan merupakan urutan total, karena terdapat vektor x = [1, 2, 3]T dan y = [2, 0, -1]T dengan x y = [1, 2, 3]T [2, 0, -1]T = [2, 2, 3]T . Dengan demikian x y y dan x y x.Teorema 2.3.9
Diberikan matriks A Rmmaxn. Jika x, y Rnmax dengan x
m y, maka (A x)
m (A y).Bukti: Diambil sebarang x, y Rnmax dengan x
m y, maka x y = y A (x y) = A y (A x) (A y) = A y (A x)
m (A y). ■Hasil pada Teorema 2.3.9 di atas akan digunakan dalam pembahasan penyelesaian sistem persamaan linear max-plus melalui subpenyelesaian terbesarnya.
28
Dalam bab ini dibahas sistem persamaan linear (SPL) max-plus yang merupakan salah satu alat untuk pemodelan masalah real dengan pendekatan aljabar max-plus. Secara umum ada dua bentuk SPL max-plus, yaitu SPL max-plus input-output dan SPL max-plus iteratif. Akan dibahas eksistensi dan ketunggalan penyelesaian SPL max-plus dan juga beberapa contoh penerapannya.