Anda di halaman 1dari 26

ERWIEN TJIPTA WIJAYA, ST.,M.

KOM
DEFINISI
ALGEN adalah algoritma yang memanfaatkan
proses seleksi alamiah yang dikenal dengan
evolusi
Dalam evolusi, individu terus menerus mengalami
perubahan gen untuk menyesuaikan dengan
lingkungan hidupnya
Hanya individu yang kuat yang akan bertahan
STRUKTUR ALGEN
Genotype (Gen) bagian dari kromosom yang
mewakili 1 variabel (nilai biner, float, integer,
character dan lain - lain)
Allele, nilai dari gen
Kromosom/individu gabungan gen gen yang
menyatakan salah satu solusi yang mungkin terbaik
Populasi, sekumpulan individu yang akan diproses
bersama dalam satu siklus proses evolusi
Generasi, satuan siklus proses evolusi
Nilai Fitness, seberapa baik nilai dari suatu
individu/solusi
PENERAPAN ALGEN
Penyelesaian TSP (Traveling Solution
Problem) / Shortest path
Mencari nilai maksimal dari suatu fungsi
Mencari nilai optimasi
Peramalan (Forecasting)
FLOWCHART ALGEN
Bangkitkan
populasi
awal
Evaluasi
fungsi tujuan
Apakah
kriteria
optimasi
tercapai?
Individu
individu
terbaik
seleksi
rekombinasi
mutasi
Start Hasil
Ya
Tidak
Bangkitkan populasi baru
DESKRIPSI
Populasi awal, didapatkan dari inisialisasi
kromosom dengan dilakukan secara acak
Fungsi evaluasi, evaluasi kromosom ada 2
macam:
Evaluasi fungsi obyektif
Konversi fungsi obyektif ke dalam fungsi fitness
Secara umum fungsi fitness diturunkan oleh fungsi
obyektif dengan nilai yang positif (+), apabila
fungsi obyektif bernilai negatif (-) maka perlu
ditambahkan konstanta C agar nilai fitness yang
terbentuk menjadi positif (+)
DESKRIPSI FLOWCHART
Seleksi, seleksi ini bertujuan untuk memberikan
kesempatan reproduksi yang lebih besar bagi
anggota populasi yang paling fit.
Ada beberapa metode seleksi, antara lain:
Rank-based fitness assigment
Roulette wheel selection
Stochastic universal sampling
Local selection
Truncation selection
Tournament selection

DESKRIPSI
Operator Genetika, ada 2 operator genetika :
Operator Rekombinasi
Rekombinasi bernilai real
Rekombinasi diskret
Rekombinasi intermediate
Rekombinasi garis
Rekombinasi garis yang diperluas
Rekombinasi bernilai biner (crossover)
Crossover 1 titik (single-point-crossover)
Crossover banyak titik (Multi-point-crossover)
Crossover seragam (uniform crossover)
Crossover dengan permutasi
Mutasi
Mutasi bernilai real
Mutasi bernilai biner
DESKRIPSI
Penentuan Parameter, parameter kontrol ALGEN, yaitu
ukuran populasi (popsize), peluang crossover (pc) dan
peluang mutasi (pm). Nilai parameter ini ditentukan juga
berdasarkan permasalahan yang akan dipecahkan. Ada
beberapa rekomendasi yang bisa digunakan, antara lain :
Menurut De Jong, untuk permasalahan yang memiliki kawasan
solusi cukup besar, maka nilai parameter kontrol

Menurut Grefenstette, bila rata rata fitness setiap generasi
digunakan sebagai indikator, maka nilai parameter kontrol

Bila fitness dari individu terbaik dipantau pada setiap generasi,
maka nilai parameternya adalah

Ukuran populasi sebaiknya tidak lebih kecil dari 30, untuk
sembarang jenis permasalahan
(popsize;pc;pm)=(50; 0,6 ;0,001)
(popsize;pc;pm)=(80; 0,45; 0,01)
(popsize;pc;pm)=(30; 0,95 ;0,01)
ALGORITMA GENETIKA SEDERHANA
Misalkan P (generasi) adalah populasi dari 1 generasi, maka
secara sederhana urutan-urutan langkahnya adalah sebagai
berikut:
1. Generasi=0 (Generasi awal)
2. Inisialisasi populasi awal, P(generasi) dengan bilangan acak
3. Evaluasi nilai fitness pada setiap individu dalam P(Generasi)
4. Kerjakan langkah-langkah berikut hingga generasi mencapai
maksimum generasi :
a. Generasi= generasi + 1 (tambah generasi)
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) yang kuat/survive
g. Kriteria berhenti apabila pada setiap generasi generasi memiliki nilai
fitness yang tidak berubah
CONTOH: TSP (TRAVELING SALES
PROBLEM)
A
B
D
C
5
6
7
8
4
3
MEMBENTUK POPULASI
AWAL
Populasi awal, dapat dibangkitkan secara acak atau
melalui prosedur tertentu
Tentukan parameter misalkan :
Popsize = 4
Pc (Probabilitas Crossover) = 0,5
Pm(Probabilitas Mutasi) = 0,2
Maksimum Generasi = 10
Misal dibangkitkan populasi awal dengan 4 individu :
Kromosom[1] = [A B C D]
Kromosom[2] = [B C D A]
Kromosom[3] = [C D A B]
Kromosom[4] = [D A B C]
EVALUASI FITNESS
Kromosom [1] = 8 + 5 + 6 = 19
Kromosom [2] = 5 + 6 + 7 = 18
Kromosom [3] = 6 + 7 + 8 = 21
Kromosom [4] = 7 + 8 + 5 = 20




NO KROMOSOM FITNESS
[1] A B C D 19
[2] B C D A 18
[3] C D A B 21
[4] D A B C 20
SELEKSI
Seleksi untuk mendapatkan calon induk
yang baik
Induk yang baik akan mendapatkan
keturunan yang baik
Semakin tinggi nilai fitness suatu
individu semakin besar kemungkinan
terpilih
Metode seleksi yang digunakan adalah
Roulette Wheel
SELEKSI KROMOSOM
Pada TSP nilai fitness yang terpilih adalah
nilai terkecil maka digunakan inverse :
Q[i] = 1 / Fitness[i]
Q[1] = 1 / 19 = 0,052
Q[2] = 1 / 18 = 0,056
Q[3] = 1 / 21 = 0,048
Q[4] = 1 / 20 = 0,05
Total Q[i] = Q[1]+Q[2] +Q[3] +Q[4]
0,052 + 0,056 + 0,048 + 0,05 = 0,207





SELEKSI KROMOSOM
Menghitung probabilitas / fitness relatif tiap
individu
P[i] = Q[i] / Total Q[i]
P[1] = 0,052 / 0,207 = 0,256
P[2] = 0,056 / 0,207 = 0,27
P[3] = 0,048 / 0,207 = 0,232
P[4] = 0,05 / 0,207 = 0,242

SELEKSI KROMOSOM
Menghitung fitness kumulatif / nilai kumulatif dari
probabilitas :
C[1] = 0,256
C[2] = 0,256 + 0,27 = 0,526
C[3] = 0,526 + 0,232 = 0,758
C[4] = 0,758 + 0,242 = 1
SELEKSI KROMOSOM
Memilih induk yang akan menjadi kandidat untuk
di-crossover
Membangkitkan bilangan acak (R)
R[1] = 0,314
R[2] = 0,743
R[3] = 0,418
R[4] = 0,203
Kemudian membandingkan antara nilai R
(Random) dengan C (Komulatif)
C > R (pilih nilai C yang mendekati dengan nilai R)
Contoh :
R[1] = 0,314 maka nilai yang mendekati adalah = 0,526 C[2]
R[2] = 0,743 maka nilai yang mendekati adalah = 0,758 C[3]
R[3] = 0,418 maka nilai yang mendekati adalah = 0,526 C[2]
R[4] = 0,203 maka nilai yang mendekati adalah = 0,256 C[1]

KROMOSOM BARU HASIL
SELEKSI
NO KROMOSOM FITNESS ASAL
[1] B C D A 18 [2]
[2] C D A B 21 [3]
[3] B C D A 18 [2]
[4] A B C D 19 [1]
LANGKAH-LANGKAH
CROSSOVER
Karena peluang crossover (pc) = 0,5; maka diharapkan 50%
dari total kromosom akan mengalami crossover (2 dari 4
kromosom)
Untuk memilih kromosom-kromosom yang akan dilakukan
crossover yaitu dengan cara membangkitkan bilangan acak
[0 1] sebanyak 4 buah.
Misal bilangan acak yang tercipta adalah :
R[1] = 0,442
R[2] = 0,206
R[3] = 0,895
R[4] = 0,319
Pilih bilangan bilangan yang kurang / lebih kecil dari nilai
pc dalam hal ini nilai pc = 0,5 untuk dilakukan crossover, nilai
yang terpilih adalah :
R[1] = 0,442
R[2] = 0,206
PROSES CROSSOVER
Kromosom yang akan ditukarkan adalah :
Kromosom[1] = B C D A
Kromosom[2] = C D A B
Tukarkan kromosom[1] dengan kromosom[2]
Contoh
Kromosom[1] = Kromosom[2]
Kromosom[2] = Kromosom[1]
Populasi setelah proses crossover :


NO KROMOSOM FITNESS
[1] C D A B 21
[2] B C D A 18
[3] B C D A 18
[4] A B C D 19
LANGKAH LANGKAH
MUTASI
Hitung panjang Gen pada populasi
Panjang total gen = popsize * jumlah Gen pada setiap kromosom
= 4 * 4 = 16 (total Gen)
Memilih posisi gen yang di mutasi dilakukan dengan
membangkitkan bilangan acak antara 1 sampai dengan
panjang total gen (1 - 16)
Misal ditentukan pm=0,2 atau 20% maka jumlah gen yang akan
dimutasi adalah : 0,2 * 16 = 3,2 =3 bit (setelah dibulatkan)
Ciptakan bilangan acak [0 1] sebanyak 16 Gen kemudian
kelompokan menjadi 4 kromosom
Kemudian mutasi / pindahkan Gen tersebut dengan mengambil
nilai Gen didepannya kemudian lakukan pertukaran, maka Gen
= Gen + 1 dan Gen + 1 = Gen
Apabila Gen pada posisi terakhir maka ambilkan dari Gen yang
paling depan, kemudian tukar Gen depan = Gen terakhir dan
Gen terakhir = Gen depan


TABEL BILANGAN ACAK
MUTASI
KROMOSOM[1]
R[1] = 0,412 R[2] = 0,737 R[3] = 0,379 R[4] = 0,192
KROMOSOM[2]
R[1] = 0,234 R[2] = 0,718 R[3] = 0,565 R[4] = 0,082
KROMOSOM[3]
R[1] = 0,949 R[2] = 0,755 R[3] = 0,371 R[4] = 0,386
KROMOSOM[4]
R[1] = 0,840 R[2] = 0,980 R[3] = 0,108 R[4] = 0,860
PROSES MUTASI
Kromosom dan Gen yang terkena mutasi
Kromosom[1] dan Gen[4]
Kromosom[2] dan Gen[4]
Kromosom[4] dan Gen[3]
Bentuk populasi awal :
Kromosom[1] = [C D A B] B ditukar dengan A
Kromosom[2] = [B C D A] A ditukar dengan D
Kromosom[3] = [B C D A]
Kromosom[4] = [A B C D] C ditukar dengan B
Bentuk populasi setelah mutasi :
Kromosom[1] = [C D B A]
Kromosom[2] = [B C A D]
Kromosom[3] = [B C D A]
Kromosom[4] = [A C B D]






EVALUASI
Proses 1 Generasi selesai :
Fitness[1] = 6 + 4 + 8 = 18
Fitness[2] = 5 + 3 + 7 = 15
Fitness[3] = 5 + 6 + 7 = 18
Fitness[4] = 5 + 3 + 4 = 12
Karena TSP adalah rute yang paling pendek yang harus
dipilih maka dalam kasus ini nilai Fitness yang terkecil yang
harus dipilih
Pada kasus ini kromosom[4]=12 dengan rute [A C B D]
POPULASI BARU
Populasi terakhir digunakan sebagai
data awal / populasi baru pada iterasi
berikutnya
Lanjutkan sendiri sampai mendapatkan
nilai fitness terkecil

Anda mungkin juga menyukai