ANALISIS MAPPING PADA PARTIALLY MAPPED
CROSSOVER DALAM ALGORITMA
GENETIKA PADA TRAVELLING
SALESMAN PROBLEM
TESIS
SRI MELVANI HARDI
117038070
PROGRAM STUDI (S2) TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
ANALISIS MAPPING PADA PARTIALLY MAPPED
CROSSOVER DALAM ALGORITMA
GENETIKA PADA TRAVELLING
SALESMAN PROBLEM
TESIS
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Magister Teknik Informatika
SRI MELVANI HARDI
117038070
PROGRAM STUDI (S2) TEKNIK INFORMATIKA
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
JUDUL :ANALISIS MAPPING PADA PARTIALLY
MAPPED CROSSOVER DALAM
ALGORITMA GENETIKA PADA
TRAVELLING SALESMAN PROBLEM
NAMA : SRI MELVANI HARDI
NOMOR INDUK MAHASISWA : 117038070
PROGRAM STUDI : MAGISTER TEKNIK INFORMATIKA
FAKULTAS :ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA
UTARA
Komisi Pembimbing :
Pembimbing 2 , Pembimbing 1,
Dr. Erna Budhiarti Nababan Prof. Dr. Muhammad Zarlis
Diketahui/disetujui oleh
Program Studi Magister (S2) Teknik Informatika
Ketua,
Prof. Dr. H. Muhammad Zarlis
PERNYATAAN
ANALISIS MAPPING PADA PARTIALLY MAPPED CROSSOVER DALAM ALGORITMA GENETIKA PADA
TRAVELLING SALESMAN PROBLEM
TESIS
Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, 13 Januari 2014
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN
AKADEMIS
Sebagai sivitas akademika Universitas Sumatera Utara, saya yang bertanda tangan
dibawah ini:
Nama : Sri Melvani Hardi
NIM : 117038070
Program Studi : Teknik Informatika
Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada
Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty Free Right) atas tesis saya yang berjudul:
ANALISIS METODE FUZZYANALYTIC HIERARCHY PROCESS (FAHP)
DALAM MENENTUKAN POSISI JABATAN
Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media,
memformat, mengelola dalam bentuk database, merawat dan mempublikasikan
tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya
sebagai penulis dan sebagai pemegang dan/ atau sebagai pemilik hak cipta.
Demikian pernyataan ini dibuat dengan sebenarnya.
Medan, 13 Januari 2014
Telah diuji pada
Tanggal: 13 Januari 2014
PANITIA PENGUJI TESIS
Ketua : Prof. Dr. Muhammad Zarlis
Anggota : 1. Dr. Erna Budhiarti Nababan
2. Prof. Dr. Herman Mawengkang
3. Prof. Dr. Tulus
RIWAYAT HIDUP
DATA PRIBADI
Nama Lengkap : Sri Melvani Hardi
Tempat dan Tanggal Lahir : Medan, 1 Mei 1988
Alamat Rumah : Jl. Keluarga Gg Bersama No 5
Telepon/ Faks/ HP : -/ -/ 082161051868
E-mail : vani_hardi@yahoo.com
Instansi Tempat Bekerja : Sekolah Tinggi Teknik Harapan Medan
Alamat Kantor : JLH.M Joni No 70 Medan
DATA PENDIDIKAN
SD : SDN 065011 Medan TAMAT: 2000
SMP : SMP Negeri 30 Medan TAMAT: 2003
SMA : SMA Swasta Kartika I-2 Medan TAMAT: 2006
S1 : Ilmu Komputer Universitas Sumatera Utara TAMAT: 2010
UCAPAN TERIMA KASIH
Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa atas berkat,
rahmat dan karunianya berupa pengetahuan, kesehatan dan kesempatan yang
diberikan kepada penulis sehingga dapat menyelesaikan tesis dengan judul
“ANALISIS MAPPNG PADA PARTIALLY MAPPED CROSSOVER DALAM
ALGORITMA GENETIKA PADA TRAVELLING SALESMAN PROBLEM”.
Dalam penyusunan untuk menyelesaikan tesis ini , penulis banyak mendapati
pelajaran yang besar, baik berupa saran maupun nasehat dari berbagai pihak
terutama dari dosen pembimbing serta dari dosen pembanding, sehingga
pengerjaan tesis ini dapat diselesaikan dengan baik. Tidak lepas dari dukungan
orang tua, yang juga telah banyak memberikan bantuan sehingga penulis dapat
sampai pada tahap penyelesaian TESIS ini.
Untuk itu penulis ingin menyampaikan ucapan terimakasih yang sebesar–
besarnya kepada :
1. Kedua Orangtua saya Ayahanda Mai Hardi dan Ibunda Kholidah
Hanum tercinta yang telah memberikan kasih sayangnya, doa yang tak
pernah putus serta dorongan moril maupun materil kepada saya
sehingga dapat menyelesaikan tesis ini dengan baik.
2. Bapak Prof. Dr. Muhammad Zarlis, selaku Ketua Program Studi
Pascasarjana Teknik Informatika Fakultas Ilmu Komputer dan
Teknologi Informasi Sumatera Utara Medan sekaligus Pembimbing I
yang telah bersedia memberikan bimbingan serta pengarahan hingga
selesainya penulisan tesis ini.
3. Ibu Dr.Erna Budhiarti Nababan, M.IT selaku Dosen Pembimbing II
yang telah bersedia memberikan bimbingan serta pengarahan hingga
4. Bapak Dosen Penguji yang telah memberikan saran untuk perbaikan
dan penyelesaian tesis ini.
5. Bapak dan Ibu Dosen yang telah memberikan materi perkuliahan dan
ilmu pengetahuan selama penulis menyelesaikan Program Studi
Pascasarjana Teknik Informatika.
6. Segenap sivitas akademika Program Studi Pascasarjana Teknik
Informatika Sumatera Utara.
7. Teman – teman seperjuangan Angkatan 2011 Kom-C yang telah
memberikan dukungan dalam penyelesaian tesis ini.
8. Sahabat- sahabat terbaik Dameria Gloria CT, S. Kom dan Faridah
Amalia Mandaga S.Kom yang telah memberikan dukungan dalam
penyelesaian tesis ini.
9. Adik saya Rini Salsabella Hardi dan Khalid Prabowo Hardi serta om
Prof Darma Bakti Nst dan tante Prof Rosmayati Tanjung yang telah
banyak memberikan dorongan dan bantuan kepada saya sehingga dapat
menyelesaikan tesis ini dengan baik.
Penulis menyadari bahwa masih ada kekurangan dalam penulisan tesis ini,
untuk itu, penulis mengharapkan kritik dan saran dari pembaca demi
kesempurnaan penelitian selanjutnya.
Akhir kata penulis berharap semoga karya ilmiah ini dapat bermanfaat bagi
semua pihak, khususnya dalam bidang pendidikan.
Penulis menyadari bahwa masih ada kekurangan dalam penulisan tesis ini,
untuk itu, penulis mengharapkan kritik dan saran dari pembaca demi
kesempurnaan penelitian selanjutnya.
Akhir kata penulis berharap semoga karya ilmiah ini dapat bermanfaat bagi
semua pihak, khususnya dalam bidang pendidikan.
Medan, 13 Januari 2014
Penulis
Sri Melvani Hardi
ABSTRAK
Travelling salesman problem merupakan permasalahan bagaimana seorang salesman dapat mengatur rute perjalananannya untuk mengunjungi sejumlah kota yang diketahui jarak satu kota dengan kota lainnya sehingga jarak yang ditempuh merupakan jarak minimum dimana salesman hanya dapat mengunjungi kota tersebut tepat satu kali. Untuk menyelesaikan masalah TSP banyak metode optimasi yang dapat digunakan salah satunya yaitu algoritma genetika. Algoritma genetika merupakan algoritma yang metode pencariannya sama seperti mekanisme evolusi biologi. Crossover merupakan salah satu operator pada genetika dimana proses menukar sebagian gen pada kromosom induk pertama dengan sebagian gen pada kromosom induk kedua untuk membentuk kromosom baru. Metode crossover yang digunakan dalam menyelesaikan masalah travelling salesman problem salah satunya yaitu partially mapped crossover (PMX) dimana proses mapping pada PMX yaitu menentukan variasi dari pertukaran gen pada kromosom yang mempengaruhi pencapaian best fitness pada 2 kromosom. Pada penelitian ini variasi dari PMX variasi I dirancang menggunakan titik posisi yang acak sedangkan pada PMX variasi II dirancang dengan menggunakan perubahan pada daerah mapping. Pengujian pada penelitian ini menggunakan data dari Travelling Salesman Problem Library
(TSPLIB). Hasil penelitian menunjukkan bahwa PMX yang dirancang dengan menggunakan posisi titik potong yang acak dapat menghasilkan best fitness yang lebih baik dibandingkan dengan PMX yang dirancang dengan mengubah posisi daerah pemetaan and jika dibandingkan dengan PMX bentuk umum yang posisi titik potong sama.
ANALYSIS MAPPING OF PARTIALLY MAPPED CROSSOVER IN GENETIC ALGORITHM FOR TRAVELLING
SALESMAN PROBLEM ABSTRACT
Traveling salesman problem is the problem how salesman can set tour to visit a number of cities which known distance of the city with other cities so that the distance is the minimum distance where the salesman can only visit the city exactly once. To resolve TSP problem, there are many optimization methods that can be used one of them which is a genetic algorithm. Genetic algorithm is an algorithm which have same search method as a mechanism of biological evolution. Crossover is a genetic operator which the process of exchanging some genes on chromosome first parent with the majority of genes in the two parent chromosomes to form a new chromosome .One of the crossover method used in solving traveling salesman problem is partially mapped crossover ( PMX ),where the process mapping of PMX are determines the variation exchange of genes on chromosomes that affect the achievement of best fitness on 2 chromosome. In this study the first variation (PMX variation I) is designed using random point position while in the second variation (PMX variation II) is designed by using the change in the mapping area. Testing in this study using data from the Travelling Salesman Problem Library (TSPLIB). The result obtained that PMX which designed by using randomly cut position have best fittness better than PMX is designed by changing the position of the mapping area and if it compared with the general form of PMX with the same position cut point.
DAFTAR ISI
Halaman
HALAMAN JUDUL i
PENGESAHAN ii
PERNYATAAN ORISINALITAS iii
PERSETUJUAN PUBLIKASI iv
PANITIA PENGUJI v
RIWAYAT HIDUP vi
UCAPAN TERIMA KASIH vii
ABSTRAK ix
1.5 Manfaat Penelitian 4
BAB 2 LANDASAN TEORI 5
2.1 Travelling Salesman Problem 5
2.2 Algoritma Genetika 6
2.3 Teknik Pengkodean 8
2.4 Membangkitkan Populasi Awal dan Kromosom 8
2.5 Evaluasi Fitness 8
2.6 Seleksi 9
2.6.1 Seleksi Roda Roulette (Roulete Wheel Selection) 9
2.6.2 Seleksi Ranking (Rank-based Fitness) 9
2.6.3 Seleksi Turnamen (Turnament Selection) 10
2.7 Crossover 10
2.7.1 One Point Crossover 10
2.7.2 Two Point Crossover 10
2.7.3 Uniform Crossover 11
2.7.4 Partially Mapped Crossover 11
2.8 Mutasi 12
2.8.1 Bit Inversion 12
2.8.2 Permutation Encoding 12
2.10 Riset Terkait 13
2.11 Perbedaan dengan Riset lain 14
2.12 Kontribusi Riset 14
BAB 3 METODOLOGI PENELITIAN 15
3.1 Pendahuluan 15
3.2 Data Yang Digunakan 15
3.3 Analisis Algoritma Genetika Pada Travelling Salesman
Problem 16
3.3.1 Dasar Algoritma Genetika 17
3.3.2 Mendefinisikan Individu 21
3.3.3 Pembangkitan Populasi Awal 21
3.3.3 Seleksi 22
3.3.4 Partially Mapped Crossover dan Variasinya 23
3.3.5 Mutasi 28
BAB 4 HASIL DAN PEMBAHASAN 29
4.1 Pendahuluan 29
4.2 Hasil Pengujian Pertama 29
4.2.1 Pengujian Dengan Probabilitas Crossover (Pc = 0,25) 29 4.2.2 Pengujian Dengan Probabilitas Crossover(Pc = 0,50) 32
4.2.3 Pengujian Dengan Probabilitas Crossover (Pc =1) 35
4.3 Hasil Pengujian Kedua 38
4.3.1 Pengujian Dengan Probabilitas Crossover (Pc = 0,25) 38 4.3.2 Pengujian Dengan Probabilitas crossover (Pc = 0,50) 41
4.3.3 Pengujian Dengan Probabilitas Crossover (Pc =1) 43
4.4 Pembahasan 46
BAB 5 KESIMPULAN DAN SARAN 49
5.1 Kesimpulan 49
5.2 Saran 49
DAFTAR GAMBAR
Halaman
Gambar 2.1 Posisi kota yang akan dilewati 5
Gambar 2.2 Ilustrasi tahapan proses dari algoritma genetika 7
Gambar 3.1 Metodologi penelitian 16
Gambar 3.2 Dasar Algoritma Genetika 17
Gambar 3.3 Flowchart Partially Mapped Crossover (PMX) Umum 18
Gambar 3.4 Flowchart Partially Mapped Crossover (PMX) Variasi I 19 Gambar 3.5 Flowchart Partially Mapped Crossover (PMX) Variasi II 20
Gambar 4.1 PMX umum (Pc = 1) 48
Gambar 4.2 PMX variasi I(Pc = 1) 49
DAFTAR TABEL
Halaman
Tabel 3.1 Koordinat kota 16
Tabel 3.2 Pembentukan Populasi awal 17
Tabel 4.1 Probabilitas crossover(Pc=0,25)PMX Variasi Umum 30
Tabel 4.2 Probabilitas crossover(Pc=0,25)PMX Variasi I 30
Tabel 4.3 Probabilitas crossover(Pc=0,25)PMX Variasi II 31
Tabel 4.4 Hasil Pengujian Pc 0,25 32
Tabel 4.5 Probabilitas crossover(Pc=0,50)PMX Variasi Umum 32
Tabel 4.6 Probabilitas crossover(Pc=0,50)PMX Variasi I 33
Tabel 4.7 Probabilitas crossover(Pc=0,50)PMX Variasi II 34
Tabel 4.8 Hasil Pengujian Pc 0,50 35
Tabel 4.9 Probabilitas crossover(Pc=1)PMX Variasi Umum 35
Tabel 4.10 Probabilitas crossover(Pc=1)PMX Variasi I 36
Tabel 4.11 Probabilitas crossover(Pc=1)PMX Variasi II 37
Tabel 4.12 Hasil Pengujian Pc 0,50 38
Tabel 4.13 Probabilitas crossover(Pc=0,25)PMX Variasi Umum 39
Tabel 4.14 Probabilitas crossover(Pc=0,25)PMX Variasi I 39
Tabel 4.15 Probabilitas crossover(Pc=0,25)PMX Variasi II 40
Tabel 4.16 Hasil Pengujian Pc 0,25 41
Tabel 4.17 Probabilitas crossover(Pc=0,50)PMX Variasi Umum 41
Tabel 4.18 Probabilitas crossover(Pc=0,50)PMX Variasi I 42
Tabel 4.19 Probabilitas crossover(Pc=0,50)PMX Variasi II 42
Tabel 4.20 Hasil Pengujian Pc 0,50 43
Tabel 4.21 Probabilitas crossover(Pc=1)PMX Variasi Umum 44
Tabel 4.22 Probabilitas crossover(Pc=1)PMX Variasi I 45
Tabel 4.23 Probabilitas crossover(Pc=1)PMX Variasi II 46
ABSTRAK
Travelling salesman problem merupakan permasalahan bagaimana seorang salesman dapat mengatur rute perjalananannya untuk mengunjungi sejumlah kota yang diketahui jarak satu kota dengan kota lainnya sehingga jarak yang ditempuh merupakan jarak minimum dimana salesman hanya dapat mengunjungi kota tersebut tepat satu kali. Untuk menyelesaikan masalah TSP banyak metode optimasi yang dapat digunakan salah satunya yaitu algoritma genetika. Algoritma genetika merupakan algoritma yang metode pencariannya sama seperti mekanisme evolusi biologi. Crossover merupakan salah satu operator pada genetika dimana proses menukar sebagian gen pada kromosom induk pertama dengan sebagian gen pada kromosom induk kedua untuk membentuk kromosom baru. Metode crossover yang digunakan dalam menyelesaikan masalah travelling salesman problem salah satunya yaitu partially mapped crossover (PMX) dimana proses mapping pada PMX yaitu menentukan variasi dari pertukaran gen pada kromosom yang mempengaruhi pencapaian best fitness pada 2 kromosom. Pada penelitian ini variasi dari PMX variasi I dirancang menggunakan titik posisi yang acak sedangkan pada PMX variasi II dirancang dengan menggunakan perubahan pada daerah mapping. Pengujian pada penelitian ini menggunakan data dari Travelling Salesman Problem Library
(TSPLIB). Hasil penelitian menunjukkan bahwa PMX yang dirancang dengan menggunakan posisi titik potong yang acak dapat menghasilkan best fitness yang lebih baik dibandingkan dengan PMX yang dirancang dengan mengubah posisi daerah pemetaan and jika dibandingkan dengan PMX bentuk umum yang posisi titik potong sama.
ANALYSIS MAPPING OF PARTIALLY MAPPED CROSSOVER IN GENETIC ALGORITHM FOR TRAVELLING
SALESMAN PROBLEM ABSTRACT
Traveling salesman problem is the problem how salesman can set tour to visit a number of cities which known distance of the city with other cities so that the distance is the minimum distance where the salesman can only visit the city exactly once. To resolve TSP problem, there are many optimization methods that can be used one of them which is a genetic algorithm. Genetic algorithm is an algorithm which have same search method as a mechanism of biological evolution. Crossover is a genetic operator which the process of exchanging some genes on chromosome first parent with the majority of genes in the two parent chromosomes to form a new chromosome .One of the crossover method used in solving traveling salesman problem is partially mapped crossover ( PMX ),where the process mapping of PMX are determines the variation exchange of genes on chromosomes that affect the achievement of best fitness on 2 chromosome. In this study the first variation (PMX variation I) is designed using random point position while in the second variation (PMX variation II) is designed by using the change in the mapping area. Testing in this study using data from the Travelling Salesman Problem Library (TSPLIB). The result obtained that PMX which designed by using randomly cut position have best fittness better than PMX is designed by changing the position of the mapping area and if it compared with the general form of PMX with the same position cut point.
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Travelling Salesmen Problem (TSP) termasuk ke dalam kelas NP hard yang pada umumnya menggunakan pendekatan heuristik untuk mencari solusinya.
Permasalahan utama dari TSP adalah bagaimana seorang salesman dapat mengatur
rute perjalananannya untuk mengunjungi sejumlah kota yang diketahui jarak satu
kota dengan kota lainnya sehingga jarak yang ditempuh merupakan jarak minimum
dimana salesmen hanya dapat mengunjungi kota tersebut tepat satu kali. Untuk
menyelesaikan masalah TSP banyak metode optimasi yang dapat digunakan yaitu
Hill Climbing Method, Ant Colony System, Dynamic Programming, Algoritma
Greedy, Algoritma Brute Force dan Algoritma Genetika
Dibanding metode optimasi lain, algoritma genetika memiliki perbedaan
dalam empat hal, yaitu algoritma genetika bekerja dengan struktur – struktur kode
variabel, menggunakan banyak titik pencarian (multiple point), informasi yang
dibutuhkan hanya fungsi obyektifnya saja (sehingga menjadikan implementasinya
lebih sederhana), serta menggunakan operator stokastik dengan pencarian terbimbing
(Goldberg, 1989).
Algoritma genetika merupakan algoritma yang diciptakan berdasarkan
inspirasi dari mekanisme seleksi alam dimana salah satu individu yang lebih kuat
menjadi pemenang dari lingkungan yang berkompetisi (Sastry, K,et.al. 2004).
Algoritma genetika ini banyak dipakai pada aplikasi bisnis, teknik maupun bidang
keilmuan. Algoritma ini dapat dipakai untuk mendapatkan solusi yang tepat untuk
masalah optimasi. Algoritma genetika telah terbukti menjadi pendekatan terbaik
karena seluruh ruang pencarian tidak perlu dilalui dalam memperoleh global
Konsep dasar algoritma genetika relatif mudah dipahami, karena
komponen-komponen pembentuk algoritma ini mencerminkan kehidupan di alam. Proses
pencarian pada algoritma genetika dimulai dengan memilih himpunan penyelesaian,
digambarkan dengan kromosom yang disebut dengan populasi. Solusi dari satu
populasi diambil untuk membentuk populasi baru, dimana pemilihannya tergantung
dari fitness terbaiknya. Hal ini dimotivasi dengan harapan bahwa populasi yang baru akan lebih baik dibandingkan populasi terdahulu. Proses ini dilakukan berulang-ulang
hingga kondisi tertentu terpenuhi.
Algoritma genetika umumnya terdiri dari tiga operasi yaitu: operasi
reproduksi, operasi crossover (persilangan), dan operasi mutasi dimana rekombinasi
dari ketiga aspek tersebut merupakan aspek yang memiliki peranan penting.
Crossover (persilangan) yang merupakan operator dari algoritma genetika yang melibatkan dua induk untuk membentuk kromosom baru. Proses ini dilakukan dengan
menukar sebagian informasi pada kromosom induk pertama dengan informasi dari
kromosom induk kedua. Proses crossover dilakukan pada setiap individu dengan probabilitas crossover yang ditentukan. Jika tidak terjadi crossover, satu induk dipilih secara random dengan probabilitas yang sama dan di duplikasi menjadi anak. Jika
terjadi crossover, keturunan didapatkan dari bagian-bagian kromosom induk. Jika
probabilitas crossover 100% maka keseluruhan keturunan didapatkan dengan
crossover. Jika probabilitas crossover 0% maka generasi baru dibuat dari salinan
kromosom-kromosom dari populasi lama yang belum tentu menghasilkan populasi
yang sama dengan populasi sebelumnya karena adanya penekanan selektif. Dengan
dilakukannya proses crossover akan menghasilkan keanekaragaman kromosom dalam populasi. Tingkat croosover yang tinggi menyebabkan semakin besar kemungkinan algoritma genetika mengeksplorasi ruang pencarian sekaligus mempercepat
ditemukannya solusi optimum. Secara tradisional, jumlah crossover point (yang
menentukan berapa banyak segmen yang dipertukarkan) telah ditentukan pada one
point atau two point. (Holland, 1975). Metode crossover yang digunakan dalam menyelesaikan Travelling Salesman Problem salah satunya yaitu partially mapped crossover.
Beberapa penelitian yang telah dilakukan terlebih dahulu yang terkait dengan
optimasi menggunakan algoritma genetika yaitu penelitian yang dilakukan oleh
dengan menggunakan metode order crossover sebagai teknik rekombinasi dan metode
insertion mutation sebagai teknik mutasi yang digunakan pada algoritma genetik; (Annies,et al. 2002) menunjukkan bahwa algoritma genetika dapat digunakan untuk menyelesaikan masalah optimasi yang kompleks seperti mencari rute paling optimum,
menggunakan beberapa metode seleksi yaitu roulette wheel, elitism dan gabungan antara metode roulette wheel dan elitism. Ada dua jenis crossover yang digunakan yaitu one cut point crossover dan two cut point crossover; (Tamilarsi & Kumar 2010) menemukan sebuah metode baru dalam penyelesaian masalah penjadwalan job shop
menggunakan hybrid Genetic Algorithm (GA) dengan Simulated Annealing (SA); sementara itu (Nasution, 2012) membahas analisis penyelesaian TSP menggunakan
partially mapped crossover dengan menentukan nilai probabilitas crossover 20%, 40%, 60%, 80% dan 99%. (Kusum Deep & Hadush Mebrahtu, 2012) membuat variasi
pada partially mapped crossover dengan menentukan letak kromosom dalam posisi
acak. (Al kasasbeh,et al. 2012) menambahkan sebuah procedure baru pada algoritma
genetika untuk menyelesaikan TSP yaitu dengan metode shared neighbour.
Meskipun telah banyak penelitian dengan menggunakan beberapa crossover
point untuk mendapatkan rute yang optimal pada travelling salesman problem tetapi belum diketahui pengaruh mapping pada Partially Mapped Crossover (PMX) dalam pencapaian best fitness, berdasarkan latar belakang masalah tersebut penulis tertarik untuk melakukan penelitian lebih mendalam untuk mengetahui bagaimana pengaruh
mapping pada PMX dalam pencapaian best fitness.
1.2Rumusan Masalah
Crossover merupakan tahapan atau proses penting dalam algoritma genetika untuk mendapatkan generasi terbaik, untuk itu perlu dilakukan analisis terhadap salah
satu metode crossover dimana pada penelitian ini akan menganalisis mapping pada
1.3. Batasan Masalah
Rumusan masalah diatas, dibatasi dengan beberapa hal sebagai berikut
1. Analisis dilakukan terhadap mapping pada partially mapped crossover(PMX).
2. Data pengujian menggunakan dua sampel data yaitu eil51.tsp dan eil76.tp
yang diperoleh dari TSPLIB
http://www.iwr.uni-heidelberg.de/iwr/comopt/software/TSPLIB95/.
3. Pengujian akan dilakukan dengan menggunakan probabilitas crossover 0,25
0,50 dan 1 serta probabilitas mutasi 0,1.
1.4 Tujuan Penelitian
Tujuan dari penelitian ini adalah untuk melihat pengaruh mapping pada Partially Mapped Crossover (PMX) terhadap pencapaian best fitness.
1.5 Manfaat Penelitian
Penelitian ini diharapkan dapat bermanfaat untuk :
1. Memberikan sumbangan bagi hasil studi dan penelitian selanjutnya dan
mengembangkan penelitian ini.
2. Menambah pemahaman dan pengetahuan penulis mengenai operator genetika
Partially Mapped Crossover (PMX)travelling salesman problem
3. Mengetahui penggunaan algoritma genetika yang dapat menghasilkan hasil
BAB 2
LANDASAN TEORI
2.1 Travelling Salesman Problem (TSP)
Travelling Salesmen Problem (TSP) termasuk ke dalam kelas NP hard yang pada umumnya menggunakan pendekatan heuristik untuk mencari solusinya. Permasalahan
utama dari TSP adalah bagaimana seorang salesman dapat mengatur rute
perjalananannya untuk mengunjungi sejumlah kota yang diketahui jarak satu kota
dengan kota lainnya sehingga jarak yang ditempuh merupakan jarak minimum dimana
salesmen hanya dapat mengunjungi kota tersebut tepat satu kali. Untuk menyelesaikan
masalah TSP banyak metode optimasi yang dapat digunakan yaitu Hill Climbing Method, Ant Colony System, Dynamic Programming, Algoritma Greedy, Algoritma
Brute Force dan Algoritma Genetika.
Persoalan yang dihadapi TSP ialah bagaimana merencanakan total jarak yang
minimum. Untuk menyelesaikan persoalan tersebut, tidak mudah dilakukan karena
terdapat ruang pencarian dari sekumpulan permutasi sejumlah kota. Maka TSP
kemudian dikenal dengan persoalan Non Polinomial. Gambaran sederhana dari
pengertian TSP adalah sebagai berikut:
Kota – kota pada gambar 2.1 masing-masing mempunyai koordinat (x,y)
sehingga jarak antar kedua kota dapat dihitung dengan rumus :
�
(�,�)���
�− �
��
Setelah jarak yang menghubungkan tiap kota diketahui maka dicari rute
terpendek dari jalur yang akan dilewati untuk kembali ke kota awal. = koordinat y kota j
2.2 Algoritma Genetika
Algoritma Genetika sebagai cabang dari Algoritma Evolusi merupakan metode
yang digunakan untuk memecahkan suatu pencarian nilai dalam sebuah masalah
optimasi yaitu permasalahan-permasalahan yang tak linier (Mitsuo& Runwei, 2000).
Algoritma genetika berbeda dengan teknik konvergensi konvensional yang
lebih bersifat deterministik (Gen & Cheng., 1997). Algoritma Genetik memakai
mekanisme seleksi alam dan ilmu genetik sehingga istilah-istilah pada Algoritma
Genetik akan bersesuaian dengan istilah-istilah pada seleksi alam dan ilmu genetik.
Sebuah solusi yang dibangkitkan dalam algoritma genetika disebut sebagai
kromosom, sedangkan kumpulan kromosom-kromosom tersebut disebut sebagai
populasi. Sebuah kromosom dibentuk dari komponen-komponen penyusun yang
disebut sebagai gen dan nilainya dapat berupa bilangan numerik, biner, simbol
ataupun karakter tergantung dari permasalahan yang ingin diselesaikan.
Kromosom-kromosom tersebut akan berevolusi secara berkelanjutan yang disebut
dengan generasi. Dalam tiap generasi kromosom-kromosom tersebut dievaluasi
tingkat keberhasilan nilai solusinya terhadap masalah yang ingin diselesaikan
Secara umum tahapan proses dari algoritma genetika diperlihatkan pada
Gambar 2.2. Seperti terlihat pada gambar kromosom merupakan representasi dari
solusi. Operator genetika yang terdiri dari crossover dan mutasi dapat dilakukan kedua-duanya atau hanya salah satu saja yang selanjutnya operator evolusi dilakukan
melalui proses seleksi kromosom dari parent (generasi induk) dan dari offspring
(generasi turunan) untuk membentuk generasi baru (new population) yang diharapkan akan lebih baik dalam memperkirakan solusi optimum, proses iterasi kemudian
berlanjut sesuai dengan jumlah generasi yang telah ditetapkan.
2.3 Teknik Pengkodean
Teknik pengkodean adalah bagaimana mengkodekan gen dari kromosom,
gen merupakan bagian dari kromosom. Satu gen akan mewakili satu variabel. Agar
dapat diproses melalui algoritma genetik, maka alternatif solusi tersebut harus
dikodekan terlebih dahulu kedalam bentuk kromosom. Masing-masing kromosom
berisi sejumlah gen yang mengodekan informasi yang disimpan didalam individu
atau kromosom. Gen dapat direpresentasikan dalam bentuk bit,bilangan real, string,
daftar aturan, gabungan dari beberapa kode, elemen permutasi, elemen program atau
representasi lainnya yang dapat diimplementasikan untuk operator genetika.
2.4 Membangkitkan Populasi Awal dan Kromosom
Membangkitkan populasi awal adalah proses membangkitkan sejumlah
individu atau kromosom secara acak atau melalui prosedur tertentu. Ukuran untuk
populasi tergantung pada masalah yang akan diselesaikan dan jenis operator
genetika yang akan diimplementasikan. Setelah ukuran populasi ditentukan,
kemudian dilakukan pembangkitan populasi awal. Apabila ukuran populasi yang
dipilih terlalu kecil, maka tingkat eksplorasi atas ruang pencarian global akan terbatas,
walaupun arah menuju konvergensi lebih cepat. Apabila ukuran populasi terlalu besar,
maka waktu akan banyak terbuang karena berkaitan dengan besarnya jumlah data
yang dibutuhkan dan waktu ke arah konvergensi akan lebih lama (Goldberg, 1989).
2.5 Evaluasi Fitness
Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai ukuran
performansinya. Didalam evolusi alam, individu yang bernilai fitness tinggi yang
2.6 Seleksi
Dalam proses reproduksi setiap individu populasi pada suatu generasi diseleksi
berdasarkan nilai fitnessnya untuk bereproduksi guna menghasilkan keturunan.
Probabilitas terpilihnya suatu individu untuk bereproduksi adalah sebesar nilai fitness
individu tersebut dibagi dengan jumlah nilai fitness seluruh individu dalam pupulasi
(Davis, 1991). Proses seleksi memiliki beberapa jenis metode, berikut ini adalah
beberapa metode seleksi yang sering digunakan yaitu:
2.6.1 Seleksi Roda Roulette (Roulete Wheel Selection)
Metode seleksi roda roulette merupakan metode seleksi yang paling sederhana.
Metode ini juga sering dikenal dengan nama stochastic sampling with replacement.
Pada metode ini cara kerja seleksi berdasarkan nilai fitness dari tiap individu, jadi individu yang memiliki nilai fitness terbaik mempunyai kesempatan lebih besar untuk terpilih sebagai orang tua.
Langkah-langkah seleksi roulette wheel :
1. Dihitung nilai fitness masing-masing individu (fi dimana i adalah individu ke 1
s/d ke-n )
2. Dihitung total fitness semua individu ,
3. Dihitung fitness relatif masing-masing individu
4. Dari fitness relatif tersebut, dihitung fitness kumulatifnya.
5. Dibangkitkan nilai random
6. Dari bilangan random yang dihasilkan, ditentukan individu mana yang terpilih
dalam proses seleksi
2.6.2 Seleksi Ranking (Rank-based Fitness)
Seleksi ranking merupakan metode seleksi alternatif yang bertujuan untuk
menghindari terjadinya hasil konvergen yang terlalu cepat dari proses seleksi
berdasarkan nilai fitnessnya sehingga nilai yang diharapkan dari tiap individu bergantung kepada urutannya bukan hanya kepada nilai fitnessnya.
2.6.3 Seleksi Turnamen (Turnament Selection)
Seleksi turnamen merupakan variasi dari seleksi roda roulette dan seleksi ranking.
Pada metode seleksi ini, kromosom dipilih secara acak, kemudian diranking untuk
diambil nilai fitness terbaiknya.
2.7 Crossover
Crossover (pindah silang) adalah proses pemilihan posisi string secara acak dan menukar karakter- karakter stringnya (Goldberg, 1989). Fungsi crossover adalah menghasilkan kromosom anak dari kombinasi materi-materi gen dua kromosom
induk. Probabilitas crossover (Pc) ditentukan untuk mengendalikan frekuensi
crossover.
2.7.1 One Point Crossover
Pada crossover dilakukan dengan memisahkan suatu string menjadi dua bagian dan selanjutnya salah satu bagian dipertukarkan dengan salah satu bagian dari string yang
lain yang telah dipisahkan dengan cara yang sama. Proses yang demikian dinamakan
operator crossover satu titik. Contoh:
Induk 1: 11001 | 010
Induk 2: 00100 | 111
Diperoleh :
Anak 1: 11001 | 111
Anak 2: 00100 | 010
2.7.2 Two Point Crossover
crossover pertama disalin dari orangtua pertama, bagian dari titik crossover pertama dan kedua disalin dari orangtua kedua, kemudian selebihnya disalin dari orangtua
pertama lagi.
Contoh:
Induk 1: 110 | 010 | 10
Induk 2: 001 | 001 | 11
Diperoleh :
Anak 1 : 110 | 001 | 10
Anak 2 : 001 | 010 | 11
2.7.3 Uniform Crossover
Crossover seragam manghasilkan kromosom keturunan dengan menyalin bit-bit secara acak dari kedua orangtuanya.
Contoh:
11001011 + 11011101 = 11011111
2.7.4 Partially Mapped Crossover (PMX)
PMX diciptakan oleh Goldberg dan Lingle. PMX merupakan rumusan modifikasi dari
pindah silang dua-poin. Hal yang penting dari PMX adalah pindah silang dua poin
ditambah dengan beberapa prosedur tambahan.
Contoh:
Pilih posisi untuk menentukan substring secara acak
Induk 1 : 1 2 3 | 4 5 6 | 7 8
Induk 2 : 3 7 5 | 1 6 8 | 2 4
Diperoleh :
Anak 1 : 4 2 3 | 1 6 8 | 7 5
2.8 Mutasi
Operator mutasi dioperasikan sebagai cara untuk mengembalikan materi genetic yang
hilang. Melalui mutasi, individu baru dapat diciptakan dengan melakukan modifikasi
terhadap satu atau lebih nilai gen pada individu yang sama. Mutasi mencegah
kehilangan total materi genetika setelah reproduksi dan pindah silang. Mutasi ini
berperan utuk menggantikan gen yang hilang dari populasi akibat seleksi yang
memungkinkan munculnya kembali gen yang tidak muncul pada inisialisasi populasi.
2.8.1 Bit inversion
Melakukan inversi pada bit yang terpilih, 0 menjadi 1 dan sebaliknya, 1 menjadi 0.
Contoh :
11001001 => 10001001
2.8.2 Permutation Encoding
Order changing dengan memilih dua nilai dari gen dan menukarnya.
Contoh :
( 1 2 3 4 5 8 9 7 ) => ( 1 8 3 4 5 6 2 9 7 )
2.9 Parameter – Parameter dalam Algoritma Genetika
Parameter-parameter genetika berperan dalam pengendalian operator-operator
genetika yang digunakan dalam optimasi algoritma genetika menggunakan algoritma
genetika. (Davis, 1991; Sundhararajan, 1994; Sastry, 2004)
Parameter genetika yang sering digunakan meliputi ukuran populasi (N),
probabilitas pindah silang (Pc),dan probabilitas mutasi (Pm). Pemilihan ukuran
populasi yang digunakan tergantung pada masalah yang akan diselesaikan. Untuk
masalah yang lebih kompleks biasanya diperlukan ukuran populasi yang lebih besar
guna mencegah konvergensi prematur (yang menghasilkan optimum lokal).
Pada tiap generasi, sebanyak Pc * N individu dalam populasi mengalami
pindah silang. Makin besar nilai Pc yang diberikan maka makin cepat struktur
individu baru yang diperkenalkan ke dalam populasi. Jika nilai Pc yang diberikan
dibanding seleksi untuk peningkatan kerja. Sebaliknya nilai Pc yang rendah dapat
mengakibatkan stagnasi karena rendahnya angka eksplorasi.
Probabilitas mutasi adalah probabilitas dimana setiap posisi bit pada tia string
dalam populasi baru mengalami perubahan secara acak setelah proses seleksi. Dalam
satu generasi dengan L panjang struktur, kemungkinan terjadi mutasi sebanyak
Pm*N*L
2.10 Riset Terkait
(Samuel,et al. 2005) membahas bagaimana algoritma genetik menyelesaikan TSP dengan menggunakan order crossover sebagai teknik rekombinasi dan insertion mutation sebagai teknik mutasi yang digunakan pada algoritma genetik; (Annies,et al. 2002) menunjukkan bahwa algoritma genetika dapat digunakan untuk menyelesaikan
masalah optimasi yang kompleks seperti mencari rute paling optimum, menggunakan
beberapa metode seleksi yaitu roulette wheel, elitism dan gabungan antara metode
roulette wheel dan elitism. Ada dua jenis crossover yang digunakan yaitu one cut point crossover dan two cut point crossover; (Tamilarsi & Kumar 2010) menemukan sebuah metode baru dalam penyelesaian masalah penjadwalan job shop menggunakan
hybrid Genetic Algorithm (GA) dengan Simulated Annealing (SA); (Nasution, 2012) analisis penyelesaian TSP menggunakan partially mapped crossover dengan menentukan nilai probabilitas crossover 20%, 40%, 60%, 80% dan 99%. (Kusum
Deep & Hadush Mebrahtu, 2012) membuat variasi pada partially mapped crossover
dengan menentukan letak kromosom dalam posisi acak. (Alfonsas &, Bronislovas,
2005). membandingkan 10 operator crossover pada Quadratic Assignment Problem
dimana hasil yang diperoleh menunjukkan bahwa crossover MPX mampu
mendapakan solusi yang lebih baik dibandingkan operator lain yang telah diuji.
(Kusum Deep & Hadush Mebrahtu, 2011) menggabungkan 2 operator mutasi untuk
meningkatkan kerja algoritma genetika untuk meminimumkan cost pada travelling
2.11 Perbedaan Dengan Riset Lain
Pada penelitian ini penulis akan mengkaji apakah untuk mendapatkan best fitness
dengan menggunakan metode Partially Mapped Crossover (PMX) bergantung pada
mapping pada 2 kromosom.
2.12 Kontribusi Riset
Penulis berharap penelitian ini dapat digunakan sebagai wawasan pengetahuan
dan pembanding tentang Travelling salesman problem dengan menggunakan metode
BAB 3
METODOLOGI PENELITIAN
3.1 Pendahuluan
Travelling Salesmen Problem (TSP) termasuk ke dalam kelas NP hard yang pada umumnya menggunakan pendekatan heuristik untuk mencari solusinya. Permasalahan
utama dari TSP adalah bagaimana seorang salesman dapat mengatur rute
perjalananannya untuk mengunjungi sejumlah kota yang diketahui jarak satu kota
dengan kota lainnya sehingga jarak yang ditempuh merupakan jarak minimum dimana
salesmen hanya dapat mengunjungi kota tersebut tepat satu kali. Salah satu metode
yang dapat digunakan dalam menyelesaikan TSP yaitu algoritma genetika. Crossover
merupakan salah satu aspek penting dalam algoritma genetika untuk menghasilkan
best fitness. Partially mapped crossover (PMX) merupakan salah satu metode dalam
crossover dimana pada penelitian ini akan menganalisis mapping pada PMX dalam pencapaian best fitness terhadap 2 kromosom.
3.2 Data yang digunakan
Data yang digunakan merupakan data benchmark yang diambil dari TSPLIB dimana
TSPLIB merupakan library dari contoh data untuk permasalahan TSP dari berbagai
sumber dan bermacam tipe permasalahan TSP. Jenis data file .tsp yang digunakan
sebagai data uji adalah data TSP Simetri dimana jarak antara titik I ke titik J sama
dengan jarak titik J ke titik I. Adapun data yang digunakan yaitu data eil51.tsp dan
eil76.tsp dimana kedua data tersebut mendukung tipe EDGE_WEIGHT_TYPE:
EUC_2D, yaitu koordinat posisi dengan format Euclidian 2 dimensi. Data eil51 dan
eil76 berarti data yang berisikan koordinat 51 kota eilon dan koordinat 76 kota eilon.
Untuk setiap tipe EUC_2D titik koordinat harus diketahui untuk setiap titik.
Pada Euclidian 2 dimensi digunakan perhitungan jarak antara titik I ke J adalah
�
(�,�)=
���
�− �
��
Nilai probabilitas crossover (Pc) yang digunakan yaitu 0,25 0,50 dan 1 dimana dipilih
dari nilai Pc yang berskala kecil, sedang dan tinggi sebagai nilai untuk pengujian dari
masing-masing data.
3.3 Algoritma Genetika pada Travelling Salesman Problem (TSP)
Adapun prosedur kerja dari penelitian ini dapat dilihat secara keseluruhan pada
Gambar 3.1 di bawah ini
Gambar 3.1 Metode Penelitian
3.3.1 Dasar Algoritma Genetika
Dalam algoritma genetika terdapat beberapa proses atau tahapan yang harus
dilakukan.Pada Gambar 3.2 diperlihatkan proses yang terdapat pada algoritma
Start
- ukuran populasi (population size/N) - jumlah generasi
- probabilitas crossover (pc) - probabilitas mutasi (pm)
Bangkitkan populasi awal (inisialisasi populasi) secara acak
Hitung fitness dari masing-masing kromosom
Apakah kriteria/syarat terminasi terpenuhi?
Pilih kromosom untuk dijadikan parent
sesuai dengan metode seleksi yang dipakai
Kawinkan sepasang parent yang sudah dipilih pada tahap seleksi dengan memperhatikan probabilitas crossover (pc) sehingga menghasilkan
offspring
Ubah secara acak nilai gen pada
offspring dengan memperhatikan probabilitas mutasi (pm)
Apakah ukuran populasi yang baru = N (populasi sebelumnya)?
Gantikan populasi kromosom sekarang dengan populasi kromosom
baru untuk membentuk generasi selanjutnya
Tempatkan offspring (kromosom hasil dari proses mutasi) pada populasi
baru
Gambar 3.2 Dasar Algoritma Genetika
Pada algoritma genetika terdapat proses crossover dimana pada proses ini terjadi
pertukaran gen antara kromosom induk. Pada penelitian ini penulis pengaruh
menganalisis mapping dari ketiga bentuk variasi PMX. Berikut ini FlowchartPartially
Mapped Crossover (PMX) Umum, PMX Variasi I dan PMX Variasi II dapat dilihat
pada Gambar 3.3, 3.4 dan 3.5 dibawah ini.
Mulai
tidak
ya
Gambar 3.3 Flowchart Partially Mapped Crossover (PMX) Umum
Mulai
Tentukan nilai Pc
ya
Gambar 3.4 FlowchartPartially Mapped Crossover (PMX) Variasi I Tidak
Tentukan Pc
Pilih Kromosom Induk
Tentukan titik potong pada posisi yang sama
tidak
ya
Gambar 3.5 FlowchartPartially Mapped Crossover (PMX) Variasi II
3.3.2. Mendefenisikan Individu
Pada pendefenisian individu yang akan dilakukan adalah teknik penyandian
gen dan kromosom. Gen merupakan bagian dari kromosom. Satu gen diwakili oleh
satu variabel. Kromosom-kromosom/individu-individu adalah kumpulan angka yang
mewakili posisi kota dalam sebuah rangkaian (urutan). Dengan kata lain, sebuah
kromosom/individu itu mewakili sebuah urutan kota yang dikunjungi salesman. Jadi
apabila satu kromosom berbentuk: �1 = (�1,�2,�3, … ,��) artinya salesman bergerak
3.3.3 Pembangkitan Populasi Awal
Rumus Pembangkitan Inisialisasi Populasi dengan menggunakan
Pembangkitan Bilangan Random :������ (��,�)
Contoh: ������ (8, 10) artinya dibangkitkan 10 kromosom dalam 1
populasi,dimana dalam 1 kromosom terdapat 8 gen. Misalnya didapatkan :
Tabel 3.2 Pembentukan Populasi awal
Kromosom Total Jarak Fitness
Individu 1: 5 2 7 1 3 4 8 6 27,031 0,036
Individu 2: 8 1 3 4 6 5 7 2 26,042 0,0383
Individu 3: 3 6 7 2 4 5 1 8 30,423 0,0328
Individu 4: 1 4 6 7 8 2 5 3 30,254 0,0330
Individu 5: 7 2 6 4 5 8 3 1 29,906 0,0334
Individu 6 : 6 1 8 5 2 3 4 7 31,326 0,0319
Individu 7: 4 8 2 1 3 7 6 5 32,826 0,0304
Individu 8: 1 7 4 5 3 6 8 2 39,003 0,0256
Individu 9: 1 6 2 8 5 4 7 3 32,815 0,0304
Individu 10: 5 3 2 6 1 4 8 7 33,436 0,0299
3.3.4 Seleksi
Metode seleksi yang dipergunakan dalam penelitian ini adalah Roulete Wheel Selection. Sebelum dilakukan seleksi harus dihitung terlebih dahulu nilai fitness dari masing-masing kromosom.
Persamaan untuk menghitung nilai fitness adalah :
Semakin besar jarak maka semakin kecil nilai fitness dan sebaliknya jika semakin
kecil jarak makan semakin besar nilai fitness.
Seleksi Roda Roullete :
1. Hitung Total Fitness
Total Fitness dihitung dengan menggunakan persamaan :
TotalFitness = Σ Fk ………...(3.2) dimana: k = 1, 2, 3 .... , ukuran populasi
0,036+0,0383+0,0328+0,0330+0,0334+0,0319+0,0304+0,0256+0,0304+0,0299
=0,3217
2. Hitung fitness relatif tiap individu
Untuk menghitung fitness tiap individu digunakan persamaan :
Pk = Fk / TotalFitness ………... (3.3.)
dimana:
Pk = fitness relatif tiap-tiap kromosom
Fk = fitnes tiap kromosom
3. Hitung fitness kumulatif
q6=0,1119+0,1119+0,1019+0,1025+0,1038+0,0991=0,6311
q7=0,1119+0,1119+0,1019+0,1025+0,1038+0,0991+0,0945=0,7256
q8=0,1119+0,1119+0,1019+0,1025+0,1038+0,0991+0,0945+0,0795=0,8051
q9=0,1119+0,1119+0,1019+0,1025+0,1038+0,0991+0,0945+0,0795+0,0945=0,8996
q10=0,1119+0,1119+0,1019+0,1025+0,1038+0,0991+0,0945+0,0795+0,0945+0,0929
=0,9925
3.3.5 Partially Mapped Crossover (PMX) dan Variasinya
Crossover dilakukan atas 2 kromosom induk untuk menghasilkan kromosom anak. Kromosom anak yang terbentuk akan mewarisi sebagian sifat induknya.
Prosedur untuk memilih parent mana yang akan mengalami proses crossover : 1. Tentukan probabilitas crossover.
2. Bangkitkan bilangan random 0 sampai 1 sebanyak i (jumlah kromosom dalam
satu populasi).
3. Bandingkan bilangan random itu dengan probabilitas crossover (Pc).
4. Induk terpilih bila bilangan r yang ke-i kurang atau sama dengan probabilitas
crossover (Pc).
5. Bila induk yang terpilih jumlahnya hanya satu maka proses ini diulang sampai
jumlah induk lebih dari satu.
#Procedure Crossover(inputpopulasi: integer, ρc: real)
{melakukan pemilihan induk pada proses crossover}
Deklarasi
k : integer
R[] : array of integer
Function random (input a-b:integer):integer
{menghasilkan bilangan random bilangan a hingga b}
k= 0
#Procedure CrossoverPMX1(inputpopulasi: integer, ρc: real)
{melakukan pemilihan induk pada proses cross over}
Deklarasi
k : integer
R[] : array of integer
Function random (input a-b:integer)
integer {menghasilkan bilangan random bilangan a hingga b}
Algoritma
k= 0
While k <= populasi do
R[k] random(0-1)
If R[k] < ρc then
pilih Kromosom[k][] sebagai induk
k k+1
end while
#Procedure CrossoverPMX2(inputpopulasi: integer, ρc: real)
{melakukan pemilihan induk pada proses cross over}
Deklarasi
k : integer
R[] : array of integer
Function random (input a-b:integer):integer
{menghasilkan bilangan random bilangan a hingga b}
Algoritma
k= 0
While k <= populasi do
R[k] random(0-1)
If R[k] < ρc then
pilih Kromosom[k][] sebagai induk
Parrent1=Kromosom[k+1]
Mid(Gen1[k+1],3,3) mid(Gen1[k+2],3,3)
Mid(Gen2[k+2],3,3) mid(Gen1[k+1],3,3)
end if
k k+1
end while
Langkah 1 :Menentukan dua posisi kromosom pada aturan acak dengan posisi yang
sama. Substring yang berada dalam dua posisi ini dinamakan daerah
mapping.
Langkah 2 : Menukar dua substring antara induk untuk menghasilkan protochildren.
Langkah 3 : Menentukan hubungan mapping diantara dua daerah mapping.
Langkah 4 : Menentukan kromosom keturunan mengacu pada hubungan mapping.
b. Bentuk PMX Variasi I:
Langkah 1 :Menentukan dua posisi kromosom dengan posisi acak dengan posisi titik
potong pada parent1 dipotong pada gen kedua sedangkan parent2
dipotong pada gen ketiga dengan daerah mapping terletak diantara kedua
titik potong pada masing-masing parent.
Langkah 2 : Menukar dua substring antara induk untuk menghasilkan protochildren.
Langkah 3: Menentukan hubungan mapping diantara dua daerah mapping.
Langkah 4: Menentukan kromosom keturunan mengacu pada hubungan mapping.
Contoh:
P1 : 3 6 7 2 4 5 1 8
P2 : 1 7 4 5 3 6 8 2
Menentukan dua posisi kromosom induk yang umumnya dilakukan pada posisi yang
sama tetapi pada penelitian ini menentukan dua posisi kromosom secara acak dimana
posisi kromosom pada parent1 dipotong pada gen kedua sedangkan pada parent2
dipotong pada gen ketiga
P1 : 3 6 |7 2 4 5|1 8
P2 : 1 7 4 |5 3 6 8| 2
Protochildren1 : 1 7 4|7 2 4 5 |2 Protochildren2 : 3 6| 5 3 6 8|1 8
Menentukan hubungan mapping
7 6 2 3
Maka akan dihasilkan keturunan
O1 : 8 6 1|7 2 4 5|3
O2 : 2 7|5 3 6 8|4 1
c. Bentuk PMX Variasi II:
Langkah 1: Menentukan dua posisi kromosom dengan posisi sama.
Langkah 2: Menukar dua substring antara induk untuk menghasilkan protochildren.
Langkah 3:Menentukan hubungan mapping dimana daerah mapping yang biasanya
terletak diantara dua substring menjadi terletak di pinggir masing-masing
substring.
Langkah 4: Menentukan kromosom keturunan mengacu pada hubungan mapping.
Contoh:
P1 : 3 6 7 2 4 5 1 8
P2 : 1 7 4 5 3 6 8 2
Menentukan dua posisi kromosom dalam posisi sama
P1 : 3 6 7 |2 4 5 |1 8
P2 : 1 7 4 |5 3 6 |8 2
Protochildren1 : 1 7 4| 2 4 5 |8
Protochildren2 : 3 6 7| 5 3 6 |1 8
Menentukan hubungan mapping yang biasanya daerah mapping terletak diantara dua
substring, maka akan dipilih daerah mapping yang terletak di ujung-ujung substring.
1 3 8 2
7 6 4
Maka akan dihasilkan keturunan kromosom sebagai berikut
O1: 1 7 4|3 6 5| 8 2
O2: 3 6 7|5 2 4|1 8
Mutasi yang akan dilakukan pada penelitian ini adalah swapping mutation. Swapping mutation adalah mutasi yang dilakukan dengan menukar satu atau beberapa nilai gen dalam kromosom.
Langkah-langkah dalam menentukan mutasi adalah :
1. Hitung jumlah gen pada populasi (panjang kromosom ini dikalikan dengan
ukuran populasi.
2. Pilih secara acak gen yang akan dimutasi
3. Tentukan kromosom dari gen yang terpilih untuk dimutasi
4. Ambil 2 gen secara acak dan tukar posisi mereka
BAB 4
HASIL DAN PEMBAHASAN
Penulis membangun program algoritma genetika dengan menggunakan bahasa
pemrograman VB6. Pengujian pada penelitian ini dilakukan dengan spesifikasi
processor intel atom dan memory 1 GB dan menggunakan data yang diambil dari
TSPLIB yaitu eil51 dan eil76. Pada penelitian ini akan ditampilkan hasil dari variasi
partially mapped crossover(PMX) pada algoritma genetika. Sehingga nanti akan dilihat hasil best fitness yang didapatkan oleh 3 variasi PMX yang berbeda. Penyajian
hasil pengujian akan ditampilkan dalam bentuk tabel.
4.2.Hasil Pengujian Pertama
Pengujian pertama akan dilakukan dengan menggunakan data eil51 dengan
menggunakan 3 parameter yaitu probabilitas crossover,generasi,dan probabilitas
mutasi. Hasil yang diperoleh pada penelitian ini adalah berupa best fitness dimana
pada penelitian ini menggunakan metode crossover PMX dengan 3 variasi yaitu PMX
bentuk umum, PMX I, dan PMX II dengan nilai probabilitas crossover 0,25 0,50 dan 1
4.2.1 Pengujian Dengan Probabilitas Crossover (Pc = 0,25)
Pengujian dilakukan sebanyak 500 generasi dengan probabilitas crossover 0,25 dan
nilai probabilitas mutasi 0,1 dengan melakukan pengujian sebanyak 5 kali terhadap
masing-masing bentuk PMX untuk melihat best fitness pada masing-masing variasi
PMX dengan mengambil nilai rata-rata pada masing-masing variasi PMX. Hasil
pengujian Tabel 4.1, Tabel 4.2 dan Tabel 4.3 dibawah ini
Tabel 4.1 Probabilitas crossover(Pc=0,25)PMX Variasi Umum
No Best Fitness Generasi Rute Optimal
1
2.48040233869967E-04 444 4031.60400390625
2
3
2.30385223667717E-04 380 4340.55615234375
4
2.61083657807542E-04 481 3830.18994140635
5
2.34468064888579E-04 444 4264.97314453125
Rata-rata Best Fitness : 2.46348490697404E-04
Rata-rata Rute Optimal: 4069.3435546877
Tabel 4.1 diatas menunjukkan nilai best fitness pada PMX variasi umum dimana pada
PMX umum letak titik potong pada kromosom dalam posisi yang sama nilai rata-rata
dari best fitness setelah mengalami pengujian yaitu 2.46E-04 dan nilai rata-rata rute
optimal 4069.34.
Tabel 4.2 Probabilitas crossover(Pc=0,25)PMX Variasi I
No Best Fitness Generasi Rute Optimal
1
2.868834313753401E-04 356 3485.736328125
2
2.71430681567345E-04 495 3684.18188476563
3
2.46866688552781E-04 307 4050.76028710938
4
2.46805700946569E-04 441 4051.77026367188
5
2.42686923440808E-04 377 4120.53515625
Rata-rata Best Fitness =2.589346851765686E-04
Rata-rata rute Optimal = 3878.596783984378
Tabel 4.2 diatas menunjukkan nilai best fitness pada PMX variasi I dimana pada PMX
variasi I letak titik potong pada kromosom dalam posisi acak nilai rata-rata dari best
fitness setelah mengalami pengujian yaitu 2.59E-04 dan nilai rata-rata rute optimal
3878.6.
Tabel 4.3 Probabilitas crossover(Pc=0,25)PMX Variasi II
No Best Fitness Generasi Rute Optimal
1
2
2.4497782011726E -04 495 4082.00219726563
3
2.6645348926531E-04 479 3750.2298046875
4
2.44022549685338 E-04 412 4097.98193359375
5
2.29188934158428 E-04 385 4363.21240234375
Rata-rata Best Fitness = 2.440490491677328E-04
Rata-rata Rute Optimal = 4107.578865234376
Tabel 4.3 diatas menunjukkan nilai best fitness pada PMX variasi II dimana pada
PMX variasi II letak titik potong pada kromosom dalam posisi sama namun daerah
mapping yang biasanya terletak ditengah -tengah titik potong diubah pada daerah
pinggir masing-masing kromosom. Nilai rata-rata dari best fitness setelah mengalami
pengujian yaitu 2.44E-04 dan nilai rata-rata rute optimal 4107.6.
Probabilitas crossover 0,25 dengan data eil51 diperoleh nilai best fitnes dan
rute optimal yang berbanding terbalik. Pada Pc =0,25 diperoleh nilai best fitness PMX
variasi I lebih tinggi yaitu 2.59E-04 dibandingkan PMX umum dan PMX variasi II
dengan rute optimal yang lebih rendah dibandingkan kedua variasi PMX Dengan
demikian dapat disimpulkan bahwa semakin besar nilai best fitness maka semakin
rendah rute optimal yang didapat dan sebaliknya apabila semakin rendah nilai best
fitness maka semakin tinggi rute optimal.
Untuk hasil lebih jelasnya dapat kita lihat pada Tabel 4.4 dibawah ini.
Tabel 4.4 Hasil Pengujian Pc 0,25
PMX Umum
4.2.2. Pengujian Dengan Probabilitas Crossover(Pc = 0,50)
Pengujian dilakukan sebanyak 500 generasi dengan probabilitas crossover 2 dan nilai
probabilitas mutasi 0,1 dengan melakukan pengujian sebanyak 5 kali terhadap
masing-masing bentuk PMX untuk melihat best fitness pada masing-masing variasi
PMX dengan mengambil nilai rata-rata pada masing-masing variasi PMX. Untuk
lebih jelasnya dapat dilihat pada Tabel 4.5, Tabel4.6 dan Tabel 4.7 dibawah ini.
Tabel 4.5 Probabilitas crossover(Pc=0,50)PMX Variasi Umum
No Best Fitness Generasi Rute Optimal
1
2.54737489161529 E-04 473 3925.60986328125
2
2.39913266148743 E-04 399 4275.0888671875
3
2.4213959655145 E-04 246 4129.84912109375
4
2.336124581620 E-04 479 4305.49658203125
5
2.96245271991275-04 493 3375.58129882813
Rata-rata Best Fitness = 2.552907249561422E-04
Rata-rata rute Optimal = 3976.60595703125
Tabel 4.5 diatas menunjukkan nilai best fitness pada PMX variasi umum dimana pada
PMX umum letak titik potong pada kromosom dalam posisi yang sama nilai rata-rata
dari best fitness setelah mengalami pengujian yaitu 2.55E-04dan nilai rata-rata rute
Tabel 4.6 Probabilitas crossover(Pc=0,50)PMX Variasi I
No Best Fitness Generasi Rute Optimal
1
2.7980875481114 E-04 416 3573.86962890625
2
2.4039254412195 E -04 356 4159.86279296875
3
2.51697916290287E-04 454 3973.0166045625
4
2.38976285337685 E-04 462 4184.515625
5
2.65160104979061 E-04 477 3771.30639648438
Rata-rata Best Fitness = 2.533296164029994E -04
Rata-rata Rute Optimal = 3932.5142095843
Tabel 4.6 diatas menunjukkan nilai best fitness pada PMX variasi I dimana pada PMX
variasi I letak titik potong pada kromosom dalam posisi acak nilai rata-rata dari best
fitness setelah mengalami 5 kali pengujian yaitu 2.53E-04 dan nilai rata-rata rute
optimal 3932.5.
Tabel 4.7 Probabilitas crossover(Pc=0,50)PMX Variasi II
No Best Fitness Generasi Rute Optimal
1
2.44763957551141 E-04 478 4085.56884765625
2
3
2.67469178682863 E-04 436 3738.74853515625
4
2.72046456183119 E-04 493 3675.8427734375
5
2.39704190047969E-04 287 4171.80859375
Rata-rata Best Fitness : 2.522071211080246E-04
Rata-rata Rute Optimal: 4002.325146484375
Tabel 4.7 diatas menunjukkan nilai best fitness pada PMX variasi II dimana pada
PMX variasi II letak titik potong pada kromosom dalam posisi sama namun daerah
mapping yang biasanya terletak ditengah -tengah titik potong diubah pada daerah
pinggir masing-masing kromosom. Nilai rata-rata dari best fitness setelah mengalami
5 kali pengujian 2.52E-04 dan nilai rata-rata rute optimal 4002.3.
Berikut ini adalah Tabel rata hasil pengujian data eil51 sebanyak 5 kali
pengujian pada masing-masing variasi PMX, dapat dilihat PMX yang posisi titik
potong nya dipilih secara acak yaitu PMX variasi I menghasilkan best fitness yang
paling baik dengan nilai 2.533296164029994E -04
.
Tabel 4.8 Hasil Pengujian Pc 0,50
Variasi PMX Best Fitness Rute Optimal
PMX Umum
PMX Variasi I
2.533296164029994E -04 3932.5142095843
PMX Variasi II
2.522071211080246E-04 4002.32514648376
4.2.3. Pengujian Dengan Probabilitas Crossover(Pc = 1)
Pengujian dilakukan sebanyak 500 generasi dengan probabilitas crossover 1 dan nilai
probabilitas mutasi 0,1 dengan melakukan pengujian sebanyak 5 kali terhadap
masing-masing bentuk PMX untuk melihat best fitness pada masing-masing variasi
PMX dengan mengambil nilai rata-rata pada masing-masing variasi PMX. Untuk
Lebih jelasnya dapat dilihat pada Tabel 4.9, Tabel 4.10 dan Tabel 4.11 dibawah ini.
Tabel 4.9 Probabilitas crossover(Pc=1)PMX Variasi Umum
No Best Fitness Generasi Rute Optimal
1
2.56904689865361E-04 447 3892.494140625
2
2.6764339079607E-04 419 3736.31494140625
3
2.33043205163364E-04 486 4291.0498046875
4
2.67080624246187E-04 484 3744.18774414063
5
2.49985993216445E-04 493 400.22412109375
Rata-rata Best Fitness : 2.549315806574854E-04
Rata-rata Rute Optimal: 3212.854150390626
Tabel 4.9 diatas menunjukkan nilai best fitness pada PMX variasi umum dimana pada
PMX umum letak titik potong pada kromosom dalam posisi yang sama nilai rata-rata
dari best fitness setelah mengalami pengujian yaitu 2.55E-04dan nilai rata-rata rute
optimal 3212.8.
Tabel 4.10 Probabilitas crossover(Pc=1)PMX Variasi I
1
2.568014283479 E-04 350 3893.50463867188
2
2.60636826889168E-04 425 3836.75634765625
3
2.49537812837624E-04 388 4007.40869140625
4
2.82065612758621E-04 483 3545.2744140625
5
2.46433468167817E-04 360 4057.89038085938
Rata-rata Best Fitness =2.59095029800226E-04
Rata-rata rute Optimal = 3868.166894531252
Tabel 4.10 diatas menunjukkan nilai best fitness pada PMX variasi I dimana pada
PMX variasi I letak titik potong pada kromosom dalam posisi acak nilai rata-rata dari
best fitness setelah mengalami 5 kali pengujian yaitu2.59E-04 dan nilai rata-rata rute
optimal 3868.2.
Tabel 4.11 Probabilitas crossover(Pc=1)PMX Variasi II
No Best Fitness Generasi Rute Optimal
1
2.38396171133995 E-04 497 4194.6982421875
2
2.32861856295582E -04 495 4294.3916015625
3
2.57877347086792E-04 453 3877.8125
4
2.71018023360219 E-04 494 3689.79150390625
5
2.51152674885423 E-04 467 3981.64184570313
Rata-rata Best Fitness = 2.502612145524022 E-04
Rata-rata Rute Optimal = 4007.667138671876
Tabel 4.11 diatas menunjukkan nilai best fitness pada PMX variasi II dimana pada
PMX variasi II letak titik potong pada kromosom dalam posisi sama namun daerah
mapping yang biasanya terletak ditengah -tengah titik potong diubah pada daerah
pinggir masing-masing kromosom. Nilai rata-rata dari best fitness setelah mengalami
Berikut ini adalah Tabel rata hasil pengujian data eil51 sebanyak 5 kali pengujian
pada masing-masing variasi PMX, dapat dilihat PMX yang posisi titik potong nya
dipilih secara acak yaitu PMX variasi I menghasilkan best fitness yang paling baik
dengan nilai 2.59E-04 dengan rute optimal 3868.2. Sehingga dapat ditarik kesimpulan,
makin tinggi nilai fitness maka semakin rendah jarak/rute yang diperoleh.
Tabel 4.12 Hasil Pengujian Pc 1
Variasi PMX Best Fitness Rute Optimal
PMX Umum
2.549315806574854E-04 3212.854150390626
PMX Variasi I
2.59095029800226E-04 3868.166894531252
PMX Variasi II
2.502612145524022 E-04 4007.667138671876
4.3.Hasil Pengujian Kedua
Pengujian pertama akan dilakukan dengan menggunakan data eil76 dengan
menggunakan 3 parameter yaitu probabilitas crossover,generasi,dan probabilitas
mutasi. Hasil yang diperoleh pada penelitian ini adalah berupa best fitness dimana
pada penelitian ini menggunakan metode crossover PMX dengan 3 variasi yaitu PMX
bentuk umum, PMX I, dan PMX II dengan nilai probabilitas crossover 0,25 0,50 dan 1
4.3.1 Pengujian Dengan Probabilitas Crossover (Pc = 0,25)
Pengujian dilakukan sebanyak 500 generasi dengan probabilitas crossover 0,25 dan
nilai probabilitas mutasi 0,1 dengan melakukan pengujian sebanyak 5 kali terhadap
masing-masing bentuk PMX untuk melihat best fitness pada masing-masing variasi
PMX dengan mengambil nilai rata-rata pada masing-masing variasi PMX. Hasil
pengujian Tabel 4.13, Tabel 4.14 dan Tabel 4.15 dibawah ini.
Tabel 4.13 Probabilitas crossover(Pc=0,25)PMX Umum
1
1.47513033259075E-04 484 6779.06201171875
2
1.53146342247677E-04 454 6529.7021484375
3
1.50838749620417E-04 453 6629.59619140625
4
1.40270696417296E-04 486 7129.07275390625
5
1.39766295467041E-04 368 7154.80078125
Rata-rata Best Fitness =1.463070234023012E-04
Rata-rata rute Optimal = 6844.44677734375
Dari Tabel 4.13 diatas diperoleh nilai rata-rata dari best fitness setelah mengalami 5
kali pengujian yaitu 1.46E-04 dan nilai rata-rata rute optimal 6844.4.
Tabel 4.14 Probabilitas crossover(Pc=0,25)PMX Variasi I
No Best Fitness Generasi Rute Optimal
1
1.62187747998569 E-04 465 6165.6938476
2
1.60541979689558E-04 415 6228.900390625
3
1.56880372511219E-04 442 6374.28639140625
4
1.58710132991032E-04 455 6300.794921875
5
1.46288389273404E-04 389 6835.8125
Rata-rata Best Fitness =1.569217244927564E -04
Rata-rata rute Optimal = 6381.097761030125
Dari Tabel 4.14 diatas diperoleh nilai rata-rata dari best fitness setelah mengalami 5
kali pengujian yaitu 1.57E-04 dan nilai rata-rata rute optimal 6381.1.
Tabel 4.15 Probabilitas crossover(Pc=0,25)PMX Variasi II
1
1.458684471734 E-04 447 6853.4921875
2
1.38124825995092E-04 199 7239.828125
3
1.4732999984821E-04 422 6787.48388671875
4
1.45781270711714E-04 489 6883.19970703125
5
1.45334592805185E-04 491 6880.67431640625
Rata-rata Best Fitness =1.444878273067202E -04
Rata-rata rute Optimal = 6928.93564453125
Dari Tabel 4.15 diatas diperoleh nilai rata-rata dari best fitness setelah mengalami 5
kali pengujian yaitu 1.44E-04 dan nilai rata-rata rute optimal 6928.9.
Dari hasil pengujian terhadap ketiga bentuk variasi PMX didapatkan rata-rata best
fitness dan rute optimal pada masing-masing PMX yang dapat dilihat pada Tabel 4.17
dimana untuk perolehan best fitness paling baik yaitu pada PMX variasi I dengan
variasi pada titik potong kromosom secara acak dengan perolehan best fitness sebesar
1.57E-04.
Tabel 4.16 Hasil Pengujian Pc 0,25
Variasi PMX Best Fitness Rute Optimal
PMX Umum
1.463070234023012E-04 6844.44677734375
PMX Variasi I
1.569217244927564E-04 6381.097761030125
PMX Variasi II
1.444878273067202E-04 6928.93564453125
4.3.2 Pengujian Dengan Probabilitas Crossover (Pc = 0,50)
Pengujian dilakukan sebanyak 500 generasi dengan probabilitas crossover 0,50 dan
nilai probabilitas mutasi 0,1 dengan melakukan pengujian sebanyak 5 kali terhadap
masing-masing bentuk PMX untuk melihat best fitness pada masing-masing variasi
pengujian Tabel 4.17, Tabel 4.18 dan Tabel 4.19 dibawah ini.
Tabel 4.17 Probabilitas crossover(Pc=0,50)PMX Umum
No Best Fitness Generasi Rute Optimal
1
1.39104541681779E-04 489 7188.837890625
2
1.49484708400442E-04 484 6689.6474609375
3
1.39793571038376E-04 427 7153.4047857625
4
1.42788965508586E-04 327 7003.34228515625
5
1.40905916335323E-04 474 7096.93408203125
Rata-rata Best Fitness =1.424155405929012E-04
Rata-rata rute Optimal = 7026.433009025
Dari Tabel 4.17 diatas diperoleh nilai rata-rata dari best fitness setelah mengalami 5
kali pengujian yaitu 1.42E-04 dan nilai rata-rata rute optimal 7026.4
Tabel 4.18 Probabilitas crossover(Pc=0,50)PMX Umum
No Best Fitness Generasi Rute Optimal
1
1.49963241432032E-04 497 6668.30078125
2
1.51661845034474E-04 493 6593.6162109375
3
1.55627393065629E-04 349 6425.60400390625
4
1.48894473077873E-04 490 6716.166015625
5
1.44951005427736E-04 444 6898.8828125
Rata-rata Best Fitness =1.502195916075488E-04
Rata-rata rute Optimal = 6660.51396484375
Dari Tabel 4.18 diatas diperoleh nilai rata-rata dari best fitness setelah mengalami 5