BAB 2 Program Linear
2.9 Metode Big M pada Kendala Berbentuk Pertidaksamaan ≥
2.9.3 Pengertian Variabel Surplus dan Teknik Modifikasi
Misalkan kita ubah program linear sebelumnya menjadi : min Z = 0, 4x1+ 0, 5x2
2.9. METODE BIG M PADA KENDALA BERBENTUK PERTIDAKSAMAAN ≥ 29 dengan kendala
0, 3x1+ 0, 1x2 ≤ 2, 7 0, 5x1+ 0, 5x2 = 6 0, 6x1+ 0, 4x2 ≥ 6
x1≥ 0, x2 ≥ 0
Kita tambahkan variabel artificial pada kendala yang berbentuk = dan ≥, variabel surplus pada kendala yang berbentuk ≥, dan variabel slack pada kendala yang berbentuk ≤ sehingga program linear menjadi :
max −Z = −0, 4x1− 0, 5x2− M ¯s4− M ¯s6 dengan kendala
0, 3x1+ 0, 1x2+ s3 = 2, 7 0, 5x1+ 0, 5x2+ ¯s4 = 6 0, 6x1+ 0, 4x2− s5+ ¯s6 = 6
x1 ≥ 0, x2 ≥ 0, s3 ≥ 0, ¯s4 ≥ 0, s5 ≥ 0, ¯s6 ≥ 0
Sehingga secara keseluruhan bentuk program linear di atas dapat dimodifikasi sebagai berikut : max −Z
dengan kendala
−Z + 0, 4x1+ 0, 5x2+ M ¯s4+ M ¯s6 = 0 (0) 0, 3x1+ 0, 1x2+ s3 = 2, 7 (1) 0, 5x1+ 0, 5x2+ ¯s4 = 6 (2) 0, 6x1+ 0, 4x2− s5+ ¯s6 = 6 (3) x1 ≥ 0, x2 ≥ 0, s3 ≥ 0, ¯s4 ≥ 0, s5 ≥ 0, ¯s6 ≥ 0 2.9.4 Metode Big M dan Komputasinya
Tahap Awal (Inisialisasi)
Masukkan koefisien dari bentuk program linear ke dalam tabel Simpleks. Pada baris 0, koefisien pada variabel artificial harus 0.
Tahap Optimisasi
1. Menentukan Kolom Pivot. Kolom pivot dapat ditentukan dengan cara memilih koefisien variabel nonbasis pada persamaan 0 yang memiliki nilai negatif paling besar.
max(| − c1|, | − c2|, . . . , | − cn|) (2.23) 2. Menentukan Baris Pivot. Baris pivot dapat ditentukan dengan cara memilih rasio nilai
kanan per koefisien kolom pivot terkecil pada nilai kanan variabel basis.
min( b1 kkp1, b2
kkp2, . . . , bm
kkpm) (2.24)
3. Operasi Baris Elementer.
Tahap Pemberhentian
Tahap pemberhentian terjadi jika tidak ada koefisien pada persamaan 0 yang negatif.
Komputasi
Sistem kendala tersebut belum selesai karena terdapat koefisien variabel artificial ¯s4 dan ¯s6 yang tak nol. Karena itu, kita perlu mengeliminasi variabel ¯s4 dan ¯s6.
−Z + 0, 4x1+ 0, 5x2+ M ¯s4+ M ¯s6 = 0 | × 1| Untuk memudahkan perhitungan, dapat menggunakan tabel iterasi sebagai berikut : Iterasi 1
Menentukan Kolom Pivot dan Baris Pivot
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan Rasio
B0 -1 −1, 1M + 0, 4 −0, 9M + 0, 5 0 0 M 0 −12M
B1 0 0,3 0,1 1 0 0 0 2,7 2,7/0,3=9
B2 0 0,5 0,5 0 1 0 0 6 6/0,5=12
B3 0 0,6 0,4 0 0 -1 1 6 6/0,6=10
Dari tabel, pada persamaan B0 terlihat bahwa −1, 1M + 0, 4 (kolom 1) adalah bilangan yang paling negatif sehingga kolom 1 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 2, 7/0, 3 = 9 (baris 1) adalah bilangan paling kecil sehingga baris 1 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 0,3.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 0,3 supaya koefisien x1 bernilai 1. Supaya koefisien x1 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan −1, 1M + 0, 4 kali baris 1, kurangkan baris 2 dengan 0,5 kali baris 1, kurangkan baris 3 dengan 0,6 kali baris 1.
Lebih jelasnya adalah mengubah kolom pivot
2.9. METODE BIG M PADA KENDALA BERBENTUK PERTIDAKSAMAAN ≥ 31
Operasi baris elementer (OBE) : 1 0, 3B1
0 0, 3 0, 1 1 0 0 0 = 2, 7 | ×0,31 | 0 1 13 103 0 0 0 = 9 Operasi baris elementer (OBE) : B0− (−1, 1M + 0, 4)B1
−1 −1, 1M + 0, 4 −0, 9M + 0, 5 0 0 M 0 = −12M | × 1|
0 1 13 103 0 0 0 = 9 | × −(−1, 1M + 0, 4)|
−1 −1, 1M + 0, 4 −0, 9M + 0, 5 0 0 M 0 = −12M
0 −1, 1M + 0, 4 −1,1M +0,43 −11M +43 0 0 0 = 9(−1, 1M + 0, 4)
−1 0 −1630 M + 1130 113M − 43 0 M 0 = −2, 1M − 3, 6 Operasi baris elementer (OBE) : B2− 0, 5B1
0 0, 5 0, 5 0 1 0 0 = 6 | × 1| 0 0, 5 0, 5 0 1 0 0 = 6 0 1 13 103 0 0 0 = 9 | × −0, 5| 0 −0, 5 −0,53 −53 0 0 0 = −4, 5
0 0 13 −53 1 0 0 = 1, 5 Operasi baris elementer (OBE) : B3− 0, 6B1
0 0, 6 0, 4 0 0 −1 1 = 6 | × 1| 0 0, 6 0, 4 0 0 −1 1 = 6 0 1 13 103 0 0 0 = 9 | × −0, 6| 0 −0, 6 −0,63 −2 0 0 0 = −5, 4
0 0 0, 2 −2 0 −1 1 = 0, 6 Sehingga diperoleh tabel yang baru adalah :
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan B0 -1 0 −1630M + 1130 113 M −43 0 M 0 −2, 1M − 3, 6
B1 0 1 13 103 0 0 0 9
B2 0 0 13 −53 1 0 0 1,5
B3 0 0 0,2 -2 0 -1 1 0,6
Iterasi 2
Menetukan Kolom Pivot dan Baris Pivot
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan Rasio
B0 -1 0 −1630 M +1130 113 M −43 0 M 0 −2, 1M − 3, 6
B1 0 1 13 103 0 0 0 9 9/(1/3)=27
B2 0 0 13 −53 1 0 0 1,5 1,5/(1/3)=4,5
B3 0 0 0,2 -2 0 -1 1 0,6 0,6/0,2=3
Dari tabel, pada persamaan B0 terlihat bahwa −1630M + 1130 (kolom 2) adalah bilangan yang paling negatif sehingga kolom 2 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 0, 6/0, 2 = 3 (baris 3) adalah bilangan paling kecil sehingga baris 3 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 0,2.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 0,21 supaya koefisien x2 bernilai 1. Supaya koefisien x2 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan (−1630M +1130) kali baris 3, kurangkan baris 1 dengan 13 kali baris 3, kurangkan baris 2 dengan 13 kali baris 3.
Lebih jelasnya adalah mengubah kolom pivot
Operasi baris elementer (OBE) : 1 0, 2B3
2.9. METODE BIG M PADA KENDALA BERBENTUK PERTIDAKSAMAAN ≥ 33 Sehingga diperoleh tabel yang baru adalah :
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan
Solusi ini belum optimal karena terdapat koefisien pada persamaan 0 yang bernilai negatif.
Iterasi 3
Menetukan Kolom Pivot dan Baris Pivot
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan Rasio
B0 -1 0 0 −53M +73 0 −53M + 116 83M − 116 -0,5M-4,7
B1 0 1 0 203 0 53 −53 8 8/(5/3) = 4, 8
B2 0 0 0 53 1 53 −53 0,5 0,5/(5/3)=0,3
B3 0 0 1 -10 0 -5 5 3
Dari tabel, pada persamaan B0 terlihat bahwa −53M + 116 (kolom 5) adalah bilangan yang paling negatif sehingga kolom 5 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 0, 5/(5/3) = 0, 3 (baris 2) adalah bilangan paling kecil sehingga baris 2 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 53.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 53 supaya koefisien x5 bernilai 1. Supaya koefisien x5 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan (−53M + 116 ) kali baris 2, kurangkan baris 1 dengan 53 kali baris 2, jumlahkan baris 3 dengan lima kali baris 2.
Lebih jelasnya adalah mengubah kolom pivot
Operasi baris elementer (OBE) : 1 5/3B2
0 0 0 53 1 53 −53 = 0, 5 | ×5/31 | 0 0 0 1 35 1 −1 = 0, 3 Operasi baris elementer (OBE) : B0− (−53M +116 )B2
−1 0 0 −53M + 73 0 −53M +116 83M −116 = −0, 5M − 4, 7 | × 1|
0 0 0 1 35 1 −1 = 0, 3 | × −(−53M + 116)|
−1 0 0 −53M +73 0 −53M + 116 83M −116 = −0, 5M − 4, 7 0 0 0 53M −116 M −3330 53M − 116 −53M +116 = 0, 5M −3360
−1 0 0 12 M − 1, 1 0 M = −5, 25 Operasi baris elementer (OBE) : B1−53B2
0 1 0 203 0 53 −53 = 8 | × 1| 0 1 0 203 0 53 −53 = 8 0 0 0 1 35 1 −1 = 0, 3 | × −53| 0 0 0 −53 −1 −53 53 = −0, 5
0 1 0 5 −1 0 0 = 7, 5 Operasi baris elementer (OBE) : B3+ 5B2
0 0 1 −10 0 −5 5 = 3 | × 1| 0 0 1 −10 0 −5 5 = 3
0 0 0 1 35 1 −1 = 0, 3 | × 5| 0 0 0 5 3 5 −5 = 1, 5 0 0 1 −5 3 0 0 = 4, 5 Sehingga diperoleh tabel yang baru adalah :
No. Z x1 x2 s3 s4 s5 s6 Nilai Kanan
B0 -1 0 0 0,5 M-1,1 0 M -5,25
B1 0 1 0 5 -1 0 0 7,5
B2 0 0 0 1 0,6 1 -1 0,3
B3 0 0 1 -5 3 0 0 4,5
Selesai iterasi 3, terlihat bahwa solusinya x1 = 7, 5 dan x2 = 4, 5 dengan nilai Z = 0, 4(7, 5) + 0, 5(4, 5) = 5, 25. Solusi ini optimal karena tidak terdapat koefisien pada persamaan 0 yang bernilai negatif.
Bab 3
Teori Dual
Dalam suatu masalah optimisasi, selalu terdapat hubungan mana yang akan dimaksimumkan dan mana yang akan diminimumkan. Hubungan maksimum dan minimum dapat diselidiki melalui teori dual yang akan dibahas pada buku ini.
3.1 Hubungan Masalah Primal dan Masalah Dual
Konsep duality adalah mengenai hubungan antara bentuk program linear (misal masalah maksi-malisasi) dengan mengubah menjadi program linear yang lainnya (misal masalah minimaksi-malisasi).
Hubungan masalah primal dan masalah dual adalah sebagai berikut : Masalah Primal
max Z =Pn
j=1cjxj (3.1)
dengan kendala
Pn
j=1aijxj ≤ bi i = 1, 2, . . . , m (3.2)
xj ≥ 0 j = 1, 2, . . . , n (3.3)
Masalah Dual
min W =Pm
i=1biyi (3.4)
dengan kendala
Pm
i=1ajiyi ≥ cj j = 1, 2, . . . , n (3.5)
yi ≥ 0 i = 1, 2, . . . , m (3.6)
Contoh :
Diketahui program linear sebagai berikut :
max Z = 3x1+ 5x2 35
dengan kendala
x1 ≤ 4 2x2 ≤ 12 3x1+ 2x2 ≤ 18
x1 ≥ 0, x2≥ 0
Ubahlah menjadi masalah minimalisasi menggunakan teori dual.
Jawab :
min W = 4y1+ 12y2+ 18y3
dengan kendala
y1+ 3y3 ≥ 3 2y2+ 2y3 ≥ 5 y1≥ 0, y2 ≥ 0, y3≥ 0 Contoh : Diketahui program linear sebagai berikut :
min Z = 3x1+ 5x2 dengan kendala
x1 ≥ 2 3x2 ≥ 9 3x1+ 2x2 ≥ 18
x1 ≥ 0, x2≥ 0
Ubahlah menjadi masalah maksimalisasi menggunakan teori dual.
Jawab :
max W = 2y1+ 9y2+ 18y3 dengan kendala
y1+ 3y3 ≤ 3 3y2+ 2y3 ≤ 5 y1≥ 0, y2 ≥ 0, y3≥ 0
3.2 Mengubah Masalah Maksimalisasi Menjadi Masalah Minimal-isasi
Contoh :
Terdapat tiga pabrik yaitu : pabrik A, pabrik B, dan pabrik C. Ketiga pabrik tersebut memproduksi kaca pintu dan kaca jendela.
3.2. MENGUBAH MASALAH MAKSIMALISASI MENJADI MASALAH MINIMALISASI 37 Aturan produksi pada masing-masing pabrik adalah :
Pabrik A memproduksi kaca pintu dengan waktu produksi 1 jam. Secara umum, waktu produksi pada Pabrik A adalah maksimum 4 jam.
Pabrik B memproduksi kaca jendela dengan waktu produksi 2 jam. Secara umum, waktu produksi pada Pabrik B adalah maksimum 12 jam.
Pabrik C memproduksi kaca pintu dengan waktu produksi 3 jam dan kaca jendela dengan waktu produksi 2 jam. Secara umum, waktu produksi pada Pabrik C adalah maksimum 18 jam.
Jika keuntungan kaca pintu adalah 3 dan keuntungan kaca jendela adalah 5. Tentukan jumlah kaca pintu dan jumlah kaca jendela yang diproduksi supaya pabrik tersebut mendapatkan keuntungan maksimum.
Dari permasalahan di atas, dapat dibuat tabel sebagai berikut :
Waktu Produksi Maksimum Waktu Produksi
(jam) (jam)
Kaca Pintu Kaca Jendela
Pabrik A 1 0 4
Pabrik B 0 2 12
Pabrik C 3 2 18
Keuntungan 3 5
Pendefinisian variabel keputusan adalah sebagai berikut : Misalkan :
x1 adalah jumlah kaca pintu.
x2 adalah jumlah kaca jendela.
Sehingga pembentukan fungsi obyektifnya adalah :
max Z = 3x1+ 5x2
dengan kendala
x1 ≤ 4 2x2 ≤ 12 3x1+ 2x2 ≤ 18
x1≥ 0, x2 ≥ 0
Berdasarkan perhitungan menggunakan metode grafis atau metode Simpleks, diperoleh solusi opti-malnya adalah x1 = 2, x2 = 6 dengan nilai Z = 36.
Jika diubah menggunakan teori dual, maka permasalah menjadi :
Terdapat tiga pabrik yaitu : pabrik A, pabrik B, dan pabrik C. Ketiga pabrik tersebut memproduksi kaca pintu dan kaca jendela.
Aturan produksi pada masing-masing pabrik adalah :
Waktu produksi kaca pintu di pabrik A adalah 1 jam dan di pabrik C adalah 3 jam. Keuntungan minimum dari kaca pintu adalah 3.
Waktu produksi kaca jendela di pabrik B adalah 2 jam dan di pabrik C adalah 2 jam. Keuntungan minimum dari kaca jendela adalah 5.
Jika waktu di pabrik A adalah 4, waktu di pabrik B adalah 12, dan waktu di pabrik C adalah 18.
Tentukan keuntungan dari pabrik A, pabrik B dan pabrik C supaya waktu produksi minimum.
Dari permasalahan di atas, dapat dibuat tabel sebagai berikut :
Waktu Produksi Minimum Keuntungan (jam)
Pabrik A Pabrik B Pabrik C
Kaca pintu 1 0 3 3
Kaca jendela 0 2 2 5
Waktu 4 12 18
Pendefinisian variabel keputusan adalah sebagai berikut : Misalkan :
y1 adalah keuntungan pabrik A per jam.
y2 adalah keuntungan pabrik B per jam.
y3 adalah keuntungan pabrik C per jam.
Sehingga pembentukan fungsi obyektifnya adalah :
min W = 4y1+ 12y2+ 18y3 dengan kendala
y1+ 3y3 ≥ 3 2y2+ 2y3 ≥ 5 y1≥ 0, y2 ≥ 0, y3≥ 0 3.2.1 Perhitungan
Misalkan kita ubah program linear sebelumnya menjadi : min W = 4y1+ 12y2+ 18y3
dengan kendala
y1+ 3y3 ≥ 3 2y2+ 2y3 ≥ 5 y1≥ 0, y2 ≥ 0, y3≥ 0
Kita tambahkan variabel surplus pada kendala yang berbentuk ≥ sehingga program linear menjadi :
max −W = −4y1− 12y2− 18y3− M ¯s5− M ¯s7 dengan kendala
y1+ 3y3− s4+ ¯s5 = 3 2y2+ 2y3− s6+ ¯s7 = 5
3.2. MENGUBAH MASALAH MAKSIMALISASI MENJADI MASALAH MINIMALISASI 39 y1≥ 0, y2 ≥ 0, y3 ≥ 0, , s4≥ 0, ¯s5≥ 0, s6≥ 0, ¯s7≥ 0
Sehingga secara keseluruhan bentuk program linear di atas dapat dimodifikasi sebagai berikut : max −W
Sistem kendala tersebut belum selesai karena terdapat koefisien variabel artificial ¯s5 dan ¯s7 yang tak nol. Karena itu, kita perlu mengeliminasi variabel ¯s5 dan ¯s7.
−Z + 4y1+ 12y2+ 18y3+ M ¯s5+ M ¯s7 = 0 | × 1| Untuk memudahkan perhitungan, dapat menggunakan tabel iterasi sebagai berikut : Iterasi 1
Menentukan Kolom Pivot dan Baris Pivot
No. W y1 y2 y3 s4 s5 s6 s7 Nilai Kanan Rasio
B0 -1 4 − M 12 − 2M 18 − 5M M 0 M 0 −8M
B1 0 1 0 3 -1 1 0 0 3 3/3=1
B2 0 0 2 2 0 0 -1 1 5 5/2=2,5
Dari tabel, pada persamaan B0 terlihat bahwa 18 − 5M (kolom 3) adalah bilangan yang paling negatif sehingga kolom 3 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 3/3 = 1 (baris 1) adalah bilangan paling kecil sehingga baris 1 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 3.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 3 supaya koefisien y3 bernilai 1. Supaya koefisien y3 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan 18 − 5M kali baris 1, kurangkan baris 2 dengan 2 kali baris 1.
Lebih jelasnya adalah mengubah kolom pivot
dengan cara sebagai
berikut :
Operasi baris elementer (OBE) : 1 3B1 Sehingga diperoleh tabel yang baru adalah :
No. W y1 y2 y3 s4 s5 s6 s7 Nilai Kanan
B0 -1 −2 +23M 12 − 2M 0 −23M + 6 −6 +53M M 0 −3M − 18
B1 0 13 0 1 −13 13 0 0 1
B2 0 −23 2 0 23 −23 -1 1 3
Iterasi 2
Menetukan Kolom Pivot dan Baris Pivot
No. W y1 y2 y3 s4 s5 s6 s7 Nilai Kanan Rasio
B0 -1 −2 + 23M 12 − 2M 0 −23M + 6 −6 + 53M M 0 −3M − 18
B1 0 13 0 1 −13 13 0 0 1 1/0
B2 0 −23 2 0 23 −23 -1 1 3 3/2=1,5
Dari tabel, pada persamaan B0 terlihat bahwa 12 − 2M (kolom 2) adalah bilangan yang paling negatif sehingga kolom 2 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 3/2 = 1, 5 (baris 2) adalah bilangan paling kecil sehingga baris 2 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 2.
3.2. MENGUBAH MASALAH MAKSIMALISASI MENJADI MASALAH MINIMALISASI 41 Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 2 supaya koefisien y2 bernilai 1. Supaya koefisien y2 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan (12 − 2M ) kali baris 2.
Lebih jelasnya adalah mengubah kolom pivot
dengan cara sebagai berikut :
Operasi baris elementer (OBE) : 1 2B2 Sehingga diperoleh tabel yang baru adalah :
No. W y1 y2 y3 s4 s5 s6 s7 Nilai Kanan
B0 -1 2 0 0 2 −2 + M 6 −6 + M 36
B1 0 13 0 1 −13 13 0 0 1
B2 0 13 1 0 13 −13 −12 12 32
Selesai iterasi 2, terlihat bahwa solusinya adalah : 1
3y1+ y3 = 1 1
3y1+ y2 = 3 2 atau bisa ditulis sebagai :
y1 = y1
Masukkan nilai y1 = 0 sehingga diperoleh y2 = 3
2, y3 = 1. Sehingga solusi optimalnya adalah (y1, y2, y3) = (0,3
2, 1) dengan nilai W = 4(0) + 12(3
2) + 18(1) = 36.
3.3 Mengubah Masalah Minimalisasi Menjadi Masalah Maksimal-isasi
Contoh :
Seorang pembuat kue akan membuat kue : kue kering, brownis, dan donat. Ketiga kue tersebut mengandung keju dan coklat.
Kandungan bahan pada ketiga kue tersebut adalah :
Kue kering mengandung keju 1 gram. Menurut selera pasar, kandungan bahan pada kue kering adalah minimum 2 gram .
Brownis mengandung coklat 3 gram. Menurut selera pasar, kandungan bahan pada brownis adalah minimum 9 gram.
Donat mengandung 3 gram keju dan 2 gram coklat. Menurut selera pasar, kandungan bahan pada donat adalah minimum 18 gram.
Jika harga keju adalah 3 dan harga coklat adalah 5. Tentukan jumlah keju dan jumlah coklat yang harus dibeli supaya pembuat kue tersebut melakukan pembelanjaan minimum.
Dari permasalahan di atas, dapat dibuat tabel sebagai berikut :
Kandungan Bahan Minimum Kandungan Bahan
(gram) (gram)
Keju Coklat
Kue kering 1 0 2
Brownis 0 3 9
Donat 3 2 18
Harga 3 5
Pendefinisian variabel keputusan adalah sebagai berikut : Misalkan :
x1 adalah jumlah keju.
x2 adalah jumlah coklat.
Sehingga pembentukan fungsi obyektifnya adalah :
min Z = 3x1+ 5x2 dengan kendala
x1 ≥ 2 3x2 ≥ 9 3x1+ 2x2 ≥ 18
x1 ≥ 0, x2≥ 0
3.3. MENGUBAH MASALAH MINIMALISASI MENJADI MASALAH MAKSIMALISASI 43 Berdasarkan perhitungan menggunakan metode grafis atau metode Simpleks, diperoleh solusi opti-malnya adalah x1 = 4, x2 = 3 dengan nilai Z = 27.
Jika diubah menggunakan teori dual, maka permasalah menjadi :
Seorang pembuat kue akan membuat kue : kue kering, brownis, dan donat. Ketiga kue tersebut mengandung keju dan coklat.
Kandungan bahan pada ketiga kue tersebut adalah :
Keju yang terkandung pada kue kering adalah 1 gram dan donat adalah 3 gram. Biaya pembelian pada bahan keju adalah maksimum 3.
Coklat yang terkandung pada brownis adalah 3 gram dan donat adalah 2 gram. Biaya pembelian pada bahan coklat adalah maksimum 5.
Jika berat kue kering adalah 2 gram, berat brownis adalah 9 gram, dan berat donat adalah 18 gram.
Tentukan biaya pembelian kue kering, brownis, dan keju yang harus diberikan supaya memenuhi selera pasar yang maksimum.
Dari permasalah di atas, dapat dibuat tabel sebagai berikut :
Kandungan Bahan Maksimum Biaya Pembelian (gram)
Kue kering Brownis Donat
Keju 1 0 3 3
Coklat 0 3 2 5
Berat 2 9 18
Pendefinisian variabel keputusan adalah sebagai berikut : Misalkan :
y1 adalah biaya pembelian kue kering per gram.
y2 adalah biaya pembelian brownis per gram.
y3 adalah biaya pembelian donat per gram.
Sehingga pembentukan fungsi obyektifnya adalah :
max W = 2y1+ 9y2+ 18y3
dengan kendala
y1+ 3y3 ≤ 3 3y2+ 2y3 ≤ 5 y1 ≥ 0, y2≥ 0, y3 ≥ 0 3.3.1 Perhitungan
Kita lihat pertidaksamaan pada kendala berikut :
max W = 2y1+ 9y2+ 18y3
dengan kendala
y1+ 3y3 ≤ 3 3y2+ 2y3 ≤ 5 y1≥ 0, y2 ≥ 0, y3≥ 0 Kita tambah variabel slack s4, s5 sehingga kendala menjadi :
max W = 2y1+ 9y2+ 18y3 dengan kendala
y1+ 3y3+ s4 = 3 3y2+ 2y3+ s5 = 5 y1≥ 0, y2 ≥ 0, y3≥ 0, s4≥ 0, s5≥ 0
Sehingga secara keseluruhan bentuk program linear di atas dapat dimodifikasi sebagai berikut : max W
Untuk memudahkan perhitungan, dapat menggunakan tabel iterasi sebagai berikut : Iterasi 1
Menentukan Kolom Pivot dan Baris Pivot
No. W y1 y2 y3 s4 s5 Nilai Kanan Rasio
B0 1 -2 -9 -18 0 0 0
B1 0 1 0 3 1 0 3 3/3=1
B2 0 0 3 2 0 1 5 5/2=2,5
Dari tabel, pada persamaan B0 terlihat bahwa -18 (kolom 3) adalah bilangan yang paling negatif sehingga kolom 3 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 3/3 = 1 (baris 1) adalah bilangan paling kecil sehingga baris 1 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 3.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 3 supaya koefisien y3 bernilai 1. Supaya koefisien y3 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : jumlahkan baris 0 dengan delapan belas kali baris 1, kurangkan baris 2 dengan dua kali baris 1.
Lebih jelasnya adalah mengubah kolom pivot
dengan cara sebagai
3.3. MENGUBAH MASALAH MINIMALISASI MENJADI MASALAH MAKSIMALISASI 45
Operasi baris elementer (OBE) : 1 3B1
0 1 0 3 1 0 = 3 | ×13| 0 13 0 1 13 0 = 1 Operasi baris elementer (OBE) : B0+ 18B1
1 −2 −9 −18 0 0 = 0 | × 1| 1 −2 −9 −18 0 0 = 0 Sehingga diperoleh tabel yang baru adalah :
No. W y1 y2 y3 s4 s5 Nilai Kanan
B0 1 4 -9 0 6 0 18
B1 0 13 0 1 13 0 1
B2 0 −23 3 0 −23 1 3
Iterasi 2
Menetukan Kolom Pivot dan Baris Pivot
No. W y1 y2 y3 s4 s5 Nilai Kanan Rasio
B0 1 4 -9 0 6 0 18
B1 0 13 0 1 13 0 1 1/0
B2 0 −23 3 0 −23 1 3 3/3=1
Dari tabel, pada persamaan B0 terlihat bahwa -9 (kolom 2) adalah bilangan yang paling negatif sehingga kolom 2 adalah kolom pivot. Pada kolom rasio, terlihat bahwa 3/3 = 1 (baris 2) adalah bilangan paling kecil sehingga baris 2 adalah baris pivot. Sehingga elemen yang terletak pada baris pivot dan kolom pivot adalah 3.
Operasi Baris Elementer (OBE)
Bagi baris pivot dengan 3 supaya koefisien y2 bernilai 1. Supaya koefisien y2 yang lain bernilai 0,
maka dapat dilakukan operasi baris elementer yaitu : jumlahkan baris 0 dengan sembilan kali baris 2.
Lebih jelasnya adalah mengubah kolom pivot
dengan cara sebagai berikut :
Operasi baris elementer (OBE) : 1 3B2 Sehingga diperoleh tabel yang baru adalah :
No. W y1 y2 y3 s4 s5 Nilai Kanan
B0 1 2 0 0 4 3 27
B1 0 13 0 1 13 0 1
B2 0 −29 1 0 29 13 1 Selesai iterasi 2, terlihat bahwa solusinya adalah :
1
3y1+ y3 = 1
−2
9 y1+ y2 = 1 atau bisa ditulis sebagai :
y1 = y1
y2 = 1 +2 9y1 y3 = 1 −1
3y1
Masukkan nilai y1 = 0 sehingga diperoleh y2 = 1, y3 = 1. Sehingga solusi optimalnya adalah (y1, y2, y3) = (0, 1, 1) dengan nilai W = 2(0) + 9(1) + 18(1) = 27.
Bab 4
Metode Heuristik
Terkadang pencarian solusi optimal menggunakan metode Simpleks membutuhkan perhitungan yang rumit dan iterasi yang panjang tergantung dari jumlah variabel keputusan. Metode heuris-tik dapat digunakan untuk pendekatan pencarian solusi optimal. Metode heurisheuris-tik belum tentu menjamin solusi optimal, namun pada umumnya dapat diterima sebagai solusi optimal. Contoh metode heuristik yang akan dibahas adalah masalah penugasan, Travel Salesman Problem (TSP), Knapsack Problem, masalah transportasi, dan Vehicle Routing Problem (VRP).
4.1 Masalah Penugasan
Masalah penugasan adalah menugaskan beberapa pekerja untuk melakukan beberapa tugas yang meminimukan biaya pekerja. Istilah pekerja tidak harus orang, namun bisa juga mesin, kendaraan, pabrik, atau interval waktu.
Yang perlu diperhatikan dalam masalah penugasan adalah : 1. Jumlah pekerja harus sama dengan jumlah tugas.
2. Masing-masing pekerja ditugaskan tepat satu tugas.
3. Masing-masing tugas dikerjakan tepat satu pekerja.
Pertama-tama untuk mempermudah perhitungan, akan dibuat tabel sebagai berikut : Tugas 1 Tugas 2 . . . Tugas n Jumlah pekerja
Pekerja 1 c11 c12 . . . c1n 1
Pekerja 2 c21 c22 . . . c2n 1
... ... ... ... ... ...
Pekerja n cn1 cn2 . . . cnn 1
Jumlah tugas 1 1 . . . 1
Bentuk umum program linear untuk masalah penugasan adalah : min Z = Pn
i=1
Pn
j=1cijxij (4.1)
47
dengan kendala
Pn
j=1xij = 1 i = 1, 2, . . . , n Pn
i=1xij = 1 j = 1, 2, . . . , n (4.2)
xij =
1, jika pekerja i melakukan tugas j;
0, jika pekerja i tidak melakukan tugas j. (4.3) Keterangan dari bentuk di atas adalah :
1. Z adalah fungsi obyektif berupa biaya pekerja.
2. xij(i = 1, 2, . . . , n; j = 1, 2, . . . , n) adalah variabel keputusan apakah pekerja i melakukan tugas j.
3. cij(i = 1, 2, . . . , n; j = 1, 2, . . . , n) adalah biaya yang berhubungan dengan pekerja i melakukan tugas j.
4.1.1 Metode Eliminasi Baris dan Kolom
Langkah-langkah metode eliminasi baris dan kolom adalah sebagai berikut : 1. Pada matriks biaya, tentukan kotak dengan biaya minimum.
2. Eliminasi baris dan kolom yang bersesuian.
3. Ulangi pada langkah menentukan kotak dengan biaya minimum.
Contoh :
Diketahui biaya pekerjaan antara karyawan dan tugasnya adalah sebagai berikut :
Mengetik Mendesain Editor Mencari Data Analisis Jumlah pekerja
Agus 11 34 20 11 23 1
Budi 13 15 29 27 14 1
Caca 24 17 16 22 19 1
Doni 25 31 32 26 28 1
Endah 12 21 33 30 18 1
Jumlah tugas 1 1 1 1 1
Terdapat lima karyawan bernama Agus, Budi, Caca, Doni, dan Endah. Dari kelima karyawan itu akan dilakukan pembagian tugas mengetik, mendesain, editor, mencari data, atau analisis. Adapun biaya pekerjaan antara karyawan dan tugas diberikan dalam tabel. Buatlah penjadwalan antara karyawan dan tugas yang akan memberikan biaya pekerjaan minimum.
Jawab :
4.1. MASALAH PENUGASAN 49 Model matematika pada masalah penugasan di atas adalah :
min Z = 11x11+ 34x12+ 20x13+ 11x14+ 23x15
13x21+ 15x22+ 29x23+ 27x24+ 14x25
24x31+ 17x32+ 16x33+ 22x34+ 19x35
25x41+ 31x42+ 32x43+ 26x44+ 28x45 12x51+ 21x52+ 33x53+ 30x54+ 18x55 dengan kendala
Masing-masing karyawan ditugaskan tepat pada satu tugas.
x11+ x12+ x13+ x14+ x15 = 1 x21+ x22+ x23+ x24+ x25 = 1 x31+ x32+ x33+ x34+ x35 = 1 x41+ x42+ x43+ x44+ x45 = 1 x51+ x52+ x53+ x54+ x55 = 1 Masing-masing tugas dikerjakan tepat pada satu karyawan.
x11+ x21+ x31+ x41+ x51 = 1 x12+ x22+ x32+ x42+ x52 = 1 x13+ x23+ x33+ x43+ x53 = 1 x14+ x24+ x34+ x44+ x54 = 1 x15+ x25+ x35+ x45+ x55 = 1
xij =
1, jika karyawan i melakukan tugas j;
0, jika karyawan i tidak melakukan tugas j.
Metode eliminasi baris dan kolom dapat dilakukan sebagai berikut : Itarasi 1
Nilai minimum berada pada c11= 11, sehingga eliminasi baris 1 dan kolom 1.
Mengetik Mendesain Editor Mencari Data Analisis
Agus 11 34 20 11 23
Budi 13 15 29 27 14
Caca 24 17 16 22 19
Doni 25 31 32 26 28
Endah 12 21 33 30 18
Agus bertugas mengetik.
Biaya : 11
Iterasi 2
Nilai minimum berada pada c25= 14, sehingga eliminasi baris 2 dan kolom 5.
Mengetik Mendesain Editor Mencari Data Analisis
Agus - - - -
-Budi - 15 29 27 14
Caca - 17 16 22 19
Doni - 31 32 26 28
Endah - 21 33 30 18
Agus bertugas mengetik. Budi bertugas analisis.
Biaya : 11+14=25 Iterasi 3
Nilai minimum berada pada c33= 16, sehingga eliminasi baris 3 dan kolom 3.
Mengetik Mendesain Editor Mencari Data Analisis
Agus - - - -
-Budi - - - -
-Caca - 17 16 22
-Doni - 31 32 26
-Endah - 21 33 30
-Agus bertugas mengetik. Budi bertugas analisis. Caca bertugas editor.
Biaya : 11+14+16=41 Iterasi 4
Nilai minimum berada pada c52= 21, sehingga eliminasi baris 5 dan kolom 2.
Mengetik Mendesain Editor Mencari Data Analisis
Agus - - - -
-Budi - - - -
-Caca - - - -
-Doni - 31 - 26
-Endah - 21 - 30
-Agus bertugas mengetik. Budi bertugas analisis. Caca bertugas editor. Endah bertugas mendesain.
Biaya : 11+14+16+21=62 Iterasi 5
Nilai minimum berada pada c44= 26, sehingga eliminasi baris 4 dan kolom 4.
4.1. MASALAH PENUGASAN 51 Mengetik Mendesain Editor Mencari Data Analisis
Agus - - - -
-Budi - - - -
-Caca - - - -
-Doni - - - 26
-Endah - - - -
-Agus bertugas mengetik. Budi bertugas analisis. Caca bertugas editor. Endah bertugas mendesain.
Doni bertugas mencari data.
Biaya : 11+14+16+21+26=88
Dari matriks didapat pembagian tugas : Agus bertugas mengetik, Budi bertugas analisis, Caca bertugas editor, Endah bertugas mendesain, Doni bertugas mencari data, dengan biaya 11 + 14 + 16 + 21 + 26 = 88.
Jadi pendekatan solusi optimalnya adalah :
Metode heuristik tidak menjamin solusi optimal, karena jika pembagian tugas : Agus bertugas mencari data, Budi bertugas mendesain, Caca bertugas editor, Doni bertugas analisis, dan Endah bertugas mengetik maka menghasilkan biaya 11 + 15 + 16 + 28 + 12 = 82 dengan solusi optimalnya adalah :
Langkah-langkah metode Hungarian adalah sebagai berikut :
1. Pada matriks biaya, tentukan masing-masing baris dengan biaya minimum. Kemudian ku-rangkan biaya dengan biaya minimum pada masing-masing baris.
2. Untuk setiap kolom, cari baris yang bernilai 0.
3. Eliminasi baris dan kolom yang bersesuian.
4. Ulangi pada langkah menentukan biaya minimum pada setiap baris.
Contoh :
Diketahui biaya pekerjaan antara karyawan dan tugasnya adalah sebagai berikut :
Mengetik Mendesain Editor Mencari Data Analisis Jumlah pekerja
Agus 11 34 20 11 23 1
Budi 13 15 29 27 14 1
Caca 24 17 16 22 19 1
Doni 25 31 32 26 28 1
Endah 12 21 33 30 18 1
Jumlah tugas 1 1 1 1 1
Terdapat lima karyawan bernama Agus, Budi, Caca, Doni, dan Endah. Dari kelima karyawan itu akan dilakukan pembagian tugas mengetik, mendesain, editor, mencari data, atau analisis. Adapun biaya pekerjaan antara karyawan dan tugas diberikan dalam tabel. Buatlah penjadwalan antara karyawan dan tugas yang akan memberikan biaya pekerjaan minimum.
Jawab :
Model matematika pada masalah penugasan di atas adalah :
min Z = 11x11+ 34x12+ 20x13+ 11x14+ 23x15
13x21+ 15x22+ 29x23+ 27x24+ 14x25
24x31+ 17x32+ 16x33+ 22x34+ 19x35 25x41+ 31x42+ 32x43+ 26x44+ 28x45 12x51+ 21x52+ 33x53+ 30x54+ 18x55
dengan kendala
Masing-masing karyawan ditugaskan tepat pada satu tugas.
x11+ x12+ x13+ x14+ x15 = 1 x21+ x22+ x23+ x24+ x25 = 1 x31+ x32+ x33+ x34+ x35 = 1 x41+ x42+ x43+ x44+ x45 = 1 x51+ x52+ x53+ x54+ x55 = 1 Masing-masing tugas dikerjakan tepat pada satu karyawan.
x11+ x21+ x31+ x41+ x51 = 1 x12+ x22+ x32+ x42+ x52 = 1 x13+ x23+ x33+ x43+ x53 = 1 x14+ x24+ x34+ x44+ x54 = 1 x15+ x25+ x35+ x45+ x55 = 1
xij =
1, jika karyawan i melakukan tugas j;
0, jika karyawan i tidak melakukan tugas j.
Metode Hungarian dapat dilakukan sebagai berikut :
4.1. MASALAH PENUGASAN 53 Itarasi 1
Tentukan baris minimum dan kurangkan nilai setiap biaya dengan baris minimum yang bersesuaian.
Mengetik Mendesain Editor Mencari Data Analisis Baris minimum
Agus 11-11=0 34-11=23 20-11=9 11-11=0 23-11=12 11
Budi 13-13=0 15-13=2 29-13=16 27-13=14 14-13=1 13
Caca 24-16=8 17-16=1 16-16=0 22-16=2 19-16=3 16
Doni 25-25=0 31-25=6 32-25=7 26-25=1 28-25=3 25
Endah 12-12=0 21-12=9 33-12=21 30-12=18 18-12=6 12
Untuk setiap kolom, tentukan baris yang menghasilkan nilai 0.
Mengetik : min(11, 13, 25, 12) = 11.
Agus bertugas mengetik.
Editor : min(16) = 16.
Caca bertugas editor.
Biaya : 11+16=27 Iterasi 2
Tentukan baris minimum dan kurangkan nilai setiap biaya dengan baris minimum yang bersesuaian.
Mengetik Mendesain Editor Mencari Data Analisis Baris minimum
Agus - - -
-Budi - 2-1=1 - 14-1=13 1-1=0 1
Caca - - -
-Doni - 6-1=5 - 1-1=0 3-1=2 1
Endah - 9-6=3 - 18-6=12 6-6=0 6
Untuk setiap kolom, tentukan baris yang menghasilkan nilai 0.
Mencari data : min(1) = 1.
Doni bertugas mencari data.
Analisis : min(6) = 6.
Endah bertugas analisis.
Biaya : 27+26+18=71 Iterasi 3
Tentukan baris minimum dan kurangkan nilai setiap biaya dengan baris minimum yang bersesuaian.
Mengetik Mendesain Editor Mencari Data Analisis Baris minimum
-Untuk setiap kolom, tentukan baris yang menghasilkan nilai 0.
Mendesain : min(1) = 1.
Budi bertugas mendesain.
Biaya : 71+15=86
Dari matriks didapat pembagian tugas : Agus bertugas mengetik, Caca bertugas editor, Doni bertu-gas mencari data, Endah bertubertu-gas analisis, Budi bertubertu-gas mendesain, dengan biaya 11 + 16 + 26 + 18 + 15 = 86.
Jadi pendekatan solusi optimalnya adalah :
Metode heuristik tidak menjamin solusi optimal, karena jika pembagian tugas : Agus bertugas mencari data, Budi bertugas mendesain, Caca bertugas editor, Doni bertugas analisis, dan Endah bertugas mengetik maka menghasilkan biaya 11 + 15 + 16 + 28 + 12 = 82 dengan solusi optimalnya adalah :
4.2 Traveling Salesman Problem (TSP)
Masalah Traveling Salesman Problem (TSP) adalah menemukan perjalanan terpendek melalui se-mua kota dengan setiap kota dilintasi tepat satu kali kemudian kembali ke tempat asal. Ilustrasi pada masalah TSP dapat dilihat pada Gambar 4.2.
4.2. TRAVELING SALESMAN PROBLEM (TSP) 55
Gambar 4.2. Traveling Salesman Problem
Bentuk umum program linear untuk masalah TSP adalah : min Z = Pn
i=1
Pn
j=1dijxij (4.4)
dengan kendala
Pn
j=1xij = 1 i = 1, 2, . . . , n Pn
i=1xij = 1 j = 1, 2, . . . , n (4.5)
xij =
1, jika kota j dicapai dari kota i;
0, jika kota j tidak dicapai dari kota i.
xij ≥ 0
(4.6)
Keterangan dari bentuk di atas adalah :
1. Z adalah fungsi obyektif berupa jarak tempuh.
2. xij(i = 1, 2, . . . , n; j = 1, 2, . . . , n) adalah variabel keputusan apakah kota j dicapai dari kota i.
3. dij(i = 1, 2, . . . , n; j = 1, 2, . . . , n) adalah jarak antara kota i dengan kota j.
4.2.1 Metode Nearest Neighbor
Langkah-langkah metode Nearest Neighbor adalah sebagai berikut : 1. Tentukan titik asal dari perjalanan.
2. Tentukan titik yang bertangga dengan titik asal dengan jarak paling minimum.
3. Jadikan titik yang bertangga tersebut sebagai titik asal.
3. Jadikan titik yang bertangga tersebut sebagai titik asal.