1 BAB I PENDAHULUAN 1.1. Latar Belakang Salah satu permasalahan dalam bidang transportasi darat adalah mencari suatu rute perjalanan terpendek yang dapat di tempuh dari titik awal (keberangkatan) menuju titik akhir (tujuan), dengan harapan biaya perjalanan yang dikeluarkan dan waktu tempuh perjalanan seminimum mungkin. Masalah seperti ini dikategorikan dalam suatu permasalahan kombinatorial yang lebih dikenal dengan Traveling Salesman Problem (TSP) [1]. TSP merupakan kasus seorang salesman yang harus mengunjungi seluruh lokasi yang ada, dengan aturan lokasi yang dikunjungi tersebut tepat satu kali dan akhirnya kembali ke kota asalnya. Dalam menempuh seluruh lokasi yang ada, akan terdapat banyak kemungkinan rute perjalanan. Kemungkinan rute perjalanan tersebut dinamakan tour dan dari tour ada kemungkinan ada yang merupakan solusi optimum. Solusi optimum dari permasalahan TSP adalah rute yang memiliki total jarak lintasan terpendek (shortest path). Dalam kasus TSP terdapat beberapa faktor penting yang dapat mempengaruhi optimasi suatu tour. Faktor-faktor tersebut dapat berupa jarak antar kota, biaya (cost), waktu (time) dan lain-lain. Semakin banyak lokasi yang harus dilalui, semakin besar juga nilai (value) dan waktu yang harus diterima.[2]. Terdapat beberapa pendekatan yang dapat digunakan dalam mencari solusi optimum dalam menjawab masalah TSP, diantaranya Algoritme Genetika, Pendekatan Secara Stokastik, Neural Network dan Pemograman Linier [1]. Algoritme Genetika adalah algoritme optimasi modern berdasarkan evolusi biologis, yang meminjam hukum evolusi biologis yaitu untuk mencapai kelangsungan hidup yang paling cocok melalui pembiakan, warisan, diferensiasi dan persaingan, untuk mendekati solusi optimal secara bertahap. Algoritme Genetika adalah salah satu algoritme matang untuk memecahkan masalah Nondeterministic Polynomial (NP) saat ini, yang memiliki aplikasi luas dalam teori optimasi yang modern[3]. Algoritme ini memanfaatkan proses seleksi alamiah yang 1 dikenal dengan proses evolusi. Dalam proses evolusi, individu secara terusmenerus mengalami perubahan gen untuk menyesuaikan dengan lingkungan hidupnya, “Hanya individu-individu yang kuat yang mampu bertahan”. Proses seleksi alamiah ini melibatkan perubahan gen yang terjadi pada individu melalui proses perkembangbiakan. Proses perkembangbiakan ini didasarkan pada analogi struktur genetik dan perilaku kromosom dalam populasi individu[4]. Algoritme Genetika merupakan salah satu metode efektif untuk menyelesaikan Traveling Salesman Problem. Dalam prosesnya, Algoritme Genetika menghasilkan biaya evaluasi yang cukup besar. Biaya evaluasi yang dimaksudkan adalah proses komputasi yang lama. Proses komputasi yang lama disebabkan oleh proses iterasi yang panjang dan tahap-tahap pada algoritme genetika dalam mencari solusi optimal. Ada beberapa teknik dalam menyelesaikan permasalahan dalam penyelesaian proses komputasi yang lama, salah satunya adalah komputasi paralel. Pada umumnya komputasi paralel dijalankan dengan memanfaatkan beberapa komputer yang terhubung secara jaringan. Seiring dengan perkembangan dunia teknologi, komputasi paralel dapat dilakukan pada Graphic Processing Unit (GPU). Perkembangan teknologi Graphic Processing Unit (GPU) telah memungkinkan GPU mengerjakan proses kalkulasi yang tidak hanya untuk menangani komputasi grafis yang berhubungan dengan visual, namun juga komputasi secara umum yang dikenal dengan istilah General Purpose Graphic Processing Unit (GPGPU). Seperti halnya sistem komputasi paralel lainnya, GPGPU juga termasuk dalam kategori High Performance Computing (HPC) dengan beberapa keuntungan tambahan yaitu, hardware GPGPU relatif lebih murah, mudah didapatkan di pasaran dan mudah dalam implementasinya. Sebagian besar produk GPU yang digunakan dalam Personal Computer (PC) saat ini telah mendukung fitur GPGPU, sehingga pengguna PC pun dapat memanfaatkan GPGPU sebagai platform HPC tanpa harus memiliki supercomputer yang relatif mahal dan rumit dalam implementasinya. 2 Dengan arsitektur multi core, GPU dapat diprogram untuk melakukan proses komputasi secara paralel dengan arsitektur Single Instruction Multiple Data (SIMD). NVIDIA dengan arsitektur CUDA (Compute Unified Device Architecture) telah memungkinkan pengembang memanfaatkan resource GPU dari NVIDIA untuk melakukan proses komputasi paralel [5]. 1.2. Perumusan Masalah Perhitungan jarak lintasan terbaik dengan menggunakan Algoritme Genetika memerlukan waktu komputasi yang lama. Untuk mengatasi waktu komputasi yang lama dari Algoritme Genetika dapat dilakukan dengan metode komputasi paralel. Komputasi paralel dilakukan pada GPU dengan arsitektur CUDA. Dari permasalahan ini maka dapat dirumuskan masalah yang akan dibahas dalam penelitian ini yaitu : 1. Waktu komputasi yang lama untuk mendapatkan jalur dengan lintasan terpendek kasus TSP menggunakan Algoritme Genetika dengan komputasi serial. 2. Metode implementasi paralel Algoritme Genetika pada GPU yang mendukung teknologi CUDA yang masih terbatas dan belum detail. 1.3. Tujuan Penelitian Adapun tujuan utama dari penelitian ini adalah 1. Mengembangkan metode paralelisasi Algoritme Genetika pada kasus TSP untuk mendapatkan waktu komputasi yang minimal. 2. Mengembangkan metode paralelisasi Algoritme Genetika yang dijalankan pada GPU yang mendukung teknologi CUDA 1.4. Manfaat Penelitian Manfaat dari penelitian ini yaitu mengurangi waktu komputasi perhitungan jalur dengan lintasan terpendek pada kasus TSP dengan metode Algoritme Genetika yang diparalelisasi. Paralelisasi dilakukan pada GPU sehingga menekan biaya 3 paralelisasi yang pada umumnya paralelisasi dilakukan dengan menggunakan banyak komputer yang terhubung secara jaringan. Penelitian ini diharapkan dapat dimanfaatkan oleh para peneliti yang berhubungan dengan paralelisasi Algoritme Genetika. 1.5. Kontribusi Penelitian Penelitian tentang Algoritme Genetika dan paralelisasi Algoritme Genetika telah banyak dilakukan para peneliti. Pada bagian ini, diberikan kajian dari beberapa penelitian sebelumnya mengenai Algoritme Genetika dan paralelisasi Algoritme Genetika kasus TSP. Kajian dilakukan untuk memberikan informasi mengenai perbedaan dan kebaruan antara penelitian-penelitian sebelumnya dengan penelitian yang dilakukan pada saat ini. Penelitian yang membahas Algoritme Genetika kasus TSP telah banyak dilakukan yakni, penelitian yang dilakukan oleh Yu, dkk [6] dengan menguji coba semua metode-metode pada setiap tahap Algoritme Genetika. Uji coba dilakukan dengan mengubah-ubah kombinasi metode pada tahap Algoritme Genetika. Hasil penelitian ini yaitu kombinasi metode terbaik dalam Algoritme Genetika kasus TSP. Kombinasi terbaik penelitian ini yaitu untuk tahap seleksi yang terbaik yaitu metode roulette wheel yang dikombinasikan dengan metode strategi individu terbaik untuk bertahan hidup, tahap crossover yaitu crossover heuristic dan tahap mutasi yaitu mutasi inversion. Penelitian yang dilakukan oleh Kusum dan Hadush [7] yaitu melakukan rekombinasi terhadap operator mutasi. Operator mutasi yang direkombinasi adalah inversion mutation dengan exchange mutation dan inversion mutation dengan displacement mutation. Hasil rekombinasi operator mutasi diujicoba dengan memasangkan pada beberapa operator crossover. Operator crossover yang diuji coba dengan rekombinasi operator mutasi ini yaitu : order crossover, order based crossover dan variations of order crossover (VOX) yang dikemukakan oleh [8]. Hasil penelitian ini rekombinasi inversion mutationdisplacement mutation yang dipasangkan dengan VOX memiliki tingkat keakuratan yang lebih baik dengan simpangan error yang kecil terhadap jarak jalur dengan lintasan terpendek dibanding dengan rekombinasi operator mutasi inversion 4 mutation dengan exchange mutation, inversion mutation, exchange mutation, dan insertion mutation yang dipasangkan dengan operator crossover yang meliputi : order crossover, order based crossover dan variations of order crossover (VOX). Penelitian yang dilakukan oleh Lai dan Shen [9] yaitu model hybrid genetic algorithm dengan menggabungkan 2 metode algoritme dalam menyelesaikan kasus TSP yaitu Algoritme Semut dan Algoritme Genetika. Pada penelitian ini untuk membangkitkan populasi awal menggunakan Algoritme Semut dan mencari jalur dengan lintasan terpendek dengan menggunakan Algoritme Genetika. Hasil penelitian ini memberikan hasil model hybrid genetic algorithm memberikan nilai optimum yang lebih baik dengan jumlah iterasi yang lebih sedikit dibanding dengan model standard genetic algorithm. Penelitian yang dilakukan oleh Su, dkk [10] yaitu mengusulkan sebuah metode baru pada operator crossover. Metode yang diusulkan yaitu Cut-blend crossover operator. Pada metode Cut-blend crossover operator individu dibagi dalam beberapa sub tour dan menghubungkan kembali sub tour tersebut dengan mendeteksi jalur terpendek antar sub tour. Dalam penelitian ini Cut-blend crossover operator dibandingkan dengan genetic edge recombination crossover operator (ER) yang diusulkan oleh [11] dan order crossover operator (OX) [12]. Hasil dari penelitian ini metode Cut-blend crossover operator memiliki nilai persentase keakuratan 99 %. Penelitian yang membahas paralel Algoritme Genetika dengan memanfaatkan GPU yaitu penelitian yang dilakukan oleh Salsabil, dkk [13], dengan memanfaatkan GPU untuk mempercepat waktu komputasi Algoritme Genetika dalam melakukan restorasi Gambar yang blur. Untuk mempercepat komputasi, Algoritme Genetika diparalelkan pada bagian crossover dan mutasi pada GPU. Hasil dari penelitian ini dengan menggunakan GPU bisa meningkatkan kecepatan komputasi 3,8 kali dibanding dengan Algoritme Genetika standar yang dikomputasi menggunakan central proccesing unit (CPU). Penelitian yang dilakukan oleh Fujimoto dan Tsutsui [14], yang memparalelkan operator crossover dan mutasi dari Algoritme Genetika. Operator crossover yang digunakan adalah metode order crossover (OX) dan operator mutasi yang digunakan adalah metode inversion. Hasil dari penelitian ini yaitu peningkatan kecepatan komputasi 1,5 serial OX dan 43.1 5 paralel OX. Berdasarkan beberapa penelitian yang sudah dipaparkan, telah banyak penelitian yang membahas Algoritme Genetika untuk penyelesaian masalah TSP dan paralel Algoritme Genetika dengan menggunakan GPU berbasi CUDA. Pada penelitian sebelumnya operator crossover yang diparalelisasi menggunakan metode order crossover (OX)[13,14]. Maka dalam penelitian ini mencoba memparalelkan Algoritme Genetika dengan menggunakan GPU berbasis CUDA dengan operator algoritme yang diparalelkan adalah operator crossover dan mutasi. Operator crossover menggunakan metode heuristic crossover dan operator mutasi menggunakan metode inversion mutation. Algoritme heuristic crossover yang diterapkan yaitu algoritme nearest neighbor. Dalam penelitian ini, untuk meningkatkan keakuratan hasil penelitian, maka peneliti melakukan pengaturan induk pada operator seleksi dan pengaturan orang tua pada proses crossover. 6