BAB III Metode Penelitian

advertisement
BAB III
Metode Penelitian
3.1
Diagram Alir Penelitian
Secara umum diagram alir algoritma genetika dalam penelitian ini terlihat
pada Gambar 3.1. pada Algoritma genetik memberikan suatu pilihan bagi penentuan
nilai parameter dengan meniru cara reproduksi genetik, pembentukan kromosom baru
serta seleksi seperti yang terjadi pada makluk hidup. Algoritma secara umum dapat
diilustrasikan dalam diagram alir berikut ini :
44
http://digilib.mercubuana.ac.id/
Gambar 3.1 Diagram Alir Algoritma Genetik
Proses selanjutnya adalah proses seleksi, dimana setelah terbentuk populasi
awal, maka selanjutnya hasil populasi awal itu akan diseleksi. Proses ini dilakukan
untuk mendapatkan calon induk yang baik. Dalam pengertian induk yang baik akan
menghasilkan keturunan yang baik. Semakin tinggi nilai fitness suatu individu
45
http://digilib.mercubuana.ac.id/
semakin besar kemungkinannya untuk terpilih. Metode seleksi yang akan digunakan
dalam alogaritma genetik ini adalah metode roulette wheel selection. Seleksi roulette
wheel akan memilih induk menggunakan persentase fitness setiap individu, dimana
setiap individu mendapatkan luas bagian sesuai dengan persentase nilai fitnessnya.
Cara kerja roulette wheel selection adalah seperti berikut : pertama-tama secara acak
(random) akan dipilih sebuah nilai diantara 0 sampai 1, kemudian nilai tersebut akan
dikalikan dengan nilai total fitness seluruh individu dalam generasi tersebut. Nilai
hasil perkalian antara bilangan random dan total fitness tersebut dianggap sebagai
titik yang ditunjuk oleh jarum pada roulette wheel. Untuk mendapatkan individu yang
dipilih, maka fitness dari individu anggota – anggota generasi tersebut dijumlahkan
mulai dari pertama sampai jumlah fitness tersebut melebihi nilai hasil perkalian
antara bilangan random dan total fitness. Dengan demikian individu yang memiliki
fitness yang tinggi akan mempunyai kesempatan lebih besar untuk terpilih, karena
semakin besar nilai fitness suatu individu, maka semakin besar pula pengaruhnya
terhadap penjumlahan fitness individu – individu dalam populasi tersebut.
Setelah melakukan proses seleksi, maka hasil dari proses tersebut akan
digunakan dalam proses crossover. Sebelum melakukan proses crossover dilakukkan
pengundian dengan bilangan random untuk setiap kromosom, apakah kromosom
tersebut mengalami crossover atau tidak. Jika dari proses pengundian menunjukkan
bahwa terjadi crossover maka akan dibuat bilangan random lainnya untuk
menentukan dimana crossover yang akan terjadi. Posisi crossover dipilih dengan
batasan antara 0 hingga panjang komosom dan pada titik itulah maka crossover akan
dilakukan antara dua kromosom dari kromosom ke-2 sampai pada posisi dimana
crossover akan terjadi. Selanjutnya akan. Proses crossover sendiri dilakukan dengan
menyalin isi kromosom parent 1 ke dalam kromosom offspring 1 dan isi kromosom
parent 2 ke dalam kromosom offspring 2, mulai dilakukan penyalinan isi kromosom
parent 2 ke dalam kromosom offspring 1 dan isi kromosom parent 1 ke dalam
kromosom offspring 2, mulai dari kromosom yang letaknya tepat setelah posisi
crossover sampai dengan panjang kromosom terpendek. Setelah proses crossover
46
http://digilib.mercubuana.ac.id/
dijalankan selalu dilakukan pengecekan apakah kromosom yang terkena crossover
tersebut merupakan kromosom yang valid, dalam arti kromosom hasil crossover
tersebut membentuk suatu rute. Jika terjadi pengulangan individu dalam kromosom,
maka dilakukan proses normalisasi untuk membuat kromosom tersebut menjadi valid.
Proses normalisasi menghapus individu yang berulang dan mengganti dengan
individu yang terhilang dalam kromosom tersebut sehingga terbentuk suatu rute baru
yang valid.
Pada saat penyalinan kromosom dilakukan, kromosom tersebut dapat
mengalami mutasi, yaitu perubahan isi kromosom, dimana isi dari kromosom tersebut
digantikan dengan suatu nilai yang dipilih secara acak dari titik-titik yang ada. Proses
pertama yang dilakukan adalah membangkitkan bilangan acak anatar 0 hingga 1
sejumlah kromosom yang ada. Setelah itu untuk melakukan mutasi dilakukan
penelusuran setiap bilangan random yang telah dibangkitkan tersebut dan
dibandingkan antara nilai random kromosom dengan peluang mutasi yang ditentukan
dari awal dalam inisialisi nilai awal, jika nilai random yang ada lebih kecil atau sama
dengan nilai peluang mutasi, maka kromosom tersebut akan mengalami mutasi.
Setelah proses mutasi maka akan dilakukan lagi proses seleksi dan dilakukan
pengecekan apakah proses keseluruhan telah selesai apa belum. Jika sudah selesai
maka kita bisa menghitung nilai fitness. Jika nilai fitness semakin besar, maka sistem
yang dihasilkan akan semakin baik. Kromosom dengan nilai fitness yang tinggi ini
akan memberikan probabilitas yang tinggi untuk bereproduksi pada generasi
selanjutnya. Sehingga untuk setiap generasi pada proses evolusi, fungsi fitness yang
mensimulsikan seleksi alam, akan menekan populasi kearah fitness yang meningkat.
Setelah diketahui nilai fitness yang teringgi maka akan terdapat rute yang kita pilih.
3.2
Pengkodean Individu
Pengkodean adalah bagaimana mengkodekan gen dari kromosom, dimana gen
merupakan bagian dari kromosom. satu gen biasanya akan mewakili satu variabel.
Agar dapat diproses melalui algoritma genetik, maka alternatif solusi tersebut
harus dikodekan terlebih dahulu kedalam bentuk kromosom. Masing-masing
47
http://digilib.mercubuana.ac.id/
kromosom berisi sejumlah gen yang mengodekan informasi yang disimpan didalam
kromosom. Gen dapat direpresentasikan dalam bentuk bit, bilangan real, daftar
aturan, elemen permutasi, elemen program atau representasi lainnya yang
dapat diimplementasikan untuk operator genetika.
Sedangkan untuk gambaran lebih jelasnya untuk alokasi penempatan eNode B
wilayah DKI Jakarta dengan memberikan label A sampai R pada setiap eNode B.
Dengan demikian maka kita bisa menentukan individu-individu yang menjadi pilihan
rute dari eNode B asal O ke eNode B tujuan R.
Gambar 3.2 pemetaaan penempatan eNode B pada frekuensi 1800MHz dan 2300MHz
Selanjutnya, akan diperoleh tabel dimana didalam table tersebut di ketahui
rute-rute mana saja yang akan dilewati dalam mencapai tujuan yang kita inginkann.
Untuk lebih jelasnya dapat kita lihat pada Tabel 3.1 dibawah ini :
48
http://digilib.mercubuana.ac.id/
Tabel 3.1. Rute yang dilewati individu
Individu
1
2
3
4
5
6
7
8
9
10
dsb
3.3
Rute
O-A-E-G-Q
O-B-C-H-Q
O-B-M-D-Q
O-I-J-M-P-Q
O-K-M-P-Q-P-N-K-O
O-A-E-G-Q-P-M-J-I-O
O-B-C-H-Q-D-M-J-I-O
O-B-M-D-Q-H-C-B-O
O-I-J-M-P-Q-P-M-B-O
O-K-M-P-Q-G-E-A-O
Penentuan Rute Awal ke Tujuan
Sebuah rute, dapat didefinisikan sebagai urutan array dan dalam studi kasus
ini untuk menuju ketujuan yang akan dipilih. Pada algoritma genetika, langkah
pertama yang harus dilakukan adalah melakukan penentuan lokasi mana yang akan
menjadi tujuan. Dimana disini kita sudah menentukan titik asal dan tujuan yang
inginkan.
3.3.1
Frekuensi 1800 MHz
Dengan menggunakan frekuensi 1800 MHz ini adalah rute yang diambil dari
titik A ke Q :
Individu 1 = O-A-E-G-Q
Individu 2 = O-B-C-H-Q
Individu 3 = O-B-M-D-Q
Individu 4 = O-I-J-M-P-Q
Individu 5 = O-K-M-P-Q
Individu 6 = O-A-E-G-Q-P-M-J-I-O
Individu 7 = O-B-C-H-Q-D-M-J-I-O
49
http://digilib.mercubuana.ac.id/
Individu 8 = O-B-M-D-Q-H-C-B-O
Individu 9 = O-I-J-M-P-Q-P-M-B-O
Individu 10 = O-K-M-P-Q-G-E-A-O
3.3.2
Frekuensi 2300MHz
Dengan menggunakan frekuensi 2300 MHz ini adalah rute yang diambil dari
titik A ke Q :
Individu 1 = O-A-E-G-Q
Individu 2 = O-B-C-H-Q
Individu 3 = O-B-M-D-Q
Individu 4 = O-I-J-M-P-Q
Individu 5 = O-K-M-P-Q
Individu 6 = O-A-E-G-Q-P-M-J-I-O
Individu 7 = O-B-C-H-Q-D-M-J-I-O
Individu 8 = O-B-M-D-Q-H-C-B-O
Individu 9 = O-I-J-M-P-Q-P-M-B-O
Individu 10 = O-K-M-P-Q-G-E-A-O
3.4
Fitness
Pada evaluasi individu dilakukan proses seleksi atas hasil nilai fitness dari
setiap kromosom, dari proses inilah dipilih individu terbaik dari sekumpulan populasi
yang ada, yang nantinya individu terbaik dari kromosom terbaiklah yang mampu
bertahan dan akan menjadi solusi atas permasalahan optimasi maupun minimasi dari
suatu fungsi atau permasalahan yang ada. Fungsi ini bertujuan dalam menentukan
kelayakan kromosom untuk dipelihara atau tidak. Nilai fitness yang tinggi sebagai
50
http://digilib.mercubuana.ac.id/
tolak ukir optimalitas solusi terhadap fungsi tujuan yang akan ditemukan. Evaluasi
fitness dirumuskan sebagai berikut :
fungsi_objektif perlu ditambah 1 untuk menghindari kesalahan program yang
diakibatkan pembagian oleh 0.
Rumus untuk mencari probabilitas: P[i] = fitness[i] / total_fitness
yaitu satu dibagi jarak rute yang dikunjungi
Rumus fitness di atas merupakan rumus dalam menentukan rute optimum dari
node asal ke node tujuan. Diharapkan diperolehkan rute yang seminimum mungkin.
Berikut adalah aturan-aturan yang mengidentifikasikan bahwa permasalahan
tersebut rute di asal ke tujuan
1. Dalam berkomunikasi dari titik asal ke titik tujuan tentunya akan kembali ke
eNode B awal.
2. Ada kemungkinan rute ke tujuan setelah kembali belum tentu melewati rute
sebelumnya.
3. Karena ada komponen MME maka, tentu ada individu yang melewati MME
ada juga.
4. Tujuan penyelesaian permasalahan ini adalah mencari nilai optimum dengan
meminimumkan jarak total rute yang dikunjungi dengan mengatur urutan
kota.
Misalnya di dalam individu menyatakan jalur yang ditempuh, dalam
penentuan nilai maksimal dari F (x, y) individu menyatakan nilai (x, y). pada Gambar
3.6 diilustrasikan 2 kemungkinan jalur yang ditempuh dan bagaimana representasinya
dalam individu.
51
http://digilib.mercubuana.ac.id/
Gambar 3.3 Kemungkinan jalur dan Representasikan dalam individu
Dalam menentukan rute optimal harus mengetahui jalur asal yang akan
ditempuh dalam mencapai ke tujuan. Jalur yang dicari adalah jalur yang terpendek
dimana jalur itu yang akan dipilih.
3.5
Seleksi
Proses selanjutnya adalah proses seleksi, dimana setelah terbentuk populasi
awal, maka selanjutnya hasil populasi awal itu akan diseleksi. Proses ini dilakukan
untuk mendapatkan calon induk yang baik. Dalam pengertian induk yang baik akan
menghasilkan keturunan yang baik. Semakin tinggi nilai fitness suatu individu maka
semakin besar kemungkinannya untuk terpilih. Langkah pertama yang dilakukan
dalam seleksi ini adalah pencarian nilai fitness. Nilai fitness ini yang nantinya akan
digunakan pada tahap-tahap seleksi berikutnya. Masing-masing individu dalam
wadah seleksi akan menerima probabilitas reproduksi yang tergantung pada nlai
objektifnya sendiri terhadap nilai objektif dari semua individu dalam wadah seleksi
tersebut. Dalam skripsi ini penulis menggunakan metode seleksi dengan
menggunakan metode Roullete Wheel selection.
Roulete Wheel selection adalah seleksi berdasarkan kualitas individual.
Semakin berkualitas individu semakin besar kemungkinan individu ini terpilih untuk
menjadi anggota pada populasi yang baru. Metode seleksi dengan menggunakan
metode Roullete Wheel ini merupakan metode yang paling sederhana dan sering
52
http://digilib.mercubuana.ac.id/
dikenal dengan menggunakan stochastic with replacement. Cara kerja metode
Roullete Wheel Selection adalah sebagai berikut :
1. Secara acak (random) akan dipilih sebuah nilai diantara 0 sampai 1.
2. Dihitung nilai fitness dari masing-masing individu (fi dimana i adalah individu
ke-1 s/d ke-n).
3. Kemudian nilai tersebut akan dikalikan dengan nilai total fitness semua individu
dalam generasi tersebut.
4. Nilai hasil perkalian antara bilangan random dan total fitness tersebut dianggap
sebagai titik yang ditunjuk oleh jarum pada roulette wheel.
5. Untuk mendapatkan individu yang dipilih, maka fitness dari individu anggotaanggota generasi tersebut dijumlahkan mulai dari pertama sampai jumlah
fitness tersebut melebihi nilai hasil perkalian antara bilangan random dan total
fitness.
Dengan demikian individu yang memiliki fitness yang tinggi akan mempunyai
kesempatan lebih besar untuk terpilih, karena semakin besar nilai fitness suatu
individu, maka semakin besar pula pengaruhnya terhadap penjumlahan fitness
individu- individu dalam populasi tersebut. Proses seleksi ini dilakukan dengan cara
membangkitkan bilangan acak. Angka ini akan menjadi penunjuk individu mana
yang terpilih dalam setiap kali iterasi. Sebagai contoh kita memiliki 5 iterasi dan
masing-masing iterasi menghasilkan bilangan acak sebagai berikut:
53
http://digilib.mercubuana.ac.id/
Gambar 3.4 Ilustrasi Seleksi dengan metode Roullete Wheel [7]
Suatu metode seleksi yang umum digunakan adalah Roullete Wheel (roda
roulette). Sesuai dengan namanya, motode ini menirukan permainan roullete-wheel
dimana masing-masing kromosom menepati potongan lingkaran ada rosa roulette
secara proporsional sesuai dengan nilai fitnessnya. Kromosom yang memiliki nilai
fitness lebih besar akan menempati potongan lingkaran yang lebih besar
dibandingkan dengan kromosom bernilai fitness rendah. Dibawah ini adalah contoh
dari roulette wheel selection :
Tabel 3.2 Contoh kromosm dengan nilai fitnessnya [7]
Kromosom
Fitness
K1
1
K2
2
K3
0,5
K4
0,5
Jumlah
4
54
http://digilib.mercubuana.ac.id/
Gambar 3.5 Contoh penggunaan metode roulette wheel selection [7]
Dilihat dari gambar K2 dengan nilai fitness paling besar, menempati potongan
sebesar setengah lingkaran. Dengan demikian, K2 memiliki peluang sebesar 0,5
(Nilai fitness dibagi jumlah kromosom) untuk terpilih sebagai orang tua. Metode
roulette wheel selection sangat mudah diimplementasikan dalam pemograman.
Pertama, dibuat interval nilai kumulatif (dalam interval) dari nilai fitness masingmasing kromosom dibagi total nilai fitness dari semua kromosom
Nilai fitness =
…………………………………………....…….(3.2)
Sebuah kromosom akan terpilih jika bilangan random yang di bangkitkan
berada dalam interval akumulatifnya. Dapat dilihat pada tabel dibawah ini :
Tabel 3.3 Contoh kromosm dengan nilai Interval
Kromosom
Nilai Interval
K1
[0 ; 0,25]
K2
[0,25 ; 0,75]
K3
[0,75 ; 0,875]
K4
[0,875 ; 1]
Misalkan, jika bilangan random yang dibangkitkan adalah 0,6 maka
kromosom K2 terpilih sebagai orang tua. Tetapi jika bilangan random yang
dibangkitkan adalah 0,99 maka kromosom K4 yang akan terpilih.
55
http://digilib.mercubuana.ac.id/
3.6
Crossover
Setelah melakukan proses seleksi, maka hasil dari proses tersebut akan
digunakan dalam proses crossover. Crossover merupakan salah satu operator dalam
algoritma genetika yang melibatkan dua induk untuk menghasilkan keturunan yang
baru. Pindah silang dilakukan dengan melakukan pertukaran gen dari dua induk
secara acak. Sebelum melakukan proses crossover dilakukan pengundian dengan
bilangan random untuk setiap kromosom, apakah kromosom tersebut mengalami
crossover atau tidak. Jika dari proses pengundian menunjukkan dimana crossover
akan terjadi. Posisi crossover dipilih dengan batasan antara 0 hingga panjang
komosom dan pada titik itulah maka crossover akan dilakukan antara dua kromosom.
Untuk lebih jelas dapat dilihat pada gambar 3.9 dibawah ini :
Gambar 3.6 Ilustrasi proses crossover [4]
Proses crossover sendiri dilakukan dengan menyalin isi kromosom parent 1
ke dalam kromosom offspring 1 dan isi kromosom parent 2 ke dalam kromosom
offspring 2, mulai dari kromosom ke-2 sampai pada posisi dimana crossover akan
terjadi. Selanjutnya akan dilakukan penyalinan isi kromosom parent 2 ke dalam
kromosom offspring 1 dan isi kromosom parent 1 ke dalam kromosom offspring 2,
mulai dari kromosom yang letaknya tepat setelah posisi crossover sampai dengan
panjang kromosom terpendek. Setelah proses crossover dijalankan selalu dilakukan
pengecekan apakah kromosom yang terkena crossover tersebut merupakan
kromosom yang valid, dalam arti kromosom hasil crossover tersebut membentuk
suatu rute. Jika terjadi pengulangan individu dalam kromosom, maka dilakukan
proses normalisasi untuk membuat kromosom tersebut menjadi valid. Proses
56
http://digilib.mercubuana.ac.id/
normalisasi menghapus individu yang berulang dan mengganti dengan individu yang
terhilang dalam kromosom tersebut sehingga terbentuk suatu rute baru yang valid.
3.7
Mutasi
Mutasi adalah proses untuk mengubah nilai dari satu atau beberapa gen dalam
suatu kromosom. Kromosom merupakan nilai suatu gen dari sebuah kromosom
sehingga kromosom yang baru ini berbeda dengan kromosom yang lama.
Sekumpulan kejadian dengan suatu nilai pelanggaran maksimal dapat dengan mudah
dihilangkan selama evaluasi fitness “tujuan dari proses mutasi ini, untuk
mempertahankan kehilangan permanent dari suatu bit atau gen”. Seluruh proses
mutasi ini menjanjikan keuntungan melalui pengarahan mutasi kemana mutasi ini
tersebut sangat dibutuhkan. Oprator mutasi digunakan untuk melakukan modifikasi
satu atau lebih dari nilai gen dalam individu yang sama. Mutasi memastikan bahwa
probabilitas untuk pencarian pada daerah tertentu dalam persoalan tidak akan pernah
nol dan mencegah kehilangan total materi genetika setelah pemilihan dan
penghapusan. Mutasi ini bukanlah operator genetika yang utama, yang dilakukan
secara acak pada gen dengan kemungkinan yang lebih kecil. Metode ini disebut
metasi gen (gene mutation) terdapat metode lain yaitu: “order mutation” dimana
dimungkinkan untuk menghilangkan seluruh gen dari dua gen yang dipilih secara
acak.
3.8
Penentuan Individu
Setelah melakukan semua proses, maka dilakukan penentuan individu dengan
begitu kita bisa mendapathan hasil nilai fitness tertinggi. Setelah mendapatkan nilai
fitness tertinggi berarti kita telah mendapatkan rute yang terpilih.
Perhatikan studi kasus dibawah ini :
Seorang salesman akan mengawali perjalanannya dari titik A untuk mengunjungi
seluruh titik yakni dan kemabli lagi ke titik A. Perhatikan gambar berikut :
57
http://digilib.mercubuana.ac.id/
Gambar 3.7 Contoh rute menggunakan titik
Dari studi kasus tersebut didapatkan salah satu kemungkinan jalur yang paling
optimum dengan urutan rute A-E-F-C-D-B-A. Tentunya hasil tersebut dengan
mempertimbangkan jarak dari masing-masing titik hingga menghasilkan kombinasi
urutan dengan jarak yang optimum. Perhatikan gambar berikut :
Gambar 3.8 Contoh rute menggunakan jalur
Pada dasarnya permasalahan pencarian jalur terpendek antar titik merupakan
pencarian jalur terpendek yang telah diketahui koordinatnya. Dengan mengetahui
konsep pencarian jalur terpendek antar titik, maka selanjutnya dapat diterapkan pada
penacarian jalur terpendek pada berbagai titik yang ingin diketahui.
58
http://digilib.mercubuana.ac.id/
Download