Anda di halaman 1dari 11

Algoritma Genetika

Disusun Oleh:
1. Resta Herlinda 23010067
2. Meilfiano Alfarizi 23010078
3. M. Al-Faqih 23010136
4. Zipi Putri 23010071
5. Muhamad Aditia. P 23010063
6. Fikky Dwira Adzifta. R 23010072

Dosen Pengampu : Lena Elvianty, S.Kom, M.Kom.

UNIVERSITAS DEHASEN BENGKULU


2023
lOMoARcPSD|33802334

BAB I
PENDAHULUAN
1.1 Latar belakang

Algoritma Genetika adalah salah satu algoritma yang digunakan dalam sistem
cerdas untuk menyelesaikan masalah optimisasi, pencarian, dan pemodelan. Konsep
algoritma ini terinspirasi oleh proses evolusi dalam biologi, di mana individu yang
paling cocok akan bertahan hidup dan berkembang biak.
Dalam konteks sistem cerdas, Algoritma Genetika digunakan untuk mencari
solusi terbaik atau mendekati solusi terbaik untuk masalah yang kompleks dan sulit.
Algoritma ini bekerja dengan menggabungkan konsep genetika, seperti seleksi alami,
reproduksi, dan mutasi, untuk menciptakan populasi solusi yang berkembang dari
generasi ke generasi.
Pertama-tama, algoritma ini memulai dengan menginisialisasi populasi awal,
yang terdiri dari individu-individu atau solusi-solusi yang diwakili oleh kromosom.
Setiap kromosom mewakili satu solusi potensial untuk masalah yang ingin
diselesaikan. Selanjutnya, algoritma ini mengaplikasikan operator seleksi untuk
memilih individu-individu terbaik dari populasi saat ini. Individu-individu terbaik ini
akan dijadikan orangtua untuk menghasilkan generasi baru melalui operasi
reproduksi, seperti crossover dan mutasi.
Setelah itu, generasi baru atau populasi baru akan dihasilkan, dan proses
seleksi, reproduksi, dan mutasi akan terus berlanjut dalam siklus iteratif. Dalam setiap
generasi, individu-individu yang memiliki kualitas solusi yang lebih baik akan
memiliki peluang yang lebih besar untuk menjadi orangtua dan mewariskan
karakteristik solusi mereka ke generasi berikutnya. Proses ini berlanjut hingga kriteria
berhenti tercapai, seperti mencapai solusi yang memuaskan atau mencapai batasan
waktu atau sumber daya yang telah ditentukan sebelumnya. Dalam sistem cerdas,
Algoritma Genetika telah berhasil diterapkan dalam berbagai bidang, seperti
optimisasi parameter, pengenalan pola, pengendalian robot, dan pembelajaran mesin.
Keunggulan algoritma ini terletak pada kemampuannya untuk mengeksplorasi ruang
pencarian secara paralel dan mencapai solusi yang baik dalam waktu yang relatif
singkat.
Dengan demikian, Algoritma Genetika adalah algoritma yang efektif dan kuat
dalam sistem cerdas untuk menyelesaikan masalah optimisasi dan pencarian. Melalui
konsep genetika dan proses evolusi, algoritma ini memberikan cara yang inovatif dan
efisien untuk menghasilkan solusi yang baik dalam berbagai konteks aplikasi..

1.2 Tujuan
1. Memahami definisi penting dalam algoritma Genetika.
2. Memahami hal-hal yang harus dilakukan dalam Algoritma Genetika.
3. Mengetahui siklus Algoritma Genetika.
4. Memahami hal penting yang harus diperhatikan dalam pemakaian Algoritma Genetika.
5. Mengetahui contoh penggunaan Algoritma Genetika
BAB 2 PEMBAHASAN

2.1 Pengertian Algoritma Genetika


Algoritma genetika yang merupakan cabang dari algoritma evolusi adalah
metode yang biasa digunakan untuk memecahkan suatu pencarian nilai dalam sebuah
masalah optimasi. Algoritma ini didasarkan pada proses genetik yang ada dalam
makhluk hidup, yaitu perkembangan generasi dalam sebuah populasi yang alami,
secara lambat laun mengikuti prinsip seleksi alam. Dengan meniru teori evolusi ini,
algoritma genetika dapat digunakan untuk mencari solusi permasalahan-permasalahan
dalam dunia nyata.
Peletak prinsip dasar sekaligus pencipta algoritma genetika adalah John Holland.
Algoritma genetika menggunakan analogi secara langsung dari kebiasaan yang alami
yaitu seleksi alam. Algoritma ini bekerja dengan sebuah populasi yang terdiri dari individu,
yang masing-masing individu mempresentasikan sebuah solusi yang mungkin bagi
persoalan yang ada. Dalam kaitan ini individu dilambangkan dengan sebuah nilai fitness
yang akan digunakan untuk mencari solusi terbaik dari persoalan yang ada.
Pertahanan yang tinggi dari individu memberikan kesempatan untuk melakukan
reproduksi melalui perkawinan silang dengan individu yang lain dalam populasi
tersebut. Individu baru yang dihasilkan dalam hal ini dinamakan keturunan yang
membawa beberapa sifat dari induknya. Sedangkan individu dalam populasi yang
tidak terseleksi dalam reproduksi akan mati dengan sendirinya. Dengan jalan ini,
beberapa generasi dengan karakteristik yang bagus akan bermunculan dalam populasi
tersebut, untuk kemudian dicampur dan ditukar dengan karakter yang lain. Dengan
mengawinkan semakin banyak individu, maka akan semakin banyak kemungkinan
terbaik yang dapat diperoleh.
Sebelum algoritma genetika dapat dijalankan, maka sebuah kode yang sesuai
untuk persoalan harus dirancang. Untuk ini maka titik solusi dalam ruang
permasalahan dikodekan dalam bentuk kromosom/String yang terdiri atas komponen
genetik terkecil yaitu gen. Dengan teori evolusi dari teori genetika, di dalam penerapan
algoritma genetika akan melibatkan beberapa operator, yaitu:
1. Operasi Evolusi yang melibatkan proses seleksi di dalamnya.
2. Operasi Genetika yang melibatkan operator pindah silang (crossover) dan mutasi.
Untuk memeriksa hasil optimasi, kita membutuhkan fungsi fitness, yang
menandakan gambaran hasil (solusi) yang sudah dikodekan Selama berjalan, induk
harus digunakan untuk reproduksi, pindah silang dan mata untuk menciptakan
keturunan. Jika algoritma genetika didesain secara baik, populasi akan mengalami
konvergensi dan akan didapatkan sebuah solusi yang optimum.
2.2 Hal-hal yang harus dilakukan dalam Algoritma Genetika
Beberapa hal yang harus dilakukan dalam Algoritma Genetika adalah:
 Mendefinisikan individu, dimana individu adalah salah satu solusi yang ada dari
permasalahan.
 Mendefinisikan nilai fitness, yang merupakan ukuran baik tidaknya sebuah
individu atau baik dan tidaknya solusi yang didapatkan.
 Menentukan proses pembangkitan populasi awal. Hal ini biasanya dilakukan
dengan menggunakan pembangkitkan acak seperti random-walk.
 Menentukan proses seleksi yang akan digunakan.
 Menentukan proses perkawaninan silang dan mutasi gen yang akan digunakan.
2.3 Pengertian Individu
Individu menyatakan salah satu solusi yang mungkin. Individu bisa
dikatakan sama dengan kromosom, yang merupakan kumpulan gen. Gen ini bisa
berupa biner, float dan kombinatorial. Beberapa definisi penting yang perlu
diperhatikan di mendefinisikan individu untuk membangun penyelesaian
permasalahan dengan algoritma genetika adalah sebagai berikut:
 Genotype (Gen), sebuah nilai yang menyatakan satuan dasar yang membentuk
suatu arti tertentu dalam satu kesatuan gen yang dinamakan kromosom.
 Allel, nilai dari gen.
 Kromosom, gabungan gen-gen yang membentuk nilai tertentu.
 Individu, menyatakan satu nilai atau keadaan yang menyatakan salah satu solusi
yang mungkin dari permasalahan yang diangkat.
 Populasi, merupakan sekumpulan individu yang akan diproses bersama dalam satu siklus
proses evolusi.
 Generasi, menyatakan satu siklus proses evolusi atau satu iterasi di dalam algoritma
genetika.

Gambar 2.1 Ilustrasi perbedaan istilah diatas.

2.4 Nilai Fitness


Nilai Fitness adalah nilai yang menyatakan baik tidaknya suatu solusi (individu).
Nilai fitness ini yang dijadikan acuan dalam mencapai nilai optimal dalam algoritma
genetika. Algoritma genetika bertujuan mencari dengan nilai fitness yang paling tinggi.
Dalam TSP, karena TSP bertujuan meminimalkan jarak, maka nilai fitness nya adalah
inversi dari total jarak dari jalur yang didapatkan. Cara melakukan inversi bisa menggunakan
rumus 1/x atau 100000- x, dimana x adalah total jarak dari jalur yang didapatkan.
2.5 Siklus Algoritma Genetika
Siklus Algoritma Genetika pertama kali diperkenalkan oleh David Goldberg
yang digambarkan oleh siklus berikut.

Gambar 2.2 Siklus Algoritma Genetika oleh David Goldberg.

Siklus tersebut diperbaiki oleh Zbigniew Michalewicz dengan menambahkan


sebuah operator yang disebut elitism dan menukar proses reproduksi sebelum seleksi
individu.

Gambar 2.3 Siklus Algoritma Genetika yang diperbaiki Zbigniew Michalewicz.

2.6 Hal Penting yang Harus Diperhatikan Dalam Pemakaian Algoritma Genetika
Beberapa hal yang perlu diperhatikan dalam pemakaian Algoritma Genetika
adalah :
● Algoritma Genetika adalah algoritma yang dikembangkan dari proses pencarian
solusi menggunakan pencarian acak, ini terlihat pada proses pembangkitan
populasi awal yang menyatakan sekumpulan solusi yang dipilih secara acak.
● Berikutnya pencarian dilakukan berdasarkan proses-proses teori genetika yang
memperhatikan pemikiran bagaimana memperoleh individu yang lebih baik,
sehingga dalam proses evolusi dapat diharapkan diperoleh individu yang terbaik.

2.7 Contoh Penggunaan Algoritma Genetika


Algoritma Genetika Untuk Mencari Nilai Maksimal Fungsi F(x)=e-2x.sin(3x)
Individu menyatakan nilai x, dalam mendefinisikan nilai x sebagai individu,
dapat digunakan nilai biner atau nilai float. Pada algoritma genetika dasar digunakan
nilai biner. Fungsi diatas bila digambarkan akan menjadi :
Dari gambar diatas terlihat bahwa penyelesaian berada pada nilai 0<x<1. jadi dengan
menggunakan 8 bit biner didefinisikan :

00000000 berarti 0
11111111 berarti 1
A. Definisi Individu
Individu dinyatakan dalam 8 gen biner, dengan batas 0 sampai dengan 1,
berarti 1 bit setara dengan 2-8.
Contoh :
10001001 = (128+8+1)/256 = 0.5352
00110100 = (4+16+32)/256 = 0.2031
01010010 = (2+16+64)/256 = 0.3203

B. Fungsi Fitness
Fungsi Fitness adalah fungsi f(x), karena yang dicari adalah nilai maksimum.

C. Membangkitkan Populasi Awal


Membangkitkan sejumlah individu, misalkan satu populasi terdiri dari 10
individu, maka dibangkitkan 10 individu dengan 8 gen biner yang dibangkitkan
secara acak.
D. Seleksi
Seleksi adalah proses pemilihan calon induk, dalam proses seleksi ini terdapat
beberapa metode yang bisa digunakan antara lain :Mesin Roulette (Roulette
Wheel), Competition dan Tournament. Dalam contoh ini digunakan Mesin
Roullete yang memang metode paling dasar dan model acaknya uniform.
Seleksi dilakukan dengan menggunakan persentase fitness setiap individu, dimana
setiap individu mendapatkan luas bagian sesuai dengan prosentase nilai fitnessnya.

E. Cross-Over

Cross-Over (perkawinan silang) merupakan proses mengkombinasikan


dua individu untuk memperoleh individu-individu baru yang diharapkan
mempunyai fitness lebih baik. Tidak semua pasangan induk mengalami
proses cross-over, banyaknya pasangan induk yang mengalami cross-over
ditentukan dengan nilai probabilitas cross-over.

F. Mutasi Gen

Mutasi gen adalah proses penggantian gen dengan nilai inversinya, gen 0
menjadi 1 dan gen 1 menjadi 0. proses ini dilakukan secara acak pada
posisi gen tertentu pada individu-individu yang terpilih untuk
dimutasikan. Banyaknya individu yang mengalami mutasi ditentukan oleh
besarnya probabilitas mutasi.
G. Contoh Hasil Algoritma Genetika
Contoh hasil Algoritma Genetika untuk permasalahan ini adalah :
BAB III
PENUTUP

3.1 Kesimpulan
Algoritma genetika yang merupakan cabang dari algoritma evolusi adalah
metode yang biasa digunakan untuk memecahkan suatu pencarian nilai dalam sebuah
masalah optimasi. Algoritma ini didasarkan pada proses genetik yang ada dalam
makhluk hidup. Beberapa hal penting yang dilakukan dalam penggunaan algoritma
genetika yaitu diantaranya karakteristik individu dan nilai fitness dari individu
tersebut. Contoh dari penggunaan algoritma genetika yaitu Mencari Nilai Maksimal
Fungsi F(x)=e-2x.sin(3x). Dimana ada beberapa langkah dalam proses perhitungannya
yaitu :
a) Definisi individu,
b) Fungsi Fitness,
c) Membangkitkan populasi awal,
d) Seleksi,
e) Cross-Over,
f) Mutasi Gen,
g) Hasil yang merupakan hasil akhir perhitungan menggunakan algoritma genetika.

3.2 Saran
Penulis menyadari jika dalam penyusunan makalah di atas masih banyak ada
kesalahan serta jauh dari kata sempurna. Oleh karena itu, penulis mengharapkan kritik
serta masukan dari para pembaca yang diharapkan dapat menjadi motivasi untuk
penulis dalam penulisan makalah kedepannya.
DAFTAR PUSTAKA

Zukhri, Zainudin. (2014). Algoritma Genetika: Metode Komputasi


Evolusioner Untuk Menyelesaikan Masalah Optimasi. Yogyakarta: Penerbit
Andi.

Basuki, A. (2003). Strategi Menggunakan Algoritma Genetika. Diakses


pada 29 Mei 2022, dari
http://lecturer.eepis-its.edu/~basuki/lecture/StrategiAlgoritmaGenetika.pdf

Yuliana. (2014). Algoritma Genetika. Diakses pada 29 Mei 2022. dari


http://yuliana.lecturer.pens.ac.id/Kecerdasan%20Buatan/Buku/Bab%207%20Algoritma
%20Genetika.pdf

Negnevitsky, Michael. (2001). Artificial Intelligence: A Guide to


Intelligent Systems. Diakses pada 29 Mei 2022, dari
http://yuliana.lecturer.pens.ac.id/Kecerdasan%20Buatan/ebook/AI%20-%20a
%20Guide
%20to%20Intelligent%20Systems.pdf

Gen, M., and Cheng, R. (1997). Genetic Algorithm and Engineering


Design. Canada: John Wiley & Sons, Inc.

Rosyid (2006). Algoritma Genetika. Diakses pada 29 Mei


2022. dari
http://rosyid.lecturer.pens.ac.id/materi%20AI/Minggu10%20-
%20Algoritma%20Genetika.pdf

Sarwadi, dan Anjar KSW. (2004), ALGORITMA GENETIKA UNTUK


PENYELESAIAN MASALAH VEHICLE ROUTING. 7(2), 1

Michalewicz, Zbigniew. (1992). Genetic Algorithms + Data Structures =


Evolution Programs. New York: Springer-Verlag.
Hermawanto, D. (2003). Algoritma Genetika dan contoh aplikasinya. Retrieved,
10(25), 2013.

Machineleaerning.mipa.ug.ac.id (2022). Algoritma-genetika. Diakses pada 29 Mei


2022, dari https://machinelearning.mipa.ugm.ac.id

Kumar, M., Husain, M., Upreti, N., & Gupta, D. (2010). Genetic algorithm:
Review and application.

Anda mungkin juga menyukai