1 Jurnal Teknik Informatika, Vol 1 September 2012 SISTEM PAKAR DIAGNOSA AWAL GANGGUAN JIWA DENGAN METODE CERTAINTY FACTOR BERBASIS MOBILE CELLULAR Sri Wahyuni Wita1, Satria Perdana Arifin2, Ibnu Surya2 Jurusan Teknik Informatika, Prodi Komputer, Politeknik Caltex Riau, Pekanbaru 1 [email protected], [email protected], [email protected] Abstrak - Gangguan jiwa adalah perubahan suasana perasaan dan perilaku yang terjadi tanpa alasan yang jelas, dan menyebabkan kendala terhadap diri sendiri atau orang lain. Sementara informasi mengenai diagnosa awal gangguan jiwa tidak begitu banyak ditemui di masyarakat sehingga banyak yang tidak mengerti mengenai penanggulangan gangguan jiwa saat ini. Berdasarkan permasalahan ini, maka penulis membangun sebuah aplikasi sistem pakar yang dapat digunakan oleh masyarakat umum untuk mendeteksi gangguan jiwa secara dini. Adapun metode yang digunakan adalah metode Certainty Factor. Setelah dilakukan analisa dan pengujian sistem ini dapat memberikan pengetahuan serta kemudahan bagi masyarakat untuk mengetahui awal gangguan jiwa dengan cara melakukan konsultasi sehingga dapat mengambil keputusan yang tepat untuk memberi saran pada gangguan jiwa yang diderita. Berdasarkan kuesioner yang disebarkan kepada 5 orang pakar berpendapat bahwa 93,33% pakar mengatakan aplikasi ini mudah digunakan dan membantu user dalam berkonsultasi penyakit neurosis. Sistem ini menggunakan Mobile Cellular dalam menjalankan aplikasinya. Tools yang digunakan dalam sistem ini adalah NetBeans IDE 6.8, Adobe Dreamweaver CS5 dan bahasa pemograman J2ME, PHP dan MYSQL. Kata Kunci : Sistem Pakar, Gangguan Jiwa, Certainty Factor, J2ME, Mobile Cellular. Abstrack - Mental disorders is the change in atmosphere and the feeling and behavior that occurs for no apparent reason, causing obstacles to self or others. While information on the early diagnosis of mental disorder is not so much found in the community so many do not understand about the prevention of mental disorder at this time. Based on these problems, the authors construct an expert system application that can be used by the public for early detection of mental disorders. After analysis and testing of this system can provide the knowledge and facilities for the public to know the beginning of a mental disorder by way of consultation so as to take the right decision to give advice on the mental disorder suffered. Based on questionnaires distributed to five experts argue that 93.33% of experts say the application is easy to use and help users consult diseases in neurosis. The system uses the Mobile Cellular in the running application. Tools are used in this system is NetBeans IDE 6.8, Adobe Dreamweaver CS5 and J2ME programming language, PHP and MYSQL. Keywords: Expert System, Mental Disorders, Certainty Factor, J2ME, Mobile Cellular. Pendahuluan 1.1 Latar Belakang Perkembangan komputer dewasa ini telah mengalami banyak perubahan yang sangat pesat, seiring dengan kebutuhan manusia yang semakin banyak dan kompleks. Sistem Pakar (Expert System) adalah program berbasis pengetahuan yang menyediakan solusi-solusi dengan kualitas pakar untuk problema-problema dalam suatu domain yang spesifik. Sistem pakar merupakan program komputer yang meniru proses pemikiran dan pengetahuan pakar dalam menyelesaikan suatu masalah tertentu. Implementasi sistem pakar banyak digunakan dalam bidang psikologi karena sistem pakar dipandang sebagai cara penyimpanan pengetahuan pakar pada bidang tertentu dalam program komputer sehingga keputusan dapat diberikan dalam melakukan penalaran secara cerdas. Salah satu contoh sisem pakar dibidang kesehatan, adalah sistem pakar diagnosa gangguan kejiwaan. Berdasarkan hal tersebut, pada tugas akhir ini mengangkat sistem pakar untuk mendiagnosa awal gangguan jiwa dengan metode Certainty Factor berbasis mobile cellular. Untuk menggunakan sistem ini, pengguna bisa menggunakannya dimana saja dan harus terkoneksi dengan internet, ini akan membantu mengatasi permasalahan yang ada pada masyarakat seperti masalah biaya dan waktu. Sistem pakar diagnosa gangguan jiwa yang akan dibangun ini bisa meminimalisir keragu-raguan dalam menentukan tingkatan/kategori gangguan yang diderita pasien, sehingga pasien bisa ditangani dengan cepat sesuai tingkat gangguan yang dideritanya. Diagnosa tingkat gangguan kejiwaan dengan menggunakan sistem 2 pakar akan mencatat gejala-gejala dari pasien dan akan mendiagnosa tingkat gangguannya didasarkan pada pengetahuan yang didapat dari seorang pakar (Kusumadewi, 2003). 1.2 Tujuan Adapun tujuan yang ingin dicapai dalam pembuatan proyek akhir ini adalah membangun aplikasi sistem pakar untuk diagnosa awal gangguan jiwa berbasis mobile cellular. 1.3 Rumusan Masalah Dalam pembuatan dan perancangan proyek akhir ini, pembahasan masalahnya antara lain bagaimana membangun aplikasi sistem pakar yang mendiagnosa awal gangguan jiwa dengan metode certainty factor berbasis mobile cellular berdasarkan gejala yang dimasukkan berupa pertanyaan. 1.4 Ruang Lingkup Pada pembuatan proyek akhir ini terdapat beberapa ruang lingkup atau batasan masalah, antara lain sebagai berikut : 1. Penulis akan membatasi permasalahan penyakit yang dimasukkan ke dalam sistem pakar ini hanya berupa penyakit gangguan jiwa neurosis yang terbagi dalam tujuh penyakit, yakni: a. Cemas b. Neurasthenia c. Histeria d. Depresi e. Fobik f. Obsesif-kompulsif g. Somatisasi 2. Sistem ini tidak membahas bagaimana cara penyembuhan dalam mengatasi gangguan kejiwaan, hanya memberikan saran awal berupa langkah-langkah yang sebaiknya dilakukan oleh seseorang jika terindikasi gangguan kejiwaan. 3. Sistem ini dibangun bersifat client server. 4. Sistem ini menggunakan metode Certainty Factor (CF). 5. Sistem ini bersifat dinamis, dimana admin dapat melakukan penambahan, perubahan dan penghapusan data pada gejala, penyakit dan saran. 2. Tinjauan Pustaka 2.1 Sistem Pakar Sistem pakar (expert system) secara umum adalah sistem yang berusaha mangadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Atau dengan kata lain sistem pakar adalah sistem yang didesain dan diimplementasikan dengan bantuan bahasa pemograman tertentu untuk dapat menyelesaikan masalah seperti yang dilakukan para ahli. Diharapkan dengan sistem ini, orang awam dapat menyelesaikan masalah tertentu baik ‘sedikit’ rumit maupun rumit sekalipun ‘tanpa’ bantuan para ahli dalam bidang tersebut. Sedangkan bagi para ahli sistem ini dapat digunakan sebagai asisten yang berpengalaman. Sistem pakar merupakan cabang dari Artificial intelligence (AI) yang cukup tua karena sistem ini telah mulai dikembangkan pada pertengahan tahun 1960. Sistem pakar yang muncul pertama kali adalah General-purpose problema solver (GPS) yang dikembangkan oleh Newl dan Simon. Sampai saat ini sudah banyak sistem pakar yang dibuat, seperti MYCIN, DENDRAL, XCON & XSEL, SOPHIE, Prospector, FOLIO, DELTA, dan sebagainya (Muhammad, 2005). 2.2 Ketidakpastian dengan Teori Certainty Factor (Teori Kepastian) Dalam menghadapi suatu permasalahan sering ditemukan jawaban yang tidak memiliki kepastian penuh. Hasil yang tidak pasti disebabkan oleh dua faktor, yaitu aturan yang tidak pasti dan jawaban pengguna yang tidak pasti atas suatu pertanyaan yang diajukan oleh sistem. Pada akhirnya akan ditemukan banyak kemungkinan diagnosis. 3 Sejumlah teori telah ditemukan untuk menyelesaikan ketidakpastian, termasuk diantaranya probabilitas klasik, probabilitas bayes, teori hartley berdasarkan himpunan klasik, teori shannon berdasakan pada probabilitas, teori Depmster-Shafer, teori fuzzy Zadeh, dan faktor kepastian (certanity factor). Faktor kepastian (Certanity Factor) diperkenalkan oleh Shortliffe Buchanan dalam pembuatan MYCIN. Certanity Factor (CF) merupakan nilai parameter klinis yang diberikan MYCIN untuk menunjukkan besarnya kepercayaan. Certanity Factor (CF) menunjukkan ukuran kepastian terhadap suatu fakta atau aturan. (Kusumadewi, 2003) Rumus : CF[h,e] = MB[h,e]-MD[h,e] (1) [ℎ, ∆ ] = 1 0 [ℎ, ∆ ] = (2) [ℎ, ] + [ℎ, ]. (1 − [ℎ, ]) [ℎ, ∆ ] = 1 0 [ℎ, ∆ ] = (3) [ℎ, ] + [ℎ, ]. (1 − [ℎ, ]) Keterangan: CF = Certainty Factor dalam hipotesis H yang dipengaruhi oleh fakta E MB = Meansure of Believe, merupakan nilai kenaikan dari kepercayaan hipotesis H dipengaruhi oleh fakta E. MD = Meansure of Disbelieve, merupakan nilai kenaikan dari ketidakpercayaan hipotesis H dipengaruhi oleh fakta E. H = Hipotesis (Dugaan) E = Evidence (Peristiwa/fakta) 2.3 Gangguan Jiwa Gangguan jiwa adalah perubahan suasana perasaan dan perilaku yang terjadi tanpa alasan yang jelas, dan menyebabkan kendala terhadap diri sendiri atau orang lain. Pendapat yang berkembang di masyarakat penyakit jiwa identik dengan gila, ini adalah pandangan yang keliru turun menurun. Akan tetapi gangguan jiwa tidak sama dengan sakit jiwa. Menurut laporan dari organisasi kesehatan dunia WHO tahun 2001, sekitar 450 juta jiwa penduduk dunia menderita gangguan kesehatan jiwa (Videbeck, 2008). 2.3.1 Neurosis Neurosis adalah gangguan yang terjadi hanya pada sebagian dari kepribadian, sehingga orang yang mengalaminya masih bisa melakukan pekerjaan-pekerjaan biasa sehari-hari atau masih bisa belajar dan jarang memerlukan perawatan khusus di rumah sakit 2.4 Java 2 Micro Edition (J2ME Java 2 Micro Edition (J2ME) merupakan sebuah kombinasi yang terbentuk antara sekumpulan interface Java yang sering disebut Java API (Application Programming Interface) dengan JVM (Java Virtual Machine) yang didesain khusus untuk alat, yaitu JVM dengan ruang yang terbatas. Kombinasi tersebut kemudian digunakan untuk melakukan pembuatan aplikasi-aplikasi yang dapat berjalan pada mobile device (Rangsang, 2010). 3. Perancangan 3.1 Gambaran Umum Sistem Gambaran system arsitektur aplikasi ini dapat dilihat pada Gambar 1 dibawah ini. Dimana user sebagai pengguna yang akan melakukan konsultasi terhadap sistem, admin sebagai pengolah data yang menginsert, mengupdate dan mendelete suatu data informasi, database sebagai penyimpan seluruh data dan informasi yang telah diolah seorang admin, dan server sebagai penghubung antara admin dan user ke database.c 4 Gambar 1 Arsitektur Sistem Pakar Diagnosa Awal Gangguan Jiwa dengan Metode Certainty Factor Berbasis Mobile Cellular. 3.2 Flowchart Adminc Flowchart ini menunjukan proses yang dilakukan oleh admin. Admin melakukan login terlebih dahulu ke dalam sistem, kemudian admin dapat menambah, merubah, menghapus data kaidah dan saran. Sedangkan untuk gejala dan penyakit admin bisa melakukan penambahan dan perubahan. Gambar 2 Flowchart Admin 3.3 Flowchart User Flowchart ini menunjukan bagaimana user (pengguna) melakukan konsultasi, melihat petunjuk, melihat data dan pembuat terhadap sistem yang telah dibuat. 5 Gambar 3 Flowchart User 3.4 Use Case Diagram Use case diagram digunakan untuk mempresentasikan fungsi yang disediakan oleh sistem. Pada aplikasi ini pengguna dibedakan menjadi 2 yaitu User (pengguna), Admin. (a) User (b) Admin Gambar 4 Use Case Diagram 6 3.5 Sequence diagram admin login Menggambarkan interaksi yang dilakukan oleh actor admin dalam melakukan proses login.(Gambar 5). : Form_Login : Admin : database_Admi n : proses_vali dasi input_ID_Pass word( ) cek_ID_pas sword( ) cek_validas i dis play_login Gambar 5 Sequence Diagram Admin Login 3.6 Sequence diagram admin tambah data gejala. Menggambarkan interaksi yang dilakukan oleh actor admin dalam melakukan proses insert data gejala. (Gambar 6). : A dmin : Form_insert_gejala : pro ses_penyimp anan on_insert_data : ge ja la get_Data( ) set_Data( ) display_confirm_insert Gambar 6 Sequence Diagram Tambah Data Gejala 3.7 Sequence Diagram Admin Ubah Data Gejala Menggambarkan interaksi yang dilakukan oleh actor admin dalam melakukan proses update data gejala (Gambar 7). : Admin : Form_update _gejala : p roses_upd ate : gejala on_form _update get_Data( ) set_Data( ) dis play_confirm_update Gambar 7 Sequence Diagram Ubah Data Gejala 3.8 Sequence diagram user konsultasi Menggambarkan interaksi yang dilakukan oleh user dalam melakukan proses konsultasi (Gambar 8). : User : Form _konsul tasi : p roses_ load_ konsul tasi : ge jala : p roses_ hitun g : pe nyakit : Form _kesim pula n on_form_konsultasi get_Data( ) get_data hitung_nilai( ) get_Data display_data Gambar 8 Sequence Diagram User Konsultasi 7 3.9 Class Diagram Class diagram mendeskripsikan jenis-jenis obyek dalam system. Class diagram juga menunjukkan property dan operasi sebuah Class dan batasan yang terdapat dalam hubungan dengan obyek. Pada aplikasi ini terdapat dua buah class diagram, yaitu class diagram admin dan class diagram user. Berikut adalah perancangan class diagram pada aplikasi ini. (Gambar 9) Form_tambah_gejala proses_penyim panan ID_gejala nama_gejala daftar_pertanayaan Form_Login ID Password database_A dmin Proses_login input_ID_Password() cek_login() konfirmasi_login() get_Data() save() proses_load_konsultasi Form_konsultasi insert_Data() get_Data() ID_adm in Password get_Data() cek_login() Form_Menu proses_validasi get_Data() Form_ubah_gejala set_Data() get_D ata() proses_ubah ID_gejala nama_gejala daftar_pertanyaan cek_ID_passw ord() get_Data() update() update_Data() g ejala ID_gejala nam a_gejala daftar_pertanyaan set_D ata() proses_load_kesimpulan Form_saran tambah_saran Form_tam bah_penyakit Form_ubah_penyakit ID _penyakit nama_penyakit ID_peny akit nama_penyakit insert_data() update_data() Form_kesimpulan get_Data() ID _saran ID _penyakit saran tam pil_form() display_m essage() Form _kaidah tampil_form () display_message() insert() tam bah_kaidah ID_kaidah ID_gejala ID_penyakit nilai_M D nilai_M B insert() proses_hitung hapus_saran proses_saran hapus_kaidah proses_hapus_P get_data() delete() get_data() save() hitung_nilai() get_Data() proses_tambah get_data() save() get_data() delete() get_data() update() database_saran ID_saran ID_penyakit saran update() save_data() v alidasi() proses_kaidah get_data() save() ubah_saran penyakit id_prnyakit nama_penyakit ubah_kaidah ID_kaidah ID_gejala ID_peny akit nilai_M D nilai_M B update() database_kaidah save_data() validasi() Gambar 9 Class Diagram 3.19 Entity Relationship Diagram (ERD) ERD berfungsi untuk menggambarkan hubungan antar tabel yang akan digunakan pada sistem ini. Gambar 10 Entity Relationship Diagram 4. Pengujian dan Analisa 4.1 Pengujian Sistem Dalam pengujian sistem ini terdapat 2 buah sistem yang di lakukan pengujian diantaranya adalah pengujian terhadap aplikasi awal gangguan jiwa dan pengujian terhadap web admin. Pengujian terhadap aplikasi awal gangguan jiwa dilakukan dengan cara melakukan konsultasi dengan menchecklist minimal 3c pertanyaan berdasarkan gejala. Setelah melakukan checklist dari pertanyaan, maka sistem akan menghitung gejala yang di alami berdasarkan metode yang di buat. Pengujian terhadap web admin dilakukan dengan cara melakukan ubah data, hapus data, tambah data. Berikut adalah langkah-langkah yang dilakukan dalam pengujian: 1. Pengujian terhadap aplikasi awal gangguan jiwa. a. Tampilan awal dari aplikasi Awal Gangguan jiwa. (Gambar 11). 8 Gambar 11 Tampilan awal b. Pada tampilan form menu kita bisa memilih konsultasi untuk memulai berkonsultasi (Gambar 12). Gambar 12 Tampilan menu pilihan c. Pada form konsultasi kita harus menjawab pertanyaan dengan cara menchecklist sesuai gejala yang di rasakan (Gambar 13). Gambar 13 Tampilan daftar pertanyaan d. Ketika menekan tombol Pilih, maka akan masuk ke form hasil perhitungan (Gambar 14). Gambar 14 Tampilan hasil perhitungan 2. a. Pengujian terhadap Web Admin. Web admin merupakan sebuah sistem yang bertugas untuk mengolah semua data mengenai awal gangguan jiwa mulai dari input data, update data dan delete data. Untuk halaman login terlihat pada (Gambar 15). 9 Gambar 15 Halaman Login b. Berikut tampilan awal admin setelah login yang terdapat pilihan untuk untuk input dan olah data. Ketika salah satu tombol option input kita klik, terdapat 4(empat) buah pilihan yang merupakan sebuah inputan data (Gambar 16). Gambar 16 Halaman awal admin c. Berikut merupakam tampilan penginputan data gejala yang dilakukan oleh admin. (Gambar 17). Gambar 17 Halaman insert data gejala d. Berikut merupakam tampilan pengolahan data gejala yang dilakukan oleh admin (Gambar 18). Gambar 18 Halaman Pengolahan Data Gejala 4.2 Pengujian Hasil Oleh User (kuisioner) Untuk melihat tanggapan terhadap apliakasi yang dirancang, maka dilakukan survei terhadap 3 orang pakar dan 20 masyarakat. 1. Kuisioner terhadap pakar 10 Tabel 1 Rekapitulasi Kuisioner Nilai Responden Pakar Nilai Rata-rata = ( SB x 5 )+( B x 4 )+( S x 3)+( Br x 2 )+( SBr x 1 ) ( Total responden x 5 ) Gambar 19. Skala Likert Hasil Kuisioner Nilai Responden Pakar 2. Kuisioner terhadap masyarakat Tabel 2 Rekapitulasi Kuisioner Nilai Responden Masyarakat Nilai Rata-rata = ( SB x 5 )+( B x 4 )+( S x 3)+( Br x 2 )+( SBr x 1 ) ( Total responden x 5 ) Gambar 20. Skala Likert Hasil Kuisioner Nilai Responden Masyarakat 11 4.2 Analisa Berdasarkan hasil kuesioner yang disebarkan kepada 3 orang pakar, maka didapatkan analisa bahwa sebesar 93,33% mengatakan sangat puas dalam segi waktu perhitungan pada aplikasi ini, lalu sebesar 80% mengatakan sangat puas aplikasi ini dalam segi basis pengetahuan dalam melakukan diagnosa. Selanjutnya 80% mengatakan sangat puas bahwa aplikasi ini memberikan keakuratan dalam menampilkan yang diderita oleh user. Sebanyak 66,67% responden mengatakan puas dalam menggunakan aplikasi. Lalu sebesar 86,67% mengatakan sangat puas aplikasi ini secara keseluruhan. Kemudian berdasarkan hasil kuisioner yang disebarkan kepada 20 masyarakat, maka didapatkan analisa sebesar 86% mengatakan sangat puas dalam segi interface atau tampilan menu warna background, lalu sebesar 80% mengatakan sangat puas dalam melakukan konsultasi penyakit neurosis. Selanjutnya 83% mengatakan sangat puas karena mempunyai manfaat besar bagi user. Sebanyak 87% mengatakan sangat puas dalam segi interface atau tampilan menu aplikasi. Lalu sebesar 79% mengatakan sangat puas bahwa aplikasi ini dapat memenuhi kebutuhan user dalam berkonsultasi. 5. Penutup 5.1 Kesimpulan Kesimpulan yang dapat diambil dari pengujian dan analisa yang telah dilakukan pada penelitian ini adalah sebagai berikut: 1. Aplikasi ini membantu masyarakat dalam melakukan konsultasi suatu penyakit neurosis. 2. Aplikasi ini dinyatakan user friendly menurut hasil penilaian kuisioner karena hasil kuisioner bernilai 80% untuk kategori dapat memudahkan user dalam melakukan konsultasi penyakit neurosis. 3. Berdasarkan pengujian yang telah dilakukan oleh pakar gangguan jiwa tentang aplikasi awal gangguan jiwa, maka aplikasi ini layak untuk digunakan kepada masyarakat untuk mendiagnosa penyakit neurosis karena 80% keakuratan dalam menampilkan penyakit yang diderita oleh user. 5.2 Saran Untuk pengembangan proyek akhir ini di masa yang akan datang, ada beberapa saran yang perlu diperhatikan, yaitu sebagai berikut : 1. Dapat dilakukan pengembangan terhadap aplikasi awal gangguan jiwa agar dapat melayani konsultasi suatu penyakit dalam skala yang besar. 2. Aplikasi ini masih berbasis J2ME sehingga dapat dikembangkan menjadi aplikasi berbasis android. Daftar Pustaka [1] Kusumadewi, sri. 2003, artificial intelligence (Teknik dan aplikasinya). Yokyakarta: Graha Ilmu. [2] Rangsang, Purnama. Mari Mengenal J2ME. Cetakan Pertama. Jakarta : Prestasi Pustaka Publisher. 2010 [3] Shalahuddin, Muhammad., A.S. Rosa. (2008). Pemrograman J2ME (Belajar Cepat Pemrograman Perangkat Telekomunikasi Mobile). Bandung : Informatika [4] Videbeck, Sheila L. Buku Ajar Keperawatan Jiwa. Cetakan Pertama. Jakarta : Buku Kedokteran. 2008