acuan

39
PENGGUNAAN METODE HEURISTIK DALAM PERMASALAHAN VEHICLE ROUTING PROBLEM DAN IMPLEMENTASINYA DI PT NIPPON INDOSARI CORPINDO AJI RADITYA DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2009

Upload: nuri-fashichah

Post on 29-Nov-2015

43 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: acuan

PENGGUNAAN METODE HEURISTIK DALAM PERMASALAHAN VEHICLE ROUTING PROBLEM DAN IMPLEMENTASINYA DI

PT NIPPON INDOSARI CORPINDO

AJI RADITYA

DEPARTEMEN MATEMATIKAFAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGORBOGOR

2009

Page 2: acuan

ABSTRACT

AJI RADITYA. The application of the heuristic method at the vehicle routing problem and its implementation at the PT Nippon Indosari Corpindo. Supervised by AMRIL AMAN and PRAPTO TRI SUPRIYO.

This paper is a case study in a division of PT Nippon Indosari Corpindo company. We used the vehicle routing problem with time windows (VRPTW) to formulate the distribution problem, which is a variation of the vehicle routing problem (VRP). In the VRP, all costumers have a time windows, so the service for the costumers must be completed in a specified time interval. The objective is to minimize the number of vehicles to serve all costumers in certain area and also to minimize the route length.

As the VRPTW is a difficult problem in non polynomial hard problems, then we used the heuristic approach to solve the problem. In this paper, we used the nearest addition heuristic method to find the first solution. Next we used 2-Opt, Or-Opt, relocate, exchange, and cross methods to improve the first solution. In the last chapter of this paper, the results were compared to the current condition of the company.

Key word: Vehicle routing problem, heuristic method, nearest addition heuristic method.

Page 3: acuan

RINGKASAN

AJI RADITYA. Penggunaan Metode Heuristik Dalam Permasalahan Vehicle Routing Problemdan Implementasinya di PT Nippon Indosari Corpindo. Dibimbing oleh AMRIL AMAN dan PRAPTO TRI SUPRIYO.

Penelitian ini adalah studi kasus pada bagian distribusi di PT Nippon Indosari Corpindo. Metode vehicle routing problem with time windows (VRPTW) digunakan untuk memformulasikan masalah distribusi. Metode VRPTW merupakan variasi dari metode vehicle routing problem(VRP). Dalam metode VRP, setiap kendaraan berawal dan berakhir di satu tempat (depot) untuk melayani seluruh konsumen. Pada VRPTW, setiap konsumen memiliki batasan waktu pelayanan, sehingga kegiatan pengiriman di tempat konsumen harus berada diantara batasan waktu yang ditentukan. Penelitian ini bertujuan meminimumkan banyaknya kendaraan yang digunakan untuk melayani konsumen dan meminimumkan total jarak yang ditempuh.

Metode VRPTW termasuk kategori non-polynomial hard problem, karena digunakan pendekatan heuristik untuk mencari solusi masalah. Metode nearest addition heuristic digunakan untuk mencari solusi awal. Kemudian digunakan metode 2-Opt, or-Opt, relocate, exchange dan cross untuk memperbaiki solusi awal tersebut. Pada penelitian ini, solusi dengan metode di atas akan dibandingkan dengan keadaan yang terjadi pada perusahaan tersebut.

Kata kunci: Vehicle routing problem, metode heuristik, metode nearest addition heuristic.

Page 4: acuan

PENGGUNAAN METODE HEURISTIK DALAM PERMASALAHAN VEHICLE ROUTING PROBLEM DAN IMPLEMENTASINYA DI

PT NIPPON INDOSARI CORPINDO

Skripsisebagai salah satu syarat untuk memperoleh gelar

Sarjana Sains padaDepartemen Matematika

Oleh:

AJI RADITYAG54104062

DEPARTEMEN MATEMATIKAFAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGORBOGOR

2009

Page 5: acuan

Judul Skripsi : Penggunaan Metode Heuristik Dalam Permasalahan Vehicle

Routing Problem dan Implementasinya di PT Nippon

Indosari Corpindo

Nama : Aji Raditya

NIM : G54104062

Menyetujui

Pembimbing I Pembimbing II

Dr. Ir. Amril Aman, M.Sc. Drs. Prapto Tri Supriyo, M.Kom.NIP 19570330 198103 1 001 NIP 19630715 199002 1 002

Mengetahui,

Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

Dr. drh. Hasim, DEANIP 19610328 198601 1 002

Tanggal Lulus:

Page 6: acuan

PRAKATA

Alhamdulillah, penulis panjatkan puji dan syukur kehadirat Allah SWT atas rahmat dan karunia-Nya sehingga penulisan skripsi dengan judul “Penggunaan Metode Heuristik DalamPermasalahan Vehicle Routing Problem dan Implementasinya di PT Nippon Indosari Corpindo” dapat diselesaikan.

Pada kesempatan ini penulis menyampaikan ucapan terima kasih kepada:1. Bapak Marsudi Harto, ibunda Sri Supami, adinda Swasti Hapsari dan sepupuku Ika Nuryuni

Kartika serta seluruh keluarga besar penulis atas doa, semangat, dan kasih saying yang telah diberikan.

2. Bapak Amril Aman dan bapak Prapto Tri Supriyo selaku dosen pembimbing yang telah banyak memberikan arahan dan masukan pada penulisan skripsi ini.

3. Bapak Yusuf Hadi dan bapak Zainal Arifin sebagai General Manager dan Distribution Manager pada PT Nippon Indosari Corpindo atas bantuannya saat proses pengambilan datadi perusahaan tersebut.

4. Teman seperjuanganku Fariz Saeful Romza atas kerjasamanya selama penelitian dan penulisan skripsi ini.

5. Tities Melyasih atas doa, semangat dan dukungan yang diberikan.6. Teman-temanku di jurusam matematika (angkatan 40, 41, 42, 43) atas bantuan dan

dukungannya7. Teman-temanku di kostan “Al-Fath” yang banyak memberikan saran dan ide pada penulis.

Penulis menyadari bahwa skripsi ini masih bisa untuk dikembangkan lebih jauh lagi.Korespondensi dengan penulis dapat melalui e-mail di [email protected].

“Jangan menganggap tugas belajarmu sebagai kewajiban, melainkan pandanglah itu sebagai sebuah kesempatan untuk menikmati betapa indahnya ilmu pengetahuan yang akan

diterima oleh masyarakat apabila jerih payahmu berhasil”

– Albert Einstein-

Bogor, September 2009

Aji Raditya

Page 7: acuan

RIWAYAT HIDUP

Penulis dilahirkan di Jakarta pada tanggal 02 Desember 1986 dari ayah Marsudi Harto dan ibu Sri Supami. Penulis merupakan putra pertama dari dua bersaudara.

Tahun 2004 penulis lulus dari SMA Negeri 2 Tangerang dan pada tahun yang sama lulus ujian Seleksi Penerimaan Mahasiswa Baru (SPMB) untuk masuk ke jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam IPB.

Pada tahun 2008, penulis (tergabung dalam tim) memenangi Lomba Karya Tulis Mahasiswa (LKTM) bidang Ilmu Pengetahuan Sosial tingkat IPB sebagai juara II dan pada tahun yang sama penulis (tergabung dalam tim) menjadi 10 besar finalis Kompetisi Pemikiran Kritis Mahasiswa(KPKM) tingkat nasional bidang perekonomian yang diselenggarakan oleh Dikti.

Bogor, September 2009

Aji Raditya

Page 8: acuan

DAFTAR ISIHalaman

DAFTAR TABEL………………………………………………………………….. viii

DAFTAR GAMBAR………………………………………………………………. viii

DAFTAR LAMPIRAN…………………………………………………………….. viii

PENDAHULUAN

Latar Belakang…………………………………………………………... 1Manfaat………………………………………………………………….. 1

LANDASAN TEORI

Traveling Salesman Problem (TSP)…………………………………….. 1Traveling Salesman Problem with Time Windows (TSPTW)……… 2m-Traveling Salesman Problem (m-TSP)………………………….. 3

Vehicle Routing Problem (VRP)………………………………………… 3Vehicle Routing Problem with Time Windows (VRPTW)………………. 4Metode Heuristik………………………………………………………… 4

Nearest Addition Heuristic…………………………………………. 52-opt………………………………………………………………… 5Relocate……………………………………………………………… 5Exchange…………………………………………………………… 6

METODE PENELITIAN

Waktu dan Lokasi……………………………………………………….. 6Teknik Pengumpulan Data………………………………………………. 6Ruang Lingkup Penelitian……………………………………………….. 6Pengolahan Data………………………………………………………… 6

IMPLEMENTASI VEHICLE ROUTING PROBLEM PADA KEGIATAN DISTRIBUSI PRODUK DI PT NIPPON INDOSARI CORPINDO

Gambaran Umum Perusahaan…………………………………………… 7Divisi Distribusi…………………………………………………….. 7Kegiatan Distribusi…………………………………………………. 7Kegiatan pada Saluran Distribusi RO………………………………. 8

Perumusan Masalah……………………………………………………... 8Formulasi Masalah………………………………………………………. 9Hasil dan Pembahasan 10

SIMPULAN DAN SARAN

Simpulan………………………………………………………………… 15Saran…………………………………………………………………….. 15

DAFTAR PUSTAKA……………………………………………………………… 15

LAMPIRAN………………………………………………………………………... 16

Page 9: acuan

DAFTAR TABEL

Halaman1 Hasil simulasi untuk kendaraan pertama……………………………… 102 Hasil simulasi untuk kendaraan kedua……………………………….. 113 Hasil simulasi untuk kendaraan ketiga……………………………….. 124 Rute saat ini untuk kendaraan pertama.................................................. 125 Rute saat ini untuk kendaraan kedua...................................................... 136 Rute saat ini untuk kendaraan ketiga..................................................... 137 Perbandingan hasil simulasi dan data yang didapat…………………... 14

DAFTAR GAMBAR

Halaman1 Contoh rute dalam traveling salesman problem ……………………… 22 Contoh rute dalam vehicle routing problem………………………….. 33 Contoh metode 2-opt…………………………………………………. 54 Contoh metode relocate pada satu rute………………………………. 55 Contoh metode relocate pada dua rute……………………………….. 66 Contoh metode exchange pada satu rute……………………………… 67 Contoh metode exchange pada dua rute……………………………… 68 Rute hasil simulasi……………………………………………………. 129 Rute saat ini…………………………………………………………… 14

DAFTAR LAMPIRAN

Halaman1 Struktur organisasi pada departemen supply chain management……... 172 Saluran distribusi yang ada……………………………………………. 183 Diagram alir pada saluran distribusi retail/outlet……………………... 194 Beberapa gambar……………………………………………………… 205 Matriks jarak …………………………………………………………. 236 Data…………………………………………………………………… 247 Input…………………………………………………………………… 258 Proses………………………………………………………………….. 269 Output…………………………………………………………………. 2910 Contoh metode multidimensional scaling…………………………….. 30

Page 10: acuan

1

I PENDAHULUAN

Pada bagian awal bab ini, akan dijelaskan latar belakang dan tujuan penelitian yang dilakukan. Sementara itu pada bagian akhir bab ini akan diperlihatkan manfaat daripenelitian ini bagi perusahaan.

1.1 Latar BelakangMasalah transportasi dan distribusi produk

dalam kehidupan sehari-hari dapat dimodelkan sebagai Vehicle Routing Problem (VRP). Model VRP akan menghasilkansejumlah rute kendaraan untuk mengunjungi setiap konsumen. Setiap rute berawal dan berakhir pada tempat yang sama yang disebutdepot. Selain itu, model VRP juga memastikan agar total permintaan pada suatu rute tidak melebihi kapasitas kendaraan yang beroperasi. Penggunaan model VRP diharapkan dapat meminimumkan total jaraktempuh dan jumlah kendaraan.

Kendala waktu pada model VRP merupakan masalah yang rumit. Pada masalah tersebut, konsumen hanya melayani pengiriman produk pada selang waktu tertentu setiap harinya. Sebagai contoh, sebuah gudang hanya akan melayani pengiriman produk antara pukul 08.00 WIB sampai dengan pukul 15.00 WIB. Untuk memecahkan masalah tersebut digunakanlah Vehicle Routing Problem with Time Windows (VRPTW) yaitumodel VRP dengan menambahkan kendala waktu.

VRPTW terbagi menjadi dua kasus yaitukasus hard time windows dan kasus soft time windows. Pada kasus hard time windows, pengiriman akan ditolak apabila tidak sesuai dengan waktu yang telah ditentukan oleh konsumen, sedangkan pada kasus soft time windows konsumen akan menerima pengiriman walaupun tidak sesuai dengan

waktu yang telah ditentukan sekaligus memberikan penalti atau biaya tambahan atas keterlambatannya. Pada penelitian ini modelVRPTW dengan kasus soft time windowsdipilih karena sesuai dengan masalah yang terjadi di lapangan.

VRP sulit untuk dipecahkan karena merupakan gabungan antara masalah kapasitas (packing problem) dan masalahpenentuan rute (salesman routing problem). Jika masalah yang dihadapi masih tergolong kecil, maka metode branch and bound dapat memberikan solusi terbaik dari masalah VRP. Jika masalahnya kompleks dan besar, salahsatu cara untuk menyelesaikannya adalah dengan menggunakan metode heuristik.

Dalam penelitian ini, metode heuristik akan digunakan untuk mencari solusi dari model VRPTW yang dihadapi. Solusi tersebut dapat dicari dengan bantuan software ILOG Dispatcher versi 2.1 dan ILOG Solver versi 4.4 yang dijalankan dengan Microsoft VisualC++ versi 6.0.

1.2 ManfaatPenelitian yang dilakukan memiliki

manfaat yang berbeda bagi masing-masing level management pada perusahaan tersebut.Manfaat bagi top level management dan middle level management di perusahaan tersebut adalah mempermudah proses pengambilan keputusan. Dalam hal ini keputusan untuk meminimumkan biaya distribusi yang ditanggung oleh perusahaan, langkah yang dapat dilakukan adalahmeminimumkan banyaknya kendaraan dan memaksimumkan banyaknya barang yang dibawa, sedangkan manfaat bagi low level management adalah dapat menentukan ruteterpendek bagi setiap kendaraan.

II LANDASAN TEORI

Dalam bab ini, akan dijelaskan beberapa metode yang digunakan dalam penelitian.Pertama akan dijelaskan tentang Traveling Salesman Problem (TSP) yang merupakan dasar dari Vehicle Routing Problem (VRP),kemudian akan diperlihatkan penggunaan metode heuristik untuk mencari solusi dari kasus VRP yang dihadapi pada.

2.1 Traveling Salesman ProblemDalam TSP, seorang salesman akan

berangkat dari satu kota kemudianmengunjungi seluruh kota yang ada dan pada akhir perjalanannya salesman tersebut akankembali ke kota awal atau depot. Tujuan dari TSP adalah menentukan rute yang melaluiseluruh kota dan meminimumkan jarak.

Page 11: acuan

2

Model TSP dapat dituliskan sebagai berikut:

Variabel keputusan

1, jika kota ke - dikunjungi setelah kota ke -=,

0, selainnya

jixi j

Fungsi objektif:

m m

j=1 i=1

min Z i, ji, j= c x (2.1)

Kendala-kendala:

1

, 1; 1,2,...,m

j

i jx i m

(2.2)

,1

1; 1, 2,...,m

i ji

x j m

(2.3)

, {1,2,..., } | | 1;i jj L i L

x L mL

(2.4)

, {0,1}; , 1,2,...,i jx i j m (2.5)

Fungsi objektif dalam TSP (persamaan 2.1) adalah meminimumkan jarak yang ditempuh dan mengunjungi setiap kota yang ada, dengan ci,j adalah jarak dari kota i ke kotaj dan xi,j benilai 1 jika rute dari kota ke-imenuju kota ke-j digunakan dan bernilai 0 jika selainnya. Kendala (2.2) dan (2.3) memastikan bahwa setiap kota dikunjungi tepat satu kali, sedangkan kendala (2.4) memastikan tidak terdapat subtour pada rute tersebut. Pada kendala (2.5) diperlihatkan bahwa xi,j merupakan varibel biner untuk setiap i dan j yang ada (Hoffman & Padberg2009).

Dalam perkembangannya, TSP memiliki beberapa variasi, yaitu: Traveling Salesman Problem with Time Windows (TSPTW) yang merupakan TSP dengan tambahan waktu pelayanan di setiap kota dan m-Traveling Salesman Problem (m-TSP) yang menggunakan sejumlah salesman untuk mengunjungi seluruh kota.

2.1.1 Traveling Salesman Problem with Time windows

Traveling Salesman Problem with Time Windows (TSPTW) merupakan pengembangan dari TSP. Pada TSPTW rute yang ditempuh memiliki tambahan kendala waktu pelayanan (time windows) untuk masing-masing konsumen.

Time windows pada masing-masing konsumen dapat berbeda satu sama lain, tetapi memiliki karakteristik yang sama yakni berupa selang waktu. Time windows [a1, bi]menunjukkan selang waktu pelayanan pada konsumen i, dengan ai sebagai batas awal danbi sebagai batas akhir.

Model untuk TSPTW tidak berbeda dengan model TSP di atas, dengan tambahan beberapa kendala:

; 1, ...,a T b i mi i i (2.6)

, 1, ...,;,

i j mT t Ti i j j i j

(2.7)

Pada (2.6) waktu pelayanan (Ti) berada diantara batas awal (ai) dan batas akhir (bi) dari time windows, sedangkan pada persamaan (2.7) dipastikan pelayanan di kota j (Tj) merupakan waktu tempuh antara kota i dan kota j (ti,j) ditambahkan dengan waktu pelayanan di kota i (Ti) (Sutapa et al. 2003).

Gambar 1 Contoh rute dalam Traveling Salesman Problem (TSP) .

Konsumen

Rute

Page 12: acuan

3

2.1.2 m-TSPm-TSP adalah salah satu variasi dari TSP,

dimana terdapat sebanyak m salesman mengunjungi seluruh kota, tetapi setiap kota hanya dapat dikunjungi oleh tepat satu salesman saja. Tiap salesman berawal dari suatu depot dan pada akhir perjalannya juga harus kembali ke depot tersebut. Tujuan dari m-TSP adalah meminimumkan total jarak dari setiap rute.

Masalah m-TSP dikenal juga sebagai Vehicle Routing Problem (VRP), dimana sebuah kota diasosiasikan sebagai sebuah konsumen dan tiap kendaraan memiliki kapasitas tertentu. Total jumlah permintaandalam suatu rute tidak boleh melebihi kapasitas dari kendaraan yang beroperasi(Larsen 1999).

2.2 Vehicle Routing ProblemMasalah yang berkaitan dengan pencarian

rute yang optimal untuk kendaraan dari satu depot dan melayani sejumlah konsumen disebut VRP. Dalam prakteknya VRP banyak digunakan pada masalah distribusi logistik.

Berikut adalah karakteristik dari modelVRP. Terdapat satu depot (dilambangkan dengan O) yang memiliki sebanyak kkendaraan untuk melakukan pengiriman, dengan kapasitas setiap kendaraan sebesar C.Kendaraan tersebut mengirimkan permintaan sebesar qi untuk n konsumen, dengan i=1,2,3,…,n. Jarak yang ditempuh setiap kendaraan sebisa mungkin adalah jarak yang paling minimum dengan ci,j adalah biaya pengiriman dari konsumen i ke konsumen j, dengan i= 1,2,…,n dan j=1,2,…,n. Jarak antarkonsumen bersifat simetris atau dapat ditulis sebagai ci,j = cj,i sedangkan jarak antara

tempat yang sama bernilai nol atau 0,ci i .

Solusi yang dihasilkan merupakan anggota dari 1{ ,..., }kR R yang mengirimkan n

permintaan melalui k rute yang tersedia dan permintaan yang dikirim tidak melebihi kapasitas kendaraan yang tersedia untuk setiap rute (Machado et al. 2002).

Tujuan dari VRP adalah menentukan sejumlah rute untuk melakukan pengiriman pada setiap konsumen, dengan mengikuti beberapa ketentuan, antara lain: (1) setiap rute berawal dan berakhir di depot, (2) setiap konsumen dikunjungi tepat satu kali oleh tepat satu kendaraan, (3) jumlah permintaan tiap rute tidak melebihi kapasitas kendaraan dan (4) meminimumkan biaya perjalanan (Cordeau et al. 2002).

Model VRP dapat direpresentasikan sebagai berikut:

11 1, ,

ln n

kj i

ki j i jmin Z c x

(2.8)

Kendala-kendala Konsumen

1 1, 1; 2, 3, ...,

ln

i k

ki j j nx

(2 .9 )

1 1, 1; 2, 3, ...,

ln

j k

ki j i nx

(2 .10)

Depot

21, 1; 1, 2,...,

n

j

kj kx l

(2 .11)

2,1 1; 1, 2, ...,

n

i

ki kx l

(2 .12)

Kekontinuan rute

2 2, ,

1, 2, ...,

1, 2, ...,;

n n

i i

k ki u u j

k l

u nx x

(2 .13)

Kapasitas

1 1, ; 1, 2, ...,

n n

i j

ki i j k kq x C l

(2 .14)

,

, 1,2,...,{0,1};

1,... ki j

i j n

k lx

(2 .15)

Gambar 2 Contoh rute dalam Vehicle Routing Problem (VRP).

Konsumen

Page 13: acuan

4

Fungsi objektif dari VRP (2.8) adalah meminimumkan total biaya perjalanan, dengan ci,j adalah biaya perjalanan dari konsumen i menuju konsumen j. Variabel

keputusan ,ki jx bernilai 1 jika rute dari

konsumen i menuju konsumen j dilayani oleh kendaraan k dan bernilai nol jika selainnya. Pada kendala (2.9) dan (2.10) dipastikan tepat satu kendaraan yang datang dan pergi dari konsumen i, sedangkan kendala (2.11) dan (2.12) memastikan bahwa tepat satu kendaraan yang pergi dan tiba di depot untuksatu rute. Kendala (2.13) memastikan kekontinuan rute dari setiap kendaraan yang beroperasi. Kendala (2.14) memastikan agar total permintaan (qi) pada satu rute tidak melebihi kapasitas kendaraan (Ck) yang beroperasi pada rute tersebut (Kritikos &Ioannou 2004).

VRP adalah masalah optimisasi kombinatorial yang sulit, karena merupakan gabungan dari masalah kapasitas (packing problem) dan masalah rute kendaraan (traveling salesman problem). Pada VRP, hanya tipe masalah kecil dan sederhana yang dapat dicari solusi optimalnya. Hingga saat ini bila masalah VRP yang dihadapi relatif besar dan kompleks maka waktu yang dibutuhkan untuk mencari solusi optimal masalah tersebut relatif lama. Berdasarkan beberapa penelitian sebelumnya, nilai optimal dari fungsi objektif sulit untuk didapat dengan menggunakan exact algorithm (contohnya: branch and bound dan dynamic programming). Pendekatan exact algorithm dinyatakan tidak cukup baik untuk masalah yang dihadapi(VRP yang besar dan kompleks), sehingga dikembangkan metode heuristik sebagai salah satu alternatif untuk menyelesaikan masalah tersebut (Cordeau et al. 2002).

2.3. Vehicle Routing Problem with Time Windows (VRPTW)

VRP dengan tambahan kendala waktu pelayanan disebut sebagai Vehicle Routing Problem with Time Windows (VRPTW). Kendala waktu adalah selang waktu tertentu sehingga setiap kendaraan dapat memberikan pelayanan pada konsumen. Biasanya selang waktu tersebut berbeda pada setiap konsumen (Hideki et al, 2006 dalam Kang et al, 2007). Dalam perkembangannya VRPTW dibagi menjadi Vehicle Routing Problem with Hard Time Windows (VRPHTW) dan Vehicle Routing Problem with Soft Time Windows(VRPSTW).

Dalam VRPHTW, konsumen hanya dapat dilayani selama selang waktu yang telah ditentukan. Sedangkan pada VRPSTW konsumen dapat dilayani setiap saat, tetapi bila melewati waktu yang ditentukan akan dikenakan biaya tambahan atau penalti (Kang. et al. 2007).

Seperti halnya pada VRP, fungsi objektifbagi VRPTW adalah meminimalkan biaya perjalanan untuk semua kendaraan. Kendala yang digunakan pun sama seperti model VRP (2.9) - (2.15), tetapi perlu ditambahkan beberapa kendala yang berhubungan dengan time windows. Kendala tersebut, antara lain:

, (1 ); ,

, 2, 3, ..., ; 1, ..., ;

kfi i jt t t M xj i i j

i j n k l

(2 .16)

; 1, ...,a t b i ni i i (2 .17)

0; 1, ...,t i ni (2 .18)

Kendala (2.16) memastikan waktu kedatangan kendaraan di konsumen j (tj) selalu lebih besar dari waktu kedatangan kendaraan di konsumen i (ti), dengan fimerupakan waktu service di konsumen i dan ti,j adalah waktu tempuh dari konsumen imenuju konsumen j, sedangkan M (disebut big-M) merupakan bilangan yang relatif besar,

sehingga jika (1 ),kM xi j besar maka rute

dari i ke j tidak akan ditempuh dan sebaliknya.Kendala berikutnya (2.17) memastikan kedatangan kendaraan di konsumen i berada di antara selang waktu yang telah ditentukan, dengan batas awal ai dan batas akhir bi, sedangkan kendala terakhir (2.18) memastikan agar waktu kedatangan kendaraan ke setiap konsumen selalu positif (Larsen 1999). Padapenelitian ini akan digunakan VRPSTW, karena serupa dengan masalah yang ada di lapangan.

2.4 Metode HeuristikPenggunaan metode branch and bound

untuk mencari solusi VRP yang memiliki banyak kota (lebih dari 50 kota)membutuhkan waktu komputasi yang lama. Alasan tersebut menjadi sebabdikembangkannya metode heuristik. Metode heuristik dapat memberikan solusi lebih cepat daripada metode branch and bound, tetapitidak ada jaminan solusi yang dihasilkan optimal. Solusi dari metode heuristik didapat selain dengan cara trial and error juga dengan pendekatan secara intuitif (Winston 2004).

Page 14: acuan

5

Dalam metode heuristik untuk masalah VRP dikenal adanya dua fase pendekatan untuk memecahkan masalah, yaitu route constructing sebagai fase pertama dan route improvement pada fase kedua. Pada penelitianini metode nearest addition heuristic akan digunakan untuk mencari solusi pada fase pertama. Selanjutnya metode 2-opt, metode or-opt, metode relocate, metode exchange dan metode cross digunakan untuk memperbaiki solusi yang telah ada.

2.4.1 Nearest Addition HeuristicMetode nearest addition heuristic dimulai

dengan menentukan banyaknya kendaraan yang tersedia di depot. Lokasi yang terdekat dengan depot akan dikunjungi pertama kali, kemudian lokasi yang dikunjungi selanjutnyaadalah lokasi yang memiliki jarak terdekat dengan lokasi konsumen pertama, demikian seterusnya hingga kapasitas kendaraan atautime windows terpenuhi. Jika kapasitas kendaraan atau time windows telah dicapaimaka kendaraan tersebut harus kembali ke depot. Kemudian jalankan kendaraan berikutnya dengan aturan yang sama seperti kendaraan pertama, sampai seluruh lokasi dikunjungi oleh kendaraan yang tersedia di depot.

Algoritmenya sebagai berikut:1) pandang kendaraan sebagai w,2) mulai sebuah rute dari depot bagi

kendaraan w,3) temukan konsumen (v) yang terdekat

dari posisi terakhir w. Jika tidak dimungkinkan untuk melakukan kunjungan tanpa melanggar kendala yang ada akhiri rute kendaraan w, pilih kendaraan lain dan lakukan lagi langkah 2. Jika masih terdapat konsumen yang belum dikunjungi maka gagal,

4) tambahkan depot pada akhir rute,5) lakukan langkah 3.

(ILOG, 2002).Solusi dari metode nearest addition

heuristic dapat diperbaiki dengan menggunakan beberapa metode heuristik lainnya, antara lain: metode 2-opt, metode or-opt, metode relocate, metode exchange dan metode cross.

2.4.2 Metode 2-optPada dasarnya metode 2-opt ialah

memindahkan dua jalur pada rute yang ada,kemudian menghubungkan kembali jalur tersebut dengan pasangan konsumen yang berbeda. Sebagai catatan, metode 2-opt hanya

dapat dilakukan jika rute baru yang dihasilkan lebih baik daripada rute awal (Nilsson 2003). Algoritmenya, sebagai berikut:

1) pandang satu rute untuk satu kendaraan,

2) hapus 2 jalur yang menghubungkan 4 konsumen yang berbeda, cobalah untuk menghubungkan kembali keempat konsumen dengan pasangan yang berbeda,

3) jika biaya berkurang dan tidak melanggar kendala yang ada kembali ke langkah (2),

4) selesai.(ILOG, 2002).

Gambar 3 Contoh metode 2-Opt.

Rute yang dihasilkan dapat disebut sebagai 2-optimal atau 2-opt, jika metode 2-optdigunakan pada setiap rute yang ada sampai tidak dimungkinkan lagi penggunaan metode tersebut. Metode or-opt identik dengan metode 2-opt, tetapi jumlah jalur yang dapat dihapus dan ditambahkan lebih dari 2 jalur.2.4.3 Metode Relocate

Pada metode relocate, sebuah tempatdalam satu rute dapat dipindahkan urutan kunjungannya. Dengan syarat biaya ruteberkurang dan tidak melanggar kendala yang ada maka hal tersebut dapat dilakukan.

Metode relocate ini dapat memindahkan sebuah kunjungan pada rute yang sama ke posisi yang berbeda. Seperti terlihat pada Gambar 4 dimana jalur yang ditempuh semulaadalah (a0, a1), (a1, a2), (a2, b0) dan (b0, b1)berubah menjadi (a0, a2), (a2, b0), (b0, a1) dan (a1, b1).

Gambar 4 Contoh metode relocate pada satu rute.

Metode relocate juga dapat memindahkan sebuah kunjungan dari satu rute dan menambahkan kunjungan tersebut ke rute lainnya. Seperti terlihat pada Gambar 5dimana kunjungan menuju a1 yang semula berada pada rute (a0, a1), (a1, a2) dipindahkan ke rute (b0, b1). Metode tersebut merubah rute

Page 15: acuan

6

yang ditempuh menjadi rute (a0, a2) dan rute (b0, a1), (a1, b1).

Gambar 5 Contoh metode relocate pada dua rute.

2.4.4 Metode ExchangePada metode exchange, dua tempat dapat

saling dipertukarkan urutan kunjungannya. Metode ini dapat diterapkan baik pada satu rute maupun dua rute kendaraan. Selama perubahan yang terjadi tidak melanggar kendala yang ada dan dapat mengurangi biaya yang dikeluarkan.

Pada satu rute kendaraan, dua kunjungan yang berbeda dapat dipertukarkan urutannya.Dari Gambar 6 terihat bahwa metode exchange mempertukarkan kunjungan menuju a1 dan b1. Sehingga rute yang semula (a0, a1), (a1, a2), (a2, b0), (b0, b1) dan (b1, b2) berubah menjadi (a0, b1), (b1, a2), (a2, b0), (b0, a1) dan (a1, b2).

Gambar 6 Contoh metode exchange pada satu rute.

Metode exchange juga dapat di pergunakan pada dua rute kendaraan, seperti terlihat pada Gambar 7 dimana a1 dari rute (a0, a1), (a1, a2) dipertukarkan dengan b1 dari rute yang berbeda, (b0, b1), (b1, b2). Metode exchange ini merubah rute semula menjadi rute (a0, b1), (b1, a2) dan rute (b0, a1), (a1, b2).

Gambar 7 Contoh metode exchange pada dua rute.

Kasus pada Gambar 7 disebut inter-routeexchange. Sementara itu metode exchangeyang diterapkan pada satu rute disebut intra-route exchange (Caric et al. 2008).

III METODE PENELITIAN

3.1 Waktu dan LokasiPenelitian dilakukan di PT Nippon

Indosari Corpindo (PT NIC), pada departemenSupply Chain Management (SCM). Kegiatan ini memakan waktu dua minggu, dimulai pada Senin, 27 Oktober sampai dengan Jumat, 7 November 2008.

3.2 Teknik Pengumpulan DataKombinasi antara data sekunder dan data

primer digunakan untuk mendukung kesempurnaan dari penelitian ini. Selain itu pengumpulan data melalui wawancara dengan pihak yang terkait juga dilakukan untuk memahami tentang proses distribusi pada perusahaan tersebut.

3.3 Ruang Lingkup PenelitianDalam penelitian ini, pembahasan akan

dibatasi pada proses distribusi untuk saluran retail/outlet (RO) di daerah Bekasi dan sekitarnya. Saluran RO dipilih karena jumlahnya yang terbesar dibandingkan dengan

saluran lain yang ada. Selain itu, saluran RO merupakan saluran yang memliki rantai distribusi paling pendek dibandingkan dengan saluran lain yang ada.

3.4. Pengolahan DataSetelah mendapatkan informasi yang

dibutuhkan, penelitian dilanjutkan dengan memformulasikan masalah distribusi yang ada sebagai sebuah model VRP. Selanjutnya, digunakan program ILOG Dispatcher versi 2.1 dan ILOG Solver versi 4.4, yang dijalankan dalam Microsoft Visual C++ versi 6.0, sebagai alat untuk mencari solusi dari model VRP yang dihadapi.

Data yang diperoleh dari kegiatan tersebut, antara lain: letak konsumen, permintaan konsumen dan waktu bongkar - muat ditempat konsumen. Sedangkan diasumsikan kecepatan kendaraan konstan, waktu buka - tutup gudang konsumen adalah seragam yakni pada pukul 06.00 sampai dengan pukul 16.00,

Page 16: acuan

7

dimana pukul 06.00 dimisalkan sebagai 0 dan pukul 16.00 sebagai 540 dan kendaraan mampu memuat hingga 200 crate (wadah roti).

Langkah pertama adalah menentukan letak setiap konsumen dan mengetahui jarak dari setiap konsumen, seperti terlihat pada Lampiran 4. Nilai jarak setiap tempat didapat dengan melakukan estimasi, menggunakan bantuan peta dan benang kemudian akan diambil jarak terdekat setiap tempat.

Langkah berikutnya, matriks jarak yang didapat dikonversi menjadi koordinat

Cartesius dengan menggunakan metode multidimensional scaling (MDS). Setelah didapat letak dari setiap titik, data tersebut menjadi input untuk program ILOG bersama dengan data permintaan dan waktu bongkar-muat di setiap tempat. Penggunaan metode nearest addition heuristic sebagai fase pertama dan metode 2-opt, or-opt, relocatedan exchange sebagai fase kedua dengan alat bantu ILOG akan digunakan sebagai langkah terakhir dalam penelitian ini.

IV IMPLEMENTASI VEHICLE ROUTING PROBLEM (VRP) PADA KEGIATAN DISTRIBUSI PRODUK DI PT NIPPON INDOSARI CORPINDO (PT NIC)

Bab ini diawali dengan gambaran umum perusahaan tempat penelitian ini berlangsung, selain itu juga terdapat rumusan masalah yang dihadapi serta formulasinya secara matematis. Hasil dan pembahasan dari penelitian yang dilakukan terdapat pada bagian akhir bab ini.

4.1 Gambaran Umum Perusahaan

PT Nippon Indosari Corpindo (PT NIC) adalah perusahaan yang bergerak dalam bidang pangan, khususnya industri pembuatan roti. Perusahaan ini didirikan pada tanggal 8 Maret 1995 dan mulai beroperasi pada Oktober 1996. PT NIC terletak dalam wilayah perindustrian Jababeka I Real Estate Cikarang, Bekasi, tepatnya berlokasi di Jl. Jababeka XII A Blok W 40-41 Cikarang, Bekasi 17530.

Pada mulanya perusahaan tersebut hanya menjual empat jenis roti antara lain roti tawar dan tiga jenis roti manis, isi coklat, isi keju, dan isi strawberry dengan merek dagang “Sari Roti”. Produk Sari Roti yang dipasarkan hanya untuk memenuhi permintaan konsumen di daerah Cikarang, Bekasi dan sekitarnya.

Dengan berjalannya waktu, PT NIC dapat mengembangkan pemasarannya hingga daerah Jabotabek. Selanjutnya, pada tahun 2003, PTNIC sudah mampu memperluas pemasarannya ke daerah Jawa Barat dan Semarang. Puncaknya, yaitu pembukaan depot di daerah Bandung yang berfungsi sebagai peyalur untuk daerah Jawa Barat. Saat ini PT NIC memproduksi tujuh jenis produk roti, antara lain: roti tawar, roti manis, roti krim, roti sobek, roti burger, roti hot dog, dan remah roti.

PT NIC mendistribusikan produk rotinya melalui 56% jaringan distribusi modern

seperti hypermarket, supermarket danminimarket, sementara itu 44% sisanya didistribusikan melalui jaringan tradisional seperti agen dan stock point.

4.1.1 Divisi DistribusiPT NIC menggunakan jasa pihak ketiga,

dalam hal ini perusahaan ekspedisi, yang disebut sebagai transporter, untuk mendistribusikan produk ke konsumen. Masing–masing transporter menyewakan kendaraan, driver dan helper pada PT NIC untuk mendistribusikan produk ke konsumen. Setiap transporter dikepalai oleh koordinator, karyawan dari perusahaan ekspedisi, yang bertanggung jawab untuk memastikan ketersediaan kendaraan, driver, dan helperpada setiap pengiriman. Koordinator sendiri bertanggung jawab pada distribution officer, yang merupakan karyawan PT NIC.

Pembagian tugas pada level distribution officer didasarkan pada daerah pengiriman, yakni daerah pusat-Bogor, daerah selatan, daerah barat, dan daerah timur - utara. Setiap distribution officer bertanggung jawab untuk seluruh saluran pada daerah pengiriman yang telah ditentukan. Lebih jelas tentang struktur departemen SCM, dapat dilihat pada Lampiran 1.

4.1.2 Kegiatan DistribusiKegiatan distribusi pada PT NIC dibagi

dalam lima rute saluran yang memiliki karakteristik yang berbeda satu sama lain. Lima saluran distribusi, yaitu: agen, stock point (SP), distribution center (DC), retail/outlet (RO) dan institusi.

Pada saluran agen dan SP, pengiriman produk dilakukan pada sore hari, antara pukul

Page 17: acuan

8

16.00-17.00. Transporter mengirim produk langsung ke agen yang ada, kemudian agen akan membagi produk yang dikirim tadi ke sejumlah tricycle yang ada. Selanjutnya tricycle tersebut akan dibawa oleh hawkersesuai rute masing-masing untuk langsung menemui konsumen.

Proses di SP berbeda dengan agen, setelah produk sampai di SP kemudian SP akan membagikan produk ke sejumlah sepeda motor yang ada. Kemudian sepeda motor tersebut akan meletakkan produk di warung -warung yang memesan sebelum sampai ke tangan konsumen. Agen dan SP biasanya terletak di sekitar perumahan padat penduduk.

Proses pada saluran DC berbeda dengan agen dan SP. Pada saluran DC pengiriman dilakukan dua kali sehari yakni pada pukul 05.00 - 06.00 dan 10.00-11.00. Transporterhanya mengirim ke DC yang telah ditunjuk, kemudian produk akan dikirimkan sendiri oleh pihak pengelola DC ke tempat yang telah ditentukan. Saluran DC terdiri dari: Alfamart, Indomart dan Alfamidi.

Saluran untuk Carrefour, Giant, Makrodan beberapa pasar swalayan lainnya masuk dalam saluran RO. Pada saluran ini, produk dikirim langsung dari produsen ke RO yang ada. Berbeda dengan saluran DC, pada saluran RO transporter bahkan mengatur produk pada tempat yang telah tersedia. Pengiriman dilakukan pada pukul 06.00 - 07.00 setiap harinya.

Pada saluran institusi, pemesanan dilakukan oleh perusahaan lain untuk keperluan perusahaan tersebut, misalnya sarapan karyawan. Waktu pengirimannya dilakukan bersamaan dengan waktu pengiriman saluran RO. Bagan pada Lampiran 2 memberikan gambaran tentang alur kegiatan distribusi secara lebih jelas.

4.1.3 Kegiatan pada saluran distribusi ROPenelitian ini akan dibatasi pada saluran

RO di daerah Bekasi dan sekitarnya. Pada diagram alir yang terdapat di Lampiran 3, konsumen memberikan pesanan atau purchase order (PO) kepada bagian penjualan, sales administrator. Selanjutnya sales administrator akan membuat surat jalan atau delivery note (DN) yang berisi jumlah produk dan daftar konsumen yang memesan produk tersebut. Selain membuat DN, sales administrator juga membuat faktur penjualan (FP) yang berisi total harga yang harus dibayar oleh konsumen untuk produk yang dipesan. Kemudian kedua dokumen tersebut yaitu DN dan FP akan diserahkan kepada

pegawai pada bagian pergudangan, disebut sebagai warehouse operator. Kemudianwarehouse operator akan menyiapkan produk sesuai dengan DN yang telah diberikan oleh sales administrator.

Setelah memastikan produk sesuai dengan DN, driver dan helper dengan bantuan karyawan bagian pergudangan akan memeriksa kembali banyaknya produk yang akan dikirim dan jumlah crate (wadah roti) yang akan dibawa pada pengiriman kali ini, kegiatan tersebut dinamakan proses loading. Sesampai di tempat tujuan, driver dan helpermemindahkan produk menuju gudang konsumen dan kembali memeriksa jumlah barang yang dikirim, disaksikan oleh perwakilan dari pihak konsumen. Setelah melewati tahap pemeriksaan tersebut helpermenata produk di tempat yang telah disediakan, sedangkan driver mengurus penandatanganan DN dan FB oleh pihak konsumen. Selain itu driver juga menerima bukti terima barang dari pihak konsumen sertanota penarikan barang (NPB), sekaligus dengan produk yang mengalami pengembalian bila ada.

Setelah driver dan helper mengunjungi seluruh konsumen yang ada pada DN, selanjutnya kembali ke pabrik untuk melakukan proses unloading. Pada proses ini, dilakukan pemeriksaan terhadap kelengkapan dokumen (seperti DN, FP dan NPB), kesesuaian banyaknya crate dan juga kesesuaian produk yang mengalami pengembalian dengan dokumen yang ada.

4.2. Perumusan MasalahPerusahaan memproduksi sejumlah roti

setiap harinya, kemudian produk tersebut akan didistribusikan ke sejumlah konsumen (retail/outlet) yang ada – dalam karya ilmiah ini jumlah konsumennya sebanyak 24. Konsumen dinyatakan sebagai n dengan n= 1 menyatakan depot. Banyaknya permintaansetiap RO telah diketahui sebelumnya, baik jenis maupun jumlahnya. Pendistribusian akan dilakukan dengan menggunakan tiga kendaraan sejenis, sehingga kapasitas untuk setiap kendaraan seragam. Setiap kendaraan akan memulai kegiatan distribusinya dari depot. Selain melakukan pengiriman produk, driver dan helper juga melakukan bongkar -muat dan mengatur produk pada tempat yang telah disediakan, disebut delay. Biaya tetap kendaraan akan muncul bila kendaraan tersebut dipakai dalam kegiatan distribusi. Masalah yang dihadapi adalah meminimumkan banyaknya kendaraan yang

Page 18: acuan

9

digunakan dengan mempertimbangkan kendala kapasitas pada kendaraan dan untuk memenuhi setiap permintaan RO.

Beberapa asumsi yang digunakan, antara lain: semua pesanan konsumen dapat dipenuhioleh pabrik, kecepatan kendaraan konstansehingga tidak ada satu pun yang dapat mempercepat atau memperlambat kecepatan kendaraan. Kendaraan yang digunakanseragam, sehingga setiap kendaraanmempunyai kapasitas yang sama. Biaya bila kendaraan digunakan (fixed cost) dan biaya setiap kilometer telah diketahui.

4.3 Formulasi Masalah

Variabel Keputusan

,

1, jika konsumen dikunjungi setelah konsumen oleh kendaraan

0, jika selainnya

ki j

ji kx

1, jika kendaraan dioperasikan

0, jika selainnyak

kz

Konstanta

iq banyaknya permintaan konsumen i

C kapasitas maksimum kendaraan

,ki jt waktu yang dibutuhkan dari konsumen

i ke konsumen j dengan kendaraan k

,i jd jarak dari konsumen i ke konsumen j

,i jc biaya perjalanan dari konsumen i ke konsumen j

vk kecepatan rata-rata kendaraan k

kw biaya tetap (fixed cost) bila kendaraan k digunakan

ia waktu buka gudang pada konsumen i

ib waktu tutup gudang pada konsumen j

it waktu kedatangan pada konsumen i

Lhimpunan semua konsumen termasuk depot

if Lama waktu servis di konsumen i

Fungsi Objektif3

1

25 25

, ,1 1

k kk

ki j i j

i j

minZ w z x c

(4.1)

Kendala-kendala

Konsumen25 3

,1 1

1; 2,3,..., 25k

i ji k

x j

(4 .2 )

25 3

,1 1

1; 2,3,..., 25k

i jj k

x i

(4 .3 )

Depot25

1,2

1; 1, 2,3k

jj

x k

(4 .4 )

25

,12

1; 1, 2 3,k

ii

x k

(4 .5 )

Kekontinuan rute25 25

, ,2 2

1, 2,3 ;

1,2,..., 25k k

i u u ji i

kx x

u

(4 .6 )

Kapasitas25 25

,1 1

; 1,2,3k

i i ji j

q x C k

(4 .7 )

,

, 1, 2,..., 25;

1, 2,3 k

i j k

i jx z

k

(4 .8 )

, ,

, 1, 2,..., 25;

1,2,3 k

k i j i j

i jv t d

k

(4 .9 )

, , ; , 1,2,..., 25i j j id d i j (4 .10)

Eliminasi sub-tour

,

25 25

,1 1

| ;

: 2

1, 2,3

| 1

;

k

i ji F j F

k

i ji j

x

F L x

k

F

F

(4 .11)

Time windows; 1, 2,..., 25i i ia t b i (4 .12 )

, ,

, 1,2,...,25(1 ) ;

1,2,3 k k

i i j i j ji

i jt t M x t

kf

(4 .13)

{0,1}; 1, 2,3kz k (4 .14)

,

1,2,3 {0,1};

, 1,2,...,25k

i j

kx

i j

(4 .15)

Fungsi objektif (4.1) pada model di atas adalah meminimumkan banyaknya kendaraan yang digunakan dan meminimumkan jarak tempuh kendaraan.

Kendala (4.2) dan (4.3) memberikan kepastian bahwa setiap konsumen yang ada akan dilayani oleh tepat satu kendaraan. Kendala (4.4) dan (4.5) akan memastikan tersedianya kendaraan untuk melayani rute yang ada dan untuk memastikan kendaraan berangkat dan kembali dari depot. Pada kendala (4.6) akan dipastikan kontinuitas rute kendaraan artinya memastikan bahwa kendaraan yang masuk ke suatu kota harus

Page 19: acuan

10

meninggalkan kota tersebut, sedangkan kendala (4.7) menggambarkan bahwa jumlah permintaan untuk satu rute tidak melebihi kapasitas kendaraan yang beroperasi. Selanjutnya, pada kendala (4.8) dipastikan bahwa tidak akan ada konsumen yang dilayani oleh kendaraan yang tidak aktif. Kendala (4.9) memperlihatkan hubungan antara jarak, yaitukecepatan dan waktu tempuh kendaraan, jarak dan waktu tempuh berbanding lurus. Kendala (4.10) menunjukkan bahwa jarak dari i ke jsama dengan jarak dari j ke i, sedangkan kendala (4.11) memastikan tidak ada sub-tour pada model yang ada. Berikutnya, kendala (4.12) dan (4.13) berkaitan dengan waktu pelayanan. Pada kendala (4.12) dipastikan waktu kedatangan kendaraan di tempat konsumen berada di antara waktu buka dan tutup gudang. Kendala (4.13) memastikan kendaraan akan berada di j pada saat kendaraan berangkat dari i ditambah dengan waktu servis pada i dan waktu tempuh dari ike j, sedangkan M (big-m) merupakan

bilangan yang relatif besar jika ,(1 )k

i jM xbernilai besar maka rute konsumen i ke konsumen j tidak akan ditempuh dan sebaliknya. Kendala (4.14) dan (4.15)

menunjukkan bahwa zk dan ,ki jx merupakan

variabel keputusan yang bernilai 0 dan 1.

4.4 Hasil dan PembahasanPada subbab ini akan diperlihatkan hasil

dari masalah yang dihadapi, kemudian hasiltersebut akan dibandingkan dengan keadaan yang terjadi di lapangan saat ini.

Masalah VRP yang dihadapi dapat dicari solusinya dengan menggunakan exact methoddan metode heuristik. Penggunaan exact method untuk masalah VRP yang dihadapi tidak cukup baik karena dibutuhkan waktu yang relatif lama untuk mendapatkan solusi

optimalnya. Oleh karena itu, dikembangkan metode heuristik sebagai salah satu alternatif untuk menyelesaikan masalah VRP yang dihadapi secara lebih cepat. Metode heuristik yang digunakan dalam penelitian ini dibagi menjadi dua fase. Fase pertama adalah route construction yang menggunakan nearest addition heuristic untuk mencari solusi fisibel awal dari masalah VRP yang dihadapi. Fase berikutnya adalah route improvement dimana solusi awal yang telah ada diperbaiki menggunakan beberapa metode heuristik lainnya, yakni metode 2-Opt, or-Opt, relocate, exchange, dan cross.

Input dari masalah yang akan diselesaikanmenggunakan kedua fase heuristik terdapat pada Lampiran 8. Lampiran tersebutmerupakan input bagi program yang akan digunakan. Isi dari input tersebut berupa banyaknya konsumen yang akan dikunjungi, banyaknya kendaraan yang tersedia dan kapasitas maksimum dari kendaraan yang digunakan, selain itu terdapat juga kode, jumlah permintaan, waktu buka-tutup gudang dan letak setiap konsumen. Dibutuhkan waktu 0,32 detik untuk memberikan solusi dari masalah VRP dengan menggunakan softwareILOG Dispatcher versi 2.1 dan ILOG Solverversi 4.4 yang dijalankan menggunakan Microsoft Visual C++ versi 6.0 yang dioperasikan pada komputer dengan prosessor Intel Celeron 2.53 GHz (Giga Hertz) dan memori sebesar 512 MB (Megabyte). Outputdari masalah VRP yang diselesaikanmenggunakan software tersebut dapat dilihat pada Lampiran 10.

Tabel 1, Tabel 2 dan Tabel 3 merupakanrangkaian rute yang dihasilkan dengan menggunakan metode heuristik dua fase yang telah dijelaskan sebelumnya dan masing-masing tabel merepresentasikan satu kendaraan.

Tabel 1 Hasil simulasi untuk kendaraan pertama

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 01 HARI-HARI BEKASI TRADE CENTRE 9,1988 174 PT CONTIMAS UTAMA IND. (BLUE MALL) 11,1864 170 PT NIC 22,2157 0

Page 20: acuan

11

Tabel 2 Hasil simulasi untuk kendaraan kedua

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 03 LION SUPERINDO BOROBUDUR BEKAS 11,0671 75 CARREFOUR BEKASI SQUARE 13,6437 82 MITRA WISMA ASRI 17,1940 311 CV NAGA SWALAYAN (Pondok Ungu) 21,5975 3712 GIANT UJUNG MENTENG 25,2667 1613 CARREFOUR CAKUNG 26,7864 1215 GIANT PONDOK KOPI SPM 34,4373 1522 GIANT KALIMALANG 38,7833 1823 SUPER INDO PONDOK BAMBU 39,5013 256 HERO KEMANG PRATAMA 49,7469 120 PT NIC 61,9235 0

Tabel 3 Hasil simulasi untuk kendaraan ketiga

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 09 MAKRO BEKASI 2 13,2558 28 LION SUPERINDO METROPOLITAN MALL 13,6606 177 GIANT HYPERMARKET BEKASI 13,9787 1910 HARI-HARI BEKASI CYBER PARK 15,8856 1914 LION SUPERINDO KALIMALANG BEKASI 17,3783 2216 GIANT JATI BENING 21,7282 917 STAR MART PERSADA GOLF 23,8137 424 YOGYA PONDOK BAMBU TOSERBA 24,8556 1821 TIP-TOP PONDOK BAMBU 25,2290 3720 CV NAGA SWALAYAN (Jatiwaringin) 25,5493 1819 GIANT PONDOK GEDE 28,7049 1818 TIP-TOP PONDOK GEDE 32,3982 110 PT NIC 52,2495 0

Dari ketiga tabel di atas, terlihat bahwa dibutuhkan tiga kendaraan untuk melayani seluruh konsumen. Pada kendaraan pertama rute yang dilalui meliputi depot, konsumen ke-1, konsumen ke-4 dan kembali ke depot, dengan total jarak yang ditempuh sepanjang 22,2157 kilometer dan banyaknya produkyang dibawa sebanyak 25 crate.

Sedangkan pada kendaraan kedua, rute yang ditempuh meliputi depot, konsumen ke-3, konsumen ke-5, konsumen ke-2, konsumen ke-11, konsumen ke-12, konsumen ke-13, konsumen ke-15, konsumen ke-22, konsumen ke-23 dan konsumen ke-6 sebelum kembali ke depot. Kendaraan kedua menempuh 61,9235 kilometer dan memuat sebanyak 153 cratepada pengirimannya.

Lain halnya dengan kendaraan ketiga, kendaraan ini menempuh perjalanan sepanjang 52,2495 kilometer untuk menyelesaikan satu rute yang dijadwalkan. Rute tersebut meliputi depot, konsumen ke-9, konsumen ke-8, konsumen ke-7, konsumen ke-10, konsumen ke-14, konsumen ke-16, konsumen ke-17, konsumen ke-24, konsumen ke-21, konsumen ke-20, konsumen ke-19 dan konsumen ke-18 sebelum kembali ke depot, dengan membawa 194 crate dari maksimum 200 crate yang dapat dibawa dalam satu kali pengiriman. Total perjalanan yang ditempuh oleh ketiga kendaraan tersebut adalah 136,388 kilometer.

Page 21: acuan

12

-15 -10 -5 0 5 10-15

-10

-5

0

5

10

0

1

2

3

4 56

789 10

11

12

13

14

15

1617

18

19

2021

2223

24

Miles

Mile

s

The Simulation Route

Gambar 8 Rute hasil simulasi.

Hasil simulasi di atas kemudian dibandingkan dengan data lapangan yang diamati penulis.

Tabel 4, Tabel 5 dan Tabel 6 merupakan rute kendaraan saat ini yang melayani 24konsumen.

Tabel 4 Rute saat ini untuk kendaraan pertama

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 016 GIANT JATI BENING 19,3245 920 CV NAGA SWALAYAN (Jatiwaringin) 22,2676 1823 SUPER INDO PONDOK BAMBU 24,7295 2522 GIANT KALIMALANG 25,4476 1821 TIP-TOP PONDOK BAMBU 28,3478 3724 YOGYA PONDOK BAMBU TOSERBA 28,7212 1819 GIANT PONDOK GEDE 32,3667 1811 CV. NAGA SWALAYAN (Pondok Ungu) 49,0934 3718 TIP-TOP PONDOK GEDE 63,1134 110 PT NIC 82,9648 0

Kendaraan pertama

Kendaraan kedua

Kendaraan ketiga

kilo

met

er

kilometer

Page 22: acuan

13

Tabel 5 Rute saat ini untuk kendaraan kedua

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 015 GIANT PONDOK KOPI SPM 21,0275 1513 CARREFOUR CAKUNG 28,6783 1212 GIANT UJUNG MENTENG 30,1981 162 MITRA WISMA ASRI 38,2426 33 LION SUPERINDO BOROBUDUR BEKAS 42,6166 714 LION SUPERINDO KALIMALANG BEKASI 49,1501 2210 HARI-HARI BEKASI CYBER PARK 50,6427 190 PT NIC 65,0334 0

Tabel 6 Rute saat ini untuk kendaraan kedua

Kode NamaJarak

tempuh(kilometer)

Permintaan(crate)

0 PT NIC 0 04 PT CONTIMAS UTAMA IND. (BLUE MALL) 11,0293 171 HARI-HARI BEKASI TRADE CENTRE 13,0169 177 GIANT HYPERMARKET BEKASI 17,5612 196 HERO KEMANG PRATAMA 19,3132 125 CARREFOUR BEKASI SQUARE 22,6542 88 LION SUPERINDO METROPOLITAN MALL 24,9801 179 MAKRO BEKASI 2 25,3849 2

17 STAR MART PERSADA GOLF 34,5364 40 PT NIC 55,9374 0

Data di atas memperlihatkan bahwa dibutuhkan sebanyak tiga kendaraan untuk melayani seluruh konsumen. Kendaraan pertama akan menempuh jarak sepanjang 82,9648 kilometer dan membawa 191 cratedari 200 crate yang dapat dibawa. Kendaraan pertama melayani rute depot, konsumen ke-16, konsumen ke-20, konsumen ke-23, konsumen ke-22, konsumen ke-21, konsumen ke-24, konsumen ke-19, konsumen ke-11,konsumen ke-18 dan kembali ke depot.

Rute untuk kendaraan kedua meliputi depot, konsumen ke-15, konsumen ke-13, konsumen ke-12, konsumen ke-2, konsumen

ke-3, konsumen ke-14 dan konsumen ke-10 sebelum kembali ke depot. Dengan membawa 94 crate dan menempuh jarak sepanjang 65,0334 kilometer untuk rute tersebut.

Rute berikutnya, untuk kendaraan ketiga,dijadwalkan akan membawa sebanyak 96 crate dan menempuh perjalanan sepanjang 55,9374 kilometer. Rute tersebut meliputi depot, konsumen ke-4, konsumen ke-1, konsumen ke-7, konsumen ke-6, konsumen ke-5, konsumen ke-8, konsumen ke-9 dankonsumen ke-17 sebelum kembali ke depot.Total jarak tempuh tiga kendaraan adalah203,935 kilometer.

Page 23: acuan

14

-15 -10 -5 0 5 10-15

-10

-5

0

5

10

0

1

2

3

4 56

789 10

11

12

13

14

15

1617

18

19

2021

2223

24

Miles

Mile

s

Current Route

Gambar 9 Rute saat ini.

Tabel 7 memberikan perbandingan antara hasil simulasi (pada Tabel 1, Tabel 2 dan Tabel 3) dengan kondisi rute yang saat ini (pada Tabel 4, Tabel 5 dan Tabel 6).

Perbandingan tersebut meliputi muatan yang dibawa oleh masing-masing kendaraan dan total jarak yang ditempuh oleh setiapkendaraan.

Tabel 7 Perbandingan muatan kendaraan hasil simulasi dan kendaraan yang beroperasi saat ini

Muatan(crate)

Kapasitas max

(crate)

Jarak Tempuh(kilometer)

Keadaan saat iniKendaraan ke-1 191 (95,5%) 200 82,9648Kendaraan ke-2 94 (47,0%) 200 65,0334Kendaraan ke-3 96 (48,0%) 200 55,9374

Hasil SimulasiKendaraan ke-1 34 (17,0%) 200 22,2157Kendaraan ke-2 153 (76,5%) 200 61,9235Kendaraan ke-3 194 (97,0%) 200 52,2495

Dari Tabel 7 dapat disimpulkan bahwa masing-masing rute pada hasil simulasi memiliki jarak tempuh yang lebih pendekdibandingkan dengan rute yang ditempuh oleh kendaraan pada saat ini. Pada hasil simulasi

total jarak yang ditempuh ketiga kendaraan adalah 136,388 kilometer, sedangkan total jarak pada ketiga kendaraan saat ini adalah203,935 kilometer. Dengan kata lain, total jarak yang ditempuh pada hasil simulasi

Kendaraan pertama

Kendaraan kedua

Kendaraan ketiga

kilometer

kilo

met

er

Page 24: acuan

15

mencapai 66,88% dari total jarak yang ditempuh kendaraan saat ini. Sementara itubanyaknya produk yang dibawa oleh kendaraan kedua dan ketiga pada hasil simulasi lebih besar dibandingkan dengan banyaknya barang yang dibawa oleh

kendaraan kedua dan ketiga saat ini.Persentase kedua kendaraan tersebut mencapai 76,5% dan 97%, sedangkan pada kendaraan yang beroperasi saat ini persentase muatan pada kendaraan kedua dan ketiga sebesar 47% dan 48%.

V SIMPULAN DAN SARAN

5.1 Kesimpulan1. Masalah penentuan rute untuk

distribusi barang (VRP) dapat diformulasikan sebagai masalah Integer Linear Programming.

2. Masalah penentuan rute untuk distribusi barang (VRP) dapat diselesaikan dengan menggunakan metode heuristik, pada penelitian ini menggunakan metode nearest addition heuristic.

3. Hasil simulasi menggunakan metode heuristik memperoleh hasil yang lebih baik daripada kondisi yang ada sekarang, karena total jarak tempuh menjadi lebih pendek.

5.2 SaranBeberapa hal yang dapat dilakukan agar

penelitian ini lebih baik terkait dengan implementasinya di lapangan, antara lain:

1. Jarak antar tempat dapat dibuat serealistis mungkin, karena jarak antar tempat yang terdapat padamatriks jarak merupakan hasil estimasi.

2. Waktu bongkar-muat di konsumen dapat diestimasi dengan cara yang lebih baik. Misalnya dengan melakukan beberapa kali pengamatanterhadap waktu bongkar-muat di setiap konsumen, kemudian gunakan rata-rata waktu tersebut sebagai input.

DAFTAR PUSTAKA

Caric T, Galic A, Fosin J, Gold H, Reinholz. 2008. A Modelling and Optimization Framework for Real-World Vehicle Routing Problem. Vehicle Routing Problem: 142, I-Tech, Vienna, Austria.

Cordeau J-F, Gendreau M, Laporte G, Potvin JY, Semet F. 2002. A Guide to Vehicle Routing Heuristics. Journal of Operation Research Society 53: 512-522.

Hoffman K, Padberg M. 2009. Traveling Salesman Problem. http://iris.gmu.edu/ ~khoffman/papers/trav_salesman.html. [8 Feb 2009].

Kritikos MN, Ioannou G. 2004. A synthesis of assignment and heuristic solutions for vehicle routing with time windows. Journal of the Operational Research Society 55: 2–11.

Kang HK, Byung KL, Yoon HL, Young HL. 2007. A Heuristic for the vehicle routing problem with due times. Computers and Industrial Engineering54: 421-431.

Laporte G, Boctor F, Renaud J, Prive J. 2006. Solving a vehicle-routing problem arising in soft-drink distribution. Journal of Operation Research Society 57: 1045-1052.

Larsen J. 1999. Vehicle Routing with Time Windows- Finding optimal solution efficiently.

Machado P, Tavares J, Pereira BF, Costa E. 2002. Vehicle Routing Problem: Doing it The Evolution Way.

Nilsson C. 2003. Heuristics for the Traveling Salesman Problem.

Sutapa NI, Widyadana AGI, Christine.2003. Studi tentang Traveling Salesman Problem dan Vehicle Routing Problem dengan Time windows. Jurusan Teknik Industri, Universitas Petra, Surabaya.

ILOG. 1999. User’s Manual ILOG Dispatcher 2.1. France: ILOG

Winston WL. 2004. Operation Research Applications and Algorithms. Ed ke-4.Belmont, California: Brooks/Cole-Thompson Learning.

Page 25: acuan

16

LAMPIRAN

Page 26: acuan

17

Lampiran 1

Struktur organisasi pada departemen supply chain managment

Page 27: acuan

18

Lampiran 2

Saluran distribusi yang ada

P

R

O

D

U

S

E

N

K

O

N

S

U

M

E

N

hawker

warungMotorStock Point (SP)

Retail/outlet (RO)

Distribution Center(DC)

Institusi

Agen

Page 28: acuan

19

Lampiran 3

Diagram alir pada saluran distribusi retail/outlet

- F P (stempel, ttd)- D N (stempel, ttd)- Check product- Display

- DN- Sisa stock/ titipan (bila ada)- Nota penarikan barang- Product/ roti BS & crate

- DN- Faktur penjualan (FP)- PO- Product/ roti & crate

Purcahased Order (PO)

- Delivery note (DN)- Faktur penjualan - PO

Konsumen

Sales admin

WarehouseOperator

loading

unloading

Divisi Distribusi

Driver & helper

- Bukti Terima Barang- Sisa Stock/ titipan (bila ada)- Nota Penarikan Barang- Product/ Roti BS & Crate

Page 29: acuan

20

Lampiran 4

Beberapa gambar:

Pemisahan permintaan Kendaraan saat loading

Page 30: acuan

21

Penghitungan roti

Memasukkan pesanan ke mobil-box

Page 31: acuan

22

Crate kosong saat unloading

Sisa roti

Page 32: acuan

23

Lampiran 5

Matriks Jarak

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 240 0.00 11.52 18.24 14.16 12.48 13.08 18.00 13.92 13.44 15.12 15.12 20.76 22.68 24.24 16.32 22.08 19.01 20.76 23.33 23.40 21.72 22.80 24.19 23.64 22.321 0.00 6.72 2.64 1.56 2.16 6.00 4.32 4.32 4.56 5.88 11.40 13.32 14.88 7.08 12.84 12.48 13.92 13.32 17.47 14.35 14.47 11.88 12.43 13.992 0.00 4.32 8.28 8.88 10.44 6.60 6.60 7.56 7.92 7.56 9.48 11.04 9.12 11.64 13.56 16.44 17.28 17.35 16.39 16.51 13.92 14.47 16.033 0.00 1.80 1.56 4.92 4.56 4.32 3.36 6.00 8.88 10.80 12.36 7.20 9.96 15.12 15.84 9.72 17.59 14.47 12.48 12.00 12.55 14.114 0.00 0.60 4.44 2.76 2.76 3.00 4.32 9.84 11.76 13.08 5.40 10.08 10.92 12.00 11.76 15.91 12.79 10.80 10.32 10.87 12.435 0.00 3.84 2.16 2.16 2.40 3.72 9.24 11.16 12.48 4.92 9.48 10.32 11.64 11.16 15.31 12.19 10.20 9.72 10.27 11.836 0.00 4.08 3.84 2.88 5.52 10.92 12.84 14.40 6.72 11.40 10.80 14.64 8.88 12.36 13.99 14.11 11.52 12.07 13.637 0.00 0.24 1.20 1.68 6.84 8.76 10.32 2.88 7.32 6.96 9.60 9.96 13.27 10.15 10.27 7.68 8.23 9.798 0.00 0.96 1.68 7.08 9.00 10.56 2.88 7.56 6.96 9.60 9.72 13.27 10.15 10.27 7.68 8.23 9.799 0.00 2.64 8.04 9.96 11.52 3.84 8.52 7.92 10.56 8.76 12.24 11.11 11.23 8.64 9.19 10.75

10 0.00 8.52 10.44 12.00 1.20 6.96 5.28 8.40 9.60 11.59 8.47 8.59 6.00 6.55 8.1111 0.00 1.92 3.48 7.32 8.16 10.08 13.56 14.40 17.83 14.71 14.95 12.36 12.91 14.4712 0.00 1.56 9.24 5.16 11.04 12.00 20.78 16.03 12.91 13.03 10.44 10.99 12.5513 0.00 10.80 6.48 12.60 11.52 21.67 17.11 13.99 14.04 11.52 12.07 13.5614 0.00 5.76 4.08 6.72 8.40 10.39 7.27 7.39 4.80 5.35 6.9115 0.00 5.88 6.36 10.20 11.71 7.75 9.43 5.28 5.83 7.3916 0.00 3.84 4.32 5.83 6.55 6.67 4.08 4.63 6.1917 0.00 8.16 6.36 5.28 6.36 1.92 2.47 5.8818 0.00 3.48 6.60 7.68 9.07 8.52 7.2019 0.00 3.12 4.20 5.59 5.04 3.7220 0.00 1.08 2.47 1.92 0.6021 0.00 2.59 2.04 0.4822 0.00 0.55 2.1123 0.00 1.5624 0.00

Page 33: acuan

24

Lampiran 6

Data

No Nama TempatPermintaan

(crate)

Waktu bongkar-muat

(menit)

0 PT. NIC

1 HARI-HARI BEKASI TRADE CENTRE 17 38

2 MITRA WISMA ASRI 3 7

3 LION SUPERINDO BOROBUDUR BEKAS 7 34

4 PT.CONTIMAS UTAMA IND. (BLUE MALL) 17 69

5 CARREFOUR BEKASI SQUARE 8 91

6 HERO KEMANG PRATAMA 12 37

7 GIANT HYPERMARKET BEKASI 19 28

8 LION SUPERINDO METROPOLITAN MALL 17 41

9 MAKRO BEKASI 2 2 32

10 HARI-HARI BEKASI CYBER PARK 19 15

11 CV. NAGA SWALAYAN (Pondok Ungu) 37 69

12 GIANT UJUNG MENTENG 16 42

13 CARREFOUR CAKUNG 12 54

14 LION SUPERINDO KALIMALANG BEKASI 22 21

15 GIANT PONDOK KOPI SPM 15 18

16 GIANT JATI BENING 9 47

17 STAR MART PERSADA GOLF 4 8

18 TIP-TOP PONDOK GEDE 11 60

19 GIANT PONDOK GEDE 18 35

20 CV. NAGA SWALAYAN (Jatiwaringin) 18 20

21 TIP-TOP PONDOK BAMBU 37 81

22 GIANT KALIMALANG 18 58

23 SUPER INDO PONDOK BAMBU 25 66

24 YOGYA PONDOK BAMBU TOSERBA 18 73

Page 34: acuan

25

Lampiran 7

Input

Berupa file .dat yang berisi sebagai berikut:

24

5

200

1

0 540 -13.6310 8.6950

1 17 0 540 38 -7.0298 2.2886

2 3 0 540 7 -6.6594 -4.2273

3 7 0 540 34 -6.6025 0.1463

4 17 0 540 69 -5.1493 1.6448

5 8 0 540 91 -4.5309 -1.3859

6 12 0 540 37 -3.5825 1.8177

7 19 0 540 28 -3.0148 0.1602

8 17 0 540 41 -3.1175 0.4612

9 2 0 540 32 -2.9581 0.8333

10 19 0 540 15 -1.3809 1.1434

11 37 0 540 69 -3.2144 -6.9702

12 16 0 540 42 -0.7663 -9.7032

13 12 0 540 54 -0.1513 -11.0930

14 22 0 540 21 -0.0748 0.4208

15 15 0 540 18 3.0291 -4.1345

16 9 0 540 47 4.1974 1.2394

17 4 0 540 8 6.1911 0.6274

18 11 0 540 60 5.6338 3.9049

19 18 0 540 35 9.3217 4.1036

20 18 0 540 20 7.0661 1.8967

21 37 0 540 81 6.8457 1.6644

22 18 0 540 58 6.2007 -1.1632

23 25 0 540 66 6.4034 -0.4744

24 18 0 540 73 6.9748 1.314

Page 35: acuan

26

Lampiran 8

ProsesSource code yang digunakan sebagai berikut:#include <ildispat/dispatch.h>#include <ildispat/rplan.h>#if defined(ILUSESTL)#include <iostream>#include <fstream>#include <string>#else#include <iostream.h>#include <fstream.h>#include <string.h>#endifILCSTLBEGINvoid Info(IlcManager m, IlcRoutingPlan plan, char * problem) { //////////////////////////////////////////////////////// // informasi aja //////////////////////////////////////////////////////// m.printInformation(); plan.printInformation(); m.out() << "===============" << endl << "Problem name : " << problem << endl // nama permasalahan << "Cost : " <<plan.getTotalCost()+1000*plan.getNbOfVehiclesUsed()<< endl //biaya total

<< "Number of vehicles used : "<< plan.getNbOfVehiclesUsed() << endl// kendaraan yang digunakan

<< "Solution : " << endl //gambaran solusi yang dihasilkan << plan << endl;}int main(int argc, char* argv[]) {

IlcManager m(IlcEdit);#if defined(ILCLOGFILE) m.openLogFile("vrp.log");#endif IlcRoutingPlan plan(m); // definisikan permasalahan yang dihadapi IlcDimension2 time(plan, IlcEuclidean, "Time"); IlcDimension1 weight(plan, "Weight"); // definisikan kapasitas yang dibawa kendaraan IlcDimension2 length(plan, IlcEuclidean, "Length"); ////////////////////////////////////////////////////////////////// // membaca data dari file vrp20_1_1_1.dat ////////////////////////////////////////////////////////////////// ifstream infile; char * problem; if (argc >=2) problem = argv[1]; else problem = (char *) "E:/ta/prognya/code/coba/vrp/cost on vehicle/vrp20_1_1_1.dat"; infile.open(problem); if (!infile) { m.out() << "File not found or not specified: " << problem << endl;#if defined(ILCLOGFILE) m.closeLogFile();#endif m.end(); return 0; } IlcInt nbOfVisits, nbOfTrucks; infile >> nbOfVisits >> nbOfTrucks;

Page 36: acuan

27

IlcFloat capacity; infile >> capacity; IlcFloat openTime, closeTime; infile >> openTime >> closeTime; IlcFloat depotX, depotY ; infile >> depotX >> depotY; IlcNode depot(plan, depotX, depotY); for (IlcInt j = 0; j < nbOfTrucks; j++) {

IlcVisit first(depot, "Depot"); // dimulai dari depot m.add(first.getCumulVar(time) >= openTime); // definisikan waktu buka IlcVisit last(depot, "Depot"); // diakhiri di depot m.add(last.getCumulVar(time) <= closeTime); // definisikan waktu tutup

char name[16];sprintf(name, "Vehicle %d\0", j); // kendaraan yang melakukan pengirimanIlcVehicle vehicle(plan, first, last, name);vehicle.setCapacity(weight, capacity); // kendala kapasitas kendaraanvehicle.setSpeed(length, 1);

} for (IlcInt i = 0; i < nbOfVisits; i++) { IlcInt id; // visit identifier?? IlcFloat x, y, quantity, minTime, maxTime, dropTime; infile >> id >> quantity >> minTime >> maxTime >> dropTime >> x >> y; IlcNode customer(plan, x, y);

char name[16]; sprintf(name, "%d\0", id); IlcVisit visit(customer, name); visit.setDelay(time, dropTime); //kendala waktu bongkar-muat visit.setQuantity(weight, quantity);// kendala yang dibawa kendaraan /////////////////////////////////////////////// // kendala waktu pelayanan (time window) /////////////////////////////////////////////// ILCSETWINDOW(visit.getCumulVar(time), minTime <= var && var <= maxTime); } infile.close(); ///////////////////////////////////////////////////////////////////////// // mencari solusi dengan menggunakan metode nearest addition heuristic ///////////////////////////////////////////////////////////////////////// IlcGoal generateGoal = IlcNearestAdditionGenerate(m, plan); m.add(generateGoal); if (!m.nextSolution()) { m.out() << "Not enough vehicles to generate first solution" << endl;#if defined(ILCLOGFILE) m.closeLogFile();#endif m.end(); return 0; } else { m.restart(); m.remove(generateGoal);

////////////////////////////////////////////////////////////////////////////////////memperbaiki solusi yang didapat dengan twoOP,orOpt,Relocate,Exchange,dan Cross//////////////////////////////////////////////////////////////////////////////////

plan.improve(5, IlcTwoOpt(plan), IlcOrOpt(plan), IlcRelocate(plan), IlcExchange(plan),

Page 37: acuan

28

IlcCross(plan)); } Info(m, plan, problem);#if defined(ILCLOGFILE) m.closeLogFile();#endif m.end(); return 0;}

Page 38: acuan

29

Lampiran 9

OutputProblem name:cost: 3136.39Number of vehicles used: 3Solution: Unperform visits: NoneVehicle 0:

Depot Weight [0..166] Time [0..401.784] Length [0..1.#INF] 1 Weight [0..166] Time [9.19879..419.983] Length [9.19879..1.#INF] 4 Weight [17..183] Time [49.1864..459.971] Length [11.1864..1.#INF] Depot Weight [34..200] Time [129.216..540] Length [22.2157..1.#INF]

Vehicle 1: Depot Weight [0..47] Time [0..2.07651] Length [0..1.#INF]

3 Weight [0..47] Time [11.0671..13.1436] Length [11.0671..1.#INF] 5 Weight [7..54] Time [47.6437..49.7202] Length [13.6437..1.#INF] 2 Weight [15..62] Time [142.194..144.27] Length [17.194..1.#INF] 11 Weight [18..65] Time [153.598..155.674] Length [21.5975..1.#INF] 12 Weight [55..102] Time [226.267..228.343] Length [25.2667..1.#INF] 13 Weight [71..118] Time [269.786..271.863] Length [26.7864..1.#INF] 15 Weight [83..130] Time [331.437..333.514] Length [34.4373..1.#INF] 22 Weight [98..145] Time [353.783..355.860] Length [38.7833..1.#INF] 23 Weight [116..163] Time [412.501..414.578] Length [39.5013..1.#INF] 6 Weight [141..188] Time [488.747..490.823] Length [49.7469..1.#INF] Depot Weight[153..200] Time [537.923..540] Length [61.9235..1.#INF]

Vehicle 2: Depot Weight [0..6] Time [0..26.7505] Length [0..1.#INF]

09 Weight [0..6] Time [13.2558..40.0063] Length [13.2558..1.#INF] 08 Weight [2..8] Time [45.6606..72.4111] Length [13.6606..1.#INF] 07 Weight [19..25] Time [86.9787..113.729] Length [13.9787..1.#INF] 10 Weight [38..44] Time [116.886..143.636] Length [15.8856..1.#INF] 14 Weight [57.. 63] Time[133.378..160.129] Length [17.3783..1.#INF] 16 Weight [79..85] Time [158.728..185.479] Length [21.7282..1.#INF] 17 Weight [88..94] Time [207.814..234.564] Length [23.8137..1.#INF] 24 Weight [92..98] Time [216.856..243.606] Length [24.8556..1.#INF] 21 Weight [110..116] Time [290.229..316.979] Length [25.229..1.#INF] 20 Weight [147..153] Time [371.549..398.300] Length [25.5493..1.#INF] 19 Weight [165..171] Time [394.705..421.455] Length [28.7049..1.#INF] 18 Weight [183..189] Time [433.398..460.149] Length [32.3982..1.#INF] Depot Weight[194..200] Time [513.250..540] Length [52.2495..1.#INF]

Page 39: acuan

30

Lampiran 10

Contoh dari metode multidimensional scaling (MDS):Input: D =

X Atl Chi Den Hou LA Mia NYC SF Sea WDC

Atl 0 587 1212 701 1936 604 748 2139 2182 543

Chi 587 0 920 940 1745 1188 713 1858 1737 597

Den 1212 920 0 879 831 1726 1631 949 1021 1494

Hou 701 940 879 0 1374 968 1420 1645 1891 1220

LA 1936 1745 831 1374 0 2339 2451 347 959 2300

Mia 604 1188 1726 968 2339 0 1092 2594 2734 923

NYC 748 713 1631 1420 2451 1092 0 2571 2408 205

SF 2139 1858 949 1645 347 2594 2571 0 678 2442

Sea 2182 1737 1021 1891 959 2734 2408 678 0 2329

WDC 543 597 1494 1220 2300 923 205 2442 2329 0

Matriks jarak antara 10 kota di Amerika Serikat

Ouput yang dihasilkan:

Output Multidimensional Scaling(MATLAB, 2004)