IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan...

73
IMPLEMENTASI ALGORITMA GENETIKA DALAM PENENTUAN KANDIDAT MODEL SKRIPSI Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer Oleh : Yavandy Hosea NIM : 033124051 PROGRAM STUDI ILMU KOMPUTER FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007

Transcript of IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan...

Page 1: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

IMPLEMENTASI ALGORITMA GENETIKA

DALAM PENENTUAN KANDIDAT MODEL

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Sains

Program Studi Ilmu Komputer

Oleh :

Yavandy Hosea

NIM : 033124051

PROGRAM STUDI ILMU KOMPUTER

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2007

Page 2: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu
Page 3: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu
Page 4: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Perjalanan Hidup

Permulaan Setiap hari adalah saat yang tepat untuk mengatakan pada diri kita sendiri, "Biarkan petualangan baru dimulai"

Antusiasme

Sikap antusiasme tidak hanya menolong kita untuk meraih impian, namun juga membuat perjalanan kita menjadi lebih menyenangkan

Keseimbangan

Setiap putaran pada jalan memerintahkan kita untuk menjaga keseimbangan kita pada perjalanan selanjutnya

Keberanian

Keberanian bertumbuh semakin kuat bila kita mau menghadapi semua tantangan hidup

Sukses

Kesuksesan terletak pada mereka yang meraih sesuatu lebih dari diri mereka sendiri

Skripsi ini kupersembahkan kepada bos besar saya di surga ; Lord Jesus, keluargaku tersayang (mama ; Lilian H, papa ; Yap Cu Leng, ce Ningsih, ce Vinny, adikku Fanny H, keponakanku Elgina, Michael, Baby) kalian adalah

semangat dalam hidupku, terima kasih atas segala doa, kasih sayang, serta semangat yang telah diberikan selama ini.

Almamaterku tercinta

Page 5: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu
Page 6: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu
Page 7: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

IMPLEMENTASI ALGORITMA GENETIKA

DALAM PENENTUAN KANDIDAT MODEL

INTISARI

Salah satu cara untuk mengefisiensikan pemakaian energi untuk

pengkondisian temperatur di dalam rumah adalah dengan mengenali perilaku dan

karakter perubahan temperaturnya. Pengenalan karakter dapat dilakukan dengan

mencari model perubahan temperatur di dalam rumah tersebut. Ada berbagai cara

untuk melakukan pemodelan, diantaranya adalah dengan teknik identifikasi

berdasarkan hasil pengukuran masukan-keluarannya.

Pada penulisan tugas akhir ini disajikan hasil penelitian yaitu pengembangan

teknik identifikasi sistem dengan menggunakan algoritma genetika. Algoritma

genetika yang dikembangkan dalam penelitian ini menggunakan fungsi fitness

yang didasarkan pada residual antara keluaran sistem dan keluaran model.

Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu rumah

model yang temperaturnya dapat divariasikan.

Dengan teknik identifikasi menggunakan algoritma genetika, karakter

perubahan temperatur dalam rumah model dapat didekati menggunakan model

Auto Regressive Moving Average with Exogenous Input (ARMAX). Hasil yang

diperoleh untuk proses pemanasan dan pendinginan dalam rumah model adalah

model dengan struktur ARMAX orde 3. Model tersebut diperoleh dengan nilai

fitness terbaik 0,89 untuk proses pemanasan dan 0,98 untuk proses pendinginan.

Kata Kunci : Algoritma Genetika, ARMAX, Pemodelan, Sistem Identifikasi.

Page 8: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

IMPLEMENTATION OF GENETIC ALGORITHM IN

DETERMINING MODEL CANDIDATE

ABSTRACT

One method for decreasing energy consumption to control the temperature

in a house is to identify it’s characteristics first. To identify the characteristics we

have to find the model of the temperature changes in that house. There are many

methods to build a model. One of them is based on input-output measurement.

This undergraduate thesis presents the result of a research about system

identification technique using genetic algorithm. The fitness function is the

residue of the output of the system and the model. The measurement of input-

output in this research was applied in ‘model house representing heating/cooling

system’ with varying temperature.

By using genetic algorithm and ARMAX (Auto Regressive Moving Average

with Exogenous Input) approach we can identify the characteristic of the model

house. The result is 3rd order ARMAX structure model , with the fitness 0,89 for heating process and 0.98 for cooling process.

Keyword : Genetic Algorithm, ARMAX, Modeling, Identification System.

Page 9: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

KATA PENGANTAR

Puji syukur kepada Allah Bapa yang maha baik sehingga penulis dapat

menyelesaikan skripsi ini dengan lancar. Atas segala kekuatan dan kesehatan yang

diberikan-Nya, baik sebelum ataupun selama penulis mengerjakan skripsi ini.

Penulisan skripsi ini disusun sebagai salah satu syarat untuk memperoleh

gelar Sarjana Sains (S.Si) Program Studi Ilmu Komputer di Fakultas Sains dan

Teknologi Universitas Sanata Dharma .

Pada kesempatan ini, tidak lupa penulis menyampaikan ucapan terima

kasih yang sebesar-besarnya kepada :

Bapak Haris Sriwindono selaku dosen pembimbing penulisan skripsi dan

dosen pembimbing akademik. Terima kasih atas segala bantuan, kesabaran

serta waktu yang telah disediakan kepada penulis selama penulisan skripsi ini.

Romo Gregorius Heliarko selaku Dekan Fakultas Sains dan Teknologi.

Seluruh dosen-dosen di Fakultas Sains dan Teknologi. Terima kasih atas

semua bimbingan, kesabaran, pengetahuan dan kesempatan yang saya terima

sejak menjadi mahasiswa di Fakultas Sains dan Teknologi.

Pejabat Struktural di Fakultas Sains dan Teknologi. Terima kasih atas segala

kemudahan dan fasilitas yang diberikan kepada penulis selama belajar di

Fakultas Sains dan Teknologi.

Seluruh karyawan Fakultas Sains dan Teknologi. Terima kasih atas

kemudahan-kemudahan yang selama ini saya terima.

Page 10: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Bapak Purwanta selaku kepala PPKKN, yang telah memberikan kemudahan

dalam menjalankan KKN, serta ibu Santi selaku koordinator pelaksanaan

KKN. Terima kasih atas segala kesempatan dan pembelajaran yang diberikan.

Temen spesialku ATA. Hidup ini jadi hampa tanpamu.

Sahabatku Clara, terima kasih atas semangat yang telah diberikan selama ini.

Teman-teman kos Patria : Sugi, Henry, Edo, Andis, Bendot, Omen, Willy,

Gompis, Dedek, Dadit, Yossi, Yandi, dan Seul. Terima kasih atas

kebersamaannya selama ini

Teman – teman ku angkatan 2003. Terima kasih atas kebersamaannya.

Sahabatku Ronald, terima kasih atas kebersamaan dan pengalaman berharga

yang saya dapat dari kamu.

Buat my little friends ; Miki, pak gendut, bu gendut, si gendut, si redcap, si

putih, si merah, si pesolek dan si alien.

Semua pihak yang tidak dapat disebutkan satu persatu yang telah membantu

dalam penyelesaian skripsi ini

Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan. Walaupun

demikian penulis berharap semoga skripsi ini dapat bermanfaat bagi masyarakat

dan perkembangan ilmu pengetahuan alam.

Penulis

[email protected]

Page 11: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

DAFTAR ISI

Halaman HALAMAN JUDUL...................................................................................... i HALAMAN PERSETUJUAN PEMBIMBING............................................. ii HALAMAN PENGESAHAN........................................................................ iii HALAMAN PERSEMBAHAN..................................................................... iv PERNYATAAN KEASLIAN KARYA......................................................... v PERNYATAAN PERSETUJUAN PUBLIKASI........................................... vi ABSTRAK...................................................................................................... vii ABSTRACT.................................................................................................... viii KATA PENGANTAR.................................................................................... ix DAFTAR ISI................................................................................................... xi

BAB I PENDAHULUAN............................................................................... 1 A. Latar Belakang.......................................................................................... 1 B. Rumusan Masalah..................................................................................... 5 C. Batasan Masalah....................................................................................... 5 D. Tujuan Penelitian...................................................................................... 6 E. Metodologi Penelitian............................................................................... 7 F. Sistematika Penulisan............................................................................... 8

BAB II DASAR TEORI................................................................................. 9 A. Latar Belakang Biologi............................................................................. 9B. Algoritma Genetika.................................................................................. 11 1. Deskripsi Algoritma Genetika............................................................ 12 2. Struktur Umum Algoritma genetika................................................... 14 3. Operator dan fungsi evaluasi.............................................................. 17C. Deskripsi Implementasi AG dalam Penentuan Kandidat Model……….. 19

BAB III ANALISIS DAN PERANCANGAN SISTEM………………….... 20 A. Pendahuluan……………………………………………………………. 20B. Analisis Sistem…………………………………………………………. 20 1. Representasi Masalah………………………………………………. 21 2. Pembangkitan Kromosom………………………………………….. 22 3. Penentuan Nilai Fitnes untuk masing-masing Kromosom…………. 22 4. Pemilihan Kromosom untuk dijadikan Orangtua............................... 22 5. Proses Reproduksi untuk Mendapatkan kromosom-kromosom yang Baru............................................................................................ 23C. Perancangan…………………………………………………………….. 23 1. Representasi Kromosom..................................................................... 23 2. Pembangkitan Kromosom.................................................................. 24 3. Penentuan nilai fitness untuk masing-masing kromosom................... 24 4. Pemilihan kromosom untuk dijadikan orangtua................................. 24 5. Operasi Persilangan atau Crossover .................................................. 25 6. Proses Mutasi...................................................................................... 28

Page 12: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Halaman 7. Ilustrasi Masalah Penentuan Kandidat Model.................................... 288. Perancangan Menu............................................................................. 329. Perancangan Pemrosesan Algoritma Genetika.................................. 3310. Perancangan Tentang Algoritma Genetika........................................ 39 11. Perancangan Bantuan......................................................................... 39

BAB IV IMPLEMENTASI DAN ANALISA HASIL PROGRAM.............. 41 A. Flowchart.................................................................................................. 41B. Implementasi Program.............................................................................. 42 1. Implementasi Reperesentasi Kromosom............................................. 42 2. Implementasi Pembangkitan Populasi Awal....................................... 42 3. Implementasi Penginputan Data Masukan Tegangan......................... 43 4. Implementasi Pembacaan String Berkas Menjadi Numerik............... 45 5. Implementasi Pemilihan Kromosom untuk dijadikan Orangtua........ 46 6. Implementasi Operasi Persilangan atau Crossover............................ 47 7. Implementasi Operasi Mutasi............................................................. 48C. Implementasi Antar Muka........................................................................ 50D. Hasil dan Pembahasan.............................................................................. 55

BAB V PENUTUP........................................................................................ 60 A. Kesimpulan............................................................................................... 60 B. Saran......................................................................................................... 60 DAFTAR PUSTAKA..................................................................................... 61

Page 13: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

BAB I

PENDAHULUAN

A. Latar Belakang

Sejak tahun 1960, terdapat perhatian untuk menirukan kehidupan

makhluk hidup. Hal tersebut bertujuan untuk menyelesaikan berbagai macam

masalah optimasi yang mempunyai kompleksitas tinggi. Algoritma

Evolusioner adalah simulasi evolusioner proses alam makhluk hidup pada

teknik optimasi stokastik. Saat ini, terdapat tiga topik utama dalam penelitian

yaitu : genetic algorithms (GA), evolutionary programming (EP), dan

evolution strategies (ES). Diantara ketiga topik tersebut, algoritma genetika

merupakan algoritma evolusioner yang paling banyak digunakan.

Algoritma genetika pertama kali dikenalkan oleh John Holland dan

murid-muridnya di Universitas Michigan pada tahun 1960. Algoritma

genetika adalah algoritma yang berdasarkan konsep teori evolusi alam dan

genetika. Teori evolusi alam dan genetika pertama kali ditemukan oleh

Charles Darwin. Dalam teori genetika disebutkan bahwa sifat tertentu dari

suatu makhluk hidup ditentukan oleh susunan gen dalam kromosom makhluk

hidup tersebut. Teori genetika dalam algoritma genetika digunakan untuk

merepresentasikan setiap solusi dari masalah yang ada, karena setiap solusi

diandaikan mempunyai kromosom yang berbeda dengan solusi lainnya.

Sedangkan evolusi alam adalah proses seleksi terhadap anggota dari berbagai

populasi berdasarkan tingkat ketahanan hidup suatu makhluk hidup. Proses-

Page 14: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

proses dalam evolusi alam yang digunakan dalam algoritma genetika adalah

seleksi alam dan reproduksi. Proses seleksi alam digunakan untuk memilih

suatu solusi yang baik, sedangkan proses reproduksi digunakan untuk

menghasilkan solusi baru yang diharapkan mempunyai kromosom lebih baik

dari solusi sebelumnya.

Algoritma genetika diawali dengan himpunan solusi yang disebut

populasi. Setiap individu pada populasi disebut kromosom yang

menggambarkan sebuah solusi dari masalah yang akan diselesaikan. Sebuah

kromosom dapat dinyatakan dalam simbol string misalnya kumpulan string

bit. Kromosom-kromosom dapat berubah terus-menerus yang disebut juga

regenerasi. Pada setiap generasi, kromosom dievaluasi dengan menggunakan

alat ukur yang disebut fitness (tingkat kesesuaian). Untuk membuat generasi

berikutnya, kromosom-kromosom baru yang disebut offspring (keturunan)

terbentuk dengan cara menggabungkan dua kromosom dari generasi sekarang

dengan menggunakan operator crossover (persilangan) atau mengubah sebuah

kromosom dengan menggunakan operator mutasi. Generasi baru dibentuk

dengan cara seleksi yang dilakukan terhadap parent dan offspring berdasarkan

nilai fitness. Kromosom dengan nilai fitness yang tinggi ini akan memberikan

probabilitas yang tinggi untuk bereproduksi pada generasi selanjutnya.

Sehingga untuk setiap generasi pada proses evolusi, fungsi fitness yang

mensimulasikan seleksi alam, akan menekan populasi kearah fitness yang

meningkat. Setelah beberapa generasi, algoritma ini akan konvergen kearah

Page 15: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

bentuk kromosom yang lebih baik, dengan harapan dapat menyatakan solusi

optimal dari masalah yang diselesaikan.

Algoritma genetika sangat tepat digunakan untuk penyelesaian

masalah optimasi yang kompleks dan sukar diselesaikan dengan menggunakan

metode yang konvensional. Sebagaimana halnya proses evolusi di alam, suatu

algoritma genetika yang sederhana umumnya terdiri dari tiga operator yaitu :

operator reproduksi, operator crossover (persilangan) dan operator mutasi.

Struktur umum dari suatu algoritma genetika dapat didefinisikan dengan

langkah-langkah sebagai berikut :

1. Membangkitkan populasi awal, populasi awal ini dibangkitkan secara

random sehingga didapatkan solusi awal. Populasi itu sendiri terdiri dari

sejumlah kromosom yang merepresentasikan solusi yang diinginkan.

2. Membentuk generasi baru, dalam membentuk generasi baru digunakan tiga

operator yang telah di sebutkan di atas yakni operator reproduksi/seleksi,

crossover, dan mutasi. Proses ini dilakukan berulang-ulang sehingga

didapatkan jumlah kromosom yang cukup untuk membentuk generasi baru

dimana generasi baru ini merupakan representasi dari solusi baru.

3. Evaluasi solusi, proses ini akan mengevaluasi setiap populasi dengan

menghitung nilai fitness setiap kromosom dan mengevaluasinya sampai

terpenuhi kriteria berhenti. Bila kriteria berhenti belum terpenuhi maka

akan dibentuk lagi generasi baru dengan mengulangi langkah 2. Beberapa

kriteria berhenti yang sering digunakan antara lain :

Page 16: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

* Berhenti pada generasi tertentu.

* Berhenti setelah dalam beberapa generasi berturut-turut didapatkan

nilai fitness tertinggi tidak berubah.

* Berhenti bila dalam n generasi berikut tidak didapatkan nilai

fitness yang lebih tinggi.

Masalah Pengaturan kondisi ruangan dalam sebuah gedung atau rumah

dilakukan dengan memperhatikan beberapa hal yang diantaranya adalah

konsumsi energi. Konsumsi energi juga dipengaruhi oleh beberapa hal yaitu

temperatur luar ruangan, aliran udara, pengkondisian udara yaitu pendinginan

atau pemanasan. Pengaturan temperatur suatu rumah untuk mengatur keadaan

udara agar tetap memenuhi kondisi dan persyaratan tertentu telah banyak

dilakukan. Salah satu cara agar pemakaian energi dapat efisen, maka perilaku

dan karakter sistem yaitu perubahan dari panas ke dingin dan sebaliknya harus

dikenali terlebih dahulu. Salah satu cara untuk mengenali karakter sistem

adalah dengan melakukan pemodelan sistem. Untuk keperluan tersebut

biasanya pengamatan dilakukan pada suatu rumah model. Ada beberapa

metode yang dapat digunakan untuk melakukan pemodelan, yang diantaranya

adalah dengan teknik identifikasi sistem dengan mencari hubungan antara

masukan dan keluaran. Beberapa algoritma dapat diterapkan untuk

melakukan teknik identifikasi. Dalam penulisan ini digunakan teknik

identifikasi dengan menggunakan algoritma genetika. Pemodelan dengan

metode ini harus ditentukan terlebih dahulu kandidat model dengan struktur

model yang telah ditentukan (Johanson,1993).

Page 17: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

B. Rumusan Masalah

Berdasarkan latar belakang permasalahan yang terjadi maka rumusan

masalahnya adalah : “Bagaimana teknik identifikasi dengan menggunakan

Algoritma Genetika menentukan karakteristik rumah model yang optimum

pada proses pemanasan atau pendinginan ?.”

C. Batasan Masalah

Dalam pembahasan topik tersebut, akan dilakukan pembatasan

masalah sebagai berikut :

1. Struktur kandidat model dibentuk dengan orde yang telah ditetapkan yakni

na=3, nb=2, nc=2. Untuk proses pemanasan strukturnya adalah :

Y(t) a1 y(t 1) a2 y(t 2) a3 y(t 3) b1 u(t 2) b2u(t 3) c1e(t) c2e(t 1)

sedangkan untuk proses pendinginan :

Y (t) a1 y(t 1) a2 y(t 2) a3 y(t 3) b1 u(t 1) b2 u(t 2) c1e(t) c2 e(t 1)

2. y(t) dan u(t) merupakan data masukan tegangan yang diinputkan melalui

file, sedangkan e(t) merupakan nilai random yang berkisar antara 3%-5%

dari nilai rata-rata y(t).

3. Untuk tiap kromosom dalam populasi digunakan data simulasi, yakni

dengan mengenerate secara random. Struktur kromosom yang dipakai

dalam pemrosesan algoritma genetika mengikuti persamaan diatas yakni :

{ [ a1 a2 a3 ] [ b1 b2] [ c1 c2 ] }.

4. Kriteria berhenti dalam proses evolusi adalah berhenti pada generasi

tertentu (iterasi tertentu).

Page 18: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

5. Fungsi fitness yang digunakan dalam pencarian kandidat model terbaik

dinyatakan pada persamaan berikut :

f 1 1E

dengan

n

e(i) 2

E i 1

n

6. Implementasi sistem menggunakan Matlab 6.5.1 dari MathWork.

7. Pembuatan aplikasi sebatas prototype.

D. Tujuan Penelitian

Tujuan yang diharapkan dengan terselesaikannya tugas akhir ini adalah

membuat perangkat lunak yang dapat menentukan kandidat model optimum

pada sebuah sistem yang dikenai proses pemanasan atau pendinginan dengan

teknik identifikasi menggunakan algoritma genetika.

Page 19: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

E. Metodologi Penelitian

Metode yang digunakan untuk menyelesaikan masalah tersebut adalah

dengan menggunakan metode Waterfall, dengan langkah-langkah sebagai

berikut:

1. Pengumpulan Kebutuhan Sistem

Pada tahap ini yang dilakukan adalah mengumpulkan data-data yang

terkait dengan sistem antara lain : data inputan yang merupakan hasil

ujicoba penelitian, perangkat keras serta perangkat lunak yang

dibutuhkan.

2. Rancangan Sistem

Pada tahap ini digunakan untuk menyusun modul-modul yang dibutuhkan

dalam sistem, antara lain : struktur data dan algoritma yang digunakan,

prosedur detail, karakteristik antar muka dan keterkaitan antar modul

(model kerja sistem).

3. Penulisan Program

Penulisan sistem merupakan tahap untuk merepresentasikan rancangan

sistem ke dalam program.

4. Pengujian Terhadap Sistem

Tahap ini dilakukan untuk mengetahui apakah sistem sesuai dengan yang

diinginkan, juga digunakan untuk mengetahui kesalahan yang masih

mungkin terjadi.

Page 20: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

F. Sistematika Penulisan

a. Bab I Pendahuluan

Bab ini berisi pendahuluan yang akan membahas tentang latar belakang

masalah, rumusan masalah, batasan masalah, tujuan, metodologi dan

sistematika penulisan.

b. Bab II Dasar Teori

Bab ini berisi landasan teori. Dalam landasan teori akan menjelaskan

tentang beberapa konsep yang digunakan dalam memecahkan masalah

tersebut. Dalam konsep tersebut akan dibahas teori yang mendasari dalam

pembuatan aplikasi. Diantaranya pengertian algoritma genetika, seleksi

(reproduksi), crossover, mutasi, probabilitas crossover, probabilitas

mutasi.

c. Bab III Analisis dan Perancangan Sistem

Bab ini berisi analisis dan perancangan aplikasi. Dalam analisis ini akan

dibahas tentang kebutuhan aplikasi sedangkan untuk perancangan aplikasi

akan dibahas tentang rancangan bentuk aplikasi (user interface).

d. Bab IV Implementasi dan Analisa Hasil Program

Berisi tentang hasil pembuatan program dan penjelasan atau analisis

program, serta beberapa contoh keluaran dari data yang dimasukkan serta

pembahasan program.

e. Bab V Penutup

Berisi beberapa kesimpulan dan saran berdasarkan hasil pembuatan

program dan pembahasan program.

Page 21: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

BAB II

DASAR TEORI

A. Latar Belakang Biologi

Algoritma genetika adalah algoritma yang dikembangkan berdasarkan

konsep genetika dan teori evolusi alam. Adapun konsep genetika dan teori

evolusi alam tersebut dikemukakan oleh Charles Darwin yang merupakan

seorang ahli biologi. Algoritma genetika sendiri diperkenalkan oleh John

Holland dan teman-temannya di Universitas Michigan pada tahun 1960. Dari

konsep genetika disebutkan bahwa setiap organisme merupakan suatu sistem

yang terdiri dari organ-organ, sedangkan dalam setiap organ terdapat

sekumpulan sel yang membentuk organ. Setiap sel dibagi lagi menjadi

sejumlah kromosom. Setiap kromosom terdiri dari gen-gen yang merupakan

blok DNA. Blok DNA berperan menghasilkan suatu kharakteristik / sifat

tertentu dari makhluk hidup. Karakteristik antara makhluk hidup yang satu

dengan yang lain berbeda. Contohnya : warna kulit, bentuk rambut, dan

sebagainya. Setiap gen terdiri dari sekumpulan kemungkinan allele ( sifat

yang mungkin dibawa gen ) yang masing-masing membawa berbagai variasi

dari karakteristik tertentu. Setiap gen memiliki posisi pada kromosom yang

disebut locus.

Sedangkan evolusi alam adalah proses seleksi terhadap anggota dari

berbagai populasi di bumi berdasar tingkat ketahanan hidup suatu organisme.

Menurut Darwin dalam seleksi alam ini ada pihak yang dapat bertahan hidup

Page 22: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

karena ia mempunyai tingkat ketahanan hidup yang lebih tinggi dibandingkan

dengan yang lainnya, dan pihak yang tidak bisa bertahan hidup (mati) karena

mempunyai tingkat ketahanan hidup yang rendah. Jadi dengan kata lain

seleksi alam adalah suatu proses pencarian terhadap anggota populasi yang

dapat bertahan hidup yang sifatnya diturunkan dari genotif (kumpulan gen-gen

tertentu dalam kromosom) untuk mendapatkan struktur yang efisien yang

berguna untuk melaksanakan kegiatan yang diperlukan untuk dapat bertahan

hidup. Proses-proses yang terjadi dalam evolusi alam menjadi konsep dasar

dalam algoritma genetika adalah :

1. Seleksi Alam

Seleksi alam adalah proses pencarian terhadap anggota populasi yang

dapat bertahan hidup karena mereka dapat menyesuaikan diri dengan

lingkungannya.

2. Reproduksi

Reproduksi adalah salah satu proses biologi untuk mempertahankan

kelestarian suatu spesies karena dengan melakukan reproduksi akan

didapatkan keturunan yang sifatnya diturunkan dari induknya. Proses

reproduksi ini dapat dilakukan oleh dua individu ataupun satu individu.

Contoh-contoh proses reproduksi adalah :

a. Crossover (perkawinan silang)

Perkawinan silang adalah suatu proses pertukaran gen dari dua

individu yang mempunyai karakteristik yang berbeda dari induknya

dan diharapkan lebih baik dari induknya.

Page 23: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

b. Mutation (Mutasi)

Mutasi adalah proses perubahan materi genetik dari suatu species (satu

individu) dikarenakan individu tersebut melakukan penyesuaian

terhadap lingkungannya(adaptasi) untuk dapat bertahan hidup. Contoh

metode mutasi yang digunakan dalam algoritma genetika adalah

inversion, insertion dan dispalement.

Ruang Pencarian

Ketika mencari penyelesaian suatu masalah, maka dicari solusi yang

terbaik dari semua kemungkinan solusi yang ada. Kumpulan semua

kemungkinan solusi tersebut berada dalam ruang pencarian (search space).

Setiap titik pada ruang pencarian merupakan satu solusi yang mungkin

(feasible solution) dan dapat diberi pengenal dalam bentuk nilai atau fitness-

nya terhadap masalah yang akan diselesaikan. Proses pencarian solusi menjadi

rumit karena tidak diketahui dimana harus mencari atau pencarian dimulai dari

mana. Banyak metode yang dikenal untuk menemukan solusi yang layak,

diantaranya adalah algoritma genetika, yang dibuat berdasarkan analogi

mekanisme yang terjadi terhadap proses evolusi.

B. Algoritma Genetika

Algoritma genetika merupakan suatu metode penyelesaian yang

tergolong heuristic dimana algoritma genetika menganalogikan evolusi biologi

yang mempunyai sifat dan cara kerja meniru proses evolusi alam. Ciri-ciri

dari algoritma heuristic adalah selalu menemukan solusi yang baik walaupun

Page 24: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

belum tentu merupakan solusi yang optimal atau terbaik dan lebih cepat serta

mudah untuk diimplementasikan daripada algoritma terperinci (eksak) yang

diketahui menjamin memberikan solusi optimal. Sedangkan untuk ciri-ciri

dari algoritma genetika adalah bekerja dengan sebuah himpunan pengkodean

solusi, mencari solusi dari suatu populasi dengan menggunakan informasi

fungsi fitness, serta menggunakan operasi random dengan aturan perubahan

probabilitas, bukan operasi dengan aturan tertentu dalam setiap iterasi.

Algoritma genetika dapat menyelesaikan masalah optimasi yang

kompleks. Beberapa aplikasi algoritma genetika yaitu job-shop scheduling

problem, sistem dinamikal nonlinear, perancangan jaringan syaraf tiruan,

lintasan robot, program LISP, strategi perencanaan, penemuan bentuk

molekul-molekul protein, dan fungsi untuk pembuatan gambar-gambar.

1. Deskripsi Algoritma Genetika

Algoritma genetika adalah teknik pencarian stokastik yang

mendasarkan pada mekanisme seleksi alam dan sifat genetika. Dalam

implementasinya algoritma genetika meniru beberapa proses yang terdapat

pada evolusi alam. Evolusi tersebut terjadi pada kromosom. Individu-

individu yang ada pada saat tertentu dalam suatu populasi merupakan

individu yang berhasil mempertahankan hidupnya, sedangkan yang lemah

akan punah. Individu-individu yang bertahan akan membentuk individu-

individu baru.

Teori dasar evolusi tersebut bila diimplementasikan dalam bentuk

algoritma maka diharapkan mampu menyelesaikan masalah-masalah yang

Page 25: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

mempunyai kompleksitas tinggi dengan cara yang sama seperti yang

dilakukan oleh makhluk hidup melalui evolusi.

Istilah-istilah yang digunakan algorima genetika, dijelaskan pada

tabel dibawah ini :

Tabel 2.1 Penjelasan istilah-istilah yang digunakan dalam

algoritma genetika

Istilah dalam algoritma

genetika

Keterangan

Populasi Himpunan solusi

Kromosom Solusi

Gen Bagian dari solusi

Parent Solusi yang akan dikenakan proses

peersilangan atau mutasi

Offspring Solusi baru yang akan dihasilkan

melalui proses persilangan atau mutasi.

Persilangan Proses yang melibatkan dua solusi

untuk mendapatkan solusi baru

Mutasi Proses yang melibatkan satu solusi

untuk mendapatkan solusi baru.

Page 26: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

2. Struktur Umum Algoritma Genetika

Bila P(t) dan C(t) adalah induk dan keturunan pada generasi t,

struktur umum algoritma genetikanya adalah sebagai berikut :

Procedure Algoritma Genetika

begin

t 0

initialize P(t);

evaluate P(t);

while (not terminate condition) do

recombine P(t) to yield C(t);

evaluate C(t);

select P(t+1) from P(t) and C(t);

t t + 1;

end

end

Struktur umum algoritma genetika dapat pula dideskripsikan seperti pada

gambar 2.1 :

Page 27: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Ilustrasi Algoritma Genetika

crossover

cromosomes

110010 1010 101110 1110

solutions

encoding 1100101010 1011101110 0011011001 1100110001

110010 1110 101110 1010

mutation

0011011001

0011001001

new population

selection

offspring

1100101110 1011101010 0011001001

decoding

solutions

Fitness computation

Gambar 2.1. Struktur Umum Algoritma Genetika

Page 28: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Keterangan gambar 2.1

Dalam menyelesaikan suatu masalah , algoritma genetika diawali

dengan menginisialisasi himpunan solusi yang dibangkitkan secara

random. Himpunan solusi ini disebut populasi. Setiap individu pada

populasi disebut kromosom yang menggambarkan sebuah solusi dari

masalah yang akan diselesaikan. Sebuah kromosom dapat dinyatakan

dalam simbol string misalnya kumpulan string bilangan pecahan.

Kromosom-kromosom dapat berubah terus-menerus yang disebut juga

regenerasi. Pada setiap generasi, kromosom dievaluasi dengan

menggunakan alat ukur yang disebut fitness (tingkat kesesuaian). Untuk

membuat generasi berikutnya, kromosom-kromosom baru yang disebut

offspring (keturunan) terbentuk dengan caramenggabungkan dua

kromosom dari generasi sekarang dengan menggunakan operator

crossover (persilangan) atau mengubah sebuah kromosom dengan

menggunakan operator mutasi. Generasi baru terbentuk dengan cara

seleksi yang dilakukan terhadap parents dan offspring berdasarkan nilai

fitness-nya dan menghilangkan yang lainnya. Kromosom-kromosom yang

lebih sesuai memiliki probabilitas untuk diplih. Setelah beberapa generasi,

algoritma ini akan konvergen ke arah bentuk kromosom yang lebih baik,

dengan harapan dapat menyatakan solusi optimal dari permasalahan yang

diselesaikan.

Page 29: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

3. Operator dan Fungsi Evaluasi

Biasanya, inisialisasi diasumsikan secara random. Rekombinasi

melibatkan crossover dan mutasi untuk menghasilkan offspring. Pada

kenyataannya, hanya ada dua jenis operasi pada algoritma genetika, yaitu

operasi genetik (crossover/persilangan dan mutasi) dan operasi evolusi

(seleksi). Persilangan berfungsi menggabungkan dua string induk yang

berbeda menjadi dua string keturunan yang berbeda dengan induknya.

Mutasi berperan dalam melakukan perubahan yang bukan disebabkan oleh

persilangan. Pada teori evolusi, mutasi ini merupakan operator kromosom

yang memungkinkan makhluk hidup melakukan penyesuaian dengan

lingkungannya walaupun lingkungan barunya tidak sesuai dengan

lingkungan induknya semula.

Faktor terbesar dalam teori evolusi yang menyebabkan suatu

kromosom bertahan, punah, melakukan persilangan atau mutasi adalah

lingkungan. Pada algoritma genetika, faktor lingkungan diperankan oleh

fungsi evaluasi. Fungsi evaluasi menggunakan kromosom sebagai

masukan dan menghasilkan angka tertentu yang menunjukkan kinerja pada

masalah yang diselesaikan. Pada masalah optimasi, fungsi evaluasi adalah

fungsi tujuan (objective function). Nilai fungsi evaluasi ini disebut nilai

kesesuaian (fitness value). Nilai inilah yang akan menentukan apakah

suatu string akan muncul pada generasi berikutnya atau tidak. Dalam

menyelesaikan masalah dengan menggunakan algoritma genetika perlu di

Page 30: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

definisikan terlebih dahulu beberapa parameter yang diperlukan, antara

lain :

a. Probabilitas Crossover

Probabilitas crossover ini juga dapat menunjukkan peluang terjadi

proses crossover (persilangan) dalam populasi pada setiap generasi.

Biasanya besarnya probabilitas crossover berkisar antara 10 – 90 %

b. Probabilitas Mutasi

Probabilitas mutasi menunjukkan peluang terjadinya proses mutasi

dari jumlah tertentu proses crossover yang tejadi pada populasi.

c. Population size

Population size menunjukkan jumlah kromosom yang ada dalam

populasi. Pada umumnya besarnya population size yang digunakan

adalah 3 – 20 kromosom.

Page 31: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

C. Deskripsi Implementasi Algoritma genetika dalam Penentuan Kandidat

Model

Masalah penentuan Kandidat Model merupakan persoalan pencarian

model matematika dalam hal ini adalah struktur kromosom yang memiliki

nilai fitness yang optimum. Diketahui struktur dari model yang akan dicari

nilai variabelnya, misalnya untuk proses pemanasan dinyatakan dengan :

Y(t) a1 y(t 1) a2 y(t 2) a3 y(t 3) b1 u(t 2) b2u(t 3) c1e(t) c2e(t 1)

Dari struktur diatas terlihat bahwa orde untuk a = 3 dan b = c = 2, maka

algoritma genetika dapat diimplementasikan untuk menentukan model terbaik

dengan menentukan nilai parameter-parameter a, b dan c. Kromosom yang

akan diproses dengan algoritma genetika adalah {[a1 a2 a3]; [b1 b2 ]; [ c1

c2]} dan {[a1 a2 a3]; [b1 b2 ]; [ c2 c2]}masing-masing untuk proses

pemanasan dan pendinginan.

Nilai parameter a, b dan c dibangkitkan (generate) secara random

dan diolah dengan data masukan tegangan menghasilkan sebuah nilai yang

disimpan pada variabel E, nilai tersebut kemudian dimasukkan pada fungsi

fitness untuk mencari nilai fitness dari parameter sebuah kromosom. Untuk

populasi awal kromosom dicari semua nilai fitness awalnya. Setelah itu

menggunakan operator seleksi, operator crossover dan operator mutasi dalam

proses evolusi/pencarian nilai fitness yang tinggi. Nilai fitness tertinggi dalam

n generasi tertentu akan menjadi kandidat model terpilih.

Page 32: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

BAB III

ANALISIS DAN PERANCANGAN SISTEM

A. Pendahuluan

Dalam menyelesaikan masalah penentuan kandidat model dengan

menggunakan Algoritma Genetika, metode yang digunakan untuk membuat

perangkat lunak adalah metode waterfall. Tahap-tahap dalam metode ini

adalah analisis kebutuhan, perancangan, pengkodean, dan pengujian. Bahasa

pemrograman yang akan digunakan adalah Matlab 6.5.1.

B. Analisis Sistem

Masalah penentuan kandidat model merupakan masalah optimasi

dalam pencarian model matematika. Dalam masalah penentuan kandidat

model ini terdapat m kromosom, dimana setiap setiap kromosom terdiri dari

tujuh gen (parameter). Tujuan yang ingin dicapai pada masalah penentuan

kandidat model yaitu mencari nilai parameter yang mengakibatkan nilai

fitness struktur model menjadi optimum

Algoritma genetika merupakan algoritma yang berguna untuk

memecahkan masalah optimasi yang kompleks, dengan menggunakan prinsip

teori genetika dan seleksi alam. Oleh sebab itu, algoritma genetika dapat

digunakan untuk menyelesaikan masalah penentuan kandidat model walaupun

ada kemungkinan tidak dapat menemukan penyelesaian yang terbaik, tetapi

setidaknya mendekati penyelesaian yang terbaik.

Page 33: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Langkah pertama yang diambil untuk menyelesaikan penentuan

kandidat model dengan menggunakan algoritma genetika adalah membuat

populasi awal dan menghitung nilai fitness awal untuk masing-masing

kromosom. Langkah kedua yaitu memilih secara acak dua anggota populasi,

kedua anggota populasi tersebut dikombinasikan dengan menggunakan

operasi persilangan untuk menghasilkan dua individu baru yang berbeda yang

diharapkan mempunyai nilai fitness yang tinggi. Jika dengan menggunakan

operasi persilangan belum menemukan penyelesaian yang terbaik, maka akan

dipilih salah satu anggota populasi yang memiliki nilai fitness terjelek dan

anggota populasi yang terpilih ini akan dikenakan operasi mutasi. Kadang-

kadang operasi mutasi dapat menemukan solusi yang lebih baik dari pada

operasi persilangan.

Di bawah ini akan dituliskan secara rinci penggunaan algoritma

genetika untuk menyelesaikan Implementasi Algoritma Genetika dalam

Penentuan Kandidat Model.

1. Representasi Masalah

Hal terpenting dalam menyelesaikan masalah optimasi adalah pemodelan

masalah atau representasi masalah ke dalam suatu model yang sesuai

dengan algoritma yang digunakan. Untuk menyelesaikan penentuan

kandidat model dengan algoritma genetika, permasalahan harus

direpresentasikan atau dimodelkan terlebih dahulu melalui pengkodean.

Jenis pengkodean yang digunakan pada penentuan kandidat model adalah

pengkodean dengan cara operation based representation. Prinsip dari

Page 34: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

operation based representation adalah semua gen (parameter) dalam satu

kromosom akan dikodekan dengan simbol yang sama, kemudian

diinterpretasikan menurut indeksnya.

2. Pembangkitan Kromosom

Jika representasi masalah telah selesai dilakukan, maka akan dibangkitkan

kromosom. Pembangkitan kromosom dalam penentuan kandidat model

akan dilakukan secara acak atau random.

3. Penentuan Nilai Fitness untuk masing-masing Kromosom

Dalam masalah optimasi, fungsi fitness yang digunakan adalah fungsi

fitness dari masalah optimasi itu sendiri. Untuk, penentuan kandidat model

pencarian nilai fitness dapat diketahui dari nilai E (error) dalam satu siklus

pemrosesan kromosom dengan data masukan tegangan. Kromosom yang

mempunyai nilai fitness terbaik adalah kromosom yang mempunyai nilai E

(error) minimum.

4. Pemilihan Kromosom untuk dijadikan Orangtua

Pemilihan kromosom untuk dijadikan orangtua dilakukan secara random.

Orang tua dipilih melalui proses seleksi. Seleksi yang digunakan untuk

pemilihan orangtua adalah dengan memilih dua buah kromosom.

Kromosom yang dipilih untuk operasi mutasi adalah kromosom yang

mempunyai nilai fitnes terjelek. Dari individu yang jelek, jika dikenai

perubahan pada gennya diharapkan dapat memperoleh individu yang

unggul.

Page 35: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

5. Proses Reproduksi untuk Mendapatkan kromosom-kromosom yang Baru

Untuk mendapatkan kromosom dengang nilai fitness terbaik, maka perlu

dilakukan modifikasi terhadap kromosom-kromosom. Modifikasi yang

dilakukan adalah operasi persilangan dan operasi mutasi. Operasi

persilangan merupakan proses penggabungan dua kromosom (dua

orangtua yang terpilih) untuk menghasilkan dua individu yang baru,

sedangkan operasi mutasi merupakan proses pengubahan sebuah

kromosom yang terpilih untuk menghasilkan sebuah individu yang baru.

Pada proses persilangan akan didapat hasildua kromosom orang tua dan

dua kromosom anak dengan masing-masing mempunyai nilai fitness, akan

tetapi hanya dua kromosom dengan nilai fitness tertinggi yang akan

kembali dimasukkan kedalam populasi awal. Sedangkan pada proses

mutasi apabila nilai fitness kromosom anak tidak lebih baik dari pada nilai

fitness kromosom orang tua, maka kromosom orang tua yang akan

dikembalikan ke populasi.

C. Perancangan

1. Representasi Kromosom

Cara merepresentasikan permasalahan dalam kromosom merupakan suatu

hal yang penting dalam algoritma genetika. Ada beberapa model

representasi kromosom yang dapat dipergunakan untuk menyelesaikan

suatu masalah, salah satunya adalah operation based representation.

Prinsip dari operation based representation adalah semua gen (parameter)

Page 36: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

dalam satu kromosom akan dikodekan dengan simbol yang sama,

kemudian diinterpretasikan menurut indeksnya. Sehingga untuk satu

kromosom adalah :

Kromosom 1 = { [ a1 a2 a3 ] [ b1 b2 ] [ c1 c2 ] }

Contoh :

Kromosom 1 = {[ 0,1343 1,31 -0,3898 ] [ -0,02347 0,1826 ] [ 0,7612 0,1653 ]}

2. Pembangkitan Kromosom

Pada populasi awal akan dibangkitkan kromosom secara acak. Setiap

kromosom terdiri dari tujuh gen.

3. Penentuan nilai fitness untuk masing-masing kromosom

Penentuan nilai fitness untuk masing-masing kromosom dilakukan untuk

memilih kromosom yang akan dijadikan orangtua. Nilai fitness adalah

fungsi dari masalah optimasi itu sendiri. Untuk masalah penentuan

kandidat model pencarian nilai fitness dapat dilakukan dengan menghitung

nilai E (error). Kromosom yang mempunyai nilai fitness terbaik adalah

kromosom yang mempunyai nilai E minimum. Secara matematis, fungsi

fitness untuk mencari E sebagai berikut :

f 1 1 E

Keterangan

f = nilai fitness kromosom

E = nilai erorr (error besar)

4. Pemilihan kromosom untuk dijadikan orangtua

Page 37: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Pemilihan kromosom untuk dijadikan orangtua dilakukan secara acak

(random). Kromosom yang dipilih untuk operasi mutasi adalah kromosom

yang mempunyai nilai fitness terjelek. Dari individu yang jelek, jika

diadakan perubahan pada gennya diharapkan dapat memperoleh individu

yang unggul. Anggota-anggota populasi yang terpilih ini akan dijadikan

orangtua yang nantinya akan dikenakan operasi persilangan atau mutasi

untuk mendapatkan kromosom yang lebih baik dari sebelumnya.

5. Operasi Persilangan atau Crossover

Untuk mendapatkan individu baru salah satu caranya adalah dengan

melakukan persilangan atau crossover. Dalam melakukan crossover

melibatkan dua individu yang telah dipilih sebagai orangtua dan akan

menghasilkan dua buah offspring. Dalam penentuan kandidat model

metode crossover yang akan digunakan adalah metode one-cut-point

crossover pada tiap kelompok gen (parameter). Operasi persilangan yang

digunakan pada penentuan kandidat model adalah sebagai berikut :

a. Pertama-tama kita menentukan terlebih dahulu parent yang akan

dikenai operasi crossover. Misalkan terpilih parent sebagai berikut :

P1 [ a1 a2 a3 ] [ b1 b2 ] [ c1 c2 ]

P2 [ a4 a5 a6 ] [ b3 b4 ] [ c3 c4 ]

Gambar 3.1 Contoh parent untuk operasi crossover

b. Menentukan panjang cut point. Misalkan sepanjang 1 blok.

Page 38: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

c. Memilih sebuah posisi sebagai titik potong untuk tiap kelompok gen

dalam sebuah kromosom. Titik potong didapat dengan membagi dua

dari jumlah anggota pada tiap kelompok gen, untuk kelompok gen

yang memiliki jumlah anggota ganjil, maka jumlah anggota ditambah

satu setelah itu baru dilakukan pembagian dengan dua. Misal pada

parent1 terhadap kelompok gen a, jumlah gen a sebanyak 3 buah maka

jumlah gen ditambah satu kemudian dibagi dua (3+1)/2, akan didapat

hasil sama dengan dua yang artinya pemotongan dilakukan setelah gen

kedua. Posisi titik potongan untuk parent2 terhadap kelompok gen a

ditentukan dari jumlah gen dikurangi posisi pertama yaitu (3-2). Jadi

posisi titik potong untuk parent2 dilakukan setelah gen satu. Hal yang

sama akan dilakukan untuk kelompok gen b dan kelompok gen c untuk

masing-masing parent, kelompok gen b dan gen c memiliki jumlah

anggota gen yang genap yakni dua, dengan membagi dengan dua

didapat bahwa titik potong untuk kedua kelompok gen tersebut dimulai

setelah gen satu.

Cut point Cut point Cut point

P1 [ a1 a2 a3 ] [ b1 b2 ] [ c1 c2 ]

P2 [ a4 a5 a6 ] [ b3 b4 ] [ c3 c4 ]

Cut point Cut point Cut point

Gambar 3.2 Ilustrasi pemilihan cut-point

Page 39: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

P2

d. Langkah berikutnya adalah membentuk offspring O1 dan O2 dengan

melakukan exchange (pertukaran) segmen dari tiap kelompok gen

parent1 ke segmen yang berlawan dari tiap kelompok gen parent2.

segmen kiri segmen kanan

kelompok gen a parent1 [ a1 a2 | a3 ]

kelompok gen a parent2 [ a4 | a5 a6 ]

segmen kiri segmen kanan

Gambar 3.3 Ilustrasi segmentasi pada kelompok gen a

P1 [ a1 a2 a3 ] [ b1 b2 ] [ c1 c2 ]

P2 [ a4 a5 a6 ] [ b3 b4 ] [ c3 c4 ]

Gambar 3.4 Ilustrasi exchange segmen dari tiap kelompok gen

Operasi crossover ini menghasilkan dua buah offspring sebagai

berikut:

O1 [ a5 a6 a3 ] [ b4 b2 ] [ c4 c2 ]

O2 [ a4 a1 a2 ] [ b3 b1 ] [ c3 c1 ]

Gambar 3.5 Ilustrasi hasil crossover

Page 40: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

6. Proses Mutasi

Mutasi merupakan proses untuk menghasilkan individu baru dari sebuah

kromosom melalui perubahan gen pada kromosom tersebut. Metode

mutasi yang digunakan adalah metode inverse mutation. Mutasi akan

dilakukan berdasarkan jumlah tertentu dari proses persilangan (crossover).

Misalnya probabilitas mutasi 0,1 berarti setiap 10 kali crossover dilakukan

1 kali mutasi. Proses mutasi ini hanya terjadi pada salah satu dari

kelompok gen, adapun langkah-langkah dari mutasi adalah sebagai berikut

a. Dipilih secara random kelompok gen yang akan dikenai proses mutasi.

b. Dipilih dua buah gen secara random dengan isi gen yang berbeda

c. Kedua gen tersebut ditukarkan tempatnya.

Parent [ a1 a2 a3 ] [ b1 b2 ] [ c1 c2 ]

Offspring [ a3 a2 a1 ] [ b1 b2 ] [ c1 c2 ]

Gambar 3.6 Ilustrasi proses mutasi

7. Ilustrasi Masalah Penentuan Kandidat Model

Terdapat permasalahan penentuan kandidat model yang terdiri dari 3

kromosom dan 6 data masukan tegangan dengan tabel sebagai berikut :

Page 41: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

A1 A2 A3 B1 B2 C1 C2

1 0,6774 0,5841 0,8065 0,6532 0,4143 1,4043 0,1864

2 -0,3457 1,2054 -0,1902 0,9312 0,3464 0,7728 1,3305

3 1,0439 0,7830 0,1124 -0,5293 0,0352 0,0732 -0,0824

Tabel Kromosom

y(t) u(t) e(t)

1 1,7463 4,0658 0,0980

2 0,0490 0,9963 0,0346

3 3,0192 1,3648 0,0934

4 0,9940 2,2235 0,0568

5 4,6532 4,3642 0,2946

6 2,3469 0,5833 0,0346

Tabel Data Masukan Tegangan

Dari permasalahan tersebut, diminta untuk mencari nilai fitness awal

terbaik untuk proses pemanasan. Untuk itu kromosom satu per satu

diambil untuk dicari nilai fitnessnya. Tiap kromosom yang diambil akan

diproses menggunakan data masukan tegangan untuk mendapatkan nilai E

(error besar), proses ini dinamakan Auto Regressive Moving Average.

Dalam proses Auto Regressive Moving Average sendiri terdapat nilai-nilai

e (error kecil) untuk setiap (t) sampai (t-3). Kromosom diproses dengan

struktur model untuk pemanasan, yakni :

Y(t) a1 y(t 1) a2 y(t 2) a3 y(t 3) b1 u(t 2) b2u(t 3) c1e(t) c2e(t 1)

Page 42: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

y( t ) u( t ) e( t )

1,7463 4,0658 0,0980

0,0490

0,9963

0,0346

3,0192 1,3648 0,0934

0,9940 2,2235 0,0568

4,6532 4,3642 0,2946

2,3469 0,5833 0,0346

y( t ) u( t ) e( t )

1,7463 4,0658 0,0980

0,0490

0,9963

0,0346

3,0192 1,3648 0,0934

0,9940 2,2235 0,0568

4,6532 4,3642 0,2946

2,3469 0,5833 0,0346

Proses Auto Regressive Moving Average untuk satu kromosom dapat

digambarkan sebagai berikut :

1 0,6774 0,5841 0,8065 0,6532 0,4143 1,4043 0,1864

e1 = Y(t) – y(t)

( t – 3 )

( t – 2 )

( t - 1 )

( t )

Gambar 3.7 Ilustrasi Auto Regressive Moving Average pada e1

e2 = Y(t) – y(t)

( t – 3 )

( t – 2 )

( t - 1 )

( t )

Gambar 3.8 Ilustrasi Auto Regressive Moving Average pada e2

Page 43: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

y( t ) u( t ) e( t )

1,7463 4,0658 0,0980

0,0490 0,9963 0,0346

3,0192

1,3648

0,0934

0,9940 2,2235 0,0568

4,6532 4,3642 0,2946

2,3469

0,5833

0,0346

e3 = Y(t) – y(t)

( t – 3 )

( t – 2 )

( t - 1 )

( t )

Gambar 3.9 Ilustrasi Auto Regressive Moving Average pada e3

Dimana untuk setiap nilai Y(t) dan y(t) adalah :

Y(t) = -a1y(t-1) - a2y(t-2) - a3y(t-3) + b1u(t-2) + b2u(t-3) + c1e(t) + c2e(t-1)

y(t) = y(t)

nilai e (error kecil) akan di proses untuk mendapatkan E (error besar).

n

e(i) 2

E i 1

n

dimana n adalah banyaknya cacah data masukan tegangan, dalam contoh

masalah diatas n = 6. Selanjutnya nilai E yang didapat akan dimasukkan

kedalam fungsi fitness, sebagai berikut :

f 1 1E

Semakin kecil nilai E maka semakin besar nilai fitness. Untuk kromosom

kedua dan ketiga juga melalui proses yang sama untuk mengetahui fitness

awal dari tiap kromosom dalam populasi tersebut.

Page 44: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

8. Perancangan Menu

Program yang akan dibuat mempunyai tiga buah menu yaitu :

Pemrosesan Algoritma Genetika

Menu Pemrosesan Algoritma Genetika merupakan halaman kerja

(workspace), dimana user bisa langsung berinteraksi dengan

memasukkan input, memprosesnya, dan langsung melihat hasilnya.

Tentang Algoritma Genetika (GA)

Menu Tentang Algoritma Genetika merupakan sekilas pembahasan

tentang Algoritma Genetika / Genetic Algorithm (GA).

Keluar Program

Menu Keluar Program digunakan untuk berhenti dan keluar dari

program, kembali ke command window dari Matlab.

Rancangan menu utama dapat gambarkan seperti pada gambar 3.10

Menu

IMPLEMENTASI ALGORITMA GENETIKA DALAM PENENTUAN KANDIDAT MODEL

LOGO USD

KETERANGAN PENULIS

Gambar 3.10a Rancangan Form Menu Utama

Page 45: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

IMPLEMENTASI DALAM PENENT

Menu

Pemrosesan Algoritma Genetika Tentang Algoritma Genetika (GA)

Keluar Program

ALGORITMA GENETIKA UAN KANDIDAT MODEL

LOGO USD

KETERANGAN PENULIS

Gambar 3.10b Rancangan Form Menu Utama (klik menu)

9. Perancangan Pemrosesan Algoritma Genetika

Apabila user memilih menu “Pemrosesan Algoritma Genetika” maka akan

tampil form kerja (workspace), diman user bisa menginputkan,

memprosesnya, dan sekaligus menampilkannya.

KROMOSOM TEGANGAN

VIEW LISTBOX KROMOSOM VIEW LISTBOX TEGANGAN

OPSI ALGORITMA GENETIKA

LAKUKAN PROSES ITERASI

FITNESS AKHIR (PANAS)

FITNESS AKHIR (DINGIN)

Gambar 3.11 Rancangan Form Pemrosesan Algoritma Genetika

Page 46: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Dalam form pemrosesan algoritma genetika terdapat beberapa area, seperti

area kromosom, area tegangan, dan area opsi algoritma genetika. Area-

area tersebut merupakan area inputan bagi user, sedangkan viewlistbox

kromosom dan viewlistbox tegangan merupakan area output. Berikut akan

dijelaskan lebih mendetail :

a) Area Kromosom

Jumlah Kromosom dalam Populasi min 3 max 20

Generate Kromosom

Fitness Awal (Panas) Fitness Awal (Dingin)

Kotak input jumlah kromosom ; Pada kotak tersebut user harus

memasukkan sejumlah bilangan bulat positif, nilai tersebut sebagai

jumlah kromosom dalam populasi. Dengan jumlah kromosom

minimun 3, maksimun 20.

Tombol Generate Kromosom ; Tombol ini akan mengenerate N

kromosom, dimana N adalah jumlah kromosom yang telah

diinputkan melalui kotak jumlah kromosom.

Tombol Fitness Awal (Panas) dan Tombol Fitness Awal (Dingin) ;

Kedua Tombol ini untuk menampilkan Populasi Kromosom Awal

beserta nilai Fitness awalnya. Karena menampilkan nilai Fitness

Awal, maka kedua tombol ini baru menampilkan hasil jika Data

Tegangan telah di-inputkan terlebih dahulu. Dengan kata lain,

Page 47: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

tombol ini tak menghasilkan tampilan pada ViewListBox

Kromosom jika tidak ada Data Tegangan.

b) Area Tegangan

Pada area Tegangan, user diharuskan menginputkan data

Tegangan. User diberikan 2 pilhan, menginputkan data tegangan

melalui file atau mengenerate sendiri secara random. Data

tegangan yang dipakai dalam proses adalah, Data yang tampil pada

ViewListBox Tegangan. Area tegangan sebagai berikut :

Input Data Tegangan

Buka File

Generate Random

Tombol Buka File ; Tombol ini untuk menginputkan data tegangan

dari file (*.txt).

Tombol Generate Random ; Tombol ini untuk membangkitkan /

generate N data bilangan sebagai input data tegangan dimana N =

250 cacah data.

c) Area Opsi Algoritma Genetika

Probabilitas Crossover

Probabilitas Mutasi

Jumlah Iterasi

Probabilitas Crossover ; popup menu tersebut berisikan nilai

kemungkinan terjadinya proses crossover (persilangan). semisal

Page 48: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

nilai Prob.Crossover = 0.5 , artinya kita merandom bilangan 0 – 1

jika nilai hasil random < = 0.5 maka terjadi proses crossover.

Probabilitas Mutasi ; Popup menu tersebut berisikan nilai

kemungkinan terjadinya proses mutasi. semisal nilai Prob.Mutasi =

0.1 , artinya setiap 10 proses Crossover akan terjadi 1 proses

Mutasi.

Jumlah Iterasi ; Pada kotak tersebut user harus memasukkan

sejumlah bilangan bulat positif, nilai tersebut sebagai jumlah iterasi

(perulangan) yang akan dilakukan dalam proses evolusi pencarian

model kandidat.

d) Tombol Lakukan Proses Iterasi

Tombol tersebut akan melakukan proses Evolusi pencarian Model

Kandidat kromosom terbaik. Tombol tersebut hanya tereksekusi

apabila persyaratannya terpenuhi.

Persyaratannya :

Terdapat jumlah kromosom.

Data Tegangan telah diinputkan.

Tombol Kromosom dan Fitness Awal (Panas) telah

tereksekusi.

Tombol Kromosom dan Fitness Awal (Dingin) telah

tereksekusi.

Terdapat Nilai Probabilitas Crossover.

Terdapat Nilai Probabilitas Mutasi.

Page 49: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Terdapat Jumlah Iterasi (Perulangan) yang akan dilakukan.

Iterasi untuk Pemanasan dan Pendinginan dilakukan secara

terpisah dengan menggunakan populasi kromosom awal

yang sama.

e) Tombol Fitness Akhir (Panas)

Tombol ini dapat dieksekusi hanya apabila tombol proses iterasi

telah dieksekusi terlebih dahulu.Tombol ini menampilkan hasil

proses iterasi untuk pemanasan. Hasil dari proses Iterasi telah di-

sortir (diurutkan) secara ascending berdasarkan fitness. Hasil

ditampilkan pada ViewListBox Kromosom.

f) Tombol Fitness Akhir (Dingin)

Tombol ini dapat dieksekusi hanya apabila tombol proses iterasi

telah dieksekusi terlebih dahulu. Tombol ini menampilkan hasil

proses iterasi untuk pendinginan. Hasil dari proses Iterasi telah di-

sortir (diurutkan) secara ascending berdasarkan fitness. Hasil

ditampilkan pada ViewListBox Kromosom.

g) ViewListBox Kromosom

[ A1 A2 A3 ] [ B2 B2 ] [ C1 C2 ] [ Fitness ]

Page 50: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Sebuah List yang digunakan sebagai tampilan output untuk

kromosom, dimana ;

[ A1 A2 A3 ] merupakan bagian dari struktur sebuah Kromosom ;

gen A1 gen A2 gen A3.

[ B1 B2 ] merupakan bagian dari struktur sebuah Kromosom ; gen

B1 gen B2.

[ C1 C2 ] merupakan bagian dari struktur sebuah Kromosom ; gen

C1 gen C2.

sebuah kromosom utuh terdiri dari [A1 A2 A3] [B1 B2] [C1 C2]

[ Fitness ] merupakan bobot dari kromosom tersebut pada proses

panas dan dingin.

h) ViewListBox Tegangan

[ Y ( t ) ] [ U ( t ) ] [ E ( t ) ]

Sebuah List yang digunakan sebagai tampilan output untuk

tegangan. Y(t) U(t) E(t) merupakan struktur dari data input

tegangan. Dimana Y(t) dan U(t) diinputkan oleh user, sedangkan

E(t) diperoleh 3% sampai 5% dari nilai rata-rata Y(t).

Page 51: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

10. Perancangan Tentang Algoritma Genetika (GA)

Form tentang algoritma genetika berisikan sekilas informasi tentang

algoritma genetika, jika diklik akan menampilkan form sebagai berikut :

Gambar 3.12 Rancangan Form Tentang Algoritma Genetika (GA)

11. Perancangan Bantuan

Form bantuan berisikan informasi tentang mengoperasikan program

Implementasi Algoritma Genetika dalam Penentuan Kandidat Model. Jika

user memilih menu “Bantuan” pada form pemrosesan algoritma genetika

maka akan tampil form bantuan seperti gambar 3.13a dan 3.13.b

Page 52: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Gambar 3.13a Rancangan Form Bantuan bagian 1

Gambar 3.13b Rancangan Form Bantuan bagian 2

Page 53: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

BAB IV

IMPLEMENTASI DAN ANALISA HASIL PROGRAM

A. Flowchart

Penyelesaian Penentuan Kandidat Model dengan menggunakan

algoritma genetika secara garis besar digambarkan dalam flowchart sebagai

berikut : Begin

Masukan jumlah kromosom dan data tegangan

Masukkan jumlah iterasi

Pembangkitan anggota populasi awal

Perhitungan nilai fitnes

Generasi >iterasi yes

No

Pemilihan orang tua

crossover

mutasi

Generasi:=generasi + 1

end

Page 54: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

B. Implementasi Program

1. Implementasi Representasi Kromosom

Untuk merepresentasikan kromosom menggunakan operation

based representation setiap gen dalam dalam kromosom yang sama

dikodekan dengan simbol yang sama. Langkah-langkah dalam

merepresentasikan kromosom adalah sebagai berikut, pertama-tama telah

diketahui bahwa a memiliki orde 3, b dan c memiliki orde 2, kemudian

menentukan panjang kromosom dengan cara menjumlahkan jumlah orde

pada setiap kelompok gen. Setelah itu mengenerate bilangan random

melalui proses inisialisasi sebanyak orde masing-masing kelompok gen

dalam kromosom.

[KromA]=InisialisasiA(JmlKrom); [KromB]=InisialisasiB(JmlKrom); [KromC]=InisialisasiC(JmlKrom); Kromosom=[KromA KromB KromC];

2. Implementasi Pembangkitan Populasi Awal

Dalam pembangkitan populasi awal, kromosom-kromosom yang

telah direpresentasikan dibentuk sebanyak n buah kromosom, dimana n

merupakan nilai yang diinputkan oleh user, sehingga menghasilkan

populasi awal yang beranggotakan n buah kromosom. Dalam

menginputkan jumlah kromosom, terdapat range (batasan), batasan

minimum adalah 3 buah kromsom dan batasan maksimum adalah 20 buah

kromosom. Batasan minimun diberikan tiga buah dimaksudkan agar

proses crossover menghasilkan kemungkinan yang lebih variatif.

Page 55: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

// inisialisasi untuk masing-masing kelompok gen

while banyak<=JmlKrom

Populasi=InisialisasiPopulasi(1,JmlGenA);

Krom=[Krom;Populasi]; banyak=banyak+1;

end

while banyak<=JmlKrom

Populasi=InisialisasiPopulasi(1,JmlGenB); Krom=[Krom;Populasi]; banyak=banyak+1;

end

while banyak<=JmlKrom

Populasi=InisialisasiPopulasi(1,JmlGenC); Krom=[Krom;Populasi]; banyak=banyak+1;

end

3. Implementasi Penginputan Data Masukan Tegangan

Dalam menginputkan data masukan tegangan, terdapat dua

alternatif. Pertama menggunakan data simulasi sendiri dengan

mengenerate secara random. Pilihan untuk mengenerate secara random

data masukan tegangan akan memberikan sebuah tabel yang berisikan data

tegangan sebanyak 250 cacah data. Bilangan 250 tersebut sudah menjadi

nilai yang sudah ditentukan (default).

Kedua menggunakan data yang tersimpan dalam file (berkas). Pilihan

membuka file, akan memberikan kesempatan user untuk menginputkan

Page 56: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

data masukan tegangan melalui file yang dimilikinya. Dalam pilihan

membuka file, format file yang dapat dibuka dan dibaca berekstensi *.txt.

// Generate random data masukan tegangan

while banyak<=In0

waitbar(banyak/In0)

Populasi=InisialisasiPopulasiV(1,JmlGenV); Krom=[Krom;Populasi]; banyak=banyak+1;

end

KromV=Krom; [m,n]=size(KromV); tmpe=0;Pope=0;valp=0;tmpop=[];

tmpe=tmpe/m; for(i=1:m)

waitbar(i/m) Pope=(5*rand(1,1)); if(Pope<=3)

Pope=Pope+3;

end

end valp=(tmpe/100)*Pope; tmpop=[tmpop;valp];

KromV=[KromV tmpop];

statV=0;handles.statV=statV; In0=250;handles.In0=In0; [KromV0]=InisialisasiV(In0); handles.KromV0=KromV0; guidata(hObject,handles); KromVT=KromV0; KromVT=num2str(KromVT); set(handles.TagLayarV,'String',KromVT);

Page 57: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

// Data masukan tegangan melalui berkas

[namaFl,namaPth]=uigetfile({'*.txt','Tabel Tegangan (*.txt)'}, 'Buka File Tegangan / Tabel Tegangan');

if ~isequal(namaFl,0)

gab=strcat(namaPth,namaFl); fid=fopen(gab,'r'); Kromo=fread(fid,'char'); fid=fclose('all'); guidata(hObject,handles); [KromV1]=UraiV(Kromo); [h,j]=size(KromV1); In1=h; handles.In1=In1; handles.KromV1=KromV1; statV=1;handles.statV=statV; guidata(hObject,handles);

set(handles.TagKetBukaFile,'String','Input Data Tegangan dari File, Sukses !!');

KromVT=KromV1; KromVT=num2str(KromVT);

set(handles.TagLayarV,'String',KromVT); else

set(handles.TagKetBukaFile,'String','Input Data Tegangan dari File, Gagal !!');

return end

4. Implementasi Pembacaan String Berkas Menjadi Numerik

Hasil pembukaan dari file (berkas) dapat langsung dibaca, akan

tetapi belum dapat dipakai dan diproses. Hal ini dikarenakan masih dalam

bentuk string ACSII, oleh karena itu diperlukan ada proses dalam

mengubah hasil pembacaan dari berkas tadi sebelum dipakai dalam proses

algoritma genetika.

Page 58: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

for(i=1:m) waitbar(i/m) if(Volt1(i,1)==44)

Volt1(i,1)=46; end if((Volt1(i,1)==9)||(Volt1(i,1)==13))

Volt1(i,1)=32; end

if((Volt1(i,1)~=32)&&(Volt1(i,1)~=10)&&(Vo lt1(i,1)~=13))

idx=[idx i]; zta=zta+2;

end if(Volt1(i,1)==32)

if(zta>=1) [x,c]=size(idx); for(j=1:c)

tmpDatV=Volt1(idx(1,j),1); DatV=[DatV tmpDatV];

end

end DatV=char(DatV); DatV=str2num(DatV); tempVolt=[tempVolt DatV]; DatV=[];idx=[];

end

zta=0;

if(Volt1(i,1)==10) Volt2=[Volt2;tempVolt]; tempVolt=[];

end

end

5. Implementasi Pemilihan Kromosom untuk dijadikan Orangtua

Kromosom yang akan dijadikan sebagai orangtua dipilih dengan

menyeleksi dua buah kromosom secara random. Misalnya terdapat 20

kromosom, maka akan digenerate dua bilangan random dari satu sampai

Page 59: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

dua puluh, bilangan hasil generate merujuk pada penentuan kromosom

yang akan terpilih sebagai orangtua.

x=round(jml*rand(1,2)); M=x(1,1); N=x(1,2); if(M==0)

M=M+1; end if(M==N)

if(M==jml) M=M-1;

end

end N=N-2;

if(N<=0) N=N+3;

end

6. Implementasi Operasi Persilangan atau Crossover

Untuk mendapatkan generasi baru, salah satu caranya adalah

dengan melakukan persilangan atau crossover. Metode crossover yang

digunakan adalah one-cut point. Dalam melakukan persilangan tahap-

tahapnya adalah sebagai berikut :

Menentukan titik potong masing-masing kelompok gen

Untuk kelompok gen yang memiliki jumlah anggota ganjil

akan ditambah satu, sehingga pembagian menjadi bulat.

Contoh kelompok gen a yang memiliki 3 anggota, maka

(3+1)/2 akan menghasilkan nilai 2, artinya titik potong

untuk parent1 dimulai setelah gen kedua sehingga akan

membagi kelompok gen a kedalam 2 ruas segmen yakni

Page 60: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

ruas segmen kanan (1 gen) dan segmen kiri (2 gen).

Sedangkan untuk menentukan titik potong pada parent2

berdasarkan posisi dari titik potong parent1 yakni jumlah

anggota gen dikurangi posisi titik potong (3-2), akan

menghasilkan nilai satu, yang artinya titik potong dimulai

setelah gen 1, sehingga akan membagi kelompok gen a

parent2 kedalam dua ruas segmen, yaitu ruas segmen kanan

(2 gen) dan ruas segmen kiri (1 gen). Proses yang sama

akan dilakukan untuk kelompok gen b dan c pada tiap

parent.

offspring1=[Parent1(1,1) Parent2(1,2:3) Parent1(1,4) Parent2(1,5) Parent1(1,6) Parent2(1,7)]; offspring2=[Parent2(1,1) Parent1(1,2:3) Parent2(1,4) Parent1(1,5) Parent2(1,6) Parent1(1,7)];

7. Implementasi Operasi Mutasi

Operasi mutasi dilakukan dengan cara menukarkan posisi dari dua

buah gen berlainan di dalam kelompok gen yang sama. Penentuan dua

buah gen yang dikenakan proses penukaran ditentukan secara random.

Pada kelompok gen b atau c yang masing-masing hanya terdiri dari dua

buah gen dapat langsung dipertukarkan posisinya, sedangkan pada

kelompok gen a yang terdiri dari tiga buah gen, perlu ditentukan dua buah

gen secara random. Sedangkan kromosom yang terpilih untuk dikenai

proses mutasi adalah kromosom yang mempunyai fitnes terjelek.

Page 61: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

jbil=round(3*rand(1,1));

if(jbil==0) jbil=jbil+2;

end

if(jbil==1) jgen=round(3*rand(1,2)); if(jgen(1,1)==jgen(1,2))

if((jgen(1,1)==2)||(jgen(1,1)==3)) jgen(1,1)=jgen(1,1)-1;

end if(jgen(1,1)==1)

jgen(1,1)=jgen(1,1)+1; end if(jgen(1,1)==0)

jgen(1,1)=jgen(1,1)+1; jgen(1,2)=jgen(1,2)+2;

end

end

if(jgen(1,1)==0) jgen(1,1)=jgen(1,1)+1; jgen(1,2)=jgen(1,2)+1; if(jgen(1,2)>3)

jgen(1,2)=jgen(1,2)-1;

end end

if(jgen(1,2)==0) jgen(1,1)=jgen(1,1)+1; jgen(1,2)=jgen(1,2)+1; if(jgen(1,1)>3)

jgen(1,1)=jgen(1,1)-1;

end

end

end

if(jbil==2)

jgen(1,1)=4; jgen(1,2)=5;

end

if(jbil==3) jgen(1,1)=6; jgen(1,2)=7;

end

Page 62: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

C. Implementasi Antar Muka

Pada saat program pertama kali dijalankan dengan mengetik ‘Utama’ pada

command window, maka tampilan awal sebagai berikut :

Gambar 4.1 Tampilan Awal

Pada menu terdapat pilihan 3 pilihan, yakni :

1. Pemrosesan Algoritma Genetika

2. Tentang Algoritma Genetika (GA)

3. Keluar Program

Apabila menu yang dipilih adalah ‘Pemrosesan Algoritma genetika’ maka

akan membawa user ke form pemrosesan seperti gambar 4.2

Page 63: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Gambar 4.2 Form Pemrosesan Algoritma Genetika

Pada form pemrosesan algoritma genetika, terdapat beberapa area inputan

diantaranya :

Area kromosom

Gambar 4.3 area Kromosom

Page 64: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

Kotak input jumlah kromosom ; Pada kotak tersebut user harus memasukkan

sejumlah bilangan bulat positif, nilai tersebut sebagai jumlah kromosom dalam

populasi. Dengan jumlah kromosom minimun 3, maksimun 20.

Tombol Generate Kromosom ; Tombol ini akan mengenerate N kromosom,

dimana N adalah jumlah kromosom yang telah diinputkan melalui kotak

jumlah kromosom.

Tombol Fitness Awal (Panas) dan Tombol Fitness Awal (Dingin) ; Kedua

Tombol ini untuk menampilkan Populasi Kromosom Awal beserta nilai

Fitness awalnya. Karena menampilkan nilai Fitness Awal, maka kedua tombol

ini baru menampilkan hasil jika Data Tegangan telah di-inputkan terlebih

dahulu. Dengan kata lain, tombol ini tak menghasilkan tampilan pada

ViewListBox Kromosom jika tidak ada Data Tegangan

Area Tegangan

Gambar 4.4 area Tegangan

Pilihan untuk inputan data masukan tegangan, buka file atau mengenerate

secara random. Pada area tegangan, user diharuskan menginputkan data

tegangan. User diberikan dua pilihan, menginputkan data tegangan melalui file

Page 65: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

atau mengenerate sendiri secara random. Data tegangan yang dipakai dalam

proses adalah, data yang tampil pada ViewListBox Tegangan.

Area Opsi Genetika

Gambar 4.5 area Opsi GA

Probabilitas Crossover ; popup menu tersebut berisikan nilai kemungkinan

terjadinya proses crossover (persilangan). Semisal nilai probabilitas crossover

= 0.5 , artinya kita merandom bilangan 0 – 1 jika nilai hasil random ≤ 0.5

maka terjadi proses crossover.

Probabilitas Mutasi ; Popup menu tersebut berisikan nilai kemungkinan

terjadinya proses mutasi. semisal nilai probabilits mutasi = 0.1 , artinya setiap

10 proses crossover akan terjadi 1 proses mutasi.

Jumlah Iterasi ; Pada kotak tersebut user harus memasukkan sejumlah

bilangan bulat positif, nilai tersebut sebagai jumlah iterasi (perulangan) yang

akan dilakukan dalam proses evolusi pencarian model kandidat.

Setelah semua data inputan dimasukkan, dapat dilakukan proses iterasi untuk

mencari nilai fitness terbaik dengan menggunakan operator algoritma genetika

(crossover,mutasi,seleksi). Dan untuk menampilkan hasil iterasi digunakan

tombol ‘Fitness Akhir (Panas)’ untuk melihat hasil proses pemanasan, atau

Page 66: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

tombol ‘Fitness Akhir (Dingin)’ untuk melihat hasil proses pendinginan.

Hasilnya ditampilkan pada ViewListBox kromosom, seperti pada gambar.

Gambar 4.14 ViewListBox Kromosom

Page 67: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

D. Hasil dan Pembahasan

Pada hasil dan pembahasan ini akan dibicarakan lebih lanjut tentang

proses pemanasan yang telah dilakukan dengan menggunakan masukan data

sebagai berikut :

Jumlah kromosom 20 Jumlah data tegangan 250

Kromosom awal dibangkitkan secara acak sebanyak 20 individu.

A1 A2 A3 B1 B2 C1 C2 :

-0.0863 0.9421 0.5820 -0.3940 1.3962 0.6841 0.3781

0.2849 0.6872 0.9033 0.6985 0.0324 0.0893 -0.4559

0.3183

1.2239

0.3980

1.1304

0.9897

0.3041

0.6227

0.7298

0.6448

0.2465

1.1467

0.3083

0.9393

0.6933

0.0775

1.1850

-0.2576

0.7836

0.0694

1.3818

0.1527

0.1547

0.7266

1.0315

1.3875

0.6734

-0.1946

-0.0775

0.3464

0.7047

0.8870

0.8302

1.3315

-0.2531

0.7154

-0.3330

1.4788

1.3365

1.3963

0.9261

1.0930

0.2155

1.1026

0.3930

0.4820

0.3469

0.9795

0.4964

0.9444

-0.2323

0.1147

0.6966

0.4798

0.3144

1.1946

1.0577

-0.3129 -0.4538 0.3662 0.6852 1.0495 0.5650 -0.1693

0.5215

1.4194

0.4600

1.3537

0.1445 -0.2377

0.9475

0.7347

0.4022

0.5617

1.1767

1.1955 1.0061

-0.3229

1.2812 0.1964 0.6796 0.8757 1.1942 1.0188 0.1317

1.4128

-0.1194

0.1093

0.5737

-0.1572

-0.4054

-0.1839

Page 68: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

-0.1003 1.2572 0.9484 -0.4934 0.1946 0.9804 -0.0478

1.0493 1.3039 -0.4662

-0.2398 -0.4878

0.7163

0.4765

0.2500 -0.0168 0.5804

-0.1910 0.8607

0.3910

0.4562

0.8594 0.8532 0.2625

0.2844 -0.0666

0.0018

1.3063

-0.1244 0.8964 0.4318

1.0025 0.8562

1.2165

0.4177

jumlah iterasi yang dimasukkan sebanyak 100 generasi.

Pencarian fitness awal pada proses pemanasan didapat sebagai berikut :

A1 A2 A3 B1 B2 C1 C2 Fitness :

-0.0863 0.9421 0.5820 -0.3940 1.3962 0.6841 0.3781 0.7967

0.2849 0.6872 0.9033 0.6985 0.0324 0.0893 -0.4559 0.8084

0.3183

1.2239

0.3980

1.1304

0.9897

0.3041

0.6227

0.7435

0.7298

0.6448

0.2465

1.1467

0.3083

0.9393

0.6933

0.7894

0.0775

1.1850

-0.2576

0.7836

0.0694

1.3818

0.1527

0.8415

0.1547

0.7266

1.0315

1.3875

0.6734

-0.1946

-0.0775

0.7549

0.3464

0.7047

0.8870

0.8302

1.3315

-0.2531

0.7154

0.7444

-0.3330

1.4788

1.3365

1.3963

0.9261

1.0930

0.2155

0.7068

1.1026

0.3930

0.4820

0.3469

0.9795

0.4964

0.9444

0.7715

-0.2323

0.1147

0.6966

0.4798

0.3144

1.1946

1.0577

0.8446

-0.3129 -0.4538 0.3662 0.6852 1.0495 0.5650 -0.1693 0.8269

0.5215

1.4194

0.4600

1.3537

0.1445 -0.2377

0.9475

0.7361

0.7347

0.4022

0.5617

1.1767

1.1955 1.0061

-0.3229

0.7527

1.2812

0.1964

0.6796

0.8757

1.1942 1.0188

0.1317

0.7496

1.4128 -0.1194 0.1093 0.5737 -0.1572 -0.4054 -0.1839 0.8401

Page 69: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

-0.1003 1.2572 0.9484 -0.4934 0.1946 0.9804 -0.0478 0.7832

1.0493 1.3039 -0.4662

-0.2398 -0.4878

0.7163

0.4765

0.7888

0.2500 -0.0168 0.5804 -0.1910 0.8607 0.3910 0.4562 0.8688

0.8594

0.8532

0.2625

0.2844 -0.0666

0.0018

1.3063

0.7793

-0.1244

0.8964

0.4318

1.0025 0.8562

1.2165

0.4177

0.7888

Setelah itu dilakukan proses iterasi untuk proses pemanasan, proses tersebut

akan berhenti pada generasi ke 100, dari proses tersebut didapat hasil akhir

sebagai berikut :

A1 A2 A3 B1 B2 C1 C2 Fitness :

-0.0863 0.9421 0.5820 -0.3940 1.3962 0.6841 0.3781 0.7967

0.2849 0.6872 0.9033 0.6985 0.0324 0.0893 -0.4559 0.8084

0.3183

1.2239

0.3980

1.1304

0.9897

0.3041

0.6227

0.7435

0.7298

0.6448

0.2465

1.1467

0.3083

0.9393

0.6933

0.7894

0.0775

1.1850

-0.2576

0.7836

0.0694

1.3818

0.1527

0.8415

0.1547

0.7266

1.0315

1.3875

0.6734

-0.1946

-0.0775

0.7549

0.3464

0.7047

0.8870

0.8302

1.3315

-0.2531

0.7154

0.7444

-0.3330

1.4788

1.3365

1.3963

0.9261

1.0930

0.2155

0.7068

1.1026

0.3930

0.4820

0.3469

0.9795

0.4964

0.9444

0.7715

-0.2323

0.1147

0.6966

0.4798

0.3144

1.1946

1.0577

0.8446

-0.3129 -0.4538 0.3662 0.6852 1.0495 0.5650 -0.1693 0.8269

0.5215

1.4194

0.4600

1.3537

0.1445 -0.2377

0.9475

0.7361

1.4128 -0.1194 0.1093 0.5737 -0.1572 -0.4054 -0.1839 0.8401

1.2812 0.1964 0.6796 0.8757 1.1942 1.0188 0.1317 0.7496

Page 70: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

0.7347 -0.1194 0.1093 1.1767 -0.1572 1.0061 -0.1839 0.8499

-0.1003

1.2572 0.9484

-0.4934 0.1946

0.9804

-0.0478

0.7832

1.0493

1.3039 -0.4662

-0.2398 -0.4878

0.7163

0.4765

0.7888

0.2500

-0.0168 0.5804

-0.1910 0.8607

0.3910

0.4562

0.8688

0.8594 0.8532 0.2625 0.2844 -0.0666 0.0018 1.3063 0.7793

-0.1244

0.8964

0.4318

1.0025 0.8562

1.2165

0.4177

0.7888

Dari hasil tesebut diatas kemudian diurutkan berdasarkan fitness tertinggi, untuk

mengetahui krosomom mana yang hendak terpilih sebagai kandidat model.

Berikut hasil pengurutan :

A1 A2 A3 B1 B2 C1 C2 Fitness :

0.2500 -0.0168 0.5804 -0.1910 0.8607 0.3910 0.4562 0.8688

0.7347

-0.1194 0.1093

1.1767 -0.1572

1.0061

-0.1839

0.8499

-0.2323

0.1147 0.6966

0.4798 0.3144

1.1946

1.0577

0.8446

0.0775

1.1850 -0.2576

0.7836 0.0694

1.3818

0.1527

0.8415

1.4128

-0.1194 0.1093

0.5737 -0.1572

-0.4054

-0.1839

0.8401

-0.3129

-0.4538 0.3662

0.6852 1.0495

0.5650

-0.1693

0.8269

0.2849 0.6872 0.9033 0.6985 0.0324 0.0893 -0.4559 0.8084

-0.0863 0.9421 0.5820 -0.3940 1.3962 0.6841 0.3781 0.7967

0.7298 0.6448 0.2465 1.1467 0.3083 0.9393 0.6933 0.7894

-0.1244

0.8964

0.4318

1.0025

0.8562

1.2165

0.4177

0.7888

1.0493 1.3039 -0.4662 -0.2398 -0.4878 0.7163 0.4765 0.7888

-0.1003

1.2572

0.9484

-0.4934 0.1946

0.9804

-0.0478

0.7832

0.8594 0.8532 0.2625 0.2844 -0.0666 0.0018 1.3063 0.7793

Page 71: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

1.1026 0.3930 0.4820 0.3469 0.9795 0.4964 0.9444 0.7715

0.1547

0.7266

1.0315

1.3875

0.6734

-0.1946

-0.0775

0.7549

1.2812

0.1964

0.6796

0.8757

1.1942

1.0188

0.1317

0.7496

0.3464

0.7047

0.8870

0.8302

1.3315

-0.2531

0.7154

0.7444

0.3183

1.2239

0.3980

1.1304

0.9897

0.3041

0.6227

0.7435

0.5215

1.4194

0.4600

1.3537

0.1445

-0.2377

0.9475

0.7361

-0.3330

1.4788

1.3365

1.3963

0.9261

1.0930

0.2155

0.7068

Dari hasil pengurutan dapat diketahui bahwa kandidat model yang terpilih untuk

proses pemanasan dengan nilai fitness 0.8688 dengan model persamaan :

y(t) = - (0.2500)y(t-1) - (-0.0168)y(t-2) - (0.5804)y(t-3) + (-0.1910)u(t-2) +

(0.8607)u(t-3) + (0.3910)e(t) + (0.4562)e(t-1)

Page 72: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

BAB V

PENUTUP

E. Kesimpulan

Dari penelitian ini maka dapat diambil beberapa kesimpulan sebagai berikut

1. Probabilitas mutasi, serta jumlah iterasi mempengaruhi solusi yang

dihasilkan dari penyelesaian suatu permasalahan penentuan kandidat

model.

2. Algoritma genetika dapat digunakan untuk menyelesaikan penentuan

kandidat model, walaupun tidak selalu optimal tetapi setidaknya

mendekati solusi optimal.

3. Semakin banyak proses iterasi yang dilakukan maka kemungkinan fitness

yang dihasilkan akan semakin mendekati solusi optimal.

F. Saran

Untuk pengembangan penyelesaian kedepan yang lebih baik dengan

menggunakan algoritma genetika, penulis mengemukakan beberapa saran :

1. Menggunakan metode crossover ataupun mutasi yang lain. Sehingga dapat

dibandingkan keberhasilannya.

2. Penggunaan metode lain dalam penentuan orangtua yang akan digunakan

dalam proses crossover mungkin akan memberikan hasil yang lebih baik.

Page 73: IMPLEMENTASI ALGORITMA GENETIKA DALAM ...yang didasarkan pada residual antara keluaran sistem dan keluaran model. Pengukuran masukan-keluaran dalam penelitian ini dilakukan pada suatu

DAFTAR PUSTAKA

1. Muntini,S.M and Nazaruddin, Y.Y., Identification of Vehicle Suspension

Using Genetic Algorithm Technique, Proc. of Indonesia Germany

Conference (IGC) 2001, Bandung, 2001

2. Mitsuo Gen & Runwei Cheng, “Genetic Algorithms & Engineering

Design”, John Wiley and Son, 1997.

3. Johansson, Rolf, 1993, System Modeling and Identification, Prentice Hall,

New York.

4. Sriwindono, H, Pembuatan Jadwal Ujian Dengan Menggunakan

Algoritma Genetika, Prosiding Seminar Nasional Ilmu Komputer dan

Aplikasinya – SNIKA 2006, Bandung, 2006.

5. www.cs.felk.cvut.cz/~xobitko/ga