masalah penentuan kombinasi terminal dan rute kapal · mip adalah masalah optimisasi dengan fungsi...

9
PENDAHULUAN Latar Belakang Masalah pengiriman barang hasil produksi bagi suatu perusahaan kepada para pelanggannya merupakan masalah yang sangat penting, karena hal itu berkaitan dengan kepuasan pelanggan akan pelayanan. Untuk memenuhi permintaan pelanggan akan suatu produk, suatu perusahaan diharuskan mengirim produk tersebut dengan sebaik mungkin. Di pihak lain, perusahaan tentu menginginkan keuntungan yang besar, karena itu, biaya pengiriman haruslah seminimum mungkin. Banyaknya rute pengiriman yang mungkin dari pabrik ke pelanggan serta ketersediaan terminal sebagai tempat transit tentu menjadi masalah yang sangat rumit bagi pihak manajemen. Oleh sebab itu, perusahaan harus dapat menentukan rute dan terminal yang tepat sehingga biaya pengiriman yang dikeluarkan minimum. Masalah penentuan kombinasi terminal dan rute kapal dapat pula dimodelkan sebagai masalah pemrograman bilangan bulat campuran/mixed integer programming (MIP). MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang beberapa variabelnya diharuskan integer dan selainnya bisa integer atau tidak. Karya ilmiah ini merupakan penyederhanaan dari permasalahan yang dihadapi oleh salah satu supplier pasar pulp terbesar di dunia, Sodra Cell AB, yang telah dibahas oleh Gunnarsson, H. RÖnnqvist, M. Carlsson, D. (2006) dalam jurnal yang berjudul A combined terminal location and ship routing problem. Dalam karya ilmiah ini akan ditunjukkan solusi optimal dari masalah penentuan kombinasi terminal dan rute kapal dengan menggunakan bantuan software LINGO 8.0. Tujuan Tujuan penulisan karya ilmiah ini adalah menunjukkan peranan MIP (mixed integer programming) dalam menentukan kombinasi terminal dan rute kapal. LANDASAN TEORI Untuk memahami masalah penentuan kombinasi terminal dan rute kapal serta teknik pemecahan yang digunakan dalam karya tulis ini, diperlukan definisi dari beberapa konsep berikut ini. Fungsi Linear dan Pertidaksamaan Linear Fungsi linear dan pertidaksamaan linear merupakan salah satu konsep dasar yang harus dipahami terkait dengan konsep pemrograman linear. Definisi 1 (Fungsi Linear) Suatu fungsi ) ,..., , ( 2 1 n x x x f dalam variabel-variabel 1 2 , ,..., n x x x adalah suatu fungsi linear jika dan hanya jika untuk suatu himpunan konstanta 1 2 , ,..., n c c c , . ... ) ,..., , ( 2 2 1 1 2 1 n n n x c x c x c x x x f + + + = (Winston, 2004) Sebagai gambaran, 1 2 1 2 ( , ) 2 3 fx x x x = + merupakan fungsi linear, sementara 2 2 1 2 1 2 ( , ) f x x xx = bukan fungsi linear. Definisi 2 (Pertidaksamaan dan Persamaan Linear) Untuk sembarang fungsi linear ) ,..., , ( 2 1 n x x x f dan sembarang bilangan , b pertidaksamaan b x x x f n ) ,..., , ( 2 1 dan b x x x f n ) ,..., , ( 2 1 adalah pertidaksamaan linear. Misalkan b sembarang bilangan, suatu persamaan b x x x f n = ) ,..., , ( 2 1 merupakan persamaan linear. (Winston, 2004) Pemrograman Linear 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

Upload: tranlien

Post on 02-Mar-2019

234 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

PENDAHULUAN

Latar Belakang Masalah pengiriman barang hasil

produksi bagi suatu perusahaan kepada para pelanggannya merupakan masalah yang sangat penting, karena hal itu berkaitan dengan kepuasan pelanggan akan pelayanan. Untuk memenuhi permintaan pelanggan akan suatu produk, suatu perusahaan diharuskan mengirim produk tersebut dengan sebaik mungkin. Di pihak lain, perusahaan tentu menginginkan keuntungan yang besar, karena itu, biaya pengiriman haruslah seminimum mungkin.

Banyaknya rute pengiriman yang mungkin dari pabrik ke pelanggan serta ketersediaan terminal sebagai tempat transit tentu menjadi masalah yang sangat rumit bagi pihak manajemen. Oleh sebab itu, perusahaan harus dapat menentukan rute dan terminal yang tepat sehingga biaya pengiriman yang dikeluarkan minimum.

Masalah penentuan kombinasi terminal dan rute kapal dapat pula dimodelkan sebagai masalah pemrograman bilangan bulat campuran/mixed integer programming (MIP).

MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang beberapa variabelnya diharuskan integer dan selainnya bisa integer atau tidak.

Karya ilmiah ini merupakan penyederhanaan dari permasalahan yang dihadapi oleh salah satu supplier pasar pulp terbesar di dunia, Sodra Cell AB, yang telah dibahas oleh Gunnarsson, H. RÖnnqvist, M. Carlsson, D. (2006) dalam jurnal yang berjudul A combined terminal location and ship routing problem.

Dalam karya ilmiah ini akan ditunjukkan solusi optimal dari masalah penentuan kombinasi terminal dan rute kapal dengan menggunakan bantuan software LINGO 8.0.

Tujuan

Tujuan penulisan karya ilmiah ini adalah menunjukkan peranan MIP (mixed integer programming) dalam menentukan kombinasi terminal dan rute kapal.

LANDASAN TEORI

Untuk memahami masalah penentuan kombinasi terminal dan rute kapal serta teknik pemecahan yang digunakan dalam karya tulis ini, diperlukan definisi dari beberapa konsep berikut ini. Fungsi Linear dan Pertidaksamaan Linear

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

Definisi 1 (Fungsi Linear)

Suatu fungsi ),...,,( 21 nxxxf dalam

variabel-variabel 1 2, ,..., nx x x adalah suatu

fungsi linear jika dan hanya jika untuk suatu himpunan konstanta 1 2, ,..., nc c c ,

....),...,,( 221121 nnn xcxcxcxxxf +++=

(Winston, 2004)

Sebagai gambaran, 1 2 1 2( , ) 2 3f x x x x= +

merupakan fungsi linear, sementara 2 2

1 2 1 2( , )f x x x x= bukan fungsi linear.

Definisi 2 (Pertidaksamaan dan Persamaan Linear)

Untuk sembarang fungsi linear ),...,,( 21 nxxxf dan sembarang bilangan ,b

pertidaksamaan bxxxf n ≤),...,,( 21 dan

bxxxf n ≥),...,,( 21 adalah pertidaksamaan

linear. Misalkan b sembarang bilangan, suatu

persamaan bxxxf n =),...,,( 21 merupakan

persamaan linear. (Winston, 2004)

Pemrograman Linear

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

Page 2: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

2

kendala harus berupa persamaan linear atau pertidaksamaan linear.

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

menentukan ix harus taknegatif )0( ≥ix

atau tidak dibatasi tandanya (unrestricted in sign).

(Winston, 2004) Suatu PL mempunyai bentuk standar seperti yang didefinisikan sebagai berikut.

Definisi 3 (Bentuk Standar PL) Suatu pemrograman linear didefinisikan

mempunyai bentuk standar: maks Tz = c x terhadap =Ax b (2.1)

≤x 0 dengan x dan c berupa vektor berukuran n, vektor b berukuran m, sedangkan A berupa matriks berukuran m × n yang disebut juga matriks kendala.

[Nash & Sofer, 1996]

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

Solusi Pemrograman Linear

Suatu masalah PL dapat diselesaikan dalam berbagai teknik, salah satunya adalah metode simpleks. Metode ini dapat menghasilkan suatu solusi optimal bagi masalah PL dan telah dikembangkan oleh Dantzig sejak tahun 1947, dan dalam perkembangannya merupakan metode yang paling umum digunakan untuk menyelesaikan PL. Metode ini berupa metode iteratif untuk menyelesaikan PL berbentuk standar.

Pada masalah PL (2.1), vektor x yang memenuhi kendala =Ax b disebut solusi PL (2.1). Misalkan matriks A dinyatakan sebagai

( )=A B N , dengan B adalah matriks

berukuran m × m yang elemennya berupa koefisien variabel basis dan N merupakan matriks berukuran ( )m n m× − yang elemen-

elemennya berupa koefisien variabel nonbasis pada matriks kendala. Dalam hal ini matriks B disebut matriks basis untuk PL (2.1).

Misalkan x dinyatakan sebagai vektor

=

B

N

xx

x, dengan Bx adalah vektor variabel

basis dan Nx adalah vektor variabel nonbasis,

maka =Ax b dapat dinyatakan sebagai

( ) =

B

N

xAx B N

x

.= =B NBx + Nx b (2.2)

Karena matriks B adalah matriks taksingular, maka B memiliki invers, sehingga dari (2.2)

Bx dapat dinyatakan sebagai:

- .= -1 -1B Nx B b B Nx (2.3)

Definisi 4 (Solusi Basis)

Solusi dari suatu PL disebut solusi basis jika memenuhi syarat berikut: i. solusi tersebut memenuhi kendala pada PL; ii. kolom-kolom dari matriks kendala yang

berpadanan dengan komponen taknol dari solusi tersebut adalah bebas linear.

(Nash & Sofer, 1996) Definisi 5 (Solusi Basis Fisibel)

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

(Nash & Sofer, 1996)

Ilustrasi solusi basis dan solusi basis fisibel diberikan dalam Contoh 1.

Contoh 1

Misalkan diberikan PL (2.4) berikut:

1 2

1 2 3

1 2 4

1 5

1 2 3 4 5

min 2

terhadap 2 2

2 7

5

, , , , 0,

z x x

x x x

x x x

x x

x x x x x

= − −− + + =

− + + =+ =

(2.4)

dari PL (2.4) diperoleh: 2 1 1 0 0 2

1 2 0 1 0 , 7

1 0 0 0 1 5

− = − =

A b .

Misalkan dipilih

( ) ( )3 4 5 1 2 dan ,x x x x x= =T T

B Nx x

maka matriks basisnya adalah 1 0 0

0 1 0

0 0 1

=

B

. Dengan menggunakan matriks basis di atas didapatkan

Page 3: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

3

( ) ( )0 0 , 2 7 5 .−= = =T T1N Bx x B b (2.5)

Solusi (2.5) merupakan solusi basis, karena memenuhi kendala pada PL (2.4) dan kolom-kolom pada matriks kendala yang berpadanan dengan komponen taknol dari (2.5), yaitu B bebas linear (kolom yang satu bukan merupakan kelipatan dari kolom yang lain). Solusi (2.5) juga merupakan solusi basis fisibel, karena nilai-nilai variabelnya lebih dari atau sama dengan nol.

Hal yang juga penting dalam konsep pemrograman linear untuk model ini adalah daerah fisibel dan solusi optimal yang didefinisikan sebagai berikut.

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 Optimal)

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

(Winston, 2004)

Integer Programming Integer programming (IP) atau

pemrograman integer adalah suatu model pemrograman linear 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 (Pemrograman Linear Relaksasi) Pemrograman linear relaksasi atau sering

disebut PL-relaksasi merupakan suatu pemrograman linear yang diperoleh dari suatu IP dengan menghilangkan kendala integer atau kendala 0-1 pada setiap variabelnya.

Untuk masalah maksimisasi, nilai optimal fungsi objektif PL-relaksasi lebih besar atau sama dengan nilai optimal fungsi objektif IP, sedangkan untuk masalah minimisasi, nilai optimal fungsi objektif PL-relaksasi lebih

kecil atau sama dengan nilai optimal fungsi objektif IP.

(Winston, 1995)

Metode Branch-and-Bound

Pemecahan masalah pemrograman integer dapat dilakukan dengan metode branch-and-bound. Prinsip dasar metode ini adalah memecah daerah fisibel suatu masalah PL-relaksasi dengan membuat subproblem-subproblem. Ada dua konsep dasar dalam algoritme branch-and-bound. • Cabang (Branch) Membuat partisi daerah solusi dari masalah utama (PL-relaksasi) dengan membentuk subproblem-subproblem, tujuannya untuk menghapus daerah solusi yang tidak fisibel. Hal ini dicapai dengan menentukan kendala yang penting untuk menghasilkan solusi IP, secara tidak langsung titik integer yang tidak fisibel terhapus. Dengan kata lain, hasil pengumpulan lengkap dari subproblem-subproblem ini menunjukkan setiap titik integer yang fisibel dalam masalah asli. Karena sifat partisi tersebut, maka prosedur ini dinamakan pencabangan (branching). • Batas (Bound) Misalkan masalah utamanya berupa masalah maksimisasi, nilai objektif yang optimal untuk setiap subproblem dibuat dengan membatasi pencabangan dengan batas atas dari nilai objektif yang dihubungkan dengan sembarang nilai integer yang fisibel. Hal ini sangat penting untuk mengatur dan menempatkan solusi optimal. Operasi pembatasan ini dinamakan pembatasan (bounding).

(Taha, 1975)

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

Winston (2004) menyebutkan bahwa nilai fungsi objektif optimal untuk IP ≤ nilai fungsi objektif optimal untuk PL-relaksasi (masalah maksimisasi), sehingga nilai fungsi objektif optimal PL-relaksasi merupakan batas atas bagi nilai fungsi objektif optimal untuk masalah IP. Diungkapkan pula oleh Winston (2004) bahwa nilai fungsi objektif optimal untuk suatu kandidat solusi merupakan batas bawah nilai fungsi objektif optimal untuk masalah IP asalnya. Suatu kandidat solusi

Page 4: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

4

diperoleh jika solusi dari suatu subproblem sudah memenuhi kendala integer pada masalah IP, artinya fungsi objektif dan semua variabelnya sudah bernilai integer.

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 optimal. Pada awalnya ditetapkan −∞=z dan .0=i • Langkah 1 Subproblem ( )iPL dipilih sebagai bagian

masalah berikutnya untuk diteliti. Subproblem

( )iPL diselesaikan dan diukur dengan kondisi

yang sesuai. a) Jika ( )iPL 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 ( )iPL tidak terukur, proses

dilanjutkan ke langkah 2 untuk melakukan pencabangan ( )iPL .

Menurut Winston (2004), suatu subproblem dikatakan terukur (fathomed) jika terdapat situasi sebagai berikut. 1. Subproblem tersebut takfisibel, sehingga

tidak dapat menghasilkan solusi optimal untuk IP.

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

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

• Langkah 2 Dipilih salah satu variabel jx yang nilai

optimalnya adalah *jx yang tidak memenuhi

batasan integer dalam solusi iPL . Bidang

1][][ ** +<< jjj xxx disingkirkan dengan

membuat dua subproblem PL yang berkaitan

menjadi dua subproblem yang tidak dapat dipenuhi secara bersamaan, yaitu

*[ ]j jx x≤ dan *[ ] 1j jx x≥ + ,

dengan ][ *jx didefinisikan sebagai integer

terbesar yang kurang dari atau sama dengan

.*jx Kembali ke langkah 1.

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

Contoh 2 (Metode Branch-and-Bound)

Misalkan diberikan pemrograman integer (IP) berikut

max 1 2

2 3z x x= +

terhadap

1 2

1 2

1 2

2 10

3 4 25

, 0;

x x

x x

x x

+ ≤

+ ≤

≥ (2.6)

1 2,x x integer.

Solusi optimal PL-relaksasi dari masalah

IP (2.6) adalah 1 5x = , 2 2.5x = , dan 17.5z =

(lihat pada Lampiran 1). Batas atas nilai optimal fungsi objektif masalah ini adalah

17.5z = . Daerah fisibel PL-relaksasi masalah (2.6) ditunjukkan pada Gambar 1 (daerah yang diarsir) sedangkan titik-titik merupakan solusi fisibel masalah IP (2.6).

Gambar 1 Daerah fisibel untuk PL-relaksasi dari IP

(2.6). Langkah berikutnya adalah memartisi

daerah fisibel PL-relaksasi menjadi dua bagian berdasarkan variabel yang berbentuk pecahan (non-integer). Misalkan dipilih 2x sebagai

dasar pencabangan. Jika masalah PL-relaksasi diberi nama Subproblem 1, maka pencabangan tersebut menghasilkan 2 subproblem, yaitu: • Subproblem 2: Subproblem 1 ditambah

kendala 2 2.x ≤

• Subproblem 3: Subproblem 1 ditambah kendala

23x ≥ ;

Page 5: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

5

Hal ini diilustrasikan secara grafis pada Gambar 2.

Gambar 2 Daerah fisibel untuk Subproblem 2 dan

Subproblem 3.

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

Sekarang dipilih subproblem yang belum diselesaikan. Misalkan dipilih Subproblem 2, kemudian diselesaikan. Solusi optimal untuk Subproblem 2 ini adalah 1 5.67,x = 2 2x = ,

dan 17.33z = (lihat Lampiran 1). Karena solusi optimal yang dihasilkan

Subproblem 2 bukan solusi integer, maka dipilih pencabangan pada Subproblem 2 atas

1,x sehingga diperoleh dua subproblem lagi,

yakni: • Subproblem 4: Subproblem 2 ditambah

kendala 1 5x ≤ ;

• Subproblem 5: Subproblem 2 ditambah kendala 1 6x ≥ .

Saat ini subproblem yang belum diselesaikan adalah Subproblem 3, 4, dan 5. Salah satu subproblem dipilih, misalnya dengan aturan LIFO (Last In First Out). Dengan adanya aturan ini berarti dipilih Subproblem 4 atau Subproblem 5. Subproblem 4 menghasilkan solusi optimal 1 25, 2x x= = , dan 16z=

yang berupa integer (lihat Lampiran 1). Diperoleh kandidat solusi optimal yang baru

dari Subproblem 4. Nilai z baru merupakan batas bawah baru bagi nilai optimal IP (2.6).

Karena aturan LIFO, dipilih Subproblem 5, yang kemudian menghasilkan solusi optimal

1 26, 1.75x x= = , 17.25z= (lihat Lampiran 1). Karena 2 1.75x = bukan integer, maka

dilakukan kembali pencabangan atas 2x ,

sehingga diperoleh: • Subproblem 6: Subproblem 5 ditambah

kendala 2 1x ≤ ;

• Subproblem 7: Subproblem 5 ditambah kendala 2 2x ≥ .

Selanjutnya berdasarkan aturan LIFO, dipilih Subproblem 6. Subproblem yang dipilih menghasilkan solusi optimal yang berupa integer, dengan 1 1x = , 2 7x = , dan

17z = (lihat Lampiran 1). Diperoleh kandidat solusi optimal yang baru dari Subproblem 6. Karena nilai z baru pada Subproblem 6 lebih baik daripada nilai z pada Subproblem 4, maka nilai z pada Subproblem 6 merupakan batas bawah baru bagi nilai optimal IP (2.6).

Tersisa dua buah subproblem yaitu, Subproblem 3 dan Subproblem 7. Misalkan dengan aturan LIFO dipilih Subproblem 7. Karena Subproblem 7 takfisibel (lihat Lampiran 1), maka subproblem ini tidak dapat menghasilkan solusi optimal, yang tersisa hanya Subproblem 3.

Subproblem 3 menghasilkan solusi optimal yang berupa integer, dengan 1 4x = , 2 3x = ,

dan 17z = (lihat Lampiran 1). Batas bawah yang ditetapkan dari solusi optimal Subproblem 6 dan 3 bernilai sama. Semua solusi optimal dari Subproblem 6 dan 3 telah berupa integer dan tidak perlu lagi dilakukan pencabangan, sehingga terdapat 2 solusi optimal dari Subproblem 6 dan 3. Pohon pencabangan yang menunjukkan penyelesaian masalah IP (2.6) secara keseluruhan ditunjukkan pada Gambar 3.

Page 6: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

6

G

Gambar 3 Seluruh pencabangan pada metode Branch-and-Bound untuk menentukan solusi optimal dari IP

(2.6).

Graf Konsep graf yang digunakan dalam karya

ilmiah ini meliputi definisi-definisi berikut.

Definisi 9 (Graf) Suatu graf adalah pasangan terurut (V, E),

dengan V himpunan takkosong dan berhingga dan E adalah himpunan takterurut yang menghubungkan elemen-elemen V, dinotasikan dengan G = (V, E). Elemen V dinamakan simpul (vertex/node) dan elemen E dinamakan sisi (edge), dinotasikan dengan { , }i j , yakni sisi yang menghubungkan simpul

i dengan simpul j, dengan , .i j V∈

(Foulds, 1992) Graf seperti ini disebut juga graf

takberarah. Ilustrasi graf takberarah dapat dilihat pada

gambar berikut.

Gambar 4 Graf G = (V, E).

Pada Gambar 4

{1,2,3,4,5}V = dan

{{1,2},{1,4},{2,3},{3,4},{2,4},{3,5},{4, 5}}.E = Definisi 10 (Graf Berarah/Digraph)

Graf berarah (directed graph/digraph) adalah pasangan terurut (V, A) dengan V himpunan takkosong dan berhingga, dan A adalah himpungan pasangan terurut dari elemen-elemen di V. Elemen-elemen dari A disebut arc (sisi berarah) dan dituliskan sebagai ( ),i j , dengan , .i j V∈

(Foulds, 1992) Ilustrasi graf berarah dapat dilihat pada

gambar berikut.

Gambar 5 Graf ' ( , )G V A= .

Pada Gambar 5 di atas {1,2,3,4,5}V = dan

{(1,4), (1,2), (4,2), (2,3),(4,3), (3,5),(5,4)}.A =

'G :

Page 7: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

7

Definisi 11 (Walk)

Suatu walk pada graf G = (V, E) adalah suatu barisan simpul dan sisi dari G dengan bentuk :

{ } { } { }1 1 2 2 2 3 1, , , , , ,..., , , ,n n nv v v v v v v v v−

atau ditulis dengan ringkas :

1 2, ,..., nv v v atau 1 2, ,..., .nv v v

Walk tersebut menghubungkan simpul 1v

dengan .nv

(Foulds, 1992)

Definisi 12 (Path) Path pada suatu graf G adalah suatu walk

dengan semua simpulnya berbeda. (Foulds, 1992)

Ilustrasi walk dan path diberikan sebagai berikut. Pada graf G yang terdapat dalam Gambar 4, salah satu contoh walk adalah

1, 2, 3, 2, 4, 5 , sedangkan 1,4, 2,3,5 adalah

salah satu contoh path.

Definisi 13 (Walk Berarah) Walk berarah pada suatu graf berarah

' ( , )G V A= adalah suatu barisan terurut

simpul dan sisi pada 'G berbentuk ,,,...,,, 110 nn vavav dengan setiap sisi

berarah ia menghubungkan simpul-simpul

1−iv dan iv secara berurutan.

(Foulds, 1992) Definisi 14 (Path Berarah)

Path berarah pada graf berarah 'G adalah suatu walk berarah yang semua simpulnya berbeda.

(Foulds, 1992) Ilustrasi walk dan path berarah diberikan

sebagai berikut. Pada graf berarah 'G yang terdapat dalam Gambar 5, contoh walk berarah

adalah 1, 2,3,5, 4, 2,3,5. Contoh path

berarah adalah 1,2,3,5,4 , sementara yang

bukan path berarah adalah 1,2, 4,3,5 , karena

tidak ada sisi berarah dari simpul 2 ke simpul 4. Definisi 15 (Sisi Berarah Menjauhi atau Mendekati, Suksesor, dan Predesesor)

Misalkan diberikan graf berarah ( , )D V A= . Jika ( , )i ja v v A= ∈ maka sisi

berarah ini dikatakan menjauhi iv dan

mendekati jv . Simpul iv disebut predesesor

bagi simpul jv , dan simpul jv disebut

suksesor bagi simpul iv .

(Foulds, 1992)

Ilustrasinya diberikan dalam gambar berikut.

Gambar 6 Sisi berarah menjauhi atau mendekati, suksesor, dan predesesor.

Definisi 16 (Graf Berbobot)

Suatu graf G = (V, E) atau graf berarah ( , )D V A= dikatakan berbobot jika terdapat

fungsi :w E → ℜ atau : A → ℜℓ (dengan ℜ himpunan bilangan real) yang memberikan bobot pada setiap elemen E atau A.

(Foulds, 1992) Ilustrasinya diberikan dalam gambar

berikut:

Gambar 7 Graf berbobot ( , )G V A= .

Misalkan diberikan fungsi :w A→ ℜ

untuk graf berbobot ( , )G V A= pada Gambar

7, maka (1,2) 2; (1,3) 4; (2,3) 1;

(2,4) 4; (2,5) 2; (3,5) 3;

(5,4) 3; (4,6) 2; (5,6) 2.

w w w

w w w

w w w

= = == = == = =

Terdapat kasus khusus dari graf berbobot,

yaitu network. Untuk memahami konsep network diperlukan definisi-definisi source dan sink berikut ini.

Definisi 17 (Source)

Source adalah suatu simpul dengan tidak ada sisi berarah yang mendekati simpul tersebut.

(Foulds, 1992) Definisi 18 (Sink)

Sink adalah suatu simpul sehingga tidak ada sisi berarah yang menjauhi simpul tersebut.

(Foulds, 1992)

G:

Page 8: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

8

Definisi 19 (Network) Network adalah suatu digraph yang

mempunyai tepat satu source dan satu sink. (Foulds, 1992)

Ilustrasi network, source, dan sink

diberikan dalam gambar berikut.

Gambar 8 Network, source, dan sink.

Pada Gambar 8, graf berarah G merupakan

suatu network dengan simpul 1 sebagai source dan simpul 6 sebagai sink.

Pengertian suatu network N menurut

Chartrand & Oellermann (1993), adalah suatu digraph D dengan source s, sink t, dan fungsi bernilai bilangan bulat taknegatif c yang didefinisikan di setiap sisi pada E(D). Digraph D dikatakan underlying digraph dari N dan fungsi c dinamakan fungsi kapasitas dari N. Ada kalanya suatu network memiliki lebih dari satu source maupun sink, sebagaimana yang akan digunakan dalam karya ilmiah ini.

Definisi 20 (Lingkungan-luar & lingkungan-dalam)

Dalam digraph D, didefinisikan: • Lingkungan luar (out-neighborhood) dari

verteks x di D adalah ( ) { ( ) | ( , ) ( )}N x y V D x y E D+ = ∈ ∈ ,

• Lingkungan dalam (in-neighborhood) dari verteks x di D adalah ( ) { ( ) | ( , ) ( )}N x y V D y x E D− = ∈ ∈ .

(Chartrand & Oellermann, 1993) Definisi 21 (Arus/Flow)

Misalkan diberikan network N dengan underlying digraph D, source s, sink t, dan fungsi kapasitas c. Arus/flow di N adalah fungsi bernilai bilangan bulat taknegatif f pada E(D) sehingga berlaku

0 ( ) ( ),f a c a≤ ≤ (2.7)

untuk setiap ( )a E D∈ , dan

( ) ( )

( , ) ( , )y N x y N x

f x y f y x+ −∈ ∈

=∑ ∑ (2.8)

untuk setiap ( ) { , }x V D s t∈ − . (Chartrand & Oellermann 1993)

Network Flow Network flow merupakan suatu kasus

dalam PL yang memiliki struktur khusus dan menggunakan representasi graf. Bentuk umum suatu masalah network flow dikenal dengan masalah network flow biaya minimum (minimum cost network flow problem). Pada masalah ini, fungsi objektifnya berupa minimisasi biaya yang terkait dengan suatu sisi berarah dengan kendala-kendala yang meliputi kendala konservasi flow dan kendala restriksi flow.

Kendala konservasi flow merupakan suatu kendala yang menjaga keseimbangan flow pada suatu simpul, yang menyatakan bahwa banyaknya flow yang masuk ke suatu simpul harus sama dengan banyaknya flow yang keluar dari simpul tersebut. Kendala restriksi flow merupakan suatu kendala yang membatasi banyaknya flow yang dapat melewati suatu sisi berarah.

Misalkan N menyatakan himpunan simpul dalam suatu network dan A menyatakan himpunan sisi berarah dalam network tersebut. Misalkan pula biaya pengangkutan (shipping) setiap unit flow komoditas pada sisi berarah ( , )i j A∈ dinyatakan sebagai ijc , unit flow

komoditas yang melalui sisi berarah ( , )i j

untuk setiap ( , )i j A∈ dinotasikan dengan ijx ,

ijl dan iju berturut-turut menyatakan batas

bawah dan batas atas flow komoditas yang harus diangkut melalui sisi berarah ( , )i j

untuk setiap ( , )i j A∈ , dan ib menyatakan

supply/demand pada simpul .i N∈ Variabel

ib disebut supply pada simpul i jika 0ib >

dan simpul i disebut simpul supply. Variabel ib disebut demand pada simpul i jika 0ib <

dan simpul i disebut simpul demand. Jika 0ib = , simpul i disebut sebagai simpul

transshipment. Formulasi umum suatu masalah network

flow diberikan sebagai berikut:

:( , ) :( , )

( , )

.

min

terhadap

(2.9)

(2.10)

,

, ( , )

ij ji ij i j A j i j A

ij ij ij

ij iji j A

x x b i N

l x u i j A

c x

∈ ∈

− = ∀ ∈

≤ ≤ ∀ ∈

∑ ∑

Persamaan (2.9) menyatakan kendala konservasi flow dan pertidaksamaan (2.10) menyatakan kendala restriksi flow.

(Ahuja et al. 1993)

G:

Page 9: Masalah Penentuan Kombinasi Terminal dan Rute Kapal · MIP adalah masalah optimisasi dengan fungsi objektif dan kendala yang linear yang ... maks z =c xT terhadap Ax b= (2.1) x 0≤

9

Masalah Path Terpendek (The Shortest Path Problem)

Masalah path terpendek merupakan kasus khusus dalam masalah network flow biaya minimum. Didefinisikan panjang untuk sembarang path berarah dalam suatu network

sebagai jumlah biaya semua sisi berarah dalam path tersebut. Dalam masalah ini akan dicari suatu path terpendek, yakni path berarah dari suatu simpul asal ke simpul tujuan dengan panjang terkecil.

DESKRIPSI DAN FORMULASI MASALAH

Suatu perusahaan yang memproduksi pulp

harus mengirimkan beberapa produknya pada para pelanggan yang ada di dalam negeri maupun diekspor ke luar negeri. Pengiriman dalam negeri dapat dilakukan dengan menggunakan truk atau kereta, dan pengiriman ke luar negeri dapat dilakukan dengan kapal pengangkut (shipping vessels) ke terminal-terminal dan dilanjutkan dengan truk atau kereta sampai kepada para pelanggan. Terdapat dua jenis terminal, yaitu terminal pelabuhan dan terminal inland. Terminal inland adalah suatu terminal berukuran lebih kecil daripada terminal pelabuhan dan terdapat di pesisir sungai. Terminal inland dapat dicapai dari terminal pelabuhan dengan menggunakan kapal yang berukuran lebih kecil daripada kapal pengangkut, truk, atau kereta. Setelah menurunkan semua muatan di terminal pelabuhan, kapal yang telah kosong tersebut diharuskan kembali ke pabrik untuk pengiriman produk selanjutnya.

Pengiriman produk dari pabrik ke pelanggan membutuhkan biaya yang besar, dan besarnya biaya tersebut dipengaruhi oleh jarak yang ditempuh dari pabrik pulp (pulpmill) ke pelanggan, baik dalam negeri maupun luar negeri. Selain itu, terdapat pula biaya tetap untuk penggunaan terminal, kereta, truk, dan kapal. Setiap produk yang masuk ke terminal dikenai biaya cukai per tonnya.

Rute pengiriman dari pabrik ke terminal-terminal ditunjukkan oleh Gambar 9. Terdapat dua tipe rute, yaitu rute sederhana yang ditunjukkan dengan rute-A dan rute gabungan yang ditunjukkan dengan rute-B. Rute-A dimulai dari satu pabrik pulp dan menuju satu terminal untuk pembongkaran. Sedangkan untuk pemuatan rute-B dimulai dari satu pabrik pulp dan berkunjung ke satu atau beberapa pabrik pulp atau terminal dan berakhir pada satu terminal. Beberapa contoh rute ditunjukkan pada Tabel 1.

Gambar 9 Ilustrasi lokasi pabrik, terminal, dan pelanggan.