bab ii tinjauan pustaka · integrasi model-model dalam sistem informasi manajemen yang ......

25
7 BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1. Sistem Pendukung Keputusan Pengambilan keputusan merupakan proses pemilihan alternatif tindakan untuk mencapai tujuan atau sasaran tertentu. Pengambilan keputusan dilakukan dengan pendekatan sistematis terhadap permasalahan melalui proses pengumpulan data menjadi informasi serta ditambah dengan faktor-faktor yang perlu dipertimbangkan dalam pengambilan keputusan. Menurut Herbert A. Simon ( Kadarsah, 2002:15-16 ), tahap-tahap yang harus dilalui dalam proses pengambilan keputusan sebagai berikut: a) Tahap Pemahaman ( Inteligence Phace ) Tahap ini merupakan proses penelusuran dan pendeteksian dari lingkup problematika serta proses pengenalan masalah. Data masukan diperoleh, diproses dan diuji dalam rangka mengidentifikasikan masalah. b) Tahap Perancangan ( Design Phace ) Tahap ini merupakan proses pengembangan dan pencarian alternatif tindakan / solusi yang dapat diambil. Tersebut merupakan representasi kejadian nyata yang disederhanakan, sehingga diperlukan proses validasi dan vertifikasi untuk mengetahui keakuratan model dalam meneliti masalah yang ada. c) Tahap Pemilihan ( Choice Phace ) Tahap ini dilakukan pemilihan terhadap diantara berbagai alternatif solusi yang dimunculkan pada tahap perencanaan agar ditentukan dengan memperhatikan kriteria-kriteria berdasarkan tujuan yang akan dicapai. d) Tahap Impelementasi ( Implementation Phace ) Tahap ini dilakukan penerapan terhadap rancangan sistem yang telah dibuat pada tahap perancanagan serta pelaksanaan alternatif tindakan yang telah dipilih pada tahap pemilihan.

Upload: vandiep

Post on 16-Mar-2019

222 views

Category:

Documents


0 download

TRANSCRIPT

7

BAB II TINJAUAN PUSTAKA

BAB II

TINJAUAN PUSTAKA

2.1. Sistem Pendukung Keputusan

Pengambilan keputusan merupakan proses pemilihan alternatif

tindakan untuk mencapai tujuan atau sasaran tertentu. Pengambilan

keputusan dilakukan dengan pendekatan sistematis terhadap

permasalahan melalui proses pengumpulan data menjadi informasi serta

ditambah dengan faktor-faktor yang perlu dipertimbangkan dalam

pengambilan keputusan.

Menurut Herbert A. Simon ( Kadarsah, 2002:15-16 ), tahap-tahap

yang harus dilalui dalam proses pengambilan keputusan sebagai berikut:

a) Tahap Pemahaman ( Inteligence Phace )

Tahap ini merupakan proses penelusuran dan pendeteksian

dari lingkup problematika serta proses pengenalan masalah. Data

masukan diperoleh, diproses dan diuji dalam rangka

mengidentifikasikan masalah.

b) Tahap Perancangan ( Design Phace )

Tahap ini merupakan proses pengembangan dan pencarian

alternatif tindakan / solusi yang dapat diambil. Tersebut

merupakan representasi kejadian nyata yang disederhanakan,

sehingga diperlukan proses validasi dan vertifikasi untuk

mengetahui keakuratan model dalam meneliti masalah yang ada.

c) Tahap Pemilihan ( Choice Phace )

Tahap ini dilakukan pemilihan terhadap diantara berbagai

alternatif solusi yang dimunculkan pada tahap perencanaan agar

ditentukan dengan memperhatikan kriteria-kriteria berdasarkan

tujuan yang akan dicapai.

d) Tahap Impelementasi ( Implementation Phace )

Tahap ini dilakukan penerapan terhadap rancangan sistem

yang telah dibuat pada tahap perancanagan serta pelaksanaan

alternatif tindakan yang telah dipilih pada tahap pemilihan.

8

BAB II TINJAUAN PUSTAKA

Keputusan- keputusan yang dibuat pada dasarnya dikelompokkan

dalam 2 jenis, antara lain ( Herbert A. Simon ) :

a) Keputusan Terprogram

Keputusan ini bersifat berulang dan rutin, sedemikian hingga

suatu prosedur pasti telah dibuat menanganinya sehingga

keputusan tersebut tidak perlu diperlakukan de novo (sebagai

sesuatu yang baru) tiap kali terjadi.

b) Keputusan Tak Terprogram

Keputusan ini bersifat baru, tidak terstruktur dan jarang

konsekuen. Tidak ada metode yang pasti untuk menangani

masalah ini karena belum ada sebelumnya atau karena sifat dan

struktur persisnya tak terlihat atau rumit atau karena begitu

pentingnya sehingga memerlukan perlakuan yang sangat khusus.

Sistem pendukung keputusan merupakan suatu sistem interaktif

yang mendukung keputusan dalam proses pengambilan keputusan

melalui alternatif-alternatif yang diperoleh dari hasil pengolahan data,

informasi dan rancangan model.

Menurut Keen dan Scoot Morton :

“Sistem Pendukung Keputusan merupakan penggabungan sumber-

sumber kecerdasan individu dengan kemampuan komponen untuk

memperbaiki kualitas keputusan. Sistem Pendukung Keputusan juga

merupakan sistem informasi berbasis komputer untuk manajemen

pengambilan keputusan yang menangani masalah-masalah semi-

struktur”.

Dengan pengertian di atas dapat dijelaskan bahwa sistem

pendukung keputusan bukan merupakan alat pengambilan keputusan,

melainkan merupakan sistem yang membantu pengambil keputusan

dengan melengkapi mereka dengan informasi dari data yang telah diolah

dengan relevan dan diperlukan untuk membuat keputusan tentang suatu

masalah dengan lebih cepat dan akurat. Sehingga sistem ini tidak

dimaksudkan untuk menggantikan pengambilan keputusan dalam proses

pembuatan keputusan.

Dari pengertian sistem pendukung keputusan maka dapat

ditentukan karakteristik antara lain :

a) Mendukung proses pengambilan keputusan, menitik beratkan

pada management by perception.

9

BAB II TINJAUAN PUSTAKA

b) Adanya interface manusia / mesin dimana manusia ( user )

tetap memegang kontrol proses pengambilan keputusan.

c) Mendukung pengambilan keputusan untuk membahas

masalah terstruktur, semi terstruktur dan tak struktur.

d) Memiliki kapasitas dialog untuk memperoleh informasi sesuai

dengan kebutuhan.

e) Memiliki subsistem-subsistem yang terintegrasi sedemikian

rupa sehingga dapat berfungsi sebagai kesatuan item.

f) Membutuhkan struktur data komprehensif yang dapat

melayani kebutuhan informasi seluruh tingkatan manajemen.

Suatu sistem pendukung keputusan ( SPK ) memiliki tiga

subsistem utama yang menentukan kapabilitas teknis sistem pendukung

keputusan, antara lain :

a) Subsistem Manajemen Basis Data

Subsistem data merupakan bagian yang menyediakan data-

data yang dibutuhkan oleh Database Management Subsistem

(DBMS). DBMS sendiri merupakan susbsistem data yang

terorganisasi dalam suatu basis data. Data-data yang merupakan

dalam suatu sistem pendukung keputusan dapat berasal dari luar

lingkungan. Keputusan pada manajemen level atas seringkali

harus memanfaatkan data dan informasi yang bersumber dari luar

perusahaan.

Kemampuan subsistem data yang diperlukan dalam suatu

sistem pendukung keputusan adalah antara lain :

o Mampu mengkombinasikan sumber-sumber data yang

relevan melalui proses ekstraksi data.

o Mampu menambah dan menghapus secara cepat dan

mudah.

o Mampu menangani data personal dan non-official,

sehingga user dapat bereksperimen dengan berbagai

alternatif keputusan.

o Mampu mengolah data yang bervariasi dengan fungsi

manajemen data yang luas.

b) Subsistem Manajemen Basic Model

Subsistem model dalam sistem pendukung keputusan

memungkinkan pengambil keputusan menganalisa secara utuh

10

BAB II TINJAUAN PUSTAKA

dengan mengembangkan dan membandingkan alternatif solusi.

Integrasi model-model dalam sistem informasi manajemen yang

berdasarkan integrasi data-data dari lapangan menjadi suatu

sistem pendukung keputusan.

Kemampuan subsistem model dalam sistem pendukung

keputusan adalah antara lain :

o Mampu menciptakan model-model baru dengan cepat dan

mudah.

o Mampu mengkatalogkan dan mengelola model untuk

mendukung semua tingkat pemakai.

o Mampu menghubungkan model-model dengan basis data

melalui hubungan yang sesuai.

o Mampu mengelola basis model dengan fungsi manajemen

yang analog dengan database manajemen.

c) Subsistem Dialog

Subsistem dialog merupakan bagian dari sistem pendukung

keputusan yang dibangun untuk memenuhi kebutuhan

representasi dan mekanisme kontrol selama proses analisa dalam

sistem pendukung keputusan ditentukan dari kemampuan

berinteraksi anatara sistem yang terpasang dengan user. Pemakai

terminal dan sistem perangkat lunak merupakan komponen-

komponen yang terlibat dalam susbsistem dialog yang

mewujudkan komunikasi antara user dengan sistem tersebut.

Komponen dialog menampilkan keluaran sistem bagi pemakai

dan menerima masukkan dari pemakai ke dalam sistem

pendukung keputusan. Adapun subsistem dialog dibagi menjadi

tiga, antara lain :

o Bahasa Aksi ( The Action Language )

Merupakan tindakan–tindakan yang dilakukan user dalam

usaha untuk membangun komunikasi dengan sistem.

Tindakan yang dilakukan oleh user untuk menjalankan dan

mengontrol sistem tersebut tergantung rancangan sistem yang

ada.

11

BAB II TINJAUAN PUSTAKA

o Bahasa Tampilan ( The Display or Presentation

Langauage )

Merupakan keluaran yang dihasilkan oleh suatu sistem

pendukung keputusan dalam bentuk tampilan–tampilan akan

memudahkan user untuk mengetahui keluaran sistem

terhadap masukan–masukan yang telah dilakukan.

o Bahasa Pengetahuan ( Knowledge Base Language )

Meliputi pengetahuan yang harus dimiliki user tentang

keputusan dan tentang prosedur pemakaian sistem pendukung

keputusan agar sistem dapat digunakan secara efektif.

Pemahaman user terhadap permasalahan yang dihadapi

dilakukan di luar sistem, sebelum user menggunakan sistem

untuk mengambil keputusan. [6.]

2.2. Java

2.2.1. Pendahuluan

Java adalah bahasa pemrograman serba guna. Java dapat

digunakan untuk membuat suatu program sebagaimana Anda

membuatnya dengan bahasa seperti Pascal atau C++. Yang lebih

menarik, Java juga mendukung sumber daya internet yang saat ini

populer, yaitu World Wide Web atau yang sering disebut Web saja. Java

juga mendukung aplikasi client/server, baik dalam jaringan lokal ( LAN

) maupun jarungan berskala luas ( WAN ).

Java dikembangkan oleh Sun Microsystems pada Agustus 1991

dengan nama semula Oak. Konon Oak adalah pohon semacam jati yang

terlihat dari jendela tempat pembuatnya, James Gosling, bekerja. Ada

yang mengatakan bahwa Oak adalah singkatan dari Object Application

Kernel, tetapi ada yang menyatakan hal itu muncul setelah nama Oak

diberikan. Pada Januari 1995, Karena nama Oak dianggap kurang

komersial, maka diganti menjadi Java.

Dalam sejumlah literatur disebutkan bahwa Java merupakan hasil

perpaduan sifat dari sejumlah bahasa pemrograman, yaitu C, C++,

Object-C, SmallTalk, dan Common LISP. Selain itu, Java juga

dilengkapi dengan unsur keamanan. Yang tak kalah penting adalah

bahwa Java menambahkan paradigma pemrograman yang sederhana.

Jika Anda telah mengenal C atau C++, yang mengandalkan pointer dan

12

BAB II TINJAUAN PUSTAKA

Anda dapat merasakan keruwetannya, Java justru meninggalkannya

sehingga Anda akan memperoleh kemudahan saat menggunakannya.

2.2.2. Java Tidak Bergantung Platform

Program Java bersifat tidak bergantung platform. Artinya, Java

dapat dijalankan pada sebarang komputer dan bahkan pada sebarang

sistem operasi. Beberapa platform dan sistem operasi yang didukung

oleh Java dapat dilihat pada tabel berikut ini :

Tabel 2.1. Java pada berbagai sistem operasi

Sistem Operasi Vendor

AIX IBM

DG/UX Data General Corporation

Digital OpenVMS Digital Equipment Corporation

Digital UNIX Digital Equipment Corporation

HP-UX Hewlett Packard

IRIX Silicon Graphics

Linux Banyak Perusahaan

MacOS Apple

Netware Novell

OS/2 IBM

OS/390 dan OS/400 IBM

Solaris Sun Microsystem

Keluarga Windows Microsoft Corporation

Ketidakbergantungan terhadap platform sering dinyatakan

dengan istilah portabilitas. Yang menarik, tingkat portabilitas Java tidak

hanya sebatas pada program sumber (source code), melainkan juga pada

tingkat kode biner yang biasa disebut bytecode. Dengan demikian bila

Anda telah mengkompilasi program Java pada komputer bersistem

operasi Windows, Anda dapat menjalankan hasil kompilasi pada

Machintosh secara langsung, tanpa perlu mengkompilasi ulang. Kode yang disebut bytecode dapat dijalankan pada berbagai

sistem operasi karena kode ini berbeda dengan kode mesin. Kode mesin

sangat bergantung pada platform, sedangkan bytecode dapat dimengerti

oleh semua platform yang telah dilengkapi dengan interpreter Java.

Mengingat bahwa hasil kompilasi Java dijalankan pada sebarang sistem

13

BAB II TINJAUAN PUSTAKA

operasi ataupun prosesor, Java sering dikatakan bersifat netral terhadap

arsitektur komputer.

2.2.3. Java Adalah Bahasa Pemrograman Berorientasi Obyek

Sebagaimana halnya C++, salah satu bahasa yang mengilhami

Java, Java juga merupakan bahasa pemrograman berorientasi obyek

(suatu model pengembangan perangkat lunak yang saat ini sangat

populer). Sebagai bahasa pemrograman berorientasi obyek, Java

menggunakan kelas untuk membentuk suatu obyek. Sejumlah kelas

sudah tersedia dan Anda dapat menggunakannya dengan mudah, dan

bahkan Anda dapat mengembangkannya lebih jauh melalui konsep

pewarisan. Pewarisan adalah salah satu sifat yang ada pada bahasa

pemrograman berorientasi obyek, yang memungkinkan sifat-sifat suatu

obyek diturunkan dengan mudah ke obyek lain.

2.2.4. Jenis Program Java

Program Java dapat dibedakan menjadi dua jenis, yaitu applet

dan aplikasi.

a) Applet

Adalah program yang dibuat dengan Java, dapat diletakkan

pada Web Server dan diakses melalui Web Browser. Dalam hal

ini browser yang digunakan adalah yang memiliki kemampuan

Java ( misalnya Netscape Navigator, Internet Explorer, dan Hot

Java ).

b) Aplikasi

Adalah program yang dibuat dengan Java yang bersifat

umum. Aplikasi dapat dijalankan secara langsung, tidak perlu

perangkat lunak browser untuk menjalankannya. Aplikasi dapat

Anda bayangkan seperti program yang Anda tulis dengan bahasa

C atau Pascal. Setelah dikompilasi, Anda dapat mengeksekusinya

secara langsung. [3.]

2.3. MySQL

2.3.1. Pendahuluan

MySQL merupakan database yang dikembangkan dari bahasa

SQL (Structure Query Language). SQL sendiri merupakan bahasa yang

terstruktur yang digunakan untuk interaksi antara script program dengan

14

BAB II TINJAUAN PUSTAKA

database server dalam hal pengolahan data. Dengan SQL, kita dapat

membuat tabel yang nantinya akan diisi dengan data, memanipulasi data

( misalnya menambah data, menghapus data dan memperbaharui data ),

serta membuat suatu perhitungan dengan berdasarkan data yang

ditemukan.

MySQL merupakan software resmi yng dikembangkan oleh

perusahaan Swedia bernama MySQL AB, yang waktu itu bernama TcX

Data Konsult AB. Pada awalnya MySQL memakai nama mSQL atau

“mini SQL” sebagai antarmuka yang digunakan, ternyata dengan

menggunakan mSQL itu mengalami banyak hambatan, yaitu sangat

lambat dan tidak fleksibel. Oleh karena itu, Michael Widenius berusaha

mengembangkan interface yang tersebut hingga ditemukan MySQL.

Kala itu, MySQL didistribusikan secara khusus, yakni untuk keperluan

nonkomersial bersifat gratis, sedangkan untuk kebutuhan komersial

diharuskan membayar lisensi. Barulah sejak versi 3.23.19, MySQL

dikategorikan software berlisensi GPL, yakni dapat dipakai tanpa biaya

untuk kebutuhan apapun.

2.3.2. SQL

SQL ( Structured Query Language ) merupakan bahasa query

yang digunakan untuk mengakses database relasional. SQL sekarang

sudah menjadi bahasa database standar dan hampir semua sistem

database memahaminya. SQL terdiri dari berbagai jenis statement.

Semuanya didesain agar dia memungkinkan untuk dapat secara

interaktif berhubungan dengan database.

Penggunaan SQL pada DBMS ( Database Management System )

sudah cukup luas. SQL dapat dipakai oleh berbagai kalangan, misalnya

DBA ( Database Administrator ), progammer ataupun pengguna. Hal ini

disebabkan karena :

a) SQL sebagai bahasa administrasi database

Dalam hal ini SQL dipakai oleh DBA untuk menciptakan serta

mengendalikan pengaksesan database.

b) SQL sebagai bahasa query interaktif

Pengguna dapat memberikan perintah-perintah untuk

mengakses database yang sesuai dengan kebutuhannya.

15

BAB II TINJAUAN PUSTAKA

c) SQL sebagai bahasa pemrograman database

Pemrogram dapat menggunakan perintah-perintah SQL dalam

program aplikasi yang dibuat.

d) SQL sebagai bahasa client / server

SQL juga dipakai sebagai untuk mengimplementasikan sistem

client / server. Sebuah client dapat menjalankan suatu aplikasi

yang mengakses database. Dalam hal ini sistem operasi antara

server dan client bisa berbeda.

Di samping hal tersebut di atas SQL juga diterapkan pada internet

atau intranet untuk mengakses database melalui halaman-halaman web

untuk mendukung konsep web dinamis.

2.3.3. Kelompok Pernyataan SQL

Pernyataan SQL dapat dikelompokkan menjadi 5 kelompok DDL,

DML, DCL, pengendali transaksi dan pengendali programatik.

a) DDL ( Data Definition Language )

DDL merupakan kelompok perintah yang berfungsi untuk

mendefinisikan atribut-atribut database, table, atribut (kolom),

batasan-batasan terhadap suatu atribut serta hubungan antartable.

Yang termasuk kelompok DDL ini adalah :

o CREATE untuk menciptakan table atau indeks.

o ALTER untuk mengubah struktur table.

o DROP untuk menghapus table atau indeks.

b) DML ( Data Manipulation Language )

Adalah kelompok perintah yang berfungsi untuk

memanipulasi data, misalnya untuk pengambilan, penyisipan

pengubahan dan penghapusan data. Yang termasuk DML adalah :

o SELECT untuk memilih data.

o INSERT untuk menambah data.

o DELETE untuk menghapus data.

o UPDATE untuk mengubah data.

c) DCL ( Data Control Language )

Berisi perintah-perintah untuk mngendalikan pengaksesan

data. Yang termasuk DCL adalah :

16

BAB II TINJAUAN PUSTAKA

o GRANT untuk memberikan kendali pada pengaksesan

data.

o REVOKE untuk mencabut kemampuan pengaksesan data.

o LOCK TABLE untuk mengunci table.

d) Pengendali transaksi

Adalah perintah-perintah yang berfungsi untuk

mengendalikan pengeksekusian transaksi. Yang termasuk

kelompok ini adalah :

o COMMIT untuk menyetujui rangkaian perintah yang

berhubungan erat yang telah berhasil dilakukan.

o ROLLBACK untuk membatalkan transaksi yang dilakukan

karena adanya kesalahan atau kegagalan pada salah satu

rangkaian perintah.

e) Pengendali Programatik

Mencakup pernyataan-pernyataan yang berhubungan dengan

pemanfaatan SQL dalam bahasa lain ( SQL yang dilekatkan ).

Yang termasuk dalam kelompok ini adalah :

o CLOSE untuk menutup kursor.

o DECLARE untuk mendeklarasikan kursor.

o FETCH untuk mengambil nilai baris berikutnya.

o OPEN untuk membuka kursor.

2.3.4. Kelebihan MySQL

Ada beberapa alasan mengapa MySQL menjadi program

database yang sangat populer dan digunakan oleh banyak orang.

Alasan-alasan tersebut diantaranya adalah sebagai berikut :

a) MySQL adalah software database yang bersifat free atau

gratis.

b) MySQL adalah database yang memiliki kecepatan yang tinggi

dalam melakukan pemrosesan data, dapat diandalkan, dan mudah

digunakan serta mudah dipelajari.

c) Fully Multi Threaded dengan kernel thread. artinya adalah

bisa dengan mudah mempergunakan multiple CPU bila ada.

d) API ( Application Programming Interface) dengan C, C++ ,

Eiffel, Java, Perl, PHP, Python dan Tel.

17

BAB II TINJAUAN PUSTAKA

e) MySQL mendukung banyak bahasa pemrograman seperti C,

C++, Perl, Phyton, Java, dan PHP. Selain itu, dengan bantuan

ODBC, MySQL juga mampu berinteraksi dengan berbagai

pemrograman visual seperti Delphi, Visual Basic, Java, dan

sebagainya.

f) MySQL dapat melakukan koneksi dengan client menggunakan

protocol TCP/IP, Unix socket (Unix), atau Named Pipes ( NT ).

g) MySQL dapat menangani data dengan skala yang sangat besar

dengan jumlah record mencapai lebih dari 50 juta, menampung

60 ribu tabel, dan juga bisa menampung 5 milyar baris data.

h) Dalam hal relasi antartabel MySQL menerapkan metode one-

sweep multijoin, sehingga sangat efisien dalam mengelola

informasi yang kita minta dari beberapa tabel sekaligus

i) Multiuser, yaitu dalam satu database server pada MySQL

dapat diakses oleh beberapa user dalam waktu yang sama tanpa

mengalami konflik atau kemacetan sistem.

j) Security yang dimiliki database MySQL dikenal baik, karena

memiliki lapisan sekuritas seperti level subnetmask, nama host

dan izin akses user dengan sistem perizinan yang khusus serta

password yang dimiliki setiap user dalam bentuk data terenkripsi.

2.4. Fuzzy Logic

2.4.1. Pendahuluan

Fuzzy Logic diperkenalkan oleh Prof. Lotfi Zadeh pada tahun

1965. Merupakan metode yang mempunyai kemampuan untuk

memproses variabel yang bersifat kabur atau yang tidak dapat

dideskripsikan secara eksak / pasti seperti misalnya tinggi, lambat,

bising, dll. Dalam fuzzy logic, variabel yang bersifat kabur tersebut

direpresentasikan sebagai sebuah himpunan yang anggotanya adalah

suatu nilai crisp dan derajat keanggotaannya ( membership function )

dalam himpunan tersebut. Logika fuzzy berbeda dengan logika digital biasa, dimana logika

digital biasa hanya mengenal dua keadaan yaitu: Ya dan Tidak atau ON

dan OFF atau High dan Low atau "1" dan "0". Sedangkan Logika Fuzzy

meniru cara berpikir manusia dengan menggunakan konsep sifat

kesamaran suatu nilai. Dengan teori himpunan fuzzy, suatu objek dapat

menjadi anggota dari banyak himpunan dengan derajat keanggotaan

yang berbeda dalam masing-masing himpunan.

18

BAB II TINJAUAN PUSTAKA

Beberapa alasan mengapa orang menggunakan logika fuzzy,

antara lain:

a) Konsep logika fuzzy mudah dimengerti. Konsep matematis

yang mendasari penalaran fuzzy sangat sederhana dan mudah

dimengerti.

b) Logika fuzzy sangat fleksibel.

c) Logika fuzzy memiliki toleransi terhadap data-data yang tidak

tepat.

d) Logika fuzzy mampu memodelkan fungsi-fungsi non-linear

yang sangat kompleks.

e) Logika fuzzy dapat membangun dan mengaplikasikan

pengalaman-pengalaman para pakar secara langsung tanpa harus

melalui proses pelatihan.

f) Logika fuzzy dapat bekerja sama dengan teknik-teknik kendali

secara konvensional.

g) Logika fuzzy didasarkan pada bahasa alami.

Hal yang perlu diketahui dalam memahami sistem fuzzy, adalah

antara lain :

a) Variabel fuzzy.

Merupakan variabel yang hendak dibahas dalam suatu sistem

fuzzy. Contoh : umur, temperatur, permintaan, dsb.

b) Himpunan fuzzy.

Merupakan suatu grup yang mewakili suatu kondisi atau

keadaan tertentu dalam suatu variabel fuzzy.

Contoh :

o Variabel umur, terbagi menjadi 3 himpunan fuzzy, yaitu

MUDA, PAROBAYA, dan TUA.

o Variabel temperatur, terbagi menjadi 5 himpunan fuzzy,

yaitu DINGIN, SEJUK, NORMAL, HANGAT, dan PANAS.

Himpunan fuzzy mempunyai 2 atribut, yaitu antara lain :

o Linguistik

Yaitu penamaan suatu grup yang mewakili suatu keadaan

atau kondisi tertentu dengan menggunakan bahasa alami,

seperti : MUDA, PAROBAYA, TUA.

19

BAB II TINJAUAN PUSTAKA

o Numeris

Yaitu suatu nilai (angka) yang menunjukkan ukuran dari

suatu variabel seperti : 4., 25, 50, dsb.

c) Semesta pembicaraan

Semesta pembicaraan adalah keseluruhan nilai yang

diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy.

Semesta pembicaraan merupakan himpunan bilangan real yang

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

Nilai semesta pembicaraan dapat berupa bilangan positif maupun

negatif. Adakalanya nilai semesta pembicaraan ini tidak dibatasi

batas atasnya.

Contoh :

o Semesta pembicaraan untuk variabel umur adalah [0 +∞].

o Semesta pembicaraan untuk variabel temperatur adalah

[0 40].

d) Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang

diijinkan dalam semesta pembicaraan dan boleh dioperasikan

dalam suatu himpunan fuzzy. Seperti halnya dengan semesta

pembicaraan, domain merupakan himpunan bilangan real yang

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

Nilai domain dapat berupa bilangan positif maupun negatif.

Contoh :

o MUDA = [0, 45]

o PAROBAYA = [35, 55]

o TUA = [45, +∞]

o DINGIN = [0, 20]

o SEJUK = [15, 25]

o NORMAL = [20, 30]

o HANGAT = [25, 35]

o PANAS = [30, 40]

2.4.2. 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

20

BAB II TINJAUAN PUSTAKA

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 :

a) Representasi Linear Naik.

Kenaikan himpunan dimulai pada nilai domain yang memiliki

derajat keanggotaan 0 bergerak ke kanan menuju ke nilai domain

yang memiliki derajat keanggotaan lebih tinggi.

Gambar 2.1. Representasi Linear Naik

Fungsi keanggotaan :

b) Representasi Linear Turun.

Merupakan kebalikan dari representasi linear naik. Garis lurus

dimulai dari nilai domain dengan derajat keanggotaan tertinggi

pada sisi kiri, kemudian bergerak menurun ke nilai domain yang

memiliki derajat keanggotaan lebih rendah.

µ[x] =

0;

(x - a) / (b - a);

1;

x ≤ a

a ‹ x ‹ b

x ≥ b

21

BAB II TINJAUAN PUSTAKA

Gambar 2.2. Representasi Linear Turun

Fungsi keanggotaan :

c) Representasi Kurva Segitiga.

Kurva segitiga pada dasarnya merupakan gabungan antara 2

garis linear.

Gambar 2.3. Representasi Kurva Segitiga

µ[x] =

1;

(b - x) / (b - a);

0;

x ≤ a

a ‹ x ‹ b

x ≥ b

22

BAB II TINJAUAN PUSTAKA

Fungsi keanggotaan :

d) Representasi Kurva Trapesium.

Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya

saja ada beberapa titik yang memiliki nilai keanggotaan 1.

Gambar 2.4. Representasi Kurva Trapesium

Fungsi keanggotaan :

µ[x] =

0;

(x - a) / (b - a);

(c - x) / (c - b);

1;

x ≤ a

a ‹ x ≤ b

b ‹ x ‹ c

x ≥ c

µ[x] =

0;

(x - a) / (b - a);

1;

(d - x) / (d - c);

x ≤ a atau x ≥ d

a ‹ x ‹ b

b ≤ x ≤ c

x › c

23

BAB II TINJAUAN PUSTAKA

2.4.3. Operasi Dasar Zadeh untuk Operasi Himpunan Fuzzy

Seperti halnya 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 fire strength atau - predikat.

Ada 3 operator dasar yang diciptakan oleh Zadeh, yaitu :

a) Operator AND

Operator ini berhubungan dengan operasi interseksi pada

himpunan. α-predikat sebagai hasil operasi dengan operator AND

diperoleh dengan mengambil nilai keanggotaan terkecil antar

elemen pada himpunan-himpunan yang bersangkutan.

µA∩B = min(µA[x], µB[y])

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.

µAUB = max(µA[x], µB[y])

c) Operator NOT

Operator ini berhubungan dengan operasi komplemen pada

himpunan. α-predikat sebagai hasil operasi dengan operator NOT

diperoleh dengan mengurangkan nilai keanggotaan elemen pada

himpunan yang bersangkutan dari 1.

µA’ = 1 - µA[x]

2.4.4. Fuzzy Database Model Tahani

Database adalah kumpulan dari data yang saling berhubungan

satu dengan yang lainnya, tersimpan di perangkat keras komputer dan

digunakan perangkat lunak untuk memanipulasinya. Database sistem

adalah suatu sistem informasi yang mengintegrasikan kumpulan data

yang saling berhubungan satu dengan lainnya dan membuatnya tersedia

untuk beberapa aplikasi dalam suatu organisasi.

Sebagian besar database standar diklasifikasikan berdasarkan

bagaimana data tersebut dipandang oleh user. Misalkan kita memiliki

data karyawan yang tersimpan pada tabel dt_karyawan dengan field

NIP, nama, tgl lahir, th masuk, dan gaji per bulan.

24

BAB II TINJAUAN PUSTAKA

Tabel 2.2. Data Mentah Karyawan

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

06 Amir 18-11-1963 1989 1.600.000

07 Rian 28-05-1965 1997 1.250.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, kita olah menjadi suatu tabel

temporer untuk menghitung umur karyawan dan masa kerjanya.

Tabel 2.3. Data Karyawan setelah Diolah

NIP Nama Umur (th) Th Masuk Gaji/bl (Rp)

01 Lia 30 1996 750.000

02 Iwan 48 1985 1.500.000

03 Sari 36 1988 1.255.000

04 Andi 37 1998 1.040.000

05 Budi 42 1990 950.000

06 Amir 39 1989 1.600.000

07 Rian 37 1997 1.250.000

08 Kiki 32 2001 550.000

09 Alda 35 1999 735.000

10 Yoga 25 2000 860.000

* Misal sekarang tahun 2002

Dengan menggunakan database standar, kita dapat mencari data-

data dengan spesifikasi tertentu dengan menggunakan query. Misal kita

ingin mendapatkan informasi tentang nama-nama karyawan yang

usianya kurang dari 35 tahun, maka kita bisa ciptakan suatu query :

25

BAB II TINJAUAN PUSTAKA

SELECT Nama

FROM Karyawan

WHERE (Umur < 35)

Sehingga muncul nama-nama Lia, Kiki, dan Yoga. Apabila kita

ingin mendapatkan tentang nama-nama karyawan yang gajinya lebih

dari 1 juta rupiah, maka kita bisa ciptakan suatu query :

SELECT Nama

FROM Karyawan

WHERE (Gaji < 1000000)

Sehingga muncul nama-nama Iwan, Sari, Andi, Amir, dan Rian.

Apabila kita ingin mendapatkan tentang nama-nama karyawan yang

masa kerjanya kurang dari atau sama dengan 5 tahun tetapi gajinya

lebih dari 1 juta rupiah, maka kita bisa ciptakan suatu query :

SELECT Nama

FROM Karyawan

WHERE (Gaji < 1000000)

Sehingga muncul nama-nama Andi, dan Rian.

Pada kenyataannya, seseorang kadang membutuhkan informasi

dari data-data yang bersifat ambiguous. Apabila hal ini terjadi, maka

kita bisa menggunakan fuzzy database. Selama ini sudah ada penelitian

tentang fuzzy database. Salah satu diantaranya adalah model Tahani.

Fuzzy database model Tahani masih tetap menggunakan relasi standar,

hanya saja model ini menggunakan teori himpunan fuzzy untuk

mendapatkan informasi query-nya.

Misalkan kita mengkategorikan usia karyawan di atas ke dalam

himpunan : MUDA, PAROBAYA, dan TUA.

26

BAB II TINJAUAN PUSTAKA

Gambar 2.5. Fungsi Keanggotaan untuk Variabel Usia

Fungsi keanggotaan :

Tabel berikut menunjukkan tabel karyawan berdasarkan umur

dengan derajat keanggotaannya pada setiap himpunan.

x ≤ 30

30 ≤ x ≤ 40

x ≥ 40

1;

(40 - x) / 10;

0;

µ MUDA[x] =

x ≤ 40

40 ≤ x ≤ 50

x ≥ 50

0;

(x - 40) / 10;

1;

x ≤ 30 atau x ≥ 50

35 ≤ x ≤ 45

45 ≤ x ≤ 50

0;

(x - 35) / 10;

(50 - x) / 5;

µ PAROBAYA[x] =

µ TUA[x] =

Umur ( tahun ) 50 45 40 35 30

µ[x]

1

0

TUA PAROBAYA MUDA

27

BAB II TINJAUAN PUSTAKA

Tabel 2.4. Karyawan Berdasarkan Umur

NIP Nama Umur (th) Derajat Keanggotaan ( [x] )

MUDA PAROBAYA TUA

01 Lia 30 1 0 0

02 Iwan 48 0 0,4 0,8

03 Sari 36 0,4 0,1 0

04 Andi 37 0,3 0,2 0

05 Budi 42 0 0,7 0,2

06 Amir 39 0,1 0,4 0

07 Rian 37 0,3 0,2 0

08 Kiki 32 0,8 0 0

09 Alda 35 0,5 0 0

10 Yoga 25 1 0 0

Variabel masa kerja dikategorikan dalam himpunan : BARU, dan

LAMA.

Gambar 2.6. Fungsi Keanggotaan untuk Variabel Masa Kerja

Fungsi keanggotaan :

1;

(15 - y) / 10;

0;

µ BARU[y] =

y ≤ 5

5 ≤ y ≤ 15

y ≥ 15

Masa Kerja ( tahun ) 25 15 10 5

µ[y]

1

0

LAMA BARU

28

BAB II TINJAUAN PUSTAKA

Tabel di bawah ini menunjukkan tabel karyawan berdasarkan

masa kerja dengan derajat keanggotaannya pada setiap himpunan.

Tabel 2.5. Karyawan Berdasarkan Masa Kerja

NIP Nama Masa Kerja Derajat Keanggotaan ( [y] )

BARU LAMA

01 Lia 6 0,9 0

02 Iwan 17 0 0,467

03 Sari 14 0,1 0,267

04 Andi 4 1 0

05 Budi 12 0,3 0,133

06 Amir 13 0,2 0,200

07 Rian 5 1 0

08 Kiki 1 1 0

09 Alda 3 1 0

10 Yoga 2 1 0

Variabel gaji dikategorikan dalam himpunan: RENDAH,

SEDANG, dan TINGGI.

y ≤ 10

10 ≤ y ≤ 25

y ≥ 25

0;

(y - 10) / 15;

1;

µ TUA[y] =

Gambar 2.7. Fungsi Keanggotaan untuk Variabel Gaji

2000

Gaji ( x1000 Rp/bl )

1500 1000 800 500 300

µ[z]

1

0

TINGGI SEDANG RENDAH

29

BAB II TINJAUAN PUSTAKA

Fungsi keanggotaan :

Tabel berikut ini menunjukkan tabel karyawan berdasarkan gaji

dengan derajat keanggotaannya pada setiap himpunan.

Tabel 2.6. Karyawan Berdasarkan Gaji

NIP Nama Gaji/bl (Rp) Derajat Keanggotaan ( [x] )

RENDAH SEDANG TINGGI

01 Lia 750.000 0,1 0,50 0

02 Iwan 1.255.000 0 0,49 0,255

03 Sari 1.500.000 0 0 0,500

04 Andi 1.040.000 0 0,92 0,040

05 Budi 950.000 0 0,9 0

06 Amir 1.600.000 0 0 0,600

07 Rian 1.250.000 0 0,50 0,250

08 Kiki 550.000 0,5 0 0

09 Alda 735.000 0,13 0 0

10 Yoga 860.000 0 0 0

0;

(z - 500) / 500;

(1500 - z) / 500;

µ SEDANG[z] =

z ≤ 1000

1000 ≤ z ≤ 2000

z ≥ 2000

z ≤ 300

300 ≤ z ≤ 800

z ≥ 800

1;

(800 - z) / 500;

0;

µ RENDAH[z] =

z ≤ 500 atau z ≥ 1500

500 ≤ z ≤ 1000

100 ≤ z ≤ 800

0;

(z - 1000) / 1000;

1;

µ TINGGI[z] =

30

BAB II TINJAUAN PUSTAKA

Ada beberapa query yang dapat diberikan, misalkan:

Query 1 :

Siapa sajakah karyawan yang masih muda tapi memiliki gaji

tinggi?

SELECT Nama

FROM Karyawan

WHERE (Umur=”MUDA”) AND (Gaji = “TINGGI”)

Tabel di bawah ini menunjukkan hasil query1, yaitu nama-nama

karyawan yang masih muda tapi memiliki gaji yang tinggi.

Tabel 2.7. Hasil query1

NIP Nama Umur

(th) Gaji/bl

(Rp)

Derajat Keanggotaan ( [x] )

MUDA TINGGI MUDA &

TINGGI

03 Sari 36 1.500.000 0,4 0,5 0,4

07 Rian 37 1.250.000 0,3 0,25 0,25

06 Amir 39 1.600.000 0,1 0,6 0,1

04 Andi 37 1.040.000 0,3 0,04 0,04

01 Lia 30 750.000 1 0 0

02 Iwan 48 1.255.000 0 0,255 0

05 Budi 42 950.000 0 0 0

08 Kiki 32 550.000 0,8 0 0

09 Alda 35 735.000 0,5 0 0

10 Yoga 25 860.000 1 0 0

Query 2 :

Siapa sajakah karyawan yang masih muda atau karyawan yang

memiliki gaji tinggi?

SELECT Nama

FROM Karyawan

WHERE (Umur=”MUDA”) OR (Gaji = “TINGGI”)

Tabel di bawah ini menunjukkan hasil query2, yaitu nama-nama

karyawan yang masih muda atau yang memiliki gaji yang tinggi.

31

BAB II TINJAUAN PUSTAKA

Tabel 2.8. Hasil query2

NIP Nama Umur

(th) Gaji/bl

(Rp)

Derajat Keanggotaan ( [x] )

MUDA TINGGI MUDA ||

TINGGI

01 Lia 30 750.000 1 0 1

10 Yoga 25 860.000 1 0 1

08 Kiki 32 550.000 0,8 0 0,8

06 Amir 39 1.600.000 0,1 0,6 0,6

03 Sari 36 1.500.000 0,4 0,5 0,5

09 Alda 35 735.000 0,5 0 0,5

04 Andi 37 1.040.000 0,3 0,04 0,3

07 Rian 37 1.250.000 0,3 0,25 0,3

02 Iwan 48 1.255.000 0 0,255 0,255

05 Budi 42 950.000 0 0 0

[1.]