Penerapan Algoritma Genetika Dalam Penentuan Tata Letak Ruang

(1)

SKRIPSI

RIZKY YANDA

081402024

PROGRAM STUDI TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2013


(2)

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Teknologi Informasi

RIZKY YANDA 081402024

PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER

DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(3)

PERSETUJUAN

Judul : PENERAPAN ALGORITMA GENETIKA DALAM

PENENTUAN TATA LETAK RUANG

Kategori : SKRIPSI

Nama : RIZKY YANDA

Nomor Induk Mahasiswa : 081402024

Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI

Departemen : TEKNOLOGI INFORMASI

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI (FASILKOMTI) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Desember 2013 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Sarah Purnamawati, ST., M.Sc. Dr. Erna Budhiarti Nababan, M.IT. NIP 19830226 201012 2 003 NIP -

Diketahui/Disetujui oleh

Program Studi S1 Teknologi Informasi Ketua,

Prof. Dr. Opim Salim Sitompul, M.Sc. NIP 19610817 198701 1 001


(4)

PERNYATAAN

PENERAPAN ALGORITMA GENETIKA DALAM PENENTUAN TATA LETAK RUANG

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Desember 2013

Rizky Yanda 081402024


(5)

UCAPAN TERIMA KASIH

Puji dan syukur penulis sampaikan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh ijazah Sarjana Teknologi Informasi, Program Studi S1 Teknologi Informasi Universitas Sumatera Utara. Ucapan terima kasih penulis sampaikan kepada:

1. Kedua orang tua dan keluarga penulis yang telah memberikan dukungan dan motivasi baik materil dan spiritual, Ayahanda Ir. M. Yasin dan Ibunda Dr. Hj. Dahniar, M.Kes yang selalu sabar dalam mendidik dan membesarkan penulis. 2. Ibu Dr. Erna Budhiarti Nababan, M.IT selaku pembimbing satu dan Ibu Sarah

Purnamawati, ST.,M.Sc selaku pembimbing dua yang telah banyak meluangkan waktu dan pikirannya, memotivasi dan memberikan kritik dan saran kepada penulis.

3. Ucapan terima kasih juga ditujukan kepada Bapak Syahriol Sitorus, S.Si., M.Si. dan Bapak Baihaqi Siregar, S.Si., M.T. yang telah bersedia menjadi dosen pembanding.

4. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Teknologi Informasi, Prof. Dr. Opim Salim Sitompul, M.Sc. dan Drs. Sawaluddin, M.IT.

5. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen serta pegawai di Program Studi S1 Teknologi Informasi.

6. Terima kasih kepada adinda Muhammad Hafizh yang telah memberi dukungan kepada saya. Terima kasih kepada seorang yang terus mendukung tanpa henti Suryani, S.Pd. Terima kasih juga kepada teman-teman yang selalu memberikan dukungan, Azharul Wanda Siregar, Kharisma Rinaldi Siregar, Dwiporanda E, Teza Amaluddin, Joko Nugroho, Andre Wandi, Inis Caesarian Siregar, Karina Wibawanti, Zulfikri P, Sanra Cheney, Ridho Fakhrozi, dan Harigo Chany serta teman-teman mahasiswa Teknologi Informasi lainnya yang tidak dapat penulis sebutkan satu persatu.


(6)

Akhir kata, saya ucapkan terimakasih kepada semua pihak yang terkait dalam penyelesaian skripsi ini yang tidak bisa saya sebut satu persatu. Semoga Allah SWT membalas segala kebaikan yang sudah diberikan dan semoga Allah tetap memberi rahmat dan keberkahan kepada kita semua.


(7)

ABSTRAK

Selama ini pembuatan denah dasar rumah seringkali mengalami kesulitan, terutama untuk memperkirakan tata letak dari setiap ruangan. Algoritma Genetika dapat menghasilkan suatu Tata Letak Ruang yang dipertimbangkan berdasarkan kebutuhan. Dengan adanya sistem ini, pembuatan denah dasar pada sebuah rumah dapat dilakukan secara lebih mudah dan praktis. Secara umum, sistem dapat memberikan sebuah hasil tata letak ruang pada sebuah lahan sesuai dengan yang diharapkan.


(8)

APPLICATION OF GENETIC ALGORITHM IN THE DETERMINATION OF ROOM LAYOUT

ABSTRACT

During the making of the basic plan of the home often have difficulty, especially for estimating the layout of each room. Genetic Algorithm can produce a layout that is considered based on space needs. With this system, the ground-plan of making a home can be more convenient and practical. In general, the system can provide a layout results in a land space as expected.


(9)

Hal.

Persetujuan i

Pernyataan ii

Ucapan Terima Kasih iii

Abstrak v

Abstract vi

DaftarIsi vii

DaftarTabel ix

DaftarGambar x

BAB1 Pendahuluan 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3

1.6 Sistematika Penulisan 3

BAB2 LandasanTeori 5

2.1 Pengenalan Perencanaan Tata Letak Ruang 5

2.1.1 Penentuan Kebutuhan Ruang 5

2.1.2 Perencanaan dan Penataan Ruang 6

2.2 Algoritma Genetika 7

2.2.1 Aplikasi Algoritma Genetika 8

2.2.2 Komponen Algoritma Genetika 10

A. Teknik Pengkodean 10

B. Pengertian Individu 10

C. Membangkitkan Populasi Awal 12

D. Fungsi Fitness 13

E. Seleksi 13

F. Crossover atau Kawin Silang 14

G. Mutasi 16

2.3 Penelitian Sebelumnya 18

BAB3 Analisis dan Perancangan Sistem 21

3.1 Analisis Kinerja Algoritma Genetika 21

3.2 Data yang digunakan 22


(10)

3.3.1 Inisialisasi Kromosom 22

3.3.2 Fungsi Fitness 26

3.3.3 Seleksi 29

3.3.4 Crossover 30

3.3.5 Mutasi 45

3.3.6 Proses Output 47

3.4 Perancangan Program 48

3.4.1 Rancangan Struktur Aplikasi 49

3.4.2 Flowchart Diagram 49

3.4.3 Data Flow Diagram 50

3.4.4 Use Case Diagram 56

3.4.5 Rancangan Layar Program 58

BAB 4Implementasi dan Pengujian Sistem 60

4.1 Implementasi Sistem 60

4.1.1 Spesifikasi Perangkat Keras dan Perangkat Lunak yang Digunakan 60

4.2 Implementasi Perancangan Antarmuka 60

4.2.1 Halaman Utama 61

4.2.2 Halaman Form Lahan Rumah 61

4.2.3 Halaman Form Garis Sempadan Bangunan (GSB) dan Halaman Rumah 62

4.2.5 Halaman Form Optimizer 62

4.2.6 Halaman Hasil Tata Letak Ruang 63

4.3 Pengujian Sistem 63

4.3.1 Rencana pengujian sistem 63

4.3.2. Kasus dan hasil pengujian sistem 64

4.3.3. Pengujian kinerja sistem 64

BAB 5Kesimpulan dan Saran 72

5.1 Kesimpulan 72

5.2 Saran 72

Daftar Pustaka 73


(11)

DAFTAR TABEL

Hal. Table 2.1Penelitian Optimasi Menggunakan Algoritma Genetika 19

Table 3.1.a Range Zona Ruang 23

Table 3.1.b Range Letak Ruang 24

Table 3.2 Inisialisasi Kromosom 25

Table 3.3 Calon Induk Terpilih 26

Table 3.4 Nilai Fitness Area Gen Calon Induk dari setiap Individu 28 Table 3.5 Tabel Fitness Area dan Probabilitas Individu 29

Tabel 4.1 Rencana Pengujian 64

Tabel 4.2 Kasus dan Hasil Pengujian 64

Tabel 4.2 Kasus dan Hasil Pengujian (Lanjutan) 65


(12)

DAFTAR GAMBAR

Hal.

Gambar 2.1 Pola Zonasi Ruang 7

Gambar 2.2 Pengkodean dengan Algoritma Genetika 10

Gambar 2.3 Single Point Crossover dengan Representasi Bit 14 Gambar 2.4 Two Point Crossover dengan Representasi Bit 15 Gambar 2.5 Uniform Crossover dengan Representasi Bit 15 Gambar 2.6 Arithmetic Crossover dengan Representasi Bit 15

Gambar 2.7 Crossover dengan Representasi Tree 16

Gambar 2.8 Mutasi Kromosom dengan Representasi Bit 17

Gambar 2.9 Mutasi dalam Representasi Tree 18

Gambar 3.1 Pola Zonasi Ruang Berdasarkan Aktifitas 23 Gambar 3.2 Pola Zonasi Ruang Berdasarkan Hak Akses 23

Gambar 3.3 Matriks Hubungan Antar Ruang 25

Gambar 3.4 Ilustrasi Inisialisasi dan Penempatan Kromosom 26

Gambar 3.5 Skema Crossover 44

Gambar 3.6 Denah Sementara Hasil Crossover 44

Gambar 3.7 Denah Sementara Hasil Crossover 46

Gambar 3.8 Hasil Proses Mutasi 47

Gambar 3.9 Sampel Hasil Akhir Pengurutan Objek Pola Ruang 48

Gambar 3.10 Rancangan Struktur Menu 49

Gambar 3.11 Flowchart Analisis Program 50

Gambar 3.12 Diagram Konteks DFD 51

Gambar 3.13 DFD Level 1 52

Gambar 3.14 DFD Level 1 Proses 2 54

Gambar 3.15 Use Case Diagram untuk Optimizer 56

Gambar 3.16 Rancangan Layar Page Lahan Rumah 58

Gambar 3.17 Rancangan Layar Page GSB 58

Gambar 3.18 Rancangan Layar Menu Optimizer 59

Gambar 4.1 Halaman Utama 61

Gambar 4.2 Halaman Form Lahan Rumah 61

Gambar 4.3 Halaman Form GSB dan Halaman Rumah 62

Gambar 4.4 Halaman Form Optimizer 62

Gambar 4.5 Halaman Hasil Tata Letak Ruang 63

Gambar 4.6 Halaman / Pop-Up About 67

Gambar 4.7 Halaman / Pop-Up Help 67

Gambar 4.8 Halaman Pengisian Form Lahan Rumah 68

Gambar 4.9 Pop-Up Nilai Maksimal Lahan 68

Gambar 4.10 Halaman Pengisian Form GSB dan Halaman Rumah 69

Gambar 4.11 Halaman Pengisian Form Optimizer 70


(13)

ABSTRAK

Selama ini pembuatan denah dasar rumah seringkali mengalami kesulitan, terutama untuk memperkirakan tata letak dari setiap ruangan. Algoritma Genetika dapat menghasilkan suatu Tata Letak Ruang yang dipertimbangkan berdasarkan kebutuhan. Dengan adanya sistem ini, pembuatan denah dasar pada sebuah rumah dapat dilakukan secara lebih mudah dan praktis. Secara umum, sistem dapat memberikan sebuah hasil tata letak ruang pada sebuah lahan sesuai dengan yang diharapkan.


(14)

APPLICATION OF GENETIC ALGORITHM IN THE DETERMINATION OF ROOM LAYOUT

ABSTRACT

During the making of the basic plan of the home often have difficulty, especially for estimating the layout of each room. Genetic Algorithm can produce a layout that is considered based on space needs. With this system, the ground-plan of making a home can be more convenient and practical. In general, the system can provide a layout results in a land space as expected.


(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Perencanaan Tata Ruang merupakan suatu langkah maju yang ditempuh untuk perbaikan guna ruang secara terstruktur dengan hasil yang mendekati optimal. Hal ini dilakukan agar masalah yang terjadi selama ini dapat terselesaikan dengan satu solusi terbaik guna membangkitkan keselarasan dari masing-masing ruang yang ada dalam satu denah.

Akan tetapi, permasalahan yang terjadi saat ini adalah terjadinya ketidakteraturan tata ruang, adanya beberapa pengaturan luas ruang, perkiraan kebutuhan dan penurunan kualitas ruang. Penataan ruangan dalam rumah haruslah menguntungkan penghuninya (Budiyono, 2010). Untuk mengatasi masalah ini maka dibutuhkan suatu sistem tatanan ruang yang dapat menghasilkan layout sesuai dengan kebutuhan pengguna. Sehingga metode algoritma genetika dapat dijadikan salah satu alternatif untuk menghasilkan penentuan tata letak ruang.

Penelitian-penelitian yang melibatkan optimasi telah banyak dilakukan, diantaranya oleh Siallagan (2004), Purnomo (2005), Dewi (2009), Abdullah (2009), Prasetio (2010), seiring dengan berkembangnya ilmu pengetahuan, pengembangan dan pengkajian terus dilakukan. Melalui penelitian ini peneliti mengharapkan dapat menghasilkan tata letak ruang yang sesuai dengan kebutuhan.

Algoritma Genetika adalah salah satu pendekatan untuk menentukan global optimum yang didasari oleh teori Darwin. Secara garis besar langkah dalam prosedur ini dimulai dengan menetapkan suatu set solusi potensial dan melakukan perubahan dengan beberapa iterasi dengan algoritma genetika untuk mencapat solusi terbaik. Algoritma genetika merupakan sebuah metode optimasi yang dapat memberikan alternatif solusi untuk suatu masalah. Metode ini didasari oleh proses evolusi biologi


(16)

dalam kehidupan, antar lain mutation, crossover, inheritance dan natural selection. Menggunakan konsep survival of the fittest, Darwin menyatakan bahwa evolusi makhluk hidup terjadi karena adanya seleksi dari alam. Semakin adaptif sifatnya, individu tersebut semakin dapat bertahan dan menghasilkan keturunan. Keturunan yang bertahan dalam proses evolusi memiliki sifat dari induknya, akan tetapi perkawinan antar dua induk dan proses mutasi dapat mengakibatkan perubahan sifat pada keturunan tersebut. Perubahan-perubahan ini diharapkan dapat menghasilkan keturunan yang prima dan dapat bertahan. Dalam penyelesaian masalah, pilihan solusi-solusi diwujudkan dengan keturunan baru dari individu hasil perkawinan dan mutasi. Bila keturunan yang prima dapat dikembangkan, maka solusi yang baik juga dapat diperoleh.

1.2 Rumusan Masalah

Pembangunan denah yang tidak ditata dengan baik dapat mengakibatkan tidak terpenuhinya kebutuhan tiap ruang. Oleh karena itu diperlukan satu pendekatan yang dapat menentukan tata letak ruang pada lahan yang tersedia.

1.3 Batasan Masalah

Permasalahan yang akan diteliti memiliki ruang lingkup yang luas, oleh sebab itu penulis membatasi masalah tersebut sebagai berikut:

1. Perancangan rumah secara detail tidak dibahas, melainkan hanya mencakup tata letak ruang rumah pada tata denah saja.

2. Penulis menekankan pada proses bagaimana Algoritma genetika dalam menyelesaikan masalah perencanaan denah tata ruang ini. Perencanaan tata ruang dilakukan pada rumah dengan satu lantai.

3. Nilai luas lahan maksimum 180m2 dengan x max 12 kotak/meter dan y max 15 kotak/meter.


(17)

1.4 Tujuan Penelitian

Tujuan utama dari penelitian ini adalah menggunakan algoritma genetika untuk mendapatkan suatu rancangan denah yang sesuai dengan kebutuhan.

1.5 Manfaat Penelitian

Penelitian ini dilakukan dengan harapan akan memberikan manfaat sebagai berikut :

1. Menjadi alternatif penyelesaian masalah penentuan tata ruang.

2. Menjadi alternatif pembuatan dasar denah pada sebuah rumah. 3. Mengetahui lebih jauh konsep kerja algoritma genetika.

1.6 Sistematika Penulisan

Tugas akhir ini disusun dalam enam bab dengan sistematika penulisan sebagai berikut:

Bab 1 Pendahuluan

Bab pendahuluan ini berisi tentang hal-hal yang mendasari dilakukannya penelitian serta pengidentifikasian masalah penelitian. Bagian-bagian yang terdapat dalam bab pendahuluan ini meliputi latar belakang masalah, perumusan masalah batasan masalah, tujuan penelitian, dan manfaat penelitian.

Bab 2 Tinjauan Pustaka

Tinjauan pustaka menguraikan landasan teori, penelitian terdahulu, kerangka pikir dan hipotesa yang diperoleh dari acuan yang mendasari dalam melakukan kegiatan penelitian pada tugas akhir ini.

Bab 3 Analisis dan Perancangan Sistem

Bab ini menguraikan kinerja algoritma genetika untuk penyelesaian permasalahan penentuan tata ruang dan kemudian membahas rancangan sistem yang akan dibuat.


(18)

Bab 4 Hasil dan Pembahasan

Pada bab hasil dan pembahasan akan memaparkan hasil terhadap uji coba algoritma yang telah dilakukan dalam meyelesaikan permasalahan penentuan tata ruang.

Bab 5 Kesimpulan dan Saran

Bab ini berisi tentang kesimpulan hasil penelitian dan saran-saran yang berkaitan dengan penelitian selanjutnya.


(19)

BAB 2

TINJAUAN PUSTAKA

2.1Pengenalan Perencanaan Tata Letak Ruang

Perencanaan tata letak adalah satu tahap dalam perencanaan fasilitas yang bertujuan untuk mengembangkan suatu sistem aliran yang efisien dan efektif. Perancangan tata letak merupakan pengaturan tata letak fasilitas-fasilitas operasi dengan memanfaatkan area yang tersedia untuk penentuan letak ruangan. Perancangan tata letak hendaknya fleksibel untukmengantisipasi adanya perubahan permintaan yang akan mengubah tata letak.

Perencanaan tata letak ruang bertujuan untuk menemukan satu set lokasi pada serangkaian kegiatan sehingga tata letak yang dihasilkan memenuhi kedua persyaratan antara aktivitas dan tujuan desain yang nyata, yang biasanya ditentukan oleh sebuah prioritas. Selain itu, nuansa emosional bangunan, aliran ruang, transisi antara ruang, filosofis dan teori desain (misalnya ritme, harmoni, variasi, prioritas, pola, tekstur dan lain-lain) yang dipertimbangkan oleh desainer. Oleh karena itu, jelas bahwa sebuah program komputer saja mungkin tidak cukup untuk menggabungkan banyak aspek desain non-nyata untuk menghasilkan tata letak yang memuaskan. Sebelum munculnya metode yang menggunakan komputer, pendekatan penentuan tata ruang secara luas dianggap sebagai sebuah proses tiga kali lipat: pengumpulan informasi, trial and error desain dan solusi presentasi.

2.1.1 Penentuan Kebutuhan Ruang

Untuk memperoleh suatu bentuk dan desain rumah tempat tinggal yang mempunyai jumlah serta jenis ruang yang sesuai dengan kebutuhan, maka sebelum membangun rumah sebaiknya tentukan terlebih dahulu kebutuhan-kebutuhan ruang yang akan dimasukkan dalam rumah tinggal tersebut. Sebuah tahapan perencanaan untuk


(20)

mementukan kebutuhan ruang dalam rumah yang akan dibangun sangat mutlak, karena perencanaan yang baik merupakan tahapan awal dan merupakan langkah penting dalam proses untuk mendesain rumah.

Penentuan kebutuhan ruang dalam perencanaan rumah tinggal merupakan langkah pertama yang harus dilakukan agar rumah yang akan dibangun tersebut bisa berfungsi secara maksimal dan memberi kenyamananan terhadap seluruh penghuni. Hal tersebut sangat penting dilakukan, karena penghuni seluruhnya yang bisa memahami kebutuhan ruang.

2.1.2 Perencanaan dan Penataan Ruang

Untuk menciptakan keserasian hubungan dan kesatuan antar ruang dalam rumah, maka perlu dilakukan perencanaan yang matang serta penataan ruang yang sesuai dengan kegiatan dan aktivitas penghuni. Selain itu, penataan ruang juga bisa menciptakan aksesibilitas pencapaian antar ruang yang merata antar ruang yang satu dengan lainnya. Dengan meletakkan ruang-ruang berdasarkan karakter dan fungsinya kemudian ditambah ruang pengikat yang berupa ruang bersama (ruang makan dan ruang keluarga), maka akan menciptakan keserasian antara penghuni dengan ruang-ruang yang dipakai, dan selanjutnya penghuni bisa merasa nyaman dan tenang, serta betah untuk tinggal di dalamnya.

Untuk meningkatkan efisiensi dalam penataan ruang, sebaiknya ruang-ruang yang mempunyai fungsi serupa, misalnya teras dan ruang tamu, ruang keluarga dan ruang makan dapat disatukan atau ditempatkan dalam zona yang sama.

Menentukan zonasi ruang merupakan upaya untuk menciptakan komposisi ruang yang menyatu berikut jalur sirkulasi yang tidak cross (terjadi benturan antar penghuni) dalam rumah tinggal dan betul-betul ideal, karena susunan tatana ruang yang tidak sesuai dengan kaidah dan kondisi seta sifat dan karakter penghuni akan berdampak terhadap perubahan pola dan perilaku penghuni rumah.

Ada tiga pengelompokan aktivitas dalam perumahan antara lain: 1. Area Permukiman (Living Area)

Area ini merupakan kelompok ruang yang terdiri atas:

a. Ruang tamu, berfungsi sebagai tempat untuk menerima tamu. Ruang ini menampung fungsi-fungsi sesuai dengan kebutuhan aktivitas penghuni, misalnya untuk pertemuan atau perjamuan. Biasanya ruang ini terletak pada


(21)

area yang mudah di akses oleh tamu dari arah luar. Pada umumnya ruang tamu ini berada di bagian depan bangunan .

b. Ruang Makan, merupakan tempat untuk makan seluruh anggota keluarga. Sesuai dengan fungsinya , ruang ini sebaiknya di letakkan berdekatan dengan area persiapan makanan (dapur). Biasanya saat makan bersama maka seluruh atau sebagian besar anggota keluarga berkumpul sehingga aktivitas ini juga merupakan sarana interaksi antar anggota keluarga. Karenanya ruang makan sebaiknya dapat menampung dua aktifitas tersebut.

c. Ruang Keluarga, merupakan tempat berkumpul dan berinteraksi antar anggota keliuarga. Di ruang ini sering kali di lakukan aktivitas hiburan dan bersantai, ruang ini merupakan area semi publik dan di rencanakan dengan suasana akrab.

2. Area Peristirahatan (Sleeping Area)

Area ini merupakan kelompok ruang yang terdiri atas:

a. Ruang Tidur, merupakan ruang tempat beristirahat setalah seharian beraktivitas. Karenanya ruang ini harus di rencanakan dengan perlengkapan istirahat dan suasana santai serta tenang, agar penghuni dapat beristirahat dengan yaman. Ruang ini harus di hindarkan dari kebisingan, polusi cukup sinar mataharai dan memiliki sirkulasi udara yang lancar.

b. Kamar mandi, merupakan area untuk membersihkan diri.

3. Area Pelayanan (Service Area)

Area ini merupakan kelompok ruang yang terdiri atas:

a. Dapur, merupakan ruang untuk mempersiapkan makanan, Sirkulasi udara di ruang ini harus di rencanakan dengan baik agar asap yang timbul dari aktivitas memasak dapat secepat mungkin hilang.

b. Ruang Penyimpanan (Gudang), yang disediakan untuk menyimpan berbagi peralatan dan perlengkapan rumah tangga, baik yang belum akan digunakan, maupun yang sudah tidak digunakan lagi.

c. Garasi, yaitu area untuk menyimpan kendaraan. Area ini perlu di pisahkan karena biasanya dekat denngan debu dan polusi dan pada umumnya terletak pada bagian depan rumah.


(22)

Berdasarkan pengelompokan aktivitas dalam perumahan, kita dapat menyimpulkan pengelompokan ruang adalah sebagai berikut :

Area Pelayanan Area Pemukiman Area Peristirahatan Dapur

Garasi Gudang

Ruang Tamu Ruang Keluarga

Ruang Dapur

Kamar Tidur Utama Kamar Mandi Kamar Tidur Anak

Gambar 2.1 Pola Zonasi Ruang Berdasarkan Aktivitas (Sumber : Suparman, 2012)

Berdasarkan hak akses setiap rumah memiliki 3 pengelompokan antara lain : 1. Area Publik

Pada area publik, aktifitas ruangan tergolong sibuk dan akses ruangan tergolong bebas, tidak ada pembatasan akses sehingga setiap orang dibolehkan mengakses dan menggunakan fungsi ruangan pada area ini.

2. Area Semi Publik

Pada area semi publik, aktifitas ruangan tergolong tidak terlalu sibuk dan akses ruangan tergolong tidak terlalu bebas, ada pembatasan akses namun tidak terlalu kuat sehingga ada batasan akses pada ruangan pada area ini.

3. Area Privat

Pada area privat, aktifitas ruangan tergolong tidak sepi dan akses ruangan tergolong tidak bebas, ada pembatasan akses yang kuat sehingga tidak setiap orang dibolehkan mengakses dan menggunakan fungsi ruangan pada area ini.


(23)

2.2Algoritma Genetika

Ide awal algoritma genetika berasal dari teori Charles Darwin tentang evolusi yang

berbasis pada konsep “survival of the fittest” yang menyatakan bahwa evolusi jenis -jenis spesies makhluk hidup dan ekosistemnya terjadi karena seleksi alam. Semakin tinggi kemampuan individu untuk beradaptasi, maka semakin tinggi kemungkinan individu tersebut dapat bertahan dan memiliki keturunan. Keturunan dari individu-individu tersebut akan mewarisi sifat-sifat induknya, dimana sifat-sifat tersebut dapat mengalami perubahan yang disebabkan oleh pencampuran sifat kedua induk maupun proses mutasi.

Algoritma Genetika ditemukan pertama kali pada tahun 1960. Algoritma Genetika merupakan salah satu algoritma pemodelan evolusi (evolutionary modelling) yang dikembangkan oleh John Holland pada dekade 1960 dan 1970-an dengan tujuan memodelkan perkembangan kemampuan adaptasi sebuah sistem. Algoritma genetika diimplementasikan sebagai simulasi yang berawal dari sebuah populasi yang dihasilkan secara random dan terdiri dari kromosom-kromosom, seperti halnya anggota tubuh makhluk hidup dan merepresentasikan solusi dari masalah. Populasi tersebut akan menghasilkan keturunan populasi yang baru dan diharapkan lebih baik dari populasi sebelumnya. Semakin baik kondisi suatu populasi, semakin besar kemungkinan populasi itu untuk dikembangkan menjadi populasi selanjutnya.Kondisi ini diulangi sampai mendapatkan kondisi yang diharapkan, dengan kata lain solusi terbaik sudah diperoleh.

Untaian solusi merupakan analogi sebuah kromosom, dimana setiap kromosom memiliki sebuah nilai fungsi obyektif yang bersesuaian dengan parameter masalah yang disebut nilai fitnes (fitness value). Apabila sebuah kromosom dikatakan unggul berarti memiliki nilai fitness yang tinggi (untuk masalah maksimasi) atau nilai

fitness yang rendah (untuk masalah minimasi). Nilai fitness menunjukkan kromosom mana yang memiliki potensi terbaik untuk diturunkan pada generasi berikutnya. Satu tahapan iterasi pada algoritma genetika disebut generasi, dan selama langkah inistruktur dalam populasi saat itu akan dievaluasi untuk menentukan populasi pada generasi berikutnya (Berlianty & Arifin 2010).


(24)

2.2.1 Aplikasi Algoritma Genetika

Ada 3 keuntungan utama dalam mengaplikasikan Algoritma Genetika pada masalah-masalah optimasi (Sam’ani, 2012) :

1. Algoritma Genetika tidak memerlukan kebutuhan matematis banyak mengenai masalah optimasi.

2. Kemudahan dan kenyamanan pada operator-operator evolusi membuat Algoritma Genetika sangat efektif dalam melakukan pencarian global.

3. Algoritma Genetika menyediakan banyak fleksibelitas untuk digabungkan dengan metode heuristic yang tergantung domain, untuk membuat implementasi yang efisien pada masalah-masalah khusus.

Algoritma genetika telah banyak diaplikasikan untuk penyelesaian masalah dan pemodelan dalam bidang teknologi, bisnis dan entertainment (Sam’ani, 2012) antara lain:

1. Optimasi

Algoritma Genetika untuk optimasi numeric dan optimasi kombinatorial seperti Traveling Salesman Problem (TSP), perancangan Intergrated Circuit

atau IC, job shop scheduling, optimasi video, dan suara. 2. Pemograman otomatis

Algoritma genetika telah digunakan untuk melakukan proses evolusi terhadap program komputer untuk merancang struktur komputasional, seperti cellular automatis dan sorting networks.

3. Machine learning

Algoritma genetika telah berhasil diaplikasikan untuk memprediksi struktur protein. Algoritma genetika juga berhasil diaplikasikan dalam perancangan

neural networks (jaringan syaraf tiruan) untuk melakukan proses evolusi terhadap aturan-aturan pada learning classifier systems atau symbolic prosuction systems. Algoritma genetika juga digunakan untuk mengontrol robot.

4. Model Ekonomi

Algoritma genetika telah digunakan untuk memodelkan proses-proses inovasi dan pembangunan bidding strategis.


(25)

5. Model Sistem Imunisasi

Algoritma genetika telah berhasil digunakan untuk memodelkan berbagai aspek pada sistem imunisasi alamiah, termasuk somatic mulation selama kehidupan individu dan menentukan keluarga dengan gen ganda (multi -gen families) sepanjang waktu evolusi.

6. Model Ekologis

Algoritma genetika telah berhasil digunakan untuk memodelkan fenomena ekologis seperti host-parasite co-evolutions, simbiosis dan aliran sumber daya dalam ekologi.

7. Interaksi antara Evolusi dan Belajar

Algoritma genetika telah digunakan untuk mempelajari bagaimana proses belajar suatu individu bisa mempengaruhi proses evolusi suatu species dan sebaliknya.

2.2.2 Komponen Algoritma Genetika

Ada beberapa komponen algoritma genetika yang perlu diketahui sebelum pembuatan program diantaranya yaitu:

A. Teknik Pengkodean

Teknik pengkodean adalah bagaimana mengodekan gen dari kromosom, dimana gen merupakan bagian dari kromosom. Satu gen biasanya akan mewakili satu variable. Agar dapat diproses melalui algoritma genetik, maka alternatif solusi tersebut harus dikodekan terlebih dahulu kedalam bentuk kromosom. Masing-masing kromosom berisi sejumlah gen yang mengodekan informasi yang disimpan didalam kromosom.

Gen dapat direpresentasikan dalam bentuk bit, bilangan real, daftar aturan, elemen permutasi, elemen program atau representasi lainnya yang dapat diimplementasikan untuk operator genetika.


(26)

Kromosom

Populasi

M = besar kromosom N = panjang kromosom

Gambar 2.2 Pengkodean dengan Algoritma Genetika

B. Pengertian Individu

Individu menyatakan salah satu solusi yang mungkin. Individu dapat dikatakan sama dengan kromosom, yang merupakan kumpulan gen. Beberapa definisi penting yang perlu diperhatikan dalam membangun penyelesain masalah menggunakan algoritma genetika. Istilah-istilah tersebut dapat disebutkan sebagai berikut (Berlianty & Arifin 2010):

1. Kromosom, merupakan tempat penyimpanan informasi gentika. Di dalam algoritma genetika pada umumnya string dianalogikan sebagai kromosom.

2. Genotype(struktur), kombinasi satu atau beberapa kromosom yang membentuk fungsi kerja suatu organisme. Interaksi sekumpulan kromosom disenut dengan

genotype. Di dalam algoritma gentika struktur dianalogikan sebagai genotype.

3. Phenotype (set parameter), interaksi di dalam struktur terjadi karena adanya proses transformasi kode-kode genetika. Modifikasi ini disebut phenotype. Phenotype

tersebut merupakan representasi set parameter masalah yang sedang dihadapi. Representasi kode dapat berupa numerik atau non numerik.

4. Genes, suatu kromosom yang dibentuk oleh beberapa gen.

5. Alleles (feature value), suatu feature yang memiliki nilai feature tertentu yang disebut dengan allele.

6. Locus (positioning), letak gen dalam suatu kromosom. Setiap featurememiliki urutan posisi di dalam string.

1 1 2 3 N

2 1 2 3 N

M-1 1 2 3 N


(27)

Hal-hal yang harus dilakukan dalam Algoritma Genetika yaitu:

1. Mendefinisikan individu, dimana individu menyatakan salah satu solusi (penyelesaian) yang mungkin dari permasalahan yang diangkat.

2. Mendefinisikan nilai fitness, yang merupakan ukuran baik-tidaknya sebuah individu baik-tidaknya solusi yang didapat.

3. Menentukan proses pembangkitan populasi awal. Hal ini biasanya dilakukan dengan menggunakan pembangkitan acak seperti random-walk.

4. Menentukan proses seleksi yang akan digunakan.

5. Menentukan proses perkawinan silang (cross-over) dan mutasi gen yang akan digunakan.

Hal penting yang harus diketahui dalam pemakaian Algoritma genetika: 1. Algoritma Genetika adalah algoritma yang dikembangkan dari proses pencarian

solusi menggunakan pencarian acak, ini terlihat pada proses pembangkitan populasi awal yang menyatakan sekumpulan solusi yang dipilih secara acak. 2. Algoritma Genetika bekerja dengan bilangan acak pada kromosom awal, sehingga

memungkinkan kromosom terbaik tidak terlibat dalam proses.

3. Algoritma genetika menggunakan pembangkit bilangan random dalam setiap pemilihan kromosom, baik induk, proses persilangan, maupun mutasi.

4. Solusi yang dihasilkan belum tentu merupakan solusi yang optimal, karena sangat dipengaruhi oleh bilangan acak yang dibangkitkan.

C. Membangkitkan Populasi Awal

Kebanyakan metode optimasi klasik memasukkan urutan deterministik dan komputasi berdasarkan gradien atau turunan dengan orde lebih tinggi dari fungsi objektif. Metode ini diterapkan pada titik tunggal dalam space search. Pendekatan point to point ini dapat menyebar pada lokal optimal. Algoritma genetika menampilkan

mutiple directional search dengan menjaga populasi dari solusi potensial (Berlianty & Arifin 2010).

Membangkitkan populasi awal adalah proses membangkitkan sejumlah individu secara acak atau melalui procedure tertentu. Ukuran untuk populasi tergantung pada masalah yang akan diselesaikan dan jenis operator genetika yang


(28)

akan diimplementasikan. Setelah ukuran populasi ditentukan, kemudian dilakukan pembangkitan populasi awal.

Teknik dalam pembangkitan populasi awal ini ada beberapa cara, diantaranya adalah sebagai berikut:

1. Seperti pada metode random seach, pencarian solusi dimulai dari suatu titik uji tertentu. Titik uji tersebut dianggap sebagai alternative solusi yang disebut sebagai populasi.

2. Random Generator

Random generator adalah melibatkan pembangkitan bilangan random untuk nilai setiap gen sesuai dengan representasi kromosom yang digunakan.

3. Pendekatan tertentu (memasukan nilai tertentu kedalam gen)

Cara ini adalah dengan memasukan nilai tertentu kedalam gen dari populasi awal yang dibentuk.

4. Permutasi Gen

Cara ini adalah penggunaan permutasi josephus dalam permasalahan kombinatorial seperti TSP.

D. Fungsi fitness

Suatu individu atau kromosom dievaluasi berdasarkan suatu fungsi tertentu sebagai ukuran performasinya.Fungsi yang digunakan untuk mengukur nilai kecocokan atau derajat optimalitas suatu kromosom disebut dengan fitness function.Nilai yang dihasilkan dari fungsi tersebut menandakan seberapa optimal solusi yang diperoleh. Nilai yang dihasilkan oleh fungsi fitness merepresentasikan seberapa banyak jumlah persyaratan yang dilanggar, sehingga dalam kasus penjadwalan perkuliahan semakin kecil jumlah pelanggaran yang dihasilkan maka solusi yang dihsilkan akan semakin baik.

E. Seleksi

Setiap kromosom yang terdapat dalam populasi akan melalui proses seleksi untuk dipilih menjadi orang tua. Sesuai dengan teori Evolusi Darwin maka kromosom yang baik akan bertahan dan menghasilkan keturunan yang baru untuk generasi selanjutnya.


(29)

Ada beberapa metode seleksi, yaitu: a. Seleksi Roulette Wheel

Model seleksi ini merupakan model yang paling besar variansinya. Munculnya individu superior sering terjadi pada model ini, sehingga perlu strategi lain menangani hal ini.

b. Seleksi Rangking

Seleksi ini memperbaiki proses seleksi yang sebelumnya yaitu roulette wheel

karena pada seleksi tersebut kemungkinan selain satu kromosom mempunyai nilai fitness yang mendominasi hingga 90% bisa terjadi.Sehingga nilai fitness

yang lain akan mempunyai kemungkinan yang sangat kecil untuk terpilih. Seleksi rangking dipakai untuk mengatasi masalah di atas, pertama-tama, diurutkan seluruh kromosom berdasarkan bagus-tidaknya solusi berdasarkan nilai fitness-nya.Setelah diurutkan, kromosom terburuk diberi nilai fitness baru sebesar 1, kromosom kedua terburuk diberi nilai fitness baru sebesar 2, dan seterusnya.Kromosom terbaik diberi nilai fitness baru sebesar n dimana n adalah banyak kromosom dalam suatu populasi.

c. Seleksi Steady State

Metode ini tidak banyak digunakan dalam proses seleksi karena dilakukan dengan mempertahankan individu yang terbaik. Pada setiap generasi, akan dipilih beberapa kromosom-kromosom yang memiliki nilai fitness terburuk akan digantikan dengan offspring yang baru. Sehingga pada generasi selanjutnya akan terdapat beberapa populasi yang dipertahankan.

d. Seleksi Turnamen

Merupakan metode seleksi lainnya yang didasari fenomena alamiah seperti turnamen antar individu dalam populasi.Dilakukan dengan memilih secara acak beberapa kromosom dari populasi. Individu-individu yang terbaik dalam kelompok ini akan diseleksi sebagai induk.

e. Truncation Random

Metode ini lebih mudah diterapkan jika dibandingkan dengan metode Roulette Wheel, pemilihan kromosom dilakukan secara acak tetapi tidak semua kromosom mendapatkan kesempatan tersebut, hanya kromosom terbaik saja yang berpeluang.


(30)

F. Cross-Over atau Kawin Silang

Proses kawin silang adalah salah satu operator penting dalam algoritma genetika, metode dan tipe crossover yang dilakukan tergantung dari encoding dan permasalahan yang diangkat. Ada beberapa cara yang bisa digunakan untuk melakukan crossover

sesuai dengan encodingnya sebagai berikut: a. Binary Encoding

i. Single Point Crossover

Memilih satu titik tertentu, selanjutnya nilai biner sampai titik crossovernya dari induk pertama digunakan dan sisanya dilanjutkan dengan nilai biner dari induk kedua.

Gambar 2.3 Single Point Crossover dengan Representasi Bit

ii. Two Point Crossover

Memilih dua titik tertentu, lalu nilai biner sampai titik crossover pertama pada induk pertama digunakan, dilanjutkan dengan nilai biner dari titik sampai titik kedua dari induk kedua, kemudian sisanya dilanjutkan nilai biner dari titik kedua induk pertama lagi.

Gambar 2.4 Two Point Crossover dengan Representasi Bit

iii. UniformCrossover

Nilai biner yang digunakan dipilih secara random dari kedua induk.


(31)

iv. Arithmetic Crossover

Suatu operasi aritmatika digunakan untuk menghasilkan offspring yang baru.

Gambar 2.6 Arithmetic Crossover dengan Representasi Bit

b. Permutation Encoding

Memilih satu titik tertentu, nilai permutation sampai titik crossover. Pada induk pertama digunakan lalu sisanya dilakukan scan terlebih dahulu, jika nilai permutasi pada induk kedua belum ada pada offspring nilai tersebut ditambahkan.

(123456789) + (453689721) = (123456 7 89) c. Value Encoding

Semua metode crossover pada binary crossover bisa digunakan. d. Tree Encoding

Memilih satu titik tertentu dari tiap induk, dan menggunakan tree dibawah titik pada induk pertama dan tree dibawah induk kedua.

Gambar 2.7 Crossover dengan Representasi Tree G. Mutasi

Mutasi merupakan proses mengubah nilai dari satu atau beberapa gen dalam suatu kromosom. Mutasi ini berperan untuk menggantikan gen yang hilang dari populasi akibat seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada


(32)

inisialisasi populasi. Beberapa cara operasi mutasi yang diterapkan dalam algoritma genetika, antara lain:

a. Mutasi Kromosom dengan Representasi bit.

Caranya dengan memilih bit dan kemudian dibalikkan, apabilatadinya 0 maka dibalikkan menjadi 1, dan sebaliknya.

Gambar 2.8 Mutasi Kromosom dengan Representasi Bit

b. Mutasi Kromosom dengan Representasi Integer.

Caranya dengan melakukan penukaran urutan dengan memilih dua titik dan menukarkan posisinya.

(1 2 3 4 5 6 7 8 9) => (1 8 3 4 5 6 7 2 9) c. Mutasi Kromosom dengan Representasi Floating Point.

Caranya dengan melakukan penambahan bilangan kecil untuk pengkodean bilangan rill.

(1,43 1,29 4,61 9,01 6,94) => (1,43 1,19 4,51 9,01 6,94) d. Mutasi dalam pengkodean pohon

Mutasi dalam pengkodean pohon dapat dilakukan antara lain dengan cara mengubah operator ( +, -, *, / ) atau nilai yang terkandung dalam suatu verteks pohon yang dipilih.


(33)

H. Kondisi Selesai

Jika kondisi telah terpenuhi, maka algoritma genetika akan menghentikan proses pencariannya, tetapi jika belum terpenuhi maka algoritma genetika akan kembali ke evaluasi fitness.

2.3Penelitian Sebelumnya

Beberapa penelitian melibatkan optimasi menggunakan algoritma genetika dilakukan oleh Purnomo & Kusumadewi (2005) Aplikasi Algoritma Genetika untuk Penentuan Tata Letak Mesin yang menggunakan algoritma genetika untuk menentukan tata letak mesin pada suatu gudang dengan memperhatikan aktifitas penggunaan mesin, Manahan (2004) Perencanaan Tata Guna Lahan dengan Algoritma Genetika di Kota Bandung yang menggunakana algoritma genetika dalam penyusunan tata guna lahan, Dewi (2009) Algortima Genetika untuk Permasalahan Pengaturan Box Pada Kontainer yang menggunakan algoritma genetika dalam penyusunan box yang bersifat homogen pada sebuah kontainer, Prasetio (2010) yang menggunakan algoritma genetika dalam penentuan rute optimal di kota Bandung, Abdullah (2009) Analisis dan Implementasi Algoritma Genetika pada Penjadwalan Mata Kuliah yang menggunakan algoritma genetika dalam penentuan jadwal mata kuliah dengan parameter jam sibuk dan jam kosong. Secara ringkas dapat dilihat dalam Tabel 2.1


(34)

Tabel 2.1 Penelitian Optimasi Menggunakan Algoritma Genetika

No Judul / Tahun Peneliti Kelebihan / kekurangan 1 Aplikasi Algoritma

Genetika untuk Penentuan Tata Letak Mesin, 2005

Hari Purnomo, Sri Kusumadewi

Kelebihan :Sistem dapat mengahasilkan fitness area

yang cenderung tinggi karena bersifat homogen.

Kekurangan : Penentuan parameter terlalu sedikit 2 Perencanaan Tata

Guna Lahan dengan Algoritma

Genetika di Kota Bandung, 2004

Manahan P

Siallagan, S.Si, M.T, Santi Novani, S.Si, Yogie Cudiyanto

Kelebihan : Sistem dapat memudahkan hubungan antar bagian kota

Kekurangan : solusi pada untaian kromosom dapat divisualisasikan dalam bentuk Peta pada Sistem Informasi Geografis.

3 Algortima Genetika untuk Permasalahan Pengaturan Box Pada Kontainer, 2009

Indra Kurnia Dewi Kelebihan : Sistem dapat mengahasilkan fitness area

yang cenderung tinggi karena bersifat homogeny.

Kekurangan: Sistem hanya sedikit parameter optimasi. 4 Decision Suport

System of Optimal Route in Bandung City with Genetic Algorithm, 2010

Kristian Prasetio Kelebihan : Sistem dapat memanfaatkan variabel kecepatan di setiap jalannya yang mempengaruhi waktu tempuh di setiap jalan Kekurangan : - 5 Analisis Dan

Implementasi Algori tma Genetika pada Penjadwalan Mata Kuliah, 2009

Ihsan Sani Abdullah Kelebihan : -

Kekurangan :Penetapan parameter soft constraint

sangat mempengaruhi hasil jadwal.


(35)

Berdasarkan penelitian terdahulu, maka dalam penelitian ini, penulis akan menerapkan Algoritma Genetika dalam Penentuan Tata Letak Ruang, dan diharapkan dapat menghasilkan satu set Tata Letak Ruang yang dapat memenuhi permintaan.


(36)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Kinerja Algoritma Genetika

Pada penelitian ini akan dilakukan analisis dan perancangan perangkat lunak yang dapat menghasilkan tata ruang rumah dengan menggunakan algoritma genetika.

Proses penentuan tata letak ruang didasarkan pada nilai fitness yang dimilikinya. Penentuan tata letak ruang ini melalui proses crossover dan mutasi yang berusaha untuk menghasilkan nilai fitness yang tertinggi.

Dalam pendekatan algoritma genetika diawali dengan pembuatan himpunan solusi baru (initialization) yang di tempatkan pada penampungan populasi dilakukan evaluasi terhadap inisialisasi atau solusi. Proses setiap pemilihan kromosom, baik induk, proses crossover, maupun mutasi dilakukan secara random. Apabila solusi tersebut bukan merupakan solusi optimal, kemudian dilakukan proses reproduksi (reproduction) dengan memiliki individu-individu yang akan dikembangbiakan. Penggunaan operator-operator genetik seperti crossover dan mutasi terhadap individu yang terpilih dalam penampungan individu akan menghasilkan keturunan atau generasi baru. Setelah proses evaluasi untukperbaikan populasi, maka generasi-generasi baru akan menggantikan himpunan populasi awal. Proses pencarian solusi juga menggunakan pencarian acak, ini terlihat pada proses pembangkitan populasi awal yang menyatakan sekumpulan solusi yang dipilih secara acak.


(37)

3.2Data yang digunakan

Data yang digunakan dalam penelitian ini merupakan data simulasi pada perencanaan Komplek Perumahan Adya Tama di Kota Langsa, Aceh. Data berupa inputan berupa panjang dan lebar sebagai data dalam setiap bidang maupun setting

parameter algoritma genetika yang diinginkan untuk proses pencarian solusi dalam penentuan tata letak ruang.

3.3Proses Algoritma Genetika dalam Penentuan Tata Letak Ruang

Algoritma genetika bekerja dengan menggunakan pendekatan random, sehingga nilai-nilai yang dihasilkan adalah nilai random. Pada kasus penentuan tata ruang dengan model genetika nilai random hanya diberikan pada penentuan gen ruang pada setiap individu, sedangkan nilai luas lahan, arah rumah, lebar jalan dan ukuran halaman, serta ukuran tiap ruang diberikan secara manual. Semakin banyak ruang yang diperlukan maka akan semakin banyak iterasi yang dilakukan. Hal tersebut dikarenakan diperlukan suatu nilai yang sesuai agar mendapatkan kombinasi yang tepat dari variabel ruang. Semakin banyak iterasi yang dilakukan, maka waktu yang dibutuhkan akan semakin lama.

Oleh karena itu maka penyelesaian masalah penentuan tata ruang ini akan diselesaikan melalui dua tahap. Tahap pertama adalah mengkombinasikan gen-gen

pembentuk suatu kromosom. Pada tahap pertama diselesaikan dengan menggunakan algoritma genetika dan tahap ini diselesaikan terlebih dahulu. Tahap kedua adalah menempatkan ruang pada denah yang telah diproses sebelumnya dan pada tahap ini.

3.3.1 Inisialisasi Kromosom

Inisialisasi kromosom direpresentasikan dalam bentuk larik dengan tipe data record yang berisi panjang dan lebar ruang dalam penentuan tata letak ruang. Panjang kromosom adalah sebanyak jumlah ruang yang dilakukan proses penentuan tata letak ruang dalam setiap individu, dalam setiap gen yang berupa ruang mempunyai nilai kriteria penempatan, yaitu kolom ruang dan baris ruang.

Sebagai pedoman untuk membuat tatanan ruang-ruang berdasarkan aktivitas diletakkan berdasarkan sifat dan karakternya masing-masing, bisa dilihat pada


(38)

diagram berikut. Pola zonasi ruang berdasarkan aktivitas menurut Suparman dapat dilihat pada Gambar 3.1 :

Area Pelayanan Area Pemukiman Area Peristirahatan Dapur

Garasi Gudang

Ruang Tamu Ruang Keluarga

Ruang Dapur

Kamar Tidur Utama Kamar Mandi Kamar Tidur Anak

Gambar 3.1 Pola Zonasi Ruang Beradarkan Aktivitas (Sumber : Suparman, 2012)

Berdasarkan arah pencapaian utama dan pengelompokkan hak akses pada setiap rumah memiliki 3 pengelompokan antara lain :

Gambar 3.2 Pola Zonasi Ruang Berdasarkan Hak Akses

Pengklasifikasian zona ruang menggunakan koordinat(x) mempunyai 3 range seperti pada Tabel 3.1a dibawah.

Tabel 3.1.a Range Zona Ruang

Koordinat x Kriteria

1 Privat

2 Semi Privat

3 Publik

Pengklasifikasian letak ruang menggunakan koordinat(y) mempunyai 3 range seperti pada Tabel 3.1b dibawah.


(39)

Tabel 3.1.b Range Letak Ruang

Koordinat y Kriteria

1 Belakang

2 Tengah

3 Depan

Seperti yang kita ketahui, topologi konstrain memungkingkan menentukan

adjacent antara satu ruang dengan ruang lainnya, pada kasus ini adjacent ditentukan berdasarkan baris susunan ruang. Tidak adanya tumpang tindih antar ruang menjadi tujuan utama, oleh karena itu, diharapkan penentuan tata letak ruang dilakukan berdasarkan pola zonasi sehingga menghasilkan beberapa konstrain berikut ini:

 Ruang Tidur Anak berbatasan dengan Ruang Tamu  Ruang Tamu berbatasan dengan Garasi

 Kamar Mandi berbatasan dengan Ruang Keluarga  Ruang Keluarga berbatasan dengan Dapur

 Ruang Tidur Utama berbatasan dengan Ruang Makan  Ruang Makan berbatasan dengan Gudang

 Ruang Tamu, Ruang Keluarga dan Ruang Makan berupa ruang pengikat karena mempunyai sifat semi privat.

 Ruang Tidur Anak, Ruang Tidur Utama, dan Kamar Mandi terletak disebelah timur bangunan jika arah rumah menghadap ke arah utara.

 Ruang Tidur Anak, Ruang Tidur Utama, dan Kamar Mandi akan bertukar posisi dengan Garasi, Dapur, dan Gudang jika arah rumah berubah menghadap ke selatan.

 Setiap ruangan harus berhimpitan.  Tidak ada luas bangunan yang terbuang.

Dengan adanya pengelompokan ruang berdasarkan aktifitas dan hak akses menggunakan diagram gelembung serta topologi konstrain dapat diperoleh matriks yang berupa hubungan antar setiap ruang sebagai berikut:


(40)

Gambar 3.3 Matriks Hubungan Antar Ruang

Luas lahan yang digunakan dalam penentuan tata letak seluas 120m2. Tabel 3.2 dibawah ini merupakan pengelompokan kromosom dengan sample 9 gen

dengan 3 kolom yang merupakan panjang kromosom dan akan ditempatkan dalam 3 baris. Inisialisasi kromosom menggunakan bilangan real untuk mempermudah perhitungan. Parameter yang digunakan yakni panjang ruang dan lebar ruang.

Tabel 3.2 Inisialisasi Kromosom

No Nama Ruang Panjang Lebar

1 Kamar Utama 4 4

2 Kamar Anak 3 4

3 Kamar Mandi 3 3

4 Ruang Tamu 4 3

5 Ruang Keluarga 4 4

6 Ruang Makan 4 3

7 Garasi 4 4

8 Dapur 4 3

9 Gudang 2 2

Setelah dilakukan penyimpanan data record panjang dan lebar pada setiap ruang diatas maka proses selanjutnya adalah penempatkan kromosom pada tiap


(41)

individu dengan menggunakan nilai masukan yang diberikan oleh user yang ditunjukkan pada gambar 3.2.

Individu 1

Nama Ruang Ruang Tamu R. Keluarga Kamar Mandi

Panjang 4 4 3

Lebar 3 4 3

Individu 2

Nama Ruang Garasi Ruang Makan Gudang

Panjang 4 4 2

Lebar 4 3 2

Individu 3

Nama Ruang Kamar Anak Dapur Kamar Utama

Panjang 3 4 4

Lebar 4 3 4

Gambar 3.4 Ilustrasi Inisialisasi dan Penempatan Kromosom

3.3.2 Fungsi Fitness

Individu-individu dalam populasi telah terbentuk, maka langkah selanjutnyaadalah menghitung nilai fitness setiap individu. Proses seleksi dilakukan dengan cara

random dari gen.

Untuk fitness setiap kromosom dihitung sebagai ruang terbuang yang berada pada bingkai bidang setelah ruang ditempatkan dalam bingkai bidang.

(1)

Dimana y mewakili nilai dari lebar bidang, x mewakili nilai dari panjang bidang dan a adalah luas total dari masing - masing bidang.

Dari gambar 3.1 dan gambar 3.3 dapat dihitung nilai Fitness Area dari tiap gen terpilih dengan menggunakan panjang dan lebar ruang dan membandingkan zona dan letak awal dengan zona dan letak tujuan. Tabel 3.3 berikut ini merupakan


(42)

Tabel 3.3 Calon Induk Terpilih

Individu Nama Ruang

1 Ruang Tamu

2 Garasi

3 Kamar Anak

Perhitungan Fitness Ruang Tamu :

Kriteria Awal : Zona Publik dan Letak Tengah Kriteria Tujuan : Zona Semi Publik dan Letak Depan Fitness Area Zona = 1

= 1 – = 1 – 0,5 = 0,5 = 50%

Fitness Area Letak = 1

= 1 – = 1 – 0,45 = 0,55 = 55 %

Fitness Area Ruang Tamu = Fitness Zona + Fitness Letak / 2 = 50 % + 55 % / 2

= 52,5 %

Perhitungan Fitness Garasi :

Kriteria Awal : Zona Publik dan Letak Tengah Kriteria Tujuan : Zona Publik dan Letak Depan Fitness Area Zona = 1


(43)

= 1 – = 1 – 1 = 0 = 0%

Fitness Area Letak = 1

= 1 – = 1 – 0,6 = 0,4 = 40 %

Fitness Area Garasi = Fitness Zona + Fitness Letak / 2 = 0 % + 40 % / 2

= 20 %

Perhitungan Fitness Kamar Anak :

Kriteria Awal : Zona Publik dan Letak Belakang Kriteria Tujuan : Zona Privat dan Letak Depan Fitness Area Zona = 1

= 1 – = 1 – 0,25 = 0,75 = 75 %

Fitness Area Letak = 1

= 1 – = 1 – 0,4 = 0,6 = 60 %


(44)

Fitness Area Kamar Anak = Fitness Zona + Fitness Letak / 2 = 75 % + 60 % / 2

= 67,5 %

Tabel 3.5 Nilai Fitness Area Gen Calon Induk dari setiap Individu

Individu Nama Ruang Fitness

1 Ruang Tamu 52,5 %

2 Garasi 20 %

3 Kamar Anak 67,5 %

3.3.3 Seleksi

Seleksi mempunyai peranan penting dalam algoritma genetika, karena pada proses ini dipilih induk yang digunakan untuk menghasilkan individu baru. Seleksi yang digunakan adalah seleksi roda roulette (Roulette Wheel Selection). Pada seleksi roda

roulette, semakin tinggi nilai fitnessmaka semakin besar kemungkinan untuk terpilih menjadi induk.Rumus untuk mencari probabilitas adalah sebagai berikut:

P[k] = fitness[k] / total_Fitness (2)

Untuk proses seleksi roulete wheel, kita harus mencari terlebih dahulu nilaikumulatif probabilitasnya. Setelah dihitung cumulative probabilitasnya maka proses seleksi menggunakan roulette wheeldapat dilakukan. Dengan menggunakan tabel 3.4 dapat digambarkan proses seleksi yang terjadipada tiap individu. Metode yang digunakan yakni roulette wheel selection. Pada tabel 3.6 dapat diketahui nilai probabilitas tiap individu.

Tabel 3.6 Tabel Fitness Area dan Probabilitas Individu

Individu Fitness Area Probabilitas

1 52,5 52,5 / 140 = 0,3750

2 20 20 / 140 = 0,1429

3 67,5 67,5 / 140 = 0,4821


(45)

Dari probabilitas diatas dapat kita lihat individu ke 2 yang mempunyai

fitness area paling kecil yang merupakan individu yang mempunyai nilai fitness

tertinggi, maka individu tersebut mempunyai probabilitas untuk terpilih pada generasi selanjutnya lebih besar dari individu lainnya. Untuk proses seleksi kita gunakan roulete wheel. Dengan menjumlahkan nilai probabilitas dari tiap individu dapat diketahui nilai comulative probabilitas adalah 1.

3.3.4 Crossover

Crossover (penyilangan) dilakukan antara 2 kromosom untuk menghasilkan kromosom anak (offspring). Kromosom anak yang terbentuk akan mewarisi sebagian sifat kromosom parent. Metode crossover yang paling banyak digunakan adalah crossover satu titik (one-point crossover). Dalam proses ini dilakukan sembarang bilangan secara acak untuk menentukan posisi persilangan. Kemudian menukar bagian kanan dari titik potong dari kedua parent kromosom tersebut untuk menghasilkan kromosom anak.

Pada Gambar 3.3 menggambarkan skema crossover. Pertama mengacak secara random untuk membuat titik potong pada dua buah kromosom parent dan menentukan one cut point. Pada persilangan pertama parent 1 dan parent 2 dan dilanjutkan dengan persilangan berikutnya.

1. Crossover Individu 1 dan 2

Parent 1 Nama Ruang Ruang Tamu (4x3)

R. Keluarga (4x4)

Kamar Mandi (3x3) Parent 2 Nama Ruang Garasi

(4x4)

Ruang Makan (4x3)

Gudang (2x2)

Offspring 1 Nama Ruang Garasi (4x4)

R. Keluarga (4x4)

Kamar Mandi (3x3) Offspring 2 Nama Ruang Ruang Tamu

(4x3)

Ruang Makan (4x3)

Gudang (2x2)


(46)

Hasil Sementara :

Garasi (4x4) R. Keluarga (4x4) Kamar Mandi (3x3) Ruang Tamu (4x3) Ruang Makan (4x3) Gudang (2x2) Kamar Anak (3x4) Dapur (4x3) Kamar Utama (4x4)

Perhitungan Fitness Garasi :

Kriteria Awal : Zona Publik dan Letak Tengah Kriteria Tujuan : Zona Publik dan Letak Depan

Fitness Area Zona Sebelum Crossover = 1

= 1 – = 1 – 0,5 = 0,5 = 50%

Fitness Area Zona Setelah Crossover = 1 = 1 –

= 1 – 1 = 0,0 = 0 %

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,9 = 0,4 = 40 %

Fitness Area Letak Setelah Crossover = 1

= 1 –


(47)

= 1 – 1,2 = -0,2 = -20 %

Fitness Area Garasi = Fitness Zona + Fitness Letak / 2 = 0 % + -20 % / 2

= -10 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.

2. Crossover Individu 1 dan 2

Individu 1 Nama Ruang Garasi (4x4)

R. Keluarga (4x4)

Kamar Mandi (3x3) Individu 2 Nama Ruang Ruang Tamu

(4x3)

Ruang Makan (4x3)

Gudang (2x2)

Offspring 1 Nama Ruang Garasi (4x4)

Ruang Tamu (4x3)

Kamar Mandi (3x3) Offspring 2 Nama Ruang R. Keluarga

(4x4)

Ruang Makan (4x3)

Gudang (2x2)

Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Mandi (3x3) R. Keluarga (4x4) Ruang Makan (4x3) Gudang (2x2) Kamar Anak (3x4) Dapur (4x3) Kamar Utama (4x4)

Perhitungan Fitness Ruang Tamu :

Kriteria Awal : Zona Publik dan Letak Tengah Kriteria Tujuan : Zona Semi Publik dan Letak Depan

Fitness Area Zona Sebelum Crossover = 1 = 1 –


(48)

= 1 – 0,5 = 0,5 = 50%

Fitness Area Zona Setelah Crossover = 1 = 1 –

= 1 – 1 = 0,0 = 0%

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,45 = 0,55 = 55 %

Fitness Area Letak Setelah Crossover = 1

= 1 – = 1 – 0,9 = 0,1 = 10 %

Fitness Area Ruang Tamu = Fitness Zona + Fitness Letak / 2 = 0 % + 10 % / 2

= 5 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi dan Ruang Tamu telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area


(49)

3. Crossover Individu 1 dan 3

Parent 1 Nama Ruang Garasi (4x4)

Ruang Tamu (4x3)

Kamar Mandi (3x3) Parent 2 Nama Ruang Kamar Anak

(3x4)

Dapur (4x3)

Kamar Utama (4x4)

Offspring 1 Nama Ruang Garasi (4x4)

Ruang Tamu (4x3)

Kamar Anak (3x4)

Offspring 2 Nama Ruang Kamar Mandi (3x3)

Dapur (4x3)

Kamar Utama (4x4) Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) R. Keluarga (4x3) Ruang Makan (4x3) Gudang (2x2) Kamar Mandi (3x3) Dapur (4x4) Kamar Utama (4x4)

Perhitungan Fitness Kamar Anak :

Kriteria Awal : Zona Publik dan Letak Belakang Kriteria Tujuan : Zona Privat dan Letak Depan

Fitness Area Zona Sebelum Crossover = 1

= 1 – = 1 – 0,25 = 0,75 = 75 %

Fitness Area Zona Setelah Crossover = 1

= 1 – = 1 – 0,75 = 0,25 = 25 %


(50)

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,4 = 0,6 = 60 %

Fitness Area Letak Setelah Crossover = 1

= 1 –

= 1 – 1,2

= -0,2 = -20 %

Fitness Area Kamar Anak = Fitness Zona + Fitness Letak / 2 = 25 % + -20 % / 2

= 2,5 %

Hasil ini berbeda dengan hasil pengujian dikarenakan pada pengujian nilai panjang dan lebar ruang telah mengalami proses mutasi yang menyebabkan adanya

swap nilai panjang dan lebar sehingga adanya perubahan dalam perhitungan fitness area.

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, dan Kamar Anak telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.


(51)

4. Crossover Individu 2 dan 3

Parent 1 Nama Ruang R. Keluarga (4x4)

Ruang Makan (4x3)

Gudang (2x2) Parent 2 Nama Ruang Kamar Mandi

(3x3)

Dapur (4x3)

Kamar Utama (4x4)

Offspring 1 Nama Ruang Dapur (4x3)

Ruang Makan (4x3)

Gudang (2x2) Offspring 2 Nama Ruang Kamar Mandi

(3x3)

R. Keluarga (4x4)

Kamar Utama (4x4)

Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) Ruang Makan (4x3) Gudang (2x2) Kamar Mandi (3x3) R.Keluarga (4x4) Kamar Utama (4x4)

Perhitungan Fitness Dapur :

Kriteria Awal : Zona Semi Publik dan Letak Belakang Kriteria Tujuan : Zona Publik dan Letak Tengah

Fitness Area Zona Sebelum Crossover = 1

= 1 – = 1 – 0,5 = 0,5 = 50 %

Fitness Area Zona Setelah Crossover = 1

= 1 – = 1 – 1


(52)

= 0,0 = 0 %

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,45 = 0,55 = 55 %

Fitness Area Letak Setelah Crossover = 1

= 1 – = 1 – 0,9 = 0,1 = 10 %

Fitness Area Dapur = Fitness Zona + Fitness Letak / 2 = 0 % + 10 % / 2

= 5 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, dan Dapur telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.


(53)

5. Crossover Individu 2 dan 3

Parent 1 Nama Ruang Dapur (4x3)

Ruang Makan (4x3)

Gudang (2x2) Parent 2 Nama Ruang Kamar Mandi

(3x3)

R. Keluarga (4x4)

Kamar Utama (4x4)

Offspring 1 Nama Ruang Dapur (4x3)

R. Keluarga (4x4)

Gudang (2x2) Offspring 2 Nama Ruang Kamar Mandi

(3x3)

Ruang Makan (4x3)

Kamar Utama (4x4)

Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) R.Keluarga (4x4) Gudang (2x2) Kamar Mandi (3x3) Ruang Makan (4x3) Kamar Utama (4x4)

Perhitungan Fitness Ruang Keluarga :

Kriteria Awal : Zona Semi Publik dan Letak Belakang Kriteria Tujuan : Zona Semi Publik dan Letak Tengah

Fitness Area Zona Sebelum Crossover = 1

= 1 – = 1 – 0 = 0,0 = 0 %

Fitness Area Zona Setelah Crossover = 1

= 1 – = 1 – 1 = 0,0 = 0 %


(54)

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,45 = 0,55 = 55 %

Fitness Area Letak Setelah Crossover = 1

= 1 – = 1 – 0,9 = 0,1 = 10 %

Fitness Area Ruang Keluarga = Fitness Zona + Fitness Letak / 2 = 0 % + 10 % / 2

= 5 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, Dapur, dan Ruang Keluarga telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.

6. Crossover Individu 2 dan 3

Parent 1 Nama Ruang Dapur (4x3)

R. Keluarga (4x4)

Gudang (2x2)

Parent 2 Nama Ruang Kamar Mandi (3x3)

Ruang Makan (4x3)

Kamar Utama (4x4)

Offspring 1 Nama Ruang Dapur (4x3)

R. Keluarga (4x4)

Kamar Mandi (3x3) Offspring 2 Nama Ruang Gudang

(2x2)

Ruang Makan (4x3)

Kamar Utama (4x4)


(55)

Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) R.Keluarga (4x4) Kamar Mandi (3x3) Gudang (2x2) Ruang Makan (4x3) Kamar Utama (4x4)

Perhitungan Fitness Kamar Mandi :

Kriteria Awal : Zona Publik dan Letak Belakang Kriteria Tujuan : Zona Privat dan Letak Tengah

Fitness Area Zona Sebelum Crossover = 1

= 1 - = 1 – 0,25 = 0,75 = 75 %

Fitness Area Zona Setelah Crossover = 1

= 1 - = 1 – 0,75 = 0,25 = 25 %

Fitness Area Letak Sebelum Crossover = 1

= 1 – = 1 – 0,45 = 0,55 = 55 %


(56)

Fitness Area Letak Setelah Crossover = 1

= 1 – = 1 – 0,9 = 0,1 = 10 %

Fitness Area Ruang Kamar Mandi = Fitness Zona + Fitness Letak / 2 = 25 % + 10 % / 2

= 17,5 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, Dapur, Ruang Keluarga dan Kamar Mandi telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.

7. Pengecekan Fitness Area Gudang Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) R.Keluarga (4x4) Kamar Mandi (3x3) Gudang (2x2) Ruang Makan (4x3) Kamar Utama (4x4)

Perhitungan Fitness Gudang:

Kriteria Awal : Zona Publik dan Letak Belakang Kriteria Tujuan : Zona Publik dan Letak Belakang

Fitness Area Zona = 1

= 1 – = 1 – 0,67 = 0,33 = 33 %


(57)

Fitness Area Letak = 1

= 1 – = 1 – 0,67 = 0,33 = 33 %

Fitness Area Gudang = Fitness Zona + Fitness Letak / 2 = 33 % + 33 % / 2

= 33 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, Dapur, Ruang Keluarga, Kamar Mandi dan Gudang telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.

8. Pengecekan Fitness Area Ruang Makan Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) R.Keluarga (4x4) Kamar Mandi (3x3) Gudang (2x2) Ruang Makan (4x3) Kamar Utama (4x4)

Perhitungan Fitness Ruang Makan :

Kriteria Awal : Zona Semi Publik dan Letak Belakang Kriteria Tujuan : Zona Semi Publik dan Letak Belakang

Fitness Area Zona = 1

= 1 – = 1 – 1 = 0,0 = 0 %


(58)

Fitness Area Letak = 1

= 1 – = 1 – 0,9 = 0,1 = 10 %

Fitness Area Ruang Makan = Fitness Zona + Fitness Letak / 2 = 0 % + 10 % / 2

= 5 %

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, Dapur, Ruang Keluarga, Kamar Mandi, Gudang dan Ruang Makan telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area

terendah.

9. Pengecekan Fitness Area Kamar Utama Hasil Sementara :

Garasi (4x4) Ruang Tamu (4x3) Kamar Anak (3x4) Dapur (4x3) R.Keluarga (4x4) Kamar Mandi (3x3) Gudang (2x2) Ruang Makan (4x3) Kamar Utama (4x4)

Perhitungan Fitness Kamar Utama :

Kriteria Awal : Zona Privat dan Letak Belakang Kriteria Tujuan : Zona Privat dan Letak Belakang

Fitness Area Zona = 1

= 1 – = 1 – 1 = 0,0 = 0 %


(59)

Fitness Area Letak = 1

= 1 – = 1 – 1,2 = -0,2 = -20 %

Fitness Area Ruang Makan = Fitness Zona + Fitness Letak / 2 = 0 % + -20 % / 2 = -10 %

Gambar 3.5 Skema Crossover

Warna hijau pada tabel Hasil Sementara menunjukkan bahwa Garasi, Ruang Tamu, Kamar Anak, Dapur, Ruang Keluarga, Kamar Mandi, Gudang, Ruang Makan, dan Kamar Utama telah diletakkan pada zona dan letak yang menghasilkan nilai fitness area terendah.

Dari proses crossover diatas dihasilkan denah sementara sebagai berikut :

Keterangan:

CP : Carport GR : Garasi RT : Ruang Tamu KA : Kamar Anak DP : Dapur

RK : Ruang Keluarga KM : Kamar Mandi GD : Gudang RM : Ruang Makan KU : Kamar Utama


(60)

Total Fitness Area = 1 = 1

= 1 = 1 – 1,1 = - 0,1 = -10 %

Pada Gambar 3.4 diatas dapat disimpulkan bahwa berlebihnya penggunaan bidang menimbulkan nilai fitness area yang bernilai minus, sehingga tidak terpenuhinya kebutuhan denah, masalah ini dapat diatasi dengan dilakukannya penurunan nilai lebar bidang rumah dengan cara penurunan setiap ruang terpilih dengan membandingkan penggunaan lebar lahan dengan lebar ruang pada setiap individu.

Proses crossover diatas dilakukan secara acak dengan iterasi yang berulang-ulang hingga didapat individu yang terbaik. Setelah crossover antara parent yang menghasilkan offspring yang kemudian dilakukan kembali iterasi dan crossover

seperti yang dijelaskan diatas. Pada crossover ada satu parameter yang sangat penting yaitu peluang crossover (Pc). Peluang crossover menunjukkan rasio dari anak yang dihasilkan dalam setiap generasi dengan ukuran populasi. Misalkan ukuran populasi (popsize=9), sedangkan peluang crossover (Pc=0.66), berarti bahwa diharapkan ada 6 kromosom dari 9 kromosom yang ada pada populasi tersebut akan mengalami crossover.

3.3.5 Mutasi

Setelah melalui proses crossover, pada offspring dapat dilakukan proses mutasi. Mutasi dilakukan dengan cara melakukan perubahan pada sebuah gen atau lebih dari sebuah individu.

Tujuan dari mutasi adalah agar individu-individu yang ada dalam populasi semakin bervariasi. Mutasi akan sangat berperan jika pada populasi awal hanya ada sedikit solusi yang mungkin terpilih. Sehingga, operasi itu sangat berguna dalam mempertahankan keanekaragaman individu dalam populasi meskipun dengan mutasi tidak dapat diketahui apa yang terjadi pada individu baru.


(61)

Pada kasus ini skema mutasi yang digunakan adalah swapping mutation/mutation exchange. Jumlah kromosom yang mengalami mutasi dalam satu populasi ditentukan oleh parameter mutation rate (Pm) atau peluang mutasi. Peluang mutasi mengendalikan banyaknya gen baru yang akan dimunculkan untuk dievaluasi. Jika peluang mutasi terlalu kecil, banyak gen yang mungkin berguna tidak pernah dievaluasi. Tetapi bila peluang mutasi ini terlalu besar, maka akan terlalu banyak gangguan acak, sehingga anak akan kehilangan kemiripan dari induknya, dan juga algoritma akan kehilangan kemampuan untuk belajar dari histori pencarian.

Mutasi dilakukan untuk mencegah terjadinya konvergensi prematur. Pada mutasi cara swap (Penukaran) adalah mutasi yang dilakukan dengan menukar langsung nilai dari gen. Pemilihan cara mutasi dilakukan secara random. Namun pada kasus ini pemilihan dilakukan dengan dilakukannya penurunan nilai lebar bidang rumah dengan cara penurunan setiap ruang terpilih dengan membandingkan penggunaan lebar lahan dengan lebar ruang pada setiap individu. Pada kasus ini ruang terpilih adalah Kamar Anak yang akan ditukarkan nilai panjang dengan nilai lebar nya, demikian sebaliknya.

Hasil akhir proses crossover:


(62)

Hasil proses swap :

Gambar 3.8 Hasil Proses Mutasi

Total Fitness Area Setelah Mutasi = 1 = 1

= 1 = 1 – 0,95 = 0,05 = 5 %

Dengan didapatnya nilai fitness area setelah mutasi bernilai 5 %, maka dapat disimpulkan bahwa hanya 5 % dari lahan yang terbuang.

3.3.6 Proses Output

Pada tahap akhir, yaitu proses output dimana hasil dari seluruh pencarian letak dan pengurutan pola ruang dengan menggunakan algoritma genetika akan ditampilkan pada program ini. Contoh dari hasil output pada program ini bisa dilihat pada Gambar 3.7.


(1)

document.getElementById('fitness').value=fitness*100;

document.getElementById('permutasi').value=permutasi/9;

/*fitness setiap ruang*/

document.getElementById('kamar1').value=fitzone((pkamar1/perbandingan),(l kamar1/perbandingan));

document.getElementById('kanak').value=fitzone((pkamar2/perbandingan),(lk amar2/perbandingan));

document.getElementById('kmandi1').value=fitzone((pkmandi/perbandingan), (lkmandi/perbandingan));

document.getElementById('rkel').value=fitzone((prkel/perbandingan),(lrkel/pe rbandingan));

document.getElementById('rtamu').value=fitzone((prtamu/perbandingan),(lrta mu/perbandingan));

document.getElementById('rmakan').value=fitzone((prm/perbandingan),(lrm/p erbandingan));

document.getElementById('dapur').value=fitzone((pdapur/perbandingan),(ldap ur/perbandingan));

document.getElementById('garasi').value=fitzone((pgarasi/perbandingan),(lgar asi/perbandingan));

document.getElementById('kmandi2').value=fitzone((pkmandi2/perbandingan ),(lkmandi2/perbandingan));

}; </script>

</head>

<body>

<div id="canvas_div">

<canvas id="myCanvas" width="<?php echo $panjang*$perbandingan?>" height="<?php echo $lebar*$perbandingan?>"

<?php if($arah=='selatan'){?>style="transform: rotate(180deg);-ms-transform: rotate(180deg);webkittransform: rotate(180deg); otransform: rotate(180deg); -moz-transform: rotate(180deg);<?php }?>">

</canvas>

<img src="kompas.png" align="bottom"/>

</div>

<div id="form_div">

<form method="get" action="index1.php">

<input type="hidden" name="p" value="denah.php" /> <table width="386" border="0">

<tr>

<td></td>

<td width="160">Luas Bangunan</td> <td width="220">


(2)

x

<input type="text" name="lb1" size="4" value="<?php echo $lb1 ?>" /> </td>

</tr> <tr>

<td><div class="minibox" style="background:green;"></div></td> <td>Depan</td>

<td>

<input type="text" name="dpnpjg" size="4" value="<?php echo $dpnpjg ?>" />

x

<input type="text" name="dpnlbr" size="4" value="<?php echo $dpnlbr ?>" /> </td>

</tr> <tr>

<td><div class="minibox" style="background:seagreen;"></div></td> <td>Belakang</td>

<td><input type="text" name="blkpjg" size="4" value="<?php echo $blkpjg ?>" /> x <input type="text" name="blklbr" size="4" value="<?php echo $blklbr ?>" /></td> </tr>

<tr>

<td><div class="minibox" style="background:yellow;"></div></td>

<td><img src="information.png" alt="" title="kamar utama terletak dibagian timur dikarenakan arah matahari terbit dari timur ke barat, peletakan pada bagian ini bertujuan untuk mengurangi penerimaan panas matahari yang berlebih di siang hari, dan terletak dibagian belakang bertujuan untuk mensupport kamar anak dibagian depan" />Kamar Utama</a></td>

<td>

<input type="text" name="pkm" size="4" value="<?php echo $pkm ?>" /> x

<input type="text" name="lkm" size="4" value="<?php echo $lkm ?>" /> <input type="text" id="kamar1" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:violet;"></div></td>

<td><img src="information.png" alt="" title="kamar anak terletak dibagian timur dikarenakan arah matahari terbit dari timur ke barat, peletakan pada bagian ini bertujuan untuk mengurangi penerimaan panas matahari yang berlebih di siang hari, dan terletak dibagian depan bertujuan untuk menerima support dari kamar utama dibagian belakang" />Kamar Anak</a></td>

<td>

<input type="text" name="pka" size="4" value="<?php echo $pka ?>" /> x

<input type="text" name="lka" size="4" value="<?php echo $lka ?>" /> <input type="text" id="kanak" size="4"/>


(3)

</tr> <tr>

<td><div class="minibox" style="background:black;"></div></td>

<td><img src="information.png" alt="" title="kamar mandi diletakkan adjacent secara vertikal dengan kamar utama dan kamar anak untuk memudahkan akses dari kamar anak dan kamar utama yang ketiganya bersifat privat" />Kamar Mandi</a></td>

<td>

<input type="text" name="pkmi" size="4" value="<?php echo $pkmi ?>" /> x

<input type="text" name="lkmi" size="4" value="<?php echo $lkmi ?>" /> <input type="text" id="kmandi1" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:red;"></div></td>

<td><img src="information.png" alt="" title="ruang keluarga terletak pada bagian tengah rumah karena bersifat pengikat dan diharapkan adjacent dengan kamar mandi dan dapur" />R.Keluarga</a></td>

<td>

<input type="text" name="pk" size="4" value="<?php echo $pk ?>" /> x

<input type="text" name="lk" size="4" value="<?php echo $lk ?>" /> <input type="text" id="rkel" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:skyblue;"></div></td>

<td><img src="information.png" alt="" title="ruang tamu terletak dibagian depan rumah bertujuan untuk memudahkan akses masuk dari arah depan rumah" />R.Tamu</a></td>

<td>

<input type="text" name="pt" size="4" value="<?php echo $pt ?>" /> x

<input type="text" name="lt" size="4" value="<?php echo $lt ?>" /> <input type="text" id="rtamu" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:brown;"></div></td>

<td><img src="information.png" alt="" title="ruang makan terletak dibagian tengah dan belakang karena bersifat pengikat dan bersifat semiprivat" />R.Makan</a></td>

<td>

<input type="text" name="prm" size="4" value="<?php echo $prm ?>" /> x


(4)

<input type="text" id="rmakan" size="4"/> </td>

</tr> <tr>

<td><div class="minibox" style="background:gold;"></div></td>

<td><img src="information.png" alt="" title="dapur terletak dibagian barat dikarenakan bersifat publik dan tidak mungkin bertukar posisi dengan kamar mandi 2 dikarenakan untuk menghindari satu ruang (RK) adjacent dengan dua ruang yang mempunyai fungsi yang sama " />Dapur</a></td>

<td>

<input type="text" name="pd" size="4" value="<?php echo $pd ?>" /> x

<input type="text" name="ld" size="4" value="<?php echo $ld ?>" /> <input type="text" id="dapur" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:blue;"></div></td>

<td><a><img src="information.png" alt="" title="garasi berada dibagian depan untuk memudahkan akses kendaraan masuk dari arah depan rumah" />Garasi</a></td>

<td>

<input type="text" name="pg" size="4" value="<?php echo $pg ?>" /> x

<input type="text" name="lg" size="4" value="<?php echo $lg ?>" /> <input type="text" id="garasi" size="4"/>

</td> </tr> <tr>

<td><div class="minibox" style="background:purple;"></div></td>

<td><img src="information.png" alt="" title="gudang terletak dibagian belakang dan tidak mungkin bertukar posisi dengan dapur karena akan menghalang aliran kegiatan dari dapur ke ruang lainnya" />Gudang</a></td>

<td>

<input type="text" name="pkmi2" size="4" value="<?php echo $pkmi2 ?>" /> x

<input type="text" name="lkmi2" size="4" value="<?php echo $lkmi2 ?>" /> <input type="text" id="kmandi2" size="4"/>

</td> </tr> <tr>

<td></td>

<td><input type="submit" name="submit" value="Update" /></td> <td>&nbsp;</td>

</tr> </table>


(5)

<input type="hidden" name="dpnlbr" value="<?php echo $dpnlbr ?>"> <input type="hidden" name="blkpjg" value="<?php echo $blkpjg ?>"> <input type="hidden" name="blklbr" value="<?php echo $blklbr ?>"> <input type="hidden" name="panjang" value="<?php echo $panjang ?>"> <input type="hidden" name="lebar" value="<?php echo $lebar ?>"> <input type="hidden" name="arah" value="<?php echo $arah ?>" /> </form>

<br/>

&nbsp;&nbsp;&nbsp;<i>Fitness Area</i> = <input type="text" disabled="disabled" id="fitness"/> %

<a><img src="information.png" alt="" title="nilai fitness area merupakan nilai lahan yang tidak terpakai (berlebih) dalam penentuan tata letak ruang" /></a>

</br><i>Mutation Rate</i> = <input type="text" disabled="disabled" id="permutasi"/>

<a><img src="information.png" alt="" title="nilai mutation rate merupakan nilai hasil bagi jumlah ruang yang mengalami mutasi dengan total ruang" /></a>

</div>

<div style="clear:both"></div> </body>

<br/> </html>


(6)

Munawar. 2005. Pemodelan Visual dengan UML. Graha Ilmu: Yogyakarta.

Berlianty, Intan dan Miftahol. 2010. Teknik-Teknik Optimasi Heuristik. Graha Ilmu: Yogyakarta.

Sakur, S.B. 2010. PHP 5 Pemrograman Berorientasi Objek – Konsep dan Implementasi. Andi: Yogyakarta.

Muchtar, M.A. & Sani, M.F. 2011. Modul Praktikum Desain Perangkat Lunak. USU Press: Medan.

Cudiyanto, Y., Siallagan, M.P. & Novani, S. 2004. Perencanaan Tata Guna Lahan dengan Algoritma Genetika di Kota Bandung. (Online) (26 Mei 2012)

Jagielski, Romuald & Gero, J.S. 2006. A Genetic Programming Approach To The Space Layout Planning Problem. (Online) (2 Mei 2012)

Kubalik, J., Lazansky, J. & Zikl, P. 2008. Layout Problem Optimization using Genetic Algorithms. (Online) (8 Mei 2012)

Nugraha, I. 2009. Aplikasi Algoritma Genetik Untuk Optimasi Penjadwalan Kegiatan Belajar Mengajar. (Online) (26 Desember 2012)

Purnomo, H & Kusumadewi, S. 2005. Aplikasi Algoritma Genetika Untuk Penentuan Tata Letak Mesin. (Online) (8 Februari 2013)

Dewi, I.K. 2009. Algortima Genetika untuk Permasalahan Pengaturan Box pada Kontainer. (Online) (26 Maret 2013)

Suparman, A. 2010. Organisasi Ruang Fungsional dan Spatial. (Online) (27 Maret 2013)

Sam’ani. 2012. Rancang Bangun Sistem Penjadwalan Perkuliahan Dan Ujian Akhir Semester Dengan Pendekatan Algoritma Genetika. (Online) (28 Maret 2013) Prasetio, K. 2010. Decision Support System of Optimal Route in Bandung City with Genetic Algorithm. (Online) (28 Maret 2013)

Abdullah, I.S. 2009. Analisis dan Implementasi Algoritma Genetika pada Penjadwalan Mata Kuliah. (Online) (28 Maret 2013)