• Tidak ada hasil yang ditemukan

Metode Cutting Plane

Dalam dokumen RISET OPERASI DAN KOMPUTASI (Halaman 169-0)

BAB 8 Pemrograman Bilangan Bulat (Integer Programming)

8.3 Metode Cutting Plane

8.3 Metode Cutting Plane

Metode Cutting Plane adalah metode yang memodifikasi daerah solusi dengan menambahkan garis potong (cut) yang akan menghasilkan solusi bilangan bulat optimal.

8.3.1 Tahap Awal (Inisialisasi)

1. Selesaikan masalah linear programming menggunakan metode Simpleks.

2. Modifikasi koefisien yang bukan bilangan bulat ke dalam nilai bilangan bulat dan komponen pecahan. Komponen pecahan harus bernilai positif. Pisahkan komponen pecahan berada pada ruas kanan persamaan.

3. Berilah tanda pada komponen pecahan dengan ≤ 0. Tambahkan variabel slack supaya menjadi persamaan.

8.3.2 Tahap Optimisasi

Pilih salah satu dari konstrain untuk menjadi source row. Tambahkan ke dalam baris baru pada tabel Simpleks. Lakukan operasi baris elementer (OBE) untuk menghasilkan solusi.

8.3.3 Tahap Pemberhentian

Tahap pemberhentian terjadi ketika semua solusi adalah bilangan bulat. Contoh : Diketahui masalah program linear sebagai berikut :

max Z = 7x1+ 10x2 dengan kendala

−x1+ 3x2 ≤ 6 7x1+ x2 ≤ 35

x1, x2 ≥ 0 x1, x2∈ B Tentukan solusi optimalnya.

Jawab :

Pertama-tama buatlah grafik kendalanya seperti pada Gambar 8.3.3.

Gambar 8.3.3. Grafik Kendala Metode Cutting Plane

Berdasarkan Gambar 8.3.3, penyelesaian metode Cutting Plane adalah : Z = 66, 5 x1 = 4, 5 x2 = 3, 5

Tambahkan cut I sehingga menjadi :

Z = 62 x1 = 447 x2 = 3 Tambahkan cut II sehingga menjadi :

Z = 58 x1 = 4 x2 = 3 Untuk perhitungannya adalah sebagai berikut :

Iterasi 1

No. Z x1 x2 s3 s4 Solusi B0 1 0 0 6322 3122 6612 B1 0 0 1 227 221 312 B2 0 1 0 −221 223 412

Dari tabel, terlihat bahwa solusi x1 = 412 dan x2 = 312 tidak berbentuk bilangan bulat. Nilai pada tabel Simpleks dapat dibentuk menjadi sistem persamaan berikut :

Z +63

22s3+31

22s4 = 661 2 0 x2+ 7

22s3+ 1

22s4 = 31

2 1

x1− 1

22s3+ 3

22s4 = 41

2 2

Dari baris 0, faktorkan persamaan menjadi : Z + 63

22s3+31

22s4 = 661 2 Z + (2 +19

22)s3+ (1 + 9

22)s4 = (66 +1 2) Z + 2s3+ s4− 66 = −19

22s3− 9

22s4+1 2

8.3. METODE CUTTING PLANE 161 Pada komponen pecahan, ubahlah menjadi pertidaksamaan.

−19

22s3− 9 22s4+1

2 ≤ 0 Dari baris 2, faktorkan persamaan menjadi :

x1− 1 Pada komponen pecahan, ubahlah menjadi pertidaksamaan.

−21

22s3− 3 22s4+1

2 ≤ 0 Dari baris 1, faktorkan persamaan menjadi :

x2+ 7 Pada komponen pecahan, ubahlah menjadi pertidaksamaan.

− 7

22s3− 1 22s4+1

2 ≤ 0

Kemudian ambil salah satu baris pertidaksamaan, misalkan baris 1.

− 7

22s3− 1 22s4+1

2 ≤ 0 Tambahkan variabel slack s5 sehingga menjadi persamaan.

−7

22s3− 1

22s4+ s5 = −1 2 Tambahkan ke dalam tabel simpleks.

No. Z x1 x2 s3 s4 s5 Solusi B0 1 0 0 6322 3122 0 6612 B1 0 0 1 227 221 0 312 B2 0 1 0 −221 223 0 412 B3 0 0 0 −227221 1 −12

Operasi Baris Elementer (OBE)

Bagi baris pivot dengan −227 supaya koefisien s3 bernilai 1. Supaya koefisien s3 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan 6322 kali baris 3, kurangkan baris 1 dengan 227 kali baris 3, jumlahkan baris 2 dengan 221 kali baris 3.

Lebih jelasnya adalah mengubah kolom pivot

Operasi baris elementer (OBE) : −22 7 B3 Sehingga diperoleh tabel yang baru adalah :

No. Z x1 x2 s3 s4 s5 Solusi

B0 1 0 0 0 1 9 62

B1 0 0 1 0 0 1 3

B2 0 1 0 0 1717 447 B3 0 0 0 1 17227 147

8.3. METODE CUTTING PLANE 163 Dari tabel terlihat bahwa solusi x1 = 447 bukan bilangan bulat.

Kemudian ambil salah satu baris pertidaksamaan.

x1+1 Tambahkan variabel slack s6 sehingga menjadi persamaan.

−1 7s4−6

7s5+ s6 = −4 7 Tambahkan ke dalam tabel simpleks.

No. Z x1 x2 s3 s4 s5 s6 Solusi Operasi Baris Elementer (OBE)

Bagi baris pivot dengan −17 supaya koefisien s4 bernilai 1. Supaya koefisien s4 yang lain bernilai 0, maka dapat dilakukan operasi baris elementer yaitu : kurangkan baris 0 dengan baris 4, kurangkan baris 2 dengan 17 kali baris 4, kurangkan baris 3 dengan 17 kali baris 4.

Lebih jelasnya adalah mengubah kolom pivot

dengan cara sebagai berikut

: Operasi baris elementer (OBE) : −7B4

0 0 0 0 −1767 1 = −47 | × −7| 0 0 0 0 1 6 −7 = 4 Operasi baris elementer (OBE) : B0− B4

1 0 0 0 1 9 0 = 62 | × 1| 1 0 0 0 1 9 0 = 62

0 0 0 0 1 6 −7 = 4 | × −1| 0 0 0 0 −1 −6 7 = −4

1 0 0 0 0 3 7 = 58 Operasi baris elementer (OBE) : B217B4

0 1 0 0 1717 0 = 447 | × 1| 0 1 0 0 1717 0 = 447 0 0 0 0 1 6 −7 = 4 | × (−17)| 0 0 0 0 −1767 1 = −47

0 1 0 0 0 −1 1 = 4

Operasi baris elementer (OBE) : B317B4

0 0 0 1 17227 0 = 147 | × 1| 0 0 0 1 17227 0 = 147 0 0 0 0 1 6 −7 = 4 | × (−17)| 0 0 0 0 −1767 1 = −47

0 0 0 1 0 −4 1 = 1

Sehingga diperoleh tabel yang baru adalah :

No. Z x1 x2 s3 s4 s5 s6 Solusi

B0 1 0 0 0 0 3 7 58

B1 0 0 1 0 0 1 0 3

B2 0 1 0 0 0 -1 1 4

B3 0 0 0 1 0 -4 1 1

B4 0 0 0 0 1 6 -7 4

Dari tabel terlihat bahwa solusi x1= 4 dan x2 = 3 adalah bilangan bulat dengan nilai Z = 58.

Bab 9

Pemrograman Multiobyektif

Pemrograman multiobyektif yang banyak diterapkan pada masalah sehari-hari adalah Goal Pro-gramming dan Analytic Hierarchy Process (AHP). Goal ProPro-gramming digunakan ketika terdapat lebih dari obyektif dan diurutkan berdasarkan prioritas. AHP pada umumnya digunakan pada masalah pemilihan dengan mempertimbangkan kriteria.

9.1 Goal Programming

Goal Programming adalah teknik yang digunakan untuk menyelesaikan masalah optimisasi dengan kendala dimana terdapat prioritas urutan tujuan (obyektif) harus tercapai.

Bentuk matematika Goal Programming adalah sebagai berikut : lexmin{z1=Pm0

i=1(w1i+d+i + w1idi ), ..., zp =Pm0

i=1(w+qid+i + wqidi )}

dengan kendala :

fi(x) + di − d+i = bi, i = 1, 2, ..., m0

gi(x) ≤ 0, i = m0+ 1, ..., m1 hi(x) = 0, i = m1+ 1, ..., m2 di , d+i ≥ 0,

dimana lexmin adalah lexikograf yang meminimumkan fungsi obyektif. Pada metode lexikograf, fungsi obyektif terdapat lebih dari satu dan diurutkan berdasarkan tingkat kepentingan. Solusi optimal ditentukan dengan meminimumkan fungsi obyektif yang dimulai dari yang paling penting secara berurutan tingkat kepentingan.

Parameter pada goal programming adalah :

d+i : variabel deviasi positif yang menyatakan kelebihan dari tujuan i.

di : variabel deviasi negatif yang menyatakan kekurangan dari tujuan i.

wki+ : bobot positif dari d+i . wki : bobot negatif dari di .

fi : kendala tujuan (goal constraints)

165

gi : kendala pertidaksamaan hi : kendala persamaan bi : nilai target dari tujuan i

Dalam penyelesaian Goal Programming, terdapat dua metode, yaitu :

1. Metode Bobot. Terdapat satu fungsi obyektif yang merupakan jumlahan berbobot.

2. Metode Pre-emptive. Terdapat banyak (multiple) fungsi obyektif berdasarkan prioritas kepentingan.

Contoh :

Suatu perusahaan periklanan (radio dan televisi) akan mempromosikan suatu produk dengan kendala sebagai berikut :

4x1+ 8x2 ≥ 45 8x1+ 24x2 ≤ 100

x1+ 2x2 ≤ 10 x1 ≤ 6

1. Ubahlah model di atas menjadi bentuk Goal Programming dengan mengubah kendala pertama dan kendala kedua menjadi kendala tujuan.

2. Selesaikan dengan metode bobot dengan asumsi kendala tujuan pertama dua kali lebih penting daripada kendala tujuan kedua.

3. Selesaikan dengan metode pre-emptive dengan asumsi kendala tujuan pertama lebih penting daripada kendala tujuan kedua.

Jawab : a.

Diketahui kendala pertama dan kendala kedua adalah : 4x1+ 8x2 ≥ 45 8x1+ 24x2 ≤ 100

Jika diubah menjadi kendala tujuan (goal constraint), maka menjadi : lexmin(s1, s+2)

dengan kendala :

4x1+ 8x2+ s1 − s+1 = 45 8x1+ 24x2+ s2 − s+2 = 100

x1+ 2x2 ≤ 10 x1≤ 6

x1, x2, s1, s+1, s2, s+2 ≥ 0

9.1. GOAL PROGRAMMING 167 b.

Pada metode bobot, karena kendala tujuan pertama dua kali lebih penting daripada kendala tujuan kedua, maka bentuk Goal Programming menjadi :

min Z = 2s1 + s+2 dengan kendala :

4x1+ 8x2+ s1 − s+1 = 45 8x1+ 24x2+ s2 − s+2 = 100

x1+ 2x2 ≤ 10 x1 ≤ 6

x1, x2, s1, s+1, s2, s+2 ≥ 0 Pertama-tama, tentukan solusi optimal dari kendala berikut :

x1+ 2x2 ≤ 10 x1 ≤ 6

Solusi optimal yang diperoleh adalah : x1 = 5 dan x2 = 2, 5. Kemudian masukkan nilai x1 dan x2 pada kendala tujuan pertama dan kendala tujuan kedua.

Kendala tujuan pertama :

4(5) + 2(2, 5) = 40

Karena kendala tujuan pertama dilanggar (40 < 45), maka nilai dari s1 = 45 − 40 = 5.

Kendala tujuan kedua :

8(5) + 24(2, 5) = 100 Karena kendala tujuan kedua dipenuhi, maka nilai dari s+2 = 0.

Sehingga nilai Z = 2(5) + 0 = 10.

c.

Pada metode Pre-emptive, karena kendala tujuan pertama lebih penting daripada kendala tujuan kedua, maka bentuk Goal Programming menjadi :

lexmin(s1, s+2) dengan kendala :

4x1+ 8x2+ s1 − s+1 = 45 8x1+ 24x2+ s2 − s+2 = 100

x1+ 2x2 ≤ 10 x1 ≤ 6

x1, x2, s1, s+1, s2, s+2 ≥ 0

Pertama-tama, tentukan solusi optimal dari kendala berikut : x1+ 2x2 ≤ 10

x1 ≤ 6

Solusi optimal yang diperoleh adalah : x1 = 5 dan x2= 2, 5. Kemudian masukkan nilai x1 dan x2

pada kendala tujuan pertama dan kendala tujuan kedua.

Kendala tujuan pertama :

4(5) + 2(2, 5) = 40

Karena kendala tujuan pertama dilanggar (40 < 45), maka nilai dari s1 = 45 − 40 = 5.

Kendala tujuan kedua :

8(5) + 24(2, 5) = 100 Karena kendala tujuan kedua dipenuhi, maka nilai dari s+2 = 0.

Sehingga nilai Z = (5, 0).

9.2 Analytic Hierarchy Process (AHP)

Analytic Hierarchy Process (AHP) digunakan untuk menyelesaikan masalah pengambilan keputusan dengan banyak kriteria (multicriteria).

Langkah-langkah AHP adalah :

1. Menentukan matriks perbandingan pasangan (pairwise comparison maatrix) dengan nilai :

pij =

( c, Jika kriteria i lebih penting daripada kriteria j;

1

c, Jika kriteria j lebih penting daripada kriteria i.

2. Jumlahkan setiap kolom pada matriks perbandingan pasangan.

3. Bagi setiap elemen pij dengan nilai jumlah kolom yang bersesuaian sehingga menghasilkan matriks perbandingan pasangan dalam bentuk normal.

4. Hitung rata-rata setiap baris pada matriks perbandingan pasangan dalam bentuk normal.

Semakin tinggi nilai rata-ratanya, semakin penting kriterianya.

5. Untuk setiap jenis obyek, buatlah matriks perbandingan pasangan sesuai dengan langkah 1-3.

6. Buatlah ranking prioritas pemilihan obyek.

9.2. ANALYTIC HIERARCHY PROCESS (AHP) 169 Contoh :

Seorang pembeli ingin membeli sebuah mobil dengan mempertimbangkan kriteria : harga (x1), kehematan bahan bakar (x2), kenyamanan (x3), dan model (x4). Setelah proses seleksi, terdapat 3 mobil (mobil A, mobil B, mobil C) yang akan dipilih menjadi 1 mobil. Buatlah ranking prioritas pemilihan mobil yang akan dibeli.

Jawab :

Tentukan nilai c dari prioritas.

Kriteria Nilai Tentukan prioritas dari kombinasi kriteria pemilihan mobil.

Perbandingan pasangan Kriteria paling penting Prioritas c

x1− x2 x1 7

Buatlah matriks perbandingan pasangan sebagai berikut :

(x1) (x2) (x3) (x4)

Jumlah 1,476 24 13,125 7,295

Bagi setiap elemen pij dengan nilai jumlah kolom yang bersesuaian sehingga menghasilkan matriks perbandingan pasangan dalam bentuk normal.

(x1) (x2) (x3) (x4) (x1) 0,677 0,292 0,457 0,823 (x2) 0,097 0,042 0,010 0,017 (x3) 0,113 0,333 0,076 0,023 (x4) 0,113 0,333 0,457 0,137 Hitunglah rata-rata setiap baris dan tentukan peringkat pada prioritas.

(x1) (x2) (x3) (x4) Rata-rata Peringkat (x1) 0,677 0,292 0,457 0,823 0,562 1 (x2) 0,097 0,042 0,010 0,017 0,041 4 (x3) 0,113 0,333 0,076 0,023 0,136 3 (x4) 0,113 0,333 0,457 0,137 0,260 2 Untuk setiap mobil, buatlah matriks perbandingan pasangan.

Kriteria : Harga (x1)

Mobil A Mobil B Mobil C

Mobil A 1 1

3

1 4

Mobil B 3 1 1

Mobil C 4 2 21

Kriteria : Kehematan bahan bakar (x2)

Mobil A Mobil B Mobil C

Mobil A 1 1

4

1 6

Mobil B 4 1 1

Mobil C 6 3 31

Kriteria : Kenyamanan (x3)

Mobil A Mobil B Mobil C

Mobil A 1 2 8

Mobil B 1

2 1 6

Mobil C 1

8

1

6 1

Kriteria : Model (x4)

9.2. ANALYTIC HIERARCHY PROCESS (AHP) 171 Mobil A Mobil B Mobil C

Mobil A 1 1

3 4

Mobil B 3 1 7

Mobil C 1

4

1

7 1

Sehingga diperoleh rata-rata kriteria sebagai berikut :

Harga (x1) Kehematan bahan bakar (x2) Kenyamanan (x3) Model (x4)

Mobil A 0,123 0,087 0,593 0,265

Mobil B 0,320 0,274 0,341 0,656

Mobil C 0,557 0,639 0,065 0,080

Gunakan AHP untuk menentukan prioritas pada masing-masing obyek.

Mobil A : 0,562(0,123)+0,041(0,087)+0,136(0,593)+0,260(0,265)=0,223 Mobil B : 0,562(0,320)+0,041(0,274)+0,136(0,341)+0,260(0,656)=0,408 Mobil C : 0,562(0,557)+0,041(0,639)+0,136(0,065)+0,260(0,080)=0,369

Dari hasil perhitungan, dapat disimpulkan : mobil B adalah prioritas pertama, mobil C adalah prioritas kedua, dan mobil A adalah prioritas ketiga.

Bab 10

Pengantar Pemrograman Dinamis

Pemrograman dinamis merupakan suatu teknik untuk membuat urutan suatu keputusan secara sistematis. Pada buku ini akan dibahas sekilas penggunaan pemrograman dinamis pada pencarian rute terpendek pada Stagecoach Problem dan Bounded Knapsack Problem.

10.1 Stagecoach Problem

Contoh :

Seorang pengembara melakukan perjalanan dari titik A ke titik J untuk mencari emas. Jaringan pada Stagecoach Problem dapat dilihat pada Gambar ??, dimana pada jaringan tersebut dapat dibagi menjadi empat stage mulai dari titik awal A ke titik tujuan J. Angka yang tertera pada gambar adalah biaya perjalanan. Tentukan rute yang manakah yang harus diambil pengembara tersebut supaya biaya perjalanan minimum.

Gambar 10.1. Jaringan pada Stagecoach Problem

10.1.1 Rekursif Maju

Dari jaringan tersebut dapat dibentuk empat stage sehingga dapat dibentuk empat matriks jarak sebagai berikut :

173

Gambar 10.1.2. Empat Stage pada Stagecoach Problem

A

B 2

C 4

D 3

B C D

E 7 3 4

F 4 2 1

G 6 4 5

E F G

H 1 6 3

I 4 3 3

H I

J 3 4

Stage 1

Hitung jarak menuju titik B, C, D dari titik A.

s f1(s, x1) f1(s) x1 A

B 2 2 A

C 4 4 A

D 3 3 A

Stage 2

Hitung jarak menuju titik E, F, G dari titik B, C, D. Kemudian tentukan jarak minimumnya secara kumulatif.

10.1. STAGECOACH PROBLEM 175 s f2(s, x2) f2(s) x2

B C D

E 2+7=9 4+3=7 3+4=7 7 C,D

F 2+4=6 4+2=6 3+1=4 4 D

G 2+6=8 4+4=8 3+5=8 8 B,C,D

Stage 3

Hitung jarak menuju titik H, I dari titik E, F, G. Kemudian tentukan jarak minimumnya secara kumulatif.

s f3(s, x3) f3(s) x3

E F G

H 7+1=8 4+6=10 8+3=11 8 E

I 7+4=11 4+3=7 8+3=11 7 F

Stage 4

Hitung jarak menuju titik J dari titik H, I. Kemudian tentukan jarak minimumnya secara kumulatif.

s f4(s, x4) f4(s) x4

H I G

J 8+3=11 7+4=11 11 H,I Jadi rute yang terpilih ada 3 yaitu :

1. Perhatikan stage 4. Untuk menuju s = J , maka harus melewati x4 = H. Lompat ke stage 3.

Untuk menuju s = H, maka harus melewati x3 = E. Lompat ke stage 2.

Untuk menuju s = E, maka harus melewati x2 = C. Lompat ke stage 1.

Untuk menuju s = C, maka harus melewati x1 = A.

Jadi rutenya adalah A → C → E → H → J dengan jarak 4 + 3 + 1 + 3 = 11.

2. Perhatikan stage 4. Untuk menuju s = J , maka harus melewati x4 = H. Lompat ke stage 3.

Untuk menuju s = H, maka harus melewati x3 = E. Lompat ke stage 2.

Untuk menuju s = E, maka harus melewati x2 = D. Lompat ke stage 1.

Untuk menuju s = D, maka harus melewati x1 = A.

Jadi rutenya adalah A → D → E → H → J dengan jarak 3 + 4 + 1 + 3 = 11.

3. Perhatikan stage 4. Untuk menuju s = I, maka harus melewati x4= I. Lompat ke stage 3.

Untuk menuju s = I, maka harus melewati x3 = F . Lompat ke stage 2.

Untuk menuju s = F , maka harus melewati x2 = D. Lompat ke stage 1.

Untuk menuju s = D, maka harus melewati x1 = A.

Jadi rutenya adalah A → D → F → I → J dengan jarak 3 + 1 + 3 + 4 = 11.

10.1.2 Rekursif Mundur

Dari jaringan tersebut dapat dibentuk empat stage sehingga dapat dibentuk empat matriks jarak sebagai berikut :

Gambar 10.1.2. Empat Stage pada Stagecoach Problem

J

H 3

I 4 H I

E 1 4

F 6 3

G 3 3

E F G

B 7 4 6

C 3 2 4

D 4 1 5

B C D

A 2 4 3

Stage 4

Hitung jarak menuju titik H, I dari titik J.

s f4(s, x4) f4(s) x4 J

H 3 3 J

I 4 4 J

Stage 3

Hitung jarak menuju titik E, F, G dari titik H, I. Kemudian tentukan jarak minimumnya secara

10.1. STAGECOACH PROBLEM 177 kumulatif.

s f3(s, x3) f3(s) x3

H I

E 3+1=4 4+4=8 4 H

F 3+6=9 4+3=7 7 I

G 3+3=6 4+3=7 6 H

Stage 2

Hitung jarak menuju titik B, C, D dari titik E, F, G. Kemudian tentukan jarak minimumnya secara kumulatif.

s f2(s, x2) f2(s) x2

E F G

B 4+7=11 7+4=11 6+6=12 11 E,F

C 4+3=7 7+2=9 6+4=10 7 E

D 4+4=8 7+1=8 6+5=11 8 E,F

Stage 1

Hitung jarak minimum menuju titik A dari titik B, C, D. Kemudian tentukan jarak minimumnya secara kumulatif.

s f1(s, x1) f1(s) x1

B C D

A 11+2=13 7+4=11 8+3=11 11 C,D Jadi rute yang terpilih ada 3 yaitu :

1. Perhatikan stage 1. Untuk menuju s = A, maka harus melewati x1= C. Lompat ke stage 2.

Untuk menuju s = C, maka harus melewati x2 = E. Lompat ke stage 3.

Untuk menuju s = E, maka harus melewati x3 = H. Lompat ke stage 4.

Untuk menuju s = H, maka harus melewati x4 = J .

Jadi rutenya adalah A → C → E → H → J dengan jarak 4 + 3 + 1 + 3 = 11.

2. Perhatikan stage 1. Untuk menuju s = A, maka harus melewati x1= D. Lompat ke stage 2.

Untuk menuju s = D, maka harus melewati x2 = E. Lompat ke stage 3.

Untuk menuju s = E, maka harus melewati x3 = H. Lompat ke stage 4.

Untuk menuju s = H, maka harus melewati x4 = J .

Jadi rutenya adalah A → D → E → H → J dengan jarak 3 + 4 + 1 + 3 = 11.

3. Perhatikan stage 1. Untuk menuju s = A, maka harus melewati x1= D. Lompat ke stage 2.

Untuk menuju s = D, maka harus melewati x2 = F . Lompat ke stage 3.

Untuk menuju s = F , maka harus melewati x3= I. Lompat ke stage 4.

Untuk menuju s = I, maka harus melewati x4 = J .

Jadi rutenya adalah A → D → F → I → J dengan jarak 3 + 1 + 3 + 4 = 11.

10.2 Bounded Knapsack Problem

Bentuk umum dari program linear untuk Bounded Knapsack Problem adalah :

max Z = r1m1+ r2m2+ . . . + rnmn (10.1) dengan kendala

w1m1+ w2m2+ . . . + wnmn ≤ W (10.2)

m1 ≥ 0, m2 ≥ 0, . . . , mn≥ 0 (10.3) Keterangan dari bentuk di atas adalah :

ri(i = 1, 2, ..., n) adalah keuntungan dari barang i.

mi(i = 1, 2, ..., n) adalah jumlah unit dari barang i.

wi(i = 1, 2, ..., n) adalah bobot unit i.

Contoh :

Suatu truk dengan kapasitas muatan 4 ton akan diisi 3 jenis barang (barang 1, barang 2, dan barang 3) yang memiliki bobot dan keuntungan yang berbeda seperti pada tabel.

Barang i Bobot wi Keuntungan ri

1 2 31

2 3 47

3 1 14

Tentukan berapa banyak barang dari tiap jenis barang yang dapat dimasukkan ke dalam truk sehingga memberikan keuntungan maksimum.

Jawab :

Dari permasalahan di atas, bentuk program linear berbentuk adalah sebagai berikut : max Z = 31m1+ 47m2+ 14m3

dengan kendala

2m1+ 3m2+ m3 ≤ 4 m1≥ 0, m2 ≥ 0, m3 ≥ 0

Program linear di atas dapat diselesaikan dengan cara rekursif mundur.

Stage 3

10.2. BOUNDED KNAPSACK PROBLEM 179

Karena max(m3) = 4, maka jumlah barang 3 yang boleh dimasukkan adalah 0, 1, 2, 3, 4.

m3= {0, 1, 2, 3, 4}

f3(x3) = maxm3=0,1,2,3,4(14m3)

x3 14m3 Solusi Optimal

m3 = 0 m3 = 1 m3= 2 m3 = 3 m3= 4 f3(x3) m3

Karena max(m2) = 1, maka jumlah barang 2 yang boleh dimasukkan adalah 0, 1.

m2 = {0, 1}

Karena max(m1) = 2, maka jumlah barang 1 yang boleh dimasukkan adalah 0, 1, 2.

m1= {0, 1, 2}

f1(x1) = maxm1=0,1,2(31m1+ f2(x1− 2m1))

x1 31m1+ f2(x1− 2m1) Solusi Optimal

m1 = 0 m1 = 1 m1= 2 f1(x1) m1

0 31(0) + f2(0 − 2(0)) - - 0 0

= 0 + 0 = 0

1 31(0) + f2(1 − 2(0)) - - 14 0

= 0 + 14 = 14

2 31(0) + f2(2 − 2(0)) 31(1) + f2(2 − 2(1)) - 31 1

= 0 + 28 = 28 = 31 + 0 = 31

3 31(0) + f2(3 − 2(0)) 31(1) + f2(3 − 2(1)) - 47 1

= 0 + 47 = 47 = 31 + 14 = 45

4 31(0) + f2(4 − 2(0)) 31(1) + f2(4 − 2(1)) 31(2) + f2(4 − 2(2)) 62 2

= 0 + 61 = 61 = 31 + 28 = 59 = 62 + 0 = 62 Dari tabel di atas, diperoleh m1 yang maksimum adalah 2 dengan x1 = 4.

Jika x1= 4, maka m1 = 2 yang menghasilkan x2= x1− 2m1= 4 − 2(2) = 0.

Jika x2= 0, maka m2 = 0 yang menghasilkan x3= x2− 3m2= 0 − 3(0) = 0.

Jika x3= 0, maka m3 = 0.

Jadi solusi optimalnya adalah (m1, m2, m3) = (2, 0, 0) dengan total keuntungan Z = 31(2) + 47(0) + 14(0) = 62.

Daftar Pustaka

[1] Anderson, D.R. 2012. An Introduction to Management Science Quantitative Approaches to Decision Making. South Western Cengage Learning.

[2] Gen, M. Cheng, R. 1997. Genetic Algorithm and Engineering Design. John Wiley and Sons.

[3] Hillier, F.S. Lieberman, G.J. 2000. Introduction to Operational Research. Mc Graw Hill.

[4] Sulistiyo, Modul Ajar Riset Operasi Matematika ITS.

[5] Taha, H.A. 2007. Operational Research an Introduction. Prentice Hall.

181

Dinita Rahmalia, M.Si. Penulis lahir di Gresik, Jawa Timur tanggal 27 April 1988. Setelah menempuh pendidikan sekolah menengah di Gresik, penulis melanjutkan pendidikan S1 Matematika di Institut Teknologi Sepuluh Nopember tahun 2006-2010, kemudian melajutkan pendidikan S2 Matematika di Institut Teknologi Bandung tahun 2011-2013.

Saat ini penulis bekerja sebagai dosen pengajar di Universitas Islam Darul Ulum Lamongan, dengan mata kuliah Kalkulus, Riset Operasi, Statistika, dan Program Komputer. Selain itu penulis juga aktif melakukan penelitian tentang Riset Operasi dan Optimisasi, Data Mining, Sistem Dinamik dan Kontrol. Lebih lanjut dapat menghub

Email : [email protected] atau [email protected] Dr. Teguh Herlambang. Lahir di Surabaya, Jawa Timur, pada tanggal 22 November 1987. Gelar Sarjana Sains (S.Si) dan Magister Sains (M.Si) diperoleh dari Jurusan di Jurusan Matematika Institut Teknologi Sepuluh Nopember (ITS) pada tahun 2010 dan 2012. Penulis mulai mengajar di Fakultas Teknik Universitas Nahdlatul Ulama Surabaya pada tahun 2013.

Pada tahun 2013, penulis mengikuti program doktor (S-3) di Institut Teknologi Sepuluh Nopember dengan mengambil konsentrasi di bidang Sistem Kendali Kapal Selam Tanpa Awak, dan meraih gelar Doktor (Dr) di Fakultas Teknologi Kelautan pada Tahun 2016.

Mata kuliah yang diajarkan penulis di program S-1 adalah Aljabar Linear, Matematika Diskrit, Statistika, Matematika Ekonomi, Algoritma dan Pemrograman dan Riset Operasi. Selain itu penulis juga aktif melakukan penelitian tentang Sistem Navigasi dan Kendali, Komputasi Numerik, Riset Operasi dan Optimisasi, Pemodelan dan Autonomous Underwater Vehicel (AUV).

Dr. Teguh Herlambang, juga telah mendapatkan beberapa dana hibah peneltian dari Kemenristekdikti dan telah menghasilkan sejumlah publikasi internasional terindex serta melakukan join riset dengan Pusat Unggulan IPTEK Mechatronics and Industrial Automation Research Center ITS (PUI-PT MIA-RC ITS) dalam penelitian Autonomous Underwater Vehicle (AUV), Autonomous Surface Vehicle), Thruster, Arm robot dan beberapa penelitian lainnya.

Email : [email protected]

Dalam dokumen RISET OPERASI DAN KOMPUTASI (Halaman 169-0)