Penerapan fuzzy logic untuk diagnosis dan tata laksana penyakit demam berdarah dengue dan demam tifoid

(1)

1 1.1 Latar Belakang

Penyakit demam berdarah dengue (DBD) adalah penyakit yang disebabkan oleh virus dengue I, II, III, dan IV yang ditularkan nyamuk Aedes aegypti dan Aedes albopictus (Soegijanto, 2004). Penyakit DBD terutama menyerang anak-anak namun dalam beberapa tahun terakhir cenderung semakin banyak dilaporkan kasus DBD pada orang dewasa. Penyakit ini ditandai dengan panas tinggi mendadak disertai kebocoran plasma dan pendarahan, dapat mengakibatkan kematian serta menimbulkan wabah (Depkes RI Dirjen P2MLP, 2004).

Kejadian luar biasa pertama penyakit DBD di Asia ditemukan di Manila pada tahun 1954, kemudian terjadi di Thailand (1958), Singapura (1960), Kamboja (1961), Malaysia (1962), dan Srilanka (1966). Pada tahun 1968 untuk pertama kalinya terjadi kejadian luar biasa DBD di Indonesia (Jakarta dan Surabaya) dan pada tahun berikutnya kasus DBD menyebar ke lain kota di wilayah Indonesia dan dilaporkan meningkat setiap tahunnya (Segijanto, 2004).

Salah satu manifestasi klinik utama pada DBD adalah demam (Soegijanto, 2004). Demam merupakan masalah kesehatan yang kerap terjadi pada anak. Demam sebenarnya bukan merupakan penyakit, melainkan gejala. Demam memegang peranan kunci dalam membantu perlawanan tubuh mengatasi infeksi virus atau bakteri. Pola demam dengan gejala klinis yang menyertainya sangat


(2)

penting untuk diketahui (http://www.pdpersi.co.id). Pada awal perjalanan penyakit salah satu diagnosis banding dari DBD adalah demam tifoid di mana kedua penyakit tersebut termasuk kategori penyakit tropis dan merupakan endemik di Indonesia (Pusat Info Penyakit Dalam FKUI, 2000).

Demam tifoid di Indonesia masih merupakan penyakit endemik yang seringkali menimbulkan masalah dan apabila disertai komplikasi dapat berakhir dengan kematian. Penelitian pada tahun 1989 di Rumah Sakit Karantina dilaporkan bahwa lama perawatan demam tifoid penyakit dewasa berkisar antara 8,6 3,7 hari dengan angka kematian sebesar 7,35 % (Pusat Info Penyakit Dalam FKUI, 2000).

Sama halnya dengan demam tifoid, demam berdarah dengue (DBD) merupakan masalah kesehatan di Indonesia. Angka kejadian tetap meningkat dan saat ini angka kematian khususnya di RSCM cenderung meningkat (http://www.pdpersi.co.id). Saat ini, DBD masih merupakan salah satu masalah kesehatan yang cenderung meningkat jumlah pasien serta semakin luas penyebarannya, hal ini karena masih tersebarnya nyamuk penular penyakit DBD yaitu Aedes aegypti di seluruh pelosok tanah air, kecuali pada daerah dengan ketinggian lebih dari 1000 m dpl. Untuk memberantasnya diperlukan pembinaan peran serta masyarakat yang terus menerus. Juga upaya pemerintah memotivasi masyarakat untuk melakukan pemberantasan nyamuk tersebut terus-menerus telah dan akan dilakukan melalui kerjasama lintas program dan lintas sektoral termasuk tokoh masyarakat dan swasta. Oleh karena itu, upaya untuk membatasi angka


(3)

kematian penyakit ini sangat penting (Dirjen P2MPL Depkes RI, 2004). Salah satu caranya adalah dengan diagnosis dini yang tepat.

Keberhasilan upaya penanganan kasus DBD terutama ditentukan oleh kecermatan dalam mendiagnosa secara dini serta penatalaksanaan dan perawatan termasuk observasi tekanan darah, denyut nadi serta pemberian cairan pencegahan/mengatasi syok (Dirjen P2MPL Depkes RI, 2004). Sementara itu, diagnosis secara dini demam tifoid sangat bermanfaat agar dapat segera diberikan pengobatan yang adekuat sehingga dapat dihindari timbulnya komplikasi (Pusat Info Penyakit Dalam FKUI, 2000).

Keluhan dan gejala demam tifoid antara lain demam, nyeri kepala, pusing, nyeri otot, anoreksia, mual, muntah, obstipasi atau diare (Pusat Info Penyakit Dalam FKUI, 2000). Keluhan dan gejala DBD antara lain demam, terdapat manifestasi pendarahan, sakit kepala, nyeri otot, tulang dan sendi, mual dan muntah (Dirjen P2MPL Depkes RI, 2004).

Dari uraian di atas, terlihat banyak kemiripan gejala klinis DBD dan demam tifoid, walaupun dengan karakteristik khusus yang berbeda, sehingga dapat terjadi kesalahan diagnosis dini bagi penderita maupun keluarga penderita. Hal ini dapat menyebabkan kesalahan penanganan dini penderita. Lebih jauh dari itu, apabila terjadi komplikasi sehingga menyebabkan kematian.

Dalam terminologi komputer permasalahan di atas dapat diistilahkan sebagai pemetaan kompleks ruang input ke ruang output. Dalam hal ini ruang input adalah gejala klinis DBD dan demam tifoid dan ruang output yaitu jenis


(4)

penyakit yang bersesuaian dengan gejala klinis yaitu DBD dan demam tifoid. Disebut kompleks karena ada anggota ruang input DBD yang juga termasuk kedalam ruang input demam tifoid begitu juga sebaliknya.

Logika fuzzy mampu menjadi problem solving di segala bidang mulai dari bidang teknologi, otomotif, ekonomi, psikologi, medis, dan ilmu-ilmu sosial karena kemampuannya yang dapat memetakan suatu ruang input kedalam suatu ruang output sehingga dapat menyelesaikan permasalahan yang memiliki keterkaitan hubungan input dan output yang tidak sederhana.

Telah banyak penelitian mengenai penerapan logika fuzzy. Di lingkungan UIN Syarif Hidayatullah sendiri ada beberapa penelitian mengenai logika fuzzy diantaranya untuk penyeleksi internal promosi jabatan karyawan (M. Ridha Pratama, 2004), sistem penilaian kelayakan kredit usaha kecil (Siti Nurjannah, 2007), sistem pengontrol persediaan barang (Nurchudayati, 2007), penentuan bidang peminatan mahasiswa program studi TI (Tri Hadiyanto Wibowo, 2009), optimasi daya listrik suatu ruangan (Puspita Fauziah, 2009), dan penilaian kinerja karyawan (Fedri Arianto, 2010), dan sistem kenaikan jabatan (Adhi Gufron, 2010). Hal ini menunjukkan keandalan logika fuzzy dalam memecahkan masalah pemetaan ruang input terhadap ruang output.

Rumah Bersalin Gratis (RBG) Rumah Zakat Jakarta Timur sebagai sarana pelayanan kesehatan gratis bagi warga yang membutuhkan, turut serta membantu menekan angka kematian akibat DBD dan demam tifoid khusunya di kalangan masyarakat yang kemampuan ekonominya lemah. Di antara layanan yang


(5)

diberikan RBG selain pelayanan kesehatan ibu dan anak juga mencakup pelayanan kesehatan umum termasuk penyakit DBD dan demam tifoid. Semua layanan di RBG diberikan secara gratis. Selain pelayanan kesehatan, RBG juga memberikan pengarahan untuk menjaga kebersihan dan kesehatan salah satunya dengan mengetahui dan membedakan gejala penyakit. Keterbatasan sumber daya manusia di RBG menjadi permasalahan tersendiri sehingga ide untuk mengembangkan aplikasi yang dapat membantu pakar menjadi hal yang dibutuhkan. Dalam hal ini aplikasi terfokus pada penyakit DBD dan demam tifoid.

Berdasarkan uraian di atas, penulis mengambil judul “Penerapan Logika Fuzzy untuk Diagnosis dan Tata Laksana Penyakit Demam Berdarah Dengue dan Demam Tifoid “.

Pemodelan sistem diagnosis DBD dan demam tifoid dengan menggunakan pendekatan sistem pakar dapat menjadi pilihan karena pendekatan sistem pakar menggunakan bahasa manusia sehingga akan lebih mudah dimengerti oleh pengguna baik yang mengerti ilmu medis dan komputer atau orang awam sekalipun. Hal ini penting, guna pengembangan selanjutnya dari sistem ini yang sasarannya adalah menjadi alat bantu bagi manusia (user) dalam mendiagnosis penyakit khusunya DBD dan demam tifoid seperti misalnya sarana edukasi di RBG Jakarta Timur. Dengan adanya aplikasi ini pasien yang berkunjung dapat menggunakannya untuk memperoleh wawasan mengenai gejala dan tata laksana penyakit DBD dan demam tifoid. Selain itu, pengembangan aplikasi ini dapat diarahkan untuk layanan konsumen berbasis web yang selama ini lebih banyak


(6)

berbasis telepon baik yang berbayar ataupun tidak. Pengembangan aplikasi ini juga dapat diarahkan sebagai alat bantu dalam proses klaim asuransi kesehatan.

Dalam berbagai pengembangan model logika fuzzy, biasanya peneliti menggunakan tools/alat bantu yang tidak mengakomodasi komputasi yang kompleks, seperti Visual Basic, Delphi ataupun PHP sehingga fungsi-fungsi perhitungan ditransformasikan kedalam bahasa pemrograman secara manual (dibuat sendiri) sesuai dengan bahasa pemrograman yang digunakan. Hal ini juga berpengaruh pada pengembangan selanjutnya dari penelitian tersebut karena harus merubah kembali rumusan dari fungsi perhitungan yang lama. Oleh karena itu dalam penelitian ini, penulis menggunakan Matlab sebagai tool atau alat bantunya. Banyak fitur yang disediakan Matlab dalam mendukung fungsinya, lihat Bab II subbab 2.12. Dengan menggunakan Matlab, proses fuzzyfikasi, inferensi dan defuzzyfikasi dijalankan secara otomatis oleh Matlab itu sendiri serta untuk pengembangan selanjutnya perubahan dapat dilakukan pada fungsi keanggotaan dan rulebase atau basis aturannya saja.

1.2 Rumusan Masalah

Seperti yang telah dijabarkan pada subbab 1.1 di atas, terdapat masalah yang timbul yaitu adanya hubungan yang kompleks antara gejala klinis DBD dan demam tifoid sehingga dapat menyebabkan kesalahan diagnosis dini bagi penderita. Adapun rumusan masalah yang akan menjadi pembahasan dalam penelitian ini adalah bagaimana mengembangkan sebuah model logika fuzzy untuk diagnosis dan tata laksana penyakit demam berdarah dengue dan demam tifoid berdasarkan gejala-gejala klinis yang ada.


(7)

1.3 Batasan Masalah

Dikarenakan luasnya ruang lingkup permasalahan dan agar hasil penelitian dapat maksimal maka penulis membatasi permasalahan sebagai berikut :

1. Diagnosis adalah diagnosis klinis bukan diagnosis pasti, berdasarkan gejala klinis yang tampak, bukan gejala klinis asimtomatik atau tidak jelas.

2. Jenis penyakit yang menjadi objek diagnosis adalah demam berdarah dengue (DBD) dan demam tifoid.

3. Parameter yang digunakan dalam proses diagnosis adalah demam yang sifatnya mendadak atau bertahap, nyeri otot dan sendi, manifestasi pendarahan (pendarahan pada hidung dan gusi serta uji tourniquet positif), adanya gangguan pencernaan dan kondisi lidah apakah berselaput atau tidak. 4. Output diagnosis dibagi menjadi 4 kategori, demam tifoid, observasi, cek

labratorium dan DBD.

5. Tools yang digunakan adalah Matlab 7.8

6. Pengembangan sistem tidak sampai pada tahap deployment akan tetapi hanya sampai pada tahap construction dikarenakan aplikasi ini tidak ditujukan untuk digunakan langsung oleh pelanggan atau user.

7. Pengujian menggunakan pendekatan black box dengan metode unit test dan integration test.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini terbagi dalam 3 kategori, jangka pendek, jangka menengah dan jangka panjang. Tujuan jangka pendek adalah mengembangkan


(8)

model logika fuzzy dan model sistem pakar yang dapat digunakan untuk membantu diagnosis penyakit DBD dan demam tifoid. Tujuan jangka menengah adalah menjadi sarana seorang pakar dalam hal ini dokter untuk mendokumentasikan pengetahuan yang dimilikinya. Tujuan jangka panjang dari penelitian ini adalah dapat dikembangkan menjadi aplikasi diagnosis penyakit yang lengkap sehingga dapat dipergunakan secara nyata seperti untuk membantu proses validasi catatan diagnosis klaim asuransi kesehatan dan untuk pelayanan konsumen sebuah produk, misalnya produk kesehatan seperti obat-obatan.

1.5 Manfaat Penelitian

Dengan adanya penelitian ini diharapkan dapat memberikan manfaat sebagai berikut :

a. Bagi penulis

1. Memperdalam ilmu dan wawasan tentang Logika Fuzzy, Sistem Pakar dan Rekayasa Perangkat Lunak.

2. Memahami konsep dan penerapan sistem pakar dan penggunaan Matlab. 3. Memperoleh wawasan mengenai penyakit DBD dan demam tifoid. b. Bagi universitas

1. Mengetahui kemampuan mahasiswa dalam menguasai materi teori yang telah diperoleh selama kuliah

2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi

3. Memberikan gambaran tentang kesiapan mahasiswa dalam menghadapi dunia kerja dari hasil yang diperoleh selama belajar atau kuliah.


(9)

4. Menjadi bahan referensi bagi penellitian selanjutnya terutama dalam bidang logika fuzzy dan sistem pakar diagnosis penyakit.

c. Bagi pengguna

1. Memudahkan dalam mendiagnosis penyakit DBD dan demam tifoid.

2. Memperoleh contoh dan gambaran implementasi logika fuzzy dan sistem pakar dalam bidang diagnosis penyakit.

1.6 Metodologi Penelitian

1.6.1 Metode Pengumpulan data

Untuk mendukung penelitian maka diperlukan data-data penunjang. Oleh karena itu penulis melakukan metode pengumpulan data dengan cara melakukan wawancara dengan pakar dan studi pustaka yakni dengan membaca dan mempelajari literatur yang berhubungan dengan penelitian yang penulis lakukan baik itu dari media cetak seperti buku, jurnal, skripsi atau media elektronik seperti e-book yang banyak terdapat di internet.

1.6.2 Metode Pengembangan sistem

Pengembangan sistem dalam penelitian yang penulis lakukan menggunakan siklus pengembangan model RAD (Rapid Application Development) , yaitu :

a. Communication b. Planning c. Modelling d. Construction


(10)

e. Deployment 1.7 Sistematika Penulisan

Adapun sistematika penulisan laporan penelitian ini adalah sebagai berikut :

BAB I PENDAHULUAN

Berisi rumusan singkat latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Pada bab ini diuraikan teori-teori yang menunjang dan digunakan dalam penelitian meliputi pembahasan singkat tentang logika fuzzy, penyakit DBD dan demam tifoid, RAD serta Matlab. Diuraikan juga mengenai studi literatur sejenis dengan penelitian ini.

BAB III METODOLOGI PENELITIAN

Bab ini menguraikan secara rinci metode pengumpulan data dan metode pengembangan sistem yang digunakan dalam penelitian.

BAB IV HASIL DAN PEMBAHASAN

Bab ini menjelaskan analisa tentang kebutuhan sistem, konsep perancangan aturan, proses pengembangan sistem dan tentang implementasi atau tata cara pemakaian program yang penulis buat dan uji coba terhadap program yang telah dibuat.


(11)

BAB V KESIMPULAN DAN SARAN

Bab ini menguraikan kesimpulan yang berkenaan dengan hasil pemecahan masalah yang diperoleh dari penelitian serta saran untuk pengembangan lebih lanjut.


(12)

12

BAB II

LANDASAN TEORI

Bab ini menguraikan mengenai teori-teori yang digunakan dalam menunjang penelitian.

2.1 Penerapan

Menurut KBBI penerapan memiliki arti : (1) proses, cara, perbuatan menerapkan, (2) pemasangan, (3) pemasangan, perihal mempraktikan (http://pusatbahasa.diknas.go.id). Jadi penerapan dapat didefinisikan sebagai cara untuk melakukan atau mempraktikkan sesuatu berdasarkan aturan tertentu.

2.2 Logika Fuzzy

Menurut Kusumadewi (2003,153), logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input ke dalam suatu ruang output. Logika fuzzy atau sistem fuzzy memiliki kemampuan untuk mengembangkan sistem intelijen dalam lingkungan yang tak pasti. Dalam logika fuzzy terdapat beberapa proses yaitu penentuan himpunan fuzzy, penerapan aturan IF-THEN dan proses inferensi fuzzy.

Dari sekian banyak alternatif, sistem fuzzy seringkali menjadi pilihan terbaik, berikut beberapa alasannya (Naba, 2009:3-4) :

1. Konsep fuzzy logic adalah sangat sederhana sehingga mudah dipahami. 2. Fuzzy logic adalah fleksibel, dalam arti dapat dibangun dan dikembangkan

dengan mudah tanpa harus memulainya dari ‘nol’.


(13)

4. Pemodelan/pemetaan untuk mencari hubungan data input-output dari sembarang sistem black-box bisa dilakukan dengan memakai sistem fuzzy. 5. Pengetahuan atau pengalaman dari pakar dapat dengan mudah dipakai untuk

membangun fuzzy logic. Hal ini merupakan kelebihan utama fuzzy logic dibanding jaringan saraf tiruan.

6. Fuzzy logic dapat diterapkan dalam desain sistem kontrol tanpa harus menghilangkan teknik desain sistem kontrol konvensional yang sudah terlebih dahulu ada.

7. Fuzzy logic berdasar pada bahasa manusia.

Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy yaitu variabel fuzzy, himpunan fuzzy, semesta pembicaraan, dan domain. (Kusumadewi,2003:158). Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Contoh: umur, permintaan, temperatur dan sebagainya. Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy. Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Domain adalah keseluruhan nilai yang diijinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy. Berikut contoh hubungan antara variabel fuzzy, himpunan fuzzy, semesta pembicaraan dan domain dalam sistem fuzzy :


(14)

Tabel 2.1 Variabel fuzzy, himpunan fuzzy, semesta pembicaraan dan domain Variabel fuzzy Himpunan Fuzzy Semesta

Pembicaraan Domain

UMUR

MUDA

[0, +~]

[0,45]

PAROBAYA [35,55]

TUA [45,+~]

2.2.1 Fungsi Keanggotaan

Fungsi keanggotaan adalah kurva yang menunjukkan pemetaan titik input data ke dalam nilai keanggotaan yang mempunyai interval 0 sampai dengan 1. Pada himpunan biasa (crisp) nilai keanggotaan memiliki 2 kemungkinan yaitu satu (1) berarti menjadi anggota himpunan dan dua (2) berarti tidak menjadi anggota. Sedangkan pada himpunan fuzzy nilai keanggotaan tidak terbatas hanya pada 2 kemungkinan saja.

Pada contoh tabel di atas, seseorang dapat masuk kedalam 2 himpunan yang berbeda. Seseorang yang berumur 20 tahun masuk himpunan berumur muda dengan derajat keanggotaan 0.1 dan sekaligus masuk himpunan berumur parobaya dengan derajat keanggotaan 0.85 (lihat gambar).

Gambar 2.1 Fungsi keanggotaan UMUR dengan representasi Gaussian (gaussmf)


(15)

Ada banyak fungsi keanggotaan yang digunakan untuk merepresentasikan fungsi keanggotaan himpunan fuzzy diantaranya sigmoid biner (dsigmf), kombinasi Gaussian (gasuss2mf), Gaussian (gaussmf), generalized-bell (gbellmf), bentuk Π (pimf), sigmoid (sigmf), trapezoid (trapmf), triangular (trimf).

2.2.2 Operator Himpunan Fuzzy

Seperti halnya himpunan konvensional, ada beberapa operasi yang didefinisikan secara khusus untuk mengkombinasikan dan memodifikasi himpunan fuzzy. Nilai keanggotaan sebagai hasil dari operasi 2 himpunan sering dikenal dengan nama fire strength atau α-predikat. Ada 3 operator dasar dalam himpunan fuzzy, yaitu operator AND, OR dan NOT.

Operator AND merupakan operasi interseksi pada himpunan.

α

-predikat yang dihasilkan diperoleh dengan mengambil nilai keanggotaan terkecil antar elemen pada himpunan bersangkutan. Misal nilai keanggotaan umur 27 pada himpunan muda adalah

µ

MUDA[27]= 0,6 dan nilai keanggotaan 2 juta pada himpunan penghasilan TINGGI adalah

µ

GAJITINGGI[2juta]= 0,8 maka

α

-predikat untuk usia MUDA dan berpenghasilan TINGGI adalah nilai keanggotaan minimun :

µ

MUDA

GAJITINGGI = min(

µ

MUDA[27],

µ

GAJITINGGI[2juta]) = min (0,6 ; 0,8)


(16)

Operator OR merupakan operasi union pada himpunan.

α

-predikat yang dihasilkan diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan bersangkutan. Misal nilai keanggotaan umur 27 pada himpunan muda adalah

µ

MUDA[27]= 0,6 dan nilai keanggotaan 2 juta pada himpunan penghasilan TINGGI adalah

µ

GAJITINGGI[2juta]= 0,8 maka

α

-predikat untuk usia MUDA atau berpenghasilan TINGGI adalah nilai keanggotaan maksimum :

µ

MUDA

GAJITINGGI = max(

µ

MUDA[27],

µ

GAJITINGGI[2juta]) = max (0,6 ; 0,8)

= 0,8

Operator NOT merupakan operasi komplemen pada himpunan.

α

-predikat yang dihasilkan diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan dari 1. Misal nilai keanggotaan umur 27 pada himpunan muda adalah

µ

MUDA[27]= 0,6 maka

α

-predikat untuk usia TIDAK MUDA adalah :

µ

MUDA’[27] = 1 -

µ

MUDA[27 = 1 - 0,6

= 0,4 2.2.3 Sistem Inferensi Fuzzy

Inferensi yaitu melakukan penalaran menggunakan fuzzy input dan fuzzy rule yang telah ditentukan sehingga menghasilkan fuzzy output. Terdapat banyak metode inferensi yang sering digunakan untuk melakukan


(17)

inferensi fuzzy diantaranya metode Tsukamoto, metode Mamdani dan metode Sugeno.

Pada metode Tsukamoto, setiap konsekuen direpresentasikan dengan himpunan fuzzy dengan fungsi keanggotaan monoton. Output hasil inferensi masing-masing aturan adalah z, berupa himpunan biasa (crisp) yang ditetapkan berdasarkan

α

-predikatnya. Hasil akhir diperoleh dengan menggunakan rata-rata terbobotnya.

Pada metode Mamdani, aplikasi fungsi implikasi menggunakan MIN, sedang komposisi aturan menggunakan metode MAX. Metode Mamdani dikenal juga dengan metode MAX-MIN. Inferensi output yang dihasilkan berupa bilangan fuzzy maka harus ditentukan suatu nilai crisp tertentu sebagai output. Proses ini dikenal dengan defuzzyfikasi. Ada beberapa metode yang dipakai dalam defuzzyfikasi antara lain metode centroid. Pada metode ini penetapan nilai crisp dengan cara mengambil titik pusat daerah fuzzy.

Penalaran dengan metode Sugeno, mirip dengan metode Mamdani hanya saja output sistem tidak berupa himpunan fuzzy melainkan berupa konstanta atau persamaan linear.

.Ada dua model metode Sugeno yaitu model fuzzy Sugeno orde nol dan model fuzzy sugeno orde satu. Bentuk umum model fuzzy Sugeno orde nol adalah :


(18)

Bentuk umum model fuzzy Sugeno orde satu adalah :

IF (x1 is A1) o (x2 is A2) o ….. o (xn is An) THEN z = p1.x1 + … pn.xn + q Defuzzyfikasi pada metode Sugeno dilakukan dengan mencari nilai rata-ratanya.

Gambar 2.2 Inferensi fuzzy sugeno orde 1 2.2.4 Defuzzyfikasi

Defuzzyfikasi atau penegasan berfungsi untuk mengubah fuzzy output menjadi crisp value berdasarkan fungsi keanggotaan yang telah ditentukan. Terdapat berbagai metode defuzzyfikasi diantaranya : centroid method, height method, first (or last) of maxima dan weighted average.

Metode centroid disebut juga sebagai Center of Area (CoA) atau Center of Gravity (CoG). Metode ini menghitung nilai crisp menggunakan rumus :

x y

A1

A2

B1

B2

w1

w2

f1=p1x+q1y+r1

f2=p2x+q2y+r2

W1 f1 + w2 f2 W1 + w2

f =

= W1 f1 + w2 f2

µ

µ µ


(19)

Dimana y* adalah suatu nilai crisp, y adalah crisp input dan adalah derajat keanggotaan y.

Height method dikenal juga sebagai prinsip keanggotaan maksimum karena metode ini secara sederhana memilih nilai crisp yang memiliki derajat keanggotaan maksimum. Oleh karena itu,metode ini hanya bisa dipakai untuk fungsi keanggotaan yang memiliki derajat keanggotaan 1 pada suatu nilai crisp tunggal dan 0 pada semua nilai crisp yang lain. Fungsi seperti ini disebut sebagai singleton.

Metode fisrt (or last) of maxima merupakan generalisasi dari height method untuk kasus di mana fungsi keanggotaan output memiliki lebih dari 1 nilai maksimum sehingga nilai crisp yang digunakan adalah salah satu dari nilai yang dihasilkan dari maksimum pertama atau maksimum terakhir (tergantung pada aplikasi yang akan dibangun).

Metode weighted average mengambil rata-rata dengan menggunakan pembobotan berupa derajat keanggotaan. Metode ini menghitung nilai crisp dengan rumus :

Dimana yaitu nilai minimum dari derajat keanggotaan pada aturan ke-n, yaitu hasil penghitungan pada aturan ke-n, M adalah


(20)

banyaknya aturan fuzzy sedangkan Z adalah nilai crisp yang akan kita hitung.

2.3 Sistem Pakar

Sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para pakar atau ahli (Kusumadewi,2003:109)

Menurut Efraim Turban,konsep dasar sistem pakar mengandung keahlian, ahli, pengalihan keahlian, inferensi, aturan dan kemampuan menjelaskan. Keahlian adalah suatu kelebihan penguasaan pengetahuan di bidang tertentu yang diperoleh dari pelatian, membaca atau pengalaman. Seorang ahli adalah seseorang yang mampu menjelaskan suatu tanggapan, mempelajari hal-hal baru seputar topik permasalahan, menyusun kembali pengetahuan jika dipandang perlu, memecah aturan-aturan jika dibutuhkan dan menentukan relevan tidaknya keahlian mereka. Pengalihan keahlian dari para ahli ke computer untuk kemudian dialihkan lagi ke orang lain yang bukan ahli, merupakan tujuan utama sistem pakar. Salah satu fitur yang harus dimiliki oleh sistem pakar adalah kemampuan untuk menalar.

Sebagian besar sistem pakar komersial dibuat dalam bentuk rule based systems, yang mana pengetahuan disimpan dalam bentuk aturan-aturan, biasanya IF-THEN. Fitur lainnya dari sistem pakar adalah kemampuan merekomendasi yang tidak dimiliki oleh sistem konvensional.


(21)

Tabel 2.2 Perbandingan sistem konvensional dan sistem pakar

Sistem Konvensional Sistem pakar

Informasi dan pemrosesannya biasanya jadi satu dengan program

Basis pengetahuan merupakan bagian terpisah dari mekanisme inferensi Biasanya tidak bisa menjelaskan

mengapa suatu input data itu dibutuhkan, atau bagaimana output itu diperoleh

Penjelasan adalah bagian terpenting dari sistem pakar

Pengubahan program cukup sulit dan membosankan

Pengubahan aturan dapat dilakukan dengan mudah

Sistem hanya akan berperasi jika sistem tersebut sudah lengkap

Sistem dapat beroperasi hanya dengan beberapa aturan

Eksekusi dilakukan langkah demi langkah

Eksekusi dilakukan pada keseluruhan basis pengetahuan

Menggunakan data Menggunakan pengetahuan

Tujuan utamanya adalah efisiensi Tujuan utamanya adalah efektivitas (Sumber : Artificial Intelligence, Kusumadewi ,2003:112)

Sistem pakar terdiri dari 2 bagian pokok, yaitu : lingkungan pengembangan (development environment) yang digunakan sebagai pembangun sistem pakar dari segi pembangun komponen maupun basis pengetahuan. Yang kedua lingkungan konsultasi (consultion environment) yang digunakan oleh seseorang yang bukan ahli untuk berkonsultasi.


(22)

Gambar 2.3 Struktur sistem pakar 2.4 Diagnosis

Menurut Harvey dkk (1991), Istilah diagnosis berasal dari kata Yunani yang berarti membedakan atau menentukan. Dalam penggunaan bahasa Inggris abad ke-17 dan 18, diagnostik suatu penyakit adalah ciri-ciri khas dari penyakit itu. Dalam penggunaan umum modern, diagnosis adalah identifikasi penyakit dengan penyelidikan tanda, gejala dan manifestasi lainnya. Dalam terminologi medis, arti tepat diagnosis disamarkan oleh banyaknya cara ia digunakan : diagnosis klinis, diagnosis laboratorik, diagnosis fisik, diagnosis anatomis, diagnosis bakteriologis, diagnosis sinar-X, diagnosis EKG dan sebagainya.

Diagnosis, jika tidak dibubuhi kata sifat berarti identifikasi suatu penyakit dengan penyelidikan manifestasinya. Karena suatu diagnosis harus berdasarkan

user Antarmuka Aksi yang direkomendasi Fasilitas penjelasan

Motor Inferensi O interpreter O scheduler O consistency

enforcer

BLACKBOARD

Rencana Agenda Solusi Deskripsi

Penyaring pengetahuan Pengetahuan ahli Rekayasa pengetahuan Basis Pengetahuan

Fakta : Apa yang diketahui tentang area domain

Aturan : logical inference Fakta-fakta

tentang kejadian khusus

Penambahan pengetahuan


(23)

bukti terbaik yang didapat pada suatu waktu, istilah ini tak harus menunjukkan identifikasi pasti dan positif dari suatu penyakit (Harvey dkk, 1991).

Diagnosis melibatkan dua prosedur : (1) mengumpulkan fakta dan (2) menganalisis fakta. Kesalahan diagnosis dapat disebabkan ketidaksempurnaan dari satu atau kedua prosedur itu. Bila data faktual tak memadai atau tak benar, atau bila disalahinterpretasikan, analisisnya walaupun benar akanmengarah ke kesimpulan keliru. Sebaliknya, meski pengumpulan fakta lengkap dan akurat, dan data diinterpretasi secara benar, kesimpulan dapat salah karena analisis salah (Harvey dkk, 1991).

2.5 Tata Laksana

Dalam Kamus Ilmiah Populer (Tim Media Center,2002: 317) kata tata memiliki arti aturan yang bersistem. Arti lain dari tata adalah kaidah, aturan dan susunan. Sementara laksana diartikan sifat, laku perbuatan dan tatalaksana didefinisikan sebagai cara mengurus (http://kamusbahasaindonesia.org). Sehingga secara sederhana tatalaksana artinya cara atau aturan dalam mengurus, dalam hal ini adalah mengurus pasien yang didiagnosis penyakit tertentu.

2.6 Penyakit

Penyakit memiliki pengertian (http://pusatbahasa.diknas.go.id) sesuatu yang menyebabkan terjadinya gangguan pada makhluk hidup; gangguan kesehatan yang disebabkan oleh bakteri, virus atau kelainan sistem faal atau jaringan pada organ tubuh pada makhluk hidup.


(24)

2.7 Demam Berdarah Dengue (DBD) 2.7.1 Sejarah DBD

Demam berdarah dengue (DBD) disebabkan virus dengue yang termasuk kelompok B Arthropod Borne Virus (Arboviroses) yang sekarang dikenal sebagai genus Flavivirus, family Flaviviridae dan mempunyai 4 jenis serotipe yaitu : DEN-1, DEN-2, DEN-3 dan DEN-4. Keempat serotype virus dengue dapat ditemukan di berbagai daerah di Indonesia. Serotipe DEN-3 merupakan serotype yang dominan dan diasumsikan banyak yang menunjukkan manifestasi klinis yang berat (Depkes RI Dirjen P2MLP, 2004).

Menurut sejarahnya, demam dengue di Indonesia mulai dilaporkan tahun 1977 oleh David Bylon di Batavia. Penyakit ini disebut penyakit demam 5 hari yang dikenal dengan knee trouble atau knokkel kootz. Perkembangannya hingga tahun 1998, penyakit Demam Dengue/Demam Berdarah Dengue menyerang di Dati II dari 27 propinsi dengan jumlah

kasus 65.968 dan kematian 1.275

(http://www.kalbe.co.id/files/cdk/files/15_ResponImundanDerajatKesakita n.pdf/15_ResponImundanDerajatKesakitan.html).

Terdapat 3 faktor yang memegang peranan pada penularan infeksi virus dengue yaitu manusia, virus dan vektor perantara. Virus dengue ditularkan kepada manusia melalui gigitan nyamuk Aedes aegypti. Nyamuk Aedes albopictus, Aedes polynesiensis dan beberapa spesies lain dapat juga menularkan virus dengue namun merupakan vektor yang


(25)

kurang berperan. Nyamuk aedes aegypti hidup dan berkembang biak pada tempat penampungan air bersih seperti bak mandi, minuman kosong, air tendon, air tempayan atau gentong, kaleng dan ban bekas. Tersebar luas di kota maupun di desa kecuali di wilayah yang memiliki ketinggian 1000

meter di atas permukaan laut

(http://www.arthagrahapeduli.org/index.php?option=com_content&view= article&id=572%3Awaspada-demam-berdarah-dengue&catid=36%

3Akesehatan&Itemid=66&lang=in). Gigitan nyamuk aedes aegypti sendiri tidak membahayakan kesehatan selama tidak terkontaminasi oleh virus dengue.

2.7.2 Gejala DBD

Bentuk klasik dari DBD ditandai dengan demam tinggi, mendadak 2-7 hari, disertai dengan muka kemerahan. Keluhan seperti anoreksia, sakit kepala, nyeri otot, tulang, sendi, mual dan muntah sering ditemukan. Beberapa penderita mengeluh nyeri menelan dengan farings hiperemis ditemukan pada pemeriksaan, namun jarang ditemukan batuk pilek. Bentuk pendarahan yang paling sering adalah uji tourniquet (Rumple leede) positif, kulit mudah memar dan pendarahan pada bekas suntikan intravena atau pada bekas pengambilan darah (Depkes RI Dirjen P2MLP, 2004).

Pengobatan DBD bersifat suportif. Tatalaksana didasarkan atas adanya perubahan fisiologi berupa perembesan plasama dan pendarahan.


(26)

Perembesan plasma dapat mengakibatkan syok, anoreksia dan kematian. Deteksi dini terhadap adanya permebesan plasma dan penggantian cairan yang adekuat akan mencegah terjadinya syok (Depkes RI Dirjen P2MLP, 2004).

2.8 Demam Tifoid

2.8.1 Sejarah Demam Tifoid

Demam tifoid adalah peyakit infeksi sistemik yang disebabkan oleh kuman Salmonella typhi dan kadang-kadang kuman Salmonella paratyphi. Penyakit ini ditularkan melalui makanan atau minuman yang terkontaminasi oleh kuman S. typhi.

2.8.2 Gejala Demam Tifoid

Gejala klinis demam tifoid pada anak biasanya memberikan gambaran klinis ringan bahkan dapat tanpa gejala (asimtomatik). Diantara tanda dan gejala yang ditimbulkan pada penderita demam tifoid antara lain: demam, lidah kotor, bagian tengah berwarna putih dan pinggirannya berwarna merah, anoreksia, mual berat sampai muntah, obstipasi atau diare, nyeri kepala, nyeri otot, dan sakit perut yang diakibatkan pembengkakan hati dan limpa.

2.9 Diagram Alur (Flowchart)

Flowchart adalah salah satu cara menggambarkan algoritma dengan menggunakan simbol (Direktorat Hukum dan Informasi,2007:9) Flowchart digunakan untuk merepresentasikan maupun mendesain


(27)

program. Oleh karena itu, flowchart dapat dikatakan baik jika dapat merepresentasikan komponen-komponen dalam bahasa pemrograman.

Simbol-simbol untuk menggambarkan algoritma yang dibuat dapat dilihat pada tabel berikut (Ladjamudin, 2006:267-270) :

Tabel 2.3 Simbol-simbol flowchart

Nama Simbol Keterangan

Simbol penghubung/alur

Arus/flow

Untuk menyatakan jalannya arus suatu proses

Communication link

Untuk menyatakan bahwa adanya transisi suatu data/informasi dari satu lokasi ke lokasi lainnya

Connector

Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman/lembar yang sama

Offline connector

Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman/lembar yang berbeda

Simbol proses

Proses

Untuk menyatakan kegiatan pemrosesan input


(28)

Manual

Untuk meyatakan suatu tindakan yang tidak dilakukan oleh komputer

Decision/logika

Untuk menunjukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban, ya/tidak

Predefined process

Untuk menyatakan penyediaan tempat penyimpanan suatu pengolahan untuk memberi harga awal

Terminal

Untuk menyatakan permulaan atau akhir suatu program

Keying operation

Untuk menyatakan segala jenis operasi yang diproses dengan menggunakan suatu mesin yang mempunyai keyboard

Offline storage

Untuk menunjukkan bahwa data da;am symbol ini akan disimpan ke suatu media tertentu

Manual input

Untuk memasukkan data secara manual dengan menggunakan online keyboard


(29)

Simbol input-output

Input-Output

Untuk menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya

Punched card

Untuk menyatakan input berasal dari kartu atau output ditulis ke kartu

Magnetic-tape unit

Untuk menyatakan input berasal dari pita magnetic atau output disimpan ke pita magnetic

Disk storage

Untuk menyatakan input berasal dari disk atau output disimpan ke disk

Display

Untuk meyatakan peralatan output yang digunakan berupa layar (video, komputer)

2.10 State Transitions Diagram (STD)

Diagram state menghubungkan event-event dan state-state. Ketika suatu event diterima, state berikutnya bergantung pada state yang sekarang ada. Perubahan suatu state ke state yang lain dinamai transisi. Diagram state adalah diagram yang simpulnya adalah state dan garisnya adalah transisi yang diberi nama event. State digambarkan dalam kotak berisi namanya. Transisi


(30)

digambarkan sebagai tanda panah dari state penerima ke state targetnya, label pada tanda panah adalah nama event penyebab suatu transisi.

Gambar 2.4 Perubahan state 2.11 Rapid Application Development (RAD)

2.11.1 Defnisi RAD

Rapid Application Development (RAD) atau pengembangan aplikasi cepat adalah suatu pendekatan berorientasi objek terhadap pengembangan sistem yang mencakup suatu metode pengembangan serta perangkat-perangkat lunak (Kendall&Kendall,2006:237). Pada tataran konsep RAD mirip dan sangat dekat hubungannya dengan metode pengembangan sistem prototyping karena sama-sama menekankan keunggulan waktu yang cepat dalam proses pengembangan sistem. Kendall (2006:2007) mengungkapkan bahwa RAD dapat dianggap sebagai implementasi khusus dari prototyping. Prototyping adalah suatu teknik pengumpulan data yang sangat berguna melengkapi siklus hidup pengembangan sistem tradisional.

State 1

State 2 event


(31)

2.11.2 Tahap-Tahap Pengembangan Sistem RAD

Terdapat 4 tahap pengembangan sistem RAD menurut konsep asli dari James Martin, yakni tahap perencanaan syarat, tahap perancangan pengguna, tahap konstruksi dan terakhir tahap pelaksanaan.

Gambar 2.4 Fase RAD Martin

Sementara itu, Kendall&Kendall (2006:237) mengungkapkan ada tiga fase dalam RAD yang melibatkan penganalisis dan pengguna dalam tahap penilaian, perancangan dan penerapan (implementasi). Kendall juga mengingatkan akan keterlibatan pengguna dalam setiap bagian upaya pengembangan dengan partisipasi mendalam dalam bagian perancangan bisnis.

Gambar 2.5 Fase pengembangan sistem RAD Kendall

Baik menurut konsep asli dari James Martin, Kendall&Kendall maupun Pressman, tahap-tahap pengembangan sistem RAD tampak berbeda namun memiliki kesamaan dalam penekanan terhadap interaksi aktif antara pengembang sistem dengan pengguna sehingga akan dihasilkan sistem yang sesuai dengan keinginan dan kebutuhan pengguna. Berikut ini tahap pengembangan sistem RAD menurut Pressman (2005) : 1. Tahap communication

Perencanaan syarat-syarat

Perancangan pengguna

konstruksi Pelaksanaan

Mengidentifikasi

tujuan dan Mengenalkan sistem

Bekerja dengan pengguna

untuk

Membangu n sistem


(32)

2. Tahap planning 3. Tahap Modelling 4. Tahap construction 5. Tahap deployment

Gambar 2.6 RAD Model Pressman 2.12 Matlab 7.8 (R2009a)

Matlab adalah singkatan dari Matrik Laboratory, merupakan bahasa pemrograman tingkat tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visualisasi dan pemrograman seperti komputasi matematika, analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan. Matlab menyediakan banyak fitur dalam mendukung fungsinya, diantaranya (http://www.mathworks.com/):

60 – 90 days Communication

Planning Modelling

Business modelling Data modeling Process modelling

Construction

Component reuse

Automatic code generation Testing

Deployment

Integration Delivery Feedback


(33)

a. Merupakan bahasa tingkat tinggi untuk komputasional teknis b. Lingkungan pengembangan untuk pengaturan kode, data, dan file. c. Tools yang interaktif untuk eksplorasi, design dan pemecahan masalah. d. fungsi matematika untuk aljabar, statistik, analisis Fourier dan optimasi . e. fungsi grafik 2-D dan 3-D untuk visualisasi data.

f. Tools untuk membangun Graphical User Interface (GUI).

g. Fungsi integrasi Matlab dengan bahasa pemrograman yang lain seperti C, C++, Fortran, Java, COM dan Microsoft Excel.

Gambar 2.7 Tampilan Matlab yang mengintegrasikan pengembangan algoritma, analisis data, dan pengaturan project

Secara kesuluruhan, Matlab memiliki 6 buah jendela (Siang, 2009:152), yaitu :

a. Jendela perintah (command window)

Jendela perintah merupakan tempat untuk memasukkan perintah yang kita inginkan seperti perhitungan biasa, memanggil fungsi, mencari informasi tentang sebuah fungsi, demo program dan sebagainya. Setiap penulisan perintah diawali dengan prompt ‘>>’. Berikut screenshot jendela perintah :


(34)

Gambar 2.8 Jendela commandwindow b. Jendela daftar perintah (command history)

Jendela ini memuat daftar perintah yang pernah kita ketikkan dalam jendela perintah. Untuk mengeksekusi kembali perintah yang pernah dipakai, drag perintah tersebut dari jendela daftar perintah ke jendela perintah. Berikut screenshot jendela daftar perintah :

Gambar 2.9 Jendela commandhistory c. Jendela launch pad

Jendela ini berisi fasilitas yang disediakan Matlab untuk menjalankan paket perangkat lunak (toolbox) untuk menyelesaikan masalah tertentu. Contohnya, untuk melihat demo program jaringan saraf tiruan, kita bisa memilih folder


(35)

neural network toolbox, dan memilih subfolder demo. Berikut screenshot jendel daftar perintah :

Gambar 2.10 Jendela launchpad d. Jendela Help

Jendela ini dipakai ketika kita mengalami kesulitan sewaktu memilih perintah atau formatnya. Untuk membantu melihat format perintah, kita bisa menggunakan help dengan 2 cara :

- Mengetikkan help (topik) dalam jendela perintah, misalnya

adalah perintah untuk membuat matriks yang semua elemennya adalah 1.

Gambar 2.11 Help dari commandwindow - Membuka jendela help dari menu View.


(36)

Gambar 2.12 Jendela Help dari menu View e. Jendela direktori

Jendela untuk menentukan direktori aktif yang digunakan Matlab. Berikut screenshotnya :

Gambar 2.13 Jendela currentdirectory f. Jendela workspace

Jendela di mana kita dapat melihat informasi pemakaian variabel di dalam memori Matlab. Berikut screenshotnya :


(37)

2.12.1 Bekerja dengan Matlab

Ada 2 cara yang dapat kita gunakan dalam melakukan pemrograman Matlab, yaitu :

1. Secara langsung di jendela perintah

Cara ini sedikit riskan karena akan sulit mengevaluasi secara keseluruhaan perintah yang dimasukkan baris perbaris.

2. Menggunakan M-File

M-File merupakan sederetan perintah Matlab yang dituliskan secara berurutan sebagai sebuah file. Pemrograman dengan M-File memberikan kontrol lebih banyak dibandingkan dengan command line seperti poin 1 di atas. Dengan M-File kita bisa melakukan percabangan, perulangan dan lain-lain. Program M-File mirip dengan bahasa C yang membagi program dalam blok program berupa fungsi-fungsi. Tiap fungsi dapat memanggil fungsi yang lain.

Untuk membuat M-File, klik menu File kemudian pilih New dan klik M-File. Akan tampil layar MATLAB Editor/Debugger. Jika pekerjaan kita telah selesai, untuk menyimpannya klik menu File dan Save As….tuliskan nama file yang kita inginkan dan klik button save. File akan disimpan dengan ekstensi *.m. Agar dapat dijalankan dengan benar, maka program harus disimpan dahulu kedalam file yang namanya sama dengan nama fungsi (fungsi dijelaskan pada poin 2.8.2).Untuk membuka M-File dari command window, ketik edit namafile dan tekan Enter atau klik Return.


(38)

2.12.2 Fungsi dalam Matlab

Fungsi dalam Matlab terdiri dari 2 bagian yaitu : a. Definisi fungsi

Bentuk definsi fungsi adalah sebagai berikut :

Function <argument keluaran> = <nama fungsi> (<argument masukan>)

Sebagai contoh :

Function y = average (x)

Baik argumen masukan maupun keluaran bisa berupa variabel berupa skalar, vektor maupunn matriks atau tanpa argumen sama sekali. Argumen masukan boleh lebih dari 1, masing-masing dipisahkan dengan tanda koma. Demikian juga apabila argumen keluaran lebih dari 1 elemen, maka argumen tersebut dipisahkan dengan tanda koma atau diletakkan diantara kurung siku.

b. Tubuh fungsi

Tubuh fungsi berisi semua perintah untuk membuat komputasi dan memberikan harga kepada argumen keluaran. Pernyataan dalam tubuh fungsi bisa berupa pemberian nilai pada suatu variabel, masukan/keluaran, fungsi kontrol, iterasi ataupun pemanggilan kepada fungsi lain.

Contoh script sederhana Matlab disajikan berikut ini : % Script file contoh


(39)

y = sin(x) ./x; plot (x,y) grid

Penjelasan dari script di atas adalah sebagai berikut :

Tanda % menandakan komentar dan akan diabaikan oleh Matlab, artinya tidak akan dieksekusi. Penulisan komentar disesuaikan dengan kebutuhan pembuat program. Dua baris berikutnya x dan y dibuat. Tanda “;” sebagai pemisah baris perintah. Array x memuat 1000 angka berspasi rata dalam interval [c/100 10 ] sedangkan array y memuat nilai-nilai dari sinc function y = sin(x)/x pada point tersebut. Dot operator (.) digunakan sebelum operator divisi sebelah kanan (right division operator). Ini memberitahukan kepada Matlab untuk melaksanakan componentwise division dari dua deret sin(x) dan x. perintah plot mencipatkan grafik dari sinc function dengan menggunakan titik-titik yang dihasilkan oleh dua baris sebelumnya. Terakhir, perintah grid dilaksanakan, dengan menambahkan satu grid untuk grafik.

2.12.3 Kontrol Arus Aliran

Untuk mengontrol arus perintah, Matlab menyediakan 4 alat yang dapat digunakan yaitu (Hartanto&Prasetyo,2003:18) :

1. Perulangan for

Sintaks dari perulangan for adalah sebagai berikut : For variabel = skalar:skalar

Pernyataan ….


(40)

pernyataan end

2. perulangan while

Sintaks dari perulangan while adalah sebagai berikut : while expression op_rel expression

pernyataan end

dimana op_rel adalah ==, <, >, <=, >=, atau ~=. 3. Konstruksi perulangan if-else-end

Sintaks dari konstruksi perulangan if-else-end adalah sebagai berikut :

If expression Pernyataan End

Kontruksi di atas digunakan jika hanya ada satu alternatif. Jika ada 2 alternatif maka konstruksi yang digunakan adalah sebagai berikut :

If expression Pernyataan Else Pernyataan End


(41)

Sedangkan jika ada lebih dari 2 alternatif, maka kontruksi yang digunakan adalah :

If expression1 Pernyataan Elseif expression2 Pernyataan Elseif … .

. Else Pernyataan end

4. konstruksi perulangan switch-case

Sintaks dari konstruksi switch-case adalah sebagai berikut : Switch expression (skalar atau string)

Case nilai1 Case nilai2 .

.

Otherwise Pernyataan End


(42)

2.12.4 Pembuatan Grafik a. Grafik 2 dimensi

Fungsi dasar yang digunakan untuk membuat grafik 2 dimensi adalah fungsi plot. Fungsi ini menggunakan satu angka variabel dari argumen input. Ada pula fungsi subplot yang digunakan untuk memplot beberapa grafik di figure window yang sama. Untuk definisi penuh dari fungsi ini kita dapat mengetikkan help plot dalam command window.

b. Grafik 3 dimensi

Matlab mempunyai beberapa fungsi tersendiri untuk memplot objek 3 dimensi. Fungsi-fungsi tersebut adalah plot kurva di ruangan (plot 3), mesh surface (mesh), surface (surf), dan plot kontur (countor). Juga ada 2 fungsi untuk memplot permukaan khusus, sphere dan cylinder. Penjelasan tentang fungsi-fungsi ini juga dapat diketahui dengan mengetikkan help graph3d pada commandwindow.

2.13 Literatur Sejenis

Pada penelitian ini penulis mengambil studi literatur sejenis yang akan digunakan sebagai acuan pembuatan aplikasi untuk membedakan hal-hal yang sudah dilakukan dan menentukan hal-hal yang perlu dilakukan. Literatur yang diambil sebagai perbandingan terutama yang berkaitan dengan diagnosis penyakit dan penggunaan logika fuzzy. Studi literatur sejenis diambil dari 2 buah skripsi, 1 skripsi mahasiswa UIN Syarif Hidayatullah Jakarta dan 1 skripsi mahasiswa ITS.

Skripsi Fitriyanti (2010) dengan judul “Diagnosis Penyakit TBC Paru dan Asma Bronkial Menggunakan Metode Jaringan Syaraf Tiruan


(43)

Backpropagation ”. Penyakit TBC Paru dan Asma Bronkial sulit dibedakan karena memiliki gejala klinis yang mirip sehingga perlu adanya sebuah sistem yang membantu membedakan mana penyakit TBC Paru dan Asma Bronkial. Sistem jaringan saraf tiruan memiliki kemampuan untuk memecahkan masalah dimana input dan output memiliki hubungan yang sangat sulit dijabarkan. Tujuan dari aplikasi ini adalah mengaplikasikan metode jaringan syaraf tiruan dengan algoritma backpropagation yang dapat melakukan tugas dalam mendeteksi kondisi penyakit TBC Paru dan Asma Bronkial berdasarkan gejala-gejala yang sering terjadi pada manusia. Aplikasi yang dibuat peneliti telah berhasil menerapkan jaringan saraf tiruan metode backpropagation untuk diagnosis TBC Paru dan Asma Bronkial. Kekurangan aplikasi ini adalah tidak dapat mengakomodasi data fuzzy.

Skripsi Riri Kusumarani (2004) dengan judul “Aplikasi Sistem Pakar dalam Pendeteksian Penyakit Demam Berdarah Dengue Menggunakan Microsoft Visual Basic 6.0 ”. Sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer, agar komputer dapat menyelesaikan masalah seperti yang biasa dilakukan oleh para ahli. Penyakit Demam Berdarah Dengue tentunya bukan suatu penyakit yang tergolong baru di masayarakat Indonesia. Penyakit yang bisa dibilang rutin datang setiap lima tahun sekali. Ini sesungguhnya sangat meresahkan. Peyakit ini sendiri sangat cepat penyebarannya dengan bantuan vektor nyamuk Aedes aegypti. Gejala yang timbul pada penderita sangatlah umum, hal ini menyebabkan banyak penderita yang terlambat dalam penanganannya sehingga berakibat fatal (meninggal). Aplikasi


(44)

yang dibuat menghadirkan fitur-fitur tentang informasi DBD. Selain itu juga menghadirkan fitur pendeteksian penyakit DBD. Aplikasi telah memenuhi tujuannya untuk mendeteksi penyakit DBD. Hanya saja masih terbatas pada 1 penyakit saja yaitu DBD serta hanya mengakomodasi nilai biasa (crisp value).

Dari uraian di atas, maka penulis mencoba menerapkan logika fuzzy untuk diagnosis 2 buah penyakit yaitu DBD dan demam tifoid yang memiliki kemiripan gejala dengan 5 buah gejala klinis sebagai parameter masukan.


(45)

45 BAB III

METODOLOGI PENELITIAN

Bab ini menguraikan metodologi yang digunakan dalam penelitian ini meliputi metode pengumpulan data dan metode pengembangan sistem dilengkapi dengan alasan penulis menggunakan metode pengembangan sistem tersebut.

Dalam penelitian diperlukan data-data yang dapat menunjang penelitian sehingga diperlukan metode pengumpulan data. Sementara itu, untuk mengembangkan sistem penulis menggunakan Rapid Application Development. Bab ini akan menguraikan metode pengumpulan data dan metode pengembangan sistem yang penulis gunakan beserta alasan penulis menggunakan RAD sebagai metode pengembangan sistem.

3.1 Metode Pengumpulan Data

Data menjadi hal yang penting dalam sebuah proses penelitian, oleh karena data tersebut akan menjadi dasar dari penelitian itu sendiri. Untuk pengumpulan data, penulis menggunakan 2 metode yaitu :

1. Wawancara

Penulis melakukan wawancara untuk mendapatkan data yang akan dimasukkan sebagai knowledge base sistem. Adapun yang menjadi pakar adalah dr. Indra Kusuma. Wawancara dilakukan di Rumah Bersalin Gratis Rumah Zakat di Pulogadung, Jakarta Timur sebanyak 2 kali yakni pada tanggal 23 Oktober 2010 untuk mendapatkan data parameter fuzzy beserta keanggotaannya. Sementara yang kedua dilakukan pada tanggal 30 Oktober 2010 untuk penentuan basis aturan


(46)

(rule base) fuzzy. Dari hasil wawancara juga didapatkan bentuk pertanyaan-pertanyaan yang akan digunakan pada model aplikasi pakar.

2. Studi pustaka

Penulis mengumpulkan dan mempelajari data dan informasi dari berbagai sumber literatur baik cetak maupun elektronik yang berkaitan dengan logika fuzzy diagnosis penyakit DBD dan demam tifoid. Sumber-sumber yang penullis gunakan berasal dari buku referensi, hasil penelitian (skripsi), jurnal online, buku pedoman serta artikel dari berbagai sumber.

Adapun sumber utama yang dijadikan referensi oleh penulis yaitu buku-buku seperti berikut :

1. Artificial Intelligence, Teknik dan Aplikasinya, Sri Kusumadewi, 2003, Penerbit Graha Ilmu, Yogyakarta.

2. Buku pedoman Tata Laksana Demam Berdarah Dengue di Indonesia, 2004, Penyunting Sri Rezeki, diterbitkan oleh Departemen Kesehatan RI Dirjen P2MLP, Jakarta.

3. Buku pedoman Demam Tifoid; Peran Mediator, Diagnosis dan Terapi, 2000, penyunting H. Iskandar Zulkarnain diterbitkan oleh Pusat Informasi dan Penerbitan Bagian Ilmu Penyakit Dalam FKUI, Jakarta.

4. Rekayasa Perangkat Lunak, 2006, Al Bahra Bin Ladjamudin, Penerbit Graha Ilmu, Yogyakarta.

Untuk data lebih lengkap mengenai rujukan yang penulis ambil dapat dilihat di daftar pustaka.


(47)

Penulis juga melakukan studi literatur sejenis guna membandingkannya dengan penelitian yang akan dibuat. Hasil studi literatur sejenis dapat dilihat di BAB II Subbab 2.13.

3.2 Metode Pengembangan Sistem

Untuk metode pengembangan sistem, penulis menggunakan 5 fase dalam model RAD yakni communication, planning, modelling, construction dan deployment (Pressman : 2005). Penjelasan lebih lanjut mengenai RAD lihat bab II subbab 2.11.2.

Model RAD digunakan dengan tujuan mempersingkat waktu pengerjaan aplikasi serta proses yang dihasilkan didapatkan secara cepat dan tepat.

1. Communication

Pada tahap communication dilakukan proses komunikasi, yaitu proses memahami permasalahan dan karakteristik informasi yang harus diakomodasi, melalui studi literatur yang dilakukan di awal.

Informasi-informasi yang didapatkan akan diolah pada tahap berikutnya. Informasi tersebut akan digunakan untuk membangun aplikasi yang sesuai dengan kebutuhan pengguna dan dapat menjawab permasalahan yang diangkat pada latar belakang dilakukannya penelitian.

Permasalahan yang harus dipecahkan oleh sistem ini adalah membuat model logika fuzzy dengan caramembuat rule-rule atau aturan yang berjalan pada sistem sehingga sistem dapat menjalankan fungsinya mendiagnosis suatu penyakit apakah termasuk penyakit DBD ataukah demam tifoid berdasarkan gejala-gejala klinis yang diberikan kedalam sistem.


(48)

Adapun tujuan dari sistem adalah mendiagnosis penyakit DBD atau demam tifoid sesuai dengan gejala klinis yang diberikan. Input sistem berupa gejala-gejala klinis suatu penyakit. Output sistem berupa diagnosis penyakit termasuk DBD atau demam tifoid beserta tata laksananya.

2. Planning

Pada tahap planning dilakukan perencanaan proses yang akan dijalankan, dengan mengidentifikasi syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut. Perencanaan proses itu dilakukan berdasarkan informasi yang telah didapatkan dari tahap pertama komunikasi. Pada tahap ini penulis melakukan penentuan yaitu :

a. Fungsi keanggotaan fuzzy input (premis) yang digunakan adalah fungsi Gaussian (gaussmf), zmf dan smf, sementara untuk fuzzy output digunakan fungsi trimf.

b. Penerapan fuzzy logic pada tahap inferensi menggunakan metode Mamdani, karena output aplikasi berupa bilangan fuzzy.

c. Pembuatan aturan fuzzy serta pemberian skor parameter input dan output dibantu oleh pakar yaitu dokter.

d. Proses defuzzyfikasi menggunakan metode rata-rata terbobot (weighted average).

3. Modelling

Pada tahap modelling dilakukan pemodelan informasi yang harus di akomodasi, proses-proses yang terjadi pada aplikasi, interface yang akan dipergunakan, dan data yang diperlukan selama penggunaan aplikasi.


(49)

a. Businessmodeling

Pada tahap ini dilakukan pemodelan bisnis yang akan berjalan pada sistem. b. Data modelling

Pada tahap ini dilakukan perancangan struktur data yang akan digunakan untuk pengolahan data.. Penjelasan lebih lanjut dapat dilihat pada pembahasan BAB IV subbab 4.3.2.

c. Processmodelling

Pada tahap ini dilakukan perancangan proses yang terdapat pada sistem yakni proses input data hingga sistem menghasilkan output.

d. Perancangan antarmuka (interface) 4. Construction

Pada tahap construction, proses logika fuzzy sesuai dengan hasil pemodelan pada tahap sebelumnya diterapkan dengan menggunakan kode-kode program. Tool yang penulis gunakan adalah Matlab 7.8.0 (R2009a). Alasan penggunaan Matlab adalah seperti yang telah dijelaskan pada bab I subbab 1.1. Kode program lengkap dapat dilihat di lampiran E. Pada tahap ini juga dilakukan pengujian. Pengujian yang digunakan adalah dengan pendekatan black box test dengan metode unit test dan integration test yang akan menguji program secara keseluruhan sehingga dapat diketahui keberhasilan pengembangan aplikasi meliputi pengujian input dan output. Hasil pengujian dapat dilihat pada bab IV subbab 4.4.3.


(50)

5. Deployment

Pada tahap deployment dilakukan penyatuan keseluruhan modul program yang telah diuji dan siap dipakai kemudian pengiriman (delivery) dan umpan balik (feedback). Pada penelitian ini, hanya samapi pada tahapan construction karena penelitian ini dilakukan bukan digunakan langsung oleh pelanggan.

3.3 Alasan Penulis Menggunakan RAD

Dari berbagai model pengembangan sistem yang ada, penulis menggunakan model RAD dengan alasan-alasan sebagai berikut :

1. Aplikasi yang akan dikembangkan merupakan aplikasi yang sederhana dan tidak memerlukan waktu yang lama. Metode RAD digunakan untuk pengembangan sistem yang seperti ini (Kendall&Kendall,2006:237).

2. Pengembangan aplikasi dalam implementasinya tidak memiliki fase pemeliharaan karena merupakan aplikasi yang sederhana oleh karena itu penulis menggunakan metode RAD bukannya metode sekuensial linear (Pressman, 2005:83).

3. Aplikasi tidak memerlukan tahapan yang panjang seperti halnya jika kita ingin menggunakan model spiral yang merupakan salah satu model evolusioner yang memiliki waktu yang cukup panjang dalam pengembangan software (Proboyekti, 2004:1).

4. Salah satu kekurangan model formal adalah banyak memakan waktu dan mahal (Pressman, 2002:54) sementara aplikasi ini tidak banyak memerlukan waktu dan biaya.


(51)

Gambar 3.1 Kerangka pengembangan sistem Studi Pustaka Identifikasi Masalah

Akuisisi Pengetahuan

Pengembangan Model logika fuzzy

Pengembangan Aplikasi

Wawancara Pakar

Program Matlab Pengembangan Sistem

Ujicoba (testing)

Pembahasan, kesimpulan, dokumentasi dan penulisan laporan

Sesuai Harapan

Ya

Tidak


(52)

52 BAB IV

HASIL DAN PEMBAHASAN

Pada bab ini akan dijelaskan lebih lanjut lagi mengenai proses perancangan serta implementasinya dalam program termasuk proses pengujian program.

4.1 Communication

Berdasarkan penjabaran latar belakang yang telah dijelaskan pada Bab I subbab 1.1 dan studi literatur yang dijelaskan pada Bab II subbab 2.13, maka diperlukan pengembangan model logika fuzzy untuk diagnosis DBD dan demam tifoid, dengan pendekatan sistem pakar untuk pengembangan sistemnya sehingga diharapkan dapat menjawab permasalahan yang telah dijelaskan pada subbab 1.2. 4.2 Planning

Dari analisis permasalahan yang telah diketahui pada tahap sebelumnya, maka dibuatlah perencanaan untuk mengembangkan model logika fuzzy diagnosis DBD dan demam tifoid serta pengembangan aplikasi dengan pendekatan sistem pakar untuk aplikasi antarmukanya.

Pemodelan logika fuzzy akan menggunakan software Matlab karena pertimbangan kemudahan dan keandalan komputasinya. Untuk dapat membangun pemodelan logika fuzzy diperlukan data-data yang akan menjadi parameter logika fuzzy. Data-data yang digunakan adalah data gejala klinis penyakit DBD dan demam tifoid yang memiliki kemiripan dengan ciri khas yang berbeda untuk masing-masing penyakit.


(53)

Sistem kerja aplikasi antarmuka mengadopsi cara kerja sistem pakar karena memang pendekatan yang dilakukan adalah pendekatan sistem pakar. Aplikasi akan menerima input parameter berupa gejala-gejala klinis dan selanjutnya aplikasi akan memberikan output berupa hasil diagnosis.

Parameter yang akan digunakan adalah gejala-gejala klinis penyakit DBD dan demam tifoid diantaranya : demam, nyeri otot dan sendi extrimis atas (tangan dan lengan) dan extrimis bawah (kaki), manifestasi pendarahan seperti pendarahan pada hidung dan gusi serta uji tornikuet positif, adanya gangguan pencernaan, serta pemeriksaan lidah apakah berselaput atau tidak.

Perbandingan gejala antara DBD dan demam tifoid ditampilkan pada tabel berikut :

Tabel 4.1 Perbandingan gejala DBD dan demam tifoid

No Gejala DBD Demam Tifoid

1. Demam

Muncul mendadak dan suhu mencapai 40 C, bertahan tinggi selama 2-3 hari

Muncul bertahap perlahan hingga rentang waktu 1 minggu

2. Nyeri otot dan sendi extrimis atas dan bawah

Sangat mengganggu pasien dan sering dikeluhkan

Muncul, namun tidak terlalu mengganggu sehingga jarang dikeluhkan

3. Manifestasi pendarahan

Pendarahan spontan, uji tornikuet positif bahkan sampai pada tahap hematemesis dan melena

Pendarahan pada hidung dan gusi sedikit serta uji tornikuet negative

4. Gangguan pencernaan

Jarang terjadi konstipasi ataupun diare

Sering terjadi konstipasi atau diare 5. Kondisi lidah Warna lidah relatif

normal

Lidah berselaput, kotor di tenngah dan ujung merah dan tremor


(54)

4.3 Modelling

4.3.1 Business Modelling

Tujuan dari perancangan aplikasi ini adalah merancang suatu model logika fuzzy untuk diagnosis penyakit demam berdarah atau demam tifoid berdasarkan input gejala-gejala klinis tertentu Adapun kebutuhan sistem adalah data-data gejala klinis penyakit demam berdarah dan demam tifoid seperti yang telah dijelaskan sebelumnya pada poin 4.2 untuk pembentukan aturan fuzzy. Sementara untuk diagnosis demam berdarah dan demam tifoid digunakan pendekatan sistem pakar.

Adapun untuk antarmuka program akan dirancang dengan menggunakan tools Matlab 7.8.0. karena keunggulannya dalam komputasi numerik dan visualisasi data. Penjelasan tentang Matlab dijelaskan pada BAB II subbab 2.12.

4.3.2 Data Modelling

4.3.2.1 Basis Data Fuzzy

Desain struktur data menggunakan himpunan fuzzy yang dibedakan menjadi kriteria dan parameter. Kriteria yakni gejala klinis demam berdarah dengue dan demam tifoid yaitu demam, nyeri otot dan sendi, manifestasi pendarahan, gangguan pencernaan dan kondisi lidah. Masing-masing kriteria memiliki parameter yang mencerminkan keanggotaan himpunan fuzzy atau membership function (mf). Kriteria, parameter dan nilai fungsi keanggotaan diperoleh berdasarkan hasil wawancara dengan pakar. Untuk


(55)

masing-masing kriteria terdiri dari 3 parameter dengan atribut nilai yang sama namun atribut linguistik yang berbeda-beda. Atribut nilai berkisar antara 0 – 10. Untuk fungsi keanggotaan atribut nilai rendah (0 – 3,6) digunakan fungsi bentuk Z (zmf), atribut nilai sedang (1,69 – 5) digunakan fungsi Gaussian (gaussmf) dan atribut nilai tinggi (6,49 – 9,6) digunakan fungsi bentuk S (smf) .

Demam terdiri dari 3 parameter yaitu mendadak, ragu-ragu dan bertahap. Penilaian demam didasarkan pada asumsi demam tinggi (antara 38 C sampai dengan 40 C) dan dibedakan dari sifat kemunculan demam tersebut. Demam dikatakan mendadak jika muncul secara tiba-tiba dan langsung meninggi hingga 40 C serta bertahan untuk waktu 2-3 hari. Demam dikategorikan sebagai ragu-ragu jika suhu tubuh meningkat bertahap namun tidak bertahan pada suhu tertentu dalam jangka waktu lama (2-3 hari), misalnya demam hanya muncul pada sore atau malam hari saja. Demam dikategorikan bertahap jika kenaikan suhu setiap harinya naik secara perlahan sampai rentang waktu 1 minggu. Nilai fuzzy demam disajikan pada tabel berikut :

Tabel 4.2 Nilai fuzzy demam

Demam Nilai skor Pengukuran

Bertahap 0,00 – 3,21 Suhu tubuh naik bertahap 1 minggu Ragu-ragu 1,69 – 5,00 Demam hilang timbul pagi dan

malam hari

Mendadak 6,49 – 9,60 Muncul tiba-tiba, bertahan tinggi 2-3 hari


(56)

Fungsi keanggotaan demam adalah sebagai berikut :

Gambar 4.1 Membership function demam

Dari gambar di atas terlihat bahwa derajat keanggotaan demam bertahap akan maksimal (nilai mf 1) dicapai ketika nilai demam 0-1 dan minimal (nilai mf 0) dicapai ketika nilai demam 3,21. Derajat keanggotaan demam ragu-ragu maksimal (nilai mf 1) dicapai ketika nilai demam 5 dan minimal (nilai mf 0) dicapai ketika nilai demam 0 atau 10. Derajat keanggotaan demam mendadak maksimal (nilai mf 1) dicapai ketika nilai demam 9,6 dan minimal (nilai mf 0) dicapai ketika nilai demam 6,49.

Nyeri otot dan sendi terdiri dari 3 parameter, tidak mengganggu, mengganggu dan sangat mengganggu. Penilaian nyeri otot dan sendi didasarkan pada keluhan pasien akan nyeri otot dan sendi pada bagian extrimis atas meliputi lengan dan tangan serta bagian extrimis bawah meliputi kaki apakah tidak mengganggu, mengganggu atau sangat mengganggu pasien.


(57)

Tabel 4.3 Nilai fuzzy nyeri otot dan sendi Nyeri otot&sendi Nilai skor Pengukuran Tidak mengganggu 0,00 – 3,60 Tidak ada keluhan

Mengganggu 1,69 – 5,00 Ada keluhan tetapi tidak terlalu mengganggu

Sangat mengganggu 6,49 – 9,60 Sangat mengganggu dan dikeluhkan pasien

Fungsi keanggotaan nyeri otot dan sendi adalah sebagai berikut :

Gambar 4.2 Membership function nyeri otot dan sendi Dari gambar di atas terlihat bahwa derajat keanggotaan nyeri otot dan sendi tidak mengganggu akan maksimal (nilai mf 1) dicapai ketika nilai nyeri otot dan sendi 0-1 dan minimal (nilai mf 0) dicapai ketika nilai nyeri otot dan sendi 3,6. Derajat keanggotaan nyeri otot dan sendi mengganggu maksimal (nilai mf 1) dicapai ketika nilai nyeri otot dan sendi 5 dan minimal (nilai mf 0) dicapai ketika nilai nyeri otot dan sendi 0 atau 10. Derajat keanggotaan nyeri otot dan sendi sangat mengganggu akan maksimal (nilai mf 1) dicapai ketika nilai nyeri otot dan sendi 9,6 dan minimal (nilai mf 0) dicapai ketika nilai nyeri otot dan sendi 6,49.


(58)

Manifestasi pendarahan terdiri dari 3 parameter yaitu tidak jelas, ragu-ragu dan sangat jelas. Penilaian ini berdasarkan hasil pengamatan pendarahan pada hidung dan gusi, sifat pendarahan yang spontan atau tidak serta uji tornikuet. Termasuk kategori tidak jelas jika pendarahan pada hidung dan gusi sedikit serta tidak spontan. Termasuk kategori ragu-ragu jika pendarahan terjadi spontan pada hidung, gusi serta kulit ditambah lagi dengan hasil uji tornikuet positif. Termasuk kategori sangat jelas jika pasien telah sampai pada tahap hematemesis atau melena.

Tabel 4.4 Nilai fuzzy manifestasi pendarahan Manifestasi pendarahan Nilai skor Pengukuran

Tidak jelas 0,00 – 3,60 Pendarahan hidung dan gusi sedikit dan tidak spontan Jelas 1,69 – 5,00 Pendarahan hidung dan gusi

spontan, uji tornikuet positif Sangat Jelas 6,49 – 9,60 Hematemesis atau melena

Fungsi keanggotaan manifestasi pendarahan adalah sebagai berikut :


(59)

Dari gambar di atas terlihat bahwa derajat keanggotaan pendarahan tidak jelas akan maksimal (nilai mf 1) dicapai ketika nilai pendarahan 0-1 dan minimal (nilai mf 0) dicapai ketika nilai pendarahan 3,6. Derajat keanggotaan pendarahan jelas akan maksimal (nilai mf 1) dicapai ketika nilai pendarahan 5 dan minimal (nilai mf 0) dicapai ketika nilai pendarahan 0 atau 10. Derajat keanggotaan pendarahan sangat jelas akan maksimal (nilai mf 1) dicapai ketika nilai pendarahan 9,6 dan minimal (nilai mf 0) dicapai ketika nilai pendarahan 6,49.

Kriteria gangguan pencernaan terbagi dalam 3 parameter yaitu terjadi gangguan pencernaan, ragu-ragu dan tidak terjadi gangguan pencernaan. Penilaian ini didasarkan pada hasil keluhan pasien apakah terjadi gangguan pencernaan seperti konstipasi atau diare (tidak termasuk mual).

Tabel 4.5 Nilai fuzzy gangguan pencernaan Gangguan

pencernaan

Nilai skor Pengukuran

Terjadi 0,00 – 3,60 Terjadi konstipasi atau diare dengan frekuensi tinggi Ragu-ragu 1,69 – 5,00

Terjadi konstipasi atau diare tapi dengan frekuensi rendah

Tidak tejadi 6,49 – 9,60 Tidak terjadi konstipasi atau diare


(60)

Fungsi keanggotaan gangguan pencernaan adalah sebagai berikut :

Gambar 4.4 Membership function gangguan pencernaan Dari gambar di atas terlihat bahwa derajat keanggotaan gangguan pencernaan terjadi akan maksimal (nilai mf 1) dicapai ketika nilai gangguan pencernaan 0-1 dan minimal (nilai mf 0) dicapai ketika nilai gangguan pencernaan 3,6. Derajat keanggotaan gangguan pencernaan ragu-ragu akan maksimal (nilai mf 1) dicapai ketika nilai gangguan pencernaan 5 dan minimal (nilai mf 0) dicapai ketika nilai gangguan pencernaan 0 atau 10. Derajat keanggotaan gangguan pencernaan tidak terjadi akan maksimal (nilai mf 1) dicapai ketika nilai gangguan pencernaan 9,6 dan minimal (nilai mf 0) dicapai ketika nilai gangguan pencernaan

≤ 6,49.

Kriteria kondisi lidah memiliki 3 parameter yaitu lidah berselaput, ragu-ragu, dan tidak berselaput. Penilaian ini didasarkan pada hasil pengamatan kondisi lidah pasien. Kategori lidah


(61)

berselaput jika pada lidah pasien kotor di tengah sementara di tepi dan ujung berwarna merah dan tremor.

Tabel 4.6 Nilai fuzzy kondisi lidah Kondisi lidah Nilai skor Pengukuran

Berselaput 0,00 – 3,60 Lidah kotor di tengah, tepi dan ujung merah

Ragu-ragu 1,69 – 5,00 Tidak terlihat jelas apakah berselaput atau tidak

Tidak berselaput 6,49 – 9,60 Warna lidah normal

Fungsi keanggotaan gangguan pencernaan adalah sebagai berikut :

Gambar 4.5 Membership function kondisi lidah

Dari gambar di atas terlihat bahwa derajat keanggotaan kondisi lidah berselaput akan maksimal (nilai mf 1) dicapai ketika nilai kondisi lidah 0-1 dan minimal (nilai mf 0) dicapai ketika nilai kondisi lidah 3,6. Derajat keanggotaan kondisi lidah ragu-ragu akan maksimal (nilai mf 1) dicapai ketika nilai kondisi lidah 5 dan minimal (nilai mf 0) dicapai ketika nilai kondisi lidah 0 atau 10. Derajat keanggotaan kondisi lidah tidak berselaput akan maksimal


(62)

(nilai mf 1) dicapai ketika nilai kondisi lidah 9,6 dan minimal (nilai mf 0) dicapai ketika nilai kondisi lidah 6,49.

4.3.2.2 Basis Aturan

Pada penghitungan data fuzzy digunakan kaidah IF THEN. Aturan dibuat berdasarkan pendapat pakar yaitu dokter. Pada penelitian ini ada 5 kriteria dengan masing-masing 3 parameter (membership function) sehingga jumlah aturan yang terbentuk yaitu 3 = 243 aturan. Untuk lebih lengkapnya dapat dilihat pada lampiran A.

4.3.2.3 Perancangan Output

Output dari aplikasi yang merupakan kesimpulan fuzzy logic diinterpretasikan kedalam 4 kategori yang didapatkan dengan cara membuat fungsi keanggotaan output data. Atribut linguistik output adalah demam tifoid, observasi, cek laboratorium dan DBD. Adapaun atribut nilai fungsi keanggotaan berkisar antara 0 -10. Fungsi keanggotaan yang digunakan untuk output adalah fungsi triangular atau segitiga.

Tabel 4.7 Nilai minimal dan maksimal output

Jenis Sampel Data Nilai Minimal Nilai Maksimal

Demam tifoid 0,00 3,99

Observasi 3,00 5,99

Cek laboratorium 5,00 7,99


(63)

Sedangkan fungsi keanggotaannya sebagai berikut :

Gambar 4.6 Membership function output

Interpretasi kesimpulan logika fuzzy dipresentasikan sebagai diagnosis DBD atau demam tifoid, cek laboratorium dan observasi dengan kemungkinan senilai dengan nilai output hasil defuzzyfikasi sehingga dapat dipertimbangkan untuk penanganan dini terhadap hasil diagnosis.

Kesimpulan hasil diagnosis demam tifoid (diagnosis0) akan didapatkan ketika nilai output bernilai 0 - 3,99 dengan interpretasi sebagai berikut :

Kemungkinan besar penderita terserang penyakit demam tifoid

Tata Laksana :

1. Berikan segera cairan pengganti seperti oralit

2. Perhatikan tanda vital penderita : nadi, tekanan darah, respirasi dan temperature


(64)

Kesimpulan hasil diagnosis observasi (diagnosis1) akan didapatkan ketika niali output bernilai 3,00 - 5,99 dengan interpretasi sebagai berikut :

Penderita harus tetap dalam observasi Tata Lakana :

1. Perhatikan tekanan darah, respirasi dan temperature 2. Perhatikan kadar hematokrit, apabila kadar hematokrit

meningkat lebih dari 20% dari harga normal sebaiknya penderita dirawat di ruang observasi di pusat rehidrasi selam kurun waktu 12-24 jam.

3. Periksa darah penderita apakah terdapat Salmonella typhii atau Salmonella paratyphii

Kesimpulan hasil diagnosis cek laboratorium (diagnosis2) akan didapatkan ketika nilai output bernilai 5,00 - 7,99 dengan interpretasi sebagai berikut :

Penderita sebaiknya cek di laboratorium Tata laksana :

1. Perhatikan nadi, tekanan darah, respirasi dan temperatur 2. Segera periksa penderita ke laboratorium jika tanda vital

menurun dan kadar hematokrit tidak stabil

Kesimpulan hasil diagnosis DBD (diagnosis3) akan didapatkan ketika nilai output bernilai 7,00 - 10 dengan interpretasi sebagai berikut :


(1)

% applied to the GUI before petunjuk_OpeningFcn gets called. An

% unrecognized property name or invalid value makes property application

% stop. All inputs are passed to petunjuk_OpeningFcn via varargin.

%

% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

% instance to run (singleton)". %

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help petunjuk

% Last Modified by GUIDE v2.5 12-Nov-2010 01:00:47

% Begin initialization code - DO NOT EDIT gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @petunjuk_OpeningFcn, ... 'gui_OutputFcn', @petunjuk_OutputFcn, ... 'gui_LayoutFcn', [] , ...

'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

% End initialization code - DO NOT EDIT

% --- Executes just before petunjuk is made visible.

function petunjuk_OpeningFcn(hObject, eventdata, handles, varargin)

% This function has no output args, see OutputFcn. % hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) % varargin command line arguments to petunjuk (see VARARGIN)

% Choose default command line output for petunjuk handles.output = hObject;

% Update handles structure guidata(hObject, handles);


(2)

% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes on button press in pushbutton2.

function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) menuUtama

close petunjuk

tentang program

function varargout = tentangProgram(varargin) % TENTANGPROGRAM M-file for tentangProgram.fig

% TENTANGPROGRAM, by itself, creates a new TENTANGPROGRAM or raises the existing

% singleton*. %

% H = TENTANGPROGRAM returns the handle to a new TENTANGPROGRAM or the handle to

% the existing singleton*. %

% TENTANGPROGRAM('CALLBACK',hObject,eventData,handles,...) calls the local

% function named CALLBACK in TENTANGPROGRAM.M with the given input arguments.

%

% TENTANGPROGRAM('Property','Value',...) creates a new TENTANGPROGRAM or raises the

% existing singleton*. Starting from the left, property value pairs are

% applied to the GUI before tentangProgram_OpeningFcn gets called. An

% unrecognized property name or invalid value makes property application

% stop. All inputs are passed to tentangProgram_OpeningFcn via varargin.


(3)

% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

% instance to run (singleton)". %

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help tentangProgram

% Last Modified by GUIDE v2.5 19-Oct-2010 23:30:12

% Begin initialization code - DO NOT EDIT gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @tentangProgram_OpeningFcn, ...

'gui_OutputFcn', @tentangProgram_OutputFcn, ...

'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

% End initialization code - DO NOT EDIT

% --- Executes just before tentangProgram is made visible.

function tentangProgram_OpeningFcn(hObject, eventdata, handles, varargin)

% This function has no output args, see OutputFcn. % hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) % varargin command line arguments to tentangProgram (see VARARGIN)

% Choose default command line output for tentangProgram handles.output = hObject;

% Update handles structure guidata(hObject, handles);

% UIWAIT makes tentangProgram wait for user response (see UIRESUME)


(4)

% hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure varargout{1} = handles.output;

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) menuUtama

close tentangProgram

14.

Profil

function varargout = profil(varargin) % PROFIL M-file for profil.fig

% PROFIL, by itself, creates a new PROFIL or raises the existing

% singleton*. %

% H = PROFIL returns the handle to a new PROFIL or the handle to

% the existing singleton*. %

% PROFIL('CALLBACK',hObject,eventData,handles,...) calls the local

% function named CALLBACK in PROFIL.M with the given input arguments.

%

% PROFIL('Property','Value',...) creates a new PROFIL or raises the

% existing singleton*. Starting from the left, property value pairs are

% applied to the GUI before profil_OpeningFcn gets called. An

% unrecognized property name or invalid value makes property application

% stop. All inputs are passed to profil_OpeningFcn via varargin.


(5)

% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one

% instance to run (singleton)". %

% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help profil

% Last Modified by GUIDE v2.5 19-Oct-2010 23:41:37

% Begin initialization code - DO NOT EDIT gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @profil_OpeningFcn, ... 'gui_OutputFcn', @profil_OutputFcn, ... 'gui_LayoutFcn', [] , ...

'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

% End initialization code - DO NOT EDIT

% --- Executes just before profil is made visible.

function profil_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn.

% hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) % varargin command line arguments to profil (see VARARGIN)

% Choose default command line output for profil handles.output = hObject;

% Update handles structure guidata(hObject, handles);

% UIWAIT makes profil wait for user response (see UIRESUME) % uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line. function varargout = profil_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure


(6)

varargout{1} = handles.output;

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) menuUtama