• Tidak ada hasil yang ditemukan

Algoritma Genetika

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "Algoritma Genetika"

Copied!
24
0
0

Teks penuh

(1)

Kecerdasan Buatan

Algoritma Genetika

Oleh Politeknik Elektronika Negeri Surabaya

2017

(2)

Konten

• Algoritma Genetika

• Siklus Algoritma Genetika

• Membangkitkan Populasi Awal

• Fungsi Fitness

• Seleksi

• Crossover

• Mutasi

(3)

Tujuan Instruksi Umum

Mahasiswa memahami filosofi Kecerdasan Buatan dan mampu menerapkan beberapa metode Kecerdasan

Komputasional dalam menyelesaikan sebuah

permasalahan, baik secara individu maupun

berkelompok/kerjasama tim.

(4)

Tujuan Instruksi Khusus

• Mengetahui konsep Algoritma Genetika

• Mengetahui proses dalam Algoritma Genetika

• Mengetahui penerapan Algoritma Genetika

(5)

Algoritma Genetika

Algoritma Genetika adalah algoritma yang memanfaatkan proses seleksi alamiah yang dikenal dengan proses evolusi.

Dalam proses evolusi, individu secara terus-menerus mengalami perubahan gen untuk menyesuaikan dengan lingkungan hidupnya. “Hanya individu-individu yang kuat yang mampu bertahan”.

Proses seleksi alamiah ini melibatkan perubahan gen yang terjadi pada individu

melalui proses perkembang-biakan. Dalam algoritma genetika ini, proses perkembang- biakan ini menjadi proses dasar yang menjadi perhatian utama, dengan dasar berpikir:

“Bagaimana mendapatkan keturunan yang lebih baik”.

Algoritma genetika ini ditemukan oleh John Holland dan dikembangkan oleh muridnya David Goldberg.

(6)

Siklus Algoritma Genetika

Populasi Awal

Seleksi Individu

Reproduksi:

Cross-Over Dan Mutasi

Populasi Baru

Evaluasi Fitness

(7)

Proses Algorima Genetika

Populasi Awal

Populasi Akhir

(8)

Individu Dalam Algoritma Genetika

Gen Kromosom

Individu

Gen Kromosom

Gen Kromosom

Populasi

(9)

Beberapa Definisi Penting Dalam Algoritma Genetika

Genotype (Gen), sebuah nilai yang menyatakan satuan dasar yang membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan kromosom. Dalam algoritma genetika, gen ini bisa berupa nilai biner, float, integer maupun karakter, atau

kombinatorial.

Allele, 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-satuan siklus proses evolusi.

Nilai Fitness, menyatakan seberapa baik nilai dari suatu individu atau solusi yang didapatkan.

(10)

Hal-Hal Yang Harus Dilakukan Dalam Menggunakan Algoritma Genetika

Mendefinisikan individu, dimana individu menyatakan salah satu solusi (penyelesaian) yang mungkin dari permasalahan yang diangkat.

Mendefinisikan nilai fitness, yang merupakan ukuran baik-tidaknya sebuah individu atau baik-tidaknya solusi yang didapatkan.

Menentukan proses pembangkitan populasi awal. Hal ini biasanya dilakukan dengan menggunakan pembangkitan acak seperti random-walk.

Menentukan proses seleksi yang akan digunakan.

Menentukan proses perkawinan silang (cross-over) dan mutasi gen yang akan digunakan.

(11)

Pengertian Individu

• Individu bisa dikatakan sama dengan kromosom, yang merupakan kumpulan gen.

Gen ini bisa biner, float, dan kombinatorial.

• Individu menyatakan salah satu solusi yang mungkin. Misalkan dalam TSP individu menyatakan jalur yang ditempuh, dalam penentuan nilai maksimal dari F(x,y)

individu menyatakan nilai (x,y).

1

2

3

4

5

6

7

Individu : 1 3 5 7 6 4 2

1 1

2

3

4

5

6

7

Individu : 1 2 3 6 7 5 4

1

(12)

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 individu dengan nilai fitness yang paling tinggi.

• Dalam TSP, karena TSP bertujuan meminimalkan jarak, maka nilai

fitnessnya adalah inversi dari jarak.

(13)

Membangkitkan Populasi Awal

• Membangkitkan populasi awal adalah proses membangkitkan sejumlah individu secara acak atau melalui prosedur tertentu. Syarat-syarat yang harus dipenuhi untuk

menunjukkan suatu solusi harus benar-benar diperhatikan dalam pembangkitan setiap individunya.

• Dalam TSP, populasi menyatakan sejumlah solusi (jalur) yang dicari secara acak. Misalkan dalam populasi terdapat 4 individu, maka contoh populasi awal TSP dengan 7 kota adalah sebagai berikut:

1 2 4 3 6 5 7 5 7 4 6 2 3 1 7 2 6 4 5 1 3 4 6 5 7 3 2 1

1

2

3

4

5

6

7

1

2

3

4

5

6

7

(14)

Seleksi

• Seleksi dilakukan untuk mendapatkan calon induk yang baik. “Induk yang baik akan menghasilkan keturunan yang baik”.

• Semakin tinggi nilai fitness suatu individu semakin besar kemungkinannya untuk terpilih.

• Seleksi dapat dilakukan dengan menggunakan dua macam teknik,

yaitu mesin roullete, dan turnamen.

(15)

Seleksi Dengan Mesin Roullete

Individu 1: fitness = 20 = 10 % Individu 2: fitness = 50 = 25 % Individu 3: fitness = 80 = 40 % Individu 4: fitness = 30 = 15%

Individu 5: fitness = 20 = 10%

Individu terpilih

24 : Individu 2 82 : Individu 4 59 : Individu 3 34 : Individu 2 46 : Individu 3

Pr(hi)= Fitness(hi)/j=1p Fitness(hj)

Individu 1: jatah bil 1-10 Individu 2: jatah bil 11-35 Individu 3: jatah bil 36-75 Individu 4: jatah bil 76-90 Individu 5: jatah bil 91-100

Bangkitkan bil random sebanyak #populasi

(16)

Cross Over

• Cross Over (Pindah Silang) merupakan salah satu operator dalam algoritma genetika yang melibatkan dua induk untuk menghasilkan keturunan yang baru.

• Cross over dilakukan dengan melakukan pertukaran gen dari dua induk secara acak.

• Macam-macam Cross-Over yang banyak digunakan antara lain: pertukaran gen secara langsung dan pertukaran gen secara aritmatika.

• Proses cross over dilakukan pada setiap individu dengan probabilitas cross-over yang ditentukan.

Induk 1 Induk 2 p = random[0,1]

p < probCO

Cross Over

ya

tidak

(17)

Cross Over

Pertukaran secara langsung

1 1 0 0 1 1 1

1 1 0 1 0 1 1

1 1 0 1 1 0 0

0 1 1 0 0 0 1

1 1 0 0 0 0 0

1 0 1 0 1 0 1

1 0 1 1 1 1 1

1 1 1 0 0 0 1

Ditentukan probabilitas Cross-Over = 0.9

1 1 0 1 0 1 1

1 1 0 0 1 1 1

1 1 0 1 1 0 0

0 1 1 0 0 0 1

1 0 1 0 1 0 0

1 1 0 0 0 0 1

1 0 1 0 0 1 1

1 1 1 1 1 0 1

P = 0.70

P = 0.95

P = 0.35

P = 0.65

(18)

Cross Over

Pertukaran Secara Aritmatika

1.2 0.2 1.5 1.2 0.2 2.0 1.0 1.0 0.2 2.5

1.2 0.7 1.2 1.2 0.2 2.0 0.5 1.3 0.2 2.5

r = 0.4

(0.4)(0.2)+(0.6)(1.0)=0.68 (0.4)(1.0)+(0.6)(0.2)=0.52

(0.4)(1.5)+(0.6)(1.0)=1.2 (0.4)(1.0)+(0.6)(1.5)=1.3

(19)

Mutasi Gen

• Mutasi Gen merupakan operator yang menukar nilai gen dengan nilai inversinya, mialnya gennya bernilai 0 menjadi 1.

• Setiap individu mengalami mutasi gen dengan probabilitas mutasi yang ditentukan.

• Mutasi dilakukan dengan memberikan nilai inversi atau menggeser nilai gen pada gen yang terpilih untuk dimutasikan.

Individu p = random[0,1]

p<probMut

r=random Gen(r) dimutasi

ya

tidak

(20)

Mutasi Gen

1 0 0 1 1 r = 2 1 1 0 1 1

1.2 0.2 1.5 1.2 0.2

1.2 0.3 1.5 1.2 0.2

R = 2 e = 0.1

(21)

Hal penting yang harus diketahui dalam pemakaian Algoritma Genetika

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.

(22)

22

1. Carilah artikel tentang Algoritma Genetika!

2. Carilah artikel yang membahas permasalahan yang diselesaikan dengan Algoritma Genetika!

Latihan Soal

(23)

Referensi

• Modul Ajar Kecerdasan Buatan, Entin Martiana, Ali Ridho Barakbah, Yuliana Setiowati, Politeknik

Elektronika Negeri Surabaya, 2014.

• Artificial Intelligence (Teori dan Aplikasinya), Sri

Kusumadewi, cetakan pertama, Penerbit Graha Ilmu,

2003.

(24)

Referensi

Dokumen terkait

dalam satu satuan siklus evolusi. d) Fitness menyatakan seberapa baik nilai dari suatu individu yang didapatkan. e) Seleksi merupakan proses untuk mendapatkan calon induk yang

Individu-individu tersebut kemudian dibandingkan satu sama lain sehingga diperoleh satu individu terbaik yang akan digunakan untuk peramalan data jumlah kebutuhan BBM

Dari pengujian yang telah dilakukan diperoleh ukuran populasi optimal yaitu 525 individu dengan rata-rata fitness sebesar 0.392707993, ukuran generasi optimal

Alur pencarian solusi dengan algoritma genetika ini adalah dengan menampung semua solusi pada suatu populasi untuk didapatkan solusi yang terbaik pada generasi

Algoritma genetika yang dibuat Holland merupakan sebuah metode untuk memisahkan satu populasi kromosom (terdiri dari bit-bit 1 dan 0) ke populasi baru dengan menggunakan

Skema algoritma genetika dapat dilihat pada Gambar 4. Secara garis besar proses algoritma genetika dimulai dengan inisialisasi populasi yang merupakan inisialisasi

Kemampuan individu yang tinggi memiliki kesempatan untuk dapat melakukan reproduksi melalui kawin silang (crossover) dengan individu yang lain pada populasi yang sama. Individu

Ketika proses regenerasi terus berjalan, akhirnya individu- individu dalam satu subpopulasi menggerombol dalam daerah optimum lokal dan tidak mampu menghasilkan