BAB 2 LANDASAN TEORI 2.1 Logika Fuzzy 2.1.1 ... - USU-IR

Kelebihan dari teori logika fuzzy adalah kemampuan dalam proses penalaran secara bahasa (linguistic reasoning). Sehingga dalam perancangannya tidak...

36 downloads 334 Views 284KB Size
BAB 2

LANDASAN TEORI

2.1 Logika Fuzzy 2.1.1 Pengertian Logika Fuzzy Fuzzy secara bahasa diartikan sebagai kabur atau samar-samar. Suatu nilai dapat bernilai besar atau salah secara bersamaan. Dalam fuzzy dikenal derajat keanggotaan yang memiliki rentang nilai 0 (nol) hingga 1(satu). Berbeda dengan himpunan tegas yang memiliki nilai 1 atau 0 (ya atau tidak). Logika Fuzzy merupakan seuatu logika yang memiliki nilai kekaburan atau kesamaran (fuzzyness) antara benar atau salah. Dalam teori logika fuzzy suatu nilai bias bernilai benar atau salah secara bersama. Namun berapa besar keberadaan dan kesalahan suatu tergantung pada bobot keanggotaan yang dimilikinya. Logika fuzzy memiliki derajat keanggotaan dalam rentang 0 hingga 1. Berbeda dengan logika digital yang hanya memiliki dua nilai 1 atau 0. Logika fuzzy digunakan untuk menterjemahkan suatu besaran yang diekspresikan menggunakan bahasa (linguistic), misalkan besaran kecepatan laju kendaraan yang diekspresikan dengan pelan, agak cepat, cepat, dan sangat cepat. Dan logika fuzzy menunjukan sejauh mana suatu nilai itu benar dan sejauh mana suatu nilai itu salah. Tidak seperti logika klasik (scrisp)/ tegas, suatu nilai hanya mempunyai 2 kemungkinan yaitu merupakan suatu anggota himpunan atau tidak. Derajat keanggotaan 0 (nol) artinya nilai bukan merupakan anggota himpunan dan 1 (satu) berarti nilai tersebut adalah anggota himpunan. Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input kedalam suatu ruang output, mempunyai nilai kontinyu. Fuzzy dinyatakan dalam derajat dari suatu keanggotaan dan derajat dari kebenaran. Oleh sebab itu sesuatu dapat dikatakan sebagian benar dan sebagian salah pada waktu yang sama (Kusumadewi. 2004) Logika Fuzzy memungkinkan nilai keanggotaan antara 0 dan 1, tingkat keabuan dan juga hitam dan putih, dan dalam bentuk linguistik, konsep tidak pasti seperti "sedikit", "lumayan" dan "sangat" (Zadeh 1965).

Universitas Sumatera Utara

Kelebihan dari teori logika fuzzy adalah kemampuan dalam proses penalaran secara bahasa (linguistic reasoning). Sehingga dalam perancangannya tidak memerlukan persamaan matematik dari objek yang akan dikendalikan. 2.1.2 Fuzzy Clustering Fuzzy clustering adalah salah satu teknik untuk menentukan cluster optimal dalam suatu ruang vektor yang didasarkan pada bentuk normal euclidian untuk jarak antar vektor. Fuzzy clustering sangat berguna bagi pemodelan fuzzy terutama dalam mengindentifikasi aturan-aturan fuzzy. Metode clustering merupakan pengelompokan data beserta parameternya dalam kelompok – kelompok sesuai kecenderungan sifat dari masing-masing data tersebut (kesamaan sifat). Ada beberapa algoritma clustering data, salah satu diantaranya adalah Fuzzy C-Means. Fuzzy C-Means adalah suatu teknik peng-cluster-an yang mana keberadaannya tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan. Teknik ini pertama kali diperkenalkan oleh Jim Bezdek pada tahun 1981. Konsep dari Fuzzy C-Means pertama kali adalah menentukan pusat cluster, yang akan menandai lokasi rata-rata untuk tiap-tiap cluster. Pada kondisi awal, pusat cluster ini masih belum akurat. Tiap-tiap titik data memiliki derajat keanggotaan untuk tiap-tiap cluster. Dengan cara memperbaiki pusat cluster dan derajat keanggotaan tiap-tiap titik data secara berulang, maka akan dapat dilihat bahwa pusat cluster akan bergerak menuju lokasi yang tepat. Perulangan ini didasarkan pada minimasi fungsi obyektif yang menggambarkan jarak dari titik data yang diberikan kepusat cluster yang terbobot oleh derajat keanggotaan titik data tersebut. Output dari Fuzzy C-Means merupakan deretan pusat cluster dan beberapa derajat keanggotaan untuk tiap-tiap titik data. Informasi ini dapat digunakan untuk membangun suatu fuzzy inference system.

2.1.3 Algoritma Fuzzy C-Means Algoritma Fuzzy C-Means adalah sebagai berikut: 1. Input data yang akan dicluster X, berupa matriks berukuran n x m (n=jumlah sample data, m=atribut setiap data). Xij=data sample kei(i=1,2,…,n), atribut ke-j(j=1,2,…,m).

Universitas Sumatera Utara

2. Tentukan: o Jumlah cluster

= c;

o Pangkat

= w;

o Maksimum iterasi

= MaxIter;

o Error terkecil yang diharapkan

= ζ;

o Fungsi obyektif awal

= P0 =0;

o Iterasi awal

= t=1;

3. Bangkitkan nilai acak µik, i=1,2,…,n; k=1,2,…,c; sebagai elemen-elemen matriks partisi awal u. µik adalah derajat keanggotaan yang merujuk pada seberapa besar kemungkinan suatu data bisa menjadi anggota ke dalam suatu cluster. Posisi dan nilai matriks dibangun secara random. Dimana nilai keangotaan terletak pada interval 0 sampai dengan 1. Pada posisi awal matriks partisi U masih belum akurat begitu juga pusat clusternya. Sehingga kecendrungan data untuk masuk suatu cluster juga belum akurat. Hitung jumlah setiap kolom (atribut)

Qj adalah jumlah nilai derajat keanggotaan perkolom = 1 dengan j=1,2,…m

Hitung:

4. Hitung pusat Cluster ke-k: Vkj ,dengan k=1,2,…c; dan j=1,2,…m.

Universitas Sumatera Utara

5. Hitung fungsi obyektif pada iterasi ke-t, Pt. Fungsi obyektif dugunakan sebagai syarat perulangan untuk mendapatkan pusat cluster yang tepat. Sehingga diperoleh kecendrungan data untuk masuk ke cluster mana pada step akhir.

6. Hitung perubahan matriks partisi:

dengan: i=1,2,…n;dan k=1,2,..c. 7. cek kondisi berhenti: o jika:( |Pt - Pt-1 |<ζ ) atau (t>maxIter) maka berhenti; o jika tidak: t=t+1, ulangi langkah ke-4.

2.2 Sistem Pendukung Keputusan

Istilah SPK mengacu pada suatu sistem yang memanfaatkan dukungan komputer dalam proses pengambilan keputusan. Untuk memberikan pengertian yang lebih mendalam, akan diuraikan beberapa definisi mengenai SPK yang dikembangkan oleh beberapa ahli, diantaranya oleh Man dan Watson yang memberikan definisi sebagai berikut, SPK merupakan suatu sistem yang interaktif, yang membantu pengambil keputusan melalui penggunaan data dan model-model keputusan untuk memecahkan masalah yang sifatnya semi terstruktur maupun yang tidak terstruktur.

Universitas Sumatera Utara

SPK dapat memberikan berbagai manfaat dan keuntungan. Manfaat yang dapat diambil dari SPK adalah: 1. SPK memperluas kemampuan pengambil keputusan dalam memproses data / informasi bagi pemakainya. 2. SPK membantu pengambil keputusan untuk memecahkan masalah terutama berbagai masalah yang sangat kompleks dan tidak terstruktur. 3. SPK dapat menghasilkan solusi dengan lebih cepat serta hasilnya dapat diandalkan. 4. Walaupun suatu SPK, mungkin saja tidak mampu memecahkan masalah yang dihadapi oleh pengambil keputusan, namun ia dapat menjadi stimulan bagi pengambil keputusan dalam memahami persoalannya, karena mampu menyajikan berbagai alternatif pemecahan. Jadi dapat dikatakan bahwa SPK dapat memberikan manfaat bagi pengambil keputusan dalam meningkatkan efektifitas dan efisiensi kerja terutama dalam proses pengambilan keputusan. Di samping berbagai keuntungan dan manfaat seperti dikemukakan diatas, SPK juga memiliki beberapa keterbatasan, diantaranya adalah (Turban, Efraim dan Jay Aronson. 2005): 1. Ada beberapa kemampuan manajemen dan bakat manusia yang tidak dapat dimodelkan, sehingga model yang ada dalam sistem tidak semuanya mencerminkan persoalan sebenarnya. 2. Kemampuan suatu SPK terbatas pada perbendaharaan pengetahuan yang dimilikinya (pengetahuan dasar serta model dasar). 3. Proses-proses yang dapat dilakukan SPK biasanya juga tergantung pada perangkat lunak yang digunakan. 4. SPK tidak memiliki kemampuan intuisi seperti yang dimiliki manusia. Sistem ini dirancang hanyalah untuk membantu pengambil keputusan dalam melaksanakan tugasnya.

Universitas Sumatera Utara

Komponen Sistem Pendukung Keputusan Sistem pendukung keputusan terdiri atas tiga komponen utama yaitu: 1. Subsistem pengelolaan data (database). 2. Subsistem pengelolaan model (modelbase). 3. Subsistem pengelolaan dialog (userinterface)

Database wisata

BasisModel Model Basis

Basis Pengetahuan Fuzzy Clustering Fakta: Aturan: Data Hotel Aturan logika fuzzy Data Restoran Data Wisata

Basis Dialog Antarmuka Manusia - mesin

Pengambil Keputusan

Gambar 2.1. Diagram Konteks Sistem Pendukung Keputusan Tujuan Wisata Menggunakan Metode Fuzzy Clustering Perbedaan antara SPK dan website yaitu website dapat diakses dimana saja dengan proses online. Namun SPK dalam tugas akhir ini diakses dengan basis metode stand alone. Sedangkan perbedaaan antara SPK dengan sistem informasi yaitu SPK memiliki basis model dan basis pengetahuan sebelum proses pengambilan keputusan. Seperti basis pengetahuan berupa fuzzy clustering mengolah fakta yang ada dalam database dengan aturan logika fuzzy sebelum ditampilkan ke user. Sedangkan sistem informasi tidak memiliki basis model dan pengetahuan, hanya sifatnya memberikan info kepada user tanpa melibatkan proses basis pengetahuan sebelum ditampilkan ke pada user.

Universitas Sumatera Utara

SPK juga merupakan bagian dari SIM (Sistem Informasi Manajemen) sama hal nya seperti seperti sistem pakar dan sistem pengambil pendukung keputusan eksekutif/ESS. SIM adalah sistem berbasis komputer yang mengolah informasi bagi beberapa pemakai dengan keputusan serupa. Dimana dalam sistem informasi mengandung 3 aktivitas yaitu masukan (input), pemprosesan (processing), dan keluaran (output). Tiga aktivitas dasar tersebut menghasilkan informasi yang pada umumnya dalam bentuk laporan untuk pengambilan keputusan, pengendalian operasi, analisa permasalahan dan menciptakan produk atau jasa baru. Perbedaan SIM dan SPK adalah SIM berfokus pada pengorganisasian informasi dari perusahaan, memiliki alur informasi terstruktur dan memiliki aktifitas berupa tanya tawab & penyusunan laporan. Sedangkan SPK mengkhususkan pada pengambilan keputusan dari para manajer tingkat atas, menekankan pada fleksibilitas, adaptibilitas & mampu memberi respon dengan cepat, user memiliki kontrol penuh dalam berinteraksi serta dapat di kembangkan oleh para profesional yang tidak melibatkan prosesan data. Berikut ini gambar dari proses dari SIM.

Gambar 2.2. Diagram proses SIM secara umum

Masukan berperan di dalam pengumpulan bahan mentah (raw data), baik yang diperoleh dari dalam maupun dari lingkungan sekitar organisasi. Pemrosesan berperan untuk mengkonversi bahan mentah menjadi bentuk yang lebih memiliki arti. Sedangkan, keluaran dimaksudkan untuk mentransfer informasi yang diproses kepada pihak-pihak atau aktivitas-aktivitas yang akan menggunakannya. Sistem informasi juga membutuhkan umpan balik (feedback), yaitu untuk dasar evaluasi dan perbaikan ditahap input berikutnya.

Universitas Sumatera Utara

Logika fuzzy merupakan teknik untuk mengolah istilah linguistik. Teknik ini memperluas ide logika lebih dari sekedar benar atau salah untuk memungkinkan kebenaran parsial (bahkan kontinu). Pengetahuan yang tidak pasti dan pertimbangan yang tidak persisi adalah aspek penting keahlian dalam menerapkan akal sehat dalam situasi pengambilan keputusan. Dalam logika fuzzy nilai benar atau salah digantikan dengan derajat himpunan keanggotaan, dalam kasus ini, logika fuzzy yang digunakan adalah Fuzzy clustering. 2.3 Visual Basic 6.0 Basic adalah salah suatu developement tools untuk membangun aplikasi dalam lingkungan Windows. Dalam pengembangan aplikasi, Visual Basic menggunakan pendekatan Visual untuk merancang user interface dalam bentuk form, sedangkan untuk kodingnya menggunakan dialek bahasa Basic yang cenderung mudah dipelajari. Visual Basic telah menjadi tools yang terkenal bagi para pemula maupun para developer.Visual Basic adalah bahasa pemrograman berbasis Microsoft Windows yang merupakan Object Oriented Programming (OOP), yaitu pemrograman berorientasi objek, Visual Basic menyediakan objek-objek yang sangat kuat, berguna dan mudah. Dalam lingkungan Windows, User-interface sangat memegang peranan penting, karena dalam pemakaian aplikasi yang kita buat, pemakai senantiasa berinteraksi dengan User-interface tanpa menyadari bahwa dibelakangnya berjalan instruksi-instruksi program yang mendukung tampilan dan proses yang dilakukan. Pada

pemrograman

Visual,

pengembangan

aplikasi

dimulai

dengan

pembentukkan user interface, kemudian mengatur properti dari objek-objek yang digunakan dalam user interface, dan baru dilakukan penulisan kode program untuk menangani kejadian-kejadian (event). Tahap pengembangan aplikasi demikian dikenal dengan istilah pengembangan aplikasi dengan pendekatan Bottom Up. Ada beberapa hal yang harus dipahami dalam Visual Basic: • Objek Sering disebut entity adalah sesuatu yang bisa dibedakan dengan lainnya. Pada dasarnya seluruh benda didunia ini bisa dikatakan sebagai objek, contoh : mobil, komputer, radio, dan lain-lain. Dalam Visual Basic objek-objek yang dimaksud disebut kontrol jenis-jenis kontrol antara lain ; Label, Text Box, Combo Box, List Box, dan masih banyak lagi.

Universitas Sumatera Utara

• Properti Sering disebut atribut, adalah ciri-ciri yang menggambarkan suatu objek. Misalnya disebut objek mobil jika mempunyai ban, spion, rem, dan lain-lain. • Event Suatu kejadian yang menimpa objek. Bagaimana jika mobil didorong, ditabrak, dicat, dan sebagainya. • Metode Kemampuan yang dimiliki oleh suatu objek. Contohnya jika mobil berbelok, mundur, maju. 2.4 MySQL MySQL adalah server basis data yang kompak dan kecil yang ideal untuk banyak aplikasi basis data on-line. MySQL mendukung SQL standar (ANSI), meskipun tidak selengkap subset yang menjadi standar seperti PostgreSQL. MySQL dapat dijalankan di banyak platform dan memiliki kemampuan multithreading pada server UNIX. Pada lingkungan bukan UNIX, MySQL dapat dijalankan sebagai servis pada Windows NT dan sebagai proses normal pada mesin Windows 95/98. MySQL adalah server DBMS relasional SQL yang mendukung multithreading dan multi-user. MySQL mengimplementasikan client/server yang terdiri dari sebuah daemon server (servis di server) dan banyak program dan pustaka klien yang berbeda-beda. MySQL menjamin setiap unit kerja bersifat konsisten. Hal ini dilakukan dengan cara menulis data sebelum dan sesudah transaksi pada sebuah log transaksi. Log tersebut dapat dipakai untuk me-restore database ke keadaan konsisten jika sebuah aplikasi melakukan rollback (membatalkan operasi yang sudah dikerjakan karena transaksi gagal) atau aplikasi akan me-recover data karena kegagalan system. MySQL juga

Relational Database Management System(RDBMS) yang

didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial. MySQL memiliki beberapa keistimewaan, antara lain: 1. Portability MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.

Universitas Sumatera Utara

2. Open Source MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL sehingga dapat digunakan secara cuma-cuma. 3. Multiuser MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. 4. Performance tuning MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu. 5. Column types MySQL memiliki tipe kolom yang sangat kompleks, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain. 6. Command dan functions MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam query. 7. Security MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta password terenkripsi. 8. Scalability dan limits MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya. 9. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT). 10. Localisation MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk didalamnya.

Universitas Sumatera Utara

11. Interface MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface). 12. Clients dan tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk online.

Universitas Sumatera Utara