Mengacu pada pendapat Naomi I. Eisenberger (2004) patah hati dapat ... Patah
hati sendiri dapat disebabkan karena kematian, perceraian, putus hubungan,.
BAB II LANDASAN TEORI
2.1 Suasana Hati Berdasarkan APA Dictionary of Psychology (2007:590-591) suasana hati didefinisikan sebagai: “Mood : 1. any short-lived emotional state, usually of low intensity (e.g. a cheerful mood, an irritable mood). 2. a disposition to repond emotionally in particular way that may last for hours, days, or even weeks, perhaps at a low level and without the person knowing what prompted the state. Moods differ from emotions in lacking an object; for example, the emotion of anger can be aroused by an insult, but angry mood may arised when one does not know what one is angry about or what elicited the anger. Disturbances in mood are characteristics of mood disorders. 3. in linguistics, a category of a verb used to identify a clause or sentance as being a statement, questions, commands, expression of wish, and so on.” Suasana hati seseorang dapat berlangsung dalam jangka pendek, beberapa jam, atau beberapa hari. Suasana hati dipengaruhi oleh banyak kejadian tak terduga. Suasana hati juga berbeda dari temperamen atau watak personal. Optimis dan neurotisisme mempengaruhi beberapa tipe dari suasana hati. Pada gangguan jangka panjang, suasana hati dapat mengakibatkan stres atau bahkan depresi. Suasana hati adalah hal yang penting, karena suasana hati dapat menentukan bagaimana menghadapi tantangan. Orang-orang yang suasana hatinya sedang tidak baik biasanya tidak mau melakukan aktivitas. Sebaliknya, orang yang memiliki suasana hati 9
10
yang baik, akan melakukan aktivitas dengan riang, lebih berkonsentrasi dan juga mau berempati pada orang lain. Jika suasana hati positif, seseorang cenderung merasa senang dan bahagia namun tidak berlebih. Perasaan marah, kecewa dan sedih cenderung mempengaruhi dalam suasana hati negatif. Suasana hati berlangsung lama, lebih umum dan lebih dapat meresap. Suasana hati menjalar secara merata dan tidak memperdulikan suasana lingkungan. Suasana hati memiliki banyak keuntungan, yaitu dapat meningkatkan rasa altruisme (membantu orang tanpa mengharapkan pamrih), membantu mengambil keputusan dengan tepat, meningkatkan kreativitas dan meningkatkan kualitas interpersonal. Selain itu susana hati yang baik dapat menghentikan seseorang untuk memikirkan hal-hal yang buruk.
2.2 Patah Hati Mengacu pada pendapat Naomi I. Eisenberger (2004) patah hati dapat dideskripsikan sebagai refleksi dari pengalaman yang menyakitkan. Patah hati adalah pengalaman yang menyakitkan karena kehilangan ikatan sosial yang penting. Patah hati sendiri dapat disebabkan karena kematian, perceraian, putus hubungan, terpisah secara fisik maupun penolakan cinta. Biasanya, patah hati lebih dikaitkan pada pasangan hidup. Namun sebenarnya patah hati dapat terjadi pada berbagai hubungan, seperti kehilangan orang tua atau putusnya hubungan persahabatan. Menurut Carol Bayer (2010:2), gejala orang yang patah hati adalah syok, ketakutan, mengalami kesedihan yang ekstrim, tidak percaya pada orang lain, putus asa, nyeri pada dada, tidak dapat mengontrol emosi, merasa kesepian dan depresi.
11
Patah hati biasanya tidak menimbulkan sakit fisik, namun terdapat sebuah kondisi yang bernama broken heart syndrome. Broken heart Syndrome dapat mendorong otak untuk menyalurkan zat-zat kimia ke jaringan jantung yang dapat melemahkan jantung.
2.3 Masalah Keuangan Menurut Nofie Iman (2010:46), masalah keuangan adalah masalah pilihan. Dana yang seseorang miliki begitu terbatas, sementara keinginan yang ada di benaknya bisa begitu banyak. Masalah keuangan tidak hanya melanda suatu hubungan, namun juga dapat mengakibatkan masalah pada diri sendiri. Orang yang mengalami masalah keuangan cenderung mudah stres karena uang yang dimilikinya berkurang atau hingga kekurangan sama sekali. Masalah keuangan dapat memperburuk suasana hati seketika. Uang merupakan hal yang sensitif bagi orang banyak. Jika mengalami masalah keuangan, orang akan berpikir keras sehingga mengakibatkan orang tersebut mudah stres.
2.4 Psikometri Menurut Tenko Raykov (2010:8-9), psikometri adalah disiplin ilmu yang berkaitan dengan penelitian dan berhubungan dengan masalah yang menjalar dan tantangan dari pengukuran perilaku manusia, menggunakan seperangkat metode tertentu yang dikembangkan untuk mengatur secara sistematik atau menyelesaikan masalah tersebut. Psikometri dapat menangani masalah yang berhubungan dengan pengukuran atas aspek-aspek psikologis. Psikometri membuat alat ukur yang bisa dipercaya berlandaskan
12
prisnsip-psinsip psikometri seperti validitas, reliabilitas, tidak bias dan standarisasi. Dalam psikometri, metode statistika berperan penting dalam pengolahan data.
2.5 Research In Motion (RIM) Research In Motion adalah pemimpin global dalam inovasi nirkabel. RIM merevolusi indutri dengan mengenalkan BlackBerry® solution pada tahun 1999. Saat ini, produk dan layanan BlackBerry digunakan oleh jutaan pelanggan di seluruh dunia untuk tetap terhubung dengan orang-orang dan konten yang penting sepanjang hari. RIM mengembangkan perangkat keras, perangkat lunak, dan layanan terpadu yang mendukung beberapa jaringan nirkabel. RIM terkenal karena telah menciptakan smartphone BlackBerry® dan menyediakan solusi yang memungkinkan akses ponsel canggih ke informasi yang perlu direspon dengan cepat melalui email, telepon, pesan teks, Internet, dan berbagai aplikasi lainnya (RIM, 2013).
2.6 Sejarah BlackBerry Menurut Santoso (2011), pada tahun 1997, perangkat BlackBerry merupakan two way pager. Kehadiran dalam bentuk QWERTY membuat BlackBerry menjadi ciri khas pada saat itu. Dalam pager, pelanggan dapat menikmati layanan email dan WAP. Kemudian RIM mengeluarkan seri 850 yang menandai kemunculan BlackBerry. Bentuknya hanya dalam layar monochrome berukuran kecil. Pada tahun 2001, BlackBerry mulai membuat telepon seluler dengan teknologi GSM. BlackBerry juga menerapkan QWERTY keyboard. Selain itu, BlackBerry memakai BlackBerry OS untuk sistem operasinya. Kemudian BlackBerry mulai memunculkan produknya dalam bentuk CDMA.
13
Di tahun 2003, BlackBerry mulai menggunakan teknologi WiFi dan menawarkan akses data melalui jaringan WLAN terbatas untuk menggunakan fitur VoIP. BlackBerry menambahkan fiturnya seperti GPS, komunikasi dua arah dan Bluetooth. BlackBerry memperkenalkan SureType pada tahun 2004. SureType adalah konsep satu tombol yang memuat dua huruf dan ditambah fitur textpredictive. Tombol ini memberikan kebebasan pelanggan untuk memilih jenis tombol yang diinginkannya. Saat ini, BlackBerry terus menambahkan fitur-fitur barunya seperti warna layar yang lebih baik, kamera, slot memori, dan aplikasi BBM. Selain itu, BlackBerry mengganti Track Ball menjadi Track Wheel.
2.7 SQLite Menurut Jay A. Kreibich (2010, p1), SQLite adalah paket perangkat lunak publicdomain yang menyediakan relational database management system, atau RDBMS. Sistem penghubung database digunakan untuk menyimpan catatan user-defined di tabel yang besar. Selain untuk penyimpanan dan manajemen data, mesin database dapat memproses perintah query yang kompleks yang mengkombinasikan data dari beberapa tabel untuk menghasilkan laporan dan ringkasan data. Beberapa fitur yang terdapat pada SQLite: • Serverless SQLite tidak membutuhkan proses server atau sistem terpisah untuk mengoperasikan. SQLite library mengakses penyimpanan file secara langsung.
14
• Zero Configuration Tidak ada server artinya tidak ada pengaturan. Membuat sebuah database SQLite semudah membuka sebuah file. • Cross-Platform Seluruh database berada dalam dalam file cross platform tunggal, tidak membutuhkan administrasi. • Self-Contained Sebuah library tunggal berisi seluruh sistem database, yang terintegrasi langsung ke aplikasi host. • Small Runtime Footprint Membangun database lebih kecil dari kode megabyte dan membutuhkan beberapa megabyte memori. Dengan beberapa penyesuaian, baik ukuran library dan penggunaan memori bisa berkurang secara signifikan. • Transactional Transaksi memungkinkan akses yang aman dari beberapa proses atau rangkaian proses. • Full-Featured SQLite mendukung sebagian besar dari fitur query language yang ditemukan di standard SQL92 (SQL2). • Highly Reliable Tim pengembang SQLite mengambil kode pengujian dan verifikasi dengan sangat serius.
15
2.8 Unified Modeling Language (UML) Pada perkembangan teknik pemrograman berorientasi objek, muncullah sebuah standarisasi bahasa pemodelan untuk membangun perangkat lunak yang dibangun dengan menggunakan teknik pemrograman berorientasi objek yaitu Unified Modeling Language (UML). Ardhian Agung Yulianto et al. (2009:65) menyatakan UML adalah bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML tidak memiliki batasan yang jelas antara aneka ragam konsep dan konstruksi, tapi UML dapat dibagi menjadi beberapa view. View adalah bagian simpel dari konstruksi pemodelan UML yang merepresentasikan aspek dari sebuah sistem. Dalam keterkaitan antara view dan diagram, UML dibagi menjadi sebagai berikut: •
Struktural o Static view – Diagram kelas View yang tidak bergantung pada waktu. o Use case view – Diagram use case View dari segi fungsionalitas sistem. o Implementation view – Diagram komponen View dari segi komponen implementasi sistem. o Deployment view – Diagram deployment View dari segi node tempat komponen disebarkan.
•
Dinamik o State machine view – Diagram status
16
View dari segi status yang dialami sistem berdasarkan objek-objek sistem. o Activity view - Diagram aktivitas View dari segi aktivitas yang dilakukan oleh sistem. o Diagram interaksi – Diagram sekuen dan Diagram kolaborasi . •
Pengelolaan Model o Model-management view – Diagram kelas View dari segi pengelolaan model sistem.
2.9 Interaksi Manusia dan Komputer Menurut Shneiderman (2010), terdapat lima buah faktor manusia terukur yang merupakan fokus dari efektifitas, efisiensi dan kepuasan. Lima faktor tersebut yaitu: 1. Waktu belajar Waktu belajar user menentukan bahwa aplikasi yang dibuat dapat mudah dimengerti, khususnya bagi orang awam. Waktu belajar ini dapat dievaluasi dengan pertanyaan ‘Berapa lama untuk orang-orang tertentu mempelajari bagaimana menggunakan aksi tertentu untuk tugas tertentu?’. 2. Kecepatan aplikasi Suatu aplikasi yang berjalan cepat akan lebih disenangi oleh user karena aplikasi dibutuhkan user untuk mempercepat dan membantu pekerjaannya. Kecepatan tersebut dievaluasi dengan pertanyaan ‘Berapa lama untuk memproses dibandingkan dengan patokan waktu yang diperkirakan?’.
17
3. Nilai error user Waktu untuk membuat dan memperbaiki kesalahan masuk ke dalam kecepatan kinerja, namun penanganan kesalahan adalah suatu komponen penting dari penggunaan antarmuka yang layak studi yang luas. Nilai error user dapat dievaluasi dengan menjawab pertanyaan ini ‘Berapa banyak dan kesalahan apa yang biasa dilakukan untuk suatu tugas?’. 4. Daya ingat Waktu belajar, dan frekuensi penggunaan aplikasi memegang peranan penting dalam menentukan daya ingat user untuk menggunakan aplikasi ini. Semakin sering dan lama user menggunakan aplikasi, semakin cepat pula user memiliki daya ingat akan cara menggunakan aplikasi. Hal ini dievaluasi dengan diberikan pertanyaan ‘Seberapa baik user memelihara pengetahuan mereka setelah satu jam, satu hari, atau satu minggu?’. 5. Kepuasan subjektif ‘Seberapa besar kesukaan user menggunakan aspek yang bervariasi dari antar muka?’ Jawabannya dapat dipastikan dengan wawancara atau survei tertulis yang meliputi skala kepuasan dan ruang untuk berkomentar dengan bebas.
2.10 Artificial Intelligence Menurut Kusumadewi (2003:1), artificial intelligence merupakan salah satu bagian ilmu komputer yang membuat mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia. Menurut Norvig (2010:1-2), definisi dari artificial intelligence dibagi menjadi empat bagian, yaitu sebagai berikut :
18
Tabel 2.1 Pengertian Artificial intelligence Beripikir rasional
Berpikir seperti manusia •
•
Haugeland (1985) : ...mesin
•
yang punya pikiran, dengan
mempelajari bagian mental melalui
indera yang lengkap atau tidak.
model komputasional.
Hellman (1978) : Aktifitas yang
dihubungkan
pemikiran
manusia
pengambilan
•
(1992)
mempelajari
seperti
memungkinkan
keputusan,
Rich and Knight (1991) : Ilmu
:
Ilmu
yang
perhitungan
yang
untuk
melihat,
mempertimbangkan dan melakukan sesuatu.
Berperilaku seperti manusia
Berperilaku rasional •
Poole et at (1998) : Kecerdasan
yang mempelajari bagaimana
komputasional adalah ilmu tentang
membuat komputer melakukan
merancang agen pintar.
sesuatu yang masih lebih baik dilakukan oleh manusia. •
Winston
dengan
penyelesaian masalah, belajar.
•
Charniak (1985) : Ilmu yang
Kurzweil membuat fungsi
(1990) mesin yang
:
•
Nilsson
(1998)
intelligence Seni
:
memperhatikan
perilaku cerdas di artefak.
melakukan
membutuhkan
kecerdasan manusia. Sumber : Norvig (2010:2).
Artificial
19
Menurut Negnevitsky (2005:2), tujuan dari artificial intelligence sebagai ilmu adalah untuk membuat mesin melakukan sesuatu yang membutuhkan kepintaran dari seorang manusia. Menurut Konar (2005:5), sistem yang memiliki perhitungan cerdas memiliki karakteristik sebagai berikut: • Kemampuan untuk beradaptasi dengan perhitungan yaitu kemampuan untuk merubah parameternya mengikuti panduan dan bergantung pada perubahan sementara dari input dan output-nya. • Ada toleransi kesalahan. • Memiliki kecepatan perhitungan yang tinggi. • Memiliki tingkat kesalahan yang rendah terhadap sumber informasi yang memiliki banyak gangguan. Menurut Kusumadewi (2003:7), artificial intelligence memiliki ruang lingkup didasarkan pada output yang diberikan, antara lain : a. Sistem Pakar (Expert systems). Disini komputer digunakan sebagai sarana penyimpanan
pengetahuan
para
pakar.
Sehingga
komputer
dapat
memanfaatkan pengetahuan tersebut untuk menyelesaikan masalah sesuai dengan kemampuan para pakar. b. Pengolahan Bahasa Alami (Natural Language Processing). Disini komputer diberikan kemampuan untuk mengolah bahasa alami manusia, agar diharapkan user dapat berkomunikasi dengan komputer dengan bahasa sehari-hari.
20
c. Pengenalan Ucapan (Speech Recognition). Disini komputer diharapkan dapat mengenal ucapan yang dikeluarkan oleh user, yang selanjutnya diolah
untuk
mempermudah
komunikasi
user
dengan
komputer
menggunakan suara. d. Robotika dan Sistem Sensor (Robotics & Sensory Systems). Disini komputer diharapkan dapat melakukan sesuatu seperti manusia, dibantu dengan dukungan perangkat keras sebagai agen dan sensor sebagai indera. e. Computer
Vision.
Disini
komputer
mencoba
untuk
dapat
menginterpretasikan gambar atau objek-objek yang tampak melalui komputer. f. Intelligent Computer-aided Instruction. Disini komputer digunakan untuk menjadi pelatih dan pengajar. g. Game Playing. Keuntungan dari artificial intelligence dibandingkan dengan kecerdasan alami, antara lain : a. Artificial intelligence bersifat permanen. Karena manusia memiliki sifat pelupa, kecerdasan alami dapat saja berubah. b. Artificial intelligence lebih mudah diduplikasi dan disebarkan. c. Artificial intelligence lebih murah dibanding dengan kecerdasan alami. d. Artificial intelligence bersifat konsisten. e. Artificial intelligence dapat didokumentasikan. f. Artificial intelligence dapat mengerjakan pekerjaan lebih cepat dibanding dengan kecerdasan alami.
21
g. Artificial intelligence dapat mengerjakan pekerjaan lebih baik dibanding dengan kecerdasan alami. Keuntungan dari kecerdasan alami dibandingkan dengan artificial intelligence, antara lain : a. Kreatif. Kemampuan untuk menambah ataupun memenuhi pengetahuan itu sangat melekat pada jiwa manusia. Pada artificial intelligence, untuk menambah pengetahuan harus dilakukan melalui sistem yang dibangun. b. Kecerdasan alami memungkinkan orang untuk menggunakan pengalaman secara langsung. Sedangkan pada artificial intelligence harus bekerja dengan masukkan-masukkan simbolik. c. Pemikiran manusia dapat digunakan secara luas, sedangkan artificial intelligence sangat terbatas.
2.11 Expert systems 2.11.1 Definisi Expert systems Expert systems adalah sebuah program komputer yang mampu melakukan sesuatu pada tingkat para ahli dalam area masalah yang sempit (Negnevitsky, 2005:45). Menurut Siler (2005:13), expert systems adalah program komputer yang dirancang untuk membawa kemampuan para ahli untuk menyelesaikan masalah tertentu. Expert systems yang umum adalah expert systems berbasis aturan (rulebased) dan jaringan syaraf (neural network).
22
Menurut Kusumadewi (2003:109), expert systems adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Expert systems adalah sebuah program yang menggunakan prosedur pengetahuan dan interferensi untuk memecahkan masalah yang cukup sulit, yang biasanya membutuhkan interferensi dari pakar untuk menemukan solusinya (Vizureanu, 2011). Singkatnya, expert systems adalah sebuah program komputer yang menggunakan kepintaran para pakar sebagai basis pengetahuan untuk memecahkan suatu masalah spesifik yang biasanya membutuhkan interferensi dari pakar untuk memecahkan solusinya. 2.11.2 Kelebihan dan Kekurangan Expert systems Dalam bukunya, Kusumadewi (2003:110) menjabarkan kelebihan dari expert systems adalah sebagai berikut : • Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli. • Bisa melakukan proses secara berulang secara otomatis. • Menyimpan pengetahuan dan keahlian para pakar. • Meningkatkan output dan produktivitas. • Meningkatkan kualitas. • Mampu mengambil dan melestarikan keahlian para pakar (terutama yang termasuk keahlian langka). • Mampu beroperasi dalam lingkungan yang berbahaya. • Memiliki kemampuan untuk mengakses pengetahuan.
23
• Memiliki reliabilitas. • Meningkatkan kapabilitas sistem komputer. • Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian. • Sebagai media pelengkap dalam pelatihan. • Meningkatkan kapabilitas dalam penyelesaian masalah. • Menghemat waktu dalam pengambilan keputusan. Adapun kekurangan dari expert systems adalah sebagai berikut: • Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal. • Sulit dikembangkan terkait dengan ketersediaan pakar di bidangnya. • Tidak 100% bernilai benar. Berikut ini adalah tabel yang menunjukkan perbedaan-perbedaan utama antara expert systems dengan sistem konvensional: Tabel 2.2 Perbandingan Expert Systems dan Sistem Konvensional Expert systems
Sistem Konvensional
Basis pengetahuan merupakan bagian Informasi dan pemrosesannya biasanya terpisah dari mekanisme inferensi.
menjadi satu dengan programnya.
Penjelasan adalah bagian terpenting Biasanya tidak bisa menjelaskan mengapa dari expert systems.
suatu input data itu dibutuhkan, atau bagaimana output itu diperoleh.
Pengubahan aturan dapat dilakukan Pengubahan program cukup sulit dan dengan mudah.
membosankan.
Sistem dapat beroperasi hanya dengan Sistem hanya akan beroperasi jika sistem
24
beberapa aturan.
tersebut sudah lengkap.
Eksekusi dilakukan pada keseluruhan Eksekusi
dilakukan
langkah
basis pengetahuan.
langkah.
Menggunakan pengetahuan.
Menggunakan data.
Tujuan utamanya adalah efektivitas.
Tujuan utamanya adalah efisiensi.
demi
Sumber: Kusumadewi (2003:112). 2.11.3 Konsep Dasar Expert systems Konsep dasar expert systems mengandung : pengetahuan yang didapat, pakar, pengalihan pengetahuan, proses inferensi, aturan dan kemampuan untuk menjelaskan (Kusumadewi:2003:111). Dalam hal ini, pengetahuan yang didapat merupakan keahlian pakar dari suatu masalah, yang mana dialihkan dalam bentuk basis pengetahuan yang dapat digunakan dalam perangkat lunak untuk berperan sebagai subtitusi dari pakar. Akuisisi
pengetahuan
adalah
langkah
paling
penting
ketika
mengembangkan expert systems, yaitu untuk mengambil keahlian dari pakar. Pengetahuan selanjutnya disimpan dalam bentuk laporan atau database pada sistem yang biasa disebut dengan basis pengetahuan. Untuk membuat basis pengetahuan terdapat 5 metode utama, yaitu: 1. Rote learning : proses belajar dengan pemrograman eksplisit tanpa adanya interaksi dengan sistem. 2. Belajar dengan diberi tahu (learning by being told) : metode ini berdasarkan pada interaksi antara pakar dan sistem. Dimana pakar
25
menunjukkan
pengetahuan
penting,
dan
sistem
akan
mengagregasikannya dengan pengetahuan yang diketahui sebelumnya. 3. Belajar dari analogi (learning by analogy) : ini adalah kemampuan untuk mengubah pengetahuan yang dimiliki dengan suatu cara sehingga bisa digunakan untuk menyelesaikan permasalahan lain yang mirip. 4. Belajar dari contoh (learning by examples) : metode ini berdasarkan dari pengumpulan informasi dari contoh yang diberikan dan klasifikasi pada kelas yang tepat. Dimana contoh-contoh diberikan oleh guru. 5. Belajar dari observasi (learning by observation) : sama seperti belajar dari contoh, namun tidak menggunakan guru sebagai sumber contohnya. Biasa digunakan untuk mengenali pola dan mengelompokkan masalah analisis. Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan (dokumentasi), menyusun kembali pengetahuan jika dipandang perlu, memecah aturan-aturan jika dibutuhkan, dan menentukan relevan tidaknya keahlian mereka. Keahlian inilah yang diambil dan dijadikan basis pengetahuan dari expert systems. Proses
pengalihan
pengetahuan
terdiri
dari
4
aktivitas
menurut
Kusumadewi (2003:111), yaitu: 1. Akuisisi pengetahuan : yaitu pengumpulan pengetahuan dari para ahli atau sumber-sumber lainnya. 2. Representasi pengetahuan : yaitu merepresentasikan pengetahuan pakar ke dalam komputer, biasanya dapat berbentuk frame, jaringan semantik, tabel keputusan, pohon keputusan, sistem dan logika produksi.
26
3. Inferensi pengetahuan : yaitu pengolahan data dan pengetahuan untuk menentukan keputusan atau penalaran (reasoning). 4. Pengalihan pengetahuan ke user : yaitu pemindahan pengetahuan hasil pengolahan data ke user. 2.11.4 Model Expert systems Berikut adalah model cara kerja expert systems :
Gambar 2.1 Model Expert Systems (Sumber : http://socs.binus.ac.id/2012/06/06/mengenal-kecerdasan-buatan-kini-dan-akan-datang/). 1. User Interface Bagian dari expert systems yang menerjemahkan input yang dimasukkan oleh user, berupa query, agar bisa diolah oleh inference engine dan menjelaskan output, berupa saran pakar, dari hasil proses inferensi data. 2. Inference Engine (Shell) Bagian dari expert systems yang digunakan untuk membandingkan data yang diberikan dengan basis pengetahuan. Perbandingan tersebut diproses dan ditarik kesimpulan untuk membuat keputusan berupa saran.
27
3. Knowledge Base Bagian dari expert systems yang menyimpan data-data dalam bentuk aturan yang didapat dari pengetahuan para ahli. Basis pengetahuan ini digunakan sebagai subtitusi para pakar. 2.11.5 Tujuan Expert systems Tujuan dari expert systems adalah untuk menyimpan dan merepresentasikan pengetahuan dari ahli di dalam cara yang bisa dilihat untuk mengembalikan masukan dan keputusan seperti layaknya seorang pakar kepada orang lain yang bukan seorang pakar. Expert systems biasanya dibangun untuk menyelesaikan masalah yang kompleks, namun spesifik atau memiliki domain permasalahan yang sempit (Kusumadewi, 2003:124). Expert systems bertujuan untuk membantu orang awam yang bukan pakar menyelesaikan masalah spesifik yang memerlukan kepintaran para pakar dengan memanfaatkan kepintaran para pakar yang tersimpan dalam bentuk basis pengetahuan. 2.11.6 Karakteristik Expert systems Karakteristik utama dari expert systems adalah adanya kerjasama basis pengetahuan bersama dengan algoritma pencarian yang tepat. Basis pengetahuan sering kali sangat besar, sehingga cara untuk merepresentasikan pengetahuan sangat penting. Basis pengetahuan dari sistem harus terpisah dari program, dan harus stabil. Cara merepresentasikan pengetahuan yang paling sering digunakan adalah dengan banyaknya aturan produksi (Vizureanu, 2011). Biasanya sebagian besar expert systems komersial dibuat dalam bentuk sistem berbasis aturan (rule-based systems), yang mana pengetahuan disimpan
28
dalam bentuk aturan-aturan yang berbentuk IF-THEN. Fitur-fitur yang harus dimiliki oleh expert systems adalah kemampuan untuk menalar dan untuk merekomendasikan. Kemampuan menalar memungkinkan expert systems untuk memeriksa kembali hasilnya dan menjelaskan keputusannya (Kusumadewi, 2003:112). Expert systems pada umumnya menggunakan sistem berbasis aturan untuk merepresentasikan kepintaran para pakar. Expert systems juga harus dapat menerjemahkan masukkan dan keluaran daripada aturan-aturan yang digunakan untuk mengolah data. Expert systems dibangun untuk mengerjakan sesuatu pada tingkat keahlian manusia dengan domain yang sempit dan khusus. Karakteristik lain yang penting adalah performanya yang berkualitas tinggi. Para ahli menggunakan pengalaman mereka dan pengertian akan masalah untuk menemukan jalan pintas untuk menemukan solusinya. Dimana expert systems menggunakan metode pencarian heuristik, proses pencarian di sepanjang jalur yang memiliki kemungkinan sukses paling besar dan mengesampingkan usaha yang kurang efisien. Expert systems menggunakan pengolahan simbolik ketika memecahkan masalah. Simbol-simbol digunakan untuk merepresentasikan pengetahuan yang berbagai macam seperti fakta, konsep, dan aturan. Tidak seperti program konvensional yang ditulis untuk memproses data numerik, expert systems dibangun untuk memproses pengetahuan dan dapat dengan mudah menghadapi data yang banyak (Negnevitsky, 2005:34).
29
2.12 Fuzzy Logic 2.12.1
Definisi Fuzzy Logic Fuzzy logic adalah suatu cara yang tepat untuk memetakan suatu ruang
input ke ruang output (Kusumadewi, 2003:153). Fuzzy logic dapat mengolah nilai yang tidak pasti berupa batasan, seperti “sangat”, “sedikit”, “kurang lebih”. Manusia dapat dengan mudah mengartikan kalimat “Saya pergi sebentar saja”, mungkin sebentar itu empat menit atau lima menit. Namun lain halnya dengan komputer, yang hanya menerima masukkan berupa bilangan crisp, seperti “Saya pergi 5 menit saja”. Komputer tidak mengerti nilai asli dari kata “sebentar”. Dengan fuzzy logic, komputer dapat mengolah ketidakpastian tersebut, sehingga dapat digunakan untuk memutuskan sesuatu yang membutuhkan kepintaran manusia dalam penalaran. Fuzzy logic pertama kali diperkenalkan oleh Jan Lukasiewicz pada tahun 1920an sebagai teori kemungkinan. Logika kemungkinan ini memperluas jangkauan dari nilai kebenaran untuk semua bilangan riil pada interval antara 0 dan 1. Selanjutnya diteliti lebih lanjut oleh Max Black pada tahun 1930an dalam penelitiannya tentang ketidakjelasan (vagueness): sebuah latihan pada analisis logis. Pada tahun 1965, Professor dan kepala departemen teknik elektrik di Universitas
California
di
Berkeley,
Lotfi
Zadeh,
menemukan
kembali,
mengidentifikasi dan mengeksplorasi, dan mempromosikan dan berjuang untuk fuzzy logic. Professor Zadeh memperluas ruang kerja teori kemungkinan menjadi sistem logika matematika formal, dan konsep baru untuk mengaplikasikan istilah bahasa alami pada penelitiannya yaitu ‘Fuzzy sets’. Logika baru ini dinamakan fuzzy logic. Fuzzy logic banyak digunakan karena fuzzy logic mirip dengan cara
30
berpikir manusia. Sistem fuzzy logic dapat merepresentasikan pengetahuan manusia dalam bentuk matematis dengan menyerupai cara berpikir manusia (Negnevitsky, 2005:89). Fuzzy logic adalah suatu logika yang merepresentasikan cara berpikir manusia dalam bentuk matematis yang dapat mengolah ketidakpastian dan variabel-variabel linguistik. 2.12.2
Kelebihan dan Kekurangan Fuzzy logic Fuzzy
logic
memiliki
banyak
kelebihan,
Menurut
Kusumadewi
(2003:154) kelebihannya yaitu dapat mengontrol sistem yang kompleks, non-linier, dan sistem yang sulit direpresentasikan secara matematis. Berikut beberapa alasan menggunakan fuzzy logic: 1. Konsep fuzzy logic mudah dimengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti. 2. Fuzzy logic sangat fleksibel. 3. Fuzzy logic memiliki toleransi terhadap data-data yang tidak tepat. 4. Fuzzy logic mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks. 5. Fuzzy logic dapat membangun dan mengaplikasikan pengalamanpengalaman para pakar secara langsung tanpa harus melalui pelatihan. 6. Fuzzy logic dapat bekerjasama dengan teknik-teknik kendali secara konvensional. 7. Fuzzy logic didasarkan pada bahasa alami. Adapun kekurangan fuzzy logic menurut Akerkar (2010:150) adalah:
31
1. Fuzzy logic tidak memiliki kemampuan untuk belajar sebaik seperti halnya machine learning, dan memori dengan tipe neural network dan pengenal pola. Maka dari itu, sistem hibrida (misal neurofuzzy) menjadi lebih populer untuk aplikasi tertentu. 2. Verifikasi dan validasi sistem fuzzy berbasis pengetahuan biasanya membutuhkan pengujian ekstensif dengan hardware secara berulang. 3. Menentukan aturan fuzzy dan fungsi keanggotaan adalah tugas yang sulit. Seseorang tidak dapat memprediksi berapa banyak fungsi keanggotaan yang diperlukan, bahkan setelah dilakukan pengujian yang luas. 4. Stabilitas merupakan perhatian penting bagi fuzzy control. 2.12.3
Aplikasi Fuzzy Logic Teori ini banyak digunakan di berbagai bidang seperti bidang teknologi,
bidang industri, bidang bisnis, bidang manajemen, bidang pertanian, bidang transportasi, maupun bidang medis. Dalam bukunya, Kusumadewi (2003:155) menggambarkan contoh aplikasi fuzzy logic, antara lain : •
Pada bidang industri, fuzzy logic digunakan untuk menghasilkan barang dengan cara membuat robot produksi.
•
Di bidang bisnis, fuzzy logic digunakan untuk memperkirakan naik turunnya harga saham di pasar, atau memperkirakan keuntungan penjualan selanjutnya.
•
Sedangkan pada bidang manajemen fuzzy logic juga dimanfaatkan untuk sistem penggajian karyawan. Dengan adanya sistem, maka
32
karyawan dapat menerima gaji yang sesuai dengan yang karyawan tersebut kerjakan karena sistem menggunakan mesin. •
Dalam lingkungan sehari-hari, fuzzy logic juga banyak ditemukan pada mesin cuci dan pemanas ruangan.
•
Fuzzy logic juga telah masuk dalam bidang pertanian yang digunakan untuk meramal cuaca sebelum para petani mulai menanam. Sehingga petani tahu kapan harus memulai menanam agar mendapat hasil yang maksimal.
•
Pembuatan kereta api telah menggunakan fuzzy logic untuk memudahkan masinis menjalankan keretanya, hal ini sangat membantu bidang transportasi.
•
Fuzzy logic digunakan untuk menganalisa penyakit yang diderita pasien. Analisa dilakukan dengan gejala-gejala yang diderita oleh pasien, fuzzy yang telah dilatih dapat mendeteksi penyakit dengan lebih mudah, cepat dan akurat dibandingkan dengan manusia yang masih terdapat kesalahan.
2.12.4
Konsep Dasar Fuzzy Logic Seperti logika klasik, fuzzy logic berkaitan dengan kebenaran proposisi.
Namun, proposisi di dunia nyata sering hanya sebagian benar. Selain itu, sering digunakan istilah-istilah yang tidak didefinisikan secara jelas. Contohnya, sulit untuk menggambarkan kebenaran “John sudah tua” bernilai benar atau salah jika John berumur 60 tahun. Dalam beberapa hal, John pada 60 tahun sudah cukup tua untuk memenuhi syarat untuk mendapat keuntungan warga senior di berbagai segi,
33
tetapi dalam hal lain John tidak cukup tua karena dia tidak memenuhi syarat jaminan sosial. Jadi diperlukan nilai kebenaran dari “John sudah tua” untuk mendapat nilai antara [0,1], tidak hanya 0 atau 1 (Siler, 2005:36-37).
Gambar 2.2 (a) Konsep logika Boolean, hanya terdiri 2 nilai dari 0 dan 1(b) konsep fuzzy logic terdiri dari banyak nilai (Sumber : Negnevitsky, 2005:89). Tidak seperti logika Boolean yang memiliki 2 nilai, fuzzy logic terdiri dari banyak nilai. Fuzzy logic menangani derajat keanggotaan dan derajat kebenaran. Fuzzy logic menggunakan nilai berkelanjutan antara 0 (sepenuhnya salah) dan 1 (sepenuhnya benar). Tidak hanya hitam dan putih, fuzzy logic mencakup spektrum warna, menandakan bahwa elemen-elemen bisa sebagian benar dan sebagian salah pada waktu yang sama (Negnevitsky, 2005:89). Nilai keabuan pada fuzzy logic menunjukkan seberapa besar suatu elemen masuk dalam suatu kelompok. Dimana dalam kehidupan sehari-hari, pembagian elemen-elemen tertentu tidak dapat dinyatakan secara tegas, namun elemen satu dengan yang lain dapat berbagi kelompok. 2.12.5
Himpunan Fuzzy Himpunan
penggambaran
fuzzy
adalah
pengetahuan
kumpulan
berdasarkan
prinsip
derajat
matematik
keanggotaan
sebagai daripada
menggunakan derajat crisp dari logika biner klasik (Negnevitsky, 2005:90).
34
Menurut Ross (2010:34), sebuah himpunan fuzzy adalah sebuah himpunan yang mengandung elemen-elemen yang mempunyai derajat keanggotaan yang bervariasi dalam himpunan. Ini berlawanan dengan himpunan klasik karena anggota dari sebuah himpunan klasik tidak mungkin menjadi anggota kecuali memiliki derajat keanggotaan penuh dalam himpunan. Karena elemen-elemen di sebuah himpunan fuzzy tidak perlu lengkap, maka elemen-elemen tersebut juga bisa masuk menjadi anggota himpunan fuzzy yang lain pada semesta yang sama. Dalam himpunan konvensional, sebuah elemen x akan masuk dalam himpunan A jika memiliki nilai keanggotaan 1, dan tidak masuk dalam himpunan A jika memiliki nilai keanggotaan 0 (Konar, 2005:39). Himpunan konvensional dapat dituliskan dalam bentuk matematis, sebagai berikut (Negnevitsky, 2005:91):
Tall
Gambar 2.3 Himpunan Konvensional (Sumber : Negnevitsky, 2005, p91). Contoh klasik dari teori himpunan fuzzy adalah ‘orang tinggi’. Elemenelemen dari himpunan ‘orang tinggi’ adalah semuanya manusia, tetapi derajat
35
keanggotaannya bergantung pada tinggi orang tersebut. Sebagai contoh, Mark memiliki tinggi 205cm dan memiliki derajat 1, dan Peter dengan tinggi 152cm mendapat derajat 0. Semua orang yang memiliki tinggi menengah punya derajat tengah. Keduanya sebagian tinggi. Jelas saja, setiap orang bisa mempunyai pandangan berbeda untuk menentukan seseorang sebagai tinggi. Jika ditanya ‘apakah orang itu tinggi?’ dan diberikan batasan 180cm. ‘Orang tinggi’ berada di atas 180cm dan ‘orang tidak tinggi’ berada di bawah 180cm. Jika ditanya ‘seberapa tinggi orang itu?’, jawabannya adalah bagian keanggotaan dalam himpunan fuzzy, contoh Tom 0,82 ‘tinggi’. Pada gambar 2.3 di atas, jika David memiliki tinggi 179cm, maka David akan langsung menjadi ‘orang tidak tinggi’. Namun, jika David memiliki tinggi 180cm, maka David akan menjadi ‘orang tinggi’. Himpunan fuzzy adalah himpunan yang memiliki batas fuzzy. Ide dasar dari teori himpunan fuzzy adalah bahwa sebuah elemen termasuk dalam sebuah himpunan fuzzy dengan derajat keanggotaan tertentu, dimana tidak hanya bernilai benar atau salah (0 atau 1), melainkan bisa saja sebagian benar atau sebagian salah untuk derajat tertentu. Derajat ini biasanya diambil dari nilai riil dalam interval [0,1]. Derajat keanggotaan fuzzy tersebut dapat dinotasikan sebagai berikut (Negnevitsky, 2005:92):
36
Tall
Gambar 2.4 Himpunan Fuzzy (Sumber : Negnevitsky:2005, p91). Pada gambar 2.4 David yang memiliki tinggi 179cm, tidak dapat dikatakan tidak termasuk dalam himpunan ‘orang tidak tinggi’. Namun orang tersebut memiliki nilai 0,78 ‘tinggi’. Artinya orang tersebut masuk dalam himpunan ‘tinggi’ dengan derajat keanggotaan 0,78 (Negnevitsky,2005:90). 2.12.6
Fungsi Keanggotaan Tingkat keanggotaan
memetakan objek atau atributnya (x) ke
bilangan riil positif pada interval [0,1]. Karena karakteristik pemetaannya seperti sebuah fungsi, maka disebut sebagai fungsi keanggotaan. Mengacu pada Konar (2005:41) definisi formal fungsi keanggotaan adalah “Sebuah fungsi keanggotaan
dikarakteristikan dengan pemetaan
berikut:
Dimana x adalah sebuah bilangan riil yang mendeskripsikan sebuah objek atau atributnya dan X adalah semesta pembicaraan dan A adalah himpunan bagian dari X.”
37
Contohnya : Pertimbangan masalah untuk mendefinisikan ‘lambat’, ‘sedang’, dan ‘cepat’ dengan fungsi keanggotaan. Semakin dekat kecepatan sebuah benda ke 0, maka semakin besar keanggotaannya menjadi ‘lambat’ .
Gambar 2.5 Fungsi keanggotaan dari variabel linguistik kecepatan (Sumber : Siler, 2005:43). Berdasarkan Ross (2010), fungsi keanggotaan adalah pemetaan sebuah elemen x pada semesta nilai keanggotaan menggunakan sebuah bentuk fungsi teoritis. Beberapa fungsi keanggotaan fuzzy menurut Kusumadewi (2003:160-165) adalah sebagai berikut: a. Representasi Linear Pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Terdapat 2 bentuk, yaitu representasi linear naik dan turun. Pada kurva representasi linear naik di atas, himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan [0] dan bergerak ke kanan menuju domain dengan derajat keanggotaan yang lebih tinggi.
38
Fungsi keanggotaannya adalah:
Pada kurva representasi linear turun di atas, himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan [1] dan bergerak ke kanan menuju domain dengan derajat keanggotaan yang lebih rendah. Fungsi keanggotaannya adalah:
b. Representasi Kurva Segitiga Representasi kurva segitiga merupakan gabungan antara 2 garis (linear). Fungsi keanggotaannya adalah:
c. Representasi Kurva Trapesium Representasi kurva trapesium menyerupai bentuk segitiga, namun memiliki beberapa titik dengan derajat keanggotaanya 1. Fungsi keanggotaannya adalah:
39
d. Representasi Kurva Bentuk Bahu Daerah yang terletak pada sisi kanan dan kiri yang tidak mengalami perubahan, yang digunakan untuk mengakhiri variabel suatu daerah fuzzy. Pada bahu kiri kurva bergerak dari benar ke salah, dan pada bahu kanan kurva bergerak dari salah ke benar. 2.12.7
Operasi Himpunan Fuzzy Mengacu pada Kusumadewi (2003:175-176), himpunan fuzzy memiliki 3
operasi fuzzy dasar yang diciptakan oleh Zadeh, yaitu : a. Operator AND (Intersection) Nilai dari hasil interseksi dari himpunan A dan B adalah dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan A dan B.
b. Operator OR (Union) Nilai dari hasil penggabungan dari himpunan A dan B adalah dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan A dan B.
c. Operator NOT (Complement) Nilai dari hasil komplemen dari himpunan A adalah dengan mengurangkan nilai keanggotaan elemen pada himpunan A dari 1.
40
2.12.8
Aturan Fuzzy Aturan fuzzy adalah sebuah pernyataan berkondisi dalam bentuk: IF x is A
THEN
y is B
Dimana x dan y adalah variabel linguistik, dan A dan B adalah nilai linguistik yang ditentukan oleh himpunan-himpunan fuzzy pada semesta pembicaraan X dan Y berurutan (Negnevitsky, 2005:103). Contoh aturan logika klasik : IF room_temperature > 28 THEN AC_temperature is cold Contoh aturan fuzzy logic : IF room_temperature is hot THEN AC_temperature is cold Alih-alih menggunakan nilai pasti, fuzzy logic menggunakan nilai linguistik sebagai input. 2.12.9
Relasi Implikasi Fuzzy Menurut Kusumadewi (2003:179-180), secara umum terdapat 2 fungsi
implikasi yang dapat digunakan, yaitu: a. Min (minimum) Fungsi ini akan memotong output himpunan fuzzy.
41
Gambar 2.6 Fungsi Implikasi Min (Sumber ; Kusumadewi, 2003:180). b. Dot (product) Fungsi ini akan menskala output himpunan fuzzy.
Gambar 2.7 Fungsi implikasi dot (Sumber: Kusumadewi, 2003:180). Penalaran pada sistem berbasis aturan, jika anteseden bernilai benar, maka konsekuen juga bernilai benar. Pada sistem fuzzy, dimana anteseden adalah pernyataan fuzzy. Jika antesenden bernilai benar pada beberapa derajat keanggotaan, maka konsekuennya juga bernilai benar pada derajat yang sama (Negnevitsky, 2005:104). Penalaran ini disebut dengan penalaran monoton. Mengacu pada Kusumadewi (2003:177), penalaran monoton ini sudah jarang digunakan, dimana nilai output dapat diestimasi secara langsung berdasar pada derajat keanggotaan dari antesendennya.
42
Gambar 2.8 Penalaran monoton dari tinggi badan ke berat badan (Negnevitsky, 2005:105). 2.12.10 Sistem Inferensi Fuzzy Negnevitsky (2005:106) mengatakan, inferensi fuzzy dapat didefinisikan sebagai proses pemetaan dari input yang diberikan ke dalam output, menggunakan teori dari himpunan fuzzy. Sistem inferensi fuzzy adalah kerangka kerja matematis berdasarkan pada konsep teori himpunan fuzzy, aturan fuzzy, dan perhitungan fuzzy. Dimana sistem inferensi fuzzy mengambil input baik crisp ataupun fuzzy, dan diubah menjadi nilai fuzzy untuk dimasukkan kedalam himpunan fuzzy. Setelah himpunan fuzzy didapatkan dilakukan agregasi terhadap aturan yang telah didefinisikan. Hasil dari agregasi aturan tersebut akan diubah nilainya menjadi nilai crisp. 2.12.11 Metode Mamdani Teknik inferensi fuzzy yang paling umum digunakan adalah metode Mamdani. Metode ini lebih sering dikenal dengan nama Metode Max-Min. Pada metode Mamdani, terdapat 4 tahap untuk mendapatkan output, yaitu:
43
1. Fuzzyfication Fuzzyfication adalah langkah pertama dari metode Mamdani, yang bertugas mengambil nilai input berupa nilai crisp, dan menentukan derajat dari input sehingga input dapat dikelompokkan pada himpunan fuzzy yang tepat (Negnevitsky, 2005:107). Menurut Ross (2010:93), fuzzyfication adalah proses membuat bilangan crisp memiliki nilai fuzzy. Pada tahap pertama ini, nilai input yang berupa nilai crisp akan dikonversikan menjadi nilai fuzzy, sehingga dapat dikelompokkan pada himpunan fuzzy tertentu. Tahap ini juga menentukan himpunan fuzzy untuk output. 2. Rule Evaluation Langkah
kedua
adalah
mengambil
nilai
input
yang
telah
difuzzifikasikan dan mengaplikasikan ke dalam antecedents pada aturan-aturan fuzzy lalu diimplikasikan. Fungsi implikasi yang digunakan adalah Min.
3. Rule Aggregation Aggregasi aturan adalah proses dari penggabungan nilai keluaran dari semua aturan. Pada tahap ini, digunakan metode Max, dimana solusi himpunan fuzzy diperoleh dengan cara mengambil nilai maksimum aturan, yang kemudian digunakan untuk memodifikasi daerah fuzzy.
44
4. Defuzzification Langkah
terakhir
dari
proses
inferensi
fuzzy
adalah
untuk
mengkonversi nilai fuzzy hasil dari aggregasi aturan ke dalam sebuah bilangan crisp. Metode yang paling umum digunakan untuk metode inferensi fuzzy Mamdani adalah metode Centroid (Centre of gravity / COG). Solusi crisp pada metode ini diperoleh dengan cara mengambil titik pusat daerah fuzzy. Secara matematis, dapat diekspresikan dalam bentuk : (2.13) atau