Implementasi algoritma fuzzy logic untuk menentukan tata letak furniture pada simulasi denah ruangan
1 BAB 1
PENDAHULUAN
1.1.Latar Belakang Masalah
Perancangan pada sebuah ruangan sangatlah penting. Merancang tata letak ruangan mempunyai tujuan menciptakan suasana ruangan agar menjadi lebih baik untuk beraktivitas di dalamnya sehingga dapat mempengaruhi psikis penghuni menjadi lebih baik saat berada di ruangan [1]. Untuk mendapatkan suasana yang nyaman biasanya orang menggunakan cara konvensional seperti membuat sketch pada kertas yang terkadang hanya dapat mengira-ngira ukuran ruangan dan properti yang ada atau menggunakan jasa para ahli desain interior atau menempatkan properti tanpa dirancang sebelumnya yang akan mengakibatkan ruangan berantakan dan terkesan sempit atau tidak cocok dengan isi ruangan yang sudah ada. Maka dari itu, akan lebih baik jika perancangan ruangan dilakukan oleh sendiri dengan keinginan dan kesesuaian.
Melalui aplikasi simulasi tersebut secara umum manfaat yang didapat adalah proses merancang tata letak furniture pada sebuah ruangan menjadi lebih mudah, lebih singkat, lebih praktis, tidak perlu mengeluarkan tenaga lebih, serta tidak perlu mengeluarkan biaya untuk menyewa jasa ahli. Untuk menyelesaikan solusi merancang tata letak furniture ini menggunakan algoritma fuzzy logic atau logika fuzzy, pada aplikasi ini algoritma fuzzy logic digunakan untuk menentukan letak furniture yang layak dan baik menurut sistem. Fuzzy logic merupakan algoritma penerapan kecerdasan buatan yang diterapkan dalam pengambilan keputusan. Dengan memakai algoritma fuzzy logic, furniture memiliki perilaku layaknya diposisikan oleh manusia. Kecerdasan buatan yang diterapkan pada furniture menjadikan furniture memiliki prilaku sendiri berdasarkan kondisi yang ada dalam ruang yang tersedia di aplikasi.
Algoritma fuzzy logic adalah algoritma yang mengandung unsur ketidakpastian, tidak seperti logika biasa yaitu logika tegas, kita hanya mengenal dua nilai, salah atau benar, atau 0 atau 1. Apabila pada algoritma fuzzy logic
(2)
mengenal nilai antara benar dan salah. Kebenaran dalam fuzzy logic dapat dinyatakan dalam derajat kebenaran yang nialinya antara 0 sampai 1 [2] . Himpunan fuzzy adalah pengelompokan sesuatu bedasarkan parameter dan variable bahasa atau linguistik variable, yang dinyatakan dalam fungsi keanggotaan (Universe of discourse) U, fungsi keanggotaan dari suatu himpunan fuzzy tersebut bernilai antara 0.0 sampai dengan 1.0 . Fuzzy logic itu sendiri merupakan suatu logika yang memiliki nilai kekaburan atau kesamaran antara benar dan salah. Dalam penerapannya fuzzy logic merupakan suatu cara untuk memetakan permasalahn dari input menjadi output yang diharapkan terutama dalam sistem pengambilan keputusan. Fuzzy logic mampu beradaptasi dengan perubahan perubahan dan ketidakpastian yang menyertai permasalahan. K erja kontrol fuzzy logic ini terdapat beberapa tahapan operasional yang meliputi fuzzyfikasi, Penalaran, Aturan Dasar dan Defuzzyfikasi.
Berdasarkan hal yang telah dijelaskan diatas, maka dalam penelitian ini penulis akan menerapkan algortima fuzzy logic pada aplikasi. Melalui aplikasi tersebut secara umum manfaat yang didapat adalah mengetahui performansi dari algoritma fuzzy logic dan dapat memberikan rekomendasi tata letak furniture. 1.2.Rumusan Masalah
Berdasarkan latar belakang yang telah disebutkan, maka yang menjadi inti masalah dalam penelitian ini adalah:
1. Bagaimana mengimplementasikan algoritma fuzzy logic pada simulasi tata letak furniture pada ruang kamar ?
2. Bagaimana algortima fuzzy logic memberikan rekomendasi tata letak furniture pada denah ruang kamar ?
1.3.Maksud dan Tujuan
Berdasarkan permasalahan yang ada, maksudnya adalah untuk mengimplementasikan algoritma fuzzy logic untuk penentuan tata letak furniture pada sebuah denah kamar.
(3)
1. Mengetahui performansi algoritma fuzzy logic dalam penentuan tata letak furniture pada aplikasi simulasi denah.
2. Memberikan rekomendasi tata letak furniture berdasarkan algoritma fuzzy logic
1.4.Batasan Masalah
Ada beberapa batasan masalah dalam penelitian ini agar pembahasan lebih terfokus sesuai dengan tujuan yang akan dicapai. Batasan masalah dalam penelitian ini adalah sebagai berikut :
1. Algoritma yang diterapkan pada parameter penempatan furniture. 2. Mensimulasikan tata letak furniture pada ruang kamar tidur
3. Memberikan rekomendasi tata letak furniture pada sebuah denah ruang kamar tidur.
4. Aplikasi yang akan dibangun berupa prototype
5. Furniture hanya mempunyai parameter jumlah, relasi dan ukuran 6. Tinggi furniture sudah pasti (standar) dan tidak akan melebihi ruangan
yang ada.
7. Output yang dihasilkan adalah posisi akhir furniture 8. Menggunakan fungsi keanggotaan linear naik
1.5.Metode Penelitian
Penelitian ini menggunakan metode penelitian deskriptif, yaitu metode penelitian yang bertujuan untuk mendapatkan gambaran yang jelas tentang hal-hal yang dibutuhkan dan berusaha menggambarkan serta menginterpretasi objek yang sesuai dengan fakta secara sistematis, faktual dan akurat.
1.5.1. Metode Pengumpulan Data
Metode pengumpulan data dalam penelitian ini adalah sebagai berikut: 1. Studi Literatur
(4)
Pengumpulan data dengan cara mengumpulkan buku, jurnal dan paper serta informasi-informasi yang berkaitan dengan furniture, ruangan dan algoritma fuzzy logic.
2. Observasi
Teknik pengumpulan data dengan cara mengadakan penelitian dan peninjauan langsung terhadap beberapa ruang kamar tidur.
1.5.2. Metode Pembangunan Perangkat Lunak
Metode yang dipakai pada aplikasi ini yaitu secara prototyping , yaitu meliput beberapa tahap-tahap sebagai berikut :
a. Pengumpulan kebutuhan
Mengumpulkan kebutuhan dan materi dari sumber buku atau jurnal dan keterangan ahli untuk kemudian didefinisikan kebutuhannya
b. Membangun prototyping
Membangun perancangan sementara berbentuk prototyping sederhana c. Evaluasi prototyping
Evaluasi ini dilakukan oleh pengguna apakah prototyping yang telah dibuat sudah sesuai. Jika sudah sesuai maka langkah 4 akan diambil. Jika tidak prototyping direvisi dengan mengulang langkah 1, 2, dan 3. d. Mengkodekan sistem
Protyping yang sebelumnya telah disepakati dilanjutkan pada pengkodean dalam bahasa pemrograman
e. Menguji sistem
Sistem yang sudah menjadi perangkat lunak diuji terlebih dahulu sebelum digunakan sepenuhnya oleh pengguna
f. Evaluasi sistem
Mengevaluasi sistem yang telah diuji sebelumnya, apakah telah sesuai dengan yang diharapkan
g. Menggunakan sistem
Perangkat lunak yang telah diuji dan diterima pengguna siap untuk digunakan.
(5)
1.6.Sistematika Penulisan
Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut:
BAB 1 PENDAHULUAN
Menguraikan tentang latar belakang permasalahan, rumusan masalah, maksud dan tujuan, batasan masalah, metode penelitian serta sistematika penulisan.
BAB 2 LANDASAN TEORI
Membahas berbagai konsep dasar kecerdasan buatan (Artificial Intelligence), perbedaan kecerdasan buatan, algoritma yang digunakan, fuzzy logic, ruangan, desain interior, UML (Unified Modeling Language), use case diagram, class diagram, sequance diagram, collaboration diagram, activity diagram, component diagram dan deployment diagram.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini menguraikan tentang analisis sistem, analisis aplikasi yang akan dibangun, analisis pengguna, analisis kebutuhan non-fungsional, analisis kebutuhan fungsional dan perancangan.
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi tentang implementasi dari hasil analisis dan perangcangan yang telah dibuat kedalam bentuk aplikasi pemograman, kemudian dilakukan pengujian terhadap aplikasi yang dibangun.
BAB 5 KESIMPULAN DAN SARAN
Menjelaskan tentang kesimpulan yang diperoleh dari hasil implementasi dan pengujian yang telah dibuat, serta saran-saran untuk pengembangan penelitian ini selanjutnya.
(6)
7 BAB 2
LANDASAN TEORI
2.1 Ruangan
Ruang menurut kamus besar bahasa indonesia (KBBI) adalah sela-sela antara dua (deret) tiang atau sela-sela antar empat riang (di bawah kolong rumah), rongga yang berbatas atau terlingkung oleh bidang, rongga yang tidak terbatas, tempat yang ada. Ruangan menurut kamus besar bahasa indonesia (KBBI) adalah tempat yang legar; kamar (besar); bilik (dalam rumah); kelas (tempat belajar).
Ruang menurut undang undang adalah wadah yang meliputi daratan, ruang lautan dan ruang udara sebagai satu kesatuan wilayah, tempat manusia dan mahluk lainnya hidup dan mahluk lainnya hidup dan melakukan kegiatan serta memelihara kelangsungan hidupnya (Pasal 1 butir 1 UU No.26/2007).
Ruang adalah bahan terpenting di mata seorang perancang dan unsur utama dalam desain interior. Melalui volume ruang, kita tidak hanya bergerak tetapi melihat juga bentuk-bentuk, mendengar berbagai suara, merasakan angin, dan matahari. Ruang mewarisi karateristik estetis dan sensual unru-unsur tersebut untuk bidangnya masing-masing [4]. Ruang adalah substansi materi, seperti batu dan kayu. Walapun demikian, ruang pada umumnya tidak berbentuk dan terdispersi. Ruang iniversil tidak mempunyai definisi. Pada saat suatu unsur diletakan pada suatu bidang, barulah hubungan visualnya terbentuk. Ketika unsur-unsur lain mulai diletakkan pada bidang tersebut, terjadilah hubungan majemuk antara ruang dan unsur-unsur tersebut maupun antara unsur yang satu dengan unsur lainnya. Ruang oleh karenanya terbentuk dari adanya hubungan-hubungan tersebut dan kita yang merasakannya.
(7)
Gambar 2.1 Ruang Kosong
Aktifitas manusia dalam kehidupannya dan pembangunan yang memanfaatkan ruang cenderung menimbulkan penurunan kualitas ruang, oleh karena itu mutlak diperlukan langkah-langkah konkrit penataan ruang melalui perencanaan, pemanfaatan dan pengendalian. Penataan ruangan adalah proses perencanaan tata ruang, pemanfaatan ruang dan pengendalian pemanfaatan ruang [3].
Sistem struktur bangunan mengatur bentuk dan pola dasar ruang-ruang interornya. Meskipun demikian, ruang-ruang tersebut pada akhirnya akan dibentuk strukturnya justru oleh elemen-elemen desain interior tersebut. Terminologi struktur di sini tidak diartikan sebagai penunjang fisik namun berkaitan dengan pemilihan dan penyusunan unsur-unsur interior sedemikian rupa sehingga hubungan-hubungan visual dapat menentukan dan mengatur ruang interior sebuah ruangan. Dalam sebuah ruang yang besar, bentuk dan tata letak perlengkapan ruang juga dapat berfungsi sebagai dinding, menimbulkan kesan terlindung dan membentuk pola-pola spasial. Bahkan sebuah elemen, bentuk skala atau gayanya dapat mendominasi suatu ruang dan mengorganisir munculnya daerah ruang elemen itu sendiri.
Permasalahan yang kompleks perlu diperhitungkan dalam upaya mewujudkan sebuah desain yang memberikan penyelesaian masalah secara integral. Dengan menggunakan metodologi desain yang sistematis maka upaya pemecahan masalahnya yaitu dapat dilakukan dengan mendeskripsikan permasalahan tersebut degan cata mendata secara lengkap untuk kemudian diuraikan dalam bentuk analisis masalah. Keberadaan sebuah konsep desain
(8)
dalam perencanaan interior sangatlah penting. Dengan adanya konsep maka seluruh permasalahan yang akan dipecahkan dalam perencangan diformulasikan ke dalam satu perumusan.
2.1.1 Desain Interior
Desain interior atau penataan ruang pada prinsipnya merupakan upaya memecahkkan masalah kehidupan yang berkaitan dengan ruang bagian dari sebuah bangunan. Desain interior berkaitan dengan masalah fisik dan non fisik. Masalah fisik berkaitan dengan kondisi ruang yang terdiri atas unsur lantai, dinding, plafon, utilitas seperti jendela untuk memasukan cahaya alam, ventilasi untuk mengalirkan udara alami, pintu untuk mengakses hubungan antar ruang, mekanika dan elektikal seperti saluran pelistrikan dan masalah non fisik berkaitan dengan faktor manusia seperti kondisi psikologis, sosial dan budaya yang membentuk persepsi-persepsi dan perasaan terhadap suasana ruang tertentu [3]. Setiap desain bertujuan untuk menyusun secara teratur bagian demi bagiannya menjadi satu tatanan yang utuh demi maksud-maksud tertentu. Dalam desain interior, elemen-elemen yang dipilih ditata menjadi pola tiga dimensi sesuai dengan garis-garis besar fungsi, estetika dan perilakunya. Hubungan antara elemen-elemen yang terbentuk dari pola-pola ini pada akhirnya menentukan kualitas visual dan kecocokan fungsi ruang interior dan mempengaruhi bagaimana kita memahami dan menggunakannya. Oleh karena itu, maksud dan tujuan desain interior adalah untuk memperbaiki fungsi memperkaya nilai estetika dan meningkatkan aspek psikologis dan ruang interior.
(9)
Gambar 2.2 Perancangan Ruangan
Desain interior harus mampu melampui definisi ruang dalam arsitektur. Dalam perancangan tata letak, perlengkapan ruang dan ornamen ruang, perancangan interior harus benar-benar menyadari karakter arsitekturnya termasuk potensi-potensi untuk modifikasi dan peningkatan kualitasnya [4]. Oleh karena itu, desain ruang interior menuntut pemahaman bagaimana ruang tersebut terbentuk oleh sistem bangunannya seperti struktur dan penutup ruangnya. Dengan pemahaman tersebut perancangan interor dapat secara efektif memilih untuk mengerjakan, meneruskan, atau bahkan menawarkan usulan baru kepada konsep utama sebuah ruang arsitektur.
Proses desain menetapkan elemen-elemen yang akan digunakan dan bagaimana menatanya menjadi pola-pola melalui proses desain. Meskipun disajikan sebagai urut-urutan langkah yang linier, proses desain lebih sering berbentuk silus dimana setiap tahapan merupakan serangkaian analisis, sintesis dan evaluasi yang teliti mengenai informasi yang tersedia persepsi serta memungkinan solusi yang diulang terus-menerus sampai diperoleh perpaduan yang sesuai antara apa yang sudah ada dengan yang diinginkan.
Masalah desain harus didefinisikan lebih daulu. Definisi tersebut harus mencakup spesifikasi mengenai bagaimana melaksanakan solusi desain itu. Tujuan akhir dan tujuan-tujuan lain harus ditetapkan terlebih dahulu. Analisis suatu permasalahan adalah memecah permasalahan tersebut menjadi beberapa
(10)
bagian, memperjelas permasalahannya dan mencoba menerapkan nilai-nilai dari berbagai aspek pada pemasalahan itu. Analisis juga melibatkan pengumpulan informasi-informasi yang relevan yang dapat membantu kita memahami sidat dari permasalahan tersebut dan membangun tanggapan yang sesuai. Dari titik tolak ini, perlu diketahui juga batasan apa saja yang akan membantu membentuk solusi desain. Faktor-faktor yang diperoleh apa yang dapat dan apa yang tidak dapat diubah harus dipertimbangkan. Keterbatasan-keterbatasan finansial, hukum atau teknis yang dapat mengganggu solusi desain yang harus diperhatikan. Sementara melanjutkan proses desain, semakin tampak pengertian yang lebih jelas tentang permasalahannya. Informasi baru mungkin ditemukan atau dibutuhkan yang mana dapat merubah persepsi kita terhadap masalah maupun solusinya. Oleh karena itu, analisis terus menerus dilakukan dalam proses desain.
2.1.2 Furniture
Mebel atau furniture adalah perlengkapan rumah yang mencakup semua barang seperti kursi, meja, dan lemari. Mebel berasal dari kata movable, yang artinya bisa bergerak. Pada zaman dahulu meja kursi dan lemari relatif mudah digerakkan dari batu besar, tembok, dan atap. Sedangkan kata furniture berasal dari bahasa Prancis fourniture (1520-30 Masehi). Fourniture mempunyai asal kata fournir yang artinya furnish atau perabot rumah atau ruangan. Walaupun mebel dan furniture punya arti yang beda, tetapi yang ditunjuk sama yaitu meja, kursi, lemari, dan seterusnya. Dalam kata lain, mebel atau furniture adalah semua benda yang ada di rumah dan digunakan oleh penghuninya untuk duduk, berbaring, ataupun menyimpan benda kecil seperti pakaian atau cangkir. Mebel terbuat dari kayu, papan, kulit, sekrup, dll
Dalam buku berjudul desain interior Sufty Nurahmartiyanti (2008:3) Furniture merupakan salah satu elemen untuk menyempurnakan sebuah desain interior. Keberadaan furniture juga berperan penting dalam mewujudkan citra milimalis pada sebuah hunian. Furniture minimalis berbentuk sederhana dan
(11)
minimalis dalam penggunaan profil atau detail. Selain itu furniture minimalis cenderung tanpa ukiran sehingga tampilannya terlihat lebih bersih dan simple.. 2.2 Kecerdasan Buatan (Artificial Intelligence)
Bagian dari ilmu komputer yang mempelajari bagaimana membuat mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia, bahkan bisa lebih baik daripada yang dilakukan manusia, untuk mengetahui dan memodelkan proses–proses berpikir manusia dan mendesain mesin agar dapat menirukan perilaku manusia.
2.2.1 Beda Kecerdasan Buatan & Kecerdasan Alami Kelebihan kecerdasan buatan :
1. Lebih bersifat permanen. Kecerdasan alami bisa berubah karena sifat manusia pelupa. Kecerdasan buatan tidak berubah selama sistem komputer & program tidak mengubahnya.
2. Lebih mudah diduplikasi & disebarkan. Mentransfer pengetahuan manusia dari 1 orang ke orang lain membutuhkan proses yang sangat lama & keahlian tidak akan pernah dapat diduplikasi dengan lengkap.Jadi jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebut dapat disalin dari komputer tersebut & dapat dipindahkan dengan mudah ke komputer yang lain.
3. Lebih murah. Menyediakan layanan komputer akan lebih mudah & murah dibandingkan mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama.
4. Bersifat konsisten dan teliti karena kecerdasan buatan adalah bagian dari teknologi komputer sedangkan kecerdasan alami senantiasa berubah-ubah. 5. Keputusan yang dibuat komputer dapat didokumentasi dengan mudah dengan cara melacak setiap aktivitas dari sistem tersebut. Kecerdasan alami sangat sulit untuk direproduksi.
6. Dapat mengerjakan beberapa task lebih cepat dan lebih baik dibanding manusia
(12)
2.2.2 Kelebihan kecerdasan alami :
1. Kreatif manusia memiliki kemampuan untuk menambah pengetahuan, sedangkan pada kecerdasan buatan untuk menambah pengetahuan harus dilakukan melalui sistem yang dibangun
2. Memungkinkan orang untuk menggunakan pengalaman atau pembelajaran secara langsung. Sedangkan pada kecerdasan buatan harus mendapat masukan berupa input-input simbolik.
3. Pemikiran manusia dapat digunakan secara luas, sedangkan kecerdasan buatan sangat terbatas.
2.3 Kecerdasan Buatan (Artificial Intelligence)
Algoritma merupakan salah satu cabang ilmu komputer yang membahas prosedur penyelesaian suatu permasalahan. Algoritma adalah urutan langkah-langkah dalam menentukan suatu masalah. Algoritma juga dapat didefinisikan dengan deretan langkah komputasi yang mentransformasikan masukan (input) menjadi keluaran (output). Jadi algoritma adalah serangkaian urutan langkah-langkah atau prosedur untuk menyelesaikan suatu masalah dengan memproses nilai masukan menjadi nilai keluaran.
Algoritma dapat ditulis dalam bentuk pseudocode ataupun flowchart. Pseudocode berasal dari kata pseudo yang artinya mirip atau menyerupai dan code berarti kode sehingga pseudocode adalah kode yang menyerupai kode program sebenarnya. Sedangkan flowchart merupakan bentuk gambar atau diagram yang mempunyai aliran satu atau dua arah secara sekuensial.
Dalam mempelajari algoritma, diperlukan untuk dapat menganalis algoritma dalam menentukan performansinya. Suatu Algoritma tidak saja harus benar, tetapi juga harus efisien dengan menghitung nilai dari performansinya. Setiap algortima memiliki nilai performansi yang berbeda-beda [6].
2.4. Sifat-Sifat Algoritma
Donald E. Knuth menyatakan bahwa ada beberapa ciri-ciri algoritma, yaitu:
(13)
a. Algoritma mempunyai awal dan akhir. Suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas atau dengan kata lain suatu algoritma harus memiliki langkah yang terbatas.
b. Setiap langkah harus didefinisikan dengan tepat sehingga tidak memiliki arti ganda.
c. Memiliki masukan atau kondisi awal. d. Memiliki keluaran atau kondisi akhir.
e. Algoritma harus efektif; Jika diikuti dengan benar akan menyelesaikan permasalahan.
Berdasarkan cici-cirinya, algoritma dapat disimpulkan sifat utamanya yaitu:
a. Input : Suatu algoritma memiliki input atau kondisi awal sebelum algoritma dilaksanakan dan bisa berupa nilai-nilai peubah yang diambil dari himpunan khusus.
b. Output : Suatu algoritma akan menghasilkan output setelah dilaksanakan, atau
algoritma akan mengubah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diproses.
c. Definiteness : Langkah-langkah yang dituliskan dalam algoritma terdefinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma. d. Finiteness : Suatu algoritma harus memberi kondisi akhir atau output setelah
melakukan sejumlah langkah yang terbatas jumlahnya untuk setiap kondisi awal atau input yang diberikan.
e. Effectiveness : Setiap langkah dalam algoritma dapat dilaksanakan dalam selang waktu tertentu sehingga pada akhirnya member solusi sesuai yang diharapkan.
f. Generality : langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang akan diberikan, tidak hanya untuk himpunan tertentu.
Algoritma sebagai langkah-langkah pemecahan masalah dapat dituliskan dengan berbagai cara, seperti:
(14)
1) Uraian deskriptif
Penulisan algoritma dengan uraian deskriptif menggunakan bahasa yang biasa
Digunakan sehari-hari. 2) Pseudocode
Algoritma yang dituliskan dalam kode-kode yang disepakati dan mempunyai urutan-urutan tertentu. Kode-kode ini dapat dikembangkan sendiri asalkan arti dari setiap kode disepakati bersama.
3) Bagan alir (flowchart)
Flowchart (bagan alir dokumen) adalah penggambaran secara grafik dari langkah-langkah dan urutan-urutan prosedur dari suatu program.
2.5. Algoritma Fuzzy Logic
Algoritma fuzzy logic adalah algoritma yang mengandung unsur ketidakpastian, tidak seperti logika biasa yaitu logika tegas, kita hanya mengenal dua nilai, salah atau benar, atau 0 atau 1. Himpunan fuzzy adalah pengelompokan sesuatu bedasarkan parameter dan variable bahasa atau linguistik variable, yang dinyatakan dalam fungsi keanggotaan (Universe of discourse) U, fungsi keanggotaan dari suatu himpunan fuzzy tersebut bernilai antara 0.0 sampai dengan 1.0
Himpunan fuzzy didasarkan pada gagasan untuk memperluas jangkauan fungsi karateristik sedemikian rupa sehingga fungsi tersebut akan mencangkup bilangan real pada interval [0,1]. Nilai keanggotaannya menunjukan bahwa suatu item tidak hanya bernilai benar atau salah. Nilai 0 menujukan salah, nilai 1 menujukan benar dan masih ada nilai nilai yang terletak antara benar dan salah.
2.6 Kendali Fuzzy Logic
Sistem kendali logika fuzzy disebut juga sistem Inferensi Fuzzy (Fuzzy Inference System/FIS) atau fuzzy inference engine adalah sistem yang dapat melakukan penalaran dengan prinsip serupa seperti manusia melakukan penalaran dengan nalurinya. Terdapat beberapa jenis FIS yang dikenal yaitu
(15)
Mamdani, Sugeno dan Tsukamoto. FIS yang paling mudah dimengerti, karena paling sesuai dengan naluri manusia adalah FIS Mamdani.
Sistem kendali fuzzy logic terdiri dari beberapa tahapan seperti berikut :
Gambar 2.3 Proses Kendali Fuzzy Logic
Proses dalam kendali fuzzy logic ditunjukan pada gamabr di atas. Input yang diberikan adalah berupa bilangan tertentu dan output yang dihasilkan juga harus berupa bilangan tertentu.
Fuzzyffikasi adalah pemetaan nilai input yang merupakan nilai tegas ke dalam fungsi keanggotaan himpunan fuzzy, untuk kemudian diolah di dalam mesin penalaran
Fuzzyfikasi : x →µ(x) (6)
Aturan dasar dalam logika fuzzy adalah aturan implikasi dalam bentuk”jika... maka...” . Aturan dasar tersebut ditentukan dengan bantuan seorang pakar yang mengetahui karateristik objek yang akan dikendalikan.
Contoh bentuk implikasi yang digunakan adalah sebagai berikut. Jika X = A dan Y = B maka Z = C. (7)
Penalaran adalah menalarkan nilai masukan untuk menentukan nilai keluaran sebagai bentuk pengambil keputusan. Sistem terdiri dari beberapa aturan, maka kesimpulan diperoleh dari kumpulan dan korelasi antar aturan.
Ada 3 metode yang digunakan dalam melakukan inferensi sistem fuzzy, yaitu max, additive dan probabilistik OR. Secara umum dapat ditulis
(16)
Defuzzyfikasi merupakan kebalikan dari fuzzykasi, yaitu pemetaan dari himpunan fuzzy ke himpunan tegas. Input dari proses defuzzyfikasi adalah suatu himpunan fuzzy yang diperoleh dari komposisi aturan-aturan fuzzy. Hasil dari defuzzyfikasi ini merupakan output dari sistem kendali logika fuzzy.
Defuzzyfikasi di deskripsikan sebagai
� =
∑ � �
�
(9)dengan
αi = Nilai minimal dari derajat keanggotaan Zi = Nilai domain dari variabel linguistik z= Nilai defuzzyfikasi
2.7 Fungsi Keanggotaan
Basis data fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukan pemetaan titik-titik input data ke dalam nilai keanggotaannya atau derajat keanggotaan yang memiliki interval antara 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Ada beberapa fungsi yang digunakan. Fungsi keanggotaan suatu himpunan fuzzy dapat ditentukan dengan fungsi segitiga (triangle), trapesium (trapezoidal), sigmoid dan linier .
1. Fungsi Segitiga
Fungsi segitiga hanya terdapat satu nilai x yang memiliki derajat keanggotaan sama dengan 1, yaitu ketika x = b. Tetapi, nilai-milai disekitar b memiliki derajat keanggotaan yang turun menjauhi nilai 1.
Persamaan fungsi keanggotaan segitiga adalah :
(17)
Persamaan tersebut direpresentasikan dalam bentuk grafik sebagi berikut :
Gambar 2.4 Grafika fungsi keanggotaan segitiga
2. Fungsi Trapesium
Fungsi trapesium ini terdapat beberapa nilai x yang memiliki derajat kenaggotaan sama dengan 1, yaitu ketika b ≤ x ≤ c. Tetapi derajat keanggotaan untuk a < x < b dan c < x < d memiliki karateristik yang sama dengan fungsi segitiga.
Persamaan fungsi keanggotaan trapesium adalah :
(2)
Persamaan tersebut direpresentasikan dalam bentuk grafik sebagi berikut :
(18)
3. Fungsi Sigmoid
Fungsi sigmoid ini berbetuk kurva sigmoidal seperti huruf S. Setiap nilai x (keanggotaan crisp set) dipetakan ke dalam interval [0,1].
Persamaan fungsi keanggotaan sigmoid adalah :
(3)
Persamaan tersebut direpresentasikan dalam bentuk grafik sebagi berikut :
Gambar 2.6 Grafika fungsi keanggotaan sigmoid
4. Fungsi Linier
Pada fungsi linier, pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati konsep yang kurang jelas. Ada 2 bentuk untuk himpunan fuzzy linear, yaitu:
a. Linier Naik
Kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol [0] bergerak ke kanan menuju ke nilai domain yang memiliki derajat keanggotaan lebih tinggi.
(19)
Persamaan fungsi keanggotaan linear naik adalah :
(4)
Persamaan tersebut direpresentasikan dalam bentuk grafik sebagi berikut :
Gambar 2.7 Grafika fungsi keanggotaan Linier Naik a. Linier Turun
Garis lurus dimulai dari nilai domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat kenaggotaan lebih rendah.
Persamaan fungsi keanggotaan linear naik adalah :
(20)
Persamaan tersebut direpresentasikan dalam bentuk grafik sebagi berikut :
Gambar 2.8 Grafika fungsi keanggotaan Linier Turun 2.8UML
UML adalah kependekan dari Unified Modeling Language yang merupakan suatu cara untuk menyelesaikan suatu masalah dengan mendeskripsikannya yang telah menjadi standar dalam dunia industri untuk memvisualisasikan, merancang dan mendokumentasikan sistem perangkat lunak. Dengan menggunakan UML kita dapat membangun model untuk segala bentuk dan jenis aplikasi perangkat lunak, yang mana aplikasi yang dibangun dapat berjalan pada perangkat lunak dengan sistem operasi dan jaringan apapun. Selain itu, dengan menggunakan UML, programmer dapat mengerti, memahami dengan jelas maksud, tujuan dan arah rancangan sistem, sehingga sistem perngakat lunak yang dirancang dapat dibangun dengan bahasa program apapun. Namun karena UML merupakan suatu model pengembangan sistem perangkat lunak yang berbasis object oriented sehingga menggunakan bentuk class dan operation dalam konsep dasarnya, maka lebih cocok dalam pemrogramannya dengan menggunakan bahasa-bahasa pemrograman yang berbasis OOP (Object Oriented Programming) seperti C, C++, Java, VB dan lain sebagainya.
Secara lebih mendalam, UML lebih dari sekedar sebuah standard dan penemuan dari suatu notasi-notasi yang disatukan, tetapi juga berisi
(21)
konsep-konsep baru yang menarik yang tidak ditemukan secara umum dalam komunitas object oriented. Dalam membangun suatu model perangkat lunak dengan UML, digunakan bentuk-bentuk diagram atau symbol untuk merepresentasikan elemen-elemen dalam sistem. Bentuk diagram yang digunakan untuk merepresentasikannya adalah sebagai berikut:
1. Use-case Diagram 2. Class Diagram 3. Sequence diagram 4. Collaboration Diagram 5. Activity Diagram 6. Component Diagram 7. Deployment Diagram
2.8.1 Use Case Diagram
Use-case diagram merupakan suatu bentuk diagram yang menggambarkan fungsi-fungsi yang diharapkan dari sebuah sistem yang dirancang. Dalam Use-case diagram penekanannya adalah “apa” yang diperbuat oleh sistem, dan bukan “bagaimana”. Sebuah use-case akan merepresentasikan sebuah interaksi antara pelaku atau actor dengan sistem.
Use-case diagram yang digunakan dalam mercancang suatu sistem dapat sangat membantu pada saat menyusun requirement sebuah sistem, mengomunikasikannya dengan klien, dan merancang pengujian untuk semua fitur yang terdapat dalam sistem. Dalam suatu sistem aplikasi database, use-case diagram sangat membantu requierement apa saja yang diperlukan.
(22)
Gambar 2.9 Contoh Use-case Diagram [5] 2.8.2 Class Diagram
Sebuah Class Diagram menunjukkan struktur yang statis dari beberapa class dalam suatu sistem. Class-class merepresentasikan suatu keadaan (atribut/properti) dan yang akan dikerjakan oleh sistem (metoda/fungsi). Class memiliki tiga area pokok:
1. Nama (dan stereotype) 2. Atribut
3. Metoda
Atribut dan metoda dalam class diagram dapat memiliki salah satu sifat seperti berikut di bawah ini:
1. Private, hanya dapat diakses oleh class itu sendiri.
2. Protected, hanya dapat diakses oleh class itu sendiri dan turunan dari class tersebut.
3. Public, dapat diakses oleh class selain dari class yang bersangkutan.
Class dapat direpresentasikan dalam sebuah interface atau sebaliknya merupakan implementasi dari sebuah interface yang berupa class abstrak yang hanya tidak memiliki attribute dan hanya memiliki metoda. Berikut merupakan bentuk class diagram secara umum:
(23)
Gambar 2.10 Contoh Class Diagram [5] 2.8.3 Sequance Diagram
Sequence Diagram merupakan diagram yang mengambarkan kolaborasi yang dinamis antara obyek satu dengan yang lain. Kolaborasi ini ditunjukkan dengan adanya interaksi antar obyek di dalam dan di sekitar sistem yang berupa pesan atau instruksi yang berurutan.
Sequence diagram umumnya digunakan untuk menggambarkan suatu skenario atau urutan langkah-langkah yang dilakukan baik oleh actor maupun sistem yang merupakan respon dari sebuah kejadian untuk mendapatkan hasil atau output.
Gambar 2.11 Contoh Sequance Diagram [5] 2.8.4 Collaboration Diagram
Sebuah collaboration diagram menunjukkan kolaborasi yang dinamis yang mirip dengan sequence diagram. Collaboration diagram digambarkan
(24)
sebagai sebuah object diagram dimana sejumlah obyek ditunjukkan disekitarnya dengan hubungan- hubungannya.
Gambar 2.12 Contoh Collaboration Diagram [5] 2.8.5 Activity Diagram
Sebuah Activity Diagram menunjukkan suatu alur kegiatan secara berurutan. Activity Diagram digunakan untuk mendiskripsikan kegiatan-kegiatan dalam sebuah operasi meskipun juga dapat digunakan untuk mendeskripsikan alur kegiatan yang lainnya seperti use case atau suatu interaksi.
Gambar 2.13 Contoh Activity Diagram [5] 2.8.6 Component Diagram
Component Diagram menunjukkan struktur dan hubungan antar komponen software termasuk ketergantungan (dependency) diantara komponen-komponen tersebut. Komponen pada piranti lunak adalah berupa modul-modul
(25)
yang berisikan code, baik library maupun executable. Umumnya komponen yang terbentuk dari beberapa class dan/atau package, atau juga dapat dari komponen-komponen yang lebih kecil.
Gambar 2.14 Component Diagram [5] 2.8.7 Deployment Diagram
Deployment Diagram menunjukkan arsitektur fisik pada hardware dan software pada suatu sistem yang dirancang. Deployment diagram juga dapat menunjukkan perngkat-perangkat dan nodes diantara hubungan yang dimilikinya antar komponen.
(26)
27
Analisis sistem merupakan proses penguraian konsep ke dalam bagian-bagian yang lebih sederhana. Pada analisis sistem akan mencakup berbagai macam analisis yang berhubungan dengan aplikasi yang akan di bangun seperti analisis masalah, analisis kecerdasan buatan yang digunakan, analisis kebutuhan fungsional dan non-fungsional
3.1.1. Analisis Masalah
Analisis masalah dalam penelitian ini adalah bagaimana menerapkan algoritma fuzzy logic sebagai penentuan tata letak furniture pada aplikasi tata letak denah ruangan. Analisis masalah sangat penting dalam suatu penelitian, karena pada tahapan ini merupakan salah satu proses mengidentifikasi masalah-masalah yang berkaitan dengan bagaimana suatu sistem akan melakukan proses peninjauan terhadap ruangan yang tersedia dan furniture berdasarkan algoritma fuzzy logic.
Adapun batasan yang terdapat dalam simulasi denah ini yaitu denah hanya berbentuk persegi empat yang dimiliki banyak ruangan, denahtersebut adalah ruangan kamar tidur yang berisi beberapa furniture seperti kasur, kursi, meja dan lemari baju yang menjadi standar penempatan disebuah ruang kamar tidur.
3.1.2. Analisis Simulasi
Dari aplikasi simulasi denah ini yaitu pengguna bertugas merencanakan dahulu tata letak furniture yang telah tersedia pada sebuah ruangan, pengguna drag and drop furniture pada area denah yang telah tersedia, pengguna dapat memindahkan serta memutar furniture sesuai keinginan. Atau pengguna dapat menggunakan fitur ‘auto’ untuk mengaktifkan algoritma fuzzy logic yang ada.
(27)
Gambar 3.1 Aplikasi simulasi denah ruangan 1. Area Droppable
Area Droppable area untuk menyimpan furniture yang diinginkan pengguna untuk di atur dan melihat hasil akhir.
2. Log
Area untuk melihat detail input dan outputan furniture pada algoritma fuzzy yang telah diterapkan di aplikasi
3. Furniture
Area untuk memilih furniture yang ingin digunakan pada area droppable 4. Ukuran
Inputan ukuran untuk setiap furniture yang ingin di pilih
Ada beberapa aturan menurut ahli yang diterapkan di simulasi denah ruangan ini yaitu pada area Droppable adalah sebagai berikut :
1. Furniture tidak boleh menempel pada tembok atau batas area yang terdapat jendela, furniture diberi jarak agar tidak menempel pada jendela yang bertujuan untuk memberikan ruang untuk udara dari luar
2. Furniture tidak boleh menumpuk satu sama lain, furniture tidak diperbolehkan menumpuk karena pada pada kenyataanya furniture tidak mungkin untuk di tumpuk keatas
(28)
3. Furniture diberi jarak satu sama lain, furniture diberi jarak agar karena ada ruang untuk penghuni tersebut untuk berpindah-pindah atau melangkah dan bergerak
3.1.3. Analisis Alur Simulasi
Aplikasi simulasi denah adalah aplikasi simulasi yang menggunakan grafik 2 dimensi. Tujuan aplikasi simulasi ini adalah menempatkan furniture yang diinginkan pada sebuah ruangan. Pengguna merancang terlebih dahulu tata letak sebelum mengimplementasikannya pada keadaan yang nyata.
Aplikasi simulasi denah ini mengimplementasikan algoritma fuzzy logic untuk memberikan keputusan atau rekomendasi tata letak furniture pada denah ruangan. Berikut pembagian area denah yang dibagi menjadi empat bagian, atas, kanan, bawah, kiri. :
Gambar 3.2 Area denah pada aplikasi 3.2. Analisis Masukan
Analis masukan yang dilakukan dalam penelitian ini adalah menganalisis variable dalam algoritma fuzzy logic pada aplikasi simulasi denah, variable tersebut antara lain Jumlah Furniture, Relasi Furniture dan Ukuran Furniture.
(29)
1. Jumlah Furniture
Variable ini terdapat pada perhitungan internal berapa banyak furniture sejenis yang berada dalam area ruangan, variable jumlah berawal dari nilai 1, dan akan bertambah setiap kali furniture yang sejenis ditambahkan dalam ruangan.
Dengan range nilai variable jumlah diantara 1 - 10 dengan penjelasan sebagai berikut:
a. Sedikit: memiliki nilai 1 - 3 b. Sedang: memiliki nilai 2 - 4 c. banyak: memiliki nilai 4 – 10 2. Relasi Furniture
Variable ini terdapat pada perhitungan berapa banyak furniture sejenis yang berada dalam area ruangan yang merupakan relasi dari furniture tersebut, relasi disini adalah kebiasaan suatu furniture berada didekat furniture lain, misalnya meja dengan kursi, variable relasi berawal dari nilai 0, dan akan bertambah setiap kali furniture yang sejenis ditambahkan dalam ruangan.
Dengan range nilai variable Relasi diantara 0 - 10 dengan penjelasan sebagai berikut:
a. Sedikit: memiliki nilai 0 - 3 b. Sedang: memiliki nilai 1 - 4 c. banyak: memiliki nilai 3 – 10 3. Ukuran Furniture
Variable ini terdapat pada perhitungan internal berapa ukuran furniture ada dalam area ruangan.
Dengan range nilai variable ukuran diantara 50 - 400 dengan penjelasan sebagai berikut:
a. Kecil : memiliki nilai 50 - 200 b. Sedang : memiliki nilai 150 -300 c. Besar : memiliki nilai 250 - 400
(30)
3.3. Analisis Algoritma Logika Fuzzy
Analisis algoritma yang dilakukan dalam penelitian ini adalah menganalisis bagaimana cara kerja algoritma logika fuzzy pada penataan furniture dalam aplikasi simulasi denah ini. Algoritma logika fuzzy ini memiliki 3 variabel yaitu Jumlah Furniture, Relasi Furniture dan Ukuran Furniture. Algoritma logika fuzzy ini menerapkan 4 proses tahapan yaitu fuzzyfikasi, pembuatan aturan dasar, penalaran dan defuzzifikasi. Berikut adalah ilustrasi logika fuzzy yang diperoleh dari 3 variable masukan yang telah ditentukan pada tabel input dan output algoritma logika fuzzy berikut.
Tabel 3.1 Input dan Output Algoritma Logika Fuzzy
NO Jumlah Furniture Relasi Furniture Ukuran Furniture Hasil
1 Banyak Banyak Besar Atas
2 Banyak Sedang Sedang Bawah
3 Banyak Sedikit Kecil Atas
4 Sedang Banyak Besar Kiri
5 Sedang Sedang Sedang Kanan
6 Sedang Sedikit Kecil Bawah
7 Sedikit Sedang Sedang Kiri
8 Sedikit Sedikit Kecil Bawah
9 Sedikit Banyak Besar Kanan
Pada tabel input dan output digunakan untuk menentukan keputusan yang dilakukan oleh algoritma logika fuzzy. Berikut penjelasan dari masing – masing input dan output tersebut adalah:
Rule Logika Fuzzy pada aplikasi simulasi denah ini adalah :
1. IF Jumlah IS Banyak AND Relasi IS Banyak AND Ukuran IS Besar THEN Lokasi IS Atas
2. IF Jumlah IS Banyak AND Relasi IS Sedang AND Ukuran IS Sedang THEN Lokasi IS Bawah
(31)
3. IF Jumlah IS Banyak AND Relasi IS Sedikit AND Ukuran IS Kecil THEN Lokasi IS Atas
4. IF Jumlah IS Sedang AND Relasi IS Banyak AND Ukuran IS Besar THEN Lokasi IS Kiri
5. IF Jumlah IS Sedang AND Relasi IS Sedang AND Ukuran IS Sedang THEN Lokasi IS Kanan
6. IF Jumlah IS Sedang AND Relasi IS Sedikit AND Ukuran IS Kecil THEN Lokasi IS Bawah
7. IF Jumlah IS Sedikit AND Relasi IS Sedang AND Ukuran IS Sedang THEN Lokasi IS Kiri
8. IF Jumlah IS Sedikit AND Relasi IS Sedikit AND Ukuran IS Kecil THEN Lokasi IS Bawah
9. IF Jumlah IS Sedikit AND Relasi IS Banyak AND Ukuran IS Besar THEN Lokasi IS Kanan
3.3.1. Tahap Fuzzyfikasi
1. Variabel Jumlah Furniture
Variabel jumlah furniture yang ada terdiri dari 3 himpunan fuzzy yaitu Sedikit dengan range ( 1 – 3 ), Sedang dengan range ( 2 – 4 ), Banyak dengan range ( 4 – 10 ).
Penjelasan jumlah furniture yang ada adalah dari banyaknya furniture yang ada pada denah ruangan yang ada.
Contoh kasus
Misal didapatkan jumlah furniture yang ada pada ruangan adalah 4 buah furniture, maka nilai 4 akan di konversi kedalam nilai fuzzy, dimana nilai 4 berada pada nilai linguistik sedang dan banyak kemudian dihitung menggunakan rumus fungsi Linear Naik.
Fungsi Keanggotaan :
μS��ikit[x] = {
;
�−
− ; <
;
(32)
μS��ang[x] = {
;
�−
− ; <
;
(3.2)
μBanyak[x] = {
;
�−
− ; <
;
(3.3)
derajat keanggotaan dari jumah furniture 4 adalah :
�� � � [ ] = ;
�� ���[ ] = −− ; 1 < = =
���� � [ ] = −
− ; 4 <
= = ,
Gambar 3.3 Grafik Kasus Fungsi Keanggotaan Variabel Jumlah Furniture
2. Variabel Relasi Furniture
Variabel Relasi Furniture yang ada terdiri dari 3 himpunan fuzzy yaitu Sedikit dengan range ( 0 - 3 ), Sedang dengan range ( 1 – 4 ), Banyak dengan range ( 3 – 10 ).
(33)
Penjelasan Relasi Furniture yang ada adalah dari banyaknya furniture yang kebiasaan suatu furniture berada didekat furniture lain
Contoh kasus
Misal didapatkan Relasi Furniture yang ada pada ruangan adalah 3 buah furniture, maka nilai 3 akan di konversi kedalam nilai fuzzy, dimana nilai 3 berada pada nilai linguistik sedikit, sedang dan banyak kemudian dihitung menggunakan rumus fungsi Linear Naik.
Fungsi Keanggotaan :
μS��ikit[x] = {
;
�−
− ; <
;
(3.4)
μS��ang[x] = {
;
�−
− ; <
;
(3.5)
μBanyak[x] = {
;
�−
− ; <
;
(3.6)
derajat keanggotaan dari jumah furniture 3 adalah :
�� � � [ ] = ;
�� ���[ ] = −− ; 1 < = = ,
���� � [ ] = −
− ; 3 <
(34)
Gambar 3.4 Grafik Kasus Fungsi Keanggotaan Variabel Relasi Furniture
3. Variabel Ukuran Furniture
Variabel Relasi Furniture yang ada terdiri dari 3 himpunan fuzzy yaitu Kecil dengan range ( 50 - 200 ), Sedang dengan range ( 150 – 300 ), Besar dengan range ( 250 - 400 ).
Penjelasan Ukuran Furniture yang ada adalah dari besarnya furniture yang ada pada suatu ruangan tertentu.
Contoh kasus
Misal didapatkan Ukuran Furniture yang ada pada ruangan adalah 250, maka nilai 150 akan di konversi kedalam nilai fuzzy, dimana nilai 250 berada pada nilai linguistik sedang dan besar kemudian dihitung menggunakan rumus fungsi Linear Naik.
Fungsi Keanggotaan :
μK�cil[x] = {
;
�−
− ; <
;
(3.4)
μS��ang[x] = {
;
�−
− ; <
;
(35)
μB�sar[x] = {
;
�−
− ; <
;
(3.6)
derajat keanggotaan dari jumah furniture 150 adalah :
�� � [ ] = ; �� ���[ ] = ;
�� � [ ] = ;
Gambar 3.5 Grafik Kasus Fungsi Keanggotaan Variabel Ukuran Furniture
3.3.2. Tahap Pembentukan Rule Base
Dalam hal ini, aturan dasar atau rule base dibentuk sesuai dengan yang memenuhi kondisi soal.
Tabel 3.2 Tahap Pembentukan Rule Base
NO IF Jumlah Furniture AND Relasi Furniture AND Ukuran Furniture THEN Hasil
1 IF Sedikit AND Sedang AND Sedang THEN Kiri
2 IF Sedang AND Sedikit AND Kecil THEN Bawah
(36)
3.3.3. Tahap Mesin Inferensi
[R1] IF JumlahFurniture Sedikit and RelasiFurniture Sedang and UkuranFurniture Sedang Then Hasil Kiri
α- pred1 = µSedikit n Sedang n Sedang
= MIN (µSedikit[4]; µSedang[3] µSedang[250]) = MIN ( 1 ; 0,667 ; 1)
= 0,667
[R2] IF JumlahFurniture Sedang and RelasiFurniture Sedikit and UkuranFurniture Kecil Then Hasil Bawah
α- pred1 = µSedang n Sedikit n Kecil
= MIN (µSedang[4]; µSedikit[3] µKecil[250]) = MIN ( 1 ; 1 ; 1)
= 1
[R3] IF JumlahFurniture Banyak and RelasiFurniture Sedang and UkuranFurniture Sedang Then Hasil Bawah
α- pred1 = µBanyak n Sedang n Sedang
= MIN (µSedikit[4]; µSedang[3] µSedang[250]) = MIN ( 0,1667 ; 0,667 ; 1)
= 0,1667
3.3.4. Tahap Defuzzyfikasi
� =
∑ � �
�
(3.7)αi = Nilai minimal dari derajat keanggotaan Zi = Nilai domain dari variabel linguistik z= Nilai defuzzyfikasi
Nilai Deffuzyfikasi
(37)
= , + ,, +
= 127,271 Kesimpulan
Nilai yang di dapat dari proses defuzzyfikasi tersebut selanjutnya digunakan untuk penentuan keputusan dengan aturan sebagai berikut :
Tabel 3.3 Aturan nilai keputusan
No Hasil Nilai
1 Bawah 0 – 190
2 Atas 191-299
3 Kanan 300-309
4 Kiri 310-319
Maka hasil nilai dari hasil 127,271 adalah di bawah 3.4. Analisis Kebutuhan Non Fungsional
Analisis non-fungsional merupakan analisis yang dibutuhka untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan sistem yang akan berjalan sampai dengan algoritma tersebut diimplementasikan. Analisis kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran sehingga menghasilkan suatu keluaran yang diinginkan. Pada analisis kebutuhan sistem non fungsional ini dijelaskan analisis kebutuhan perangkat lunak, analisis kebutuhan perangkat keras dan analisis pengguna.
3.4.1. Analisis Kebutuhan Perangkat Lunak
Perangkat lunak yang dibutuhkan untuk implementasi algoritma pada aplikasi simulasi denah ini adalah :
1. Sistem Operasi Microsoft Windows 7 2. Adobe Flash CS5
(38)
3.4.2. Analisis Kebutuhan Perangkat Keras
Komputer terdiri dari perangkat keras dan perangkat lunak yang saling berinteraksi. Perangkat lunak memberikan instruksi-instruksi kepada perangkat keras untuk melakukan tugas tertentu, sehingga dapat menjalankan suatu sistem di dalamnya.
Perangkat keras minimum bagi pengguna untuk dapat menggunakan aplikasi simulasi denah ini dengan baik adalah sebagai berikut :
1. Processor Pentium V 1,5 Ghz 2. RAM 1GB
3. Keyboard standard 4. Mouse standard 5. Memori 1GB
3.5. Analisis Kebutuhan Fungsional
Kebutuhan fungsional meliputi beberapa diagram UML, diantaranya: diagram use case, diagram activity, diagram class dan diagram sequence. Diagram tersebut dipergunakan sebagai desain rancangan untuk mempermudah proses pengembangan aplikasi khususnya untuk aplikasi yang dikembangkan menggunakan pemrograman berorientasi objek.
3.5.1. Diagram Use case
Use Case atau diagram use case merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan di buat [8]. Berikut ini adalah perancangan proses-proses yang terddapat pada aplikasi simulasi denah, yang digambarkan dengan Use Case Diagram seperti berikut :
(39)
Gambar 3.6 Use Case Diagram 3.5.1.1.Definisi Actor
Definisi Actor berfungsi untuk menjelaskan Actor yang terdapat pada Use Case Diagram. Definisi Actor diterangkan pada table berikut
Table 3.4 Definisi Actor
No Actor Deskripsi
1 Pengguna Orang yang menggunakan aplikasi
3.5.1.2.Definisi Use Case
Definisi Use Case berfungsi untuk mejelaskan fungsi Use Case yang terdapat pada Use Case Diagram. Definisi Use Case diterangkan pada table berikut
Table 3.5 Definisi Use Case
No Use Case Deskripsi
1 Memulai Aplikasi Proses untuk memulai aplikasi simulasi 2 Merancang Tata Letak Proses pengguna untuk merancang furniture
3 Output Proses menampilkan hasil perancangan
menurut algoritma
3.5.2. Skenario Use Case
Skenario setiap bagian pada use case menunjukkan proses apa yang terjadi pada setiap bagian didalam use case tersebut, dimana pengguna memberikan perintah pada setiap bagian dan respon apa yang diberikan oleh sistem kepada
(40)
pengguna setelah pengguna memberikan perintah pada setiap bagian - bagian use case.
Tabel 3.6 Skenario Use Case Memulai Aplikasi Identifikasi
No 1
Nama Memulai aplikasi
Tujuan Untuk memulai aplikasi
Deskripsi Proses untuk memulai aplikasi
Aktor pengguna
Skenario Utama
Kondisi awal Aktor berada di dalam permainan
Aksi Aktor Reaksi Sistem
1. Memulai permainan
2. Menampilkan layar utama 3. Memilih menu utama
4. Menampilkan layar permainan Kondisi akhir Aplikasi simulasi di mulai
Tabel 3.7 Skenario Use Case Merancang Tata Letak Identifikasi
No 2
Nama Merancang Tata Letak
Tujuan Untuk Merancang Tata Letak pada Aplikasi
Deskripsi Proses untuk merancang tata letak furniture pada denah
Aktor pengguna
Skenario Utama
(41)
Aksi Aktor Reaksi Sistem 1. Klik furniture dalam
aplikasi
2. Drag and Drop furniture pada denah yang tersedia di aplikasi
3. Menampilkan denah yang telah di rancang Kondisi akhir Denah terancang sesuai keinginan pengguna
Tabel 3.8 Skenario Use Case Penggunaan Algoritma Identifikasi
No 3
Nama Penggunaan Algoritma
Tujuan Pengimplementasian Algoritma
Deskripsi Proses untuk mengimplementasikan algoritma
fuzzy yang telah di terapkan
Aktor pengguna
Skenario Utama
Kondisi awal Aktor berada di dalam permainan
Aksi Aktor Reaksi Sistem
1. Klik furniture dalam aplikasi
2. Drag and Drop furniture pada ruangan yang tersedia di aplikasi
3. Klik tombol fuzzy dalam aplikasi
4. Sistem memproses algoritma fuzzy pada aplikasi
5. Sistem menghitung jumlah furniture 6. Sistem menghitung relasi furniture 7. Sistem menghitung ukuran furniture
(42)
8. Melihat hasil dari algoritma
9. Sistem menampilkan hasil algoritma fuzzy logic pada area droppable
Kondisi akhir Denah terancang sesuai keinginan pengguna
Tabel 3.9 Skenario Use Case Memilih Petunjuk Identifikasi
No 3
Nama Memilih Petunjuk
Tujuan Untuk melihat petunjuk aplikasi
Deskripsi Proses untuk melihat petunjuk aplikasi
Aktor Pengguna
Skenario Utama
Kondisi awal Aktor berada di menu utama
Aksi Aktor Reaksi Sistem
1. Memilih menu petunjuk
2. Menampilkan petunjuk penggunaan 3. Menutup tampilan
petunjuk
4. Menampilkan menu utama
5. Menampilkan menu perancangan tata letak Kondisi akhir Pengguna berada di menu petunjuk
3.6. Activity Diagram
Activity diagram digunakan untuk menggambarkan alur rangkaian proses yang terjadi di dalam sistem aplikasi serta menjelaskan bagaimana sebuah use case terjadi atau dipicu dari use case yang lain
1. Activity Diagram Memulai Aplikasi
Berikut adalah proses untuk memulai aplikasi simulasi denah yang digambarkan dengan diagram aktivitas.
(43)
Gambar 3.7 Activity Diagram Proses Memulai Aplikasi
2. Activity Diagram Merancang Tata Letak
Berikut adalah proses untuk merancang tata letak pada aplikasi simulasi denah yang digambarkan dengan diagram aktivitas.
(44)
Gambar 3.8 Activity Diagram Proses Merancang Tata Letak
3. Activity Diagram Penggunaan algoritma
Berikut adalah proses untuk menggunakan algoritma pada aplikasi simulasi denah yang digambarkan dengan diagram aktivitas.
(45)
Gambar 3.9 Activity Diagram Proses Merancang Tata Letak
4. Activity Diagram Menu Petunjuk
Berikut adalah proses untuk menampilkan layar petunjuk penggunaan aplikasi yang digambarkan dengan diagram aktivitas.
(46)
Gambar 3.10 Activity Diagram Proses Menampilkan Layar Petunjuk Penggunaan 3.7. Sequence Diagram
Diagram sequence menggambarkan urutan aktifitas yang terjadi di dalam sistem. Diagram ini menunjukkan pengiriman pesan-pesan yang melewati objek yang terlibat di dalam sistem serta tahapan langkah yang harus dilalui untuk mencapai use case tertentu:
3.7.1. Diagram Sequence Memulai Aplikasi
(47)
3.7.2. Diagram Sequence Merancang Tata Letak
Gambar 3.12 Diagram Sequence Merancang Tata Letak
3.7.3. Diagram Sequence Penggunaan Algoritma
(48)
3.7.4. Diagram Sequence Menu Petunjuk
Gambar 3.14 Diagram Sequence Menu Petunjuk 3.8. Class Diagram
Diagram kelas atau atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang dibuat untuk membangun sistem [7].
Berikut ini adalah perancangan struktur sistem yang terdapat pada aplikasi pengaturan tata letak furniture dalam denah , yang digambarkan dengan class diagram yang dapat dilihat pada gambar berikut:
(49)
3.9. Perancangan Sistem
Perancangan adalah suatu bagian dari metodologi pengembangan suatu perangkat lunak yang dilakukan setelah tahapan untuk memberikan gambaran secara terperinci. Dalam tahap ini digambarkan rancangan sistem yang akan dibangun sebelum dilakukan pengkodean ke dalam suatu bahasa pemrograman.
3.9.1. Rancangan Antarmuka
Perancangan antarmuka yang telah dibuat meliputi beberapa perancangan, diantaranya perancangan antarmuka menu utama. Tampilan Menu Utama digunakan untuk merancang tata letak furniture yang ingin diolah dan hasil perancangan
1. Tampilan Layar Utama
(50)
2. Tampilan Layar perancangan tata letak
Gambar 3.17 Tampilan antarmuka merancang tata letak
3. Tampilan Layar petunjuk
(51)
3.9.2. Rancangan Jaringan Semantik
Jaringan semantik menggambarkan hubungan navigasi menu dari satu halaman ke halaman lainnya (dari form satu ke form lainnya). Berikut adalah gambaran jaringan semantik yang ada pada aplikasi simulasi yang akan dibangun.
Gambar 3.19 Jaringan Semantik
3.9.3. Rancangan Prosedural
Perancangan prosedural digunakan untuk menggambarkan langkah-langkah atau alur dari setiap proses yang ada pada sistem. Berikut adalah rancangan prosedural dari aplikasi yang akan dibangun.
(52)
3.9.3.1Flowchart merancang tata letak furniture oleh pengguna
Gambar 3.20 Flowchart merancang tata letak furniture oleh pengguna
mulai
Memilih furniture
Furniture yang di inginkan ? Drag furniture
pada area ruangan
Drop Furniture pada area
ruangan
Furniture di area ruangan
Merancang Tata Letak Furniture
Tampilan akhir rancangan
END tidak
(53)
3.9.3.2Flowchart merancang tata letak furniture oleh algoritma
mulai
Memilih furniture
Furniture yang di inginkan ? Drag furniture
pada area ruangan
Drop Furniture pada area
ruangan
Furniture di area ruangan
Klik Tombol Fuzzy
END
Rancangan yang diinginkan
? Tampilan
akhir rancangan
tidak
YA
(54)
3.9.3.3Flowchart halaman petunjuk
Gambar 3.22 Flowchart Halaman petunjuk
mulai
Memilih menu petunjuk
Melanjutkan melihat petunjuk
?
Menampilkan halaman layar
petunjuk
END
Tidak(55)
(56)
79 BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan hasil pengujian dan analisis yang dilakuan terhadap sistem yang telah dibuat dapat diambil kesimpulan bahwa :
1. Performansi algoritma fuzzy logic yang telah diterapkan memiliki keakuratan sebesar 50,741% untuk menentukan tata letak furniture. 2. Algoritma Fuzzy Logic telah bisa memberikan rekomendasikan tata letak
furniture. 5.2 Saran
Beberapa saran untuk pengembangan selanjutnya, diantaranya :
1. Penggunaan algoritma yang lebih tepat untuk menentukan tata letak furniture pada aplikasi simulasi denah agar keakuratan lebih baik dari sebelumnya.
2. Sistem perlu dikembangkan agar bisa lebih meningkatkan performansi aplikasi.
(57)
Status : Belum Kawin
Agama : Islam
Kewarganegaraan : Indonesia
Alamat : Kp. Sadang RT/RW 02/09
Kecamatan Margahayu Kabupaten Bandung
Handphone : 08986034596
E-mail : [email protected]
RIWAYAT PENDIDIKAN
Formal
1998-2004 : SDN Nata Endah 1 2004-2007 : SMPN 38 Bandung
2007-2010 : SMK Angkasa 1 Margahayu
2010-2014 : Universitas Komputer Indonesia, Fakultas Teknik dan Ilmu Komputer, Jurusan S1 Teknik Informatika
(58)
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
HARYANTO
10110618
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2015
(59)
iv
DAFTAR ISI ...iv
DAFTAR GAMBAR ... vii
DAFTAR TABEL ...ix
DAFTAR SIMBOL... x
DAFTAR LAMPIRAN ...xi
BAB 1 PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.2. Rumusan Masalah ... 2
1.3. Maksud dan Tujuan ... 2
1.4. Batasan Masalah ... 3
1.5. Metode Penelitian ... 3
1.5.1. Metode Pengumpulan Data ... 3
1.5.2. Metode Pembangunan Perangkat Lunak ... 4
1.6. Sistematika Penulisan ... 5
BAB 2 LANDASAN TEORI ... 7
2.1 Ruangan ... 7
2.1.1 Desain Interior ... 9
2.1.2 Furniture ...11
2.2 Kecerdasan Buatan (Artificial Intelligence) ... 12
2.2.1 Beda Kecerdasan Buatan & Kecerdasan Alami ... 12
2.3 Kecerdasan Buatan (Artificial Intelligence) ... 13
2.4. Sifat-Sifat Algoritma ... 13
2.5. Algoritma Fuzzy Logic ... 15
2.6 Kendali Fuzzy Logic ... 13
(60)
v
2.8.4 Collaboration Diagram ... 24
2.8.5 Activity Diagram ... 25
2.8.6 Component Diagram ... 25
2.8.7 Deployment Diagram ... 26
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 27
3.1. Analisis Sistem ... 27
3.1.1. Analisis Masalah ... 27
3.1.2. Analisis Simulasi ... 27
3.1.3. Analisis Alur Simulasi ... 29
3.2. Analisis Masukan ... 29
3.3. Analisis Algoritma Logika Fuzzy ... 31
3.3.1. Tahap Fuzzyfikasi ... 32
3.3.2. Tahap Pembentukan Rule Base ... 36
3.3.3. Tahap Mesin Inferensi ... 37
3.3.4. Tahap Defuzzyfikasi ... 37
3.4. Analisis Kebutuhan Non Fungsional ... 38
3.4.1. Analisis Kebutuhan Perangkat Lunak ... 38
3.4.2. Analisis Kebutuhan Perangkat Keras ... 39
3.5. Analisis Kebutuhan Fungsional ... 39
3.5.1. Diagram Use case ... 39
3.5.1.1. Definisi Actor ... 40
3.5.1.2. Definisi Use Case ... 40
3.5.2. Skenario Use Case ... 40
3.6. Activity Diagram ... 43
(61)
vi
3.8. Class Diagram ... 49
3.9. Perancangan Sistem ... 50
3.9.1. Rancangan Antarmuka ... 50
3.9.2. Rancangan Jaringan Semantik ... 52
3.9.3. Rancangan Prosedural ... 52
3.9.3.1 Flowchart merancang tata letak furniture oleh pengguna ... 53
3.9.3.2 Flowchart merancang tata letak furniture oleh algoritma ... 54
3.9.3.3 Flowchart halaman petunjuk ... 55
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 57
4.1. Implementasi Sistem ... 57
4.2. Perangkat Pendukung yang digunakan ... 57
4.2.1 Perangkat Keras (Hardware) ... 57
4.2.2 Perangkat Lunak (software) ... 58
4.3. Implementasi Aplikasi ... 58
4.3.1 Implementasi Antar Muka ... 58
4.4. Pengujian Sistem ... 61
4.4.1. Rencana Pengujian ... 61
4.4.2. Kasus dan Hasil Pengujian ... 62
4.4.3. Kasus dan Pengujian Performansi Algoritma ... 64
4.5 Kesimpulan ... 77
BAB 5 ... 79
5.1 Kesimpulan ... 79
5.2 Saran ... 79
(62)
80
DAFTAR PUSTAKA
[1] “kl2008.widyatama.ac.id,” 2008. [Online]. Available:
http://k12008.widyagama.ac.id/ai/diktatpdf/Logika_Fuzzy. [Diakses 24 agustus 2014].
[2] M. Indraswara, Kajian Penempatan Furniture dan Pemakaian Warna, Diponegoro, 2007.
[3] J. Panero dan M. Zelnik, Dimensi Manusia & Ruang Interior, Jakarta: Erlangga, 2003.
[4] F. D. Ching, Ilustrasi Desain Interior, Jakarta: Erlangga, 1996.
[5] W. Prayitno, Desain Model Sistem Perangkat Lunak Dengan UML, Bandung, 2004.
[6] Sommerville, Software Engineering (Rekayasa Perangkat Lunak), Jakarta: Erlangga, 2003.
(63)
iii
ALGORITMA FUZZY LOGIC UNTUK MENENTUKAN TATA LETAK
FURNITURE PADA APLIKASI SIMULASI RUANGAN.
Penulis menyadari bahwa dalam proses penulisan tugas akhir ini banyak mengalami kendala, namun berkat bantuan, bimbingan, kerjasama dari berbagai pihak dan berkah dari Allah SWT sehingga kendala-kendala yang dihadapi tersebut dapat diatasi Untuk itu, penulis ingin menyampaikan terimakasih yang sebesar-besarnya kepada :
1. Mamah Yayu, adiku , nene serta keluarga besar yang telah memberikan dukungan baik secara moril maupun materil dan doa yang tiada hentinya sehingga penulis bisa bertahan dan berpijak hingga saat ini.
2. Bapak Galih Hermawan, S.Kom., M.T. selaku pembimbing yang telah membimbing penulis dalam menyelesaikan tugas akhir.
3. Bapak Irfan Maliki, S.T., M.T. selaku reviewer yang telah banyak memberikan masukan dan arahan.
4. Ibu Kania Evita Dewi, S.Pd., M.Si. selaku dosen wali IF-14 2010
5. Untuk teman-teman IF-14 2010 seperjuangan yang telah membantu menyelesaikan tugas akhir ini.
6. Untuk sahabat BNE saya yang telah memberi dukungan dan semangat.
7. Semua pihak yang tidak dapat penulis sebut satu persatu yang telah membantu dalam penyelesaian penulisan skripsi ini.
Akhir kata, semoga skripsi ini dapat bermanfaat bagi para pembaca.
Bandung, Januari 2015
(64)
(65)
(66)
(1)
vi
3.7.1. Diagram Sequence Memulai Aplikasi ... 47
3.7.2. Diagram Sequence Merancang Tata Letak ... 48
3.7.3. Diagram Sequence Penggunaan Algoritma ... 48
3.7.4. Diagram Sequence Menu Petunjuk ... 49
3.8. Class Diagram ... 49
3.9. Perancangan Sistem ... 50
3.9.1. Rancangan Antarmuka ... 50
3.9.2. Rancangan Jaringan Semantik ... 52
3.9.3. Rancangan Prosedural ... 52
3.9.3.1 Flowchart merancang tata letak furniture oleh pengguna ... 53
3.9.3.2 Flowchart merancang tata letak furniture oleh algoritma ... 54
3.9.3.3 Flowchart halaman petunjuk ... 55
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 57
4.1. Implementasi Sistem ... 57
4.2. Perangkat Pendukung yang digunakan ... 57
4.2.1 Perangkat Keras (Hardware) ... 57
4.2.2 Perangkat Lunak (software) ... 58
4.3. Implementasi Aplikasi ... 58
4.3.1 Implementasi Antar Muka ... 58
4.4. Pengujian Sistem ... 61
4.4.1. Rencana Pengujian ... 61
4.4.2. Kasus dan Hasil Pengujian ... 62
4.4.3. Kasus dan Pengujian Performansi Algoritma ... 64
4.5 Kesimpulan ... 77
BAB 5 ... 79
5.1 Kesimpulan ... 79
5.2 Saran ... 79
(2)
80
DAFTAR PUSTAKA
[1] “kl2008.widyatama.ac.id,” 2008. [Online]. Available: http://k12008.widyagama.ac.id/ai/diktatpdf/Logika_Fuzzy. [Diakses 24 agustus 2014].
[2] M. Indraswara, Kajian Penempatan Furniture dan Pemakaian Warna, Diponegoro, 2007.
[3] J. Panero dan M. Zelnik, Dimensi Manusia & Ruang Interior, Jakarta: Erlangga, 2003.
[4] F. D. Ching, Ilustrasi Desain Interior, Jakarta: Erlangga, 1996.
[5] W. Prayitno, Desain Model Sistem Perangkat Lunak Dengan UML, Bandung, 2004.
[6] Sommerville, Software Engineering (Rekayasa Perangkat Lunak), Jakarta: Erlangga, 2003.
(3)
iii
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat Allah SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul IMPLEMENTASI
ALGORITMA FUZZY LOGIC UNTUK MENENTUKAN TATA LETAK
FURNITURE PADA APLIKASI SIMULASI RUANGAN.
Penulis menyadari bahwa dalam proses penulisan tugas akhir ini banyak mengalami kendala, namun berkat bantuan, bimbingan, kerjasama dari berbagai pihak dan berkah dari Allah SWT sehingga kendala-kendala yang dihadapi tersebut dapat diatasi Untuk itu, penulis ingin menyampaikan terimakasih yang sebesar-besarnya kepada :
1. Mamah Yayu, adiku , nene serta keluarga besar yang telah memberikan dukungan baik secara moril maupun materil dan doa yang tiada hentinya sehingga penulis bisa bertahan dan berpijak hingga saat ini.
2. Bapak Galih Hermawan, S.Kom., M.T. selaku pembimbing yang telah membimbing penulis dalam menyelesaikan tugas akhir.
3. Bapak Irfan Maliki, S.T., M.T. selaku reviewer yang telah banyak memberikan masukan dan arahan.
4. Ibu Kania Evita Dewi, S.Pd., M.Si. selaku dosen wali IF-14 2010
5. Untuk teman-teman IF-14 2010 seperjuangan yang telah membantu menyelesaikan tugas akhir ini.
6. Untuk sahabat BNE saya yang telah memberi dukungan dan semangat.
7. Semua pihak yang tidak dapat penulis sebut satu persatu yang telah membantu dalam penyelesaian penulisan skripsi ini.
Akhir kata, semoga skripsi ini dapat bermanfaat bagi para pembaca.
Bandung, Januari 2015
(4)
(5)
(6)