Professional Documents
Culture Documents
LANDASAN TEORI
2.1 Penjadwalan Kampanye
Penjadwalan memiliki pengertian durasi dari waktu kerja yang dibutuhkan untuk
melakukan serangkaian aktivitas kerja (Jiupe, 2008). Penjadwalan juga merupakan proses
penyusunan daftar pekerjaan yang akan dilakukan untuk mencapai atau mewujudkan suatu
tujuan tertentu yang juga memuat tabel waktu pelaksanaan.
Penjadwalan kampanye adalah kegiatan yang dilaksanakan oleh organisasi politik
atau Kandidat yang bersaing memperebutkan kedudukan di kantor bupati/walikota untuk
mendapat dukungan massa pemilih di suatu pemungutan suara. Penjadwalan yang
digunakan pada penelitian ini merupakan jadwal kampanye pilkada. Tujuan penjadwalan
kampanye pilkada agar tidak terjadi bentrokan antara jadwal yang satu dengan yang lain.
Permasalahan yang dihadapi penjadwalan terletak pada lebih banyak kandidat yang harus
dijadwalkan daripada lokasi yang tersedia. kapasitas lokasi kampanye yang harus sesuai
dengan masa kampanye dan kesediaan juru kampanye dan kandidat. Permasalahan
penjadwalan kampanye dapat diselesaikan dengan berbagai metode pencarian, salah satu
metode pencarian dengan menggunakan algoritma genetika. Dalam proses penyelesaian
masalah penjadwalan kampanye terdapat kendala-kendala yang harus dipenuhi atau tidak
boleh dilanggar.
Ide awal algoritma genetika berasal dari teori Charles Darwin tentang evolusi yang
berbasis pada konsep survival of the fittest yang menyatakan bahwa evolusi jenis-jenis
spesies makhluk hidup dan ekosistemnya terjadi karena seleksi alam. Semakin tinggi
kemampuan individu untuk beradaptasi, maka semakin tinggi kemungkinan individu
tersebut dapat bertahan dan memiliki keturunan. Keturunan dari individu-individu tersebut
akan mewarisi sifat-sifat induknya, dimana sifat-sifat tersebut dapat mengalami perubahan
yang disebabkan oleh pencampuran sifat kedua induk maupun proses mutasi.
Algoritma Genetika ditemukan pertama kali pada tahun 1960. Algoritma Genetika
merupakan salah satu algoritma pemodelan evolusi (evolutionary modelling) yang
dikembangkan oleh John Holland pada dekade 1960 dan 1970-an dengan tujuan
memodelkan perkembangan kemampuan adaptasi sebuah sistem. Algoritma genetika
diimplementasikan sebagai simulasi yang berawal dari sebuah populasi yang dihasilkan
secara random dan terdiri dari kromosom-kromosom, seperti halnya anggota tubuh
makhluk hidup dan merepresentasikan solusi dari masalah. Populasi tersebut akan
menghasilkan keturunan populasi yang baru dan diharapkan lebih baik dari populasi
sebelumnya. Semakin baik kondisi suatu populasi, semakin besar kemungkinan populasi
itu untuk dikembangkan menjadi populasi selanjutnya.
Kondisi ini diulangi sampai mendapatkan kondisi yang diharapkan, dengan kata
lain solusi terbaik sudah diperoleh.
Untaian solusi merupakan analogi sebuah kromosom, dimana setiap kromosom
memiliki sebuah nilai fungsi obyektif yang bersesuaian dengan parameter masalah yang
disebut nilai fitnes (fitness value).Apabila sebuah kromosom dikatakan unggul berarti
memiliki nilai fitness yang tinggi (untuk masalah maksimasi) atau nilai fitnessyang rendah
(untuk masalah minimasi). Nilai fitness menunjukkan kromosom mana yang memiliki
potensi terbaik untuk diturunkan pada generasi berikutnya. Satu tahapan iterasi pada
algoritma genetika disebut generasi, dan selama langkah inistruktur dalam populasi saat
itu akan dievaluasi untuk menentukan populasi pada generasi berikutnya.
Algoritma genetika merupakan metode heuristik adaptif yang memiliki dasar
pemikiran atau gagasan untuk proses seleksi alam dan genetika berdasarkan penelitian
Charles Darwin. Dengan kata lain pencarian solusi suatu masalah dengan algoritma
genetika akan terus berevolusi (S. Kusumadewi dan Hari Purnoma, 2005). Algoritma
genetika memberikan solusi dari masalah yang tidak memiliki suatu metode pencarian
solusi yang tepat, ataupun bila ada, mungkin membutuhkan waktu yang lama dalam
mencari solusinya. Pencarian solusi dengan algoritma genetika ini diminati oleh karena
tidak membutuhkan waktu yang lama. Selain itu hasil dari algoritma genetika ini cukup
memuaskan dan dapat diaplikasikan pada semua bidang. Algoritma genetika pertama kali
ditemukan pada awal tahun 1960 oleh John Hollands dari University of Michigan.
Karya Hollands bersama salah satu murid yang bernama David Golberg
melakukan penelitian dan merupakan sebuah prestasi pertama adalah penerbitan sebuah
buku dengan judul Adaptasi di Alam dan Buatan Sistem pada tahun 1975. Motivasi
Hollands, mendefinisikan Algoritma Genetik adalah model dan menerapkan sistem yang
kuat dan adaptif menyimulasikan evolusi struktur genetik yang ditemukan dalam
organisme. Ide dasarnya adalah bagaimana suatu populasi berpotensi berisi solusi, atau
solusi yang lebih baik, untuk masalah adaptif diberikan. Mengingat masalah tertentu untuk
memecahkan, penggunakan algoritma genetika merupakan seperangkat solusi potensial
untuk masalah tersebut, dikodekan dengan cara tertentu, dan terdapat tujuan yang
dihasilkan disebut fungsi fitness yang memungkinkan setiap calon harus dievaluasi secara
kuantitatif. Calon ini mungkin solusi sudah dikenal untuk melakukan proses genetik,
dengan tujuan algoritma genetika yang untuk meningkatkan individu, tetapi lebih sering
individu dihasilkan secara acak
Secara alami semua organisme terdiri dari sel, di mana setiap sel terdiri dari
sekumpulan kromosom membentuk sekumpulan gen, membuat satu kesatuan yang
tersusun dalam rangkaian linear. Setiap gen mempunyai letak tersendiri di dalam
kromosom yang disebut dengan lokus. Gen tersusun dari (DNA), yang membawa sifatsifat keturunan. Setiap gen menyandi protein tertentu suatu sifat. Bagian tertentu dari gen
di dalam genom disebut genotip. Beberapa sifat individu yang menunjukkan perbedaan
gen dan berada pada bagian disebut alel (Fitri, 2002). Perbandingan istilah alam dengan
Algoritma Genetika dapat ditunjukan pada Tabel 2.1
Tabel 2.1 Perbandingan Istilah Alam Dengan Algoritma Genetika
Alam
Algoritma Genetika
Chromosome
String
Locus
Posisi String
Gene
Karakter
Allele
Nilai Karakter
Genotype
Struktur
Phemotype
Kode Struktur
Dalam algoritma genetika solusi yang diterapkan pada sebuah populasi individuindividu yang masing-masing mewakili solusi yang mungkin disebut dengan kromosom,
yang ditunjukkan dengan sekumpulan simbol dalam bentuk string dengan panjang tertentu
dan biasanya dari bilangan biner (0,1). Dalam algoritma genetika ada istilah populasi,
individu, kromosom, gen, allela, locus, fitness, perkawinan silang (crosseover), mutasi
(mutation), seleksi, anak (offspring). Pengertian populasi adalah sekumpulan kromosom
dalam satu generasi. Populasi awal dibangun secara acak, sedangkan populasi berikutnya
merupakan hasil evolusi kromosom-kromosom melalui iterasi yang disebut dengan
generasi (Joneo Hendarto, 2002). Individu adalah sekumpulan gen dalam sistem algoritma
genetika bisa dikatakan sama dengan kromosom. Generasi adalah individu yang dilakukan
untuk menentukan populasi berikutnya. Kromosom adalah individu yang terdapat dalam
satu populasi. Kromosom merupakan solusi yang masih berbentuk simbol. Allela
merupakan nilai yang berada dalam gen, sedangkan locus adalah letak suatu gen berada
dalam suatu kromosom. Anak (Offspring) adalah generasi berikutnya yang terbentuk dari
gabungan 2 kromosom. Generasi sekarang yang bertindak sebagai induk (parent) dengan
menggunakan operator penyilangan (crossover) maupun operator mutasi.
Selama proses genetika, kromosom yang terbaik kecenderungan mempunyai
keturunan yang baik pula. Dalam prakteknya penerapan algoritma genetika, kromosom
adalah populasi yang tersedia secara acak. Siklus operasional genetik akan berhasil apabila
kromosom yang disebut induk digabungkan untuk menghasilkan anak yang merupakan
generasi baru dari proses evaluasi ini (manipulasi terhadap gen) diharapkan kromosom
yang lebih baik akan menghasilkan jumlah offspring yang lebih banyak dan mungkin
berhasil bertahap pada generasi berikutnya.
Algoritma genetika mempunyai karakteristik yang perlu diketahui sehingga dapat
dibedakan proses pencarian atau optimasi yang lainnya. Karakteristik-karakteristik yang
perlu diketahui sehingga dapat dibedakan dari prosedur pencarian atau optimasi yang lain,
yaitu:
1. Algoritma genetika dengan pengkodean dari himpunan solusi permasalahan
berdasarkan parameter yang telah diterapkan dengan bukan parameter itu sendiri.
2. Algoritma genetika pencarian pada sebuah solusi dari sejumlah individu-individu
yang merupakan solusi permasalahan bukan hanya dari sebuah individu.
3. Algoritma genetika informasi fungsi objektif (fitness), sebagai cara untuk
mengevaluasi individu yang mempunyai solusi terbaik, bukan turunan dari suatu
fungsi.
atau
Fitness =
( ) +
Keterangan:
A = Konstanta yang telah ditentukan
X = Individu (kromosom)
E = Bilangan kecil yang dibentuk untuk menghindari nilai nol
Suatu kromosom yang memiliki nilai fitness yang tinggi akan banyak
memproduksi banyak anak, tetapi pada generasi tertentu kromosom anak-anaknya akan
mengalami dominasi populasi. Karena proses seleksi tergantung pada fitness value, maka
penting dalam algoritma genetika untuk membuat fungsi evaluasi dengan teliti, sehingga
untuk setiap generasi pada proses evoluasi fungsi fitness yang menyimulasikan seleksi
alam, akan menekan populasi terarah fitness yang meningkat.
Popula
si
awal
Evaluasi
Fitnes
Seleksi
Individu
Reproduksi
Populasi
Cross-Over
Baru
Gambar 2.1 Sirklus Algoritma Genetika oleh David
DanGoldberg
Mutasi
Sirklis ini kemudian diperbaiki oleh beberaoa ilmuwan yang mengembangkan
algoritma genetika, yaitu Zbignew Michalewicz dengan menambahkan operator elitism
dan membalik proses seleksisetelah proses reproduksi
Populasi
awal
Evaluasi
Fitnes
Seleksi
Individu
Reproduks
i
CrossGambar 2.2 Sirklus Algoritma
Genetika
yang
diperbarui
oleh
Michalewicz
Populasi
elitis
Over
Baru
m
Dan
Mutasi
2.7 Metode Seleksi
Ada berbagai teknik yang suatu algoritma genetika dapat digunakan untuk memilih
individu-individu yang akan disalin ke generasi berikutnya:
1. Seleksi elitis
Populasi sebagian besar anggota setiap generasi dijamin akan dipilih. Pembentukan
populasi baru yang paling baik hilang. Oleh karena itu metode ini sebagai tahap awal
memasukkan kromosom dengan nilai fitness yang paling baik atau beberapa kromosom
dengan nilai fitness yang tinggi atau cukup baik dari generasi lama kedalam generasi baru.
2. Seleksi Roulette-wheel
Suatu bentuk-proporsional seleksi fitness di mana kemungkinan individu sedang dipilih
adalah sebanding dengan jumlah yang fitness yang lebih besar atau lebih kecil dari nilai
fitness. Konseptual, hal ini dapat direpresentasikan sebagai permainan rolet. Masingmasing individu mendapat sepotong roda, tetapi yanglebih mendapatkan potongan lebih
besar atau yang kurang dari roda kemudian berputar, dan individu mana yang "memiliki"
bagian yang terbesar maka menjadi solusi.
a. Scaling seleksi
Sebagai fitness rata-rata populasi meningkat, kekuatan tekanan selektif juga meningkat
dan fungsi fitness menjadi lebih diskriminatif. Metode ini dapat membantu dalam
membuat pilihan terbaik nanti pada saat populasi memiliki fitness relatif tinggi dan
perbedaan kecil hanya dalam fitness membedakan satu dari yang lain.
b. Turnamen pilihan
Sub kelompok individu dipilih dari populasi yang lebih besar, dan anggota dari setiap subkelompok bersaing satu sama lain. Hanya individu dari setiap subkelompok dipilih untuk
mereproduksi.
c. Seleksi rank
Setiap individu dalam populasi diberi peringkat numerik berdasarkan fitness, dan
pemilihan didasarkan pada peringkat ini bukan perbedaan absolut dalam fitness.
Keuntungan dari metode ini adalah bahwa hal itu dapat mencegah individu yang sangat
baik dari mendapatkan dominasi awal pada individu yang kurang baik, yang akan
mengurangi keragaman genetika populasi dan mungkin menghambat upaya untuk
menemukan solusi yang dapat diterima.
d. Steady-state selection
Pemikiran utama dari metode seleksi ini adalah sebagian kromosom dari generasi lama
tetap bertahan atau berada di generasi selanjutnya. Algoritmagenetika menerapakan
pemikiran tersebut dengan cara, didalam setiap generasi sejumlah kromosom yang
mempunyai nilai fitness tinggi untuk diprosses untuk menghasilkan keturunan yang baru
sedangkan kromosom dengan nilai fitness rendah dibuang
2.8. Crossover (Perkawinan Silang)
pindah silang bisa dilakukan hanya jika suatu bilangan random yang dibangkitkan kurang
dari probabilitas yang ditentukan tersebut dan nilai probabilitas diset mendekati 1.
Probabilitas crossover (c) merupakan nilai perbandingan jumlah kromosom yang
diharapkan akan mengalami perkawinan silang terhadap jumlah kromosom dalamsuatu
populasi. Probabilitas crossover yang tinggi akan memungkinkan pencapaian alternative
solusi yang bervariasi dan mengurangi kemungkinan menghasilkan solusi yang terbaik.
Crossover bertujuan menambah keanakeragaman string dalam populasi dengan
penyilangan antar string yang diperoleh sebelumnya. beberapa jenis crossover tersebut
adalah:
1. Penyilangan Satu Titik
Penyilangan satu titik dilakukan dengan memisahkan suatu string menjadi dua bagian dan
selanjutnya salah satu sabagian dipertukarakan dengan salah satu bagian dari string yang
lain yang telah dipisahkan dengan cara sama untuk menghasilkan anak. Proses
penyilangan satu titik dapat dilihat seperti tabel 2.1
001100101001
Kromosom induk 2
101011110110
Anak (offspring)
Tabel 2.2
Kromosom induk 1 19
001100101001
Kromosom Induk 2
101011110110
Anak (offspring)
001011110001dan
100101101110
3. Penyilangan Seragam
Penyilangan seragam menghasilkan kromosom keturunan dengan menyalin bit-secara
acak dari kedua induknya. Proses penyilangan seragam dapat dilihat seperti tabel 2.3
Kromosom induk 1
001100101001
Kromosom Induk 2
101011110110
Anak (offspring)
001000111010 dan
1011111001
2.9 Mutasi
Mutasi dilakukan setelah perkawinan silang dengan memilih kromosom yang akan
dimutasi secara acak kemudian menetukkan titik mutasi pada kromosom tersebut secara
acak. Melalui mutasi kromosom baru dapat diciptakan dengan melakukan modifikasi
terhadap satu atau lebih karakter pada kromosom sama. Mutasi gen adalah proses
penggantian gen dengan nilai invers, gen 1 menjadi 0 dan 0 menjadi 1. Kromosom yang
akan mengalami mutasi dihitung berdasarkan probabilitas mutasi yang ditentukan terlebih
dahulu. probabilitas mutasi adalah 100% maka semua kromosom yang ada pada populasi
tersebut akan mengalami mutasi, sebaliknya jika probabilitas mutasi digunakan adalah 0%
maka tidak kromosom yang mengalami mutasi pada populasi tersebut.
Mutasi berfungsi untuk menggantikan gen yang hilang dari populasi selama proses seleksi
serta menyediakan gen yang tidak ada dalam populasi awal, sehingga mutasi akan
meningkatkkan variasi populasi. Penukaran pasangan ini dilakukan pada dua gen dalam
satu kromosom. Beberapa cara operasi mutasi diterapkan dalam algoritma genetika
sebagai berikut:
101011101
101001101
123456789
127456389
Jumlah populasi atau banyaknya generasi yang dihasilkan, digunakan sebagai batas akhir
proses seleksi, persilangan dan mutasi.
Adapun penelitian terdahulu yang telah dilakukan untuk penjadwalan, dapat dilihat
pada tabel 2.6
Tabel 2.6 Penelitinan Terdahulu
No
Pengarang
Judul
Afandi
Penerapan
Tahun
AlgoritmaGenetikan
2009
Lismanto
Penjadwalan
Kuliah
dengan
2008
Imamah
2011