51
BAB V IMPLEMENTASI SISTEM Implementasi merupakan tahap peletakan sistem sehingga sistem siap dioperasikan. Tahap ini meliputi implementasi datamining untuk mencari aturan – aturan
sebagai
dasar
inferensi,
implementasi
proses
inferensi
dengan
menggunakan logika fuzzy, antarmuka untuk memasukkan data, dan terakhir adalah implementasi keluaran berupa prediksi DBD dan tatalaksananya. 5.1.
Implentasi Sistem Proses pencarian aturan – aturan yang akan digunakan dalam membangun
sistem ini dibangun dengan menggunakan datamining pada DBMS Oracle 9i. Selanjutnya aturan hasil datamining akan digunakan dalam proses inferensi fuzzy yang dibangun dengan perangkat lunak Matlab versi 7.0 R 14. Untuk mendapatkan hasil prediksi dari tahun selanjutnya akan digunakan perangkat lunak Minitab R 11 dengan sub sistem Metode Winter’s. Pengembangan aplikasi DBD memerlukan perangkat keras yang mendukung perangkat lunak yang digunakan, sehingga sistem ini dapat berjalan sesuai dengan fungsinya. •
Spesifikasi perangkat keras yang digunakan : - Prosesor Intel Pentium IV atau yang setara - RAM 128 Mb atau lebih - Hard disk 20Gb atau lebih - CD-Rom 8x atau lebih - VGA Card 16 Mb atau lebih - Monitor resolusi minimal 800 x 600 pixel - Keyboard dan Mouse
•
Spesifikasi perangkat lunak yang digunakan : - OS Windows 98/ 2000 / XP - Matlab versi 7.0 - Minitab R 11
52
5.2.
Pembangunan Sistem Data mining Pembangunan sistem data mining dengan algoritma CPAR menggunakan
PL/SQL. Pada penelitian ini digunakan DBMS Oracle 9i. Pada tahap awal data yang berasal dari data BMG berupa data suhu, curah hujan, penyinaran matahari dan kelembaban udara rata – rata per minggu dan data DBD, diubah ke dalam bentuk kategori dengan ketentuan seperti pada tabel berikut dan selanjutnya dirubah menjadi data dalam bentuk diskrit. Data wilayah yang sudah dalam bentuk diskrit selanjutnya ditransformasi ke dalam bentuk array dua dimensi dan dilakukan proses cleaning dengan menghapus baris-baris yang tidak lengkap. Pada proses pembuatan sistem data mining sebagai contoh dipilih 20 baris sebagai data training. (secara lengkap ditampilkan pada lampiran 4). Berikut adalah contoh sampel data yang telah dirubah kedalam bentuk diskrit : Tabel 9 : Tabel Diskrit Untuk Wilayah Jakarta Selatan
Minggu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Temperatur (oC) 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3
Curah hujan (mm) 4 5 4 4 5 5 6 4 4 6 4 5 4 4 5 6 4
Sinar matahari (%) Kelembaban(%) 10 14 9 14 9 14 9 14 9 14 9 14 9 14 9 14 10 13 9 14 9 14 10 14 11 13 10 14 10 13 11 13 10 14
DBD 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 15
5.2.1. Pembentukan Sampel Positif dan Sampel Negatif Kolom terakhir pada sampel data menunjukkan kelas. Angka 15 menunjukkan kelas DBD pada kondisi kuning dan 16 menunjukkan kelas DBD pada kondisi merah. Data training kemudian dipisahkan menjadi sampel positif (data kejadian DBD pada kondisi merah) dan sampel negatif (data kejadian DBD
53
pada kondisi kuning). Sampel data positif diberikan dalam Tabel 10, sedangkan sampel negatif diberikan dalam Tabel 11. Tabel 10 : Sampel Data Positif Minggu 4 5 6 7 8 9 10 11 12 13 14 15 16
Suhu (oC) 3 3 3 2 3 3 3 3 3 3 3 3 3
Curah hujanmm) 4 5 5 6 4 4 6 4 5 4 4 5 6
Sinar matahari(%) 9 9 9 9 9 10 9 9 10 11 10 10 11
Kelembaban (%) 14 14 14 14 14 13 14 14 14 13 14 13 13
DBD 16 16 16 16 16 16 16 16 16 16 16 16 16
Tabel 11 : Tabel Ssampel Negatif
Minggu 1 2 3 17
Suhu (oC) 3 3 3 3
Curah hujan(mm) 4 5 4 4
Sinar matahari (%) 10 9 9 10
Kelembaban (%) 14 14 14 14
DBD 15 15 15 15
5.2.2. Pembentukan Basis Aturan / Rule Base Setelah di kelompokkan kedalam sampel positif dan negatif, dan dibentuk dalam array 2 (dua) dimensi, selanjutnya pada data tersebut ditentukan aturan yang akan di cari, jika aturan yang ingin dicari adalah pada DBD kondisi kuning maka sesuai dengan aturan yang telah ditetapkan, maka kita masukkan data: Kondisi DBD = (jumlah data negatif, jumlah data posif, bobot). - Jumlah data negatif / positif sesuai dengan wilayah yang akan di prediksi - Bobot yang dimasukkan 0.1 s/d 1 Dari hasil pemasukkan data (61,36,0.99) dan (61,36, 0.8) untuk wilayah Jakarta Selatan, dapat dilihat pada tabel berikut ini. (data selengkapnya dapat dilihat pada lampiran 5 )
54
Tabel 12. Hasil Pemasukkan Data Untuk Wilayah Jakarta Selatan 61,36,0.99 1 2 3 61,36,0.8 1 1
13 11 4
Kuning Kuning Kuning
0.64 0.61 0.45
13 11
Kuning Kuning
0.64 0.61
Dari data tersebut dapat diterjemahkan sebagai berikut : Kolom 1 menunjukkan keterkaitan antar data, jika angka pada kolom 1 menunjukkan nilai yang berkelanjutan, contoh 1, 2, 3 artinya antar data tersebut tidak berkaitan sehingga kaidah aturan yang digunakan adalah IF 1 Then. Sedangkan jika angka pada kolom 1 menunjukkan perulangan, contoh 1, 1, 2, 3,3 berarti 1 dan 1 ada keterkaitan data, dimana kaidah aturannya IF 1 and 1 Then , untuk 2 mempunyai kaidah aturan hanya IF 2 Then, sedangkan untuk 3 dan 3 mempunyai kaidah aturan IF 3 and 3 Then. Kolom 2 menunjukkan nilai diskrit dari atribut data yang digunakan, agar dapat diaplikasikan, nilai ini selanjutnya akan dikembalikan kedalam nilai kontinyu. Kolom 3 menunjukkan kondisi DBD . Kolom 4 menunjukkan tingkat keakurasian dari aturan tersebut. Sehingga dari data pada tabel 12 dapat dibaca sebagai berikut : Untuk data (61, 36, 0.99) If 13 then kuning (dengan tingkat keakurasian / Laplace akurasi : 0.64 %); If 11 then kuning (dengan tingkat keakurasian : 0.61 %); If 4 then kuning (dengan tingkat keakurasian : 0.45 %). Untuk data (61, 36, 0.8) Hasil yang diperoleh dapat dibaca sebagai berikut : If 13 and 11 then kuning (dengan tingkat keakurasian : 0.63 %) Hasil yang didapat dari pemasukkan beberapa data tersebut, dicari hasil dengan tingkat akurasian yang paling tinggi, sehingga dari data tersebut dapat digunakan sebagai dasar pembuatan basis aturan / rule base dari pola keterkaitan antara data suhu, curah hujan, penyinaran matahari, kelembaban dan data DBD.
55
5.3.
Program Aplikasi
5.3.1. Input Sistem Untuk memudahkan penggunaan aplikasi oleh pemakai maka dibuat program antarmuka yang dibangun dengan menggunakan modus grafik.
Dua
proses yang digunakan yaitu proses prediksi diagnosa dan proses terapi. Aturan untuk kedua proses tersebut dibangun berdasarkan hasil proses data mining dan diperkuat oleh pendapat pakar Adapun fungsi-fungsi yang dimiliki oleh aplikasi ini adalah: A. Aplikasi Prediksi data tahunan 1.
Memasukkan data melalui papan ketik yang meliputi: suhu, curah hujan, penyinaran matahari dan kelembaban . Data yang dimasukkan adalah data rata – rata mingguan selama 1 tahun / 52 minggu.
Gambar 19. Tabel data selama 1 tahun 2.
Menampilkan hasil dari prediksi dengan mode grafik. Grafik yang akan ditampilkan sebanyak 2 gambar, sehingga dapat dilakukan prediksi oleh pengguna
56
Gambar 20. Grafik selama 2 tahun B. Aplikasi Prediksi Penyebaran DBD 1.
Memilih lokasi / wilayah yang akan dilakukan prediksi, untuk saat ini hanya terdapat 2 (dua) pilihan, yaitu Jakarta Selatan dan Jakarta Pusat. Jika tidak dilakukan pilihan oleh pengguna, maka default yang akan digunakan oleh aplikasi ini adalah Jakarta Selatan.
2.
Memilih status pengguna, yang terdiri dari : Dokter umum, Puskesmas, Sudinkesmas, Dinkes
3.
Memasukkan data melakui papan ketik yang meliputi: suhu, curah hujan, penyinaran matahari dan kelembaban. Salah satu hal yang harus dicatat adalah data yang akan dimasukkan kedalam aplikasi ini adalah data rata – rata mingguan.
4.
Melakukan prediksi penyebaran DBD. Hasil prediksi ini berupa kemungkinan antara merah dan kuning. Aturan yang digunakan untuk melakukan prediksi penyebaran DBDini diambil dari hasil proses data mining menggunakan algoritma CPAR.
57
Gambar 21. Antar muka Aplikasi DBD 5.
Memberikan langkah – langkah tindakan preventif / tatalaksana DBD. Dari hasil prediksi penyebaran DBD akan diberikan langkah – langkah tindakan preventif yang disesuaikan dengan status dari pengguna aplikasi iniAplikasi Prediksi Penyebaran DBD
Gambar 22. Tatalaksana Berdasarkan SOP Dinkes DKI Jakarta
58
Proses Evaluasi Sistem Dalam proses evaluasi, sistem Aplikasi DBD menggunakan 4 (empat) atribut data cuaca yang akan dipakai sebagai data masukkan, dan 2 (dua) klas kondisi DBD yang akan menentukan kondisi DBD berdasarkan kondisi cuaca yang dimasukkan kedalam sistem ini. Pengembangan aplikasi ini menggunakan proses inferensi. Proses inferensi yangdigunakan dalam proses evaluasi sistem pakar Aplikasi DBD adalah model fuzzy Mamdani, yang terdiri dari fuzzifikasi, operasi fuzzy, metode implikasi, metode agregasi dan defuzzifikasi. Prose evaluasi sistem Aplikasi DBD dilakukan dengan menggunakan perangkat lunak Matlab 7.0 R 14. Evaluasi aturan fuzzy yang terbentuk dari aturan – aturan berdasarkan atribut data cuaca, akan diubah menjadi satu harga numerik untuk menentukan tindakan dari hasil keluaran (output), proses ini dikenal dengan proses defuzzifikasi. Metode deffuzikasi yang digunakan adalah metode centroid. Sistem inferensi fuzzy dibangun dengan menggunakan FIS editor pada fuzzy logic toolbox Matlab 7.0. FIS editor untuk data atribut cuaca dan klas kondisi DBD ditampilkan pada gambar 23
Gambar 23. FIS Editor Untuk Data Atribut Cuaca dan Kondisi DBD, Wilayah Jakarta Selatan
59
Terdapat 3 (tiga ) proses yang dilakukan oleh sistem pada proses evaluasi sistem, yaitu proses masukkan (input), proses evaluasi, proses keluaran (output). 5.3.2.1. Proses Input Pada proses input, system akan memproses data yang dimasukkan oleh pengguna dan dibuat menjadi dinamic link library (dll), sehingga dapat digunakan oleh system lainnya. Berikut adalah gambar membership function editor untuk data cuaca yang digunakan pada perangkat lunak Matlab 7.0
Gambar 24. Membership Function Untuk Atribut Suhu.
60
Gambar 25. Membership Function Untuk Atribut Curah Hujan.
Gambar 26. Membership Function Untuk Atribut Matahari.
61
Gambar 27. Membership Function Atribut Kelembaban.
5.3.2.2. Proses Evaluasi Representasi pengetahuan secara sistematis untuk menentukan kondisi DBD dibuat menggunakan kaidah yang didefinisikan dengan aturan yang dinyatakan dalam bentuk IF – THEN. Secara umum dengan menggunakan prinsip – prinsip penyusunan komposisi aturan, dari atribut cuaca yang terdiri dari suhu ( terdiri dari 3 atribut), Curah hujan (5 atribut), Penyinaran matahari (3 atribut) dan Kelembaban udara (3 atribut), dan Kondisi DBD (3 atribut) maka didapatkan aturan sebanyak 405 aturan / kecamatan, sehingga untuk 18 kecamatan akan menghasilkan 7290 aturan. Berikut adalah sebagian dari aturan – aturan yang disusun secara konvensional dalam menentukan kondisi DBD berdasarkan atribut cuaca : 1. If (suhu is rendah) and (curah hujan is sangat rendah) and (matahari is rendah) and (kelembaban is kering ) then (kondisi DBD is kuning). 2.
If (suhu is rendah) and (curah hujan is sangat lebat) and (matahari is rendah) and (kelembaban is kering) then (kondisi DBD is merah).
62
3. If (suhu is tinggi) and (curah hujan is sangat rendah) and (matahari is penuh) and (kelembaban is normal) then (kondisi DBD is hijau). Aturan – aturan tersebut digunakan dalam proses evaluasi, akan tetapi dari 405 aturan tersebut, tidak semua dapat dipergunakan dalam menentukan kondisi DBD. Dengan adanya aturan yang dihasilkan oleh datamining, maka dari 405 aturan tersebut, dapat di pilih aturan mana yang mempunyai keakurasian tertinggi dalam menentukan kemungkinan kondisi DBD disuatu wilayah. Dari 405 aturan tersebut dapat di reduksi menjadi 22 aturan untuk wilayah Jakarta Selatan dan 29 aturan untuk wilayah Jakarta Pusat. Berikut adalah gambar rule editor atau tampilan aturan yang digunakan dalam membangun prediksi kondisi DBD pada perangkat lunak Matlab 7.0, yang didasarkan pada komposisi aturan hasil datamining.
Gambar 28. Rule Editor Jakarta Selatan
63
Gambar 29. Rule Editor Jakarta Pusat Berikut adalah gambar rule viewer untuk kondisi DBD, yang digunakan dalam aplikasi DBD pada perangkat lunak Matlab 7.0
64
Gambar 30. Rule Viewer untuk Jakarta Selatan.
Gambar 31. Rule Viewer untuk Jakarta Pusat.
65
5.3.2.3. Proses Output Setelah pengguna memasukkan data cuaca yang terdiri dari suhu, curah hujan, kelembaban, dan penyinaran matahari, maka pengguna menekan tombol ”Periksa”, dimana sebagai aksinya, sistem akan memproses data yang telah dimasukkan oleh pengguna. Pengguna akan dapat langsung melihat prediksi kondisi DBD di wilayah tersebut, kuning atau merah. Untuk melihat tindakan yang harus dilakukan sesuai dengan tatalaksana SOP yang telah ditetapkan oleh Dinkes DKI Jakarta, maka pengguna harus menekan tombol ”Lihat Tindakan”. Pengguna dapat mengulang proses pemasukkan data dengan menekan tombol ”Ulangi Lagi”, dan melakukan proses kembali.
Gambar 32. Tombol Mendapatkan Output dari Input Data. Output Sistem Pembuatan antarmuka pada sistem Aplikasi DBD menggunakan fasilitas GUI pada Matlab 7.0, Output yang dihasilkan oleh sistem adalah kondisi DBD berdasarkan data cuaca yang dimasukkan oleh pengguna dan hasil proses defuzzifikasi.
66
Prediksi DBD Tahun Selanjutnya Prediksi DBD yang dibangun menggunakan basis aturan, dalam membangun hasil prediksinya adalah berdasarkan data cuaca yang meliputi suhu, kelembaban, penyinaran matahari dan curah hujan. Sehingga untuk memprediksi DBD ditahun selanjutnya agar dapat digunakan sebagai dasar dari tindakan pencegahan dini DBD di wilayah DKI Jakarta diperlukan data cuaca di wilayah yang bersangkutan. Data cuaca yang digunakan dalam membangun basis aturan adalah data cuaca yang telah dicatat oleh dinas BMG. Untuk memprediksi DBD tahun selanjutnya, maka harus digunakan data cuaca hasil dari prediksi data cuaca tahun – tahun sebelumnya, misalnya untuk memprediksi data cuaca tahun 2007, maka digunakan data cuaca tahun 2005 dan 2006. Untuk memprediksi data cuaca ini maka digunakan software Minitab dengan menggunakan metode Winter’s. Metode ini melakukan prediksi data cuaca pada tahun 2007 didasarkan pada data cuaca minimal 2 tahun sebelumnya. Data cuaca akan dimasukkan sebagai data dalam bentuk cell, data tersebut akan digunakan sebagai variabel yang akan diprediksi. Selanjutnya pengguna menentukan panjang periode dari variabel sebelumnya. Pengguna juga menentukan level, trend dan season dan jumlah yang akan diprediksi.
Gambar 33. Interface Metode Winter’s
67
Kompleksitas Sistem Kompleksitas merupakan ukuran konerja sebuah algoritma. Kinerja sebuah algoritma tergantung pada faktor internal dan eksternal. Faktor internal yaitu tingkat efisiensi dalam : -
Waktu yang digunakan untuk melaksanakan algoritma.
-
Memori yang diperlukan dalam menjalankan algoritma.
Faktor eksternal terdiri dari : -
Ukuran input yang digunakan sebuah algoritma.
-
Kecepatan komputer yang digunakan untuk melaksanakan algoritma.
Potongan
koding
program
berikut
ini
terdapat
dalam
fungsi
banyak_data.m yang digunakan dalam mengolah data masukkan yang diberikan oleh pengguna. 1 2 3 4 5 6 7 8 9 10 11 12 13 14
tahun=get(handles.edit1,'String'); conn = database('hendra', '', ''); curs = exec(conn, ['select * from hendra where tahun = ''', tahun, '''']) curs=fetch(curs); A=curs.Data uA=size(A); if uA(1)>1 for i=1:uA(1) Di eksekusi sebanyak n kali k=1; for j=3:uA(2) Di eksekusi sebanyak m kali B(i,k)=str2num(mat2str(cell2mat(A(i,j)))); k=k+1; End End
Secara garis besar potongan koding program diatas terdiri dari 2 iterasi, yaitu pada baris 8 dan 10. Baris 10 iterasi dilakukan sebanyak m kali, dengan kompleksitasnya O(m), akan tetapi karena pada iterasi ini di eksekusi sebanyak n kali, maka kompleksitasnya menjadi O(mn). Secara keseluruhan komplesitas dari program ini adalah O(mn).