IMPLEMENTASI BACKWARD CHAINING DALAM
PENDETEKSIAN PENYAKIT ANEMIA
SKRIPSI
RIZKY HAFIZA KHOR
071402025
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
IMPLEMENTASI BACKWARD CHAINING DALAM PENDETEKSIAN PENYAKIT ANEMIA
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh Ijazah
Sarjana Teknologi Informasi
RIZKY HAFIZA KHOR
071402025
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
PERSETUJUAN
Judul : IMPLEMENTASI BACKWARD CHAINING
DALAM PENDETEKSIAN PENYAKIT
ANEMIA
Kategori : SKRIPSI
Nama : RIZKY HAFIZA KHOR
Nomor Induk Mahasiswa : 071402025
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM- TI)
UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Desember 2013
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dedy Arisandi, S.T, M.Kom Maya Silvi Lydia, B.Sc.,M.Sc
NIP. 19790831 200912 1 002 NIP. 19740127 200112 2 001
Diketahui/Disetujui Oleh
Program Studi S1 Teknologi Informasi
Ketua,
Prof.Dr. Opim Salim Sitompul
PERNYATAAN
IMPLEMENTASI BACKWARD CHAINING DALAM PENDETEKSIAN
PENYAKIT ANEMIA
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Desember 2013
Rizky Hafiza Khor
PENGHARGAAN
Alhamdulillah, puji dan syukur penulis panjatkan kehadirat Allah SWT, serta
shalawat dan salam kepada junjungan kita nabi Muhammad SAW, karena atas
berkah, rahmat dan hidayahnya penulis dapat menyelesaikan penyusunan skripsi
ini. Ucapan terima kasih yang tidak terhingga kepada Allah SWT yang selalu
membimbing dan mengajarkan saya akan pentingnya kesabaran dan tanggung
jawab selama penyusunan skripsi ini.
Dalam penulisan skripsi ini penulis banyak mendapatkan bantuan serta
dorongan dari pihak lain. Dalam kesempatan ini dengan segala kerendahan hati,
penulis mengucapkan terima kasih kepada :
1. Kedua orang tua penulis, yaitu Ayahanda Dr. Ronny Khor yang selalu
memberikan doa, dukungan moril dan materi kepada penulis serta Ibunda
Alm. Tengku Marfella Yetty yang telah membimbing dan membesarkan
kami. Kepada Kakanda tercinta Imelda Juliana Khor,Spd, Rina
Khor,S.Farm.,Apt, Noviani Juliana Khor, SE, dan Abangda tercinta
Jamaluddin Sinaga,Spd, Fauzan Ikhva,S.Farm, M.Yakub Arifin Nasution,
SH, yang terus memberikan penulis semangat untuk terus belajar.
2. Ketua program studi Teknologi Informasi, Bapak Prof. Opim Salim
Sitompul, M.Sc dan Sekretaris Program Studi Teknologi Informasi Bapak
Drs. Sawaluddin, M.IT, Dekan dan Pembantu Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua
dosen pada Program Studi Teknologi Informasi dan pegawai Teknologi
Informasi ibu Delima Harahap, Ibu Dra. Bamelia, Bang Faisal Hamid, Kak
Maya Sofhia, S.Kom, dan Kak Nasriatul Ummi, Amd.
3. Ibu Maya Silvi Lydia, B.Sc., M.Sc dan Bapak Dedy Arisandi, S.T, M.Kom
selaku dosen pembimbing penulis yang telah meluangkan waktu, tenaga
4. Ibu Erna Budhiarti Nababan, M.IT dan Bapak M.Fadly Syahputra,
B.Sc.,M.Sc.IT selaku dosen pembanding yang telah banyak memberikan
petunjuk, saran dan kritik dalam menyelesaikan skripsi ini.
5. Teman-teman penulis Andra Apriansyah, Roni Alamsyah Lubis, Rizky
Afiati, Devika Muhairani, Bayhaqi, Mega Kartika Sari, Aulia Mufardiah,
Asmy Novriani atas bantuan, masukan, motivasi, hiburan dan
kerjasamanya.
Dalam penyusunan skripsi ini penulis menyadari bahwa masih banyak
kekurangan, untuk itu penulis mengharapkan saran dan kritik yang bersifat
membangun dari semua pihak demi kesempurnaan skripsi ini.
Akhir kata penulis mengharapkan semoga skripsi ini dapat bermanfaat dan
ABSTRAK
Sistem pakar merupakan perangkat lunak yang ditujukan sebagai penyedia sarana
dan bantuan dalam memecahkan masalah dalam bidang pengetahuan tertentu.
Penelitian ini mengimplementasikan metode backward chaining dalam
mendeteksi penyakit dalam. Salah satu aplikasi dari sistem pakar adalah di bidang
kesehatan atau medis, tapi masalahnya sampai sekarang belum meratanya dokter
spesialis di Indonesia, sehingga di beberapa daerah masih kekurangan staf medis.
Sistem ini dapat membantu mencari gejala-gejala yang berkaitan dengan penyakit,
memanfaatkan teknologi informasi yaitu penggunaan sistem pakar untuk
membantu mendiagnosa penyakit serta membantu menangani pengobatan
penyakit dengan cara dialog interaktif tentang gejala-gejala penyakit pasien.
Sistem ini berbasis desktop dan dirancang menggunakan bahasa program visual
basic.
BACKWARD CHAINING IMPLEMENTATION IN THE DETECTION OF INTERNAL MEDICINE
ABSTRACT
Expert system is a software intended as a provider of tools and assistance in
solving problems in a particular field of knowledge. This study implements
backward chaining method in detecting the internal medicine disease. One of
application expert systems is in the health or medical field, but the problem is
until now not yet even a specialist in Indonesia, so that in some areas still lack
staf medis. This system can help find the symptoms associated with the disease,
utilizing information technology is the use of expert systems to help diagnose the
disease and help deal with the treatment of disease by means of an interactive dialogue about the patient’s symptoms. This system is a desktop based and designed using visual basic programming language.
ABSTRAK
Sistem pakar merupakan perangkat lunak yang ditujukan sebagai penyedia sarana
dan bantuan dalam memecahkan masalah dalam bidang pengetahuan tertentu.
Penelitian ini mengimplementasikan metode backward chaining dalam
mendeteksi penyakit dalam. Salah satu aplikasi dari sistem pakar adalah di bidang
kesehatan atau medis, tapi masalahnya sampai sekarang belum meratanya dokter
spesialis di Indonesia, sehingga di beberapa daerah masih kekurangan staf medis.
Sistem ini dapat membantu mencari gejala-gejala yang berkaitan dengan penyakit,
memanfaatkan teknologi informasi yaitu penggunaan sistem pakar untuk
membantu mendiagnosa penyakit serta membantu menangani pengobatan
penyakit dengan cara dialog interaktif tentang gejala-gejala penyakit pasien.
Sistem ini berbasis desktop dan dirancang menggunakan bahasa program visual
basic.
BACKWARD CHAINING IMPLEMENTATION IN THE DETECTION OF INTERNAL MEDICINE
ABSTRACT
Expert system is a software intended as a provider of tools and assistance in
solving problems in a particular field of knowledge. This study implements
backward chaining method in detecting the internal medicine disease. One of
application expert systems is in the health or medical field, but the problem is
until now not yet even a specialist in Indonesia, so that in some areas still lack
staf medis. This system can help find the symptoms associated with the disease,
utilizing information technology is the use of expert systems to help diagnose the
disease and help deal with the treatment of disease by means of an interactive dialogue about the patient’s symptoms. This system is a desktop based and designed using visual basic programming language.
BAB I PENDAHULUAN
1.1Latar Belakang
Perkembangan ilmu pengetahuan saat ini sangat berpengaruh dalam membantu
seseorang dalam pemenuhan kebutuhan hidup sehari-hari terutama perkembangan
teknologi di bidang komputer yang pada saat sekarang ini berkembang cepat
sekali. Dengan menggunakan teknologi komputer seseorang dapat mengetahui
suatu informasi yang berkaitan langsung dengan pekerjaan. Banyak masalah yang
dihadapi didalam bidang-bidang tersebut, terutama masalah yang memerlukan
pemprosesan komputer yang kompleks dan rumit. Salah satu solusi yang bisa
diterapkan adalah dengan memanfaatkan bidang ilmu kecerdasan buatan, yang
mana salah satu sub-bidang ilmu tersebut adalah sistem pakar (expert system). Penerapan sistem komputer sangat membantu masyarakat dalam
menyelesaikan permasalahan di bidang kesehatan. Metode backward chaining (runut balik) merupakan metode yang cocok digunakan dalam memecahkan
masalah diagnosis. Dalam metode backward chaining (runut balik), penalaran dimulai dengan tujuan merunut balik ke jalur yang akan mengarahkan ke tujuan
tersebut menurut Giarattano dan Riley dalam (Kusrini, 2006). Sistem pakar adalah
suatu metode penyelesaian masalah yang ditujukan sebagai penyedia nasihat dan
sarana bantu dalam memecahkan masalah di bidang pengetahuan tertentu (Luger,
2005). Sistem komputerisasi dapat digunakan untuk menyelesaikan suatu
pekerjaan dengan mudah, cepat, efektif, dan efisien.
Sistem pakar dalam bidang kesehatan berguna untuk membantu
masyarakat dalam menangani suatu gejala penyakit, dan membantu dokter ahli
dalam mendiagnosis suatu penyakit khususnya anemia. Saat ini penyebaran dokter
spesialis sangat minim di Indonesia, sehingga di daerah-daerah tertentu masih
kekurangan informasi suatu penyakit dan kurangnya tenaga medis seperti dokter
spesialis.
Untuk menangani masalah kurangnya dokter spesialis, maka sistem pakar
ini dapat menyelesaikan permasalahan tersebut dengan melakukan tahap-tahap
memberikan solusi pengobatan yang tepat kepada pasien, dengan begitu sistem
pakar dapat membantu cara kerja tenaga medis khususnya dokter spesialis.
Berdasarkan penjelasan (Waterman, 1986), sistem pakar mampu untuk
menyelesaikan beberapa kategori masalah yang ada, seperti : interpretasi,
prediksi, diagnosis, desain, perencanaan, pemantauan, instruksi dan kontrol.
Berdasarkan domain masalah yang kami kemukakan yaitu dibidang diagnosis
penyakit, maka dalam penulisan skripsi ini kami membuat sebuah Implementasi
Backward Chaining dalam Pendeteksian Penyakit Anemia.
1.2 Rumusan Masalah
Adapun rumusan masalah berdasarkan latar belakang yang telah dijelaskan adalah “Bagaimana Implementasi Backward Chaining melakukan diagnosis terhadap penyakit-penyakit anemia, serta dapat memberikan solusi mengenai pengobatan
yang tepat terhadap penyakit tersebut”.
1.3 Batasan Masalah
Ruang lingkup masalah ini adalah :
1. Sistem pakar ini membahas tentang penyakit anemia.
2. Sistem pakar yang dirancang berbasis desktop.
3. Perangkat Lunak yang digunakan Visual Basic 2008.
1.4 Tujuan penelitian
Tujuan penelitian ini adalah menghasilkan sistem pakar yang dapat menyelesaikan
permasalahan yang berhubungan dengan bidang kedokteran khususnya di
penyakit anemia dengan menggunakan backward chaining.
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah dengan pembuatan aplikasi ini maka masyarakat
dapat lebih cepat mengetahui jenis penyakit yang diderita dengan menggunakan
aplikasi yang disediakan.
1.6.1 Metode Pengumpulan Data 1. Studi Literatur
Studi literatur yang dilakukan dalam penulisan skripsi ini adalah
mengumpulkan bahan referensi mengenai Sistem Pakar dengan
menggunakan metode backward chaining dari berbagai buku, jurnal, karya ilmiah dan beberapa referensi lainnya. Pengumpulan hasil penelitian yang
sudah diterapkan dibidang kesehatan dengan menggunakan expert system juga akan di lakukan.
2. Wawancara
Melakukan wawancara langsung dengan dokter ahli yang menjadi pakar
dari penyakit tersebut. Mengambil konklusi dan fakta-fakta yang
merupakan penyakit dan penyebab penyakit pada transportasi darah
tersebut.
1.6.2 Analisis Data
Analisis Data dilakukan untuk menyimpulkan data yang digunakan apakah
layak digunakan dan bisa diterapkan dengan menggunakan sistem pakar yang
berpola backward chaining. Analisis terhadap data juga dilakukan untuk mengambil model dasar dari perancangan sistem, seperti model entity-relationship di dalam database yang disesuaikan untuk permasalahan ini. 1.6.3 Perancangan Sistem
Sistem dirancang menggunakan Flowchart, Context Diagram, Data Flow Diagram Level 1 dan Data Flow Diagram Level 2. Pada tahap ini juga dilakukan perancangan sistem agar dapat menerapkan metode pengambilan
alasan (reasoning) menggunakan Backward Chaining. 1.6.4 Implementasi & Pengujian
Pada tahap ini akan dilakukan implementasi sistem, yaitu dengan
menerapkannya menggunakan bahasa pemprograman Visual Basic 2008 dan database MySQL. Untuk pengujian sistem, akan dilakukan penyesuaian hasil yang didapat oleh sistem dengan keputusan yang dihasilkan oleh sang pakar
(dalam hal ini dokter pakar dalam penyakit anemia). Tingkat kebenaran yang
1.7 Sistematika Penulisan
Sistematika penulisan tugas akhir ini dibagi menjadi lima bab, yaitu sebagai
berikut:
BAB 1 Pendahuluan
Berisikan konsep dasar, landasan teori, rumusan masalah, batasan
masalah, manfaat penelitian, metode penelitian dan sistematika
penulisanlaporan tugas akhir ini.
BAB 2 Tinjauan Pustaka
Pada bab ini dibahas mengenai teori-teori yang mendukung
pembahasan pada bab selanjutnya, implementasi backward chaining dalam pendeteksian penyakit darah.
BAB 3 Analisis dan Perancangan Sistem
Pada bab ini akan dibahas bagaimana analisis sistem dilakukan,
mulai dari pengambilan keperluan, keperluan pengguna, keperluan
fungsionalitas sistem, hingga keperluan fungsionalitas laporan.
Kemudian akan dilakukan desain terhadap sistem yang akan
dibangun, proses ini melibatkan pembuatan Flowchart, Context Diagram, Data Flow Diagram Level 1 dan Data Flow Diagram Level 2 beserta penjelasananya, kemudian dilanjutkan dengan melakukan perancangan antar muka pengguna dan struktur
program sistem pakar dengan menggunakan backward chaining. BAB 4 Implementasi dan Pengujian Sistem
Berisikan gambaran dari struktur program dan memberikan hasil
penerapan sistem yang lengkap kepada user dan pemakai komputer
lain serta sehinga dapat dilakukan pengujian terhadap sistem yang
dihasilkan.
BAB 5 Penutup
Berisikan kesimpulan, saran, dan rangkuman dari laporan tugas
BAB II
LANDASAN TEORI
2.0 Pendahuluan
Pada bab ini, kami akan menjabarkan tentang berbagai penyakit darah klinis yang
biasa bisa klasifikasikan oleh para dokter pakar khususnya penyakit darah, disini
kami juga menjabarkan apa itu sistem pakar, karakteristik sistem pakar, beserta
implementasi dan penerapan sistem pakar pada bidang kesehatan dan kedokteran.
2.1 Penyakit Darah 2.1.1 Anemia
Menurut definisi yang dikemukakan oleh (Hillman, 2002) anemia adalah
keadaan dimana masa eritrosit (sel darah merah) dan masa hemoglobin yang beredar tidak dapat memenuhi fungsinya untuk menyediakan oksigen bagi
jaringan tubuh, sedangkan oleh (Bakta, 2003) secara laboratorik dapat diuraikan sebagai penurunan di bawah normal kadar hemoglobin, hitung eritrosit dan hematokrit (packed red cell).
Anemia dapat dibedakan menjadi 5 jenis besar yaitu:
1. Anemia Hipokromik Mikrositer
2. Anemia Megaloblastik
3. Anemia Hemolitik
4. Anemia karena Kegagalan Sumsum Tulang
5. Anemia Pada Penyakit Sistemik
Pada umumnya untuk menegakkan diagnosis terhadap penyakit anemia
maka ada 3 langkah yang harus ditempuh, yaitu :
1. Langkah pertama : Membuktikan adanya anemia, pembuktian ini
biasanya menggunakan pendekatan klinik.
2. Langkah kedua : Menetapkan jenis anemia yang dijumpai,
pembuktian ini biasanya menggunakan pendekatan klinik.
3. Langkah ketiga : Menetapkan jenis anemia yang dijumpai,
2.1.2 Leukemia
Sebelum mengurai penyakit leukemia, perlu diketahui mengenai keganasan hematologik, keganasan hematoligik adalah proses enoplastik yang mengenai darah dan jaringan pembentuk darah beserta seluruh komponennya (Bakta,
2002). Sedangkan leukemia ialah keganasan hematologik akibat proses neoplasti yang disertai gangguan diferensiasi apada berbagai tingkatan sel induk sehingga
terjadi ekspansi progresi dari kelompok sel ganas tersebut pada sumsum tulang,
kemudian leukemia beredar secara sistemik (Harmening, 2002).
2.1.3 Limfoma Maligna
Limfoma Maligna merupakan suatu penyakit keganasan primer dari jaringan limfoid yang bersifat padat (solid), meskipun dapat menyebar secara sistemik (Bakta, 2003). Penyakit ini dibagi kedalam 2 jenis yaitu :
1. Limfona Hodgin
2. Limfona non-Hodgin
Penyakit ini merupakan keganasan hematologik yang cukup sering di jumpai. Penyakit ini dapat disembuhkan dengan kemoterapi karena masih merupakan tumor padat yang dapat disembuhkan.
2.1.4 Gamopati Monoklonal
Gamopati monklonal adalah suatu penyakit yang merupakan kelainan hematologik yang berasal dari limfosit yang menghasilkn paraprotein yang bersifat monoklonal (Hillman, 2002). Penyakit ini biasa disebut dengan penyakit imunoproliferatif atau plasma cell disorders atau paraproteinemias. Penyakit ini dibagi kepada 2 jenis berdasarkan keganasannya, yaitu :
1. Mieloma Multipel
2. Makroglublinemia Waldenstrom
2.2 Sistem Pakar
Berdasarkan penjelasan oleh (Luger, 2005) dan (Krishnamoorthy, 1996). Sistem
pakar dapat diartikan sebagai sebuah sistem didalam komputer yang di program
bidang keahlian yang sesuai dengan pakar di kehidupan nyata. Sistem pakar ini
memfasilitasi pengetahuan yang di masukkan kedalam program dan memiliki
pengaturan strategi agar menghasilkan solusi atau keputusan. Bahkan menurut
(Russel, 2002), sistem pakar dapat mengambil pengetahuan dan pengalaman
didalam suatu organisasi (termasuk yang sudah berhenti) agar dapat
diakumulasikan menjadi satu kesatuan, memberikan informasi untuk
meningkatkan produktivitas pakar, dan menjadikan seseorang yang kurang
pengalaman untuk memiliki keahlian yang lebih tinggi dari level sebelumnya.
Sistem pakar bukanlah sebuah program, tetapi merupakan sistem, karena
pada perkomputeran biasa, penyelesaian masalah dan pengambilan keputusan
tidak bisa dilakukan, akan tetapi sistem pakar dapat melakukan hal yang dimaksud
karena memiliki kemampuan dalam pengetahuan dan kemampuan metafsirkan
alasan layaknya pakar manusia. Program komputer biasa hanya menyelesaikan
masalah berdasarkan algoritma yang diterapkan dan sudah didefinisikan terlebih
dahulu, dan tidak dapat menyelesaikan masalah yang memiliki data tidak
sempurna dan tepat.
Sistem pakar juga memiliki beberapa komponen berbeda seperti basis
pengetahuan, mesin inferensi, fasilitas penjelasan, dll. Semua komponen yang
berbeda ini berinteraksi satu dengan yang lain dalam menghasilkan pemprosesan
penyelesaian masalah berdasarkan aturan yang disesuaikan dengan pakar di
bidang tersebut.
Sistem pakar merupakan cabang ilmu Kecerdasan Buatan yang telah eksis
dan diterapkan lebih dari 30 tahun. Pemanfaatan sistem pakar telah merambah ke
banyak bidang, mulai dari medis, matematika, engineering, pertanian, geologi,
ilmu komputer, bisnis, hukum, pertahanan dan pendidikan (Waterman, 1986).
Khusus di bidang kesehatan dan medis, sistem pakar memiliki tempat yang
istimewa, dikarenakan komplesitas dari gejala-gejala penyakit dan kecendrungan
kesalahan pendiagnosaan, menjadikan sistem pakar dapat dimanfaatkan dengan
2.2.1 Karakteristik Sistem Pakar
Berdasarkan pendapat (Luger, 2005), dikarenakan sifat heuristik, kesesuaian dengan basis pengetahuan, sistem pakar pada umumnya mampu untuk:
a. Mendukung inspeksi terhadap proses reasoning (pengambilan alasan),
didalam langkah awal maupun penjawaban pertanyaan pada proses
pensolusian.
b. Memberikan akses muda dalam penambahan dan pengurangan rule
(aturan) berupa fakta dan tujuan di dalam basis pengetahuan.
c. Pengambilan alasan secara heuristik, biasanya menggunakan pengetahuan
untuk mendapatkan solusi yang berguna.
Ketepatan dari jawaban sebuah permasalahan merupakan hal yang paling
utama dari sebuah sistem pakar, seberapa cepat sistem pakar memproses solusi
adalah suatu masalah lain, jika solusi yang dihasilkan memberikan akurasi yang
baik tentunya akan menjadikan sistem pakar tersebut lebih baik. Disisi lain
sistem pakar yang baik harus memiliki kecepatan dalam mendapatkan solusi
yang diinginkan. Sistem pakar bisa memiliki peran sebagai pembuat keputusan
bahkan bisa dijadikan sebagai konsultan ataupun penasihat, (Waterman, 1986)
menjabarkan dalam bukunya bahwa sistem pakar dapat menyelesaikan masalah
untuk jenis kategori sebagai berikut :
a. Interpretation (Interprestasi) : Menghasilkan kesimpulan level tinggi dari
koleksi data mentah.
b. Prediction (Prediksi) : Memproyeksikan konsekuensi kemungkinan dari
situasi yang diberikan.
c. Diagnosis (Diagnosa) : Menentukan sebab dari tidak berfungsinya situasi
yang rumit berdasarkan gejala yang diteliti.
d. Design (Desain) : Menemukan pengaturan komponen suatu sistem
sehingga mendekati perfoma yang diinginkan dan memenuhi batasan yang
telah ditetapkan.
e. Planning (Perencanaan) : Memberikan langkah tindakan yang
berorientasi pada kumpulan tujuan dengan kondisi yang telah ditentukan
f. Monitoring (Pengawasan) : Membandingkan proses sistem yang
diawasi dengan proses yang seharusnya terjadi.
g. Instruction (Instruksi) : Memberikan proses pembelajaran pada area
teknikal suatu bidang.
h. Control (Kendali) : Melakukan kendali terhadap lingkungan yang
rumit.
(Micheal Negnevitsky, 2002), pada bukunya menjabarkan bahwa
karakteristik yang unik pada sistem pakar adalah pada kemampuan penjelasan
yang disediakan. Fitur ini memberikan sistem kemampuan melakukan evaluasi
terhadap pemberian alasan sistem itu sendiri dan menjelaskan keputusan yang
diambil.
2.2.2 Arsitektur Sistem Pakar
Pada gambar dibawah ini kami jabarkan arsitektur lengkap suatu sistem pakar
Gambar 2.1 Arsitektur Lengkap Sistem Pakar (Ahmad, 2012) Knowledge
Acquisiion Facilty
Knowledge Base Rule: If-Then
Working Memory Fact
Inference Engine
Explanation Facilities
User Interface
User
database STORE
VIEW Medical
Gambar 2.1 menjelaskan bahwa sistem pakar memiliki beberapa buah
komponen yang berbeda, diantaranya adalah :
a. Knowledge Acquisition Facility
Mengidentifikasi pakar yang sesuai dan melibatkan orang yang sesuai
didalam proses pengambilan pengetahuan merupakan hal yang penting untuk
kesuksesan dari pengambilan pengetahuan. Beberapa orang yang terlibat dalam
pengambilan pengetahuan ini dapat dikategorikan yaitu :
1. Pakar dibidang masalah yang ingin dilakukan dengan pengalaman kerja yang
tinggi dibidang tersebut.
2. Pembuat aplikasi, orang yang memiliki kemampuan dalam menafsirkan dan
menerjemahkan pengetahuan serta mengimplementasikan pengetahuan tersebut
kedalam sistem pakar.
3. Pengguna dan manajer.
Ada beberapa hal isu yang harus diperhatikan untuk melakukan pengambilan
pengetahuan. Isu pertama yaitu adalah pemilihan pakar bidang tersebut yang
sesuai harus memenuhi 3 kriteria, yaitu reputasi yang baik, karakter pakar dan
sikap yang baik, serta ketersediaan waktu dari pakar tersebut. Isu kedua adalah
seberapa banyak pakar yang akan dilibatkan dalam pengambilan pengetahuan.
Penggunaan satu pakar biasanya lebih baik dari banyak pakar, akan tetapi untuk
kasus tertentu kadang diperlukan banyak pakar untuk mengumpulkan
pengetahuan yang diinginkan. Ada beberapa masalah yang mungkin timbul jika
menggunakan satu pakar, yaitu : susahnya membagi waktu seorang pakar untuk
pengambilan keperluan, bias seorang pakar, keterbatasan pengambilan alasan oleh
satu pakar, kepakaran yang terbatas. Dari isu ini maka perlu diambil keputusan
mana yang diperlukan, seorang pakar atau banyak pakar dalam membuat sistem
pakar yang diinginkan.
Metode yang biasa digunakan untuk pengambilan pengetahuan adalah
wawancara, observasi, dan analisis protokol. Setiap metode memiliki kesesuaian
dengan bidang ilmu yang ingin diambil pengetahuannya, akan tetapi wawancara
b. Knowledge Base
Menurut (Luger, 2005) didalam bukunya, ia berpendapat bahwa
knowledge base (basis pengetahuan) adalah hati dari sistem pakar. Basis
pengetahuan mengandung pengetahuan dari bidang ilmu yang diinginkan. Pada
jenis sistem pakar berbasis aturan, basis pengetahuan ini biasanya dituliskan
dalam bentuk jika...maka.... Aturan yang terdapat didalam basis pengetahuan menjadi dasar dari pengambilan keputusan yang ada didalam sistem pakar.
Dari sisi teknis, tidak ada fungsi yang lebih penting daripada memilih
rangka kerja pemrograman untuk basis pengetahuan. Rangka kerja ini
merepresentasikan bagaimana pembangun sistem pakar dapat mengklasifikasikan
pengetahuan tersebut. Pada bagian ini juga dapat di tuliskan aturan (rules), frame dan pohon keputusan. Ada beberapa jenis hal yang dapat di atur didalam basis
pengetahuan, seperti pengalasan tidak pasti (inexact reasoning) dan pemprosesan kemampuan prosudural.
Perwakilan Pengetahuan, merupakan bagian untuk membangun sistem berbasis pengetahuan, dan dapat diklasifikasin sesuai dengan bagaimana kita
merepresentasikan pengetahuan. Kategori yang termasuk dalam perwakilan
pengetahuan ini adalah rule-based, frame based, case based, dan fuzzy logic. Pengalasan tidak pasti, salah satu dari kemampuan sistem pakar yang terkenal adalah kemampuannya untuk menyelesaikan masalah yang memiliki
ketidakpastian informasi dan pengetahuan. Sistem pakar harus dilengkapi dengan
metode untuk melaksanakan pengalasan ketidakpastian ini, seperti faktor
kepastian (certainty factors), metode Shafer Dempster, ataupun pendekatana Bayesian.
Pemprosesan kemampuan prosedural, pada beberapa aplikasi diperluakan untuk menulis kode prosudural, fungsi diperlukan didalam model ini.
Pada sistem pakar berbasis model, diperlukan metode untuk mendukung
penghantaran pesan. Di sistem pakar yang besar, diperlukan model ini untuk
menuliskan kode prosudural untuk mendukung aktifitas kemampuan pemprosesan
sistem pakar tersebut.
Pada dasarnya working memory adalah tempat dimana rule diambil dari basis pengetahuan dan dieksekusi agar melahirkan pertanyaan yang berhubungan
dengan metode reasoning yang diterapkan. Working memory biasanya dalam bentuk stack, bertumpuk agar memudahkan chaining yang akan diterapkan didalam sistem pakar tersebut.
d. Inference Engine
Mesin inferensi adalah bagian didalam sistem pakar yang menerapkan
pengetahuan kepada solusi yang terdapat pada permasalahan nyata. Biasanya
dinyatakan sebagai penerjemah dari basis pengetahuan (Luger, 2005). Fungsi
utama dari mesin inferensi adalah melakukan peran sebagai pengenal dan pemberi
tindakan didalam proses kontrol sistem pakar. Pada umumnya mesin inferensi
dipisahkan dari basis pengetahuan, walaupun untuk pembuatan sistem pakar
dengan batasan kecil, kedua bagian tersebut disatukan.
Mekanisme inferensi dan kontrol digunakan untuk memanipulasi
pengetahuan didalam basis pengetahuan. Dalam analogi nya mesin inferensi ini
merupakan cara pengambilan alasan yang terjadi pada manusia. Dibawah ini akan
dipaparkan beberapa teknik didalam mesin inferensi, diantaranya adalah :
Chaining (Runut), didalam sistem pakar berbasis aturan, forward chaining atau runut maju dan backward chaining ato runut mundur merupakan dua dasar teknik inferensi yang digunakan. Backward chaining sangat baik digunakan untuk masalah diagnosis sedangkan forward chaining sangat cocok untuk masalah desain dan perencanaan.
Agenda, merupakan kumpulan tujuan/fakta yang dibuktikan oleh sistem inferensi yang menggunakan backward chaining
Meta-rules, merupukan deskripsi bagaimana pengetahuan lain seharusnya digunakan. Biasanya digunakan untuk mengarahkan pemprosesan dari
pengetahuan lain kepada area baru pada basis informasi yang ditemukan.
Biasanya untuk masalah yang tidak cocok menggunakan teknik chaining, maka
akan menggunakan teknik ini didalam mesin inferensinya.
Nonmonotonic reasoning, tipe inferensi ini mengijinkan perubahan terhadapa pengambilan alasan untuk fakta yang diberikan. Tidak hanya mengijinkan untuk
fakta yang lain yang terkait dengan perubahan fakta. Tipe inferensi ini bernilai
untuk aplikasi yang bersifat perencanaan, desain atau penjadwalan.
e. Explanation Facilites
Bagian ini adalah bagian untuk melakukan penjelasan dari sistem pakar
kepada pengguna. Penjelasan yang dihasilkan meliputi justifikasi dari kesimpulan yang dihasilkan oleh sistem, penjelasan kenapa sistem memerlukan data yang
dimasukkan oleh pengguna, dan dimana kegunaan penjelasan yang dihasilkan,
panduan dan langkah-langkah mengatasi masalah yang diinginkan oleh pengguna.
Fasilitas penjelasan ini menyediakan keterbukaan bagi pengalasan di
dalam sistem pakar. Bagian ini merupakan bagian yang memberikan sisi interaktif
terhadap sistem, ketika pengguna ingin mengetahui kenapa pertanyaan diberikan
kepada dirinya, bagaimana hasil jawaban disajikan.
Sebagai contohnya sebuah sistem pendiagnosisan penyakit di dunia
kedokteran, dimana hasil keluaran dari sistem ini adalah sebuah rekomendasi obat
dan saran serta langkah yang bisa dilakukan oleh pasien. Selama proses konsultasi
dengan sistem, pengguna mungkin ingin mengetahui kenapa informasi yang
ditanyakan itu diperlukan, dan pada akhirnya rasionalitas bagaimana sistem pakar
akan sampai pada kesimpulan memberikan rekomendasi obat akan dipaparkan.
Oleh karena obat yang disarankan merupakan hasil dari penilaian dari pakar, akan
sangat mudah melihat kenapa pengguna ingin mengetahui kenapa sistem bisa
sampai kepada rekomendasi obat ini.
f. User Interface
Antarmuka adalah bagian dimana interaksi antara manusia dan sistem
pakar dilakukan, pada bagian ini akan ada pertanyaan-pertanyaan yang diberikan
oleh sistem pakar untuk dijawab oleh pengguna.
Salah satu isu dalam desain ketika membangun sebuah sistem pakar dapat
kita jabarkan dari sistem pakar MYCIN, dimana pada sistem itu pembangun aplikasi menekankan pada pentingnya menyediakan antarmuka yang mudah
digunakan oleh pengguna dan mampu memenuhi semua kebutuhan pengguna.
Oleh karena itu sangat penting untuk memahami keinginan pengguna sebelum
Ada beberapa poin yang harus diperhatikan untuk memenuhi keinginan
pelanggan. Diantaranya adalah sebagai berikut :
Display Type, sistem pakar generasi awal hanya memaparkan antar muka berdasarkan text, dimana pertanyaan diberikan ke pengguna berupa text dan
jawaban diberikan melalui keyboard dengan mengetikkan jawaban tersebut. Pada
saat ini sistem pakar sudah menggunakan graphical user interface (GUI) yang membuat pengguna dapat berinteraksi lebih interakrif dengan sistem.
Information entry, banyak metode bagaimana pengguna memasukkan informasi ke dalam sistem. Cara yang paling sederhana adalah dengan mengetikkan jawaban
terhadap pertanyaan yang diberikan, atau dengan mengisi form secara
keseluruhan. Sebuah pertanyaan dapat ditujukan untuk satu jawaban, ataupun
jawaban bisa lebih dari satu dipilih dari list yang disediakan.
g. Database
Pada basisdata ini dilakukan penyimpanan data-data yang berasal dari
mesin inferensi. Data yang disimpan adalah data yang berhubungan dengan fakta
ataupun data gejala, dll.
Dari beberapa komponen sistem pakar yang sudah dijabarkan bisa dilihat bahwa
satu komponen memiliki kebergantungan terhadap komponen lain.
2.2.2.1Rule Based Expert System
Penghasil aturan (production rule) pertama kali di paparkan oleh Emil Post pada tahun 1943 (Post...), dalam mengkategorikan metode di dalam komputasi.
Kemudian diterapkan sebagai aturan penulisan kembali di bidang pemprosesan
bahasa pada tahun 1957 oleh Chomsky, dan digunakan oleh Newell dan Simon
didalam pemodelan penyelesaian masalah manusia (Newell-Simon,...). Teknik ini
diadaptasikan kedalam sistem pakar DENDRAL dan MYCIN untuk merepresentasikan pengetahuan dan menjadikan teknik ini sebagai teknik paling
populer didalam pembangunan sistem pakar pada tahun 1970an.
maka kita melakukan backward chaining, jika arah dilakukan dari penyabab ke konsekuensi maka kita melakukan forward chaining.
Cara kerja sistem pakar berbasis aturan dapat dijabarkan sebagai berikut
1. Sistem pakar menetapkan basis aturan dengan bentuk xi....xn → yi....yn dimana xi adalah mewakilkan fakta dan yi mewakilkan tindakan yang
akan dilakukan.
2. Sistem akan membuat memory yang bekerja terus memasukkan fakta yang
diambil dari domain masalah atau dari inferensi yang dihasilkan oleh
sistem.
3. Untuk setiap perulangan, sistem akan mengkomputasikan sebuah
kumpulan aturan yang memiliki kesesuaian atau keterikatan dengan fakta
yang disimpan didalam memori yang bekerja, atau proses ini biasa disebut
dengan tahap pencocokan.
4. Sebuah aturan dari kumpulan aturan yang telah disesuaikan tadi akan
dipilih untuk dieksekusi, proses ini dinamakan sebagai fase resolusi
konflik.
5. Aturan yang dipilih kemudian dieksekusi.
2.2.2.2Case Based Expert System
Cara lain didalam inferensi yang dilakukan oleh sistem pakar adalah
menggunakan pencarian alasan melalui kasus-kasus, biasa disebut juga sebagai
CBR (Case Based Reasoning). CBR ini menggunakan sebuah explicit basisdata dari solusi masalah untuk mengalamatkan situasi baru dalam penyelesaian
masalah. Solusi yang ada dapat dikumpulkan dari pakar manusiaatau melalui hasil
sebelumnya dari keberhasilan terdahulu. Contohnya didalam kedokteran, dimana
sebuah solusi tidak hanya dilihat dari teori yang tersedia, akan tetapi juga melihat
kasus yang pernah terjadi terhadap pasien terdahulu dan penangannya.
2.2.2.3Model Based Expert System
Pada jenis ini, sistem pakar dapat dilihat sebagai hasil penggabungan dari a
sebuah pemodelan dari suatu area pengetahuan yang digunakan, yang mana
masalah-masalah yang berhubungan dengan keinginan pengguna sistem pakar.
Poin utama dari sistem pakar ini adalah model yang ada tidak hanya memberikan
pengalaman heuristik seorang pakar, tetapi juga lebih kepada prinsip awal dari deskripsi pengetahuan yang diinginkan.
2.3 Sistem Pakar pada bidang Kesehatan
Berdasarkan literatur survey yang dilakukan oleh (Durkin, 1994), MYCIN merupakan sistem pakar yang pertama sekali digunakan untuk mendiagnosa
bakteri penyebab infeksi, kemudian dilanjutkan dengan sistem pakar PUFF yang dibangun untuk mendiagnosa penyakit lambung, sistem pakar ANGY yang mampu menolong dokter mendiagnosa penyempitan pembuluh darah, dan sistem pakar
BABY yang memberikan bantuan kepada dokter dalam memonitoring kelahiran bayi dalam kondisi ICU (Giarratano, 2005).
Dari survey literatur yang sudah dilakukan, dapat disimpulkan bahwa sistem
pakar telah banyak digunakan di dunia medis secara luas, mulai dari area
pendiagnosisan sampai dengan kemampuan memberikan fasilitas publik sebagai
alat saran bagi pasien.
2.4 Backward Chaining
Metode backward chaining merupakan kebalikan dari metode forward chaining dan sering disebut penalaran mundur (Kusrini, 2006). Menurut Schnupp dalam
(Kusrini, 2008), metode backward chaining (runut balik), penalaran dimulai dengan tujuan merunut balik ke jalur yang akan mengarahkan ke tujuan tersebut
menurut Giarattano dan Riley dalam (Kusrini, 2006).
Adapun karakteristik backward chaining adalah :
a. Metode backward chaining lebih cocok digunakan untuk menentukan masalah diagnosis.
b. Metode backward chaining digunakan untuk masa lalu.
c. Tujuan metode backward chaining adalah memandu, penalaran dari atas ke bawah.
d. Bekerja ke belakang untuk mendapatkan fakta yang mendukung
e. Depth first search dimudahkan. f. Konsekuen menentukan pencarian.
g. Penjelasan difasilitasi.
Dalam metode backward chaining, akan dipilih satu aturan dari kesimpulan
dan menganggapnya sebagai masalah yang harus diselesaikan. Setelah masalah
tersebut diselesaikan, akan dipilih salah satu dari sub masalah untuk dievaluasi
dan sub masalah yang terpilih itu kemudian menjadi sub masalah baru.
Observasi 1
Aturan A Fakta 1
Observasi 2
Aturan D
Aturan B Fakta 2 Kesimpulan
Aturan E
Observasi 3
Aturan C Fakta 3
Observasi 4
Berikut ini kami paparkan beberapa penelitian terdahulu dari sistem pakar
yang digunakan untuk Pendiagnosisan Penyakit :
Tabel 2.3 Penelitian Sebelumnya
Sumber Definisi
Ahmad ( 2012 ) Ahmad A, menjabarkan didalam riset yang
dilakukannya untuk mengimplementasikan sistem
pakar berbasis rule untuk diterapkan pada diagnosis
dan symphtom penyakit saraf, sistem yang dibangun
dapat membedakan 10 penyakit saraf, diantaranya
adalah : Alzheimer Parkinson, Huntington’s disease, Celebral Palsy, Meningitis, Epilepsy, Multiple Sclerosis, Stroke, Cluster headache, Migraine, Meningitis for Children.
Saurkar ( 2012 ) Pada penelitian ini saurkar memaparkan sebuah
pengimplementasian sistem pakar berbasis aturan
untuk pendiagnosisan penyakit pada hewan.
Aplikasi yang dibangun memiliki basis data citra
untuk jenis penyakit hewan, sistem pakar mampu
menghadirkan gambar penyakit hewan dalam
pengambilan keputusan yang dilakukan dalam
sistem ini.
Nana ( 2012 ) mMes (Mobile Medical Expert System) sebuah aplikasi sistem pakar mobile yang digunakan untuk
layanan pasien di rumah sakit di Ghana, sistem ini
memungkinkan sistem pakar dipakai secara mobile
dan terkoneksi dengan pakar lain didaerah berbeda.
Rajdeep ( 2012 ) Pada jurnal yang dipaparkan oleh Rajdeep,
dipaparkan implementasi dari sistem pakar berbasis
saraf otot. Sistem yang dibangun didalam Java
untuk mendiagnosis penyakit seperti CelebralPalsy, Multiple Sclerosis, Muscular Dystrophy, dan
Parkinson’s. Sistem ini memberikan kumpulan pertanyaan berkenaan dengan symptom penyakit
pasien berdasarkan penyakit yang di diagnosakan
kepada pasien dan memberikan saran mengenai
perawatan yang diberikan kepada pasien tersebut.
Smitha ( 2010 ) Smitha menghasilkan sebuah sistem pakar untuk
mendiagnosa penyakit diabetes, dipaparkan melalui
thesis masternya. Informasi yang diberikan tidak
hanya komplikasi yang terjadi akibat penyakit ini
saja, tetapi juga alat diagnosa awal penyakit.
Pendekatan yang digunakan adalah berbasis aturan,
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Sistem pakar untuk diagnosa penyakit bukanlah hal baru di dunia kedokteran dan
sistem pakar, akan tetapi penulis mencoba melakukan di domain area yang
berbeda yaitu penyakit darah. Pada bab ini akan dijelaskan analisis dan
perancangan sistem pakar untuk penyakit darah. Dimulai dari identifikasi dan
spesifikasi dari masalah yang ada agar disesuaikan dengan sistem yang akan
dibuat.
3.1 Identifikasi dan Spesifikasi Sistem
Ada beberapa hal yang akan dikategorikan didalam sistem pakar oleh penulis,
yaitu bentuk penyakit darah yang akan dikumpulkan dan dibuat didalam basis
pengetahuan, disusun menurut sistem pakar berbasis aturan (rule based expert system) dengan metode inferensi yaitu backward chaining. Sistem pakar yang dirancang bertujuan untuk membantu pasien dalam menangani gejala penyakit
yang diderita serta melakukan diagnosis terhadap penyakit tersebut dan membantu
dokter ahli dalam menangani penyakit tersebut. Implementasi backward chaining dalam pendeteksian penyakit darah merupakan suatu sistem yang menganalisa
data gejala yang dialami pasien untuk menghasilkan diagnosa jenis penyakit yang
diderita. Input dari sistem berupa gejala yang dialami pasien, update, basis
pengetahuan dan basis aturan yang merupakan salah satu komponen penting
dalam sistem pakar yang merupakan fasilitas yang disediakan bagi pakar.
Sistem dibangun dengan menggunakan bahasa pemrograman Visual Basic 2008 dengan basisdata MySQL.
3.2Pengumpulan Pengetahuan
Berdasarkan fakta yang disadur dari beberapa referensi yaitu (Bakta, 2003),
(Hillman, 2002), dan (Harmening, 2002) dan hasil wawancara dengan Dr. Ronny
dikumpulkanlah pengetahuan yang akan dijadikan sebagai basis pengetahuan di
dalam sistem pakar yang akan dibangun, dipaparkan dalam tabel dibawah ini :
Tabel 3.1 Tabel Anemia
No Fakta
Kesimpulan
Sympthom dan Gejala dan Batasan Penyakit
1. Anemia Gejala Klinik
- Laki-laki, umur >15 dan hemoglobin <13g/dl
- Perempuan, umur > 15 dan hemoglobin < 12g/dl
- Prempuan,umur >15 dan hamil dan hemoglobin
< 11g/dl
- Anak-anak, 6<umur<14, dan hemoglobin < 12g/dl
- Anak-anak, ½ < umur < 6, dan hemoglobin <
2. Anemia Ringan - 8 g/dl< Hemoglobin < 9,9g/dl
3. Anemia
Menengah
- 6 g/dl < Hemoglobin < 7,9g/dl
4. Anemia Berat Hemoglobin < 6g/dl
7. Anemia
Sakit Kepala, pusing , telinga mendesing , mata
berkunang-kunang, kelemahan otot, lesu, perasaan
dingin
10. Anemia
Mengenai Sistem
Urogenital
Gangguan haid, libido menurun, Pembengkakan
Testis
11. Anemia mengenai
Epitel
Warna kulit pucat, rambut tipis, elastisitas kulit
menurun
12. Anemia defisiensi
besi
- Disfagia, atrofi papil lidah, stomatitis angularities
- Anemia Hipokromik Makrositer
- Besi Pada Sumsum Tulang Negatif
- Besi Serum Menurun (<50 mg/dl)
- TIBC menaik (>350 mg/dl)
- Feritin Menurun (< 20 µg/dl)
- Kuku Sendok, menjadi rapuh, bergaris-garis
vertikal
- Permukaan lidah menjadi licin
- Radang pada sudut mulut
- Nyeri menelan
- Besi pada susmsum tulang positif
- Besi Serum Menurun (<50 mg/dl)
- Feritin Menurun/Normal (20 µg/dl - 200 µg/dl)
14. Anemia
Thallasemia
- Anemia Hipokromik Makrositer
- Besi pada sumsusm tulang Positif kuat
- Besi Serum Normal
- Feritin Meningkat (> 50 µg/dl)
- Elektroforesis HB
- Feritin Normal (200 µg/dl)
- Besi pada sumsum tulang positif dengan ring
- Kadar Bilirubin Inderik Serum Meningkat
-LDH Meningkat
17. Anemia hemolitik - Ikterus dan hepatosplenomegali
- Kholelithiasis
- Ulkus pada Kaki
- Kelainan pada tulang yaitu penebalan tulang
frontalis dan parietalis
- Penurunan Masa Hidup Eritrosit (<120hari)
- Tidak ada pendarahan ke dalam rongga tubuh
- Penurunan hemoglobin > 1 g/dl dalam waktu 1
minggu
- Hemoglobinuria, urine berwarna merah,
kecoklatan atau coklat hitam.
- Anemia Normokromik Normositer
- Pendarahan Gusi
- Ulserasi Mulut atau tenggorokan
- Anemia Normokromik Normositer
- Besi serum normal atau meningkat
- TIBC Normal,
- HbF meningkat
- terdapat retikulositopenia
- terjadi trombositopenia
Sumber : Bhakta, (2003)
Berdasarkan pengumpulan pengetahuan penulis mendapatkan bahwa
penyakit anemia memiliki standar basis WHO untuk penyakit anemia secara
kesuluruhan dimana penyakit ini dapat diukur dari kadar hemoglobin darah, dan
kategori anemi dapat dibagi menjadi tiga berdasarkan derajat tingkatnya yaitu
anemia ringan, anemia menengah, dan anemia berat.
Sedangkan berdasarkan kategori anemia, dibagi menjadi tiga kategori besar
yaitu, Anemia Makrositer, Anemia Normokromik Normositer dan Anemia
Hipokromik Makrositer. Pengumpulan Pengetahuan yang dilakukan akan diubah
dalam bentuk basis pengetahuan untuk menghasilkan aturan-aturan yang dapat
diinferensikan melalui mesin inferensi untuk menghasilkan keputusan. Adapun
penjelasan tentang itu akan dipaparkan pada sub-bab berikut ini.
3.3Representasi Pengetahuan 3.3.1 Basis Pengetahuan
Basis pengetahuan adalah proses merubah fakta dan gejala/data menjadi rule-rule
(aturan-aturan) yang menjadi basis dalam sistem pakar untuk mengambil
kesimpulan atau fakta. Berikut ini adalah beberapa aturan yang dapat dihasilkan
dari pengumpulan pengetahuan diatas :
1. If ((umur_pasien > 15thn)&&(hemoglobin< 13 g/dl)&&(laki-laki))
Then Anemia (35%)
2. If ((umur_pasien > 15thn) && (hemoglobin < 12 g/dl) && (perempuan))
3. If((umur_pasien > 15thn) && (hemoglobin < 12 g/dl) && (perempuan_hamil))
Then Anemia (35%)
4. If (( 6>umur_pasien > 14thn) && (hemoglobin < 12 g/dl) )
Then Anemia (35%)
5. If ((umur_pasien < 6 thn) && (hemoglobin < 11 g/dl) )
Then Anemia (35%)
6. If ((hematrokrit < 30%))
Then Anemia 50%
7. If ((eritrosti < 2,8juta/mm3)
Then Anemia 75 %
8. If (warna kulit pucat || telapak tangan kuning)
Then Anemia 90%
9. If (nyeri tulang)
Then Anemia 100%
10. If (hemoglobin 8-9,9 g/dl)
Then Anemia Ringan
11. If (hemoglobin 6-7,9 g/dl)
Then Anemia Sedang
12. If (hemoglobin < 6 g/dl)
Then Anemia Berat
13. If (Indeks Eritrosit MVC < 80fl && MCH < 27 pg)
Then Anemia Hipokromik Makrositer
14. If (Indeks Eritrosit MVC = 80fl – 95fl && MCH = 27pg – 34 pg) Then Anemia Normokromik Normositer
15. If (Indeks Eritrosit MVC > 95fl)
3.3.2 Mesin Inferensi Backward Chaining
Proses inferensi yang dilakukan adalah proses memasukkan susunan pertanyaan
kedalam working memory (ingatan yang bekerja). Berikut adalah contoh pertanyaan yang akan diberikan jika menggunakan proses inferensi backward
chaining :
3.2 Tabel Pertanyaan
No Jenis Pertanyaan Untuk Fakta
1 Apakah Besi Serum Anda Menurun? 12,13
2 Apakah Besi Serum Anda Normal? 14,15
3 Apakah TIBC Anda Menaik? 12
4 Apakah Feritin Anda Menurun? 12
5 Apakah Besi Sum-Sum Tulang Negatif? 12
6 Apakah TIBC Anda Menurun? 13
7 Apakah Feritin Anda Menaik? 13
8 Apakah Besi Sum-sum Tulang Positif? 13
9 Apakah Feritin Anda Normal? 14,15
10 Apakah terdapat Eletroforesis HB? 14
11 Apakah Hb A2 Menaik? 14
12 Apakah HbF Menaik? 14
13 Apakah Besi Sum-sum Tulang mengandung Ring
Sideroblast?
15
14 Apakah Ada gejala Lidah Merah? 16
15 Apakah Ada gejala Leukopenia Ringan? 16
16 Apakah Kadar Bilirubin Inderik Serum Anda Meningkat? 16
17 Apakah LDH Anda Meningkat? 16
18 Apakah terdapatIkterus dan hepatosplenomegali? 17
19 Apakah terdapat Kholelithiasis? 17
20 Apakah terdapat Ulkus pada Kaki? 17
21 Apakah terdapat kelainan pada tulang yaitu penebalan
tulang frontalis dan parietalis?
17
(<120hari)?
23 Apakah tidak ada pendarahan ke dalam rongga tubuh? 17
24 Apakah terjadi penurunan hemoglobin > 1 g/dl dalam
waktu 1 minggu?
17
25 Apakah terjadi Hemoglobinuria, urine berwarna merah,
kecoklatan atau coklat hitam?
17
26 Apakah terjadi pendarahan kulit/mukosa atau tanda-tanda
infeksi?
18
27 Apakah sering terjadi pendarahan pada gusi? 18
28 Apakah terjadi ulserasi Mulut atau tenggorokan? 18
29 Apakah TIBC Anda Normal? 18
30 Apakah HbF Anda meningkat? 18
31 Apakah terdapat retikulositopenia? 18
32 Apakah terjadi trombositopenia? 18
33 Apakah Warna kulit pucat ? 11
34 Apakah rambut tipis ? 11
35 Apakah elastisitas kulit menurun? 11
36 Apakah terjadi gangguan haid ? 10
37 Apakah libido menurun? 10
38 Apakah terjadi pembengkakan Testis? 10
39 Apakah anda sering mengalami Sakit Kepala? 9
40 Apakah telinga mendesing ? 9
41 Apakah mata berkunang-kunang? 9
42 Apakah terjadi kelemahan pada otot? 9
43 Apakah sering lesu ? 9
44 Apakah sering terjadi perasaan dingin? 9
45 Apakah sering cepat lelah? 8
46 Apakah sesak ketika bekerja? 8
47 Apakah anda gagal jantung? 8
48 Apakah Indeks Eritrosit MVC < 80fl? 5
49 Apakah Indeks Eritrosit MCH < 27 pg? 5
51 Apakah Indeks Eritrosit 27pg < MCH < 34 pg ? 6
52 Apakah Indeks Eritrosit MVC > 95fl? 7
53 Apakah kadar 8 g/dl< Hemoglobin < 9,9g/dl ? 2
54 Apakah kadar 6 g/dl < Hemoglobin < 7,9g/dl ? 3
55 Apakah kadar Hemoglobin < 6g/dl ? 4
56 Apakah Anda Laki-laki, umur>15 dan hemoglobin
<13g/dl?
1
57 Apakah Anda Perempuan, umur > 15 dan hemoglobin <
12g/dl ?
1
58 Apakah Perempuan,umur >15 dan hamil dan hemoglobin <
11g/dl?
1
59 Apakah Anak-anak, 6<umur<14, dan hemoglobin <
12g/dl?
1
60 Apakah Anda Anak-anak, ½ < umur < 6, dan hemoglobin
< 11g/dl?
1
61 Apakah kadar Hematokrit < 30% ? 1
62 Apakah kadar Eritrosi < 2,8juta/mm3 ? 1
3.3.2.1Flowchart Backward Chaining
Pada gambar flowchart dibawah ini penulis menjelaskan alur proses dari bagaimana metode inferensi backward chaining dilakukan, proses pertama adalah melakukan pertanyaan yang berada pada level atas dari pohon keputusan, yang
mana pertanyaan adalah dalam bentuk yang telah dijabarkan dalam sub bab diatas.
Kemudian jawaban yang diberikan akan menentukan pertanyaan selanjutnya yang
akan diberikan, karena disini rule akan bekerja untuk menentukan logika
pertanyaan selanjutnya. Disinilah mesin inferensi dapat menentukan alur dari
pohon keputusan agar menghasilkan kesimpulan yang tepat pada solusi yang akan
Start
Pertanyaan
Jawab
Simpan dari Jawaban
Ya
Jenis Penyakit
Output
End Ya
Ya
Tidak Tidak
Pilih jenis penyakit
Darah
3.3.3 Pohon Keputusan (Decision Tree)
Berdasarkan tabel pengumpulan pengetahuan di atas, dibawah ini akan dipaparkan
pohon keputusan yang menghubungkan satu fakta/kenyataan dengan fakta lain,
yang berarti jika fakta pada level paling bawah dianggap tidak benar maka
gugurlah semua fakta yang ada diatasnya, akan tetapi jika di setiap level fakta itu
benar maka dapat diambil kesimpulan jenis anemia yang dihidap oleh si pasien.
Pada setiap garis penghubung dari satu fakta ke fakta lain akan terdapat gejala dan
symptom dengan kondisi (dan) dan (atau).
Contoh : Pada diagnosa penyakit Anemia Aplastik beberapa pertanyaan yang akan diberikan sistem yang mana sesuai dengan gejala penyakit anemia aplastik yaitu “apakah terjadi trombositopenia?” jika pasien menjawab ya maka sistem akan melanjutkan ke pertanyaan selanjutnya yaitu “apakah terjadi pendarahan kulit/muktosa/tanda infeksi?” dan jika pasien menjawab tidak maka sistem akan memberikan pertanyaan yang berkaitan dengan jenis penyakit yang diderita pasien sebenarnya yaitu “apakah sering terjadi pendarahan gusi?” dan jika jawaban pasien adalah ya maka sistem langsung memberikan diagnosa awal
penyakit yaitu anemia aplastik, dan apabila pasien menjawab tidak maka pasien di
diagnosa penyakit anemia ringan sesuai dengan gejala yang diderita pasien.
Gambar 3.4 Pohon Keputusan Berdasarkan Fakta
Keterangan :
Lambang bulat adalah proses sistem dalam memberikan
pertanyaan-pertanyaan yang ditujukan kepada pasien, sedangkan lambang garis adalah
penghubung proses untuk menuju ke pertanyaan. ANEMIA
Anemia
aplastik Apakah terjadi trombositopenia
Apakah terjadi pendarahan
kulit/muktosa/tanda infeksi
Apakah sering terjadi pendarahan pada gusi
Anemia aplastik
3.4 Analisis Sistem
3.4.1 Data Flow Diagram
Untuk memaparkan aliran dari data didalam sistem yang akan dibangun, penulis
meletakkan data flow diagram mulai dari Context Diagram, Data Flow Diagram Level 1 dan Data Flow Diagram Level 2.
3.4.2 Context Diagram
Penjelasan proses diagram konteks implementasi sistem pakar untuk mendiagnosa
penyakit transportasi darah pada manusia adalah sebagai berikut:
a. Proses
Nama Proses : Implementasi Sistem Pakar Mendiagnosa penyakit
Transportasi Darah pada Manusia
Keterangan : Proses diagnosa penyakit Transportasi Darah pada
Manusia berdasarkan gejala-gejala yang dialami.
b. Arus Data : - Data Pasien
- Data Admin
- Data Gejala
- Data Penyakit
c. Entitas Luar Nama Entitas : Admin
Keterangan : Merupakan bagian yang mengontrol dan
memperbaiki sistem
Masukan : - Data Admin
- Data Gejala
- Data Penyakit
- Data Aturan (pohon)
- Data Relasi
Keluaran : - Data Admin
- Data Gejala
- Data Penyakit
- Data Aturan (pohon)
- Data Relasi
Nama Entitas : Pasien
Keterangan : Merupakan pengguna yang menggunakan sistem
untuk mengetahui penyakit yang dideritanya
Masukan : - Data Pasien
- Jwb_penyakit
Keluaran : - Data pasien
- Data Gejala
- Data Penyakit
3.4.2.1 DFD Level 1
Penjelasan Proses DFD Level 1 implementasi sistem pakar untuk
mendiagnosa penyakit transportasi darah pada manusia adalah sebagai berikut:
a. Proses P.1
Nama Proses : Menu Pasien
Masukan : Data Pasien, Jwb_pertanyaan
Keluaran : Data Pasien, Data Gejala, Data Penyakit
b. Proses P.2
Nama Proses : Menu Admin
Masukan : Data Admin, Data Gejala, Data Penyakit, Data Aturan
(pohon), Data Relasi
Keluaran : Data Admin, Data Gejala, Data Penyakit, Data Aturan
(pohon), Data Relasi.
Keterangan : Mengolah data yang digunakan dalam mendiagnosis
penyakit.
Pada gambar data flow diagram level 1 diatas dijelaskan bagaimana aliran data yang terhubung dengan database dan antarmuka pengguna, dimana Admin
dan Pasien sebagai user akan terhubung dengan antar muka Menu user dan Menu
Admin dan antarmuka merupakan penghubung dengan Database. Tabel database
yang terlibat adalah tabel admin, tabel aturan, tabel gejala, dan tabel penyakit.
Input kedalam database juga akan dilakukan oleh pengguna melalui antarmuka
3.4.2.2DFD Level 2
Gambar 3.7 DFD Level 2 untuk Pasien
Proses P.1.1
Nama Proses : Daftar Pasien
Masukan : Data Pasien
Keluaran : Data Login Pasien
Keterangan : Proses untuk mengakses sistem
Proses P.1.2
Nama Proses : Konsultasi
Masukan : Data Login Pasien, Jwb_pertanyaan
Keluaran : Data Gejala, Data Penyakit, Hasil Konsultasi.
Keterangan : Pasien dapat melakukan konsultasi untuk mendapatkan hasil
diagnosis.
Nama Proses : History
Masukan : Data Login Pasien
Keluaran : Lap.Hasil Konsultasi
Keterangan : Pasien dapat melihat history penyakit
Pada Data Flow Diagram ini digambarkan bahwa pasien bisa melakukan akses terhadap sistem dengan 3 jenis antar muka yang berbeda yaitu, Daftar
Pasien, Konsultasi, dan History. Daftar Pasien digunakan untuk memasukkan data
pasien dan user login, yang terhubung dengan database tabel pasien. Antarmuka
yang kedua adalah konsultasi, dimana pertanyaan dari sistem pakar akan di
berikan di antarmuka ini, akses langsung kepada tabel penyakit di database, tabel
penyakit dan tabel gejala akan terhubungkan melalui antarmuka ini, sehingga
proses inferensi didalam sistem pakar dapat berjalan. Kemudian hasil inferensi
dari sistem pakar tersebut akan dimasukkan kedalam tabel hasil. Pemaparan dari
2.1
Gambar 3.8 DFD Level 2 untuk Admin
Proses P.2.1
Nama Proses : Login Admin
Masukan : Data Login Admin
Keluaran : Data Login Admin
Keterangan : Proses untuk mengakses sistem
Proses P.2.2
Nama Proses : Data Gejala
Masukan : Entry Data Gejala
Keterangan : Admin mengentry data gejala dalam sistem.
Proses P.2.3
Nama Proses : Data Penyakit
Masukan : Entry Data Penyakit
Keluaran : Data Penyakit
Keterangan : Admin mengentry data penyakit dalam sistem.
Proses P.2.4
Nama Proses : Data Aturan
Masukan : Entry Data Aturan
Keluaran : Data Aturan
Keterangan : Admin mengentry data aturan dalam sistem
Proses P.2.5
Nama Proses : Data Relasi
Masukan : Entry Data Relasi
Keluaran : Data Relasi
Keterangan : Admin mengentry data relasi dalam sistem.
Proses P.2.6
Nama Proses : Data Laporan
Masukan : Data Laporan, Data Hasil
Keluaran : Laporan Hasil Konsultasi
Keterangan : Admin mencetak laporan hasil konsultasi
Untuk pengguna admin maka desain data flow diagram akan
Login digunakan untuk pengaturan pengguna, user id, dan password yang
tersimpan di tabel admin di database. Entry Gejala digunakan untuk pengaturan
gejala apa yang diinginkan agar setiap jenis gejala penyakit tersimpan di dalam
tabel gejala. Begitu juga dengan Entry Penyakit, merupakan antarmuka yang
digunakan untuk memasukkan data tentang penyakit tersebut kedalam database
dan tersimpan didalam tabel penyakit di database. Untuk menghubungkan antara
data Penyakit dan data Gejala, maka dibuat Entry Aturan, Entry Aturan ini
merupakan penghubung antara Gejala dan Penyakit, sehingga tercipta rule-rule
atau aturan di basis pengetahuan sistem pakar yang dibangun. Tabel aturan
digunakan untuk menyimpan data mengenai aturan yang ada. Yang terakhir
adalah antarmuka Laporan, antarmuka ini digunakan untuk memaparkan dan
mencetak hasil dari inferensi dan juga data pasien tersebut.
3.5 Perancangan Tabel
Dalam suatu aplikasi sebuah program banyak digunakan tabel-tabel untuk
mempermudah pengguna dalam rangka menyimpan data sesuai dengan yang
diinginkan dan juga dapat didokumentasikan. Adapun rancangan tabel tersebut
adalah sebagai berikut :
a. Tabel Admin
Tabel ini digunakan untuk menyimpan data seorang admin yang berhak
dan memiliki otoritas untuk mengakses basis aturan dan basis
pengetahuan pada sistem pakar.
Tabel 3.9 Tabel Admin
Field Type Size Keterangan
Username
(Primary
Key)
Varchar 20 Nama pemakai
Alamat Varchar 50 Alamat pemakai
Password Varchar 7 Password Pemakai
b. Tabel Gejala
Tabel ini digunakan untuk menyimpan data beberapa gejala yang
mengindifikasikan suatu penyakit.
Tabel 3.10 Tabel Gejala
Field Type Size Keterangan
ID Int 11 Id gejala
Nm_gejala Varchar 500 Nama gejala
c. Tabel Hasil
Tabel ini digunakan untuk menyimpan hasil dari indikasi penyakit.
Tabel 3.11 Tabel Hasil
Field Type Size Keterangan
ID Varchar 50 Id hasil
Username Varchar 20 Nama pemakai
Waktu Datetime Waktu konsultasi
id_penyakit Int 11 Id penyakit
d. Tabel Jawab Pasien
Tabel 3.12 Tabel Jwb_Pasien
Field Type Size Keterangan
ID Int 8 ID pasien
Username varchar 20 Nama pasien
Id_gejala Int 11 ID gejala
e. Tabel Pasien
Tabel ini digunakan untuk menyimpan data yang telah diisikan pasien
pada saat registrasi ke sistem
Tabel 3.13 Tabel Pasien
Field Type Size Keterangan
Username Varchar 20 Id pasien
Nama Varchar 50 Nama pasien
Alamat Varchar 100 Alamat pasien
Jenis_kelamin Varchar 20 Jenis kelamin
pasien
Email Varchar 20 Email pasien
Gol_darah Varchar 3 Gol darah pasien
Password varchar 7 Password
f. Tabel Penyakit
Tabel 3.14 Tabel Penyakit
Field Type Size Keterangan
ID Int 11 Id penyakit
Nm_penyakit Varchar 500 Nama penyakit
Ket_penyakit text Keterangan
penyakit
g. Tabel Pohon Keputusan
Tabel pohon keputusan adalah table aturan yang akan digunakan dalam
proses penelusuran dari suatu sistem.
Tabel 3.15 Tabel Pohon Keputusan
Field Type Size Keterangan
No_id Int 11 Nomor id pertanyaan
ID Int 11 Id pertanyaan
Id_ya Varchar 10 Id jawaban ya
Id_tidak Varchar 10 Id jawaban tidak
h. Tabel Relasi
Tabel ini berisi data yang menunjukkan relasi antara gejala dengan
penyakit yang diindikasikan selama pemeriksaan.
Tabel 3.16 Tabel Relasi
ID Int 11 Nama penyakit
Id_penyakit Int 11 Id penyakit
Id_gejala Int 11 Id gejala
3.6 Perancangan AntarMuka (User Interface)
Rancangan antar muka ini dibuat untuk mempermudah user dalam berinteraksi
dengan sistem ini. Adapaun rancangan antarmuka sistem ini sebagai berikut :
Gambar 3.17 Rancangan Tampilan
LOGO USU
Penyakit Anemia
INFORMASI
DAFTAR
PASIEN
ADMIN
KELUAR
Gambar 3.18 Perancangan Pendaftaran Pasien
Gambar 3.19 Perancangan Login Pasien
LOGO USU
Penyakit AnemiaUsername
Nama
Jenis Kelamin
Alamat
Golongan Darah
Password
Konfirmasi Password
INFORMASI
DAFTAR
PASIEN
ADMIN
KELUAR
DAFTAR BATAL
LOGO USU
Penyakit Anemia
LOGIN INFORMASI
DAFTAR
PASIEN
ADMIN
KELUAR
Username
Password
Gambar 3.20 Perancangan konsultasi pasien
Gambar 3.21 Perancangan Gejala
LOGO USU
Penyakit AnemiaDiagnosa Gejala
Jawablah pertanyaan dibawah ini dengan mengklik salah satu dari tombol
INFORMASI
DAFTAR
PASIEN
ADMIN
KELUAR
Apakah anda mengalami kadar eritrosit kurang dari 2,8 juta / mm3 ?
YA TIDAK
LOGO USU
Penyakit AnemiaData Gejala
Gejala
INFORMASI
DAFTAR
PASIEN
ADMIN
KELUAR
tambah update hapus bersihkan tutup
ID Gejala Keterangan
1 …….. ………. ………