2.2 Landasan Teori
2.2.1 Traveling Salesman Problem
Traveling Salesman Problem TSP merupakan salah satu masalah yang paling popular dalam optimasi kombinatorial dan telah diaplikasikan dalam
perencanaan, penjadwalan, sequencing dan vehicle routing problems Rafsanjani, et al., 2015.
a. Deskripsi Umum
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 menentukan 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 Bryant, 2000. Persoalan yang dihadapi TSP adalah 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:
Gambar 2.1
Posisi kota-kota yang akan dilewati Persoalan TSP dapat dipecahkan dengan mengenumerasi
, dengan n adalah jumlah kota dan kemudian memilih rute dengan panjang terpendek. Posisi
kota dengan jumlah 4 kota a, b, c, d seperti ditunjukkan pada gambar 2.1 tersebut memiliki
rute yang dapat dilalui, yaitu: R1 = a, b, c, d, a atau a, d, c, b, a dengan panjang rute 10 + 12 + 8 + 15 = 45
R2 = a, c, d, b, a atau a, b, d, c, a dengan panjang rute 12 + 5 + 9 + 15 = 41 R3 = a, c, b, d, a atau a, d, b, c, a dengan panjang rute 10 + 5 + 9 + 8 = 32
Jadi, rute terpendek adalah R3 = a, c, b, d, a atau a, d, b, c, a dengan
panjang rute 10 + 5 + 9 + 8 = 32. Ini adalah solusi persoalan TSP untuk gambar 2.1
b. Fungsi Objektif
Fungsi objektif merupakan fungsi tujuan dari permasalahan, dalam TSP tujuan utama adalah mendapatkan jarak minimal dari sebuah perjalanan. Secara
matematis, TSP dapat didefinisikan sebagai kumpulan dari n kota { , ,… },
dan permutasi ,...,
, tujuannya adalah untuk memilih sehingga jumlah
semua jarak antar setiap kota dan penggantinya diminimalkan. Untuk menghitung
jarak antar kota digunakan fungsi objektif TSP pada persamaan 2.1
Fajardo dan Oppus, 2010
.
Jika jarak tempuh antar kota , kota pertama adalah
dan merupakan kota terakhir dalam setiap perjalanan dan koordinat kota
dari seluruh kota , dimana salesman akan mengunjungi semua kota, kemudian
total jarak dalam semua perjalanan f. Fungsi untuk menghitung jarak dalam seluruh perjalanan dinyatakan dalam persamaan 2.2 Davendra, 2010.
2.2.2 Algoritma Genetika
Algoritma genetika merupakan suatu metode heuristik yang dikembangkan berdasarkan prinsip genetika dan proses seleksi alamiah Teori Evolusi Darwin.
Dalam algoritma genetika proses pencarian penyelesaian atau proses terpilihnya sebuah penyelesaian berlangsung sama seperti terpilihnya suatu individu untuk
bertahan hidup dalam proses evolusi Zukhri, 2014: 10.
a. Struktur Umum
Kerangka kerja yang biasa digunakan dalam penerapan algoritma genetika untuk menyelesaikan suatu masalah optimasi ditunjukkan Gambar 2.2.
Permasalahan optimasi yang diselesaikan dengan algoritma genetika perlu dikodekan ke dalam kromosom. Hal ini disebabkan dalam proses komputasi yang
sebenarnya, kromosom-kromosom itulah yang diproses menggunakan operator- operator genetika seperti seleksi, penyilangan, dan mutasi.
Gambar 2.2 Kerangka Kerja Algoritma Genetika Zukhri, 2014
Dalam algoritma genetika, pemrosesan kromosom-kromosom sebagai sebuah populasi oleh operator genetika terjadi secara berulang. Pada mulanya
populasi awal dibangkitkan secara acak. Selanjutnya, operator-operator genetika menggabungkan informasi genetis untuk membentuk populasi generasi
berikutnya. Pada generasi berikutnya, nilai fitness kromosom sebagai representasi dari penyelesaian masalah diharapkan bertambah semakin bagus Zukhri, 2014:
19. Berikut prosedur kerja algoritma genetika sederhana.
Procedure: Algoritma Genetika
Input : Permasalahan optimasi, parameter GA
Output : Solusi terbaik
Begin Step1
: Algoritma Genetika
Step2: Representasi
Pengkodean masalah kedalam kromosom
Step3: Inisialisasi Populasi
Menghasilkan populasi secara acak sebanyak jumlah populasi
Step4: Operator Genetika
Step4.1: Seleksi
Memilih dua orang tua menggunakan metode seleksi
Step4.2:
Crossover Menyilangkan dua orangtua yang dipilih menggunakan metode
crossover Step4.3:
Mutasi Menukar gen anak yang dihasilkan menggunakan metode mutasi
Step5: Kondisi Berhenti
Kondisi berhenti telah ditetapkan menggunakan jumlah generasi. Jika jumlah generasi terpenuhi maka proses perulangan berhenti
End b.
Representasi
Hal pertama yang harus dilakukan dalam algoritma genetika adalah bagaimana solusi dari masalah direpresentasikan sebagai kumpulan kromosom.
Representasi meliputi pengkodean gen dari kromosom. Gen merupakan bagian dari kromosom, dimana satu gen mewakili satu variabel. Gen dapat
direpresentasikan dalam bentuk: string bit, array bilangan real, pathjalur, elemen permutasi, dan lain-lain Kusumadewi, 2003:280. Representasi path merupakan
representasi paling nyata dari perjalanan dalam TSP, solusi direpresentasikan sebagai daftar n kota Larranaga, et al., 1999.
Misalkan dalam kasus TSP, biasanya kromosom tersusun dari indeks setiap kota. Jika banyaknya kota adalah 9, maka kromosom terdiri dari 9 gen. Setiap gen
dapat berisi bilangan bulat yang merupakan indeks dari kota-kota tersebut. Misal P Є {Pati, Kudus, Grobogan, Solo, Semarang, Demak, Jepara, Rembang,
Boyolali}, maka kromosom dapat dikodekan sebagai kombinasi bilangan 1 sampai 9. Jika kesembilan kota diindeks dengan urutan seperti itu, maka
kromosom 1
2 3
4 5 6 7
8 9
Mempresentasikan rute, Pati
–Kudus–Grobogan–Solo–Semarang–Demak–Jepara–Rembang–Boyolali.
c. Inisialisasi Populasi