APLIKASI SISTEM PAKAR UNTUK MENENTUKAN OBAT PERAWATAN KULIT WAJAH BERBASIS ANDROID Muhammad Imaduddin 1 Arie Surya Chandra 2 Denny Chancra 3 Teknik Informatika Universitas Bina Nusantara Jl. K. H. Syahdan No. 9 Kemanggisan / Palmerah m.imaduddin@yahoo.com 1 ariesuryac@gmail.com 2 ch4ncr4@gmail.com 3 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: X 1, X 2,..., X N dan dengan menganggap bahwa datadata tersebut sudah dalam keadaan normal, maka densitas titik X k dapat dihitung sebagai (Gelley, 2000) : dengan X k -X j adalah jarak antara X k dengan X j, 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 X C1 adalah titik yang terpilih sebagai pusat cluster, sedangan D C1 adalah ukuran densitasnya. Selanjutnya densitas dari titik-titik disekitarnya akan dikurangi menjadi (Gelley, 2000) : Dengan r b 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 r b menunjukkan suatu lingkungan yang mengakibatkan titik - titik berkurang ukuran densitasnya. Biasanya r b bernilai lebih besar dibanding dengan r,
4 r b =q*r a (dengan q adalah squash factor yang digunakan untuk mengalikan nilai radius dan r a adalah nilai r b 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 r j, 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 P c1 (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 Center ij = Center ij *(XMax j -XMin j )+XMin j 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 X i 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 Data Penyakit kulit wajah Penentuan Obat 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 Defuzzyfikasi Cluster data dengan menggunakan subtractive clustering Hitung fire strength Denormalisasi pusat cluster Hitung fungsi keanggotaan Hitung Sigma Bentuk koefisien output fuzzy 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 ke- FIS dengan Subtractive Output Sebenarnya Clustering Output 1 Output 2 Output 1 Output 2 1 1 2 1.000 2.000 2 1 2 1.000 2.000 3 1 2 1.000 2.000 4 1 6 1.000 6.000 5 1 2 1.000 2.000 6 1 1 1.000 1.000 7 2 1 2.000 1.000 8 3 2 3.000 2.000 9 3 2 3.000 2.000 10 3 1 3.000 1.000 11 3 3 3.000 3.000 12 4 1 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.