• Tidak ada hasil yang ditemukan

Penentuan Rute Optimum dalam Supply Chain Network dengan Algoritma Ant Colony Untuk Kota dan Kabupaten Bogor

N/A
N/A
Protected

Academic year: 2017

Membagikan "Penentuan Rute Optimum dalam Supply Chain Network dengan Algoritma Ant Colony Untuk Kota dan Kabupaten Bogor"

Copied!
43
0
0

Teks penuh

(1)

PENENTUAN RUTE OPTIMUM DALAM

SUPPLY CHAIN

NETWORK

DENGAN ALGORITMA

ANT COLONY

UNTUK

KOTA DAN KABUPATEN BOGOR

INDRI WIDYASTUTI

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(2)

2

PENENTUAN RUTE OPTIMUM DALAM

SUPPLY CHAIN

NETWORK

DENGAN ALGORITMA

ANT COLONY

UNTUK

KOTA DAN KABUPATEN BOGOR

INDRI WIDYASTUTI

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2012

Skripsi

sebagai salah satu syarat untuk memperoleh gelar

Sarjana Komputer pada

(3)

ABSTRACT

INDRI WIDYASTUTI. Penentuan Rute Optimum dalam Supply Chain Network dengan Algoritma Ant Colony Untuk Kota dan Kabupaten Bogor. Dibimbing oleh SONY HARTONO WIJAYA.

Persaingan antarperusahaan semakin marak terjadi seiring berkembangnya teknologi dan permintaan pasar. Agar produk suatu perusahaan dapat bertahan dipasaran, diperlukan suatu manajemen yang dapat mengatur informasi dari produsen ke konsumen dengan efektif dan efisien. Pada penelitian ini, menitikberatkan cara pendistribusian produk melalui jalur dengan jarak terpendek, yaitu memanfaatkan Algoritma Ant Colony untuk memperoleh rute pendistribusian dengan jarak terpendek. Algortima ini bekerja pada sebuah graf berbobot jarak dan berarah sesuai lajur lalu lintas. Data yang digunakan pada penelitian ini adalah data sistem jalan Kota dan Kabupaten Bogor wilayah Barat. Sistem ini menggunakan Google Maps untuk merepresentasikan rute hasil dari Algoritma Ant Colony.

Penelitian ini berhasil mengimplementasikan Algoritma Ant Colony pada sebuah sistem untuk mencari rute optimum pendistribusian. Hasil dari sistem ini berupa rute optimum dengan akurasi sebesar 92%.

(4)

ABSTRACT

INDRI WIDYASTUTI. Determining Optimal Route in Supply Chain Network with Ant Colony Algorithm for Bogor City and Regency. Supervised by SONY HARTONO WIJAYA.

Competition among companies rises along with the development of technology and market demand. In order to keep a product resist in the market, a management which is able to manage information from manufacturer to consumer effectively and efficiently is needed. This research is emphasizing the manner of distributing the product through the shortest route, that is the use of Ant Colony Algorithm to obtain the shortest route of distribution. This algorithm operates on a weighted graph distance and directional appropriate traffic lane. Data which were used in this research were the data of system of Bogor City and Regency. This system uses Google Maps to represent the route as the result of Ant Colony Algorithm.

This research successfully implement a system using Ant Colony Algorithm to find the optimum route distribution. The result from this system is a optimum route with an accuracy of 92%.

(5)

Judul Skripsi : Penentuan Rute Optimum dalam Supply Chain Network dengan Algoritma Ant Colony Untuk Kota dan Kabupaten Bogor

Nama : Indri Widyastuti

NIM : G64080044

Menyetujui: Pembimbing,

Sony Hartono Wijaya, S.Kom, M.Kom NIP. 19810809 200812 1 002

Mengetahui: Ketua Departemen,

Dr. Ir. Agus Buono, M.Si, M.Kom NIP. 19660702 199302 1 001

(6)

Penguji :

1. Toto Haryanto, S.Kom, M.Si

(7)

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa yang telah memberikan rahmat dan karunia-Nya sehingga skripsi ini dapat diselesaikan. Skripsi ini merupakan hasil penelitian yang dilakukan dari bulan Februari sampai bulan Juli 2012 dengan bidang kajian Penentuan Rute Optimum dalam Supply Chain Network dengan Algoritma Ant Colony Untuk Kota dan Kabupaten Bogor.

Penulis mengucapkan terima kasih kepada semua pihak yang telah memberikan bantuan, bimbingan, dan dorongan kepada penulis selama menyelesaikan tugas akhir ini, antara lain:

1 Kedua orang tua tercinta, Bapak Sunardi, S.Pd dan Ibunda Anis Maryati, S.Pd yang selalu memberikan kasih sayang, doa, dan dukungan moral.

2 Adik-adik tercinta, Taufik Rahmad Ramadhan, R. Bakhrun Adi Nugroho, dan Amin Probowati Mustikasari yang selalu menjadi motivasi penulis untuk segera menyelesaikan tugas akhir.

3 Bapak Sony Hartono Wijaya, S.Kom, M.Kom selaku pembimbing atas ilmu, waktu, bimbingan, arahan, dan nasihat yang selalu diberikan selama pengerjaan tugas akhir ini. 4 Bapak Hendra Rahmawan selaku pembimbing akademik yang telah meluangkan waktunya

untuk mendengarkan keluh kesah penulis.

5 Bapak Toto Haryanto, S.Kom, M.Si dan Bapak Dr. Wisnu Ananta Kusuma, S.T, M.T selaku dosen penguji yang telah memberikan ide dan saran kepada penulis.

6 Muhammad Ulul Albab dan rekan-rekan Ilkom 45 yang telah banyak membantu penulis selama menjalani waktu kuliah di departemen Ilmu Komputer IPB.

7 Departemen Ilmu Komputer, staf, dan dosen yang telah banyak membantu baik selama penelitian maupun pada masa perkuliahan.

Penulis menyadari bahwa karya tulis ini masih jauh dari sempurna karena keterbatasan pengalaman dan pengetahuan yang dimiliki penulis. Segala kesempurnaan hanya milik Tuhan Yang Maha Esa, semoga hasil penelitian ini dapat bermanfaat, Amin.

Bogor, September 2012

(8)

RIWAYAT HIDUP

(9)

DAFTAR ISI

Halaman

DAFTAR TABEL ... vi

DAFTAR GAMBAR ... vi

DAFTAR LAMPIRAN ... vi

PENDAHULUAN Latar Belakang ... 1

Tujuan ... 1

Ruang Lingkup ... 1

TINJAUAN PUSTAKA ... 1

SupplyChainManagement ... 1

Graf ... 2

Algoritma AntColony ... 2

METODE PENELITIAN Pendefinisian Masalah ... 4

Studi Pustaka ... 4

Pembentukan Data ... 4

Pengembangan Sistem ... 4

Pengujian dan Analisis Sistem ... 5

HASIL DAN PEMBAHASAN Pendefinisian Masalah ... 5

Pembentukan Data ... 5

Pengembangan Sistem ... 6

Pengujian dan Analisis Sistem ... 9

SIMPULAN DAN SARAN Simpulan ... 10

Saran ... 10

DAFTAR PUSTAKA ... 10

(10)

DAFTAR TABEL

Halaman

1 Representasi tingkah laku semut dalam Algoritma Ant Colony ... 2

2 Nilai parameter dengan rata-rata solusi jarak ... 7

3 Nilai parameter dengan rata-rata solusi jarak ... 7

4 Nilai parameter dengan rata-rata solusi jarak... 8

5 Nilai parameter dengan rata-rata solusi jarak... 8

6 Nilai parameter m dengan rata-rata solusi jarak ... 8

7 Nilai parameter dengan rata-rata solusi jarak ... 9

8 Akurasi hasil pengujian rute optimum ... 10

DAFTAR GAMBAR

Halaman 1 Graf berarah. ... 2

2 Koloni semut. ... 2

3 Metode penelitian. ... 4

4 Pembentukan node dan edge. ... 5

5 Tampilan awal sistem pencarian rute ... 6

6 Hubungan parameter dengan rata-rata solusi jarak. ... 7

7 Hubungan parameter dengan rata-rata solusi jarak. ... 7

8 Hubungan parameter dengan rata-rata solusi jarak. ... 8

9 Hubungan parameter dengan rata-rata solusi jarak. ... 8

10 Hubungan parameter m dengan rata-rata solusi jarak. ... 8

11 Hubungan parameter m = 10, m = 25, m = 50, dan m= 100 dengan waktu eksekusi. ... 9

12 Hubungan parameter dengan rata-rata solusi jarak. ... 9

13 Hubungan antara waktu eksekusi program dengan nilai parameter . ... 9

DAFTAR LAMPIRAN

Halaman 1 Diagram Alur Algoritma Ant Colony ... 12

2 Data node ... 13

3 Data edge ... 14

4 Alur pemanggilan fungsi ... 18

5 Hasil pengujian Nilai ... 20

6 Hasil pengujian Nilai ... 22

7 Hasil pengujian Nilai ... 24

8 Hasil pengujian nilai ... 25

9 Hasil pengujian nilai ... 26

10 Hasil pengujian nilai ... 29

11 Pengujian rute optimum ... 31

(11)

PENDAHULUAN

Latar Belakang

Persaingan antarperusahaan semakin marak terjadi seiring berkembangnya teknologi dan permintaan pasar. Suatu perusahaan harus bisa bersaing agar produknya tetap bertahan dipasaran. Salah satu cara agar produk suatu perusahaan bisa bertahan di pasaran adalah dengan melakukan manajemen pemasaran dan pendistribusian dengan baik. Sehingga dibutuhkan manajemen perusahaan yang dapat menjalankan proses bisnis dari hulu hingga hilir secara efektif dan efisien. Perusahaan tersebut harus mengintegrasikan antara arus informasi barang dan jasa mulai dari pemasok sampai ke konsumen sehingga dapat menambah keuntungan dari perusahaan. Proses integrasi ini sering disebut dengan manajemen rantai pasok (supply chain management).

Salah satu faktor yang dalam supply chain management yang merupakan faktor utama dalam pemasaran produk adalah supply chain network. Supply chainnetwork dibagi menjadi dua bagian, yaitu lokasi dan jalur produksi. Penentuan lokasi produksi berpengaruh dalam pelayanan terhadap konsumen dan pemasaran produk. Untuk penentuan jalur produksi yang tepat dapat meminimalkan waktu distribusi dan jarak tempuh.

Pada penelitian sebelumnya telah dilakukan pencarian rute optimum daerah Bogor menggunakan Algoritma Genetika (Marwantoni 2009). Penelitian ini mengoptimumkan waktu tempuh dari titik asal ke titik tujuan. Ada pula penelitian sebelumnya tentang penentuan lokasi dan jalur distribusi daerah Bogor menggunakan Algoritma Djikstra (Priasa 2008). Penelitian ini menentukan lokasi, dimana lokasi tersebut paling optimum untuk mejangkau setiap tujuan pada Kota Bogor. Perbedaan dari kedua Algoritma Genetika dan Algoritma Djikstra adalah Algoritma Genetika merupakan salah satu metode heuristik. Sedangkan Algoritma Dijkstra adalah salah satu metode konvensional. Metode konvensional dihitung dengan perhitungan matematis biasa, sedangkan metode heuristik dihitung dengan menggunakan sistem pendekatan. Algoritma

Ant Colony salah satu dari metode heuristik, dengan perhitungan pendekatan untuk mendapatkan nilai yang mendekati optimum. Kelebihan dari Algoritma Ant Colony antara lain: dapat memberikan alternatif jawaban, memberikan positive feedback dalam

menentukan solusi dengan cepat, yaitu meninggalkan feromon pada jalur yang dilalui, yang disebut dengan feromon adalah zat kimia yang berasal dari kelenjar endokrin dan digunakan oleh makhluk hidup untuk mengenali sesama jenis. Kekurangan dari Algoritma Ant Colony, yaitu analisis secara teoritik lebih sulit daripada eksperimen, waktu konvergensi tidak pasti, namun pasti konvergen, probabilitas dalam memilih suatu titik berubah-ubah sesuai siklus.

Penelitian ini merancang supply chain network yang berfokus pada penentuan jalur distribusi untuk mendapatkan rute optimum dengan jarak tempuh terpendek dan waktu tempuh tercepat. Penelitian ini menggunakan Algoritma Ant Colony. Hasil dari perancangan ini diimplementasikan dalam bentuk website

yang dapat memudahkan perusahaan dalam pengaksesannya.

Tujuan

Tujuan dari penelitian ini adalah merancang supply chain network untuk menentukan rute pendistribusian yang optimum dengan menggunakan Algoritma Ant Colony.

Ruang Lingkup

Ruang lingkup penelitian ini adalah:

 Data yang digunakan adalah data dari penelitian sebelumnya oleh Marwantoni, yaitu daerah Kota Bogor dan beberapa tambahan daerah Kabupaten Bogor wilayah Barat.

 Sistem dibuat untuk untuk memberikan rute distribusi dari tempat produksi ke satu tempat tujuan.

TINJAUAN PUSTAKA

SupplyChainManagement

Supply Chain adalah jaringan perusahaan-perusahaan yang secara bersama-sama bekerja untuk menciptakan dan menghantarkan suatu produk ke tangan pemakai akhir. Perusahaan-perusahaan tersebut termasuk supplier, pabrik, distributor, toko atau ritel, serta perusahaan pendukung seperti jasa logistik. Ada 3 macam hal yang harus dikelola dalam supply chain

yaitu:

(12)

2

distributor, pengecer, kemudian ke pemakai akhir.

2 Aliran uang dan sejenisnya yang mengalir dari hilir ke hulu.

3 Aliran informasi yang bisa terjadi dari hulu ke hilir atau sebaliknya.

Sedangkan supply chain management atau manajemen rantai pasok adalah metode, alat atau pendekatan pengelolaan dari pasokan bahan baku, produksi barang, maupun pengiriman barang sampai ke konsumen untuk menciptakan pelayanan yang lebih baik dan efisien sehingga dapat memuaskan permintaan pasar (Ayers 2001). Supply chain management tidak hanya berorientasi pada urusan internal melainkan juga eksternal perusahaan yang menyangkut hubungan dengan perusahaan-perusahaan partner. Jadi, dengan kata lain supply chain management

(SCM) merupakan integrasi proses-proses bisnis kunci dari pengguna akhir sampai ke pemasok awal yang menyediakan produk, jasa, dan informasi yang memberikan nilai tambah untuk pelanggan dan pihak-pihak terkait lainnya.

Graf

Graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut. Graf G merupakan pasangan himpunan tidak kosong dari V(G)

yang disebut dengan verteks atau node dan himpunan E(G) yang menghubungkan antara dua node yang disebut dengan himpunan

edge (Chartrand & Ollerman 1993). Graf G = (V, E), yang dalam hal ini:

Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas 2 jenis:

 Graf tak-berarah (undirectedgraph) Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah.

 Graf berarah (directedgraph atau digraph) Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah. Graf berarah dalat dilihat pada Gambar 1.

Algoritma AntColony

Algoritma Ant Colony adalah algoritma yang diadopsi dari perilaku koloni semut. Secara alamiah koloni semut mampu menemukan rute terpendek dalam perjalanan dari sarang ke tempat-tempat sumber makanan (Dorigo & Stutzle 2004). Sebagai ilustrasi koloni semut dalam pencarian rute terpendek dapat dilihat pada Gambar 2.

Tabel 1 merupakan representasi koloni semut dalam dunia nyata dan saat diimplemntasikan pada Algoritma Ant Colony. Tabel 1 Representasi tingkah laku semut

dalam Algoritma Ant Colony

Kenyataan Algoritma Ant

Colony Gambar 1 Graf berarah.

(13)

Beberapa langkah untuk menentukan jalur terpendek, yaitu:

Langkah 1:

a Inisialisasi parameter-parameter algoritma. Parameter – parameter tersebut adalah:

 Intensitas jejak semut antarnode dan

perub h nny ( ij).

 Banyaknya node (n) dan jarak antarnode (dij).

 Tetapan pengendali intensitas jejak semut (α).

 Tetapan pengendali visibilitas (β).

 Visibilitas antarnode =

atau ( ).  Banyaknya semut (m).

 Tetapan penguapan jejak semut () .

 Jumlah siklus maksimum (Nmax).

b Inisialisasi node pertama pada setiap semut.

Langkah 2:

Inisialisasi kota pertama setiap semut dalam Langkah 1 harus diisikan sebagai elemen pertama tabulis. Hasil dari langkah ini adalah terisinya elemen pertama tabulissemut dengan indeks node tertentu, yang berarti bahwa setiap tabuk (1) bisa berisi indeks kota awal sebagaimana hasil inisialisasi pada Langkah 1.

Langkah 3

Penyusunan rute kunjungan setiap semut ke setiap node. Koloni semut yang sudah berada di sebuah kota, akan mulai melakukan perjalanan dari kota pertama sebagai node asal dan salah satu node-node lainnya sebagai

node tujuan. Kemudian dari node kedua masing-masing, koloni semut akan melanjutkan perjalanan dengan memilih salah satu dari node-node yang tidak terdapat pada

tabuk sebagai node tujuan selanjutnya. Perjalanan koloni semut berlangsung terus menerus sampai menemukan kota tujuan atau bila sudah terjadi kekonvergenan. Jika s

menyatakan indeks urutan kunjungan, node asal dinyatakan sebagai tabuk (s) dan node

-node lainnya dinyatakan sebagai { N- tabuk }, maka Persamaan 1 digunakan untuk menentukan node tujuan digunakan persamaan probabilitas node untuk dikunjungi sebagai berikut: Indeks k adalah nomor dari semut.

Langkah 4:

1 Perhitungan panjang rute setiap semut. Perhitungan panjang rute tertutup (length closed tour) atau setiap semut dilakukan setelah satu siklus diselesaikan oleh semua semut. Perhitungan dilakukan berdasarkan masing-masing dengan Persamaan 2

Setelah setiap semut dihitung, maka didapat harga minimal panjang rute setiap siklus atau n .

Langkah 5

1 Perhitungan perubahan harga intensitas feromon semut antarkota.

Koloni semut akan meninggalkan jejak-jejak kaki pada lintasan antarkota yang dilaluinya. Adanya penguapan dan perbedaan jumlah semut yang lewat, menyebabkan kemungkinan terjadinya perubahan harga intensitas jejak kaki semut antar-node.

Persamaan 3 untuk penguapan feromon adalah:

ij = ( 1 -  ) ij (3)

Persamaan 4 digunakan untuk menghitung perubahan feromon karena banyaknya semut yang melewati suatu edge adalah:

{ e e bu

nny (4)

dengan adalah perubahan harga intensitas feromon semut antar-node setiap semut yang dihitung. adalah panjang rute tertutup dari semut k.

(14)

4

jejak kaki semut antar kota untuk siklus selanjutnya dihitung dengan Persamaan 5:

ij ij(lama) +  ij (5)

Langkah 6

Pengosongan tabulis, dan ulangi langkah 2 jika diperlukan. Tabulis perlu dikosongkan untuk diisi lagi dengan urutan kota yang baru pada siklus selanjutnya, jika jumlah siklus maksimum belum tercapai atau belum terjadi konvergensi. Algoritma diulang lagi dari langkah 2 dengan harga parameter intensitas jejak kaki semut antar node yang sudah diperbaharui.

Alur dari Algoritma Ant Colony diatas dapat dilihat pada Lampiran 1.

METODE PENELITIAN

Penelitian ini akan dilakukan dalam beberapa tahapan. Gambar 3 menunjukan metode yang digunakan dalam penelitian ini.

Mulai

Gambar 3 Metode penelitian.

Pendefinisian Masalah

Tahap ini menentukan permasalahan yang dapat dipecahkan melalui penelitian ini. Masalah yang diambil untuk penelitian ini

adalah penentuan rute optimum dalam supply chain network menggunakan Algoritma Ant Colony.

Studi Pustaka

Tahap studi pustaka, merupakan tahapan dimana pengumpulan informasi dan literatur yang berkaitan dengan penelitian terkait. Literatur yang didapat berupa jurnal, buku, dan artikel yang berkaitan dengan Algoritma

Ant Colony dalam pencarian rute optimum. Pembentukan Data

Penelitian kali ini menggunakan data peta jalan Kota dan beberapa persimpangan di Kabupaten Bogor Barat. Penggunaan data tersebut dalam penelitian ini dengan mengubahnya dalam bentuk graf. Komponen dalam graf berupa node, yang merepresentasikan persimpangan jalan atau tempat, dan edge yang merepresentasikan ruas jalan yang menghubungkan dua atau lebih persimpangan. Setelah graf terbentuk, data yang dibutuhkan selanjutnya adalah data jarak dan waktu antar-node. Semua data yang digunakan dalam penelitian ini didapatkan dari penelitian Marwantoni (2009), dengan beberapa tambahan data node, yaitu tempat jual beli (pasar dan supermarket).

Sistem ini akan merepresentasikan graf yang telah dibentuk menggunakan Google Maps, sehingga membutuhkan data tambahan lainnya berupa latitude dan longitude dari setiap node, dan menambahkan encoded line

dan level. Data latitude dan longitude

diperoleh secara manual dengan bantuan

website http://itouchmap.com/latlong.html, sedangkan data encode line dan level didapatkan dengan bantuan website https://developers.google.com/maps/document ation/utilities/polylineutility.

Pengembangan Sistem

Tahap pengembangan sistem mengikuti alur dari Algoritma Ant Colony, yaitu initialisasi parameter, menentukan node

selanjutnya yang akan dituju dengan menggunakan probabilitas, menghitung jarak tempuh, dan memperbarui feromon.

1 Initialisasi parameter.

Parameter yang diinisialisasi adalah

(15)

2 Menentukan node selanjutnya yang akan dituju.

Pemilihan node selanjutnya yang dilakukan oleh semut berdasarkan bilangan random (0,1) kemudian dibandingkan dengan nilai probabilitas dari edge yang menghubungkan current node dengan node

yang akan dituju. Semut akan memilih edge

dengan nilai probabilitas yang lebih besar dibandingkan dengan bilangan random. Semut akan berhenti melakukan perjalanan jika telah sampai pada node tujuan.

3 Menghitung jarak tempuh.

Algoritma Ant Colony menggunakan

agents semut buatan yang memiliki memori untuk menyimpan node-node yang pernah dilaluinya, yang disebut dengan tabulis. Jarak akan dihitung jika semut telah menyelesaikan tur dari asal sampai ke tujuan. Jarak ini disebut dengan , untuk menghitung menggunakan Persamaan 2. Jika satu siklus telah diselesaikan oleh setiap semut, maka didapatkan n , merupakan rute minimum dari setiap siklus. Rute yang paling pendek dari setiap siklus merupakan solusi yang akan diberikan kepada user.

4 Memperbarui feromon.

Proses ini dilakukan setiap satu siklus selesai dilakukan oleh semua semut. Memperbarui feromon dibagi menjadi dua proses, evaporasi dan deposit. Evaporasi merupakan penguapan feromon yang disebabkan oleh jarak yang ditempuh untuk melalui satu rute terlalu jauh sehingga feromon yang ditinggalkan intensitasnya berkurang. Sedangkan deposit adalah penambahan intensitas feromon pada suatu rute. Semakin pendek jarak tempuh suatu rute, maka semut akan semakin sering melewati rute tersebut, sehingga penambahan feromon pada rute tersebut akan lebih besar.

Penentuan Nilai Parameter

Penentuan nilai parameter dalam dilakukan dengan mengubah nilai parameter pada Algoritma Ant Colony yang digunakan,

Implementasi dari sistem ini menggunakan bahasa pemrograman PHP dan DBMS MySQL. Spesifikasi perangkat keras dan perangkat lunak komputer yang digunakan dalam penelitian ini sebagai berikut:

 Perangkat keras: Processor Intel Core 2 Duo P7350, DDRAM 2GB, Harddisk 320 GB.

 Perangkat lunak: Windows 7 Ultimate, XAMPP 1.7.7, PHP 5.3.8, Notepad++

Pengujian dan Analisis Sistem

Proses pengujian sistem terhadap rute distribuasi optimum yang dihasilkan oleh sistem. Input yang digunakan menggambil 5 buah sampel secara acak, yaitu 5 buah node

asal dan 5 buah node tujuan. Setiap input diulang sebanyak 10 kali. Perhitungan akurasi untuk setiap sampel dengan cara:

ur ∑ bern ben r y n u

HASIL DAN PEMBAHASAN

Pendefinisian Masalah

Penentuan rute optimum dalam Supply Chain Network dapat didapat dari penggunaan Algoritma Ant Colony, yang terintegrasi dalam Sistem Informasi Rute Optimum Kota Bogor dan Kabupaten Bogor wilayah Barat.

Pembentukan Data

Pembentukan node dan edge dapat dilihat pada Gambar 4. Dari Gambar 4, node 1 merupakan titik persimpangan dua jalan, yaitu Jalan Mawar dan Jalan Doktor Semeru, sedangkan node 2 merupakan titik persimpangan Jalan Doktor Semeru dan Jalan Mawar. Edge merupakan penghubung

(16)

6

Untuk node pasar atau supermarket

dibentuk dengan meletakkan titik pasar atau

supermarket pada titik persimpangan terdekat. Setelah mendapatkan data node dan edge, data tambahan lainnya adalah latitude dan

longitude untuk setiap node, dan encoded line

dan levelnya untuk setiap edge. Contoh data

Keterangan edge = Jalan Pangrango

Node awal = 3

Data node selengkapnya dapat dilihat pada Lampiran 2. Sedangkan data edge dapat dilihat pada Lampiran 3.

Pengembangan Sistem

Pengembangan sistem dilakukan sesuai dengan alur dari algoritma Ant Colony, kemudian dilanjutkan dengan pengintegrasian hasil sistem Algoritma Ant Colony pada Google Maps. Berdasarkan pada alur algoritma Ant Colony, pengembangan sistem dibagi menjadi 3 fungsi, yaitu:

 Fungsi Mencari Probabilitas

Fungsi cariProbability() ini dibuat untuk mencari peluang setiap node yang dipilih oleh semut. Fungsi ini mengimplementasikan Persamaan 1 dalam menghitung peluangnya. Hasil dari perhitungan peluang di simpan sebagai informasi tambahan pada edge yang menghubungkan antar-node.

 Fungsi Mencari Rute

Fungsi cariRute() ini memiliki subfungsi yang bertujuan untuk mencari node

-node selanjutnya yang dipilih oleh semut dalam menentukan rute terpendek, yaitu fungsi cariNextNode(), hasil dari subfungsi ini digunakan pada fungsi cariRute().

Tujuan dari pembuatan fungsi cariRute()

adalah menyimpan node yang dihasilkan dari subfungsi cariNextNode() ke dalam tabulis. Node-node yang berada dalam tabulis inilah yang menjadi rute dari perjalanan semut, dan sekaligus menyimpan jarak tempuh dari rute yang dihasilkan. Selanjutnya fungsi cariRute()mengecek apakah rute yang dihasilkan sampai ke tujuan atau tidak.

 Fungsi Perubahan Feromon

Fungsi UpdatePheromon() ini dibuat untuk melakukan update feromon yang terdiri dari evaporasi dan deposit. Perhitungan dari fungsi ini mengimplementasikan Persamaan 3 untuk evaporasi dan Persamaan 4 dan 5 untuk deposit feromon. Update feromon dilakukan jika setiap satu siklus selesai dilakukan.

Setelah semua fungsi terbentuk, dilakukan pemanggilan fungsi berdasarkan pada alur algoritma, sehingga menghasilkan sebuah rute dengan jarak tempuh yang optimum. Alur dari pemanggilan fungsi dapat dilihat pada Lampiran 4. Rute optimum dari hasil sistem Algeritma Ant Colony ini disimpan dalam sebuah array bernama ruteMin. Array inilah yang diimplementasikan pada Google Maps untuk divisualisasikan. Tampilan untuk halaman awal dari sistem ini dapat dilihat pada Gambar 5.

Penentuan Nilai Parameter

Proses penentuan nilai parameter dilakukan membandingkan rata-rata solusi jarak yang dihasilkan oleh sistem. Pengolahan dilakukan pada komputer dengan spesifikasi:

Processor AMD Phemon II X2 550

 DDRAM 4GB

Harddisk 250 GB

 Sistem Operasi Windows 7 Professional

Proses ini bertujuan menentukan nilai parameter-parameter yang paling optimal,

(17)

yang terdiri atas pengujian parameter α dengan variasi nilai 0, 0.5, 1, 2, dan 5. Parameter dengan variasi nilai 0, 0.5, 1, 2, dan 5. Parameter dengan variasi nilai 0.000005, 0.5, 5. Parameter dengan variasi nilai 0.1, 0.5, 0.9. Parameter dengan variasi nilai 1, 2, 5, 10, 25, 50, 100, dan parameter dengan nilai variasi 5, 10, 100, 500 (Doringo dan Stutzle 2004). Setiap nilai parameter diuji sebanyak 10 kali perulangan.

Dalam menentukan parameter optimal , nilai parameter Algoritma Ant Colony yang terdiri atas β dan nilainya tetap, secara berurut yaitu 0.5, 0.5, 0.1, 5, dan 10. Hasil Pengujian dapat dilihat pada Lampiran 5. Parameter yang optimal didapatkan dengan memilih nilai yang menghasilkan rata-rata solusi jarak yang paling kecil, karena semakin kecil rata-rata solusi jarak, menujukkan nilai tersebut sering menghasilkan solusi jarak yang minimum. Rata-rata solusi jarak yang dihasilkan oleh setiap parameter dapat dilihat pada Tabel 2.

Tabel 2 Nilai parameter dengan rata-rata solusi jarak

Nilai Rata-rata solusi jarak (meter) hubungan nilai parameter dengan rata-rata solusi jarak.

Gambar 6 Hubungan parameter dengan

rata-rata solusi jarak.

Dari Gambar 6 dapat dilihat nilai parameter = 1 memiliki rata-rata solusi jarak paling kecil. Dengan demikian, saat = 1 cenderung menghasilkan solusi yang mendekati optimum.

Nilai parameter yang diuji adalah 0. 0.5, 1, 2, dan 5. Sedangkan untuk nilai parameter yang lainnya seperti α dan dianggap tetap, secara berurutan yaitu 0.5, 0.5, 0.1, 5, dan 10. Sama seperti halnya pengujian , setiap nilai dalam parameter diulang sebanyak 10 kali. Hasil pengujian dapat dilihat pada Lampiran 6. Nilai parameter dan rata-rata hasil uji masing-masing nilai dapat dilihat pada Tabel 3.

Tabel 3 Nilai parameter dengan rata-rata solusi jarak

Nilai Rata-rata solusi jarak (meter)

(18)

8

Tabel 4 Nilai parameter dengan rata-rata solusi jarak

Nilai Rata-rata solusi jarak (meter) Dari Gambar 8 dapat dilihat bahwa dari ketiga nilai yang diujikan, = 0.5 memiliki rata-rata solusi jarak yang paling kecil dibandingkan nilai yang lainnya.

Gambar 8 Hubungan parameter dengan rata-rata solusi jarak.

Nilai parameter yang diuji adalah 0.1, 0.5, dan 0.9. sedangkan nilai parameter yang

α β dan dianggap tetap, secara terurut nilainya adalah 0.5, 0.5, 0.5, 5, dan 10. Hasil pengujian parameter dapat dilihat pada Lampiran 8. Nilai parameter dan rata-rata hasil uji dalat dilihat pada Tabel 5.

Tabel 5 Nilai parameter dengan rata-rata solusi jarak

Nilai Rata-rata solusi jarak (meter)

0.1 4058.8

0.5 4037.1

0.9 3947.2

Pada Gambar 9 menunjukkan hubungan parameter dengan rata-rata solusi jarak. Pada nilai = 0.9 memiliki rata-rata paling rendah, sebesar 3947.2 meter, karena pada saat pengujian nilai = 0.9 sering menghasilkan solusi jarak yang optimum dan mendekati optimum. Sehingga nilai untuk parameter yang optimal adalah saat = 0.9.

Selanjutnya pengujian terhadap parameter m dan Nmax. Parameter ini berpengaruh terhadap lamanya waktu pemrosesan dan kekonsistenan dalam mendapatkan solusi optimal. Nilai parameter m yang diujikan adalah 1, 2, 5, 10, 25, 50, 100, dengan nilai

parameter yang lain dianggap tetap, yaitu = 0.5, = 0.5, = 0.5, = 0.1, dan = 10.

Gambar 9 Hubungan parameter dengan rata-rata solusi jarak.

Hasil pengujian dapat dilihat pada Lampiran 9. Pada Tabel 6 menunjukkan nilai parameter mdan rata-rata solusi jarak.

Tabel 6 Nilai parameter m dengan rata-rata solusi jarak

Nilai m Rata-rata solusi jarak (meter)

Pada Gambar 10 menunjukkan hubungan parameter m dengan rata-rata solusi jarak. Semakin besar jumlah semut, makan semakin sering mendapatkan nilai solusi yang optimum. Pada Gambar 10 juga menunjukkan hanya nilai m = 10, m = 25, m = 100, dan m = 500 yang memiliki selisih yang kecil antarrata-rata solusi jarak. Sehingga perlu melihat waktu eksekusi dari keempat nilai parameter mtersebut untuk menentukan nilai parameter mana yang paling optimal.

(19)

Waktu eksekusi dari keempat nilai parameter m terdapat pada Gambar 11. Dari Gambar 11 didapatkan nilai parameter myang paling optimal untuk sistem ini adalah saat m = 10.

Gambar 11 Hubungan parameter m = 10, m= 25, m= 50, dan m= 100 dengan waktu eksekusi.

Parameter terakhir yang diuji adalah

Nmax. Nilai parameter yang diujikan adalah rata-rata solusi jumlah dapat dilihat pada Gambar 12. belum bisa digunakan untuk menentukan parameter optimum dan . Penentuan parameter optimum menggunakan waktu eksekusi program. Gambar 13 menunjukkan hubungan antara waktu eksekusi program dengan nilai parameter

. Semakin besar nilai parameter maka membutuhkan waktu eksekusi yang lebih lama.

Hasil pengujian menujukkan bahwa parameter yang optimal adalah 5, karena hanya membutuhkan waktu 436 milidetik sistem ini dapat menghasilkan rute optimum.

Gambar 13 Hubungan antara waktu eksekusi program dengan nilai parameter

.

Hasil pengujian parameter α β didapat nilai optimum sebagai berikut: 1,

, 5, dan 0.9. Sedangkan

untuk parameter didapat nilai 10 semut, karena dengan 10 semut menghasilkan nilai optimum yang konsisten. Parameter didapat nilai 5 siklus, Karena dengan 5 siklus sudah menghasilkan nilai optimum yang konsisten dan waktu eksekusi program yang cukup cepat.

Pengujian dan Analisis Sistem

(20)

10

Tabel 8 Akurasi hasil pengujian rute optimum

Sampel Akurasi

Pada Tabel 8 dapat dilihat ada satu sampel yang berakurasi rendah, yaitu Sampel 4 dengan akurasi 60%. Hal ini disebabkan oleh saat penentuan parameter m lebih menitikberatkan pada aspek kecepatan pemrosesan algoritma daripada aspek kekonsistenan dalam menghasilkan solusi, yaitu dengan memilih nilai parameter myang memiliki waktu pemrosesan paling kecil, namun mendekati stabil dalam menghasilkan solusi rute optimum. Sehingga sistem masih menghasilkan dua solusi jarak, yaitu 2982 meter dan 3001 meter, dengan selisih jarak sebesar 19 meter. Jarak 19 meter ini bila dilihat dalam dunia nyata tidak begitu signifikan.

Namun, secara keseluruhan sistem ini dapat menentukan rute dengan jarak terpendek dengan akurasi 92%.

SIMPULAN DAN SARAN

Simpulan

Berdasarkan hasil penelitian didapatkan beberapa kesimpulan, yaitu:

 Perancangan supply chain network dalam menentukan rute optimum dapat dilakukan menggunakan Algoritma Ant Colony dan dapat direpresentasikan dalam Google Maps.

 Nilai parameter yang digunakan pada penelitian ini untuk mendapatkan jarak yang minimum adalah 1, , 5, dan 0.9, m= 10, dan Nmax = 5.

 Pencarian rute optimum menggunakan Algoritma Ant Colony pada sistem ini memiliki akurasi sebesar 92%

Saran

Beberapa saran yang dapat dilakukan untuk penelitian selanjutnya antara lain:

 Mengembangkan sistem ini dengan mengakomodasikan masalah kepadatan lalu lintas dengan membedakan antara waktu sibuk dan waktu tidak sibuk.

 Mengembangkan sistem ini agar memiliki waktu komputasi yang lebih cepat dan akurasi solusi yang lebih baik menggunakan algoritma Multi Agents Ant Colony Optimization.

DAFTAR PUSTAKA

Ayers B. 2001. Handbook of Supply Chain Management. USA: St. Lucie Press. Chartrand G, Oellermann OR. 1993. Applied

and Algoritmic Graph Theory. New Jersey: McGraw-Hill.

Dorigo M, Stutzle T. 2004. Ant Colony Optimization. Massachusetts Institute of Technology: USA.

Khan Md M R. 2004. Ant System to Find the Shortest Path. Di dalam : 3rd International Conference on Electrical & Computer Engineering ICECE; Dhaka, 28-30 Desember 2004. Bangladesh.

Marwantoni D. 2009. Penentuan Rute Optimum Jalur Distribusi dalam Supply Chain Network Menggunakan Algoritme Genetika [skripsi]. Bogor: Institut Pertanian Bogor.

(21)
(22)

12

Lampiran 1 Diagram Alur Algoritma Ant Colony

mulai

Inisialisasi parameter

i < jumlahSemut

Menetukan titik selanjutnya dengan persamaan 1

Mengubah pheromon dengan persamaan 3, 4, dan 5

selesai Ya

Tidak i = 0

Menghitung jarak tempuh terbaik

Mencatat jarak tempuh terbaik

(23)

Lampiran 2 Data node

Id

Node Nama Node Keterangan Node Latitude Longitude Tipe

1 Node 1 Jalan Padjajaran - Jalan Otto Iskandardinata -6.601411 106.805222 1 2 Node 2 Jalan Padjajaran - Jalan Jalak Harupat -6.595422 106.804192 1 7 Node 7 Jalan Otto Iskandardinata - Jalan Bangka -6.601689 106.804359 1 8 Node 8 Jalan Otto Iskandardinata - Jalan Roda -6.602776 106.799835 1 16 Node 16 Jalan Paledang - Jalan Kapten Muslihat -6.595891 106.789665 1 17 Node 17 Jalan Veteran - Jalan Merdeka - Jalan Kapten

Muslihat -6.595635 106.788437 1

18 Node 18 Plaza Jembatan Merah -6.59555 106.787605 3 19 Node 19 Jalan Perintis Kemerdekaan - Jalan Dr. Semeru -6.590967 106.786446 1 20 Node 20 Jalan Merdeka - Jalan Dr. Semeru -6.59231 106.787735 1 21 Node 21 Jalan Kapten Muslihat - Jalan Raja Permas -6.596104 106.79084 1

22 Node 22 Pasar Anyar -6.590796 106.79174 2

23 Node 23 Jalan M.A. Salamun - Jalan Merdeka -6.59044 106.787827 1 24 Node 24 Jalan Ahmad Yani - Jalan Padjajaran -6.568718 106.809113 1 25 Node 25 Jalan Mandalawangi - Jalan Pangrango -6.590967 106.802963 1 26 Node 26 Jalan Pangrango I - Jalan Jarak Harupat -6.59361 106.802856 1 27 Node 27 Jalan Ir. H. Juanda - Jalan Jalak Harupat - Jalan

Sudirman -6.593141 106.797112 1

28 Node 28 Jalan Pengadilan - Jalan Sudirman -6.591969 106.797112 1 29 Node 29 Jalan Ahmad Yani - Jalan Sudirman - Jalan RE

Martadinata -6.581146 106.79673 1

(24)

14

(25)
(26)

16

(27)
(28)

18

Pencarian dengan Algoritma Ant

Colony

Mulai

Inisialisasi parameter

Menempatkan semua semut pada node awal

Memasukkan node awal pada tabulist

masing-masing semut

Pencarian rute semut

jarakMin = 10000000000 Rute=0

Rute!=0

Ya

Ya UpdatePheromon

Menghitung probabilitas

Selesai

i = 0

i < Nmax

j = 0

j < jumlahSemut

Ya Tidak

Tidak

jarakMin=semut[j].jarak rute=semut[j].tabulist

Tidak

Rute[jarak]<JarakMin

Tidak

Ya

(29)

a. Fungsi cariRute()

Pencarian Rute

Semut Mulai

Inisialisasi parameter (asal, tujuan, graf)

Tabulist = 0 totalJarak = 0

Stop = 0

Pencarian Node Selanjutnya

nextNode==0 Stop = 1

Ya

Tabulist= nextNode[node] totalJarak+=nextNode[jarak]

asal=nextNode tidak

end(tabulist)== tujuan

ya

Rute=0 tidak

Return

tujuan != end(tabulist) && stop==0

Ya Tidak

(30)

20

Lampiran 5 Hasil pengujian Nilai

(31)

Lanjutan

4 Uji nilai = 2

Ulangan Solusi

(meter)

Runtime

(milidetik)

1 2 0.5 0.5 0.1 5 10 3948 852

2 2 0.5 0.5 0.1 5 10 3948 865

3 2 0.5 0.5 0.1 5 10 3909 843

4 2 0.5 0.5 0.1 5 10 3909 835

5 2 0.5 0.5 0.1 5 10 3909 838

6 2 0.5 0.5 0.1 5 10 4276 877

7 2 0.5 0.5 0.1 5 10 4141 881

8 2 0.5 0.5 0.1 5 10 3948 870

9 2 0.5 0.5 0.1 5 10 3948 865

10 2 0.5 0.5 0.1 5 10 3948 844

Rata-rata 3988.4 857

5 Uji nilai = 5

Ulangan Solusi

(meter)

Runtime

(milidetik)

1 5 0.5 0.5 0.1 5 10 3909 855

2 5 0.5 0.5 0.1 5 10 3948 871

3 5 0.5 0.5 0.1 5 10 3948 880

4 5 0.5 0.5 0.1 5 10 4276 878

5 5 0.5 0.5 0.1 5 10 4141 888

6 5 0.5 0.5 0.1 5 10 4276 882

7 5 0.5 0.5 0.1 5 10 3948 861

8 5 0.5 0.5 0.1 5 10 3948 892

9 5 0.5 0.5 0.1 5 10 3948 896

10 5 0.5 0.5 0.1 5 10 3948 900

(32)

22

Lampiran 6 Hasil pengujian Nilai

(33)

Lanjutan

4 Uji nilai = 2

Ulangan Solusi

(meter)

Runtime

(milidetik)

1 2 0.5 0.5 0.1 5 10 4628 800

2 2 0.5 0.5 0.1 5 10 4628 773

3 2 0.5 0.5 0.1 5 10 4628 768

4 2 0.5 0.5 0.1 5 10 4493 776

5 2 0.5 0.5 0.1 5 10 4628 819

6 2 0.5 0.5 0.1 5 10 4628 762

7 2 0.5 0.5 0.1 5 10 4628 762

8 2 0.5 0.5 0.1 5 10 4628 776

9 2 0.5 0.5 0.1 5 10 4628 771

10 2 0.5 0.5 0.1 5 10 4278 796

Rata-rata 4579.5 780.3

5 Uji nilai = 5

Ulangan Solusi

(meter)

Runtime

(milidetik)

1 5 0.5 0.5 0.1 5 10 5088 770

2 5 0.5 0.5 0.1 5 10 4628 720

3 5 0.5 0.5 0.1 5 10 5088 808

4 5 0.5 0.5 0.1 5 10 4628 710

5 5 0.5 0.5 0.1 5 10 5963 726

6 5 0.5 0.5 0.1 5 10 5963 708

7 5 0.5 0.5 0.1 5 10 5088 728

8 5 0.5 0.5 0.1 5 10 5963 706

9 5 0.5 0.5 0.1 5 10 5963 793

10 5 0.5 0.5 0.1 5 10 5088 675

(34)

24

Lampiran 7 Hasil pengujian Nilai

(35)
(36)
(37)
(38)

28

Lanjutan

7 Uji m = 100 Ulangan Runtime

(milidetik)

Jarak

(meter) Rute Optimum

(39)
(40)

30

Lanjutan

4 Uji jumlah siklus = 500

Ulangan Runtime (milidetik)

Jarak

(meter) Rute Optimum

(41)

Lampiran 11 Pengujian rute optimum 10 2394 1 7-8-11-13-14-35-41-31-37-22 929 Benar

(42)

32

Lanjutan

Sampel 4 node awal= 19, node akhir =10 Ulangan Jarak

(meter) Node yang dilalui

Runtime

(milidetik) B/S 1 3001 19-38-39-17-16-13-11-8-7-10 1.11 Salah 2 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.16 Benar 3 3001 19-38-39-17-16-13-11-8-7-10 1.04 Salah 4 3001 19-38-39-17-16-13-11-8-7-10 1.01 Salah 5 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.2 Benar 6 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.02 Benar 7 3001 19-38-39-17-16-13-11-8-7-10 1.23 Salah 8 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.07 Benar 9 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.21 Benar 10 2982 19-38-39-17-16-21-35-14-13-11-8-7-10 1.02 Benar

Rata-rata 1.107

Sampel 5 Node awal = 37 , node akhir = 11 Ulangan Jarak

(meter) Node yang dilalui

Runtime

(milidetik) B/S

1 1283 37-31-35-14-13-11 755 Benar

2 1283 37-31-35-14-13-11 757 Benar

3 1283 37-31-35-14-13-11 813 Benar

4 1283 37-31-35-14-13-11 813 Benar

5 1283 37-31-35-14-13-11 752 Benar

6 1283 37-31-35-14-13-11 777 Benar

7 1283 37-31-35-14-13-11 783 Benar

8 1283 37-31-35-14-13-11 802 Benar

9 1283 37-31-35-14-13-11 753 Benar

10 1283 37-31-35-14-13-11 773 Benar

(43)

Gambar

Gambar 1  Graf berarah.
Gambar 3  Metode penelitian.
Gambar 4  Pembentukan  node dan edge.
Gambar 5  Tampilan awal sistem pencarian rute   optimum.
+5

Referensi

Dokumen terkait