MASALAH PENENTUAN KOMBINASI TERMINAL DAN RUTE KAPAL
SAEPUDIN HIDAYATULLOH
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2009
ABSTRACT SAEPUDIN HIDAYATULLOH. Problems of Combining Terminal and Shipping Route. Supervised by FARIDA HANUM and DONNY CITRA LESMANA. Delivery problem from company to its customers is a very important issue. However, there are constraints in this occasion such as the available number of delivery routes from the factory to the customers and the availability of terminals as transit points. Because it involves a large number of ships, routes and terminals, the company must determine the combination of routes and terminal facilities that minimize the delivery cost to the customers, both local and foreign customers. The above cost minimization problem can be regarded as a mixed integer programming problem (MIP). The problem can be solved using branch and bound method. Optimal value is obtained using Lingo 8.0 software. Finally, the optimal terminal and shipping route combinations have been obtained, so that the cost of delivering product is minimized. In addition, the quantity of goods that minimize the cost via the optimal route has also been obtained.
ABSTRAK SAEPUDIN HIDAYATULLOH. Masalah Penentuan Kombinasi Terminal dan Rute Kapal Dibimbing oleh FARIDA HANUM dan DONNY CITRA LESMANA. Masalah pengiriman barang hasil produksi bagi suatu perusahaan kepada para pelanggannya merupakan masalah yang sangat penting. Akan tetapi, terdapat kendala dalam pengiriman barang tersebut yaitu banyaknya rute pengiriman yang mungkin dari pabrik ke pelanggan serta ketersediaan terminal sebagai tempat transit. Karena pengiriman produk melibatkan banyak rute kapal dan terminal, maka perusahaan harus menentukan kombinasi terminal dan rute kapal yang dapat meminimumkan biaya pengiriman dari pabrik ke para pelanggan, baik pelanggan lokal maupun asing. Masalah minimisasi biaya pengiriman barang di atas dapat dipandang sebagai masalah pemrograman bilangan bulat campuran (Mixed Integer Programming/MIP). Masalah tersebut dapat diselesaikan dengan metode branch-and-bound. Nilai optimal diperoleh dari penggunaan software Lingo 8.0. Akhirnya diperoleh kombinasi terminal dan rute kapal yang optimal sehingga total biaya pengiriman produk minimum. Selain itu, diperoleh juga banyaknya produk yang dikirimkan melalui rute optimal diatas.
MASALAH PENENTUAN KOMBINASI TERMINAL DAN RUTE KAPAL
Skripsi Sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains pada Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor
Oleh : SAEPUDIN HIDAYATULLOH G54104045
DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2009
Judul
: Masalah Penentuan Kombinasi Terminal dan Rute Kapal
Nama
: Saepudin Hidayatulloh
NIM
: G54104045
Menyetujui,
Pembimbing I
Pembimbing II
Dra. Farida Hanum, M.Si. NIP 19651019 199103 2 002
Donny Citra Lesmana, S.Si., M.Fin.Math. NIP 19790227 200501 1 001
Mengetahui, Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Pertanian Bogor
Dr. Drh. Hasim, DEA. NIP 19610328 198601 1 002
Tanggal Lulus :
RIWAYAT HIDUP Penulis dilahirkan di Bandung pada tanggal 16 September 1986 dari pasangan Usup (Alm.) dan Mimin Rukmini. Penulis merupakan anak pertama dari dua bersaudara. Pada tahun 2004 penulis lulus dari SMA Negeri 3 Bogor dan pada tahun yang sama lulus seleksi masuk IPB melalui jalur Undangan Seleksi Masuk IPB. Penulis memilih Program Studi Matematika, Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam. Selama mengikuti perkuliahan, penulis aktif dalam kegiatan kemahasiswaan, diantaranya pada tahun 2004-2005 menjabat sebagai anggota sie Seni dan Olahraga GUMATIKA (Gugus Mahasiswa Matematika) IPB periode 2004-2005, serta mengikuti kepanitiaan dari beberapa kegiatan selama rentang waktu 2004-2007. Selain itu, penulis juga aktif di luar kampus, di antaranya sebagai pengajar les privat dan juga aktif di lingkungan pesantren. Tahun 2008 penulis bekerja di perusahaan Sud Chemie Indonesia pada bagian SCM (supply chain management).
KATA PENGANTAR Puji dan syukur penulis panjatkan ke hadirat Allah SWT atas segala nikmat, karunia, izin, dan pertolongan-Nya sehingga penulisan skripsi ini berhasil diselesaikan. Tema yang dipilih adalah Riset Operasi dengan judul Masalah Penentuan Kombinasi Terminal dan Rute Kapal. Skripsi ini merupakan syarat untuk menyelesaikan studi pada Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor. Terima kasih penulis ucapkan kepada : 1. Ibu Dra. Farida Hanum, M.Si dan Bapak Donny Citra Lesmana, S.Si., M.Fin.Math selaku dosen pembimbing, atas segala kesabaran dan masukannya selama membimbing penulis; tak lupa kepada Bapak Dr. Tony Bakhtiar, M.Sc. selaku penguji; 2. Ibunda Mimin Rukmini dan Ayahanda Usup (Alm.) atas segala kasih sayang, dukungan, doa, pengorbanan, dan nasihat yang senantiasa mengiringi perjalanan penulis selama ini; ayahanda Opik Sholahudin atas pengertian dan perhatiannya kepada penulis dan keluarga; adikku Siti Nur Janah atas semangat dan dukungannya; 3. Ibu Dr.dr. Hj. Sri Budiarti sekeluarga atas segala bantuan yang telah diberikan selama
penulis mengikuti perkuliahan dan telah menganggap penulis sebagai bagian dari keluarga; 4. Mama K.H. Ahmad Zaini Dahlan (Alm.) dan keluarga serta para ustadz PP Nurul Imdad atas ilmu yag telah diberikan; 5. Keluarga besar kakek Sawana di Cileungsi dan keluarga besar kakek Uju (Alm.) di bandung atas dukungan dan doanya; 6. Teman-teman mahasiswa matematika angkatan 41: Iboy, Fitri, Penoy, Kurenz, Mora, Fred, Echi, Neng Ria, Neng Tia, Gretho, Maboq, Kang Rangga, Om Idris, Adji, Triyadi, Kang Yaya, Deni, Chubby, Mimin, Kokom, Zali, Mazid, Amin, Dika, Chumi, Yos, Hendri, Endhit, Sita, Rita, Deedee, Dian, Liay, Sifa, Mukti, Uwie, Ani, Liam, darwisah, Jannah, Ami, Intan, Enyon, Enny, Roma, Titis, Febrina, Ayu, Ika, Mahar, Eli, Rina Z, Eva, Roro, Nidia atas segenap dukungan, suka-duka dan kebahagiaan selama penulis menempuh studi di Departemen Matematika IPB; 7. Utami ”mbil” Prihartini atas segala bantuan, dukungan, dan doa sehingga penulis dapat menyelesaikan skripsi ini; 8. Kakak-kakak mahasiswa matematika angkatan 40 dan 39 yang tidak bisa disebutkan satu per satu; adik-adik mahasiswa matematika angkatan 42 dan 43, terutama Djawa, Iput, dan Jane yang telah bersedia menjadi pembahas, Chopy, Wira, Supri, dan Nia yang telah membantu pelaksanaan seminar; seluruh pengajar, pegawai, dan staf Departemen Matematika IPB. 9. Teman-teman di PP Nurul Imdad: Goten, Znhot, Mas Yusa, Fajar, Dicky, Abah, Amri, Nash, Husban, Ust Ali, Ust Jafar atas segala masukan dan dukungan selama ini; 10. Departemen SCM (supply chain management) PT. SC Indonesia, terutama Pak Tetra yang telah memberi penulis kesempatan untuk menambah pengalaman yang sangat berharga; 11. Juga pihak-pihak lain yang telah membantu penyusunan skripsi ini, yang tidak dapat disebutkan satu per satu. Penulis menyadari bahwa dalam tulisan ini masih terdapat kekurangan dan jauh dari kesempurnaan, oleh karena itu penulis mengharapkan kritik dan saran yang membangun dari pembaca. Semoga tulisan ini dapat bermanfaat.
Bogor, Juni 2009
Saepudin Hidayatulloh
DAFTAR ISI
Halaman DAFTAR TABEL ........................................................................................................................ viii DAFTAR GAMBAR ..................................................................................................................... ix DAFTAR LAMPIRAN ................................................................................................................... ix 1 PENDAHULUAN Latar Belakang ......................................................................................................................... 1 Tujuan ...................................................................................................................................... 1 2 LANDASAN TEORI Fungsi Linear dan Pertidaksamaan Linear ............................................................................... Pemrograman Linear ................................................................................................................ Integer Programming ................................................................................................................ Metode Branch-and-Bound ...................................................................................................... Graf .......................................................................................................................................... Network Flow ........................................................................................................................... Masalah Path Terpendek .........................................................................................................
1 1 3 3 6 8 9
3 DESKRIPSI DAN FORMULASI MASALAH........................................................................... 9 Formulasi Masalah ................................................................................................................. 10 Model Matematika ................................................................................................................. 10 4 PENYELESAIAN MASALAH PENENTUAN LOKASI TERMINAL DAN RUTE KAPAL ......................................................................................................................... 16 5 SIMPULAN DAN SARAN Simpulan ................................................................................................................................ 18 Saran ...................................................................................................................................... 18 DAFTAR PUSTAKA ................................................................................................................... 18 LAMPIRAN ................................................................................................................................... 19
vii
DAFTAR TABEL Halaman 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Contoh-contoh rute .................................................................................................................. Banyaknya pelayaran yang dilakukan pada rute-A dan rute-B ................................................ Banyaknya kereta, truk, dan kapal yang disewa ...................................................................... Biaya pengiriman produk dari pabrik ke terminal pelabuhan pada rute-A .............................. Biaya pengiriman produk dari pabrik ke terminal pelabuhan pada rute-B .............................. Biaya pengiriman produk dari pabrik ke pelanggan lokal dengan menggunakan kereta ................................................................................................................ Biaya pengiriman produk dari pabrik ke pelanggan lokal dengan menggunakan truk ................................................................................................................... Biaya pengiriman produk dari terminal pelabuhan ke pelanggan asing dengan menggunakan kereta ................................................................................................................ Biaya pengiriman produk dari terminal pelabuhan ke pelanggan asing dengan menggunakan truk ................................................................................................................... Biaya pengiriman produk dari terminal inland ke pelanggan asing dengan menggunakan kereta ................................................................................................................ Biaya pengiriman produk dari terminal inland ke pelanggan asing dengan menggunakan truk ................................................................................................................... Waktu arus balik (dalam hari) dari terminal ke pabrik ............................................................ Biaya arus balik dari terminal pelabuhan ke pabrik ................................................................ Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan kereta ................................................................................................................ Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan truk ................................................................................................................... Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan kapal ................................................................................................................. Demand pulp untuk pelanggan lokal ....................................................................................... Demand pulp untuk pelanggan asing ....................................................................................... Supply produk yang tersedia untuk setiap produk ................................................................... Kapasitas maksimum dan biaya sewa alat-alat transportasi .................................................... Waktu (dalam hari) dan biaya pelayaran untuk rute-B ............................................................ Kapasitas, biaya cukai per unit, dan biaya tetap untuk terminal pelabuhan maupun inland .........................................................................................................................
10 17 17 23 23 23 23 23 24 24 24 24 24 24 24 25 25 25 25 25 25 25
viii
DAFTAR GAMBAR Halaman 1 Daerah fisibel untuk PL-relaksasi dari IP (2.6) ......................................................................... 4 2 Daerah fisibel untuk Subproblem 2 dan Subproblem 3 .............................................................. 5 3 Seluruh pencabangan pada metode Branch-and-Bound untuk menentukan solusi optimal dari IP (2.6) ........................................................................................................ 6 4 Graf G = (V, E) .......................................................................................................................... 6 5 Graf G’ = (V, A) ......................................................................................................................... 6 6 Sisi berarah menjauhi atau mendekati, suksesor, dan predesesor .............................................. 7 7 Graf berbobot G = (V, A) .......................................................................................................... 7 8 Network, source, dan sink .......................................................................................................... 8 9 Ilustrasi lokasi pabrik, terminal, dan pelanggan ........................................................................ 9 10 Ilustrasi terminal dan rute yang digunakan untuk memenuhi permintaan produk 1 ................................................................................................................................... 16 11 Ilustrasi terminal dan rute yang digunakan untuk memenuhi permintaan produk 2 ................................................................................................................................... 17
DAFTAR LAMPIRAN Halaman 1 Syntax Program LINGO 8.0 untuk Menyelesaikan Masalah Pemrograman Linear dengan Metode Branch-and-Bound beserta Hasil yang Diperoleh .............................. 20 2 Data-data Hipotetik untuk Implementasi Penyelesaian Masalah Penentuan Terminal dan Rute Kapal dengan Metode Branch-and-Bound ................................................ 23 3 Syntax dan Hasil Komputasi Program LINGO 8.0 untuk Masalah Penentuan Terminal dan Rute Kapal ....................................................................................... 26
ix
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) f ( x1 , x 2 ,..., x n ) Suatu fungsi
dalam
variabel-variabel x1 , x2 ,..., xn adalah suatu fungsi linear jika dan hanya jika untuk suatu himpunan konstanta c1 , c2 ,..., cn ,
f ( x1 , x 2 ,..., x n ) = c1 x1 + c 2 x 2 + ... + c n x n . (Winston, 2004) Sebagai gambaran, f ( x1 , x2 ) = 2 x1 + 3 x2 merupakan fungsi linear, sementara f ( x1 , x2 ) = x12 x 22 bukan fungsi linear.
Definisi 2 (Pertidaksamaan dan Persamaan Linear) Untuk sembarang fungsi linear f ( x1 , x 2 ,..., x n ) dan sembarang bilangan b ,
f ( x1 , x 2 ,..., x n ) ≤ b dan f ( x1 , x 2 ,..., x n ) ≥ b adalah pertidaksamaan linear. Misalkan b sembarang bilangan, suatu persamaan f ( x1 , x 2 ,..., x n ) = b merupakan persamaan linear. (Winston, 2004)
pertidaksamaan
Pemrograman Linear Pemrograman linear (PL) atau linear programming (LP) adalah suatu masalah optimisasi yang memenuhi ketentuanketentuan 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
2
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) Suatu PL mempunyai bentuk standar seperti yang didefinisikan sebagai berikut.
Misalkan x dinyatakan sebagai vektor x x = B , dengan xB adalah vektor variabel xN basis dan x N adalah vektor variabel nonbasis, maka Ax = b dapat dinyatakan sebagai x Ax = ( B N ) B xN (2.2) = Bx B + Nx N = b. Karena matriks B adalah matriks taksingular, maka B memiliki invers, sehingga dari (2.2) x B dapat dinyatakan sebagai: x B = B -1b - B -1 Nx N .
Definisi 3 (Bentuk Standar PL) Suatu pemrograman linear didefinisikan mempunyai bentuk standar: maks z = cT 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 elemenelemennya berupa koefisien variabel nonbasis pada matriks kendala. Dalam hal ini matriks B disebut matriks basis untuk PL (2.1).
(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 x ≥ 0. (Nash & Sofer, 1996)
Ilustrasi solusi basis dan solusi basis fisibel diberikan dalam Contoh 1. Contoh 1 Misalkan diberikan PL (2.4) berikut: min z = −x1 − 2x2
terhadap
− 2x1 + x2 + x3 = 2 − x1 + 2x2 + x4 = 7
(2.4)
x1 + x5 = 5 x1, x2 , x3 , x4 , x5 ≥ 0, dari PL (2.4) diperoleh: −2 1 1 0 0 2 A = −1 2 0 1 0 , b = 7 . 1 0 0 0 1 5 Misalkan dipilih
xB = ( x3 x4 x5 ) dan x N = ( x1 x2 ) , maka matriks basisnya adalah 1 0 0 B = 0 1 0 0 0 1 . Dengan menggunakan matriks basis di atas didapatkan T
T
3
x N = ( 0 0 ) , xB = B−1b = ( 2 7 5) . (2.5) Solusi (2.5) merupakan solusi basis, karena memenuhi kendala pada PL (2.4) dan kolomkolom 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. T
T
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-andbound. Prinsip dasar metode ini adalah memecah daerah fisibel suatu masalah PLrelaksasi dengan membuat subproblemsubproblem. 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 subproblemsubproblem 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
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 i = 0. • Langkah 1 Subproblem PL(i ) dipilih sebagai bagian masalah berikutnya untuk diteliti. Subproblem PL(i ) 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 tidak terukur, proses PL(i ) dilanjutkan ke langkah 2 untuk melakukan pencabangan PL(i ) . 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 x j yang nilai optimalnya adalah x *j yang tidak memenuhi batasan integer dalam solusi
[ x *j ] <
x j < [ x *j ] + 1
PLi . Bidang
disingkirkan
dengan
membuat dua subproblem PL yang berkaitan
menjadi dua subproblem yang tidak dapat dipenuhi secara bersamaan, yaitu
x j ≤ [ x*j ] dan x j ≥ [ x*j ] + 1 , dengan [ x *j ] didefinisikan sebagai integer terbesar yang kurang dari atau sama dengan x *j . 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 z = 2 x1 + 3 x2 terhadap
x1 + 2 x2 ≤ 10 3 x1 + 4 x2 ≤ 25
x1 , x2 ≥ 0; (2.6) x1 , x2 integer. Solusi optimal PL-relaksasi dari masalah IP (2.6) adalah x1 = 5 , x2 = 2.5 , dan z = 17.5 (lihat pada Lampiran 1). Batas atas nilai optimal fungsi objektif masalah ini adalah z = 17.5 . 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 x2 sebagai dasar pencabangan. Jika masalah PL-relaksasi diberi nama Subproblem 1, maka pencabangan tersebut menghasilkan 2 subproblem, yaitu: • Subproblem 2: Subproblem 1 ditambah kendala x2 ≤ 2. • Subproblem 3: Subproblem 1 ditambah kendala x2 ≥ 3 ;
5
Hal ini diilustrasikan secara grafis pada Gambar 2.
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 x1 = 6, x2 = 1.75 , z = 17.25 (lihat Lampiran 1). Karena x2 = 1.75 bukan integer, maka
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 x2 . Sekarang dipilih subproblem yang belum diselesaikan. Misalkan dipilih Subproblem 2, kemudian diselesaikan. Solusi optimal untuk Subproblem 2 ini adalah x1 = 5.67, x2 = 2 , dan z = 17.33 (lihat Lampiran 1). Karena solusi optimal yang dihasilkan Subproblem 2 bukan solusi integer, maka dipilih pencabangan pada Subproblem 2 atas x1 , sehingga diperoleh dua subproblem lagi, yakni: • Subproblem 4: Subproblem 2 ditambah kendala x1 ≤ 5 ; • Subproblem 5: Subproblem 2 ditambah kendala x1 ≥ 6 . 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 x1 = 5, x2 = 2 , dan z = 16 yang berupa integer (lihat Lampiran 1). Diperoleh kandidat solusi optimal yang baru
dilakukan kembali pencabangan atas x2 , sehingga diperoleh: • Subproblem 6: Subproblem 5 ditambah kendala x2 ≤ 1 ; • Subproblem 7: Subproblem 5 ditambah kendala x2 ≥ 2 . Selanjutnya berdasarkan aturan LIFO, dipilih Subproblem 6. Subproblem yang dipilih menghasilkan solusi optimal yang berupa integer, dengan x1 = 1 , x2 = 7 , dan z = 17 (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 x1 = 4 , x2 = 3 , dan z = 17 (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.
6
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 takberarah.
ini
disebut
juga
graf
Pada Gambar 4 V = {1, 2,3, 4,5} dan E = {{1, 2},{1, 4},{2,3},{3, 4},{2, 4},{3,5},{4, 5}}. 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.
G' : Ilustrasi graf takberarah dapat dilihat pada gambar berikut. G
Gambar 5 Graf G ' = (V , A) . Gambar 4 Graf G = (V, E).
Pada Gambar 5 di atas V = {1, 2,3, 4,5} dan A = {(1, 4), (1, 2), (4, 2), (2,3),(4,3), (3,5),(5, 4)}.
7
mendekati v j . Simpul vi disebut predesesor Definisi 11 (Walk) Suatu walk pada graf G = (V, E) adalah suatu barisan simpul dan sisi dari G dengan bentuk : v1 , {v1 , v2 } , v2 , {v2 , v3 } ,..., {vn −1 , vn } , vn , atau ditulis dengan ringkas : v1 , v2 ,..., vn atau v1 , v2 ,..., vn .
bagi simpul v j , dan simpul v j
disebut
suksesor bagi simpul vi . (Foulds, 1992) Ilustrasinya diberikan dalam gambar berikut.
Walk tersebut menghubungkan simpul v1 dengan vn . (Foulds, 1992)
Gambar 6 Sisi berarah menjauhi atau mendekati, suksesor, dan predesesor.
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
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)
salah satu contoh path.
Ilustrasinya berikut:
Definisi 13 (Walk Berarah) Walk berarah pada suatu graf berarah G ' = (V , A) adalah suatu barisan terurut simpul dan sisi pada G ' berbentuk v 0 , a1 , v1 ,..., a n , v n , dengan setiap sisi
diberikan
dalam
gambar
G:
berarah a i menghubungkan simpul-simpul
vi −1 dan v i 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 a = (vi , v j ) ∈ A maka sisi berarah ini dikatakan menjauhi
vi
dan
Gambar 7 Graf berbobot G = (V , A) .
Misalkan diberikan fungsi w : A → ℜ untuk graf berbobot G = (V , A) pada Gambar 7, maka w(1, 2) = 2; w(1,3) = 4; w(2,3) = 1;
w(2, 4) = 4; w(2,5) = 2; w(3,5) = 3; w(5, 4) = 3; w(4, 6) = 2; w(5, 6) = 2. 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)
8
Definisi 19 (Network) Network adalah suatu digraph yang mempunyai tepat satu source dan satu sink. (Foulds, 1992) Ilustrasi network, source, diberikan dalam gambar berikut.
dan
sink
G:
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 & lingkungandalam) 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 (2.7) 0 ≤ f ( a) ≤ c( a), untuk setiap a ∈ E ( D ) , dan
∑
y∈N + ( x )
f ( x, y ) =
∑
f ( y , x)
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 cij , unit flow komoditas yang melalui sisi berarah (i , j ) untuk setiap (i, j ) ∈ A dinotasikan dengan xij , lij dan uij berturut-turut menyatakan batas bawah dan batas atas flow komoditas yang harus diangkut melalui sisi berarah (i , j )
untuk setiap (i, j ) ∈ A , dan bi menyatakan supply/demand pada simpul i ∈ N . Variabel bi disebut supply pada simpul i jika bi > 0 dan simpul i disebut simpul supply. Variabel bi disebut demand pada simpul i jika bi < 0 dan simpul i disebut simpul demand. Jika bi = 0 , simpul i disebut sebagai simpul transshipment. Formulasi umum suatu masalah network flow diberikan sebagai berikut: min cij xij
∑
(i , j )∈A
terhadap
∑
j:( i , j )∈ A
(2.8)
y∈ N − ( x )
untuk setiap x ∈ V ( D ) − {s, t} . (Chartrand & Oellermann 1993)
xij −
∑
j:( i , j )∈ A
x ji = bi , ∀i ∈ N
lij ≤ xij ≤ uij , ∀(i, j ) ∈ A
(2.9) (2.10).
Persamaan (2.9) menyatakan kendala konservasi flow dan pertidaksamaan (2.10) menyatakan kendala restriksi flow. (Ahuja et al. 1993)
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 terminalterminal 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 terminalterminal 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.
10
Tabel 1 Contoh-contoh rute
Rute Pabrik-Terminal Pabrik-Terminal-Terminal Pabrik-Pabrik-Terminal Pabrik-Pabrik-Terminal-Terminal
Tipe rute Rute-A Rute-B Rute-B Rute-B
Rencana bulanan dari pemakaian rute dan terminal memerlukan beberapa jenis keputusan. Dengan mempertimbangkan rute yang ada, para perencana harus menentukan terminal mana yang digunakan, dan seberapa banyak (seberapa besar) biaya yang akan dikeluarkan untuk setiap terminal. Perencana pun harus memutuskan rute-A dan rute-B mana yang harus digunakan untuk mengirimkan produk-produk pada para pelanggan sehingga biaya pengiriman minimum. Formulasi Masalah Rute-A dimulai dari satu pabrik pulp langsung ke terminal akhir. Pelayaran yang menggunakan rute-A selalu bermuatan penuh. Tetapi permintaan pelanggan sangat beragam, tidak selalu merupakan kelipatan dari kapasitas kapal pengangkut (shipping vessels). Tidak ada kemungkinan untuk menyimpan produk di terminal atau di suatu gudang tertentu. Hal tersebut dikarenakan pihak produksi hanya memproduksi sesuai permintaan pelanggan, dan dikhawatirkan apabila produk terlalu lama disimpan akan mengurangi kualitas produk. Untuk permintaan yang tidak dapat dipenuhi oleh rute-A digunakanlah rute-B. Rute-B mengunjungi beberapa tempat terlebih dahulu sebelum sampai pada tujuan akhir, sehingga membutuhkan waktu lebih lama dan biaya yang lebih besar daripada Rute-A. Kereta yang digunakan sebagai alat transportasi pada pengiriman lokal, antarterminal, dan pengiriman asing selalu bermuatan penuh sesuai kapasitas kereta. Kapal yang digunakan untuk pengiriman antarterminal pun selalu bermuatan penuh. Untuk pengiriman yang tidak dapat dipenuhi oleh kereta dan kapal, dapat dipenuhi dengan truk. Semakin banyak jumlah kereta, truk, dan kapal yang digunakan, semakin besar pula biaya sewa yang dikeluarkan oleh perusahaan. Karena itu, jumlah kereta, truk, dan kapal yang digunakan harus minimum. Diasumsikan bahwa kereta, truk, dan kapal disewa hanya untuk sekali pengiriman, tidak harus kembali ke daerah asal.
Model Matematika Model matematika dari masalah penentuan lokasi terminal dan rute kapal adalah model mixed integer programming (MIP). Model dideskripsikan dengan memasukkan himpunan yang diperlukan. Misalkan I menyatakan himpunan pabrik pulp, J himpunan terminal pelabuhan, K himpunan terminal inland, P himpunan produk, Q A himpunan pelanggan lokal, Q B himpunan pelanggan asing,
R
himpunan rute, I R himpunan pabrik pulp yang termasuk himpunan bagian dari pabrik pulp pada rute ke r , J R himpunan terminal pelabuhan pada rute ke r . Secara umum, digunakan indeks i untuk pabrik-pabrik pulp, j untuk terminal-terminal pelabuhan, k untuk terminal inland, r untuk rute-rute, p untuk produk-produk, q untuk pelanggan. Variabel keputusan dari masalah ini adalah:
x A = Flow produk p pada rute-A ke r dari rijp
pabrik pulp i ke terminal pelabuhan j,
x B = Flow produk p pada rute-B ke r dari rijp
pabrik pulp i ke terminal pelabuhan j,
Semua rute berakhir di terminal pelabuhan. Untuk memodelkan batasan waktu pada ruteA dan rute-B, diperlukan variabel yang menggambarkan flow/arus balik pada rute-rute dari terminal pelabuhan kembali ke pabrik. Flow tersebut tidak memuat produk apapun.
x R = Flow/arus ji
balik dari terminal pelabuhan j ke pabrik pulp i,
Variabel yang berkaitan dengan pengiriman produk dari pabrik ke pelanggan lokal dengan menggunakan kereta dan truk didefinisikan sebagai:
y lokal - kereta = Flow produk p dari pabrik iqp y lokal - truk iqp
pulp i ke pelanggan lokal q dengan menggunakan kereta, = Flow produk p dari pabrik pulp i ke pelanggan lokal q dengan menggunakan truk.
Variabel pada terminal-terminal dapat didefinisikan sebagai:
y term = j y kinland =
Total flow produk-produk pada terminal pelabuhan j, Total flow produk-produk pada terminal inland k.
11
Variabel terkait pengiriman produk dari terminal pelabuhan dan terminal inland ke pelanggan asing dengan menggunakan kereta dan truk dapat didefinisikan sebagai: -kereta y asing = jqp
-truk y asing = jqp
asing -kereta ykqp =
y
asing -truk kqp
=
Flow produk p dari terminal pelabuhan j ke pelanggan asing q dengan menggunakan kereta, Flow produk p dari terminal pelabuhan j ke pelanggan asing q dengan menggunakan truk, Flow produk p dari terminal inland k ke pelanggan asing q dengan menggunakan kereta, Flow produk p dari terminal inland k ke pelanggan asing q dengan menggunakan truk.
Tujuan utama dari penentuan lokasi terminal dan rute kapal adalah menentukan terminal dan rute mana yang digunakan oleh perusahaan tersebut agar biaya pengiriman minimum, maka fungsi objektif dari permasalahan ini dapat dimodelkan sebagai berikut:
Min z = C
Diperlukan juga himpunan variabel biner dalam formulasi model. Himpunan variabel mengenai rute-rute dapat ditunjukkan sebagai:
1, jika rute A yang ke r digunakan urA = 0, selainnya 1, jika rute B yang ke r digunakan urB = 0, selainnya Himpunan variabel-variabel yang berkaitan dengan penggunaan terminal didefinisikan sebagai:
1, jika terminal pelabuhan j digunakan z = 0, selainnya 1, jika terminal inland k digunakan zkinland = 0, selainnya term j
+ Clokal + C J -K + Casing +
Creturn + C flow + C fix-term + C rent-kereta + Crent-truk + Crent-kapal + Cvoy dengan routes
C
pengangkutan produk pada rute-rute, = biaya pengangkutan produk dari pabrik pulp ke pelanggan lokal, biaya pengangkutan produk dari = terminal pelabuhan ke terminal inland, = biaya pengangkutan produk dari terminal pelabuhan dan terminal inland ke pelanggan asing, = biaya rute balik dari terminal pelabuhan ke pabrik pulp, = biaya cukai produk per ton pada terminal, = biaya tetap terminal,
J-K
asing
C
C
return
C
flow fix-term
C C
= biaya
lokal
C
C Variabel terkait pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan kereta, truk, dan kapal dapat didefinisikan sebagai: . -kereta y JK = Flow produk p dari terminal jkp pelabuhan j ke terminal inland k dengan menggunakan kereta, -truk y JK = Flow produk p dari terminal jkp pelabuhan j ke terminal inland k dengan menggunakan truk, -kapal y JK = Flow produk p dari terminal jkp pelabuhan j ke terminal inland k dengan menggunakan kapal.
routes
rent-kereta
C C
rent-truk
= biaya sewa truk,
rent-kapal
C
voy
= biaya sewa kereta, = biaya sewa kapal, dan
=
biaya pelayaran untuk rute-rute, baik rute-A maupun rute-B. A
Misalkan crijp adalah biaya pengangkutan produk p per ton dari pabrik pulp i sampai terminal pelabuhan j untuk rute-A ke r, dan B crijp adalah biaya pengangkutan produk p per
ton dari pabrik pulp i sampai terminal pelabuhan j untuk rute-B ke r. Total biaya pengangkutan untuk rute-rute dapat diformulasikan sebagai
C
routes
A A = ∑ ∑∑ ∑ xrijp crijp
r∈RA i∈I r j∈J r p∈P
B B + ∑ ∑∑ ∑ xrijp crijp
r∈RB i∈I r j∈Jr p∈P
12
lokal-kereta ciqp
Misalkan
adalah
biaya
pengiriman produk p per ton dari pabrik pulp i ke pelanggan lokal q yang menggunakan lokal-truk
kereta, dan ciqp
adalah biaya pengiriman
produk p per ton dari pabrik pulp i ke pelanggan lokal q yang menggunakan truk. Total biaya pengiriman antara pabrik pulp dan pelanggan domestik dapat diformulasikan sebagai
C
lokal
menggunakan truk. Biaya total pengangkutan antara terminal pelabuhan dan terminal inland ke pelanggan asing dapat diformulasikan sebagai
C
casing-kereta = ∑ ∑ ∑ yasing-kereta + jqp jqp
asing
j∈J q∈QB p∈P
∑∑ ∑y j∈J q∈QB p∈P
k∈K q∈QB p∈P
Misalkan
k∈K q∈QB p∈P
lokal-truk lokal-truk iqp iqp
adalah
biaya
menggunakan truk, dan
-truk c JK adalah biaya jkp
c
JK -kapal jkp
adalah biaya
pengangkutan produk p per ton dari terminal pelabuhan j ke terminal inland k dengan menggunakan kapal. Biaya pengangkutan produk antarterminal dapat diformulasikan sebagai
c JK-kereta = ∑∑∑ y JK-kereta + jkp jkp j∈J k∈K p∈P
∑∑∑ y
JK-truk JK-truk jkp jkp
∑∑∑ y
JK-kapal JK-kapal jkp jkp
Misalkan
c
+
C
= ∑∑ x Rji cRji
return
j∈J i∈I
pel
Misalkan c j misalkan c
ind k
pada terminal inland k . Misalkan pula f j ind
dan f k
adalah biaya tetap terminal inland
k . Total biaya flow dan total biaya tetap terminal dapat diformulasikan sebagai flow
= ∑ y jpel c jpel + ∑ ykind ckind
fix-term
k∈K
= ∑ f jpel z jpel + ∑ f kind zkind j∈J
-truk c asing biaya pengangkutan produk jqp
p per ton dari terminal pelabuhan j ke pelanggan asing q dengan menggunakan truk, asing -kereta biaya pengangkutan produk p per ckqp
ton dari terminal inland k ke pelanggan asing q asing -truk
dengan menggunakan kereta, dan ckqp
biaya pengangkutan produk p per ton dari terminal inland k ke pelanggan asing q dengan
pel
adalah biaya tetap pada terminal pelabuhan j ,
C
-kereta c asing biaya pengangkutan jqp
j , dan
biaya cukai produk per ton
j∈J
c
adalah biaya cukai produk
per ton pada terminal pelabuhan
C
produk p per ton dari terminal pelabuhan j ke pelanggan asing q dengan menggunakan kereta,
c
terminal pelabuhan j ke pabrik pulp i . Formulasi dari biaya total flow balik tersebut adalah
pengangkutan produk p per ton dari terminal pelabuhan j ke terminal inland k dengan
j∈J k∈K p∈P
asing-truk asing-truk kqp kqp
R
-kereta c JK jkp
j∈J k∈K p∈P
+
Misalkan c ji biaya untuk flow balik dari
menggunakan kereta,
J-K
c
c
pengangkutan produk p per ton dari terminal pelabuhan j ke terminal inland k dengan
C
+
asing-kereta asing-kereta kqp kqp
∑ ∑ ∑y
i∈I q∈QA p∈P
i∈I q∈QA p∈P
c
∑ ∑ ∑y
lokal-kereta lokal-kereta ciqp = ∑ ∑ ∑ yiqp +
∑∑ ∑y
asing-truk asing-truk jqp jqp
Misalkan
k∈K
lokal -kereta
f iqp
dan
lokal -kereta wiqp
berturut-turut menyatakan biaya sewa dan banyaknya kereta yang digunakan untuk mengirimkan produk p dari pabrik i ke JK -kereta
pelanggan lokal q, f jkp
dan
-kereta w JK jkp
berturut-turut menyatakan biaya sewa dan banyaknya kereta yang digunakan untuk mengirimkan produk p dari terminal asing -kereta pelabuhan j ke terminal inland k, f jqp dan
-kereta wasing berturut-turut menyatakan jqp
biaya sewa dan banyaknya kereta yang
13
digunakan untuk mengirimkan produk p dari terminal pelabuhan j ke pelanggan asing q, asing -kereta
dan
f kqp
asing -kereta wkqp berturut-turut
menyatakan biaya sewa dan banyaknya kereta yang digunakan untuk mengirimkan produk p dari terminal inland k ke pelanggan asing q. Total biaya sewa kereta dapat diformulasikan sebagai
C
rent-kereta
C
∑∑∑ f j∈J k∈K p∈P
∑∑ ∑ f j∈J q∈QB p∈P
k∈K q∈QB p∈P
asing-kereta jqp
+
+ wasing-kereta jqp
asing-kereta kqp
lokal -truk
Misalkan
w
fiqp
asing-kereta wkqp
lokal -truk wiqp
dan
berturut-turut menyatakan biaya sewa dan banyaknya truk yang digunakan untuk mengirimkan produk p dari pabrik i ke JK -truk
pelanggan lokal q,
dan
f jkp
-truk w JK jkp
berturut-turut menyatakan biaya sewa dan banyaknya truk yang digunakan untuk mengirimkan produk p dari terminal
vB
untuk rute-A dan cr rute-B.
C
w
C
rent-truk
lokal-truk lokal-truk wiqp = ∑∑ ∑ fiqp + i∈I q∈QA p∈P
∑∑∑ f j∈J k∈K p∈P
JK-truk jkp
wJK-truk + jkp
∑∑ ∑ f
asing-truk jqp
∑∑∑f
asing-truk kqp
j∈J q∈QB p∈P
k∈K q∈QB p∈P
wasing-truk + jqp asing-truk wkqp
voy
vrB
adalah
= ∑ vrAcrvA + ∑ vrBcrvB r∈RB
∑ ∑x
B + ∑ ∑ xrijp +
A rijp
r∈RA j∈J r
r∈RB j∈J r
∑y
berturut-turut
menyatakan biaya sewa dan banyaknya truk yang digunakan untuk mengirimkan produk p dari terminal inland k ke pelanggan asing q. Total biaya sewa truk dapat diformulasikan sebagai
rute-A dan
banyaknya
yang terdapat di pabrik pulp i . Untuk memastikan bahwa flow produk yang keluar dari pabrik pulp tidak melebihi supply, diformulasikan kendala sebagai berikut
berturut-turut menyatakan
asing -truk kqp
adalah
dengan kendala-kendala sebagai berikut: 1. Misalkan sip adalah supply produk p
biaya sewa dan banyaknya truk yang digunakan untuk mengirimkan produk p dari terminal pelabuhan j ke pelanggan asing q, dan
v
Misalkan
r∈RA
asing -truk
asing -truk f kqp
biaya pelayaran untuk A r
banyaknya pelayaran pada rute-B. Biaya total pelayaran untuk rute-rute dapat diformulasikan sebagai
pelabuhan j ke terminal inland k, f jqp -truk wasing jqp
crvA adalah biaya pelayaran
Misalkan
pelayaran pada
∑∑∑f
dan
JK-kapal JK-kapal = ∑∑∑ f jkp wjkp
rent-kapal
j∈J k∈K p∈P
i∈I q∈QA p∈P
JK-kereta jkp
-kapal w JK jkp
dan
f jkp
berturut-turut menyatakan biaya sewa dan banyaknya kapal yang digunakan untuk mengirimkan produk p dari terminal pelabuhan j ke terminal inland k, Total biaya sewa kapal dapat diformulasikan sebagai
lokal-kereta lokal-kereta wiqp = ∑∑ ∑ fiqp + JK-kereta jkp
JK -kapal
Misalkan
q∈QA
lokal-kereta iqp
lokal-truk + ∑ yiqp ≤ sip , q∈QA
∀i ∈ I , p ∈ P 2.
Kendala keseimbangan flow untuk terminal pelabuhan dapat ditunjukkan sebagai
∑ ∑x
r∈RA i∈I r
A rijp
B + ∑ ∑ xrijp = r∈RB i∈Ir
∑y
JK-kereta jkp
+ ∑ y JK-truk + jkp
∑y
JK-kapal jkp
+ ∑ y asing-kereta + jqp
k∈K
k∈K
∑y
q∈QA
k∈K
asing-truk jqp
q∈QA
,
∀j ∈ J , p ∈ P.
14
3.
Kendala ini memastikan bahwa flow dari setiap produk yang masuk ke terminal pelabuhan sama dengan flow yang keluar dari terminal pelabuhan. Total flow produk-produk yang masuk ke terminal pelabuhan menjadi
∑ ∑∑ x
r∈RA i∈I r p∈P
r∈RB i∈I r p∈P
4.
Kendala (3) memastikan bahwa total flow produk-produk yang masuk ke terminal pelabuhan sama dengan total flow produk pada rute-A dan rute-B. Flow yang keluar dari terminal pelabuhan dapat diangkut ke terminal inland atau langsung kepada pelanggan. Kendala keseimbangan flow untuk terminal inland menjadi
∑y j∈J
=
JK-kereta jkp
∑y
q∈QB
asing-kereta kqp
∑y i∈I
lokal-kereta iqp
∑y
asing-kereta jqp
∑y
∀k ∈ K
j∈J p∈P
Kendala (5) memastikan bahwa seluruh flow produk yang tersalurkan dari terminal pelabuhan ke sebuah terminal inland sama dengan total flow pada terminal inland. Misalkan kapasitas terminal pelabuhan j ditunjukkan oleh b j dan kapasitas terminal inland k ditunjukkan oleh bk . Kendala kapasitas pada terminal inland dapat pelabuhan dan diformulasikan sebagai
p dari pelanggan
lokal-truk + ∑ yiqp = dqpA , i∈I
∀q ∈ QA , p ∈ P j∈J
+∑∑ y JK-kapal , jkp
dan
yang memastikan bahwa permintaan para pelanggan terpenuhi diformulasikan sebagai
q∈QB
j∈J p∈P
A
d qp
dinyatakan oleh B
asing-truk + ∑ ykqp ,
ykind = ∑∑ y JK-kereta +∑∑ y JK-truk jkp jkp
6.
q
asing q dinyatakan oleh d qp . Kendala
j∈J
Kendala (4) membuat total flow dari setiap produk ke setiap terminal inland sama dengan total flow dari tiap produk yang berasal dari terminal inland kepada para pelanggan asing. Total flow dari produk-produk yang masuk ke sebuah terminal inland menjadi
j∈J p∈P
atau z k = 0 ). Harus ditunjukkan kendala yang memastikan bahwa permintaan para pelanggan terpenuhi. Misalkan permintaan produk p dari pelanggan
permintaan produk
∀k ∈ K , p ∈ P.
5.
∀k ∈ K
lokal
+ ∑ y JK-truk + ∑ y JK-kapal jkp jkp j∈J
ykind ≤ bk zkind ,
ind
7.
∀j ∈ J .
∀j ∈ J
Kendala (6) juga memastikan bahwa tidak ada yang dapat disalurkan dari atau pel ke terminal yang tidak dibuka ( z j = 0
B + ∑ ∑∑ xrijp = y jpel
A rijp
y jpel ≤ bj z jpel ,
k∈K
asing-kereta kqp
+ ∑ y asing-truk + jqp j∈J
asing-truk + ∑ ykqp = dqpB ,
k∈K
∀q ∈ QB , p ∈ P 8.
Misalkan T menunjukkan total waktu (dalam contoh kasus ini per bulan), s menunjukkan kapasitas total dari setiap kapal pengangkut, dan m menunjukkan banyaknya kapal yang tersedia di pabrik. Selanjutnya, misalkan
trA menunjukkan
waktu yang terpakai (dalam hari) untuk rute-A yang ke r dan misalkan
trB
menunjukkan waktu yang digunakan untuk rute-B yang ke r . Waktu yang digunakan untuk kembali ke pabrik pulp R i dari terminal j dinyatakan oleh t ji . Untuk memastikan bahwa batas waktunya tidak terlewati diformulasikan sebagai
∑ ∑∑ ∑ t
A A r rijp
+ ∑∑t Rji x Rji +
∑ ∑∑ ∑ t
B B r rijp
≤T ×s×m
r∈RA i∈I r j∈J r p∈P
r∈RB i∈I r j∈Jr p∈P
x
x
j∈J i∈I
15
9.
Kendala keseimbangan diformulasikan sebagai
∑ ∑∑x
A rijp
r∈RA j∈J r p∈P
∑x j∈J
R ji
,
rute
B + ∑ ∑ ∑ xrijp = r∈RB j∈Jr p∈P
∀i ∈ I
∑∑ ∑y
lokal-kereta iqp
i∈I q∈QA p∈P
Kendala (9) memastikan bahwa flow yang keluar dari pabrik pulp sama dengan flow yang kembali ke pabrik pulp yang sama. 10. Untuk menjamin bahwa tidak ada yang ditransportasikan pada rute-A dan rute-B yang tidak terpilih, diperlukan kendala
∑∑ ∑ x
≤ MurA , ∀r ∈ RA
∑∑ ∑ x
≤ MurB , ∀r ∈ RB
A rijp
i∈Ir j∈J r p∈P
B rijp
i∈Ir j∈J r p∈P
Konstanta M adalah angka yang relatif besar dan dalam kasus ini digunakan M=100000. Bila variabel biner untuk rute adalah nol, sisi kanan pada kendala menjadi nol, dan tidak ada kemungkinan untuk menggunakan variabel flow yang berkaitan pada rute.
vrA dan
11. Misalkan
vrB
∑∑ ∑y
∑∑ ∑ xrijpA ≤ vrAsurA , ∀r ∈ RA i∈Ir j∈J r p∈P
∑∑ ∑ x i∈Ir j∈J r p∈P
≤ v su , ∀r ∈ RB B r
B r
12. Untuk membedakan antara rute-A dan rute-B, diperlukan kendala
∑ ∑∑ ∑ x
r∈RA i∈I r j∈J r p∈P
A rijp
= as
∑∑∑ y
JK-kereta jkp
∑∑∑ y
JK-truk jkp
∑∑∑ y
JK-kapal jkp
j∈J k∈K p∈P
j∈J k∈K p∈P
j∈J k∈K p∈P
15. Misalkan
s
dan
s
= wJK-kereta s kereta jkp jkp
≤ wJK-truk struk jkp jkp = wJK-kapal s kapal jkp jkp
truk s kereta dan s jqp berturut-turut jqp
menyatakan kapasitas kereta dan truk yang digunakan untuk mengirimkan produk p dari terminal pelabuhan j ke pelanggan asing q, dan misalkan truk skqp
berturut-turut
berturut-turut
menyatakan kapasitas kereta dan truk
kereta skqp
menyatakan
kapasitas kereta dan truk yang digunakan untuk mengirimkan produk p dari terminal inland k ke pelanggan asing q. Untuk mendapatkan banyaknya kereta dan truk yang digunakan dalam pengiriman asing diperlukan kendala
j∈J q∈QB p∈P
truk iqp
s kapal jkp
dan
berturut-turut menyatakan kapasitas kereta, truk, dan kapal yang digunakan untuk mengirimkan produk p dari terminal pelabuhan j ke terminal inland k. Untuk mendapatkan banyaknya kereta, truk, dan kapal yang digunakan dalam pengiriman antarterminal diperlukan kendala
∑∑ ∑ y
dengan a sembarang bilangan bulat positif. Kendala (12) memastikan bahwa flow yang dimuat oleh rute-A selalu bermuatan penuh sesuai dengan kapasitas kapal. kereta iqp
truk s kereta , s jkp , jkp
14. Misalkan
dan B rijp
lokal-truk truk ≤ wiqp siqp
lokal-truk iqp
i∈I q∈QA p∈P
lokal-kereta kereta = wiqp siqp
menotasikan
banyaknya pelayaran pada rute-A dan rute-B. Untuk mendapatkan banyaknya pelayaran pada setiap rute, diperlukan kendala berikut
13. Misalkan
yang digunakan untuk mengirimkan produk p dari pabrik i ke pelanggan lokal q. Untuk mendapatkan banyaknya kereta dan truk yang digunakan dalam pengiriman lokal diperlukan kendala
asing-kereta jqp
∑∑ ∑ y j∈J q∈QB p∈P
asing-truk jqp
∑ ∑ ∑y
k∈K q∈QB p∈P
k∈K q∈QB p∈P
≤ wasing-truk struk jqp jqp
asing-kereta kqp
∑ ∑ ∑y
asing-truk kqp
= wasing-kereta skereta jqp jqp
asing-kereta kereta = wkqp skqp
asing -truk truk skqp ≤ wkqp
PENYELESAIAN MASALAH PENENTUAN LOKASI TERMINAL DAN RUTE KAPAL Penyelesaian masalah penentuan lokasi terminal dan rute kapal dengan metode branch-and-bound pada karya ilmiah ini dilakukan dengan memanfaatkan software LINGO 8.0. Untuk mengimplementasikan metode Branch-and-Bound dalam penyelesaian masalah penentuan terminal dan rute kapal ini digunakan data hipotetik dengan 6 simpul pelanggan terdiri atas 2 pelanggan lokal dan 4 pelanggan asing, 2 pabrik, dan 3 terminal yang terdiri atas 2 terminal pelabuhan dan 1 terminal inland. Data-data biaya tetap (terminal, kereta, truk, dan kapal), biaya pengangkutan (shipping cost) untuk tiap flow, biaya pelayaran, kapasitas untuk setiap
terminal, supply yang tersedia pada pabrik dan demand dari para pelanggan diberikan pada Lampiran 2. Syntax program dan hasil komputasi dalam LINGO 8.0 untuk memproses penyelesaian masalah ini dicantumkan dalam Lampiran 3. Solusi yang didapat adalah solusi optimal dengan nilai optimal fungsi objektifnya 324129 dan diperoleh pada iterasi ke-26128. Ilustrasi keseluruhan network yang dihasilkan dari contoh implementasi penyelesaian masalah penentuan terminal dan rute kapal dengan metode Branch-and-Bound berdasarkan data-data sebelumnya diberikan pada Gambar 10 untuk produk 1 dan Gambar 11 untuk produk 2.
Gambar 10 Ilustrasi terminal dan rute yang digunakan untuk memenuhi permintaan produk 1.
17
Gambar 11 Ilustrasi terminal dan rute yang digunakan untuk memenuhi permintaan produk 2. Tabel 2 Banyaknya pelayaran yang dilakukan pada rute-A dan rute-B
Rute-A Rute-B
Rute Pabrik1-Terminal Pelabuhan 1 Pabrik2-Terminal Pelabuhan 2 Pabrik2-Terminal Pelabuhan 2
Muatan 4000 ton 1000 ton 650.5 ton
Pelayaran 10 2
Tabel 3 Banyaknya kereta, truk, dan kapal yang disewa
Jenis Transportasi Kereta Truk Kapal
Pelanggan Lokal 30 Unit -
Pelanggan Asing Pelabuhan Inland 25 Unit 166 Unit 150 Unit -
Gambar 10 dan 11 berturut-turut menunjukan rute serta jalur-jalur mana saja yang digunakan untuk mengirimkan produk 1 dan produk 2 kepada para pelanggan, baik pelanggan lokal maupun pelanggan asing. Tabel 2 menyatakan banyaknya muatan dan
PelabuhanInland 7 Unit 5 Unit 5 Unit
pelayaran yang dilakukan pada rute-A dan rute-B. Tabel 3 menyatakan banyaknya kereta, truk dan kapal yang disewa untuk memenuhi permintaan pelanggan lokal, pelanggan asing dan pengiriman antarterminal.
SIMPULAN DAN SARAN Simpulan Masalah penentuan terminal dan rute kapal ini bertujuan untuk meminimumkan biaya pengiriman yang harus dikeluarkan oleh suatu perusahaan. Karya ilmiah ini merupakan penyederhanaan dari masalah yang dihadapi oleh salah satu supplier pasar pulp terbesar di dunia, Sodra Cell AB. Masalah pengiriman barang ini dapat dipandang sebagai suatu model MIP, sehingga untuk meminimumkan biaya pengiriman dapat diantisipasi dengan menentukan terminal dan rute yang tepat. Hasil yang diharapkan diperoleh dengan metode branch and bound yang diaplikasikan dengan software LINGO 8.0.
Saran Pada karya ilmiah ini data yang digunakan merupakan data hipotetik, saran untuk penulisan selanjutnya adalah dengan menggunakan data yang asli. Selain itu, pada masalah ini dapat pula dikembangkan apakah perlu adanya pengiriman singkat dengan kapasitas muatan kapal yang lebih kecil, sehingga perusahaan tersebut memilki alternatif lain dalam hal pengiriman selain dari rute yang tersedia. Pada masalah ini kereta, truk, dan kapal hanya disewa untuk sekali pengiriman, dapat dikembangkan pula untuk pengiriman yang berulang.
DAFTAR PUSTAKA Ahuja, R.K., T.L. Magnanti, J.B. Orlin. 1993. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, New Jersey. Chartrand G. & O.R. Oellermann. 1993. Applied and Algorithmic Graph Theory. McGraw-Hill, New York. Foulds, L.R. 1992. Graph Theory Applications. Springer-Verlag, New York. Garfinkel, R.S. & G.L. Nemhauser. 1972. Integer Programming. John Willey & Sons, New York. Gunnarsson,H. RÖnnqvist, M. Carlsson, D. 2006. A combined terminal location and ship routing problem. Journal of the Operational Research Society.57: 928–938
Nash, S.G. & A. Sofer. 1996. Linear and Nonlinear Programming. McGraw-Hill, New York. Taha, H.A. 1975. Integer Programming: Theory, Applications, and Computations. Academic Press, New York. Taha, H.A. 1996. Pengantar Riset Operasi. Alih Bahasa: Drs. Daniel Wirajaya. Binarupa Aksara, Jakarta. Terjemahan dari: Operations Research. Winston, W.L. 1995. Introduction to Mathematical Programming 2nd ed. Duxbury, New York. Winston, W.L. 2004. Operations Research Applications and Algorithms 4th ed. Duxbury, New York.
LAMPIRAN
20
Lampiran 1 Syntax Program LINGO 8.0 untuk Menyelesaikan Masalah Pemrograman Linear dengan Metode Branch-and-Bound beserta Hasil yang Diperoleh
1) LP-relaksasi masalah (2.6) Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10
3 x1 + 4 x2 ≤ 25
x1 , x2 ≥ 0 Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; end
3) Subproblem 4 Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10 3 + 4 x 2 ≤ 25
x2 ≤ 2
Hasil yang diperoleh:
x1 ≤ 5 x1 , x 2 ≥ 0
2) Subproblem 2 Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10
Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; x2<=2; x1<=5; end Hasil yang diperoleh:
3 x1 + 4 x2 ≤ 25
x2 ≤ 2 x1 , x2 ≥ 0 Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; x2<=2; end Hasil yang diperoleh:
4) Subproblem 5 Max z = 2 x1 + 3 x2 terhadap
21
x1 + 2 x2 ≤ 10 3 + 4 x2 ≤ 25
x2 ≤ 2 x1 ≥ 6 x1 , x2 ≥ 0 Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; x2<=2; x1>=6; end Hasil yang diperoleh:
6) Subproblem 7 Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10
3 + 4 x2 ≤ 25
x2 ≥ 2 x1 ≥ 6 x1 , x2 ≥ 0
5) Subproblem 6 Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10
Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; x2>=2; x1>=6; end Hasil yang diperoleh:
3 + 4 x2 ≤ 25
x2 ≤ 1 x1 ≥ 6 x1 , x2 ≥ 0 Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25; x2<=1; x1>=6; end Hasil yang diperoleh:
7) Subproblem 3 Max z = 2 x1 + 3 x2 terhadap x1 + 2 x2 ≤ 10
3 x1 + 4 x2 ≤ 25
x2 ≥ 3 x1 , x2 ≥ 0 Syntax program pada LINGO 8.0: !fungsi objektif; max=2*x1+3*x2; !kendala; x1+2*x2<=10; 3*x1+4*x2<=25;
22
x2>=3; end Hasil yang diperoleh:
23
Lampiran 2 Data-data Hipotetik untuk Implementasi Penyelesaian Masalah Penentuan Terminal dan Rute Kapal dengan Metode Branch-and-Bound
Tabel 4 Biaya pengiriman produk dari pabrik ke terminal pelabuhan pada rute-A
Tabel 6 Biaya pengiriman produk dari pabrik ke pelanggan lokal dengan menggunakan kereta Pelanggan Pabrik Lokal Produk Cost
Rute-A
Pabrik
Term
Prod
Cost
1
1
1
1
20
1
1
1
2
21
1
1
1
10
1
1
2
1
31
1
1
2
9
1
1
2
2
31
1
2
1
11
1
2
1
1
36
1
2
2
10
1
2
1
2
37
2
1
1
11
1
2
2
1
24
2
1
2
12
1
2
2
2
23
2
2
1
10
2
2
2
11
Tabel 5 Biaya pengiriman produk dari pabrik ke terminal pelabuhan pada rute-B
Tabel 7 Biaya pengiriman produk dari pabrik ke pelanggan lokal dengan menggunakan truk Pelanggan Pabrik Lokal Produk Cost
Rute-B
Pabrik
Term
Prod
Cost
1
1
1
1
25
1
1
1
2
26
1
1
2
1
36
1
1
1
12
1
1
2
2
36
1
1
2
11
1
2
1
1
41
1
2
1
12
1
2
1
2
42
1
2
2
11
1
2
2
1
29
2
1
1
100000
1
2
2
2
28
2
1
2
100000
2
1
1
1
27
2
2
1
12
2
1
1
2
28
2
2
2
12
2
1
2
1
38
2
1
2
2
38
2
2
1
1
43
2
2
1
2
44
2
2
2
1
31
1
1
1
13
2
2
2
2
30
1
1
2
14
3
1
1
1
30
1
2
1
20
3
1
1
2
31
1
2
2
19
3
1
2
1
41
1
3
1
100000
3
1
2
2
41
1
3
2
100000
3
2
1
1
46
1
4
1
100000
3
2
1
2
47
1
4
2
100000
3
2
2
1
34
2
1
1
100000
3
2
2
2
33
2
1
2
100000
Tabel 8 Biaya pengiriman produk dari terminal pelabuhan ke pelanggan asing dengan menggunakan kereta Pelanggan Term asing Prod Cost
24
Tabel 8 (Lanjutan) Pelanggan Term asing
Prod
Cost
Tabel 11 Biaya pengiriman produk dari terminal inland ke pelanggan asing dengan menggunakan truk Pelanggan Term asing Prod Cost
2
2
1
100000
2
2
2
100000
1
1
1
100000
2
3
1
100000
1
1
2
100000
2
3
2
100000
1
2
1
100000
2
4
1
14
1
2
2
100000
2
4
2
14
1
3
1
10
1
3
2
11
1
4
1
100000
1
4
2
100000
Tabel 9 Biaya pengiriman produk dari terminal pelabuhan ke pelanggan asing dengan menggunakan truk Pelanggan Term asing Prod Cost
Tabel 12 Waktu arus balik (dalam hari) dari terminal ke pabrik
1
1
1
12
1
1
2
10
Term
Pabrik
Waktu
1
2
1
21
1
1
1
1
2
2
20
1
2
2
1
3
1
100000
2
1
2
1
3
2
100000
2
2
1
1
4
1
100000
1
4
2
100000
2
1
1
100000
Term
Pabrik
Cost
2
1
2
100000
1
1
10
2
2
1
100000
1
2
15
2
2
2
100000
2
1
17
2
3
1
100000
2
2
12
2
3
2
100000
2
4
1
15
2
4
2
16
Tabel 10 Biaya pengiriman produk dari terminal inland ke pelanggan asing dengan menggunakan kereta Pelanggan Term asing Prod Cost 1
1
1
100000
1
1
2
100000
1
2
1
100000
1
2
2
100000
1
3
1
100000
1
3
2
100000
1
4
1
100000
1
4
2
100000
Tabel 13 Biaya arus balik dari terminal pelabuhan ke pabrik
Tabel 14 Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan kereta Term
Inland
Prod
Cost
1
1
1
10
1
1
2
11
2
1
1
9
2
1
2
10
Tabel 15 Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan truk Term
Inland
Prod
Cost
1
1
1
12
1
1
2
13
2
1
1
100000
2
1
2
100000
25
Tabel 16 Biaya pengiriman produk dari terminal pelabuhan ke terminal inland dengan menggunakan kapal Term
Inland
Prod
Cost
1
1
1
9
1
1
2
11
2
1
1
10
2
1
2
10
Tabel 17 Demand pulp untuk pelanggan lokal pelanggan lokal Prod Demand 1
1
400
1
2
600
2
1
1200
2
2
800
Tabel 18 Demand pulp untuk pelanggan asing pelanggan asing Prod Demand 1
1
700
1
2
900
2
1
500
2
2
400
3
1
800
3
2
700
4
1
800
4
2
850.5
Tabel 19 Supply produk yang tersedia untuk setiap pabrik Pabrik
Prod
Supply
1
1
2000
1
2
3000
2
1
2500
2
2
1300
Waktu pelayaran untuk rute-A adalah 1 hari dengan biaya 5 $ Tabel 20 Kapasitas maksimum dan biaya sewa alat-alat transportasi Alat Biaya Kapasitas transportasi sewa Kapal 500 ton 5 pengangkut Kereta
100 ton
2
Truk
10 ton
0.5
Kapal
150 ton
3
Tabel 21 Waktu (dalam hari) dan biaya pelayaran untuk rute-B Rute-B
Waktu
Cost
1
2
5
2
3
5
3
4
5
Tabel 22 Kapasitas, biaya cukai per unit, dan biaya tetap untuk terminal pelabuhan maupun inland Biaya Bea Term Kapasitas tetap cukai Pelabuhan 1 8000 12 2 Pelabuhan 2 4000 14 5 Inland 1
2000
13
3
26
Lampiran 3 Syntax dan Hasil Komputasi Program LINGO 8.0 untuk Masalah Penentuan Terminal dan Rute Kapal Berikut akan diperlihatkan syntax Masalah Penentuan Terminal dan Rute Kapal. MODEL: !MASALAH PENENTUAN TERMINAL DAN RUTE KAPAL; SETS: TIPE_RUTEA/TRA1/:TIMEA,UA,VOYA,COST_VOYA; TIPE_RUTEB/TRB1 . . TRB3/:TIMEB,UB,VOYB,COST_VOYB; PABRIK/PB1, PB2/; PLABUHAN/PL1, PL2/:TOT,CAP,Z,FIX,FLOW; INLAND/IN1/:TOT_IN,CAP_IN,Z_IN,FIX_IN,FLOW_IN; PLANGGANA/CA1 . . CA2/; PLANGGANB/CB1 . . CB4/; PROD/PR1 PR2/; RUTE_KERETA( PABRIK, PLANGGANA, PROD): VOL1,COST1,KERETA_1,COST_KR1; RUTE_TRUK( PABRIK, PLANGGANA, PROD): VOL1_A,COST1_A,TRUK_1,COST_TR1; RUTE2_KERETA( PLABUHAN, INLAND, PROD): VOL2,COST2,KERETA_2,COST_KR2; RUTE2_TRUK( PLABUHAN, INLAND, PROD): VOL2_A,COST2_A,TRUK_2,COST_TR2; RUTE2_KAPAL( PLABUHAN, INLAND, PROD): VOL2_B,COST2_B,KAPAL_2,COST_KL2; RUTE3_KERETA( PLABUHAN, PLANGGANB, PROD): VOL3,COST3,KERETA_3,COST_KR3; RUTE3_TRUK( PLABUHAN, PLANGGANB, PROD): VOL3_A,COST3_A,TRUK_3,COST_TR3; RUTE4_KERETA( INLAND, PLANGGANB, PROD): VOL4,COST4,KERETA_4,COST_KR4; RUTE4_TRUK( INLAND, PLANGGANB, PROD): VOL4_A,COST4_A,TRUK_4,COST_TR4; RUTE5( PLABUHAN, PABRIK): VOL5,TIMER,COST_TIMER; LINK1( PABRIK, PROD): SUP; LINK2( PLANGGANA, PROD): DEMA; LINK3( PLANGGANB, PROD): DEMB; RUTEA( TIPE_RUTEA, PABRIK, PLABUHAN, PROD): VOLA,COSTA,A; RUTEB( TIPE_RUTEB, PABRIK, PLABUHAN, PROD): VOLB,COSTB; ENDSETS DATA: SUP = 2000 3000 2500 1300 ; DEMA = 400 600 1200 800; DEMB = 700 900 500 400 800 700 800 850.5; CAP = 8000 4000; CAP_IN = 2000; FLOW = 2 5; FIX = 12 14;
27
FLOW_IN = 3; FIX_IN = 13; M = 100000; S = 500; KAP_KERETA = 100; KAP_TRUK = 10; KAP_KAPAL = 150; R = 30; COST_VOYA = 5; COST_VOYB = 5; COST_KR1 = 2; COST_TR1 = 0.5; COST_KR2 = 2; COST_TR2 = 0.5; COST_KL2 = 3; COST_KR3 = 2; COST_TR3 = 0.5; COST_KR4 = 2; COST_TR4 = 0.5; TIMEA = 1; TIMEB = 2 3 4; TIMER = 1 2 2 1 ; COST_TIMER = 10 15 17 12; SHIP = 2; COST1 = 10 9 11 10 11 12 10 11 ; COST1_A = 12 11 12 11 100000 100000 12 12 ; COST2 = 10 11 9 10; COST2_A = 12 13 100000 100000 ; COST2_B = 9 11 10 10; COST3 = 13
28
14 20 19 100000 100000 100000 100000 100000 100000 100000 100000 100000 100000 14 14 ; COST3_A = 12 10 21 20 100000 100000 100000 100000 100000 100000 100000 100000 100000 100000 15 16 ; COST4 = 100000 100000 100000 100000 100000 100000 100000 100000 ; COST4_A = 100000 100000 100000 100000 10 11 100000 100000 ; COSTA = 20 21 31 31
29
36 37 24 23 ; COSTB = 25 26 36 36 41 42 29 28 27 28 38 38 43 44 31 30 30 31 41 41 46 47 34 33 ; ENDDATA !Fungsi Objektif; MIN=@SUM( RUTE_KERETA: COST1 * VOL1)+@SUM( RUTE_TRUK: COST1_A * VOL1_A)+@SUM( RUTE2_KERETA: COST2 * VOL2)+@SUM( RUTE2_TRUK: COST2_A * VOL2_A)+@SUM( RUTE2_KAPAL: COST2_B * VOL2_B)+@SUM( RUTE3_KERETA: COST3 * VOL3)+@SUM( RUTE3_TRUK: COST3_A * VOL3_A)+@SUM( RUTE4_KERETA: COST4 * VOL4)+@SUM( RUTE4_TRUK: COST4_A * VOL4_A)+@SUM( RUTE_KERETA: COST_KR1 * KERETA_1)+@SUM( RUTE_TRUK: COST_TR1 * TRUK_1)+@SUM( RUTE2_KERETA: COST_KR2 * KERETA_2)+@SUM( RUTE2_TRUK: COST_TR2 * TRUK_2)+@SUM( RUTE2_KAPAL: COST_KL2 * KAPAL_2)+@SUM( RUTE3_KERETA: COST_KR3 * KERETA_3)+@SUM( RUTE3_TRUK: COST_TR3 * TRUK_3)+@SUM( RUTE4_KERETA: COST_KR4 * KERETA_4)+@SUM( RUTE4_TRUK: COST_TR4 * TRUK_4)+@SUM( RUTE5: VOL5 * COST_TIMER)+@SUM( RUTEA: COSTA * VOLA)+@SUM( RUTEB: COSTB * VOLB)+@SUM( PLABUHAN( J): FLOW * TOT)+@SUM( INLAND( T): FLOW_IN * TOT_IN)+@SUM( PLABUHAN( J): FIX * Z)+@SUM( INLAND( T): FIX_IN * Z_IN)+@SUM( TIPE_RUTEA: VOYA * COST_VOYA)+@SUM( TIPE_RUTEB: VOYB * COST_VOYB); !Kendala1; @FOR( PABRIK( I):@FOR( PROD( P): @SUM( TIPE_RUTEA( RA):@SUM( PLABUHAN( J):VOLA( RA, I, J, P)))+@SUM( TIPE_RUTEB( RB):@SUM( PLABUHAN( J):VOLB( RB, I, J, P)))+@SUM( PLANGGANA( QA):VOL1( I, QA, P))+@SUM( PLANGGANA( QA):VOL1_A( I, QA, P))<= SUP( I, P))); !Kendala2;
30
@FOR( PLABUHAN( J):@FOR( PROD( P): @SUM( TIPE_RUTEA( RA):@SUM( PABRIK( I):VOLA( RA, I, J, P)))+@SUM( TIPE_RUTEB( RB):@SUM( PABRIK( I):VOLB( RB, I, J, P)))=@SUM( INLAND( T):VOL2( J, T, P))+@SUM( INLAND( T):VOL2_A( J, T, P))+@SUM( INLAND( T):VOL2_B( J, T, P))+@SUM( PLANGGANB( QB):VOL3( J, QB, P))+@SUM( PLANGGANB( QB):VOL3_A( J, QB, P)))); !Kendala3; @FOR( PLABUHAN( J): @SUM( TIPE_RUTEA( RA):@SUM( PABRIK( I):@SUM( PROD( P):VOLA( RA, I, J, P))))+@SUM( TIPE_RUTEB( RB):@SUM( PABRIK( I):@SUM( PROD( P):VOLB( RB, I, J, P))))=TOT( J)); !Kendala4; @FOR( INLAND( T):@FOR( PROD( P): @SUM( PLABUHAN( J):VOL2( J, T, P))+@SUM( PLABUHAN( J):VOL2_A( J, T, P))+@SUM( PLABUHAN( J):VOL2_B( J, T, P))=@SUM( PLANGGANB( QB):VOL4( T, QB, P))+@SUM( PLANGGANB( QB):VOL4_A( T, QB, P)))); !Kendala5; @FOR( INLAND( T): @SUM( PLABUHAN( J):@SUM( PROD( P):VOL2( J, T, P)))+@SUM( PLABUHAN( J):@SUM( PROD( P):VOL2_A( J, T, P)))+@SUM( PLABUHAN( J):@SUM( PROD( P):VOL2_B( J, T, P)))=TOT_IN( T)); !Kendala6; @FOR( PLABUHAN( J): TOT( J)<= CAP( J)*Z( J)); @FOR( INLAND( T): TOT_IN( T)<= CAP_IN( T)*Z_IN( T)); !Kendala7; @FOR( PLANGGANA( QA):@FOR( PROD( P): @SUM( PABRIK( I):VOL1( I, QA, P))+@SUM( PABRIK( I):VOL1_A( I, QA, P))= DEMA( QA, P))); @FOR( PLANGGANB( QB):@FOR( PROD( P): @SUM( PLABUHAN( J):VOL3( J, QB, P))+@SUM( PLABUHAN( J):VOL3_A( J, QB, P))+@SUM( INLAND( T):VOL4( T, QB, P))+@SUM( INLAND( T):VOL4_A( T, QB, P))= DEMB( QB, P))); !Kendala8; @SUM( TIPE_RUTEA( RA):@SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): TIMEA( RA) * VOLA ( RA, I, J, P)))))+@SUM( TIPE_RUTEB( RB):@SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): TIMEB( RB) * VOLB ( RB, I, J, P)))))+@SUM( PLABUHAN( J):@SUM( PABRIK( I):TIMER( J, I)*VOL5( J, I)))<= R * S * SHIP; !Kendala9; @FOR( PABRIK( I): @SUM( TIPE_RUTEA( RA):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLA ( RA, I, J, P))))+@SUM( TIPE_RUTEB( RB):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLB ( RB, I, J, P))))= @SUM( PLABUHAN( J): VOL5( J, I))); !Kendala10; @FOR( TIPE_RUTEA( RA): @SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLA ( RA, I, J, P))))<= M * UA( RA)); @FOR( TIPE_RUTEA( RB): @SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLB ( RB, I, J, P))))<= M * UB( RB)); !Kendala11; @FOR( TIPE_RUTEA( RA):
31
@SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLA ( RA, I, J, P))))<= VOYA( RA) * S * UA( RA)); @FOR( TIPE_RUTEA( RB): @SUM( PABRIK( I):@SUM( PLABUHAN( J):@SUM( PROD( P): VOLB ( RB, I, J, P))))<= VOYB( RB) * S * UB( RB)); !Kendala12; @FOR( RUTEA( RA, I, J, P): VOLA ( RA, I, J, P)= A * S); !Kendala13; @FOR( RUTE_KERETA( I, QA, P): VOL1( I, QA, P)= KERETA_1 * KAP_KERETA); @FOR( RUTE_TRUK( I, QA, P): VOL1_A( I, QA, P)<= TRUK_1 * KAP_TRUK); !Kendala14; @FOR( RUTE2_KERETA( J, T, P): VOL2( J, T, P)= KERETA_2 * KAP_KERETA); @FOR( RUTE2_TRUK( J, T, P): VOL2_A( J, T, P)<= TRUK_2 * KAP_TRUK); @FOR( RUTE2_KAPAL( J, T, P): VOL2_B( J, T, P)= KAPAL_2 * KAP_KAPAL); !Kendala15; @FOR( RUTE3_KERETA( J, QB, P): VOL3( J, QB, P)= KERETA_3 * KAP_KERETA); @FOR( RUTE3_TRUK( J, QB, P): VOL3_A( J, QB, P)<= TRUK_3 * KAP_TRUK); @FOR( RUTE4_KERETA( T, QB, P): VOL4( T, QB, P)= KERETA_4 KAP_KERETA); @FOR( RUTE4_TRUK( T, QB, P): VOL4_A( T, QB, P)<= TRUK_4 KAP_TRUK);
!Kendala Biner; @FOR( PLABUHAN( J):@BIN( Z)); @FOR( INLAND( T):@BIN( Z_IN)); @FOR( RUTEA:@GIN( A)); @FOR( RUTE_KERETA:@GIN( KERETA_1)); @FOR( RUTE_TRUK:@GIN( TRUK_1)); @FOR( RUTE2_KERETA:@GIN( KERETA_2)); @FOR( RUTE2_TRUK:@GIN( TRUK_2)); @FOR( RUTE2_KAPAL:@GIN( KAPAL_2)); @FOR( RUTE3_KERETA:@GIN( KERETA_3)); @FOR( RUTE3_TRUK:@GIN( TRUK_3)); @FOR( RUTE4_KERETA:@GIN( KERETA_4)); @FOR( RUTE4_TRUK:@GIN( TRUK_4)); @FOR( TIPE_RUTEA:@BIN( UA)); @FOR( TIPE_RUTEB:@BIN( UB)); @FOR( TIPE_RUTEA:@GIN( VOYA)); @FOR( TIPE_RUTEB:@GIN( VOYB)); END
Hasil yang diperoleh adalah sebagai berikut: Local optimal solution found at iteration: Objective value:
Variable
Value
26128 324129.0
Reduced Cost
* *
32
M S KAP_KERETA KAP_TRUK KAP_KAPAL R SHIP TIMEA( TRA1) UA( TRA1) VOYA( TRA1) COST_VOYA( TRA1) TIMEB( TRB1) TIMEB( TRB2) TIMEB( TRB3) UB( TRB1) UB( TRB2) UB( TRB3) VOYB( TRB1) VOYB( TRB2) VOYB( TRB3) COST_VOYB( TRB1) COST_VOYB( TRB2) COST_VOYB( TRB3) TOT( PL1) TOT( PL2) CAP( PL1) CAP( PL2) Z( PL1) Z( PL2) FIX( PL1) FIX( PL2) FLOW( PL1) FLOW( PL2) TOT_IN( IN1) CAP_IN( IN1) Z_IN( IN1) FIX_IN( IN1) FLOW_IN( IN1) VOL1( PB1, CA1, PR1) VOL1( PB1, CA1, PR2) VOL1( PB1, CA2, PR1) VOL1( PB1, CA2, PR2) VOL1( PB2, CA1, PR1) VOL1( PB2, CA1, PR2) VOL1( PB2, CA2, PR1) VOL1( PB2, CA2, PR2) COST1( PB1, CA1, PR1) COST1( PB1, CA1, PR2) COST1( PB1, CA2, PR1) COST1( PB1, CA2, PR2) COST1( PB2, CA1, PR1) COST1( PB2, CA1, PR2) COST1( PB2, CA2, PR1) COST1( PB2, CA2, PR2) KERETA_1( PB1, CA1, PR1) KERETA_1( PB1, CA1, PR2) KERETA_1( PB1, CA2, PR1) KERETA_1( PB1, CA2, PR2) KERETA_1( PB2, CA1, PR1) KERETA_1( PB2, CA1, PR2) KERETA_1( PB2, CA2, PR1) KERETA_1( PB2, CA2, PR2) COST_KR1( PB1, CA1, PR1) COST_KR1( PB1, CA1, PR2) COST_KR1( PB1, CA2, PR1)
100000.0 500.0000 100.0000 10.00000 150.0000 30.00000 2.000000 1.000000 1.000000 10.00000 5.000000 2.000000 3.000000 4.000000 1.000000 0.000000 0.000000 2.000000 0.000000 0.000000 5.000000 5.000000 5.000000 4000.000 1650.500 8000.000 4000.000 1.000000 1.000000 12.00000 14.00000 2.000000 5.000000 1500.000 2000.000 1.000000 13.00000 3.000000 0.000000 600.0000 0.000000 400.0000 400.0000 0.000000 1200.000 400.0000 10.00000 9.000000 11.00000 10.00000 11.00000 12.00000 10.00000 11.00000 0.000000 6.000000 0.000000 4.000000 4.000000 0.000000 12.00000 4.000000 2.000000 2.000000 2.000000
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -25000.00 -2495.000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 5.000000 5.000000 5.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 12.00000 14.00000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 13.00000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 200.0000 0.000000 0.000000 200.0000 0.000000 0.000000 0.000000 0.000000 0.000000
33
COST_KR1( COST_KR1( COST_KR1( COST_KR1( COST_KR1( VOL1_A( VOL1_A( VOL1_A( VOL1_A( VOL1_A( VOL1_A( VOL1_A( VOL1_A( COST1_A( COST1_A( COST1_A( COST1_A( COST1_A( COST1_A( COST1_A( COST1_A( TRUK_1( TRUK_1( TRUK_1( TRUK_1( TRUK_1( TRUK_1( TRUK_1( TRUK_1( COST_TR1( COST_TR1( COST_TR1( COST_TR1( COST_TR1( COST_TR1( COST_TR1( COST_TR1( VOL2( VOL2( VOL2( VOL2( COST2( COST2( COST2( COST2( KERETA_2( KERETA_2( KERETA_2( KERETA_2( COST_KR2( COST_KR2( COST_KR2( COST_KR2( VOL2_A( VOL2_A( VOL2_A( VOL2_A( COST2_A( COST2_A( COST2_A( COST2_A( TRUK_2( TRUK_2( TRUK_2( TRUK_2(
PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2,
CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, CA1, CA1, CA2, CA2, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1,
PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2)
2.000000 2.000000 2.000000 2.000000 2.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 12.00000 11.00000 12.00000 11.00000 100000.0 100000.0 12.00000 12.00000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.000000 700.0000 0.000000 0.000000 10.00000 11.00000 9.000000 10.00000 0.000000 7.000000 0.000000 0.000000 2.000000 2.000000 2.000000 2.000000 50.00000 0.000000 0.000000 0.000000 12.00000 13.00000 100000.0 100000.0 5.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000 0.000000 2.030000 2.030000 3.030000 1.030000 99989.03 99990.03 2.030000 1.030000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -198.0000 0.000000 502.0000 500.0000 0.000000 0.000000 0.000000 0.000000 0.000000 2.030000 99996.05 99995.03 0.000000 0.000000 0.000000 0.000000 0.5000000 0.000000 0.000000 0.000000
34
COST_TR2( COST_TR2( COST_TR2( COST_TR2( VOL2_B( VOL2_B( VOL2_B( VOL2_B( COST2_B( COST2_B( COST2_B( COST2_B( KAPAL_2( KAPAL_2( KAPAL_2( KAPAL_2( COST_KL2( COST_KL2( COST_KL2( COST_KL2( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( VOL3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( COST3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3( KERETA_3(
PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2,
IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3,
PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1)
0.5000000 0.5000000 0.5000000 0.5000000 750.0000 0.000000 0.000000 0.000000 9.000000 11.00000 10.00000 10.00000 5.000000 0.000000 0.000000 0.000000 3.000000 3.000000 3.000000 3.000000 0.000000 0.000000 500.0000 400.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 800.0000 800.0000 13.00000 14.00000 20.00000 19.00000 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 14.00000 14.00000 0.000000 0.000000 5.000000 4.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 -447.0000 0.000000 903.0000 750.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 99974.97 99974.95 99978.00 99978.02 99995.97 99995.97 99988.00 99987.00 99982.97 99980.95 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 97.00000 397.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
35
KERETA_3( KERETA_3( KERETA_3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( COST_KR3( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( VOL3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( COST3_A( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3( TRUK_3(
PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2,
CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3,
PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2)
0.000000 8.000000 8.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 700.0000 900.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 50.50000 12.00000 10.00000 21.00000 20.00000 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 15.00000 16.00000 70.00000 90.00000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 -198.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.030000 1.030000 99975.00 99974.98 99978.03 99978.05 99996.00 99996.00 99988.03 99987.03 99983.00 99980.98 1.030000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
36
TRUK_3( TRUK_3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( COST_TR3( VOL4( VOL4( VOL4( VOL4( VOL4( VOL4( VOL4( VOL4( COST4( COST4( COST4( COST4( COST4( COST4( COST4( COST4(
PL2, PL2, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL1, PL2, PL2, PL2, PL2, PL2, PL2, PL2, PL2, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1,
CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4,
PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2)
0.000000 6.000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0 100000.0
0.000000 0.5000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 100003.0 100004.0 99995.00 99995.02 99989.97 99988.97 99993.00 99992.04 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
KERETA_4( KERETA_4( KERETA_4( KERETA_4( KERETA_4( KERETA_4( KERETA_4( KERETA_4( COST_KR4( COST_KR4( COST_KR4( COST_KR4( COST_KR4( COST_KR4( COST_KR4( COST_KR4( VOL4_A( VOL4_A( VOL4_A( VOL4_A( VOL4_A( VOL4_A( VOL4_A( VOL4_A( COST4_A( COST4_A( COST4_A( COST4_A( COST4_A( COST4_A(
IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1,
CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3,
PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2)
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 2.000000 0.000000 0.000000 0.000000 0.000000 800.0000 700.0000 0.000000 0.000000 100000.0 100000.0 100000.0 100000.0 10.00000 11.00000
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 100003.0 100004.0 99995.03 99995.05 0.000000 0.000000 99993.03 99992.07 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
37
COST4_A( COST4_A( TRUK_4( TRUK_4( TRUK_4( TRUK_4( TRUK_4( TRUK_4( TRUK_4( TRUK_4( COST_TR4( COST_TR4( COST_TR4( COST_TR4( COST_TR4( COST_TR4( COST_TR4( COST_TR4(
IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, IN1, VOL5( VOL5( VOL5( VOL5( TIMER( TIMER( TIMER( TIMER( COST_TIMER( COST_TIMER( COST_TIMER( COST_TIMER( SUP( SUP( SUP( SUP( DEMA( DEMA( DEMA( DEMA( DEMB( DEMB( DEMB( DEMB( DEMB( DEMB( DEMB( DEMB( VOLA( TRA1, PB1, VOLA( TRA1, PB1, VOLA( TRA1, PB1, VOLA( TRA1, PB1, VOLA( TRA1, PB2, VOLA( TRA1, PB2, VOLA( TRA1, PB2, VOLA( TRA1, PB2, COSTA( TRA1, PB1, COSTA( TRA1, PB1, COSTA( TRA1, PB1, COSTA( TRA1, PB1, COSTA( TRA1, PB2, COSTA( TRA1, PB2, COSTA( TRA1, PB2, COSTA( TRA1, PB2, A( TRA1, PB1, A( TRA1, PB1, A( TRA1, PB1,
CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PB1, PB1, PB2, PB2, CA1, CA1, CA2, CA2, CB1, CB1, CB2, CB2, CB3, CB3, CB4, CB4, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2,
PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PB1) PB2) PB1) PB2) PB1) PB2) PB1) PB2) PB1) PB2) PB1) PB2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1)
100000.0 100000.0 0.000000 0.000000 0.000000 0.000000 80.00000 70.00000 0.000000 0.000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 0.5000000 4000.000 0.000000 0.000000 1650.500 1.000000 2.000000 2.000000 1.000000 10.00000 15.00000 17.00000 12.00000 2000.000 3000.000 2500.000 1300.000 400.0000 600.0000 1200.000 800.0000 700.0000 900.0000 500.0000 400.0000 800.0000 700.0000 800.0000 850.5000 2000.000 2000.000 0.000000 0.000000 0.000000 0.000000 500.0000 500.0000 20.00000 21.00000 31.00000 31.00000 36.00000 37.00000 24.00000 23.00000 4.000000 4.000000 0.000000
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 3.000000 7.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 6.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
38
A( A( A( A( A( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( VOLB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB( COSTB(
TRA1, TRA1, TRA1, TRA1, TRA1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB1, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB2, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3, TRB3,
PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2, PB1, PB1, PB1, PB1, PB2, PB2, PB2, PB2,
PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2, PL1, PL1, PL2, PL2,
PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2) PR1) PR2)
0.000000 0.000000 0.000000 1.000000 1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 300.0000 350.5000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 25.00000 26.00000 36.00000 36.00000 41.00000 42.00000 29.00000 28.00000 27.00000 28.00000 38.00000 38.00000 43.00000 44.00000 31.00000 30.00000 30.00000 31.00000 41.00000 41.00000 46.00000 47.00000 34.00000 33.00000
Row 1 2 3 4 5 6 7 8 9 10
Slack or Surplus 324129.0 0.000000 0.000000 100.0000 49.50000 0.000000 0.000000 0.000000 0.000000 0.000000
3500.000 8500.000 8500.000 0.000000 0.000000 0.000000 0.000000 6.000000 7.000000 17.00000 17.00000 0.000000 0.000000 2.000000 2.000000 8.000000 9.000000 19.00000 19.00000 2.000000 2.000000 5.000000 5.000000 11.00000 12.00000 22.00000 22.00000 5.000000 5.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 Dual Price -1.000000 1.000000 1.000000 0.000000 0.000000 -38.00000 -39.00000 -46.00000 -45.00000 2.000000
39
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
0.000000 0.000000 0.000000 0.000000 4000.000 2349.500 500.0000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 18048.50 0.000000 0.000000 95000.00 99349.50 0.000000 349.5000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
5.000000 -53.00000 -53.02000 3.000000 0.000000 0.000000 0.000000 -11.02000 -10.02000 -10.02000 -11.02000 -50.05000 -49.05000 -58.02000 -58.02000 -63.05000 -64.07000 -60.02000 -61.00000 0.000000 10.00000 12.00000 0.000000 0.000000 5.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 2.000000 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.000000 0.5000000E-01 0.5000000E-01 0.5000000E-01 3.000000 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01
40
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 9.500000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 2.000000 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.000000 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.2000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01 0.5000000E-01