Pada penelitian ini penulis menggunakan algoritma genetika untuk membangkitkan fungsi keanggotaan membership function fuzzy secara otomatis dan diharapkan
dari hasil penelitian akan didapatkan metode yang efektif untuk menghasilkan nilai derajat keanggotaan yang lebih baik
BAB III METODOLOGI PENELITIAN
3.1 Pendahuluan
Pembangkit fungsi keanggotaan fuzzy menggunakan data masukan input yang diklasifikasi pada tahap pra proses dan kemudian melalui proses optimasi dengan
menggunakan algoritma genetika sehingga menghasilkan ouput berupa grafik fungsi keanggotaan segitiga yang optimal . system ini terdiri dari 4 variabel yaitu variabel
Produktifitas, Hubungan Sosial dan Aksesibilitasyang mana masing-masing variabel ini akan diklasifikasi terlebih dahulu pada proses pra proses sehingga menghasilkan 4
range yaitu yaitu Rendah R, Sedang S, Tinggi T dan Sangat Tinggi ST masing-masing range direpresentasikan dalam grafik fungsi segitiga.
3.2 Data Yang Digunakan
Pada penelitian ini digunakan data input yang terdiri dari 4 variabel dan masing- masing terdiri dari range tertentu . Data yang digunakan dalam proses ini adalah
sebagai berikut :
1. Variabel Produktifitas, dengan range 20-70
2. Variabel Hubungan Sosial, dengan range 30 – 90
3. Variabel Aksesibilitas, dengan range 45 – 85
4. Variabel Keterisolasian , dengan range 12 - 80
Universita Sumatera Utara
Masing-masing variabel terdiri dari jumlah variable yang sudah ditentukan yaitu Variabel Produktifitas sebanyak 60 data, variabel Hubungan Sosial sebanyak 70
data, varibel Aksesibilitas sebanyak 60 data dan variabel Keterisolasian sebanyak 50 data.
Universita Sumatera Utara
3.3 Proses Penyelesaian Masalah :
Adapun prosedur kerja pembangkit fungsi keanggotaan fuzzy menggunakan Algoritma Genetika dilihat secara keseluruhan adalah sebagai berikut :
Mulai
Input :
Produktifitas 20-70 Hubungan Sosial 30-90
Aksesibilitas 45-85 Keterisolasian 12-80
Proses :
Representasi kromosom Menentukan Nilai Fitness
Seleksi Crossover
Mutasi
Output :
Grafik Fungsi Keanggotaan
Selesai
Gambar 3.1 Alur Proses Penyelesaian Masalah
Universita Sumatera Utara
3.4 Perancangan Algoritma Genetika Langkah awal algoritma genetika dimulai dengan membangkitkan secara random
solusi-solusi yang disebut dengan initial population. Tiap-tiap individu disebut kromosom dimana setiap kromosom mewakili sebuah solusi untuk setiap masalah.
Kromosom terbentuk setiap generasi dan kemudian dievaluasi menggunakan beberapa ukuran fitness. Untuk generasi yang baru, kromosom baru terbentuk oleh
proses yang dinamakan proses seleksi. Setelah proses seleksi berlangsung kromosom yang baru terbentuk akan mengalami proses reproduksi dimana didalam proses
reproduksi ini kromosom akan di proses dalam dua tahap yaitu crossover dan mutasi sehingga solusi dapat dicapai sesuai nilai fitness.
Universita Sumatera Utara
Gambar 3.4 Proses Algoritma Genetika Bangkitkan sebuah populasi dengan jumlah kromosom N
x1, x2, ….. xN
Hitung nilai fitness masing-masing kromosom Fx1, fx2, ….. fxN
Pilih sepasang kromosom untuk proses perkawinan
Dengan menggunakan probability crossover Pc, Lakukan proses perkawinan terhadap 2 kromosom tsb
kemudaian terbentuklah 2 keturunanan baru
Dengan menggunakan probability Mutasi Pm, Tukarkan secara acak nilai gen dari 2 keturunan kromosom
Apakah jumlah populasi yang baru = N ?
Tukarkan populasi kromosom dengan yang baru
Tidak
Ya Mulai
Apakah sudah memenuhi
jumlah N ?
Tempatkan hasil kromosom pada populasi yang baru
Selesai Ya
Tidak
Universita Sumatera Utara
Pada tahap proses dimana dilakukan optimalisasi menggunakan algoritma genetika terdiri dari langkah-langkah sebagai berikut :
Langkah 1 : Membangkitkan secara random sebuah populasi yang terdiri dari 10 individu untuk masing-masing set fungsi keanggotaan untuk variabel manfaat,
efektifitas, keterisolasian dan hubungan sosial Langkah 2 : Dilakukan pengkodean untuk setiap set fungsi keanggotaan menjadi
sebuah string Langkah 3 : Menghitung nilai fitness masing-masing kromosom melalui persamaan
2, persamaan 3 dan persamaan 4 Langkah 4 : Dilakukan proses operasi cross over dari populasi
Langkah 5 : Dilakukan proses operasi mutasi dari populasi Langkah 6 : Dengan menggunaka kriteria seleksi pilih individu untuk menjadi
generasi yang baru generasi berikutnya Langkah 7 : Jika kriteria tidak terpenuhi maka kembali lagi ke langkah 3 dan lakukan
kembali langkah-langkah selanjutnya. Langkah 8 : Yang menjadi Output dari sebuah set fungsi keanggotaan adalah nilai
fitness tertinggi Algoritma Genetika merupakan proses iterasi. Masing-masing iterasi disebut
generasi. Biasanya jumlah generasi untuk sebuah Genetika Algoritma yang sederhana berada diantara range 50 sampai 500 . Seluruh set dari generasi tersebut disebut
dengan putaran. Dan pada akhir putaran diharapkan akan ditemukan satu atau lebih kromosom yang paling tepat.
3.4.1 Pembentukan kromosom Proses representasi kromosom merupakan tahap sangat penting pada proses algoritma
genetika. Merepresentasikan grafik fungsi keanggotaan menjadi kromosom dilakukan pendekatan seperti yang ditunjukkan pada gambar dibawah ini.
R
jl
R
jk
R
jl
µ 1
Universita Sumatera Utara
Gambar 3.5
merupakan gambar
fungsi keanggotaan
dengan merepresentasikan kromosom. Dimana Rjk merupakan sebuah fungsi keanggotaan
yang mewakili sebuah lingustik range misalkan sangat rendah pada sebuah variabel I yang mewakili Produktifitas, cjk menunjukkan nilai tengah dari daerah Rjk dan wjk
yang mewakili setengah dari jarak daerah Rjk, ajk merupakan titik kiri sebuah daerah segitiga. Berikut ini merupakan gambar fungsi keanggotaan terdiri dari 1 variabel
yang merepresentasikan kromosom variabel Produktifitas Berikut merupakan sebuah contoh merepresntasikan sebuah kromosom menjadi
sebuah fungsi keanggotaan segitiga. Sebuah variabel produktifitas dengan range 20- 70
variabel produktifitas : 23, 29, 26, 50, 53, 33, 60, 62, 67, 73, 43, 70, 43, 44, 55, 56, 60,61, 33 , 34, 47,48, 50, 53, 35, 38, 37, 55, 56, 67
Dari deret nilai variabel produktifitas diambil 9 buah nilai yang diambil secara acak yaitu 20 , 30 , 38 , 45 , 47, 59 , 62 , 64 , 70
.
9 buah bilangan ini akan membentuk 3 buah segitiga pada grafik segitiga seperti pada gambar 3.6. 3 buah bilangan
merepresentasikan sebuah segitiga, dimana bilangan yang ke-1 = nilai kaki kiri segitga, bilangan ke-2 = nilai tengah segitiga dan bilangan yang ke-3 = nilai kaki
kanan segitiga. Demikian juga untuk 6 bilanglainnya merepresentasikan nilai kaki kiri , nilai tengah dan nilai kaki kanan untuk segtiga yang ke-2 dan segitiga yang ke-3.
µ 1
20 30 38 45 47 59 62 64 70
R1 R2 R3 R4
Gambar 3.6 Grafik segitiga Variabel Produktifitas
Universita Sumatera Utara
Berdasarkan gambar 3.6 Grafik fungsi keanggotaan maka direpresentasikan ke dalam sebuah kromosom, sebagai berikut :
K1
20 30 45 38 47 62 59 64 70
K1 adalah kromosom pertama yang terbentuk dari titik kiri segitiga , nilai tengah w dan titik kanan variabel Produktifitas, Kemudian dibangkitkan secara acak 9 set
kromosom lainnya yang diambil secara acak dari nilai variabel produktifitas, sehingga akan terbentuk 10 set kromosom yang baru. Seperti pada gambar 3.8
K1 = 20 30 45 38 47 62 59 64 70
K2 = 21 35
43 55
67 54
62 56
44 K3 = 31
25 48
60 52
42 40
32 69
K4 = 23 29
26 50
53 33
60 62
67 K5 = 53
33 60
62 67
73 43
70 43
K6 = 60 62
67 73
43 70
43 44
55 K7 = 55
56 60
61 33
34 47
48 50
K8 = 48 50
53 35
38 37
55 56
67 K9 = 50
53 33
60 62
67 73
43 70
K10 = 33 60
62 67
73 43
70 43
44
Selanjutnya kromosom yang terdiri dari 10 set ini akan dilakukan proses perhitungan nilai fitness untuk masing-masing individu yang selanjutnya maka akan dihitung
masing-masing nilai kromosom tersebut untuk menentukan kromosom yang mana selanjutnya akan dilakukan prosess crossover.
R1 R2
R3
Gambar 3.7 Representasi sebuah kromosom variabel produktifitas
Gambar 3.8 10 set kromosom yang dibangkitkan secara acak
Universita Sumatera Utara
3.4.2 Menentukan nilai fitness
Untuk menentukan nilai fitness digunakan persamaan 5. Yang mana dilakukan perhitungan Perbandingan overlap dari fungsi keanggotaan Rjk dan Rji dapat
didefenisikan sebagai panjang overlap dibagi setengah jarak minimum dari 2 fungsi tersebut. Faktor overlap sebuah variabel Ij dengan kromosom Cq didefenisikan
sebagai berikut :
Gambar 3.9 Grafik fungsi segitiga keanggotaan fuzzy Dengan menggunakan persamaan 5 ditentukan nilai Fitnes C1 sebagai berikut :
F C11 = ∑
+
Wjk Wji
0 5 10 15 20 Range Rj1, Rj2, Rj3
R1 R2
R3 R4
Universita Sumatera Utara
= +
+ +
⁄
= 0 + 0 + 0 + 1,3 = 1,3
FCq12 = 1,25 FCq13 = 2
FCq14 = 1,5 Total Fitness C 1 = 1,3 + 1,25 + 2 + 1,5 = 6,0
Maka diperoleh nilai fitness kromosom 1 sebesa6,0 Selanjutnya dilakukan
perhitungan nilai fitness kromosom 2 dan seterusnya sampai kromosom yang ke -10 dengan menggunakan cara yang sama.
3.4.3 Operasi cross over dan mutasi pada populasi
Pada proses cross over dilakukan 3 metode yaitu yang pertama metode one point cross over , yang kedua dilakukan two point cross over dan yang ketiga
yaitu min-max cross over . Adapun proses crossover yang terjadi adalah sebagai berikut :
3.4.3.1 One point crossover.
Misalkan dilakukan cross over pada 2 kromosom berikut dengan menggunakan metode one point crossover, maka yang dilakukan adalah
perkawinan dilakukan tepat pada satu titik fungsi keanggotaan. Pada contoh dibawah dilakukan perkawinan pada titik fungsi keanggotaan kedua.
K1 = 5 5 10 5 15 5 20 5
K2 = 3 5 11 5 15 5 21 5
K1 = 5 5 10 5 15 5 20 5
Universita Sumatera Utara
K2 = 3 5 11 5 15 5 21 5
Gambar 3.10 Pertukaran kromosom metode one point cross over
Pada bilangan yang cetak hitam dan garis bawah akan dilakukan perkawinan dengan menggunakan metode one point cross over sesuai dengan persamaan 9 sehingga akan
menghasilkan 2 buah kromosom yang baru sebagai berikut :
K1 = 5 5 10 5 15 5 21 5
K2 = 3 5 11 5 15 5 20 5
Selanjutnya dilakukan perhitungan nilai fitness terhadap ke dua kromosom yang terbentuk dari perkawinan silang. Kemudian nilai fitness yang tertinggi akan dipilih
menjadi generasi yang baru dan selanjutnya dilakukan proses mutasi
3.4.3.2 Two Point crossover
Untuk perkawinan silang dengan menggunakan metode two point crossover maka dilakukan perkawinan di 2 titik sekaligus . Pada contoh dibawah ini dilakukan
perkawinan silang pada fungsi keanggotaan ke 2 dan ke 4
K1 = 5 5 10 5
15 5 20 5
K2 = 3 5 11 5
15 5 21 5
K1 = 5 5 11 5
15 5 20 5
K2 = 3 5 10 5
15 5 21 5
Universita Sumatera Utara
Gambar 3.11 Pertukaran kromosom metode two point cross over
Selanjutnya perkawinan silang diata akan menghasilkan 2 kromosom seperti gambar 3.11
Kemudian ke dua kromosom yang terbentuk dihitung nilai fitness, kromosom dengan nilai fitness paling tinggi akan menjadi kromosom generasi yang baru dan kemudian
dilakukan proses mutasi.
3.4.3.3 Min Max Aritmatik crossover
Pada proses crossover dengan metode Min max aritmatik crossover akan menghasilkan 4 buah kromosom yang baru. Dengan menggunakan persamaan
9 berikut bentuk perkawinan antara 2 kromosom dengan d = 0.3 .
K1 = 5 5 10 5 15 5 20 5
K2 = 3 5 11 5 15 5 21 5
Dengan menggunakan Min-max crossover maka perkawinan silang yang dihasilkan 4 buah kromosom sebagai berikut :
K1 = 3.6 4.7 10.7 4.7 18 4.7 20.7 4.7 K2 = 4.4 4.7 10.3 4.7 18 4.7 20.3 4.7
K3 = 5 5 11 5 15 5 21 5 K4 = 3 5 10 5 15 5 20 5
Gambar 3.12 Pertukaran kromosom metode min max aritmatika
Universita Sumatera Utara
Dari ke empat kromosom yang terbentuk maka dihitung masing- masing nilai kromosom sehingga didapat nilai kromosom yang paling tinggi
akan menjadi kromosom generasi berikutnya dan selanjutnya dilakukan proses mutasi
Operator mutasi one-point akan membentuk sebuah fungsi keanggotaan fuzzy yang baru dengan menambahkan secara acak sebuah nilai
antara –w
jk
dan + w
jk
ke nilai tengah atau sebuah daerah lingustik yaitu R
jk
. Dimana c adalah nilai tengah dan w adalah jarak setengah dari sebuah daerah lingustik. Dengan operasi mutasi maka akan terbentuk sebuah nilai
fungsi keanggotaan yang baru menjadi c+ atau w+ .
Universita Sumatera Utara
Universita Sumatera Utara
Universita Sumatera Utara
Universita Sumatera Utara
BAB IV HASIL DAN PEMBAHASAN
4.1 Pendahuluan Penulis membangun program pembangkit fungsi keanggotaan fuzzy menggunakan
Algoritma Genetika dengan menggunakan bahasa pemrograman Visual Studio 2010. Pada penelitian ini, akan ditampilkan hasil fungsi keanggotaan yang dibangkitkan
dengan menggunakan algoritma genetika dengan mengamati perbedaan fungsi keanggotaan yang dibangkitkan dengan menggunakan perkawinan metode crossover
two point dan crossover min max aritmatika. Adapun uji coba yang dilakukan menggunakan komputer dengan spesifikasi hardware sebagai berikut :
1. Prosesor Dual Core 1.86 GHz
2. RAM, 2 GB
3. Aplikasi Visual Studio 2010
4. OS Win XP
4.2 Hasil Uji Coba Pembangkit fungsi keanggotaan fuzzy menggunakan algoritma genetika pada tahapan