APLIKASI SISTEM PAKAR UNTUK MENENTUKAN OBAT PERAWATAN KULIT WAJAH BERBASIS ANDROID Muhammad Imaduddin1 Arie Surya Chandra2 Denny Chancra3 Teknik Informatika Universitas Bina Nusantara Jl. K. H. Syahdan No. 9 Kemanggisan / Palmerah 1
[email protected] 2
[email protected] 3
[email protected]
ABSTRACT
The research objective is to facilitate the user in knowing suffered skin diseases based on indications experienced, and how treatment can be used to cure the disease. Research methods used include analysis methods (surveys to some people) and interviews with various experts who are experts in the field of medicine as well as in the field of skin diseases. The results of the study are in the form of an expert system application that can be used by the user to be aware of a disease that affects the skin more quickly and appropriate treatment. The conclusions of this research is to use this expert system, it is a disease that affects the skin will be more quickly identified and treatment can be done immediately.
Keywords : diseases, facial skin, an expert system
1
2 ABSTRAK
Tujuan penelitian adalah mempermudah user dalam mengetahui penyakit kulit wajah yang diderita berdasarkan gejala - gejala yang dialami, serta cara pengobatan yang dapat digunakan untuk menyembuhkan penyakit tersebut. Metode penelitian yang digunakan meliputi metode analisis (survei kepada beberapa orang) dan wawancara dengan berbagai pakar yang ahli dalam bidang obat serta dalam bidang penyakit kulit wajah. Hasil penelitian adalah berupa Aplikasi sistem pakar yang dapat digunakan oleh user agar dapat mengetahui penyakit kulit wajah yang diderita dengan lebih cepat serta pengobatan yang tepat. Simpulan dari penelitian ini adalah dengan digunakan sistem pakar ini, maka penyakit kulit wajah yang diderita akan lebih cepat diketahui dan pengobatan pun dapat segera dilakukan. Kata kunci : penyakit, kulit wajah, sistem pakar
PENDAHULUAN Di zaman yang serba modern seperti sekarang, banyak yang membuka klikin khusus perawatan maupun pengobatan pada kulit wajah. Sehingga dapat memudahkan kita dalam melakukan perawatan dan pengobatan kulit, terutama pada kulit wajah. Namun, bagi sebagian orang mempunyai waktu yang terbatas, jarak antara rumah dengan klinik yang jauh, atau banyaknya pasien sehingga menyita banyak waktu bagi calon pasien. Dalam kasus seperti ini seorang pasien membutuhkan pakar untuk mengetahui rekomendasi perawatan dan obat perawatan kulit wajah yang tepat sebelum berkunjung ke klinik ahli kulit. Karena hal tersebutlah maka dibutuhkan suatu alat bantu yang dapat mendiagnosis hasil perawatan berupa suatu sistem pakar yang dapat dijalankan pada platform android. Inti dari intelegensia semu (artificial intelligence) adalah merancang dan membuat suatu sistem yang dapat berpikir dan mempunya kecerdasan layaknya seorang manusia. Sistem pakar adalah perangkat lunak komputer yang dapat memecahkan masalah dengan menggunakan informasi dan teknik penalarannya biasanya terkait dengan manusia ahli atau pakar (changchit, 2008).
3
METODE PENELITIAN Pengumpulan Data Kondisi Pasien Data medis adalah segala data tentang riwayat penyakit, hasil pemeriksaan fisik, diagnosis, pengobatan serta hasilnya, laporan dokter, perawat, hasil pemeriksaan laboratorium, ronsen dsb. Data-data ini merupakan data yang bersifat rahasia (confidential) sehingga tidak dapat dibuka kepada pihak ketiga tanpa izin dari pasien yang bersangkutan kecuali jika ada alasan lain berdasarkan peraturan atau perundang - undangan yang memaksa dibukanya informasi tersebut. Maka dari itu penulis menggunakan metode kuesioner terhadap 100 (seratus orang) untuk memperoleh data secara random. Data yang dikumpulkan merupakan data primer.
Fuzzy Subtractive Clustering Apabila terdapat N buah data: X1, X2, ..., XN dan dengan menganggap bahwa datadata tersebut sudah dalam keadaan normal, maka densitas titik Xk dapat dihitung sebagai (Gelley, 2000) :
dengan ||Xk-Xj|| adalah jarak antara Xk dengan Xj, dan r adalah konstanta positif yang kemudian dikenal dengan nama jari-jari. Jari-jari, berupa vektor yang akan menentukan seberapa besar pengaruh pusat clusterpada tiap-tiap variabel. Dengan demikian, suatu titik data akan memiliki densitas yang besar jika dia memiliki banyak tetangga dekat. Setelah menghitung densitas tiap - tiap titik, maka titik dengan densitas tertinggi akan dipilih sebagai pusat cluster. Misalkan XC1 adalah titik yang terpilih sebagai pusat cluster, sedangan DC1 adalah ukuran densitasnya. Selanjutnya densitas dari titik-titik disekitarnya akan dikurangi menjadi (Gelley, 2000) :
Dengan rb adalah konstanta positif. Hal ini berarti bahwa titik-titik yang berada dekat dengan pusat cluster akan mengalami pengurangan densitas besar-besaran. Hal ini akan berakibat titik - titik tersebut akan sangat sulit untuk menjadi pusat cluster berikutnya. Nilai rb menunjukkan suatu lingkungan yang mengakibatkan titik - titik berkurang ukuran densitasnya. Biasanya rb bernilai lebih besar dibanding dengan r,
4 rb=q*ra (dengan q adalah squash factor yang digunakan untuk mengalikan nilai radius dan ra adalah nilai rb sebelumnya). Setelah densitas tiap-tiap titik diperbaiki, maka selanjutnya akan dicari pusat clusteryang kedua. Setelah didapat, ukurang densitas setiap titik data akan diperbaiki kembali, demikian seterusnya. Pada implementasinya, bisa digunakan 2 pecahan sebagai faktor pembanding, yaitu accept ratio dan rejectratio. Accept ratio maupun rejectratio keduanya merupakan suatu bilangan pecahan yang bernilai 0 sampai 1. Accept ratio merupakan batas bawah
dimana
suatu
titik
data
yang
menjadi
kandidat
(calon)
pusat
clusterdiperbolehkan untuk menjadi pusat cluster. Sedangkan rejectratio merupakan batas atas dimana suatu titik data yang menjadi kandidat (calon) pusat cluster tidak diperbolehkan untuk menjadi pusat cluster. Ada 3 kondisi yang bisa terjadi dalam suatu iterasi : 1. Apabila Rasio >Accept ratio, maka titik data tersebut diterima sebagai pusat cluster baru. 2. Apabila Rejectratio < Rasio ≤ Accept ratio, maka titik data tersebut baru akan diterima sebagai pusat cluster baru hanya jika titik data tersebut terletak pada jarak yang cukup jauh dengan pusat cluster yang lainnya (hasil penjumlahan antara rasio dan jarak terdekat titik data tersebut dengan suatu pusat clusterlainnya yang telah ada ≥ 1). Apabila hasil penjumlahan antara rasio dan jarak terpanjang titik data tersebut dengan pusat cluster lainnya yang telah ada < 1, maka selain titik data tersebut tidak akan diterima sebagai pusat cluster, dia sudah tidak akan dipertimbangkan lagi untuk menjadi pusat cluster baru (potensinya diset sama dengan nol). 3. Apabila Rasio ≤ Rejection ratio, maka sudah tidak ada lagi titik yang akan dipertimbangkan untuk menjadi kandidat pusat cluster, iterasi dihentikan. Algoritma Fuzzy Subtractive Clustering oleh Kusumadewi dan Purnomo [3], dinyatakan dengan langkah berikut. 1.
Input data yang akan dicluster: Xij, dengan i = 1,2,...,n; dan j = 1,2,...,m.
2.
Menentukan nilai rj, accept ratio, reject ratio, xmin (minimum data), dan xmaks (maksimum data), dengan j = 1,2,...,m.
3.
Normalisasi
5
4.
Menentukan potensi awal tiap-tiap data menggunakan persamaan (3.1).
5.
Mencari data dengan nilai potensi terbesar yaitu Pc1 (nilai potensi awal yang terpilih menjadi pusat kelompok pertama).
6.
Mengurangi potensi data disekitar pusat kelompok pertama menggunakan persamaan (3.2).
7.
Mencari data dengan potensi terbesar untuk iterasi kedua dan seterusnya.
8.
Menentukan pusat kelompok (data dengan nilai potensi terbesar menjadi pusat kelompok).
9.
Mengembalikan pusat kelompok dari bentuk ternormalisasi ke bentuk semula Centerij = Centerij*(XMaxj-XMinj)+XMinj
10. Hitung nilai sigma cluster
.
Hasil dari algoritma Substractive clustering ini berupa matriks pusat cluster (C) dan sigma (σ) akan digunakan untuk menentukan nilai parameter fungsi keanggotaan Gauss seperti terlihan pada Gambar 2.8.
Gambar 3.1 Kurva Gauss Dengan kurva Gauss tersebut, maka derajat keanggotaan suatu titik data Xi pada cluster ke-k, adalah:
6
HASIL DAN PEMBAHASAN Data Input Pasien Umur Berdasarkan hasil kuesioner yang diberikan kepada pasien, dapat diketahui bahwa jumlah pasien dengan umur 20-29 tahun lebih banyak yaitu sebesar 64% dibandingkan pasien lainnya. Sedangkan jumlah pasien terkecil yaitu pasien yang memiliki klasifikasi umur 40 tahun keatas sebesar 6%. Jumlah pasien lainnya yang berpartisipasi dalam kuesioner penelitian ini yaitu pasien dengan umur 13-20 tahun (12%) dan pasien dengan umur 30-39 tahun (18%). Jenis Kulit Sebagian besar pasien dalam penelitian ini, memiliki tipe kulit wajah normal. Hal ini dapat ditunjukkan dengan jumlah persentase kulit normal sebesar 30%, sedangkan tipe kulit wajah kedua terbanyak yaitu tipe kulit wajah berminyak dengan persentase sebesar 24%. Tipe kulit wajah lainnya dalam hasil penelitian ini yaitu tipe kulit kering (22%), sensitif (12%), dan tipe kulit kombinasi sebesar 12%. Jenis Perawatan Pasien Sebelumnya Hasil kuesioner pasien menunjukan bahwa sebagian besar pasien belum pernah melakukan perawatan kulit wajah sebelumnya. Hal ini ditunjukan dengan jumlah persentase tidak pernah melakukan perawatan kulit wajah sebesar 60%, sedangkan hasil lainnya yaitu pasien yang pernah melakukan facial sebesar 32%, pasien yang pernah melakukan peeling sebesar 4%, dan pasien yang pernah melakukan totok wajah sebesar 4%. Alergi Berdasarkan hasil survey dengan pasien, didapatkan yaitu sebesar 78% pasien tidak mengalami alergi pada kulit wajah dan 22% pasien mengalami alergi pada kulit wajah. Hal ini mengindikasikan bahwa kulit wajah pasien tidak bermasalah terhadap alergi. Keluhan Berdasarkan hasil kuesioner yang diberikan kepada pasien, dapat diketahui bahwa jumlah pasien dengan tidak memiliki keluhan terhadap kulit wajah yaitu sebesar36%, sedangkan pasien yang memiliki keluhan terhadap radang sebesar 26%. Keluhan lain yang dialami pasien yaitu sakit pada kulit wajah sebesar 8%, kemerahan pada kulit wajah sebesar 8%, gatal pada kulit wajah sebesar 8%, keluhan mengenai jerawat
7 (4%), komedo (4%), pori-pori membesar (2%), iritasi (2%), dan jerawat besar-besar (2%). Analisis Kebutuhan Sistem Pengumpulan Data Kondisi Pasien
Proses Awal
Pengelompokan Data
Penentuan Obat Kulit Wajah
Data Penyakit kulit wajah
Rekomendasi Perawatan Kulit Wajah
Pengumpulan data kondisi pasien Dengan menggunakan metode kuesioner terhadap 100 (seratus orang) untuk memperoleh data secara random. Proses awal Proses awal terdiri dari : 1. Seleksi data pasien. Dalam tahap ini data yang sama disetiap fieldnya akan dihapus, agar pada saat pembuatan aturan-aturan (rule) tidak saling tumpang tindih. 2. Menkonversi setiap data menjadi angka. Semua data disetiap fieldnya di konversi ke angka agar bisa diolah didalam proses pengelompokan data. Pengelompokan data Pengclusteran data dengan menggunakan subtractive clustering adalah menentukan daerah-daerah dalam suatu variabel yang memiliki densitas tinggi terhadap titik-titik di sekitarnya. Titik dengan jumlah tetangga terbanyak akan dipilih untuk menjadi pusat kelompok. Titik yang sudah dipilih menjadi pusat kelompok ini kemudian akan dikurangi densitasnya. Selanjutnya akan dipilih titik lain yang menjadi tetangga terbanyak untuk dijadikan pusat kelompok yang lain. Hal ini akan dilakukan berulang-ulang sampai semua titik teruji. Metode fuzzy subtractive clustering tergolong metode unsupervised clustering dimana jumlah pusat cluster tidak diketahui. Metode ini menggunakan data sebagai kandidat dari pusat cluster, sehingga beban komputasi tergantung dari jumlah data dan tidak bergantung dari
8 dimensi data. Jumlah pusat cluster yang dicari ditentukan melalui proses iterasi untuk mencari titik-titik dengan jumlah tetangga terbanyak. Setelah itu pusat cluster dikembalikan dari bentuk ternormalisasi ke bentuk semula.
Start
Proses Awal
Masukkan jari-jari attribute data, Masukkan nilai maksimum dan minimum data yang boleh diinput
Normalisasi data
Output Cluster data dengan menggunakan subtractive clustering
Defuzzyfikasi
Hitung fire strength
Denormalisasi pusat cluster
Hitung fungsi keanggotaan
Bentuk koefisien output fuzzy
Hitung Sigma
Normalisasi Derajat keanggotaan
Hitung Derajat keanggotaan
Membentuk FIS dengan Subtractive Clustering Penulis menggunakan Matlab sebagai alat bantu dalam mencari formula untuk menentukan nilai radius yang digunakan dalam pembuatan software di android. Adapun parameter yang digunakan adalah nilai jari-jari 0.5, nilai squash factor sebesar 1.25, nilai accept ratio sebesar 0.5 dan nilai rejectratio sebesar 0.15. Dengan output pertama sebagai rekomendasi perawatan dan output kedua sebagai obat perawatan.
9 Tabel 4.1 Hasil Output dengan Menggunakan Subtractive Clustering Data ke1 2 3 4 5 6 7 8 9 10 11 12
Output Sebenarnya Output 1 1 1 1 1 1 1 2 3 3 3 3 4
Output 2 2 2 2 6 2 1 1 2 2 1 3 1
FIS dengan Subtractive Clustering Output 1 Output 2 1.000 2.000 1.000 2.000 1.000 2.000 1.000 6.000 1.000 2.000 1.000 1.000 2.000 1.000 3.000 2.000 3.000 2.000 3.000 1.000 3.000 3.000 4.000 1.000
Berdasarkan Tabel 4.1 terlihat bahwa output sebenarnya dari rekomendasi perawatan dan obat perawatan dengan perkiraan fuzzy subtractive clustering (FSC) tidak berbeda jauh dan bahkan dapat dikatakan persis sama.