BAB 2
LANDASAN TEORI
2.1
Logika Fuzzy
2.1.1 Konsep Kekaburan (fuzziness) dan Sejarah Logika Fuzzy Ketidaktegasan atau kekaburan merupakan salah satu ciri dari bahasa sehari-hari manusia untuk mengungkapkan konsep atau gagasan dalam berkomunikasi dengan orang lain. Pada taraf tertentu banyak kata atau istilah yang memuat salah satu bentuk kekaburan. Bentuk-bentuk kekaburan atau ketidakjelasan lainnya adalah: 1. Keambiguan (ambiguity), yang terjadi karena suatu kata atau istilah mempunyai makna ganda. 2. Keacakan (randomness), yaitu ketidakpastian mengenai sesuatu hal karena hal itu belum terjadi (akan terjadi). 3. Ketidakjelasan akibat tidak lengkapnya informasi yang ada (incompleteness). 4. Ketidaktepatan (imprecision) yang disebabkan oleh keterbatasan alat dan metode untuk mengumpulkan informasi. 5. Kekaburan semantik, yaitu kekaburan yang disebabkan karena makna dari suatu kata atau istilah tidak dapat didefinisikan secara tegas, misalnya cantik, tinggi, kaya, pintar dan sebagainya. Istilah fuzzy pada tulisan ini lebih menekankan pada bentuk kekaburan semantik. Suatu kata atau istilah dikatakan kabur (fuzzy, vague) secara semantik apabila kata atau istilah tersebut tidak dapat didefinisikan secara tegas (benar atau salah) apakah suatu objek tertentu memiliki ciri atau sifat yang diungkapkan oleh kata atau istilah itu atau tidak. Meskipun secara umum manusia dapat berkomunikasi secara cukup memadai mengenai makna dari suatu istilah, tetapi pasti terdapat
Universitas Sumatera Utara
perbedaan pemaknaan terhadap istilah tersebut oleh masing-masing individu, yang diakibatkan misalnya oleh persepsi pribadi, lingkungan kebudayaan, latar belakang pengalaman dan pendidikan dan lain-lain. (Susilo, 2006) Ketidaktegasan semantik ini dari segi keilmuan seringkali menimbulkan masalah karena penelitian ilmiah pada umumnya memerlukan ketepatan dan kepastian berkenaan dengan makna istilah-istilah yang dipakai. Untuk mengatasi masalah tersebut biasanya diciptakan suatu bahasa sendiri sesuai dengan bidang ilmu yang bersangkutan yang mampu menangkap dan mengungkap ketidakjelasan atau kekaburan istilah-istilah dari bahasa sehari-hari secara memadai. Menurut Hagiwara dalam Nugroho A.S, 2007 bahasa yang dimaksud harus dapat memecahkan permasalahan tidak hanya dengan menggunakan angka-angka saja. Tetapi juga dapat melakukan perhitungan dengan menggunakan kata-kata (linguistik)
atau
variabel-variabel
yang
mengandung
ketidakpastian
atau
ketidakjelasan. Bahasa yang dapat menangani kekaburan semacam itulah yang diciptakan oleh Lotfi Asker Zadeh, seorang guru besar pada University of California, Berkeley, Amerika Serikat. Sejak tahun 1960 Profesor Zadeh telah merasa bahwa sistem analisis matematik tradisional yang dikenal sampai saat itu bersifat terlalu eksak sehingga tidak dapat berfungsi dalam banyak masalah dunia nyata yang seringkali amat kompleks.
Zadeh
kemudian
menjabarkan
perhitungan
matematik
untuk
menggambarkan ketidakjelasan atau kesamaran dalam bentuk variabel linguistik. Ide tersebut dapat diartikan sebagai generalisasi dari teori himpunan klasik yang menggabungkan pendekatan kualitatif dengan kuantitatif. Dengan kata lain bahwa himpunan himpunan klasik (crisp set) merupakan kejadian khusus dari himpunan kabur. (Susilo, 2006) Dalam teori himpunan klasik yang dikembangkan oleh George Cantor (1845-1918), himpunan didefinisikan sebagai suatu koleksi obyek-obyek yang terdefinisi secara tegas, dalam arti dapat ditentukan secara tegas apakah suatu objek
Universitas Sumatera Utara
adalah anggota himpunan itu atau tidak. Dengan demikian, suatu himpunan tegas A dalam semesta X dapat didefinisikan dengan menggunakan suatu fungsi µA : X {0,1}, yang disebut fungsi karakteristik dari himpunan A, dimana untuk setiap x X 1 untuk x A µA : (x) = 0 untuk x A Dengan memperluas konsep fungsi karakteristik itu, Zadeh mendefinisikan himpunan kabur dengan menggunakan apa yang disebutnya fungsi keanggotaan (membership function), yang nilainya berada dalam selang tertutup [0,1]. Jadi keanggotaan dalam himpunan kabur tidak lagi merupakan sesuatu yang tegas (yaitu anggota atau bukan anggota), melainkan sesuatu yang berderajat atau bergradasi secara kontinu. Selama tiga dekade pertama sejak kelahirannya, teori kabur mengalami perkembangan yang menarik. Semula teori tersebut ditolak mentah-mentah oleh para ilmuwan di Amerika Serikat, karena dicurigai sebagai suatu teori yang tidak memiliki dasar matematika yang dapat dipertanggungjawabkan dan bertentangan dengan hakikat ilmu karena memasukkan unsur-unsur kekaburan. Tradisi ilmu dan teknologi yang berakar kuat dalam metode kuantitatif-numerik selama berabad-abad tidak memberi tempat bagi komputasi linguistik yang mengarah ke harga-harga yang tidak jelas (fuzzy) yang diusulkan oleh Zadeh. Sebaliknya di Eropa dan Jepang, teori kabur disambut dengan hangat dan diterima dengan penuh antusias. Para ilmuwan disana mempelajari paradigma baru keilmuan ini dan mencoba mengaplikasikannya di berbagai bidang ilmu dan peralatan dengan hasil yang mengagumkan. Tahap perkembangan yang paling penting terjadi di Inggris pada tahun 1974 ketika E. H. Mamdani dan S. Assilian dari Universitas London berhasil untuk pertama kalinya menciptakan prototipe sistem kendali berbasis logika kabur untuk suatu mesin uap. Pada tahun 1978 untuk pertama kalinya teori kabur dimanfaatkan dalam dunia industri, yaitu berupa sistem kendali kabur untuk mengontrol proses pembuatan semen di suatu pabrik semen di Denmark. Di Jerman,
Universitas Sumatera Utara
Belanda dan Jepang bermunculan pula aplikasi-aplikasi teori kabur yang tidak hanya dimanfaatkan dalam sektor industri dan jasa, seperti perusahaan air minum, kereta api bawah tanah, lampu pengatur lalu lintas dan lain sebagainya, tetapi juga dalam barang-barang konsumen seperti mesin cuci, AC, kamera, televisi, lemari es dan lainlain. Tahap perkembangan lainnya yaitu pada tahun 1986 M. Togai dan H. Watanabe berhasil menciptakan Chip VLSI (Very Large Scale Integration) untuk memproses inferensi logika kabur dengan menggunakan komputer. Keberhasilan teori fuzzy juga dapat dilihat pada pemrosesan data yang memperbolehkan munculnya anggota himpunan parsial dari anggota himpunan kosong atau non-anggota. Dengan keberhasilan-keberhasilan tersebut di atas, maka pada tahun 1992 diselenggarakan IEEE International Conference on Fuzzy System yang pertama di San Diego, Amerika Serikat. Peristiwa itu dapat dikatakan merupakan suatu titik balik yang menandakan diterimanya teori kabur oleh masyarakat ilmiah di Amerika. Hingga pada saat ini teori baru ini telah berkembang dengan subur sebagai suatu cabang baru dalam lingkungan sains dan teknologi.
2.1.2
Himpunan Fuzzy
Prinsip dasar dan persamaan matematika dari teori himpunan fuzzy adalah sebuah teori pengelompokan objek dalam batas yang samar. Himpunan tersebut dikaitkan dengan suatu fungsi yang menyatakan derajat kesesuaian unsur-unsur dalam semestanya dengan konsep yang merupakan syarat keanggotaan himpunan tersebut. Fungsi itu disebut fungsi keanggotaan dan nilai fungsi itu disebut derajat keanggotaan suatu unsur dalam himpunan itu, yang selanjutnya disebut himpunan kabur (fuzzy set). Dengan demikian setiap unsur dalam semesta wacananya mempunyai derajat keanggotaan tertentu dalam himpunan tersebut. Derajat keanggotaan dinyatakan dengan suatu bilangan real dalam selang tertutup [0, 1]. Dengan perkataan lain, fungsi keanggotaan dari suatu himpunan kabur A dalam semesta X adalah pemetaan µA dari X ke selang [0,1], yaitu µA : X [0,1]. Nilai fungsi µA(x) menyatakan derajat keanggotaan unsur x X dalam himpunan kabur A.
Universitas Sumatera Utara
Nilai fungsi sama dengan satu menyatakan keanggotaan penuh, dan nilai fungsi sama dengan nol menyatakan sama sekali bukan anggota himpunan kabur tersebut. Maka himpunan tegas (crisp) juga dapat dipandang sebagai kejadian khusus dari himpunan kabur, yaitu himpunan kabur yang fungsi keanggotaannya hanya bernilai satu atau nol saja. Secara matematis suatu himpunan kabur A dalam semesta wacana X dapat dinyatakan sebagai himpunan pasangan terurut A={(x, µA(x)) | x X } di mana µA adalah fungsi keanggotaan dari himpunan kabur A, yang merupakan suatu pemetaan dari himpunan semesta X ke selang tertutup [0,1]. Apabila semesta X adalah himpunan yang kontinu, maka himpunan kabur A dinyatakan dengan A= ∫ x, µA(x) / x di mana lambang ∫ bukan merupakan lambang integral, melainkan melambangkan keseluruhan unsur-unsur x X bersama dengan derajat keanggotaannya dalam himpunan kabur A. Apabila semesta X adalah himpunan yang diskret, maka himpunan kabur A dinyatakan dengan A= ∑ x, µA(x) / x di mana lambang ∑ juga merupakan keseluruhan unsur-unsur x X bersama dengan derajat keanggotaaannya dalam himpunan kabur. Himpunan fuzzy memiliki dua atribut, yaitu: 1.
Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami, seperti: MAHAL, SEDANG, MURAH dan sebagainya.
2.
Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel seperti 100 juta, 200 juta, 500 juta dan lain sebagainya.
Universitas Sumatera Utara
Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy, yaitu: 1.
Variabel fuzzy Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Contoh: harga, lama pemakaian, kecepatan dan sebagainya.
2.
Himpunan fuzzy Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy.
3.
Semesta wacana (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 ada batas atasnya.
4.
Domain Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy. Seperti halnya semesta pembicaraan, domain merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif dan negatif.
Gambar 2.1 Himpunan Fuzzy
Universitas Sumatera Utara
2.1.3 Fungsi Keanggotaan Fungsi keanggotaan (membersip function) adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya yang memiliki interval antara nol sampai satu. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Representasi dari fungsi keanggotaan ini dapat digambarkan dengan dua bentuk yaitu linear atau garis lurus dan kurva (Galindo et al, 2006). Ada beberapa fungsi yang bisa digunakan, yaitu: 1.
Representasi Linear Pada representasi linear, pemetaan input ke derajat keanggotaannya 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, yaitu: 1) Representasi Linear Naik Kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol bergerak ke kanan menuju ke nilai domain yang memiliki derajat keanggotaan lebih tinggi. 1 Derajat keanggotaan µ[x]
0
a
Domain
b
Gambar 2.2 Representasi Linear Naik Fungsi keanggotaan: µ[x] =
0;
x≤a
(x-a) / (b-a);
a<x
1;
x≥b
Universitas Sumatera Utara
2) Representasi Linear Turun Repersentasi linear turun merupakan kebalikan dari 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.
1 Derajat keanggotaan µ[x]
0
Domain b a Gambar 2.3 Representasi Linear Turun
Fungsi keanggotaan: µ[x] =
2.
0;
x≥b
(b-x) / (b-a);
a<x
1;
x≤a
Representasi Kurva Segitiga Kurva segitiga pada dasarnya merupakan gabungan antara dua garis (linear). 1
Derajat keanggotaan µ[x]
0
a
b
c
Domain
Gambar 2.4 Kurva Segitiga
Universitas Sumatera Utara
Fungsi keanggotaan: µ[x] =
3.
0;
x ≥ c atau x ≤ a
(x-a) / (b-a);
a <x< b
(c-x) / (c-b);
b<x
Representasi Kurva Trapesium Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja ada beberapa titik yang memiliki nilai keanggotaan satu.
1 Derajat keanggotaan µ[x]
0
a
b
Domain
c
d
Gambar 2.5 Kurva Trapesium Fungsi keanggotaan: µ[x] =
4.
0;
x ≥ d atau x ≤ a
(x-a) / (b-a);
a<x< b
(d-x) / (d-c);
c< x
1;
b≤x≤c
Representasi Kurva Bentuk Bahu Daerah yang terletak di tengah-tengah satu variabel yang direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun
Universitas Sumatera Utara
Bahu kiri Sangat murah
Bahu kanan Murah
SedangMahal
Sangat mahal
1 Derajat keanggotaan µ[x]
0
Gambar 2.6 Kurva Bahu pada variabel HARGA
2.1.4 Operator Dasar Seperti halnya himpunan tegas (crisp), operasi uner komplemen dan operasi-operasi biner gabungan dan irisan juga dapat didefinisikan pada himpunan kabur. Karena suatu
himpunan
tegas
dapat
dinyatakan
secara
lengkap
dengan
fungsi
karakteristiknya, maka ketiga operasi pada himpunan tegas itu dapat didefinisikan dengan menggunakan fungsi karakteristik itu. Nilai keanggotaan sebagai hasil dari operasi dua himpunan disebut dengan fire strength atau α-predikat. Ada tiga operator dasar yang diciptakan oleh Zadeh, yaitu: 1. Operator NOT Misalnya A adalah suatu himpunan tegas dalam semesta X, maka komplemen dari A, yaitu A’, dapat didefinisikan dengan nilai kebenaran sebagai berikut, Tabel 2.1 Tabel Nilai Kebenaran operator NOT x X x X’ 1
0
0
1
Operator ini berhubungan dengan operasi komplemen pada himpunan. αpredikat sebagai hasil operasi NOT diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan yang bersangkutan dari satu. µA’ = 1 - µ[x]
Universitas Sumatera Utara
2. Operator OR Gabungan dari himpunan-himpunan tegas A dan B dalam semesta X, yaitu AUB, dapat didefinisikan dengan menggunakan tabel nilai kebenaran sebagai berikut, Tabel 2.2 Tabel Nilai Kebenaran operator OR x A x B x AUB 1
1
1
1
0
1
0
1
1
0
0
0
Operator ini berhubungan dengan operasi union pada himpunan. α-predikat sebagai hasil operasi OR diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan. µAUB = max(µA [x], µB[y]) 3. Operator AND Irisan dari himpunan-himpunan tegas A dan B dalam semesta X, yaitu A∩B, dapat didefinisikan dengan menggunakan tabel nilai kebenaran sebagai berikut, Tabel 2.3 Tabel Nilai Kebenaran operator AND x A x B x A∩B 1
1
1
1
0
0
0
1
0
0
0
0
Operator ini berhubungan dengan operasi interseksi pada himpunan. α-predikat sebagai hasil operasi AND diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan. µA∩B = min(µA [x], µB[y])
Universitas Sumatera Utara
2.1.5 Perbedaan Himpunan Fuzzy dengan Probabilistik Teori probabilitas adalah suatu cabang matematika yang sudah mulai dikembangkan sejak abad 17 untuk menyelidiki gejala ketidakpastian, dan telah berhasil diterapkan dalam banyak bidang. Pada waktu teori kabur mulai dipublikasikan pada tahun 1965 para ahli teori probabilitas menganggap bahwa teori baru itu sama saja dengan teori probabilitas yang sudah lama dikenal dalam dunia matematika, karena kedua teori tersebut menangani gejala ketidakpastian dan keduanya mempunyai nilai dalam selang tertutup [0, 1]. Maka mereka menganggap bahwa teori kabur itu bukanlah barang baru dan tidak menambah apa-apa dalam khasanah ilmu pengetahuan. Pandangan tersebut sama sekali tidak benar dan untuk meyakinkan hal itu kiranya perlu dijelaskan mengapa kedua teori tersebut tidaklah sama. Baik teori probabilitas maupun teori kabur keduanya memang menangani menangani gejala ketidakjelasan, tetapi ketidakpastian yang berbeda jenisnya. Ketidakpastian yang digarap dalam teori probabilitas adalah keacakan (randomness), yaitu ketidakpastian mengenai sesuatu hal yang disebabkan karena hal itu belum terjadi (akan terjadi). Ketidakpastian semacam itu akan hilang, dan akan berubah menjadi kepastian, pada waktu hal itu telah terjadi. Misalnya seseorang mengalami ketidakpastian mengenai apakah lamaran pekerjaannya ke sebuah perusahaan diterima atau tidak. Pada waktu ia menerima surat dari perusahaan itu, yang memberitahukan bahwa ia diterima, ketidakpastian itu langsung hilang dan berubah menjadi kepastian. Sedangkan ketidakpastian yang digarap dalam teori himpunan kabur adalah kekaburan semantik mengenai suatu kata atau istilah yang tidak dapat didefinisikan secara tegas. Kekaburan semantik itu tetap ada (tidak berubah) meskipun halnya telah terjadi. Misalnya seseorang merasa tidak pasti apakah besok pagi cuacanya akan dingin atau tidak. Ketidakpastiannya mengenai keadaan cuaca besok pagi itu adalah keacakan (dengan peluang tertentu akan terjadi) yang besok pagi akan berubah menjadi kepastian, sedangkan dinginnya cuaca adalah suatu kekaburan semantik (dengan fungsi keanggotaan tertentu) yang besok pagi atau kapanpun tetap merupakan kekaburan. Lagi pula dalam teori probabilitas jumlah peluang dari semua kemungkinan yang dapat terjadi harus sama dengan satu. Hal
Universitas Sumatera Utara
semacam itu tidak disyaratkan dalam teori himpunan kabur. Kedua teori itu memang berbeda, tetapi tidak perlu dipertentangkan, justru sebaliknya kedua teori itu dapat bekerjasama dan saling melengkapi. Misalnya dalam istilah sangat mungkin terjadi terkandung konsep keacakan maupun kekaburan semantik yang dapat digarap oleh kedua teori tersebut. Berkaitan dengan kerjasama itu, pada awal dekade yang lalu Zadeh memperkenalkan suatu konsep baru yang disebutnya komputasi lunak (soft computing), yang merupakan sinergi dari beberapa teori dan metodologi untuk menghasilkan suatu sistem cerdas yang semakin mendekati kecerdasan manusia dalam bernalar dan belajar dengan data-data yang tidak pasti dan tidak tepat. Unsurunsur pokok dari komputasi lunak itu adalah teori kabur (fuzzy), jaringan saraf (neural network), algoritma genetik (genetic algorithms), teori probabilitas, dan teori Chaos.
2.1.6 Keunggulan Logika Fuzzy Ada beberapa alasan mengapa orang menggunakan logika fuzzy, antara lain: 1. Konsep logika fuzzy mudah dimengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti. 2. Logika fuzzy sangat fleksibel. 3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat. 4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks. 5. Logika
fuzzy
dapat
membangun
dan
mengaplikasikan
pengalaman-
pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan. 6. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional. 7. Logika fuzzy didasarkan pada bahasa alami. 8. Sangat mudah dihibridkan dengan teknologi lain, misalnya algoritma genetika, jaringan saraf, dan lain-lain.
Universitas Sumatera Utara
2.2
Pangkalan Data
2.2.1 Pengertian Pangkalan Data Pangkalan data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Sistem pangkalan data (database system) adalah suatu sistem informasi yang mengintegrasikan kumpulan data yang saling berhubungan satu dengan yag lainnya dan membuatnya tersedia untuk beberapa aplikasi dalam suatu organisasi. Sebagaimana diketahui, manajemen modern mengikutsertakan informasi sebagai sumber daya yang setara dengan sumber daya manusia, uang mesin, dan material. Informasi adalah suatu bentuk penyajian data yang melalui mekanisme pemrosesan, berguna bagi pihak tertentu misalnya manajer. Bagi pihak manajer, informasi merupakan bahan bagi pengambilan keputusan.
DATA
PROSES
INFORMASI
Gambar 2.7 Pengolahan data menjadi informasi
2.2.2
Sejarah Pangkalan Data
Dari awal era komputer, penyimpanan dan penggunaan data menjadi fokus aplikasi yang utama. Sistem manajemen pangkalan data (database management system disingkat DBMS) general purpose pertama, yang didesain oleh Charles Bachman di General Electric pada awal tahun 1960-an, disebut Integrated Data Store (IDS). DBMS ini membentuk dasar untuk model data jaringan, yang distandarisasi oleh Conference on Data System Language (CODASYL) dan sangat mempengaruhi sistem pangkalan data sepanjang tahun 1960-an. Bachman adalah orang pertama yang
Universitas Sumatera Utara
menerima ACM’s Turing Award (semacam hadiah Nobel untuk ilmu komputer) untuk karyanya dalam bidang pangkalan data beliau menerima penghargaan itu pada tahun 1973. Pada akhir 1960-an, IBM mengembangkan Information Management System (IMS) DBMS, yang digunakan dalam banyak instalasi besar hingga saat ini. IMS membentuk dasar bagi kerangka kerja representasi data alternatif yang disebut model data hierarki. Pada saat yang sama, dikembangkan pula sistem SABRE unutk membuat reservasi penerbangan penerbangan yang dikembangkan oleh American Airlines dan IBM, dan memungkinkan beberapa orang mengakses data yang sama melalui jaringan komputer.
Pada tahun 1970, Edgar Codd, di IBM San Jose Research Laboratory, mengusulkan sebuah kerangka kerja baru untuk representasi data, disebut model data relasional. Hal ini terbukti menjadi faktor yang sangat penting dalam pengembangan sistem pangkalan data, memicu pesatnya perkembangan beberapa DBMS yang didasarkan pada model relasional, bersamaan dengan banyaknya hasil teoritis yang menempatkan field pada satu fondasi perusahaan. Pada tahun 1981, Codd meraih Turing Award untk karyanya yang luar biasa ini. Sistem pangkalan data ditetapkan sebagai suatu disiplin akademik, dan popularitas DBMS relasional kemudian mengubah susunan komersial. Manfaatnya diakui secara luas, dan penggunaan DBMS untuk mengelola data perusahaan menjadi praktik standar (Ramakhrisnan, 2000)
2.2.3 Pangkalan Data Relasional Model relasional lebih popular daripada tipe model pangkalan data lain seperti hierarki dan network, karena kesederhanaannya. Relasional Database Management System (RDBMS) menjadi sangat populer karena mudah digunakan dan strukturnya lebih fleksibel. Komponen dari model relasional adalah:
Universitas Sumatera Utara
1. Kumpulan objek atau relasi yang menyimpan data. 2. Kumpulan operator yang dapat digunakan pada relasi untuk menghasilkan relasi lain. 3. Integritas data untuk akurasi dan konsistensi. Database relasional menggunakan relasi atau tabel dua dimensi untuk menyimpan informasi, yang masing-masing relasi tersusun atas tupel atau baris dan atribut. Relasi dirancang sedemikian rupa sehingga dapat menghilangkan kemubaziran data dan menggunakan kunci tamu untuk berhubungan dengan relasi lain. Ada beberapa sifat yang melekat pada suatu relasi, yaitu: 1. Tidak ada tupel (baris) yang kembar. 2. Urutan tupel tidaklah penting (tupel-tupel dapat dipandang dalam sebarang urutan) 3. Setiap atribut memiliki nama yang unik. 4. Letak atribut bebas (urutan atribut tidak penting). 5. Setiap atribut memiliki nilai tunggal dan jenisnya sama untuk semua tupel. Pada model relasional, jumlah tupel suatu relasi disebut kardinalitas dan jumlah atribut suatu relasi disebut derajat (degree) atau terkadang disebut arity. Relasi yang berderajat satu (hanya memiliki satu atribut) disebut unary. Relasi yang berderajat dua disebut binary dan relasi yang berderajat tiga disebut ternary. Relasi yang berderajat n disebut n-ary. (Kadir, 1999)
2.3
Structure Query Language (SQL)
Query database relasional (disingkat, query) adalah pertanyaan mengenai data, dan jawabannya terdiri dari relasi baru yang memuat hasilnya. Bahasa query adalah bahasa yang dikhususkan untuk menulis query. SQL semula dikembangkan sebagai bahasa query dari Sistem Relasional DBMS di IBM, Structured Query Language (SQL) menjadi bahasa yang paling sering digunakan untuk membuat, memanipulasi dan meng-query DBMS relasional. SQL adalah bahasa standar untuk melakukan query kepada pangkalan data. SQL independen terhadap arsitektur database sehingga bisa digunakan pada database apa saja. Sebuah query adalah sebuah ekspresi bahasa yang menggambarkan data
Universitas Sumatera Utara
yang akan didapatkan kembali dari sebuah database. Dalam hubungannya dengan optimasi query, seringkali diasumsikan bahwa query-query tersebut dinyatakan dalam sebuah dasar-dasar isi dan sekumpulan cara orientasi, yang memberikan optimizer pilihan-pilihan diantara altenatif prosedur-prosedur evaluasi. Query dapat digunakan pada beberapa keadaan. Kebanyakan aplikasi nyatanya adalah permintaan-permintaan secara langsung dari user yang memerlukan informasi tentang bentuk maupun isi dari pangkalan data. Apabila permintaan user terbatas pada sekumpulan query-query standar, maka query-query tersebut dapat dioptimisasi secara manual oleh pemrograman prosedur-prosedur pencarian gabungan dan membatasi input dari user pada sebuah ukuran tertentu.
SQL terdiri dari lima bagian utama, yaitu: 1. Retrieving data: perintah untuk menampilkan data dari pangkalan data (SELECT) 2. Data Definition Language (DDL): bahasa yang digunakan untuk membuat atau menghapus tabel atau pangkalan data itu sendiri (CREATE, DROP, ALTER) 3. Data Manipulation Language (DML): merupakan bahasa untuk memanipulasi atau mengubah isi tabel (INSERT, DELETE, UPDATE) 4. Data Control Language (DCL): bahasa yang berhubungan dengan pengendalian akses ke pangkalan data. 5. Data Transaction Language (DTL): bahasa yang digunakan untuk mengelola transaksi pada pangkalan data (COMMIT, ROLLBACK)
2.3.1 Pangkalan data fuzzy model Tahani Pangkalan data klasik hanya menangani data-data yang bersifat pasti dan tegas. Sedangkan pada kenyataannya manusia seringkali berkomunikasi dalam bahasa yang tidak jelas batasannya. Untuk menangani hal tersebut maka dibangunlah sebuah pangkalan data dengan pendekatan logika fuzzy. Pangkalan data yang menggunakan pendekatan fuzzy tidak hanya menyimpan dan memanipulasi fakta-fakta yang pasti tetapi juga pendapat-pendapat subjektif, keputusan dan nilai-nilai yang dapat dijabarkan dalam istilah linguistik. Jenis informasi ini sangat bermanfaat sekali jika
Universitas Sumatera Utara
pangkalan data digunakan sebagai pembantu pengambilan keputusan di berbagai bidang kehidupan dimana ketidakpastian data benar-benar bernilai (Klir dan Folger, 1998). Pangkalan data dengan pendekatan logika fuzzy dibangun dengan pertimbangan bahwa setiap individu mempunyai persepsi yang berbeda untuk setiap data linguistik (Kandel, 1986). Pada umumnya, ada dua cara untuk memasukkan unsur kekaburan (fuzziness) ke dalam sebuah pangkalan data, yaitu: 1. Fuzzy Database Fuzzy database adalah pangkalan data mempunyai kemampuan untuk menyimpan dan memanipulasi data-data yang mengandung ketidakpastian secara langsung. Artinya, pengguna memasukkan informasi-informasi yang mengandung unsur kekaburan ke dalam pangkalan data. Pangkalan data jenis ini juga didukung oleh query yang bersifat fuzzy untuk memperoleh informasi. 2. Fuzzy Query Database Fuzzy query database adalah membuat suatu fuzzy query terhadap pangkalan data klasik. Artinya, pengguna membuat suatu aplikasi yang dapat menangani suatu query dimana dalam query tersebut terdapat variabel-variabel yang bernilai fuzzy atau dengan kata lain query tersebut memiliki variabel-variabel linguistik. Sedangkan data pada pangkalan data yang akan diakses merupakan data yang bersifat pasti (crisp).
Pangkalan data yang diusulkan oleh Tahani adalah bentuk dari Fuzzy Query Database. Pangkalan data Tahani masih tetap menggunakan relasi standar, hanya saja model ini menggunakan teori himpunan fuzzy untuk mendapatkan informasi pada query-nya (Kusumadewi, 2003). Tahani mengembangkan sebuah kerangka kerja pada level konseptual tingkat tinggi untuk memproses fuzzy query pada lingkungan pangkalan data konvensional atau non-fuzzy. Tahani merumuskan sebuah arsitektur dan pendekatan formal untuk
Universitas Sumatera Utara
menangani pangkalan data dengan fuzzy query yang sederhana. Bahasa query yang digunakan berdasarkan SQL. Beliau mengusulkan penggunaan terminologi yang mengandung unsur kekaburan pada bahasa alami. (Phang et al, 1997) Program aplikasi pangkalan data fuzzy adalah program untuk melakukan pencarian data dengan metode pencarian linguistik. Program ini merupakan penerapan dari teori tentang pangkalan data fuzzy. Input awal dalam program ini adalah kriteria user, selanjutnya penentuan variabel fuzzy dan penentuan himpunan fuzzy akan digunakan dalam pencarian. Setelah data dimasukkan dan pengguna telah memilih kriteria pencarian pada tabel pencarian linguistik, langkah selanjutnya yaitu menghitung derajat keanggotaan suatu data di setiap himpunan pada suatu variabel berdasarkan fungsi keanggotaan yang telah dipilih sebelumnya. Selajutnya proses fire strength berdasarkan kriteria yang dipilih. Data yang memiliki nilai fire strength tertinggi menunjukkan bahwa data tersebut yang paling mendekati kriteria pencarian. Sebaliknya, data yang memiliki nilai fire strength terkecil menunjukkan bahwa data tersebut semakin menjauhi kriteria pencarian. Hasil yang ditampilkan pada tab pencarian linguistik merupakan data-data yang mendekati kriteria pencarian dengan urutan nilai fire strength terbesar sampai nilai fire strength terkecil yang menunjukkan urutan data yang paling mendekati kriteria pencarian sampai yang paling jauh dari kriteria pencarian (Srikusumadewi dan Purnomo, 2004). Uraian di atas dapat disederhanakan lewat gambar 2.8 berikut,
Universitas Sumatera Utara
Gambar 2.8 Flowchart Pangkalan Perekomendasian Pembelian mobil
Data
Fuzzy
Model
Tahani
pada
Universitas Sumatera Utara