49
ALGORITMA GENETIKA I. Pengertian Algoritma Dalam dunia komputasi, istilah algoritma menjadi dasar pemikiran sebuah formulasi.Algoritma dapat didefinisikan sebagai teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan sistematis.Kalimat-kalimat ini dapat diterjemahkan secara bertahap dari awal hingga akhir.Algoritma harus berhenti setelah mengerjakan serangkaian tugas atau langkahnya terbatas dan setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda [Suarga, 2006]. Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.Desain dan analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan Page 1

Genetic Algorithm

Embed Size (px)

Citation preview

Page 1: Genetic Algorithm

ALGORITMA GENETIKA

I. Pengertian Algoritma

Dalam dunia komputasi, istilah algoritma menjadi dasar pemikiran

sebuah formulasi.Algoritma dapat didefinisikan sebagai teknik

penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat

dengan jumlah kata terbatas tetapi tersusun secara logis dan

sistematis.Kalimat-kalimat ini dapat diterjemahkan secara bertahap dari

awal hingga akhir.Algoritma harus berhenti setelah mengerjakan

serangkaian tugas atau langkahnya terbatas dan setiap langkah harus

didefinisikan dengan tepat sehingga tidak memiliki arti ganda [Suarga,

2006].

Algoritma sering mempunyai langkah pengulangan (iterasi) atau

memerlukan keputusan (logika Boolean dan perbandingan) sampai

tugasnya selesai.Desain dan analisis algoritma adalah suatu cabang

khusus dalam ilmu komputer yang mempelajari karakteristik dan

performansi dari suatu algoritma dalam menyelesaikan masalah.Algoritma

pun bersifat bebas, artinya tidak bergantung pada sistem komputer atau

bahasa pemrograman yang digunakan. Algoritma yang berbeda dapat

diterapkan pada suatu masalah dengan kriteria yang sama. Dalam

penyelesaian masalah, ukuran banyak komputasi dari suatu algoritma

dinyatakan dalam kompleksitas.Jika sebuah permasalahan dalam

diselesaikan dalam waktu yang singkat dikatakan kompleksitas algoritma

Page 1

Page 2: Genetic Algorithm

rendah, sementara algoritma yang membutuhkan waktu lama untuk

menyelesaikan masalahnya mempunyai kompleksitas yang tinggi.

Kata algoritma sendiri berasal dari latinisasi nama seorang ahli

matematika dari Uzbekistan yaitu Al Khawārizmi (hidup sekitar abad ke-

9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin

dari abad ke-12 "Algorithmi de numero Indorum". Pada abad ke-18, istilah

ini berkembang menjadi algoritma, yang mencakup semua prosedur atau

urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu

permasalahan. [Munir, 2007]

Terdapat beragam klasifikasi algoritma dan setiap klasifikasi

mempunyai alasan tersendiri. Salah satu cara untuk melakukan klasifikasi

jenis-jenis algoritma adalah dengan memperhatikan paradigma dan

metode yang digunakan untuk mendesain algoritma tersebut.

II. Pengertian Algoritma Genetika

Algoritma Genetika (GA) adalah suatu metode optimasi dan

simulasi yang perkembangannya tidak bisa lepas dari paradigma evolusi

yang ditunjukkan pertama kali oleh Charles Darwin (1809-1882) yang

diteruskan dalam perkembangan teori genetika. Evolusi Darwin yang

berbasis pada konsep “survival of the fittest” menyatakan bahwa evolusi

jenis-jenis spesies makhluk hidup dan ekosistemnya terjadi karena seleksi

alam. Algoritma genetika juga merupakan algoritma pencarian heuristik

yang didasarkan atas mekanisme evolusi biologis. Keberagaman pada

evolusi biologis adalah variasi dari kromosom antar individu organisme.

Page 2

Page 3: Genetic Algorithm

Variasi kromosom ini akan mempengaruhi laju reproduksi dan

tingkat kemampuan organisme untuk tetap hidup. Pada dasarnya ada

empat kondisi yang sangat mempengaruhi proses evolusi, yaitu:

a. Kemampuan organisme untuk melakukan reproduksi.

b. Keberadaan populasi organisme yang bisa melakukan reproduksi.

c. Keberagaman organisme dalam suatu populasi.

d. Perbedaan kemampuan untuk survive.

Individu yang lebih kuat (fit) akan memiliki tingkat kemampuan

survival dan tingkat reproduksi yang lebih tinggi jika dibandingkan dengan

individu yang kurang fit. Pada kurun waktu tertentu (sering dikenal dengan

istilah generasi), populasi secara keseluruhan akan lebih banyak memuat

organisme yang fit.

Algoritma genetika pertama kali dikembangkan oleh John Holland

dari Universitas Michigan (1975). John Holland mengatakan bahwa setiap

masalah yang berbentuk adaptasi (alami maupun buatan) dapat

diformulasikan dalam terminologi genetika. Algoritma genetika adalah

simulasi dari proses evolusi Darwin dan operasi genetika atas kromosom.

Gambar 1. Struktur Genetika

Page 3

Page 4: Genetic Algorithm

Teori genetika memodelkan sifat-sifat bawaan makhluk hidup dari

gen-gen yang diwariskan dari suatu makhluk hidup kepada keturunannya.

Setiap makhluk hidup mempunyai kumpulan gen yang jumlahnya untuk

setiap spesies adalah sama. Sekumpulan gen atau kromosom

mengandung cetak biru dari sifat suatu makhluk hidup secara terdistribusi

(Gambar 1). Perubahan variasi dari kumpulan gen dalam kromosom, baik

melalui perkawinan atau mutasi adalah basis dari perubahan sifat dasar

spesies. Jadi Dengan teori evolusi dan teori gentika, maka penerapan GA

akan melibatkan beberapa operator, yaitu :

1. Operasi Evolusi yang melibatkan proses seleksi (selection).

2. Operasi Genetika yang melibatkan operator pindah silang (crossover)

dan mutasi (mutation).

Untuk memeriksa hasil optimasi, dibutuhkan fungsi fitness, untuk

menandakan hasil yang sudah dikodekan. Selama proses, induk harus

digunakan untuk reproduksi, pindah silang dan mutasi untuk menciptakan

keturunan. Jika GA didesain secara baik, maka populasi akan mengalami

konvergensi dan akan mendapatkan solusi yang optimum.

III.Struktur Umum Algoritma Genetika

Pada algoritma ini, teknik pencarian dilakukan sekaligus atas

sejumlah solusi, kumpulan solusi ini dikenal dengan istilah populasi.

Individu yang terdapat dalam satu populasi disebut dengan istilah

kromosom. Hubungan antara gen, populasi dan kromosom dapat dilihat

pada gambar 2.

Page 4

Page 5: Genetic Algorithm

Gambar 2. Gen, kromosom dan populasi

Kromosom ini merupakan suatu solusi yang masih berbentuk

simbol. Populasi awal dibangun secara acak, sedangkan populasi

berikutnya merupakan hasil evolusi kromosom-kromosom melalui iterasi

yang disebut dengan istilah generasi. Generasi dapat diilustrasikan pada

gambar 3.

Gambar 3.Pembentukan Generasi

Pada setiap generasi, kromosom akan melalui proses evaluasi

dengan menggunakan alat ukur yang disebut dengan fungsi fitness atau

fungsi evaluasi. Nilai fitness dari suatu kromosom akan menunjukkan

kualitas kromosom dalam populasi tersebut. Generasi berikutnya dikenal

dengan istilah keturunan (offspring) terbentuk dari gabungan dua

Page 5

Page 6: Genetic Algorithm

Populasi AwalEE

kromosom generasi sekarang yang bertindak sebagai induk (parent)

dengan menggunakan operator penyilangan (crossover). Selain operator

penyilangan, suatu kromosom dapat juga dimodifikasi dengan

menggunakan operator mutasi. Populasi generasi yang baru dibentuk

dengan cara menyeleksi nilai fitness dari kromosom induk (parent) dan

nilai fitness dari kromosom anak (offspring), serta menolak kromosom-

kromosom yang lainnya sehingga ukuran populasi (jumlah kromosom

dalam suatu populasi) konstan. Setelah melalui beberapa generasi, maka

algoritma ini akan konvergen ke individu terbaik.

Adapun siklus algoritma secara umum dapat dilihat pada gambar 4.

Gambar 4. Siklus Algoritma Genetika oleh David Goldberg

Algoritma Genetika ini meniru mekanisme dari genetika alam. Dari siklus

di atas dapat dijabarkan sebagai berikut :

a. Membuat Populasi Awal

Langkah pertama dalam algoritma ini adalah membentuk sejumlah

populasi awal yang digunakan untuk mencari penyelesaian optimal.

Populasi ini merupakan kumpulan dari alternatif solusi. Dengan adanya

Page 6

Page 7: Genetic Algorithm

populasi ini, maka Algortima Genetika melakukan proses pencarian

dari berbagai titik uji. Pembuatan populasi awal ini dilakukan secara

random.

b. Representasi Individu

Agar dapat diproses melalui Algoritma Genetika, maka alternatif solusi

tersebut harus direpresentasikan terlebih dahulu ke dalam bentuk

kromosom. Representasi kromosom merupakan proses pengkodean

dari penyelesaian asli suatu masalah. Pengkodean tersebut meliputi

penyandian gen, dengan satu gen mewakili satu variabel.

c. Fungsi Fitness

Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai

ukuran performansinya. Fungsi tersebut disebut fungsi fitness,

(Hermanto 2003) yaitu Fungsi yang membedakan kualitas dari

kromosom yang diinginkan. kromosom yang memiliki fungsi fitness

yang tinggi akan dipertahankan sedangkan kromosom dengan harga

fungsi fitness yang rendah akan diganti.

Setelah menentukan parameter-parameter diatas, pada proses

inisialisasi populasi kemudian dibangkitkan sejumlah kromosom secara

random yang jumlahnya sesuai dengan population size. Hal ini dinamakan

dengan populasi awal.

d. Seleksi

Proses seleksi adalah proses pemilihan kromosom yang berguna

untuk menghasilkan kromosom pada generasi baru (seleksi orang

Page 7

Page 8: Genetic Algorithm

tua/induk). Proses seleksi yang umum digunakan adalah dengan

menggunakan seleksi mesin roulette (roulette wheel selection). Pada

seleksi roulette wheel selection diamsumsikan dengan model pie-

shaped. Pada gambar 5 nomor 1,2,3 dan 4 dinyatakan kromosom.

Gambar 5. Seleksi roullete wheel

Pada gambar 5 ini mewakili empat kromosom, dimana setiap

kromosommemiliki luas daerah yang berbeda itu terjadi sebagai akibat

dari perbedaan fitness.

e. Crossover

Crossover terjadi ketika kedua parent berukar bagian kromosom-nya.

Dalam algoritma genetika crossover menggabungkan materi gentika

dari kedua kromosom parent menjadi 2 offspring. Prosedure untuk

memilih parent mana yang akan di crossover melalui 3 tahap :

1. Menetukan titik crossover secara random berdasarkan panjang

kromosom parent

2. Untuk dua kromosom parent yang sudah ditentukan titik potongnya

masing-masing dilakukan pertukaran gen atau penyilangan gen.

Page 8

Page 9: Genetic Algorithm

Dalam algoritma genetika dikenal beberapa macam tipe dari

crossover yaitu :

1. One-point Crossover

2. Multi-point Crossover

3. Uniform Crossover

4. Order Crossover

One Point Crossover

Pada One Point Crossover hanya ada satu titik potong yang

ditentukan secara acak. kromosom offspring di peroleh dengan menukar

potongan kromosom sisi kanan dari parent pertama dengan parent kedua.

Untuk lebih jelasnya, dapat dilihat melalui tahapan-tahapan berikut ini :

a. Hitung panjang kromosom yaitu banyak gen yang ada dalam

kromosom.

b. Buat titik crossover dengan cara membangkitkan nilai random antara 1

sampai dengan panjang individu (1-, misalnya nilai randomnya n).

c. Pertukarkan gen yang ke n sampai ke total gen dari parent 1 dengan

yang ke n sampai ke total gen dari parent 2

Parent Offspring

13240 5 1325452364 152356

05125 4 05124 0 5321 4 5 6 3 2 1 4 6 4 1

Gambar 6. One Point Crossover

Page 9

Page 10: Genetic Algorithm

f. Mutasi

Proses mutasi adalah proses yang bertujuan untuk mengubah

salah satu atau banyak bagian gen dalam kromosom. Pada mutasi juga

dikenal sebuah parameter mutasi yaitu mutation probability atau mutation

rate. Mutation probability adalah probabilitas dari banyaknya mutasi yang

terjadi pada kromosom. Biasanya mutation probility 0, berarti offspring

diambil langsung atau di- copy langsung dari parents tanpa ada

perubahan. Jika ada mutation probility. Berarti ada bagian dari offspring

diubah. Jika mutation probility 1, berarti semua bagian dari offspring

diubah. Langkah-langkah untuk menentukan gen mana yang akan di

mutasi adalah :

1. Tentukan probability mutasi ( pm ).

2. Bangkitkan bilangan random berdistribusi 0 – 1 untuk setiap gen pada

masing-masing kromosom.

3. Bandingkan tiap-tiap bilangan pada gen dengan probabilitas mutasi.

4. Bila bilangan random <= probabilitas mutasi ( pm ) maka gen itu yang

akan dipilih untuk dimutasi.

5. Setelah didapatkan posisinya maka gen itu dimutasi.

ParentOffspring

1324 0 5 2 4 2 4 0 5

5 2 3 6 4 1 6 3 2 6 4 5

Page 10

Gambar 7. Mutation

Page 11: Genetic Algorithm

Jadi selengkapnya istilah-istilah penting dalam algoritma genetika

antara lain

Genotype (Gen), sebuah nilai yang menyatakan satuan dasar

yang membentuk arti tertentu dalam satu kesatuan yang disebut

kromoson. Gen ini dapat berupa nilai biner, float, integer maupun

karakter. Pada Algoritma Genetika digunakan nilai biner.

Allele, nilai dari Gen.

Kromoson, gabungan gen yang membentuk nilai tertentu.

Individu, menyatakan suatu nilai atau keadaan yang menyatakan

salah satu solusi yang mungkin dari permasalahan yang diangkat.

Populasi, sekumpulan individu yang akan diproses bersama dalam

satu siklus proses evolusi.

Generasi, menyatakan satu satuan siklus proses evolusi.

Nilai Fitness, menyatakan seberapa baik nilai dari suatu individu

atau solusi yang didapatkan.

g. Kondisi Berhenti

Kondisi berhenti tercapai ketika solusi optimum terpenuhi dan

Algoritma Genetika akan menghentikan proses pencariannya.

Page 11

Page 12: Genetic Algorithm

IV. Flowchart Algoritma Genetika

Flowchart sistem digunakan untuk menggambarkan keseluruhan

langkah kerja dari sistem yang dibuat.

Gambar 8.Flowchart proses algoritma genetika

Page 12

Yes

Inisialisasi populasi

Evaluasi

Seleksi

Crossover

Mutation

Evaluasi PembentukanGenerasi Baru

(Replacement strategy)

END

START

No

Hasil Penyelesaian

Kriteria BerhentiGenerasi

Page 13: Genetic Algorithm

V. Contoh Kasus

Contoh kasus ini diberikan untuk memperjelas bagaimana aplikasi

algoritma genetika dapat menyelesain persoalan optimasi.

Kasus : Tentukanlah nilai maksimum dari fungsi f(x) = e-2x (sin 3x)

dengan menggunakan algoritma genetika.

Solusi :

Nilai x dari persamaan dari persamaan di atas merepresentasikan suatu

individu.Individu yang terbentuk kemudian dinyatakan dengan bilangan

biner.Selanjutnya fungsi yang ingin dicari nilai maksimumnya terlebih dulu

harus diketahui bentuk atau pola dari fungsi tersebut. Sehingga jika

digambarkan dalam koordinat kartesian akan diperoleh gambar berikut :

Gambar 9. Grafik fungsi f(x) = e-2x (sin 3x )

Dari grafik di atas terlihat bahwa nilai maksimum dari fungsi tersebut

berada pada interval 0 < x < 1

Page 13

Page 14: Genetic Algorithm

Langkah-langkah penyelesaian :

1. Membangkitkan Populasi Awal :

Sebagaimana yang telah dijelaskan sebelumnya, pembangkitan

populasi awal dilakukan secara random /acak. Namun sebelum itu perlu

diperhitungkan hal-hal sebagai berikut :

- Diasumsikan bahwa 1 kromosonterdiri atas 8 gen yang kemudian

dituliskan dalam bentuk 8 bit biner(asumsi ini bisa lebih atau kurang

dari 8karena semakin banyak gen maka proses komputasi juga akan

semakin lambat disebabkan semakin banyaknya iterasi yang

dilakukan).

- Dengan demikian berdasarkan interval yang telah ditentukan di atas

maka representasi kromoson terhadap nilai interval solusi nilai

maksimum adalah :

- Sesuai aturan bilangan biner maka kombinasi biner yang dapat terjadi

untuk 8 bit biner adalah : 28 = 256 kombinasi bit atau dalam istilah

genetika menjadi 8 gen adalah : 28 = 256 kombinasi gen. Jadi akan

diperoleh sebanyak 256 kromoson atau 256 individu.

Nilai tiap bit/gen (allele) = (1/256) = 0,0039

Misalkan kombinasi gen :

00000001 → Nilai aktual biner = 0+0+0+0+0+0+0+20 = 1

→ Nilai Individu = 1/256 = 0,00391

→ Nilai fitness = e-2 . 0,00391 [Sin 3 . 0,00391] = 0,0116

Page 14

Page 15: Genetic Algorithm

00000010 → Nilai aktual biner = 0+0+0+0+0+0+21+0 = 2

→ Nilai Individu = 2/256 = 0,00781

→ Nilai fitness = e-2 . 0,00781 [Sin 3 . 0,00781] = 0,0231

Demikian seterusnya sampai pada kombinasi ke 256.

Secara rinci urutan kombinasi tersebut dapat dilihat pada tabel 1.

Tabel 1. Rincian kombinasi bit atau gen

KromosonKomb.

Bit / Gen

Nilai tiap

Bit/Gen(Allele)

Nilai AktualKombinasi Biner

NilaiIndividu

Nilai(Fitness)

1 00000000 0,0039 0 0 0

2 00000001 0,0039 20 = 1(1/256) = 0,00391

0,0116

3 00000010 0,0039 21 = 2(2/256) = 0,00781

0,0231

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

255 11111110 0,003927+26+25+24+23+22+21+0 =

127(127/256)=

0,496090,3695

256 11111111 0,003927+26+25+24+23+22+21+20=

255(255/256)=

0,996090,0208

Selanjutnya dibentuk populasi awal misalkan satu populasi terdiri atas

10 individu dengan 8 gen biner yang dibangkitkan secara acak, sebagai

berikut :

Gambar 10. Susunan individu pada populasi awal

Page 15

Page 16: Genetic Algorithm

2. Seleksi orang tua / induk (parent) :

Seleksi merupakan proses pemilihan calon induk. Proses seleksi ini

menggunakan beberapa metode salah satunya adalah metode mesin

roulette (roulette wheel).Seleksi dilakukan dengan menggunakan

prosentase fitness setiap individu dimana setiap individu mendapatkan

luas bagian sesuai prosentase fitnessnya. Selengkapnya perhitungan

prosentase fitness, yaitu :

Tabel 2. Prosentase nilai fitness

10010000 0.5625 0.322401001100 0.30469 0.430601100110 0.39844 0.419310111101 0.73828 0.182711101000 0.90625 0.067011110010 0.94531 0.045400110011 0.19922 0.377811111100 0.98438 0.026210000111 0.52734 0.348310001011 0.54297 0.3370

2.5567

13.613.2100

Individu Nilai Individu Nilai Fitness Persen fitness (%)

Jumlah nilai fitness

12.616.816.47.12.61.8

14.81.0

Gambar 11. Seleksi individu menggunakan roulette wheel

Page 16

Page 17: Genetic Algorithm

Jadi untuk kondisi di atas, dihitung jatah untuk masing-masing individu :Individu 1 : fitness = 12% jatah = 1 – 12Individu 2 : fitness = 17% jatah = 13 – 29Individu 3 : fitness = 16% jatah = 30 – 45Individu 4 : fitness = 7% jatah = 46 – 52Individu 5 : fitness = 3% jatah = 53 – 55Individu 6 : fitness = 2% jatah = 56 – 57Individu 7 : fitness = 15% jatah = 58 – 72Individu 8 : fitness = 1% jatah = 73Individu 9 : fitness = 14% jatah = 74 – 87Individu 10 : fitness = 13% jatah = 88 – 100

Berarti dibangkitkan bilangan random antara 1 – 100 sebanyak 10 kali.Nilai random 12 : individu 1Nilai random 20 : individu 2Nilai random 35 : individu 3Nilai random 60 : individu 7Nilai random 76 : individu 9Nilai random 99 : individu 10Nilai random 15 : individu 2Nilai random 40 : individu 3Nilai random 80 : individu 9Nilai random 30 : individu 2

Jadi individu terpilih menjadi :

Tabel 2.Individu terseleksi

10010000 0.5625 0.3224 Survive01001100 0.30469 0.4306 Survive01100110 0.39844 0.4193 Survive10111101 0.73828 0.1827 Gugur11101000 0.90625 0.0670 Gugur11110010 0.94531 0.0454 Gugur00110011 0.19922 0.3778 Survive11111100 0.98438 0.0262 Gugur10000111 0.52734 0.3483 Survive10001011 0.54297 0.3370 Survive

2.5567

Keterangan

14.81.0

13.613.2

Jumlah nilai fitness 100

16.816.47.12.61.8

Individu Nilai Individu Nilai Fitness Persen fitness (%)

12.6

Page 17

6 Individu Terpilih

Page 18: Genetic Algorithm

3. Rekombinasi / perkawinan silang (Crossover)

Crossover merupakan proses mengkombinasikan dua individu atau

induk terpilih dari proses seleksi untuk memperoleh individu-individu baru

yang diharapkan mempunyai nilai fitness yang lebih baik.

Misalnya secara acak diambil inividu 2 dan 10 sebagai induk, diperoleh :

Kemudian dicari alternatif individu yang lain, misalnya induk 2 dan induk

3 :

Jadi terlihat diperoleh anak atau individu baru dengan nilai fitness yang

lebih baik dari induknya. Dengan demikian keturunan baru ini akan survive

untuk membentuk generasi baru.

Page 18

Page 19: Genetic Algorithm

4. Mutasi

Mutasigenadalahprosespenggantiangendengannilaiinversinya,

gen0 menjadi1 dangen1 menjadi0.

Prosesinidilakukansecaraacakpadaposisigentertentupadaindividu-

individuyang terpilihuntukdimutasikan.

Banyaknyaindividuyangmengalamimutasiditentukanolehbesarnyaprobabilit

asmutasi.

Hasil penyelesaian dengan algoritma genetika terhadap masalah nilai

maksimum dari fungsi f(x) = e-2x (Sin 3x), yaitu ;

Page 19

Page 20: Genetic Algorithm

Artinya ilai maksimum dari fungsi f(x) = e-2x (Sin 3x) yang berada pada

interval 0 < x < 1 adalah x = 0,43060.

Berikut ini adalah masalah yang diangkat :Penjadwalan Matakuliah

Andaikan terdapat n buah matakuliah M = {m1, m2, …, mn}. Setiap matakuliah mi memiliki waktu mulai kuliah si dan waktu akhir kuliah fi

yang dinyatakan dalam interval setengah-buka [si, fi). Matakuliah mi dan mj disebut saling berurutan jika interval [si, fi) dan [sj, fj) tidak overlap atau berhimpit (yakni, mi dan mj saling berurutan jika si fj atau sj fi).

Soal-2: Tentukan jumlah ruangan minimum yang dapat digunakan dalam mengatur jadwal matakuliah.

Sebagai contoh, diberikan matakuliah M = {m1, m2, …, m11} dengan waktu mulai dan waktu akhir matakuliah pada tabel berikut.

mi 1 2 3 4 5 6 7 8 9 10 11

si 1 3 0 5 3 5 6 8 8 2 12fi 4 5 6 7 8 9 10 11 12 13 14

Pasangan matakuliah {m1, m4, m8, m11} dan {m2, m4, m9, m11} adalah pasangan matakuliah yang saling berurutan dengan ukuran maksimum.

Jumlah ruangan minimum yang dibutuhkan adalah 5 dengan matakuliah yang saling berpasangan: {m1, m4, m8, m11}, {m2, m6}, {m3, m7}, {m5, m9}, {m10}

Jawaban :

Soal yang akan dibahas adalah soal nomor 2 dengan menggunakan

Algoritma Genetika dimana ditanyakan mengenai jumlah ruangan

minimum yang dapat digunakan. Oleh karena yang hendak kita cari

adalah jumlah ruangan minimum, maka kita harus menemukan mata

kuliah - mata kuliah apa saja yang overlap atau bertabrakan agar dapat

diperoleh jumlah ruangan minimumnya. Namun, selain syarat bahwa mata

kuliah tersebut harus bertabrakan, dalam pasangan mata kuliah – mata

kuliah tersebut juga tak boleh ada dua atau lebih mata kuliah yang saling

berurutan. Dari tabel di atas, dapat ditemukan pasangan mata kuliah yang

saling bertabrakan.

Page 20

Page 21: Genetic Algorithm

Berikut adalah pasangan mata kuliah – mata kuliah tersebut :

1. {m1, m2, m3, m5, m10}

2. {m3, m4, m5, m6, m10}

3. {m4, m5, m6, m7, m10}

4. {m6, m7, m8, m9, m10}

5. {m10, m11}

Berikut beberapa individu yang dipilih sebagai populasi awal/generasi

pertama disesuaikan dengan mata kuliah – mata kuliah yang bertabrakan.

Dalam hal ini, nilai fitness suatu individu dihitung dari banyaknya mata

kuliah yang bertabrakan (banyaknya alel yang bernilai 1 dalam suatu

kromosom) :

Individu 11 2 3 4 5 6 7 8 9 10 11

1 1 1 0 1 0 0 0 0 1 0Nilai Fitness = 5

Individu 21 2 3 4 5 6 7 8 9 10 11

0 0 0 0 0 1 1 1 1 1 0Nilai Fitness = 5

Individu 31 2 3 4 5 6 7 8 9 10 11

0 0 1 1 1 1 0 0 0 1 0Nilai Fitness = 5

Individu 41 2 3 4 5 6 7 8 9 10 11

0 0 0 0 0 0 0 0 0 1 1Nilai Fitness = 2

Individu 51 2 3 4 5 6 7 8 9 10 11

0 0 0 1 1 1 1 0 0 1 0Nilai Fitness = 5

Individu – individu tersebut kemudian akan menjadi induk yang akan dipersilangkan dan dimutasikan.

Page 21

Page 22: Genetic Algorithm

Persilangan ( Cross Over ) dan Mutasi GENERASI PERTAMA :

1. Individu 1 dan 2NB : Digit angka yang di-highlight kuning adalah gen-gen yang akan

disilangkanDilakukan Cross Over antara individu 1 dan 2 :

1 1 1 0 1 0 0 0 0 1 00 0 0 0 0 1 1 1 1 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

1 1 1 0 0 1 1 0 0 1 0 6 gagal0 0 0 0 1 0 0 1 1 1 0 4 gagal

NB : Digit angka yang di-highlight biru adalah gen-gen yang akan dimutasikan

Dan dari hasil mutasi, diperoleh lagi dua individu baru yaitu :

Nilai Fitness1 1 1 0 0 1 0 0 0 1 0 5 Gagal0 0 0 0 1 0 1 1 1 1 0 5 Gagal

2. Individu 1 dan 3Dilakukan Cross Over antara individu 1 dan 3 :

1 1 1 0 1 0 0 0 0 1 00 0 1 1 1 1 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness1 1 1 0 1 1 0 0 0 1 0 6 Gagal

0 0 1 1 1 0 0 0 0 1 0 4Berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Page 22

Page 23: Genetic Algorithm

Nilai Fitness1 1 1 0 1 1 0 0 0 1 0 6 Gagal

0 0 1 1 1 0 0 0 0 1 0 4Berhasi

l

3. Individu 1 dan 4Dilakukan Cross Over antara individu 1 dan 4 :

1 1 1 0 1 0 0 0 0 1 00 0 0 0 0 0 0 0 0 1 1

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

1 1 1 0 0 0 0 0 0 1 0 4Berhasi

l0 0 0 0 1 0 0 0 0 1 1 3 Gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

1 1 1 0 0 0 0 0 0 1 0 4Berhasi

l0 0 0 0 1 0 0 0 0 1 1 3 Gagal

4. Individu 1 dan 5Dilakukan Cross Over antara individu 1 dan 5 :

1 1 1 0 1 0 0 0 0 1 00 0 0 1 1 1 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness1 1 1 0 1 1 1 0 0 1 0 7 Gagal

0 0 0 1 1 0 0 0 0 1 0 3Berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

Page 23

Page 24: Genetic Algorithm

1 1 1 0 1 1 0 0 0 1 0 6 Gagal

0 0 0 1 1 0 1 0 0 1 0 4Berhasi

l

5. Individu 2 dan 3Dilakukan Cross Over antara individu 2 dan 3 :

0 0 0 0 0 1 1 1 1 1 00 0 1 1 1 1 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness0 0 0 0 1 1 0 1 1 1 0 4 Gagal0 0 1 1 0 1 1 0 0 1 0 5 Gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness0 0 0 0 1 1 1 1 1 1 0 6 Gagal

0 0 1 1 0 1 0 0 0 1 0 4Berhasi

l

6. Individu 2 dan 4Dilakukan Cross Over antara individu 2 dan 4 :

0 0 0 0 0 1 1 1 1 1 00 0 0 0 0 0 0 0 0 1 1

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 0 0 0 0 0 1 1 1 0 3Berhasi

l0 0 0 0 0 1 1 0 0 1 1 4 Gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness0 0 0 0 0 0 1 1 1 1 0 4 Berhasi

Page 24

Page 25: Genetic Algorithm

l0 0 0 0 0 1 0 0 0 1 1 3 Gagal

7. Individu 2 dan 5Dilakukan Cross Over antara individu 2 dan 5 :

0 0 0 0 0 1 1 1 1 1 00 0 0 1 1 1 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness0 0 0 0 1 1 1 1 1 1 0 6 Gagal

0 0 0 1 0 1 1 0 0 1 0 4Berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness0 0 0 0 1 1 1 1 1 1 0 6 Gagal

0 0 0 1 0 1 1 0 0 1 0 4Berhasi

l

8. Individu 3 dan 4Dilakukan Cross Over antara individu 3 dan 4 :

0 0 1 1 1 1 0 0 0 1 00 0 0 0 0 0 0 0 0 1 1

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l0 0 0 0 1 1 0 0 0 1 1 4 gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

Page 25

Page 26: Genetic Algorithm

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l0 0 0 0 1 1 0 0 0 1 1 4 gagal

9. Individu 3 dan 5Dilakukan Cross Over antara individu 3 dan 5:

0 0 1 1 1 1 0 0 0 1 00 0 0 1 1 1 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness0 0 1 1 1 1 1 0 0 1 0 6 gagal

0 0 0 1 1 1 0 0 0 1 0 4berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 1 1 0 0 0 1 0 5berhasi

l

0 0 0 1 1 1 1 0 0 1 0 5berhasi

l

10. Individu 4 dan 5Dilakukan Cross Over antara individu 4 dan 5 :

0 0 1 1 1 1 0 0 0 1 00 0 0 0 0 0 0 0 0 1 1

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l0 0 0 0 1 1 0 0 0 1 1 4 gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l

Page 26

Page 27: Genetic Algorithm

0 0 0 0 1 1 0 0 0 1 1 4 gagal

Dilihat dari hasil cross over dan mutasi, terdapat beberapa anak yang gagal. Maksud gagal di sini adalah gen individu – individu tersebut tidak sesuai dengan pasangan mata – mata kuliah yang bertabrakan atau dengan kata lain, ada beberapa gen ( mata kuliah ) dari individu yang gagal tersebut yang tidak bertabrakan / berurutan. Sementara, untuk hasil persilangan yang sukses, memiliki kemungkinan untuk menjadi solusi (penyelesaian) karena alel dari gen – gen tersebut sesuai dengan pasangan mata kuliah yang bertabrakan. Maka, dari hasil reproduksi tersebut, diperoleh calon-calon individu generasi kedua yang berhasil :

Calon

Anak

Mata kuliah ke-I

1 2 3 4 5 6 7 8 9 10 11

Nilai Fitness Ket.

1 0 0 1 1 1 0 0 0 0 1 0 4 Sama2 0 0 1 1 1 0 0 0 0 1 0 43 1 1 1 0 0 0 0 0 0 1 0 4 Sama4 1 1 1 0 0 0 0 0 0 1 0 45 0 0 0 1 1 0 0 0 0 1 0 36 0 0 0 1 1 0 1 0 0 1 0 47 0 0 1 1 0 1 0 0 0 1 0 48 0 0 0 0 0 0 0 1 1 1 0 39 0 0 0 0 0 0 1 1 1 1 0 4

10 0 0 0 1 0 1 1 0 0 1 0 411 0 0 1 1 0 0 0 0 0 1 0 3 Sama12 0 0 1 1 0 0 0 0 0 1 0 313 0 0 0 1 1 1 0 0 0 1 0 414 0 0 1 1 1 1 0 0 0 1 0 515 0 0 0 1 1 1 1 0 0 1 0 516 0 0 1 1 0 0 0 0 0 1 0 3 Sama17 0 0 1 1 0 0 0 0 0 1 0 3

Tabel 1.1 : Tabel Calon Individu – Individu Generasi Kedua

Dari calon – calon anak dari hasil reproduksi di atas, ada beberapa individu yang memiliki untaian dengan gen yang sama, oleh karena itu individu – individu yang sama tersebut dapat digabungkan menjadi satu saja. Maka, individu – individu untuk generasi kedua, yaitu :

Page 27

Page 28: Genetic Algorithm

Individu

Nilai Fitness

1 0 0 1 1 1 0 0 0 0 1 0 42 1 1 1 0 0 0 0 0 0 1 0 43 0 0 0 1 1 0 0 0 0 1 0 34 0 0 0 1 1 0 1 0 0 1 0 45 0 0 1 1 0 1 0 0 0 1 0 46 0 0 0 0 0 0 0 1 1 1 0 37 0 0 0 0 0 0 1 1 1 1 0 48 0 0 0 1 0 1 1 0 0 1 0 49 0 0 1 1 0 0 0 0 0 1 0 3

10 0 0 0 1 1 1 0 0 0 1 0 411 0 0 1 1 1 1 0 0 0 1 0 512 0 0 0 1 1 1 1 0 0 1 0 513 0 0 1 1 0 0 0 0 0 1 0 3

Tabel 1.2 : Tabel Individu – Individu Generasi Kedua

Setelah diperoleh beberapa calon individu generasi kedua, dilakukan seleksi berikutnya untuk menentukan individu mana saja yang cocok menjadi populasi generasi kedua. Seleksi didasarkan pada individu dengan nilai fitness tertinggi. Maka, dari penyeleksian dengan cara itu, diperoleh populasi generasi kedua dengan jumlah individu sama dengan jumlah induknya, yakni :

Individu

Nilai Fitness

1 0 0 1 1 1 1 0 0 0 1 0 52 0 0 0 1 1 1 1 0 0 1 0 53 0 0 1 1 1 0 0 0 0 1 0 44 1 1 1 0 0 0 0 0 0 1 0 45 0 0 0 1 1 0 1 0 0 1 0 4

Tabel 1.3 : Tabel Individu – Individu Generasi Kedua yang Unggul

Setelah diperoleh beberapa individu generasi kedua yang unggul, maka dilakukan lagi proses reproduksi yang meliputi, cross-over dan mutasi.

Page 28

Page 29: Genetic Algorithm

Persilangan (Cross Over) dan Mutasi GENERASI KEDUA :

1. Individu 1 dan 2NB : Digit angka yang di-highlight kuning adalah gen-gen yang

akan disilangkanDilakukan Cross Over antara individu 1 dan 2 :

0 0 1 1 1 1 0 0 0 1 00 0 0 1 1 1 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 1 1 1 0 0 1 0 6 gagal0 0 0 1 1 1 0 0 0 1 0 4 berhasil

NB : Digit angka yang di-highlight biru adalah gen-gen yang akan dimutasikan

Dan dari hasil mutasi, diperoleh lagi dua individu baru yaitu :

Nilai Fitness0 0 1 1 1 1 0 0 0 1 0 5 berhasil0 0 0 1 1 1 1 0 0 1 0 5 berhasil

2. Individu 1 dan 3Dilakukan Cross Over antara individu 1 dan 3 :

0 0 1 1 1 1 0 0 0 1 00 0 1 1 1 0 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 1 0 0 0 0 1 0 4berhasi

l

0 0 1 1 1 1 0 0 0 1 0 5berhasi

l

Page 29

Page 30: Genetic Algorithm

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 1 0 0 0 0 1 0 4berhasi

l

0 0 1 1 1 1 0 0 0 1 0 5berhasi

l

3. Individu 1 dan 4Dilakukan Cross Over antara individu 1 dan 4 :

0 0 1 1 1 1 0 0 0 1 01 1 1 0 0 0 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l1 1 1 0 1 1 0 0 0 1 0 6 gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l1 1 1 0 1 1 0 0 0 1 0 6 gagal

4. Individu 1 dan 5Dilakukan Cross Over antara individu 1 dan 5 :

0 0 1 1 1 1 0 0 0 1 00 0 0 1 1 0 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 1 1 1 0 1 0 0 1 0 5 gagal

0 0 0 1 1 1 0 0 0 1 0 4berhasi

l

Page 30

Page 31: Genetic Algorithm

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 1 0 0 0 0 1 0 4berhasi

l

0 0 0 1 1 1 1 0 0 1 0 5berhasi

l

5. Individu 2 dan 3Dilakukan Cross Over antara individu 2 dan 3 :

0 0 0 1 1 1 1 0 0 1 00 0 1 1 1 0 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 0 1 1 0 0 0 0 1 0 3berhasi

l0 0 1 1 1 1 1 0 0 1 0 6 gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 0 1 1 0 1 0 0 1 0 4berhasi

l

0 0 1 1 1 1 0 0 0 1 0 5berhasi

l

6. Individu 2 dan 4Dilakukan Cross Over antara individu 2 dan 4 :

0 0 0 1 1 1 1 0 0 1 01 1 1 0 0 0 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 0 1 0 0 0 0 0 1 0 2berhasi

l

Page 31

Page 32: Genetic Algorithm

1 1 1 0 1 1 1 0 0 1 0 7 gagal

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 0 1 0 0 1 0 0 1 0 3berhasi

l1 1 1 0 1 1 0 0 0 1 0 6 gagal

7. Individu 2 dan 5Dilakukan Cross Over antara individu 2 dan 5 :

0 0 0 1 1 1 1 0 0 1 00 0 0 1 1 0 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness

0 0 0 1 1 0 1 0 0 1 0 4berhasi

l

0 0 0 1 1 1 1 0 0 1 0 5berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 0 1 1 0 1 0 0 1 0 4berhasi

l

0 0 0 1 1 1 1 0 0 1 0 5berhasi

l

8. Individu 3 dan 4Dilakukan Cross Over antara individu 3 dan 4 :

0 0 1 1 1 0 0 0 0 1 01 1 1 0 0 0 0 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness0 0 1 1 0 0 0 0 0 1 0 3 berhasi

Page 32

Page 33: Genetic Algorithm

l

1 1 1 0 1 0 0 0 0 1 0 5berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 0 0 0 0 0 1 0 3berhasi

l

1 1 1 0 1 0 0 0 0 1 0 5berhasi

l

9. Individu 3 dan 5Dilakukan Cross Over antara individu 3 dan 5 :

0 0 1 1 1 0 0 0 0 1 00 0 0 1 1 0 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Nilai Fitness0 0 1 1 1 0 1 0 0 1 0 5 gagal

0 0 0 1 1 0 0 0 0 1 0 3berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

0 0 1 1 1 0 0 0 0 1 0 4berhasi

l

0 0 0 1 1 0 1 0 0 1 0 4berhasi

l

10. Individu 4 dan 5Dilakukan Cross Over antara individu 4 dan 5 :

1 1 1 0 0 0 0 0 0 1 00 0 0 1 1 0 1 0 0 1 0

Dari hasil persilangan diperoleh dua individu baru yaitu :

Page 33

Page 34: Genetic Algorithm

Nilai Fitness1 1 1 0 1 0 1 0 0 1 0 6 gagal

0 0 0 1 0 0 0 0 0 1 0 2berhasi

l

Kedua individu baru dimutasikan dan dari hasil mutasi diperoleh lagi dua individu baru, yaitu :

Nilai Fitness

1 1 1 0 1 0 0 0 0 1 0 5berhasi

l

0 0 0 1 0 0 1 0 0 1 0 3berhasi

l

Dilihat dari hasil cross over dan mutasi, terdapat beberapa anak yang gagal. Seperti pada hasil persilangan induk – induk pada generasi pertama, maksud gagal di sini ialah gen individu – individu tersebut tidak sesuai dengan pasangan mata – mata kuliah yang bertabrakan atau dengan kata lain, ada beberapa gen ( mata kuliah ) dari individu yang gagal tersebut yang tidak bertabrakan / berurutan. Sementara, untuk hasil persilangan yang sukses, memiliki kemungkinan untuk menjadi solusi (penyelesaian) karena alel dari gen – gen tersebut sesuai dengan pasangan mata kuliah yang bertabrakan. Maka, dari hasil reproduksi tersebut, diperoleh calon-calon individu generasi ketiga yang berhasil :

Calon

anak

Mata Kuliah ke - iNilai Fitness

1 2 3 4 5 6 7 8 9 10 11

1 0 0 1 1 1 1 0 0 0 1 0 52 0 0 1 1 1 1 0 0 0 1 0 53 0 0 1 1 1 1 0 0 0 1 0 54 0 0 1 1 1 1 0 0 0 1 0 55 0 0 0 1 1 1 1 0 0 1 0 56 0 0 0 1 1 1 1 0 0 1 0 57 0 0 0 1 1 1 1 0 0 1 0 58 0 0 0 1 1 1 1 0 0 1 0 59 1 1 1 0 1 0 0 0 0 1 0 5

10 1 1 1 0 1 0 0 0 0 1 0 511 1 1 1 0 1 0 0 0 0 1 0 512 0 0 1 1 1 0 0 0 0 1 0 4

Page 34

Page 35: Genetic Algorithm

13 0 0 1 1 1 0 0 0 0 1 0 414 0 0 1 1 1 0 0 0 0 1 0 415 0 0 1 1 1 0 0 0 0 1 0 416 0 0 0 1 1 1 0 0 0 1 0 417 0 0 0 1 1 1 0 0 0 1 0 418 0 0 0 1 1 0 1 0 0 1 0 419 0 0 0 1 1 0 1 0 0 1 0 420 0 0 0 1 1 0 1 0 0 1 0 421 0 0 0 1 1 0 1 0 0 1 0 422 0 0 1 1 0 0 0 0 0 1 0 323 0 0 1 1 0 0 0 0 0 1 0 324 0 0 1 1 0 0 0 0 0 1 0 325 0 0 1 1 0 0 0 0 0 1 0 326 0 0 0 1 0 0 1 0 0 1 0 327 0 0 0 1 0 0 1 0 0 1 0 328 0 0 0 1 1 0 0 0 0 1 0 329 0 0 0 1 1 0 0 0 0 1 0 330 0 0 0 1 0 0 0 0 0 1 0 231 0 0 0 1 0 0 0 0 0 1 0 2

Tabel 1.4 : Tabel Calon Individu – Individu Generasi KetigaKet : individu dengan warna yang sama memiliki kromosom dengan nilai

yang sama

Dari calon – calon anak dari hasil reproduksi di atas, ada beberapa individu yang memiliki untaian dengan gen yang sama, oleh karena itu individu – individu yang sama tersebut dapat digabungkan menjadi satu saja. Maka, individu – individu untuk generasi kedua, yaitu :

Individu

Mata Kuliah ke - i Nilai Fitness1 2 3 4 5 6 7 8 9 10 11

1 0 0 1 1 1 1 0 0 0 1 0 52 0 0 0 1 1 1 1 0 0 1 0 53 1 1 1 0 1 0 0 0 0 1 0 54 0 0 1 1 1 0 0 0 0 1 0 45 0 0 0 1 1 1 0 0 0 1 0 46 0 0 0 1 1 0 1 0 0 1 0 47 0 0 0 1 1 0 1 0 0 1 0 48 0 0 1 1 0 0 0 0 0 1 0 39 0 0 0 1 0 0 1 0 0 1 0 3

10 0 0 0 1 1 0 0 0 0 1 0 311 0 0 0 1 0 0 0 0 0 1 0 2

Tabel 1.5 : Tabel Individu – Individu Generasi Ketiga

Page 35

Page 36: Genetic Algorithm

Dari tabel 1.5, dapat dilihat bahwa nilai fitness tertinggi di antara individu – individu tersebut adalah 5, sehingga dapat disimpulkan bahwa jumlah ruangan minimum yang dapat digunakan untuk mengatur jadwal mata

kuliah adalah 5 ruangan.

VI. Summary

Algoritma merupakan sistem kecerdasan buatan yang meniru sel

pada tubuh manusia.

Algoritma genetika dapat digunakan untuk proses pencarian dan

proses optimasi.

Langkah-langkah dalam penyelesaian masalah dengan algoritma

genetika, yaitu ; pembangkitan populasi awal, menentukan proses

seleksi yang digunakan, menentukan perkawinan silang

(crossover) dan mutasi gen.

Algoritma ini dikembangkan dari proses pencarian solusi dengan

menggunakan pencarian acak, ini terlihat pada proses

pembangkitan populasi awal yang menyatakan sekelompok solusi

yang dipilih secara acak.

Selanjutnya pencarian dilakukan dengan proses genetika yang

memperhatikan pemikiran bagaimana memeproleh individu yang

lebih baik, sehingga dalam proses evolusi dapat diharapkan

diperoleh individu yang lebih baik.

Page 36