Anda di halaman 1dari 9

ALGORITMA GENETIKA

Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning

AlgoritmaGenetika

 Algoritma Genetika adalahal goritma yang memanfaatkan proses seleksi alamiah yang dikenal dengan proses evolusi.
 Dalamprosesevolusi, individu secaraterus-menerus mengalami perubahan gen untuk menyesuaikan dengan lingkungan hidupnya.
“Hanya individu-individu yang kuat yang mampubertahan”.
 Proses seleksi alamiah ini melibatkan perubahan gen yang terjadi pada individu melalui proses perkembang- biakan.
Dalamalgoritma genetika ini, proses perkembang-biakan ini menjadi proses dasar yang menjadi perhatian utama, dengan dasar
berpikir: “Bagaimana mendapatkan keturunan yang lebih baik”.
 Algoritma genetika iniditemukan olehJohn Holland dan dikembangkan oleh muridnya David Goldberg.

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 bias 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 mungkindari permasalahan yang diangkat
 Populasi, merupakan sekumpulan individu yang akan diproses bersama dalam satu siklus proses evolusi.
 Generasi, menyatakan satu-satu ansiklus proses evolusi.
 Nilai Fitness, menyatakan seberapa baik nilai dari suatu individu atau solusi yang didapatkan.

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.

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).

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.

SiklusAlgoritmaGenetika
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:

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.

Seleksi Dengan Mesin Roullete

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.

Cross Over Cross Over

Pertukaran secara langsung Pertukaran Secara Aritmatika

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.
Mutasi Gen

Penting yang harus diketahui dalam pemakaian Algoritma Genetika Hal

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.

Contoh Proses Algoritma Genetika Dalam Searching dan Optimasi

Definisi Individu

Individu dinyatakan dalam 8 gen biner, dengan batas0 sampai dengan1, berarti1 bit setara dengan2-8.

Sebagai contoh:

10001001 = (128+8+1)/256 = 0.5352

00110100 = (4+16+32)/256 = 0.2031

01010010 = (2+16+64)/256 = 0.3203

10101010 Individu

Fungsi Fitness : Fungsi fitness adalah fungsi f(x), karena yang dicari adalah nilai maksimum. Individu maksimum

Membangkitkan Populasi Awal


Algoritma Genetika Untuk Mencari Kata Secara Acak

Sebuah kata ditentukan sebagai target, misalnya: ‘BASUKI’. Bila setiap huruf diberi nilai dengan nilai urut alfabet, maka
targetnya bisa dinyatakan sebagai besaran numerik:
Target=[2 1 19 21 11 9]
Komputer akan membangkitkan kata dengan jumlah huruf yang sama dengan target secara acak, terus-menerus hingga
diperoleh kata yang sama dengan kata target.
DEVINISI INDIVIDU DAN FITNESS

Beberapa Implementasi Algoritma Genetika Yang Sudah Dilakukan


•Algoritma Genetika untuk mengoptimalkan model antenna array dengan memperbesar main-lobe dan menurunkan side-lobe
•Algoritma Genetika untuk menyusun jadwal kuliah •Algoritma Genetika untuk menyelesaikan TSP (Traveling Salesman Problem)
•Algoritma Genetika untuk menyusun jadwal pendistribusian produk (TSP multikriteria) •Algoritma Genetika untuk menyelesaikan
masalah Knapsack •Algoritma Genetika untuk menentukan filter optimal yang dapat mereduksi noise pada gambar •Algoritma Genetika
untuk menentukan nilai maksimal atau minimal sistem non linier. •Algoritma Genetika untuk mencari bentuk lingkaran pada suatu
gambar •Algoritma Genetika untuk menentukan posisi suatu obyek gambar pada keseluruhan gambar. •Algoritma Genetika untuk
menyusun jadwal penguji proyek akhir di Jurusan Telekomunikasi dan Jurusan Teknologi Informasi •Algoritma Genetika untuk
menentukan pembobot nilai optimal dalam melakukan ranking pegawai. •Algoritma Genetika untuk peramalan time-series.
Algoritma Genetika Untuk Langkah Berikutnya
•Algoritma Genetika sangat handal untuk melakukan proses pencarian dan optimasi. •Salah satu hal yang menggembirakan adalah
kecepatan komputasi algoritma genetika untuk proses optimasi bisa dikatakan sangat baik. •Proses-proses optimasi yang membutuhkan
kecepatan komputasi dengan kompleksitas yang tinggi membutuhkan algoritma genetika.
EXPERT SYSTEM (SISTEM PAKAR)
DefinisiSistem Pakar Sistem berbasis pengetahuan yang menggunakan pengetahuan manusia untuk memecahkan masalah.
Bagianutamadarisistem pakar: 1. User interface 2. Knowledge base 3. Inference engine 4. Development engine
MODEL SISTEM PAKAR

BAGIAN UTAMA SISTEM PAKAR


1. USER INTERFACE
User interface memungkinkan manajer untuk memasukkan instruksi dan informasi ke dalam sistem pakar dan menerima informasi dari
sistem pakar.

A. Input Sistem Pakar


User interface dirancang untuk mempermudah dialog dua arah antara sistem & pemakai dengan menampilkan teknik tanya-jawab dan
pengisian formulir kemudian muncul bahasa perintah dan menu elektronik dan sistem manajemen data base (DBMS)

B. Output SistemPakar
Sistem Pakar dirancang untuk menyarankanpemecahan. Pemecahan ini dilengkapi dengan penjelasan : 1. Penjelasan atas pertanyaan 2.
Penjelasan atas penyelesaian masalah

2. KNOWLEDGE BASE
Knowlage base memuat fakta-fakta yang menjelaskan area masalah dan juga teknik menerangkan masalah yang menjelaskan
bagaimana fakta- fakta tersebut cocok satu sama lain dalam urutan yang logis.

3. INFERENCE ENGINE
Bagian dari Sistem Pakar yang melakukan penalaran dengan menggunakan knowledge base berdasarkan urutan tertentu.
A.PenalaranMaju
Penalaran maju disebut juga forward chaining dimana sistem pakar akan menguji apakah setiap kondisi benar atau salah
B. PenalaranMundur
Penalaran mundur disebut juga backward chaining yaitu pemilihan suatu aturan dan menganggapnya sebagai masalah yang harus
diselesaikan
MembandingkanPenalaranMaju danPenalaranMundur
Penalaran mundur bergerak lebih cepat dari penalaran maju karena penalaran mundur tidak harus mempertimbangkan semua aturan
dan tidak membuat beberapa putaran melalui perangkat atauran.
Penalaranmundursangatsesuaijika:
1. Terdapat variabel sasaran berganda (multiple goal variable) 2. Terdapat banyak aturan 3. Semua atau hampir semua aturan tidak
harus diuji dalam proses mencapai pemecahan.

4. DEVELOPMENT ENGINE

Komponen utama sistem pakar adalah development engine, yang digunakan untuk menciptakan sistem pakar
Ada2 pendekatandasardalam penciptaansistem pakar

1. Bahasa Pemrograman Sistem pakar bisa dibuat dengan menggunakan bahasa pemrograman apapun. 2. Shell Sistem Pakar Adalah
sistem pakar jadi, sistem pakar pertama dinamakan dengan Mycin, yang di gunakan untuk mendiagnosa penyakit menular tertentu

Knowledge Engineer

Orang yang bekerja membantu pakar dalam merancang sistem pakar disebut Knowledge Engineer.

Keahlianyang harusdimilikioleh Knowledge Engineer

1. Mengerti bagaimana menerapkan pengetahuan dalam memecahkan masalah 2. Mampu memahami penjelasan mengenai
pengetahuan yang diberikan oleh pakar

Elemen-elemensistempakar

1. Pengalaman 2. Orang ahli (pakar) 3. Transfer pengalaman 4. Pembuatan alasan 5. Pembuatan simbol 6. Aturan 7. Kemampuan
untuk menjelaskan

Dayatariksistempakar

1. Menawarkan kesempatan untuk membuat keputusan yang melebihi kemampuan manajer 2. Kemampuannya dalam menjelaskan
alur penalaran dalam mencapai suatu pemecahan masalah

Keuntungan& Kerugian SistemPakar

Keuntungan Sistem Pakar bagiManajer

1. Mempertimbangkan lebih banyak alternatif 2. Menerapkan logika yang lebih tinggi 3. Menyediakan lebih banyak waktu untuk
mengevaluasi hasil keputusan 4. Membuat keputusan yang lebih konsisten

KeuntunganSistem Pakar bagi Perusahaan

1. Kinerja perusahaan yang lebih baik 2. Mempertahankan pengendalian atas pengetahuan perusahaan

KerugianSistemPakar

1. Tidak dapat menangani pengetahuan yang tidak konsisten 2. Sistem Pakar tidak dapat menerapkan penilaian dan intuisi

PENDAHULUAN

• Jaringan Syaraf Tiruan adalah: merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba untuk
mensimulasikan proses pembelajaran pada otak manusia tersebut. Istilah buatan digunakan karena jaringan syaraf ini diimple-
mentasikan dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses
pembelajaran

OTAK MANUSIA

• Otak manusia berisi berjutajuta sel syaraf yang bertugas untuk memproses informasi.

• Setiap sel syaraf (neuron) akan memiliki satu inti sel, inti sel ini yang akan bertugas untuk melakukan pemrosesan in- formasi.

SEJARAH

• Tahun 1940-an, para ilmuwan menemukan bahwa psikologi otak sama dengan mode pemrosesan yang dilakukan oleh komputer •
Tahun 1943, McCulloch dan Pitts merancang model form- al yang pertama kali sebagai perhitungan dasar neuron • Tahun 1954, Farley
dan Clark mensetup model-model untuk relasi adaptif stimulus-respon dalam jaringan random• Tahun 1958, Rosenblatt
mengembangkan konsep dasar tentang perception untuk klasifikasi pola • Tahun 1960, Widrow dan Hoff mengembangkan ADALINE
yang dilatih dengan pembe- lajaran Least Mean Square (LMS) • Tahun 1974, Werbos memperkenalkan algoritma backpropagation •
Tahun 1975, Little dan Shaw menggambarkan jaringan syaraf dengan probabilistik• Tahun 1982, Kohonen mengem- bangkan metode
pembelajaran jaringan syaraf yang tidak terawasi untuk pemetaan • Tahun 1982, Grossberg mengembangkan teori jaringan • Tahun
1982, Hopfield mengem- bangkan jaringan syarafreccurent • Tahun 1985, algoritma pembela- jaran dengan mensin Boltzmann • Tahun
1987, Kosko mengem bangkan jaringan Adaptive Bidirectional Associative Memory (BAM) • Tahun 1988, dikembangkan fungsi radial
bebas

KOMPONEN JARINGAN SYARAF

• Neuron, sel syaraf yang akan men- transformasikan informasi yang diterima melalui sambungan kelu- arnya menuju neuron-neuron
yang lain. • Pada jaringan syaraf, hubungan antar neuron-neuron dikenal dengan nama bobot.

• Pada jaringan syaraf, neuron- neuron akan dikumpulkan dalam lapisan-lapisan (layer) yang disebut dengan lapisan neuron (neuron
layers) • Informasi yang diberikan pada jaringan syaraf akan dirambatkan lapisan ke lapisan, mulai dari lapisan input sampai ke lapisan
output melalui lapisan yang lainnya, yang dikenal dengan lapisan tersembunyi (hidden layer), tergantung pada algoritma pem-
belajarannya, bisa jadi informasi tersebut akan dirambatkan secara mundur pada jaringan.

Arsitektur Jaringan

• Faktor terpenting untuk men- entukan kelakuan suatu neuron adalah fungsi aktivasi dan pola bobotnya. • Ada beberapa arsitektur
jaringan syaraf, antara lain : a. Jaringan dengan lapisan tunggal (single layer net) – Hanya memiliki satu lapisan dengan bobot-bobot
terhubung – Jaringan ini hanya menerima input kemudian secara langsung akan mengolahnya menjadi output tanpa harus melalui
lapisan tersembunyi.

b. Jaringan dengan banyak lapisan (multilayer net) - Memiliki 1 atau lebih lapisan yang terletak diantara lapisan input dan lapisan
output - Ada lapisan yang berbobot yang terletak antara 2 lapisan yang bersebelahan

• Jaringan dengan lapisan kompetitif (compotitive layer net)

- Hubungan antar neuron pada lapisan kompetitif tidak diperlihatkan pada diagram arsitektur
Fungsi Aktivasi

a. Fungsi Undak Biner (Hard Limit) Jaringan dengan lapisan tunggal sering menggunakan fungsi undak untuk menkonversi input dari
suatu variabel yang bernilai kontinu ke suatu output biner Fungsi hard limit dirumuskan 0,Y={ jika x ≤ 0 1, jika x > 0
b. Fungsi Undak Biner (Threshold) Fungsi undak biner dengan menggunakan nilai ambang sering disebut fungsi nilai ambang atau
fungsi Heaviside. Dirumuskan :
Y={0, jika x < θ
1, jika x ≥ θ
c. Fungsi Bipolar Hampir sama dengna fungsi undak biner, hanya saja output yang dihasilkan berupa 1, 0 atau –1
Fungsi Symetric Hard Limit dirumuskan sebagai : Y={1, jika x > 0 0, jika x = 0 -1, jika x <
d. Fungsi Bipolar (dengan Threshold) Fungsi yang menghasilkan output berupa 1, 0 atau -1 Y={1, jika x ≥ θ -1, jika x < θ
e. Fungsi Linear (identitas) Fungsi linear memiliki nilai output yang sama dengan nilai input Dirumuskan : y = x
f. Fungsi Sturating Linear Fungsi ini akan bernilai 0 jika inputnya kurang dari -½, dan akan bernilai 1 jika inputnya lebih dari ½.
Sedangkan jika nilai input terletak antara -½ dan ½, maka outputnya akan bernilai sama dengan nilai input ditambah ½.
Fungsi saturating linear dirumuskan: 1; Y={ jika x ≥ 0 x + 0,5;jika -0,5 ≤ x ≤ 0,5 0; jika x ≤ 0
g. Fungsi Symetric Saturating Linear Fungsi ini akan bernilai -1 jika inputnya kurang dari -1. Sedangkan jika nilai input ter- letak
antara -1 dan 1, maka outputnya akan bernilai sama dengan nilai inputnya.
Y=
Jaringan Syaraf Tiruan 18/25
Kecerdasan Buatan Fungsi Symetric Saturating Linear dirumuskan : 1; jika x ≥ 1 x ; jika -1 ≤ x ≤ 1 -1; jika x ≤ -1
h. Fungsi Sigmoid Biner Di- gunakan untuk jaringan syaraf yang dilatih dengan menggunakan metode backpropagation. Memiliki
nilai pada range 0 sampai 1.
Y=
Jaringan Syaraf Tiruan 19/25
Kecerdasan Buatan Fungsi sigmoid biner dirumuskan : 1 y = f(x) = ------------- (1 + e άx) i. Fungsi Sigmoid Bipolar - Output dari
fungsi ini memiliki range antara 1 sampai -1 Fungsinya dirumuskan : 1 - e -x y = f(x) = ------------- (1 + e -x)
Jaringan Syaraf Tiruan 20/25
Kecerdasan Buatan Proses Pembelajaran
a. Pembelajaran Terawasi (supervised learning) Metode pembelajaran pada jaringan syaraf disebut terawasi jika output yang
diharapkan telah diketahui sebelumnya.
b. Pembelajaran Tak Terawasi (unsupervised learning) Pada metode pembelajaran tak terawasi ini tidak memerlukan target
output. Tujuan metode ini adalah pengelompokan unit-unit yang hampir sama dalam suatu area tertentu.
Jaringan Syaraf Tiruan 21/25
Kecerdasan Buatan Pembelajaran Terawasi
1. Hebb Rule Metode pembelajaran yang paling sederhana, pembelajaran dilakukan dengan cara memperbaiki nilai bobot
sedemikian rupa sehingga jika ada 2 neuron yang terhubung dan ke- duanya dalam kondisi “on” pada saat yang sama, maka bobot
antara keduanya dinaikkan Jaringan Syaraf Tiruan 22/25 Kecerdasan Buatan
2. Perception Biasanya digunakan untuk mengklasifikasikan suatu tipe pola tertentu yang sering dikenal dengan pemisahan
secara linear. Algoritma yang digunakan akan mengatur parameter- parameter bebasnya melalui proses pembelajaran
3. Delta Rule Mengubah bobot yang menghubungka antara jaringan input ke unit output dengan nilai target. Jaringan Syaraf
Tiruan 23/25 Kecerdasan Buatan
4. Backpropagation Algoritma pembelajaran yang terawasi dan biasanya di- gunakan oleh perception dengan banyak lapisan
untuk mengubah bobt-bobot yang terhubung dengan neuron- neuron yang ada pada lapis- an tersembunyi
5. Hetroassociative Memory Jaringan yang bobot bobotnya ditentukan se- demikian rupa sehingga jaringan tersebut dapat
menyimapan kumpulan pola. Jaringan Syaraf Tiruan 24/25 Kecerdasan Buatan
6. Bidirectional Associative Memory Model jaringan syaraf yang memiliki 2 lapisan dan terhubung penuh dari satu lapisan ke
lapis- an lainnya. Pada jaringan ini dimungkinkan adanya hubungan timbal balik antara lapisan input dan lapisan output.
7. Learning vector Quantization Suatu metode untuk melakukan pembelajaran pada lapisan kompetitif yang terawasi. Suatu
lapisan kompetitif akan secara otomatis belajar untuk mengk- lasifikasikan vektor-vektor input. Kelas-kelas yang didapatkan
sebagai hasil hanya tergantung pada jarak antara vektor-vektor input
Jaringan Syaraf Tiruan 25/25
Kecerdasan Buatan Pembelajaran Tak Terawasi (Jaringan Kohonen)
Jaringan kohonen pertama kali diperkenalkan oleh Prf. Teuvo Kohonen tahun 1982.
Pada jaringan ini, suatu lapisan yang berisi neuron-neuron akan menyusun dirinya sendiri ber- dasarkan input nilai tertentu
dalam suatu kelompok yang dikenal dengan istilah cluster
Selama proses penyusunan diri, cluster yang memiliki vektor bbot paling cocok dengan pola input akan terpilih sebagai
pemenang

Anda mungkin juga menyukai