Anda di halaman 1dari 26

SISTEM PAKAR UNTUK MENDIAGNOSA PENYAKIT PENCERNAAN MANUSIA

Penyusun:

Zamroji Sanosi Ali Ghafi Putri Rahmawati

2008420011 2008420081 2008420111

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS DR. SOETOMO SURABAYA 2011

BAB I PENDAHULUAN
A. Latar Belakang Masalah Perkembangan teknologi akhir-akhir ini berkembang semakin cepat dan pola berfikir manusia pun berkembang mengikuti zaman. Begitu pula dengan perkembangan komputer. Komputer merupakan salah satu alat yang biasa kita gunakan untuk mempermudah aktivitas kerja. Dengan teknologinya, komputer dapat digunakan untuk membantu manusia dalam memecahkan masalah, antara lain menggunakan aplikasi sistem pakar. Sistem pakar merupakan salah satu bidang kecerdasan buatan atau Artificial Intelligence (AI) yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Salah satu permasalahan yang disentuh oleh sistem pakar adalah diagnosa dalam bidang kesehatan, diantaranya untuk mendiagnosa dugaan awal penyakit pada pencernaan manusia, yang biasa dikenal dengan gangguan pencernaan Pencernaan merupakan serangkaian organ tubuh yang bertanggung jawab dalam proses pencernaan makanan. Pencernaan ini dapat terkena gangguan atau terinfeksi penyakit sehingga perlu diwaspadai oleh masyarakat. Oleh karena itu, penyebaran informasi tentang penyakit ini sangat diperlukan untuk mengetahui lebih dini jenis penyakit yang dideritanya. Jika penyakit yang diderita termasuk parah dan perlu pengobatan serius, tentu saja hal ini perlu segera diketahui. Informasi tentang penyakit pencernaan sudah tersedia, tapi masih dalam bentuk manual, yaitu dalam buku-buku atau majalah kesehatan. Berdasarkan uraian di atas, penulis tertarik untuk membahas mengenai bagaimana membuat suatu alat bantu yang dapat digunakan dengan mudah dalam mendapatkan informasi dan dugaan awal penyakit pada pencernaan dengan judul Aplikasi Sistem Pakar Untuk Mendiagnosa Penyakit Pencernaan Manusia. Dengan menggunakan Program Visual Basic 6.0. B. Perumusan Masalah Adapun perumusan masalah yang terdapat dalam skripsi ini adalah : 1. Bagaimana merancang suatu aplikasi sistem pakar yang berguna sebagai alat bantu untuk mendapatkan informasi dan dugaan awal dalam mendiagnosa penyakit pada pencernaan manusia ? 2. Apakah aplikasi sistem pakar ini dapat digunakan untuk mendapatkan informasi penyakit dan dugaan awal adanya penyakit pada pencernaan manusia dengan menggunakan bantuan alat komputer ? C. Batasan Masalah Batasan-batasan permasalahan pada sistem pakar ini, yaitu: 1. Aplikasi sistem pakar ini hanya untuk mengklasifikasikan jenis penyakit pencernaan berdasarkan gejala awal disertai dengan penanganannya secara umum, yang terbatas pada sumber pengetahuan yang didapat, baik dari pakar maupun buku-buku mengenai penyakit pencernaan. 2. Aplikasi sistem pakar ini bersifat konsultatif dan bukanlah untuk mengganti fungsi seorang pakar, akan tetapi hanya diperuntukkan sebagai pelengkap dan alat bantu yang terbatas. 3. Aplikasi sistem pakar ini menggunakan metode penelusuran best first search dan bahasa pemograman Visual Basic 6.0 dengan database Microsoft Access sebagai alat bantu implementasi program dan pengembangan sistem pakar. D. Tujuan Berdasarkan latar belakang masalah di atas, maka tujuan sistem pakar ini adalah mewujudkan sebuah perangkat lunak (software) berupa aplikasi sistem pakar yang digunakan untuk mendapatkan informasi berdasarkan gejala-gejala dan pengetahuan dari pakar. E. Manfaat Adapun manfaat dari sistem pakar ini adalah Dapat dijadikan sebagai sarana informasi dan konsultasi bagi masyarakat yang berminat, untuk mengetahui informasi penyakit dan dugaan awal adanya penyakit pada pencernaan manusia agar dapat terhindar dari penyakit pencernaan yang lebih parah.

BAB II LANDASAN TEORI


A. Kecerdasan Buatan (Artificial Intelligence) Kecerdasan Buatan merupakan salah satu bidang dalam ilmu komputer yang bertujuan meniru dan menggunakan kemampuan pemikiran kesadaran manusia untuk membantu memecahkan suatu masalah. Beberapa definisi tentang kecerdasan buatan adalah :

1. 2.

3.

Menurut Andi (2003), kecerdasan buatan adalah suatu studi khusus di mana tujuannya adalah membuat komputer berpikir dan bertindak seperti manusia. Menurut Sri Kusumadewi(2003), kecerdasan Buatan merupakan salah satu bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia. Menurut Andri Kristanto (2004), kecerdasan buatan merupakan bagian dari ilmu pengetahuan komputer yang khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas dalam sistem kecerdasan komputer. Basis pengetahuan (knowledge base), berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan yang lainnya. Mesin inferensi (inference enginie), yaitu kemampuan menarik kesimpulan berdasarkan pengalaman.

Untuk melakukan aplikasi kecerdasan buatan, ada dua bagian utama yang sangat dibutuhkan, yaitu:

1. 2.

Gambar 2.1 : Penerapan konsep kecerdasan buatan di komputer. Menurut Sri Kusumadewi (2003), lingkup utama dalam kecerdasan buatan adalah: Sistem Pakar (Expert System). Di sini komputer digunakan sebagai sarana untuk menyimpan pengetahuan para pakar.. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar. Pengolahan Bahasa Alami (Natural Language Processing). Dengan pengolahan bahasa alami ini diharapkan user dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari. Pengenalan Ucapan (Speech Recognition). Melalui pengenalan ucapan diharapkan manusia dapat berkomunikasi dengan komputer dengan menggunakan suara. Robotika & Sistem Sensor (Robotics & Sensory System). Computer Vision. Mencoba untuk menginterpretasikan gambar atau obyek-obyek tampak melalui komputer. Intelligent Computer - Aided Instruction. Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar. Game Playing.

1.

2.

3. 4. 5. 6. 7.

B. Sistem Pakar B.1 Pengertian Sistem Pakar Sistem pakar merupakan salah satu bagian dari kecerdasan buatan yang mengalami perkembangan pesat akhir-akhir ini. Secara umum, sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah

seperti yang dilakukan oleh para ahli. Ada beberapa definisi tentang sistem pakar, antara lain : Menurut Durkin (2003), sistem pakar adalah suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan oleh seorang pakar. 2. Menurut Andri Kristanto (2004), sistem pakar adalah program kecerdasan buatan yang menggabungkan basis pengetahuan(knowledge base) dengan mesin inferensi. Inferensi adalah suatu proses memperoleh pengetahuan berdasarkan pengalaman yang terjadi. B.2 Konsep Dasar Sistem Pakar Konsep dasar sistem pakar mengandung : keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan dibidang tertentu yang diperoleh dari pelatihan, membaca atau pengalaman. Contoh bentuk pengetahuan yang termasuk keahlian adalah : 1. Fakta-fakta pada lingkup permasalahan tertentu. 2. Teori-teori dan aturan-aturan berkenaan dengan lingkup permasahan tertentu. 3. Strategi-strategi global untuk menyelesaikan masalah. 4. Meta-knowledge. Bentuk-bentuk ini memungkinkan para ahli untuk dapat mengambil keputusan lebih cepat dan lebih baik dari pada seseorang yang bukan ahlinya. Seorang ahli adalah seorang yang mempunyai pengetahuan tertentu dan mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalah (domain). Menyusun kembali pengetahuan jika dianggap perlu, memecah aturan-aturan jika dibutuhkan dan menentukan relevan setidaknya keahlian mereka. Pengalihan keahlian adalah pengalihan keahlian dari para ahli ke komputer untuk kemudian diahlikan lagi ke orang lain yang bukan ahli merupakan tujuan utama dari sistem pakar. Proses ini membutuhkan empat aktivitas, yaitu : tambahan pengetahuan (dari para ahli atau sumber-sumber lainnya), representasi pengetahuan, inferensi pengetahuan dan pengalihan pengetahuan ke user. Pengetahuan yang disimpan di komputer disebut dengan nama basis pengetahuan. Ada dua tipe pengetahuan, yaitu : fakta dan prosedur (biasanya berupa aturan). Salah satu fitur yang harus dimiliki oleh sistem pakar adalah kemampuan untuk menalar. Jika keahlian-keahlian sudah tersimpan sebagai basis pengetahuan dan sudah tersedia program yang mampu mengakses basis data, maka komputer harus dapat diprogram untuk membuat inferensi. Proses inferensi ini dikemas dalam bentuk mesin inferensi. Sebagian besar sistem pakar komersial dibuat dalam bentuk rule-based system, yang mana pengetahuan disimpan dalam bentuk aturan-aturan dan biasanya berbentuk IF-THEN. Fitur lainnya dari sistem pakar adalah kemampuan untuk merekomendasi yang dapat membedakan sistem pakar dengan sistem konvensional. Menurut Durkin (2005), seorang pakar dengan sistem pakar memiliki banyak perbedaan. Berikut ini tabel perbandingan kemampuan antara seorang pakar dengan sistem pakar : 1.

Tabel 2.1 : Perbandingan kemampuan seorang pakar dengan sistem pakar. B.3 Komponen Dasar Sistem Pakar Suatu sistem disebut sebagai sistem pakar jika mempunyai ciri dan karakteristik tertentu. Hal ini harus didukung oleh komponen-komponen sistem pakar yang menggambarkan tentang ciri dan karakteristik tersebut. Komponen sistem pakar dapat digambarkan pada gambar berikut :

Gambar 2.2 : Struktur bagan sistem pakar. Keterangan : Pakar adalah orang yang memiliki pengetahuan khusus, pendapat, pengalaman dan metode serta kemampuan untuk mengaplikasikan keahliannya tersebut guna menyelesaikan masalah. 2. Pemakai (user) adalah orang yang ingin berkonsultasi dengan pakar lewat sistem. 3. Fasilitas belajar mandiri adalah komponen yang mendukung sistem pakar sebagai suatu kecerdasan buatan tingkat lanjut. 4. Komponen penting sistem pakar pada gambar di atas adalah fasilitas akuisisi data, basis pengetahuan dan basis aturan, mekanisme inferensi, fasilitas penjelasan sistem dan antar muka pemakai. B.3.1 Fasilitas Akuisisi Data Merupakan suatu proses untuk mengumpulkan data-data pengetahuan akan suatu masalah dari pakar. Akuisisi pengetahuan adalah akumulasi, transfer dan transformasi keahlian dalam menyelesaikan masalah dari sumber pengetahuan yang diolah dan diorganisir secara terstruktur menjadi basis pengetahuan ke dalamkomputer. 1.

B.3.2 Basis Pengetahuan dan Basis Aturan Jika proses akuisisi data telah selesai dilakukan, maka data-data tersebut harus direpresentasikan menjadi basis pengetahuan dan basis aturan yang selanjutnya dikumpulkan, dikodekan dan digambarkan dalam bentuk rancangan lain menjadi bentuk yang sistematis. B.3.3 Mekanisme Inferensi Mekanisme inferensi adalah bagian dari sistem pakar yang melakukan penalaran atau pelacakan dengan menggunakan isi daftar aturan berdasarkan urutan dan pola tertentu. Selama proses konsultasi mekanisme inferensi menguji aturan satu demi satu sampai kondisi aturan itu benar. Ada dua teknik utama dalam mekanisme inferensi, yaitu : 1) Pelacakan ke depan (forward chaining) Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kiri (IF dulu). Dengan kata lain, penalaran dimulai dari fakta atau sekumpulan data terlebih dahulu untuk menguji kebenaran hipotesis.

Gambar 2.3 : Pelacakan ke depan. 2) Pelacakan ke belakang (backward chaining) Pencocokan fakta atau pernyataan dimulai dari bagian sebelah kanan (THEN dulu). Dengan kata lain, penalaran dimulai dari hipotesis terlebih dahulu untuk menguji kebenaran tersebut harus dicari faktafakta yang ada dalam basis pengetahuan.

Gambar 2.4 : Pelacakan ke belakang. Dari kedua metode inferensi tersebut dipengaruhi oleh tiga macam teknik penelusuran, yaitu : 1) Breadth First Search (BFS) Metode pencarian yang dimulai dengan akar (level 0) ke level selanjutnya. Pencarian ini dilakukan dengan mencari pada semua node atau simpul yang mempunyai level atau tingkatan sama sampai menentukan hasil akhir (goal) pada level tersebut, bila tidak maka akan pindah ke level selanjutnya.

Gambar 2.5 : Breadth First Search (BFS). 2) Depth First Search (DFS) Metode pencarian yang dimulai dengan akar (level 0) dan dilanjutkan dengan mencari node yang paling kiri yang berada pada level dibawahnya sampai dasar tingkatan atau level. Apabila kemudian tidak ditentukan goalnya maka pencarian diteruskan pada level satu dan terus menuju dasar, begitu seterusnya sampai pada akhirnya ditemukan goalnya.

Gambar 2.6 : Depth First Search (DFS). 3) Best First Search (BFS) Best First Search bekerja berdasarkan kombinasi dari Breadth First Search dan Depth First Search. Metode ini dasarnya adalah metode pencarian dengan mengacu pada goal yang terbaik, sehingga pada proses pencarian menjadi lebih cepat dibandingkan dengan metode pencarian yang lainnya.

Gambar 2.7 : Best First Search (BFS). B.3.4 Fasilitas Penjelasan Sistem Merupakan bagian dari sistem pakar yang memberikan penjelasan tentang bagaimana program dijalankan, apa yang harus dijelaskan kepada pemakai, mengkomodasi kesalahan pemakai dan menjelaskan bagaimana suatu masalah

terjadi. Fasilitas penjelasan sistem diintegrasikan ke dalam tabel basis pengetahuan dan basis aturan sehingga memudahkan dalam perancangan sistem. B.3.5 Antar Muka Pemakai Antar muka pemakai memberikan fasilitas komunikasi antara pemakai dan sistem, memberikan berbagai keterangan yang bertujuan untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan solusi dan memberikan tuntunan penggunaan sistem secara menyeluruh langkah demi langkah sehingga pemakai mengerti apa yang harus dilakukan terhadap sistem. B.4 Ciri dan Karakteristik Sistem Pakar Ada berbagai ciri dan karakteristik yang membedakan sistem pakar dengan sistem yang lain. Ciri dan karakteristik ini menjadi pedoman utama dalam pengembangan sistem pakar. Ciri dan karakteristik yang dimaksud adalah sebagai berikut : Pengetahuan sistem pakar merupakan suatu konsep, bukan berbentuk numeris. Hal ini dikarenakan komputer melakukan proses pengolahan data secara numerik sedangkan keahlian dari seorang pakar adalah fakta dan aturan-aturan, bukan numerik. 2. Informasi dalam sistem pakar tidak selalu lengkap, subyektif, tidak konsisten, subyek terus berubah dan tergantung pad aondisi lingkungan sehingga keputusan yang diambil bersifat tidak pasti dan tidak mutlak ya atau tidak akan tetapi menurut ukuran kebenaran tertentu. Oleh karena itu dibutuhkan kemampuan sistem untuk belajar secara mandiri dalam menyelesaikan masalah-masalah dengan pertimbangan khusus. 3. Kemungkinan solusi sistem pakar terhadap suatu permasalahan adalah bervariasi dan mempunyai banyak pilihan jawaban yang dapat diterima, semua faktor yang ditelusuri memiliki ruang masalah yang luas dan tidak pasti. Oleh karena itu diperlukan fleksibilitas sistem dalam menangani kemungkinan solusi dari berbagai permasalahan. 4. Perubahan atau pengembangan pengetahuan dalam sistem pakar dapat terjadi setiap saat bahkan sepanjang waktu sehingga diperlukan kemudahan dalam memodifikasi sistem untuk menampung jumlah pengetahuan yang semakin besar dan semakin bervariasi. 5. Perbandingan dan pendapat setiap pakar tidaklah selalu sama, oleh karena itu tidak ada jaminan bahwa solusi sistem pakar merupakan jawaban yang pasti dan benar. Setiap pakar akan memberikan pertimbangan-pertimbangan berdasarkan faktor subjektif. 6. Keputusan merupakan bagian terpenting dari sistem pakar. Sistem pakar harus memberikan solusi yang akurat berdasarkan masukkan pengetahuan meskipun solusinya sulit sehingga fasilitas informasi sistem harus selalu diperlukan. B.5 Keuntungan Sistem Pakar Ada banyak manfaat yang dapat diperoleh dengan mengembangkan sistem pakar, antara lain : 1. 2. 3. 4. 5. 6. Masyarakat awam non-pakar dapat memanfaatkan keahlian didalam bidang tertentu tanpa kehadiran langsung seorang pakar. Meningkatkan produktivitas kerja, yaitu bertambah efisiensi pekerjaan tertentu serta hasil solusi kerja. Penghematan waktu dalam menyelesaikan masalah yang kompleks. Memberikan penyederhanaan solusi untuk kasus-kasus yang kompleks dan berulang-ulang. Pengetahuan dari seorang pakar dapat didokumentasikan tanpa ada batas waktu. Memungkinkan penggabungan berbagai bidang pengetahuan dari berbagai pakar untuk dikombinasikan. 1.

C. Pencernaan Manusia C.1 Anatomi Fisiologi Sistem Pencernaan Manusia

Menurut Lin Inayah (2004), sistem pencernaan manusia mempunyai fungsi, antara lain : 1) 2) Menerima nutrien yaitu mulai dari mulut sampai dengan lambung. Lambung merupakan alat penerima makanan yang paling besar (reservoar). Menghancurkan nutrien ke dalam bentuk molekul-molekul yang ukurannya cukup kecil untuk dapat mencapai dan memasuki aliran darah sehingga memungkinkan molekul-molekul tersebut masuk ke aliran darah dan dikirim ke seluruh jaringan. Membuang sisa makanan yang tidak dapat dicerna oleh tubuh melalui anus.

3)

Gambar 2.8 : Saluran dan Sistem Pencernaan pada tubuh manusia. Mulut, Tenggorokan dan Kerongkongan Mulut merupakan jalan masuk dari sistem pencernaan dan sistem pernafasan. Kerongkongan merupakan saluran berotot dan berdinding tipis yang dilapisi oleh selaput lendir. Kerongkongan menghubungkan tenggorokan dengan lambung.

Gambar 2.9 : Mulut. Lambung Lambung merupakan organ otot berongga yang besar dan berbentuk seperti kacang kedelai. Fungsi lambung adalah sebagai gudang makanan, yang berkontraksi secara ritmik (berirama) untuk mencampur makanan dan enzim-enzimnya.

Gambar 2.10 : Lambung. Usus Halus Usus halus merupakan tabung panjang yang hidup. Usus berukuran 2,5 meter ini terletak di daerah umbilicus dan dikelilingi oleh usus besar.

Gambar 2.11 : Usus halus. Usus besar Usus besar merupakan tempat fermentasi makanan (pembusukan makanan yang tidak tercerna) yang dibantu oleh udara lembab, bakteri atau kondisi derajat keasaman yang cukup basah. Usus besar menghasilkan lendir dan berfungsi menyerap air dan elektrolit dari tinja. Ketika mencapai usus besar, isi usus berbentuk cairan, tetapi ketika mencapai rektum bentuknya menjadi padat.

Gambar 2.12 : Usus besar. Rektum Rektum adalah bagian ujung usus besar yang berhubungan langsung dengan usus. Umumnya keadaan rektum kosong, karena tinja disimpan di tempat yang lebih tinggi, yakni di kolon desendends (kiri). Jika kolon ini penuh dan tinja masuk ke dalam rektum akan

timbul keinginan buang air besar.

Gambar 2.13 : Rektum dan anus. Anus Anus merupakan lambung di ujung saluran pencernaan dan menjadi tempat limbah makanan keluar dari tubuh. Sebagian anus terbentuk dari permukaan tubuh (kulit) dan sebagian lagi dari usus. C.2 Penyakit pada Pencernaan Manusia Penyakit pada pencernaan manusia lebih dikenal dengan nama gangguan pencernaan. Gangguan pada pencernaan adalah terhalangnya fungsi pencernaan atau kegagalan perut dalam mencerna makanan. Kebiasaan cara makan yang kurang baik bisa menimbulkan berbagai gangguan pada pencernaan, seperti rasa panas dalam perut, diare, pusing, sulit buang air besar, mual, perut kembung dan demam. Penyakit pada pencernaan ini dibedakan menjadi tiga gejala awal, yaitu : nyeri pada tenggorokan, nyeri pada perut dan nyeri sekitar anus. Tahapan-tahapan yang dilakukan dalam pengembangan sistem ini terdapat sub pokok bahasan yang bertujuan memudahkan pengembangan sistem pakar. Berikut ini merupakan pembahasan secara rinci mengenai pengembangan sistem pakar, antara lain : Representasi Pengetahuan Pada tahap ini, knowledge engineer dan pakar menentukan konsep yang akan dikembangkan menjadi aplikasi sistem pakar untuk mendiagnosa penyakit pencernaan manusia. Hasil dari pembuatan konsep antara knowledge engineer dan pakar adalah terkumpulnya data-data mengenai pengelompokkan penyakit pencernaan berdasarkan pada analisa, yang terdiri dari : Nyeri pada tenggorokan. Nyeri pada perut. Nyeri pada anus. Dari pengelompokkan penyakit pencernaan manusia di atas, didapatkan jenis penyakit pencernaan beserta gejala-gejala yang dialaminya. Penyakit-penyakit pada pencernaan manusia yang dibahas pada skripsi ini adalah : 1. Nyeri pada tenggorokan : 1) Esofagitis. 2) Striktur Esofagus. 3) Karsinoma Esofagus. 4) Hernia Hiatus Esofagus. 5) GERD (Gastroesofageal Refluks Disorder). 6) Akalasia. 1. 2. 3.

2.

3.

Nyeri pada perut : 1) Kolesistitis. 2) Gastritis Kronik. 3) Gastritis Akut Erosif. 4) Leiomiosarkoma Gaster. 5) Ulkus Peptikum. 6) Refluk Empedu. 7) Ulkus Duodenum. 8) Ulkus Gastrikum. 9) Gastroentritis. 10) Ileus. 11) Crohn. 12) Bulimia Nervosa. 13) Disertri Basilar. 14) Divertikulitis. 15) Apendisitis. 16) Peritonitis. 17) Demam Tifoid (Tipus). 18) Entritis. 19) Stenosis Pilorus. 20) Duodenitis. 21) Karsinoma Lambung. 22) Kolitis Crohn. 23) Pencernaan Lemah. 24) Kolitis Hemoragika. Nyeri pada anus : 1) Gatal Anus. 2) Fisurra Anus. 3) Hemoroid. 4) Pilonidal. 5) Abses Anorektal.

Mekanisme Inferensi Representasi pengetahuan yang biasa digunakan dalam pengembangan sistem pakar adalah mekanisme inferensi yang meliputi teknik penalaran dan teknik penelusuran. 1. Teknik Penalaran Teknik penalaran yang digunakan dalam aplikasi sistem pakar ini menggunakan teknik pelacakan ke depan (forward chaining) yang memulai penelusurannya dari sekumpulan data menuju kesimpulan. Teknik Penelusuran Pada pengembangan aplikasi sistem pakar ini menggunakan teknik penelusuran best first search yang melakukan penelusuran kaidah diawali dengan breadth first search, dilanjutkan dengan depth first search.

2.

BAB III ANALISA SISTEM


A. Kebutuhan Data Identifikasi Masalah Identikfikasi masalah merupakan tahap awal dari penyusunan penelitian ini. Untuk menentukan masalah dan mencari jalan alternatif dari pemecahan masalah ini. Yang dikemukakan dari seorang pakar mengenai gejala-gejala yang dikonsultasikan oleh pasien terhadap penyakit pada pencernaan manusia. Studi Pustaka dan Penentuan Pakar Studi pustaka dilakukan untuk mencari dan melengkapi informasi yang di dapat dari pakar. Studi pustaka yang dilakukan mengenai kecerdasan buatan, sistem pakar dan pencernaan manusia. Setelah mengetahui dari topik yang dibacakan barulah mencari seorang pakar yang ahli di dalam bidangnya. Akuisisi Data Akuisisi data adalah mentransfer informasi dari pakar untuk mengambil pengetahuan. Dalam hal ini dilakukan pengembangan sistem pakar dengan menggunakan basis pengetahuan (knowledge base) penyakit pada pencernaan manusia untuk menghasilkan sebuah aplikasi sistem pakar yang dapat dan digunakan oleh user setelah diuji validitasnya oleh pakar. Representasi Pengetahuan Representasi pengetahuan merupakan tahapan representasi yang dapat dilakukan setelah akuisisi data, yaitu yang berupa : 1. Mekanisme Inferensi Mekanisme inferensi adalah bagian dari sistem pakar yang melakukan inferensi dengan penalaran yang menggunakan isi daftar aturan berdasarkan urutan dan pola tertentu. Secara umum komponen yang ada dalam mekanisme inferensi adalah :

1.

2.

Teknik Penalaran Teknik penalaran (inferensi) digunakan untuk Mencapai kesimpulan (goal) yang sesuai dengan kebutuhan dan mekanisme inferensi untuk mendiagnosa gangguan pada pencernaan berdasarkan gejala yang dialami si penderita. Teknik yang digunakan adalah pelacakan ke depan (forward chaining) yang memulai penelusurannya dari sekumpulan data atau fakta menuju satu kesimpulan. Teknik Penelusuran Teknik penelusuran yang digunakan adalah metode penelusuran terbaik pertama (best first search) yang merupakan gabungan dari metode breadth first search dan depth first search. Metode ini lebih efektif dan efisien dalam menyelesaikan masalah, karena dalam penelusuran, hanya solusi yang memberi harapan saja yang akan berhenti jika solusi sudah mendekati terbaik.

2. Diagram Pohon Teknik representasi pengetahuan pada aplikasi sistem pakar untuk mendiagnosa penyakit pada pencernaan ini menggunakan metode pohon (tree). Pohon (tree) merupakan struktur penggambaran pohon secara hirarkis yang terdiri dari beberapa node-node yang menunjukkan obyek dan hubungan antar obyek. 3. Kaidah Produksi Kaidah produksi merupakan salah satu bentuk representasi pengetahuan yang sangat populer dan banyak digunakan dalam pengembangan sistem pakar. Representasi pengembangan dengan kaidah produksi, pada dasarnya berupa aturan (rule) yang berupa IF-THEN. Penjelasannya ialah :

1. 2.

Antecedent, yaitu bagian yang mengekspresikan situs atau premis (penyataan berlawanan IF). Konsekuen, yaitu bagian yang menyatakan suatu tindakan tertentu atau konklusi yang diterapkan jika suatu situasi atau premis bernilai benar (pernyataan berlawanan THEN).

Desain Prototype Setelah representasi pengetahuan selesai maka akan dimulailah tahap pembuatan desain prototype. Dalam tahap pembuatan desain prototype terdiri dari : 1. Perancangan Database Pada perancangan database, aplikasi sistem pakar untuk mendiagnosa penyakit pencernaan manusia ini menggunakan Microsoft Access 2002 sebagai alat pembangun database. 2. Perancangan Antar Muka Pemakai (User Interface) Sistem yang akan dibuat adalah penentuan jenis penyakit pada pencernaan manusia yang ingin diketahui oleh pengguna dengan menggunakan program Visual Basic 6.0 berupa gejala-gejala gengguan pada pencernaan. Ada tiga cara yang dapat digunakan oleh user untuk melihat gejala penyakit yang dideritanya, yaitu :

1.

2.

3.

Konsultasi Berfungsi sebagai tempat untuk berkonsultasi mengenai penyakit yang dideritanya dengan cara memilih gejala dan menjawab pertanyaan yang telah disediakan. Setelah menjawab maka akan muncul layar diangnosa yang dideritanya, apa bila tidak muncul berarti penyakit tersebut belum terdiangnosa. Daftar Istilah Berfungsi untuk melihat istilah atau kata-kata asing yang terdapat dalam sistem disertai atinya. Apabila user tidak memahami dari penjelasan yang diungkapkan. Daftar Penyakit Berfungsi sebagai tempat untuk melihat semua jenis-jenis penyakit yang ada di dalam sistem tanpa disertai keluhan / gejala.

B. Aliran Data C. Kebutuhan Proses Pada penulisan sistem pakar ini penulis terlebih dahulu menjabarkan kerangka pemikiran sebagai berikut :

Gambar 3.1 : Kerangka pemikiran. Struktur Rancangan Menu Struktur rancangan menu yang dibuat untuk aplikasi sistem pakar untuk mendiagnosa penyakit pada pencernaan manusia adalah :

Gambar: struktur rancangan menu D. Knowledge Arqulition Tabel GOAL No 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Penyakit Refluk empedu gastroentritis Crohn divertikulitis Apendisitis Entritis Stenosis pilorus Karsinoma lambung Pencernaan lemah Kolitis hemoragika Gatal anus Fissura anus Hemoroid Penyakit pilonidal Abses anorektal Esofagitis Striktur esofagus Karsinoma esofagus Hernia hiatus esofagus GERD Akalasia Kolesistisis Gatritis kronik Gatritis akut erosif Leiomiosarkoma gaster Ulkus peptikum Demam tifoid(tipus) Ulkus gastrikum Ileus Bulimia nervosa

Kode A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 A11 A12 A13 A14 A15 A16 A17 A18 A19 A20 A21 A22 A23 A24 A25 A26 A27 A28 A29 A30

Tabel fakta No Keluhan/gejala 1 Nyeri pada tenggorokan 2 Nyeri pada perut 3 Nyeri pada anus 4 Kesulitan menelan makanan padat saja 5 Kesulitan menelan makanan padat dan cair 6 Mual dan muntah 7 Mual dan tidak muntah 8 Gatal-gatal sekitar anus 9 Kesulitan duduk 10 Panas ditenggorokan 11 Nyeri dada saat menelan 12 Nyeri ulu hati 13 Kram perut 14 Sakit kepala 15 Nyeri tekan pada perut 16 Tubuh lemah 17 Nyeri perut seperti ditusuk-tusuk 18 Panas ada perut 19 Sakit pada perut 20 Sering berkeringat 21 Nyeri saat buang air besar 22 Ada penggumpalan nanah dianus 23 Pemuntahan kembali isi kerongkongan 24 Terasa penuh ditenggorokan 25 Nyeri dada bagian depan 26 Pemuntahan kembali 27 Nyeri tekan pada perut 28 Muntah darah 29 Muntah berwarna kehijauan 30 Perut perih dan panas 31 Perut kembung Knowledge base 1. A01 : K02, K06, K12, K29 2. A02 : K02, K06, K13, K31 3. A03 : K02, K06, K13 4. A04 : K02, K06, K15 5. A05 : K02, K06, K15 6. A06 : K02, K06, K16 7. A07 : K02, K06, K16 8. A08 : K02, K07, K17 9. A09 : K02, K07, K18 10. A10 : K02, K07, K19 11. A11 : K03, K08, K20 12. A12 : K03, K09, K21 13. A13 : K03, K09, K21

Kode K01 K02 K03 K04 K05 K06 K07 K08 K09 K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 K30 K31

14. A14 : K03, K09, K22 15. A15 : K03, K09, K22 16. A16 : K01, K04, K10, K23 17. A17 : K01, K04, K10, K24 18. A18 : K01, K05, K11, K25 19. A19 : K01, K05, K11, K26 20. A20 : K01, K05, K11, K26 21. A21 : K01, K05, K11, K26 22. A22 : K02, K06, K12, K27 23. A23 : K02, K06, K12, K27 24. A24 : K02, K06, K12, K27 25. A25 : K02, K06, K12, K28 26. A26 : K02, K06, K12, K28 27. A27 : K02, K06, K16 28. A28 : K02, K06, K12, K30 29. A29 : K02, K06, K13, K31 30. A30 : K02, K06, K14 Pengkodean balek No Fakta 1 K01 2 K02 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 K03 K04 K05 K06 K07 K08 K09 K10 K11 K12 K13 K14 K15 K16 K17 K18

GOAL A16,A17,A18,A19,A20,A21 A01,A02,A03,A04,A05,A06,A07,A08,A09,A10,A22,A23,A24, A25,A26,A27,A28,A29,A30 A11,A12,A13,A14,A15 A16,A17 A18,A19,A20,A21 A01,A02,A03,A04,A05,A06,A07,A22,A27,A23,A24,A25,A26, A28,A29,A30 A08,A09,A10 A11 A12,A13,A14,A15 A16,A17 A18,A19,A20,A21 A01,A22,A23,A24,A25,A26,A28 A02,A03,A29 A30 A04,A05 A06,A07,A27 A08 A09

19 K19 A10 20 K20 A11 21 K21 A12,A13 22 K22 A14,A15 23 K23 A16 24 K24 A17 25 K25 A18 26 K26 A19,A20,A21 27 K27 A22,A23,A24 28 K28 A25,A26 29 K29 A01 30 K30 A28 31 K31 A02,A29 Grouping untuk dijadikan decision tree, disourting: Fakta 19 K02 16 K06 7 K12 6 K01 5 K03 4 K05,K09,K11 3 K07,K13,K16,K26,K27 2 K04,K10,K15,K21,K22,K28,K31 1 K08,K14,K17,K18,K19,K20,K23,K24,K25,K29,K30 Diagram Pohon Reprensentasi pengetahuan yang terdapat dalam skripsi ini adalah diagram pohon (tree) dan kaidah produksi.

Gambar : Diagram Pohon Keputusan I

Gambar : Diagram Keputusan II

Gambar : Diagram Pohon Keputusan III Keterangan Diagram Pohon :

Tanda untuk keluhan atau gejala penyakit

Tanda Untuk nama penyakit A B Penjelasan Pengobatan

BAB IV DESAIN SISTEM


A. Desain Database Setelah konsep diformalisasikan secara lengkap kemudian diimplementasikan dengan membuat perancangan sistem yang akan dibangun. Dalam tahap desain prototype ini meliputi perancangan database, perancangan antar muka pemakai (user interface), struktur rancangan menu, STD rancangan menu dan tampilan menu. Perancangan Database Data-data diperlukan pada proses masukkan disimpan dalam database. Hal ini dimaksudkan agar data-data tersebut bersifat dinamis, yaitu dapat dilakukan penambahan dan penghapusan data. Database dalam aplikasi ini menggunakan Microsoft Access 2002 sebagai alat bantu. Penulis membuat lima tabel dalam pembuatan database, yaitu: 1. Tabel awal.
No. 1. 2. 3. 4. Field Name Kode Kelamin Ya Tidak Text Text Text Text Data type

2. Tabel istilah.
No. 1. 2. Field Name Istilah Arti Text Memo Data type

3. Tabel daftar penyakit.


No. 1. 2. 3. Field Name Nama_penyakit Keterangan Gambar Text Memo Text Data type

4. Tabel data oke.


No. 1. 2. 3. 4. Field Name Kode Kelamin Ya Tidak Text Text Text Text Data type

5. 6. 7. 8.

Diagnosa Gambar Penjelasan Pengobatan

Text Text Memo Memo

5. Tabel pakar
No. 1. 2. Field Name Nama Password Text Text Data type

Perancangan Form Antar Muka Pemakai (User Interface) Data-data yang telah diformat ke dalam bentuk database diterjemahkan ke dalam bahasa pemograman, kemudian masing-masing form diintegrasikan sehingga program yang diinginkan terlaksana. Pada sistem ini terdapat 7 Sub program yang berbeda, yaitu: 1. Sub program utama. Berfungsi sebagai tempat sub program yang lain untuk dapat di panggil dan dijalankan atau merupakan gambaran keseluruhan program. 2. Sub program konsultasi. Berfungsi sebagai tempat untuk berkonsultasi mengenai penyakit dengan cara memilih gejala dan menjawab pertanyaan yang disediakan. 3. Sub program basis pengetahuan. Berfungsi untuk update data, yang didalamnya terdapat sub program lagi, yaitu : input data konsultasi, data konsultasi, input data awal, daftar istilah, daftar penyakit dan pakar. 4. Sub program daftar istilah. Berfungsi untuk memilih istilah atau kata-kata asing yang terdapat dalam aplikasi disertai artinya. 5. Sub program daftar penyakit. Berfungsi sebagai tempat untuk melihat semua penyakit yang ada di aplikasi. 6. Sub program info. Berfungsi untuk mengetahui informasi dan pembuat aplikasi tersebut. 7. Sub program keluar. Berfungsi untuk mengakhiri proses dan keluar dari aplikasi. Rancangan Form Sesuai dengan penjelasan di atas, maka di sini terdapat 9 form yang penulis buat, yaitu yang terdiri dari : 1. Form utama
Kembali
Batas pengetahuan Daftar istilah Daftar penyakit

Info

Keluar

Animasi

Judul

2. Form konsultasi

Pilih Gejala awal penyakit :

Apakah penderita mengalami :

Ya

Tidak

Tutup

3. Form pakar
Pakar Nama : Password :

OK

Tutup

4. Form basis pengetahuan


Basis Pengetahuan Input Data Konsultasi Data Konsultasi Daftar Istilah Daftar Penyakit Pakar

Kode

Kelamin: Ya Tidak : : Gambar

Diagram : Gambar : Penjelasan : Pengobatan : Input Gejala awal << < > >> cari

Tambah

Ubah

Simpan

Hapus

Tutup

5. Form daftar penyakit


Daftar Penyakit Nama Penyakit : Keterangan : Gambar

Gambar :

Cari Tutup

6. Form data awal


Input Gejala Awal

Kode

Kelamin: Ya Tidak : :

<< Tambah Ubah Simpan

< Hapus

> Tutup

>>

7. Form diagnosa
Diagnosa Gejala Awal : Nama Penyakit : Penjelasan : Pengobatan: Tutup Konsultasi kembali Gambar

8. Form daftar isi


Daftar Istilah Istilah : Arti :

Tutup

9. Form info

Data diri pembuatan sistem Gambar

Tutup

B. Algoritma Searching Kaidah Produksi Kaidah produksi merupakan salah satu bentuk representasi pengetahuan yang banyak digunakan dalam pengembangan sistem pakar. Representasi pengetahuan dengan kaidah produksi, pada dasarnya berupa aturan (rule) yang berupa IF-THEN. Berikut ini adalah representasi pengetahuan aplikasi sistem pakar untuk mendiagnosa penyakit pencernaan manusia dengan kaidah produksi. Kaidah produksi yang dijabarkan di bawah ini menggunakan angka dan pembahasannya berada di Lampiran A, yaitu yang terdiri dari :
Rule 1 Rule 2 Rule 3 Rule 4 Rule 5 Rule 6 Rule 7 Rule 8 Rule 9 Rule 10 Rule 11 Rule 12 Rule 13 Rule 14 Rule 15 If 1 And 4 And 10 And 23 And 50 And 82 Then 117 If 1 And 4 And 10 And 24 And 51 And 83 Then 118 If 1 And 5 And 11 And 25 And 52 And 84 Then 119 If 1 And 5 And 11 And 26 And 53 And 85 Then 120 If 1 And 5 And 11 And 26 And 54 And 86 Then 121 If 1 And 5 And 11 And 26 And 54 And 87 Then 122 If 2 And 6 And 12 And 27 And 55 And 88 Then 123 If 2 And 6 And 12 And 27 And 56 And 89 Then 124 If 2 And 6 And 12 And 27 And 56 And 90 Then 125 If 2 And 6 And 12 And 28 And 57 And 91 Then 126 If 2 And 6 And 12 And 28 And 58 And 92 Then 127 If 2 And 6 And 12 And 29 And 59 Then 93 If 2 And 6 And 12 And 30 And 60 And 94 Then 128 If 2 And 6 And 12 And 30 And 60 And 95 Then 129 If 2 And 6 And 13 And 31 And 61 Then 96

Rule 16 Rule 17 Rule 18 Rule 19 Rule 20 Rule 21 Rule 22 Rule 23 Rule 24 Rule 25 Rule 26 Rule 27 Rule 28 Rule 29 Rule 30 Rule 31 Rule 32 Rule 33 Rule 34 Rule 35 Rule 36 Rule 37 Rule 38 Rule 39 Rule 40 Rule 41 Rule 42 Rule 43 Rule 44 Rule 45 Rule 46 Rule 47 Rule 48 Rule 49 Rule 50 Rule 51 Rule 52 Rule 53 Rule 54 Rule 55 Rule 56 Rule 57 Rule 58 Rule 59 Rule 60 Rule 61 Rule 62 Rule 63 Rule 64 Rule 65 Rule 66 Rule 67 Rule 68 Rule 69 Rule 70 Rule 71 Rule 72 Rule 73 Rule 74 Rule 75 Rule 76 Rule 77

If 2 And 6 And 13 And 31 And 62 And 97 Then 130 If 2 And 6 And 13 And 32 And 63 Then 98 If 2 And 6 And 14 And 33 And 64 And 99 Then 131 If 2 And 6 And 14 And 34 And 65 And 100 Then 132 If 2 And 6 And 15 And 35 And 66 Then 101 If 2 And 6 And 15 And 36 And 67 Then 102 If 2 And 6 And 15 And 37 And 68 And 103 Then 133 If 2 And 6 And 16 And 38 And 69 And 104 Then 134 If 2 And 6 And 16 And 39 And 70 Then 105 If 2 And 6 And 16 And 40 And 71 Then 106 If 2 And 7 And 17 And 41 And 72 And 107 Then 135 If 2 And 7 And 17 And 42 And 73 Then 108 If 2 And 7 And 17 And 43 And 74 And 109 Then 136 If 2 And 7 And 18 And 44 And 75 Then 110 If 2 And 7 And 19 And 45 And 76 Then 111 If 3 And 8 And 20 And 46 And 77 Then 112 If 3 And 9 And 21 And 47 And 78 Then 113 If 3 And 9 And 21 And 48 And 79 Then 114 If 3 And 9 And 22 And 49 And 80 Then 115 If 3 And 9 And 22 And 49 And 81 Then 116 If 1 And 2 And 3 Then PBT. If 1 And 4 And 5 Then PBT. If 1 And 4 And 10 Then PBT. If 1 And 4 And 10 And 23 And 24 Then PBT. If 1 And 4 And 10 And 23 And 50 Then PBT. If 1 And 4 And 10 And 23 And 50 And 82 Then PBT. If 1 And 4 And 10 And 24 And 51 Then PBT. If 1 And 4 And 10 And 24 And 51 And 83 Then PBT. If 1 And 5 And 11 Then PBT. If 1 And 5 And 11 And 25 And 26 Then PBT. If 1 And 5 And 11 And 25 And 52 Then PBT. If 1 And 5 And 11 And 25 And 52 And 84 Then PBT. If 1 And 5 And 11 And 26 And 53 And 54 Then PBT. If 1 And 5 And 11 And 26 And 53 And 85 Then PBT. If 1 And 5 And 11 And 26 And 54 And 86 And 87 Then PBT. If 2 And 6 And 7 Then PBT. If 2 And 6 And 12 And 13 And 14 And 15 And 16 Then PBT. If 2 And 6 And 12 And 27 And 28 And 29 And 30 Then PBT. If 2 And 6 And 12 And 27 And 55 And 56 Then PBT. If 2 And 6 And 12 And 27 And 55 And 88 Then PBT. If 2 And 6 And 12 And 27 And 56 And 89 And 90 Then PBT. If 2 And 6 And 12 And 28 And 57 And 58 Then PBT. If 2 And 6 And 12 And 28 And 57 And 91 Then PBT. If 2 And 6 And 12 And 28 And 58 And 92 Then PBT. If 2 And 6 And 12 And 29 And 59 Then PBT. If 2 And 6 And 12 And 30 And 60 Then PBT. If 2 And 6 And 12 And 30 And 60 And 94 And 95 Then PBT. If 2 And 6 And 13 And 31 And 32 Then PBT. If 2 And 6 And 13 And 31 And 61 And 62 Then PBT. If 2 And 6 And 13 And 31 And 62 And 97 Then PBT. If 2 And 6 And 13 And 32 And 63 Then PBT. If 2 And 6 And 14 And 33 And 34 Then PBT. If 2 And 6 And 14 And 33 And 64 Then PBT. If 2 And 6 And 14 And 33 And 64 And 99 Then PBT. If 2 And 6 And 14 And 34 And 65 Then PBT. If 2 And 6 And 14 And 34 And 65 And 100 Then PBT. If 2 And 6 And 15 And 35 And 36 And 37 Then PBT. If 2 And 6 And 15 And 35 And 66 Then PBT. If 2 And 6 And 15 And 36 And 67 Then PBT. If 2 And 6 And 15 And 37 And 68 Then PBT. If 2 And 6 And 15 And 37 And 68 And 103 Then PBT. If 2 And 6 And 16 And 38 And 39 And 40 Then PBT.

Rule 78 Rule 79 Rule 80 Rule 81 Rule 82 Rule 83 Rule 84 Rule 85 Rule 86 Rule 87 Rule 88 Rule 89 Rule 90 Rule 91 Rule 92 Rule 93 Rule 94 Rule 95 Rule 96 Rule 97 Rule 98 Rule 99 Rule 100 Rule 101 Rule 102

If 2 And 6 And 16 And 38 And 69 Then PBT. If 2 And 6 And 16 And 38 And 69 And 104 Then PBT. If 2 And 6 And 16 And 39 And 70 Then PBT. If 2 And 6 And 16 And 40 And 71 Then PBT. If 2 And 7 And 17 And 18 And 19 Then PBT. If 2 And 7 And 17 And 41 And 42 And 43 Then PBT. If 2 And 7 And 17 And 41 And 72 Then PBT. If 2 And 7 And 17 And 41 And 72 And 107 Then PBT. If 2 And 7 And 17 And 42 And 73 Then PBT. If 2 And 7 And 17 And 43 And 74 Then PBT. If 2 And 7 And 17 And 43 And 74 And 109 Then PBT. If 2 And 7 And 18 And 44 Then PBT. If 2 And 7 And 18 And 44 And 75 Then PBT. If 2 And 7 And 19 And 45 Then PBT. If 2 And 7 And 19 And 45 And 76 Then PBT. If 3 And 8 And 9 Then PBT. If 3 And 8 And 20 Then PBT. If 3 And 8 And 20 And 46 Then PBT. If 3 And 8 And 20 And 46 And 77 Then PBT. If 3 And 9 And 21 And 22 Then PBT. If 3 And 9 And 21 And 47 And 48 Then PBT. If 3 And 9 And 21 And 47 And 78 Then PBT. If 3 And 9 And 21 And 48 And 79 Then PBT. If 3 And 9 And 22 And 49 Then PBT. If 3 And 9 And 22 And 49 And 80 And 81 Then PBT

Keterangan : Bila angkanya 1 -> berarti ada keluhan/gejala penyakit Bila angkanya 1 -> berarti tidak ada keluhan/gejala penyakit