• Tidak ada hasil yang ditemukan

Algoritma Evolusi Topik Lanjut Pada GA

N/A
N/A
Protected

Academic year: 2021

Membagikan "Algoritma Evolusi Topik Lanjut Pada GA"

Copied!
19
0
0

Teks penuh

(1)

Topik Lanjut Pada GA

Imam Cholissodin | imam.cholissodin@gmail.com

(2)

Pokok Bahasan

1. Hybrid Genetic Algorithms (HGAs)

2. Parallel Genetic Algorithms (PGAs)

3. Nilai Parameter Adaptif

(3)

Pengantar

Meskipun GAs dianggap powerful untuk menyelesaikan berbagai

permasalahan rumit, implementasi GAs sederhana seringkali tidak cukup efektif untuk menyelesaikan pada permasalahan kompleks dengan area pencarian yang sangat luas.

Representasi chromosome dan operator genetika yang tepat,

kombinasi (hybrid) dengan metode lain, dan strategi yang efisien untuk menghindari konvergensi dini diperlukan untuk memperkuat kemampuan GAs (Lozano & Herrera 2003; Rothlauf 2006).

Contoh hibridasi (metode optimasi yang dioptimasi dengan metode optimasi yang lain) :

o

GA-SA (simulated annealing )

o

SA-GA

o

GA dan hill-climbing

o

GA-PSO (particle swarm optimization )

o

PSO-GA

(4)

Hybrid Genetic Algorithms (HGAs)

GAs murni memberikan hasil kurang optimum pada ruang

pencarian yang kompleks. Penggabungan (hybridisation)

dengan teknik lain dapat meningkatkan akurasi dan efisiensi

pencarian solusi optimum.

Hibridisasi GAs dengan teknik pencarian lokal (local search / LS) menghasilkan memetic algorithms (MAs). Teknik LS sederhana

yang bisa dipakai misalnya algoritma hill-climbing yang sukses digunakan pada optimasi fungsi tanpa kendala.

Kekuatan utama MAs :

o

Keseimbangan antara kemampuan eksplorasi GAs dalam pencarian pada area global, dan

o

Kemampuan eksplotasi LS dalam area local (Lozano et al. 2004).

Dalam implementasinya, LS diterapkan pada setiap individu

baru dengan menggerakkannya menuju optimum lokal sebelum

(5)

Hybrid Genetic Algorithms (HGAs)

Dengan mengacu struktur GAs murni pada PPT Pert. Ke-3 Slide Ke-9, maka struktur MAs bisa disusun dengan menambahkan perbaikan lokal sebagai berikut:

procedure AlgoritmaGenetika begin

t = 0

inisialisasi P(t)

while (bukan kondisi berhenti) do reproduksi C(t) dari P(t) evaluasi P(t) dan C(t)

perbaiki C(t)

seleksi P(t+1) dari P(t) dan C(t)

t = t + 1

end while end

Mekanisme perbaikan offspring tersebut diilustrasikan pada Gambar 5.1. Anak yang baru terbentuk (protochild) akan didorong menuju optimum lokal.

Gambar 5.1. MAs dan optimasi lokal (Gen & Cheng 2000)

Lakukan dengan teknik pencarian local search (LS), atau lainnya

(6)

Hybrid Genetic Algorithms (HGAs)

Karena GAs bisa dihibridisasi dengan algoritma meta-heuristik yang lain (tidak selalu LS) maka dalam pembahasan selanjutnya disebut hybrid GAs (HGAs).

Hibridisasi real-coded GAs (RCGA) dengan beberapa metode,

misal variable neighbourhoods search (VNS) dapat diterapkan untuk penyelesaian permasalahan :

o

Optimasi rute (yang memperhatikan kondisi jalur satu arah dua arah, bobot kemacetan, menggunakan matrik jarak asimetris dll),

o

Penjadwalan kuliah (yang melibatkan optimasi pembagian resouce mengajar, kelas parallel, dan atribut komplek lainnya)

o

Part type selection dan machine loading pada flexible manufacturing

system (FMS), etc

Penyelesaian permasalahan tersebut diketahui sangat sulit

sehingga GAs dihibridisasi dengan algoritma lainnya misal

(7)

Hybrid Genetic Algorithms (HGAs)

Variable Neighbourhoods Search (VNS) :

o

Neighborhood structures : Nk (k=1,…,kmax), kmax adalah banyaknya neighborhoods

o

Nk(x) diperoleh dgn mengganti secara random sebanyak k-exchange dgn neighborhoods operator dalam representasi solusi (x).

procedure VariableNeighbourhoodsSearch

Input:

curr : current/initial solution

kmax : number of neighbourhoods

Output:

best : the best solution begin

inisialisasi solusi curr_s0

best = curr_s0

k = 1

while k ≤ kmax do

curr_s = ModifSolutionNk(best, k), //k-exchange neighborhood, insert, etc

bestLocal = LocalSearch(curr_s), //mencari solusi local optimum dengan LS

//menggunakan neighborhood operator yang berbeda if(fitness(bestLocal) > fitness(best)) then

best = bestLocal k = 1 else k = k + 1 end if end while end

(8)

Hybrid Genetic Algorithms (HGAs)

Local Search (LS) :

procedure LocalSearch Input:

curr : current/initial solution Output:

best : the best solution begin

best = curr

while (bukan kondisi berhenti) do // set perulangan dengan batasan tertentu

curr = ModifSolution(curr) //dengan neighborhood operator tertentu

if(fitness(curr) > fitness(best)) then

best = curr

end if end while end

(9)

Hybrid Genetic Algorithms (HGAs)

Simulated Annealing (Younis R. Elhaddad, 2012) :

procedure SimulatedAnnealing begin

inisialisasi solusi xp hitung fitness(xp)

set t, sebagai initial temperatur

set β, sebagai cooling factor, dimana 0 < β < 1 while (bukan kondisi berhenti) do

pilih solusi yang bertetanggaan (neighboring solution) xn hitung fitness(xn)

Hitung Δf = fitness(xp) - fitness(xn)

if(Δf < 0) xp = xn else if((1/(1+exp(-(-Δf/t)))) > rand[0,1]) xp = xn else t=β.t end if end if end while end t f e     1 1 probability of accepting worse solution

(10)

Hybrid Genetic Algorithms (HGAs)

PSO (Chen, Hui, Ling, at all, 2011) :

Algoritma particle swarm optimization (PSO) merupakan algoritma optimasi yang pertama kali dikenalkan oleh Kennedy dan Eberhart pada tahun 1995.

Time variant yang digunakan adalah time varying acceleration coefficients (TVAC) dan time varying inertia weight (TVIW) Dimana,

- TVIW (wmin= 0.4 dan wmax= 0.9)

- Nilai range c1 dan c2 (TVAC) yang digunakan adalah (c1i=2.5, c1f=0.5) dan

c2i=0.5, c2f=2.5) karena terbukti optimal. c1 dan c2(cognitive dan social components).

- w (bobot inersia), d (banyaknya dimensi

data, atau banyaknya fitur data), tmax (iterasi max.)

- (posisi partikel ke-i, dimensi ke-j, pada iterasi ke-t)

- (kecepatan partikel i, dimensi

ke-j, pada iterasi ke-t)

- (posisi terbaik partikel ke-i, dimensi ke-j, pada iterasi ke-t)  Personal Best

- (posisi terbaik global (dimana nilai

g selalu tetap g=0), dimensi ke-j,

pada iterasi ke-t)  Global Best

   tj i t j g t j i t j i t j i t j i wv c r Pbest x c r Gbest x v 1 , 1 1 , , 2 2 , , ,  .  .   .   1 , , 1 ,   t j i t j i t j i x v x   j d e v sig t j i v t j i , 1,2,.... 1 1 , ,      d j otherwise v sig rand if x t j i t j i , 1,2,.... , 0 ] 1 , 0 [ , 1 1 , 1 ,        

Rumus Sigmoid dan update posisi (untuk binary code): Update posisi:

Rumus update velocity:

   max max min max min t t t w w w w   

Rumus mencari nilai w, c1dan c2adalah

   f ii i i f c t t c c c c t t c c c 2 max 2 2 2 1 max 1 1 1      

(11)

Parallel Genetic Algorithms (PGAs)

Pada ruang pencarian yang luas dan kompleks, GAs sering terjebak dalam daerah optimum lokal.

Hal ini terjadi karena kurangnya keragaman individu dalam populasi. Hal ini bisa diatasi dengan meletakkan individu-individu dalam beberapa sub-populasi.

Pada tiap sub-populasi diterapkan operator genetika (crossover, mutasi, dan seleksi) yang berbeda.

Operator migrasi digunakan untuk memindahkan satu atau beberapa individu dari satu sub-populasi ke dalam sub-populasi lain. Pendekatan ini menghasilkan metode yang disebut algoritma

genetika terdistribusi (distributed genetic algorithms, DGAs). DGAs

terbukti efektif menjaga keragaman populasi dan meningkatkan kualitas hasil pencarian (Mahmudy 2009).

(12)

Parallel Genetic Algorithms (PGAs)

Individu-individu yang ada juga bisa diletakkan pada beberapa sub-populasi yang diproses pada beberapa komputer secara paralel. Hal ini untuk mengurangi waktu komputasi pada masalah yang sangat kompleks. Karena itu DGAs sering juga disebut parallel

genetic algorithms (PGAs).

Mekanisme migrasi sederhana dideskripsikan pada Gambar 5.2 yang menunjukkan ada empat sub-populasi. Pada setiap g generasi, satu individu terbaik dipindahkan ke sub-populasi yang lain.

n individu n individu

n individu n individu

1 individu

(13)

Nilai Parameter Adaptif

Kinerja GAs ditentukan oleh kemampuannya dalam menjelajahi (explore) dan mengeksploitasi (exploit) ruang pencarian (search

space).

Eksplorasi merujuk pada kemampuan untuk menginvestigasi area baru pada ruang pencarian. Eksploitasi merujuk pada kemampuan untuk meningkatkan kualitas solusi pada area tetangga (neighbourhoods) dari solusi yang didapatkan melalui eksplorasi

(Lozano & Herrera 2003).

Dari sini bisa disimpulkan bahwa keseimbangan kemampuan eksplorasi dan eksploitasi sangat penting untuk mendapatkan solusi yang baik (optimum atau mendekati optimum).

(14)

Nilai Parameter Adaptif

Keseimbangan kemampuan eksplorasi dan eksploitasi bisa

didapatkan melalui penentuan crossover rate dan mutation rate

yang tepat (Lozano & Herrera 2003).

Jika crossover rate terlalu rendah maka GAs akan sangat

tergantung pada proses mutasi. Walaupun mutation rate yang

tinggi memungkinkan GAs mempunyai level eksplorasi dan

diversitas populasi yang tinggi, crossover rate yang rendah

membuatnya tidak bisa secara efektifbelajar’ dari generasi sebelumnya. Hal ini menyebabkan ruang pencarian tidak bisa

diekploitasi secara efektif (Mahmudy 2013).

Sebaliknya jika crossover rate tinggi dan mutation rate rendah maka GAs akan mengalami penurunan untuk menjaga diversitas pupolasi. Crossover rate yang tinggi menghasilkan offspring

yang kemiripannya tinggi dengan induknya. Hal ini

menyebabkan GAs mengalami konvergensi dini hanya dalam

beberapa generasi dan kehilangan kesempatan untuk mengeksplorasi area lain dalam ruang pencarian (Mahmudy 2013).

(15)

Nilai Parameter Adaptif

Penentuan kombinasi terbaik crossover rate dan mutation rate

merupakan pekerjaan sulit dan memerlukan beberapa percobaan pendahuluan (Mahmudy, Marian & Luong 2013d).

Untuk permasalahan yang berbeda dibutuhkan nilai yang berbeda pula. Karena itu beberapa penelitian menerapkan mekanisme

perubahan crossover rate dan mutation rate secara adaptif

sepanjang generasi (Im & Lee 2008; Liqun et al. 2010; Mahmudy & Rahman 2011).

Serangkaian percobaan menunjukkan bahwa penggunaan tingkat

reproduksi adaptif mempercepat pergerakan GA ke daerah

feasible yang sekaligus mempercepat pencapaian solusi

(16)

Nilai Parameter Adaptif

Mahmudy and Rahman (2011) menerapkan pengaturan mutation

rate secara adaptif sepanjang generasi.

Pada setiap generasi dihitung rata-rata nilai fitness seluruh individu dalam populasi (fAvg). Jika ada peningkatan rata-rata nilai fitness yang signifikan dibanding generasi sebelumnya (fAvg>>fAvgOld) maka nilai mutation rate diturunkan. Hal ini memungkinkan GAs untuk lebih fokus mengeksploitasi ruang pencarian lokal.

Jika terjadi hal yang sebaliknya (tidak ada peningkatan

signifikan) maka nilai mutation rate dinaikkan. Hal ini memungkinkan GA untuk lebih memperluas pencarian (eksplorasi) dengan melompati daerah optimum lokal.

(17)

Nilai Parameter Adaptif

Pseudo-code dari mekanisme ini disajikan pada Gambar berikut:

Pada pseudo-code di atas ditambahkan satu mekanisme untuk menjaga nilai mutation rate dalam range [mutRateMin,

mutRateMax].

PROCEDURE UpdateMutationRate Input:

fAvg : rata-rata nilai fitness pada generasi sekarang (t)

fAvgOld : rata-rata nilai fitness pada generasi sebelumnya (t-1)

threshold: nilai perbedaan yang menyatakan ada peningkatan signifikan

mutRate : nilai mutation yang belum berubah

Output:

mutRate : nilai mutation yang telah berubah

if fAvg-fAvgOld>threshold then mutRate ← mutRate * 0.95 else mutRate ← mutRate * 1.1; end if if mutRate>mutRateMax then mutRate ← mutRateMax

else if mutRate<mutRateMin then mutRate ← mutRateMin

end if

(18)

Tugas Kelompok

1. Apa tujuan dari penerapan algoritma genetika terdistribusi? 2. Jelaskan mekanisme kerja dari algoritma genetika terdistribusi!

3. Apa tujuan dari pengembangan Hybrid Genetic Algorithms

(HGAs)?

4. Apa tujuan dari penerapan nilai parameter adaptif?

5. Buatlah prosedure untuk HGAs antara GA dengan VNS! 6. Buatlah prosedure untuk HGAs antara GA dengan SA! 7. Buatlah prosedure untuk PSO!

(19)

Terimakasih

Gambar

Gambar 5.1.  MAs dan optimasi lokal (Gen &amp; Cheng 2000)
Gambar 5.2.  Mekanisme migrasi

Referensi

Dokumen terkait

Naskah skripsi berjudul Analisis pengendalian kebijakan dividen dalam hubungannya dengan harga saham pada perusahaan rokok yang go public di bursa efek yang

Perencanaan dan perancangan dimulai dengan pengukuran karakteristik motor DC untuk mengetahui respon tegangan referensi terhadap kecepatan yang dihasilkan,

Merujuk pada hal ini maka usulan penelitian mengenai aplikasi lapisan a-C berbasis bioproduk (gula siwalan) dengan variasi jenis sambungan sebagai sel surya

Selain safeguard ini, area proteksi total seluas 300 meter disediakan di antara pantai dan batas bandara , yang terdiri dari 200 meter treed buffer zone dan dilindungi zona

Perkembangan Teknologi informasi berkembang sangat begitu pesat saat ini dan menghasilkan inovasi-inovasi baru seiring dengan perkembangan pola pikir manusia yang

Data yang digunakan adalah citra Landsat TM, data pasang surut, tinggi gelombang, kemiringan pantai, dan morfologi pantai, dan wawancara dengan pakar ahli.. Metode

Adanya perbedaan nilai viskositas antara kedua minyak tersebut, dapat digunakan sebagai perbandingan indikator viskositas tinggi dalam pembuatan label cerdas dengan

 permasalahan klasik yang sering terdengar adalah keluhan bahwa lulusan perguruan tinggi ternyata tidak memenuhi kualifikasi yang diharapkan oleh dunia pekerjaan.