• Tidak ada hasil yang ditemukan

II LANDASAN TEORI Untuk membuat model optimasi alokasi air

2.1 Linear Programming

Fungsi linear dan pertidaksamaan linear merupakan salah satu konsep dasar yang harus dipahami terkait dengan konsep pemrograman linear.

Definisi 1 (Fungsi Linear)

Suatu fungsi f(x1,x2,...,xn)dari 1, 2,..., n

x x x adalah fungsi linear jika dan hanya jika untuk beberapa himpunan dari konstanta c c1, 2,...,cn. . ... ) ,..., , (x1 x2 xn c1x1 c2x2 cnxn f     . (Winston 2004) Definisi 2 (Pertidaksamaan dan Persamaan Linear)

Untuk sembarang fungsi linear )

,..., , (x1 x2 xn

f dan sembarang bilangan b, pertidaksamaan f(x1,x2,...,xn)b dan b x x x f( 1, 2,..., n) adalah pertidaksamaan linear.

Misalkan b sembarang bilangan, suatu persamaan f(x1,x2,...,xn)b merupakan persamaan linear.

(Winston 2004) Pemrograman linear (PL) atau linear programming (LP) adalah suatu masalah optimisasi yang memenuhi ketentuan- ketentuan sebagai berikut:

a) Tujuan masalah tersebut adalah memaksimumkan atau meminimumkan suatu fungsi linear dari sejumlah variabel keputusan. Fungsi yang akan dimaksimumkan atau diminimumkan ini disebut fungsi objektif.

b) Nilai variabel-variabel keputusannya harus memenuhi suatu himpunan kendala. Setiap kendala harus berupa persamaan linear atau pertidaksamaan linear.

c) Ada pembatasan tanda untuk setiap variabel dalam masalah ini. Untuk sembarang variabel

x

i, pembatasan tanda menentukan

x

i harus taknegatif

(x

i

0)

atau tidak dibatasi tandanya (unrestricted in sign).

(Winston 2004) Definisi 3 (Bentuk Standar LP)

Suatu LP dikatakan mempunyai bentuk standar jika dapat dinyatakan ke dalam bentuk berikut:

Minimumkan z = cTx terhadap Ax = b

x 0

b 0 (1) dengan x dan c berupa vektor berukuran n,

vektor b berukuran m, sedangkan A berupa matriks berukuran m×n yang disebut juga sebagai matriks kendala.

(Nash & Sofer 1996) Sebagai catatan, yang dimaksud dengan vektor berukuran n adalah vektor yang memiliki dimensi (ukuran) n×1.

2.1.1 Solusi suatu Linear Programming Untuk menyelesaikan suatu masalah linear programming (LP), metode simpleks merupakan salah satu metode yang dapat menghasilkan solusi optimum. Metode ini mulai dikembangkan oleh Dantzig pada tahun 1947. Dalam perkembangannya, metode ini adalah metode yang paling umum digunakan untuk menyelesaikan LP, yaitu berupa metode iteratif untuk menyelesaikan masalah LP dalam bentuk standar.

Pada LP (1), vektor x yang memenuhi kendala Ax = b disebut solusi dari LP (1). Misalkan matriks A dapat dinyatakan sebagai A = (B N), dengan N adalah matriks yang elemennya berupa koefisien variabel nonbasis pada matriks kendala. Matriks B disebut matriks basis untuk LP (1).

Jika vektor c dituliskan sebagai c = (cB cN) dan vektor x dapat dinyatakan sebagai vektor x = (xB xN)T, dengan xB adalah vektor variabel basis dan xNadalah vektor variabel nonbasis, maka Ax = b dapat dinyatakan sebagai: Ax = (B N)(xB xN)

T

= BxB + NxN = b (2) Karena B adalah matriks taksingular, maka B memiliki invers sehingga dari (2) xB dapat dinyatakan sebagai:

xB = B -1

b – B-1 NxN (3) Kemudian, fungsi objektifnya berubah menjadi:

min z

=

T T

.

B B N N

c x

+

c x Definisi 4 (Solusi Basis)

Solusi dari suatu LP disebut solusi basis jika :

i. solusi tersebut memenuhi kendala pada LP,

ii. kolom-kolom dari matriks koefisien yang berpadanan dengan komponen taknol adalah bebas linear.

3

Definisi 5 (Solusi Fisibel Basis)

Vektor x disebut solusi fisibel basis jika x merupakan solusi basis dan x ≥ 0.

(Nash & Sofer 1996) Ilustrasi solusi basis dan solusi fisibel basis dapat dilihat dalam contoh berikut:

Contoh 1

Misalkan diberikan linear programming berikut: 1 2 min z  x 2x 1 2 3 1 2 4 1 5 1 2 3 4 5 terhadap 2 2, 2 8, 4, , , , , 0. x x x x x x x x x x x x x           

(4)

Dari LP tersebut didapatkan:

. 2 1 1 0 0 2 1 2 0 1 0 , 8 1 0 0 0 1 4                      A b Misalkan dipilih

1 2 3

dan

4 5

, T T x x x x x   B N x x

maka matriks basisnya adalah

, , 2 1 1 0 0 1 1 2 0 0 1/2 1/2 1 0 0 1 1/2 3/2                    -1 B B 0 0 1 0 0 1            N

1 2 0

,

0 0

.     T T B N c c

Dengan menggunakan matriks basis tersebut, diperoleh

, 0 0 = 4 6 4 z = 16. T T      T -1 B N B N -1 -1 x x B b B Nx c B b (5) Solusi (5) merupakan solusi basis, karena solusi tersebut memenuhi kendala pada LP (4) dan kolom-kolom pada matriks kendala yang berpadanan dengan komponen taknol dari (5), yaitu B, adalah bebas linear (kolom yang satu bukan merupakan kelipatan dari kolom yang lain). Solusi (5) juga merupakan solusi basis fisibel, karena nilai-nilai variabelnya lebih dari atau sama dengan nol.

Definisi 6 (Daerah Fisibel)

Daerah fisibel suatu PL adalah himpunan semua titik yang memenuhi semua kendala dan pembatasan tanda pada PL tersebut. (Winston 2004)

Definisi 7 (Solusi Optimum)

Untuk masalah maksimisasi, solusi optimum suatu PL adalah suatu titik dalam daerah fisibel dengan nilai fungsi objektif terbesar. Untuk masalah minimasi, solusi optimum suatu PL adalah suatu titik dalam daerah fisibel dengan nilai fungsi objektif terkecil.

2.2 Integer Programming

Model integer linear programming (ILP) atau disebut juga integer programming (IP) adalah suatu model linear programming dengan variabel yang digunakan berupa bilangan bulat ( integer). Jika semua variabel harus berupa integer, maka masalah tersebut dinamakan pure integer programming. Jika hanya sebagian yang harus berupa integer maka disebut mixed integer programming (MIP). IP dengan semua variabelnya harus bernilai 0 atau 1 disebut 0-1 IP.

(Garfinkel & Nemhauser 1972) Definisi 8 (Linear Programming Relaksasi) LP-relaksasi dari suatu IP merupakan linear programming yang diperoleh dari IP tersebut dengan menghilangkan kendala integer atau kendala 0-1 pada setiap variabelnya.

(Winston 2004) 2.3 Metode Branch-and-Bound untuk Menyelesaikan Masalah Integer Linear Programming

Dalam penulisan karya ilmiah ini, untuk memperoleh solusi optimum dari masalah IP digunakan software LINGO 8.0 yaitu sebuah program yang didesain untuk menentukan solusi model linear, nonlinear, dan optimisasi integer dengan lebih cepat, mudah, dan lebih efisien. Software LINGO 8.0 ini menggunakan metode branch and bound untuk menyelesaikan masalah IP.

Prinsip dasar metode branch and bound adalah memecah daerah fisibel dari masalah PL-relaksasi dengan membuat subproblem- subproblem. Daerah fisibel suatu pemrograman linear adalah daerah yang memuat titik-titik yang dapat memenuhi kendala linear masalah pemrograman linear. Branching (pencabangan) adalah proses membagi-bagi permasalahan menjadi subproblem-subproblem yang mungkin mengarah ke solusi.

Bounding (pembatasan) adalah suatu proses untuk mencari atau menghitung batas atas (dalam masalah minimasi) dan batas bawah (dalam masalah maksimasi) untuk

solusi optimum pada subproblem yang mengarah ke solusi.

Metode branch-and-bound diawali dari menyelesaikan PL-relaksasi dari suatu integer programming. Jika semua nilai variabel keputusan solusi optimum sudah berupa integer, maka solusi tersebut merupakan solusi optimum IP. Jika tidak, dilakukan pencabangan dan penambahan batasan pada PL-relaksasinya kemudian diselesaikan.

Winston (2004) menyebutkan bahwa nilai fungsi objektif optimum untuk IP

nilai fungsi objektif optimum untuk PL-relaksasi (masalah maksimisasi), sehingga nilai fungsi objektif optimum PL-relaksasi merupakan batas atas bagi nilai fungsi objektif optimum untuk masalah IP. Diungkapkan pula dalam (Winston 2004) bahwa nilai fungsi objektif optimum untuk suatu kandidat solusi merupakan batas bawah nilai fungsi objektif optimum untuk masalah IP asalnya. Suatu kandidat solusi diperoleh jika solusi dari suatu subproblem sudah memenuhi kendala integer pada masalah IP, artinya fungsi objektif dan semua variabelnya sudah bernilai integer.

Sebelumnya akan dibahas terlebih dulu pengertian subproblem yang terukur. Menurut Winston (2004), suatu subproblem dikatakan terukur (fathomed) jika terdapat situasi sebagai berikut.

1. Subproblem tersebut takfisibel, sehingga tidak dapat menghasilkan solusi optimum untuk IP.

2. Subproblem tersebut menghasilkan suatu solusi optimum dengan semua variabelnya bernilai integer. Jika solusi optimum ini mempunyai nilai fungsi objektif yang lebih baik daripada solusi fisibel yang diperoleh sebelumnya, maka solusi ini menjadi kandidat solusi optimum dan nilai fungsi objektifnya menjadi batas bawah nilai fungsi objektif optimum bagi masalah IP pada saat itu. Bisa jadi subproblem ini menghasilkan solusi optimum untuk masalah IP.

3. Nilai fungsi objektif optimum untuk subproblem tersebut tidak melebihi (untuk masalah maksimisasi) batas bawah saat itu, maka subproblem ini dapat dieliminasi.

Berikut ini adalah langkah-langkah penyelesaian suatu masalah maksimisasi dengan metode branch-and-bound.

 Langkah 0

Didefinisikan z sebagai batas bawah dari nilai fungsi objektif (solusi) IP yang optimum. Pada awalnya ditetapkan z dan i0.

 Langkah 1

Subproblem PL( )i dipilih sebagai bagian masalah berikutnya untuk diteliti. Subproblem

( )i

PL diselesaikan dan diukur dengan kondisi yang sesuai.

a) Jika PL( )i terukur, batas bawah z diperbarui jika solusi IP yang lebih baik ditemukan. Jika tidak, bagian masalah (subproblem) baru i dipilih dan langkah 1 diulangi. Jika semua subproblem telah diteliti, maka proses dihentikan.

b) Jika PL( )i tidak terukur, proses dilanjutkan ke Langkah 2 untuk melakukan pencabangan

( )i PL .

 Langkah 2

Dipilih salah satu variabel xj yang nilai

optimumnya adalah x*j yang tidak memenuhi

batasan integer dalam solusi

PL

( )i . Bidang

1 ] [ ]

[x*jxjx*j  disingkirkan dengan membuat dua subproblem PL yang berkaitan menjadi dua subproblem yang tidak dapat dipenuhi secara bersamaan, yaitu

*

[ ]

j j

x

x

dan

x

j

[x

*j

] 1

,

dengan [x*j] didefinisikan sebagai integer terbesar yang kurang dari atau sama dengan

. *

j

x Kembali ke Langkah 1.

(Taha 1996) Untuk memudahkan pemahaman metode branch-and-bound diberikan contoh sebagai berikut.

Contoh 1

Misalkan diberikan integer programming berikut: maxz x y terhadap 2x5y16 (6)

6x5y30

x y,0

x y, integer

Solusi optimum PL-relaksasi dari masalah IP (6) adalah x=3.5, y=1.8, dan z=5.3 (lihat pada Lampiran 1). Batas atas nilai optimum fungsi objektif masalah (6) adalah z=5.3. Daerah fisibel masalah (6) ditunjukkan pada Gambar 1. Solusi optimum berada pada titik perpotongan dua garis yang berasal dari kendala pertidaksamaan masalah (6).

5

Out[5]=

Gambar 1 Daerah fisibel (daerah yang diarsir) untuk PL-relaksasi dari IP (6). Langkah berikutnya adalah memartisi daerah fisibel PL-relaksasi menjadi dua bagian berdasarkan variabel yang berbentuk pecahan (non-integer). Dipilih x sebagai dasar pencabangan. Jika masalah PL-relaksasi diberi nama Subproblem 1, maka pencabangan tersebut menghasilkan 2 subproblem, yaitu:

 Subproblem 2: Subproblem 1 ditambah kendalax3.

 Subproblem 3: Subproblem 1 ditambah kendalax4.

Hal ini diilustrasikan secara grafis pada Gambar 2.

Gambar 2 Daerah fisibel untuk Subproblem 2 dan Subproblem 3.

Setiap titik (solusi) fisibel dari IP (6) termuat dalam daerah fisibel Subproblem 2 atau Subproblem 3. Setiap subproblem ini saling lepas. Subproblem 2 dan Subproblem 3 dikatakan dicabangkan atas x.

Sekarang dipilih subproblem yang belum diselesaikan. Misalkan dipilih Subproblem 2,

kemudian diselesaikan. Solusi optimum untuk Subproblem 2 adalah x=3, y=2, dan z=5 (lihat Lampiran 1). Semua variabel bernilai integer (solusi memenuhi kendala bilangan bulat), maka tidak perlu dilakukan pencabangan di Subproblem 2). Solusi dari Subproblem 2 menjadi batas bawah dari solusi IP, yaitu sama dengan 5.

Saat ini subproblem yang belum diselesaikan adalah Subproblem 3. Solusi optimum untuk Subproblem 3 adalah x=4, y=1.2, dan z=5.2 (lihat Lampiran 1). Karena solusi optimum yang dihasilkan Subproblem 3 bukan solusi integer, maka dipilih pencabangan pada Subproblem 3 atas y, sehingga diperoleh dua subproblem lagi, yakni:

 Subproblem 4: Subproblem 3 ditambah kendalay1.

 Subproblem 5: Subproblem 3 ditambah kendalay2 .

Daerah fisibel dari Subproblem 4 dan Subproblem 5 diilustrasikan secara grafis pada Gambar 3.

Gambar 3 Daerah fisibel untuk Subproblem 4 dan Subproblem 5.

Dari grafik di atas dapat di lihat bahwa Subproblem 5 takfisibel (lihat Lampiran 1 pada Subproblem 5), maka subproblem ini tidak dapat menghasilkan solusi optimal. Solusi optimal untuk Subproblem 4 adalah x=4.16, y=1, dan z=5.16 (lihat Lampiran 1). Karena solusi optimal Subproblem 4 bukan solusi integer, maka dipilih pencabangan Subproblem 4 pada x, sehingga diperoleh dua subproblem lagi, yaitu:

 Subproblem 6: Subproblem 4 + kendalax4.  Subproblem 7: Subproblem 5 + kendalax5. Daerah fisibel Subproblem 2 Subproblem 3 Subproblem 5 Subproblem 4

Daerah fisibel dari Subproblem 6 dan Subproblem 7 diilustrasikan secara grafis pada Gambar 4.

Gambar 4 Daerah fisibel untuk Subproblem 6 dan Subproblem 7.

Penyelesaian Subproblem 6 menghasilkan solusi optimal x=4, y=1, dan z=5. Solusi optimum dari Subproblem 7 adalah x=5, y=0, dan z=5 (lihat Lampiran 1). Karena nilai fungsi objektif Subproblem 6 dan Subproblem 7 sama dengan nilai dari batas bawah solusi IP, maka Subproblem 6 dan Subproblem 7 dijadikan kandidat solusi.

Subproblem 2, Subproblem 6, dan Subproblem 7 menghasilkan solusi optimum berupa integer, dengan z5. Dengan demikian, solusi optimum dari IP (6) nilai optimum di tiga titik, yaitu di titik (3,2), (4,1), dan (5,0).

Pohon pencabangan yang menunjukkan penyelesaian masalah IP (6) secara keseluruhan pada gambar 5.

Subproblem 1

x3

x4 Subproblem 2 Subproblem 3 y1

y2 Subproblem 4 Subproblem 5

x4

x5 Subproblem 6 Subproblem 7

Gambar 5 Seluruh pencabangan pada metode branch-and-bound untuk menentukan solusi optimum dari IP.

2.4 Pengertian Air dan Teknis Pemanfaat-

Dokumen terkait