PENCARIAN RUTE DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT. (Studi Kasus PT.Circleka Indonesia Utama Region Yogyakarta)

Ukuran: px
Mulai penontonan dengan halaman:

Download "PENCARIAN RUTE DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT. (Studi Kasus PT.Circleka Indonesia Utama Region Yogyakarta)"

Transkripsi

1 PENCARIAN RUTE DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT (Studi Kasus PT.Circleka Indonesia Utama Region Yogyakarta) Halaman Utama SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika Disusun oleh R ALEXANDER PURBO WIDYANTO PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015 i

2 SEARCH DISTRIBUTION ROUTE USING ANT ALGORITHM (Case Study PT.Circleka Indonesia Utama Region Yogyakarta) Halaman Utama THESIS Presented as Partial Fullfillment of the Requirments To Obtain Sarjana Komputer Degree In Department of Informatics Engineering By R. ALEXANDER PURBO WIDYANTO INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2017 ii

3 HALAMAN PERSETUJUAN iii

4 HALAMAN PERSEMBAHAN SKRIPSI iv

5 PERNYATAAN KEASLIAN KARYA v

6 LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI vi

7 INTISARI Distribusi adalah kegiatan penyaluran barang dan jasa yang dibuat dari produsen ke konsumen agar tersebar luas. Kegiatan distribusi merupakan penghubung antara kegiatan produksi dan konsumsi. Begitu pula yang dilakukan oleh PT.Circleka Indonesia Utama, perusahaan ini bertanggung jawab untuk mendistribusikan barang ke toko toko Circle K yang ada. Hal tersebut bertujuan agar para konsumen lebih mudah untuk menjangkau produk produk yang dijual oleh produsen. Dalam prosesnya, PT.Circleka Indonesia Utama memerlukan kurir yang mengantarkan barang dari gudang ke toko toko yang ada. Dalam tugas tersebut seorang kurir akan mencari rute pendistribusian secara manual, tentu saja hal tersebut kurang efektif. Pada tugas akhir ini akan dibuat sistem yang dapat membantu kurir dalam memilih rute pendistribusian barang. Dimana sistem tersebut akan menerapkan algoritma semut yang akan membantu pencarian rute. Algoritma semut merupakan salah satu metode yang dapat membantu memecahkan masalah pencarian rute. Hasil dari sistem ini tentu saja sistem dapat menampilkan rute terpendek yang dilalui oleh kurir untuk mengantarkan barang barang ke toko cricle k. Dimana hasil tersebut diharapkan dapat membantu kerja kurir dan juga PT.Circleka Indonesia Utama region Yogyakarta menjadi lebih efektif. Kata kunci: Distribusi, Algoritma Semut, Rute vii

8 ABSTRAK Distribution is activities that link of goods and services that are made from producers to consumers. Distribution activities is a link between production and consumption. Similarly, conducted by PT.Circleka Utama Indonesia, the company responsible for distributing the goods to the store - the existing Circle K stores. It is intended that consumers are more likely to reach a product - a product that is sold by the manufacturer. In the process, PT.Circleka Indonesia Utama require a courier delivering goods from the warehouse to the store - the existing store. In the task will be looking for a courier service distribution manually, of course it is less effective. In this final project will created a system that can help in choosing the courier service distribution of goods. Where the system would apply ant algorithms that will help the search route. Ant is one method that can help solve the problem of route search. The results of this system of course the system can display the shortest route traversed by courier to deliver the goods to store cricle k. Where the results are expected to help work courier and also PT.Circleka Utama Indonesia Yogyakarta region becomes more effective. Keywords: Distribution, Ant Algorithm, Routes viii

9 Kata Pengantar Puji dan Syukur kepada Tuhan Yang Maha Esa yang telah senantiasa memberikan berkat dan rahmat yang tak berkesudahan serta kesempatan yang sangat berharga sehingga penulis dapat menyelesaikan skripsi dengan judul Pencarian Rute Distibusi Barang Menggunakan Algoritma Semut (Studi Kasus PT.Circleka Indonesia Utama Region Yogyakarta). Dalam kesempatan ini, penulis ingin mengucapkan terima kasih yang sebesar besarnya kepada seluruh pihak yang telah memberi dukungan dan semangat sehingga skripsi ini dapat selesai: 1. Bapak Sudi Mungkasi, S.Si.,M.Math.Sc.,Ph.D selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta. 2. Ibu Dr. Anastasia Rita Widiarti, S.Si.,M.Kom selaku Kaprodi Teknik Informatika Universitas Sanata Dharma Yogyakarta dan juga Selaku Panitia Penguji yang telah memberikan kritik dan saran dalam penulisan tugas akhir. 3. Bapak Albertus Agung Hadhiatma, S.T.,M.T selaku Dosen Pembimbing, yang telah sabar dalam memberikan bimbingan dan segala masukan sehingga penulis dapat menyelesaikan tugas akhir ini. 4. Bapak JB. Budi Darmawan S.T., M.Sc. selaku panitia penguji yang telah memberikan kritik dan saran dalam penulisan tugas akhir. 5. Seluruh dosen dan staff karyawan Program Studi Teknik Informatika Universitas Sanata Dharma yang telah memberikan bekal ilmu, bimbingan serta pengalaman dan fasilitas selama saya menempuh studi. ix

10 x

11 Daftar Isi Halaman Utama... i Halaman Utama... ii HALAMAN PERSETUJUAN... iii HALAMAN PERSEMBAHAN SKRIPSI... iv PERNYATAAN KEASLIAN KARYA... v LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI... vi INTISARI... vii ABSTRAK... viii Kata Pengantar... ix Daftar Isi... xi Daftar Gambar... xiv Daftar Tabel... xvi BAB I Latar Belakang Rumusan Masalah Tujuan Penelitian Batasan Masalah Metodologi Penelitian Sistematika penulisan... 4 Bab II Distribusi Graph Traveling Salesman Problem Aplikasi TSP Algoritma Semut Tentang Algorima Semut Konsep Dasar Cara Kerja Aloritma Semut xi

12 2.4.4 Contoh Penerapan Algoritma Semut BAB III Analisis Sistem Analisis Masalah Aturan Pencarian Rute Sumber Data Permodelan Algoritma Semut untuk Pencarian Rute Inisialisasi Parameter Mencari Urutan Node Update Solusi Perancangan Sistem Diagram Use case Ringkasan Use Case Narasi Use Case Diagram Aktivitas Perancangan Basisdata ER Diagram Model Fisikal Design Interface BAB IV Implementasi Proses Implementasi Algoritma Semut Implementasi Tampilan Antar Muka Implementasi Antar Muka Awal (Home) Implementasi Antar Muka Cari Rute Implementasi Antar Muka Lihat Data Implementasi Antar Muka Tambah Data Implementasi Antar Muka Perbarui Data Implementasi Antar Muka Hapus Data BAB V Analisa Hasil Pengujian xii

13 5.1.1 Analisa Hasil untuk Pencarian Rute dengan Tujuan 3 Toko Analisa Hasil untuk Pencarian Rute dengan Tujuan 4 Toko Analisa Hasil untuk Pencarian Rute dengan Tujuan 5 Toko Analisis Perbandingan Jumlah Semut Perbandingan Jumlah Semut Kesimpulan Perbandingan BAB VI KESIMPULAN SARAN DAFTAR PUSTAKA LAMPIRAN xiii

14 Daftar Gambar Gambar 2. 1 Graph antar Kota... 7 Gambar 2. 2 Rumus Intensitas Jejak Gambar 2. 3 Rumus Penguapan Jejak Gambar 2. 4 Rumus mencari jejak yang ditinggalkan Gambar 2. 5 Rumus Probabilitas Gambar 2. 6 Graph Gambar 3. 1 Peta Persebaran Toko Circle K di Yogyakarta Gambar 3. 2 Pencarian rute dengan google maps Gambar 3. 3 Diagram Usecase Gambar 3. 4 Diagram Aktifitas Cari Rute Gambar 3. 5 ER Diagram Gambar 3. 6 Tampilan Home Gambar 3. 7 Tampilan Cari Rute Gambar 3. 8 Tampilan Lihat Data Gambar 3. 9 Tampilan Tambahan Data Gambar Tampilan Tambahan Data Gambar Tampilan Hapus Data Gambar 4. 1 Tampilan Home Gambar 4. 2 Antar Muka Cari Data Gambar 4. 3 Pemberitahuan Gambar 4. 4 Pemberitahuan(2) Gambar 4. 5 Antar Muka Lihat Data Gambar 4. 6 antar muka tambah data Gambar 4. 7 Pemberitahuan berhasil menambah data toko Gambar 4. 8 Pemberitauan rute berhasil ditambah Gambar 4. 9 Antar Muka Perbarui Data Gambar Pemberitauan Data berhasil diperbarui Gambar Pemberitauan rute berhasil diperbarui Gambar Antar muka hapus data Gambar Persetujuan menghapus data Gambar Pemberitahuan data berhasil dihapus Gambar 5. 1 Hasil Pencarian Pertama oleh Sistem Gambar 5. 2 Rute yang dilalui oleh pencarian pertama Gambar 5. 3 Hasil Pencarian Kedua oleh Sistem Gambar 5. 4 Rute yang dilalui oleh pencarian kedua Gambar 5. 5 Hasil Pencarian Ketiga Oleh Sistem Gambar 5. 6 Rute yang dilalui oleh pencarian Ketiga Gambar 5. 7 Hasil Pencarian Keempat oleh Sistem Gambar 5. 8 Rute yang dilalui oleh pencarian Keempat xiv

15 Gambar 5. 9 Hasil Pencarian Kelima oleh Sistem Gambar Rute yang dilalui oleh pencarian Kelima Gambar Hasil Pencarian Rute Keenam Menggunakan Sistem Gambar Rute yang didapat dalam pencarian Keenam Gambar Hasil Pencarian Ketujuh oleh Sistem Gambar Rute yang didapat dalam pencarian Ketujuh Gambar Hasil Pencarian Kedelapan oleh Sistem Gambar Rute yang didapat dalam pencarian Kedelapan Gambar Hasil Pencarian Kesembilan oleh Sistem Gambar Rute yang didapat dalam pencarian Kesembilan Gambar Hasil Pencarian Sistem Kesepuluh Gambar Rute yang didapat pada pencarian kesepuluh Gambar Hasil Pencarian Kesebelas oleh Sistem Gambar Rute yang didapat pada pencarian Kesebelas Gambar Hasil Pencarian Keduabelas oleh Sistem Gambar Rute yang didapat pada pencarian Keduabelas Gambar Hasil Pencarian Ketigabelas Oleh Sistem Gambar Rute yang didapat pada pencarian Ketigabelas Gambar Hasil Pencarian Keempatbelas Oleh Sistem Gambar Rute yang didapat pada pencarian Keempatbelas Gambar Hasil Pencarian Kelimabelas oleh Sistem Gambar Rute yang didapat pada pencarian Kelimabelas Gambar Hasil Percobaan Pertama dengan 2 semut Gambar Hasil Percobaan Pertama dengan 3 semut Gambar Hasil Percobaan Pertama dengan 5 semut Gambar Hasil Percobaan Kedua dengan 2 semut Gambar Hasil Percobaan Kedua dengan 3 semut Gambar Hasil Percobaan Kedua dengan 5 semut Gambar Hasil Percobaan Ketiga dengan 2 semut Gambar Hasil Percobaan Ketiga dengan 3 semut Gambar Hasil Percobaan Ketiga dengan 5 semut Gambar Hasil Percobaan Keempat dengan 2 semut Gambar Hasil Percobaan Keempat dengan 3 semut Gambar Hasil Percobaan Keempat dengan 5 semut Gambar Hasil Percobaan Kelima dengan 2 semut Gambar Hasil Percobaan Kelima dengan 3 semut Gambar Hasil Percobaan Kelima dengan 5 semut Gambar Hasil Percobaan Keenam dengan 2 semut Gambar Hasil Percobaan Keenam dengan 3 semut Gambar Hasil Percobaan Keenam dengan 5 semut xv

16 Daftar Tabel Tabel 2. 1 Tabel Matrix antar titik Tabel 2. 2 Visibilitas Tabel 2. 3 Tabel intensitas jejak semut awal Tabel 2. 4 pengisian node awal Tabel 2. 5 probabilitas Tabel 2. 6 Probabilitas (2) Tabel 2. 7 Probabilitas (3) Tabel 2. 8 Tabel intensitas jejak semut untuk semut ke Tabel 3. 1 Data Toko Tabel 3. 2 Data Toko yang Digunakan Tabel 3. 3 Tabel data rute Tabel 3. 4 Inisialisasi Parameter Tabel 3. 5 Ringkasan Usecase Tabel 3. 6 Narasi Cari Rute Tabel Design Tabel toko Tabel Design Tabel Rute Tabel Design Tabel Hasil Tabel 3. 7 Narasi Cetak Hasil Tabel 3. 8 Narasi Ubah Data Tabel 3. 9 Narasi Tambah Data Tabel 5. 1 Tabel Hasil Pencarian Konvensional Pertama Tabel 5. 2 Hasil Pencarian konvensional kedua Tabel 5. 3 Hasil pencarian Konvensional Ketiga Tabel 5. 4 Hasil Pencarian konvensional Keempat Tabel 5. 5 Hasil Pencarian Konvensional Kelima Tabel 5. 6 Tabel Hasil Pencarian Rute Secara Konvensional Keenam Tabel 5. 7 Hasil Pencarian Secara Konvensional Ketujuh Tabel 5. 8 Hasil Pencarian Rute Secara Konvensional Kedelapan Tabel 5. 9 Hasil Pencarian Secara Konvensional Kesembilan Tabel Hasil Pencarian Secara Konvensional Kesepuluh Tabel Hasil Pencarian Konvensional Kesebelas Tabel Hasil pencarian Konvensional Keduabelas Tabel Tabel hasil pencarian Konvensional Ketigabelas Tabel Tabel hasil pencarian Konvensional Keempatbelas Tabel Hasil pencarian Konvensional Kelimabelas xvi

17 BAB I PENDAHULUAN 1.1 Latar Belakang PT.CIRCLELKA INDONESIA UTAMA adalah badan usaha yang membawahi toko ritel modern Circle K yang berada di Indonesia. PT CIRCLEKA INDONESIA UTAMA sendiri memiliki kantor pusat yang terletak di Jakarta Timur, lebih tepatnya berada di Jalan Jatinegara Barat No Sedangkan untuk di Yogyakarta sendiri memiliki kantor di Jl. Magelang km.7 No.09 Mlatijati, Sendangadi, Mlati, Sleman. Perusahaan ini memiliki beberapa tugas, dan salah satunya adalah mengatur pendistribusian barang dari gudang ke toko - toko circle K yang tersebar di berbagai tempat di Yogyakarta. Untuk kantor regional Yogyakarta sendiri terdapat 34 toko di yogyakarta dan 2 lainya masing masing berada di kota solo dan semarang. Pendistribusian barang pada umumnya merupakan hal yang sangat penting bagi setiap perusahaan, terlebih bagi toko seperti Circle K. Hal ini tentu saja dikarenakan Circle K merupakan sebuah convension store yang menjual berbagai produk makanan dan minuman kemasan dan keperluan sehari hari. Pendistibusian barang ke toko toko circle K tersebut di atur oleh PT.CIRCLEKA INDONESIA UTAMA melalui tiap regionalnya. Dan dalam pendistribusiannya dibutuhkan kurir untuk mengantarkan stock barang barang tersebut. Dalam sekali jalan seorang kurir biasanya akan mengantar barang barang tersebut kurang lebih ke 3 hingga 4 toko Circle K. Dan tentu saja dalam mengantar barang tersebut seorang kurir akan memiliki banyak opsi rute. Sedangkan, dalam pendistribusian barang tentu pendistribusian diharapkan bisa efisien, baik dari segi waktu maupun biaya. 1

18 2 Melihat hal tersebut, muncul sebuah gagasan untuk membuat suatu aplikasi yang dapat membantu dalam hal pendistibusian barang, khususnya dalam pencarian rute pendistribusian barang. Dimana aplikasi tersebut diharapkan dapat membantu dalam mencari jalur terpendek dalam pendistribusian barang. Sehingga dalam pendistribusian barang ke gerai gerai Circle K dapat lebih efisien dan juga membantu kurir dalam mencari rute. Permasalahan pendistribusian barang tersebut termasuk dalam sebuah Traveling Salesman Problem (TSP), dimana terdapat banyak macam cara untuk menyelsaikan masalah ini. Terdapat dua macam dalam penyelsaiannya, yaiutu dengan penghitungan secara konvensional (Manual, mencari semua kemungkinan) ataupun dengan metode heuristik (algoritma). Dalam kasus ini sistem akan menggunakan Algoritma Semut. Algoritma Semut sendiri merupakan salah satu pendekatan dalam penyelesaian masalah TSP. Algoritma semut merupakan salah satu algoritma dalam metode heuristic. Dengan demikian diharapkan permasalahan tersebut dapat diselsaikan dengan hasil yang maksimal. Dan diharapkan aplikasi yang dibuat dapat membantu PT Circelka Indonesia Utama khususnya regional Yogyakarta dalam melakukan kegiatan pendistribusian barang. 1.2 Rumusan Masalah Berdasarkan latar belakang yang telah di jabarkan pada bagian sebelumnya, maka di dapatlah rumusan permasalahan berikut: 1. Bagaimana menerapkan algoritma semut dalam sistem yang akan membantu dalam mencari jalur terpendek untuk pendistribusian barang?

19 3 1.3 Tujuan Penelitian Tujuan penelitian yang ingin dicapai melalui penulisan Tugas Akhir ini adalah sebagai berikut: 1. Mengimplementasikan algoritma semut dalam sistem yang berguna untuk mencari jalur terpendek untuk melakukan pendistribusian barang. 1.4 Batasan Masalah Batasan Masalah pada sistem ini adalah sebagai berikut: 1. Data yang digunakan hanya mencakup circle k regional yogyakarta saja. 2. Penentuan jalur terpendek dari sistem ini berdasarkan dari letak gerai Circle k yang ada. 3. Sistem ini hanya mampu menampilkan urutan urutan tempat yang akan dituju saja 4. Data Circle K yang dimasukan kedalam Sistem adalah data yang telah di Update pada bulan April Metodologi Penelitian Metode yang digunakan dalam menyelsaikan traveling salesman problem ini adalah metode System Development Life Cycle (paradigma Waterfall). Tahap dari metode ini adalah sebagai berikut: 1. Analisa kebutuhan Tahap ini akan menidentifikasi dan menganalisa kebutuhan dari sistem. Selain itu pada tahap ini juga akan dilakukan pengumpulan data yang diperlukan dalam pencarian jalur terpendek. 2. Peracangan Sistem

20 4 Pada tahap ini akan dilakukan perancangan dari sistem yang akan dibuat. Proses perancangan tersebut meliputi: Perancangan sistem, design user interface dan implementasi program. 3. Penulisan Program Pada tahap ini, akan dilakukan implementasi rancangan yang sudah dibuat kedalam bahasa pemrograman yang akan digunakan. 4. Pengujian Tahap ini merupakan tahap dimana sistem akan diujicoba untuk mengetahui tingkat keberhasilan Sistem dan juga kesalahan kesalahan yang ada. Tujuannya agar diketahui tingkat keberhasilan dari aplikasi yang dibuat. 1.6 Sistematika penulisan Secara umum, dalam menyelesaikan laporan Tugas Akhir ini, sistematika penulisan yang akan digunakan adalah sebagai berikut : BAB I : PENDAHULUAN Berisi tentang latar belakang masalah, rumusan masalah, tujuan penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan. BAB II : LANDASAN TEORI Pada bab ini, akan dibahas tentang berbagai landasan teori yang mendasari pembuatan Aplikasi pencari jalur terpendek ini BAB III : ANALISA DAN PERANCANGAN SISTEM Pada bab ini, penulis akan menjelaskan tentang analisa permasalahan yang ada dan menjelaskan tentang rancangan sistem yang akan dibuat.

21 5 BAB IV : IMPLEMENTASI SISTEM Bab ini berisi implementasi dari rancangan yang sudah dibuat pada bab sebelumnya. BAB V : PENGUJIAN SISTEM Bab ini berisi penjelasan tentang pengujian sistem yang telah dibuat. BAB VI : PENUTUP Merupakan bab yang berisi kesimpulan dari penulis, kemudian juga memberikan beberapa saran yang mungkin dapat bermanfaat untuk pengembangan aplikasi yang telah dibuat.

22 Bab II LANDASAN TEORI Bab ini berisikan landasan dari penelitian ini, Seperti tentang Distribusi, Algoritma Semut, Traveling Salesman Problem, maupun Grap. Setiap hal tesebut menjadi Landasan dari penelitian yang dilakukan. Berikut adalah uraian dari landasan landasan tersebut: 2.1 Distribusi Menurut para ahli, pengertian distribusi adalah kegiatan penyaluran barang dan jasa yang dibuat dari produsen ke konsumen agar tersebar luas. Kegiatan distribusi merupakan penghubung antara kegiatan produksi dan konsumsi. Sedangkan untuk pelaku kegiatan distribusi sendiri dinamakan distributor Jenis Jenis Distribusi: a. Distribusi Langsung: Adalah Distribusi yang dilakukan secara langsung oleh prosdusen ke konsumen yang dilakukan tanpa perantara. b. Distribusi Tak Langsung: Adalah penyaluran atau penjualan barang dari produsen kepada konsumen melalui perantara. Perantara tersebut diantaranya adalah pedagang, agen, makelar dan juga toko toko. ( 2.2 Graph Graph merupakan sebuah struktur data yang terdiri dari vertex(titik) dan edge(garis atau juga busur/arc). Dimana setiap vertex akan dihubungkan oleh edge sehingga membentuk suatu kesatuan yang disebut sebagai graf. Untuk lebih jelasnya coba perhatikan gambar graph dibawah ini yang menggambarkan sebuah kota 6

23 7 Gambar 2. 1 Graph antar Kota Gambar diatas merupakan senuah peta kota yang di gambarkan dalam bentuk graph, diman kota merupakan titik(vertex) sedangkan garis yang menghubunhkan kota adalah jalan(edge). Terdapat beberapa graph yang dapat digunakan, diantaranya adalah sebagai berikut: Graf berarah: adalah graf yang edgenya memiliki arah, misalnya vertex A dan B dihubungkan oleh edge AB, namun untuk hubungan vertex b ke A harus ada edge lain yaitu edge BA jika tidak ada maka B ke A tidak memiliki hubungan, walaupun A ke B erdapat hubungan. Graf tak berarah: berbeda dengan graf berarah, pada graf tidak berarah jika terdapat edge AB maka edge tersebut menghubungkan A ke B dan juga B ke A. Graf Berbobot : adalah sebuah graf yang memiliki edge yang bernilai atau memiliki nilai tertentu. Graf tidak berbobot: adalah kebalikan dari graf berbobot. 2.3 Traveling Salesman Problem Traveling Salesman Problem atau TSP sebenarnya adalah masalah klasik dalam pencarian jalur terpendek. Masalah ini mungkin terdengar sederhana, namun dalam pemecahanya sangatlah tidak sederhana. Banyak macam algoritma yang dapat mengatasinya, namun mencari algoritma yang optimal merupakan

24 8 permasalahanya. Terkadang suatu algoritma bisa sangat optimal dalam kasus A namun menjadi tidak optimal dalam kasus B. Biasanya TSP akan digambarkan dalam sebuah Graph. Permasalahan matematika tentang Traveling Salesman Problem atau TSP sendiri dikemukakan pada tshun 1800 oleh Wiliam Rowan Hamilton dan Thomas Penyngton. Wiliam Rowan Hamilton adalah seorang maematikawan dari Irlandia sedangkan Thomas Penyngton adalah seorang matematikawan dari Inggris. Kemudian bentuk umum dari TSP mulai dipelajari oleh matematikawan pada tahun 1930 dimana Karl Menger di Vienna dan Harvad mengawalinya. Lalu TSP dipublikasikan oleh Hassler Whitney dan Merrill Flood di princeton. Permasalahan TSP memiliki banyak teknik yang dapat digunakan dalam menanganinya. Salah satunya adalah teknik Heuristik, dimana teknik ini adalah teknik yang akan memberikan hasil yang mendekati optimal. Beberapa metode heuristik seperti algoritma genetika, simulated annealing dan algoritma semut sendiri merupakan suatu cara untuk mencari hasil traveling salesman problem yang baik namun belum bisa dikatakan yang terbaik Aplikasi TSP Traveling Salesman Problem yang awalnya merupakan sebuah masalah pada akhirnya telah berkembang dan dapat dimanfaatkan dalam beberapa sektor. Berikut adalah beberapa contohnya: a. Logistik dan Supply Chain: Logistik dan supply Chain secara umum mengandung pengertian bahwa sistem tersebut dapat mengatur atau mengelola orang, suberdaya, aktifitas, teknologi dan lain lain guna kepentingan untuk mengantar barang dari titik asal(suplier) kepada titik tujuan(pelanggan). Sehingga diharapkan pemasokan tersebut dapat berjalan secara tepat waktu, tepat jumlah, tepat lokasi, tepat sumber daya dan lain lain. b. Transportasi: Dalam bidang ini salah satu pionir yang memanfaatkan TSP adalah Merril Flood, beliau adalah matematikawan Amerika yang merumuskan

25 9 Rute bus sekolah di New Jersy pada tahun 1940an. Dalam hal transportasi memang TSP sangatlah berguna seperti untuk mencari jalur terpendek untuk perjalanan. c. Manufaktur: Dalam bidang manufaktur TSP dapat dimanfaatkan dalam pencarian jalur terpendek sehingga meningkatkan kecepatan produksi dan dapat menekan biaya produksi. d. Bidang lainnya: Pada bidang lain TSP juga dapat dimanfaatkan dalam pendjadwalan pengiriman koran, pengiriman surat oleh pos pemasangan jaringan telekomunikasi dan lain lain Algoritma Semut Membahas tentang Algoritma semut, dasar algoritma semut dan algoritma semut itu sendiri Tentang Algorima Semut Algoritma Semut merupakan simulasi multi agen yang menggunakan metafora alami semut untuk menyelesaikan problem ruang fisik. Algoritma ini merupakan algoritma yang diperkenalkan oleh Moyson dan Manderick dan secara meluas dikembangkan oleh Marco Dorigo. Algoritma semut merupakan teknik probabilistik untuk menyelesaikan masalah komputasi dengan menemukan jalur terbaik melalui grafik. Sesuai dengan namanya, algoritma ini adalah algoritma yang terinspirasi dari semut. Dimana perilaku semut yang meninspirasi algoritma ini adalah saat semut menemukan jalur dari koloninya menuju makanan. Semut mampu mengindra lingkunganya yang kompleks untuk mencari makanan. Saat menemukan makanan semut akan kembali ke koloni atau sarangnya dengan meninggalkan zat feromon pada jalur jalur yang mereka lewati. Zat Feromon adalah zat yang berasal dari kelenjar endokrim yang digunakan oleh makhluk hidup untuk mengenali sesama jenis, individu lain, klompok bahkan membantu untuk proses reproduksi. Berbeda dengan hormon, feromon meyebar keluar tubuh dan hanya dapat mempengaruhi dan dikendalikan oleh individu lain

26 10 yang sejenis (satu spesies). Peninggalan fermon merupakan cara dari semut untuk mengingat jalan pulang, selain itu hal tersebut juga berfungsi untuk berkomunikasi dengan koloninya. Dalam kejadian sehari hari, algoritma semut biasa diterapkan dalam beberapa persoalan seperti berikut: 1. Traveling Salesman Problem (TSP) Merupakan sebuah permasalahan dalam pencarian jalur terpendek. Dimana dalam pencarian jalur terpendek semua titik harus dilewati. Contoh: pengantar surat yang harus mengantar semua surat pada alamat tujuan. 2. Quadratic Assigment Problem (QAP) Merupakan masalah dalam meng-asign sejumlah n resources untuk ditempatkan pada sejumlah m lokasi dengan meminimalisir biaya assignment. 3. Job-shop Scheduling Problem (JSP) Merupakan sebuah permasalahan dalam penjadwalan sejumlah j pekerjaan menggunakan sejumlah m mesin sedemikian rupa agar seluruh pekerjaan dapat diselesaikan dalam waktu yang minimal Konsep Dasar Pada siklus semut, setiap semut akan berperan sebagai agen yang : Akan berpindah dari kota i ke kota j, pada interval antara t dan (t+1). Kota j dipilih atas dasar probabilitas terhadap jarak d(ci, Cj) dan jumlah jejak pada edge(jalur) yang menghubungkan antara Ci dan Cj Akan mengunjungi kota yang belum pernah dikunjungi sebelumnya. Hal ini diimplementasikan dengan cara menyimpan semua kota yang telah dikunjungi semut hingga semut tersebut menyelesaikan perjalanannya, dan akan mereset kembali setelah semut itu menyelesaikan satu siklus. Setelah selesai dalam satu siklus semut itu akan meninggalkan jejak pada setiap edge yang dilaluinya.

27 11 Misalkan Ʈ ij adalah intensitas jejak semut pada edge(i,j) pada saat t, maka setelah suatu semut menyelsaikan perjalanan dalam suatu siklus, intensitas jejak akan berubah menjadi: Dengan ρ adalah koefisien dengan nilai 0 sampai 1, sedemikian hingga (1- ρ) menunjukan penguapan jejak, dan m k k 1 ΔƮ ij Gambar 2. 3 Rumus Penguapan Jejak (t,t+n) adalah jejak yag ditingkalkan oleh semut k pada edge (i,j) pada saat antara t sampai(t+1), yang dihitung sebagai berikut: Q = Konstanta L k = panjang jalur untuk perjalanan semut k Tabu List digunakan untuk menyimpan nama kota yang telah dikunjungi oleh semut. Tabu k (s) adalah kota ke s yang dikunjngi oleh semut k. Sehingga jika kota sudah dilewati maka akan disimpan di Tabu k (s) dan tidak boleh dipilih lagi. Sehingga Tabu k (k= 1, 2,..,m) dikosongkan. berikut: ΔƮ k ij (t,t+n) = Probabilitas transisi dari kota i ke kota j diberikan dengan formula sebagai Parameter α dan β digunakan untuk mengendalikan tingkat kepentingan relatif dari jejak dan visibilitas. Q Ʈ ij (t+n) = ρʈ ij (t) + ΔƮ ij (t,t+n) Gambar 2. 2 Rumus Intensitas Jejak ΔƮ ij (t,t+n) = m k k 1 ΔƮ ij (t,t+n) Lk ; jika semut k menggunakan edge(i, j) dalam perjalanannya 0; jika semut k tidak menggunakan edge(i, j) { dalam perjalanannya Gambar 2. 4 Rumus mencari jejak yang ditinggalkan [Ʈ ij (t)] α [η ij ] β p ij (t) = { [Ʈ ij (t)] α ; jika j ε diijinkan β [η ij ] 0; jika j diijinkan Gambar 2. 5 Rumus Probabilitas

28 Cara Kerja Aloritma Semut Urutan pengerjaan dalam algorima semut adalah sebagai berikut: 1. Inisialisasi Parameter α(tetapan intensitas jejak semut), β (tetapan visibilitas), τ, m(jumlah semut), iterasi, dan Q (konstanta). 2. Letakan semut ke salah satu node secara acak. 3. Selama dalam iterasi lakukan langkah Untuk setiap semut, lakukan : Memilih probabilitas (berdasarkan persamaan sebelumnya) untuk bergerak ke node berikutnya Tambahkan node yang sudah dilalui kedalam List Ulangi hingga semut menyelesaikan solusi 5. Untuk setiap semut yang telah menyelesaikan solusi lakukan: Update feromon τ untuk tiap node yang dilalui semut. 6. Jika solusi lokal terbaik lebih baik daripada solusi global Simpan solusi lokal terbaik sebagai solusi global 7. Selesai Contoh Penerapan Algoritma Semut Terdapat Sebuah travel yang harus mengantarkan penumpang ke kota A, B, C, D, E. Supir tersebut diminta untuk menemukan jalur terpendek yang harus dilaluinya. Sedangkan kota yang pertama dimasuki adalah kota A sehingga supir diminta menentukan tujuan selanjutnya agar dapat menjadi jalur terpendek. Berikut ini adalah graf dari kota tujuannya: Gambar 2. 6 Graph

29 13 Gambar diatas adalah graph dari peta lokasi yang harus dikunjungi oleh supir travel tersebut. Kemudian jarak antar kota di gambarkan dalam bentuk tabel seperti berikut ini: A B C D E A B C D E Tabel 2. 1 Tabel Matrix antar titik Langkah 1: Inisialisasi parameter : α (intensitas jejak semut) = 1.00 β (visibilitas) = 1.00 ρ = 0.5 Ʈ ij awal = 0.01 m (jumlah siklus/semut) = 4 Q = 1 Visibilitas antar kota (η = Q/jarak) : A B C D E A B C D E Tabel 2. 2 Visibilitas A B C D E A B

30 14 C D E Tabel 2. 3 Tabel intensitas jejak semut awal Langkah 2: Memasukan semut ke salah satu node secara acak, dalam kasus ini dimasukan kedalam kota A sebagai titik awal semua semut. m1(semut1) m2(semut2) m3(semut3) m4(semut4) Kota A Kota B Kota C Kota D Tabel 2. 4 pengisian node awal Langkah 3: Melakukan Langkah 4 sampai 5 Langkah 4 Mencari probabilitas tertinggi [Ʈ ij (t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β Menghitung [Ʈ ij (t)] α [η ij ] β : Kota A Kota B = [Ʈ AB (t)] α [η AB ] β = (0.01) 1.00 (0.125) 1.00 = Kota A Kota C = [Ʈ AC (t)] α [η AC ] β = (0.01) 1.00 (0.100) 1.00 = Kota A Kota D = [Ʈ AD (t)] α [η AD ] β = (0.01) 1.00 (0.250) 1.00 = Kota A Kota E = [Ʈ AE (t)] α [η AE ] β = (0.01) 1.00 (0.200) 1.00 = Menghitung [Ʈ ij (t)] α [η ij ] β : =

31 15 [Ʈ ij (t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β : Kota A Kota B = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = / = Kota A Kota C = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = 0.001/ = Kota A Kota D = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = / = Kota A Kota E = [Ʈ ij(t)] α [η ij ] β = 0.002/ = [Ʈ ij (t)] α [η ij ] β Kota B Kota C Kota D Kota E Tabel 2. 5 probabilitas Probabilitas terbesar adalah kota D maka : A D Lakukan hal yang sama untuk mendapat tujuan selanjutnya, dimana titik dimulai dari kota D: Kota D Kota A = [Ʈ DA (t)] α [η DA ] β = (0.01) 1.00 (0.250) 1.00 = Kota D Kota B = [Ʈ DB (t)] α [η DB ] β = (0.01) 1.00 (0.091) 1.00 = Kota D Kota C = [Ʈ DC (t)] α [η DC ] β = (0.01) 1.00 (0.250) 1.00 = Kota D Kota E = [Ʈ DE (t)] α [η DE ] β = (0.01) 1.00 (0.167) 1.00 = Menghitung [Ʈ ij (t)] α [η ij ] β = = Probabilitas

32 16 Kota D Kota B = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = / = Kota D Kota C = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = / = Kota D Kota E = [Ʈ ij(t)] α [η ij ] β = / = [Ʈ ij (t)] α [η ij ] β Kota B Kota C Kota E Tabel 2. 6 Probabilitas (2) Probabilitas tertinggi pada kota C A D C Lakukan hal yang sama untuk mendapat tujuan selanjutnya, dimana titik dimulai dari kota C : Kota C Kota A = [Ʈ ij (t)] α [η ij ] β = (0.01) 1.00 (0.100) 1.00 = Kota C Kota B = [Ʈ ij (t)] α [η ij ] β = (0.01) 1.00 (0.167) 1.00 = Kota C Kota D = [Ʈ ij (t)] α [η ij ] β = (0.01) 1.00 (0.250) 1.00 = Kota C Kota E = [Ʈ ij (t)] α [η ij ] β = (0.01) 1.00 (0.083) 1.00 = Menghitung [Ʈ ij (t)] α [η ij ] β = = Probabilitas : Kota C Kota B = [Ʈ ij(t)] α [η ij ] β = /0.006= [Ʈ ij (t)] α [η ij ] β Kota C Kota E = [Ʈ ij(t)] α [η ij ] β [Ʈ ij (t)] α [η ij ] β = /0.006=

33 17 Kota B Kota E Tabel 2. 7 Probabilitas (3) Probabilitas tertinggi pada kota B A D C B Karena yang belum terpilih adalah E maka tujuan terakhir adalah kota E A D C B E Langkah 5 Update intensitas jejak semut: Ʈ ij (t+n) = ρʈ ij (t) + ΔƮ ij (t,t+n) Kota A ke Kota D: Ʈ AE = ρʈ ij + ΔƮ ij = (0.5*001)+(1/4)= Kota E ke Kota C: Ʈ AE = ρʈ ij + ΔƮ ij = (0.5*001)+(1/4)= Kota C ke Kota B: Ʈ AE = ρʈ ij + ΔƮ ij = (0.5*001)+(1/6)= Kota B ke Kota E: Ʈ AE = ρʈ ij + ΔƮ ij = (0.5*001)+(1/10)= A B C D E A B

34 18 C D E Tabel 2. 8 Tabel intensitas jejak semut untuk semut ke 1 Rute yang dilewati m1(semut1): A D C B E Selanjutnya ulangi Langkah 4 dan 5 untuk semut 2 sampai 4, selanjutnya bandingkan hasil jarak antara semut 1 4 dan cari solusi terbaik sebagai hasil akhir.

35 BAB III ANALISIS DAN PERANCANGAN 3.1 Analisis Sistem Sistem ini bertujuan untuk mencari rute terpendek untuk mendistribusikan barang dari gudang PT CIRCLEKA Indonesia Utama cabang Yogyakarta ke gerai gerai Circle K yang ada di kota Yogyakarta. Dimana system ini akan menerapkan algoritma semut dalam pencarian rute tersebut. Dan diharapkan algoritma ini dapat membantu untuk mendapat hasil yang maksimal. Dalam system ini akan terdapat data dari lokasi gudang dan gerai gerai Circle K yang ada di kota Yogyakarta. Dimana data tersebut menunjukan jarak antara gerai dengan gudang dan juga jarak antara gerai satu dengan yang lainnya. Lalu pengguna system ini dapat memilih gerai gerai yang akan di tuju untuk mendistribusikan barang. Lalu system akan mencari rute terpendek dalam menjangkau gerai gerai yang dipilih Analisis Masalah Pendistribusian stock barang oleh PT.Circleka Indonesia Utama region Yogyakarta meliputi 36 toko yang terdapat di wilayah Daerah Istimewa Yogyakarta dan beberapa oko yang terdapat di luar daerah. Dalam melakukan pendistribusian barang ke toko toko Circle K tersebut digunakan sebuah mobil container berukuran sedang. Dimana dalam sekali tempuh mobil tersebut dapat mendistribusikan stock barang hingga mencakup 3 sampai 5 toko di Yogyakarta.dalam melakukan pendistribusian barang tersebut perjalanan akan dimulai dari Gudang milik PT Circleka Indonesia Utama region Yogyakarta. Gudang tersebut terletak di Jl. Raya Magelang KM 7 No. 9 Sendangadi Mlati Sleman yang mana juga merupakan alamat dari kantor region Yogyakarta. Dalam pendistribusian barang biasanya akan membawa stock untuk 3 hingga 5 toko. Dimana untuk mengantar barang tersebut dilakukan dalam satu kali perjalanan. Dan dalam menempuh perjalanan tersebut seorang supir akan memutuskan ke toko mana dulu yang dituju. Lalu akan dilanjut dengan toko toko 19

36 20 selanjutnya sehingga seluruh toko berhasil dituju dan seluruh barang terdistribusikan. Gambar 3. 1 Peta Persebaran Toko Circle K di Yogyakarta Aturan Pencarian Rute Dalam pembuatan sistem pencari rute ini memiliki beberapa aturan yang harus dipenuhi agar sistem ini dapat dikatakan optimal. Aturan aturan tersebut merupakan beberapa kendala yang mungkin terjadi dalam sistem. Dan kendala tersebut tentusaja harus dihindari uleh sistem. Kendala kendala tersebut adalah sebagai berikut: 1. Dalam sekali perjalanan tidak boleh ada toko yang sama 2. Dalam sekali perjalanan Tidak boleh mengunjungi toko yang sudah dikunjungi. 3. Titik awal keberangkatan pendistribusian barang adalah Gudang yang terletak di tempat yang sama dengan kantor pusat cabang Yogyakarta.

37 Sumber Data Sumber data yang diperoleh merupakan data dari PT.Circleka Indonesia Utama region Yogyakarta. Data tersebut merupakan data yang sudah diperbarui per April Data yang digunakan untuk sistem ini adalah Toko dan Data Rute. Data Toko meliputi 36 toko yang termasuk dalam region yogyakarta. Dimana data tiap toko adalah data nama toko, kode toko, alamat toko dan koordinat lokasi dari toko. Sedangkan untuk data rute merupakan data yang menyimpan data jalur antar toko yang ada. Dimana data tersebut mencakup jarak toko dan rute yang ditempuh antar toko. Berikut ini adalah data toko yang berada dibawah kantor region Yogyakarta: Kode Nama Toko YOG0101 YOG CK 0101 Sosrowijayan YOG0102 YOG CK 0102 Parangtritis YOG0104 YOG CK 0104 Sudirman YOG0109 YOG CK 0109 Sudirman Tugu YOG0111 YOG CK 0111 Sosrowijayan II YOG0112 YOG CK 0112 Timoho YOG0113 YOG CK 0113 Taman Siswa 136 YOG0114 YOG CK 0114 Kusumanegara 46 YOG0116 YOG CK 0116 Kota Baru YOG0117 YOG CK 0117 AM Sangaji YOG0209 YOG CK 0209 Magelang KM.5 YOG0213 YOG CK 0213 Ring Road YOG0215 YOG CK 0215 Magelang KM.7 No.9 (Gudang) YOG0216 YOG CK 0216 Monjali 86 B 230 YOG0301 YOG CK 0301 Godean YOG0201 YOG CK 0201 Kaliurang YOG0205 YOG CK 0205 Babarsari YOG0207 YOG CK 0207 Kaliurang Bawah YOG0210 YOG CK 0210 Jl. Solo KM.8 YOG0211 YOG CK 0211 Demangan YOG0214 YOG CK 0214 Seturan Atas YOG0217 YOG CK 0217 Kaliurang KM.8 YOG0221 YOG CK 0221 Sorogenen I YOG0222 YOG CK 0222 Nologaten (Wahid Hasyim) YOG0223 YOG CK 0223 Anggajaya YOG0224 YOG CK 0224 Nusa Indah YOG0227 YOG CK 0227 Seturan YOG0228 YOG CK 0228 Affandi YOG0229 YOG CK 0229 Gatic Condong Sari YOG1101 YOG CK 1101 Bandara Adi Sucipto Franchise 1 YOG1102 YOG CK 1102 Bandara Adi Sucipto Franchise 2 YOG1103 YOG CK 1103 Bandara Adi Sucipto Franchise 3 YOG1104 YOG CK 1104 Bandara Ahmad Yani Semarang

38 22 YOG1106 YOG1107 YOG1108 YOG CK 1105 Bandara Adi Sucipto Drop Zone Parkir Utara YOG CK 1107 Bandara Adi Sucipto/ Terminal B YOG CK 1108 Bandara Adi Sumarmo SOLO Tabel 3. 1 Data Toko Data diatas adalah seluruh toko yang ada di regional Yogyakarta, namun tidak semua toko diatas masuk kedalam sistem ini. Terdapat 2 toko yang terletak di luar provinsi yogyakarta, yaitu CK 1108 Bandara Adi Sumarmo Solo dan CK 1104 Bandara Ahmad yani Semarang. 2 toko itu tidak dimasukan kedalam sistem karena dalam pengiriman stock biasanya hanya dilakukan sekali jalan. Dimana mobil yang mengantar stock barang tidak mengantar stock ke toko lain selain toko circle k yang berada diluar provinsi tersebut. Sehingga kedua toko tersebut tidak perlu dimasukan kedalam sistem ini. Selanjutnya terdapat 5 toko dalam ruang lingkup yang sama, yaitu CK 1101, CK 1102, CK 1103, CK1105 dan Ck1107. Kelima toko itu terdapat pada area yang sama, yaitu area Bandara Adisucipto. Sehingga dalam sistem kelima toko Circle K tersebut dijadikan 1 nama saja.dan setelah itu hanya terdapat 30 data toko saja yang digunakan dalam sistem ini. Namun data toko ini dapat diperbarui sesuai dengan apa yang terjadi. Berikut ini adalah data toko CK yang digunakan dalam sistem yang akan dibuat kode Nama Toko YOG0101 YOG CK 0101 Sosrowijayan YOG0102 YOG CK 0102 Parangtritis YOG0104 YOG CK 0104 Sudirman YOG0109 YOG CK 0109 Sudirman Tugu YOG0111 YOG CK 0111 Sosrowijayan II YOG0112 YOG CK 0112 Timoho YOG0113 YOG CK 0113 Taman Siswa 136 YOG0114 YOG CK 0114 Kusumanegara 46 YOG0116 YOG CK 0116 Kota Baru YOG0117 YOG CK 0117 AM Sangaji YOG0209 YOG CK 0209 Magelang KM.5 YOG0213 YOG CK 0213 Ring Road YOG0215 YOG CK 0215 Magelang KM.7 No.9 YOG0216 YOG CK 0216 Monjali 86 B 230 YOG0301 YOG CK 0301 Godean YOG0201 YOG CK 0201 Kaliurang YOG0205 YOG CK 0205 Babarsari YOG0207 YOG CK 0207 Kaliurang Bawah YOG0210 YOG CK 0210 Jl. Solo KM.8 YOG0211 YOG CK 0211 Demangan YOG0214 YOG CK 0214 Seturan Atas YOG0217 YOG CK 0217 Kaliurang KM.8

39 23 YOG0221 YOG CK 0221 Sorogenen I YOG0222 YOG CK 0222 Nologaten (Wahid Hasyim) YOG0223 YOG CK 0223 Anggajaya YOG0224 YOG CK 0224 Nusa Indah YOG0227 YOG CK 0227 Seturan YOG0228 YOG CK 0228 Affandi YOG0229 YOG CK 0229 Gatic Condong Sari YOG1101 YOG CK 1101 Bandara Adi Sucipto Tabel 3. 2 Data Toko yang Digunakan Sedangkan untuk data Rute dari toko memiliki data sebagai berikut Kode Toko Awal Kode Toko Tujuan Jarak Rute YOG0101 YOG YOG0101 YOG YOGnnnn YOGnnn Tabel 3. 3 Tabel data rute Data diatas merupakan data rute yang digunakan sistem untuk mencari jarak dan jalur yang harus dilalui. Dimana data tersebut terdiri dari 4 entitas yaitu kode toko awal, kode toko tujuan, jarak dan rute. Kode toko awal merupakan titik awal dari semut, sedangkan kode toko tujuan adalah toko yang dituju selanjutnya. Lalu untuk data jarak adalah jarak antara toko awal dan toko tujuan. Sedangkan rute merupakan jalur yang dilalui oleh semut untuk mencapai tujuan dari toko awal menuju ke toko tujuan. Untuk mendapatkan data diatas, diguanakan aplikasi google maps untuk mendapatkan data jarak dan jalur yang dilewati. Untuk mencarinya diperlukan data koordinat antar toko. Data koordinat tersebut dimasukan pada google maps maka akan muncul hasil jarak antar toko beserta jalur yang dilewati. Data yang didapat tersebut selanjutnya disimpan kedalam tabel data rute diatas. Berikut ini adalah gambar contoh pengambilan data rute dan jarak antar toko.

40 24 Gambar 3. 2 Pencarian rute dengan google maps 3.2 Permodelan Algoritma Semut untuk Pencarian Rute Pada proses penerapan algoritma semut untuk pencarian rute distribusi barang, terdapat beberapa komponen yang harus diperhatikan Inisialisasi Parameter Inisialisasi parameter merupakan proses awal dalam penerapan algoritma semut. Beberapa parameter yang digunakan dalam algoritma semut adalah α(alfa), β(beta),ρ(rho), m(jumlah semut) dan Iterasi. Parameter Nilai α(alfa) 5 β(beta) 2 ρ(rho) 0.3 m(jumlah semut) 5 Iterasi 2 Tij 0.01 Tabel 3. 4 Inisialisasi Parameter Data parameter diatas adalah data yang disesuaikan dengan buku refrensi dari Sri Kusumadewi dkk (2003) dan Skripsi dari Roy Wiranta(2015). Selain parameter diatas juga terdapat parameter visibilitas awal, dimana visibilitas awal diperoleh

41 25 dengan rumus η =1/Jarak. Sedangkan untuk mendapatkan nilai jarak digunakan method carijarak() untuk mendapat nilai jarak antar toko. Data jarak antar toko sendiri disimpan didalam database. Selanjutnya sebagai proses awal semut akn menuju ke node pertama secara random. Dari node pertama ini semut akan mencari node node selanjutnya untuk dituju, sehingga membentuk senuah rute. Untuk menentukan node selanjutnya diperlukan nilai probabilitas, dimana titik yang memiliki nilai probabilitas tertinggi merupakan node selanjutnya. Untuk mendapat nilai probabilitas diperlukan nilai nilai dari parameter diatas.setelah mendapat semua node yang dituju pencarian probabilitas akan dilakukan sesuai dengan banyaknya nilai iterasi Mencari Urutan Node Proses Selanjutnya merupakan pencarian urutan node. Untuk mencari node diperlukan pencarian probabilitas, dimana nilai probabilitas adalah nilai yang digunakan untuk mencari titik node(toko) selanjutnya dalam pencarian rute. Langkah untuk mendapatkan nilai probabilitas tertinggi adalah sebagai berikut: 1) Cari visibilitas antar toko i ketoko j sebanyak jumlah toko yang dipilih, i merupakan toko yang disinggahi oleh semut sedangkan j adalah toko yang belum dikunjungi oleh semut 2) Setelah seluruh visibilitas ditemukan maka jumlahkan nilai seluruh visibilitas yang ada. 3) Langkah terakhir adalah membagi nilai visibilitas awal dengan nilai dari jumlah visibilitas. 4) Hasil dari pembagian merupakan nilai probabilitas. Setelah mendapat nilai probabilitas maka akan dicari nilai probabilitas tertinggi. Nilai probabilitas tertinggi merupakan node selanjutnya yang akan dituju oleh semut. Setelah mendapat node selanjutnya maka dilakukan lagi langkah diatas hingga seluruh toko berhasil dikunjungi oleh semut. Disetiap kunjungan semut maka jejak dari semut(fromon) harus diupdate, dimana langkah untuk mengupdate feromon semut adalah: Update feromon = (Rho * feromon awal) + (1/jarak)

42 26 Setelah semut berhasil mengunjungi seluruh toko maka lakukan langkah tersebut sebanyak iterasi, namun dengan nilai feromon yang telah diupdate. Setelah dilakukan pencarian node sebanyak iterasi maka hasil akhir dari pencarian rute tersebut akan disimpan sebagai data dari semut ke-m. Iterasi tersebut biasanya akan memiliki hasil yang konsisten antara ireasi terakhir dan iterasi sebelumnya. Kemudian Langkah tersebut akan dilakukan sebanyak jumlah semut yang di masukan. Proses yang dilakukan setiap semut untuk mendapat rute sama seperti cara diatas, hanya saja nilai dari node pertama setiap semut berbeda karena node pertama setiap semut didapat secara random. Setelah semua semut mendapatkan rutenya maka akan dilakukan update solusi sebagai berikut Update Solusi Langkah terakhir adalah update solusi, dimana langkah ini menentukan jalur semut yang dipakai. Untuk melakukan update solusi maka langkah langkah sebelumnya haruslah sudah terpenuhi. Setelah seluruh semut mengunjungi seluruh node(toko) maka pada bagian ini akan ditentukan solusi terbaik. 1) Selama cek lebih kecil dari jumlah semut maka lakukan langkah 2 dan 3 2) Bandingkan nilai jarak solusi akhir dengan nilai jarak semut ke-m 3) Jika nilai jarak semut ke-m tidak sama dengan 0 dan nilai jarak semut ke m lebih kecil dari nilai solusi akhir maka: a. Solusi akhir = nilai jarak semut ke-m Jika tidak, maka: b. Solusi akhir = solusi akhir 4) Selesai 3.3 Perancangan Sistem Diagram Use case Gambar 3. 3 Diagram Usecase

43 Ringkasan Use Case Nama Use Case Keterangan Pelaku Cari Rute Use case ini merupakan fungsi utama dari Admin sistem dimana pada bagian ini sistem akan melakukan pencarian rute sesuai dengan tujuan yang diilih oleh pengguna, dimana sebelumya data sudah disimpan pada database Cetak Hasil Use case ini merupakan proses pencetakan Admin hasil dari pencarian rute terpendek. Dimana rute terpendek akan dicetak dan dijadikan surat pengantar untuk pendistribusian Ubah Data Toko Use Case ini merupakan pengubahan data Admin jikalau terjadi perubahan data dari data yang sudah ada dalam sistem Tambah Data Toko Use case ini merupakan proses penambahan Admin data baru kedalam sistem. Hapus Data Toko Use Case ini merupakan proses penghapusan Admin data pada sistem yang dirasa sudah tidak diperlukan lagi. Tabel 3. 5 Ringkasan Usecase Narasi Use Case Nama Use Case Cari Rute Aktor Diskripsi Prakondisi Admin Pengguna mencari rute terpendek Sistem sudah dibukan dan dalam menu Home Langkah Aksi Aktor Reaksi Sistem Kerja Langkah 1: Admin memilih tombol Cari Rute Langkah 2:

44 28 Sistem menampilkan menu Cari Rute. Langkah 3: Admin memilih toko - toko yang akan dicari rutenya Langkah 5: Setelah semua toko yang diinginkan masuk tabel, admin klik tombol Mulai cari Rute Langkah 4: Sistem memasukan toko toko yang dipilih kedalam tabel Langkah 6: Sisem menampilkan pesan persetujuan/konfirmasi Langkah 7: Admin menyetujui dengan memilih OK. Langkah 8: Sistem mencari rute terpendek berdasarkan data yang ada Langkah 9: Menampilkan field hasil dari pencarian rute disertai urutan toko, jarak yang ditempuh beserta ruteny Alternate Langkah 9: Menampilkan pesan eror jika terdapat kesalahan. Tabel 3. 6 Narasi Cari Rute

45 Diagram Aktivitas a. Cari Rute Mulai Admin memilih tombol Cari Rute Admin memilih toko - toko yang akan dicari rutenya Setelah semua toko yang diinginkan masuk tabel, admin klik tombol Mulai cari Rute Admin menyetujui dengan memilih OK. Sistem menampilkan menu Cari Rute. Sistem memasukan toko toko yang dipilih kedalam tabel Sisem menampilkan pesan persetujuan/konfirmasi Sistem mencari rute terpendek berdasarkan data yang ada Menampilkan pesan rute terpendek berhasil didapat disertai urutan rutenya Gambar 3. 4 Diagram Aktifitas Cari Rute 3.4 Perancangan Basisdata ER Diagram Selesai Gambar 3. 5 ER Diagram

46 Model Fisikal a) Tabel Toko Field Name Type Size Key Kode_Toko Varchar2 10 * Nama_Toko Varchar2 100 Nomer Number Alamat Varchar2 100 Koordinat Varchar2 100 Tabel 3. 7 Design Tabel toko b) Tabel Rute Field Name Type Size Key No_Rute Number * Kode_Toko_Awal Varchar2 10 Kode_Tujuan Varchar2 10 Jarak Number 10 Rute_Tujuan Varchar Tabel 3. 8 Design Tabel Rute c) Tabel Hasil Field Name Type Size Key Nomer Number * Tanggal Date Rute Varchar Jarak_Tempuh Varchar2 100 Urutan_Toko Varchar2 100 Tabel 3. 9 Design Tabel Hasil

47 Design Interface a) Home Gambar dibawah adalah menu Home dimana akan tampil saat pertama kali sistem dijalankan. Dalam menu tersebut terdapat tombol utama yaitu, Tombol tombol Cari Rute. Pada tombol Cari Rute sistem akan mengantarkan kedalam menu Cari Rute. Menu ini adalah fungsi utama dari sistem pencari jalur terpendek travel. Dimana sistem akan mencari jalur terpendek tersebut. Setelah itu terdapat juga pilihan keluar disudut kanan bawah. Pilihan tersebut berfungsi untuk menutup sistem atau keluar dari sistem pencari rute terpendek distribusi ini. Gambar 3. 6 Tampilan Home b) Cari Rute Menu Cari Rute merupakan menu yang menampilkan fungsi utama dari sistem, yaitu mencari rute terpendek untuk perjalanan travel. Menu ini akan muncul setelah Admin memilih tombol Cari Rute pada Menu Home. Dalam menu ini terdapat combo box yang digunakan untuk memilih toko toko yang akan dituju. Selanjutnya nama nama toko yang sudah terpilih akan muncul di tabel yang ada di bawah. Lalu terdapat tulisan home di bagian atas yang berguna untuk kembali ke dalam Menu Home dan Opsi keluar untuk langsung keluar dari sistem.sedangkan tombol cari rute akan membuat sistem mencari rute sesuai toko toko yang ada dalam tabel.

48 32 Gambar 3. 7 Tampilan Cari Rute c) Lihat Data Menu Lihat data adalah salah satu pilihan menu dari sistem ini. Menu ini dapat diakses dengan menekan tombol lihat data pada menu Home. Didalam menu ini akan ditampilkan data toko yang ada dalam sistem. Di menu ini juga terdapat pilihan tambah data, ubah data dan juga hapus data. Dengan memilih salah satu dari pilihan tersebut maka akan ditampilkan menu sesuai dengan yang dipilih. Gambar 3. 8 Tampilan Lihat Data

49 33 d) Tambah Data Menu ini juga merupakan menu tambahan dari sistem pencari rute distribusi barang. Dimana menu ini berfungsi untuk menambahkan data rute sekaligus data rute dari toko tersebut. Hal ini tentusaja mengantisipasi jika terdapat toko Circle K baru yang akan dibangun di kota Yogyakarta. Dalam sistem ini ada textfield untuk mengisi kode toko baru tersebut, lalu nama toko, alamat toko dan koordimat lokasi dari toko tersebut. Setelah data data tersebut diisi maka selanjutnya akan mengisi data rute dari toko baru tersebut menuju toko lainyang sudah ada. Atribut yang dimasukan adalah jarak antar toko dan rute yang dilewati. Gambar 3. 9 Tampilan Tambahan Data e) Perbarui Data Menu ini juga merupakan menu tambahan dari sistem pencari rute distribusu barang. Dimana menu ini berfungsi untuk mengubah data dari toko jikalau terjadi perpindahan lokasi ataupun data lain dari toko yang sudah ada didalam sistem. Hampir sama dengan tambah data hanya saja terdapat combo box yang digunakan untuk memilih nama toko yang akan di ubah. Selanjutnya proses pengubahan data toko yang dilanjut dengan pengubahan rute yang ditempuh dari toko yang ada menuju toko yang baru dubah dan juga sebaliknya.

50 34 Gambar Tampilan Tambahan Data f) Hapus Data Menu Hapus data merupakan menu tambahan dalam sistem ini, dimana sistem ini berguna untuk menghapus data toko yang sudah tidak digunakan lagi. Dimana menu ini memiliki combo box untuk memilih toko yang akan dihapus. Lalu textfield akan terisi data dari toko yang terpilih. Lalu terdapat button hapus untuk menghapus data toko tersebut beserta data rute rute yang bersangkutan.

51 35 Gambar Tampilan Hapus Data

52 BAB IV IMPLEMENTASI Dalam bab ini akan dibahas mengenai implementasi dari sistem berdasarkan dari rancangan yang dibuat pada bab sebelumnya. 4.1 Implementasi Proses Implementasi Algoritma Semut Bagian ini menjelaskan pengimplementasian Algoritma semut kedalam program, dimana cara kerja dari algoritma semut sudah dijelaskan pada Bagian sebelumnya. Langkah pertama dari algoritma Semut adalah penentuan nilai dari Alpa, Beta, Iterasi, Pheronom, banyak Semut(m) dan beberapa atribut lainya. Berikut adalah penentuan nilai nilai atribut tersebut, private static double ALPHA = 5;//bebas private static double BETA = 2;//bebas private static double RHO = 0.3;//antara 0 dan 1 int msemut = 5;//bebas double TAU[][];//bebas private static int iterasi = 2;//iterasi bebas double ETA[][];// bebas double Tij = 0.01; Nilai nilai yang dimaskan kedalam atribut diatas adalah nilai yang dimasukan secara random. for (int i = 0; i < jumchecklist; i++) { for (int j = 0; j < jumchecklist; j++) { if (i == j) { feromonawal[i][j] = 0; } else { feromonawal[i][j] = 0.01; }}} for (int i = 0; i < jumchecklist; i++) { for (int j = 0; j < jumchecklist; j++) { System.out.print(feromonAwal[i][j] + " "); System.out.print(""); } System.out.println(" "); } 36

53 37 Selanjutnya dalam melakukan Inisialisasi Parameter adalah menentukan nilai pheronome awal. Pheronome merupakan jejak yang dilalui oleh semut, sehingga nilai dari pheronome awal adalah nilai yang kecil, dan pada kasus ini dipilih 0,01 sebagai nilai pheronome awal. Pheronome tersebut akan dibentuk kedalam sebuah matrix dengan ukuran yang menyesuaikan dengan jumlah checklist(jumlah toko yang dipilih). for (int x = 0; x < jumchecklist; x++) { for (int y = 0; y < jumchecklist; y++) { String baris = simpantitik[x]; String kolom = simpantitik[y]; String jarak = CariJarak.getJarakKoneksi().cari_jarak (baris, kolom); getjarak[x][y] = Double.parseDouble(jarak); }} Bagian ini merupakan pencarian jarak antar toko yang dipilih, dimana jarak antar toko tersebut akan digunakan dalam pencarian Visibilitas yang juga merupakan salah satu parameter yang harus diidentifikasi pada langkah pertama. for(int a=0; a<jumchecklist; a++){ for (int b=0; b<jumchecklist; b++){ if(a==b){ visibilitasawal[a][b] = 0; }else{ visibilitasawal[a][b] = 1000 / getjarak[a][b]; } System.out.print(visibilitasAwal[a][b]+" "); } System.out.println(" "); } Selanjutnya adalah identifikasi visibilitas antar toko, dimana rumus yang digunakan adalah (η = 1/jarak). Karena jarak menggunakan satuan meter maka rumus menjadi 1000/jarak. Dimana nilai jarak adalah jarak antar toko circle k.

54 38 For (int sem = 1; sem <= msemut; sem ++){ Tabu[1]=sem; } Data tersebut akan terbentuk kedalam matriks dengan ukuran yang disesuaikan dengan jumlah toko yang dipilih. Bagian ini merupakan langkah selanjutnya dari algoritma semut, yaitu meletakan semut secara random. Semut diletakan berdasarkan atribut sem. for(j = 0; j< jumchecklist; j++){ if(x==0){ visibilitasakhir[nexti][j] = Math.pow(feromonAwal[nextI][j], ALPHA) * Math.pow(visibilitasAwal[nextI][j], BETA); }else{ visibilitasakhir[nexti][j] = Math.pow(feromon[nextI][j], ALPHA) * Math.pow(visibilitasAwal[nextI][j], BETA); } nextprob = nextprob + visibilitasakhir[nexti][j]; } System.out.println("Prob = " + nextprob); for (j = 0; j < jumchecklist; j++) { probabilitas[nexti][j] = visibilitasakhir[nexti][j] / nextprob;} Selanjutnya bagian ini adalah langkah untuk menentukan nilai probabilitas, dimana rumus untuk mencari nilai probabilitas adalah sebagai berikut: [Ʈ ij (t)] α [η ij ] β p ij (t) = { [Ʈ ij (t)] α ; jika j ε diijinkan β [η ij ] 0; jika j diijinkan Dimana langkah pertama adalah mencari nilai pheronom awal di pankat nilai alfa kemudian nilai visibilitas awal dipangkat nilai beta. Lalu nilai visibilitas tersebut di total kedalam variabel nextprob. Kemudian nilai nilai yang sudah didapat tersebut dimasukan kedalam rumus seperti diatas hingga didapat nilai probabilitas dari setiap titik yang dituju semut m.

55 39 for (j = 0; j < jumchecklist; j++) { if (nilaimax < probabilitas[nexti][j]) { if (j!=tabu[0] && j!=tabu[1] && j!=tabu[2] && j!=tabu[3] && j!=tabu[4] && j!=tabu[5] && j!=tabu[6] ) { nilaimax = probabilitas[nexti][j]; nextisementara = j; } else { nilaimax = nilaimax; nextisementara = nextisementara; } } else { nilaimax = nilaimax; nextisementara = nextisementara; }} Langkah selanjutnya setelah nilai probabilitas didapat adalah mencari nilai probabilitas tertinggi. Nilai probabilitas tertinggi menentukan tujuan selanjutnya dalam perjalanan semut. Pada langkah tersebut akan memeriksa apakah nilai max lebih kecil dari probabilitas[i][j]. Jika iya nilai max akan diisi dengan nilai dari probabilitas[i][j] dan nextisementara diisi oleh nilai j dengan syarat nilai j tidak sama dengan nilai yang sudah disimpan didalam tabulist. Setelah didapat nilai probabilitas tertinggi maka nilai yang disimpan kedalam nextisementara akan disimpan kedalam tabulist. Langkah diatas adalah langkah dari penyimpanan nilai nextisementara kedalam tabulist.nilai yang didapat tersebut merupakan node selanjutnya dalam perjalanan semut. Dan setiap node yang didapat akan disimpan kedalam tabu list secara urut berdasakan node pertama yang terpilih. nexti = nextisementara; tabu[t]=nexti; feromon[nexti][nextisementara]= ((RHO*feromon[nextI][nextIsementara])+ (1000/getJarak[nextI][nextIsementara])); Selain menyimpan node selanjutnya yang didapat dari pencarian probabilitas, feronom dari node i menuju node j juga perlu di update. Untuk

56 40 menupdate feronome atau jejak yang dilalui semut maka nilai Rho dikalikan dengan nilai feronom awal kemudian ditambahkan dengan nilai visibilitas. for (int iupdt = 0; iupdt < jumchecklist; iupdt++) { for (int jupdt = 0; jupdt < jumchecklist; jupdt++) { if (iupdt == jupdt) { feromon[iupdt][jupdt] = 0; }else if(feromon[iupdt][jupdt]!= 0){ feromon[iupdt][jupdt]=feromon[iupdt][jupdt]; feromon[jupdt][iupdt]=feromon[iupdt][jupdt]; }else { feromon[iupdt][jupdt] = 0.01; }}} Setelah mengupdate nilai feronom sesuai dengan rute yang dilalui oleh semut ke m, maka data feronom akan diupdate. Dimana nilai feronom yang dilewati oleh semut nilainya akn disesuaikan dengan nilai feronom yang sudah diupdate sebelumnya, sedangkan yang tidak dilewati maka nilai akan tetap Langkah langkah tersebut dilakukan berulang hingga semua node berhasil dikunjungi oleh semut ke m. Lalu semut yang lain juga akan mulai melakukan pencarian rute dengan cara yang sama namun dengan node awal yang berbeda. for(int c=0; c<jumchecklist; c++){ int no=c+1; urutan=urutan+no+"."+simpantitik[tabu[c]]+" "; } Setiap selesai mencari seluruh node dan sudah melakukan pencarian sebanyak iterasi, maka hasil ddari pencarian tersebut akan disimpan. Bagian ini merupakan penyimpanan urutan node yang disimpan dalam variabel urutan. Data node yang disimpan kedalam urutan adalah data dari simpantitik yang merupakan sebuah kode toko. for(int r=1; r<jumchecklist; r++){ rute[r]= CariJarak.getJarakKoneksi(). get_rute(simpantitik[tabu[r-1]], simpantitik[tabu[r]]); hitungtotal[r]=carijarak.getjarakkoneksi(). cari_jarak(simpantitik[tabu[r-1]], simpantitik[tabu[r]]); hittot[r]=double.parsedouble(hitungtotal[r]); jaraktotal=jaraktotal+hittot[r]; "+

57 41 simpantitik[tabu[r]] +" melewati : "+rute[r]); rutefix=rutefix+"\n"+"dari "+simpantitik[tabu[r-1]]+" ke "+simpantitik[tabu[r]] +" melewati : "+rute[r]; } Selanjunya adalah menyimpan data rute yang akan digunakan untuk mencapai node atau toko toko yang didapat oleh semut. Untuk mendapatkan data rute yang dilalui dibutuhkan kode toko awal dan kode toko tujuan. Dimana dua atribut tersebut digunakan untuk mendapat data rute dari database. Selanjutnya data rute akan dirangkai kedalam rutefix. Dimana rutefix merupakan rangkaian ryte dari gudang hingga toko terakhir yang akan dikunjungi. for(int tk=0; tk<jumchecklist; tk++){ toko[tk]=carijarak.getjarakkoneksi().get_toko(simpantitik[tabu[tk]]); int no = tk+1; namatoko=namatoko+no+". "+toko[tk]+"\n"; } Selanjutnya data nama toko juga disimpan kedalam variabel nama toko, dimana data nama toko didapat dari database. Untuk mendapat nama toko diperlukan kode toko untuk mencari nama toko dalam database. Selanjutnya nama toko yang didapat dimasukan kedalam variabel namatoko. JarakTotalAkhir[sem]=jaraktotal; urutanakhir[sem]=urutan; ruteakhir[sem]=rutefix; namatokoakhir[sem]=namatoko; Setelah data dari jaraktotal, urutantoko, rutefix dan nama Toko diperoleh maka data tersebut dimasukan kedalam array. Dimana array tersebut disesuaikan dengan data semut. Sehingga data yang disimpan adalah data milik semut 1 hingga semut ke 5. Oleh karena itu proses yang dilakukan dari Gambar 4.5 meletakkan semut hingga proses pada Gambar 4.15 data fix akan dilakukan sebanyak jumlah semut yang sudah ditentukan pada gambar 4.1 Inisialisasi. Maka proses ini akan dilakukan dari semut ke 1 hingga semut ke 5. Sehingga setiap semut akan memiliki hasil rute, jarak, nama toko dan urutan yang berbeda beda. for(int s = 1; s<=msemut; s++){ if(jaraktotalfix > JarakTotalAkhir[s] &&JarakTotalAkhir[s]!=0){

58 42 jaraktotalfix=jaraktotalakhir[s]; urutanfix=urutanakhir[s]; namatokofix=namatokoakhir[s]; rutefinal = ruteakhir[s]; }else{ jaraktotalfix=jaraktotalfix; urutanfix=urutanfix; namatokofix=namatokofix; rutefinal=rutefinal; }} Setelah seluruh semut melakukan perjalanan dan menemukan rutenya masing masing dalam mengelilingi node, maka akan ditentukan nilai yang terkecil. Dimana nilai jarak menjadi acuan untuk dipilihnya rute untuk dilalui. Hal ini merupakan Langkah selanjutnya dari algoritma semut dalam menentukan rute. Program akan mencari jarak terpendek dari kelima semut yang disebar, dan jarak yang paling pendek akan digunakan sebagai rute yang dipilih. Sehingga data semut ke m akan menjadi hasil akhir dari pencarian rute dalam pendistribusian barang. System.out.println("Hasil akhir"); System.out.println("Jarak: "+jaraktotalfix); System.out.println("uruan:"); System.out.println(urutanFix); System.out.println("nama Toko: "); System.out.println(namaTokoFix); System.out.println("Rute: "); System.out.println(ruteFinal); Langak terakhir adalah mencetak hasil dari pencarian rute, dan dengan demikian pencarian rute distribusi barang dengan pengopimalisasian algoritma semut berakhir. Data yang telah diperoleh tersebut kemudian disimpan kedalam database. Diana data tersebut dapat digunakan sebagai lampiran dan acuan dalam melakukan pendistribusian barang.

59 Implementasi Tampilan Antar Muka Implementasi Antar Muka Awal (Home) Antar muka awal (Home) merupakan halaman pertama yang akan muncul saat pertama kali program dijalankan. Halaman tersebut menampilkan nama sistem dan juga logo dari Circle K dibagian atas. Selain itu terdapat juga 2 tombol cari rute dan juga lihat data toko. Tombol cari ute akan mengantar kedalam antar muka cari rute dan lihat data toko akan menampilkan antar muka lihat data toko.terdapat juga ikon keluar yang akan menutup sistem jika ikon tersebut dipilih. Gambar 4. 1 Tampilan Home Implementasi Antar Muka Cari Rute Antar Muka cari rute adalah halaman yang ditampilkan jika dari antar muka awal dipilih tombol cari rute. Antar muka ini adalah antar muka yang disediakan untuk mencari rute pendistribusian barang. Antar muka ini dapat dilihat pada gambar 4.2

60 44 Gambar 4. 2 Antar Muka Cari Data Pada antar muka ini erdapat combobox yang berisikan nama toko circle k yang terdapat di region yogyakarta. Untuk mencari rute toko maka pengguna akan memilih toko yang terdapat pada combo box dan kemudian nama-nama toko yang dipilih akan masuk kedalam tabel. Berikut adalah kode untuk memasukan nama - nama toko yang dipilih kedalam tabel. if(combonamatoko.getselecteditem().tostring().equals("pilih toko")){ //Nothing to do }else{ simpantitik[0]="yog0215"; nama = (String) combonamatoko.getselecteditem(); try { System.out.println(nama); List<DataRute> ListData = CariJarak.getJarakKoneksi().cariToko(nama); DataRute rt = new DataRute();

61 45 DefaultTableModel model = (DefaultTableModel) tabletoko.getmodel(); tabletoko.setmodel(model); model.addrow(new Object[]{ListData.get(0).getKodeToko(), ListData.get(0).getNamaToko()}); } catch (Exception ex) {Logger.getLogger(FormCariRute.class.getName()).log(Level.SEVERE, null, ex); } jumchecklist=jumchecklist+1; } combonamatoko.removeitem(nama); Kode ini akan memerintahkan sistem untuk memasukan data dari toko yang dipilih dari combo box untuk masuk kedalam tabletoko. Setelah semua toko yang akan dituju dimasukan kedalam tabel maka akan digunakan perintah cari rute untuk mencari rute yang akan menuju ke toko toko yang sudah dipilih. Kode untuk mencari rute sudah dijelaskan pada bagian Implementasi Algoritma semut. Jika dalam sstem belum ada toko yang dipilih maka sistem akan menampilkan pemberitahuan seperti berikut Gambar 4. 3 Pemberitahuan Dan jika sudah ada toko yang dipilih, namun baru 1 toko maka akan muncul pemberitahuan seperti berikut ini Gambar 4. 4 Pemberitahuan(2)

62 46 Selanjutnya jika sistem telah berhasil mendapatkan rute maka data tersebut akan disimpan kedalam database. Berikut adalah kode untuk menyimpan data hasil tersebut. PreparedStatement pstmt = null; try{ conn.setautocommit(false); String sql = "insert into hasil values(?,?,?,?,?)"; pstmt = conn.preparestatement(sql); pstmt.setstring(1, rute.getnomer()); pstmt.setstring(2, rute.gettgl_eksekusi()); pstmt.setstring(3, rute.getrute()); pstmt.setdouble(4, rute.getjarak()); pstmt.setstring(5, rute.gettoko()); pstmt.executequery(); conn.commit(); }catch(sqlexception ex){ conn.rollback(); throw ex; } Perintah tersebut akan menyimpan data hasil dari pencarian rute kedalam database hasil. Selain menyimpan hasil tersebut pada bagian ini juga dapat mencetak hasil dari pencarian tersebut dengan perintah berikut: String reportsource = "./laporan/reporthasilrutelndscp.jasper"; Map<String,Object> params = new HashMap<String,Object>(); try { JasperPrint jasperprint = JasperFillManager.fillReport(reportSource,params,kon); JasperViewer.viewReport(jasperPrint,false); } catch (JRException ex) { ex.printstacktrace(); }

63 Implementasi Antar Muka Lihat Data Antar muka Lihat Data adalah halaman yang akan menunjukan data toko yang terdapat pada sisem ini. Selain menampilkan datatoko yang dimiliki, sistem ini juga merupakan halaman yang dapat mengarahkan ke antar muka lain, yaitu Tambah Data, Perbarui Data dan Hapus Data. Antar muka Lihat Data dapat dilihat pada gambar 4.5 Gambar 4. 5 Antar Muka Lihat Data Kode program untuk menampilkan data toko yang terdapat dalam sistem ini adalah sebagai berikut: public List<DataRute> tampiltoko() throws SQLException, Exception { PreparedStatement statement = null; ResultSet result = null; try { conn.setautocommit(false); statement = conn.preparestatement("select kode_toko," + "nama_toko " + "from toko_ck order by kode_toko"); result = statement.executequery();

64 48 List<DataRute> datarute = new ArrayList<DataRute>(); while (result.next()) { DataRute rute = new DataRute(); rute.setkodetoko(result.getstring("kode_toko")); rute.setnamatoko(result.getstring("nama_toko")); datarute.add(rute); } conn.commit(); return datarute; } catch (SQLException exception) { throw exception; } finally { try { conn.setautocommit(true); if (result!= null) { result.close();} if (statement!= null) { statement.close();} } catch (SQLException exception) { throw exception; }}} Diatas merupakan kode untuk menampilkan data toko kedalam antar muka Lihat Data. Selain melihat data toko pada antar muka ini terdapat tombol Tambah data yang akan mengantar pada antar muka tambah data. Lalu terdapat tombol Perbarui data yang akan mengantar pada antarmuka perbarui data. Terdapat juga tombol hapus data yang akan mengantar pada antar muka hapus data. Selain itu juga terdapat tombol kembali yang akan mengantar kembali ke antar muka Lihat Data Implementasi Antar Muka Tambah Data Antar muka ini merupakan antar muka yang menampilkan halaman tambah data, dimana tambah data berfungsi untuk menambahkan data toko jika terdapat toko circle k baru di region Yogyakarta. Selain menambahkan data toko baru pada halaman ini juga akan menambahkan data rute antara toko baru menuju ke toko yang sudah ada sebelumnya. Berikut adalah gambar dari antar muka tambah data

65 49 Gambar 4. 6 antar muka tambah data Berikut ini adalah kode untuk menambahkan data toko baru: public void tambahtoko(toko tk) throws SQLException{ PreparedStatement pstmt; try{ conn.setautocommit(false); String sql = "insert into toko_ck values(?,?,?,?,?)"; pstmt = conn.preparestatement(sql); pstmt.setstring(1, tk.getno_toko()); pstmt.setstring(2, tk.getkode_toko()); pstmt.setstring(3, tk.getnama_toko()); pstmt.setstring(4, tk.getalamat_toko()); pstmt.setstring(5, tk.getkoor_toko()); pstmt.executequery(); conn.commit(); }catch (SQLException ex){ conn.rollback(); throw ex; }}

66 50 Kode diatas adalah kode untuk menambahkan data toko baru, kemudian jika data toko baru berhasil ditambahkan maka sistem akan menampilkan kode berikut ini Gambar 4. 7 Pemberitahuan berhasil menambah data toko Gambar 4.7 menunjukan pesan bahwa sistem berhasil menyimpan data mealui kode yang dibahas sebelumnya. Selain itu sistem dapat menyimpan rute antar toko baru dan toko yang sudah ada sebelumnya. Berikut adalah kode untuk menyimpan data rute tersebut: public void tambahrute(rute rt) throws SQLException{ PreparedStatement pstmt; try{ conn.setautocommit(false); String sql = "insert into rute_ck values(?,?,?,?,?)"; pstmt = conn.preparestatement(sql); pstmt.setstring(1, rt.getno()); pstmt.setstring(2, rt.getkodeawal()); pstmt.setstring(3, rt.getkodetujuan()); pstmt.setdouble(4, rt.getjarak()); pstmt.setstring(5, rt.getrute()); pstmt.executequery(); conn.commit(); }catch (SQLException ex){ conn.rollback(); throw ex; }} Selanjutnya jika data rute telah berhasil disimpan menggunakan kode diatas maka akan muncul psan berikut: Gambar 4. 8 Pemberitauan rute berhasil ditambah

67 Implementasi Antar Muka Perbarui Data Antar muka ini menampilkan halaman perbarui data yang berfungsi untuk memperbarui data toko dan rute yang sudah ada. Hal ini bisa saja dikarenakan kesalahan penginputan data sebelumnya atau juga perpindahan toko ke tempat lain. Berikut ini merupakan gambar dari antar muka perbarui data: Gambar 4. 9 Antar Muka Perbarui Data Sebelum memperbari data maka pengguna harus memilih nama toko yang akan diperbarui dari combo box, berikut adalah kode untuk menampilkan toko yang dipilih dari combo box: nama = (String) combonamatoko.getselecteditem(); System.out.println(nama); kode = nama.substring(0, 8).replace(" ", ""); System.out.println(kode); try { textkodelama.settext(kode); labelkodenamatoko.settext(nama.substring(0, 19)); textnamalama.settext(nama.substring(19)); textalamatlama.settext(kontrolupdate.getkoneksikontrolupdate().alamattoko(k ode));

68 52 textkoorlama.settext(kontrolupdate.getkoneksikontrolupdate().koortoko(kode); } catch (Exception ex) { Logger.getLogger(FormCariRute.class.getName()).log(Level.SEVERE, null, ex); } Setelah toko dipilih dan data dari toko ditampilkan maka selanjutnya adalah memperbarui data dari toko tersebut. Berikut adalah kode untuk memperbarui data toko: public void updatetoko(toko tk) throws SQLException{ Statement stmnt; ResultSet rsult; String nama = tk.getnama_toko(); String kode = tk.getkode_toko(); String alamat = tk.getalamat_toko(); String koor = tk.getkoor_toko(); String sql = "update toko_ck set nama_toko = '"+nama+"', alamat = '"+alamat+"', koordinat = '"+koor+"' where kode_toko = '"+kode+"'"; stmnt = conn.createstatement(); stmnt.executeupdate(sql); conn.commit(); conn.close(); } Selanjutnya jika kode untuk memperbarui data toko diatas berhasil maka akan muncul pesan seperti pada gambar 4.10 berikut: Gambar Pemberitauan Data berhasil diperbarui Selanjutnya setelah mengupdate data toko maka diperlukan juga untuk mengupdate data rute dari toko baru yang baru saja diupdate ke toko yang lainya. Berikut adalah kode untuk memperbarui data rute tersebut: public void updaterute(rute rt) throws SQLException{ Statement stmnt; String kode_awal = rt.getkodeawal(); String kode_tujuan = rt.getkodetujuan();

69 53 double jarak = rt.getjarak(); String rute = rt.getrute(); String sql = "update rute_ck set jarak = "+jarak+", rute_tujuan = '"+rute+"' where kode_toko_awal = '"+kode_awal+"'" + " and kode_tujuan = '"+kode_tujuan+"'"; stmnt = conn.createstatement(); stmnt.executeupdate(sql); conn.commit(); conn.close(); } Kode tersbut merupakan kode untuk memperbarui data rute, dimana jika kode tersebut berhasil dijalankan oleh sistem maka akan muncul pesan seperti pada gambar 4.11 Gambar Pemberitauan rute berhasil diperbarui Implementasi Antar Muka Hapus Data Antar muka hapus data adalah antar muka yang menampilkan halaman hapus data. Antar muka ini berfungsi untuk menghapus data toko yang sudah tidak digunakan. Hal ini bisa terjadi karena kesalahan penginputan ataupun toko yang sudah tutup. Berikut adalah gambar dari antar muka hapus data: Gambar Antar muka hapus data

70 54 Gambar diatas adalah antar muka hapus data, dimana combo box digunakan untuk memilih toko yang akan dihapus. Kode untuk combo box dan menampilkan data yang dipilih adalah sebagai berikut if(combotoko.getselecteditem().equals("pilih toko")){ textkodetoko.settext(""); textnamatoko.settext(""); textkoortoko.settext(""); textalamattoko.settext(""); }else{ String nama = (String) combotoko.getselecteditem(); String kode = nama.substring(0, 8).replace(" ", ""); textkodetoko.settext(kode); textnamatoko.settext(nama); String koor = null; String alamat = null; try { alamat=kontrolupdate.getkoneksikontrolupdate().alamattoko(kode); koor = KontrolUpdate.getKoneksiKontrolUpdate().KoorToko(kode); } catch (SQLException ex) { Logger.getLogger(FormHapusToko.class.getName()).log(Level.SEVERE, null, ex); } textalamattoko.settext(alamat); textkoortoko.settext(koor); btnhapus.enable();} Setelah data ditampilkan maka pengguna akan menghapus data tersebut, berikut adalah kode untuk menghapus data public void HapusRuteAwal(String kode) throws SQLException{ Statement stmnt; String sql="delete from rute_ck where kode_toko_awal = '"+kode+"'"; stmnt = conn.createstatement(); stmnt.executequery(sql); conn.commit(); conn.close();} public void HapusRuteTujuan(String kode) throws SQLException{ Statement stmnt; String sql="delete from rute_ck where kode_tujuan = '"+kode+"'"; stmnt = conn.createstatement();

71 55 stmnt.executequery(sql); conn.commit(); conn.close(); } public void HapusToko(String kode) throws SQLException{ Statement stmnt; String sql="delete from toko_ck where kode_toko = '"+kode+"'"; stmnt = conn.createstatement(); stmnt.executequery(sql); conn.commit(); Saat kode tersebut akan dijalankan oleh sistem maka akan muncul sebuah pesan seperti pada gambar 4.13 berikut: Gambar Persetujuan menghapus data Jika pengguna menyetuji untuk menghapus data maka selanjutnya akan ada sebuah pemberitauan seperti pada gambar 4.14 berikut: Gambar Pemberitahuan data berhasil dihapus Jika data tidak jadi dihapus maka akan kembali dalam konisi awal dari halaman hapus data.

72 Analisa Hasil Pengujian BAB V PENGUJIAN SISTEM Pada tahap ini akan dilakukan pengujian terhadap sistem dengan cara membandingkan hasil pencarian menggunakan sistem dan secara konvensional Analisa Hasil untuk Pencarian Rute dengan Tujuan 3 Toko a. Hasil Pertama Data dibawah adalah data yang digunakan untuk pengujian pertama dimana hasil yang didapat merupakan penghitungan secara konvensional. Dimana penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Gudang Tujuan 1 Tujuan 2 Tujuan 3 Jarak YOG0215 YOG0213 YOG0116 YOG YOG0215 YOG0213 YOG0111 YOG YOG0215 YOG0116 YOG0213 YOG Tabel 5. 1 Tabel Hasil Pencarian Konvensional Pertama Gambar 5. 1 Hasil Pencarian Pertama oleh Sistem Gambar 5. 2 Rute yang dilalui oleh pencarian pertama

73 57 Data pada Gambar 5.1 adalah data yang dicari menggunakan sistem. Berdasarkan data pada Tabel 5.1 dan gambar 5.1 hasil yang diperoleh sistem dan penghitungan secara konvensional mendapatkan hasil yang sama yaitu melewati YOG0215 YOG0213 YOG0116 YOG0111 dengan jarak yang ditempuh adalah 9900m. b. Hasil Kedua Gudang Tujuan 1 Tujuan 2 Tujuan 3 Jarak YOG0215 YOG0228 YOG0229 YOG YOG0215 YOG0228 YOG1101 YOG YOG0215 YOG0229 YOG0228 YOG YOG0215 YOG0229 YOG1101 YOG YOG0215 YOG1101 YOG0228 YOG YOG0215 YOG1101 YOG0229 YOG Tabel 5. 2 Hasil Pencarian konvensional kedua Data diatas adalah data yang digunakan untuk pengujian kedua dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Gambar 5. 3 Hasil Pencarian Kedua oleh Sistem Gambar 5. 4 Rute yang dilalui oleh pencarian kedua

74 58 Sedangkan pada Gambar 5.2 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Dari Gambar 5.2 dan Tabel 5.3 dapat dilihat bahwa hasil yang didapat adalah sama. c. Hasil Ketiga Gudang Tujuan 1 Tujuan 2 Tujuan 3 Jarak YOG0215 YOG0101 YOG0107 YOG YOG0215 YOG0101 YOG0217 YOG YOG0215 YOG0107 YOG0101 YOG YOG0215 YOG0107 YOG0217 YOG YOG0215 YOG0217 YOG0101 YOG YOG0215 YOG0217 YOG0107 YOG Tabel 5. 3 Hasil pencarian Konvensional Ketiga Data diatas adalah data yang digunakan untuk pengujian ketiga dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Gambar 5. 5 Hasil Pencarian Ketiga Oleh Sistem Gambar 5. 6 Rute yang dilalui oleh pencarian Ketiga

75 59 Sedangkan pada Gambar 5.3 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Dari Gambar 5.3 dan Tabel 5.5 dapat dilihat bahwa hasil yang didapat adalah sama. d. Hasil Keempat Gudang Tujuan 1 Tujuan 2 Tujuan 3 Jarak YOG0215 YOG0210 YOG0211 YOG YOG0215 YOG0210 YOG0214 YOG YOG0215 YOG0211 YOG0210 YOG YOG0215 YOG0211 YOG0214 YOG YOG0215 YOG0214 YOG0210 YOG YOG0215 YOG0214 YOG0211 YOG Tabel 5. 4 Hasil Pencarian konvensional Keempat Data diatas adalah data yang digunakan untuk pengujian keempat dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Gambar 5. 7 Hasil Pencarian Keempat oleh Sistem Gambar 5. 8 Rute yang dilalui oleh pencarian Keempat

76 60 Sedangkan pada Gambar 5.4 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Dari Gambar 5.4 dan Tabel 5.7 dapat dilihat bahwa hasil yang didapat adalah sama. e. Hasil Kelima Gudang Tujuan 1 Tujuan 2 Tujuan 3 Jarak YOG0215 YOG0111 YOG0112 YOG YOG0215 YOG0111 YOG0113 YOG YOG0215 YOG0112 YOG0111 YOG YOG0215 YOG0112 YOG0113 YOG YOG0215 YOG0113 YOG0111 YOG YOG0215 YOG0113 YOG0112 YOG Tabel 5. 5 Hasil Pencarian Konvensional Kelima Data diatas adalah data yang digunakan untuk pengujian kelima dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Gambar 5. 9 Hasil Pencarian Kelima oleh Sistem Gambar Rute yang dilalui oleh pencarian Kelima

77 61 Sedangkan pada Gambar 5.5 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Dari Gambar 5.5 dan Tabel 5.9 dapat dilihat bahwa hasil yang didapat adalah sama Analisa Hasil untuk Pencarian Rute dengan Tujuan 4 Toko a. Hasil Pertama Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Jarak YOG0215 YOG0301 YOG0201 YOG0205 YOG YOG0215 YOG0301 YOG0205 YOG0207 YOG YOG0215 YOG0301 YOG0207 YOG0201 YOG YOG0215 YOG0301 YOG0207 YOG0205 YOG Tabel 5. 6 Tabel Hasil Pencarian Rute Secara Konvensional Keenam Data diatas adalah data yang digunakan untuk pengujian keenam dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Pada tabel 5.6 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Gambar Hasil Pencarian Rute Keenam Menggunakan Sistem Gambar Rute yang didapat dalam pencarian Keenam

78 62 Sedangkan pada Gambar 5.11 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Pada pencarian konvensional hasil urutan rute yang didapat adalah YOG0215 (Gudang) YOG0301 YOG0207 YOG0201 YOG0205 dengan jarak m. Sedangkan sistem menemukan dengan hasil jarak dan urutan yang sama. Sehingga pada hasil pengujian pertama hasil adalah sama. b. Hasil Kedua Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Jarak YOG0215 YOG0209 YOG0117 YOG0213 YOG YOG0215 YOG0209 YOG0117 YOG0216 YOG YOG0215 YOG0209 YOG0216 YOG0117 YOG YOG0215 YOG0209 YOG0216 YOG0213 YOG Tabel 5. 7 Hasil Pencarian Secara Konvensional Ketujuh Data diatas adalah data yang digunakan untuk pengujian ketujuh dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna merah adalah data yang didapat secara konvensional, dan yang berwarna kuning adalah hasil dari sistem. Pada tabel 5.7 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.7 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Ketujuh oleh Sistem

79 63 Gambar Rute yang didapat dalam pencarian Ketujuh Hasil Pencarian secara manual rute terpendek adalah G-A-B-D-C dengan jarak meter dimana G adalah YOG0215 (Gudang) B adalah YOG0209 A adalah YOG0117 D adalah YOG0216 dan C adalah YOG0213. Sedangkan sistem menemukan rute dan jarak seperti pada gambar diatas. Sehingga pada percobaan kedua sistem tidak mendapat rute terpendek c. Hasil Ketiga Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Jarak YOG0215 YOG0111 YOG0113 YOG0112 YOG YOG0215 YOG0111 YOG0113 YOG0114 YOG YOG0215 YOG0111 YOG0114 YOG0112 YOG Tabel 5. 8 Hasil Pencarian Rute Secara Konvensional Kedelapan Data diatas adalah data yang digunakan untuk pengujian kedelapan dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada, dan didapat rute terpendek pada baris yang diberi warna biru. Pada tabel 5.8 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.13 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Kedelapan oleh Sistem

80 64 Gambar Rute yang didapat dalam pencarian Kedelapan Berdasarkan Tabel 5.8 dan Gambar 5.8 diatas sistem dan penghitungan konvensional memiliki hasil yang sama. d. Hasil keempat Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Jarak YOG0215 YOG0207 YOG0210 YOG0205 YOG YOG0215 YOG0207 YOG0210 YOG0211 YOG YOG0215 YOG0207 YOG0211 YOG0205 YOG YOG0215 YOG0207 YOG0211 YOG0210 YOG YOG0215 YOG0210 YOG0205 YOG0207 YOG YOG0215 YOG0210 YOG0205 YOG0211 YOG Tabel 5. 9 Hasil Pencarian Secara Konvensional Kesembilan Data diatas adalah data yang digunakan untuk pengujian kesembilan dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna biru berarti data yang dicari sistem dan data penghitungan secara konvensional adalah sama. Pada tabel 5.9 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.15 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat.

81 65 Gambar Hasil Pencarian Kesembilan oleh Sistem Gambar Rute yang didapat dalam pencarian Kesembilan Berdasarkan pada Tabel 5.9 dan Gambar 5.17 hasil pencarian secara konvensional dan secara manual adalah sama. e. Hasil kelima Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Jarak YOG0215 YOG0223 YOG0222 YOG0224 YOG YOG0215 YOG0223 YOG0224 YOG0221 YOG YOG0215 YOG0223 YOG0224 YOG0222 YOG YOG0215 YOG0224 YOG0221 YOG0222 YOG YOG0215 YOG0224 YOG0221 YOG0223 YOG Tabel Hasil Pencarian Secara Konvensional Kesepuluh Data diatas adalah data yang digunakan untuk pengujian kesepuluh dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna biru berarti data yang dicari sistem dan data penghitungan secara konvensional adalah sama. Pada tabel 5.10 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data

82 66 rute terpendek yang didapat. Sedangkan pada Gambar 5.10 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Sistem Kesepuluh Gambar Rute yang didapat pada pencarian kesepuluh Berdasarkan pada Tabel 5.10 dan Gambar 5.19 hasil pencarian secara konvensional dan secara manual adalah sama Analisa Hasil untuk Pencarian Rute dengan Tujuan 5 Toko a. Hasil Pertama Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Tujuan 5 Jarak YOG0215 YOG0104 YOG0109 YOG0102 YOG0101 YOG YOG0215 YOG0104 YOG0109 YOG0102 YOG0111 YOG YOG0215 YOG0104 YOG0109 YOG0111 YOG0101 YOG YOG0215 YOG0104 YOG0109 YOG0111 YOG0102 YOG Tabel Hasil Pencarian Konvensional Kesebelas Data diatas adalah data yang digunakan untuk pengujian kesebelas dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna biru berarti data yang dicari sistem dan data

83 67 penghitungan secara konvensional adalah sama. Pada tabel 5.11 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Gambar Hasil Pencarian Kesebelas oleh Sistem Gambar Rute yang didapat pada pencarian Kesebelas Berdasarkan pada Tabel 5.11 dan Gambar 5.21 hasil pencarian secara konvensional dan secara manual adalah sama. b. Hasil Kedua Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Tujuan 5 Jarak YOG0215 YOG0209 YOG0213 YOG0117 YOG0116 YOG YOG0215 YOG0213 YOG0209 YOG0117 YOG0114 YOG YOG0215 YOG0213 YOG0209 YOG0117 YOG0116 YOG Tabel Hasil pencarian Konvensional Keduabelas Data diatas adalah data yang digunakan untuk pengujian keduabelas dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data

84 68 diatas baris yang berwarna merah adalah data yang didapat secara konvensional, dan yang berwarna kuning adalah hasil dari sistem. Pada tabel 5.12 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.23 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Keduabelas oleh Sistem Gambar Rute yang didapat pada pencarian Keduabelas Berdasarkan pada Tabel 5.24 dan Gambar 5.23 hasil pencarian secara konvensional dan secara manual adalah Tidak sama. c. Hasil Ketiga Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Tujuan 5 Jarak YOG0215 YOG0216 YOG0201 YOG0207 YOG0301 YOG YOG0215 YOG0216 YOG0201 YOG0207 YOG0205 YOG YOG0215 YOG0216 YOG0205 YOG0301 YOG0201 YOG Tabel Tabel hasil pencarian Konvensional Ketigabelas

85 69 Data diatas adalah data yang digunakan untuk pengujian ketigabelas dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna merah adalah data yang didapat secara konvensional, dan yang berwarna kuning adalah hasil dari sistem. Pada tabel 5.13 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.25 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Ketigabelas Oleh Sistem Gambar Rute yang didapat pada pencarian Ketigabelas Berdasarkan pada Tabel 5.13 dan Gambar 5.25 hasil pencarian secara konvensional dan secara manual adalah Tidak sama.

86 70 d. Hasil Keempat Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Tujuan 5 Jarak YOG0215 YOG0223 YOG0228 YOG0229 YOG0227 YOG YOG0215 YOG0223 YOG0229 YOG0224 YOG0227 YOG YOG0215 YOG0223 YOG0229 YOG0224 YOG0228 YOG Tabel Tabel hasil pencarian Konvensional Keempatbelas Data diatas adalah data yang digunakan untuk pengujian kesebelas dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna biru berarti data yang dicari sistem dan data penghitungan secara konvensional adalah sama. Pada tabel 5.11 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Gambar Hasil Pencarian Keempatbelas Oleh Sistem Gambar Rute yang didapat pada pencarian Keempatbelas Berdasarkan pada Tabel 5.14 dan Gambar 5.27 hasil pencarian secara konvensional dan secara manual adalah sama. e. Hasil Kelima Gudang Tujuan 1 Tujuan 2 Tujuan 3 Tujuan 4 Tujuan 5 Jarak YOG0215 YOG0217 YOG0211 YOG0222 YOG0214 YOG YOG0215 YOG0217 YOG0211 YOG0222 YOG0221 YOG YOG0215 YOG0217 YOG0214 YOG0221 YOG0222 YOG YOG0215 YOG0217 YOG0214 YOG0222 YOG0211 YOG Tabel Hasil pencarian Konvensional Kelimabelas

87 71 Data diatas adalah data yang digunakan untuk pengujian kelimabelas dimana hasil yang didapat merupakan penghitungan secara konvensional. Penghitungan secara konvensional berarti menghitung semua kemungkinan yang ada. Pada data diatas baris yang berwarna merah adalah data yang didapat secara konvensional, dan yang berwarna kuning adalah hasil dari sistem. Pada tabel 5.15 tidak semua hasil pencarian secara konvensional ditampilkan, hanya beberapa data saja termasuk data rute terpendek yang didapat. Sedangkan pada Gambar 5.29 adalah gambar dari hasil pencarian rute menggunakan sistem yang dibuat. Gambar Hasil Pencarian Kelimabelas oleh Sistem Gambar Rute yang didapat pada pencarian Kelimabelas Berdasarkan pada Tabel 5.15 dan Gambar 5.29 hasil pencarian secara konvensional dan secara manual adalah Tidak sama. 5.2 Analisis Perbandingan Jumlah Semut Perbandingan Jumlah Semut Pada bagian ini akan dibandingkan hasil dari sistem jika jumlah semut yang digunakan adalah 2, 3 dan 5.

88 72 a. Percobaan Pertama Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG YOG YOG YOG0205 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Pertama dengan 2 semut Pada percobaan pertama dengan jumlah semut 2 didapat hasil yang sama dengan hasil yang seharusnya didapat, yaitu jarak meter dan urutan toko yang dilaluipun sama. Semut = 3 Gambar Hasil Percobaan Pertama dengan 3 semut Pada percobaan pertama dengan jumlah semut 3 didapat hasil yang sama dengan hasil yang seharusnya didapat, yaitu jarak meter dan urutan toko yang dilaluipun sama. Semut = 5 Gambar Hasil Percobaan Pertama dengan 5 semut

89 73 Pada Percobaan dengan jumlah semut 5 pun mendapat hasil yang sama. Ketiga hasil mendapat jarak dan tujuan yang sama, jarak yang diperoleh adalah meter. b. Percobaan Kedua Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG0209 YOG0117 YOG0216 YOG0213 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Kedua dengan 2 semut Pada percobaan kedua dengan jumlah semut 2 mendapatkan hasil jarak meter, sedangkan jarak terpendek adalah meter. Semut = 3 Gambar Hasil Percobaan Kedua dengan 3 semut Pada percobaan kedua dengan jumlah semut 3 mendapatkan hasil jarak meter, sedangkan jarak terpendek adalah meter. Semut = 5 Gambar Hasil Percobaan Kedua dengan 5 semut

90 74 Pada Percobaan kali ini ketiga hasil mendapat jarak dan tujuan yang sama, jarak yang diperoleh adalah meter, walaupun jarak tersebut bukanlah jarak terpendek. c. Percobaan Ketiga Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG0111 YOG0113 YOG0114 YOG0112 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Ketiga dengan 2 semut Pada percobaan ketiga dengan jumlah semut 2 mendapat hasil jarak sedangkan rute terpendek adalah meter. Semut = 3 Gambar Hasil Percobaan Ketiga dengan 3 semut Pada percobaan ketiga dengan jumlah semut 3 mendapat hasil jarak sedangkan rute terpendek adalah meter. Semut = 5 Gambar Hasil Percobaan Ketiga dengan 5 semut

91 75 Pada percobaan dengan jumlah semut 5 mendapatkan hasil jarak meter, hasil tersebut merupakan rute dengan jarak terpendek. Sehingga pada percobaan kali ini ketiga hasil mendapat jarak dan tujuan yang berbeda. Dengan jumlah semut 2 dan 3 mendapat jarak sedangkan dengan jumlah 5 semut sistem mendapat jarak terpendek yaitu d. Percobaan Keempat Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG0207 YOG0211 YOG0205 YOG0210 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Keempat dengan 2 semut Pada percobaan keempat dengan jumlah semut 2 mendapat hasil jarak hasil tersebut merupakan jarak terpendek. Sehingga pada percobaan kali ini berhasil mendapat rute terpendek. Semut = 3 Gambar Hasil Percobaan Keempat dengan 3 semut Pada percobaan keempat dengan jumlah semut 3 mendapat hasil jarak hasil tersebut merupakan jarak terpendek. Sehingga pada percobaan kali ini berhasil mendapat rute terpendek. Semut = 5 Pada percobaan dengan jumlah semut 3 pun hasilnya sama dengan percobaan sebelumnya dan mendapat rute terpendek. Berikut adalah hasilnya:

92 76 Gambar Hasil Percobaan Keempat dengan 5 semut Pada Percobaan kali ini ketiga hasil mendapat jarak dan tujuan yang sama, jarak yang diperoleh adalah meter dan hasil tersebut merupakan jarak terpendek. e. Percobaan Kelima Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG0223 YOG0224 YOG0222 YOG0221 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Kelima dengan 2 semut Pada percobaan kelima dengan jumlah semut 2 mendapat hasil jarak Sehingga pada percobaan kali ini tidak mendapat rute terpendek. Semut = 3 Gambar Hasil Percobaan Kelima dengan 3 semut Pada percobaan kelima dengan jumlah semut 3 mendapat hasil jarak meter. Sehingga pada percobaan kali ini sistem berhasil mendapat rute terpendek.

93 77 Semut = 5 Gambar Hasil Percobaan Kelima dengan 5 semut Percobaan dengan jumlah semut 5 mendapat hasil yang sama dengan percobaan dengan semut 3. Sehingga Pada Percobaan kali ini ketiga hasil mendapat jarak dan tujuan yang berbeda. Dengan jumlah semut 2 sistem mendapat jarak sedangkan dengan jumlah 3 dan 5 semut sistem mendapat jarak terpendek yaitu f. Percobaan Keenam Rute terpendek yang seharusnya didapat adalah seperti berikut ini YOG YOG0104 YOG0109 YOG0111 YOG0101 YOG0102 dengan jarak meter. Dalam percobaan hasil yang didapat adalah sebagai berikut: Semut = 2 Gambar Hasil Percobaan Keenam dengan 2 semut Pada percobaan kelima dengan jumlah semut 2 mendapat hasil jarak Sehingga pada percobaan kali ini tidak mendapat rute terpendek. Semut = 3 Gambar Hasil Percobaan Keenam dengan 3 semut

VEHICLE ROUTING PROBLEM UNTUK DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT

VEHICLE ROUTING PROBLEM UNTUK DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT VEHICLE ROUTING PROBLEM UNTUK DISTRIBUSI BARANG MENGGUNAKAN ALGORITMA SEMUT Agung Hadhiatma 1*, Alexander Purbo 2* 1,2 Program Studi Informatika, Fakultas Sains dan Teknologi, Universitas Sanata Dharma

Lebih terperinci

ANALISIS ALGORITMA ANT SYSTEM (AS) PADA KASUS TRAVELLING SALESMAN PROBLEM (TSP)

ANALISIS ALGORITMA ANT SYSTEM (AS) PADA KASUS TRAVELLING SALESMAN PROBLEM (TSP) Buletin Ilmiah Math. Stat. dan Terapannya (Bimaster) Volume 04, No. 3 (2015), hal 201 210. ANALISIS ALGORITMA ANT SYSTEM (AS) PADA KASUS TRAVELLING SALESMAN PROBLEM (TSP) Cindy Cipta Sari, Bayu Prihandono,

Lebih terperinci

Desain Rute Terpendek untuk Distribusi Koran Dengan Algoritma Ant Colony System

Desain Rute Terpendek untuk Distribusi Koran Dengan Algoritma Ant Colony System Desain Rute Terpendek untuk Distribusi Koran Dengan Algoritma Ant Colony System Jan Alif Kreshna, Satria Perdana Arifin, ST, MTI., Rika Perdana Sari, ST, M.Eng. Politeknik Caltex Riau Jl. Umbansari 1 Rumbai,

Lebih terperinci

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf Bab 2 LANDASAN TEORI 2.1. Konsep Dasar Graf Definisi Graf Suatu graf G terdiri atas himpunan yang tidak kosong dari elemen elemen yang disebut titik atau simpul (vertex), dan suatu daftar pasangan vertex

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN BAB III ANALISIS DAN PERANCANGAN III.1. Analisis Sistem yang Berjalan Analisa sistem yang berjalan bertujuan untuk mengidentifikasi persoalanpersoalan yang muncul dalam pembuatan sistem, hal ini dilakukan

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Traveling Salesperson Problem selanjutnya dalam tulisan ini disingkat menjadi TSP, digambarkan sebagai seorang penjual yang harus melewati sejumlah kota selama perjalanannya,

Lebih terperinci

Penyelesaian Traveling Salesperson Problem dengan Menggunakan Algoritma Semut

Penyelesaian Traveling Salesperson Problem dengan Menggunakan Algoritma Semut Penyelesaian Traveling Salesperson Problem dengan Menggunakan Algoritma Semut Irfan Afif (13507099) Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung,

Lebih terperinci

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

UKDW BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah PT. TIKI (Abadi Express) adalah perusahaan jasa yang menerima pengiriman paket dan paket tersebut akan diantar kealamat tujuan. Para kurir yang bertugas mengantar

Lebih terperinci

Matematika dan Statistika

Matematika dan Statistika ISSN 1411-6669 MAJALAH ILMIAH Matematika dan Statistika DITERBITKAN OLEH: JURUSAN MATEMATIKA FMIPA UNIVERSITAS JEMBER Majalah Ilmiah Matematika dan Statistika APLIKASI ALGORITMA SEMUT DAN ALGORITMA CHEAPEST

Lebih terperinci

BAB IV ANALISIS MASALAH

BAB IV ANALISIS MASALAH BAB IV ANALISIS MASALAH 4.1 Tampilan Program Persoalan TSP yang dibahas pada tugas akhir ini memiliki kompleksitas atau ruang solusi yang jauh lebih besar dari TSP biasa yakni TSP asimetris dan simetris.

Lebih terperinci

ABSTRAK. Universitas Kristen Maranatha

ABSTRAK. Universitas Kristen Maranatha ABSTRAK Permasalahan transportasi yang terjadi akibat kenaikan harga bahan bakar minyak (BBM) yang tinggi membuat para pengguna jasa transportasi berpikir untuk dapat meminimalisasi biaya yang dikeluarkan.

Lebih terperinci

BAB 1 PENDAHULUAN. bagian dalam pekerjaan. Dalam melakukan pemasangan kabel perlu

BAB 1 PENDAHULUAN. bagian dalam pekerjaan. Dalam melakukan pemasangan kabel perlu BAB 1 PENDAHULUAN 1.1 Latar Belakang Bagi perusahaan kontraktor perumahan, pemasangan kabel menjadi bagian dalam pekerjaan. Dalam melakukan pemasangan kabel perlu dilakukan perencanaan urutan rumah yang

Lebih terperinci

Analisa Pencarian Jarak Terpendek Lokasi Wisata di Provinsi Sumatera Utara Menggunakan Algoritma Ant Colony Optimization (ACO)

Analisa Pencarian Jarak Terpendek Lokasi Wisata di Provinsi Sumatera Utara Menggunakan Algoritma Ant Colony Optimization (ACO) Analisa Pencarian Jarak Terpendek Lokasi Wisata di Provinsi Sumatera Utara Menggunakan Algoritma Ant Colony Optimization (ACO) Juanda Hakim Lubis Prorgram Studi Teknik Informatika, Fakultas Teknik, Universitas

Lebih terperinci

ANT COLONY OPTIMIZATION

ANT COLONY OPTIMIZATION ANT COLONY OPTIMIZATION WIDHAPRASA EKAMATRA WALIPRANA - 13508080 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung e-mail: w3w_stay@yahoo.com ABSTRAK The Ant Colony Optimization

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Traveling Salesman Problem (TSP) adalah permasalahan dimana seorang salesman harus mengunjungi semua kota yang ada dan kota tersebut hanya boleh dikunjungi tepat satu

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 TEORI GRAF 2.1.1 Definisi Definisi 2.1 (Munir, 2009, p356) Secara matematis, graf G didefinisikan sebagai pasangan himpunan (V,E), ditulis dengan notasi G = (V,E), yang dalam hal

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Pada awalnya komputer hanya digunakan untuk alat hitung saja tetapi seiring dengan perkembangan teknologi, komputer diharapkan mampu melakukan semua yang dapat

Lebih terperinci

JURNAL IT STMIK HANDAYANI

JURNAL IT STMIK HANDAYANI Nurilmiyanti Wardhani Teknik Informatika, STMIK Handayani Makassar ilmyangel@yahoo.com Abstrak Algoritma semut atau Ant Colony Optimization merupakan sebuah algoritma yang berasal dari alam. Algoritma

Lebih terperinci

Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek

Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek Perbandingan Algoritma Dijkstra Dan Algoritma Ant Colony Dalam Penentuan Jalur Terpendek Finsa Ferdifiansyah NIM 0710630014 Jurusan Teknik Elektro Konsentrasi Rekayasa Komputer Fakultas Teknik Universitas

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belaang Masalah untu mencari jalur terpende di dalam graf merupaan salah satu masalah optimisasi. Graf yang digunaan dalam pencarian jalur terpende adalah graf yang setiap sisinya

Lebih terperinci

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH

PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH Buletin Ilmiah Mat. Stat. Dan Terapannya (Bimaster) Volume 04, No. 1 (2015), hal 17 24. PENYELESAIAN TRAVELLING SALESMAN PROBLEM DENGAN METODE TABU SEARCH Fatmawati, Bayu Prihandono, Evi Noviani INTISARI

Lebih terperinci

ALGORITMA SEMUT PADA PENJADWALAN PRODUKSI JOBSHOP

ALGORITMA SEMUT PADA PENJADWALAN PRODUKSI JOBSHOP Media Informatika, Vol. 2, No. 2, Desember 2004, 75-81 ISSN: 0854-4743 ALGORITMA SEMUT PADA PENJADWALAN PRODUKSI JOBSHOP Zainudin Zukhri, Shidiq Alhakim Jurusan Teknik Informatika, Fakultas Teknologi Industri,Universitas

Lebih terperinci

IMPLEMENTASI ALOKASI JADWAL MATA PELAJARAN SMU MENGGUNAKAN ALGORITMA KOLONI SEMUT (AKS)

IMPLEMENTASI ALOKASI JADWAL MATA PELAJARAN SMU MENGGUNAKAN ALGORITMA KOLONI SEMUT (AKS) IMPLEMENTASI ALOKASI JADWAL MATA PELAJARAN SMU MENGGUNAKAN ALGORITMA KOLONI SEMUT (AKS) Devie Rosa Anamisa, S.Kom, M.Kom Jurusan D3 Teknik Multimedia Dan Jaringan-Fakultas Teknik Universitas Trunojoyo

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM III.1. Analisa Masalah Proses yang sedang berjalan dalam pencarian daerah rawan tindak kejahatan masih bersifat manual. Bentuk manual yaitu masyarakat yang akan bepergian

Lebih terperinci

SISTEM ALOKASI PENYIMPANAN BARANG PADA GUDANG

SISTEM ALOKASI PENYIMPANAN BARANG PADA GUDANG SISTEM ALOKASI PENYIMPANAN BARANG PADA GUDANG Achmad Hambali Jurusan Teknik Informatika PENS-ITS Kampus PENS-ITS Keputih Sukolilo Surabaya 60 Telp (+6)3-59780, 596, Fax. (+6)3-596 Email : lo7thdrag@ymail.co.id

Lebih terperinci

ABSTRAK. Kata kunci: Google Maps, travelling salesman problem, pencarian rute, Branch and Bound. vi Universitas Kristen Maranatha

ABSTRAK. Kata kunci: Google Maps, travelling salesman problem, pencarian rute, Branch and Bound. vi Universitas Kristen Maranatha ABSTRAK Google Maps adalah salah satu aplikasi yang dapat mengetahui pemetaan jalan, kondisi lalu lintas, dan penelusuran rute, jarak tempuh dan waktu tempuh ke tempat yang hendak kita tuju. Namun dengan

Lebih terperinci

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN BAB III ANALISA DAN PERANCANGAN III.1. Analisa Sistem Pencarian Lokasi ini merupakan masalah untuk mencari rute atau lintasan Lokasi yang bisa dilalui pengunjung yang ingin mengunjungi beberapa titik Universitas

Lebih terperinci

ANALISIS ALGORITMA SEMUT UNTUK PEMECAHAN MASALAH PENUGASAN

ANALISIS ALGORITMA SEMUT UNTUK PEMECAHAN MASALAH PENUGASAN ANALISIS ALGORITMA SEMUT UNTUK PEMECAHAN MASALAH PENUGASAN Zainudin Zukhri Jurusan Teknik Informatika, Fakultas Teknologi Industri, Universitas Islam Indonesia Kampus Terpadu UII Jl Kaliurang Km 14.5 Yogyakarta

Lebih terperinci

OPTIMISASI POLA DISTRIBUSI DENGAN LOGIKAFUZZY DAN ALGORITMA SEMUT PADA PT. SRI ANEKA PANGAN NUSANTARA TUGAS AKHIR SKRIPSI

OPTIMISASI POLA DISTRIBUSI DENGAN LOGIKAFUZZY DAN ALGORITMA SEMUT PADA PT. SRI ANEKA PANGAN NUSANTARA TUGAS AKHIR SKRIPSI OPTIMISASI POLA DISTRIBUSI DENGAN LOGIKAFUZZY DAN ALGORITMA SEMUT PADA PT. SRI ANEKA PANGAN NUSANTARA TUGAS AKHIR SKRIPSI Diajukan kepada Fakultas Matematika Dan Ilmu Pengetahuan Alam Universitas Negeri

Lebih terperinci

BAB I PENDAHULUAN. Traveling Salesman Problem (TSP) dikenal sebagai salah satu masalah

BAB I PENDAHULUAN. Traveling Salesman Problem (TSP) dikenal sebagai salah satu masalah BAB I PENDAHULUAN I.1. Latar Belakang Traveling Salesman Problem (TSP) dikenal sebagai salah satu masalah optimasi yang banyak menarik perhatian para peneliti sejak beberapa dekade terdahulu. Pada mulanya,

Lebih terperinci

OPTIMASI RUTE ARMADA KEBERSIHAN KOTA GORONTALO MENGGUNAKAN ANT COLONY OPTIMIZATION. Zulfikar Hasan, Novianita Achmad, Nurwan

OPTIMASI RUTE ARMADA KEBERSIHAN KOTA GORONTALO MENGGUNAKAN ANT COLONY OPTIMIZATION. Zulfikar Hasan, Novianita Achmad, Nurwan OPTIMASI RUTE ARMADA KEBERSIHAN KOTA GORONTALO MENGGUNAKAN ANT COLONY OPTIMIZATION Zulfikar Hasan, Novianita Achmad, Nurwan ABSTRAK Secara umum, penentuan rute terpendek dapat dibagi menjadi dua metode,

Lebih terperinci

APLIKASI MASALAH 0/1 KNAPSACK MENGGUNAKAN ALGORITMA GREEDY

APLIKASI MASALAH 0/1 KNAPSACK MENGGUNAKAN ALGORITMA GREEDY PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI APLIKASI MASALAH 0/1 KNAPSACK MENGGUNAKAN ALGORITMA GREEDY Skripsi Diajukan untuk Menempuh Salah Satu Syarat Memperoleh Gelar

Lebih terperinci

PENENTUAN ARAH TUJUAN OBJEK DENGAN TABU SEARCH

PENENTUAN ARAH TUJUAN OBJEK DENGAN TABU SEARCH PENENTUAN ARAH TUJUAN OBJEK DENGAN TABU SEARCH Kampami Kelimay Fitri 1,Suriati 2 Jurusan Sistem Informasi Sekolah Tinggi Teknik Harapan Medan Jl. HM Jhoni No 70 Medan, Indonesia 1 Kelimayammii@gmail.com

Lebih terperinci

Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik

Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik Penyelesaian Traveling Salesman Problem dengan Algoritma Heuristik Filman Ferdian - 13507091 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jalan Ganesha

Lebih terperinci

BAB 1 PENDAHULUAN. transportasi yang harus dikeluarkan dalam proses pendistribusian.

BAB 1 PENDAHULUAN. transportasi yang harus dikeluarkan dalam proses pendistribusian. BAB 1 PENDAHULUAN 1.1 Latar Belakang Proses pendistribusian barang adalah kegiatan yang tidak pernah lepas dari kehidupan. Jarak yang jauh serta penyebaran masyarakat yang meluas menjadi salah satu alasan

Lebih terperinci

Pemanfaatan Algoritma Semut untuk Penyelesaian Masalah Pewarnaan Graf

Pemanfaatan Algoritma Semut untuk Penyelesaian Masalah Pewarnaan Graf Pemanfaatan Algoritma Semut untuk Penyelesaian Masalah Pewarnaan Graf Anugrah Adeputra - 13505093 Program Studi Informatika, Sekolah Teknik Elektro & Informatika ITB Jl. Ganesha No.10 If15093@students.if.itb.ac.id

Lebih terperinci

PENEMUAN JALUR TERPENDEK DENGAN ALGORITMA ANT COLONY. Budi Triandi

PENEMUAN JALUR TERPENDEK DENGAN ALGORITMA ANT COLONY. Budi Triandi Budi, Penemuan Jalur Terpendek Dengan 73 PENEMUAN JALUR TERPENDEK DENGAN ALGORITMA ANT COLONY Budi Triandi Dosen Teknik Informatika STMIK Potensi Utama STMIK Potensi Utama, Jl.K.L Yos Sudarso Km 6,5 No.3-A

Lebih terperinci

Jurnal Edukasi dan Penelitian Informatika (JEPIN) Vol. 1, No. 2, (2015) 1 Rancangan Sistem Penjadwalan Akademik Menggunakan Algoritma Max Min Ant System (Studi Kasus: STMIK Atma Luhur Pangkalpinang) Delpiah

Lebih terperinci

BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya

BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya 5 BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya Traveling salesman problem (TSP) merupakan salah satu permasalahan yang telah sering diangkat dalam berbagai studi kasus dengan penerapan berbagai

Lebih terperinci

IMPLEMENTASI ALGORITMA GENETIKA UNTUK PENCARIAN RUTE OPTIMUM OBJEK WISATA DI KABUPATEN PEMALANG

IMPLEMENTASI ALGORITMA GENETIKA UNTUK PENCARIAN RUTE OPTIMUM OBJEK WISATA DI KABUPATEN PEMALANG IMPLEMENTASI ALGORITMA GENETIKA UNTUK PENCARIAN RUTE OPTIMUM OBJEK WISATA DI KABUPATEN PEMALANG SKRIPSI Oleh: Indra Surada J2A 605 060 PROGRAM STUDI MATEMATIKA JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN

Lebih terperinci

STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN PROBLEM

STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN PROBLEM Seminar Nasional Aplikasi Teknologi Informasi (SNATI ) ISSN: `1907-5022 Yogyakarta, 19 Juni STUDI PERBANDINGAN ALGORITMA CHEAPEST INSERTION HEURISTIC DAN ANT COLONY SYSTEM DALAM PEMECAHAN TRAVELLING SALESMAN

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Masalah Saat ini teknologi telah berkembang dengan cukup pesat. Perkembangan teknologi mengakibatkan pemanfaatan atau pengimplementasian teknologi tersebut dalam berbagai

Lebih terperinci

PEMBUATAN SKEMA JALUR ANGKUTAN KOTA PALU BERDASARKAN PENCARIAN LINTASAN DENGAN BOBOT MAKSIMUM MENGGUNAKAN ALGORITMA ANT COLONY SYSTEM (ACS)

PEMBUATAN SKEMA JALUR ANGKUTAN KOTA PALU BERDASARKAN PENCARIAN LINTASAN DENGAN BOBOT MAKSIMUM MENGGUNAKAN ALGORITMA ANT COLONY SYSTEM (ACS) JIMT Vol. 12 No. 1 Juni 2015 (Hal. 44 52) Jurnal Ilmiah Matematika dan Terapan ISSN : 2450 766X PEMBUATAN SKEMA JALUR ANGKUTAN KOTA PALU BERDASARKAN PENCARIAN LINTASAN DENGAN BOBOT MAKSIMUM MENGGUNAKAN

Lebih terperinci

ALGORITMA GENETIC ANT COLONY SYSTEM UNTUK MENYELESAIKAN TRAVELING SALESMAN PROBLEM

ALGORITMA GENETIC ANT COLONY SYSTEM UNTUK MENYELESAIKAN TRAVELING SALESMAN PROBLEM ALGORITMA GENETIC ANT COLONY SYSTEM UNTUK MENYELESAIKAN TRAVELING SALESMAN PROBLEM Lutfiani Safitri 1) Sri Mardiyati 2) 1) Matematika, FMIPA Universitas Indonesia Jl. H. Boan lisan 9, Depok 16425 Indonesia

Lebih terperinci

IMPLEMENTASI ALGORITMA SEMUT UNTUK PENCARIAN RUTE TERPENDEK BERBASIS SISTEM INFORMASI GEOGRAFIS

IMPLEMENTASI ALGORITMA SEMUT UNTUK PENCARIAN RUTE TERPENDEK BERBASIS SISTEM INFORMASI GEOGRAFIS IMPLEMENTASI ALGORITMA SEMUT UNTUK PENCARIAN RUTE TERPENDEK BERBASIS SISTEM INFORMASI GEOGRAFIS Edi Iskandar Teknik Informatika STMIK Akakom e-mail: edi_iskandar@akakom.ac.id Abstrak Dalam kehidupan global

Lebih terperinci

PENERAPAN METODE PARTICLE SWARM OPTIMIZATION PADA OPTIMASI DISTRIBUSI LPG DARI AGEN KE TOKO KOMPETENSI KOMPUTASI SKRIPSI

PENERAPAN METODE PARTICLE SWARM OPTIMIZATION PADA OPTIMASI DISTRIBUSI LPG DARI AGEN KE TOKO KOMPETENSI KOMPUTASI SKRIPSI PENERAPAN METODE PARTICLE SWARM OPTIMIZATION PADA OPTIMASI DISTRIBUSI LPG DARI AGEN KE TOKO KOMPETENSI KOMPUTASI SKRIPSI I MADE HARY KARTIKA PUTRA NIM. 0808605070 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN

Lebih terperinci

IMPLEMENTASI PERBANDINGAN ALGORITMA ANT COLONY SYSTEM DENGAN ALGORITMA SUBSET DYNAMIC PROGRAMMING PADA KASUS TRAVELLING SALESMAN PROBLEM

IMPLEMENTASI PERBANDINGAN ALGORITMA ANT COLONY SYSTEM DENGAN ALGORITMA SUBSET DYNAMIC PROGRAMMING PADA KASUS TRAVELLING SALESMAN PROBLEM IMPLEMENTASI PERBANDINGAN ALGORITMA ANT COLONY SYSTEM DENGAN ALGORITMA SUBSET DYNAMIC PROGRAMMING PADA KASUS TRAVELLING SALESMAN PROBLEM Tommi Poltak Mario Program Studi Teknik Informatika, STTI RESPATI

Lebih terperinci

PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING

PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING Buletin Ilmiah Math. Stat. dan Terapannya (Bimaster) Volume 0, No. (2015), hal 17 180. PENYELESAIAN TRAVELLING SALESMAN PROBLEM MENGGUNAKAN METODE SIMPLE HILL CLIMBING Kristina Karunianti Nana, Bayu Prihandono,

Lebih terperinci

Penyelesaian Masalah Travelling Salesman Problem Menggunakan Ant Colony Optimization (ACO)

Penyelesaian Masalah Travelling Salesman Problem Menggunakan Ant Colony Optimization (ACO) Penyelesaian Masalah Travelling Salesman Problem Menggunakan Ant Colony Optimization (ACO) Anna Maria 1, Elfira Yolanda Sinaga 2, Maria Helena Iwo 3 Laboratorium Ilmu dan Rekayasa Komputasi Departemen

Lebih terperinci

PENDUKUNG SISTEM PEMASARAN DENGAN ALGORITMA ANT COLONY ABSTRAK

PENDUKUNG SISTEM PEMASARAN DENGAN ALGORITMA ANT COLONY ABSTRAK PENDUKUNG SISTEM PEMASARAN DENGAN ALGORITMA ANT COLONY Vendy Steven Tandiko, Halim Agung steven_vendy@yahoo.co.id, halimagung89@gmail.com Tekhnik Informatika Universitas Bunda Mulia ABSTRAK Kemudahan untuk

Lebih terperinci

PENJADWALAN PROSES PRODUKSI MENGGUNAKAN ANT COLONY ALGORITHM

PENJADWALAN PROSES PRODUKSI MENGGUNAKAN ANT COLONY ALGORITHM PENJADWALAN PROSES PRODUKSI MENGGUNAKAN ANT COLONY ALGORITHM Dedy Kurniadi 1), Sam Farisa Chaerul Haviana 2) 1,2 Jurusan Teknik Informatika, Fakultas Teknologi Industri, Universitas Islam Sultan Agung

Lebih terperinci

BAB I PENDAHULUAN. Pada awal diciptakan, komputer hanya difungsikan sebagai alat hitung

BAB I PENDAHULUAN. Pada awal diciptakan, komputer hanya difungsikan sebagai alat hitung 1 BAB I PENDAHULUAN 1.1 Latar Belakang Pada awal diciptakan, komputer hanya difungsikan sebagai alat hitung saja. Namun seiring dengan perkembangan jaman, maka peran komputer semakin mendominasi kehidupan.

Lebih terperinci

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB III ANALISA DAN PERANCANGAN SISTEM BAB III ANALISA DAN PERANCANGAN SISTEM 3.1 Analisa Sistem Hasil penentuan jarak terdekat akan menjadi sebuah pertimbangan dalam proses pengambilan keputusan untuk menentukan jalur yang akan ditempuh. Perangkat

Lebih terperinci

PENCARIAN RUTE TERPENDEK OBJEK WISATA DI MAGELANG MENGGUNAKAN ANT COLONY OPTIMIZATION (ACO)

PENCARIAN RUTE TERPENDEK OBJEK WISATA DI MAGELANG MENGGUNAKAN ANT COLONY OPTIMIZATION (ACO) PENCARIAN RUTE TERPENDEK OBJEK WISATA DI MAGELANG MENGGUNAKAN ANT COLONY OPTIMIZATION (ACO) Bagus Fatkhurrozi *, Ika Setyowati Jurusan Teknik Elektro, Fakultas Teknik, Universitas Tidar Jl. Kapten Suparman

Lebih terperinci

IMPLEMENTASI ALGORITMA PALGUNADI UNTUK MENYELESAIKAN SINGLE DAN MULTI PRODUCT VEHICLE ROUTING PROBLEM

IMPLEMENTASI ALGORITMA PALGUNADI UNTUK MENYELESAIKAN SINGLE DAN MULTI PRODUCT VEHICLE ROUTING PROBLEM IMPLEMENTASI ALGORITMA PALGUNADI UNTUK MENYELESAIKAN SINGLE DAN MULTI PRODUCT VEHICLE ROUTING PROBLEM SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat Mencapai Gelar Strata Satu Jurusan Informatika HALAMAN

Lebih terperinci

BAB I PENDAHULUAN. dalam kehidupan sehari-hari. Proses distribusi barang dari suatu tempat ke tempat

BAB I PENDAHULUAN. dalam kehidupan sehari-hari. Proses distribusi barang dari suatu tempat ke tempat BAB I PENDAHULUAN A. Latar Belakang Masalah Permasalahan optimisasi merupakan permasalahan yang banyak dijumpai dalam kehidupan sehari-hari. Proses distribusi barang dari suatu tempat ke tempat lain merupakan

Lebih terperinci

BAB II LANDASAN TEORI. 2.1 Penjadwalan Definisi Penjadwalan Kegiatan Belajar Mengajar

BAB II LANDASAN TEORI. 2.1 Penjadwalan Definisi Penjadwalan Kegiatan Belajar Mengajar BAB II LANDASAN TEORI 2.1 Penjadwalan 2.1.1 Definisi Penjadwalan Kegiatan Belajar Mengajar Penjadwalan terkait pada aktivitas dalam hal untuk membuat sebuah jadwal. Sebuah jadwal adalah sebuah tabel dari

Lebih terperinci

APLIKASI TRAVELLING SALESMAN PROBLEM DENGAN METODE ARTIFICIAL BEE COLONY

APLIKASI TRAVELLING SALESMAN PROBLEM DENGAN METODE ARTIFICIAL BEE COLONY APLIKASI TRAVELLING SALESMAN PROBLEM DENGAN METODE ARTIFICIAL BEE COLONY Andri 1, Suyandi 2, WinWin 3 STMIK Mikroskil Jl. Thamrin No. 122, 124, 140 Medan 20212 andri@mikroskil.ac.id 1, suyandiz@gmail.com

Lebih terperinci

BAB 2 LANDASAN TEORI. Perancangan sistem merupakan penguraian suatu sistem informasi

BAB 2 LANDASAN TEORI. Perancangan sistem merupakan penguraian suatu sistem informasi BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Perancangan Sistem Perancangan sistem merupakan penguraian suatu sistem informasi yang utuh ke dalam bagian komputerisasi yang dimaksud, mengidentifikasi dan mengevaluasi

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM III.1. Analisis Masalah Rute jalur terpendek merupakan suatu persoalan untuk mencari lintasan menuju toko Majestyk yang dilalui dengan jumlah yang paling minimum. Maka

Lebih terperinci

BAB 2 LANDASAN TEORI. Definisi Graf G didefinisikan sebagai pasangan himpunan (V, E), yang dalam hal ini:

BAB 2 LANDASAN TEORI. Definisi Graf G didefinisikan sebagai pasangan himpunan (V, E), yang dalam hal ini: 10 BAB 2 LANDASAN TEORI 2.1.Konsep Dasar Graf Definisi 2.1.1 Graf G didefinisikan sebagai pasangan himpunan (V, E), yang dalam hal ini: V = himpunan tidak kosong dari simpul-simpul (vertices atau node)

Lebih terperinci

Pengisian Kota Pertama ke dalam Tabu List Penyusunan Rute Kunjungan Setiap Semut ke Setiap Kota

Pengisian Kota Pertama ke dalam Tabu List Penyusunan Rute Kunjungan Setiap Semut ke Setiap Kota ix DAFTAR ISI HALAMAN JUDUL... i LEMBAR PENGESAHAN DOSEN PEMBIMBING... ii LEMBAR PENGESAHAN DOSEN PENGUJI... iii HALAMAN PERSEMBAHAN... iv MOTTO... v KATA PENGANTAR... vi ABSTRAKSI... viii DAFTAR ISI...

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM III.1. Analisis Masalah Loket Bus merupakan tempat dimana masyarakat yang akan memesan atau membeli suatu tiket untuk menggunakan sarana transportasi bus sebagai keperluan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI.1 Ant Colony System dan Asal Usulnya Pada subbab ini akan diuraikan mengenai asal usul Ant Colony System (ACS), yaitu membahas tentang semut dan tingkah lakunya yang merupakan sumber

Lebih terperinci

PENERAPAN ALGORITMA ANT COLONY PADA PENJADWALAN PRODUKSI

PENERAPAN ALGORITMA ANT COLONY PADA PENJADWALAN PRODUKSI PENERAPAN ALGORITMA ANT COLONY PADA PENJADWALAN PRODUKSI Nurul Imamah, S.Si 1, Dr.Imam Mukhlas, S.Si, MT 2 Jurusan Matematika, Fakultas Matematika dan Ilmu Pengetahuan, Institut Teknologi Sepuluh Nopember

Lebih terperinci

APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM

APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM Buletin Ilmiah Mat. Stat. dan Terapannya (Bimaster) Volume 03, No. 1 (2015), hal 25 32. APLIKASI SIMULATED ANNEALING UNTUK MENYELESAIKAN TRAVELLING SALESMAN PROBLEM Edi Samana, Bayu Prihandono, Evi Noviani

Lebih terperinci

BAB I PENDAHULUAN. grafyang menjadi salah satu permasalahanpenting dalam dunia matematika

BAB I PENDAHULUAN. grafyang menjadi salah satu permasalahanpenting dalam dunia matematika BAB I PENDAHULUAN 1.1 LATAR BELAKANG MASALAH TravellingSalesman Problem merupakan masalah optimasidi bidang grafyang menjadi salah satu permasalahanpenting dalam dunia matematika khususnya bidang komputasi.

Lebih terperinci

METODE PROGRAM DINAMIS PADA PENYELESAIAN TRAVELING SALESMAN PROBLEM

METODE PROGRAM DINAMIS PADA PENYELESAIAN TRAVELING SALESMAN PROBLEM Buletin Ilmiah Mat. Stat. dan Terapannya (Bimaster) Volume 04, No. 3 (2015), hal 329 336. METODE PROGRAM DINAMIS PADA PENYELESAIAN TRAVELING SALESMAN PROBLEM Hermianus Yunus, Helmi, Shantika Martha INTISARI

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA 6 BAB II TINJAUAN PUSTAKA Pada bagian pada bagian ini akan diuraikan tentang tinjauan pustaka dan landaran teori yang sesuai dengan ACO dan AG. 2.1 Algoritma Ant Colony Optimization Secara umum pencarian

Lebih terperinci

PERANCANGAN PROGRAM SIMULASI RUTE PENDISTRIBUSIAN BARANG DENGAN ALGORITMA ELITIST ANT SYSTEM PADA PT TIMUR JAYA SKRIPSI

PERANCANGAN PROGRAM SIMULASI RUTE PENDISTRIBUSIAN BARANG DENGAN ALGORITMA ELITIST ANT SYSTEM PADA PT TIMUR JAYA SKRIPSI PERANCANGAN PROGRAM SIMULASI RUTE PENDISTRIBUSIAN BARANG DENGAN ALGORITMA ELITIST ANT SYSTEM PADA PT TIMUR JAYA SKRIPSI Oleh Harlin Sudario 1000863502 PROGRAM GANDA TEKNIK INFORMATIKA DAN MATEMATIKA BINUS

Lebih terperinci

BAB 4 IMPLEMENTASI DAN EVALUASI SISTEM. Implementasi dan pengujian dalam merancang program aplikasi

BAB 4 IMPLEMENTASI DAN EVALUASI SISTEM. Implementasi dan pengujian dalam merancang program aplikasi BAB 4 IMPLEMENTASI DAN EVALUASI SISTEM 41 Implementasi Sistem 411 Spesifikasi Hardware dan Software Implementasi dan pengujian dalam merancang program aplikasi penentuan jalur pendistribusian barang ini

Lebih terperinci

Artikel Ilmiah oleh Siti Hasanah ini telah diperiksa dan disetujui oleh pembimbing.

Artikel Ilmiah oleh Siti Hasanah ini telah diperiksa dan disetujui oleh pembimbing. Artikel Ilmiah oleh Siti Hasanah ini telah diperiksa dan disetujui oleh pembimbing. Malang, 1 Agustus 2013 Pembimbing Dra. Sapti Wahyuningsih,M.Si NIP 1962121 1198812 2 001 Penulis Siti Hasanah NIP 309312426746

Lebih terperinci

IkhsanJaelani Mahasiswa Informatika, FT UMRAH, ABSTRAK. Kata Kunci : Rute Terpendek, meta-heuristics, algoritma semut

IkhsanJaelani Mahasiswa Informatika, FT UMRAH, ABSTRAK. Kata Kunci : Rute Terpendek, meta-heuristics, algoritma semut PENERAPAN ALGORITMA SEMUT UNTUK OPTIMISASI RUTE PENJEMPUTAN BARANG PADA TEMPAT JASA PENITIPAN SEMENTARA LION EXPRESS Studi Kasus : Konsolidator Lion Express Tanjungpinang IkhsanJaelani Mahasiswa Informatika,

Lebih terperinci

PENGGUNAAN ALGORITMA GENETIKA UNTUK MENENTUKAN LINTASAN TERPENDEK STUDI KASUS : LINTASAN BRT (BUS RAPID TRANSIT) MAKASSAR

PENGGUNAAN ALGORITMA GENETIKA UNTUK MENENTUKAN LINTASAN TERPENDEK STUDI KASUS : LINTASAN BRT (BUS RAPID TRANSIT) MAKASSAR PENGGUNAAN ALGORITMA GENETIKA UNTUK MENENTUKAN LINTASAN TERPENDEK STUDI KASUS : LINTASAN BRT (BUS RAPID TRANSIT) MAKASSAR Karels, Rheeza Effrains 1), Jusmawati 2), Nurdin 3) karelsrheezaeffrains@gmail.com

Lebih terperinci

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP

Team project 2017 Dony Pratidana S. Hum Bima Agus Setyawan S. IIP Hak cipta dan penggunaan kembali: Lisensi ini mengizinkan setiap orang untuk menggubah, memperbaiki, dan membuat ciptaan turunan bukan untuk kepentingan komersial, selama anda mencantumkan nama penulis

Lebih terperinci

IMPLEMENTASI MOBILE TRACKING MENGGUNAKAN METODE ANT COLONY OPTIMIZATION DAN GOOGLE MAPS API SKRIPSI DONNY SANJAYA

IMPLEMENTASI MOBILE TRACKING MENGGUNAKAN METODE ANT COLONY OPTIMIZATION DAN GOOGLE MAPS API SKRIPSI DONNY SANJAYA IMPLEMENTASI MOBILE TRACKING MENGGUNAKAN METODE ANT COLONY OPTIMIZATION DAN GOOGLE MAPS API SKRIPSI DONNY SANJAYA 111421056 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI

Lebih terperinci

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN 29 BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN 3.1. Metode Rekayasa Perangkat Lunak Dalam membangun sebuah perangkat lunak dibutuhkan metode pengerjaan sehingga perangkat lunak yang akan dibuat dapat berjalan

Lebih terperinci

APLIKASI HASIL PENCARIAN DAN RUTE PENGIRIMAN BARANG DARI SOLUSI MASALAH TRANSPORTASI BIKRITERIA DENGAN METODE LOGIKA FUZZY

APLIKASI HASIL PENCARIAN DAN RUTE PENGIRIMAN BARANG DARI SOLUSI MASALAH TRANSPORTASI BIKRITERIA DENGAN METODE LOGIKA FUZZY APLIKASI HASIL PENCARIAN DAN RUTE PENGIRIMAN BARANG DARI SOLUSI MASALAH TRANSPORTASI BIKRITERIA DENGAN METODE LOGIKA FUZZY Faisal Dosen Jurusan Teknik Informatika Fakultas Sains & Teknologi UIN Alauddin

Lebih terperinci

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJI COBA BAB IV HASIL DAN UJI COBA IV.1. Hasil Berikut ini dijelaskan tentang tampilan hasil dari Perancangan Sistem Informasi Geografis Lokasi Loket Bus di Kota Medan dapat dilihat sebagai berikut : IV.1.1. Hasil

Lebih terperinci

BAB IV IMPLEMENTASI DAN EVALUASI SISTEM. geografis dengan pemanfaatan pemetaan secara langsung.

BAB IV IMPLEMENTASI DAN EVALUASI SISTEM. geografis dengan pemanfaatan pemetaan secara langsung. BAB IV IMPLEMENTASI DAN EVALUASI SISTEM Berdasarkan data lokasi dan data kebutuhan yang dimiliki oleh setiap user atau pengguna, akan dilakukan proses pencarian lokasi serta instansi secara geografis dengan

Lebih terperinci

METODE TRAVELING SALESMAN UNTUK MENENTUKAN LINTASAN TERPENDEK PADA DAERAH-DAERAH YANG TERIDENTIFIKASI BAHAYA

METODE TRAVELING SALESMAN UNTUK MENENTUKAN LINTASAN TERPENDEK PADA DAERAH-DAERAH YANG TERIDENTIFIKASI BAHAYA METODE TRAVELING SALESMAN UNTUK MENENTUKAN LINTASAN TERPENDEK PADA DAERAH-DAERAH YANG TERIDENTIFIKASI BAHAYA Nama Mahasiswa : Aisyah Lestari NRP : 1206 100 016 Jurusan : Matematika Dosen Pembimbing : Subchan,

Lebih terperinci

PERANCANGAN APLIKASI PENCARIAN RUTE TERPENDEK MENEMUKAN TEMPAT PARIWISATA TERDEKAT DI KEDIRI DENGAN METODE FLOYD- WARSHALL UNTUK SMARTPHONE

PERANCANGAN APLIKASI PENCARIAN RUTE TERPENDEK MENEMUKAN TEMPAT PARIWISATA TERDEKAT DI KEDIRI DENGAN METODE FLOYD- WARSHALL UNTUK SMARTPHONE PERANCANGAN APLIKASI PENCARIAN RUTE TERPENDEK MENEMUKAN TEMPAT PARIWISATA TERDEKAT DI KEDIRI DENGAN METODE FLOYD- WARSHALL UNTUK SMARTPHONE SKRIPSI Diajukan Untuk Memenuhi Sebagian Syarat Guna Memperoleh

Lebih terperinci

REKAYASA APLIKASI PENCARI RUTE LOKASI INDUSTRI MENGGUNAKAN ALGORITMA ANT COLONY SYSTEM

REKAYASA APLIKASI PENCARI RUTE LOKASI INDUSTRI MENGGUNAKAN ALGORITMA ANT COLONY SYSTEM REKAYASA APLIKASI PENCARI RUTE LOKASI INDUSTRI MENGGUNAKAN ALGORITMA ANT COLONY SYSTEM Anwar Hidayat 1), Agung Budi Prasetyo 2) 1, 2) Teknik Informatika, STMIK AKAKOM Jl.Raya Janti 143 Karangjambe, Yogyakarta

Lebih terperinci

PENENTUAN JALUR SHUTTLE BUS PERUSAHAAN OTOBUS EFISIENSI YOGYAKARTA MENGGUNAKAN ALGORITMA SEMUT

PENENTUAN JALUR SHUTTLE BUS PERUSAHAAN OTOBUS EFISIENSI YOGYAKARTA MENGGUNAKAN ALGORITMA SEMUT PENENTUAN JALUR SHUTTLE BUS PERUSAHAAN OTOBUS EFISIENSI YOGYAKARTA MENGGUNAKAN ALGORITMA SEMUT SKRIPSI Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta untuk

Lebih terperinci

BAB I PENDAHULUAN. merupakan cabang distributor dari perusahaan manufaktur yang. memproduksi sandal bermerek Zandilac. Dalam menjalankan usahanya

BAB I PENDAHULUAN. merupakan cabang distributor dari perusahaan manufaktur yang. memproduksi sandal bermerek Zandilac. Dalam menjalankan usahanya BAB I PENDAHULUAN 1.1. Latar Belakang Masalah PD. Karunia (Zandilac) adalah perusahaan perdagangan yang merupakan cabang distributor dari perusahaan manufaktur yang memproduksi sandal bermerek Zandilac.

Lebih terperinci

BAB I PENDAHULUAN. Alat transportasi merupakan salah satu faktor yang mendukung berjalannya

BAB I PENDAHULUAN. Alat transportasi merupakan salah satu faktor yang mendukung berjalannya BAB I PENDAHULUAN A. Latar Belakang Masalah Alat transportasi merupakan salah satu faktor yang mendukung berjalannya kegiatan atau aktivitas manusia dalam kehidupan sehari-hari. Salah satu kegiatan manusia

Lebih terperinci

BAB 3 METODOLOGI PENELITIAN

BAB 3 METODOLOGI PENELITIAN 60 BAB 3 METODOLOGI PENELITIAN Gambar 3.1 Flow Chart Tugas Akhir 61 Gambar 3.1 Flow Chart Tugas Akhir (Lanjutan) Wawancara dan Observasi Lapangan Wawancara dilakukan untuk mengetahui alur proses bisnis

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB LANDASAN TEORI. Tsunami Tsunami adalah gelombang laut yang terjadi karena adanya gangguan impulsif pada laut. Gangguan impulsif tersebut terjadi akibat adanya perubahan bentuk dasar laut secara tiba-tiba

Lebih terperinci

Perancangan Program Aplikasi Penentuan Jalur Pendistribusian Barang Menggunakan Max-Min Ant System

Perancangan Program Aplikasi Penentuan Jalur Pendistribusian Barang Menggunakan Max-Min Ant System Perancangan Program Aplikasi Penentuan Jalur Pendistribusian Barang Menggunakan Max-Min Ant System Budi Adi Darma Binus University, Jalan KH Syahdan No 9 Palmerah, Jakarta 11480, Indonesia +6285697858589

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN. dan memudahkan dalam pengembangan sistem selanjutnya. Tujuan dari analisa

BAB III ANALISIS DAN PERANCANGAN. dan memudahkan dalam pengembangan sistem selanjutnya. Tujuan dari analisa BAB III ANALISIS DAN PERANCANGAN.1. Analisis Sistem Dalam perancangan sebuah sistem diperlukan analisis untuk keperluan sistem. Dengan adanya analisis sistem, sistem yang dirancang diharapkan akan lebih

Lebih terperinci

UNIVERSITAS BINA NUSANTARA

UNIVERSITAS BINA NUSANTARA UNIVERSITAS BINA NUSANTARA Program Studi Ganda Teknik Informatika Matematika Skripsi Sarjana Program Studi Ganda Semester Genap 2005/2006 PERANCANGAN PROGRAM APLIKASI OPTIMASI DISTRIBUSI LIMUN MENGGUNAKAN

Lebih terperinci

UNIVERSITAS BINA NUSANTARA. Program Ganda T. Informatika - Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007

UNIVERSITAS BINA NUSANTARA. Program Ganda T. Informatika - Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007 UNIVERSITAS BINA NUSANTARA Program Ganda T. Informatika - Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007 PERANCANGAN PROGRAM APLIKASI PENENTUAN RUTE TERPENDEK DISTRIBUSI BUKU DAERAH

Lebih terperinci

1 BAB I PENDAHULUAN. 1.1 Latar Belakang dan Permasalahan

1 BAB I PENDAHULUAN. 1.1 Latar Belakang dan Permasalahan 1 BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan Fokus dalam bidang teknologi saat ini tidak hanya berada pada proses pengembangan yang disesuaikan dengan permasalahan yang dapat membantu manusia

Lebih terperinci

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT One of graph application on whole life is to establish the

Lebih terperinci

Perancangan Rute Distribusi Beras Sejahtera Menggunakan Algoritma Ant Colony Optimization (Studi Kasus di BULOG Kabupaten Semarang

Perancangan Rute Distribusi Beras Sejahtera Menggunakan Algoritma Ant Colony Optimization (Studi Kasus di BULOG Kabupaten Semarang Perancangan Rute Distribusi Beras Sejahtera Menggunakan Algoritma Ant Colony Optimization (Studi Kasus di BULOG Kabupaten Semarang Hery Suliantoro, Aries Susanty, Freddy Bachtiar Silaban Jurusan Teknik

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Teori Graf Adiwijaya (P47) menyatakan bahwa teori graf ditulis pertama kali dalam makalah oleh Leonard Euler matematikawan asal Swiss pada tahun 1736, yang digunakan untuk menyelesaikan

Lebih terperinci

PENDISTRIBUSIAN BARANG FARMASI MENGGUNAKAN ALGORITMA DIJKSTRA (STUDI KASUS : PT. AIR MAS CHEMICAL)

PENDISTRIBUSIAN BARANG FARMASI MENGGUNAKAN ALGORITMA DIJKSTRA (STUDI KASUS : PT. AIR MAS CHEMICAL) ISSN : 1978-6603 PENDISTRIBUSIAN BARANG FARMASI MENGGUNAKAN ALGORITMA DIJKSTRA (STUDI KASUS : PT. AIR MAS CHEMICAL) Sulindawaty #1, Hendryan Winata #2,Trinanda Syahputra #3 #1,2 Program Studi Sistem Informasi,

Lebih terperinci

JURNAL KHATULISTIWA INFORMATIKA, VOL. IV, NO. 2 DESEMBER 2016

JURNAL KHATULISTIWA INFORMATIKA, VOL. IV, NO. 2 DESEMBER 2016 PENYELESAIAN TRAVELING SALESMAN PROBLEM PADA PERUSAHAAN DISTRIBUSI PRODUK DENGAN ALGORITMA FARTHEST INSERTION Lisnawanty Program Studi Komputerisasi Akuntansi, AMIK BSI Pontianak Jalan Abdurahman Saleh

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM Pada bab ini akan dibahas mengenai Sistem Informasi Geografis Letak Bidan Praktek Di Kota Medan Berbasis Web yang meliputi analisa sistem yang sedang berjalan dan desain

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM Pada bab ini akan dibahas mengenai Sistem Informasi Geografis Pencarian Lokasi Terdekat Kantor PLN Medan Berbasis Android yang meliputi analisa sistem yang sedang berjalan

Lebih terperinci