## SISTEM PAKAR UNTUK MENDIAGNOSA GANGGUAN PADA SISTEM HEPATOBILIARIS BERBASIS ANDROID MOBILE

## Redo Abeputra Sihombing
Informatika, Universitas Indraprasta PGRI redoabe@gmail.com

## Abstrak
Gangguan  pada  sistem  Hepatobiliaris  merupakan  masalah  kesehatan  yang  sering  dijumpai,  bahkan terus berkembang, sehingga untuk mengetahui hasil diagnosis akan sulit. Cara yang lebih baik adalah berkonsultasi bersama pakar atau dokter ahli. Namun ada pula kelemahannya seperti tenaga ahli yang terbatas atau jam kerja yang terbilang pendek. Sistem pakar adalah salah satu ilmu kecerdasan buatan atau biasa di sebut ( artificial intelligence ) yaitu ilmu yang mempelajari serta mengadopsi cara seorang pakar  berpikir  dalam  menyelesaikan  suatu  permasalahan  serta  membuat  suatu  keputusan  maupun simpulan.  Permasalahan  yang  dibahas  adalah  bagaimana  merancang  sistem  yang  dapat  digunakan untuk  menyelesaikan  permasalahan  di  atas.  Maksud  dan  tujuan  penulis  dalam  membuat  sisem  pakar ini  adalah  untuk  membantu  calon  dokter  dalam  mendiagnosa  gangguan  pada  sistem  Hepatobiliaris layaknya  seorang  pakar.  Sistem  pakar  menggunakan  metode Best  First  Search dan  menggunakan teknik Forward Chaining . Di dalam sistem ini dituangkan pengetahuan seorang pakar yang di dapat selama melakukan research di Rumah Sakit Permata Ibu. Sebuah sistem pakar dikembangkan berbasis Android pada sisi client , PHP dan MySQL . Sistem pakar menampilkan gejala-gejala yang dapat dipilih oleh user , dimana gejala itu akan membawa user ke pilihan gejala selanjutnya sehingga mendapatkan simpulan.
Kata Kunci : Sistem Pakar, Hepatobiliaris, Best First Search, Forward Chaning.

## Abstract
Disturbances  in  the  Hepatobiliaris  system  are  health  problems  that  are  often  encountered,  even growing, so to know the diagnosis will be difficult. A better way is to consult an expert or an expert doctor. But there are also weaknesses such as working hours or limited experts. Expert system is one branch of artificial intelligence that learns how to adopt the way an expert thinks in solving a problem and  make  decisions  and  conclusions.  The  problem  discussed  is  how  to  design  a  system  that  can  be used to solve the above problems. The purpose and objective of the author in making this expert sisem is  to  assist  the  prospective  physician  in  diagnosing  disorders  of  the  Hepatobiliaris  system  like  an expert. Expert system using Best First Search method and using Forward Chaining technique. In this system poured knowledge of an expert in the can during research at Permata Ibu Hospital. An expert system developed based on Android on the client side, PHP and MySQL. This expert system displays a selection of symptoms that can be selected by the user, where each choice of symptoms that will lead the user to the next symptom option to get the conclusion.
Key Words : Expert System, Hepatobiliary, Best First Search, Forward Chaning.

## 1. PENDAHULUAN
Gangguan  pada  sistem  Hepatobiliaris (Hati,  Empedu  dan  Pankreas)  merupakan masalah  kesehatan  yang  sering  dijumpai dan  terus  berkembang,  sehingga  untuk mengetahui  hasil  diagnosis  akan  sulit. Akibatnya  tak  jarang  keluhan  -  keluhan  di daerah tersebut ditangani dengan cara yang salah karena kurangnya knowledge
maupun pengalaman.
Pemeriksaan laboratorium bisa jadi alternatif yang dapat dilakukan untuk mendapatkan hasil diagnosis  yang  lebih  baik.  Namun, membutuh  waktu  yang  lama  dan  biaya yang  relatif  mahal  untuk  mengetahui  hasil diagnosisnya,  selain  itu  belum  semua rumah sakit di Indonesia memiliki fasilitas laboratorium  yang  memadai.  Cara  yang lebih  baik  adalah  berkonsultasi  bersama
pakar atau dokter ahli. Namun kelemahannya  seperti  tenaga  ahli  yang terbatas  atau  jam  kerja  yang  terbilang pendek.  Karena  hal  tersebutlah  maka dibutuhkan  suatu  alat  bantu  yang  dapat mendiagnosis gangguan pada sistem Hepatobiliaris (Hati, Empedu dan
Pankreas).
Sistem  pakar  adalah  salah  satu  ilmu kecerdasan  buatan  atau  biasa  di  sebut ( artificial  intelligence )  yaitu  ilmu  yang mempelajari serta mengadopsi cara seorang pakar berpikir dalam
menyelesaikan  suatu  permasalahan  serta membuat suatu keputusan maupun simpulan [1].
Permasalahan  yang  akan  dibahas  adalah bagaimana  merancang  sebuah  sistem  yang dapat digunakan untuk membantu diagnosis  gangguan  atau  penyakit  yang  di alami  pasien  pada  sistem  Hepatobiliaris (Hati,  Empedu  dan  Pankreas)  berdasarkan gejala  yang  dirasakan  pasien,  sehingga user dapat  memberikan  saran  atas  rasa sakit yang dihadapi.

## 2. METODE PENELITIAN
Pada penelitian ini, metode yang digunakan  yaitu  metode waterfall .  Metode waterfall adalah model klasik yang bersifat sistematis,  berurutan  dalam  membangun software [2].  Metode waterfall ini  dimulai analisis, desain, pengodean, pengujian, dan maintenance.

## Gambar 1. Metode Waterfall
Pada  tahap  analisis  membutuhkan  data sebagai  rancangan awal  sebelum membuat desain maupun aplikasi. Teknik pengumpulan  data  pada  tahap  analisis  ini yaitu  menggunakan  teknik  wawancara dimana
disini diajukan beberapa pertanyaan – pertanyaan kepada pakar atau
disini  dokter  ahli  yang  telah  mengerti bagaimana  sistem  hepatobiiaris  bekerja dan gejala –  gejala apa saja  yang biasanya terjadi.  Ditambah  dengan  studi  literatur mengenai  sistem  hepatobiliaris  yaitu  data diambil  dari  buku  –  buku  mengenai penanganan maupun buku besar kedokteran  mengenai  penyakit  maupun gejala  –  gejala  yang  terjadi  pada  sistem hepatobiliaris.  Dilanjutkan  pada  tahap design sistem pakar dirancang menggunaan  perangkat  mobile  (android). Sehingga  pengguna  dapat  dengan  mudah mengakses atau menggunakan aplikasi.
Sistem  pakar  yang  di  rancang  ini  terdiri dari  dua  bagian  pada  sisi  server  yang dibuatkan  dengan  Bahasa  pemrograman PHP  sebagai  mesin  inferensi  ( inference engine ). Knowledge /  basis  pengetahuan disimpan di dalam MySQL database . Lalu Mobile  Phone (Android)  pada  bagian client.  Client  dan  Sever  terhubung  melalui internet kemudian
keduanya
berkomunikasi menggunakan metode request  dan  response  yaitu  dimana client (android)  meminta  data  ke  s erver dan server akan  memberikan  data  kembali  ke client  (android).  Salah  satu  komponen penting  dari  sistem  pakar  adalah  basis pengetahuan  ( knowledge  base ).  Seorang pakar  dapat  menyusun  basis  pengetahuan mereka  ataupun dari literatur  yang  didapat untuk menemukan fakta-fakta atau sumber yang  terpecaya  dalam  penelitian  ini  yang ada kaitannya tentang sistem hepatobiliaris. Sehingga didapatkan 40 rule dan  5  level  kedalaman  pertanyaan  yang  di ajukan  sehingga  menjadi  membentuk pohon  keputusan.  Berikut  ini  contoh  rule dalam  kasus  penelitian  pada  sistem hepatobiliaris [3] :JIKA  pasien mengalami ikterus
DAN mengalami demam DAN mengalami mual DAN ada hepatomegaly DAN nyeri pada tulang
MAKA menderita penyakit Hepatitis Virus A
Seluruh  rule  harus  disimpan  di  dalam database dengan menerapkan teknik penalaran dan teknik penelusuran yang kita pilih.
Ada  dua  teknik  yang  dapat  dilakukan dalam  melakukan  penalaran  ( inference ) [4]:
1) Pelacakan Kedepan ( Forward Chaning )
Dari  sekumpulan  data  yang  berupa fakta-fakta  yang  dihadapi  dengan mencari  kemungkinan  yang  cocok dengan  hipotesa  sehingga  menjadi sebuah simpulan.

## Gambar 2. Forward Chaning
2) Pelacakan Kebelakang ( Backward Chaning )
Di  mulai  dari  simpulan  dengan mencari  sekumpulan  gejala  -  gejala yang mendukung menuju fakta – fakta dari sekumpulan hipotesa tersebut.
Gambar 3. Backward Chaning
Kedua  teknik  penalaran  dipengaruhi  oleh tiga macam teknik penelusuran ( searching ):
1) Teknik Depth First Search
Teknik  penelusuran  ini  digunakan pada data yang sudah terdefinisi, misal dari sisi kiri ke sisi kanan, keuntungan dengan  mengunakan  pencarian  teknik ini adalah masalah dapat di gali secara mendalam  dapat  di  telusuri  sampai  di temukannya suatu solusi yang optimal. Tetapi  kekurangan  teknik  ini  adalah penelusuran  dalam  mencari  solusi yang  optimal  membutuhkan  waktu yang  sangat  lama  untuk  kasus  ruang lingkup masalah yang besar.
Gambar 4. Depth First Search
2) Teknik Breadth First Search Teknik  penelusuran  ini  menelusuri node  pada  satu  level  terlebih  dahulu atau  satu  tingkatan  sebelum  nantinya pindah  ke  level  atau  tingkatan  di bawahnya. Keuntungan pencarian dengan teknik ini sama dengan Depth- First  Search,  hanya  saja  penelusuran seperti  ini  mempunyai  nilai  tambah, dimana semua node akan di cek secara menyeluruh  pada  setiap  tingkatan node.  Kekurangan  teknik  ini  tetap terletak  pada  waktu  yang  dibutuhkan saat  proses  berlangsung  sangat  lama apabila  solusi  berada  dalam  posisi node terakhir sangat tidak efisien.
Gambar 5. Breadth Fisrt Search
3) Teknik   Best First Search Teknik  penelusuran  jenis  ini  dikenal juga  sebagai  penelusuran  heuristic. Keuntungan  dari  jenis  pencarian seperti  ini  adalah  mengurangi  beban komputasi  pada  sistem  karena  hanya solusi  yang  memberikan  harapan  saja yang  diuji  dan  akan  berhenti  apabila solusi  mendekati  yang  terbaik.  Ini merupakan  model  penelusuran  yang menyerupai cara manusia dalam mengambil solusi yang dihasilkan.
Gambar 6. Best First Search

## 3. HASIL DAN PEMBAHASAN

## 1. Struktur Basis Data
Gambar 7. ERD (Entity Relationship Diagram)

## Gambar 8. Transformasi ERD ke LRS

## Gambar 9. LRS
Berikut  ini  adalah  rancangan  basis  data hasil transformasi Logical Record Structure (LRS)  ke  Relasi  (Tabel).  Salah satu  tabel  pada  aplikasi  ini  adalah  tabel Pertanyaan  yang  berisi  data  pertanyaan berkaitan dengan gejala penyakit.

## Tabel 1. Tabel Pertanyaan
Nama Field Tipe Data Panja ng Keterangan Kd_pertanyaan Char 5 Kode Pertanyaan (PK) pertanyaan Char 5 Pertanyaan
Tabel  berikutnya  yang  digunakan  pada aplikasi  ini  adalah  tabel  Simpulan  yang berisi data mengenai simpulan dan saran.

## Tabel 2. Tabel Simpulan
Nama Field Tipe Data Panjang Keterangan Kd_simpulan Char 5 Kode Simpulan (PK) Simpulan Varchar 255 Simpulan saran Varchar 255 Saran
Tabel  selanjutnya  yang  digunakan  pada aplikasi ini adalah tabel Tujuan yang berisi data mengenai Tujuan.

## Tabel 3. Tabel Tujuan
Nama Field Tipe Data Panjang Keterangan Kd_pertanyaan Char 5 Kode Pertanyaan (PK) Kd_tujuan Char 5 Kode Tujuan (PK)
Tabel  selanjutnya  yang  digunakan  pada aplikasi ini adalah tabel Arahan yang berisi data mengenai arahan.

## Tabel 4. Tabel Arahan
Nama Field Tipe Data Panjang Keterangan Kd_pertanyaan Char 5 Kode Pertanyaan (PK) Kd_Simpulan Char 5 Kode Simpulan (PK)
Tabel  berikut  merupakan  tabel  Kamus yang  berisi  mengenai  data  kata  dan keterangan  dari  istilah  -  istilah  yang digunakan dalam diagnosa.

## Tabel 5. Tabel Kamus
Nama Field Tipe Data Panjang Keterangan Kata Char 25 Kata (PK) Keterangan Char 255 Kode Keterangan Implementasi merupakan salah satu tahapan  dalam  pembuatan  sistem.  Sistem pakar  ini  dibuat  dengan  menggunakan bahasa pemrograman XML, Java, PHP dan database  MySQL.  Hasil  implementasi  dari bahasa pemrograman XML dan Java  yaitu sebagai berikut:
A. Tampilan Layar Splash Screen
Pada  gambar  10  berisikan  tampilan layer splash screen yaitu tampilan saat membuka aplikasi.
Gambar 10. Tampilan Splash Screen

## B. Tampilan Layar Menu Utama
Pada  gambar  10  berisi  kegunaan sistem  pakar  dan  terdapat  5  (lima) menu.  Menu  tersebut  di  antaranya: Diagnosa  (menu  ini  digunakan  untuk mendiagnosa  gangguan  pada  sistem Hepatobiliaris),  Panduan  (digunakan sebagai petunjuk user dalam pemakaian  aplikasi  sistem  pakar  ini), Profil (digunakan untuk  melihat profil dan  informasi  mengenai  pembuat program),  Admin  (menu  ini  hanya dapat  digunakan  oleh  admin),  serta
menu  Keluar  yang  digunakan  untuk keluar dari aplikasi ini.

## Gambar 11. Tampilan Menu Utama
C. Tampilan Layar Diagnosa Pada  gambar  12  berisi  halaman  untuk melakukan  proses  diagnosa  Gangguan pada  Sistem  Hepatobiliaris  (Hati,
Empedu  dan  Pankreas).  Setelah  menu „Diagnosa‟ dipilih, maka akan muncul pertanyaan  pertama.  Pada  pertanyaan pertama,  terdapat  2  (dua)  pilihan: “Ya”  dan  “Tidak”.  Terdapat  pula tombol  “Sebelumnya”  untuk  kembali ke  pertanyaan  sebelumnya,  tombol “Kamus”  untuk  ke  halaman  Kamus, serta  tombol  “Menu  Utama”  untuk kembali ke Menu Utama.
Gambar 12. Layar Diagnosa
D. Tampilan Layar Simpulan Pada gambar 13 terdapat simpulan nama penyakit dan saran.
Gambar 13. Layar Simpulan

## E. Uji Kasus
Pengujian  program  dilakukan  untuk mengetahui  apakah  program  sudah sesuai  dengan  tujuan  pembuatan sistem  pakar  ini  atau  belum.  Berikut ini adalah contoh pengoperasian program  diagnosa  gangguan  pada sistem  Hepatobiliaris  untuk  menuntun user  dalam  mengoperasikan  program. Pada  langkah  pertama  akan  tampak layar halaman menu utama. Pada layar ini  terdapat  5  (lima)  menu,  yaitu: “Diagnosa”, “Panduan”, “Profil”, “Admin”,  dan  “Keluar”.  Setelah  itu pilih  menu  “Diagnosa”,  selanjutnya akan diarahkan ke halaman “Diagnosa”.  Pertanyaan  pertama  pada level  pertama  akan  tampil  pada halaman  diagnosa,  yaitu  pertanyaan
“Apakah Pasien Mengalami Ikterus?”.
Jika pada pertanyaan pertama dijawab “Tidak” maka  akan tampil pertanyaan selanjutnya,  yaitu  “Apakah  Pasien Tidak  Mengalami  Ikterus?”.  Kedua pertanyaan  ini  berada  dalam  level pertama,  jika  user  menjawab  “Tidak” pada  pertanyaan  kedua,  maka  akan tampil  layar  tidak  terdiagnosa  yang menampilkan  pesan  “Tidak  Dapat Didiagnosa”.
Gambar 14. Tampilan Layar Diagnosa Level Pertama
Langkah kedua adalah contoh pertanyaan pada level pertama. Apabila  user  menjawab  “Ya”  pada pertanyaan “Apakah pasien mengalami  ikterus?”,  maka  proses berlanjut  ke  pertanyaan  selanjutnya  di level  kedua,  yaitu  “Apakah  Pasien Mengalami  Demam?”.  Jika  sampai pada  pertanyaan  “Apakah  Pasien
Mengalami Pembengkakan Pada Perut?”, dijawab “Tidak” semua, maka akan  tampil  halaman  kemungkinan ada sembilan belas kemungkinan pada proses ini.
Gambar 15. Diagnosa Level kedua dan kemugkinan
Langkah ketiga adalah contoh pertanyaan  pada  level  kedua.  Apabila user  menjawab  “Ya”  pada  pertanyaan “Apakah  Pasien  Mengalami  Demam?”, maka  proses  berlanjut  ke  pertanyaan selanjutnya  di  level  ketiga,  yaitu “Apakah  Pasien  Mengalami  Mual?”. Jika  sampai  pada  pertanyaan  “Apakah Pasien  Mengalami  Rash?”,  dijawab “Tidak”  semua,  maka  akan  tampil halaman  kemungkinan  ada  empat  belas kemungkinan pada proses ini.
Gambar 16. Diagnosa level ketiga dan kemungkinan Langkah keempat adalah contoh pertanyaan  pada  level  ketiga.  Apabila user  menjawab  “Ya”  pada  pertanyaan “Apakah  Pasien  Mengalami  Mual?”, maka  proses  berlanjut  ke  pertanyaan selanjutnya  di  level  keempat,  yaitu “Apakah Pasien Mengalami Hepatomegali?”.  Jika  sampai  pada pertanyaan “ Apakah Pasien Merasakan Nyeri  dan  Menjalar  Kebahu?”  dijawab “Tidak”  semua,  maka  akan  tampil halaman  kemungkinan  ada  sepuluh kemungkinan pada proses ini.
Gambar 17. Diagnosa ke empat dan kemungkinan. Langkah kelima adalah contoh pertanyaan pada level keempat. Apabila user  menjawab  “Ya”  pada  pertanyaan “Apakah Pasien Mengalami Hepatomegali?”,  maka  proses  berlanjut ke  pertanyaan  selanjutnya  di  level kelima,  yaitu  “Apakah  saat  ikterus muncul,  keluhan  semakin  berkurang?”. Jika  sampai  pada  pertanyaan  “Apakah
Pasien Mengalami Nyeri Pada Tulang?”,  dijawab  “Tidak”  semua, maka akan tampil sembilan kemungkinan. Gambar 18. Diagnosa level ke lima dan kemungkinan
Langkah keenam adalah contoh
pertanyaan  pada  level  kelima.  Apabila user  menjawab  “Ya”  pada  pertanyaan “Apakah  saat  ikterus  muncul  keluhan
semakin  berkurang?”,  maka  proses berlanjut  ke  simpulan,  yaitu  “Hepatitis Virus  A  (HVA),  Bed  Rest  dan  Hindari Makanan/Minuman  Yang  Mengandung Alkohol”.
Gambar 19. Tampilan Simpulan
Pada tahap pengujian peneliti menggunakan metode pengujian blackbox.

## Tabel 6. Pengujian Blackbox
No Fungsi Berhasil Tidak 1 Splashscreen √ 2 Menu Utama √ 3 Diagnosa Level 1 √ 4 Diagnosa Level 2 √ 5 Diagnosa Level 3 √ 6 Diagnosa Level 4 √ 7 Diagnosa Level 5 √ 8 Simpulan √ 9 Kamus √ 10 Admin √

## 4. SIMPULAN Simpulan
Dari  pembahasan  mengenai  sistem  pakar untuk  mendiagnosa  gangguan  pada  sistem Hepatobiliaris,  maka  dapat  dihasilkan beberapa simpulan sebagai berikut :
a. Diharapkan dengan adanya sistem pakar untuk  mendiagnosa  gangguan  pada sistem  Hepatobiliaris  yang  dibuat  ini dapat membantu user dalam
menemukan  penyakit  dan  saran  dengan waktu yang lebih singkat.
b. Sistem pakar ini berguna juga bagi para calon dokter terutama dokter muda yang belum berpengalaman untuk menyelesaikan  masalah  tanpa  bantuan dokter yang lebih berpengalaman.

## Saran
Beberapa  saran  yang  kiranya  dapat berguna  berkaitan  dengan  pembuatan sistem pakar ini untuk menambah, memperbaiki  serta  meningkatkan  kualitas dari  sistem  pakar  ini  adalah  sebagai berikut:
a.  Akan  lebih  baik  lagi  jika  basis pengetahuan  dalam  program  sistem pakar  ini  ditambah  datanya  dengan data yang baru karena dengan informasi  yang  terus  berkembang maka  data  yang  ada  dalam  sistem pakar  ini  selalu  di-update  secara berkala agar up to date.
b.  Proses  untuk  mencari  kemungkinan lebih  disempurnakan  lagi,  karena membutuhkan waktu  yang lama untuk mendapatkan kemungkinan.
c.    Proses  identifikasi  akan  lebih  mudah bagi  user  jika  dilengkapi  fasilitas picture/video.

## DAFTAR PUSTAKA
[1] Siswanto. Kecerdasan Tiruan.
Yogyakarta: Graha Ilmu. 2010.
[2] RS, Pressman. Software Engineering : A Practitioner‟s Approach, 7 th ed.  Mc Grow Hill. 2010.
[3] Mubin, A.Halim,Panduan Praktis Ilmu Penyakit  Dalam  :  Diagnosis  dan Terapi, Ed.2. Jakarta :EGC. 2006.
[4] W. Verina, "Penerapan Metode
Forward  Chaining  untuk  Mendeteksi Penyakit  THT," JATISI ,  vol.  1,  no. 2407-4322, p. 2, 2015.