Algoritma Evolusi Genetic Programming (GP) Dan Evolutionary Programming (EP)

dokumen-dokumen yang mirip
Algoritma Evolusi Evolution Strategies (ES)

Algoritma Evolusi Real-Coded GA (RCGA)

Algoritma Evolusi Dasar-Dasar Algoritma Genetika

PENERAPAN ALGORITMA GENETIKA UNTUK TRAVELING SALESMAN PROBLEM DENGAN MENGGUNAKAN METODE ORDER CROSSOVER DAN INSERTION MUTATION

Aplikasi Algoritma Genetika Untuk Menyelesaikan Travelling Salesman Problem (TSP)

Modul Matakuliah Algoritma Evolusi oleh

PREDIKSI NILAI TUKAR RUPIAH TERHADAP US DOLLAR MENGGUNAKAN METODE GENETIC PROGRAMMING

Lingkup Metode Optimasi

Genetic Algorithme. Perbedaan GA

Algoritma Evolusi Topik Lanjut Pada GA

BAB 2 LANDASAN TEORI

Bab II Konsep Algoritma Genetik

BAB 2 LANDASAN TEORI. 2.1 Algoritma Genetika

DAFTAR ISI. Tim Redaksi... i Kata Pengantar... ii Daftar Isi... iii

TREE STRUCTURE (Struktur Pohon)

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. Evolutionary Algorithm merupakan terminologi umum yang menjadi payung

BAB III IMPLEMENTASIALGORITMA GENETIK DAN ACS PADA PERMASALAHAN TRAVELLING SALESMAN PROBLEM

DASAR-DASAR Algoritma Evolusi

MODEL PENYELESAIAN JOB SHOP SCHEDULING PROBLEM MENGGUNAKAN METODE LOCAL SEARCH ALGORITHM DENGAN CROSS OVER

Pohon dan Pohon Biner

BAB I PENDAHULUAN. hampir di seluruh dunia, termasuk Indonesia. Alat transportasi ini memiliki

Zbigniew M., Genetic Alg. + Data Structures = Evolution Program, Springler-verlag.

APLIKASI ALGORITMA GENETIKA UNTUK PENENTUAN TATA LETAK MESIN

TEKNIK PENJADWALAN KULIAH MENGGUNAKAN METODE ALGORITMA GENETIKA. Oleh Dian Sari Reski 1, Asrul Sani 2, Norma Muhtar 3 ABSTRACT

PENERAPAN ALGORITMA GENETIKA UNTUK MENYELESAIKAN PERMASALAHAN PENJADWALAN DOSEN DENGAN FUZZY

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika

Optimasi Penjadwalan Ujian Menggunakan Algoritma Genetika

BAB I PENDAHULUAN. jumlah ketersediaan yang semakin menipis dan semakin mahal, membuat biaya

KONSEP ALGORITMA GENETIK BINER UNTUK OPTIMASI PERENCANAAN JADWAL KEGIATAN PERKULIAHAN

BAB 2 DASAR TEORI. 2.1 Teka-Teki Silang

BAB I PENDAHULUAN. adalah dengan menyatakan objek dinyatakan dengan sebuah titik (vertex),

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi

Algoritma dan Struktur Data. Linear & Binary Search Tree

BAB III. Solusi Optimal Permasalahan Penjadwalan Perkuliahan Menggunakan Algoritma Fuzzy Evolusi

BAB 2 TINJAUAN PUSTAKA

Optimasi Pemilihan Pekerja Bangunan Proyek Pada PT. Citra Anggun Pratama Menggunakan Algoritma Genetika

APLIKASI UNTUK PREDIKSI JUMLAH MAHASISWA PENGAMBIL MATAKULIAH DENGAN MENGGUNAKAN ALGORITMA GENETIKA, STUDI KASUS DI JURUSAN TEKNIK INFORMATIKA ITS

PENERAPAN ALGORITMA GENETIKA PADA PENYELESAIAN TRAVELLING SALESMAN PROBLEM (TSP)

BAB 2 TINJAUAN PUSTAKA

B C D E F G H I J K L M N O P Q R S T. Tinaliah, S.Kom POHON BINER

PEMBENTUKAN DECISION TREE DATA LAMA STUDI MAHASISWA MENGGUNAKAN ALGORITMA NBTREE DAN C4.5

Penjadwalan Mata Kuliah Menggunakan Metode Hybrid Algoritma Genetika Dan Algoritma Koloni Semut

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

1. BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB II KAJIAN TEORI. genetika, dan algoritma memetika yang akan digunakan sebagai landasan dalam


IT234 Algoritma dan Struktur Data. Tree

Keywords Algoritma, Genetika, Penjadwalan I. PENDAHULUAN

BAB III. Metode Penelitian

Denny Hermawanto

Optimasi Multi Travelling Salesman Problem (M-TSP) Menggunakan Algoritma Genetika

ABSTRAK. Kata kunci: Optimasi Penjadwalan, Algoritma Genetik

Perancangan Dan Pembuatan Aplikasi Rekomendasi Jadwal Perkuliahan Pada Institut Informatika Indonesia Memanfaatkan Algoritma Genetika

Penerapan algoritma evolution strategies untuk optimasi distribusi barang dua tahap

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. 1.1 Latar Belakang

PENJADWALAN OPERASIONAL PEMBANGKIT BERBASIS ALGORITMA GENETIK PADA SISTEM PEMBANGKIT SUMATERA BAGIAN TENGAH

Tree (Struktur Data) Nisa ul Hafidhoh, MT

Pemanfaatan Algoritma Hybrid Ant Colony Optimization dalam Menyelesaikan Permasalahan Capacitated Minimum Spanning Tree. Tamam Asrori ( )

PEMAMPATAN MATRIKS JARANG DENGAN METODE ALGORITMA GENETIKA MENGGUNAKAN PROGRAM PASCAL

2 TINJAUAN PUSTAKA. 2.1 Peringkasan Teks

OPTIMASI PENJADWALAN CERDAS MENGGUNAKAN ALGORITMA MEMETIKA

Implementasi Sistem Penjadwalan Akademik Fakultas Teknik Universitas Tanjungpura Menggunakan Metode Algoritma Genetika

OPTIMALISASI SOLUSI TERBAIK DENGAN PENERAPAN NON-DOMINATED SORTING II ALGORITHM

Buku Ajar Struktur Data

Peramalan Kebutuhan Beban Sistem Tenaga Listrik Menggunakan Algoritma Genetika

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

OPTIMASI GENETIC ALGORITHM DENGAN SIMULATED ANNEALING UNTUK MULTIPLE DEPOT CAPACITATED VEHICLE ROUTING PROBLEM

M. Ainul Yaqin 1,Totok Lisbiantoro 2, Jurusan Teknik Informatika, Fakultas Sains dan Teknologi Universitas Islam Negeri Maulana Malik Ibrahim Malang

Implementasi Algoritma Genetika dalam Pembuatan Jadwal Kuliah

IMPLEMENTASI ALGORITMA GENETIKA DALAM OPTIMASI JALUR PENDISTRIBUSIAN KERAMIK PADA PT. CHANG JUI FANG

Sistem Penjadwalan Outsourcing Menggunakan Algoritma Genetika (Studi Kasus : PT. Syarikatama)

BAB I PENDAHULUAN. sejumlah aktivitas kuliah dan batasan mata kuliah ke dalam slot ruang dan waktu

Penjadwalan Dinas Pegawai Menggunakan Algoritma Genetika Pada PT Kereta Api Indonesia (KAI) Daerah Operasi 7 Stasiun Besar Kediri

TAKARIR. algorithm algoritma/ kumpulan perintah untuk menyelesaikan suatu masalah. kesalahan program

Penjadwalan Job Shop pada Empat Mesin Identik dengan Menggunakan Metode Shortest Processing Time dan Genetic Algorithm

Rancang Bangun Aplikasi Prediksi Jumlah Penumpang Kereta Api Menggunakan Algoritma Genetika

PERFORMANCE ALGORITMA GENETIKA (GA) PADA PENJADWALAN MATA PELAJARAN

PENENTUAN JARAK TERPENDEK PADA JALUR DISTRIBUSI BARANG DI PULAU JAWA DENGAN MENGGUNAKAN ALGORITMA GENETIKA. Abstraksi

Optimasi Penjadwalan Mata Pelajaran Pada Kurikulum 2013 Dengan Algoritme Genetika (Studi Kasus: SMA Negeri 3 Surakarta)

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

ALGORITMA GENETIK SEBAGAI FUNGSI PRUNING ALGORITMA MINIMAX PADA PERMAINAN TRIPLE TRIAD CARD.

Penentuan Portofolio Saham Optimal Menggunakan Algoritma Genetika

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 3 ANALISIS DAN PERANCANGAN

PENERAPAN EVOLUTIONARY ALGORITHM PADA PENJADWALAN PRODUKSI (Studi Kasus di PT Brother Silver Product Indonesia)

ANALISIS PERBANDINGAN ALGORITMA GENETIKA DAN ALGORITMA FUZZY EVOLUSI DALAM PENYELESAIAN TRAVELING SALESMAN PROBLEM

BAB III KONSEP DAN PERANCANGAN APLIKASI

RENCANA PEMBELAJARAN SEMESTER (RPS)

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

APLIKASI ALGORITMA GENETIKA DALAM MENENTUKAN SPESIFIKASI PC BERDASARKAN KEMAMPUAN FINANSIAL KONSUMEN

Transkripsi:

Algoritma Evolusi Genetic Programming (GP) Dan Evolutionary Programming (EP) Imam Cholissodin imam.cholissodin@gmail.com

Pokok Bahasan 1. Genetic Programming (GP) 2. Siklus Genetic Programming 3. Evolutionary Programming (EP) 4. Studi Kasus 1: Pohon Keputusan 5. Tugas

Genetic Programming GP merupakan satu metode untuk secara sistematis mengevolusi program komputer. Ide dasarnya adalah bagaimana komputer dapat secara otomatis menghasilkan program komputer berdasarkan sebuah permasalahan yang diberikan. Perbedaan dengan solusi GAs yang berupa nilai numeris berdasarkan fungsi obyektif yang digunakan, GP menghasilkan rangkaian program komputer yang bisa direpresentasikan dalam bentuk struktur pohon (tree). GP telah diaplikasikan dalam berbagai bidang, misalnya untuk mendesain analog circuit pada skala industry secara otomatis (Koza et al. 2004), mendesain quantum computing circuits (Spector 2004), dan membantu manajer untuk mendesain organisasi yang optimal pada sebuah proyek (Khosraviani, Levitt & Koza 2004).

Genetic Programming GP juga cukup efektif dikombinasikan/dihibridisasi dengan algoritma lain seperti ant colony optimization untuk memperbaiki desain geometris pada reflector light-emitting diode (LED). Perbaikan ini akan berpengaruh secara signifikan terhadap intensitas cahaya yang dipancarkan oleh LED (Hsu 2011). Pada bidang data mining, hybrid GP dan simulated annealing telah sukses diaplikasikan untuk membentuk pohon keputusan pada klasifikasi data (Folino, Pizzuti & Spezzano 2000). Contoh permasalahan sederhana berdasarkan tabel berikut : x 1 x 2 y 1 2 1 2 3 12 3 2 5 4 5 46 5 3 18 6 5 56 7 4 35 8 6 84 9 5 56 10 8 148 Buatlah sebuah fungsi dengan variabel bebas x 1 dan x 2 yang menghasilkan variabel tak bebas y! Note : Nilai-nilai pada tabel di atas sebenarnya dihasilkan dari sebuah fungsi non-linear dengan persamaan berikut: y f 2 x x 3x x x 2x 8 1, 2 1 2 1 2

Genetic Programming Contoh permasalahan sederhana berdasarkan tabel berikut : x 1 x 2 y 1 2 1 2 3 12 3 2 5 4 5 46 5 3 18 6 5 56 7 4 35 8 6 84 9 5 56 10 8 148 Buatlah sebuah fungsi dengan variabel bebas x 1 dan x 2 yang menghasilkan variabel tak bebas y! Note : Nilai-nilai pada tabel di atas sebenarnya dihasilkan dari sebuah fungsi non-linear dengan persamaan berikut: y f 2 x x 3x x x 2x 8 1, 2 1 2 1 2 Binary tree fungsi non-linear di atas : Node menunjukkan instruksi yang harus dilaksanakan (misal * dan +). Link merujuk ke argumen dari tiap instruksi (misal x 1 dan x 2 ).

Genetic Programming 2 Binary tree fungsi non-linear y f x1, x2 3x1x2 x1 2x2 8 : Node menunjukkan instruksi yang harus dilaksanakan (misal * dan +). Link merujuk ke argumen dari tiap instruksi (misal x 1 dan x 2 ). Arithmetic Exp. : (3x 1 x 2 -x 12 )+(2x 2-8) Preorder : +-**3x 1 x 2 *x 1 x 1 -*2x 2 8 Inorder : 3*x 1 *x 2 -x 1 *x 1 +2*x 2-8 Postorder : 3x 1 *x 2 *x 1 x 1 *-2x 2 *8-+ Masalahnya, bagaimana merancang GP untuk menghasilkan binary tree di atas (yang fungsinya belum diketahui sebelumnya). Secara umum, siklus GP mirip dengan GAs. Dua hal yang harus ditambahkan pada representasi solusi GP adalah: o Penentuan himpunan terminal (set of terminals) o Penentuan himpunan fungsi (set of functions)

Siklus Genetic Programming Untuk kasus penentuan fungsi non-liner bisa didefinisikan himpunan terminal dan fungsi sebagai berikut: o Himpunan terminal : T = { x 1, x 2, x R }, dimana R adalah real_number o Himpunan fungsi : F = { +,, *, / } 1. Representasi Chromosome o Setiap chromosome berupa sebuah binary tree. Bagaimana sebuah binary tree disimpan/ditangani oleh program komputer, silahkan membuka ulang materi mata kuliah struktur data. Arithmetic Exp. : (6*(x 1 +x 1 ))+(x 2 *4) Preorder : +*6+x 1 x 1 *x 2 4 Inorder :6*x 1 +x 1 +x 2 *4 Postorder : 6x 1 x 1 +*x 2 4*+

Siklus Genetic Programming 2. Inisialisasi dan Evaluasi o Chromosome dari dua individu (P 1 dan P 2 ) yang dibangkitkan secara acak diberikan sebagai berikut: individu 1 (P 1 ) individu 2 (P 2 ) Arithmetic Exp. : (6*(x 1 +x 1 ))+(x 2 *4) Preorder : +*6+x 1 x 1 *x 2 4 Inorder :6*x 1 +x 1 +x 2 *4 Postorder : 6x 1 x 1 +*x 2 4*+ Arithmetic Exp. : ((x 1 +x 2 )-(2*x 1 ))*(x 2 +5) Preorder :*-+x 1 x 2 *2x 1 +x 2 5 Inorder :x 1 +x 2-2x 1 *x 2 +5 Postorder :x 1 x 2 +2x 1 *-x 2 5+*

Siklus Genetic Programming 2. Inisialisasi dan Evaluasi o Menghitung nilai fitness dari individu (P 1 dan P 2 ) : x1 x2 y P 1 yp 1 = 6(x 1 +x 1 )+4x 2 P 2 yp 2 = ((x 1 +x 2 )-2x 1 )(x 2 +5) yp 1 y-yp 1 yp 2 y-yp 2 1 2 1 20 19 7 6 2 3 12 36 24 8 4 3 2 5 44 39-7 12 4 5 46 68 22 10 36 5 3 18 72 54-16 34 6 5 56 92 36-10 66 7 4 35 100 65-27 62 8 6 84 120 36-22 106 9 5 56 128 72-40 96 10 8 148 152 4-26 174 Total 371 596 Fitness 1/(1+371)=0,002688 1/(1+596)=0,001675 Arithmetic Exp. : (6*(x 1 +x 1 ))+(x 2 *4) Preorder : +*6+x 1 x 1 *x 2 4 Inorder :6*x 1 +x 1 +x 2 *4 Postorder : 6x 1 x 1 +*x 2 4*+ Arithmetic Exp. : ((x 1 +x 2 )-(2*x 1 ))*(x 2 +5) Preorder :*-+x 1 x 2 *2x 1 +x 2 5 Inorder :x 1 +x 2-2x 1 *x 2 +5 Postorder :x 1 x 2 +2x 1 *-x 2 5+*

Siklus Genetic Programming 3. Crossover o Crossover antara dua induk P 1 dan P 2 dilakukan dengan memilih satu node secara acak dari P 1. o Sub-tree yang dimulai dari node ini dihapus dan digantikan dengan subtree yang dipilh secara acak dari P 2. + node dibuang node pengganti * P P 2 1 - * * + 6 + x 2 4 + * x 2 5 x 1 x 1 x 1 x 2 2 x 1 Offspring C + * 6 + - + * x 1 x 1 x 1 x 2 2 x 1

Siklus Genetic Programming 4. Mutasi o Mutasi terhadap induk P dilakukan dengan memilih satu node secara acak. Sub-tree yang dimulai dari node ini digantikan dengan sub-tree yang dibangkitkan secara acak seperti pada proses inisialisasi. P + node dibuang + Offspring C * * * + 6 + x 2 4 6 + * x 1 x 1 x 1 x 1 x 1 x 2 x 1 5. Seleksi o Metode seleksi pada GP sama dengan yang digunakan pada GAs.

Evolutionary Programming (EP) EP juga bisa untuk menghasilkan rangkaian program komputer tapi prinsip kerjanya seperti ES. Finite State Machines (FSM) biasanya digunakan untuk merepresentasikan program komputer. Contoh EP untuk mencari komposisi campuran minuman terbaik berdasarkan penilaian tester. Bahan campuran : sugar water, ginger flavoring, strawberry nectar, salt water, pineapple juice, tea, raspberry juice, peach nectar, milk, grapefruit juice, cranberry juice, coffee, apple juice, grape juice, dan chocolate. Banyak percobaan membuktikan kekuatan EP dalam pencarian solusi (Bell & Alexande 207). Pada bidang kesehatan, EP digunakan untuk melatih ANN untuk mendeteksi penyakit kanker (Fogel et al. 1998). EP untuk penjadwalan, misal pada short-term hydrothermal scheduling (Hota, et. al. 1999) dan penjadwalan proyek (Sebt & Alipouri 2013), serta efektif untuk dihibridisasi dengan algoritma lain seperti PSO untuk penjadwalan perbaikan (maintenance) pada pembangkit tenaga listrik (Samuel & Rajan 2013).

Studi Kasus 1: Pohon Keputusan Perhatikan data historis keputusan kredit usaha yang diajukan oleh perusahaan pada sebuah bank sebagai berikut: No Aset (A) Kinerja (Ki) Jaminan (J) Keputusan (Ke) 1 1.5 6 0 0 2 0.7 6 1 0 3 2 7 0 1 4 1.6 5 1 1 5 0.9 8 0 1 6 0.8 8 1 1 Data historis ini berdasarkan penilaian ahli perkreditan bank tersebut. Keputusan untuk menerima (1) atau menolak (0) pengajuan kredit didasarkan atas tiga variabel yaitu: nilai aset (A) yang dipunyai perusahaan, nilai kinerja (Ki) perusahaan setahun terakhir, dan ketersediaan jaminan (J). Bank memutuskan untuk membangun sistem yang bisa secara otomatis memberikan keputusan penerimaan. Sistem ini bisa memberikan output Ke jika misalkan diberikan input A=1.2, Ki=5, dan J=6.

Studi Kasus 1: Pohon Keputusan Perhatikan data historis keputusan kredit usaha : No Aset (A) Kinerja (Ki) Jaminan (J) Keputusan (Ke) 1 1.5 6 0 0 2 0.7 6 1 0 3 2 7 0 1 4 1.6 5 1 1 5 0.9 8 0 1 6 0.8 8 1 1 Solusi GP berupa pohon keputusan (decision tree). Gambar tersebut menunjukkan alur penerimaan/penolakan pengajuan kredit berdasarkan input A, Ki, dan J. Pengecekan dimulai dari node paling atas (root). Masalahnya adalah bagaimana menghasilkan pohon keputusan seperti ini berdasarkan data historis keputusan kredit usaha.

Studi Kasus 1: Pohon Keputusan 1. Representasi Chromosome o Karena solusi yang diinginkan berupa pohon keputusan maka setiap chromosome berupa sebuah binary tree. 2. Inisialisasi dan Evaluasi o Chromosome dari dua individu yang dibangkitkan secara acak diberikan sebagai berikut: individu 2 (P 2 ) individu 1 (P 1 )

Studi Kasus 1: Pohon Keputusan 2. Inisialisasi dan Evaluasi o Evaluasi, jika ada kesesuaian nilai keputusan (Ke) maka diberi skor 1. Karena ada 6 data historis maka fitness-nya berada pada range [0,6]. individu 2 (P 2 ) individu 1 (P 1 ) No Aset Kinerja Jaminan Keputusan P 1 P 2 Keputusan Keputusan (A) (Ki) (J) (Ke) Skor Skor Prediksi Prediksi 1 1.5 6 0 0 1 0 1 0 2 0.7 6 1 0 1 0 0 1 3 2 7 0 1 1 1 1 1 4 1.6 5 1 1 1 1 1 1 5 0.9 8 0 1 1 1 0 0 6 0.8 8 1 1 0 0 0 0 Fitness 3 3

Studi Kasus 1: Pohon Keputusan 3. Crossover, Mutasi, dan Seleksi o Operator reproduksi dan seleksi sama seperti yang digunakan pada slide-slide sebelumnya. o Khusus untuk mutasi, karena pada link terdapat angka yang menunjukkan batasan sebuah variabel maka harus ditambahkan mekanisme mutasi yang digunakan hanya untuk mengubah angka ini seperti berikut:

Tugas Kelompok 1. Jelaskan apakah output dari GP? 2. Apakah komponen utama pada representasi solusi dari GP? 3. Untuk kasus pada tabel dari slide ke-14, hitunglah fitness untuk chromosome P berikut: 4. Selesaikan studi kasus pada Slide ke-7. Siklus Genetic Programming sampai 2 generasi dengan menggunakan GP! 5. Selesaikan studi kasus pada tabel dari slide ke-14. Studi Kasus: Pohon Keputusan sampai 2 generasi dengan menggunakan GP!

Tugas Kelompok 6. Dengan menggunakan EP, susun binary tree untuk data pada tabel berikut! x1 x2 y 3 4 18 4 2 24 6 3 51 6 4 48 7 1 87 8 2 104 9 3 123 10 4 144 10 6 128 11 9 143

Terimakasih Imam Cholissodin imam.cholissodin@gmail.com