Aplikasi Sistem Pakar Untuk Diagnosa Penyakit Paru Pada Anak

(1)

BIODATA PENULIS

Nama : Putri Fitriani

Nim : 10106431

Tempat / Tgl Lahir : Indramayu, 12 Mei 1988 Jenis Kelamin : Perempuan

Alamat : Jl. Dipati ukur 86 A1 Bandung

Telepon :

-Email : shepoet88@yahoo.com

Pendidikan

1. 1994 – 1999 : SD Negeri Pendawa Indramayu 2. 2000 - 2003 : SMP Negeri 1 Terisi Indramayu 3. 2004 - 2006 : SMA Muh 7 Yogyakarta

4. 2006 - 2010 : Program Studi S1 Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.


(2)

132 Yogyakarta.

[2] Bunafit Nugroho. (2004), Aplikasi Pemrograman Web Dinamis dengan PHP MySQL, Gava Media, Jogjakarta.

[3] Danusantoso Halim. (2000), Ilmu Penyakit Paru, Hipokrates.

[4] Kusumadewi, Sri. (2002), Artificial Intellegence (Teknik dan Aplikasinya),Graha Ilmu, Yogyakarta.

[5] N. Rahajoe Nastiti, Supriyanto Bambang, Budi Setyanto Darmawan. (2008), Respirologi Anak, Badan Penerbit Ikatan Dokter Anak Indonesia, Jakarta.


(3)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan komputer dewasa ini telah mengalami banyak perubahan yang sangat pesat, seiring dengan kebutuhan manusia yang semakin banyak dan kompleks. Komputer yang pada awalnya hanya digunakan oleh para akademisi dan militer, kini telah digunakan secara luas di berbagai bidang, misalnya: Bisnis, Kesehatan, Pendidikan, Psikologi, Permainan dan sebagainya. Hal ini mendorong para ahli untuk semakin mengembangkan komputer agar dapat membantu kerja manusia atau bahkan melebihi kemampuan kerja manusia.

Seiring perkembangan teknologi, dikembangkan pula suatu teknologi yang mampu mengadopsi proses dan cara berpikir manusia yaitu teknologi Artificial Intelligence atau Kecerdasan Buatan. Sistem Pakar adalah salah satu bagian dari Kecerdasan Buatan yang mengandung pengetahuan dan pengalaman yang dimasukkan oleh satu atau banyak pakar ke dalam satu area pengetahuan tertentu.

Otak sistem pakar adalah mesin inferensi, yang dikenal juga sebagai struktur kontrol atau penerjemah aturan (dalam sistem pakar berbasis aturan). Komponen ini sebenarnya adalah program komputer yang menyediakan metodologi untuk mempertimbangkan informasi dalam basis pengetahuan dan blackboard, dan merumuskan kesimpulan. Komponen ini menyediakan arahan bagaimana menggunakan pengetahuan sistem, yakni dengan mengembangkan


(4)

agenda yang mengatur dan mengontrol langkah yang diambil untuk memecahkan persoalan kapan pun konsultasi berlangsung.

Salah satu implementasi yang diterapkan sistem pakar dalam bidang kedokteran yaitu untuk sistem pakar menentukan jenis penyakit paru-paru pada anak, terlebih mengingat usia anak-anak yang rentan terhadap penyakit, salah satunya contoh penyakit Bronkitis. Oleh karena itu dibangun suatu sistem pakar yang dapat membantu para pakar anak untuk mendiagnosa penyakit, sehingga meminimumkan timbulnya kesalahan dalam diagnosa dan pemberian obat oleh dokter, dengan menggunakan metode Forward Chaining.

1.2 Identifikasi Masalah

Berdasarkan latar belakang di atas, terdapat masalah sebagai berikut: 1. Bagaimana cara memanage sistem (mengedit, menghapus ataupun

menambahkan data) di dalam sistem pakar.

2. Bagaimana aplikasi dapat memberikan informasi mengenai kemungkinan penyakit yang diderita pasien dan resep obat yang disarankan.

1.3 Maksud dan Tujuan 1.3.1 Maksud

Maksud dari pembuatan tugas akhir ini adalah membangun sebuah perangkat lunak sistem pakar untuk membantu membuat keputusan dokter dalam mendiagnosa penyakit paru pada anak.


(5)

3

1.3.2 Tujuan

Sedangkan tujuan yang akan dicapai dalam membangun sebuah perangkat lunak sistem pakar adalah :

1. Membuat sistem pakar yang bisa dikembangkan lebih lanjut untuk mengidentifikasi gejala-gejala penyakit ataupun membuktikan dugaan terhadap suatu penyakit.

2. Meminimumkan timbulnya kesalahan dalam mendiagnosa penyakit paru anak. 3. Memberikan kepastian (Certainty Factor) terhadap penyakit yang diderita

oleh pasien.

1.4 Batasan Masalah

Batasan-batasan masalah yang akan dibahas adalah sebagai berikut : 1. Aplikasi ini hanya digunakan oleh dokter spesialis penyakit paru-paru.

2. Data-data penunjang penyakit paru yang digunakan hanya pada usia anak-anak saja.

3. Sistem pakar yang akan dibangun bersifat dinamis yang berarti aturan atau gejala- gejala yang muncul dari penyakit dapat berubah/ditambahkan sesuai dengan perkembangan atau gejala baru.

4. Metode penalaran yang digunakan dalam sistem ini adalah penalaran pelacakan maju (Forward Chaining) yaitu dimulai dari sekumpulan fakta-fakta tentang suatu gejala yang diberikan oleh pengguna sebagai masukan sistem, untuk kemudian dilakukan pelacakan sampai tujuan terakhir berupa diagnosa kemungkinan jenis gangguan perkembangan yang diderita dan penjelasan


(6)

tentang jenis gangguan yang diderita, dan menggunakan teori Certainty Factor untuk menentukan besarnya ketepatan diagnosa berdasarkan jawaban-jawaban dari pasien.

5. Model analisis yang digunakan dalam pembangunan sistem ini berdasarkan data terstruktur yaitu menggunakan Flowchart dan ERD (Entity Relationship Diagram) dan untuk menggambarkan diagram proses menggunakan DFD (Data Flow Diagram).

1.5 Metodologi Penelitian

Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :

1.5.1 Tahap pengumpulan data

Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut:

a. Studi Pustaka.

Studi ini dilakukan dengan cara mempelajari, meneliti dan menelaah berbagai literatur-literatur dari perpustakaan yang bersumber dari buku-buku, teks, jurnal ilmiah, situs-situs di internet, dan bacaan-bacaan yang ada kaitannya dengan topik penelitian.

b. Studi Lapangan.

Studi ini dilakukan dengan cara mengunjungi tempat yang akan diteliti dan pengumpulan data dilakukan secara langsung. hal ini meliputi :


(7)

5

1. Wawancara.

Teknik pengumpulan data dengan mengadakan tanya jawab secara langsung yang ada kaitannya dengan topik yang diambil.

2. Observasi.

Observasi yaitu teknik pengumpulan data dengan cara melakukan pengamatan secara langsung terhadap objek permasalahan yang diambil.

1.5.2 Metode Pengembangan Sistem

Dengan adanya teori yang menjelaskan tentang pengertian sistem tersebut maka metode yang digunakan dalam pengembangan sistem ini adalah berdasarkan paradigma waterfall yang terdiri dari Kebutuhan Sistem, Analisis, Desain, Pengkodean, Pengujian (tes) dan Perawatan. Untuk lebih jelasnya tahapan tahapan dari paradigma Waterfalldapat dilihat pada Gambar 1.1 berikut ini:


(8)

Keterangan metode Waterfallseperti berikut : a. Kebutuhan Sistem

Kegiatan yang dilakukan dalam tahap ini adalah menganalisis kebutuhan sistem yang akan dibangun. Mengumpulkan kebutuhan secara lengkap untuk selanjutnya menuju tahap analiisis. Kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menganalis sistem yang akan dibangun.

b. Analisis Sistem

Berdasarkan rumusan sistem yang diperoleh dari tahap pertama, selanjutnya dilakukan analisis yang berkaitan dengan proses dan data yang diperlukan oleh sistem serta keterkaitannya. Tujuan dilakukannya tahapan ini adalah sebagai berikut :

1. Memahami sistem yang ada pada saat ini 2. Mendefinisikan permasalahan sistem

3. Menentukan kebutuhan sistem secara garis besar sebagai persiapan ke tahap perancangan.

c. Desain

Pada tahap perancangan ini diberikan gambaran umum yang jelas kepada pengguna dan rancang bangun yang lengkap tentang sistem yang akan dikembangkan kepada pihak-pihak yang terlibat dalam pengembangan sistem.


(9)

7

d. Pengkodean

Setelah tahap perancangan sistem, selanjutnya dilakukan pengimplementasian rancangan sistem ke dalam kode-kode dalam bahasa pemrograman yang diinginkan. Pada tahap ini dilakukan pembuatan komponen-komponen sistem yang meliputi implementasi modul-modul program, antarmuka dan basis data.

e. Pengujian

Tahap tes/pengujian ini dilakukan untuk mendapatkan perangkat lunak yang benar-benar valid dan sesuai dengan kebutuhan yang sudah dideskripsikan.

f. Perawatan

Setelah dilakukan pengujian dan sistem diyakini telah valid, selanjutnya sistem tersebut didistribusikan kepada pengguna. Hal ini tidak berarti pekerjaan pengembang telah selesai, karena masih terdapat tahap pemeliharaan sistem yang harus dilakukan. Pada tahap ini dilakukan evaluasi terhadap sistem yang baru untuk melihat apakah sistem telah memenuhi tujuan yang ingin dicapai. Dari hasil evaluasi ini dimungkinkan untuk melakukan perubahan-perubahan yang diperlukan terhadap sistem.


(10)

1.5.3 Metode Analisis

Analisis merupakan proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada perangkat lunak. Untuk memahami sifat program yang dibangun, perekayasa perangkat lunak (analis) harus memahami domain informasi, tingkah laku, unjuk kerja, dan antar muka (interface)yang diperlukan. Sedangkan alat bantu yang digunakan dalam tahap analisis meliputi : Data Context Diagram (DCD), Data Flow Diagram(DFD),Data Dictionary(DD), dan Entity Relation Diagram (ERD).

a. Context Diagram

Context Diagram menurut Roger S. Pressman dalam buku Software Engineer adalah “Diagram yang menggambarkan seluruh elemen perangkat lunak (sistem) sebagai sebuah proses tunggal dengan data masukan dan data keluaran yang ditandai dengan keluar masuknya anak panah”.

b. Data Flow Diagram(DFD)

Data Flow Diagram (DFD) atau Diagram Alir data merupakan alat bantu yang cukup popular saat ini, karena dapat menggambarkan arus data dalam sistem dengan terstruktur yang jelas. DFD adalah sebuah teknik grafis yang menggambarkan aliran informasi dan perubahannya dari input menjadi. Untuk simol-simbol yang terdapat pada DFD akan diuraikan pada daftar simbol.


(11)

9

c. Data Dictionary(DD)

Data Dictionary (DD) atau kamus data tidak menggunakan notasi grafis sebagaimana halnya DFD, tetapi porsinya dalam memodelkan sistem tidak perlu diragukan lagi. Mirip dengan kamus yang membantu kita dalam mencari kata baru. Secara jelasnya DD merupakan daftar-daftar elemen data yang terorganisasi yang berhubungan dengan sistem, sehingga user dan sistem analis mempunyai pemahaman yang sama tentang input dan output serta komponen-komponennya.

d. Entity Relation Diagram(ERD)

Entity Relation Diagram (ERD) adalah model konseptual yang mendeskripsikan hubungan antara penyimpanan (dalam DFD). ERD digunakan untuk memodelkan struktur data dan hubungan antar. Dengan ERD, model dapat diuji dengan mengabaikan proses yang dilakukan.

1.6 Sistematika Penulisan

Sistematika penulisan skripsi ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Menguraikan tentang latar belakang permasalahan, mencoba merumuskan inti permasalahan yang dihadapi, menentukan tujuan dan kegunaan penelitian, yang kemudian diikuti dengan pembatasan masalah, asumsi, serta sistematika penulisan.


(12)

BAB II LANDASAN TEORI

Membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses analisis permasalahan serta tinjauan terhadap penelitian-penelitian serupa yang telah pernah dilakukan sebelumnya termasuk sintesisnya.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Menganalisis masalah dari model penelitian untuk memperlihatkan keterkaitan antar variabel yang diteliti serta model matematis untuk analisisnya.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Merupakan tahapan yang dilakukan dalam penelitian secara garis besar sejak dari tahap persiapan sampai penarikan kesimpulan, metode dan kaidah yang diterapkan dalam penelitian. Termasuk menentukan variabel penelitian, identifikasi data yang diperlukan dan cara pengumpulannya, penentuan sampel penelitian dan teknik pengambilannya, serta metode/teknik analisis yang akan dipergunakan dan perangkat lunak yang akan dibangun jika ada.

BAB V KESIMPULAN DAN SARAN

Pada bab ini berisi tentang kesimpulan dan saran-saran yang didapat dari pembahasan dan aplikasi yang telah dibuat.


(13)

11

BAB II

LANDASAN TEORI

2.1 Sejarah Artificial Intelligence

Kecerdasan Buatan (artificial intelligence) merupakan inovasi baru di bidang ilmu pengetahuan. Mulai ada sejak muncul komputer modern, yakni pada 1940 dan 1950. Kemampuan mesin elektronika baru menyimpan sejumlah besar info, memproses dengan kecepatan sangat tinggi menandingi kemampuan manusia. Ilmu pengetahuan komputer ini khusus ditujukan dalam perancangan otomatisasi tingkah laku cerdas dalam sistem kecerdasan komputer. Pada sistem ini memperlihatkan sifat-sifat khas yang dihubungkan dengan kecerdasan dalam kelakuan yang sepenuhnya dapat menirukan beberapa fungsi otak manusia, seperti pengertian bahasa, pengetahuan, pemikiran, pemecahan, dan masalah.

Pentingnya kecerdasan buatan menjadi nyata bagi negara-negara yang berperan sejak tahun 1970. Para pemimpin negara yang mengakui potensialnya kecerdasan buatan mengharap mendapat persetujuan jangka panjang untuk sumber-sumber yang memerlukan dana intensif. Jepang adalah yang pertama kali melakukan itu. Negara ini mengembangkan program yang sangat berambisi dalam penelitian kecerdasan buatan. Sebagai bidang ilmu pengetahuan komputer, kecerdasan buatan sebenarnya sudah mulai diselidiki pada 1930-an dan 1940-an.


(14)

Pada saat itu, banyak cendekiawan mengembangkan ide-ide baru mengenai komputasi.

Logika matematika menjadi bidang aktif dari penyelidikan kecerdasan buatan, karena sistem logika deduktif telah berhasil diimplementasikan dalam program-program komputer. Seorang ahli matematika bernama Alan Turing, yang memiliki sumbangan besar dalam pengembangan teori kemampuan penghitungan (computability), mengusulkan tes untuk melihat bisa atau tidaknya mesin memberikan respon terhadap seangkaian pertanyaan (agar mesin dapat dikatakan cerdas). Uji yang dilakukan adalah dengan mengukur kinerja (performance) mesin cerdas. Uji Alan Turing menjadi dasar bagi banyak strategi yang digunakan dengan menilai program-program kecerdasan buatan.

Pada awalnya, kecerdasan buatan hanya ada di universitas-universitas dan laboratorium penelitian, serta hanya sedikit produk yang dihasilkan dan dikembangkan. Menjelang akhir 1970-an dan 1980-an, mulai dikembangkan secara penuh dan hasilnya berangsur-angsur dipublikasikan di khalayak umum. Permasalahan di dalam kecerdasan buatan akan selalu bertambah dan berkembang seiring dengan laju perkembangan zaman menuju arah globalisasi dalam setiap aspek kehidupan manusia, yang membawa persoalan-persoalan yang semakin beragam pula.

Program kecerdasan buatan lebih sederhana dalam pengoperasiannya, sehingga banyak membantu pemakai. Program konvensional dijalankan secara prosedural dan kaku, rangkaian tahap solusinya sudah didefinisikan secara tepat


(15)

13

oleh pemrogramnya. Sebaliknya, pada program kecerdasan buatan untuk mendapatkan solusi yang memuaskan dilakukan pendekatan trial and error, mirip seperti apa yang dilakukan oleh manusia.

2.1.1 Pengertian Artificial Intelligence

Menurut Encyclopedia Britannica:“Kecerdasan Buatan (AI) merupakan cabang dari ilmu komputer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan, dan memproses informasi berdasarkan metode heuristic atau dengan berdasarkan sejumlah aturan”

Menurut Rich and Knight [1991] : “Kecerdasan Buatan (AI) merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia.”

Menurut John McCarthy, [1956:10] : “Untuk mengetahui dan memodelkan proses – proses berpikir manusia dan mendesain mesin agar dapat menirukan perilaku manusia”

2.1.2 Tujuan Artificial Intelligence Menurut Winston dan Prendergast [1984]:

1. Membuat mesin menjadi lebih pintar (tujuan utama)

2. Memahami apa itu kecerdasan (tujuan ilmiah)


(16)

2.1.3 Lingkup Utama Artificial Intelligence 1. Sistem Pakar (Expert System)

Komputer sebagai sarana untuk menyimpan pengetahuan para pakar sehingga komputer memiliki keahlian menyelesaikan permasalahan dengan meniru keahlian yang dimiliki pakar.

2. Pengolahan bahasa alami (Natural Language Processing)

User dapat berkomunikasi dengan computer menggunakan bahasa sehari-hari, missal bahasa inggris, bahasa Indonesia atau pun bahasa daerah lainnya.

3. Pengenalan ucapan (Speech recognition)

Manusia dapat berkomunikasi dengan komputer menggunakan suara.

4. Robotika dan sistem sensor

Contohnya sistem sensor, seperti sistem vision, sistem tactile dan sistem pemrosesan sinyal jika dikombinasikan dengan Artificial Intelligence, dapat dikategorikan ke dalam suatu sistem yang luas yang disebut sistem robotika.

5. Computer Vision

Menginterpretasikan gambar atau objek tampak melalui komputer.

6. Intelligent Computer Aided Instruction

Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar.


(17)

15

7. Game Playing

Permainan dilakukan dengan menggunakan sekumpulan aturan, pencarian ruang, teknik untuk menentukan alternative dalam menyimak problema ruang merupakan sesuatu yang rumit, teknik tersebut disebut dengan Heuristic dan permainan merupakan bidang yang menarik dalam studi heuristic.

2.2 Sistem Pakar

Salah satu wawasan yang diperoleh dalam hal pemecahan masalah adalah pentingnya pengetahuan yang bersifat khusus. Pengetahuan pakar merupakan kombinasi pemahaman teoritis suatu persoalan dan sekumpulan aturan pemecahan persoalan heuristik dimana pengalaman telah menunjukan keefektifannya dalam persoalan.

2.2.1 Pengertian Sistem Pakar

Secara umum, sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah seperti layaknya seorang pakar. Dengan sistem pakar, orang awam pun dapat menyelesaikan masalahnya atau hanya sekedar mencari suatu informasi berkualitas yang sebenarnya hanya dapat diperoleh dengan bantuan para ahli di bidangnya. Sistem pakar juga akan dapat membantu aktivitas para pakar sebagai asisten yang berpengalaman dan mempunyai asisten yang berpengalaman dan mempunyai pengetahuan yang dibutuhkan.


(18)

Dalam penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan kesimpulan (inference rules) dengan basis pengetahuan tertentu yang diberikan oleh satu atau lebih pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut disimpan dalam komputer, yang selanjutnya digunakan dalam proses pengambilan keputusan untuk penyelesaian masalah tertentu.

Beberapa alasan sistem pakar bersifat terbuka terhadap pemeriksaan yaitu: 1. Jika seorang pakar seperti dokter atau insinyur menerima rekomendasi dari

komputer, maka mereka harus puas terhadap jawaban yang diberikan

2. Dapat mengevaluasi setiap aspek dan keputusan yang diambil selama proses mendapatkan solusi dan memungkinkan adanya penambahan sejumlah informasi atau aturan baru untuk mengembangkan kinerja.

2.2.2 Konsep Dasar Sistem Pakar

Konsep dasar dari sistem pakar yaitu meliputi keahlian (expertise), ahli (experts), pemindahan keahlian (transfering expertise), inferensi (inferencing), aturan (rules) dan kemampuan memberikan penjelasan (explanation capability).

Keahlian (expertise) adalah pengetahuan yang mendalam tentang suatu masalah tertentu, dimana keahlian bisa diperoleh dari pelatihan/ pendidikan, membaca dan pengalaman dunia nyata. Ada dua macam pengetahuan yaitu pengetahuan dari sumber yang ahli dan pengetahuan dari sumber yang tidak ahli. Pengetahuan dari sumber yang ahli dapat digunakan untuk mengambil keputusan dengan cepat dan tepat.


(19)

17

Ahli (experts) adalah seorang yang memiliki keahlian tentang suatu hal dalam tingkatan tertentu, ahli dapat menggunakan suatu permasalahan yang ditetapkan dengan beberapa cara yang berubah- ubah dan merubahnya kedalam bentuk yang dapat dipergunakan oleh dirinya sendiri dengan cepat dan cara pemecahan yang mengesankan. Kemampuan pemecahan masalah adalah penting, tetapi tidak cukup dilakukan sendiri.

Ahli seharusnya dapat untuk menjelaskan hasil yang diperoleh, mempelajari sesuatu yang baru tentang domain masalah, merestrukturisasi pengetahuan kapan saja yang diperlukan dan menentukan apakah keahlian mereka relevan atau saling berhubungan.

2.2.3 Keuntungan dan Kelemahan Sistem Pakar

Secara garis besar, banyak manfaat yang dapat diambil dengan adanya sistem pakar, antara lain :

1. Memungkinkan orang awam bisa mengerjakan pekerjaan para ahli.

2. Menyimpan pengetahuan dan keahlian para pakar.

3. Meningkatkan kapabilitas sistem komputer.

4. Meningkatkan kapabilitas dalam penyelesaian masalah.


(20)

Di samping memiliki beberapa keuntungan, sistem pakar juga memiliki beberapa kelemahan, antara lain :

1. Biaya yang diperlukan untuk membuat dan memeliharanya sangat mahal.

2. Sulit dikembangkan. Hal ini tentu saja erat kaitannya dengan ketersediaan pakar di bidangnya.

3. Sistem Pakar tidak 100% bernilai benar.

2.2.4 Struktur Sistem Pakar

Sistem pakar dapat ditampilkan dengan dua lingkungan, yaitu lingkungan pengembangan (development environment) dan lingkungan konsultasi (consultation environment) (Gambar 2.1). Lingkungan pengembangan digunakan oleh sistem pakar (ES) builder untuk membangun komponen dan memasukkan pengetahuan ke dalam basis pengetahuan. Lingkungan konsultasi digunakan oleh nonpakar untuk memperoleh pengetahuan dan nasihat pakar. Lingkungan ini dapat dipisahkan setelah sistem lengkap.


(21)

19

Gambar 2.1 Struktur Sistem Pakar

Tiga komponen utama yang tampak secara virtual di setiap sistem pakar adalah basis pengetahuan, mesin inferensi, dan antarmuka pengguna. Selain antarmuka pengguna, basis pengetahuan, dan mesin inferensi, dari struktur sistem pakar yang terdapat pada gambar diatas mengandung komponen lain, yaitu akuisisi pengetahuan, blackboard, fasilitas penjelasan, dan perbaikan pengetahuan. ( Turban, Efraim, 2005).

2.2.5 Komponen-komponen Sistem Pakar

Komponen-komponen dalam sistem pakar antara lain: 1. Antar Muka Pengguna

Antarmuka pemakai merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi. Pada bagian ini terjadi dialog


(22)

antara program dan pemakai, yang memungkinkan sistem pakar menerima instruksi dan informasi (input) dari pemakai, juga memberikan informasi (output) kepada pemakai.

2. Basis Pengetahuan

Pengetahuan merupakan kemampuan untuk membentuk model mental yang menggambarkan obyek dengan tepat dan mempresentasikannya dalam aksi yang dilakukan terhadap suatu obyek (Martin dan Oxman, 1988).

Pengetahuan dapat diklasifikasikan menjadi tiga, yaitu pengetahuan prosedural (procedural knowledge), pengetahuan deklaratif (declaratif knowlwdge), dan pengetahuan tacit (tacit knowledge). Pengetahuan prosedural lebih menekankan pada bagaimana melakukan sesuatu, pengetahuan deklaratif menjawab pertanyaan apakah sesuatu bernilai salah atau benar, sedangkan pengetahuan tacit merupakan pengetahuan yang tidak dapat diungkapkan dengan bahasa. Basis Pengetahuan merupakan inti program Sistem Pakar dimana basis pengetahuan ini adalah representasi pengetahuan (Knowledge Representation) dari seorang pakar.

Pengetahuan dapat dipresentasikan dalam bentuk yang sederhana atau kompleks, tergantung dari masalahnya (Schnupp, 1989). Ada beberapa model representasi yang penting yaitu : logika (logic), jaringan semantik (semantic nets), bingkai (frame), kaidah produksi (production rule).


(23)

21

a. Logika (logic)

Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah, dan prosedur yang membantu proses penalaran. Logika merupakan bentuk representasi pengetahuan yang paling tua, yang menjadi dasar dari teknik representasi high level.

b. Jaringan Sematik

Merupakan suatu gambaran dari pengetahuan yang memperlihatkan hubungan hirarki dari objek – objek. Objek dipresentasikan dalam bentuk node dan hubungan antara objek dinyatakan oleh garis penghubung beratribut.

c. Bingkai (Frame)

Yaitu blok – blok berisi pengetahuan mengenai objek tertentu, kejadian, lokasi, situasi dari elemen-elemen lain yang menggambarkan objek tersebut secara rinci, dimana rincian objek tersebut disimpan ke dalam sebuah slot yang menggambarkan berbagai atribut dan karakteristik dari objek. Proses penalaran yang dilakukan oleh frame secara esensial adalah mengkonfirmasikan berbagai harapan (ekspektasi). Frame memuat deskripsi sebuah objek dengan menggunakan tabulasi yang berhubungan dengan objek sehingga frame mengelompokkan atribut sebuah objek. Dengan demikian frame dapat membantu menirukan cara mengorganisasikan informasi sebuah objek menjadi kumpulan data.


(24)

d. Kaidah Produksi

Metode kaidah produksi biasanya dituliskan dalam bentuk jika maka (if-then). Kaidah ini dapat dikatakan sebagai hubungan implikasi dua bagian, yaitu: pertama jika (premise) dan yang kedua, yaitu muka (konkulasi). Apabila bagian jika dipenuhi maka bagian muka akan bernilai benar. 3. 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. 4. Mesin Inferensi

Otak sistem pakar adalah mesin inferensi, yang dikenal juga sebagai struktur kontrol atau penerjemah aturan (dalam sistem pakar berbasis aturan). Komponen ini sebenarnya adalah program komputer yang menyediakan metodologi untuk mempertimbangkan informasi dalam basis pengetahuan dan blackboard, dan merumuskan kesimpulan.

Komponen ini menyediakan arahan bagaimana menggunakan pengetahuan sistem, yakni dengan mengembangkan agenda yang mengatur dan mengontrol langkah yang diambil untuk memecahkan persoalan kapan pun konsultasi berlangsung.

Terdapat dua pendekatan untuk mengontrol inferensi dalam sistem pakar berbasis aturan, yaitu :


(25)

23

1) Forward chaining

Pelacakan kedepan adalah pendekatan yang dimotori data (data-driven). Dalam pendekatan ini pelacakan dimulai dari informasi masukan, dan selanjutnya mencoba menggambarkan kesimpulan. Pelacakan ke depan, mencari fakta yang sesuai dengan bagian IF dari aturan IF-THEN. Gambar 2 menunjukkan proses forward chaining.

Gambar 2.2 Proses Forward Chaining 2) Backward chaining

Pelacakan ke belakang adalah pendekatan yang dimotori oleh tujuan (goal-driven). Dalam pendekatan ini pelacakan dimulai dari tujuan, selanjutnya dicari aturan yang memiliki tujuan tersebut untuk kesimpulannya. Selanjutnya proses pelacakan menggunakan premis untuk aturan tersebut sebagai tujuan baru dan mencari aturan lain dengan tujuan baru sebagai kesimpulannya. Proses berlanjut sampai semua kemungkinan ditemukan (Kusumadewi, 2003). Gambar 1 menunjukan proses backward chaining.


(26)

2.2.6 Sistem Diagnosa

Sistem diagnosa adalah program komputer yang meniru proses pengambilan keputusan oleh seorang pakar dalam melakukan diagnosa merupakan salah satu bidang dari aplikasi system berbasis pengetahuan.

Karakteristik dari sistem diagnosa adalah sistem akan bekerja jika digunakan untuk mendiagnosa suatu masalah. Setelah melihat gejala-gejala yang tampak kemudian dilakukan pelacakan pada basis pengetahuan untuk mendapatkan solusi yang cocok dengan gejala tersebut. Keluaran yang diinginkan dari sistem diagnosa ini adalah untukmemberikan hasil diagnosa serta anjuran untuk langkah-langkah penanggulangan terhadap suatu masalah kepada pemakai.

2.2.6.1 Sistem Diagnosa Berbasis Aturan

Sistem diagnosa berbasis aturan menggunakan teknik heuristik untuk menentukan solusi dengan melihat gejala-gejala yang tampak. Sistem ini bekerja seperti pakar yang akan menentukan solusi dengan melihat gejala-gejala yang timbul.

Dilihat dari proses pelacakan, maka sistem diagnosa ini cocok untuk memakai metode pelacakan arah mundur. Dengan teknik heuristik waktu untuk mendapatkan solusi lebih cepat. Hal ini merupakan salah satu keuntungan dari sistem diagnosa berbasis aturan.


(27)

25

2.2.6.2 Sistem Diagnosa Model

Sistem diagnosa berbasis model mempresentasikan model kelakuan yang salah. Pendekatannya adalah berdasarkan objek, model kelekuan objek bisa diidentifikasikan dan parameter-parameter seperti tegangan, kuat arus, tekanan dan sebagainya. Dengan pendekatan objek memudahkan membagi sebuah subsistem yang besar atas beberapa subsistem dengan bagian terkecil yaitu komponen.

Sistem berbasis model ini selalu menemukan solusi penyebab kerusakan karena tidak menggunakan teknik heuristik sehingga setiap kemungkinan ditelusuri satu per satu tanpa memperdulikan factor kepastian dan prioritas peluang kejadian. Akibatnya bisa memakan waktu yang lama untuk adanya mekanisme pemotongan kea rah solusi.

2.3 Faktor Kepastian (Certainty Factor)

Sistem pakar harus mampu bekerja dalam ketidakpastian (Giarattano dan Riley, 1994). Sejumlah teori telah ditemukan untuk menyelesaikan ketidakpastian, termasuk diantaranya probabilitas klasik (classical probability), probabilitas Bayes (Bayesian probability), teori Hartley berdasarkan himpunan klasik (Hartley theory based on classical sets), teori Shannon berdasarkan pada probabilitas (Shanon theory based on probability), teori Dempster-Shafer (DempsterShafer theory), teori fuzzy Zadeh (Zadeh’s fuzzy theory) dan faktor kepastian (certainty factor).


(28)

Faktor kepastian (certainty factor) diperkenalkan oleh Shortliffe Buchanan dalam pembuatan MYCIN. Certainty factor (CF) merupakan nilai parameter klinis yang diberikan MYCIN untuk menunjukkan besarnya kepercayaan. Certainty factor didefinisikan sebagai berikut:

CF[h,e] = MB[h,e] – MD[h,e]

CF[h,e] : faktor kepastian

MB[h,e] : ukuran kepercayaan terhadap hipotesis h, jika diberikan evidence e (antara 0 dan 1 atau 0 sampai 100).

MD[h,e] : ukuran ketidakpercayaan terhadap evidenceh, jika diberikan evidence e (antara 0 dan 1 atau 0 sampai 100).

Beberapa evidence dikombinasikan untuk menentukan CF dari suatu hipotesa. Jika e1dan e2adalah observasi, maka:

MB[h,e1 ^e2] =

{

MB[h,e1] + MB[h,e2].(1-MB[h,e1]) lainnya MD[h,e1 ^ e2] = 1

MD[h,e1^e2] =

{

MD[h,e1] + MD[h,e2].(1-MD[h,e1]) lainnya MB[h,e1 ^ e2] = 1

Berikut ini adalah sebuah aturan dengan CF yang diberikan oleh seorang pakar:


(29)

27

Anak Fanny menderita gejala dahak kental dan kuning, mengi, sesak napas, nyeri dada, batuk, asma pada pagi hari, dan sakit retrostenal. Apabila diketahui: a. MB[Bronkiolitis Akut, dahak kental dan kuning]=7 dan MD[Bronkiolitis

Akut, dahak kental dan kuning]=5, maka :

a) CF[Bronkiolitis Akut, dahak kental dan kuning] = MB- MD

= 7-5 =2

b. MB[Bronkiolitis Akut, mengi]=17 dan MD[Bronkiolitis Akut, mengi]= 10, maka :

a) CF[Bronkiolitis Akut, dahak kental dan kuning]

= MB[Bronkiolitis Akut, mengi] - MD[Bronkiolitis Akut, mengi] = 17-10 =7

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi] = MB[Bronkiolitis Akut, dahak kental dan kuning] + MB

[Bronkiolitis Akut, mengi]*(1- MB[Bronkiolitis Akut,dahak kental dan kuning] )

= 7+17*(1-7) = 17

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^mengi] = MD[Bronkiolitis Akut, dahak kental dan kuning] + MD

[Bronkiolitis Akut, mengi] * (1- MD[Bronkiolitis Akut,dahak kental dan kuning] )


(30)

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ] = 17-10 = 7

c. MB[Bronkiolitis Akut, sesak napas]=13 dan MD[Bronkiolitis Akut, sesak napas]= 5, maka :

a) CF[Bronkiolitis Akut, sesak napas] = 13-5

= 8

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi^sesak napas] = 17+13*(1-17)

=13

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^mengi^sesak napas] = 10+5*(1-10)

=5

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas] =13-5

=8

d. MB[Bronkiolitis Akut, nyeri dada]=50 dan MD[Bronkiolitis Akut, nyeri dada]= 15, maka :

a) CF[Bronkiolitis Akut, sesak napas] = 50-15

= 35

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada]


(31)

29

= 13+50*(1-13) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada]

= 5+15*(1-5) =15

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas] =50-15

=35

e. MB[Bronkiolitis Akut, batuk]=17 dan MD[Bronkiolitis Akut, batuk]= 5, maka :

a) CF[Bronkiolitis Akut, batuk] = 17-5

= 12

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk]

= 50+17*(1-50) =17

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada^ batuk]

= 15+5*(1-15) =5


(32)

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk]

=17-5 = 12

f. MB[Bronkiolitis Akut, asma pada jam 1-4 pagi]=50dan MD[Bronkiolitis Akut, asma pada jam 1-4 pagi]= 20, maka :

a) CF[Bronkiolitis Akut, asma pada jam 1-4 pagi] = 50-20

= 30

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi]

= 17+50*(1-17) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi]

= 5+20*(1-5) =20

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-20 =30


(33)

31

g. MB[Bronkiolitis Akut, asma pada jam 1-4 pagi]=50dan MD[Bronkiolitis Akut, asma pada jam 1-4 pagi]= 20, maka :

a) CF[Bronkiolitis Akut, asma pada jam 1-4 pagi] = 50-20

= 30

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi]

= 17+50*(1-17) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi]

= 5+20*(1-5) =20

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-20 =30

h. MB[Bronkiolitis Akut, sakit retrostenal]=50 dan MD[Bronkiolitis Akut, sakit retrostenal]= 33, maka :

a) CF[Bronkiolitis Akut, sakit retrostenal] = 50-35


(34)

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi ^ sakit retrostenal] = 50+50*(1-50)

=50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi^ sakit retrostenal] = 20+33*(1-20)

=33

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-33 =17

Jadi anak ani menderita penyakit Bronkiolitis Akut dengan nilai kepastian 17%

2.4 Bahasa Pemrograman PHP

PHP adalah kependekan dariPHP Hypertext Preprocessor, bahasa interpreteryang mempunyai kemiripan dengan bahasa C dan Perl. PHP dapat digunakan bersama dengan HTML sehingga memudahkan dalam membangun Aplikasi Web dengan cepat. PHP dapat digunakan untuk meng-update database, menciptakan database dan mengerjakan perhitungan matematika.

PHP banyak mendukung database, seperti MySQL, PostgresSQL, Interbase, ODBC, mSQL, Oracle, Sybase

.


(35)

33

MySQL adalah sebuah database server buatan T.c.X Data Konsultan AB, Swedia. Database MySQL banyak digunakan di Internet karena kehandalannya. MySQL tidak membutuhkan ruang hardisk yang besar untuk aplikasinya, dan mudah digunakan pada database server.

Apache merupakan turunan dari web server yang dikeluarkan oleh NSCA, yaitu NSCA HTTPd sekitar tahun 1995-an. Pada dasarnya, Apache adalah “A PatChy” (patch) dan pengganti dari NSCA HTTPd. Apache web server merupakan tulang punggung dari World Wide Web (WWW). Web server menunggu permintaan dari client yang menggunakan browser, seperti Internet Explorer. Web server dalam berkomunikasi dengan kliennya menggunakan protokol HTTP. Adapun pertimbangan dalam memilih Apache adalah:

a. Apache termasuk dalam kategori software gratis b. Instalasi sangat mudah

c. Mampu beroperasi pada banyak platformsistem operasi d. Mudah dalam pengkonfigurasian

e. Mudah dalam penambahan peripherallainnya ke dalam platformweb server


(36)

2.6 Penyakit Paru

Paru-paru adalah salah satu organ pada sistem pernapasan yang berfungsi sebagai tempat bertukarnya oksigen dari udara yang menggantikan karbondioksida di dalam darah.

Di Indonesia penyakit paru-paru seperti TBC masih merupakan masalah utama dihampir setiap propinsi di Indonesia. Karena itu tidak jarang banyak dokter yang mengambil kesimpulan terlalu cepat dan memberikan memberikan terapi spesifik selama 6 bulan.

Untuk memberikan terapi spesifik ada beberapa langkah yang harus ditempuh diantaranya adalah pemeriksaan fisik (keadaan klinis penderita), pemeriksaan darah, foto rontgen, pemeriksaan sputum BTA atau pemeriksaan dahak (3 kali pengambilan) dan mantoux test.


(1)

= 13+50*(1-13) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada]

= 5+15*(1-5) =15

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas] =50-15

=35

e. MB[Bronkiolitis Akut, batuk]=17 dan MD[Bronkiolitis Akut, batuk]= 5, maka :

a) CF[Bronkiolitis Akut, batuk] = 17-5

= 12

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk]

= 50+17*(1-50) =17

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada^ batuk]

= 15+5*(1-15) =5


(2)

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk]

=17-5 = 12

f. MB[Bronkiolitis Akut, asma pada jam 1-4 pagi]=50dan MD[Bronkiolitis Akut, asma pada jam 1-4 pagi]= 20, maka :

a) CF[Bronkiolitis Akut, asma pada jam 1-4 pagi] = 50-20

= 30

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi]

= 17+50*(1-17) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi]

= 5+20*(1-5) =20

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-20 =30


(3)

g. MB[Bronkiolitis Akut, asma pada jam 1-4 pagi]=50dan MD[Bronkiolitis Akut, asma pada jam 1-4 pagi]= 20, maka :

a) CF[Bronkiolitis Akut, asma pada jam 1-4 pagi] = 50-20

= 30

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi]

= 17+50*(1-17) =50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi]

= 5+20*(1-5) =20

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-20 =30

h. MB[Bronkiolitis Akut, sakit retrostenal]=50 dan MD[Bronkiolitis Akut, sakit retrostenal]= 33, maka :

a) CF[Bronkiolitis Akut, sakit retrostenal] = 50-35


(4)

b) MB[Bronkiolitis Akut,dahak kental dan kuning ^mengi ^sesak napas ^nyeri dada^ batuk ^ asma pada jam 1-4 pagi ^ sakit retrostenal] = 50+50*(1-50)

=50

c) MD[Bronkiolitis Akut,dahak kental dan kuning ^ mengi ^sesak napas ^nyeri dada ^ batuk ^ asma pada jam 1-4 pagi^ sakit retrostenal] = 20+33*(1-20)

=33

d) CF[Bronkiolitis Akut, dahak kental dan kuning ^mengi ^sesak napas^ batuk ^ asma pada jam 1-4 pagi]

=50-33 =17

Jadi anak ani menderita penyakit Bronkiolitis Akut dengan nilai kepastian 17%

2.4 Bahasa Pemrograman PHP

PHP adalah kependekan dariPHP Hypertext Preprocessor, bahasa interpreteryang mempunyai kemiripan dengan bahasa C dan Perl. PHP dapat digunakan bersama dengan HTML sehingga memudahkan dalam membangun Aplikasi Web dengan cepat. PHP dapat digunakan untuk meng-update database, menciptakan database dan mengerjakan perhitungan matematika.

PHP banyak mendukung database, seperti MySQL, PostgresSQL, Interbase, ODBC, mSQL, Oracle, Sybase

.


(5)

MySQL adalah sebuah database server buatan T.c.X Data Konsultan AB, Swedia. Database MySQL banyak digunakan di Internet karena kehandalannya. MySQL tidak membutuhkan ruang hardisk yang besar untuk aplikasinya, dan mudah digunakan pada database server.

Apache merupakan turunan dari web server yang dikeluarkan oleh NSCA, yaitu NSCA HTTPd sekitar tahun 1995-an. Pada dasarnya, Apache adalah “A PatChy” (patch) dan pengganti dari NSCA HTTPd. Apache web server merupakan tulang punggung dari World Wide Web (WWW). Web server menunggu permintaan dari client yang menggunakan browser, seperti Internet Explorer. Web server dalam berkomunikasi dengan kliennya menggunakan protokol HTTP. Adapun pertimbangan dalam memilih Apache adalah:

a. Apache termasuk dalam kategori software gratis b. Instalasi sangat mudah

c. Mampu beroperasi pada banyak platformsistem operasi d. Mudah dalam pengkonfigurasian

e. Mudah dalam penambahan peripherallainnya ke dalam platformweb server


(6)

2.6 Penyakit Paru

Paru-paru adalah salah satu organ pada sistem pernapasan yang berfungsi sebagai tempat bertukarnya oksigen dari udara yang menggantikan karbondioksida di dalam darah.

Di Indonesia penyakit paru-paru seperti TBC masih merupakan masalah utama dihampir setiap propinsi di Indonesia. Karena itu tidak jarang banyak dokter yang mengambil kesimpulan terlalu cepat dan memberikan memberikan terapi spesifik selama 6 bulan.

Untuk memberikan terapi spesifik ada beberapa langkah yang harus ditempuh diantaranya adalah pemeriksaan fisik (keadaan klinis penderita), pemeriksaan darah, foto rontgen, pemeriksaan sputum BTA atau pemeriksaan dahak (3 kali pengambilan) dan mantoux test.