ALGORITMA GENETIKA
Oleh :
Kelompok 1
Lilis Muliani (ETE10190097)
Riza Zulfa Mulyawan (ETE10190116)
Wirda Hayati (ETE10190122)
BANJARMASIN
2021
KATA PENGANTAR
Penulis
i
DAFTAR ISI
ii
BAB I
PENDAHULUAN
1
dalam penyelesaian masalah tersebut akan membutuhkan waktu yang sangat
lama. Setiap solusi pada algoritma genetika diwakili oleh suatu individu atau
satu kromosom. Keuntungan dari algoritma genetika ialah sifat metode search-
nya yang lebih optimal, tanpa terlalu memperbesar ruang pencarian dan tanpa
kehilangan completeness. Sudah banyak permasalahan optimasi yang telah
diselesaikan dengan menggunakan algoritma genetika, dan hasil yang
diperoleh biasanya lebih baik dari metode sebelumnya, walaupun tidak
menutup kemungkinan bahwa ada juga hasil akhir yang kurang begitu
memuaskan.
2
1.4 Manfaat Penulisan
Manfaat penulisan makalah ini ialah agar dapat memberikan kontribusi
dalam menambah wawasan, pengetahuan, dan pemahaman mengenai
algoritma genetika. Selain itu, juga dapat memberikan gambaran umum
tentang struktur serta tahapan-tahapan penyelesaian masalah menggunakan
algoritma genetika.
3
BAB II
LANDASAN TEORI
4
algoritma genetika juga memiliki perfomansi yang bagus untuk masalah-
masalah selain optimasi.
Keuntungan penggunaan algoritma genetika sangat jelas terlihat dari
kemudahan implementasi dan kemampuannya untuk menemukan solusi yang
bagus dan bisa diterima secara cepat untuk masalah-masalah berdimensi tinggi.
Algoritma Genetika sangat berguna dan efisien untuk masalah dengan
karakteristik sebagai berikut (Suyanto, 2005) :
a. Ruang masalah sangat besar, kompleks, dan sulit dipahami.
b. Kurang atau bahkan tidak ada pengetahuan yang memadai untuk
merepresentasikan masalah ke dalam ruang pencarian yang lebih sempit.
c. Tidak tersedianya analisis matematika yang memadai.
d. Ketika metode-metode konvensional sudah tidak mampu menyelesaikan
masalah yang dihadapi.
e. Solusi yang diharapkan tidak harus paling optimal, tetapi cukup “bagus” atau
bisa diterima.
f. Terdapat batasan waktu, misalnya dalam real time system atau sistem waktu
nyata.
Algoritma Genetika juga telah banyak diaplikasikan untuk berbagai
macam permasalahan, antara lain (Suyanto, 2005) :
a. Optimasi
Algoritma genetika untuk optimasi antara lain untuk optimasi numerik dan
optimasi kombinatorial seperti Traveling Salesmen Problem (TSP),
Perancangan Integrated Circuit atau IC, Job Scheduling, Optimasi video dan
suara.
b. Pemrograman Otomatis
Algoritma genetika untuk pemrograman otomatis antara lain untuk
melakukan proses evolusi terhadap program komputer dalam merancang
struktur komputasional, seperti cellular automata dan sorting networks.
c. Machine Learning
Algoritma genetika telah berhasil diaplikasikan untuk memprediksi
struktur protein. Algoritma Genetika juga berhasil diaplikasikan dalam
5
perancangan neural networks (jaringan syaraf tiruan) untuk melakukan proses
evolusi terhadap aturan-aturan pada learning classifier system atau symbolic
production system. Algoritma genetika juga dapat digunakan untuk
mengkontrol robot.
d. Model Ekonomi
Dalam bidang ekonomi, algoritma genetika digunakan untuk memodelkan
proses-proses inovasi dan pembangunan bidding strategies.
e. Model Sistem Imunisasi
Contoh penggunaan algoritma genetika dalam bidang ini untuk
memodelkan berbagai aspek pada sistem imunisasi alamiah, termasuk somatic
mutation selama kehidupan individu dan menemukan keluarga dengan gen
ganda (multi gen families) sepanjang waktu evolusi.
f. Model Ekologis
Algoritma genetika juga dapat digunakan untuk memodelkan fenomena
ekologis seperti host-parasite co evolutions, simbiosis dan aliran sumber di
dalam ekologi.
6
BAB III
PEMBAHASAN
7
b. Kromosom, individu yang terdapat dalam satu populasi dan merupakan suatu
solusi yang masih berbentuk simbol.
c. Generasi, populasi awal dibangun secara acak sedangkan populasi selanjutnya
merupakan hasil evolusi kromosom-kromosom melalui iterasi.
d. Fungsi fitness, alat ukur yang digunakan untuk proses evaluasi kromosom.
Nilai fitness dari suatu kromosom akan menunjukkan kualitas kromosom
dalam populasi tersebut.
e. Generasi berikutnya dikenal dengan anak (offspring) yang terbentuk dari
gabungan dua kromosom generasi sekarang yang bertindak sebagai induk
(parent) dengan menggunakan operator penyilang (crossover).
f. Mutasi, operator untuk memodifikasi kromosom.
8
dapat dilakukan secara acak, namun demikian harus tetap memperhatikan
domain solusi dan kendala permasalahan yang ada.
3.3.4 Seleksi
Seleksi yang digunakan dalam algoritma genetika merupakan adopsi
dari seleksi alam yang diteliti oleh Darwin. Seleksi dalam algoritma
genetika bertujuan untuk menentukan individu-individu mana saja yang
akan dipilih untuk dilakukan rekombinasi dan bagaimana keturunan
(offspring) terbentuk dari individu-individu terpilih. (Kusumadewi, 2003:
87)
Proses seleksi dapat dilakukan secara proporsional berdasaran nilai-
nilai fitness yang dihasilkan. Dalam algoritma genetika, seleksi yang
menggunakan prinsip survival of the fittest (bertahan karena merupakan
yang terkuat) paling sering digunakan. Prinsip ini bertujuan supaya kualitas
kebugaran (fitness) individu-individu pada setiap generasi dapat bertambah.
9
Misalnya terdapat individu A yang lebih kuat atau nilai fitnessnya lebih
besar daripada individu B, maka individu A berpeluang lebih besar untuk
terpilih sebagai calon orang tua.
Menurut Kusumadewi (2003: 282), terdapat beberapa metode seleksi
yaitu seleksi rangking (rank-based fitness assignment), seleksi roulette
wheel (roulette wheel selection), stochastic universal sampling, seleksi lokal
(local selection), seleksi dengan pemotongan (truncation selection), dan
seleksi dengan turnamen (tournament selection). Pada penelitian ini, akan
digunakan beberapa variasi seleksi yang sering digunakan untuk
menyelesaikan masalah pendistribusian raskin di Kota Yogyakarta sehingga
dapat diketahui metode seleksi mana yang akan memberikan solusi yang
optimum. Seleksi yang akan digunakan adalah : roulette wheel selection,
dan seleksi turnamen.
a. Roulette Wheel Selection
Pada roulette wheel selection, setiap kromosom dalam suatu populasi
memiliki tempat yang sesuai dengan proporsinya terhadap total nilai fitness.
Kromosom-kromosom dipetakan kedalam suatu segmen secara berurutan,
hingga tiap-tiap segmen kromosom memiliki ukuran yang sesuai dengan
nilai fitness. Langkah pertama dari seleksi ini ialah menghitung nilai fitness
masing-masing kromosom. Setelah itu, dihitung proporsi masing-masing
kromosom berdasarkan perbandingan probabilitas antara nilai fitness setiap
kromosom dengan total nilai fitness. Langkah selanjutnya ialah
membangkitkan bilangan real secara random antara 0 dan 1 untuk
menentukan kromosom yang bertahan hidup dan menjadi induk.
b. Seleksi Turnamen
Seleksi turnamen merupakan salah satu metode seleksi yang paling
popular dalam algoritma genetika karena efisiensi dan implementasi yang
sederhana. Seleksi ini merupakan jenis seleksi yang divariasi berdasarkan
roulette wheel selection dan seleksi rangking. Dalam seleksi turnamen, n
individu dipilih secara acak. Banyaknya perbandingan dalam turnamen
terhadap individu biasanya disebut dengan tournament size. Satu individu
10
akan bersaing dengan individu lain untuk menentukan nilai fitness tertinggi
yang nantinya akan menjadi pemenang dan individu sebagai pemenang akan
terpilih dalam populasi generasi berikutnya. Seleksi turnamen juga
memberikan kesempatan pada semua individu terpilih untuk
mempertahankan keragamannya. Pemilihan turnamen memiliki beberapa
keunggulan yang meliputi efisien kompleksitas waktu, terutama jika
dilaksanakan secara paralel dan tidak ada persyaratan untuk skala nilai
fitness.
11
mutasi dari suatu gen biasanya dipilih sangat kecil, persis seperti kejadian
sebenarnya dalam kehidupan alamiah yang memungkinkan terjadinya
mutasi genetis tetapi dalam persentase yang sangat kecil (Zainudin, 2014:
46).
Operasi mutasi yang dilakukan pada kromosom dengan tujuan untuk
memperoleh kromosom-kromosom baru sebagai kandidat solusi pada
generasi mendatang dengan fitness yang lebih baik, dan lama-kelamaan
menuju solusi optimum yang diinginkan. Penekanan selektif memegang
peranan penting. Jika dalam proses pemilihan kromosom-kromosom
cenderung terus pada kromosom yang memiliki fitness yang tinggi saja,
konvergensi akan sangat mudah terjadi (Murniati, 2009: 24).
3.3.7 Elitism
Elitism adalah proses untuk mempertahankan supaya individu yang
mempunyai nilai fitness terbesar tetap ada selama proses evolusi
(Kusumadewi, 2003: 112). Pemilihan individu yang akan diseleksi akan
dilakukan secara random sehingga individu dengan nilai fitness tertinggi
tidak selalu terpilih. Jika individu bernilai fitness tertinggi terpilih, ada
kemungkinan individu tersebut akan rusak (nilai fitness menurun) karena
proses pindah silang.
Komponen-komponen di atas akan mengevaluasi setiap populasi
dengan menghitung nilai fitness setiap kromosom dan mengevaluasinya
sampai terpenuhi kriteria berhenti. Proses optimasi yang dilakukan dengan
algoritma genetika akan berhenti setelah suatu syarat berhenti terpenuhi.
Beberapa syarat berhenti yang biasa digunakan adalah batas nilai fungsi
fitness, batas nilai fungsi objektif, batas waktu komputasi, banyak generasi
dan terjadinya konvergensi (Zainudin, 2014: 48).
12
dengan individu terbaik setelah dipertahankan dengan proses elitism.
Setelah populasi baru terbentuk, kemudian mengulangi langkah-langkah
evaluasi nilai fitness, proses seleksi, proses pindah silang, proses mutasi
pada populasi baru untuk membentuk populasi baru selanjutnya.
13
c. Menentukan proses pembangkitan populasi awal. Hal ini biasanya dilakukan
dengan menggunakan pembangkitan acak seperti random-walk.
d. Menentukan proses seleksi yang akan digunakan.
e. Menentukan proses perkawinan silang (cross-over) dan mutasi gen yang akan
digunakan.
a + 2b + 3c + 4d = 30
14
f. Mutasi
15
BAB IV
PENUTUP
4.1 Kesimpulan
Algoritma genetika pertama kali ditemukan oleh Jhon Holland dari
Universitas Michigan pada awal 1970-an di New York, Amerika Serikat. Jhon
Holland bersama murid-muridnya serta rekan kerjanya lalu menghasilkan buku
yang berjudul “Adaption in Natural and Artificial Systems” pada tahun 1975,
yang cara kerjanya berdasarkan pada seleksi dan genetika alam. Konsep yang
digunakan dalam algoritma genetika ialah mengikuti apa yang dilakukan oleh
alam.
Algoritma genetika adalah suatu teknik pencarian (searching technique)
dan teknik optimasi yang cara kerjanya meniru proses evolusi dan perubahan
struktur genetik pada makhluk hidup. Prinsip utama dari cara kerja algoritma
genetika ini diilhami oleh proses seleksi alam dan prinsip-prinsip ilmu
genetika. Dalam seleksi alam, individu-individu bersaing untuk
mempertahankan hidup dan melakukan reproduksi. Individu-individu yang
lebih fit akan mempunyai peluang untuk terus bertahan hidup (survive) dan
melakukan reproduksi (menghasilkan keturunan). Sebaliknya, individu-
individu yang kurang fit akan mati dan punah. Prinsip ini sering dinamakan
juga survival of the fittest.
4.2 Saran
Penulis menyarankan untuk pengembangan makalah selanjutnya agar
disertai contoh aplikasi algoritma genetika dalam bahasa pemrograman tertentu
untuk mempermudah simulasi serta juga menganalisis dan membandingkan
semua algoritma optimasi, bukan hanya algoritma genetika.
16
DAFTAR PUSTAKA
17