Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Al gor i t ma Genet i ka Pendahuluan Struktur Umum Komponen Utama Seleksi Rekombinasi Mutasi Algoritma Genetika Sederhana Referensi Sri Kusumadewi – bab 9 Luger & Subblefield – bab 12.8 Algoritma Genetika
1/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Pendahuluan • Algoritma Genetika adalah algoritma pencarian heuristik yang didasarkan atas mekanisme evolusi biologis. • Keberagaman pada evolusi biologis adalah variasi dari kromosom antar individu organisme. Variasi kromsom akan mempengaruhi laju reproduksi dan tingkat kemampuan oraginisme untuk tetap hidup. Algoritma Genetika
2/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
•
Ada Ada 4 kond kondiisi yang yang sang sanga at mempengaruhi proses evolusi, yaitu :
1. Kema Kemamp mpua uan n orga organi nism sme e untuk melakukan reproduksi 2. Kebe Kebera rada daan an popu popula lasi si organisme yang bisa melakukan reproduksi 3. Kebera Keberagam gaman an organi organisme sme dalam suatu populasi 4. Perb Perbed edaa aan n kema kemamp mpua uan n untuk survive
Algoritma Genetika
3/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Algoritma genetika pertama kali diperkenalkan oleh John Holland dari Universitas Michigan (1975), Setiap masalah yang berbentuk adaptasi dapat diformulasikan dalam terminologi genetika
Algoritma Genetika
4/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Struktur Umum • Popula Populasi, si, istilah istilah pada pada teknik teknik pencarian yang dilakukan sekaligus atas sejumlah solusi yang mungkin • Kromosom, Kromosom, individu individu yang terdapat terdapat dalam satu populasi dan merupakan suatu solusi yang masih berbentuk simbol. • Generasi, Generasi, populasi populasi awal dibangun dibangun secara acak sedangkan populasi selanjutnya merupakan hasil evolusi kromosom-kromosom melalui iterasi
Algoritma Genetika
5/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Fungsi Fungsi Fitnes Fitness, s, alat alat ukur ukur yang yang digunakan untuk proses evaluasi kromosom. Nilai fitness dari suatu kromosom akan menunjukkan kualitas kromosom dalam populasi tersebut. • Genera Generasi si beriku berikutnya tnya dikenal dikenal dengan anak (offspring ) terbentuk dari gabungan 2 kromosom generasi sekarang yang bertindak sebagai induk (parent ) dengan menggunakan operator penyilang (crossover ). ). • Mutasi, Mutasi, operator operator untuk memodimemodifikasi kromosom. Algoritma Genetika
6/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Komponen Utama •
Ada 6 kom kompone ponen n utam utama a algo algori ritm tma a genetika :
1. Tekn Teknik ik Peny Penyan andi dian an -
Tekni eknik k peny penyan andi dian an melip eliput utii penyandian gen dari kromo-som
-
Gen Gen merup erupak akan an bagi bagian an dari dari kromosom, satu gen biasanya akan mewakili satu variabel
-
Gen Gen dapa dapatt dire direpr pres esen enta tasi sika kan n dala dalam m bentuk : string bit, pohon, array bilangan real, daftar aturan, elemen permutasi, elemen program dan lainlain.
Algoritma Genetika
7/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
−
• • • • • •
Kromosom dapat direpresentasikan dengan menggunakan : String bit : 10011, 11101 Bilangan Real : 65.65, 562.88 Elem Elemen en Perm Permut utas asii : E2, E2, E10 E10 Daftar Aturan : R1, R2, R3 Elemen Program : pemrograman genetika Struktur lai lainnya
2. Prosed Prosedur ur Inisia Inisialis lisasi asi - Ukura kuran n popu popula lasi si terg tergan anttung ung pada masalah yang akan dipecahkan dan jenis operator genetika yang akan diimplementasikan. Algoritma Genetika
8/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Setelah ukuran populasi ditentukan, kemudian harus dilakukan inisialisasi terhadap kromosom yang terdapat pada populasi tersebut Inisialisasi kromosom dilaku-kan − secara acak, namun demikian harus tetap memper-hatikan domain solusi dan kendala permasalahan yang ada 3. Fungs ungsii Eva Evaluas luasii Ada 2 hal yang harus di-lakukan dalam melakukan evaluasi kromosom yaitu : evaluasi fungsi objektif dan konversi fungsi objektif ke dalam fungsi fitness −
Algoritma Genetika
9/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
4. Seleksi -
Bert Bertuj uju uan untu untuk k membe emberi rika kan n kesempatan reproduksi yang lebih besar bagi anggota populasi yang paling fit
-
Ada Ada bebe bebera rapa pa meto etode sel seleksi eksi dari induk, antara lain : •
Rank Rank-b -bas ased ed fitn fitnes ess s assi assigm gmen entt
•
Rou Roulett lette e whe wheel sele select ctio ion n
•
Stoc Stocha hast stic ic univ univer ersa sall sam samplin pling g
•
Local selection
•
Truncatio tion sel selectio tion
•
Tou Tourna rnament ent sele select ctio ion n Algoritma Genetika
10/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
5. Oper Operat ator or Gene Geneti tika ka Ada 2 operator genetika : a. Oper Operat ator or untu untuk k mela melaku kukan kan rekombinasi, yang terdiri dari:
Rekombinasi bernilai real 1. Rekombinasi diskrit 2. Rekombinasi intermediate 3. Rekombinasi garis 4. Rekombinasi garis yang diperluas
Rekombinasi bernilai biner (Crossover ) 1. Crossover satu titik 2. Crossover banyak titik 3. Crossover seragam
Crossover dengan permutasi Algoritma Genetika
11/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
b. Mutasi
Mutasi bernilai real Mutasi bernilai biner
6. Pene Penetu tuan an Para Parame mete ter r Parameter adalah parameter kontrol algoritma genetika, yaitu : ukuran populasi (popsize), peluang crossover (pc) dan peluang mutasi (pm). Rekomendasi menentukan nilai parameter :
Untuk permasalahan yang memiliki kawasan solusi cukup besar, De Jong merekomendasikan nilai parameter : (popsize; pc; pm) = (50;0,6;0,001)
Algoritma Genetika
12/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Bila
rata-rata fitness setiap generasi digunakan sebagai indikator, maka Grefenstette merekomendasikan : (popsize; pc; pm) =(30;0,95;0,01)
Bila
fitness dari individu terbaik dipantau pada setiap generasi, maka usulannya adalah :
(popsize; pc; pm) = (80;0,45;0,01) Ukuran
populasi sebaiknya tidak lebih kecil dari 30, untuk sembarang jenis permasalahan
Algoritma Genetika
13/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Seleksi • Seleksi Seleksi akan menentukan menentukan indiindividu-individu mana saja yang akan dipilih untuk dilakukan rekombinasi dan bagaimana off- spring terbentuk dari individu individu terpilih tersebut. • Langkah Langkah pertama pertama : pencarian pencarian nilai fitness • Langkah Langkah kedua : Nilai Nilai fitness fitness yang diperolah digunakan pada tahap-tahap seleksi selanjutnya Algoritma Genetika
14/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Ada beberapa beberapa definisi definisi yang bias digunakan untuk melakukan perbandingan terhadap beberapa metode yang akan digunakan, antara lain : Selective Pressure : probabilitas dari individu terbaik yang akan diseleksi dibandingkan dengan rata-rata probabilitas dari semua individu yang diseleksi Bias : perbedaan absolut antara fitness ternormalisasi dari suatu individu dan probabilitas reproduksi yang diharapkan
Algoritma Genetika
15/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Spread : range nilai kemungkinan untuk sejumlah off- spring dari suatu individu Loss of diversity : proposi dari individu-individu dalam suatu populasi yang tidak terseleksi selama fase seleksi Selection intensity : nilai fitness rata-rata yang diharapkan dalam suatu populasi setelah dilakukan seleksi (menggunakan distribusi Gauss ternormalisasi) Selection variance : variansi yang diharapkan dari distribusi fitness dalam populasi setelah dilakukan seleksi (menggunakan distribusi Gauss ternormalisasi)
Algoritma Genetika
16/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
1. •
2. • •
•
Rankank-ba bas sed Fitnes tness s Popul opulas asii diur diurut utk kan menur enurut ut nila nilaii objektifnya. Nilai fitness dari tiap-tiap individu hanya tergantung pada posisi indi-vidu tersebut dalam urutan, dan tidak dipengaruhi oleh nilai objektifnya. Roul Roulet ette te Whee Wheell Sele Select ctio ion n Istilah lain adalah stochastic sampling with repalcement . Indi Indivi vidu du-i -ind ndiv ivid idu u dipe dipeta taka kan n dala dalam m suat suatu u segmen garis secara berurutan sedemikian hingga tiap-tiap segmen individu memiliki ukuran yang sama dengan ukuran fitnessnya Sebu Sebuah ah bila bilang ngan an rand random om di-b di-ban angk gkit itka kan n dan individu yang memiliki segmen dalam kawasan segmen dalam kawasan bilangan random tersebut akan terseleksi. Proses ini berulang hingga didapatkan sejumlah individu yang diharapkan
Algoritma Genetika
17/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
3. • •
•
Stocastic Universal Sa Sampling Memi Memililiki ki nila nilaii bias bias nol nol dan dan peny penyeb ebar aran an yang minimum Indi Indivi vidu du-i -ind ndiv ivid idu u dipe dipeta taka kan n dala dalam m suat suatu u segmen garis secara berurut sedemikian hingga tiap-tiap segmen individu memiliki ukuran yang sama dengan ukuran fitnessnya seperti halnya pada seleksi roda roulette. Kemudian diberikan sejumlah pointer sebanyak individu yang ingin diseleksi pada garis tersebut. Andai ndaika kan n N adal adalah ah jumla umlah h indiv ndivid idu u yang akan diseleksi, maka jarak antar pointer adalah 1/N, dan posisi pointer pertama diberikan secara acak pada range [1, 1/N]
Algoritma Genetika
18/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
4. Sele Seleks ksii Loka okal • Setia etiap p indi indivi vidu du yan yang berad erada a di dalam konstrain tertentu disebut dengan nama lingkungan lokal. Interaksi antar individu hanya dilakukan di dalam wilayah tersebut. Lingkungan tersebut ditetapkan sebagai struktur dimana populasi tersebut terdistribusi. Lingkungan tersebut juda dapat dipandang sebagai kelompok pasangan-pasangan yang potensial. • Langkah perta rtama adalah lah menyeleksi separuh pertama dari populasi yang berpasangan secara random. Kemudian lingkungan baru tersebut diberikan pada setiap individu yang terseleksi. Algoritma Genetika
19/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Struktur Struktur lingkungan lingkungan pada seleksi lokal dapat berbentuk : Linear : full ring dan half ring Dimensi-2: - full cross dan half cross - full star dan half star Dimensi-3 dan struktur yang lebih kompleks yang merupakan kombinasi dari kedua struktur diatas
• Jarak Jarak antara antara indivi individu du dengan dengan struktur tersebut akan sangat menentukan ukuran lingkungan. Individu yang terdapat dalam lingkungan dengan ukuran yang lebih kecil, akan lebih terisolasi dibandingkan dengan individu yang terletak pada lingkungan dengan ukuran yang lebih besar Algoritma Genetika
20/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
5. Trun Trunca cati tion on Sele Select ctio ion n • Seleksin ksiny ya adalah buatan • Digun igunak akan an oleh oleh popu popula lasi si yang yang jumlahnya sangat besar • Indi Indivi vidu du-i -in ndiv dividu idu diuru iurutk tkan an berdasarkan nilai fitnessnya. Hanya individu yang terbaik saja yang akan diseleksi sebagai induk. • Param rameter ter yan yang digu igunakan kan adalah suatu nilai ambang trunc yang mengindikasikan ukuran populasi yang akan diseleksi sebagai induk yang berkisar antara 50% - 10%. • Indi Indivi vidu du-i -ind ndiv ivid idu u yan yang ada dibawah nilai ambang ini tidak akan menghasilkan keturunan
Algoritma Genetika
21/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
6. Tourna Tournamen mentt Select Selection ion •
Ditet iteta apkan pkan suat suatu u nila nilaii tou tour untuk individu-individu yang dipilih secara random dari suatu populasi.
•
Indi Indivi vidu du-i -ind ndiv ivid idu u yan yan terb terbai aik k dalam kelomppok ini akan diseleksi sebagai induk
•
Para Param meter eter yang yang digu diguna nak kan adalah ukuran tour yang bernilai antara 2 sampai N (jumlah individu dalam populasi) Algoritma Genetika
22/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Rekombinasi 1. Reko Rekom mbina binasi si Disk Diskre rett • Menu Menuka karr nila nilaii vari variab abe el antar ntar kromosom induk. • Misa Misall ada ada 2 indi indivi vidu du deng dengan an 3 variabel, yaitu : induk 1 : 12 25 5 induk 2 : 123 4 34 • Untuk ntuk tiap tiap-t -tia iap p vari variab abel el ind induk yang menyumbangkan variabelnya ke anak yang dipilih secara random dengan probabilitas yang sama sample 1 : 2 2 1 sample 2 : 1 2 1 Algoritma Genetika
23/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Setelah rekombinasi, kromosomkromosom baru yang terbentuk :
•
anak 1 : 123 4
5
anak 2 : 1
5
4
Rekom ekombi bin nasi asi dapat apat digu igunaka nakan n untuk sembarang variabel (biner, real, atau simbol)
2. Reko Rekomb mbin inas asii Mene Meneng ngah ah •
Metod etode e reko rekom mbina binasi si yang yang hany hanya a dapat digunakan untuk varibel real
•
Nilai ilai varie arieb bel ana anak dipi dipililih h di sekitar dan antara nilai-nilai variabel induk
Algoritma Genetika
24/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Anak dihasilkan menurut aturan sebagai berikut : anak = induk 1 + alpha (induk2 – induk 1)
dengan alpha adalah faktor skala yang dipilih secara random pada interval [-d, 1+d], biasanya d=0,25. • Tiap-tiap Tiap-tiap variabel variabel pada anak merupakan hasil kombinasi variabel-variabel menurut aturan diatas dengan nilai alpha dipilih ulang untuk tiap variabel. Algoritma Genetika
25/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
3. •
•
•
•
Rek Rekombi ombina nas si Garis aris Ham Hampir pir sam sama deng denga a reko rekom mbina binasi si menengah, hanya saja nilai alpha untuk semua variabel sama. Misal isalka kan n ada ada 2 krom kromo osom som deng dengan an 3 variabel : induk 1 : 12 25 5 induk 2 : 123 4 34 Untu Untuk k tiap tiap-t -tia iap p vari variab abel el indu induk k yang yang menyumbangkan vaiabelnya ke anak dipilih secara random dengan probabilitas yang sama sample 1 : 0,5 sample 2 : 0,1 Setel etelah ah rek rekmbina binasi si krom romosom osom-kromosom baru yang terbentuk anak 1 : 67,5 14,5 19,5 anak 2 : 23,1 22,9 7,9 Algoritma Genetika
26/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
4. Penyi Penyila lang ngan an satu satu titik titik • Posi Posisi si peny penyililan anga gan n k (k=1 (k=1,2 ,2,… ,…,N ,N-1) dengan N = panjang kromosom diseleksi secara random. • Vari Variab abel el-v -var aria iabe bell ditu dituka karr anta antar r kromosom pada titik tersebut untuk menghasilkan anak • Misalka lkan ada 2 kro kromosom som dengan panjang 12 : induk 1 : 0 1 1 1 0 | 0 1 0 1 1 1 0 induk 2 : 1 1 0 1 0 | 0 0 0 1 1 0 1
• •
Posis osisii menyi enyila lang ng yang yang terp terpililih ih:: misalkan 5 Sete etelah lah penyi enyila lang nga an, diper iperle leh h kromosom-kromosom baru : anak 1 : 0 1 1 1 0 | 0 0 0 1 1 0 1 anak 2 : 1 1 0 1 0 | 0 1 0 1 1 1 0 Algoritma Genetika
27/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
5. Penyil Penyilang angan an banyak banyak titik titik • Pada penyilangan ini, m posisi penyilangan k i (k=1,2,…,N-1,i=1,2,…,m) dengan N = panjang kromosom diseleksi secara random dan tidak diperbolehkan ada posisi yang sama, serta diurutkan naik. • Vari Variab abel el-v -var aria iab bel ditu dituk kar antar kromosom pada titik tersebut untuk menghasilkan anak. Algoritma Genetika
28/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
6. Peny Penyililan anga gan n Sera Seraga gam m • Seti Setiap ap loka lokasi si memi memililiki ki pote potens nsii sebagai tempat penyilangan. • Sebu Sebuah ah mask ask peny penyiilang langan an dibuat sepanjang panjang kromosom secara random yang menunjukan bit-bit dalam mask yang mana induk akan mensupply anak dengan bit-bit yang ada. • Induk nduk yang yang mana ana yang yang aka akan menyumbangkan bit ke anak yang dipilih secara random dengan probabilitas yang sama Algoritma Genetika
29/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
7. Peny Penyililan anga gan n deng dengan an permutasi •
Dengan permutasi, kromosom-kromosom anak diperoleh dengan cara memilih sub-barisan sautu tour dari satu induk dengan tetap menjaga urutan dan posisi sejumlah kota yang mungkin terhadap induk yang lainnya.
Algoritma Genetika
30/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Mutasi • Mutasi Mutasi Bilang Bilangan an Real Real Operator
mutasi untuk bilangan real dapat ditetapkan sebagai :
1. Variabel yang dimutasi = variabel ± range * delta; 2. Range = 0,5 * domain variabel -i
3. Delta = Σ(ai * 2 ); ai = 1 dengan probabilitas 1/m, selain itu ai = 0, dengan m = 20
Algoritma Genetika
31/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
•
Mutasi Biner
Langkah-langkah mutasi :
1. Hitung Hitung jumlah jumlah gen pada pada populasi 2. Pilih Pilih secara secara acak acak gen yang yang akan dimutasi 3. Tentuk Tentukan an kromos kromosom om dari dari gen yang terpilih untuk dimutasi 4. Ganti Ganti nilai nilai gen (0 ke 1 atau atau 1 ke 0) dari kromosom yang akan dimutasi tersebut
Algoritma Genetika
32/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
Algoritma Genetika Sederhana • 1. 2. 3. 4.
Langkah-langkah : Generasi = 0 Inisia Inisialisa lisasi si popula populasi si awal, awal, P (gene (generas rasi), i), secara secara acak Evalua Evaluasi si nilai nilai fitnes fitness s pada pada setiap setiap individ individu u dalam dalam P (generasi) Kerjak Kerjakan an langka langkah-l h-lang angkah kah berik berikut ut hingga hingga generasi mencapai maksimum generasi : a. generasi = generasi +1 b. Seleksi populasi tersebut untuk mendapatkan kandidat induk, P’(generasi) c. Lakukan crossover pada P’(generasi) d. Lakukan mutasi pada P’(generasi) e. Lakukan evaluasi fitness setiap individu pada P’(generasi f. Bentuk populasi baru : P(generasi) = {P(generasi-1) {P(generasi-1) yang survive, P’(generasi)
Algoritma Genetika
33/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Metode Metode seleksi seleksi roda roda roulett roulette e Algoritma seleksi roda roulette: 1. Hitung total fitness (F) 2. Hitung fitness relatif tiap individu 3. Hitung fitness komulatif 4. Pili Pilih h indu induk k yang yang akan kan menjad njadii kandidat untuk di crossover • Cros Crosso sove ver r Metode yang sering digunakan adalah penyilangan satu titik • Mutasi Mutasi yang digunakan adalah mengubah secara acak nilai suatu bit pada posisi tertentu Algoritma Genetika
34/35
Pengant Peng antar ar Kecerdasa Kecerdasan n Buatan (AK0 (AK0452 45218) 18)
• Diagram Diagram alir algoritma algoritma genetika genetika sederhana
Algoritma Genetika
35/35