KLASIFIKASI PENYAKIT JANTUNG MENGGUNAKAN WAVELET FUZZY SYSTEMS.

(1)

i

KLASIFIKASI PENYAKIT JANTUNG MENGGUNAKAN

WAVELET FUZZY SYSTEMS

TUGAS AKHIR SKRIPSI

Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta untuk Memenuhi Sebagian Persyaratan Guna

Memperoleh Gelar Sarjana Sains

Oleh: Danu Satria NIM 13305141013

PROGRAM STUDI MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA


(2)

(3)

(4)

(5)

v

MOTTO

“Your love makes me

stronger

Your hate makes me

unstopabble”


(6)

vi

HALAMAN PERSEMBAHAN

Karya ini saya persembahkan kepada :

1) Kedua orang tua saya, Ibu Sumarmi dan Bapak Narman tercinta dan Adikku Intan tersayang, terima kasih atas kasih sayang, doa restu dan dukungan baik moral dan material untuk menyelesaikan kuliah ini dengan dukungan yang tidak pernah putus. Semoga kelak saya tidak mengecewakan Ibu dan Bapak serta dapat membahagiakan Ibu, Bapak, dan Adikku..

2) Segenap Keluargaku, terimakasih atas doa dan dukungannya.

3) Teman-teman kelas Matematika B 2013, terima kasih telah mendukung dan menemani perkuliahan selama 4 tahun, terima kasih atas kebersamaan dan bantuan kalian semua.

4) Sahabat-sahabatku di kontrakan Marjani FC, Agus Januar Ramdan, Wahyu Bayu Pratama, Yaser Baser, Gustian, Handika Bima, Bagus Andi, Fajri, Suryo, Andika Pratama, Adit Paijo yang terus bersama dan berjuang dikala senang dan susah ketika musibah datang diantara kita, terima kasih atas kenangan kebersamaan ini.

5) Teman-teman di Jurusan Pendidikan Matematika FMIPA UNY yang telah berjuang bersama- sama, terima kasih atas kebersamaannya.

6) Terima kasih untuk Ratri Citra Fajar Asmara yang telah mendukung dan memberi semangat untuk menyelesaikan tugas akhir ini.


(7)

vii

KLASIFIKASI PENYAKIT JANTUNG MENGGUNAKAN WAVELET

FUZZY SYSTEMS Oleh :

Danu Satria 13305141013

ABSTRAK

Penyakit jantung merupakan penyebab kematian tertinggi di dunia termasuk juga di Indonesia. Oleh karena itu diperlukan deteksi dari gejala-gejala yang dialami untuk mengetahui jenis penyakit jantung yang diderita. Penelitian ini bertujuan untuk klasifikasi jenis penyakit jantung berdasarkan rekaman detak jantung dari alat Phonocardiogram (PCG). Ekstraksi ciri dari sinyal PCG dilakukan dengan wavelet haar untuk kemudian pembentukan model dengan fuzzy systems Mamdani.

Dalam penelitian ini, mendiagnosis penyakit jantung berdasarkan sinyal PCG dari pasien penyakit jantung dan jantung normal yang sudah diekstrasi dan menghasilkan 5 fitur. Lima fitur tersebut kemudian digunakan sebagai variabel input dalam pemodelan sistem fuzzy Mamdani yang direpresentasikan menggunakan kurva Gauss. Variabel output berupa normal, HHD, CHF, dan Angina Pectoris. Proses inferensi fuzzy menggunakan metode Mamdani denga metode mean of maxima

(MOM) pada proses defuzzifikasi. Pembagian data menggunakan 80 data training dan 20 data testing. Aturan fuzzy If-Then dibentuk dari 80 data training.

Hasil defuzzifikasi 80 data training menunjukkan tingkat akurasi, sensitivitas, dan spesifikasi berturut-turut adalah 98.75%, 100%, dan 95.24%. Sedangkan hasil defuzzifikasi 20 data testing menunjukkan tingkat akurasi, sensitivitas, dan spesifikasi berturut turut adalah 80%, 100%, dan 71.43%. Sistem fuzzy yang telah terbentuk dikontruksi dengan Graphical User Interface (GUI).


(8)

viii

KATA PENGANTAR

Segala puji syukur penulis panjatkan kehadirat Allah SWT yang telah memberikan nikmat serta hidayah-Nya terutama nikmat kesempatan dan kesehatan sehingga penulis dapat menyelesaikan tugas akhir skripsi ini. Skripsi yang berjudul “KLASIFIKASI PENYAKIT JANTUNG MENGGUNAKAN WAVELET FUZZY SYSTEMS” disusun untuk memenuhi salah satu syarat kelulusan guna meraih gelar Sarjan Sains pada Program Studi Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta. Penyelesaian skripsi ini tidak akan terselesaikan tanpa bantuan, bimbingan, saran dan dukungan dari berbagai pihak. Oleh karena itu, pada kesempatan ini penulis mengucapkan terima kasih kepada:

1. Bapak Dr. Hartono, M.Si, selaku Dekan Fakultas Matematika dan Ilmu pengetahuan Alam Universitas Negeri Yogyakarta yang telah memberikan kelancaran pelayanan dalam urusan akademik.

2. Bapak Dr. Ali Mahmudi, M.Si, selaku Ketua Jurusan Pendidikan Matematika Universitas Negeri Yogyakarta yang telah memberikan kelancaran pelayanan dalam urusan akademik.

3. Bapak Dr. Agus Maman Abadi, M.Si, selaku Ketua Program Studi Matematika Universitas Negeri Yogyakarta, Dosen Pembimbing yang telah dengan sabar memberikan arahan, bimbingan dan motivasi kepada penulis.

4. Bapak dr. H. Joko. Murdiyanto, Sp.An,MPH selaku Direktur Utama RS PKU Muhammadiyah Yogyakarta yang telah memberikan izin untuk melakukan penelitian.


(9)

ix

5. Ibu Dewi Wulandari selaku pembimbing penelitian yang telah membantu dan mengarahkan penulis selama pengambilan data di RS PKU Muhammadiyah.

6. Bapak Sumarna, M.Eng, yang telah meminjamkan alat PCG dan memberikan bimbingan dari pengumpalan data hingga skripsi selesai.

7. Ibu Dyah Kurniawati Agustika, M.Sc, yang telah memberikan bimbingan dalam pengumpulan data dan pengerjaan tugas akhir.

8. Seluruh Dosen Jurusan Pendidikan Matematika Universitas Negeri Yogyakarta yang telah memberikan Ilmu dan pengajaran kepada penulis.

9. Seluruh pihak yang telah memberikan dukungan, bantuan dan motivasi kepada penulis.

Penulis menyadari adanya ketidaktelitian, kekurangan dan kesalahan dalam penulisan tugas akhir skripsi ini. Oleh karena itu, penulis menerima kritik dan saran yang bersifat membangun. Semoga penulisan tugas akhir ini dapat bermanfaat bagi pembaca dan pihak yang terkait.

Yogyakarta, 23 Mei 2017 Penulis

Danu Satria NIM.13305141013


(10)

x

DAFTAR ISI

HALAMAN JUDUL... i

PERSETUJUAN ... ii

HALAMAN PENGESAHAN ... iii

HALAMAN PERNYATAAN ... iv

MOTTO ... v

HALAMAN PERSEMBAHAN ... vi

ABSTRAK ... vii

KATA PENGANTAR...viii

DAFTAR ISI ... x

DAFTAR GAMBAR ...xiii

DAFTAR TABEL ... xv

DAFTAR SIMBOL... xvi

DAFTAR LAMPIRAN ...xvii

BAB I PENDAHULUAN ...1

A. Latar Belakang Masalah ...1

B. Batasan Masalah ...4

C. Rumusan Masalah ...4

D. Tujuan Penelitian ...5

E. Manfaat Penelitian ...5

BAB II KAJIAN TEORI...6

A. Penyakit Jantung ...6

1. Pengertian Penyakit Jantung ...6


(11)

xi

3. Penyebab Penyakit Jantung ...7

B. Penelitian yang Relevan ...10

C. Signal Phonocardiogram (PCG) ...13

D. Wavelet ...15

1. Pengertian Wavelet ...15 2. Transformasi Wavelet ...16

3. Discrete Wavelet Transform (DWT)...17

E. Ekstraksi Fitur...19

F. Logika Fuzzy ...20

1. Pengertian Himpunan Fuzzy ...20

2. Fungsi Keanggotaan ...21

3. Operator Fuzzy ...26

4. Logika Fuzzy ...27

5. Sistem Fuzyy ...28

G. Uji Ketepatan Diagnosis ...33

H. Graphical User Interface (GUI) ...35

BAB III METODE PENELITIAN ...36

A. Metode Pengumpulan Data...36

B. Jenis dan Sumber Data Penelitian...36

C. Teknik Analisis Data ...36

D. Perencanaan Layar Aplikasi ...39

BAB IV PEMBAHASAN ...42

A. Pre-Processing ...42

1. Proses Normalisasi ...42


(12)

xii

3. Dekomposisi Signal...44

4. Ekstraksi Signal ...46

B. Klasifikasi Logika Fuzzy ...47

1. Mengidentifikasi Himpunan Fuzzy pada Input ...47

2. Mengidentifikasi Himpunan Fuzzy pada Output ...55

3. Membangun Aturan Fuzzy ...56

4. Inferensi Fuzzy ...62

5. Defuzzifikasi ...64

C. Hasil Pembahasan ...65

1. Hasil Sistem Fuzzy pada Data Latih...65

2. Hasil Sistem Fuzzy pada Data Uji...66

D. Analisis Pengujian Sistem ...66

E. Tampilan Diagnosa Penyakit Jantung dengan GUI ...67

BAB V PENUTUP...69

A. Kesimpulan ...69

B. Saran ...70

DAFTAR PUSTAKA ...71


(13)

xiii

DAFTAR GAMBAR

Gambar 2.1 Rangkaian Alat rekam Phonocardiogram (Sumarna,2017)...….14

Gambar 2.2Phonocardiogram Jantung………14

Gambar 2.3 Transformasi Wavelet. (Chui, 1992)………..….16

Gambar 2.4 Representasi Linear Naik (Sri Kusumadewi , 2010)…...22

Gambar 2.5 Himpunan fuzzy: Risiko Penyakit Jantung………..23

Gambar 2.6 Representasi Linear Turun (Sri Kusumadewi, 2010)…….…...23

Gambar 2.7 Himpunan fuzzy : Deteksi Dini Penyakit Jantung………....24

Gambar 2.8 Representasi Kurva Segitiga (Sri Kusumadewi , 2010)……….…. 24

Gambar 2.9 Representasi Kurva Gauss (Sri Kusumadewei, 2010)………..…...25

Gambar 2.10 Kurva Gauss himpunan fuzzy : Energi Signal PCG……...………26

Gambar 2.11 Susunan Sistem Fuzzy. (Wang, 1997)………...…....32

Gambar 2.12 Tampilan awal pada GUI pada Matlab R2016a………...35

Gambar 3.1 Diagram Langkah Penelitian……….……...39

Gambar 3.2 Rancangan Layar Interface dengan GUI………..40

Gambar 4.1 Signal PCG sebelum dan sesudah normalisasi…..………...43

Gambar 4.2Signal PCG sebelum, saat pemotongan, setelah dipotong……...…44

Gambar 4.3 Hasil Dekomposisi signal N20.wav………...…...45

Gambar 4.4. Plot DWs data N20.wav……...………...46

Gambar 4.5. Grafik Fungsi Keanggotaan Variabel Minimum……….48

Gambar 4.6. Grafik Fungsi Keanggotaan Variabel Maksimum………...50

Gambar 4.7. Grafik Fungsi Keanggotaan Variabel Rata-rata………..52


(14)

xiv

Gambar 4.9. Grafik Fungsi Keanggotaan Variabel Energi………..55

Gambar 4.10. Grafik Fungsi Keanggotaan Variabel Output………...…56

Gambar 4.11 Grafik fungsi keanggotaan N20.wav pada output……….63

Gambar 4.12, Rule Viewer untuk defuzzifikasi data N20.wav………...64


(15)

xv

DAFTAR TABEL

Tabel 4.1. Koefisien Korelasi………45

Tabel 4.2. Hasil ekstraksi N20.wav………..46

Tabel 4.3. Hasil ekstraksi dan pengelompokan himpunan fuzzy file N20.wav…61

Tabel 4.4 Hasil sistem fuzzy pada data latih………..64

Tabel 4.5 Hasil sistem fuzzy pada data uji……….65


(16)

xvi

DAFTAR SIMBOL

� = Signal Asli

= Koefisien Detail = Koefisien Aproksimasi

( ) = Fungsi mother wavelet

= Derajat keanggotaan x di A

� = Standar deviasi signal PCG

= Gabungan atau operator AND = Irisan atau operator OR

� ′ = Komplemen derajat keanggotaan x di A

� = Himpunan semesta

= Domain awal kurva

= Lebar kurva

= Pusat kurva

= Lebar kurva Gauss


(17)

xvii

DAFTAR LAMPIRAN

Lampiran 1 Permohonan izin Penelitian ...75

Lampiran 2 Keterangan kelaikan etik ...76

Lampiran 3 Pernyataan terhadap responden ...77

Lampiran 4Penerimaan permohonan penelitian………..80

Lampiran 5 Signal PCG ...81

Lampiran 6 Signal hasil normalisasi ...87

Lampiran 7 Signal hasil pemotongan ... 93

Lampiran 8 Signal hasil dekomposisi... 99

Lampiran 9 Hasil Ekstraksi ...105

Lampiran 10 Aturan Fuzzy ...106

Lampiran 11 Deffuzifikasi Data Latih ...115

Lampiran 12 Deffuzifikasi Data Uji...118

Lampiran 13 Script M-file GUI ...119


(18)

1

BAB I PENDAHULUAN A. Latar Belakang Masalah

Penyakit jantung atau penyakit kardiovaskular dan pembuluh darah merupakan salah satu masalah kesehatan utama di negara maju maupun berkembang. Penyakit ini menjadi penyebab nomor satu kematian di dunia setiap tahunnya. Sejak tahun 2008 diperkirakan sebanyak 17,3 juta kematian disebabkan oleh penyakit kardiovaskular. Lebih dari 3 juta kematian tersebut terjadi sebelum usia 60 tahun. Terjadinya kematian dini yang disebabkan oleh penyakit jantung berkisar sebesar 4% di negara berpenghasilan tinggi, dan 42% terjadi di negara berpenghasilan rendah. Kematian yang disebabkan oleh penyakit jantung pembuluh darah, terutama penyakit jantung koroner dan stroke diperkirakan akan terus meningkat mencapai 23,3 juta kematian pada tahun 2030. Di Indonesia penyakit jantung dan pembuluh darah ini terus meningkat dan akan memberikan beban kesakitan, kecacatan dan beban sosial ekonomi bagi keluarga penderita, masyarakat, dan negara. Prevalensi penyakit jantung koroner di Indonesia tahun 2013 berdasarkan diagnosis dokter sebesar 0,5%. Sedangkan berdasarkan diagnosis dokter gejala sebesar 1,5%. Sementara itu, prevalensi penyakit gagal jantung di Indonesia tahun 2013 berdasarkan diagnosis dokter sebesar 0.13% (Kemenkes, 2014).

Penyakit kardiovaskular adalah penyakit yang disebabkan gangguan fungsi jantung dan pembuluh darah. Ada banyak macam penyakit kardiovaskuler, namun yang paling umum adalah Penyakit Jantung Koroner, Penyakit


(19)

2

Serebrovaskular, Penyakit Arteri Perifer, Penyakit Jantung Rematik, Penyakit Jantung Bawaan, dan Gagal Jantung. Penyakit Jantung Koroner adalah penyakit pembuluh darah yang menyuplai otot jantung. Penyakit Serebrovaskular adalah penyakit pembuluh darah yang menyuplai otak. Penyakit Arteri Perifer adalah penyakit pembuluh darah yang menyuplai lengan dan kaki. Penyakit Jantung Rematik adalah kerusakan pada otot jantung dan katup jantung dari demam rematik, yang disebabkan oleh bakteri streptokokus. Penyakit Jantung Bawaan adalah kelainan struktur jantung yang dialami pada saat lahir. Gagal jantung adalah kondisi saat otot jantung menjadi sangat lemah sehingga tidak bisa memompa cukup darah ke seluruh tubuh pada tekanan yang tepat (WHO, 2016).

Penyebab utama penyakit kardiovaskular adalah konsumsi tembakau, aktivitas fisik yang kurang, diet yang tidak sehat dan penggunaan berbahaya dari alkohol (WHO, 2016). Faktor resiko penyakit jantung terdiri dari faktor resiko yang tidak dapat dimodifikasi dan yang dapat dimodifikasi. Faktor yang tidak dapat dimodifikasi yaitu riwayat keluarga, umur, jenis kelamin, dan obesitas, sedangkan faktor yang dapat dimodifikasi seperti hipertensi, diabetes melitus, disiplidemia, kurang aktivitas fisik, diet tidak sehat, dan stres (Bustan, 2000).

Gejala penyakit jantung secara umum adalah sesak napas, kelelahan, denyut jantung tidak teratur, nyeri dada, pembengkakan pada kaki dan pingsan (WHO, 2016). Untuk mengetahui lebih lanjut mengenai jenis penyakit jantung yang diderita maka memerlukan diagnosa lebih lanjut. Beberapa penelitian telah dilakukan untuk mendiagnosa jenis penyakit jantung dengan berbagai metode, diantaranya adalah penelitian oleh Sameh Ghwanmeh, Adel Mohammad, Ali


(20)

Al-3

Ibrahim (2013) tentang jaringan syaraf tiruan berbasis system pendukung untuk diagnosa penyakit jantung, Sanjeev Kumar dan Gursimranjeet Kaur (2013) tentang penggunaan logika fuzzy untuk deteksi penyakit jantung, Shivajirao M. Jadhav, Sanjay L. Nalbalwar, Ashok A. Ghatol (2012) tentang jaringan syaraf tiruan untuk diagnosa penyakit jantung aritmia dengan data signal electrocardiogram, Manjusha B. Wadhonkar, P.A. Tijare dan S.N.Sawalkar (2014) tentang diagnosis penyakit jantung menggunakan pendekatan neural network berbasis sistem pendukung keputusan untuk diagnosa penyakit jantung,. Penelitian yang dilakukan oleh Persi Pamela I, Gayathri P, dan N. Jaisankar (2013) tentang tehnik optimasi fuzzy untuk diagnosa penyakit jantung menggunakan algoritma pohon pembangkit keputusan, input yang digunakan sebanyak 14 dan menghasilkan 2 output. Penelitian yang dilakukan oleh Sijimol A.S, Soji Koshy (2012) tentang diagnose penyakit jantung menggunakan Fuzzy Petri Net. Metode yang digunakan untuk menentukan klasifikasi penyakit jantung berdasarkan suara detak jantung dari pasien penyakit jantung adalah wavelet fuzzy systems yaitu penggabungan antara transformasi wavelet diskrit dan logika fuzzy. Transformasi wavelet diskrit merupakan metode yang mendekomposisikan sebuah data diskrit ke dalam beberapa data baru yang memiliki korelasi terhadap data sebelumnya (Partal, 2007). Metode selanjutnya, Logika fuzzy merupakan salah satu komponen pembentuk soft computing. Dasar logika fuzzy yaitu teori himpunan fuzzy, dimana peranan derajat keanggotaanya sebagai penentu keberadaan elemen dalam suatu himpunan sangatlah penting. Ada beberapa alasan mengapa orang menggunakan logika fuzzy, antara lain: konsep matematis yang


(21)

4

mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti, sangat fleksibel, memiliki toleransi terhadap data-data yang tidak tepat dan logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat komplek (Sri Kusumadewi, 2010).

Dalam penelitian ini akan dilakukan diagnosa untuk jenis-jenis penyakit jantung menggunakan data suara detak jantung yang didapatkan dari isyarat signal phonocardiogram (PCG) berdasarkan waktu, kemudian digunakan transformasi wavelet untuk menganalisis, mengekstraksi, dan mengurai menjadi beberapa komponen, setelah itu digunakan fuzzy systems untuk mencari pola dan ciri dari Normal, HHD (Hypertensive Heart Disease), CHF (Congestive Heart Failure), dan Angina Pectoris.

B. Batasan Masalah

Dalam tugas akhir ini jenis penyakit jantung dibatasi pada jenis penyakit jantung yang didapat dari data pasien dan diagnosa dokter dari Rumah Sakit PKU Muhammadiyah Yogyakarta, yaitu Normal, HHD (Hypertensive Heart Disease), CHF (Congestive heart Failure), dan Angina Pectoris.

C. Rumusan Masalah

Berdasarkan pada latar belakang masalah, maka rumusan masalah yang akan diangkat dalam penelitian ini yaitu:

1. Bagaimana klasifikasi penyakit jantung menggunakan wavelet fuzzy systems ? 2. Bagaimana tingkat keakurasian diagnosis penyakit jantung menggunakan


(22)

5

D. Tujuan Penelitian

Tujuan dari penulisan skripsi ini adalah :

1. Menjelaskan klasifikasi penyakit jantung menggunakan wavelet fuzzy systems. 2. Menjelaskan keakuratan klasifikasi penyakit jantung dengan menggunakan

wavelet fuzzy systems.

E. Manfaat Penelitian

Manfaat penulisan skripsi ini adalah :

1. Bagi dunia kesehatan, hasil penelitian ini dapat digunakan sebagai tambahan informasi mengenai diagnosa penyakit jantung.

2. Bagi mahasiswa, menambah pengetahuan mengenai wavelet fuzzy systems yang diaplikasikan pada penelitian ini sehingga dapat digunakan sebagai acuan untuk membuat karya ilmiah yang terkait dengan wavelet fuzzy systems. 3. Bagi Universitas Negeri Yogyakarta, dapat menambah referensi mengenai


(23)

6

BAB II KAJIAN TEORI A. Penyakit Jantung

1. Pengertian Penyakit Jantung

Penyakit kardiovaskular atau yang biasa disebut penyakit jantung umumnya mengacu pada kondisi yang melibatkan penyempitan atau pemblokiran pembuluh darah yang bisa menyebabkan serangan jantung, nyeri dada (angina) atau stroke. Kondisi jantung lainnya yang mempengaruhi otot jantung, katup atau ritme, juga dianggap bentuk penyakit jantung (American Heart Association, 2017).

2. Klasifikasi Penyakit Jantung

Berikut adalah penjelesan dari klasifikasi penyakit jantung. a. Diagnosis Normal

Jantung normal merupakan kondisi dimana jantung bekerja secara normal untuk memompa darah dan menyuplai oksigen keseluruh tubuh.

b. Diagnosis Hypertensive Heart Disease (HHD)

Hypertensive heart disease (HHD) adalah istilah yang diterapkan untuk menyebutkan penyakit jantung secara keseluruhan, mulai dari left ventricle hyperthrophy (LVH), aritmia jantung, penyakit jantung koroner, dan penyakit jantung kronis, yang disebabkan kerana peningkatan tekanan darah, baik secara langsung maupun tidak langsung (theHeart.org, 2014). c. Diagnosis Congestive Heart Failure (CHF)


(24)

7

mengalami kegagalan dalam memompa darah guna mencukupi kebutuhan sel-sel tubuh akan nutrien dan oksigen. Hal ini mengakibatkan peregangan ruang jantung (dilatasi) guna menampung darah lebih banyak untuk dipompakan ke seluruh tubuh atau mengakibatkan otot jantung kaku dan menebal. Jantung hanya mampu memompa darah untuk waktu yang singkat dan dinding otot jantung yang melemah tidak mampu memompa dengan kuat (Udjianti, 2010).

d. Diagnosis Angina Pectoris

Angina pectoris adalah istilah medis untuk nyeri dada atau ketidaknyamanan akibat penyakit jantung koroner. Hal itu terjadi ketika otot jantung tidak mendapat darah sebanyak yang dibutuhkan. Hal ini biasanya terjadi karena satu atau lebih arteri jantung menyempit atau tersumbat, biasa juga disebut iskemia (American Heart Association, 2016).

3. Penyebab Penyakit Jantung

Berdasarkan Centers for Disease Control and Prevention, 2015 faktor-faktor penyebab penyakit jantung adalah sebagai berikut

a. Diet Tidak Sehat

Diet lemak jenuh, dan kolesterol mengakibatkan penyakit jantung. Selain itu, terlalu banyak garam (sodium) dalam makanan bisa menaikkan kadar tekanan darah.

b. Kurang Aktivitas

Tidak cukup aktivitas fisik mengakibatkan penyakit jantung, hal ini juga dapat meningkatkan kemungkinan memiliki kondisi medis lain yang


(25)

8

merupakan faktor resiko, termasuk obesitas, tekanan darah tinggi, kolesterol tinggi, dan diabetes.

c. Obesitas

Obesitas adalah kelebihan lemak tubuh. Obesitas dikaitkan dengan kadar kolesterol dan trigliserida yang lebih tinggi dan menurunkan kadar kolesterol "baik". Selain penyakit jantung, obesitas juga bisa menyebabkan tekanan darah tinggi dan diabetes.

d. Alkohol

Konsumsi alkohol bisa menaikkan kadar tekanan darah dan beresiko terkena penyakit jantung. Ini juga meningkatkan kadar trigliserida, suatu bentuk kolesterol, yang bisa mengeraskan arteri.

e. Merokok

Merokok dapat merusak jantung dan pembuluh darah, yang meningkatkan resiko kondisi jantung seperti aterosklerosis dan serangan jantung. Selain itu, nikotin meningkatkan tekanan darah, dan karbon monoksida mengurangi jumlah oksigen yang dibawa oleh darah. Paparan asap rokok orang lain dapat meningkatkan resiko penyakit jantung bahkan untuk bukan perokok.

f. Tekanan darah tinggi

Tekanan darah tinggi merupakan faktor resiko utama penyakit jantung. Ini adalah kondisi medis yang terjadi saat tekanan darah di arteri dan pembuluh darah lainnya terlalu tinggi. Tekanan darah tinggi sering disebut "silent killer" karena banyak orang tidak memperhatikan gejala sinyal


(26)

9

darah tinggi. Menurunkan tekanan darah dengan perubahan gaya hidup atau dengan pengobatan bisa mengurangi resiko penyakit jantung dan serangan jantung.

g. Kolesterol Tinggi

Kolesterol adalah zat berlemak, seperti lemak yang dibuat oleh hati atau ditemukan pada makanan tertentu. Jika mengkonsumsi lebih banyak kolesterol daripada yang bisa digunakan tubuh, kolesterol ekstra bisa terbentuk di dinding arteri, termasuk di jantung. Hal ini menyebabkan penyempitan arteri dan bisa menurunkan aliran darah ke jantung, otak, ginjal, dan bagian tubuh lainnya. Kolesterol tinggi adalah istilah yang digunakan untuk kadar low-density lipoprotein, atau LDL, yang dianggap "buruk" karena dapat menyebabkan penyakit jantung. Kadar kolesterol lipoprotein high-density yang lebih tinggi, atau HDL, dianggap "baik" karena memberikan perlindungan terhadap penyakit jantung.

h. Diabetes

Diabetes mellitus juga meningkatkan resiko penyakit jantung. Tubuh membutuhkan glukosa (gula) untuk energi. Insulin adalah hormon yang dibuat di pankreas yang membantu memindahkan glukosa dari makanan yang ke sel tubuh. Jika menderita diabetes, tubuh tidak cukup membuat insulin, tidak dapat menggunakan insulin sendiri dengan baik. Diabetes menyebabkan gula terbentuk di dalam darah. Resiko kematian akibat penyakit jantung bagi orang dewasa dengan diabetes adalah dua sampai empat kali lebih tinggi daripada orang dewasa yang tidak menderita


(27)

10 diabetes.

i. Genetika dan Riwayat Keluarga

Faktor genetik kemungkinan berperan dalam tekanan darah tinggi, penyakit jantung, dan kondisi terkait lainnya. Namun, kemungkinan juga bahwa orang-orang dengan riwayat penyakit jantung keluarga memiliki lingkungan yang sama dan faktor potensial lainnya yang meningkatkan resikonya. Resiko penyakit jantung bisa meningkat bahkan lebih bila faktor keturunan dikombinasikan dengan pilihan gaya hidup yang tidak sehat, seperti merokok dan makan makanan yang tidak sehat.

j. Usia

Resiko penyakit jantung meningkat seiring bertambahnya usia. k. Ras atau etnisitas

Pada tahun 2013 penyakit jantung adalah penyebab utama kematian di Amerika Serikat untuk kulit putih non-Hispanik, kulit hitam non-Hispanik, dan Indian Amerika. Bagi orang Hispanik, dan orang Amerika Asia dan Kepulauan Pasifik, penyakit jantung adalah yang kedua setelah kanker sebagai penyebab kematian.

B. Penelitian yang Relevan

1. Achmad Rizal, (2007) meneliti tentang aplikasi pengolahan sinyal digital pada analisis dan pengenalan suara jantung untuk diagnosis penyakit jantung. Ekstraksi dilakukan dalam domain waktu dan frekuensi menggunakan beberapa teknik seperti LPC, RMS, DPW, dan Shannon serta klasifikasi menggunakan JST BP, ART2, dan Xkorelasi. Hasil pengujiannya adalah


(28)

11

dengan teknik RMS untuk suara jantung mampu memberikan tingkat akurasi 95% untuk 15 kelas data.

2. Lisa Anggraeni, (2014) meneliti tentang deteksi kelainan jantung berdasarkan pola PCG menggunakan Jaringan Syaraf Tiruan Backpropagation (JST-BP). Ekstraksi ciri menggunakan Linear Predictive Coding (LPC) untuk memperoleh fitur dari setiap pola. Hasil dari penelitian menunjukkan bahwa ekstraksi PCG menggunakan LPC memberikan hasil yang cukup baik Karena mampu menunjukkan kemiripan fitur dari PCG dalam satu jenis. Berdasarkan hasil pengujian dengan menggunakan 66 data, metode JST-BP memiliki akurasi pengujian 54,54% dan sensitivitas 96,55% dalam klasifikasi 4 jenis kelainan.

3. Ira Puspasari, (2015) meneliti tentang analisis sinyal suara jantung koroner. Ekstraksi ciri menggunakan pengolahan sinyal non-stasioner berdasarkan domain waktu dan frekuensi Short Time Fourier Transform. Hasil penelitian menunjukkan bahwa dari proses ekstraksi ciri diketahui seluruh frekuensi memiliki rata-rata nilai lebih dari 200 Hz. Sedangkan suara jantung normal memiliki frekuensi antara 20-200 Hz, dan abnormal memiliki rentang frekuensi hingga 1000 Hz. Pengujian dilakukan terhadap tiga spesifikasi jantung coroner. pada jantung koroner dengan spesifikasi hypertrophy ventricular kiri dengan repolarisasi abnormal. Diperoleh frekuensi karakteristik 505,56±8,82 Hz, yang terdeteksi pada rata-rata window ke 21,44±2,92, dengan rata-rata waktu 0,05±0,02 s. Jantung koroner dengan spesifikasi lateral infarct dan ishemic inferior memiliki nilai karakteristik


(29)

12

rata-rata frekuensi sebesar 376,11±2,20 Hz, rata-rata window ke-141,67±2,5, dan rata-rata waktu 0,35±0,02 s. Sedangkan jantung koroner dengan spesifikasi inferior infarct, ishemic dan sinus rhythm dengan ventrikular kompleks frekuensi awal memiliki nilai karakteristik rata-rata frekuensi sebesar 217,14±12,78 Hz, pada rata-rata window ke-74,29±4,16, dengan waktu 0,17±0,02 s.

4. Fransiscus Daso, (2015) meneliti tentang analisis sinyal suara jantung dengan menggunakan analisis sprektrum. Proses transformasi dilakukan dengan algoritma FFT. Hasil transformasi sinyal suara jantung normal terdapat sebuah bukit yang besar yang memliki peak di frekuensi 56 Hz dan frekuensi maksimum di 277.5 hz. Bentuk hasil transformasi sinyal jantung normal ini dijadikan acuan untuk membandingkan dengan sinyal jantung berikutnya yang tidak normal. Hasil transformasi sinyal suara jantung tidak normal dengan kelainan Mitral Stenosis menunjukan adanya bunyi frekuensi rendah yang ditandai dengan bukit kecil di posisi paling kiri grafik. Bukit berikutnya menunjukan S1 dan S2 yang memiliki frekuensi lebih tinggi. Frekuensi pada puncak bukit tertinggi didapat pada 49 Hz dan frekuensi tertinggi di 118.95 Hz.

5. Anggi Tiara Citra Ekinasti, (2016) meneliti tentang analisis dan ekstraksi ciri sinyal suara jantung menggunakan transformasi wavelet diskrit. Dekomposisi dilakukan pada frekuensi cuplik 8 Khz, 44.1 Khz, dan 48 Khz, dengan menggunakan wavelet coiflet, symlet, daubechies, dan biorthogonal. Ekstraksi ciri dilakukan dengan mencari nilai energi dari detail koefisien dan


(30)

13

aproksomasi koefisien serta mencari standar deviasi dari sinyal suara jantung. Hasil penelitiannya adalah pola sinyal PCG normal berdasarkan frekuensi cuplik 8KHz, 44100Hz, 48KHz, dengan mother wavelet symlet 2, symlet 5, symlet 7, daubechies 2, daubechies 5, daubechies 7, coiflet 2, coiflet 5, biorthogonal 2.8, biorthogonal 3.9, biorthogonal 6.8 dapat digunakan sebagai referensi untuk menentukan pola kondisi jantung normal.

C. Signal Phonocardiogram (PCG)

Phonocardiogram adalah teknik dalam penelusuran suara jantung dan pencatatan getaran akustik jantung melalui suatu transduser mikrofon yang akan direkam dan ditampilkan pada osiloskop. Suatu mikrofon yang dirancang khusus ditempatkan pada dinding dada sehingga getaran yang dihasilkan oleh jantung dapat diterima,diperkuat, serta direkam. Suara-suara ini mengindikasikan laju dan ritme jantung dalam memompa darah. Suara ini juga memberikan informasi tentang efektifitas pemompaan jantung dan aktifitas katup-katup jantung (Amrullah, 2012).

Suara jantung dapat digunakan lebih efisien oleh dokter ketika mereka ditampilkan secara visual. Dengan adanya hasil PCG dari pasien, ahli medis dapat mendengar kembali, melihat perekaman secara visual, serta dapat menganalisis dan mengolah data tersebut sesuai dengan kebutuhan. Dalam keadaan normal suara jantung menghasilkan dua suara yang berbeda yang sering dinyatakan dengan lub-dub atau disebut suara jantung pertama (S1) dan suara jantung kedua (S2). Suara lub atau suara jantung pertama (S1) muncul akibat dua penyebab yaitu penutupan katub atrioventrikular (katub mitral dan trikuspidalis) dan kontraksi


(31)

14

otot-otot jantung. Sedangkan suara dub atau suara jantung kedua (S2) disebabkan dari penutupan katub semilunaris (katub aorta dan pulmonal) (Debbal, 2009).

Suara jantung pertama memiliki waktu yang sedikit lebih lama dibandingkan dengan suara jantung kedua. Diantara suara jantung pertama dan suara jantung kedua terdapat dua interval yaitu sistole dan diastole. Sistole adalah tekanan darah yang dialirkan dari jantung ke arteri dan nadi, sedangkan diastole merupakan tekanan darah balik dari arteri dan nadi ke jantung. Sistole ialah interval antara suara jantung S1 dan S2, sedangkan diastole interval antara suara jantung S2 dan S1 (Nurlaili, 2011).

Gambar berikut adalah rangkaian alat rekam phonocardiogram.

Gambar 2.1. Rangkaian alat rekam phonocardiogram Gambar berikut adalah contoh signal phonocardiogram.

Gambar 2.2.Phonocardiogram Jantung


(32)

15

D. Wavelet

1. Pengertian Wavelet

Wavelet telah berkembang sejak abad ke-20, yaitu paper dari Frazier dan Jawerth (1985), selain itu wavelet juga popular disebuah “French School” di Perancis yang diketai oleh J. Morlet, A. Grossmann dan Y. Meyer. Wavelet atau

“ondolettes” dalam bahasa Perancis digunakan oleh geophysicist pada tahun

80-an sebagai sar80-ana untuk mengolah sinyal elektrik. Kesukses80-an numeris terap80-an ini dilakukan oleh A. Grossmann dan J. Morlet (Sianipar, 2003).

Wavelet adalah basis fungsi yang dikembangkan mengacu pada kebutuhan spesifik dari analisis signal dengan tetap memberikan keuntungan dalam representasi Time-Frequency secara terlokalisasi dan menyeluruh, dimana sinyal asli didekomposisi menjadi band-band frekuensi kemudian analisis sinyal dilakukan pada tiap-tiap band tersebut. Kelebihan wavelet sebagai fungsi transform adalah adanya fungsi kompresi (dilation) dan pergeseran (translation) dalam fungsi induknya (Ucuk Darusalam, 2009).

Menurut Daniel T.L Lee (1994), wavelet telah banyak diaplikasikan pada analisis sementara sinyal, analisis citra, sistem komunikasi, dan aplikasi pemrosesan sinyal lainnya. Beberapa contoh keluarga wavelet adalah Haar, Daubechies, Symlets, Coiflets, BiorSplines, ReverseBior, Meyer, DMeyer, Gaussian, Mexican hat, Morlet, Complex, Shannon, Frequency B-Spline, Complex Morlet, Riyad, dll.


(33)

16

2. Transformasi Wavelet

Transformasi merupakan suatu proses pengubahan data kedalam bentuk lain agar mudah dianalisis, sebagai misal transformasi fourier merupakan suatu proses pengubahan data (sinyal) kedalam beberapa gelombang kosinus yang berfrekuensi berbeda, sedangkan transformasi wavelet merupakan proses pengubahan sinyal kedalam berbagai wavelet basis (mother wavelet) dengan berbagai fungsi pergeseran dan penyekalaan. Proses transformasi wavelet dilakukan dengan mengkonvolusi sinyal dengan data tapis atau dengan proses perata-rataan dan pengurangan secara berulang, yang sering disebut dengan metode filter bank (Bagus K, 2006). Gambar berikut ini menunjukkan proses transformasi Wavelet dengan cara filter bank .

Gambar 2.3. Transformasi Wavelet. (Chui, 1992).

Terdapat dua jenis transformasi wavelet yaitu Continue Wavelet Transform (CWT) dan Discrete Wavelet Transform (DWT). CWT digunakan untuk sebuah fungsi yang berdomain bilangan real atas sumbu , dan DWT digunakan untuk sebuah fungsi atas domain bilangan bulat (biasanya = 0,1,…, −1, dimana dinotasikan sebagai banyaknya nilai dalam runtun waktu). Pada penelitian ini digunakan Discrete Wavelet Transform (DWT) karena data runtun waktu dari rekaman detak jantung pasien berdomain bilangan bulat.

− −

− −

… −


(34)

17

3. Discrete Wavelet Transform (DWT)

DWT digunakan untuk sebuah fungsi atas domain bilangan bulat, dengan = 0,1,…, −1, dimana N adalah banyak nilai dalam runtun waktu. DWT dianalisis dengan menggunakan penggambaran sebuah skala waktu sinyal digital didapatkan dengan menggunakan teknik filterisasi digital. Secara garis besar proses dalam teknik ini adalah dengan melewatkan sinyal yang akan dianalisis pada filter dengan frekuensi dan skala yang berbeda (Popola, 2007).

Wavelet menganalisis data runtun waktu untuk dilatasi dan translasi data diskrit dengan menggunakan mother wavelet ( ). Analisis DWT berdasarkan pada bentuk − , = , , , … (Percival & Walden, 2000). DWT dapat dikembangkan dari beberapa jenis wavelet, seperti Haar, Daubechies, Biorthorgonal, Coiflets, Symlets, Morlet and the Mexican Hat (The Mathworks, 2005). Satu dari fungsi mother wavelet adalah Wavelet Haar, A. Haar memperkenalkannya pada tahun 1910.

Langkah transformasi wavelet multilevel menurut Ida Bagus, (2006) adalah

a. Data ditansfomasikan menggunakan DWT sehingga diperoleh koefisien approximation dan koefisien detail.

→ | (2.1)

Untuk = , , … , dengan = merupakan banyaknya anggota dan �merupakan konstanta positif.


(35)

18

Hasil dekomposisi level 1 adalah sebagai berikut:

=

+

,

+

, … ,

�− + � (2.2)

=

,

, … ,

�− − �

(2.3)

merupakan approximation data dan hasil dekompisisi (DWs).

b. Transformasi dari koefisien yang pertama akan menghasilkan koefisien approximation dan koefisien detail yang kedua.

→ | (2.4)

Hasil dekomposisi level 2 adalah sebagai berikut:

=

̇ + ̇

,

̇ + ̇

, … ,

̇�− + ̇�

(2.5)

dengan

̇ = +

,

̇ = +

,…,

̇ = − + −

,

̇ = − +

=

̇ − ̇

,

̇ − ̇

, … ,

̇�− − ̇�

(2.6)

dengan

̇ = −

,

̇ = −

,…,

̇ = − − −

,

̇ = − −

c. Jika banyak levelnya adalah tiga, maka proses transformasi dilakukan sebanyak tiga kali.

Level maksimum dari transformasi signal wavelet multilevel adalah

max

( )

ln

ln(2)

panjang data signal panjang filter level

 

 

 

(2.7)

Pada penelitian ini yang digunakan adalah transformasi wavelet multilevel Haar pada transformasi signal One Dimensional karena penggunaannya yang lebih sederhana dengan panjang filter Haar adalah 2.


(36)

19

E. Ekstraksi Fitur

Ekstraksi fitur atau ciri adalah dengan mengkonversi signal suara ke dalam beberapa parameter, dimana ada sebagian informasi tidak berguna yang dibuang tanpa menghilangkan informasi dari signal suara tersebut. Hasil output dari ekstraksi ciri ini menjadi masukan pada proses pengenalan pola (Wenny Puspitasari, 2011). Ciri-ciri yang diekstraksi dari signal PCG detak jantung adalah sebagai berikut

1. Nilai minimum, nilai terkecil dari data numerik dekomposisi signal PCG. 2. Nilai maksimum, nilai terbesar dari data numerik dekomposisi signal PCG. 3. Mean, nilai rata-rata dari data numerik dekomposisi signal PCG.

�̅ =

∑��= � (2.8)

dengan adalah data ke-i dan n adalah banyaknya data.

4. Standar deviasi, mengukur besar dari variansi atau penyebaran dari rata-rata.

� = √

∑ − ̅ (2.9)

dengan adalah data ke-i, ̅adalah rata-rata, dan n adalah banyak data. 5. Energi, pada signal suara jantung energi total disetiap komponen detail dan

aproksimasi memberikan informasi yang berguna tentang lokasi signal yang tidak diinginkan (noise) seperti suara dari tubuh, suara karena gerakan subjek dan gerakan diafragma stetoskop. Semakin rendah range frekuensi hasil dekomposisi maka memiliki energi normalisasi yang besar dikarenakan mengandung suara jantung, sedangkan semakin tinggi range frekuensi hasil dekomposisi maka memiliki energi normalisasi yang kecil karena


(37)

20

mengandung noise (Kumar, 2015). Energi dekomposisi rata-rata di setiap EDi

dihitung dengan persamaan berikut

=

∑ �ℎ �� � (2.10)

dengan k= 1,2,3,…,panjang Di, i = 1,2,3,…,level maksimum dekomposisi. Proses ekstraksi ciri dilakukan dengan bantuan software Matlab R2016a.

F. Logika Fuzzy

1. Pengertian Himpunan Fuzzy

Himpunan klasik (crisp set) adalah himpunan yang membedakan anggota dan bukan anggota dengan batasan yang jelas (Ross, 2010). Himpunan fuzzy merupakan perluasan dari himpunan klasik dimana keberadaan suatu elemen tidak lagi bernilai benar atau salah, tetapi akan selalu bernilai benar jika mempunyai derajat keanggotaan yang berada dalam rentang [0,1] (Klir, 1997). ]

Definisi 2.1 (Klir dan Bo Yuan, 1995:7)

Himpunan fuzzy A pada himpunan universal U didefinisikan sebagai himpunan yang direpresentasikan dengan fungsi yang mengawankan setiap �� dengan bilangan real pada interval [0,1], ditulis → [0,1] demgan nilai

menyatakan derajat keanggotaan x di A.

Apabila suatu elemen x dalam suatu himpunan A memiliki derajat keanggotaan fuzzy = 0 berarti x tidak menjadi anggota himpunan A, dan jika derajat keanggotaan fuzzy = 1 berarti x menjadi anggota penuh dari himpunan A. Himpunan fuzzy memiliki 2 atribut (Sri Kusumadewi, 2010). yaitu : a. Linguistik, yaitu penamaan suatu himpunan yang memiliki suatu keadaan atau


(38)

21

b. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel.

Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy yaitu (Sri Kusumadewi, 2010).

a. Variabel Fuzzy

Variabel fuzzy merupakan variabel yang akan dibahas dalam suatu sistem fuzzy. b. Himpunan Fuzzy

Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy.

c. Semesta Pembicaraan

Semesta pembicaraan atau universal adalah keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy.

d. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dan boleh dioperasikan dalam suatu himpunan fuzzy.

2. Fungsi Keanggotaan

Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan titik-titik input kedalam derajat keanggotaan. Pendekatan fungsi merupakan salah satu cara yang dapat digunakan untuk mendapatkan derajat keanggotaan.

Ada beberapa fungsi yang dapat digunakan (Sri Kusumadewi, 2010) : a. Representasi Linear

Pada representasi linear, pemetaan input derajat keanggotaanya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi


(39)

22

pilihan yang baik untuk mendekati suatu konsep yang kurang jelas. Keadaan linear himpunan fuzzy terdiri dari dua keadaan linear naik dan linear turun.

1) Representasi Linear Naik

Pada representasi linear naik, kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan [0] bergerak ke kanan menuju nilai domain yang memiliki derajat keanggotaan lebih tinggi dengan fungsi keanggotaan:

� = { ,− −

<

, (2.11)

Gambar 2.4 Representasi Linear Naik Keterangan :

a = nilai domain saat derajat keanggotaan sama dengan nol b = nilai domain saat derajat keaggotaan sama dengan satu

Contoh 2.1 Fungsi keanggotaan untuk himpunan resiko seseorang terkena penyakit jantung seperti pada gambar 2.5.

50 20 30 [50] 0.6

70 20 50

    


(40)

23

Gambar 2.5. Himpunan fuzzy : Risiko Penyakit Jantung 2) Representasi Linear Turun

Pada linear turun, garis lurus dimulai dari nilai domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki keanggotaan lebih rendah dengan fungsi keanggotaan:

= {

−−

,

,

>

(2.12)

Gambar 2.6 Representasi Linear Turun Keterangan :

a = nilai domain saat derajat keanggotaan sama dengan satu b = nilai domain saat derajat keanggotaan sama dengan nol


(41)

24

ditunjukkan pada gambar 2.7. Pada usia 25 tahun seseorang melakukan deteksi dini penyakit jantung dengan derajat keanggotaan 0.8.

70 30 40 [30] 0.8

70 20 50

    

Gambar 2.7. Himpunan fuzzy : Deteksi Dini Penyakit Jantung b. Representasi Kurva Segitiga

Representasi kurva segitiga pada dasarnya terbentuk dari gabungan 2 garis linear, yaitu linear naik dan linear turun. Kurva segitiga hanya memiliki satu nilai dengan derajat keanggotaan tertinggi [1], hal tersebut terjadi ketika

= . Nilai yang tersebar dipersekitaran memiliki perubahan derajat keanggotaan menurun dengan menjauhi 1. Berikut adalah gambar representasi kurva segitiga.


(42)

25 Fungsi keanggotaannya adalah

0 , dan

x a

b a

 , (2.13)

b x c b

 , <

c. Kurva Gauss

Kurva Gauss merupakan kurva berbentuk lonceng dengan derajat keanggotaan 1 terletak pada pusat dengan domain �, dan lebar kurva seperti pada gambar berikut :

� ; ; �

=

− −�� (2.14)

Gambar 2.9. Representasi Kurva Gauss

Contoh 2.3 Kasus diagnosis penyakit jantung yang berdasarkan signal PCG, salah satu faktor yang mempengaruhi diagnosis adalah energi signal PCG. Representasi kurva pada Gambar 2.10 menunjukkan bahwa pada interval [0 20] dan [0 70] nilai keanggotaannya mengalami fluktuasi. Untuk nilai energi 35,0419 terdapat pada en3 maka derajat keanggotaannya adalah 0,6321.

k ( )x

 

Derajat keanggotaan ì


(43)

26

2 2 3

(35.0419 32.5) 2(2.654)

0,6321

en

e

 

 

Gambar 2.10. Kurva Gauss himpunan fuzzy : Energi Signal PCG

3. Operator Fuzzy

Terdapat 3 operator dasar yang diciptakan oleh Zadeh yaitu (Sri Kusumadewi, 2010:23)

a. Operator AND

Operator AND merupakan operator yang berhubungan dengan operasi interseksi pada himpunan − � sebagai hasil dengan operator AND diperoleh dengan mengambil derajat keanggotaan terkecil antar elemen pada himpunan-himpunan yang bersangkutan. Misalkan A dan B adalah himpunan fuzzy pada U, maka himpunan fuzzy didefinisikan dengan fungsi keanggotaan berikut.

� , = min � , � , ∀ , �� (2.14)

b. Operator OR

Operator OR merupakan operator yang berhubungan dengan operasi union pada himpunan − � sebagai hasil dengan operator OR diperoleh dengan mengambil derajat keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan. Misalkan A dan B adalah himpunan fuzzy pada U, maka


(44)

27

himpunan fuzzy didefinisikan dengan fungsi keanggotaan berikut.

� , = max � , � , ∀ , �� (2.15)

c. Operator NOT

Operator NOT merupakan operator yang berhubungan dengan operasi komplemen pada himpunan − � sebagai hasil dengan operator NOT diperoleh dengan mengurangkan derajat keanggotaan elemen pada himpunan yang bersangkutan dari 1. Misalkan A adalah himpunan fuzzy pada U. Sedangkan

′ merupakan komplemen dari suatu himpunan fuzzy A, maka himpunan fuzzy ′ didefinisikan dengan fungsi keanggotaan berikut:

� ′ = − (2.16)

4. Logika Fuzzy

Logika fuzzy merupakan perluasan dari logika klasik. Proposisi pada logika klasik hanya mengenal benar atau salah dengan proposisi nilai 0 atau 1. Sedangkan logika fuzzy menyamaratakan 2 nilai logika klasik dengan membiarkan proposisi nilai kebenaran pada interval [0,1] (Wang, 1997).

Alasan digunakannya logika fuzzy antara lain (Sri Kusumadewi, 2010): a. Konsep logika fuzzy mudah dimengerti dengan konsep matematis sebagai

dasar dari penalaran fuzzy yang sangat sederhana dan mudah dimengerti. b. Logika fuzzy sangat fleksibel, artinya mampu beradaptasi dengan

perubahan-perubahan, dan ketidakpastian yang menyertai permasalahan.

c. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat. Jika diberikan sekelompok data yang cukup homogen, dan kemudian ada beberapa data yang “eksklusif”, maka logika fuzzy memiliki kemampuan untuk


(45)

28 menangani data eksklusif.

d. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks.

e. Logika fuzzy dapat mengaplikasikan pengalaman-pengalaman para ahli secara langsung tanpa harus melalui proses pelatihan. Dalam hal ini, sering dikenal dengan nama Fuzzy Expert System menjadi bagian terpenting.

f. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional. Hal ini umumnya terjadi pada aplikasi di bidang teknik mesin maupun teknik elektro.

g. Logika fuzzy didasarkan pada bahasa alami. Logika fuzzy menggunakan bahasa sehari-hari sehingga mudah dimengerti.

5. Sistem Fuzyy

Sistem fuzzy dapat diartikan sebagai deskripsi linguistik (aturan fuzzy Jika-Maka) yang lengkap tentang proses yang dapat dikombinasikan kedalam sistem (Wang, 1997). Ada beberapa sistem fuzzy yang biasa digunakan, salah satunya yaitu sistem fuzzy Mamdani.

a. Sistem Fuzzy Mamdani

Sistem Mamdani ini dikenalkan oleh Ebrahim Mamdani pada tahun 1975 atau sering disebut dengan Metode Max-Min. Pada sistem ini diperlukan empat tahap untuk mendapatkan output, antara lain (Sri Kusumadewi, 2010)

1) Pembentukan himpunan fuzzy

Pada metode Mamdani, variabel input dan variabel output dibagi menjadi satu atau lebih himpunan fuzzy.


(46)

29 2) Aplikasi Fungsi Implikasi

Aturan atau implikasi pada sistem ini secara umum dapat dipresentasikan sebagai berikut: Jika dan .... dan Maka dengan ... menyatakan input sedangkan menyatakan output dengan , … , � menyatakan variabel dan

, … , � � menyatakan himpunan fuzzy. Pada metode ini, fungsi implikasi

yang digunakan adalah Min. 3) Inferensi fuzzy

Inferensi diperoleh dari kumpulan dan korelasi antar aturan. Metode yang biasa digunakan dalam melakukan inferensi adalah metode Max (Maximum). Pada metode max solusi himpunan fuzzy diperoleh dengan cara mengambil nilai maksimum aturan yang kemudian digunakan untuk memodifikasi daerah fuzzy dan mengaplikasikannya ke output dengan menggunakan operator OR (union/gabungan).

Secara umum dapat dituliskan :

� [ ] ← max � [ ], [ ] (2.18)

dengan

� [ ] menyatakan derajat keanggotaan solusi fuzzy sampai aturan ke-i.

[ ] menyatakan derajat keanggotaan konsekuen fuzzy sampai aturan ke-i. 4) Penegasan (defuzzifikasi)

Defuzifikasi adalah komponen penting dalam pemodelan sistem fuzzy. Defuzifikasi digunakan untuk menghasilkan nilai variabel solusi yang diinginkan dari suatu daerah konsekuan fuzzy (Setiadji, 2009).


(47)

30

Terdapat tiga jenis defuzzifikasi (Wang, 1997), yaitu: a) Center of Gravity (Metode Centroid)

Pada metode ini, solusi tegas diperoleh dengan cara mengambil titik pusat (y*) daerah fuzzy, secara umum dirumuskan

∗=

� ; untuk variabel kontinu (2.19)

∗=

∑��= �� �

∑��= � �

; untuk variable diskrit (2.20)

Dengan

= nilai tegas

� = derajat keanggotaan nilai tegas b) Center Average Defuzzifier (CAD)

Defuzzifikasi ini dapat digunakan jika output fungsi keanggotaan dari beberapa proses fuzzy mempunyai bentuk yang sama. Metode ini mengambil nilai rata-rata dengan menggunakan pembobotan berupa derajat keanggotaan. Pada defuzzifikasi ini rumus yang digunakan yaitu:

1 1

*

l M

l l

M l l

y

w

y

w

 

(2.21)

dengan

= jumlah himpunan fuzzy

̅ = pusat himpunan fuzzy ke- = tinggi himpunan fuzzy ke-


(48)

31 c) Maximum Defuzzifier

Defuzzifikasi ini dengan mengambil salah satu dari nilai-nilai variabel dimana himpunan bagian fuzzy memiliki nilai kebenaran maksimum sebagai nilai tegas bagi variabel output (y*).

Ada tiga jenis maximum defuzzifier, yaitu: i. Smallest of Maxima (SOM)

Solusi tegas diperoleh dengan cara mengambil nilai terkecil dari domain yang memilki derajat keanggotaan maksimum.

ii. Largest of Maxima (LOM)

Solusi tegas diperoleh dengan cara mengambil nilai terbesar dari domain yang memilki derajat keanggotaan maksimum.

iii. Mean of Maxima (MOM)

Solusi tegas diperoleh dengan cara mengambil nilai rata-rata domain yang memilki derajat keanggotaan maksimum.

* hgt

hgt y y

dy

dy

(2.22)

dengan

= nilai tegas


(49)

32 b. Susunan Sistem Fuzzy

Susunan sistem fuzzy dapat digambarkan pada diagram berikut:

Gambar 2.11. Susunan Sistem Fuzzy. Langkah-langkah dalam sistem fuzzy adalah:

1) Menentukan Input dan Output

Input merupakan variabel/data yang akan dimasukan pada suatu sistem. Output merupakan hasil dari keluaran atau kesimpulan dari input pada suatu sistem.

2) Fuzzifikasi

Fuzzifikasi yaitu pemetaan dari himpunan tegas (sesuatu yang bernilai pasti) ke himpunan fuzzy (sesuatu yang bernilai samar) dengan suatu fungsi keanggotaan. Dengan kata lain proses fuzzifikasi merupakan proses untuk mengubah variabel non-fuzzy menjadi variabel fuzzy dengan suatu fungsi keanggotaan. Melalui fungsi keanggotaan yang telah disusun maka nilai masukan tersebut menjadi informasi fuzzy yang selanjutnya akan digunakan untuk proses pengolahan secara fuzzy.

3) Menentukan Aturan Fuzzy

Sebuah pengetahuan aturan fuzzy dipresentasikan dalam aturan fuzzy Jika-Maka. Aturan fuzzy Jika-Maka dapat dipresentasikan dalam pernyataan berikut,


(50)

33

“Jika , maka ”, dengan A dan B menyatakan himpunan fuzzy dan

" " disebut anteseden (premis) sedangkan " " disebut konsekuen (kesimpulan). Aturan Jika-Maka dapat dipresentasikan pada beberapa variable anteseden dan satu variabel konsekuan dengan operator AND atau operator OR. Aturan dapat dinyatakan sebagai berikut (Wang, 1997).

Jika ∙ ∙.... Maka ,dengan ,

... menyatakan anteseden sedangkan menyatakan konsekuen dan “ ∙” menyatakan operator himpunan fuzzy (misal AND atau OR). 4) Melakukan Inferensi fuzzy

Inferensi diperoleh dari kumpulan dan korelasi antar aturan. Metode yang biasa digunakan dalam melakukan inferensi adalah metode Max (Maximum). 5) Melakukan Defuzifikasi

Defuzifikasi adalah komponen penting dalam pemodelan system fuzzy. Defuzzifikasi digunakan untuk menghasilkan nilai variable solusi yang diinginkan dari suatu daerah konsekuan fuzzy (Setiadji, 2009).

G. Uji Ketepatan Diagnosis

Untuk mengetahui tingkat keakuratan pembentukan model maka harus dilakukan pengujian baik terhadap data latih maupun data uji, pengujian dilakukan dengan mencari akurasi, sensitivitas, dan spesifisitas.

Berikut ukuran hasil diagnosis untuk menghitung sensitifitas dan spesifikasi (Sharma, 2013)

a. True Positive (TP), yaitu pasien memiliki penyakit dan hasil klasifikasi menyatakan pasien memiliki penyakit.


(51)

34

b. False Positive (FP), yaitu pasien tidak memiliki penyakit dan hasil klasifikasi menyatakan pasien memiliki penyakit.

c. True Negative (TN), yaitu pasien tidak memiliki penyakit dan hasil klasifikasi menyatakan pasien tidak memiliki penyakit.

d. False Negative (FN), yaitu pasien memiliki penyakit dan hasil klasifikasi menyatakan pasien tidak memiliki penyakit.

1. Sensitivitas

Sensitivitas berkaitan dengan tes kemampuan untuk mengidentifikasi hasil yang positif. Rumus untuk menghitung sensitivitas. (Altman D.G., 1994).

100%

TP sensitivitas

TP FN

 

(2.23)

2. Spesifisitas

Spesifisitas berkaitan dengan tes kemampuan untuk mengidentifikasi hasil negatif. (Altman D.G., 1994).

100% TN

spesifisitas

TN FP

 

(2.24)

3. Akurasi

Hasil klasifikasi model dapat diketahui tingkat akurasinya dengan membandingkan kebenarannya dengan klasifikasi yang asli atau sesungguhnya. Model yang baik akan memiliki tingkat akurasi 100 %. Secara umum akurasi dapat dihitung dengan rumus:

100% jumlah data benar

akurasi

jumlah data keseluruhan


(52)

35

H. Graphical User Interface (GUI)

GUIDE (GUI development environment) menyediakan alat untuk merancang aplikasi yang diinginkan. Dengan menggunakan GUIDE Layout Editor dapat merancang User Interface (UI) secara grafis. GUIDE secara otomatis menghasilkan kode MATLAB untuk membangun UI, yang dapat dimodifikasi untuk memprogram perilaku aplikasi yang dibuat (MathWorks, 2017).

Keunggulan GUI Matlab dibandingkan dengan bahasa pemrograman yang lain adalah :

1. Banyak digunakan dan sesuai untuk aplikasi-aplikasi berorientasi sains. 2. Mempunyai fungsi built-in sehingga tidak mengharuskan pengguna

membuat perintah sendiri.

3. Ukuran file (gambar dan M-file) tidak terlalu besar. 4. Kemampuan grafis cukup baik.

GUI dapat ditampilkan dengan menuliskan guide pada command window lalu memilih Blank GUI(Default)untuk menampilkan halaman baru. Format penyimpanan file GUI terdiri dari dua ekstensi yaitu fig-file dan m-file.


(53)

36 BAB III

METODE PENELITIAN A. Metode Pengumpulan Data

Data penelitian ini diperoleh melalui observasi terhadap pasien penyakit jantung. Penelitian ini menggunakan alat untuk mendeteksi dan perekaman detak jantung pasien penyakit jantung secara elektro-akustik atau PCG (Phonocardiogram). Keluaran dari alat ini adalah isyarat tegangan yang merepresentasikan detak jantung.

B. Jenis dan Sumber Data Penelitian

Jenis data yang digunakan untuk penelitian ini adalah data primer yang merupakan data detak jantung pasien penyakit jantung yang direkam dari tanggal 24 Februari 2017 sampai dengan 18 April 2017 di Rumah Sakit Umum PKU Muhammadiyah Yogyakarta dan data detak jantung orang sehat/normal. Perekaman detak jantung dilakukan terhadap sejumlah relawan pasien penyakit jantung (75 orang) dan normal (25 orang) yang masing-masing menghasilkan isyarat. Isyarat tersebut kemudian direkam dengan alat rekam PCG yang dihubungkan dengan laptop menggunakan program aplikasi Sound Forge 10 dan disimpan dalam bentuk file wav.

C. Teknik Analisis Data

Pada penelitian ini analisis yang digunakan adala Wavelet Fuzzy Systems yaitu model gabungan antara Wavelet Transform dengan Fuzzy Systems. Penelitian diawali dengan isyarat signal PCG yang akan dianalisis dengan Wavelet untuk mengekstraksi dan mengurai menjadi beberapa komponen frekuensi dengan


(54)

37

amplitude masing-masing. Setelah diekstraksi data dibagi menjadi 80 data latih dan 20 data uji. Rincian data untuk proses pembelajaran dan proses uji adalah sebagai berikut:

a. Data Latih

1) 20 data PCG Normal 2) 20 data PCG HHD 3) 20 data PCG CHF

4) 20 data PCG Angina Pectoris

Jumlah data yang digunakan untuk proses pembelajaran adalah 80 data PCG.

b. Data Uji

1) 5 data PCG Normal 2) 5 data PCG HHD 3) 5 data PCG CHF

4) 5 data PCG Angina Pectoris

Jumlah data yang digunakan untuk proses uji adalah 20 data PCG. Data rekaman detak jantung PCG dapat dilihat pada lampiran 1.

Selanjutnya dianalisis dengan Fuzzy Systems untuk klasifikasi jenis penyakit jantung dengan bantuan software Matlab R2016a. Langlah-langkah yang dilakukan adalah :

1. Pre-processing data berupa normalisasi data dan pemotongan data dengan bantuan software Matlab R2016a dan Sound Forge Pro 10.0.


(55)

38

signal sehingga diperoleh kualitas signal yang lebih baik dengan bantuan toolbox Matlab R2016a.

3. Mengekstrak signal sehingga diperoleh input untuk pemodelan fuzzy, hasil ekstraksimya adalah nilai minimum, maxium, mean, standar deviasi, dan energi dengan bantuan software Matlab R2016a.

4. Menentukan himpunan universal dan mendefinisikan pada input fuzzy. 5. Menentukan himpunan universal dan mendefinisikan pada output fuzzy. 6. Menentukan nilai keanggotaan pada data latih.

7. Membentuk aturan fuzzy berdasarkan hasil ekstraksi data latih. 8. Defuzzifikasi dengan dezuffifikasi Mom.

9. Melakukan pengujian terhadap data untuk mengetahui tingkat keakurasian, sensitivitas dan spesifisitas.

10. Kesimpulan


(56)

39

Secara singkat, diagram klasifikasi penyakit jantung dengan Wavelet Fuzzy System sebagai berikut.

Gambar 3.1. Diagram Langkah Penelitian

D. Perencanaan Layar Aplikasi

Setelah model fuzzy yang dibentuk sudah baik, maka tampilan Guide sistem fuzzy dapat dibentuk. Tujuannya agar tampilan yang dihasilkan lebih menarik dan mudah pengoperasiannya. Rancangan awal GUI diagnosis penyakit jantung ditunjukkan pada Gambar 3.2.

Normalisasi dengan Matlab

R2016a

Data Signal PCG

Pemotongan dengan Sound Forge Pro 10.0

Wavelet

Fuzzifikasi

Membuat Aturan Fuzzy

Defuzzifikasi

Model Fuzzy Hasil

Klasifikasi Sensitifitas

Spesifisitas Akurasi

GUI Klasifikasi Penyakit Jantung


(57)

40

Gambar 3.2 Rancangan Layar Interface dengan GUI.

Berikut adalah penjelasan urutan langkah langkah dalam perintah pembuatan GUI untuk diagnose penyakit jantung :

1. Menulis judul GUI, terdapat pada atas layar GUI.

2. Memilih sinyal PCG asli detak jantung pasien jantung atau normal dengan format file .wav.

3. Menampilkan sinyal PCG asli dalam waktu dan frekuensi.

4. Memilih sinyal PCG hasil dekomposisi wavelet dengan format file .wav. 5. Menampilkan sinyal PCG hasil dekomposisi dalam waktu dan frekuensi. 6. Mengekstrasi sinyal PCG hasil dekomposisi menjadi fitur minimum,

maksimum, rata-rata, standar deviasi, dan energi. 7. Menampilkan hasil ekstraksi.

8. Mendiganosa dari hasil ekstraksi sinyal menjadi normal, hhd, chf, atau angina

1. Diagnosa Penyakit Jantung

3. Gambar sinyal asli

5. Gambar sinyal hasil dekomposisi

2. Pilih Sinyal 4. Pilih Sinyal

6. Ekstraksi

7. Hasil Ekstraksi Minimum

Maksimum Mean

Standar Deviasi Energy

8. Diagnosa

9. Hasil Diagnosa


(58)

41 pectoris.

9. Menampilkan hasil diagnose.

10.Mengosongkan layar GUI untuk mengulangi dan memilih sinyal yang lain. 11.Perintah untuk keluar dari tampilan GUI.


(59)

42

BAB IV PEMBAHASAN A.

Pre-Processing

Proses pengolahan signal PCG sebelum dilakukan eksteaksi dan klasifikasi adalah pre-processing. Signal PCG untuk data training dan data testing terdapat dalam lampiran 5 (halaman 81). Signal PCG yang direkam selama kurang lebih 10 detik dinormalisasi kemudian dilakukan pemotongan signal dengan bantuan perangkat lunak Sound Forge Pro 10.0. Rekaman data PCG diperoleh dari pasien penyakit jantung di Rumah Sakit Umum PKU Muhammadiyah Yogyakarta dan orang dengan jantung yang sehat kemudian disimpan dengan format file Waveform Audio Format (.wav). Berikut adalah langkah-langkah pre-proseccing signal PCG. 1. Proses Normalisasi

Signal PCG yang sudah direkam kemudian dinormalisasi dengan bantuan software Matlab R2016a, proses normalisasi bertujuan agar data tidak berpengaruh pada besar kecilnya amplitudo signal hasil perekaman, proses normalisasi juga tidak mengubah informasi yang terdapat pada signal. Proses normalisasi dilakukan dengan mencari nilai mutlak terendah/tertinggi dari signal dan digunakan untuk membagi signal aslinya. Berikut ini adalah gambar hasil signal PCG sebelum dan sesudah normalisasi.


(60)

43

(a) (b)

Gambar 4.1. Signal PCG ; (a) N20.wav sebelum dinormalisasi, (b) N20.wav setelah dinormalisasi.

Untuk hasil normalisasi signal yang lain terdapat pada lampiran 6 (halaman (87). 2. Proses Pemotongan Signal

Signal PCG yang telah dinormalisasi kemudian dilakukan pemotongan untuk mengambil satu detakan terdiri dari suara jantung pertama (S1) dan suara jantung kedua (S2). Proses pemotongan signal PCG dilakukan dengan bantuan software Sound Forge Pro 10.0, pemotongan dilakukan dengan metode rectangle. Berikut adalah hasil pemotongan signal PCG.

(a)

(b)

S1 S2

S1 S2

S1 S2

S1 S2

S1

S2 S2

S1

S1 S2

S1 S2

S1 S2

S1 S2

S1 S2

S1 S2


(61)

44 (c)

Gambar 4.2. Signal PCG; (a) N20.wav sebelum dipotong, (b) proses pemotongan N20.wav, (c) N20.wav setelah dipotong.

Gambar 4.2 (c) menunjukkan signal PCG yang telah dinormalisasi dan dipotong sehingga siap untuk didekomposisi. Untuk hasil pemotongan signal yang lain terdapat pada lampiran 7 (halaman 93).

3. Dekomposisi Signal

Proses dekomposisi signal menggunakan Discrete Wavelet Transform (DWT) mother Haar dengan level maksimum dekomposisi diperoleh dari persamaan (2.7). Proses DWT digunakan untuk menunjukkan ciri signal, menapis data dan meningkatkan kualitas data. Proses dekomposisi dilakukan dengan bantuan toolbox dari Matlab R2016a, signal PCG yang diperoleh berupa file .wav sehingga dapat langsung digunakan. Berikut proses dekomposisi signal dengan DWT .

Langkah 1. Memilih Wavelet Design & Analysis dari toolbox Matlab R2016a di menu Apps.

Langkah 2. Memilih Wavelet 1-D pada menu One Dimensional.

Langkah 3. Load signal PCG yang sudah dinormalisasi dan dipotong dengan File-Load-Signal.

Langkah 4. Memilih Wavelet Haar dengan level yang sudah dicari dengan persamaan (2.1).


(62)

45

Berikut adalah hasil dekomposisi N20.wav DWT Haar level 12.

D1 D2

D3 D4

D5 D6

D7 D8

D9 D10

D11 A11

Gambar 4.3. Hasil Dekomposisi signal N20.wav

Koefisien korelasi antara hasil dekomposisi dan signal aslinya sebagai berikut.

Tabel 4.1. Koefisien Korelasi

Hasil Dekomposisi Koefisien Korelasi

D1 0.1053

D2 0.2086

D3 0.3853

D4 0.5676

D5 0.5927

D6 0.2053

D7 0.2778

D8 0.0519

D9 0.0353

D10 0.0074

D11 0.0041


(63)

46

Berdasarkan tabel koefisien korelasi antara hasil dekomposisi dengan signal aslinya diperoleh bahwa D4 dan D5 memiliki koefisien korelasi yang lebih besar sehingga DWs dibentuk dari D4 dan D5.

Gambar 4.4. Plot DWs data N20.wav

Untuk hasil dekomposisi signal yang lain terdapat pada lampiran 8 (halaman 99).

4. Ekstraksi Signal

Hasil DWs yang diperoleh kemudian diekstraksi, pada penelitian ini ekstraksi yang digunakan berjumlah 5 fitur yaitu nilai minimum, maximum, rata-rata, standar deviasi dan energi. Kelima fitur tersebut sudah terdapat dalam Matlab R2016a. Berikut adalah contoh hasil ekstraksi signal PCG N20.wav.

Tabel 4.2. Hasil ekstraksi N20.wav

Nama File N20.wav

Minimum -0.3851

Maximum 0.5336

Rata-rata -1.20E-06 Standar Deviasi 0.0519

Energi 35.0419


(64)

47

B. Klasifikasi Logika Fuzzy

1. Mengidentifikasi Himpunan Fuzzy pada Input

Himpunan fuzzy yang digunakan pada input adalah himpunan universal yang didapat dari nilai pendekatan minimum dan maximum dari setiap data input untuk 80 data latih, sehingga semua nilai input akan masuk pada interval himpunan tersebut. Berikut adalah himpunan fuzzy untuk setiap input.

a. Minimum (min)

Nilai terkecil dan terbesar input minimum pada data latih adalah -0.8741 dan -0.0462 maka himpunan semesta untuk fitur minimum adalah

0.88, 0.04

min

U    dengan lebar kurva 0.04459. Variabel untuk input minimum dibagi menjadi 9 himpunan fuzzy dengan rentang yang sama yaitu min1, min2, min3, min4, min5, min6, min7, min8, dan min9 dengan pusat dari

masing-masing himpunan fuzzy tersebut adalah -0.88, -0.775, -0.67, -0.565, -0.46, -0.355, -0.25, -0.145, dan -0.04. Sembilan fungsi keanggotaan tersebut direpresentasikan kedalam fungsi keanggotaan Gauss. Fungsi keanggotaan untuk input minimum adalah sebagai berikut.

2 2

( ( 0.88)) 2(0.04459) x

e

   ,− . � − . 1

min f x( , 0.04459, 0.88)

   

0, x yang lain

2 2

( ( 0.775)) 2(0.04459) x

e

   ,− . � − 2

min f x( , 0.04459, 0.775)

   


(65)

48

2 2

( ( 0.67)) 2(0.04459) x

e

   ,− . � − .

0, x yang lain

2 2

( ( 0.565)) 2(0.04459) x

e

   ,− . � − .

min 4 f x( , 0.04459, 0.565)

   

0, x yang lain

2 2

( ( 0.46)) 2(0.04459) x

e

   ,− . � − .

min 5 f x( , 0.04459, 0.46)

   

0, x yang lain

2 2

( ( 0.355)) 2(0.04459) x

e

   ,− . � − .

min 6 f x( , 0.04459, 0.355)

   

0, x yang lain

2 2

( ( 0.25)) 2(0.04459) x

e

   ,− . � − .

min 7 f x( , 0.04459, 0.25)

   

0, x yang lain

2 2

( ( 0.145)) 2(0.04459) x

e

   ,− . � − . 8

min f x( , 0.04459, 0.145)

   

0, x yang lain

2 2

( ( 0.04)) 2(0.04459) x

e

   ,− . � − . 9

min f x( , 0.04459, 0.04)

   

0, x yang lain

Gambar 4.5. Grafik Fungsi Keanggotaan Variabel Minimum

min 3 f x( , 0.04459, 0.67)


(66)

49 b. Maksimum (max)

Nilai terkecil dan terbesar input maksimum pada data latih adalah 0.057 dan 0.8872 maka himpunan semesta untuk fitur maksimum adalah

0.05,0.89

max

U  dengan lebar kurva 0.04459. Variabel untuk input maksimum dibagi menjadi 9 himpunan fuzzy dengan rentang yang sama yaitu max1, max2, min3, max4, max5, max6, max7, max8, dan max9 dengan

pusat dari masing- masing himpunan fuzzy tersebut adalah -0.05, -0.155, -0.26, -0.365, -0.47, -0.575, -0.68, -0.785, dan -0.9. Sembilan fungsi keanggotaan tersebut direpresentasikan kedalam fungsi keanggotaan Gauss. Fungsi keanggotaan untuk input maksimum adalah sebagai berikut.

2 2 ( 0.05) 2(0.04459) x

e

  , . � . 1

max f x( , 0.04459, 0.05)

  

0, x yang lain

2 2 ( 0.155) 2(0.04459) x

e

  , . � . 2

max f x( , 0.04459, 0.155)

  

0, x yang lain

2 2 ( 0.26) 2(0.04565) x

e

  , . � . 3

max f x( , 0.04459, 0.26)

  

0, x yang lain

2 2 ( 0.365) 2(0.04459) x

e

  , . � . 4

max f x( , 0.04459, 0.365)

  

0, x yang lain

2 2 ( 0.47) 2(0.04459) x

e

  , . � .

max5 f x( , 0.04459, 0.47)

  


(67)

50 2 2 ( 0.575) 2(0.04459) x

e

  , . � . 6

max f x( , 0.04459, 0.575)

  

0, x yang lain

2 2 ( 0.68) 2(0.04459) x

e

  , . � .

max7 f x( , 0.04459, 0.68)

  

0, x yang lain

2 2 ( 0.785) 2(0.04459) x

e

  , . � . 8

max f x( , 0.04459, 0.785)

  

0, x yang lain

2 2 ( 0.9) 2(0.04459) x

e

  , . � . 9

max f x( , 0.04565, 0.9)

  

0, x yang lain

Gambar 4.6. Grafik Fungsi Keanggotaan Variabel Maksimum c. Rata-rata (mean)

Nilai terkecil dan terbesar input rata-rata pada data latih adalah -9.39e-04 dan 7.61e-04 maka himpunan semesta untuk fitur rata-rata adalah

0.00094,0.00077

mean

U   dengan lebar kurva 9.077e-005. Variabel

untuk input maksimum dibagi menjadi 9 himpunan fuzzy dengan rentang yang sama yaitu mean1, mean2, mean3, mean4, mean5, mean6, mean7, mean8,

dan mean9 dengan pusat dari masing-masing himpunan fuzzy tersebut adalah


(1)

121

% --- Executes on button press in pushbutton4.

function pushbutton4_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton4 (see GCBO)

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

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

[FileName,PathName] = uigetfile({'*.wav'},'file selector'); if isempty(FileName)

return end

global I2;

Filedata=[PathName FileName]; I2=wavread(Filedata);

axes(handles.axes2); cla;

plot(I2)

% --- Executes on button press in pushbutton5.

function pushbutton5_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton5 (see GCBO)

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

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

global I2;

minimum=min(I2); maksimum=max(I2); rata=mean(I2); stdev=std(I2);

set(handles.edit1,'string',minimum) set(handles.edit2,'string',maksimum) set(handles.edit3,'string',rata) set(handles.edit4,'string',stdev)

% --- Executes on button press in pushbutton6.

function pushbutton6_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton6 (see GCBO)

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

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

function edit1_Callback(hObject, eventdata, handles)

% hObject handle to edit1 (see GCBO)

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

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

% Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double


(2)

122

% --- Executes during object creation, after setting all properties.

function edit1_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit1 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit2_Callback(hObject, eventdata, handles)

% hObject handle to edit2 (see GCBO)

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

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

% Hints: get(hObject,'String') returns contents of edit2 as text % str2double(get(hObject,'String')) returns contents of edit2 as a double

% --- Executes during object creation, after setting all properties.

function edit2_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit2 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit3_Callback(hObject, eventdata, handles)

% hObject handle to edit3 (see GCBO)

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

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


(3)

123

% str2double(get(hObject,'String')) returns contents of edit3 as a double

% --- Executes during object creation, after setting all properties.

function edit3_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit3 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit4_Callback(hObject, eventdata, handles)

% hObject handle to edit4 (see GCBO)

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

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

% Hints: get(hObject,'String') returns contents of edit4 as text % str2double(get(hObject,'String')) returns contents of edit4 as a double

% --- Executes during object creation, after setting all properties.

function edit4_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit4 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function edit5_Callback(hObject, eventdata, handles)


(4)

124

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

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

% Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double

% --- Executes during object creation, after setting all properties.

function edit5_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit5 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in pushbutton7.

function pushbutton7_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton7 (see GCBO)

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

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

close

% --- Executes on button press in pushbutton9.

function pushbutton9_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton9 (see GCBO)

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

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

a1 = str2double(get(handles.edit1,'string')); a2 = str2double(get(handles.edit2,'string')); a3 = str2double(get(handles.edit3,'string')); a4 = str2double(get(handles.edit4,'string')); a5 = str2double(get(handles.edit5,'string')); input = [a1 a2 a3 a4 a5];

fis = readfis('bismillah');

out = evalfis( [a1 a2 a3 a4 a5],fis); if out<=1.5

out = 'NORMAL';

elseif out > 1.5 && out <=2.5 out = 'HHD';

elseif out > 2.5 && out <=3.5 out = 'CHF';


(5)

125

end;

set(handles.edit6,'string',out);

function edit6_Callback(hObject, eventdata, handles)

% hObject handle to edit6 (see GCBO)

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

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

% Hints: get(hObject,'String') returns contents of edit6 as text % str2double(get(hObject,'String')) returns contents of edit6 as a double

% --- Executes during object creation, after setting all properties.

function edit6_CreateFcn(hObject, eventdata, handles)

% hObject handle to edit6 (see GCBO)

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

% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

% --- Executes on button press in pushbutton10.

function pushbutton10_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton10 (see GCBO)

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

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

global I; global I2; I=[0]; I2=[0];

axes(handles.axes1); imshow(I);

axes(handles.axes2); imshow(I2);

set(handles.edit1,'string',' '); set(handles.edit2,'string',' '); set(handles.edit3,'string',' '); set(handles.edit4,'string',' '); set(handles.edit5,'string',' '); set(handles.edit6,'string',' ');


(6)