JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print)
1
Implementasi Metode Pairwise Comparison pada Uji Kinerja Varian Metode Kecerdasan Buatan pada Penyelesaian Masalah TSP Muhammad Ibrahim Oswaldo, Ahmad Saikhu dan Bilqis Amaliah Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 Indonesia e-mail:
[email protected]
AbstrakโDalam sebuah kasus pengambilan keputusan sering memerlukan perbandingan dari beberapa kriteria yang berbeda. Pairwise Comparison adalah metode perbandingan berpasangan yang dapat digunakan untuk memperoleh kecenderungan terkait dari setiap kriteria yang dibandingkan. Studi kasus yang diangkat adalah permasalahan TSP dengan permasalahan utama adalah pemilihan metode yang tepat untuk penyelesaian masalah TSP. Nilai pairwise comparison matrix didapatkan berdasarkan tabel derajat kepentingan dari kriteria yang dibandingkan. Jika pairwise comparison matrix dapat diterima kelayakannya, dari proses normalisasi dan nilai bobot vektor yang didapat, kita dapat mengetahui nilai akhir dari setiap metode yang dibandingkan. Nilai akhir tertinggi yang dimiliki sebuah metode, menjadikan metode tersebut metode terbaik yang terpilih. Dalam pembangunan model ini, penulis akan menggunakan matlab. Dari hasil uji coba model yang dibangun dapat disimpulkan bahwa algoritma basic ant colony optimization lebih baik dari basic genetic algorithm dalam penyelesaian masalah TSP. Kata Kunciโ Basic Ant Colony Optimization (ACO), Basic Genetic Algorithm (GA), Kecerdasan Buatan, Pairwise Comparison Matrix, Travelling Salesman Problem (TSP).
I. PENDAHULUAN Dalam sebuah kasus pengambilan keputusan sering memerlukan perbandingan dari varians yang berbeda. Pairwise Comparison adalah metode perbandingan berpasangan. Pairwise Comparison dapat digunakan untuk memperoleh kecenderungan terkait tentang varians tersebut. Quenouille dan John (1971) menemukan perancangan 2nfaktorial Pairwise Comparison. Hasil dari penelitan mereka adalah sebuah pengamatan memiliki varians yang sama [1]. Saaty (1977) memperkenalkan teknik eigenvalue untuk menganalisa data Pairwise Comparison. Teknik eigenvalue membutuhkan perbandingan semua varians satu lawan satu [2]. Dan pada tahun 1978 EI-Helbawy dan Bradley menemukan matriks kovarians dalam uji coba Pairewise Comparison dan memberikan hasil keputusan yang tepat dalam beberapa kasus [3]. Basic Genetic Algorithm (GA) dan Basic Ant Colony Optimization (ACO) adalah dua algoritma kecerdasan buatan yang akan diimplementasikan dalam Tugas Akhir ini pada sebuah permasalahan Travelling Salesman Problem (TSP). Pairewise Comparison Matrix akan menghasilkan nilai yang berasal dari perbandingan setiap varians untuk
membandingkan dua metode tersebut. Nilai yang lebih tinggi menunjukkan kualitas yang lebih baik. Hasil yang diharapkan dari Tugas Akhir ini adalah mengetahui keunggulan dan kelemahan setiap varians dari dua metode yang diimplementasikan dengan membandingkan satu lawan satu dari setiap varians. Sebuah metode dengan jumlah kemenangan yang lebih banyak dari perbandingan setiap varians ditetapkan sebagai metode yang terbaik untuk menyelesaikan sebuah permasalahan TSP. II. ULASAN ALGORITMA A. Pairwise Comparison Pairwise Comparison Matrix adalah metode perbandingan berpasangan yang digunakan dalam studi ilmiah. Pairwise Comparison Matrix biasanya mengacu pada setiap proses membandingkan setiap varians berpasangan untuk menilai yang mana dari setiap varians yang memiliki performa lebih baik. Pertama analisa hasil kinerja dari dua metode yang diimplementasikan pada persoalan TSP. Kemudian buat sebuah comparison matrix A yang berisi nilai positif integer setiap varians. Comparison matrix A ditunjukan pada Persamaan 1. 1 ๐21 ๐ด = ๐31 โฎ ๐ ( ๐1
๐12 1 ๐32 โฎ ๐๐2
๐13 โฏ ๐1๐ ๐23 โฏ ๐2๐ 1 โฏ ๐3๐ โฎ โฑ โฎ ๐๐3 โฏ 1 )
(1)
Dari matrix tersebut dapat ditentukan bobot vektor ๐๐ด. Setelah mendapatkan bobot vektor dapat dihitung nilai consistency ratio matrix untuk menentukan keseimbangan matrix dapat diterima atau tidak. Untuk mendapatkan nilai consistency ratio ditunjukan pada Persamaan 2 dan Persamaan 3 [4]. ๐ถ๐ผ =
n๐๐๐ฅ (๐ด) โ ๐ ๐โ1
(2)
๐ถ๐
=
๐ถ๐ผ ๐
๐ผ
(3)
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print) ๐ merupkan kriteria yang ingin dibandingkan. n๐๐๐ฅ (๐ด) didapat setelah kita lakukan normalisasi dari matriks A. Sementara ๐ถ๐ผ adalah nilai cosistency index dan ๐
๐ผ adalah nilai random consistency index. Jika keseimbangan dari matriks A dapat diterima selanjutnya adalah membentuk matriks baru yang disebut matriks turunan. Jumlah matriks turunan yang kita buat sejumlah kriteria yang dibandingkan. Dengan proses yang sama kita mendapatkan bobot vektor dari masing-masing matriks turunan. Terakhir analisa nilai setiap varians dari dua metode yang telah diimplementasikan pada persoalan TSP. Setiap kemenangan dari 2 metode yang dibandingkan akan mendapatkan nilai ๐. Nilai P adalah nilai akhir keseluruhan dari dua metode yang dibandingkan. Nilai ๐ didapatkan berdasarkan penjumlahan total setiap bobot vektor matriks turunan dan matriks A. B. Basic Genetic Algorithm Dalam proses penyelesaian TSP menggunakan GA ini ada beberapa tahap pemrosesan yaitu inisialisasi data awal, proses pembangkitan populasi awal dan proses pembangkitkan generasi baru. Inisialisasi data awal adalah proses pengolahan data masukan yaitu data kordinat nodes, data jumlah populasi, data jumlah iterasi, probabilitas kawin silang, probabilitas mutasi. Proses pembangkitan awal adalah proses mendapatkan sejumlah kromosom yang selanjutnya dinamakan populasi, populasi ini kemudian akan diproses hingga memperoleh hasil yang diinginkan. Proses pembangkitan generasi baru merupakan kelanjutan dari proses pembangkitan populasi awal, di sini objek yang diproses adalah populasi, sehingga dari poplasi tersebut dihasilkan sejumlah kromosom yang selanjutnya dinamakan generasi, tentunya dalam membangkitkan generasi ini diperlukan beberapa proses seperti mutasi, seleksi, dan crossover. Desain metode GA secara umum dapat dilihat pada diagram alir dalam Gambar 1. Langkah-langkah untuk mengimplementasikan GA adalah sebagai berikut: 1. Bangkitkan Generasi Pertama Pada proses ini kita bangkitkan sejumlah individu yang akan membentuk sebuah populasi. Setiap individu atau kromosom akan mempunyai gen yang berjumlah sama dengan jumlah nodes. gen pada setiap kromosom mengalami pengodean sesuai dengan nomor nodes pada data masukan yang diurutkan secara acak. 2. Bangkitkan Operator Kawin Silang dan Operator Mutasi Pada proses ini kita bangkitkan dua operator kawin silang secara acak, dan dua operator mutasi secara acak. Untuk membangkitkan dua operator kawin silang ditetapkan beberapa ketentuan yaitu bilangan harus positif integer dan 1 โค ๐1 < ๐2 โค ๐๐ข๐๐๐โ. Sementara untuk membangkitkan dua operator mutasi ketentuan yang harus dipatuhi yaitu bilangan harus positif dan 1 โค ๐1 โฃ ๐2 โค ๐๐ข๐๐๐โ.
2 Mulai
Data masukan, Jumlah iterasi, jumlah populasi, probabilitas crossover, Probabilitas mutasi
Bangkitkan bilangan acak untuk menentukan operator crossover dan mutasi
Hitung jarak antar kota (menggunakan Euclident)
Bangkitkan bilangan acak untuk mendapatkan probabilitas crossover setiap parent
Bangkitkan generasi pertama, kromosom encoding dari urutan kota secara acak
Print Jarak Terpendek
Ya
Seleksi parent yang probabilitasnya memenuhi persyaratan crossover
Lakukan crossover Tidak
iterasi
Bangkitkan bilangan acak untuk probabilitas mutasi untuk setiap child hasil crossover
Selesai
Urutkan populasi berdasarkan nilai fitness, 2000 terbaik dijadikan generasi berikutnya
Hitung nilai fitness
Lakukan mutasi untuk setiap child yang probabilitasnya memenuhi persyaratan
Gambar 1 Diagram Alir Proses Penyelesaian TSP dengan Metode GA
3.
4.
Seleksi Parent Untuk Proses Kawin Silang Pada proses ini kita akan menyeleksi parent sebelum memasuki proses crossover. Sebelumnya kita akan membangkitkan bilangan acak untuk setiap individu yang akan menjadi calon parent. Hasil pembangkitan bilangan acak tersebut akan dibandingkan dengan probabilitas crossover yang telah ditentukan sebelumnya dengan nilai 0.5. Setiap calon parent yang memiliki nilai hasil pembangkitan secara acak lebih rendah dari probabilitas crossover yang telah ditentukan ๐๐๐๐๐๐ก๐๐ถ๐ < ๐๐๐, terpilih menjadi parent yang akan mengalami proses crossover. Simpan indeks setiap parent yang terpilih ke dalam sebuah list. Setiap proses kawin silang dibutuhkan dua parent. Proses pemilihan dua parent ini ditentukan berdasarkan urutan pada list yang menyimpan indeks setiap parent yang terpilih. Dengan demikian dapat dikatakan parent pertama pada list akan dikawin silangkan dengan parent kedua pada list, parent kedua pada list akan dikawin silangkan dengan parent ketiga pada list, begitu seterusnya hingga parent terakhir pada list akan dikawin silangkan dengan parent sebelumnya. Proses Kawin Silang Pada tahap ini akan dijelaskan proses kawin silang terjadi. Melanjuti proses sebelumnya, setelah didapatkan dua parent maka akan dilakukan proses kawin silang ini. Proses kawin silang ini sendiri memiliki tujuan yaitu
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print) untuk mendapat keturunan atau yang biasa kita sebut child. Langkah pertama pada proses kawin silang ini adalah menukarkan posisi ๐1 , ๐1 + 1, โฆ , ๐2 milik ๐๐๐๐๐๐ก๐ dengan milik ๐๐๐๐๐๐ก๐+1 . Simpan proses langkah pertama pada sebuah list dan beri nama list tersebut dengan nama child. Langkah berikutnya adalah membuat list baru ๐ฟ๐ , ๐ฟ๐+1 dan mengisi list tersebut dengan elemen-elemen yang dimiliki oleh ๐๐๐๐๐๐ก๐ dan ๐๐๐๐๐๐ก๐+1 dimulai dari ๐2 searah jarum jam ๐2 + 1, ๐2 + 2, โฆ , ๐, 1, 2, โฆ , ๐2 . Langkah ketiga merupakan lanjutan langkah sebelumnya, setelah kita memiliki list L, kita buat sebuat list baru lagi yang diberi nama dengan ๐ฟโฒ๐ , ๐ฟโฒ๐+1 , dan mengisi list tersebut dengan menghapus gen yang nilai nodes-nya telah termasuk dalam child sementara. Dan proses terakhir adalah melanjutkan pengisian pada variabel child, dengan cara mengambil elemen-elemen pada variabel ๐ฟโฒ๐ , ๐ฟโฒ๐+1 dan mengurutkanya secara ๐2 + 1, ๐2 + 2, โฆ , ๐, 1, 2, โฆ , ๐1โ1. Untuk lebih jelasnya proses kawin silang akan dijelaskan pada Tabel 2 [5].
6.
7.
Tabel 1
Urutan 1 2 3
4
5
6
5.
Proses Tentukan ๐๐๐๐๐๐ก1 dan ๐๐๐๐๐๐ก2 dari populasi Tentukan titik crossover secara acak Tukar posisi ๐1 , ๐1 + 1, โฆ , ๐2 miliki ๐๐๐๐๐๐ก1 dengan miliki ๐๐๐๐๐๐ก2 dan simpan kedalam variabel child1 dan child2 Buat list baru ๐ฟ1 , ๐ฟ2 dan mengisinya dengan element ๐๐๐๐๐๐ก1 dan ๐๐๐๐๐๐ก2 dimulai dari ๐2 searah jarum jam ๐2 + 1, ๐2 + 2, โฆ , ๐, 1, 2, โฆ , ๐2 Dari list ๐ฟ1 , ๐ฟ2 buat sebuah list baru lagi ๐ฟโฒ1 , ๐ฟโฒ2 dengan menghapus nodes yang telah termasuk dalam ๐1 pada tahap 2 Terakhir masukan setiap element ๐ฟโฒ๐ kedalam element kosong ๐๐ dengan urutan ๐2 + 1, ๐2 + 2, โฆ , ๐, 1, 2, โฆ , ๐1โ1
Contoh P1 = 1-2-5-4-3-7-6 P2 = 5-4-2-6-3-1-7 ๐1 = 3 ๐2 =5 child1 = ?-?-2-6-3-?-? child2 = ?-?-5-4-3-?-?
L1 = 7,6,1,2,5,4,3 L2 = 1,7,5,4,2,6,3
๐ฟโฒ1 = L1 โ 2,6,3 = 7,1,5,4 ๐ฟโฒ2 = L2 โ 5,4,3 = 1,7,2,6
child1 = 5-4-2-6-3-71 child2 = 2-6-5-4-3-17
Seleksi Child Untuk Proses Mutasi Pada proses ini kita akan menyeleksi child sebelum memasuki proses mutasi. Sebelumnya kita akan membangkitkan bilangan acak untuk setiap child. Hasil
8.
3
pembangkitan bilangan acak tersebut akan dibandingkan dengan probabilitas mutasi yang telah ditentukan sebelumnya dengan nilai 0.01. Setiap child yang memiliki nilai hasil pembangkitan secara acak lebih rendah dari probabilitas mutasi yang telah ditentukan ๐โ๐๐๐๐๐ < ๐๐, terpilih menjadi child yang akan mengalami proses mutasi. Simpan indeks setiap child yang terpilih ke dalam sebuah list. Proses Mutasi Melalui proses sebelumnya kita mempunya list yang menyimpan indeks setiap child yang akan mengalami mutasi, yang berarti setiap child tersebut akan mengalami mutasi. Proses mutasi yang akan dilakukan pada tahap ini adalah proses menukar posisi kromosom yang telah ditentukan berdasarkan proses inisialisasi data. Yaitu kromosom yang berada pada posisi ๐1 bertukar tempat dengan kromosom yang berada pada posisi ๐2 . Proses Menghitung Fitness Setiap Individu Pada tahap ini akan dilakukan proses menghitung nilai fitness setiap individu. Cara menghitung nilai fitness setiap individu sudah ditentukan dengan nilai fitness sama dengan jarak tempuh setiap individu. Berarti nilai fitness didapatkan dengan melihat kromosom setiap individu. Proses Elitisme Pada tahap ini akan dilakukan proses elitisme yang berarti proses perbaikan generasi. Proses ini dilakukan dengan mengevaluasi setiap individu berdasarkan nilai fitness-nya. Setiap individu parent maupun child diurutkan berdasarkan nilai fitness. Sejumlah populasi, setiap individu yang memiliki nilai fitness terbaik akan menjadi generasi baru pada iterasi berikutnya.
C. Basic Ant Colony Optimization Dalam proses penyelesaian TSP menggunakan ACO ini ada beberapa tahap pemrosesn, yaitu inisialisasi data awal, penentuan jalur yang dilewati semut, memperbarui nilai pheromones, menghitung semua jalur yang dilewati setiap semut. Inisialisasi data awal adalah proses pengolahan data masukan yaitu data koordinat nodes, data jumlah semut, data jumlah iterasi, data koefisien alpha, beta, eliminasi, dan evaporasi. Penentuan jalur yang dilewati semut adalah proses menentukan perjalan setiap nodes yang akan dilewati semut berdasarkan nilai pheromones sementara. Memperbarui nilai pheromones adalah proses dimana pheromones pada jalur yang dilalui semut mengalami penguatan, sebaliknya pheromones mengalami evaporasi jika jalur tersebut tidak dilalui. Terakhir adalah proses menghitung cost pada jalur yang dilalui semut. Desain metode ACO secara umum dapat dilihat pada diagram alir dalam Gambar 2.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print)
disimpulkan jalur yang sering dilewati atau yang memiliki nilai pheromones besar memiliki kemungkinan lebih besar untuk terpilih. 4. Evaluasi dan Perbaharui Nilai Pheromones Berdasarkan pada tahap sebelumnya setiap semut akan mempunyai jalur yang dilalui masing masing. Tahap ini akan memperbaharui nilai pheromones pada semua jalur. Setiap jalur yang dilewati semut, maka pheromones tersebut akan mengalami peningkatan. Sebaliknya nilai pheromones akan menguap jika tidak dilewati semut. Fungsi untuk meningkatkan atau mengurangi nilai pheromones akan ditunjukkan pada Persamaan 4. (4) ๐๐๐ = ๐๐๐ + โ๐ ๐ ๐๐๐ = (1 โ ๐)๐๐๐ ; โ(๐, ๐) โ ๐ด
Mulai
Data masukan, Jumlah iterasi, jumlah semut, koefisien evaporasi, koefisien eliminasi, nilai alpha, nilai beta
Hitung jarak antar kota (menggunakan Euclident)
Bangkitkan sejumlah m semut
Tempat kan secara acak setiap semut pada suatu nodes
Ya
Tentukan kota selanjutnya
Tidak
Print jarak terpendek
Tidak
5. Hitung Cost Perjalanan Semut Tahap ini merupakan tahap turunan dari tahap tiga. Setelah setiap semut mempunyai jalur masing masing untuk menyelesaikan perjalanan. Masing-masing semut memiliki panjang jarak tempuh yang berbeda sesuai jalur yang dilaluinya [6].
Kembali ke kota semula ?
iterasi
Ya
Perbaharui nilai pheromones dengan proses penguatan ataupun evaporasi
selesai
Hitung jarak perjalanan semut
III. HASIL UJI COBA
Gambar 2 Diagram Alir Proses Penyelesaian TSP dengan Metode ACO
Langkah-langkah untuk mengimplementasikan GA adalah sebagai berikut: 1. Bangkitkan Sejumlah Semut Pada tahap ini kita membangkitkan sejumlah semut sesuai dengan yang kita inginkan. Disini peran semut dianggap seperti seorang salesman. Semut akan berjalan dari tempat awal dan kembali ke tempat semula setelah melalui semua kota. 2. Tentukan Entry State untuk Setiap Semut Tahap ini merupakan lanjutan dari tahap sebelumnya. Pada tahap ini kita harus menempatkan setiap semut pada sebuah kota yang ditentukan secara acak. Guna penempatan ini adalah kota yang ditentukan menjadi entry state setiap semut, dimana seekor semut akan memulai dan mengkahir perjalan pada kota tersebut. 3. Tentukan Next State atau Perjalanan Semut Pada tahap ini seekor semut akan menentukan nodes berikutnya untuk mencapai tempat tujuan. Setiap semut akan memiliki probabilitas akan ditunjukkan pada Persaaan 3 untuk menentukan nodes berikutnya. ๐๐,๐ = โ
๐ผ ๐๐,๐
๐ผ (๐) ๐๐,๐ ๐
๐โ๐
๐๐,๐ = 0,
(๐)
, jika ๐ โ ๐๐
4
(3)
Uji coba akan dilakukan dengan beberapa mekanisme. Pertama akan dilakukan uji coba dengan pembentukan matriks A Pairwise Comparison. Berikutnya akan dilakukan 5 uji coba yang berbeda berdasarkan jumlah nodes data masukan, A.
Pembentukan Matriks A Sebelum membangun sebuah matriks kita harus memahami terlebih dahulu konsep derajat kepentingan. Derajat kepentingan adalah nilai yang kita berikan untuk kriteria yang akan kita bandingkan. Fungsi dari derajat kepentingan ini adalah mengurutkan tingkat prioritas dari kriteria yang dibandingkan tersebut. Skala derajat kepentingan ditunjukkan pada Tabel 3. Tabel 2 Tabel Penentuan Derajat Kepentingan
Nilai 1 3 5 7 9
Urutan kriteria pembanding dan algoritma pembanding akan ditunjukkan pada Tabel 4 dan Tabel 5. Tabel 3 Urutan Kriteria Pembanding
(๐)
jika ๐ โ ๐๐
Dengan membangkitkan bilangan acak untuk dibandingkan dengan probabilitas yang dimiliki semut. Keadaan pheromones sementara mempengaruhi nilai probabilitas yang dimiliki semut, yang berarti mempengaruhi pemilihan nodes berikutnya. Dapat
Tingkat Kepentingan Memiliki tingkatan yang sama Sedikit lebih penting dari salah satu kriteria lainya Lebih penting Memiliki kepentingan yang sangat tinggi Memiliki tingkat kepentingan yang paling tinggi
1 2 3 4
Kompleksitas Waktu Implementasi Kompleksitas Memori Implementasi Jarak Tempuh Optimal Tingkat Kesulitan Implementasi
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print) ๐(๐บ๐ด)
Tabel 4 Urutan Algoritma Pembanding
1 2
Basic Genetic Algorithm Basic Ant Colony Optimization
๐(๐ด๐ถ๐)
Urutan tingkat kepentinganya adalah jarak optimal, kompleksitas waktu, kompleksitas memori, dan jumlah kode implementasi. Sehingga didapatkan matriks A adalah sebagai berikut.
5
= (0.29 ร 0.1) + (0.09 ร 0.1) + (0.57 ร 0.5) + (0.04 ร 0.25) = 0.334 = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.5) + (0.04 ร 0.75) = 0.666
(3.3)
D. Uji Coba 22 Nodes Percobaan 22 Nodes Metode GA ACO Kompleksitas waktu 500.91 6.1 Kompleksitas memori 50.9 2.61 Jarak optimal 7530.97 7601 Baris kode 261 152 ๐(๐บ๐ด) = (0.29 ร 0.1) + (0.09 ร 0.1) + (0.57 ร 0.75) + (0.04 ร 0.25) = 0.4765 ๐(๐ด๐ถ๐) = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.25) + (0.04 ร 0.75) = 0.5235
Sehingga didapatkan nilai ๐
๐ผ = 0.99. Langkah selanjutnya adalah mencari nilai CI. Untuk mendapat nilai CI kita membutuhkan nilai ๐๐๐๐ฅ . Nilai ๐๐๐๐ฅ didapatkan dari proses pengalaian matriks A dengan matriks bobot vektor, sehingga didapatkan sebuah matrix baru berukuran 1 ร 4. Hasil penjumlahan dari matrix baru tersebut merupakan nilai ๐๐๐๐ฅ . Sehingga ๐๐๐๐ฅ = 4.27. Dengan persamaan yang telah disebutkan pada bab sebelumnya kita mendapatkan nilai ๐ถ๐ผ = 0.09. Proses pembagian nilai CI dengan nilai RI mendapatkan nilai ๐ถ๐
= 0.09, sehingga matrix A dapat diterima keseimbanganya.
E. Uji Coba 51 Nodes Percobaan 51 Nodes Metode GA ACO Kompleksitas waktu 1536.62 19.35 Kompleksitas memori 82.8 10.1 Jarak optimal 466.4 501.98 Baris kode 261 152 ๐(๐บ๐ด) = (0.29 ร 0.1) + (0.09 ร 0.1) + (0.57 ร 0.75) + (0.04 ร 0.25) = 0.4765 ๐(๐ด๐ถ๐) = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.25) + (0.04 ร 0.75) = 0.5235
1.00 ๐ด = (0.20 3.00 0.14
5.00 1.00 7.00 0.33
0.33 0.14 1.00 0.11
7.00 3.00) 9.00 1.00
Untuk koefisien nilai RI ditunjukkan pada Persamaan 3.3. ๐
๐ผ =
1.96(๐ โ 2) ๐
๐๐ด1 ๐๐ด2 ๐๐ด3 ๐๐ด4
0.23 + 0.375 + 0.21 + 0.35 = 0.29 4 0.04 + 0.075 + 0.09 + 0.15 = = 0.09 4 0.70 + 0.525 + 0.63 + 0.45 = = 0.57 4 0.03 + 0.025 + 0.07 + 0.05 = = 0.04 4 =
B. Uji Coba 14 Nodes Percobaan 14 Nodes Metode GA ACO Kompleksitas waktu 414.27 3.22 Kompleksitas memori 45.3 1.35 Jarak optimal 3087.5 3087.5 Baris kode 261 152 (0.29 (0.09 ๐(๐บ๐ด) = ร 0.1) + ร 0.1) + (0.57 ร 0.5) (0.04 + ร 0.25) = 0.334 ๐(๐ด๐ถ๐) = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.5) + (0.04 ร 0.75) = 0.666 C. Uji Coba 16 Nodes Percobaan Metode Kompleksitas waktu Kompleksitas memori Jarak optimal Baris kode
16 Nodes GA 385.06 45.9 7398 261
ACO 4.09 1.94 7398 152
F. Uji Coba 52 Nodes Percobaan 52 Nodes Metode GA ACO Kompleksitas waktu 1500.31 19.9 Kompleksitas memori 98.3 11.3 Jarak optimal 8607 9275 Baris kode 261 152 ๐(๐บ๐ด) = (0.29 ร 0.1) + (0.09 ร 0.1) + (0.57 ร 0.75) + (0.04 ร 0.25) = 0.4765 ๐(๐ด๐ถ๐) = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.25) + (0.04 ร 0.75) = 0.523 G. Uji Coba 76 Nodes Percobaan 52 Nodes Metode GA ACO Kompleksitas waktu 1096.47s 38.66s Kompleksitas memori 105 MB 20.6 MB Jarak optimal 767.94 736.08 Baris kode 261 baris 152 baris ๐(๐บ๐ด) = (0.29 ร 0.1) + (0.09 ร 0.1) + (0.57 ร 0.25) + (0.04 ร 0.25) = 0.1915 ๐(๐ด๐ถ๐) = (0.29 ร 0.9) + (0.09 ร 0.9) + (0.57 ร 0.75) + (0.04 ร 0.75) = 0.8085
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2014) ISSN: 2337-3539 (2301-9271 Print) IV. KESIMPULAN DAN SARAN Dari hasil uji coba yang telah dilakukan terhadap pembuatan program pembanding kinerja varians dari dua metode kecerdasan buatan yang telah ditentukan untuk proses penyelesaian masalah TSP dapat diambil kesimpulan sebagai berikut: 1) Metode GA unggul pada kriteria hasil jarak optimal, dengan batasan nodes pada permasalahan tidak lebih dari 52 nodes. Sementara metode ACO unggul pada tiga kriteria lainnya yaitu kompleksitas waktu, kompleksitas memori, dan tingkat kesulitan dalam implementasi. 2) Dari proses Pairwise Comparison diketahui metode ACO lebih baik dengan nilai P rata-rata 0.6185, sedangkan GA memiliki nilai P rata-rata 0.3815. Saran yang diberikan untuk pengembangan aplikasi pembanding kinerja varians dari dua metode kecerdasan buatan yang telah ditentukan untuk proses penyelesaian masalah TSP pada Tugas Akhir ini adalah peninjauan ulang kembali dalam menentukan skala derajat kepentingan pada proses perbandingan pairwise comparison. UCAPAN TERIMA KASIH Penulis mengucapkan puji syukur kepada Allah SWT yang melimpahkan rahmat dan hidayahnya sehingga penulis dapat menyelesaikan penelitian ini dengan lancar. Penulis juga mengucapkan terima kasih kepada Bapak Rully Soelaiman, Bapak Ahmad Saikhu dan Ibu Bilqis Amaliah yang telah membantu penulis dalam menyelesaikan penelitian ini dengan lancar. Penulis juga mengucapkan terima kasih kepada pihakpihak lain yang turut membantu kelancaran penelitian ini. DAFTAR PUSTAKA
[1] M. H. Quenouille dan J. A. John, โPaired comparison design for 2n-factorials,โ Royal Statistical Society. Series C (Applied Statistics), vol. 20, pp. 16-24, 1971. [2] J. M. Alho, O. Kolehmainen dan P. Leskinen, โRegression Methods for Pairwise Comparison Data,โ Managing Forest Ecosystems, vol. 3, pp. 235-251, 2001. [3] A. T. El-Helbawy dan R. A. Bradley, โTreatment Contrasts in Paired Comparisons: Large-Sample Results, Applications, and Some Optimal Designs,โ American Statistical Association, vol. 73, no. 364, pp. 831-839, 1978. [4] H. Wang, โComparison of several intelligent algorithms for solving TSP problem in industrial engineering,โ Systems Engineering Procedia, vol. 4, pp. 226-235, 2012. [5] A. T. Hamdy, Operation Research An Introduction Ninth Edition, New Jersey: Prentice Hall, 2011. [6] B. Santosa dan P. Willy, Metoda Metaheuristik : Konsep dan Implementasi, Surabaya: Guna Widya, 2011. [7] G. Skorobohatyj, โThe TSPLIB Symmetric Travelling Salesman Problem Instances,โ 1 June 1995. [Online].
6
Available: http://elib.zib.de/pub/Packages/mptestdata/tsp/tsplib/tsp/index.html. [Diakses 3 March 2014].