Sistem Pakar Mendiagnosa Gangguan Kelenjar Tiroid Menggunakan Metode Forward Chaining dan Dempster Shafer Berbasis Android
Listing Program
Menu Utama program
#Region Project Attributes
#ApplicationLabel: Gangguan Tiroid #VersionCode: 1
#VersionName:
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait #CanInstallToExternalStorage: False #End Region
#Region Activity Attributes #FullScreen: True
#IncludeTitle: False #End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules. End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module. Dim Latar As BitmapDrawable
Dim imgDiagnosa, imgTips, imgInfo, imgTentang, imgLogo As ImageView
End Sub
Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
'Activity.LoadLayout("Layout1") 'Inisialiasi Background
If File.Exists(File.DirAssets,"Latar.png") Then
Latar.Initialize(LoadBitmap(File.DirAssets,"Latar.png")) Activity.Background = Latar
Else
Msgbox("File Tidak Ada", "Peringatan") End If
'Inisialiasi Menu
If File.Exists(File.DirAssets,"Diagnosa.png")= True Then imgDiagnosa.Initialize("imgDiagnosa")
imgDiagnosa.Bitmap = LoadBitmap(File.DirAssets, "Diagnosa.png")
imgDiagnosa.Gravity = Gravity.FILL
Activity.AddView(imgDiagnosa, 5.5%x, 60%y, 26%x, 26%x) Else
(2)
Msgbox("File Not Found", "Warning") End If
If File.Exists(File.DirAssets,"Info.png")= True Then imgInfo.Initialize("imgInfo")
imgInfo.Bitmap = LoadBitmap(File.DirAssets, "Info.png") imgInfo.Gravity = Gravity.FILL
Activity.AddView(imgInfo, 37%x, 60%y, 26%x, 26%x) Else
Msgbox("File Not Found", "Warning") End If
If File.Exists(File.DirAssets,"Tips.png")= True Then imgTips.Initialize("imgTips")
imgTips.Bitmap = LoadBitmap(File.DirAssets, "Tips.png") imgTips.Gravity = Gravity.FILL
Activity.AddView(imgTips, 68.5%x, 60%y, 26%x, 26%x) Else
Msgbox("File Not Found", "Warning") End If
If File.Exists(File.DirAssets,"Tentang.png")= True Then imgTentang.Initialize("imgTentang")
imgTentang.Bitmap = LoadBitmap(File.DirAssets, "Tentang.png")
imgTentang.Gravity = Gravity.FILL
Activity.AddView(imgTentang, 15%x, 78%y, 70%x, 25%x) Else
Msgbox("File Not Found", "Warning") End If
End Sub
Menu Diagnosa
#Region Activity Attributes #FullScreen: True
#IncludeTitle: False #End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules. End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module. Dim TotalGejala As Int = 30
Dim Latar As BitmapDrawable Dim Posisi As Int
Dim G(TotalGejala) As Gejala Dim Bobot(TotalGejala) As Double Dim Jawaban(TotalGejala) As Int
Dim btnMaju, btnMundur, btnDiagnosa As Button Dim rdbYa, rdbTidak As RadioButton
(3)
Dim lblPertanyaan, lblHiper, lblHipo, lblKesimpulan As Label Dim txtBelHiper, txtPlaHiper As EditText
Dim txtBelHipo, txtPlaHipo As EditText End Sub
Sub Inisialisasi() Posisi = 0
G(0).Initialize("G01", "mudah lelah dan lesu", 0.2)
G(1).Initialize("G02", "otot keram dan lemah, khususnya kerja otot lengan dan kaki", 0.2)
G(2).Initialize("G03", "hiperkinesis seperti gelisah, cemas, lekas marah, emosional dan kebingungan", 0.4)
G(3).Initialize("G04", "rambut dan kuku mudah rontok/rapuh", 0.3)
G(4).Initialize("G05", "bengkak di leher atau kelenjar gondok membesar", 0.4)
' Hiper Tiroid
G(5).Initialize("G06", "nafsu makan meningkat", 0.2)
G(6).Initialize("G07", "sensitif terhadap panas(Palpitasi)", 0.2)
G(7).Initialize("G08", "jantung berdebar kencang dan cepat(Takikardia)", 0.3)
G(8).Initialize("G09", "banyak berkeringat / keringat berlebihan", 0.4)
G(9).Initialize("G10", "biasanya tangan bergetar terus(Tremor)", 0.4)
G(10).Initialize("G11", "frekuensi buang air besar yang sering(Diare)", 0.2)
G(11).Initialize("G12", "mata tampak melotot atau
menonjol(Exophthalmos)disertai penglihatan ganda dan kelopak mata tertarik", 0.6)
G(12).Initialize("G13", "mata membengkak, memerah dan sensitif terhadap cahaya", 0.5)
G(13).Initialize("G14", "gemetar, gugup dan gelisah", 0.3) G(14).Initialize("G15", "kulit lembab dan hangat", 0.2) G(15).Initialize("G16", "berat badan menurun", 0.2) ' Hipo Tiroid
G(16).Initialize("G17", "nafsu makan berkurang", 0.2)
G(17).Initialize("G18", "denyut nadi dan jantung melambat", 0.3)
G(18).Initialize("G19", "suhu tubuh rendah", 0.2) G(19).Initialize("G20", "kulit kasar dan kering", 0.2)
G(20).Initialize("G21", "sensitif terhadap udara dingin", 0.2) G(21).Initialize("G22", "kurang konsentrasi dan daya ingat lemah(Demensia)", 0.1)
G(22).Initialize("G23", "tekanan darah menurun", 0.2)
G(23).Initialize("G24", "mengalami gangguan cerna sembelit atau konstipasi", 0.2)
G(24).Initialize("G25", "wajah sembab dan bengkak", 0.5) G(25).Initialize("G26", "sendi nyeri dan kaku", 0.2) G(26).Initialize("G27", "berat badan meningkat", 0.2) G(27).Initialize("G28", "kelopak mata, tangan dan kaki membengkak", 0.6)
G(28).Initialize("G29", "penurunan kemampuan berbicara(seperti suara pelan dan parau, kadang cara bicara yang gagap)", 0.4)
G(29).Initialize("G30", "kelopak mata menurun", 0.4) End Sub
(4)
Sub Dempster_Shafer()
Dim mB1, mP1, mB2, mP2 As Double Dim Hiper, Hipo As Double
Dim Pecahan As Int = 10 ' Hipertiroid
mB1 = Bobot(0) 'G(0).Bel mP1 = 1 - mB1 'G(0).Pla
txtBelHiper.Text = "B : " & Round2(mB1,Pecahan) txtPlaHiper.Text = "P : " & Round2(mP1,Pecahan) Hiper = Round2(mB1,Pecahan)
' Hipotiroid mB1 = Bobot(0) mP1 = 1 - Bobot(0)
txtBelHipo.Text = "B : " & Round2(mB1, Pecahan) txtPlaHipo.Text = "P : " & Round2(mP1, Pecahan) Hipo = Round2(mB1,Pecahan)
If Hiper = 0 OR Hipo = 0 Then
lblKesimpulan.Text = lblKesimpulan.Text & "Tidak Menderita"
Else If Hiper > Hipo Then
lblKesimpulan.Text = lblKesimpulan.Text & "Kemungkinan menderita Hipertiroid"
Else
lblKesimpulan.Text = lblKesimpulan.Text & "kemungkinan menderita Hipotiroid"
End If End Sub
Sub TampilkanJawaban()
If Jawaban(Posisi) = 1 Then rdbYa.Checked = True Else
rdbTidak.Checked = True End If
End Sub
Sub SimpanJawaban()
If rdbYa.Checked = True Then Jawaban(Posisi) = 1
Bobot(Posisi) = G(Posisi).Bel Else
Jawaban(Posisi) = 0 Bobot(Posisi) = 0 End If
End Sub
Sub Pertanyaan()
lblPertanyaan.Text = "Pertanyaan Ke " & (Posisi + 1) & CRLF & CRLF & " Apakah " & G(Posisi).Keterangan & "?"
End Sub Sub Maju()
(5)
Posisi = Posisi + 1
If Posisi < TotalGejala Then Pertanyaan
TampilkanJawaban End If
If Posisi = TotalGejala Then btnMaju.Visible = False btnMundur.Visible = False rdbYa.Visible = False rdbTidak.Visible = False btnDiagnosa.Visible = True
lblPertanyaan.Text = "Silahkan tekan tombol Diagnosa untuk melihat hasil!"
End If End Sub Sub Mundur()
SimpanJawaban If Posisi > 0 Then
Posisi = Posisi - 1 Pertanyaan
End If
TampilkanJawaban End Sub
Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
'Activity.LoadLayout("Layout1") Inisialisasi
'Inisialiasi Background
If File.Exists(File.DirAssets,"Latar2.png") Then
Latar.Initialize(LoadBitmap(File.DirAssets,"Latar2.png")) Activity.Background = Latar
Else
Msgbox("File Tidak Ada", "Peringatan") End If
'Label Hiper
lblHiper.Initialize("")
lblHiper.Text = "Hiper Tiroid"
lblHiper.TextSize = 5%x 'GetDeviceLayoutValues.Width / 25 lblHiper.TextColor = Colors.Black
lblHiper.Visible = False
Activity.AddView(lblHiper, 15%x, 25%y, 70%x, 5%y) 'Label Hipo
lblHipo.Initialize("")
lblHipo.Text = "Hipo Tiroid"
lblHipo.TextSize = 5%x 'GetDeviceLayoutValues.Width / 25 lblHipo.TextColor = Colors.Black
lblHipo.Visible = False
Activity.AddView(lblHipo, 15%x, 45%y, 70%x, 5%y) 'Label Kesimpulan
lblKesimpulan.Initialize("")
(6)
lblKesimpulan.TextSize = 5%x 'GetDeviceLayoutValues.Width / 25 lblKesimpulan.TextColor = Colors.Black
lblKesimpulan.Visible = False
Activity.AddView(lblKesimpulan, 15%x, 72%y, 70%x, 5%y) 'Pertanyaan 1
lblPertanyaan.Initialize("")
lblPertanyaan.TextSize = 6%x 'GetDeviceLayoutValues.Width / 25 lblPertanyaan.TextColor = Colors.Black
lblPertanyaan.Gravity = Gravity.CENTER_HORIZONTAL Pertanyaan
Activity.AddView(lblPertanyaan, 15%x, 10%y, 70%x, 50%y) rdbYa.Initialize("")
rdbYa.TextSize = 6%x 'GetDeviceLayoutValues.Width / 25 rdbYa.TextColor = Colors.Black
rdbYa.Text = "Ya" rdbYa.Checked = True
Activity.AddView(rdbYa, 15%x, 55%y, 30%x, 10%y) rdbTidak.Initialize("")
rdbTidak.TextSize = 6%x 'GetDeviceLayoutValues.Width / 25 rdbTidak.TextColor = Colors.Black
rdbTidak.Text = "Tidak"
Activity.AddView(rdbTidak, 15%x, 65%y, 30%x, 10%y)
' Hasil Dempster Shafer txtBelHiper.Initialize("") txtBelHiper.Visible = False
txtBelHiper.TextSize = 5%x 'GetDeviceLayoutValues.Width / 30 txtBelHiper.TextColor = Colors.Black
Activity.AddView(txtBelHiper, 15%x, 30%y, 70%x, 8%y) txtBelHipo.Initialize("")
txtBelHipo.Visible = False
txtBelHipo.TextSize = 5%x 'GetDeviceLayoutValues.Width / 30 txtBelHipo.TextColor = Colors.Black
Activity.AddView(txtBelHipo, 15%x, 50%y, 70%x, 8%y) ' Tombol Maju & Mundur
btnMundur.Initialize("btnMundur") btnMundur.Text = "Mundur"
Activity.AddView(btnMundur, 10%x, 85%y, 35%x, 10%y) btnMaju.Initialize("btnMaju")
btnMaju.Text = "Maju"
Activity.AddView(btnMaju, 55%x, 85%y, 35%x, 10%y) ' Tombol Diagnosa
btnDiagnosa.Initialize("btnDiagnosa") btnDiagnosa.Text = "Diagnosa"
Activity.AddView(btnDiagnosa, 10%x, 85%y, 80%x, 10%y) btnDiagnosa.Visible = False
(7)
DAFTAR PUSTAKA
Arhami, M. 2005. Konsep dasar Sistem Pakar & Pengembangannya. Graha Ilmu: Yogyakarta.
Fowler, M. 2004. A brief Duide to the Standard Object Modeling Language. Penerbit Andi: Yogyakarta.
Hasan, M.Md. & Masaleno, A. 2012. African Trypanosomiasis Detection Using Dempster-Shafer Theory. Journal of Emerging Trends In Computing And
Information Sciences 3(4): 480-487.
Hasan, M.Md. & Masaleno, A. 2013. The Dempster-Shafer Theory Algorithm And Its Aplication To Insect Diseases Detection. Int. J. Of Advance Science And
Tecnology 50: 111-120.
Hartati, S. & Iswanti, S. 2008. Sistem Pakar & Pengembangannya. Graha Ilmu: Yogyakarta.
Jannah, M. 2011. Perancangan Sistem Pakar Untuk Mendiagnosa Penyakit Lambung Dengan Menggunakan Metode Dempster Shafer. Skripsi. Universitas Sumatera Utara.
Kusuma, S.D. 2003. Artificial Intelegence (Teknik dan Aplikasinya). Graha Ilmu: Yogyakarta.
Kusrini. 2006. Sistem Pakar Teori dan Aplikasinya. Penerbit Andi: Yogyakarta. Purnawan, A., Putra, D., & Setyarini, E. 2013. The Analysis of Comparison of Expert
System of Diagnosing Dog Disease by Certainty Factor Method and Dempster-Shafer Method. International Journal of Computer Science
Issues 10(1): 576-584.
Prijodiprojo, W. & Wahyuni, E.G. 2013. Prototype Sistem Pakar Untuk Mendeteksi Tingkat Resiko Penyakit Jantung Koroner Dengan Menggunakan Metode Dempster-Shafer (Studi Kasus: RS. PKU Muhammadiyah Yogyakarta).
IJCCS 7(2): 133-144.
Pressman, R.S. 2010. SOFTWARE ENGINEERING: A Practitioner ’s Approach, Seventh Edition. Mc Graw Hill Higher Education
Rickyanto, I. 2005. Dasar Pemograman Berorientasi Objek dengan Java 2 (JDK 1.4). Edisi II. Penerbit Andi: Yogyakarta.
(8)
Semiardji, G. 2003. Penyakit Kelenjar Tiroid Gejala Diagnosis dan Pengobatan. Balai Penerbit Fakultas Kedokteran Universitas Indonesia (FKUI): Jakarta.
Turban, E. 1995. Decision Support System and Expert System. Prentice Hall International Inc: USA.
Yarni, N. 2012. Sistem Pakar Penyakit Tulang Pada Manusia Menggunakan Metode Dempster-Shafer Berbasis WAP Dengan WML dan PHP. Skripsi. Universitas Bengkulu.
Anwar, R. 2005. Fungsi dan Kelainan Kelenjar Tiroid. (Online)
http://pustaka.unpad.ac.id/wpcontentupload/2010/05/fungidankelainankele njar.pdf ( diakses 20 Januari 2015).
Hidayat, R. 2013. Basic4Android. Published Rdm Sugang Prayitno. (Online) https://www.scribd.com (diakses 15 Agustus 2015).
Khannedy, E.K. 2013. Java Dasar. (Online) https://www. b5edbabc56750c0789c81a690a6f83bec7bf2426.googledrive.com/
pemogramanjavaaplication.pdf (diakses 25 Maret 2015)
Pratama, W. 2011. Tutorial Android Programming. (Online)
http://greenbel.wordpress.com (diakses 20 Maret 2015).
Sari, M.I. 2007. Hormon Tiroid. Fakultas Kedokteran Universitas Sumatera Utara.
(Online)http://repository.usu.ac.id/bitstream/123456789/1926/1/09E01868
.pdf (diakses 30 Desember 2015).
Sofyan, S. N. Siaran Pers PERKENI dan PT. MERCK Tbk Ingatkan Bahaya Tiroid. http://merck.co.id, 21 oktober 2012 (diakses 20 Januari 2015).
(9)
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Analisis sistem (Pressman, 2010) merupakan aktivitas untuk menemukan atau mengidentifikasikan terkait masalah yang terjadi pada sistem, kemudian berusaha mengevaluasi masalah yang terjadi, selanjutnya membuat model serta membuat spesifikasi sistem.
3.1.1. Definisi Lingkup
Tahapan ini mencakup berbagai kegiatan untuk merumuskan masalah dan ruang lingkup, mendefinisikan kemungkinan pemecahan masalah dan menilai kelayakan sistem tersebut. Diantaranya:
1. Problemstatement
Kelenjar tiroid mempunyai fungsi vital untuk mengatur metabolisme tubuh, namun jarang diperbincangkan dan belum mendapatkan perhatian khusus, serta dengan gejala yang juga samar-samar. Tidak heran banyak orang yang tidak menyadari mengalami ganggguan tiroid dan mengira terkena penyakit lain. Sehingga tidak jarang orang yang mengalami ganguan kelenjar tiroid berkonsultasi ke berbagai dokter sampai akhirnya mengetahui terkena gangguan tiroid. Maka dari itu dibuatlah sistem pakar untuk mendiagnosa gangguan kelenjar tiroid berbasis android, sehingga memudahkan masyarakat untuk mengetahui lebih awal mengenai gangguan nya, serta dapat digunakan kapan dan dimana saja menggunakan perangkat mobile.
(10)
2. Constrain
Gangguan fungsi tiroid yang dibahas adalah hipertiroidisme (kelebihan hormon tiroid) dan hipotiroidisme (kekurangan hormon tiroid) yang di diagnosa berdasarkan gejala yang sudah tampak dari kondisi fisik seseorang.
3. ScopeCreep
Persyaratan dan harapan peningkatan sistem pakar yaitu diharapkan dapat membantu masyarakat agar mengetahui seluk beluk gangguan kelenjar tiroid sehingga akan membantu proses komunikasi dengan pihak dokter ketika dibutuhkan penanganan lebih lanjut. Sistem pakar ditujukan untuk masyarakat untuk memberikan kemudahan mendeteksi gangguan tiroid secara dini dan tips penanganan awalnya, meningkatkan efisiensi dalam hal waktu dan biaya.
4. Statementofwork
Pembuatan sistem yang standar dapat memenuhi kebutuhan akan informasi yang berhubungan dengan kelenjar tiroid. Membuat sistem berbasis android
yang dapat digunakan di komputer ataupun di perangkat mobile sehingga mudah diakses kapanpun dan dimanapun.
3.1.2. Analisis Masalah
Dalam tahapan ini dilakukan penelitian untuk mengidentifikasi dan mengevaluasi permasalahan, hambatan-hambatan sehingga dapat dilakukan perbaikan. Kurangnya pengetahuan masyarakat akan kesehatan tiroid, sehingga perlu adanya sosialisasi pada masyarakat untuk menggunakan sistem. Sedikitnya ketersediaan pakar dibidangnya dengan kepakaran yang sangat sulit diekstrak, sehingga diperlukan sistem pakar, sebagai salah satu alternatif untuk mengetahui gangguan yang diderita pasien tanpa harus berkonsultasi ke dokter. Cara ini terjangkau bagi ekonomi masyarakat.
3.1.3. Analisis Kebutuhan
Langkah selanjutnya adalah mengidentifikasi analisis kebutuhan sistem pakar. Tujuan analisis ini adalah untuk menentukan fungsi-fungsi apa saja yang terdapat dalam sebuah sistem pakar. Analisis kebutuhan sistem ada dua, yaitu:
(11)
3.1.3.1. Analisis kebutuhan non fungsional
Di dalam kebutuhan non fungsional akan dipaparkan properti perilaku yang dimiliki oleh sistem. Mencakup analisis kebutuhan perangkat keras, analisis kebutuhan perangkat lunak, kebutuhan Informasi, kinerja.
a. Analisis perangkat keras (Hardware): Perangkat keras yang digunakan pada sistem pakar ini memiliki spesifikasi sebagai berikut: Processor Intel® Core™ i3-3110M, Hard Disk berkapasitas 500 GB, Memory berkapasitas 2 GB, DVD Room, Keyboard dan Modem.
b. Analisis Perangkat Lunak (Software): Sistem Operasi Windows 7, Basic sebagai bahasa pemrograman, Basic4Android sebagai IDE
c. Analisis Pengguna (User): Yang merupakan pengguna dari sistem ini adalah masyarakat pada umumnya.
3.1.3.2. Analisis kebutuhan fungsional
Didalam kebutuhan fungsional akan dipaparkan proses-proses apa saja yang nantinya dilakukan oleh sistem. Kebutuhan fungsional juga berisi informasi-informasi apa saja yang harus ada dan dihasilkan oleh sistem. Sistem pakar ini dibuat untuk memberikan pengetahuan diagnosa awal kepada pengguna tentang penyakit yang diderita terhadap suatu gejala sehingga diperoleh penanganan awal. Perancangan sistem ini meliputi:
a. Sistem mengadaptasi pemikiran pakar dalam mendiagnosa gangguan kelenjar tiroid yang dituangkan dalam suatu kaidah diagnosa.
b. Sistem menganalisa masukan pengguna dengan aturan metode forward
chaining yang ditetapkan.
c. Sistem dapat mengambil keputusan berdasarkan masukan dari pengguna. d. Sistem memberikan informasi berupa pengetahuan kepada pengguna
mengenai angka kemungkinan gangguan dalam yang diderita berdasarkan metode dempstershafer dari masukan gejala yang dialami.
e. Sistem dibuat dengan menggunakan bahasa pemrograman basic berbasis
(12)
3.2. Analisis data
3.2.1. Pengumpulan Data
Data yang diperoleh selama proses pengumpulan data terdiri dari data gejala, data penyakit, data hubungan gejala dan penyakit. Data tersebut diperoleh dari wawancara dengan pakar yang bersangkutan dan buku yang berhubungan dengan gangguan kelenjar tiroid.
1. Data gejala
Data gejala yang digunakan dalam sistem pakar gangguan kelenjar tiroid ini berjumlah 30 gejala. Adapun data gejala tersebut dapat dilihat pada tabel 3.1. dibawah ini:
Tabel 3.1. Daftar Gejala Kode
Gejala
Nama Gejala Nilai
Densitas
G1 Mudah lemah dan lesu 0,2
G2 Otot keram dan lemah, khususnya kerja otot lengan dan kaki 0,2 G3 Hiperkinesis (Seperti: Gelisah, cemas, lekas marah,
emosional, kebingungan)
0,4
G4 Rambut dan kuku mudah rontok/rapuh 0,3
G5 Bengkak di leher atau kelenjar leher membengkak 0,4
G6 Nafsu makan meningkat 0,2
G7 Sensitif terhadap panas (Palpitasi) 0,2
G8 Jantung berdebar kencang dan cepat (Takikardia) 0,3 G9 Banyak berkeringat atau keringan berlebihan 0,4 G10 Biasanya tangan bergetar terus (Tremor) 0,4 G11 Frekuensi buang air besar yang sering (Diare) 0,2 G12 Mata tampak melotot atau menonjol (Exophthalmos) disertai
penglihatan ganda
0,6
G13 Mata membengkak, memerah, dan sensitif terhadap cahaya 0,5
(13)
Kode Gejala
Nama Gejala Nilai
Densitas
G15 Kulit lembap dan hangat 0,2
G16 Berat badan menurun 0,2
G17 Nafsu makan berkurang 0,2
G18 Denyut nadi dan jantung melambat 0,3
G19 Suhu tubuh rendah 0,2
G20 Kulit kasar dan kering 0,2
G21 Sensitif terhadap udara dingin 0,2
G22 Kurang konsentrasi dan daya ingat lemah (Demensia) 0,1
G23 Tekanan darah menurun 0,2
G24 Mengalami gangguan cerna sembelit/konstipasi 0,2
G25 Wajah sembab dan bengkak 0,5
G26 Sendi nyeri dan kaku 0,2
G27 Berat badan meningkat 0,2
G28 Kelopak mata, tangan dan kaki membengkak 0,6 G29 Penurunan kemampuan berbicara (seperti suara pelan dan
parau, kadang cara bicara yang gagap)
0,4
G30 Kelopak mata menurun 0,4
2. Data Gangguan
Jumlah gangguan yang diolah dalam sistem pakar gangguan kelenjar tiroid ini ada 2 macam gangguan. Data penyakit ini dapat dilihat pada tabel 3.2. berikut:
Tabel 3.2. Daftar Nama Gangguan Kode Gangguan Nama Gangguan
P1 Hipertiroidisme
(14)
3. Basis Pengetahuan
Dari pengetahuan berupa gejala dan gangguan kelenjar tiorid, maka dapat dibuat basis pengetahuan berupa hubungan atau keterkaitan yang ada antara gejala dan gangguan. Basis pengetahuan tersebut dapat dilihat pada tabel 3.3. berikut ini:
Tabel 3.3. Tabel Keputusan Gangguan Kelenjar Tiroid Kode Gejala (G) Kode Gangguan (P)
P1 P2
G1 * *
G2 * *
G3 * *
G4 * *
G5 * *
G6 *
G7 *
G8 *
G9 *
G10 *
G11 *
G12 *
G13 *
G14 *
G15 *
G16 *
G17 *
G18 *
G19 *
G20 *
G21 *
G22 *
G23 *
G24 *
G25 *
G26 *
G27 *
G28 *
G29 *
G30 *
3. Basis Aturan
Untuk menghasilkan sistem pakar gangguan kelenjar tiroid yang baik diperlukan pembuatan basis pengetahuan dan basis aturan yang lengkap dan baik agar proses
(15)
inferensi berjalan dengan baik. Basis pengetahuan berupa hubungan gejala dan gangguan kelenjar tiroid. Basis pengetahuan dapat dilihat pada tabel sebelumnya, yaitu pada tabel 3.3. Basis aturan diambil dari basis pengetahuan yang ada kemudian disusun dalam bentuk aturan (rule) dengan menggunakan metode
forwardchaining. Aturan (rule) tersebut dapat dilihat pada tabel 3.4 berikut:
Tabel 3.4. Basis Aturan (Rule) Aturan (rule) Kaidah produksi
Rule 1
IF G1 AND G2 AND G3 AND G4 AND G5 AND G6 AND G7 AND G8 AND G9 AND G10 AND G11 AND G12 AND G13 AND G14 AND G15 AND G16
THEN P1
Rule 2
IF G1 AND G2 AND G3 AND G4 AND G5 AND G17 AND G18 AND G19 AND G20 AND G21 AND G22 AND G23 AND G24 AND G25 AND G26 AND G27 AND G28 AND G29 AND G30 THEN P2
4. Pohon keputusan (Decision tree)
Dari tabel aturan yang telah didapat, maka dapat terbentuk suatu pohon keputusan. Proses pencarian dari pohon keputusan menggunakan metode forward chaining. Pohon keputusan terdiri dari gejala, gangguan, dan busur yang menunjukkan hubungan antar objek. Pada gambar 3.1. berikut ini adalah gambar pohon keputusan yang terbentuk:
(16)
(17)
3.2.2. Flowchart Metode
Dalam perancangan sistem pakar ini menggunakan metode penalaran forward
chaining (pelacakan maju) yaitu dimulai dari sekumpulan fakta-fakta tentang suatu
gejala yang diberikan oleh user sebagai masukan ke dalam sistem, kemudian dilakukan perhitungan sampai tujuan akhir berupa diagnosa gangguan tiroid yang dialami dan nilai kepercayaannya. Pada gambar 3.2. berikut ini merupakan flowchart
(diagram alir) metode dempster shafer untuk menghitung nilai kepastian penyakit pada sistem pakar.
Gambar 3.2. Flowchart Metode Dempster Shafer Mulai Penyakit = tidak diketahui. Jawab Gejala i ? Gejala i (G1)
{m1(X)}
Selesai
Gejala i+1 (G2) {m2(Y)}
Jawab Gejala i +1 ?
Hitung densitas dengan rumus :
Densitas = {m3(Z)}
Jawab Gejala 3чi+1ш30 Max {m()} Penyakit =yang mempunyai nilai densitas terbesar Tidak Ya Tidak Tidak Ya Ya m1{ }=1-m1(X)
M2{ }=1-m2(Y)
M3{ }=1-m3(Z)
Gejala 3чi+1ш830 (G3) {m4(A)} M4{ }=1-m4(A)
(18)
Keterangan :
X,Y,Z,A = Himpunan penyakit i (iterasi) = Jumlah gejala m = Nilai densitas G = Jenis gejala
3.3. Perancangan Sistem
Perancangan sistem (Pressman, 2010) adalah langkah pertama dalam fase pengembangan rekayasa produk atau sistem. Perancangan merupakan analisis dari siklus pengembangan sistem yaitu pendefinisian dari kebutuhan-kebutahan fungsional dan persiapan untuk merancang bangun implementasi serta menggambarkan
bagaimana suatu sistem dibentuk. Perancangan dalam sistem pakar ini dibagi menjadi
dua bagian yaitu logicaldesign dan physicaldesign.
3.3.1. Logical Design
Logical design mentransformasikan kebutuhan-kebutuhan sistem dari fase analisis
kebutuhan kepada sistem model yang akan dibangun nantinya. Tahapan logicaldesign
bertujuan memberikan gambaran desain sistem yang akan dibangun. Tahapan ini merupakan sistem pemodelan dari kebutuhan sistem yang telah dijelaskan dalam bagian analisa kebutuhan. Pada tahap ini menggunakan diagram unified modeling
language (UML) antara lain use case diagram, activity diagram, dan sequence
diagram untuk mengetahui aliran data dan membuat efisiensi data lebih baik.
3.3.1.1. Use case diagram
Diagram ini digunakan untuk menggambarkan pengguna aplikasi dan perilaku pengguna terhadap aplikasi. Pada sistem pakar ini, pengguna aplikasi terdiri dari user.
User sebagai pengguna sistem yaitu masyarakat pada umumnya. Perilaku pengguna (user) adalah apa saja yang dapat dilakukan terhadap sistem. Adapun yang dapat dilakukan dalam sistem pakar ini adalah dapat dilihat lebih jelas pada Gambar 3.3 berikut ini:
(19)
Gambar 3.3. Use Case Diagram Sistem Pakar
Pada tabel 3.5. Berikut merupakan penjelasan Use case diagram pada gambar 3.3 diatas:
Tabel 3.5. Deskripsi Use Case Diagram Sistem Pakar Actor Nama Use Case Deskripsi Use Case
User Diagnosis Usecase berfungsi untuk mendiagnosa gangguan. Registrasi Use case berfungsi untuk input data user.
Pilih Gejala Usecase berfungsi untuk memilih gejala gangguan.
Info Usecase berfungsi untuk memberi informasi tentang gangguan tiroid.
Tips Usecase berfungsi untuk memberi informasi mengenai tips-tips awal untuk mengatasi gangguan tiroid.
Tentang Usecase berfungsi untuk memberi informasi mengenai sistem pakar.
(20)
3.3.1.2. Activity diagram
Activity diagram menggambarkan aliran aktivitas dalam perangkat lunak yang
dibangun, bagaimana masing-masing aliran berawal, keputusan yang mungkin terjadi, dan bagaimana mereka berakhir. Pada umumnya activity diagram tidak menampilkan secara detail urutan proses, namun hanya memberikan gambaran global bagaimana urutan prosesnya. Pada gambar 3.4. dibawah ini merupakan activity diagram sistem pakar.
Gambar 3.4. Activity Diagram Sistem Pakar
Pada gambar 3.4. Activity Diagram diatas, aktivitas yang dapat dilakukan user
adalah melihat informasi di menu info, menu tips, dan menu tentang. Melakukan diagnosis di menu diagnosis dengan cara registrasi terlebih dahulu lalu memilih gejala yang diderita, sampai pada akhir kesimpulan.
3.3.1.3. Sequence diagram
Sequence diagram digunakan untuk menggambarkan urutan-urutan kejadian atau
proses yang terjadi pada sistem. Pada gambar 3.5. Berikut adalah sequence diagram dari sistem pakar:
(21)
Gambar 3.5. Sequence Diagram Sistem Pakar
Sequence diagram pada gambar 3.5. diatas adalah proses user untuk
mendiagnosa gangguan tiroid, yaitu dengan cara user dapat memilih gejala-gejala yang diderita dan setelah itu data dikirim ke sistem untuk diproses dan mendapatkan hasil. Selain itu user dapat melihat menu Info, menu Tips dan menu Tentang pada sistem pakar.
3.3.2. Physical Design
Physical design mentransformasikan kebutuhan sistem yang di representasikan
sebagai logical design menjadi physicaldesign yang nantinya akan dijadikan sebagai acuan dalam membuat sistem yang akan dikembangkan. Perancangan dilakukan untuk menentukan hasil akhir dari perangkat lunak yang akan dibangun. Pada perancangan antarmuka ini, akan dibahas bagaimana perancangan tampilan sistem dan sub menu-menunya.
(22)
3.3.2.1. Struktur interface menu sistem
Struktur menu program dibuat untuk memberikan kemudahan dalam pembangunan sistem. Sehingga user dengan mudah mengetahui bagaimana urutan sistem bekerja, hingga sistem selesai. Pada gambar 3.6. Berikut adalah struktur menu sistem yang akan dibangun.
Gambar 3.6. Struktur Interface Menu Sistem
3.3.2.2. Perancangan interface menu sistem
Perancangan interface digunakan untuk menggambarkan aplikasi yang sebenarnya.
Interface atau antar muka merupakan tampilan dari suatu program aplikasi yang
berperan sebagai media komunikasi yang digunakan sebagai sarana berdialog antara sistem dengan user. Sistem yang akan dibangun diharapkan menyediakan interface
yang mudah dipahami dan digunakan oleh user.
1. Interface menu utama sistem
Rancangan Menu Utama merupakan tampilan yang pertama kali muncul saat sistem dijalankan. Pada form ini terdapat menu Diagnosis, Info, Tips dan Tentang. Rancangan Menu Utama ini berfungsi untuk menampilkan sub menu diagnosis, Tips, Info dan tentang seperti gambar 3.7. berikut ini.
(23)
Gambar 3.7. Interface Menu Utama Sistem
Pada gambar 3.7. terlihat rancangan menu utama untuk sistem pakar. Keterangan dari rancangan menu utama dapat dilihat pada tabel 3.6. berikut ini:
Tabel 3.6. Penjelasan Interface Menu Utama
No. objek Nama Objek Keterangan
1 Button image view Diagnosa Berisi tentang gejala-gejala gangguan
2 Buttonimage view Info Berisi keterangan tentang jenis gangguan
pada kelenjar tiroid.
3 Button image view Tips Berisi informasi berupa penanganan awal
gangguan tiroid.
4 Button image view Tentang menampilkan keterangan tentang sistem
2. Interface menu registrasi
Pada sub menu registrasi terdapat rancangan yang akan digunakan user untuk menginput data berupa nama dan umur, sebelum masuk ke menu diagnosis untuk menjawab pertanyaan yang diberikan oleh sistem.
1.
4.
(24)
Gambar.3.8. Interface Menu Registrasi
Pada gambar 3.8 terlihat rancangan menu registrasi sistem pakar. Keterangan dari rancangan menu registrasi dapat dilihat pada tabel 3.7. berikut ini:
Tabel 3.7. Penjelasan Interface Menu Registrasi
No. objek Nama Objek Keterangan
1 Label nama Berisi Nama
2 Label umur Berisi Umur
3 Edit text nama Isi nama User
4 Edit text umur Isi Umur User
5 Button image view Start Berfungsi untuk memulai diagnosa gangguan
3. Interface menu diagnosis
Rancangan ini adalah rancangan untuk melakukan konsultasi antara komputer dengan
User dalam mendiagnosa gangguan. Pada rancangan ini pengguna menjawab pertanyaan-pertanyaan dari sistem berdasarkan gejala yang ditemukan pada pasien. Pada tampilan ini terdapat tombol pilihan (option) yang mempunyai fungsi untuk menjawab pertayaan dari sistem, seperti gambar 3.9 berikut ini:
Start
(5)(3) (4)
Nama :
(1)(25)
Gambar 3.9. Interface Menu Diagnosis
Pada gambar 3.9. terlihat rancangan menu diagnosis untuk sistem pakar. Keterangan dari rancangan menu diagnosis dapat dilihat pada tabel 3.8. berikut ini:
Tabel 3.8. Penjelasan Interface Menu Diagnosis
No. objek Nama Objek Keterangan
1 Label judul pertanyaan Berisi urutan pertanyaan
2 Label pertanyaan Berisi pertanyaan gejala yang diajukan pada user
3 RadioButton ya digunakan apabila user setuju dengan pertanyaan
yang telah ditampilkan oleh sistem berdasarkan gejala yang sudah dimasukkan oleh seorang pakar.
4 Radio Button tidak digunakan apabila user tidak setuju dengan
pertanyaan yang telah ditampilkan oleh sistem.
5 Button imageview
mundur
digunakan untuk kembali ke pertanyaan sebelumnya.
6 Button image view maju digunakan untuk pertanyaan selanjutnya.
Pertanyaan ke …(1)
Ya (3)
Tidak (4)
Isi pertanyaan ? (2)
(26)
4. Interface menu hasil diagnosis
Rancangan menu hasil diagnosis ini akan tampil setelah user mengisi diagnosis dan menjawab pertanyaan-pertanyaan yang diberikan oleh sistem. Pada menu ini user
akan mengetahui gangguan yang dideritanya. Seperti pada gambar 3.10. berikut ini:
Gambar 3.10. Interface Menu Hasil Diagnosis
Pada gambar 3.10. terlihat rancangan menu hasil diagnosis, Keterangan dari rancangan menu hasil diagnosis dapat dilihat pada tabel 3.9. berikut ini:
Tabel 3.9. Penjelasan Interface Menu Hasil Diagnosis
No. objek Nama Objek Keterangan
1 Label judul Berisi judul hasil diagnosis
2 Label nama berisi nama
3 Label umur Berisi umur
Keluar (14) (5)
(4)
Nama : (2)
Umur : (3)
Hasil Diagnosis (1)
Hipertiroid : (6)
B : (7)
P : (8)
B : (10)
P : (11)
Hipotiroid : (9)
(27)
No. objek Nama Objek Keterangan
4 Edit Text nama Menampilkan nama yang sudah diisi saat registrasi
5 Edit Text Umur Menampilkan umur yang sudah diisi saat registrasi
6 Label Hiper berisi hipertiroid
7 Edit Text BelHiper Menampilkan nilai belief hipertiroid
8 Edit Text PlaHiper Menampilkan nilai plausibility hipertiroid
9 Label Hipo berisi hipotiroid
10 Edit Text BelHipo Menampilkan nilai belief hipotiroid
11 Edit Text PlaHipo Menampilkan nilai plausibility hipotiroid
12 Label kesimpulan Berisi kesimpulan
13 Edit Text kesimpulan Menampilkan kesimpulan gangguan yang diderita
14 Button keluar Kembali ke menu utama
5. Interface menu info, Tips, dan Tentang
Pada sub menu info, Tips dan Tentang merupakan rancangan yang berfungsi untuk menampilkan keterangan yang berisi informasi-informasi mengenai jenis gangguan, penanganan awal pada kelenjar tiroid dan tentang aplikasi sistem pakar. Rancangan Info, Tips dan tentang memiliki satu tombol yaitu tombol Keluar.
Gambar 3.11. Interface Menu Info, Tips, dan Tentang
(28)
Pada gambar 3.11. terlihat rancangan menu info, tips dan tentang, Keterangan dari rancangan menu menu info, tips dan tentang dapat dilihat pada tabel 3.10. berikut ini:
Tabel 3.10. Penjelasan Interface Menu Info, Tips, dan Tentang
No. objek Nama Objek Keterangan
1 Label keterangan Berisi informasi
(29)
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1. Implementasi Sistem
Implementasi sistem adalah prosedur yang dilakukan untuk menyelesaikan desain sistem yang ada di dalam dokumen sistem yang disetujui dan menguji, menginstal serta memulai menggunakan sistem yang baru atau sistem yang diperbaiki. Dengan kata lain, tahapan ini merupakan kelanjutan dari tahapan perancangan dimana rancangan sistem yang telah dibuat diwujud nyatakan dalam bahasa pemrograman. Dalam bab ini akan dijelaskan form-form hasil implementasi sistem pakar mendiagnosa gangguan tiroid.
Adapun hasil implementasi form yang telah dirancang pada sistem sebagai berikut:
4.1.1. Menu Utama
Menu Utama adalah menu yang pertama kali terlihat ketika program digunakan oleh
user. Menu utama ini terdiri dari menu Diagnosis, menu Tips, menu Info dan menu Tentang. Tampilan halaman utama pada sistem ini seperti yang terlihat pada gambar 4.1. berikut ini:
(30)
Gambar 4.1. Menu Utama Program
4.1.2. Menu Diagnosis
Menu diagnosa merupakan halaman inti dari sistem pakar mendiagnosa gangguan tiroid. Menu ini digunakan untuk melakukan diagnosis berdasarkan gejala yang dirasakan oleh user. Sebelum melakukan diagnosis, user diwajibkan melakukan registrasi. Menu registrasi digunakan untuk melakukan pendaftaran jika seseorang akan melakukan diagnosis gangguan. Setelah melakukan registrasi, Sistem pakar akan menampilkan pertanyaan dari gejala yang ada pada setiap penelusuran berupa pertanyaan.
User diharuskan untuk memilih gejala dengan memilih jawaban Ya jika mengalami gejala dan jawaban Tidak jika tidak mengalami gejala tersebut. Kemudian memilih tombol maju untuk memilih gejala berikutnya dan tombol mundur untuk melihat pertanyaan sebelumnya. Hasil diagnosis yang diperoleh tersebut didapatkan dari hasil penelusuran terhadap jenis penyakit berdasarkan gejala yang dipilih oleh
user dengan menggunakan metode dempster shafer. Contoh proses diagnosa dapat yang dapat dipilih oleh user dan kesimpulan akhir penelusuran (hasil diagnosa) dilihat pada langkah-langkah gambar 4.2 sampai gambar 4.5 berikut ini:
(31)
Gambar 4.2. Menu Registrasi
(32)
Gambar 4.4. Menu Konfirmasi Diagnosa
(33)
4.1.3. Menu Tips
Dalam menu ini user akan memperoleh informasi mengenai tips-tips kesehatan untuk penanganan awal terhadap gangguan tiroid yang telah didiagnosa oleh Sistem Pakar Diagnosis Gangguan kelenjar tiroid. Tampilan halaman utama pada sistem ini seperti yang terlihat pada gambar 4.6. berikut ini:
Gambar 4.6. Menu Tips
4.1.4. Menu Info
Dalam menu ini user akan memperoleh informasi mengenai jenis gangguan yang dapat didiagnosa oleh sistem pakar diagnosis gangguan tiroid. Tampilan halaman utama pada sistem ini seperti yang terlihat pada gambar 4.7. berikut ini:
(34)
Gambar 4.7. Menu Info
4.1.5. Menu Tentang Saya
Dalam menu ini user akan memperoleh informasi mengenai penulis yang membuat sistem sistem pakar diagnosis gangguan tiroid. Tampilan halaman utama pada sistem ini seperti yang terlihat pada gambar 4.8. berikut ini:
(35)
4.2. Pengujian Sistem
Tahapan pengujian program dilakukan untuk menguji hasil diagnosis sistem dengan hasil diagnosis yang diperoleh dengan perhitungan manual dengan menggunakan metode dempster shafer. Hasil diagnosis sistem kemudian dibandingkan dengan hasil diagnosis yang diperoleh dengan perhitungan manual.
Pada proses diagnosa, sistem akan melakukan proses diagnosa berdasarkan urutan pertanyaan yang ditanyakan sistem kepada user sesuai dengan aturan (rule)
forward chaining. Jika user telah selesai memilih gejala-gejala, maka sistem akan
menghitung nilai kepercayaan gejala menggunakan metode dempster Shafer. Misalkan pada proses diagnosa, user memasukkan data keluhan (gejala) berupa:
1. Mudah lemah dan lesu (G1)
2. Otot keram dan lemah, khususnya kerja otot lengan dan kaki (G2) 3. Nafsu makan meningkat (G6)
4. Banyak berkeringat atau keringan berlebihan (G9) 5. Gemetar, gugup dan gelisah (G14)
6. Denyut nadi dan jantung melambat (G18) 7. Suhu tubuh rendah (G19)
8. Mengalami gangguan cerna sembelit/konstipasi (G24) 9. Sendi nyeri dan kaku (G26)
10.Penurunan kemampuan berbicara (seperti suara pelan dan parau, kadang cara bicara yang gagap) (G29)
Perhitungan manual gejala gangguan tiroid dibedakan menjadi dua yaitu hipertiroid dan hipotiroid, hal ini dikarenakan untuk memudahkan sistem dalam menghitung nilai densitas. Maka perhitungan manualnya sebagai berikut:
4.2.1. Perhitungan Manual Hipertiroid
Gejala Mudah lemah dan lesu (G1), Otot keram dan lemah, khususnya kerja otot lengan dan kaki (G2), Nafsu makan meningkat (G6), Banyak berkeringat atau keringan berlebihan (G9), dan Gemetar, gugup dan gelisah (G14) merupakan gejala gangguan hipertiroid yang dikodekan menjadi {P1}. Untuk perhitungannya, pertama
(36)
cari nilai ketidakpastian masing-masing gejala yang dinotasikan dengan m(θ) dengan cara melakukan pengurangan dari nilai kepastian, setelah itu hitung nilai densitas baru dengan mengkombinasikan gejala dengan rumus dempster shafer. Lakukan perhitungan untuk masing-masing gejala, maka perhitungannya sebagai berikut:
a. Gejala pertama (m1)
Hitung nilai ketidakpastian :
m1 {P1} = 0,2 nilai kepastian gejala pertama
m1 { } = 1- m1 {P1} = 1 - 0,2 = 0,8
b. Gejala kedua (m2)
Hitung nilai ketidakpastian :
m2 {P1} = 0,2 nilai kepastian gejala kedua
m2 { } = 1- m2 {P1} = 1 - 0,2= 0,8
c. Hitung kombinasi nilai densitas m1 dan m2
Perhitungan nilai kombinasi antara G1 dan G2 disajikan ke dalam bentuk baris dan kolom. Pertemuan antara baris dan kolom menunjukkan himpunan penyakit tersebut yang dapat dilihat pada tabel 4.1. berikut:
Tabel 4.1. Hasil kombinasi dari m1 dan m2
{P1} 0,2 0,8
{P1} 0,2 {P1} 0,04 {P1} 0,16
0,8 {P1} 0,16 0,64
Pencarian m3 menggunakan rumus (2.4) di bawah ini:
(37)
d. Gejala keenam (m3)
Hitung nilai ketidakpastian : m3 {P1} = 0,2
m3 { } = 1- m3 {P1} = 1 – 0,2 = 0,8
e. Hitung kombinasi nilai densitas dan m3
Perhitungan kombinasi nilai densitas dan m3 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.2. berikut:
Tabel 4.2. Hasil kombinasi dari dan m3
{P1} 0,2 0,8
{P1} 0,36 {P1} 0,072 {P1} 0,288
0,64 {P1} 0,128 0,512
Maka adalah :
f. Gejala kesembilan (m4)
Hitung nilai ketidakpastian : m4 {P1} = 0,4
m4 { } = 1- m4 {P1} = 1 – 0,4 = 0,6
g. Hitung kombinasi nilai densitas dan m4
Perhitungan kombinasi nilai densitas dan m4 menghasilkan nilai densitas baru
(38)
Tabel 4.3. Hasil kombinasi dari dan m4
{P1} 0,4 0,6
{P1} 0,488 {P1} 0,1952 {P1} 0,2928
0,512 {P1} 0,2048 0,3072
Maka adalah :
h. Gejala keempat belas (m5)
Hitung nilai ketidakpastian : m5 {P1} = 0,3
m5 { } = 1- m5 {P1} = 1 – 0,3 = 0,7
i. Hitung kombinasi nilai densitas dan m5
Perhitungan kombinasi nilai densitas dan m5 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.4. berikut:
Tabel 4.4. Hasil kombinasi dari dan m5
{P1} 0,3 0,7
{P1} 0,6928 {P1} 0,20784 {P1} 0,48496
0,3072 {P1} 0,09216 0,21504
(39)
4.2.2. Perhitungan Manual Hipotiroid
Gejala Mudah lemah dan lesu (G1), Otot keram dan lemah, khususnya kerja otot lengan dan kaki (G2), Denyut nadi dan jantung melambat (G18), Suhu tubuh rendah (G19), Mengalami gangguan cerna sembelit/konstipasi (G24), Sendi nyeri dan kaku (G26), Penurunan kemampuan berbicara (seperti suara pelan dan parau, kadang cara bicara yang gagap) (G29) merupakan gejala gangguan Hipotiroid yang dikodekan menjadi {P2}. Untuk perhitungannya, pertama cari nilai ketidakpastian masing-masing gejala yang dinotasikan dengan m(θ) dengan cara melakukan pengurangan dari nilai kepastian, setelah itu Hitung nilai densitas baru dengan mengkombinasikan gejala dengan rumus dempster shafer. Lakukan perhitungan untuk masing-masing gejala, maka perhitungannya sebagai berikut:
a. Gejala pertama (m1)
Hitung nilai ketidakpastian :
m1 {P2} = 0,2 nilai kepastian gejala pertama
m1 { } = 1- m1 {P1} = 1 - 0,2 = 0,8
b. Gejala kedua (m2)
Hitung nilai ketidakpastian :
m2 {P2} = 0,2 nilai kepastian gejala kedua
m2 { } = 1- m2 {P1} = 1 - 0,2= 0,8
c. Hitung kombinasi nilai densitas m1 dan m2
Perhitungan nilai kombinasi antara G1 dan G2 disajikan ke dalam bentuk baris dan kolom. Pertemuan antara baris dan kolom menunjukkan himpunan penyakit tersebut yang dapat dilihat pada tabel 4.5. berikut:
Tabel 4.5. Hasil kombinasi dari m1 dan m2
{P2} 0,2 0,8
{P2} 0,2 {P2} 0,04 {P2} 0,16
(40)
Maka adalah :
d. Gejala kedelapan belas (m3)
Hitung nilai ketidakpastian : m3 {P2} = 0,3
m3 { } = 1- m3 {P2} = 1 – 0,3 = 0,7
e. Hitung kombinasi nilai densitas dan m3
Perhitungan kombinasi nilai densitas dan m3 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.6. berikut:
Tabel 4.6. Hasil kombinasi dari dan m3
{P2} 0,3 0,7
{P2} 0,36 {P2} 0,108 {P2} 0,252
0,64 {P2} 0,192 0,448
Maka adalah :
f. Gejala kesembilan belas (m4)
Hitung nilai ketidakpastian : m4 {P2} = 0,2
(41)
g. Hitung kombinasi nilai densitas dan m4
Perhitungan kombinasi nilai densitas dan m4 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.7. berikut:
Tabel 4.7. Hasil kombinasi dari dan m4
{P2} 0,2 0,8
{P2} 0,552 {P2} 0,1104 {P2} 0,4416
0,488 {P2 } 0,0896 0,3584
Maka adalah :
h. Gejala kedua puluh empat (m5)
Hitung nilai ketidakpastian : m5 {P2} = 0,2
m5 { } = 1- m5 {P2} = 1 – 0,2 = 0,8
i. Hitung kombinasi nilai densitas dan m5
Perhitungan kombinasi nilai densitas dan m5 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.8. berikut:
Tabel 4.8. Hasil kombinasi dari dan m5
{P2} 0,2 0,8
{P2} 0,6416 {P2} 0,12832 {P2} 0,51328
0,3584 {P2 } 0,07168 0,28672
(42)
j. Gejala kedua puluh enam (m6)
Hitung nilai ketidakpastian : m6 {P2} = 0,2
m6 { } = 1- m6 {P2} = 1 – 0,2 = 0,8
k. Hitung kombinasi nilai densitas dan m6
Perhitungan kombinasi nilai densitas dan m6 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.9. berikut:
Tabel 4.9. Hasil kombinasi dari dan m6
{P2} 0,2 0,8
{P2} 0,71328 {P2} 0,142656 {P2} 0,570624
0,28672 {P2 } 0,057344 0,229376
Maka adalah :
l. Gejala kedua puluh Sembilan (m7)
Hitung nilai ketidakpastian : m7 {P2} = 0,4
m7 { } = 1- m7 {P2} = 1 – 0,4 = 0,6
(43)
Perhitungan kombinasi nilai densitas dan m7 menghasilkan nilai densitas baru
yang dapat dilihat pada tabel 4.10. berikut:
Tabel 4.10. Hasil kombinasi dari dan m7
{P2} 0,2 0,8
{P2} 0,770624 {P2} 0,3082496 {P2} 0,4623744
0,229376 {P2 } 0,0917504 0,1376256
Maka m71 adalah :
4.2.3. Perhitungan Dengan Sistem
Berdasarkan hasil perhitungan sistem dari gejala yang dipilih user sebelumnya, dapat disimpulkan bahwa kemungkinan gangguan yang dialami oleh user adalah hipotiroid, karena hipotiroid mempunyai nilai densitas tertinggi yaitu 0,8623744. Hasil perhitungan menggunakan sistem dapat dilihat pada gambar 4.9 di bawah ini:
(44)
Gambar 4.9. Hasil Diagnosa
Berdasarkan perhitungan manual sebelumnya, maka dapat disimpulkan bahwa gangguan yang diderita oleh user kemungkinan adalah hipotiroid, karena hipotiroid mempunyai nilai densitas tertinggi. Hasil perhitungan manual yang didapat adalah sebagai berikut :
Hipertiroid : Hipotiroid :
m51{P1} = 0,78496 m71{P1} = 0,8623744
Dari hasil perhitungan manual dan perhitungan sistem terbukti bahwa hasil diagnosa yang diperoleh adalah sama, yaitu berupa nilai densitas dan kemungkinan gangguan yang diderita.
(45)
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan penulisan skripsi ini dengan adanya sistem pakar untuk mendiagnosa gangguan kelenja tiroid, dapat disimpulkan bahwa:
1. Dalam mendiagnosa gangguan kelenjar tiroid dilakukan dengan cara memberikan pertanyaan berupa gejala-gejala fisik gangguan yang membutuhkan jawaban ya atau tidak untuk proses perhitungan kemudian dari hasil perhitungan didapatkan hasil untuk menentukan kesimpulan.
2. Dengan pemanfaatan metode forward chaining dan dempster shafer dalam pembuatan sistem pakar memperkuat diagnosa yang dihasilkan karena sistem tidak hanya bertumpu pada rule, tetapi mempunyai nilai sehingga tingkat kepercayaan lebih akurat.
3. Dengan adanya aplikasi sistem pakar mendiagnosa gangguan kelenjar tiroid ini maka user mendapatkan informasi mengenai gangguan tiroid dan dapat memeriksa gangguan tiroid sedari dini.
4. Sistem pakar ini dikategorikan user friendly karena User dapat menggunakan sistem ini dengan mudah untuk mengetahui hasil diagnosis gangguan tiroid serta sistem pakar yang ber-platform android pada sistem operasi telepon selular sehingga fleksibel dan bisa dibawa kemana saja.
(46)
5.2 Saran
Adapun saran-saran yang dapat disampaikan dari hasil penyelesaian skripsi ini adalah sebagai berikut :
1. Dalam penelitian lebih lanjut diharapkan dapat mengunakan metode yang berbeda misalnya menggunakan metode Bayes, atau Certainty Factor (CF), serta bisa membandingkan efisiensi serta akurasi dengan metode dempstershafer.
2. Dalam pengembangan data kedepan diharapkan agar sebaiknya dilakukan penambahan data berupa quisioner sehingga data lebih akurat.
3. Fasilitas yang diberikan oleh sistem sebaiknya ditambah lagi misalnya dengan adanya form konsultasi antara pasien dengan pakar.
(47)
BAB 2
LANDASAN TEORI
2.1. 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. Seorang pakar adalah orang memiliki keahlian dalam bidang tertentu, yaitu pakar yang mempunyai pengetahuan atau kemampuan khusus yang orang lain tidak mengetahui atau mampu dalam bidang yang dimilikinya. Dengan sistem pakar ini, orang biasa pun dapat meyelesaikan masalah yang cukup rumit yang sebenarnya hanya dapat diselesaikan dengan bantuan para pakar. Ada beberapa definisi tentang sistem pakar (Hartati & Iswanti 2008), antara lain:
1. Menurut Giarratano & Riley: Sistem pakar merupakan cabang dari kecerdasan buatan (Artificial Intelegence) yang menggunakan pengetahuan-pengetahuan khusus yang dimiliki oleh seseorang ahli untuk menyelesaikan suatu masalah tertentu.
2. Menurut Ignizio: Sistem pakar adalah suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar.
3. Menurut Martin dan Oxman: Sistem pakar adalah sistem berbasis komputer yang menggunakan pengetahuan, fakta, dan teknik penalaran dalam memecahkan masalah, yang biasanya hanya dapat diselesaikan oleh seorang pakar dalam bidang tertentu.
(48)
2.1.1. Arsitektur dan Komponen Sistem Pakar
Sistem pakar disusun oleh dua bagian utama, yaitu lingkungan pengembangan
(development environment) dan lingkungan konsultasi (consultation environment)
(Turban, 1995). Lingkungan pengembangan digunakan untuk memasukkan pengetahuan pakar ke dalam sistem pakar, sedangkan lingkungan konsultasi digunakan untuk pengguna sistem pakar. Komponen-komponen sistem pakar pada dua bagian tersebut dapat dilihat pada gambar 2.1. berikut ini:
Gambar 2.1. Arsitektur Sistem Pakar (sumber: Turban, 1995)
Menurut Giarratano dan Riley dalam (Hartati & Iswanti 2008) Untuk membangun sistem pakar diperlukan komponen-komponen yang harus dimiliki yaitu sebagai berikut:
1. Antar muka pengguna (Userinterface) 2. Basis pengetahuan (Knowlegdebase) 3. Mesin inferensi (Inferencemachine) 4. Memori kerja (Workingmemory)
(49)
Sedangkan untuk menjadikan sistem pakar lebih menyerupai seorang pakar yang berinteraksi dengan pemakai, maka dilengkapi dengan fasilitas berikut:
1. Fasilitas penjelasan (Explanationfacility)
2. Fasilitas akuisisi pengetahuan (Knowledgeacquisitionfacility)
Penjelasan masing-masing komponen-komponen sistem pakar tersebut adalah sebagai berikut (Hartati & Iswanti 2008):
1. Antar muka pengguna (User interface) adalah komunikasi antara sistem dan pemakainya yang menggantikan seorang pakar.
2. Basis pengetahuan (Knowlegde base) adalah kumpulan pengetahuan bidang tertentu pada tingkatan pakar pada format tertentu.
3. Mesin inferensi (Inference machine) adalah otak dari sistem pakar, berupa perangkat lunak yang melakukan tugas inferensi penalaran sistem pakar, biasa dikatakan sebagai mesin pemikir (Thingkingmachine).
4. Memori kerja (Working memory) adalah bagian dari sistem pakar yang menyimpan fakta yang diperoleh saat dilakukan proses konsultasi.
5. Fasilitas penjelasan (Explanation facility) adalah informasi yang diberikan kepada pemakai mengenai jalannya penalaran sehingga dihasilkan suatu keputusan.
6. Fasilitas akuisisi pengetahuan (Knowledge acquisition facility) adalah pengetahuan pada sistem pakar yang diperoleh atau saat pengetahuan yang sudah ada tidak berlaku lagi.
2.1.2. Ciri-Ciri Sistem Pakar
Sistem pakar merupakan program-program praktis yang menggunakan strategi heuristik yang dikembangkan oleh manusia untuk menyelesaikan permasalahan-permasalahan yang spesifik (khusus), disebabkan oleh keheuristikannya dan sifatnya yang berdasarkan pada pengetahuan sehingga umumnya sistem pakar mempunyai ciri-ciri sebagai berikut (Turban, 1995):
1. Terbatas pada domain keahlian tertentu. 2. Berdasarkan pada kaidah/rule tertentu.
(50)
4. Mudah dimodifikasi, yaitu dengan menambah atau menghapus suatu kemampuan dari basis pengetahuannya.
5. Sistem dapat mengaktifkan kaidah secara searah yang sesuai, dituntun oleh dialog dengan pemakai.
2.1.3. Manfaat dan Kelemahan Sistem Pakar
Secara garis besar, banyak manfaat yang dapat diambil dengan adanya sistem pakar, antara lain ( Kusuma, 2003):
1. Membuat seorang yang awam bekerja seperti layaknya seorang pakar.
2. Meningkatkan produktivitas akibat meningkatnya kualitas hasil pekerjaan, meningkatnya kualitas pekerjaan ini disebabkan meningkatnya efisiensi kerja. 3. Menghemat waktu kerja.
4. Menyederhanakan pekerjaan.
5. Merupakan arsip terpercaya dari sebuah keahlian, sehingga bagi pemakai sistem pakar seolah-olah berkonsultasi langsung dengan sang pakar, meskipun mungkin sang pakar telah tiada.
6. Memperluas jangkauan, dari keahlian seorang pakar. Di mana sebuah sistem pakar yang telah disahkan, akan sama saja artinya dengan seorang pakar yang tersedia dalam jumlah besar (dapat diperbanyak dengan kemampuan yang persis sama), dapat diperoleh dan dipakai di mana saja.
Di samping memiliki beberapa manfaat, sistem pakar juga memiliki beberapa kelemahan, antara lain ( Kusuma, 2003):
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.1.4. Representasi Pengetahuan
Representasi pengetahuan merupakan metode yang digunakan untuk mengkodekan pengetahuan dalam sebuah sistem pakar yang berbasis pengetahuan. Perepresentasian dimaksudkan untuk menangkap sifat-sifat penting masalah dan membuat informasi itu
(51)
dapat diakses oleh prosedur pemecahan masalah (Kusrini, 2006). Beberapa model representasi pengetahuan yang penting (Kusrini, 2006) adalah:
1. Logika (logic) yaitu Logika merupakan suatu pengkajian ilmiah tentang serangkaian penalaran, sistem kaidah, dan prosedur yang membantu proses penalaran. Bentuk logika komputasional ada dua macam yaitu logika proposional dan predikat.
2. Jaringan semantik (Semantic nets) yaitu Representasi jaringan semantik merupakan penggambaran grafis dari pengetahuan yang memperlihatkan hubungan hirarkis dari objek-objek yang terdiri atas simpul (node) dan penghubung (link).
3. Object-Atributte-Value (OAV) yaitu Objek dapat berupa bentuk fisik atau
konsep, Atribut adalah karakteristik atau sifat dari objek tersebut, Value (nilai besaran spesifik dari atribut tersebut yang berupa numeric, string atau
boolean).
4. Bingkai ( Frame) yaitu Bingkai berupa ruang (slots) yang berisi atribut untuk mendeskripsikan pengetahuan yang berupa kejadian. Bingkai memuat deskripsi sebuah objek dengan menggunakan tabulasi informasi yang berhubungan dengan objek.
5. Kaidah Produksi (Production rule) yaitu Kaidah menyediakan cara formal untuk merepresentasikan rekomendasi, arahan, atau strategi dalam bentuk jika-maka (If-Then) yang menghubungkan anteseden dengan konsekuensi.
2.1.5. Metode Inferensi
Bagian mesin inferensi merupakan bagian yang mengatur proses penalaran sistem yang digunakan oleh seorang pakar serta mengarahkannya menuju solusi yang terbaik yang dapat dilakukan berdasarkan basis pengetahuan. Metode inferensi (Hartati & Iswanti 2008 ) antara lain:
1. Pelacakan ke depan (Forwardchaining)
Pada metode forward chaining merupakan proses perunutan yang dimulai dengan menampilkan kumpulan data atau fakta yang meyakinkan menuju akhir konklusi. Forward chaining disebut juga pencarian yang di motori data (data
(52)
dahulu kemudian menuju konklusi atau derived information (then) atau dapat dimodelkan sebagai berikut:
IF (informasi masukan) THEN (konklusi)
Proses pelacakan pada forward chaining dapat ditunjukkan oleh gambar 2.2. berikut ini:
Gambar 2.2. Proses Forward Chaining (Sumber: Arhami, 2005)
2. Pelacakan ke belakang (Backwardchaining)
Runut balik merupakan proses perunutan yang merupakan kebalikan dari runut maju. Proses penalaran runut balik dimulai dengan tujuan/goal kemudian merunut balik kejalur yang akan mengarahkan ke goal tersebut, mencari bukti-bukti bahwa bagian kondisi terpenuhi. Jadi secara umum runut balik itu diaplikasikan ketika tujuan atau hipotesis yang dipilih itu sebagai titik awal penyelesaian masalah. Disebut juga goal-driven search. Runut balik dimodelkan sebagai berikut:
TUJUAN, IF (kondisi)
Proses pelacakan pada backward chaining dapat ditunjukkan oleh gambar 2.3. berikut ini:
(53)
Gambar 2.3. Proses Backward Chaining (Sumber : Arhami, 2005)
2.2. Algoritma Dempster Shafer
Teori dempster shafer (Jannah, 2011) adalah suatu teori matematika untuk pembuktian berdasarkan belieffunctions and plausiblereasoning (fungsi kepercayaan dan pemikiran yang masuk akal), yang digunakan untuk mengkombinasikan potongan informasi yang terpisah (bukti) untuk mengkalkulasi kemungkinan dari suatu peristiwa. Teori ini dikembangkan oleh Arthur P. Dempster dan Glenn Shafer merupakan metode penalaran non monotonis yang digunakan untuk mencari ketidak konsistenan akibat adanya penambahan maupun pengurangan fakta baru yang akan merubah aturan yang ada. Secara umum teori dempster shafer ditulis dalam suatu interval (Kusuma, 2003) :
[Belief, Plausibility]
1. Belief (Bel) adalah ukuran kekuatan evidence (bukti) dalam mendukung suatu
himpunan proposisi. Jika bernilai 0 maka mengindikasikan bahwa tidak ada
evidence, dan jika bernilai 1 menunjukkan adanya kepastian. Dimana nilai
belief (Bel) yaitu (0-0.9).
2. Plausibility (Pls) akan mengurangi tingkat kepastian dari evidence. Plausibility
bernilai 0 sampai 1. Jika yakin akan X, maka dapat dikatakan bahwa Bel(X) = 1, sehingga nilai dari Pls(X) = 0.
(54)
Menurut Giarratano dan Riley dalam (Prijodiprojo & Wahyuni, 2013 ) fungsi
belief dapat diformulasikan dan ditunjukkan pada persamaan (2.1):
……….... (2.1)
Dan Plausibility dinotasikan pada persamaan (2.2):
………... (2.2)
Dimana:
Bel (X) = Belief (X) Pls (X) = Plausibility (X) m (X) = Massfunction dari (X) m (Y) = Massfunction dari (Y)
Teori dempstershafer menyatakan adanya frameofdiscrement yang dinotasikan dengan simbol (ϴ). Frame of discrement merupakan semesta pembicaraan dari sekumpulan hipotesis sehingga sering disebut dengan environment yang ditunjukkan pada persamaan (2.3):
………... (2.3) Dimana :
θ = Frameofdiscrement atau environment θ1,…,θN = element/unsur bagian dalam environment
Environment mengandung elemen-elemen yang menggambarkan
kemungkinan sebagai jawaban, dan hanya ada satu yang akan sesuai dengan jawaban yang dibutuhkan. Kemungkinan ini dalam teori dempstershafer disebut dengan power set dan dinotasikan dengan P (ϴ), setiap elemen dalam power set ini memiliki nilai
(55)
Massfunction (m) dalam teori dempster shafer adalah tingkat kepercayaan dari suatu evidence (gejala), sering disebut dengan evidencemeasure sehingga dinotasikan dengan (m). Tujuannya adalah mengaitkan ukuran kepercayaan elemen-elemen θ. Tidak semua evidence secara langsung mendukung tiap-tiap elemen. Untuk itu perlu adanya probabilitas fungsi densitas (m). Nilai m tidak hanya mendefinisikan
elemen-elemen θ saja, namun juga semua subset-nya. Sehingga jika θ berisi n elemen, maka
subsetθ adalah 2n. Jumlah semua m dalam subsetθ sama dengan 1. Apabila tidak ada
informasi apapun untuk memilih hipotesis, maka nilai: m{θ} = 1,0
Apabila diketahui X adalah subsetdari θ, dengan m1 sebagai fungsi densitasnya,
dan Y juga merupakan subset dari θ dengan m2 sebagai fungsi densitasnya, maka
dapat dibentuk fungsi kombinasi m1 dan m2 sebagai m3, yaitu ditunjukkan pada
persamaan (2.4):
………... (2.4)
Dimana :
m3 (Z) = Mass function dari evidence Z
m1 (X) = Mass function dari evidence X, yang diperoleh dari nilai keyakinan suatu
evidence dikalikan dengan nilai disbelief dari evidence tersebut.
m2 (Y) = Mass function dari evidence Y , yang diperoleh dari nilai keyakinan suatu
evidence dikalikan dengan nilai disbelief dari evidence tersebut.
2.3. Android
Android adalah sistem operasi untuk telepon seluler berbasis linux sebagai kernel-nya.
Android begitu pesat perkembangan di era saat ini Karena android menyediakan
platform terbuka (Open Source) bagi para pengembang untuk menciptakan aplikasi
mereka sendiri. Awalnya, perusahaan search engine terbesar saat ini, yaitu Google
Inc. membeli AndroidInc., pendatang baru yang membuat peranti lunak untuk ponsel.
(56)
konsorsium dari 34 perusahaan hardware, software dan telekomunikasi, termasuk
Google, HTC, Intel, Motorola, Qualqomm, T-Mobile dan Nividia. Pada saat perilisan
perdana android, 5 November 2007, android bersama open handset alliance
menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode android di bawah lisensi apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Android memiliki dua distributor, yaitu Google Mail Service (GMS) dan Open Handset Distributor (OHD).
GMS adalah distributor android yang mendapatkan dukungan penuh dari
Google, sedangkan OHD adalah distributor android tanpa dukungan langsung dari
Google. Saat ini sudah banyak bermunculan vendor-vendor untuk smartphone, yaitu
diantaranya: HTC, Motorola, Samsung, LG, HKC, Huawei, Archos, Webstation Camangi, Dell, Nexus, SciPhone, WayteQ, Sony Ericsson, Acer, Philips, T-Mobile,
Nexian, IMO, Asus dan lainnya vendor yang meproduksi smartphone Android
(Pratama, 2011).
2.3.1. Kelebihan Android
1. Lengkap (Complete platform): Android dikatakan lengkap karena android
menyediakan tools untuk membangun software yang sangat lengkap dibanding dengan platform lain. Para pengembang dapat melakukan pendekatan yang komprehensif ketika mereka mengembangkan suatu aplikasi pada platformandroid.
2. Terbuka (Open source platform): Platform android diciptakan dibawah lisensi opensource, dimana para pengembang bebas untuk mengembangkan aplikasi pada platform ini. Android menggunakan linuxkernel 2.6.
3. Bebas (Free platform): Android adalah platform mobile yang tidak memiliki batasan dalam mengembangkan aplikasinya. Tidak ada lisensi dalam mengembangkan aplikasi android. Android dapat didisribusikan dan diperdagangkan dalam bentuk apapun (Pratama, 2011).
2.3.2. Android SDK ( Software Development Kit )
Android SDK merupakan sebuah tools yang diperlukan untuk mengembangkan
(57)
SDK telah menjadi alat bantu dan API ( Application Programming Interface ) untuk mengembangkan aplikasi bebasis android. Android SDK bersifat gratis dan bebas distribusikan karena android bersifat open source. Basic4android merupakan sebuah
editor, secara default editor ini belum bisa dipakai untuk men-develop android. Agar
bisa digunakan untuk membuat aplikasi android maka terlebih dahulu harus di-install
SDK Android (StKamurtDevelopmentKit). Setelah di-install android SDK berisi dua
tools yaitu AVD (Android Virtual Device) manager digunakan untuk membuat
emulator android. SDK Manager adalah download manager komponen-komponen
android. (Pratama, 2011).
2.3.3. JDK (Java Development Kit)
JDK (Java Development Kit) adalah sekumpulan program kecil yang akan sangat membantu untuk para pengembang aplikasi dalam merancang dan melakukan testing
program. JDK dapat di lihat dengan cara mengakses lewat command line. Java
developmentkit merupakan perangkat lunak yang digunakan untuk melakukan proses
kompilasi dari kode java menjadi bytecode yang dapat dimengerti dan dapat dijalankan oleh java runtime environtment. Java development Kit wajib ter-install
pada komputer yang akan melakukan proses pembuatan aplikasi berbasis java. Namun
java development kit tidak wajib ter-install di komputer yang akan menjalankan
aplikasi yang dibangun menggunakan java. (Khannedy, 2013)
Gambar 2.4. Konfigurasi Pengembangan Android
SDK
JDK
B4A
Android
(58)
2.3.4. Versi Android
Berikut adalah perkembangan versi Android (Pratama, 2011):
1. Android versi awal (2007 – 2008)
Pada September 2007 google mengajukan hak paten aplikasi telepon seluler.
Google mengenalkan Nexus One, salah satu jenis telepon pintar GSM yang
menggunakan android sistem operasinya. Telepon seluler ini diproduksi oleh
HTC Corporation dan tersedia di pasaran pada 5 Januari 2008. Pada 9
Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh
Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp,
dan VodafoneGroupPlc.
2. Android versi 1.1
Pada 9 Maret 2009, Google merilis android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice search
(pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email.
3. Android versi 1.5 ( Cupcake )
Pada pertengahan Mei 2009, google kembali merilis telepon seluler dengan menggunakan android dan SDK (Software DevelopmentKit) dengan versi 1.5
(cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa
fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke youtube dan gambar ke picasa
langsung dari telepon, dukungan bluetooth A2DP, kemampuan terhubung secara otomatis ke headset bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.
4. Android versi 1.6 ( Donut )
Donut (versi 1.6) dirilis pada September dengan menampilkan proses
pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus, kamera, camcorder dan galeri yang dintegrasikan.
5. Android versi 2.0 / 2.1 ( Eclair )
Pada 3 Desember 2009 kembali diluncurkan ponsel android dengan versi 2.0/2.1 (eclair), perubahan yang dilakukan adalah pengoptimalan hardware,
(59)
peningkatan google maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML 5, daftar kontak yang baru, dukungan flash untuk kamera 3,2
MP, digital Zoom, dan Bluetooth 2.1. Dengan semakin berkembangnya dan
semakin bertambahnya jumlah handset android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi
android. Aplikasi terkenal yang diubah ke dalam sistem operasi android
adalah Shazam, Backgrounds, dan WeatherBug.
6. Android versi 2.2 ( Froyo : FrozenYoghurt )
Pada 20 Mei 2010, android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan
Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat,
intergrasi V8 JavaScript engine yang dipakai google chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD card, kemampuan WiFi hotspot portabel, dan kemampuan auto
update dalam aplikasi androidmarket.
7. Android versi 2.3 ( Gingerbread )
Pada 6 Desember 2010, android versi 2.3 (gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copypaste, layar antar muka (user interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization, headphone).
8. Android versi 3.0 / 3.1 ( Honeycomb )
Android honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User interface pada honeycomb
juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung
multiprosesor dan juga akselerasi perangkat keras (hardware) untuk grafis.
Tablet pertama yang dibuat dengan menjalankan honeycomb adalah Motorola
Xoom.
9. Android versi 4.0 ( IceCream )
Android versi 4.0 akan dirilis akhir tahun 2011. Setelah kita ketahui versi
Android ini perlu diketahui bahwa nama lain dari versi-versi tersebut diambil
(1)
ABSTRAK
Sistem pakar adalah sistem yang berusaha mengadopsi pengetahuan manusia ke komputer yang dirancang untuk memodelkan kemampuan menyelesaikan masalah seperti layaknya seorang pakar. Kelenjar tiroid mempunyai tugas utama untuk membuat dan menyalurkan hormon tiroid keseluruh tubuh. Hormon ini merupakan salah satu pengatur utama metabolisme tubuh. Meskipun berfungsi vital dalam mengatur metabolise tubuh, namun tiroid belum mendapat perhatian khusus bagi masyarakat karena minimnya pengetahuan masyarakat serta Gejala gangguan kelenjar ini juga samar-samar. Penelitian ini bertujuan untuk membuat sebuah sistem pakar yang dapat digunakan untuk mediagnosa gangguan kelenjar tiroid. Didalam penerapan sistem pakar ini dibantu dengan menggunakan metode forward chaining sebagai mesin inferensi dan metode dempster shafer dalam menentukan kesimpulan. Implementasi algoritma menggunakan bahasa pemograman basic berbasis android. Dari penelitian ini dihasilkan sebuah sistem pakar berbasis android yang mempunyai
output nilai perhitungan dan kemungkinan gangguan yang diderita yang diharapkan
dapat memberikan suatu solusi alternatif dalam mendiagnosa gangguan tiroid sehingga dapat terdeteksi lebih dini.
Kata Kunci: Sistem Pakar, Kelenjar Tiroid, Algoritma Forward Chaining, Algoritma
(2)
AN EXPERT SYSTEM FOR DIAGNOSE THYROID GLAND DISORDERS USING FORWARD CHAINING AND DEMPSTER
SHAFER THEORY ANDROID BASE
ABSTRACT
Expert system is a system who trying to adopt human knowledge into a computer that is designed to model the ability to solve problems like an expert.The thyroid gland has main duty to make and distribute thyroid hormone throughout the body. This hormone is one of the main regulator of metabolism. Although vital functions in regulating the body metabolism, but the thyroid has not got special attention to the community because of the lack of public knowledge and this gland disorder symptoms are also vague. This researched aims to make an expert system that can be used to diagnose thyroid gland disorders. In the application of this expert system aided by using a forward chaining as inference engine and Dempster Shafer methods in determining conclusions. Algorithm implementation using basic programming language based on Android. From this researched has been produced an android based expert system that has output value calculation and the possibility of interference suffered that is expected to provide an alternative solution to diagnose a thyroid disorder that can be detected earlier.
Keywords: Expert System, Thyroid Gland, Forward Chaining Algorithm, Dempster Shafer Algorithm, Android.
(3)
DAFTAR ISI
Hal.
Persetujuan ii
Pernyataan iii
Ucapan Terima Kasih iv
Abstrak vi
Abstract vii
Daftar Isi viii
Daftar Tabel x
Daftar Gambar xi
BAB 1 Pendahuluan 1
1.1. Latar Belakang 1
1.2. Rumusan Masalah 2
1.3. Batasan Masalah 3
1.4. Tujuan Penelitian 3 1.5. Manfaat Penelitian 3
1.6. Metodologi Penelitian 4
BAB 2 Landasan Teori 5 2.1. Sistem Pakar 5
2.1.1. Arsitektur dan Komponen Sistem Pakar 6
2.1.2. Ciri-Ciri Sistem Pakar 7 2.1.3. Manfaat dan Kelemahan Sistem Pakar 8
2.1.4. Representasi Pengetahuan 8
2.1.5. Metode Inferensi 9
2.2. Algoritma Dempster-Shafer 11
2.3. Android 13
2.3.1. Kelebihan Android 14
2.3.2. Android SDK ( Software Development Kit ) 14
2.3.3. JDK (Java Development Kit) 15
2.3.4. Versi Android 16
2.4. Basic4Android 18
2.5. Kelenjar Tiroid 19
2.5.1. Hipertiroidisme 21
2.5.2. Hipotiroidisme 22
2.6. UnifiedModelingLanguage (UML) 23
2.6.1. UseCase Diagram 23
2.6.2. Sequence Diagram 24
2.6.3. Activity Diagram 24
2.7. Penelitian Yang Sudah Ada 24
BAB 3 Analisis dan Perancangan Sistem 28
(4)
3.1.1. Definisi Lingkup 28
3.1.2. Analisis Masalah 29
3.1.3. Analisis Kebutuhan 29
3.1.3.1. Analisis kebutuhan non fungsional 30
3.1.3.2. Analisis kebutuhan fungsional 30
3.2. Analisis data 31
3.2.1. Pengumpulan Data 31
3.2.2. Flowchart Metode 36
3.3. Perancangan Sistem 37
3.3.1. LogicalDesign 37
3.3.1.1. Usecase diagram 37
3.3.1.2. Activity diagram 39
3.3.1.3. Sequence diagram 39
3.3.2. PhysicalDesign 40
3.3.2.1. Struktur interface menu sistem 41
3.3.2.2. Perancangan interface menu sistem 41
BAB 4 Implementasi dan Pengujian Sistem 48
4.1. Impelentasi Sistem 48
4.1.1. Menu Utama 48
4.1.2. Menu Diagnosis 49
4.1.3. Menu Tips 52
4.1.4. Menu Info 52
4.1.5. Menu Tentang Saya 53
4.2. Pengujian Sistem 54
4.2.1. Perhitungan Manual Hipertiroid 54
4.2.2. Perhitungan Manual Hipotiroid 58
4.2.3. Perhitungan Dengan Sistem 62
BAB 5 Kesimpulan dan Saran 64
5.1 Kesimpulan 64
5.2 Saran 65
Daftar Pustaka 66
Lampiran-1 Listing Program
Lampiran-2 Surat keterangan Penelitian
Lampiran-3 Surat Keterangan Selesai Penelitian Lampiran-4 Daftar Gejala gangguan tiroid
(5)
DAFTAR TABEL
Hal.
Tabel 3.1. Daftar Gejala 31
Tabel 3.2. Daftar Nama Gangguan 32
Tabel 3.3. Tabel Keputusan Gangguan Kelenjar Tiroid 33
Tabel 3.4. Basis Aturan (Rule) 34
Tabel 3.5. Deskripsi UseCase diagram sistem pakar 38
Tabel 3.6. Penjelasan Interface Menu Utama 42
Tabel 3.7. Penjelasan Interface Menu Registrasi 43
Tabel 3.8. Penjelasan Interface Menu Diagnosis 44
Tabel 3.9. Penjelasan Interface Menu Hasil Diagnosis 45 Tabel 3.10. Penjelasan Interface Menu Info, Tips, dan Tentang 47
Tabel 4.1. Hasil kombinasi dari m1 dan m2 55
Tabel 4.2. Hasil kombinasi dari dan m3 56
Tabel 4.3. Hasil kombinasi dari dan m4 57
Tabel 4.4. Hasil kombinasi dari dan m5 57
Tabel 4.5. Hasil kombinasi dari m1 dan m2 58
Tabel 4.6. Hasil kombinasi dari dan m3 59
Tabel 4.7. Hasil kombinasi dari dan m4 60
Tabel 4.8. Hasil kombinasi dari dan m5 60
Tabel 4.9. Hasil kombinasi dari dan m6 61
(6)
DAFTAR GAMBAR
Hal.
Gambar 2.1. Arsitektur Sistem Pakar (sumber: Turban, 1995) 6
Gambar 2.2. Proses ForwardChaining (Sumber: Arhami, 2005) 10
Gambar 2.3. Proses BackwardChaining (Sumber : Arhami, 2005) 11
Gambar 2.4. Konfigurasi Pengembangan Android 15
Gambar 2.5. IDE Basic4Android (Sumber: Hidayat, 2013) 18
Gambar 2.6. DesignerBasic4android (Sumber: Hidayat, 2013) 19
Gambar 2.7. Kelenjar Tiroid (Sumber : Semiardji, 2003) 20 Gambar 3.1. Pohon Keputusan (Decision Tree) 35
Gambar 3.2. Flowchart Metode Dempster-Shafer 36
Gambar 3.3. UseCase diagram sistem pakar 38
Gambar 3.4. Activity Diagram Sistem Pakar 39
Gambar 3.5. Sequence Diagram Sistem Pakar 40
Gambar 3.6. Struktur Interface Menu Sistem 41
Gambar.3.7. Interface Menu Utama Sistem 42
Gambar 3.8. InterfaceForm Menu Registrasi 43
Gambar 3.9. Interface Menu Diagnosis 44
Gambar 3.10. Interface Menu Hasil Diagnosis 45
Gambar 3.11. Interface Menu Info, Tips, dan Tentang 46
Gambar 4.1. Menu Utama Program 49
Gambar 4.2. Menu Registrasi 50
Gambar 4.3. Menu Pertanyaan 50
Gambar 4.4. Menu Konfirmasi Diagnosa 51
Gambar 4.5. Menu Hasil Diagnosa 51
Gambar 4.6. Menu Tips 52
Gambar 4.7. Menu Info 53
Gambar 4.8. Menu Tentang Saya 53