BAB II. KAJIAN PUSTAKA A. Teori Logika Fuzzy - MOCHAMAD TEGAR UTOMO BAB II

BAB II. KAJIAN PUSTAKA A. Teori Logika Fuzzy Teori fuzzy pertama kali dikenalkan oleh Lotfi A. Zadeh pada tahun 1965 pada presentasinya mengenai fuzzy sets.

  1. Pengertian logika fuzzy

  Sebelum munculnya logika fuzzy, dikenal sebuah logika tegas (Scrisp

  logic) yang memiliki nilai benar atau sala secara tegas. Sebaliknya, Logika Fuzzy

  merupakan sebuah logika yang memiliki nilai kekaburan atau kesamaran (Fuzzyness) antara benar dan salah. Dalam teori Logika Fuzzy sebuah nilai bisa bernilai benar dan salah secara bersamaan. Namun, beberapa besar kebenaran dan kesalahan suatu nilai tergantung kepada bobot yang dimilikinya. Logika

  Fuzzy adalah suatu cara yang tepat untuk memetakan ruang input kedalam ruang output (Kusumadewi dan Purnomo,2010).

  2. Perbedaan logika fuzzy dan logika tegas

  Perbedaan mendasar logika tegas dan logika fuzzy adalah nilai keluarannya. Logika tegas hanya memiliki nilai output 0 dan 1. Sedangkan logika fuzzy memiliki output dari 0 sampai 1. Logika fuzzy banyak memiliki nilai keluaran yang dikenal dengan derajat keanggotaannya.

  3. Elemen pada sistem fuzzy (Mustafidah,2013):

  a. Variabel Fuzzy, merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy, seperti umur, temperatur, dsb.

  b. Himpunan fuzzy, merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy.

  Contoh : Variabel umur : MUDA, PAROBATA, TUA Variabel suhu : DINGIN, SEJUK, NORMAL,PANAS, HANGAT

  c. Semesta Pembicaraan, adalah keseluruhan nilai yang diperbolehkan untuk dioprasikan dalam suatu variabel fuzzy. SP merupakan himpunan bilangan

  real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan.

  Nilai SP dapat berupa bilangan positif maupun negatif. Adakalanya nilai SP tidak dibatasi batas atasnya.

  d. Domain, adalah keseluruhan nilai yang diijinkan dalam semesta pembicaraan dan boleh dioprasikan dalam suatu himpunan fuzzy. Domain merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Domain dapat beruopa bilangan positif atau negatif.

  4. Atribut himpunan fuzzy

  Himpunan fuzzy memiliki 2 atribut, yaitu (Kusumadewi dan Purnomo, 2010):

  a. Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan dan kondisi tertentu dengan menggunakan bahasa alami, seperti : MUDA, PAROBAYA, TUA.

  b. Numeris, yaitu suatu nilai (angka) yang menunjukan ukuran dari suatu variabel seperti : 40,25,30, dsb.

  5. Fungsi keanggotaan

  Fungsi Keanggotaan (membership function) adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya (sering juga disebut dengan 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 dapat digunakan (Kusumadewi dan Purnomo, 2010):

  a. Representasi Linier Pada representasi linear, pemetaan input ke derajat keanggotannya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang jelas. Ada dua keadaan himpunan fuzzy yang linear.

  Pertama, 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 (Gambar 1 dan Persamaan 1).

  

Gambar 1. Grafik Representasi Linear Naik

  Fungsi Keanggotaan : µ[x]= . . . . . . . . . . . . . . . 1)

  Kedua, merupakan kebalikan yang pertama. Garis lurus dimulai dari domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat keanggotaan lebih rendah (Gambar 2 dan Persamaan 2).

  Gambar 2. Grafik Representasi Linear Turun

  Fungsi Keanggotaan : µ[x]= . . . . . . . . . . . . . . . . . 2)

  b. Representasi Kurva Segitiga Kurva segitiga pada dasarnya merupakan gabungan antara 2 garis linear.

  (gambar 3 dan Persamaan 3).

  

Gambar 3. Grafik Representasi Kurva Segitiga Fungsi Keanggotaan : µ[x]= . . . . . . . . . . . . . . . . . 3)

  c. Representasi Kurva Trapesium Kurva Trapesium pada dasarnya adalah bentuk dari segitiga, hanya saja ada beberapa titik yang memiliki nilai keanggotaan 1 (Gambar 4 dan Persamaan 4).

  

Gambar 4. Grafik Representasi Kurva Trapesium

  Fungsi Keanggotaan: µ[x]= . . . . . . . . . . . . . . . . . . . 4)

6. Operator himpunan fuzzy

  Seperti himpunan konvensional, ada beberapa operasi yang didefinisikan secara khusus untuk mengkombinasi dan memodifikasi himpunan

  

fuzzy. Nilai keanggotaan sebagai hasil dari operasi 2 himpunan sering dikenal

  dengan nama fire strengh atau α- predikat. Ada 3 operator dasar yang diciptakan oleh Zadeh(Kusumadewi,2003), yaitu : a. Operator AND Operator ini berhubungansengan operasi interseksi pada himpunan. α-preikat sebagai hasil operasi sengan operator AND diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan.

  b. Operator OR Operator ini berhubungan dengan operasi union pada himpunan.

  α-predikat sebagai hasil operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan- himpunan yang bersangkutan.

  c. Operator NOT Operator ini berhubungan dengan operasi komplemen pada himpunan. α-presikat sebagai hasil operasi dengan operator NOT diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan uang bersangkutan dari 1.

7. Basis data fuzzy

  Basis data fuzzy digunakan untuk mencari suatu informasi dari data-data yang bersifat ambigu. Apabila hal itu terjadi, penggunaan basis data fuzzy adalah salah satu hal yang bisa dipilih. Sampai saat ini sudah ada beberapa penelitian tentang basis data fuzzy, salah satu di antaranya adalah model tahani. Basis data

  

fuzzy masih tetap menggunakan relasi standar. Perbedaanya dengan basis data

  biasa adalah basis data fuzzy menggunakan teori himpunan fuzzy untuk mendapatkan informasi pada query-nya (Kusumadewi dan Purnomo, 2010).

  Sebagian besar basis data standar diklasifikasikan berdasarkan bagaimana data tersebut dipandang oleh user. Misalkan ada data karyawan yang tersimpan pada tabel DT_KARYAWAN dengan field NIP, nama, tgl_lahir, th_masuk, dan gaji_perbulan seperti pada Tabel 1.

  39 13 1.600.000

  36 14 1.255.000

  04 Andi

  37 4 1.040.000

  05 Budi

  42 12 950.000

  06 Amir

  07 Rian

  48 17 1.500.000

  37 5 1.250.000

  08 Kiki

  32 1 550.000

  09 Alda

  35 3 735.000

  10 Yoga

  03 Sari

  02 Iwan

  Tabel 1. Data mentah karyawan

  06 Amir 18-11-1963 1989 1.600.000

  NIP Nama Tgl. Lahir Th. Masuk Gaji/bl (Rp)

  01 Lia 03-06-1972 1996 750.000

  02 Iwan 23-09-1954 1985 1.500.000

  03 Sari 12-12-1966 1988 1.255.000

  04 Andi 06-03-1965 1998 1.040.000

  05 Budi 04-12-1960 1990 950.000

  07 Rian 28-05-1965 1997 1.250.000

  30 6 750.000

  08 Kiki 09-07-1971 2001 550.000

  09 Alda 14-08-1967 1999 735.000

  10 Yoga 17-09-1977 2000 860.000 Kemudian dari tabel DT_KARYAWAN, di olah menjadi sebuah tabel temporer untuk menghitung umur karyawan dan masa kerjanya. Tabel tersebut diberi nama Tabel Karyawan (Tabel 2).

  Tabel 2. Data karyawan Setelah Diolah

  NIP Nama Umur (th) Masa kerja (th)* Gaji/bl (Rp)

  01 Lia

  25 2 860.000 Dengan menggunakan basis data standar, dapat dicari data-data karyawan dengan spesifikasi tertentu dengtan menggunakan query. Misalkan dibutuhkan informasi tentang nama-nama karyawan yang usianya kurang dari 35 tahun, maka bisa ciptakan suatu query:

  SELECT NAMA FROM KARYAWAN WHERE (Umur < 35 )

  Sehingga muncul nama-nama Lia, Kiki, dan Yoga. Pada kenyataanya, seseorang kadang membutuhkan informasi dari data-data yang bersifat ambigu. Apabila hal ini terjadi, maka dapat digunakan basis data fuzzy. Misalkan mengkategorikan usia karyawan diatas kedalam himpunan MUDA, PAROBAYA, dan TUA (Gambar 5 dan Persamaan 5).

  Gambar 5. Grafik Representasi variabel usia

  Fungsi keanggotaan: µ MUDA [x]= µ [x]= . . . . . . . . . . . . . . . . . . . 5) PAROBAYA µ TUA [x]=

  Data karyawan berdasarkan umur dengan derajat keanggotaannya pada setiap himpunan ditunjukan pada Tabel 3.

  Tabel 3. Karyawan Berdasarkan Umur

B. Komputer

  Komputer adalah alat yang digunakan untuk mengolah data menurut prosedur yang telah dirumuskan. Kata computer atau compute yang berarti menghitung, semula dipergunakan untuk menggambarkan orang yang pekerjaannya melakukan perhitungan aritmatika, dengan atau tanpa alat bantu, tetapi arti kata ini kemudian dipindahkan kepada mesin itu sendiri. Asal mulanya, pengolahan informasi hampir ekslusif berhubungan dengan masalah aritmatika, tetapi komputer modern dipakai untuk tugas yang tidak berhubungan dengan matematika.

  Secara umum, komputer didefunisikan sebagai alat elektronik yanng dapat menerima input data, mengolah data dan memberikan hasil dalam bentuk informasi dengan menggunakan suatu program yang tersimpan di memori komputer dan dapat menyimpan program dan hasil pengolahan yang bekerja secara otomatis.sehingga akan mempermudah pekerjaan manusia, selain itu komputer juga merupakan alat informasi, komunikasi, dan hiburan (MADCOMS,2014).

C. Perangkat Lunak Pendukung Untuk Analisis Dan Perancangan Sistem

  Dan perangkat lunak yang digunakan untuk aplikasi dalam menyediakan fasilitas operasi untuk memasukkan, melacak, dan memodifikasi data ke dalam

  

database, mendefinisikan data baru, serta mengolah data menjadi informasi yang

  dibutuhkan, program aplikasi yang digunakan adalah Java Netbeans IDE dan Diagram DIA untuk membuat flowchart.

  1. MySQL

  Secara sederhana database (basis data) dapat diungkapkan sebagai suatu pengorganisasian data dengan bantuan komputer yang memungkinkan data dapat diakses dengan mudah dan cepat (Kadir, 2003). Database yang tesedia dalam suatu media penyimpanan tidak akan bisa diakses tanpa adanya koneksi perangkat lunak aplikasi yang familiar dengan database. Oleh karena itu, digunakan MySQL sebagai database relationalnya. MySQL merupakan

  software yang tergolong database server dan bersifat open source. MySQL

  bersifat multiplatform atau dapat dijalankan dalam berbagai sistem operasi (Kadir, 2009).

  2. Java IDE, Netbeans

  IDE (Integated Development Environment) merupakan alat bantu untuk pembuatan program. Berbeda dengan visual basic atau dengan bahasa pemrograman lain dimana pengguna tidak diperbolehkan memilih IDE-nya sendiri (terikat dengan produk). Java membebaskan penggunanya untuk memilih IDE yang mereka sukai. Netbeans merupakan salah satu IDE java yang paling popular (Charibaldi, 2010).

  Netbeans merupakan IDE java yang memiliki banyak pengguna, terutama di Indonesia. Netbeans dikenal sangat mudah digunakan dan dilengkapi dengan fasilitas wizard, code completion dan plugins yang sangat memudahkan pengguna. Akan tetapi netbeans membutuhkan memori minimal 512MB, supaya neatbeans dapat berjalan mulus. Netbeans sangat disarankan untuk pengguna yang baru belajar Java.

3. Diagram DIA

  DIA adalah aplikasi yang berisi berbagai objek khusus yang dapat digunakan untuk membantu pembuatan berbagai jenis gambar diagram, seperti ERD (Entity Relationship Diagrams), UML (Unified Modelling

  

Language) diagram, flowchart, diagram jaringan, rangkaian elektronik dan

  lain-lain. Dia merupakan software GPL (General Packet License), yang juga terinspirasi oleh program Visio dalam Windows.

  Dia ditulis oleh Alexander Larsson, kemudian dikembangkan oleh James Henstridge and Lars R. Clausen dengan bantuan Fredrik Hallenberg, Emmanuel Briot, Francis J. Lacoste, Alejandro Aguilar Sierra, Jerome Abela, Cyrille Chepelov, Henk Jan Priester, Jacek Pliszka, Steffen Macke, dan Hans Breuer. Dia memiliki tampilan yang cukup menarik, layaknya program yang user friendly maka Dia dilengkapi dengan menu dan toolbar yang sangat mudah digunakan dan dimengerti oleh seorang user. Pada Dia penggunaan keyboard seakan hanya untuk hal yang benar-benar perlu, seperti mengetikan sebuah teks untuk judul atau isi sebuah objek. Kenyataan ini semakin memperjelas bahwa dia adalah aplikasi yang berusaha memberikan kesempatan kepada user untuk mengerjakan gambar dengan mudah dan cepat.

D. Penelitian Terdahulu

  1. Aziz dan Mustafidah (2012) telah mengembangkan sistem rekomendasi pembelian televisi menggunakan fuzzy database model tahani yang bertujuan membantu masyarakat dalam pemilihan televisi yang akan dibeli. Sistem ini menyeleksi kriteria yang diberikan oleh pembeli, dengan variabel input berupa harga, ukuran, resolusi, lebar, tinggi, berat, dimensi, stand by dan daya listrik. Dari input tersebut, diperoleh output berupa berbagai jenis rekomendasi televisi yang tersedia dengan kebebasan calon pembeli untuk memilih rekomendasi dari sistem. Pada sistem ini sangat membantu keputusan pembelian televisi karena dilakukan secara cepat.

  2. Eliyani, dkk. (2009) telah mengembangkan sistem pengambil keputusan untuk pembelian mobil menggunakan fuzzy database model tahani. Dalam aplikasi ini digunakan variabel input data mobil yang meliputi panjang mobil, lebar mobil, tinggi mobil, kapasitas penumpang, ukuran mesin, berat mobil, harga mobil, dan kapasitas tanki bahan bakar. Dari input tersebut diperoleh output aplikasi berupa spesifikasi mobil yang di gunakan oleh pengguna serta dapat membantu keputusan yang lebih cepat untuk menjadikan bahan pertimbangan dalam persiapan pembelian produk mobil.

  3. Hamdani, dkk. (2011) telah mengembangkan sistem pendukung keputusan pembelian notebook menggunakan logika fuzzy tahani. Sistem ini membantu saat seseorang melakukan pembelian sebuah notebook dengan kriteria yang sesuai keinginan seperti harga, dimensi layar, kapasitas hardisk, kapasitas RAM, kecepatan processor, kapasitas VGA dan berat. Dalam penelitian ini,

  

output yang dihasilkan yaitu rekomendasi notebook yang sesuai dengan

  keinginan pembeli yang telah menerapkan basis data fuzzy model tahani sebagai metode yang digunakan.