• Tidak ada hasil yang ditemukan

PENENTUAN RUTE OPTIMUM JALUR DISTRIBUSI DALAM SUPPLY CHAIN NETWORK MENGGUNAKAN ALGORITME GENETIKA DESCA MARWAN TONI

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENENTUAN RUTE OPTIMUM JALUR DISTRIBUSI DALAM SUPPLY CHAIN NETWORK MENGGUNAKAN ALGORITME GENETIKA DESCA MARWAN TONI"

Copied!
41
0
0

Teks penuh

(1)

PENENTUAN RUTE OPTIMUM JALUR DISTRIBUSI

DALAM SUPPLY CHAIN NETWORK

MENGGUNAKAN ALGORITME GENETIKA

DESCA MARWAN TONI

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2009

(2)

PENENTUAN RUTE OPTIMUM JALUR DISTRIBUSI

DALAM SUPPLY CHAIN NETWORK

MENGGUNAKAN ALGORITME GENETIKA

DESCA MARWAN TONI

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar

Sarjana Komputer pada

Departemen Ilmu Komputer

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2009

(3)

ABSTRACT

DESCA MARWAN TONI. Determining Optimal Distribution Route on the Supply Chain Network using Genetic Algorithm. Under the direction of SONY HARTONO WIJAYA.

In the past few years, the Supply Chain Network (SCN) field has gained more attention due to the competition which is introduced by the market globalization. Distribution network design is one of the most comprehensive and strategic decision problem that need to be optimized for efficient operation on the supply chain field. The distribution network design establishes distribution channels, determines the amount of materials and items to consume, and also ships the product from suppliers to customers. The optimal distribution depends on the optimal route, which is influenced by the distance and the distribution time. This paper presents a genetic algorithm approach to determine optimal distribution route. Genetic algorithm was implemented to search the optimal route from the start point to the destination point. Priority-based chromosomes (strings) and their genes (parameters) were used to encode the problem. Weight Mapping Crossover and Swap Mutation were used as genetic operator, while the selection method used was roulette wheel. The algorithm was tested in a road map containing 44 nodes and from the experiments, we could conclude that the genetic algorithm system design worked well to solve the optimation problem.

(4)

Judul : Penentuan Rute Optimum Jalur Distribusi Dalam Supply Chain Network Menggunakan Algoritme Genetika

Nama : Desca Marwan Toni NIM : G64050979 Menyetujui: Pembimbing

Sony Hartono Wijaya, M.Kom. NIP 198108092008121002 Mengetahui:

Dekan Fakultas Matematika Dan Ilmu Pengetahuan Alam Institut Pertanian Bogor

Dr. Drh. Hasim, DEA NIP 196103281986011002

(5)

PRAKATA

Alhamdulillahi Rabbil ‘alamin, puji dan syukur penulis panjatkan kepada Allah SWT atas limpahan rahmat dan hidayah-Nya sehingga tugas akhir dengan judul Penentuan Rute Optimum Jalur Distribusi Dalam Supply Chain Network Menggunakan Algoritme Genetika dapat diselesaikan. Penelitian ini dilaksanakan mulai Maret 2009 sampai dengan Juli 2009, bertempat di Departemen Ilmu Komputer.

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

1. Kedua orangtua tercinta, Bapak dan Ibu yang telah memberikan inspirasi, kasih sayang, doa dan dukungan moral selama ini.

2. Kakak dan kedua adik tercinta, Rini Hastuti, SE., Tri Putra Kurniawan, Yenni Novita Lestari yang selalu memberikan semangat dalam penyelesaian tugas akhir ini.

3. Bapak Sony Hartono Wijaya, M.Kom. selaku pembimbing atas bimbingan dan arahannya selama pengerjaan tugas akhir ini.

4. Bapak Azis Kustiyo, S.Si.,M.Kom. dan Bapak Toto Haryanto, S.Kom. yang telah berkenan untuk menjadi penguji penelitian ini.

5. Fitria Yulianti, Amd.Keb. dan keluarga yang telah memberikan dukungan, doa dan kasih sayangnya selama ini.

6. Seluruh penghuni Edensor : Hermawan Tri Rosanja, Fahmilu Kurniawan, Fathoni A.M, Hengky, Furqon Hensan M, Syariful Mizan, dan Haryanto atas kebersamaan dan semangat yang disalurkan selama pengerjaan tugas akhir ini.

7. Dimas Perdana, M.Saad N, dan Haryanto yang telah membantu penulis dalam mengumpulkan data untuk penelitian ini.

8. Rekan-rekan satu bimbingan atas dukungan dan kebersamaannya.

9. Fakhri Mahathir, Gaos Irwana dan rekan-rekan kerja yang telah memberikan semangat dalam penyelesaian tugas akhir ini.

10. Teman-teman seperjuangan Program Studi Ilmu Komputer angkatan 42 atas kebersamaan dan pengalaman berbagi ilmu selama menuntut ilmu di Ilmu Komputer IPB.

Penulis selalu berharap semoga apa yang telah dikerjakan dalam penelitian ini dapat memberikan manfaat bagi semua pihak.

Bogor, Agustus 2009

(6)

RIWAYAT HIDUP

Penulis dilahirkan pada tanggal 1 Januari 1988 di Bengkulu, yang merupakan anak kedua dari empat bersaudara dengan ayah bernama M. Ayub Mazni dan ibu bernama Hasmiyati.

Penulis berhasil menyelesaikan pendidikan Sekolah Menengah Atas (SMA) di SMAN 4 Bengkulu pada tahun 2005, dan penulis langsung diterima di Institut Pertanian Bogor melalui jalur Undangan Seleksi Masuk IPB (USMI) pada tahun yang sama, setelah melalui Tahap Persiapan Bersama (TPB) IPB, akhirnya penulis diterima di Departemen Ilmu Komputer IPB. Pada tahun 2008, penulis melaksanakan kegiatan praktik kerja lapangan di Pusat Perpustakaan dan Penyebaran Teknologi Pertanian selama 35 hari kerja. Dalam kegiatan perkuliahan, penulis juga aktif dalam berbagai organisasi kemahasiswaan, antara lain Himpunan Mahasiswa Ilmu Komputer sebagai ketua umum, DKM Al-Hurriyyah dan Organisasi Mahasiswa Daerah IMBR Bengkulu. Penulis mendapat kesempatan menjadi asisten praktikum basis data di Departemen Ilmu Komputer IPB pada tahun 2008 dan 2009, dan penulis juga menjadi pengajar aktif di bimbingan belajar Bintang Pelajar Bogor.

(7)

DAFTAR ISI Halaman DAFTAR TABEL………... v DAFTAR GAMBAR ………. v DAFTAR LAMPIRAN ………. v PENDAHULUAN Latar Belakang ………. 1 Tujuan ……….. 1 Ruang Lingkup ……… 1 Manfaat ……… 1 TINJAUAN PUSTAKA Supply Chain Management ………. 1

Supply Chain Network ………. 2

Distribusi ………. 2 Algoritme Genetika ………. 2 METODE PENELITIAN Studi Pustaka ……… 5 Perumusan Masalah ………. 5 Pembentukan Data ………... 5 Pengembangan Sistem ………. 6 Representasi Kromosom ………. 6

Penentuan Populasi Awal ……….. 8

Menghitung Nilai Fitness ……….. 8

Proses Elitisme ………... 8

Proses Seleksi Kromosom ……….. 8

Proses Crossover ……… 8

Proses Mutasi ………. 9

Evaluasi dan Kriteria Berhenti ………... 9

Pengujian Sistem ………. 9

Lingkungan Pengembangan Sistem ………. 10

HASIL DAN PEMBAHASAN Percobaan 1……….. 10

Percobaan 2 ………. 13

KESIMPULAN DAN SARAN Kesimpulan ……….. 15

Saran ……… 15

DAFTAR PUSTKA ……….. 15

(8)

v

DAFTAR TABEL

Halaman

1 Daftar istilah Biologi yang digunakan dalam Algoritme Genetika ………. 2

2 Parameter ukuran populasi dengan nilai fitness rata-rata.………….……….. 10

3 Parameter crossover probability dengan nilai fitness rata-rata.……….. 11

4 Parameter mutation probability dengan nilai fitness rata-rata.………….……….. 12

5 Parameter stall generation dengan nilai fitness rata-rata.………….……….. 13

6 Jarak tempuh, waktu tempuh rata- rata, dan nilai fitness…………...……….. 13

DAFTAR GAMBAR Halaman 1 Ilustrasi Supply Chain Network………..………. 2

2 Diagram Alir Algoritme Genetika ……..……… ….. 3

3 Proses Weight Mapping Crossover.………. 4

4 Proses Swap Mutation ……. ……… 5

5 Metodologi Penelitian ………. 5

6 Peta jalan Kota Bogor ………..………..………. 6

7 Contoh Representasi Graf Peta Jalan ………..……… 6

8 Ilustrasi Proses Encoding Kromosom……….. 7

9 Contoh Representasi Peta Jalan Dalam Bentuk Graf ……….. 7

10 Ilustrasi Proses Decoding Kromosom ..……… .. 7

11 Hubungan Ukuran Populasi dan Nilai Fitness ………..……….. 10

12 Hubungan Ukuran Populasi dan Waktu Eksekusi Program ……… 11

13 Hubungan Croosover Probability dan Nilai Fitness….……….. 11

14 Hubungan Crossover Probability dan Akhir Generasi ………... 12

15 Hubungan Mutation Probability dan Nilai Fitness ………..………..……. 12

16 Hubungan Mutation Probability dan Akhir Generasi ..………..…… 12

17 Hubungan Stall Generation dan Nilai Fitness ……… .. 13

18 Hubungan Stall Generation dan Waktu Eksekusi …….……….. 13

19 Rute Alternatif 1 ………..…….……….. 14 20 Rute Alternatif 2 ………..…….……….. 14 21 Rute Alternatif 3 ………..…….……….. 14 22 Rute Alternatif 4 ………..…….……….. 14 23 Rute Alternatif 5 ………..…….……….. 14 24 Rute Alternatif 6 ………..…….……….. 14 DAFTAR LAMPIRAN Halaman 1 Data Node Kota Bogor Sebagai Representasi Jalur Distribusi …………..………. 18

2 Data Edge Kota Bogor Sebagai Representasi Jalur Distribusi ……… 19

3 Representasi Graf Data Peta Kota Bogor.……… 22

4 Tampilan Awal dan Hasil Penentuan Rute Optimum Dalam Web ………. 23

5 Pengujian Ukuran Populasi Optimal ……….. 24

6 Pengujian Crossover Probability Optimal ………..……… 27

7 Pengujian Mutation Probability Optimal.……… 29

8 Pengujian Stall Generation Optimal ………... 31

(9)

1

PENDAHULUAN Latar Belakang

Pada saat sekarang ini, setiap perusahaan yang ingin tetap bertahan dalam persaingan dengan perusahaan lainnya, harus bisa membuat semua lini proses bisnis perusahaan tersebut berjalan lebih efektif dan efisien. Perusahan tersebut harus bisa mengintegrasikan semua arus informasi, barang dan jasa mulai dari pemasok sampai ke konsumen. Proses integrasi ini akan menjadi andalan bagi suatu perusahaan sehingga diharapkan akan menambah keuntungan perusahaan. Proses integrasi ini dikenal dengan istilah Supply Chain Management.

Supply chain management akan

meningkatkan daya saing perusahaan. Salah satu faktor utama yang merupakan bagian dari supply chain management adalah supply chain network. Supply chain network terdiri atas dua bagian utama yaitu lokasi produksi dan proses distribusi. Penentuan lokasi produksi merupakan faktor yang sangat penting karena akan berhubungan dengan proses pemasaran dan pelayanan terhadap permintaan konsumen. Lokasi produksi yang tepat dapat meningkatkan kinerja perusahaan, sedangkan proses distribusi berhubungan dengan penyebaran informasi, barang dan jasa dari produsen ke konsumen. Proses distribusi harus memperhatikan penentuan jalur distribusi yang tepat. Penentuan jalur distribusi berkaitan dengan jarak tempuh dan waktu tempuh. Jalur distribusi yang tepat dapat mengoptimalkan proses distribusi. Oleh karena itu, dibutuhkan sebuah perancangan

supply chain network yang baik, agar

perusahaan dapat melakukan proses bisnis dengan lebih efektif dan efisien sehingga dapat meningkatkan kinerja perusahaan.

Penelitian ini akan merancang supply chain network yang berfokus pada bagian proses distribusi yang dapat digunakan untuk mencari rute optimum jalur distribusi yaitu rute yang memiliki jarak tempuh terpendek dan waktu tempuh tercepat. Penelitian ini menggunakan Algoritme Genetika. Algoritme Genetika menggunakan representasi kromosom sebagai cara untuk mengkodekan suatu alternatif pencarian sehingga dapat diproses menggunakan Algoritme Genetika. Hasil dari perancangan ini akan diimplementasikan dalam bentuk web client yang dapat dengan mudah diakses oleh perusahaan.

Tujuan

Tujuan dari penelitian ini adalah merancang supply chain network untuk menentukan rute optimum dengan menggunakan Algoritme Genetika.

Ruang Lingkup

Ruang lingkup penelitian ini adalah : 1. Data yang digunakan meliputi data peta

jalan Kota Bogor yang merupakan data node dan edge yang akan merepresentasikan jalur distribusi. Data jarak antar node didapatkan dari penelitian Priasa (2008), sedangkan data waktu antar node didapatkan melalui survei di lapangan.

2. Penentuan rute optimum hanya memperhatikan satu kali perjalanan dalam proses distribusinya.

3. Pembuatan web client untuk mengimplementasikan perancangan supply chain network.

Manfaat

Manfaat yang dapat diperoleh dari penelitian ini adalah perancangan supply chain network yang dapat memberikan gambaran pemilihan rute jalur distribusi optimum untuk mencapai lokasi tujuan.

TINJAUAN PUSTAKA Supply Chain Management

Supply chain management merupakan

sebuah proses pengintegrasian yang meliputi proses perancangan, pemeliharan, operasi, dan transportasi pada supply chain untuk menciptakan pelayanan yang lebih baik dan efisien sehingga dapat memuaskan permintaan pasar (Ayers 2001). Apabila mengacu pada sebuah perusahaan manufaktur, kegiatan-kegiatan utama yang masuk dalam klasifikasi Supply chain management adalah :

· Kegiatan merancang produk baru (product development )

Cakupan kegiatan ini antara lain melakukan riset pasar, merancang produk baru, melibatkan supplier dalam perancangan produk baru.

· Kegiatan mendapatkan bahan baku (procurement)

Cakupan kegiatan ini antara lain memilih supplier, mengevaluasi kinerja supplier, melakukan pembelian bahan baku dan

(10)

2 komponen, memonitor supply risk, membina

dan memelihara hubungan dengan supplier. · Logistics

Cakupan kegiatan ini antara lain perencanaan, implementasi produksi, mengontrol aliran dan penyimpanan bahan baku, layanan, dan berhubungan dengan informasi kebutuhan konsumen.

· Information

Kegiatan ini meningkatkan hubungan perusahaan dengan supply chain dengan mengimplementasikan aplikasi komputer. · Kegiatan melakukan pengiriman

(distribution).

Kegiatan ini merupakan strategi untuk bersaing yang mencakup perencanaan jaringan distribusi, penjadwalan pengiriman, mencari dan memelihara hubungan dengan perusahaan jasa pengiriman, memonitor service level di tiap pusat distribusi .

Supply Chain Network

Supply Chain Network merupakan sebuah jaringan dan pilihan distribusi yang melakukan fungsi dalam upaya mendapatkan bahan baku, transportasi bahan baku sampai pada tempat produksi dan distribusi hasil produksi kepada konsumen (Ganeshan & Harrison 1995). Ilustrasi dari proses supply chain network dapat dilihat dalam Gambar 1.

Gambar 1 Ilustrasi Supply Chain Network ( Gen & Cheng 2008).

Distribusi

Salah satu proses dalam supply chain network, yaitu pengiriman barang dan jasa sampai ke konsumen pada waktu yang tepat dan tempat yang tepat. Proses distribusi dipengaruhi oleh keputusan transportasi yang digunakan. Untuk menciptakan proses distribusi yang efektif dan efisien maka perusahaan harus merancang jalur distribusi yang tepat. Jalur

distribusi yang tepat dicapai dengan memilih jalur yang paling optimum antara lokasi asal dan lokasi tujuan (Hugos 2003).

Misalkan sebuah perusahaan ingin mendistribusikan produknya ke setiap konsumen, perusahaan harus menentukan jalur distribusi yang tepat. Tujuannya bagi konsumen adalah dapat meningkatkan kepuasan konsumen karena produk yang mereka inginkan bisa mereka terima tepat waktu, sedangkan bagi perusahaan tujuannya adalah mengefisienkan biaya dan meningkatkan kinerja sumber daya manusianya.

Algoritme Genetika

Algoritme Genetika merupakan suatu metode pencarian yang didasarkan pada mekanisme seleksi alam dan genetika. Algoritme ini tepat digunakan untuk penyelesaian masalah optimasi yang kompleks dan susah diselesaikan dengan menggunakan metode optimasi yang konvensional karena memiliki beberapa keunggulan, yaitu (Sivanandam & Deepa 2008):

1. Algoritme Genetika memproses bentuk pengkodean dari parameter solusi, bukan parameter itu sendiri.

2. Algoritme Genetika melakukan pencarian dalam banyak solusi yang disebut populasi solusi, bukan pada satu solusi.

3. Informasi yang digunakan dalam Algoritme Genetika berasal dari fungsi fitness, bukan dari informasi tambahan.

Algoritme yang ditemukan oleh Jhon Holland dan David Goldberg (1975) ini terinspirasi dari prinsip genetika dan seleksi alam (teori evolusi Darwin). Istilah-istilah dalam Algoritme Genetika berhubungan dengan istilah dalam ilmu Biologi. Daftar istilah ilmu Biologi yang digunakan dalam Algoritme Genetika dapat dilihat pada Tabel 1.

Tabel 1 Daftar istilah Biologi yang digunakan dalam Algoritme Genetika.

Istilah Biologi

Definisi dalam Algoritme Genetika

Gen Sebuah nilai yang menyatakan satuan dasar yang membentuk suatu arti tertentu. Gen bisa berupa nilai biner, float, integer maupun karakter.

Kromosom Gabungan gen-gen yang akan membentuk nilai tertentu, sering dikenal sebagai String Gen.

(11)

3

Istilah Biologi

Definisi dalam Algoritme Genetika

Allele Nilai dari Gen.

Lokus Posisi gen dalam kromosom. Individu /

kromosom

Satu nilai yang menyatakan salah satu solusi yang mungkin dari permasalahan yang diangkat.

Populasi Sekumpulan individu yang akan diproses bersama dalam satu siklus proses evolusi.

Generasi Menyatakan satu satuan siklus proses evolusi.

Nilai Fitness/ fitness

Menyatakan seberapa baik nilai dari solusi yang didapatkan.

Crossover Pertukaran kromosom antar

kromosom induk.

Mutasi Perubahan nilai kromosom. Algoritme Genetika dikarakterisasi dalam lima komponen penting, yaitu:

1. Merepresentasikan kromosom yang menyatakan salah satu solusi dari masalah yang diangkat.

2. Inisialisasi populasi yaitu pembentukan populasi awal.

3. Mendefinisikan nilai fitness yang merupakan ukuran baik tidaknya sebuah individu dalam proses evaluasi.

4. Menghasilkan populasi baru dari populasi yang ada melalui proses genetika (crossover dan mutasi ).

5. Nilai dari parameter Algoritme Genetika yang terdiri atas ukuran populasi, probabilitas proses genetika dan banyaknya generasi.

Algoritme Genetika memelihara populasi dari individu untuk tiap generasi. Setiap individu dievaluasi untuk diberikan nilai fitness-nya. Ada dua jenis transformasi yang digunakan dalam Algoritme Genetika yaitu Mutasi dan Crossover (pindah silang). Mutasi yaitu membentuk individu baru dengan cara mengubah satu individu tertentu saja, sedangkan crossover yaitu membentuk individu baru dengan cara mengombinasikan bagian-bagian dari dua individu. Transformasi tersebut akan menghasilkan individu baru, yang dikenal sebagai offstring yang akan dilakukan evaluasi

kembali. Populasi yang baru dibentuk dari seleksi individu-individu dalam beberapa generasi sehingga didapatkan individu yang terbaik. Individu terbaik inilah yang diharapkan akan menjadi solusi optimal atau suboptimal dari masalah yang diangkat (Gen & Cheng 2000). Struktur dari Algoritme Genetika sebagai berikut :

Prosedur : Algoritme Genetika begin

t ß 0;

inisialisasi P(t); evaluasi C(t);

while(I <= maksimum iterasi) do

begin

rekombinasi P(t); evaluasi C(t);

pilih P(t+1) dari P(t) dan C(t);

I ß i+1; end

end

Secara umum diagram dari mekanisme kerja Algoritme Genetika ini adalah seperti yang terlihat dalam Gambar 2.

Gambar 2 Diagram Alir Algoritme Genetika. Dalam algoritme ini dikenal istilah search space yaitu ruang dari semua solusi pencarian yang mungkin. Secara garis besar, langkah-langkah dari Algoritme Genetika ini dapat didefinisikan sebagai berikut:

(12)

4

1. Representasi Kromosom

Representasi kromosom adalah proses pertama yang harus dilakukan sebelum inisialisasi populasi, proses ini dikenal dengan

encoding. Proses ini berfokus untuk

mengonversi masalah yang dihadapi ke dalam bentuk kromosom yang merupakan alternatif solusi dari masalah tersebut. Tata cara untuk menerjemahkan masalah yang dihadapi ke dalam framework Algoritme Genetika disebut encoding schema. Proses ini merupakan tahapan penting karena akan menentukan ketepatan solusi dari masalah yang dihadapi.

2. Inisialisasi Populasi

Populasi awal ini dibangkitkan secara acak sehingga didapatkan beberapa kromosom yang merupakan alternatif solusi awal. Dalam populasi tersebut terdapat anggota populasi yang disebut dengan kromosom, yang berisikan informasi solusi dari sekian banyak alternatif solusi masalah yang dihadapi. Banyaknya kromosom dalam satu populasi ditentukan oleh ukuran populasi.

3. Fungsi Fitness

Kromosom-kromosom akan mengalami proses evolusi melalui sejumlah iterasi, proses ini disebut generasi. Pada setiap proses generasi, kromosom-kromosom akan dievaluasi menggunakan suatu fungsi yang disebut dengan fungsi fitness. Setiap generasi akan menghasilkan kromosom-kromosom baru yang dibentuk dari generasi sebelumnya.

Fungsi fitness adalah fungsi yang digunakan untuk mengukur nilai kecocokan suatu kromosom. Nilai yang dihasilkan dari fungsi fitness disebut dengan nilai fitness. Nilai fitness ini akan menggambarkan seberapa baik solusi yang didapat.

4. Elitisme

Suatu teknik yang dilakukan untuk mempertahankan suatu individu terbaik yang memiliki nilai fitness tertinggi agar tidak mengalami kerusakan yang diakibatkan oleh proses genetika, sehingga individu tersebut dapat bertahan hidup untuk generasi selanjutnya.

5. Seleksi

Proses pembentukan generasi baru ini dilakukan melalui tahap seleksi. Seleksi adalah proses memilih individu terbaik dari sebuah populasi dengan mencari kromosom dengan nilai fitness terbaik, dan kemudian dilanjutkan ke proses berikutnya yaitu crossover dan

mutasi. Metode seleksi yang biasa digunakan dalam Algoritme Genetika adalah metode roulette wheel. Metode ini mencari populasi baru berdasarkan nilai fitness-nya.

6. Crossover

Crossover merupakan proses

mengombinasikan dua individu untuk memperoleh individu-individu baru yang diharapkan mempunyai nilai fitness yang lebih baik. Tidak semua pasangan induk yang akan mengalami crossover, banyaknya pasangan induk yang akan mengalami crossover akan ditentukan dengan nilai crossover probability. Crossover probability adalah sebuah parameter dalam Algoritme Genetika yang menggambarkan berapa seringnya crossover dilakukan. Metode crossover yang digunakan adalah Weight Mapping Crossover (WMX). Ilustrasi proses WMX dapat dilihat dalam Gambar 3.

Gambar 3 Proses Weight Mapping Crossover.

7. Mutasi

Mutasi adalah proses penggantian gen dengan nilai inversinya. Proses ini dilakukan secara acak pada posisi gen tertentu pada individu-individu yang terpilih untuk dimutasikan. Banyaknya individu yang mengalami mutasi ditentukan oleh besarnya mutation probability. Metode mutasi yang digunakan adalah swap mutation. Ilustrasi proses swap mutation dapat dilihat dalam Gambar 4.

(13)

5 Gambar 4 Proses Swap Mutation.

8. Evaluasi Solusi dan Kriteria Berhenti

Proses evaluasi solusi ini akan mengevaluasi setiap populasi dengan menghitung nilai fitness setiap kromosom sampai terpenuhi kriteria berhenti. Apabila kriteria berhenti belum terpenuhi maka akan dibentuk lagi generasi yang baru dengan mengulangi langkah inisialisasi populasi. Beberapa kriteria berhenti yang sering digunakan dalam Algoritme Genetika antar lain:

· Berhenti pada maksimum generasi tertentu. · Berhenti apabila dalam n generasi berikut

tidak didapatkan nilai fitness yang lebih tinggi/rendah (stall generation).

Kromosom-kromosom yang memiliki nilai fitness yang baik akan memiliki peluang yang lebih tinggi untuk terseleksi. Setelah dilakukan beberapa kali proses generasi, Algoritme Genetika akan menunjukkan kromosom-kromosom yang terbaik, yang diharapkan merupakan solusi optimal atau mendekati optimal dari masalah yang dihadapi.

METODE PENELITIAN

Penelitian ini akan dikerjakan dalam beberapa tahap. Tahap-tahap tersebut disesuaikan dengan metode penelitian yang dapat dilihat pada Gambar 5.

Studi Pustaka

Dalam tahap ini, kegiatan yang dilakukan adalah mengumpulkan semua informasi atau literatur yang terkait dengan penelitian. Informasi tersebut akan didapatkan dari textbook, jurnal, buku, internet, dan artikel yang membahas tentang Algoritme Genetika dalam menyelesaikan masalah pencarian rute optimum. Selain mencari literatur terkait dengan Algoritme Genetika, literatur yang juga akan dicari yaitu terkait dengan cara dan tutorial pembuatan web client. Literatur-literatur yang digunakan dapat dilihat pada bagian daftar pustaka.

Gambar 5 Metodologi Penelitian.

Perumusan Masalah

Menentukan rute optimum jalur distribusi dengan menggunakan Algoritme Genetika. Penyelesaian masalah untuk menentukan rute optimum jalur distribusi ini akan sulit dan lama jika dilakukan secara manual. Algoritme Genetika digunakan sebagai cara untuk memecahkan masalah tersebut sehingga diharapkan rute optimum jalur distribusi dapat dicari dengan waktu yang lebih cepat.

Pembentukan Data

Data yang akan digunakan dalam penelitian ini adalah data peta jalan Kota Bogor. Data peta tersebut akan diubah ke dalam bentuk node dan edge yang merepresentasikan jalur distribusi. Node adalah titik persimpangan jalan sedangkan edge menyatakan ruas jalan yang ada. Pembentukan node dan edge dapat dilihat pada Gambar 6. Dari gambar tersebut terlihat bahwa node 1 menghubungkan dua jalan yaitu jalan Jalak Harupat dan jalan Pangrango, sedangkan node 2 akan menghubungkan jalan Pajajaran dengan jalan Jalak Harupat. Edge yang

(14)

6 menghubungkan antara node 1 dan node 2

dinamakan Jalak Harupat.

Gambar 6 Peta Jalan Kota Bogor (http://maps.google.com).

Semua data yang dibutuhkan antara lain data node, data edge, data jarak antar node, data waktu antar node, titik asal dan titik tujuan. Data jarak antar node didapatkan dari penelitian Priasa (2008), sedangkan data waktu antar node didapatkan melalui survei di lapangan. Data waktu yang digunakan ini merupakan data waktu rata-rata dari tiga kali penghitungan waktu.

Data node yang merupakan representasi dari peta jalan Kota Bogor selengkapnya dapat dilihat dalam Lampiran 1. Data edge secara lengkap dapat dilihat dalam Lampiran 2. Representasi peta jalan Kota Bogor dalam bentuk graf secara lengkap dapat dilihat dalam Lampiran 3.

Pengembangan Sistem

Pengembangan sistem mengikuti tahapan yang ada dalam Algoritme Genetika yaitu representasi kromosom, penentuan populasi awal, menghitung nilai fitness, proses elitisme, proses seleksi, proses crossover, proses mutasi, evaluasi dan kriteria berhenti.

1. Representasi Kromosom

Dalam penelitian ini representasi kromosom menggunakan dua metode, yaitu Binary Encoding and Decoding dan Priority-based Encoding and Decoding. Encoding merupakan proses untuk menerjemahkan masalah ke dalam bentuk kromosom, sedangkan decoding merupakan proses untuk membangkitkan rute dari kromosom yang dihasilkan dari proses encoding. Dari dua metode representasi yang digunakan dipilih salah satu metode representasi kromosom yang paling tepat.

a) Representasi Kromosom dengan Metode Binary Encoding and Decoding.

Pada proses encoding, metode Binary Encoding and Decoding ini menggunakan representasi kromosom dalam bentuk bit string. Panjang kromosom dipengaruhi oleh jumlah node. Dari data yang ada terdapat 44 node. Oleh sebab itu panjang kromosom dinyatakan dalam 44 gen. Sebagai contoh dari representasi kromosom yang dihasilkan adalah sebagai berikut :

01100101000010000101011101000101011101 011011.

Kromosom di atas dibangkitkan secara acak. Kromosom ini selanjutnya akan dipotong tiap dua gen. Proses pemotongan kromosom dapat dilihat sebagai berikut :

01|10|01|01|00|00|10|00|01|01|01|11|01|00|01|01| 01|11|01|01|10|11.

Pada proses decoding, kromosom dikonversi ke dalam bentuk percabangan, sesuai dengan nilai desimal dari kromosom yang sebelumnya sudah dilakukan pemotongan. Sebagai contoh pada Gambar 7.

Gambar 7 Contoh Representasi Graf Peta Jalan (Thiang dkk 2001 ).

Gambar di atas memperlihatkan ada 8 node, maka jumlah gen yang akan digunakan adalah 8 gen. Pada proses decoding kromosom ini, representasi kromosom akan dikonversi ke dalam bentuk biner sehingga untuk nilai 0, 1, 2, dan 3 secara berurutan akan menjadi 00, 01, 10, 11. Misalkan salah satu contoh representasi kromosom yang dihasilkan adalah 00101010, maka representasi kromosom tersebut akan dikonversi menjadi 0222.

Rute ditentukan berdasarkan cabang yang ada. Sebagai contoh pada Gambar 7, misal node awalnya adalah 1, dan setelah mengalami decoding kromosom dihasilkan cabang 0222. Proses penentuan rute adalah sebagai berikut : Cabang : 0 2 2 2

(15)

7 b) Representasi Kromosom dengan Metode

Priority-based Encoding and Decoding. Pada proses encoding, metode ini mengkategorikan kromosom dalam dua faktor, yaitu locus dan allele. Locus menyatakan posisi gen dalam kromosom, sedangkan allele menyatakan nilai dari gen. Dalam metode ini, posisi gen digunakan untuk menyatakan ID node sedangkan nilai dari gen menyatakan prioritas node yang akan digunakan pada proses decoding. Ilustrasi proses encoding dapat dilihat pada Gambar 8.

Gambar 8 Ilustrasi Proses Encoding Kromosom. Posisi gen (lokus) 1 menyatakan node ID 1 dengan prioritas 11, posisi gen 2 menyatakan node ID 2 dengan prioritas 1, posisi gen 3 menyatakan node ID 3 dengan prioritas 10 dan seterusnya. Representasi kromosom yang digunakan dalam penelitian ini adalah berbentuk integer. Panjang kromosom dipengaruhi oleh jumlah node. Dari data yang ada terdapat 44 node, Oleh sebab itu panjang kromosom dinyatakan dalam 44 gen. Kromosom yang dihasilkan terdiri atas gen yang berbentuk integer dengan nilai 1 sampai 44 yang dibangkitkan secara acak. Pseudocode untuk membangkitkan kromosom secara acak adalah sebagai berikut :

Prosedur : Priority-based Encoding Input : Jumlah node (n)

Output : kromosom (v) Mulai

for i=1 hingga n v[i] ß i;

for i=1 hingga [n/2] ulangi j ß random[1,n]; l ß random[1,n]; if j != l swap(v[j],v[l]); output v; akhir

Sebagai contoh dari representasi kromosom yang dihasilkan adalah sebagai berikut :

4 21 5 12 39 6 3 38 16 29 10 1 18 7 25 43 19 17 37 34 2 44 22 20 31 26 23 14 36 35 24 13 40 41 42 27 32 33 9 15 28 8 11 30.

Pada proses decoding, kromosom yang telah dihasilkan akan diubah ke dalam bentuk rute distribusi. Untuk menentukan rute digunakan prioritas gen. Sebagai contoh pada Gambar 9.

Gambar 9 Contoh Representasi Peta Jalan Dalam Bentuk Graf.

Dari gambar di atas misalkan node awal adalah 1, maka node berikutnya yang mungkin dituju adalah node 2, 3, dan 4. Kemudian misalkan kromosom yang dihasilkan adalah seperti pada Gambar 8, dapat dilihat bahwa prioritas node 2, 3 dan 4 secara berurutan adalah 1, 10, dan 3. Node 3 memiliki prioritas paling besar sehingga node berikutnya yang akan dipilih adalah node 3. Node berikutnya yang mungkin dipilih dari node 3 adalah node 4, 6, dan 7. Node 6 memiliki prioritas paling besar sehingga node berikutnya yang terpilih adalah node 6 dan seterusnya. Proses decoding dilakukan hingga mencapai gen terakhir atau proses ini akan berhenti jika node tujuan telah dicapai. Ilustrasi proses decoding ini dapat dilihat dalam Gambar 10.

Gambar 10 Ilustrasi Proses Decoding Kromosom.

Pseudocode proses decoding adalah sebagai berikut:

Prosedur : Priority-based Encoding Input : jumlah node (n), kromosom

(v), node tetangga dengan node i (s), node awal (i) dan node tujuan (k). Output : rute (p) Mulai v(i) ß 0; j’ ß maxPrioritas(v[j], j€s) Jika j’ != k Jika j’ != 0 v[j’] ß 0; p ß j’; i ß j’; Lainnya p ß j’; Selesai Akhir.

(16)

8

2. Penentuan Populasi Awal

Populasi merupakan kumpulan kromosom yang merupakan alternatif solusi. Hasil dari tahap representasi kromosom adalah sebuah kromosom yang terdiri atas 44 gen. Ukuran populasi adalah jumlah kromosom yang ada dalam satu populasi. Dalam penelitian ini ukuran populasi yang digunakan adalah 300 kromosom. Sehingga dari proses encoding akan dihasilkan sebuah array dua dimensi berukuran 300 x 44, jumlah baris dalam array ini menunjukkan banyaknya kromosom dan jumlah kolom menunjukkan banyaknya gen. Setelah proses decoding, dilakukan evaluasi dengan memilih kromosom yang valid yaitu kromosom yang mengandung node tujuan sehingga populasi awal yang dihasilkan terdiri atas kromosom mengandung informasi node tujuan.

3. Menghitung Nilai Fitness

· Hitung Jarak dan Waktu

Mekanisme penghitungan jarak dan waktu sesuai dengan rute distribusi yang dilalui, dimulai dari node awal hingga mencapai node tujuan. Jarak dan waktu yang dihasilkan akan digunakan untuk mencari nilai fitness kromosom.

· Menghitung Nilai Fitness Kromosom Penelitian ini akan menentukan rute optimum yang dipengaruhi oleh jarak terdekat dan waktu tercepat. Oleh karena itu, fungsi fitness yang akan digunakan dalam penelitian ini ditunjukkan dalam Persamaan 1.

, (1)

f(x,t) adalah fungsi fitness. j adalah jumlah hop yang diperlukan hingga mencapai titik tujuan, (hop adalah proses perpindahan dari satu titik ke titik lain yang merupakan tetangganya). x adalah jarak antar titik, t adalah waktu antar titik, v adalah kecepatan konstan, %D adalah bobot persentase untuk jarak, dan %W adalah bobot persentase untuk waktu.

Optimasi yang diinginkan dalam penelitian ini adalah mencari waktu dan jarak paling minimal, berarti kromosom yang terseleksi adalah kromosom dengan nilai fitness yang terkecil. Metode yang digunakan adalah roulette-wheel, yaitu metode dimana peluang tiap kromosom untuk terpilih adalah sebanding dengan nilai fitness-nya. Artinya semakin besar nilai fitness-nya maka akan semakin besar

peluang untuk terseleksi. Oleh karena itu fungsi fitness-nya akan dibentuk seperti Persamaan 2.

, (2) Dengan fn adalah nilai fitness sebelumnya, fn’

adalah nilai fitness baru, fmax adalah nilai fitness

maksimum, dan fmin adalah nilai fitness

minimum.

4. Proses Elitisme

Kromosom terbaik akan bertahan untuk generasi selanjutnya. Supaya kromosom terbaik tidak rusak karena proses algoritme maka dilakukan elitisme. Caranya adalah Jika jumlah populasi genap maka elitisme dalam penelitian ini dilakukan dengan meng-copy dua buah kromosom yang memiliki nilai fitness terbaik. Jika jumlah populasi ganjil maka hanya meng-copy satu buah kromosom yang memiliki nilai fitness terbaik.

5. Proses Seleksi Kromosom

Metode yang digunakan adalah roulette-wheel, yaitu metode dimana peluang tiap kromosom untuk terpilih adalah sebanding dengan nilai fitness-nya. Artinya semakin besar nilai fitness-nya maka akan semakin besar peluang untuk terseleksi. Pertama, dibuat interval nilai kumulatif (dalam interval [0,1]) dari nilai fitness dibagi total nilai fitness dari semua kromosom. Sebuah kromosom akan terpilih jika bilangan random yang dibangkitkan berada dalam interval kumulatifnya.

6. Proses Crossover

Metode crossover yang digunakan dalam penelitian ini adalah weight mapping crossover (WMX). WMX merupakan perluasan dari mekanisme single point crossover dimana hanya ada satu titik potong. Proses penentuan titik potong dilakukan secara acak. Tidak semua kromosom yang akan mengalami crossover, banyaknya kromosom yang akan mengalami crossover ditentukan oleh crossover probability. Kromosom yang memiliki nilai random lebih kecil dari crossover probability maka kromosom tersebut akan mengalami crossover.

Ilustrasi proses WMX dapat dilihat dalam Gambar 3. Dalam penelitian ini proses WMX dilakukan dalam 4 langkah yaitu :

1. Memilih titik potong dari dua kromosom hasil seleksi.

Pemilihan titik potong ini dilakukan secara acak. Misalkan titik potong yang didapat adalah 40. kromosom induk akan dilakukan crossover

(17)

9 pada gen ke-41. Contoh kromosom induk

adalah sebagai berikut : Kromosom satu : 23 39 42 5 38 1 7 24 25 30 16 26 15 41 11 17 44 2 27 29 19 20 37 8 4 35 3 28 21 43 12 40 10 22 31 13 9 36 18 6 | 34 33 32 14 Kromosom dua : 41 33 30 7 39 10 14 25 42 17 18 11 27 21 44 31 37 8 43 23 35 16 28 22 19 38 4 13 3 9 32 2 12 34 40 1 29 20 15 5 | 26 36 6 24

2. Menggantikan substring antara kromosom induk.

Setelah pemotongan pada gen ke-41 maka dilakukan penggantian nilai gen antara kromosom induk sehingga kromosom baru akan terbentuk sebagai berikut :

Kromosom satu : 23 39 42 5 38 1 7 24 25 30 16 26 15 41 11 17 44 2 27 29 19 20 37 8 4 35 3 28 21 43 12 40 10 22 31 13 9 36 18 6 | 26 36 6 24 Kromosom dua : 41 33 30 7 39 10 14 25 42 17 18 11 27 21 44 31 37 8 43 23 35 16 28 22 19 38 4 13 3 9 32 2 12 34 40 1 29 20 15 5 | 34 33 32 14

3. Mapping nilai gen pada posisi yang sesuai. Setelah dilakukan penggantian substring dapat dilihat bahwa nilai gen 26, 36, 6 dan 24 muncul dua kali dalam kromosom satu. Hal yang sama juga dialami kromosom dua, sehingga harus dilakukan mapping nilai gen ke posisi yang sesuai dengan cara melakukan

sorting. Mapping yang dihasilkan adalah

sebagai berikut : 26 36 6 24 à 34 33 32 14 à 6 24 26 36 14 32 33 34 6 ↔ 14 24 ↔ 32 26 ↔ 33 36 ↔ 34 4. Membangkitkan kromosom baru dengan

menerapkan hubungan mapping.

Kromosom baru yang dihasilkan dengan menerapkan hubungan mapping adalah sebagai berikut :

Kromosom satu baru :

23 39 42 5 38 1 7 24 25 30 16 26 15 41 11 17 44 2 27 29 19 20 37 8 4 35 3 28 21 43 12 40 10 22 31 13 9 36 18 6 33 34 14 32

Kromosom dua baru :

41 33 30 7 39 10 14 25 42 17 18 11 27 21 44 31 37 8 43 23 35 16 28 22 19 38 4 13 3 9 32 2 12 34 40 1 29 20 15 5 36 26 24 6

7. Proses Mutasi

Metode mutasi yang digunakan dalam penelitian ini adalah swap mutation. Tidak semua kromosom yang akan mengalami mutasi, banyaknya kromosom yang akan mengalami mutasi ditentukan oleh mutation probability. Kromosom yang memiliki nilai random lebih kecil dari mutation probability maka kromosom tersebut akan mengalam mutasi. Swap mutation akan memilih dua posisi gen secara acak dan kemudian dilakukan penggantian posisi. Misalkan posisi gen yang terpilih adalah 5 dan 42 maka proses swap mutation akan dilakukan sebagai berikut :

23 39 42 5 38 1 7 24 25 30 16 26 15 41 11 17 44 2 27 29 19 20 37 8 4 35 3 28 21 43 12 40 10 22 31 13 9 36 18 6 33 34 14 32

Kromosom baru yang dihasilkan oleh proses swap mutation adalah :

23 39 42 5 34 1 7 24 25 30 16 26 15 41 11 17 44 2 27 29 19 20 37 8 4 35 3 28 21 43 12 40 10 22 31 13 9 36 18 6 33 38 14 32

8. Evaluasi dan Kriteria Berhenti

Dalam penelitian ini Algoritme Genetika akan berhenti jika memenuhi salah satu dari dua kriteria berhenti yaitu maksimum generasi dan

stall generation. Dalam setiap generasi

dilakukan proses evaluasi dengan menghitung nilai fitness dari setiap kromosom. Maksimum generasi yang ditentukan adalah 20 generasi, sehingga Algoritme Genetika akan berhenti jika sudah mencapai 20 generasi. Algoritme Genetika juga akan berhenti jika nilai fitness terbesar yang dihasilkan tidak berubah selama beberapa generasi (stall generation).

Pengujian dan Analisis Sistem

Sistem Algoritme Genetika untuk menentukan rute distribusi optimum yang telah dihasilkan akan diimplementasikan dalam bentuk web client. Proses pengujian dan analisis sistem Algoritme Genetika akan dilakukan dalam dua tahap. Tahap pertama, pengujian sistem dilakukan dengan mengubah nilai parameter Algoritme Genetika yang digunakan, yaitu nilai crossover probability, nilai mutation

probability, ukuran populasi dan stall

generation. Tahap kedua, menguji rute

distribusi optimum yang dihasilkan dari sistem berbasis web client. Input yang dimasukkan

(18)

10 oleh pengguna sistem adalah node awal dan

node tujuan pengguna.

Lingkungan Pengembangan Sistem

Implementasi Algoritme Genetika dalam bentuk web client menggunakan bahasa pemrograman PHP dan DBMS MySQL. Spesifikasi perangkat keras dan perangkat lunak komputer yang digunakan dalam penelitian ini sebagai berikut :

· Perangkat keras : Prosesor AMD Turion X2 dual core CPU 2.0 GHz, Memori 2.5 GB DDR2, hardisk 160 GB, mouse.

· Perangkat lunak : Microsoft Windows XP SP 2, XAMPP 1.7.1, PHP 5.2.6, Firefox 3.0.6, Notepad++ .

HASIL DAN PEMBAHASAN

Perancangan supply chain network dalam menentukan jalur distribusi optimum dengan menggunakan Algoritme Genetika diawali dengan pembentukan representasi peta jalan Kota Bogor ke dalam bentuk graf. Perancangan tersebut diimplementasikan dalam web client dengan tujuan mempermudah pengguna dalam menggunakan rancangan tersebut. Tampilan web client yang telah dibuat dapat dilihat pada Lampiran 4.

Algoritme Genetika yang digunakan untuk menentukan rute optimum jalur distribusi ini terdiri atas beberapa tahapan, yaitu representasi kromosom, penentuan populasi awal, menghitung nilai fitness, proses elitisme, proses seleksi, crossover, mutasi dan evaluasi kriteria berhenti algoritme. Untuk tahapan representasi kromosom, dari dua metode representasi kromosom yang dicoba dipilih salah satu metode representasi kromosom yang paling tepat. Dari percobaan yang dilakukan sebelumnya dalam penelitian ini menunjukkan bahwa metode Binary Encoding and Decoding membutuhkan waktu eksekusi program yang lebih lama daripada metode representasi kromosom Priority-based Encoding and Decoding. Oleh karena itu, metode Priority-based Encoding and Decoding lebih tepat untuk merepresentasikan masalah yang dihadapi ke dalam bentuk kromosom sehingga penelitian ini menggunakan representasi kromosom dengan metode Priority-based Encoding and Decoding.

Algoritme Genetika memerlukan pemilihan parameter yang tepat agar dapat memaksimalkan kinerja algoritme tersebut. Oleh karena itu tahap pengujian dalam penelitian ini terdiri atas dua kali percobaan. Percobaan pertama adalah menentukan

parameter optimal Algoritme Genetika. Percobaan kedua adalah menguji hasil keluaran sistem Algoritme Genetika berbasis web.

Percobaan 1

Percobaan ini bertujuan menentukan parameter Algoritme Genetika yang paling optimal, yang terdiri atas pengujian parameter ukuran populasi, crossover probability, mutation probability, dan stall generation. Percobaan dilakukan dengan pengulangan masing-masing 10 kali dan untuk setiap percobaan node awal dan node tujuan ditetapkan masing-masing secara berurutan yaitu Node 21 dan Node 24. Percobaan untuk menentukan parameter ukuran populasi yang optimal dilakukan dengan cara mengubah nilai parameter ukuran populasi, sedangkan parameter yang lain dibuat tetap. Percobaan untuk menentukan parameter optimal crossover probability, mutation probability, dan stall generation dilakukan dengan cara yang sama dan parameter bukan uji dibuat tetap.

Dalam menentukan parameter optimal ukuran populasi, parameter Algoritme Genetika yang terdiri atas crossover probability, mutation probability, dan stall generation nilainya dibuat tetap, secara berurutan yaitu 0.5, 0.1, dan 5. Nilai parameter ukuran populasi yang akan diuji adalah 50, 100 , 150, 200, 250, 300, 350, dan 400. Pengujian akan dilakukan masing-masing sebanyak 10 kali pengulangan. Hasil pengujian dapat dilihat pada Lampiran 5. Parameter ukuran populasi yang optimal didapatkan dengan memilih nilai ukuran populasi yang memiliki nilai fitness rata-rata paling kecil sehingga akan menghasilkan rute yang paling optimum. Parameter dan hasil uji dapat dilihat pada Tabel 2.

Tabel 2 Parameter ukuran populasi dengan nilai fitness rata-rata. Ukuran Populasi Crossover Probability = 0.5 Mutation Probability = 0.1 Stall Generation = 5 50 4580.6 100 4474.2 150 4350.6 200 4254.1 250 4312.1 300 4150 350 4150 400 4150

(19)

11 Pada Gambar 11 dapat dilihat hubungan

parameter ukuran populasi dengan rata-rata nilai fitness.

Gambar 11 Hubungan Ukuran Populasi dan Nilai Fitness Rata-Rata.

Dari Gambar 11 dapat dilihat kecenderungan bahwa semakin besar ukuran populasi akan menghasilkan nilai fitness rata-rata yang sama atau semakin kecil. Ukuran populasi yang menghasilkan nilai fitness rata-rata paling kecil adalah 300, 350, dan 400 kromosom dengan nilai fitness rata-rata 4150. Namun untuk memilih nilai ukuran populasi yang lebih baik untuk digunakan adalah dilihat dari hubungan ukuran populasi dengan waktu eksekusi program. Pada Gambar 12 diperlihatkan hubungan nilai ukuran populasi dengan waktu eksekusi program. Pada Gambar 12 dapat dilihat bahwa semakin besar nilai ukuran populasi maka waktu eksekusi yang diperlukan akan semakin lama, sehingga hasil pengujian menunjukkan bahwa parameter ukuran populasi yang optimal adalah 300 kromosom.

Gambar 12 Hubungan Ukuran Populasi dan Waktu Eksekusi Program.

Nilai parameter crossover probability yang akan diuji adalah 0.5, 0.6, 0.7, 0.8, dan 0.9. Ukuran populasi yang digunakan dalam pengujian ini adalah 300 kromosom yang merupakan ukuran populasi optimal berdasarkan hasil percobaan sebelumnya. Hasil pengujian dapat dilihat pada Lampiran 6. Parameter dan hasil uji dapat dilihat pada Tabel 3.

Tabel 3 Parameter crossover probability dengan nilai fitness rata-rata.

Crossover Probability Ukuran Populasi = 300 Mutation Probability = 0.1 Stall Generation = 5 0.5 4150 0.6 4150 0.7 4150 0.8 4150 0.9 4150

Pada Gambar 13 diperlihatkan hubungan parameter crossover probability dengan nilai fitness rata-rata. Pada Gambar 13 dapat dilihat bahwa untuk setiap nilai crossover probability akan menghasilkan nilai fitness rata-rata yang sama.

Gambar 13 Hubungan Crossover Probability dan Nilai Fitness.

Hal ini memperlihatkan bahwa semua nilai crossover probability tersebut menghasilkan nilai rata-rata fitness optimum, namun untuk memilih nilai crossover probability yang lebih baik untuk digunakan adalah dilihat dari hubungan antara nilai crossover probability dengan akhir generasi yang dihasilkan yang dapat dilihat pada Gambar 14.

(20)

12 Gambar 14 Hubungan Crossover Probability

dan Akhir Generasi.

Gambar 14 diperlihatkan semua nilai crossover probability yang menghasilkan nilai fitness rata-rata sama. Dari nilai crossover probability ini dapat dilihat perbedaan akhir generasi yang dihasilkan. Akhir generasi ini memperlihatkan penggunaan crossover probability, semakin besar akhir generasi yang didapatkan untuk menghasilkan rute optimum maka crossover probability yang menghasilkan akhir generasi tersebut akan semakin baik digunakan. Hasil pengujian menunjukkan bahwa parameter crossover probability yang optimal adalah 0.6.

Nilai parameter mutation probability yang akan diuji adalah 0.1, 0.2, 0.3, 0.4, 0.5, dan 0.6. Parameter ukuran populasi dan crossover probability yang digunakan dalam pengujian ini secara berurutan adalah 300 dan 0.6 yang merupakan parameter optimal berdasarkan hasil percobaan sebelumnya. Hasil pengujian dapat dilihat pada Lampiran 7. Parameter dan hasil uji dapat dilihat pada Tabel 4.

Tabel 4 Parameter mutation probability dengan nilai fitness rata-rata.

Mutation Probability Ukuran Populasi = 300 Crossover Probability = 0.6 Stall Generation = 5 0.1 4150 0.2 4150 0.3 4150 0.4 4150 0.5 4150 0.6 4150

Pada Gambar 15 dapat dilihat hubungan parameter mutation probability dengan nilai fitness rata-rata.

Gambar 15 Hubungan Mutation Probability dan Nilai Fitness.

Dari Gambar 15 dapat dilihat bahwa nilai mutation probability 0.1, 0.2, 0.3, 0.4, 0.5, dan 0.6 menghasilkan nilai fitness rata-rata yang sama sehingga dari hubungan ini tidak bisa ditentukan nilai parameter mutation probability optimal. Penentuan parameter mutation probability yang lebih baik untuk digunakan adalah dilihat dari hubungan antara nilai mutation probability dengan akhir generasi yang dihasilkan. Hubungan parameter mutation probability dengan akhir generasi rata-rata dapat dilihat pada Gambar 16.

Gambar 16 Hubungan Mutation Probability dan Akhir Generasi.

Pada Gambar 16 ditunjukkan semua nilai mutation probability yang menghasilkan nilai fitness rata-rata sama. Dari nilai-nilai mutation probability ini dapat dilihat perbedaan akhir generasi yang dihasilkan. Akhir generasi ini

(21)

13 memperlihatkan penggunaan mutation

probability, semakin besar akhir generasi yang didapatkan untuk menghasilkan rute optimum maka mutation probability yang menghasilkan akhir generasi tersebut akan semakin baik digunakan. Hasil pengujian menunjukkan bahwa parameter mutation probability yang optimal adalah 0.5.

Nilai parameter stall generation yang akan diuji adalah 5, 10, 15, dan 20. Parameter ukuran populasi, crossover probability dan mutation probability yang digunakan dalam pengujian ini secara berurutan adalah 300, 0.6, dan 0.5 yang merupakan parameter optimal berdasarkan hasil percobaan sebelumnya. Salah satu kriteria berhenti Algoritme Genetika adalah apabila nilai fitness tidak mengalami perubahan selama generasi yang ditentukan yang disebut dengan stall generation. Hasil pengujian dapat dilihat pada Lampiran 8. Parameter dan hasil uji dapat dilihat pada Tabel 5.

Tabel 5 Parameter stall generation dengan nilai fitness rata-rata. Stall Generation Ukuran Populasi = 300 Crossover Probability = 0.6 Mutation Probability = 0.5 0.1 4150 0.2 4150 0.3 4150 0.4 4150 0.5 4150 0.6 4150

Hubungan parameter stall generation dengan nilai fitness rata-rata dapat dilihat dalam Gambar 17.

Gambar 17 Hubungan Stall Generation dan Nilai Fitness.

Dari Gambar 17 dapat dilihat bahwa semua nilai stall generation menghasilkan nilai fitness yang sama. Oleh sebab itu hubungan ini tidak bisa digunakan untuk menentukan parameter stall generation yang lebih baik untuk digunakan. Penentuan parameter stall generation ditentukan oleh waktu eksekusi program.

Pada Gambar 18 ditunjukkan hubungan parameter stall generation dengan waktu eksekusi. Semakin besar nilai parameter stall

generation yang digunakan maka akan

menghasilkan waktu eksekusi program yang lebih lama. Hasil pengujian menunjukkan bahwa parameter stall generation yang optimal adalah 5, karena dengan menggunakan nilai parameter stall generation yaitu 5 hanya akan membutuhkan waktu eksekusi program rata-rata sebesar 3 detik.

Gambar 18 Hubungan Stall Generation dan Waktu Eksekusi.

Percobaan 2

Algoritme Genetika ini diimplementasikan dalam sebuah web client dengan menggunakan parameter optimal yang telah didapatkan yaitu parameter ukuran populasi, crossover probability, mutation probability, dan stall generation secara berurutan adalah 300, 0.6, 0.5, dan 5. Pada percobaan ini akan dilakukan pengujian rute distribusi optimum yang dihasilkan dari sistem berbasis web. Input yang dimasukkan oleh pengguna sistem adalah node awal dan node tujuan pengguna. Pada percobaan ini, node awal yang dipilih adalah Node 21, sedangkan node tujuan yang dipilih adalah Node 42. Rute dari Node 21 menuju Node 42 dapat dilewati melalui beberapa alternatif rute. Beberapa alternatif rute tersebut secara berurutan dapat dilihat pada Gambar 19, Gambar 20, Gambar 21, Gambar 22, Gambar 23, Gambar 24.

(22)

14 Gambar 19 Rute Alternatif 1.

Gambar 20 Rute Alternatif 2.

Gambar 21 Rute Alternatif 3.

Gambar 22 Rute Alternatif 4.

Gambar 23 Rute Alternatif 5.

Gambar 24 Rute Alternatif 6.

Pada Tabel 6 dapat dilihat jarak tempuh, waktu tempuh rata-rata, dan nilai fitness yang dihasilkan dengan menggunakan perhitungan secara manual dari masing-masing gambar di atas.

Tabel 6 Jarak tempuh, waktu tempuh rata - rata, dan nilai fitness.

Alternatif Rute Jarak (meter) Waktu Rata-Rata (detik) Nilai Fitness Rute 1 1189 603 3006.5 Rute 2 1434 202 1473 Rute 3 1217 492 2576.5 Rute 4 1422 616 3175 Rute 5 1586 456 2617 Rute 6 1921 535 3100.5

Dari Tabel 6 dapat dilihat bahwa rute yang paling optimum adalah rute alternatif 2, yaitu Node 21 – 35 – 14 – 15 – 27 – 28 – 42. Rute ini memiliki nilai fitness terkecil sehingga dianggap merupakan rute paling optimum.

(23)

15 Rute optimum antarnode sebagai

representasi dari jalur distribusi yang dihasilkan oleh sistem berbasis web dengan node awal adalah Node 21 dan node akhir adalah Node 42 sebagai berikut :

Rute : Node 21 - Node 35 - Node 14 - Node 15

- Node 27 - Node 28 - Node 42.

Jalan yang dilalui : Kapten Muslihat - Kapten

Muslihat - Ir.H.Juanda - Ir.H.Juanda - Sudirman - Sudirman.

Jarak tempuh : 1434 meter.

Waktu tempuh rata-rata : 202 detik.

Tampilan sistem yang menghasilkan rute optimum ini dapat dilihat pada Lampiran 9. Rute optimum yang dihasilkan oleh sistem berbasis web sama dengan rute optimum yang dihasilkan dengan perhitungan secara manual di atas. Hal ini menunjukkan bahwa sistem berbasis web tersebut berjalan dengan baik.

KESIMPULAN DAN SARAN Kesimpulan

Berdasarkan hasil penelitian didapat beberapa kesimpulan, yaitu :

1. Perancangan supply chain network dalam menentukan rute optimum jalur distribusi yang dilakukan dengan menggunakan Algoritme Genetika dan diimplementasikan dalam bentuk web client sudah dapat berjalan dengan baik.

2. Kinerja Algoritme Genetika dalam penelitian ini yang bertujuan menentukan rute optimum jalur distribusi dalam supply chain network dengan menggunakan data peta jalan Kota Bogor akan mencapai optimal pada kombinasi nilai parameter untuk ukuran populasi, crossover probability, mutation probability, dan stall generation secara berurutan adalah 300, 0.6, 0.5 dan 5.

3. Hubungan jumlah kromosom dengan nilai fitness rata-rata tidak bisa digunakan untuk menentukan nilai parameter ukuran populasi yang paling optimum, sehingga digunakan hubungan jumlah kromosom dan waktu eksekusi program.

4. Hubungan crossover probability dan mutation probability dengan nilai fitness rata-rata tidak bisa digunakan untuk menentukan nilai parameter crossover probability dan mutation probability yang paling optimum, sehingga digunakan

hubungan crossover probability dan mutation probability dengan akhir generasi algoritme.

5. Hubungan stall generation dengan nilai fitness rata-rata tidak bisa digunakan untuk menentukan nilai parameter stall generation yang paling optimum, sehingga digunakan hubungan stall generation dengan waktu eksekusi program.

Saran

Beberapa saran yang dapat dilakukan untuk penelitian berikutnya, yaitu:

1. Mengembangkan sistem ini dengan mengakomodasi masalah kepadatan lalu lintas dengan membedakan antara waktu sibuk dan waktu tidak sibuk.

2. Mengembangkan visualisasi yang baik untuk sistem penentuan rute optimum ini. 3. Mempercepat proses eksekusi program

Algoritme Genetika dengan memanfaatkan Algoritme Genetika parallel.

DAFTAR PUSTAKA

Ayers B. 2001. Handbook of Supply Chain Management. USA : st.Lucie Press. Gen M, Cheng R. 2000. Genetic Algorithm and

Engineering Optimization. Canada. John Wiley & Sons, Inc.

Gen M, Cheng R. 2008. Network Models and Optimization. London. Springer-Verlag London.

Goldberg D. 1989. Genetic Algorithms in

Search, Optimization, and Machine

Learning. England : Addison-Wesley Publishing Company.

Hugos M. 2003. Essentials of Supply Chain Management. Canada : John Wiley & Sons, Inc.

Priasa A. 2008. Perancangan Supply Chain

Network Untuk Penentuan Lokasi

Produksi dan Jalur Distribusi [skripsi]. Bogor. Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor.

Sivanandam S, Deepa S. 2008. Introduction to

Genetic Algorithms. New York.

Springerverlag Berlin Heidelberg.

Suyanto. 2005. Algoritma Genetika Dalam Matlab. Yogyakarta : Andi.

Thiang, dkk. 2001. Implementation of Genetic Algorithm on MCS51 Microcontroller for

(24)

16 Finding the Shortest Path. Prosiding

seminar of intelligent Technology and Its Aplication (SITIA 2001). ITS-Surabaya. Thiang, dkk. 2002. Pencarian Rute Terpendek

Menggunakan Algoritme Genetika. Jurnal Teknik Elektro Vol 2, No 2 September 78 – 83.

Yinzhen, dkk. 2006. Faster Genetic Algorithm For Network Paths. The Sixth International Symposium on Operations

Research and Its Applications

(25)
(26)

18 Lampiran 1 Data Node Kota Bogor Sebagai Representasi Jalur Distribusi.

ID Node

Nama Node Keterangan Node

1 NODE 1 padjadjaran - ottoiskandar dinata 2 NODE 2 padjadjaran - jalak harupat

3 NODE 3 padjadjaran - pangarango - lodaya 1 4 NODE 4 padjadjaran - salak - lodaya II 5 NODE 5 salak - jalak harupat

6 NODE 6 padjadjaran - tol jagorawi 7 NODE 7 ottoiskandar dinata - bangka 8 NODE 8 ottoiskandar dinata - roda 9 NODE 9 padjadjaran - sambu 10 NODE 10 banka - sambu

11 NODE 11 ir.h.juanda-ottosikandar dinata-suya kencana 12 NODE 12 roda - surya kencana

13 NODE 13 ir.h.juanda - paledang 14 NODE 14 ir.h.juanda - kapten muslihat 15 NODE 15 ir.h. juanda - gedong sawah 1 16 NODE 16 paledang - kapten muslihat 17 NODE 17 veteran - merdeka - kapten muslihat 18 NODE 18 perintis kemerdekaan - veteran 19 NODE 19 perintis kemerdekaan - dr semeru 20 NODE 20 merdeka - dr semeru

21 NODE 21 kapten muslihat - raja permas 22 NODE 22 m.a.salmun - raja permas 23 NODE 23 m.a.salmun - merdeka 24 NODE 24 ahmad yani - padjadjaran 25 NODE 25 mandalawangi - pangarango 26 NODE 26 pangrango 1 - jalak harupat

27 NODE 27 ir.h.juanda - jalak harupat - sudirman 28 NODE 28 pengadilan - sudirman

29 NODE 29 ahmad yani-sudirman-re martadinata 30 NODE 30 re. martadinata - merdeka

31 NODE 31 raja permas - dewi sartika 32 NODE 32 dewi satika - m.a.salmun 33 NODE 33 pangrango - salak 34 NODE 34 pangrango - pangrango 1 35 NODE 35 kapten muslihat - dewi sartika 36 NODE 36 pengadilan - dewi sartika 37 NODE 37 raja permas

38 NODE 38 perintis kemerdekaan

39 NODE 39 perintis kemerdekaan - merdeka 40 NODE 40 mandalawangi - padjadjaran 41 NODE 41 gedong sawah 1 - dewi sartika 42 NODE 42 sawo jajar - sudirman

43 NODE 43 merdeka - mawar 44 NODE 44 ahmad yani - dadali

(27)

19 Lampiran 2 Data Edge Kota Bogor Sebagai Representasi Jalur Distribusi.

ID Ed ge

Nama Edge

Nama Jalan Node

Awal Node Akhir Jarak (meter) Waktu (detik) 1 E1 padjadjaran 1 6 390 49 2 E2 padjadjaran 1 2 684 59 3 E3 ottoiskandar dinata 1 7 129 22 4 E5 jalak harupat 2 26 269 24 5 E2 padjadjaran 2 1 684 59 6 E4 padjadjaran 2 3 375 42 7 E8 pangrango 3 34 79 5 8 E12 padjajaran 3 40 84 7 9 E4 padjajaran 3 2 375 42

10 E14 lodaya I - Kumbang - lodaya 2 3 4 552 97

11 E15 salak 4 33 374 40

12 E14 lodaya 2 - Kumbang - lodaya 1 4 3 552 97 13 E17 padjadjaran 4 24 2350 150

14 E13 padjadjaran 4 40 395 100

15 E16 salak 5 33 390 42

16 E22 jalak harupat 5 27 570 86

17 E50 padjadjaran 6 9 304 28

18 E1 padjadjaran 6 1 390 49

19 E3 ottoiskandar dinata 7 1 129 22 20 E53 ottoiskandar dinata 7 8 503 103

21 E52 bangka 7 10 420 92

22 E54 roda 8 12 1010 322

23 E53 ottoiskandar dinata 8 7 503 103 24 E55 ottoiskandar dinata 8 11 127 43

25 E50 padjadjaran 9 6 304 28

26 E51 sambu 9 10 167 113

27 E51 sambu 10 9 167 113

28 E52 bangka 10 7 420 92

29 E56 surya kencana 11 12 988 116 30 E57 ir.h.juanda 11 13 274 101 31 E55 ottoiskandar dinata 11 8 127 43

32 E54 roda 12 8 1010 322 33 E38 paledang 13 16 1019 127 34 E37 ir.h.juanda 13 14 530 81 35 E57 ir.h.juanda 13 11 274 101 36 E24 ir.h.juanda 14 15 274 39 37 E37 ir.h.juanda 14 13 530 81 38 E26 kapten muslihat 14 35 259 37 39 E24 ir.h.juanda 15 14 274 39 40 E25 gedong sawah 15 41 246 39 41 E23 ir.h.juanda 15 27 328 52

42 E38 Paledang 16 13 1019 127

43 E36 kapten muslihat 16 21 128 29 44 E39 kapten muslihat 16 17 138 26 45 E39 kapten muslihat 17 16 138 26

46 E49 veteran 17 18 100 37

47 E48 perintis kemerdekaan 18 38 358 57 48 E47 perintis kemerdekaan 19 38 180 57

49 E61 mawar 19 43 77 15

50 E46 dr.semeru 19 20 53 20

(28)

20

52 E46 dr.semeru 20 19 53 20

53 E41 merdeka 20 39 100 13

54 E36 kapten muslihat 21 16 128 29 55 E35 raja permas 21 37 350 132 56 E28 kapten muslihat 21 35 83 13 57 E33 raja permas 22 37 300 134

58 E32 m.a.salmun 22 32 78 95 59 E44 m.a.salmun 22 23 460 84 60 E44 m.a.salmun 23 22 460 84 61 E43 merdeka 23 20 225 123 62 E45 merdeka 23 43 50 26 63 E17 padjadjaran 24 4 2350 150

64 E64 ahmad yani 24 44 460 57

65 E9 pangrango 25 34 161 37

66 E11 mandalawangi 25 40 193 19

67 E10 pangrango 25 33 246 23

68 E7 jalak harupat 26 5 157 22 69 E22 jalak harupat 27 5 570 86 70 E23 ir.h.juanda 27 15 328 52 71 E21 sudirman 27 28 130 17 72 E21 sudirman 28 27 130 17 73 E58 sudirman 28 42 360 44 74 E31 pengadilan 28 36 500 98 75 E63 pemuda/dadali 29 44 2314 205 76 E19 sudirman 29 42 776 91 77 E20 re martadinata 29 30 1064 182 78 E20 re martadinata 30 29 1064 182 79 E62 merdeka 30 43 770 53

80 E27 dewi sartika 31 35 100 92 81 E29 dewi sartika 31 41 52 50 82 E34 raja permas 31 37 120 122

83 E32 m.a.salmun 32 22 78 95

84 E30 dewi sartika 32 36 134 24

85 E59 sawo jajar 32 42 461 242

86 E15 salak 33 4 374 40 87 E10 pangrango 33 25 246 23 88 E16 salak 33 5 390 42 89 E8 pangrango 34 3 79 5 90 E6 pangrango I 34 26 212 33 91 E9 pangrango 34 25 161 37

92 E26 kapten muslihat 35 14 259 37 93 E27 dewi sartika 35 31 100 92 94 E28 kapten muslihat 35 21 83 13

95 E59 pengadilan 36 28 152 98

96 E30 dewi sartika 36 32 134 24 97 E60 dewi sartika 36 41 237 46 98 E34 raja permas 37 31 120 122 99 E33 raja permas 37 22 300 134 100 E47 perintis kemerdekaan 38 19 180 57 101 E42 perintis kemerdekaan 38 39 100 34

102 E40 merdeka 39 17 240 41 103 E41 merdeka 39 20 100 13 104 E12 padjajaran 40 3 84 7 105 E13 padjadjaran 40 4 395 100 106 E11 mandalawangi 40 25 193 19 Lampiran 2 Lanjutan

(29)

21 107 E29 dewi sartika 41 31 52 50

108 E25 gedong sawah 41 15 346 39 109 E60 dewi sartika 41 36 237 47

110 E58 sudirman 42 28 360 44

111 E19 sudirman 42 29 776 91

112 E59 sawo jajar 42 32 461 242

113 E62 merdeka 43 30 770 53

114 E45 merdeka 43 23 50 26

115 E61 mawar 43 19 77 15

116 E64 ahmad yani 44 24 460 57 117 E18 ahmad yani 44 29 1606 205 Lampiran 2 Lanjutan

(30)

22 Lampiran 3 Representasi Graf Data Peta Kota Bogor.

(31)

23 Lampiran 4 Tampilan Awal dan Hasil Penentuan Rute Optimum Dalam Web.

Gambar

Ilustrasi dari proses supply chain network dapat  dilihat dalam Gambar 1.
Gambar 2 Diagram Alir Algoritme  Genetika.
Ilustrasi  proses  WMX  dapat  dilihat  dalam  Gambar 3.
Gambar 5 Metodologi Penelitian.
+7

Referensi

Dokumen terkait

Sehubungan dengan pengumuman Seleksi Terbuka Pengisian Jabatan Pimpinan Tinggi Pratama di Lingkungan Badan Ekonomi Kreatif Nomor ... , saya yang bertanda tangan di bawah ini:. Nama

Dilakukan dengan peningkatan pendidikan kesehatan kepada masyarakat dalam bentuk kampanye cara makan sehat yaitu makan seimbang baik dalam menu maupun jumlah

Hasil yang dicapai dalam penelitian ini menunjukkan bahwa, faktor penyebab terjadinya konflik antar warga di Kabupaten Luwu Utara yang terjadi di wilaya hukum

Namun, manusia (muslim) wajib berikthiar memperkecil risiko yang timbul. Salah satunya caranya adalah menabung. Tetapi upaya tersebut seringkali tidak memadai, karena

Pondok Pesantren Modern ini menggunakan metode transformasi bentuk dan ciri arsitektur tropis menurut Lippsmeier, (1980), adapun prinsip-prinsip arsitektur tropis

Maka dari itu definisi teologi sebagai ilmu seputar ketuhanan (dalam makna Tuhan sebagaimana dipahami oleh umat monoteis) hanya dapat berlaku secara eksklusif di

Halaman ini memuat berturut-turut kata ”SKRIPSI” (dengan huruf Time New Roman 14), judul (dengan huruf Time New Roman 16), lambang Universitas Udayana (dengan diameter 4

 Tidak ada hubungan antara kepuasan pasien terhadap pelayanan gizi dengan sisa makanan pasien diet makanan biasa dan lunak.. Perbedaan penelitian ini dengan