## SISTEM  PAKAR PENDIAGNOSA PENYAKIT MENGGUNAKAN FUZZY LOGIC

## Jullia Titaley 1)

## ABSTRAK
Pada  penelitian  akan  dibahas    rancang  bangun  sistem  untuk  mendiagnosa  penyakit.  Sistem  ini ditujukan  untuk  masyarakat  atau  ahli  penyakit  dengan  memasukkan  gejala-gejala  penyakit tersebut.  Gejala-gejala  tersebut  diklasifikasikan  ke  dalam  dua  kategori  yaitu  Crisps  dan  Fuzzy. Dalam  membangun  sistem  ini,  dibtuhkan  3  tahap  yaitu  akusisi  pengetahuan,  membuat representasi  pengetahuan  dan  aturan  dasar  dan  terakhir  membuat  mesin  inferensi.    Sistem  ini membutuhkan kelas operator, kelas aljabar dan klas Einstein. Kemudian di pakai Dienes-Rescher dan kombinasi Mamdani.
Kata kunci : Diagnosa penyakit, sistem pakar, logika samar.

## EXPERT SYSTEM FOR DIAGNOSING DISEASE USING FUZZY LOGIC

## ABSTRACT
In this research, a system for diagnosing disease was designed and implemented. This system will be used  for paramedics expert. They need to enter many symptoms. The symptoms are classified into  two  categories,  crisps  and  fuzzy. The  fuzzy  symptoms  are  input  using  slider.  It  is  used    for uncertainty symptoms.
Building this system, needs three steps knowledge acquisition, knowledge representation and then building knowledge base, and finally  building inference engine. This system uses standard  class operator,  algebraic  class  operator,  and  Einstein  class  operator.  Implication  rule  uses  Dienes- Rescher and for combine all rules use Mamdani Combination.
Based  on  all  symptom  that  have  been  entered  using  standard  class  operator,  this  system  is  a success for diagnosing disease and its inference value.
Keywords : diagnose disease, expert system, fuzzy logic.

## SISTEM  PAKAR
Kecerdasan  buatan  adalah  salah  satu bidang ilmu komputer yang mendayagunakan komputer  sehingga  dapat  berperilaku  cerdas seperti  manusia.  Ilmu  komputer  tersebut mengembangkan perangkat lunak dan perangkat  keras  untuk  menirukan  tindakan manusia.  Aktifitas  manusia  yang  ditirukan seperti  penalaran,  penglihatan,  pembelajaran, pemecahan  masalah,  pemahaman  bahasa alami, dan sebagainya. Sesuai dengan definisi tersebut, teknologi kecerdasan buatan dipelajari dalam bidang-bidang seperti Robotika  ( Robotics) ,  Penglihatan  Komputer ( Computer Vision), Pengolahan Bahasa Alami ( Natural  Language  Processing) ,  Pengenalan Pola  ( Pattern  Recognition) ,  Sistem  Syaraf Buatan ( Artificial Neural System) , Pengenalan
Suara ( Speech Recognition), dan Sistem pakar ( Expert System).
Bidang  yang  dicirikan  oleh  sistem berdasarkan  pengetahuan  ( knowledge-based system) ini  memungkinkan  komputer  dapat berpikir  dan  mengambil  kesimpulan  dari sekumpulan  kaidah. (Ignizio,1991).    Dalam proses  tersebut  seorang  pemakai  dapat berkomunikasi secara interaktif dengan komputer untuk memecahkan suatu persoalan atau masalah, seolah-olah pemakai berhadapan  langsung  dengan  manusia  yang ahli dalam bidang tersebut yaitu pakar. Hal ini dimungkinkan karena sistem dapat menyimpan  pengetahuan  heuristik,  yakni pengetahuan  yang  diperoleh  berdasarkan pengalaman atau intuisi pakar.
Sistem pakar pada dasarnya digunakan  untuk  menyelesaikan  problem
yang memerlukan keahlian seseorang. Tabel 1 berikut  ini  akan  menunjukkan  daftar  fungsi yang  bisa  dilakukan    oleh  sebuah  sistem pakar.
Tabel 1. Kategori  fungsi sistem pakar Function Description Examples Control Diagnose, predict, repair,and monitor system PTRANS Debugging Identify and plan remedies DRILLING ADVISOR Design Configure  and  design system within constraints XCON Diagnosis Infer malfunction from sysmptoms MYCIN Instruction Interpret  observables and infer descriptions SOPHIE GUIDON Monitoring  Compare current states  with  desired states DENDRAL Planning Assist  in  the  planning and design of system MOLGEN Prediction Infer likely consequences from current conditions I&W (Sumber : Teft, L, “Programming in Turbo Prolog With  an  Introduction  to  Knowledge-Based Systems “,1989,Prentice-Hall Inc )

## GAMBARAN  UMUM
Sistem pakar ini merupakan perangkat lunak yang dapat bertindak sebagai pengganti  pakar/dokter  untuk  mendiagnosa penyakit.
Struktur sistem berbasis pengetahuan/system  pakar  secara  umum menggunakan logika samara ini terdiri atas  2 bagian pokok yaitu bagian konsultasi ( consultation subsystem) dan subsistem pengembangan ( development subsystem) . Secara  lengkap  struktur  sistem  dapat  dilihat pada gambar 1.

## TAHAP  PEMBANGUNAN SISTEM
Untuk  membangun  sistem  pakar secara  umum  melalui  tahap-tahap  sebagai berikut: (Harmon dan King, 1985) 1. Menentukan  tool  /  bahasa  pemrograman yang akan digunakan untuk mengimplementasikan sistem (ditunjukan oleh bagan di bawah ini) 2.   Identifikasi    domain  dan  melakukan analisa terhadap pengetahuan yang termasuk dalam sistem tersebut.
3. Melakukan desain sistem
4. Membuat prototipe sistem
Bagan: Penentuan  Tool  /  Bahasa  Pemrograman  untuk  Mengimplementasikan  Sistem.
Knowledge Aquisition user User interface Mekanisme Inferensi Penyakit terdiagnosa Knowledge Base Knowledge Engineer Pakar  /dokter Fuzzifikasi    nilai Knowledge Representation SUB SISTEM  KONSULTASI SUB SISTEM  PENGEMBANGAN Data gejala yang dirasakan/dilihat
Data Base

## Menentukan Tool / Bahasa  Pemrograman
Bahasa pemrograman yang digunakan dalam pembangunan sistem berbasis pengetahuan ini adalah menggunakan  bahasa  pemrograman  Borland Delphi dengan basis data disimpan menggunakan  MySQL.  Dengan  demikian interface  yang  digunakan  untuk  proses konsultasi  maupun  pemberian  rekomendasi dalam  bentuk  visual.  Setiap  sesi  konsultasi data user disimpan dalam basis data termasuk hasil konsultasinya.

## Identifikasi Domain dan Pengetahuan
Langkah berikutnya adalah
melakukan  identifikasi  terhadap  domain  dan
pengetahuannya.  Identifikasi  domain  ini dilakukan  dengan  menggambarkan  operasi keseluruhan dari sistem  yaitu :
1.  Menanyakan    gejala  penyakit  yang dirasakan atau dilihat pada user.
2.    Melakukan  proses  pengolahan  gejala yang bersifat fuzzy maupun crisp
3.    Menentukan  penyakit  infeksi  mata yang diderita
Dari  operasi  keseluruhan  tersebut dapat  digambarkan  dengan  menggunakan diagram  pada  gambar  3.2.  Sebagai  ilustrasi dari  kerja  sistem  pakar  pendiagnosa  penyakit menggunakan  logika  samar  adalah  sebagai berikut.

## Representasi  Pengetahuan  (Knowledge Representation)
Setelah  proses  akuisisi    selesai,  hal berikutnya
yang dilakukan adalah mereprentasikan pengetahuan. Tujuan representasi pengetahuan adalah untuk mengembangkan  suatu  struktur  yang  akan membantu pengkodean pengetahuan ke dalam program. Pengetahuan direpresentasikan dalam  format  tertentu  dan  akan  dihimpun dalam suatu basis pengetahuan. Representasi  pengetahuan  merupakan suatu
cara untuk
mengilustrasikan pengetahuan.  Format  pengetahuan  yang digunakan  adalah  kaidah  produksi  dengan pertimbangan :
Berbentuk  modular  sehingga  mudah untuk dimodifikasi
Mudah diinterpretasikan Serupa  dengan  cara  berpikir  manusia dalam menyelesaikan masalah Langkah yang dilakukan untuk membuat  representasi  pengetahuan  berbentuk kaidah adalah sebagai berikut :
1. Pembuatan  tabel  keputusan  ( decision table )
Tabel keputusan merupakan suatu metode untuk  mendokumentasikan    pengetahuan. Tabel pengetahuan mendeskripsikan pengetahuan. Tabel pengetahuan
merupakan matrik kondisi yang
dipertimbangkan  dalam  pendeskripsian kaidah.
Tabel 2. Tabel Keputusan G oal  1
Goal  2
Kondisi 1 ✓ Kondisi 2 ✓ ✓ Kondisi 3 ✓
user Fuzzifikasi  gejala penyakit Gejala penyakit Penyakit yang terdeteksi
2. Pengkonversian  tabel  keputusan  menjadi kaidah produksi Representasi pengetahuan yang berbentuk kaidah produksi, dibentuk dari
pengubahan  keputusan.  Pembuatan  suatu kaidah dilakukan dengan beberapa tahapan.  Sebagai  contoh  pembuatan kaidah  1  berikut.  Pertama,  konklusi  dari kaidah  1  adalah Goal  1. Konklusi dapat dicapai bila kondisi yang mendukungnya  terpenuhi  yaitu  kondisi  1 dan  kondisi  2.  Ketiga,  pembuatan  kaidah 1  menggunakan goal dan  kondisi yang  diperoleh  dari  langkah  1  dan  2, seperti berikut :
Kaidah  1  : JIKA    Kondisi  1  DAN Kondisi 2 MAKA Goal 2 Kaidah  2  : JIKA    Kondisi  2  DAN Kondisi 3 MAKA Goal 1

## PROSES FUZZIFIKASI  NILAI
Fuzzifikasi  merupakan  proses  untuk mengubah  data  nilai  crisp  menjadi  data  nilai fuzzy.  Hal  ini  diperlukan  dalam  sistem  ini karena  aturan  yang  dibangun  berupa  fuzzy anteseden  seperti  yang  terlihat  pada  bagian sebelumnya. Proses ini tidak bisa terlepas dari pengertian himpunan fuzzy pada bab sebelumnya.
Himpunan fuzzy menggambarkan  derajat  atau  nilai  perbedaan pada  suatu variabel  linguistik  pada himpunan nilai  linguistik  variabel  tersebut.  Derajat  atau nilai  tersebut    disebut  dengan grades  of membership. (Siler,2001).  Dalam  sistem  ini grades  of  membership mempunyai  nilai antara  0  ( absolutely  false) sampai  1 ( absolutely  true) .  G rades  of  membership ini selanjutnya  akan  menjadi  fungsi  keanggotaan ( membership  function) yang    digunakan dalam  proses  fuzzifikasi  data  gejala  penyakit yang dialami.

## FUNGSI  KEANGGOTAAN
Dalam  mengukur  besaran  nilai  crisp suatu  variable  linguistic  gejala  penyakit,  ada beberapa  gejala  yang  pengukurannya  sangat tergantung  dari  subjektifitas  seorang  pakar  / dokter tanpa menggunakan alat ukur tertentu

## MEKANISME INFERENSI
Pada  sistem  ini  inferensi  dilakukan untuk  menentukan  penyakit  infeksi  mata berdasarkan  pada  hasil  fuzzifikasi  gejala- gejala yang dimasukkan oleh user. Sesuai  dengan  basis  pengetahuan
yang  berbentuk fuzzy  compound  proposition , diperlukan operator-operator fuzzy
menghitung grades of membership -nya dengan  menggunakan  fungsi  keanggotaan Dalam  hal  ini  digunakan  operator  standard complement, standard union, standard intersection.  Penggunakan  operator  standard ini  sebenarnya  dipilih  karena  kesederhanaan dalam proses perhitungannya sehingga menjadi lebih mudah. Untuk menghitung nilai aturan  digunakan  implikasi  Dienes-Rescher karena  interpretasi  menggunakan  operator standard  fuzzy  complement  dan  standard fuzzy  union  sehingga  lebih  sederhana. Sedangkan metode inferensi untuk menghasilkan penyakit yang terdeteksi digunakan metode inferensi berbasis komposisi dengan kombinasi Mamdani karena  lebih  efisien  dalam  perhitungan  dan dipandang  bahwa  setiap  aturan  merupakan pernyataan  kondisional  yang  berdiri  sendiri sehingga  operator  yang  digunakan  adalah operator  OR  atau  union.  Setelah  dihasilkan nilai  inferensi  selanjutnya  untuk  memilih aturan  R-1, R-2, R-3,  R-4,  R5 yang di’fired’, perlu  menghitung nilai  masing-masing  aturan (  Ri)  yang  paling  dekat  dengan  inferensi tersebut  (nilai  minimal).  Jika  ternyata diperoleh  nilai  kedekatan    minimal  lebih  dari satu maka aturan yang di’ fired’ adalah aturan yang  penulisannya  terlebih  dulu  (tergantung urutan  aturan). Hasil proses  inferensi  tahap  1 ini berupa identifikasi penyakit yang diderita.
Relasi Antar Tabel : Nilai Gejala (Nilai Crisp) Fuzzifikasi Hitung nilai fakta (dg operator standar, yager,
einstein, lukasewich) & rule dg implikasi Dienes- Reschter Inferensi  berbasis komposisi dengan kombinasi Mamdani Penyakit Terdiagnosa

## KESIMPULAN
Dari  penulisan  ini  dapat  diberikan beberapa  kesimpulan sebagai berikut :
1. Sistem pendiagnosa penyakit menggunakan logika samar dapat digunakan untuk mendeteksi suatu
penyakit  berdasarkan  gejala-gejala  yang diderita. 2. Representasi pengetahuan yang digunakan adalah kaidah produksi 3. Metode  penalarannya  adalah  penalaran maju ( forward chainning)
4. Setiap fungsi keanggotaan untuk menentukan  batas-batas  nilai  jangkuaan sangat menentukan kesimpulan atau hasil diagnosa pada sistem ini.

## DAFTAR PUSTAKA
Siler,  W.  2001.  “Building  Fuzzy  Expert System”. ( http://members.aol.com/wsiler ).
Zebua,  A.  T.  dan  Wahab  W.  1995.
“Perbandinagn aplikasi berbasis logika samar (fuzzy logic)” ( http://www.elektroindonesia.com/ele ktro/no6b.html )
Davis,  R.  and  Lenat.  D.B.  1982. Knowledge- Based System In Artificiall Intelligent,
Mc-Graw-Hill. USA.
Firebaugh,  Morris  W.  1988, Artificiall Intelligent A Knowledge-Based Approach, PWS-Kent  Publishing  Co, Boston.
Giarratano,  J.  and    Riley,  G.  2005. Expert System  Principle  and  Programming ,
PWS  Publishing  Company,  Boston,
MA.
Harmon,  P.  and  King,  David.  1985b. Artificial  Intelligent  In  Bussiness , John Wiley & Sons Inc, Canada.
Ignizio,  James,  P.  1991. Introduction  to Expert  System .  Mc-Graw  –  Hill,  Inc. USA.
Kusumadewi,  S.  2003 Artificial  Intelegence Teknik  dan  Aplikasinya .  Graha  Ilmu, Yogyakarta
Mulyana,  S.  2000.  Model  Mesin  Inferensi pada  Sistem  Pakar  dengan  Logika Samar.  [Tesis].  Universitas  Gadjah Mada. Yogyakarta.
Sitanggang,  I.S.  2002.  Sistem  Berbasis Pengetahuan Untuk Evaluasi Kesesuaian  Lahan  Untuk  Tanaman Budidaya  Dengan  Mesin  Inferensi Fuzzy.  [Tesis].  Universitas  Gadjah Mada. Yogyakarta.
Soeharjo.  1983.  Diktat  Pengantar  Teori Himpunan. UNS. Solo
Teft, L. 1989. Programming In Turbo Prolog With  an  Introduction  to  Knowledge- Based  Systems ,  Prentice  Hall  Inc, New Jersey.
Turban,  E. 1995, Decision  Support  and Expert  System,  Management  Support Systems, Prentice  Hall  Inc,  New York.
Wang, Lie-Xin. 1997. A Course Fuzzy System and Control . Prentice Hall, Inc. NJ.