• Tidak ada hasil yang ditemukan

T1 672010078 Full text

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 672010078 Full text"

Copied!
27
0
0

Teks penuh

(1)

Sistem Pakar Pendiagnosa Penyakit Ginjal

menggunakan Metode Penalaran Forward

Chaining dan teknik penelusuran Best-First Search

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

Untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Elisa Ryko Aditya (672010078) Hindriyanto Dwi Purnomo, ST., MIT, Ph.D

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(2)
(3)
(4)
(5)
(6)
(7)

vii Sistem Pakar Pendiagnosa Penyakit Ginjal menggunakan Metode Penalaran Forward Chaining dan teknik penelusuran Best-First Search

1)

Elisa Ryko Aditya, 2)Hindriyanto Dwi Purnomo

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email : 1)[email protected], 2)[email protected]

Abtract

Expert system is computer based system that used fact, knowledge and, specific reasoning technique from an expert to solving problems. This expert system application, giving the possibility of kidney disease of the user based on symptoms experienced. This expert system using Best-First Search algorithm at this inference. Make this expert system smarter that doesn’t to test all information. And Forward Chaining reasoning used as the foundation of this expert system design.

Key Words :Expert System, Forward Chaining, Best-First Search

Abstrak

Sistem pakar adalah sistem berbasis komputer yang menggunakan fakta, pengetahuan, dan teknik penalaran yang di dapatkan dari seorang pakar dalam memecahkan masalah. Aplikasi sistem pakar ini memberi kemungkinan diagnosa penyakit ginjal yang dialami pengguna berdasarkan gejala yang dialaminya. Dalam implementasinya, sistem pakar ini menggunakan algoritma Best-First Search dalam melakukan inferensinya. Keuntungannya adalah tercipta sistem pakar yang pintar tanpa harus menguji semua informasi. Dan metode pencarian

Forward Chaining sebagai dasar yang digunakan dalam perancangan sistem pakar ini.

Kata Kunci: Sistem Pakar, Forward Chaining, Best-First Search

1

Mahasiswa Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

2

(8)

1 PENDAHULUAN

Saat ini penyakit ginjal adalah penyakit pembunuh nomor 2 di dunia. Diperkirakan ada lebih dari 25 Juta penduduk Indonesia yang mengalami gangguan fungsi ginjal. Dan pertumbuhan kasus ginjal kronik stadium akhir di Indonesia mencapai 2000 kasus baru/tahun. [1] Ditambah lagi di Indonesia hanya ada sekitar 100 dokter ginjal untuk menangani jutaan penderita penyakit ginjal di Indonesia. Dalam UU Praktek Kedokteran, satu dokter hanya diperbolehkan praktek di tiga tempat. Sehingga kehadiran dokter ginjal di rasa sangat minim untuk negara Indonesia. Terlebih di kota-kota kecil dan di luar pulau Jawa.

Besarnya jumlah penderita penyakit ginjal ini disebabkan minimnya kesadaran masyarakat tentang gejala awal penyakit ginjal. Kebanyakan rakyat Indonesia tidak memiliki kesadaran untuk melakukan deteksi sedini mungkin terhadap penyakit ginjal dan menghindari pemeriksaan menyeluruh dikarenakan biaya yang terlalu besar. Hasilnya adalah pasien baru melakukan pengobatan setelah kondisi ginjalnya sudah mengalami kerusakan sangat parah dan nyaris tidak berfungsi lagi.

Karena itu perlu dibuat sistem yang dapat membantu mendiagnosa penyakit ginjal berdasarkan gejala-gejala yang sudah dialami. Sistem tersebut adalah sistem pakar. Sistem pakar adalah salah satu bagian dari kecerdasan buatan yang mengandung pengetahuan dan pengalaman yang di dapat dari satu atau banyak pakar menjadi suatu desain pengetahuan tertentu, sehingga setiap orang dapat menggunakanannya untuk menentukan solusi dari gangguan penyakit ginjal tersebut.

Sistem pakar pendiagnosa penyakit ginjal adalah salah satu solusi untuk mengatasi permasalahan tersebut. Pengetahuan dari pakar penyakit ginjal di dalam sistem ini digunakan sebagai dasar oleh Sistem Pakar untuk menjawab pertanyaan (konsultasi) dengan penggunanya nanti. Dengan membangun sistem pakar ini, diharapkan keterbatasan informasi mengenai penyakit ginjal tersebut dapat dikurangi, sekaligus dengan penyajian tertentu dapat membuka mata masyarakat untuk lebih “mengenal” tentang penyakit ginjal supaya risiko penyakit ginjal tidak terlalu parah dan dapat cepat terdeteksi dan diatasi.

1. TINJAUAN PUSTAKA

1.1 Kecerdasan Buatan

Kecerdasan buatan adalah satu ilmu yang mempelajari cara membuat komputer melakukan sesuatu seperti yang dilakukan oleh manusia. Ada tiga tujuan kecerdasan buatan, yaitu: membuat komputer lebih cerdas, mengerti tentang kecerdasan, dan membuat mesin lebih berguna. Salah satu bentuk kecerdasan buatan adalah sistem pakar. Kecerdasan buatan memiliki beberapa domain penelitian, diantaranya : Formal Tasks, Mundane Task, dan Expert Tasks. Dibandingkan dengan kecerdasan ilmiah, kecerdasan buatan memiliki beberapa keuntungan, seperti :[2]

1. Lebih permanen.

(9)

2 3. Relatif lebih murah dari kecerdasan ilmiah.

4. Konsisten dan teliti. 5. Dapat didokumentasi.

6. Dapat mengerjakan beberapa task dengan lebih cepat dan lebih baik dibanding manusia.

1.2 Sistem Pakar

Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah yang biasanya hanya dapat dipecahkan oleh pakar dalam bidang tersebut. [3]

Sistem pakar untuk melakukan diagnosis kesehatan telah dikembangkan sejak pertengahan tahun 1970 oleh Bruce Buchanan dan Edward Shortliffe di Standford University. Sistem ini diberi nama MYCIN.[4]

MYCIN merupakan program interaktif yang melakukan diagnosis meningitis dan infeksi bacremia serta memberi rekomendasi antimikrobia. MYCIN, dalam uji cobanya mampu menunjukkan kemampuan seperti seorang spesialis. Meskipun tidak pernah digunakan secara rutin,oleh dokter, MYCIN merupakan referensi yang bagus dalam penelitian kecerdasan yang lain.[5]

Sistem pakar dapat digunakan oleh:

1. Orang awam yang bukan pakar untuk meningkatkan kemampuan mereka dalam memecahkan masalah.

2. Pakar sebagai asisten yang berpengetahuan.

3. Memperbanyak atau menyebarkan sumber pengetahuan yang semakin langka.

Sistem pakar dapat ditampilkan dalam dua lingkungan, yaitu: pengembangan dan konsultasi. Lingkungan pengembangan digunakan oleh pembangun sistem pakar untuk membangun komponen dan memasukkan pengetahuan ke dalam basis pengetahuan. Lingkungan konsultasi digunakan oleh orang yang bukan ahli untuk memperoleh pengetahuan dan berkonsultasi.

Struktur pada sistem pakar dapat dilihat pada gambar 1, yaitu:[6]

1. Basis pengetahuan (Knowledge base). Berisi pengetahuan-pengetahuan yang dibutuhkan untuk memahami, memformulasikan dan memecahkan persoalan.

2. Motor inferensi (inference engine).

3. Blackboard. Merupakan area kerja memori yang disimpan sebagai

database untuk deskripsi persoalan terbaru yang ditetapkan oleh data input

dan digunakan juga untuk perekaman hipotesis dan keputusan sementara. 4. Subsistem akuisisi pengetahuan. Akuisisi pengetahuan adalah akumulasi,

transfer dan transformasi keahlian pemecahan masalah dari pakar atau sumber pengetahuan terdokumentasi ke program komputer untuk membangun atau memperluas basis pengetahuan.

5. Antarmuka pengguna. Digunakan untuk media komunikasi antara user dan program.

6. Subsistem penjelasan. Digunakan untuk melacak respon dan memberikan penjelasan tentang kelakuan sistem pakar secara interaktif melalui pertanyaan.

(10)

3 Gambar 1. Struktur Sistem Pakar

Sistem pakar, sebelumnya sudah banyak digunakan, misalnya dalam „Aplikasi Sistem Pakar Diagnosa Penyakit Ginjal Dengan Metode Dempster-Shafer‟ oleh

Aprilia Sulistyohati[7]. Dalam penelitiannya, Aprilia memanfaatkan metode

Dempster-Shafer untuk menciptakan presentasi kepercayaan dari hasil yang ditampilkan sistem pakarnya. Menurutnya hal ini penting untuk menilai seberapa akurat hasil analisa sistemnya. Berikutnya adalah „Penerapan Forward Chaining

Pada Program Diagnosa Anak Penderita Autisme‟ oleh Gusti Ayu Kadek Tutik A.[8]. Gusti Ayu memanfaatkan metode Forward-Chaining sebagai metode penarik kesimpulan dari aplikasinya. Forward-Chaining adalah metode penarikan kesimpulan yang berdasar pada data atau fakta yang ada menuju ke kesimpulan. Hal ini dilakukan karena data yang digunakan untuk menarik kesimpulan adalah gejala-gejala anak penderita autis.

Kedua penelitian sistem pakar tersebut menggunakan Forward-Chaining

untuk menentukan diagnosa akhir dari aplikasinya. Kedua sistem tersebut memanfaatkan check-box sebagai alat untuk berkomunikasi dengan usernya. User

akan diberikan daftar gejala, dan diminta untuk check-list gejala-gejala yang dialaminya. Cara ini efektif untuk meyakinkan user tentang keakuratan aplikasi tersebut. Tetapi, check-box akan menjadi masalah saat daftar gejala yang diberikan kepada user sangat banyak. Apabila tidak disertai dengan user-interface

yang menarik, kemungkinan besar user akan malas membaca daftar gejala yang disajikan.

1.3 Penyakit Ginjal

(11)

4 Dan sangat penting sekali bagi kita memahami apa saja penyakit ginjal dan penyebabnya. Dan selain itu juga kita harus memahami bagaimana cara mengatasinya. Karena penyakit ginjal dan penyebabnya bisa menyerang siapa saja. Bahkan dari sejak usia dini.

Penyakit ginjal bisa terjadi karena adanya gangguan di sistem penyaringan pada organ ginjal. Di mana ginjal tidak bisa berfungsi dengan baik sebagai organ filter racun. Penumpukan yang terjadi ini bisa menyebabkan kerusakan di organ ginjal. Ginjal yang bisa terjadi oleh siapa saja baik dari usia anak-anak sampai usia dewasa.

1.4 Teknik Best-First Search

Dalam pengembangan sistem ini digunakan teknik penelusuran Best-First Search. Teknik Best-First Search adalah teknik penelusuran yang menggunakan pengetahuan akan suatu masalah untuk melakukan panduan pencarian ke arah

node tempat di mana solusi berada. Pencarian jenis ini dikenal juga sebagai

heuristic. Pendekatan yang dilakukan adalah mencari solusi yang terbaik berdasarkan pengetahuan yang dimiliki sehingga penelusuran dapat ditentukan harus di mulai dari mana dan bagaimana menggunakan proses terbaik untuk mencari solusi.

Keuntungan jenis pencarian ini adalah mengurangi beban komputasi karena hanya node yang memberikan harapan saja yang diuji dan akan berhenti apabila solusi sudah mendekati yang terbaik. Ini merupakan model yang menyerupai cara manusia mengambil solusi yang dihasilkan merupakan solusi yang mutlak benar.

Gambar 2. Best-First Search

2. PERANCANGAN SISTEM

2.1 Perancangan inferensi

3.1.1 Forward Chaining

(12)

5 menyelesaikan masalah, inferensi pada Forward-Chaining dimulai dengan informasi yang tersedia dan bila semua informasi sesuai dengan syarat dari konklusi, barulah diperoleh konklusi dari masalah tersebut.

Berikutnya adalah menggunakan algoritma Best-First Search sebagai teknik dalam mesin inferensi. Sesuai dengan pembahasan pada bagian 2.4Teknik Best-First Search, penelitian ini akan memanfaatkan sifat dari teknik Best-First Search yaitu hanya menguji informasi yang memberikan harapan saja. Dengan begitu diharapkan dapat terbentuk sistem pakar yang terlihat lebih cerdas daripada harus menguji semua informasi yang ada untuk memberikan solusi. Penerapan teknik Best-First Search pada penelitian ini adalah sebagai berikut :

a. Menerjemahkan informasi yang ada(dalam penelitian ini „gejala‟) menjadi node. Berikutnya buat lintasan antar node.

Gambar 3. Lintasan node

Dengan asumsi bahwa P1 adalah penyakit. Dengan demikian jika user melintasi(memiliki) gejala T26 T30 T25 T28 T29 dan T1, maka user akan di antarkan ke penyakit P1.

b. Pada teknik Best-First Search, fungsi heuristic akan bergerak mencari node dengan nilai terbaik. Pada penelitian ini arah pergerakan heuristik tergantung dari current node, apakah user memilih TRUE atau FALSE.

Gambar 4. Relasi antar node

(13)

6 d. Inferensi akan mengulang tahap c hingga akhirnya sistem akan

mengantarkan user ke salah satu penyakit.

3.2 Perancangan aturan

Dalam perancangan sistem pakar ini dibagi menjadi tiga langkah, yaitu: langkah pertama menentukan kebutuhan dari sistem itu sendiri dan mengumpulkan data-data referensi yang berkaitan seperti bentuk dari gangguan ginjal itu sendiri serta cara kerja sistem pakar. Sehingga didapatkan kaidah dengan menggunakan premis dan konklusi untuk membangun sistem pakar ini. Kaidah yang terbentuk adalah menggunakan gejala sebagai premis dan Penyakit sebagai konklusi.

Langkah kedua adalah mengumpulkan fakta dan pengetahuan yang berhubungan dengan gejala-gejala dan penyakit gangguan ginjal yang nantinya akan digunakan untuk mengambil satu kesimpulan. Fakta dan pengetahuan tersebut didapatkan dari hasil wawancara dengan dua dokter spesialis ginjal Dr.,dr.,Shofa Chasani, Sp.PD,KGH dan dr.Lestariningsih, Sp.PD,KGH dari rumah sakit Dr. Karyadi Semarang dan beberapa buku tentang penyakit ginjal. Kemudian diakumulasikan menjadi seperti pada tabel 1. Pada tabel 1 didapatkan informasi tentang nama gangguan ginjal yang dimaksud, gejala yang mengikutinya, serta informasi lain tentang gangguan ginjal tersebut dan cara pencegahan dan pengobatannya.

KODE NAMA PENYAKIT GEJALA TENTANG PENCEGAHAN

P1 BATU GINJAL

 Nyeri pada perut  Nyeri pada pinggang  Nyeri pada saat kencing Tabel 1. Tabel akumulasi penyakit ginjal

Langkah ketiga, fakta dan pengetahuan yang telah didapatkan tersebut diterjemahkan menjadi basis pengetahuan yang akan disimpan dalam sistem pakar yang dibuat. Ini bertujuan agar rule-engine dapat dibuat dengan baik. Untuk itu dibuatlah tabel 2 yang berisi knowledge base yang dapat digunakan untuk memformulasikan sistem dengan baik. Setelah tabel ini dibuat, maka akan terlihat gejala mana yang sering ditemui dan gejala mana yang unik yang hanya dijumpai pada penyakit tertentu.

ID_PERT GEJALA P1 P2 P3 P4 P5 P6 P7 P8

T1 Nyeri pada pinggang? * *

T2 Nyeri pada perut? * *

Tabel 2. Tabel gejala

(14)

7 ada yang berisi premis selanjutnya yang harus dipenuhi untuk memenuhi kriteria kaidah tertentu. Bentuk pernyataannya adalah sebagai berikut :

IF [gejala 1]

THEN [gejala 2]

ELSE [penyakit 1]

Dari bentuk kaidah di atas, dapat diterapkan contoh kaidah seperti berikut : IF [Nyeri pinggang]

THEN [Nyeri perut]

ELSE [Otot perut berkontraksi] IF [Nyeri perut]

THEN [Nyeri pada selangkangan]

ELSE [Nyeri saat pinggang diketok] IF [Nyeri pada selangkangan]

THEN [Batu Ginjal]

ELSE [Infeksi Ginjal]

Dengan bentuk kaidah tersebut, akan dibangun aturan atau tree dengan langkah-langkah sebagai berikut :

a. Memprioritaskan gejala paling sering dijumpai(common) untuk muncul terlebih dahulu. Hal ini dimaksudkan agar seluruh penyakit tercover dan memiliki peluang yang sama untuk muncul. Setelah semua gejala tersebut muncul, barulah gejala yang lebih unik di munculkan.

b. Pada penelitian ini penyakit Radang/Nefritis(P5) adalah penyakit yang memiliki gejala paling banyak namun hanya memiliki satu gejala unik. Maka pembentukan tree dapat dimulai dari gejala-gejala penyakit itu. Asumsikan penyakit Radang/Nefritis memiliki gejala dengan kode T26, T30, T25, T28, T31, T34, T40, T32, T33, T35, T36, dan T23. Maka bentuk awal tree akan seperti gambar 5.

Gambar 5. Bentuk awal tree

Penempatannyapun harus diperhatikan. Diurutkan mulai dari gejala paling sering dijumpai(T26) hingga gejala paling unik(T23)

c. Penyakit yang memiliki banyak gejala common dan sedikit gejala unik berikutnya adalah Diabeter Insipidus(P7). Berikutnya adalah menambahkan gejala penyakit ini dalam tree.

Gambar 6. Bentuk tree selanjutnya

(15)

8 Gambar 7. Relasi antar gejala penyakit

Setelah diagram pada gambar 7 dibuat, barulah dibuat tabel yang bisa digunakan oleh mesin untuk menjalankan proses inferensinya. Perancangan tabel inferensi didasarkan pada diagram yang dibuat. Tujuan dari perancangan tersebut agar mudah dalam penjelasan inferensi sistem kepada user.

ID_PERT GEJALA PERTANYAAN YES NO

T1 Anda merasakan nyeri pada pinggang? P1 T2

T2 Anda merasakan Nyeri pada perut? T3 T32

Tabel 3. Rule-Engine dalam bentuk tabel.

Tabel 3 adalah bentuk implementasi dari inferensi dari diagram yang telah dibuat sebelumnya. Pada tahap ini, klausa THEN berubah menjadi YES dan ELSE menjadi NO. Ini bertujuan agar inferensi ini nantinya dapat mudah di mengerti oleh user.

Setelah semua data yang dibutuhkan selesai, dilakukan disain sistem dengan menggunakan ERD(Entity Relationship Diagram). Pada penelitian ini, digunakan tiga jenis diagram untuk menggambarkan rancangan sistem. Yang pertama adalah

(16)

9

Gambar 8. Use Case Diagram

(17)

10

Start

Login

Memilih Menu

Mengolah Data Gejala

Mengolah Data Penyakit

Mengolah Data User

Mengolah Data Admin

Selesai

Memproses Login

Validasi Login Salah

Admin

Memproses Pilihan Admin

Menampilk an Data

Periksa Data Admin

Menjalankan Query Pilihan

Database System

Admin

Gambar 9. Activity Diagram Admin

Pada Activity Diagram Admin pada gambar 9 menunjukkan bahwa admin diwajibkan untuk login terlebih dahulu untuk dapat masuk ke form Admin. Jika

(18)

11

Gambar 10. Activity Diagram User

Pada gambar Activity Diagram User di gambar 10 menunjukkan bahwa User

dapat melakukan interaksi dengan sistem pakar dengan atau tanpa pendaftaran sesuai dengan keinginan user.

Pada penelitian ini tipe database yang digunakan adalah WAMPSERVER.

(19)

12 Dari gambar 11 dapat dilihat bahwa aplikasi sistem pakar pendiagnosa penyakit ginjal ini memiliki empat tabel yaitu tabel administrator, tabel penyakit, tabel pertanyaan, dan tabel user. Pada gambar 11 diketahui bahwa tabel penyakit dan tabel pertanyaan memiliki relasi many to many yang menandakan satu penyakit bisa memiliki banyak pertanyaan dan sebaliknya. Maka dari itu dibutuhkan tabel tambahan yaitu tabel penyakit_pertanyaan yang menyimpan setiap relasi yang ada. Tabel user dan pertanyaan juga memiliki hubungan many to many. Jadi dibutuhkan satu tabel tambahan, yaitu tabel user_pertanyaan untuk mendaftarkan tiap relasi yang ada.

3. Implementasi

3.1 Implementasi sistem

Setelah selasai mendesain sistem, langkah berikutnya adalah melakukan perancangan user-interface dan membangun aplikasi. Hasil perancangan dan desainnya adalah seperti berikut:

Gambar 12. Form login dan Start

Gambar 12 merupakan tampilan awal saat pengguna sistem membuka aplikasi tersebut. Dengan desain minimalis, admin harus melakukan login terlebih dahulu untuk dapat masuk ke menu admin. Sedangkan user dapat langsung klik Start atau

checklist pada pilihan di bagian bawah terlebih dahulu untuk melakukan pendaftaran.

(20)

13 Setelah klik tombol Start, user akan dihadapkan dengan form pertanyaan. Pada

form tersebut user akan diajukan beberapa pertanyaan. Setelah menjawab beberapa pertanyaan dan mencapai suatu kondisi tertentu, sistem akan menampilkan menu diagnosa seperti pada gambar 14.

Gambar 14. Tampilan diagnosa sistem pakar

Pada menu diagnosa, user akan mendapatkan hasil diagnosa dan sedikit penjelasan dari diagnosa tersebut. Pada form ini juga ditampilkan histori gejala-gejala yang telah dipilih oleh user. Setelah selesai dengan hasil diagnosa, user

dapat mencoba lagi dengan klik tombol COBA LAGI.

(21)

14 Gambar 15 adalah menu yang dimunculkan oleh sistem saat admin berhasil

login ke dalam sistem. Dalam menu ini admin dapat melihat data penyakit dan gejalanya dengan memilih daftar penyakit dari combo-box yang tersedia. Di halaman ini pula admin dapat mengolah data penyakit dengan tombol yang ada. Saat admin klik tombol Ubah Penyakit, sistem akan memberi wewenang pada admin untuk mengubah tiap detail dari penyakit yang di ubah. Field berubah menjadi editable sehingga admin dapat dengan mudah mengubah data penyakit tersebut.

Gambar 16. Menu menambah data penyakit

Saat admin klik tombol tambah penyakit, sistem akan menampilkan FORM TAMBAH DATA PENYAKIT. Di sini admin dapat menambahkan penyakit baru, lengkap dengan data penyakit dan gejala yang mengikuti penyakit tersebut. Gejala dapat dipilih dengan memilih gejala pada combo-box Nama Gejala lalu klik tombol tambah yang ada didekat combo-box tersebut. Setelah selesai, user dapat klik tombol Tambah yang ada dibawah dan data penyakit yang baru berhasil ditambahkan.

(22)

15 Menu menambahkan user pada gambar 17 dapat diakses oleh user ataupun

admin. Pada Form ini user ataupun admin diminta untuk mengisikan data user, yang nantinya data tersebut dapat digunakan sebagai referensi untuk pengembangan sistem di masa depan. Data tersebut berupa nama user, tanggal lahir atau umur, diagnosa aktual dari dokter, dan gejala-gejala yang user rasakan dapat di inputkan secara lengkap dan disimpan ke dalam database.

Dalam melakukan inferensi, sistem ini menggunakan beberapa kode. Kode program 1, kode program 2 dan kode program 3 digunakan oleh sistem saat melakukan menjalankan proses „konsultasi‟ dengan user.

Kode Program 1. Kode untuk tombol YA

Kode Program 1 merupakan format kode Java untuk action pada tombol YA. Pada kode ini dijelaskan metode akan menjalankan query SQL SELECT * FROM pertanyaan WHERE di_pert = yes. Query tersebut dimaksudkan untuk mengambil data pada tabel pertanyaan dimana data tersebut memiliki ID_PERT yang sama

public void btYa(){

(23)

16 dengan nilai pada variabel yes. Variabel yes sudah di deklarasikan sebelumnya dengan default tertentu sesuai dengan rule-engine. Setelah mengambil data pada tabel pertanyaan, Kode Program 1 akan mengubah nilai variabel lain sesuai dengan data yang didapatkan dari tabel sebelumnya. Jika saat menjalankan query

SQL SELECT * FROM pertanyaan WHERE di_pert = yes tidak didapatkan nilai yang sesuai dengan ID_PERT, maka metode akan menjalankan query dari finally

yang akan menampilkan menu hasil diagnosa lengkap dengan data yang tersimpan.

Kode Program 2. Kode untuk mencegah looping

Kode Program 2 merupakan format kode Java untuk mencegah user terjebak dalam looping. Dalam rule-engine ini, looping dapat terjadi jika pertanyaan yang terpilih melemparkan konklusi ke pertanyaan selanjutnya yang sebenarnya juga merupakan konklusi dari premis itu. Looping hanya muncul saat pertanyaan dari gejala yang sering dijumpai muncul. Saat menangani looping, kode ini akan membawa user ke premis selanjutnya.

private void ya(){

(24)

17 Kode Program 3. Kode untuk tombol YA

Fungsi Kode Program 3 hampir sama seperti Kode Program 1, bedanya metode ini mengambil nilai dari variabel no. Ditambah jika user tidak memilih gejala selama 12 kali, maka metode ini akan menghentikan inferensi dengan memunculkan diagnosa tidak memiliki gangguan ginjal apapun.

3.2 Pengujian Sistem

Pengujian sistem adalah elemen dari jaminan kualitas perangkat lunak dan mempresentasikan kajian pokok dari spesifikasi, desain dan pengkodean [8]. Metode pengujian yang dipergunakan pada aplikasi sistem pakar pendiagnosa

public void btTidak(){

(25)

18 penyakit ginjal ini adalah dengan bantuan user yang dapat dipandu pada saat penggunaan sistem.

Jenis user pertama yang ditunjuk adalah orang-orang yang tidak memiliki gangguan ginjal apapun. Tujuannya adalah melihat apakah sistem dari segi aplikasi dapat berjalan dengan baik dan data yang ada dalam database dapat terproses dengan baik oleh sistem. Setelah diuji oleh enam orang yang berbeda dan dicatat, didapat hasil seperti terdapat pada tabel 4.

Setelah sistem diuji coba ternyata ada kesalahan sistem saat melakukan inferensi yaitu terjadi looping, muncul pertanyaan yang sama berulang kali terutama saat user tidak memilih gejala apapun sehingga aplikasi tidak dapat menampilkan hasil. Lalu sistem diperbaiki sesuai dengan evaluasi yang ada.

Berikutnya adalah melakukan pengujian sistem dimana pengujian dilakukan dengan bantuan penderita gangguan ginjal yang telah mendapat diagnosa dokter terlebih dahulu. Langkah ini sangat penting untuk mengukur keandalan dari sistem pakar yang dibuat.

Tabel 5. Hasil uji coba pada user penderita ginjal.

Setelah diuji coba oleh lima orang yang berbeda, hasilnya adalah empat dari lima diagnosa adalah tepat. Angka keberhasilan ini membuktikan bahwa sistem telah bekerja dengan cukup baik.

(26)

19 4. Simpulan

Dalam penelitian ini dikembangkan sebuah aplikasi sistem pakar berbasis aplikasi untuk mendiagnosa jenis penyakit ginjal pada manusia. Sistem pakar ini mampu memberi diagnosa awal terkait jenis penyakit ginjal yang di derita. Sistem pakar ini bekerja dengan cara memberikan beberapa pertanyaan kepada user, kemudian metode inferensi didalamnya akan menyimpulkan penyakit yang di derita oleh pengguna aplikasi ini. Sistem pakar ini menggunakan Metode Penalaran Forward Chaining, dimana dalam penerapannya sistem ini membutuhkan informasi berupa gejala-gejala untuk menentukan penyakit yang mungkin diderita oleh user. Penggunaan teknik Best-First Search bertujuan agar jumlah informasi yang dibutuhkan tidak terlalu banyak, sehingga user lebih dipermudah dalam penggunaan sistem pakar ini. Kemudian, sistem pakar ini memiliki tingkat akurasi dan kinerja yang baik, terbukti dengan uji coba yang dilakukan pada lima orang penderita penyakit ginjal yang berbeda dan empat diantaranya sesuai dengan diagnosa yang sudah di berikan dokter. Kedepannya, penelitian ini bisa dikembangkan dengan menggunakan metode inferensi yang lebih baik, menyempurnakan knoweledge base, dan penggunaan aplikasi berbasis web agar aplikasi yang dihasilkan dapat bekerja lebih baik lagi.

5. Saran

(27)

20 6. Daftar Pustaka

[1] Kementerian Kesehatan RI, 2015, Tingkatkan komitmen penanganan kasus ginjal, http://www.buk.kemkes.go.id, diakses 27 November 2015

[2] Minsky, Marvin Lee, 1988, The Society of Mind; New York: Simon and Schuster.

[3] Martin dan Oxman, 1988, Building Expert System; Prentice-Hall.

[4] Heckerman, Harold H,. 1968, Distribution of Pharmacy Manpower in West Virginia.

[5] Kursini, 2006., Sistem Pakar, Teori dan Aplikasi; Ed. I. – Yogyakarta: ANDI. [6] Turban, Efraim, 1995, Decision Support and Expert System: Management

Support Systems; Prentice-Hall International

[7] Sulistyohati, A., 2008., Aplikasi Sistem Pakar Diagnosa Penyakit Ginjal dengan Metode Dempster-Shafer. Yogyakarta: Seminar Nasional Aplikasi Teknologi Infoemasi.

Gambar

Gambar 1. Struktur Sistem Pakar
Gambar 2. Best-First Search
Gambar 3. Lintasan node
Tabel 1. Tabel akumulasi penyakit ginjal
+7

Referensi

Dokumen terkait

Adapun hipotesis dalam penelitian ini dapat dirumuskan: adanya perbedaan hasil belajar siswa antara siswa yang menerapkan metode resitasi dengan teknik motivasi dan siswa yang

Menurut beliau apabila briket arang batok kelapa sudah tercampur dengan bahan – bahan yang dilarang seperti kayu, pada uji laboratorium akan berbeda hasilnya dan para

Rata-rata hasil belajar matematika menggunakan model Challenge Based Learning adalah 75,09 dan yang tidak menggunakan model Challenge Based Learning yaitu 64,90,

Berdasarkan hasil perancangan dan pembuatan aplikasi Sistem Evaluasi Kinerja Progdi menggunakan Metode OMAX di FTI-UKSW, dapat ditarik kesimpulan bahwa metode OMAX dapat

Berdasarkan hasil penelitian dan analisis yang dilakukan maka dapat diambil kesimpulan sebagai berikut: 1) OpenSSL memberikan jaminan keamanan pada proses otentikasi

Populasi dalam penelitian ini adalah siswa kelas X SMA N 1 Boyolali (316 siswa) dan sampel diambil dengan menggunakan teknik cluster random samplingsehingga diperoleh

Pada tabel 1 menunjukkan sampel bukan perokok A dan C memiliki vital capacity yang lebih tinggi dari sampel B dan D hal ini bisa disebabkan oleh beberapa hal, yaitu pada sampel B

Berdasarkan hasil perhitungan dengan metode Anuitas untuk menentukan jumlah tabungan, serta dilanjutkan dengan metode Gompertz untuk memperhitungkan faktor-faktor