6
BAB 2 TINJAUAN PUSTAKA
2.1. Sistem Pendukung Keputusan Konsep Sistem Pendukung Keputusan (SPK) atau Decision Support Systems (DSS) pertama kali diungkapkan pada awal tahun 1970-an oleh Michael S. Scott Morton dengan istilah Management Decision Systems (Tampubolon, 2010).
Sistem pendukung keputusan (SPK) dirancang sedemikian rupa sehingga bersifat interaktif dengan pemakainya. Maksud dan tujuan dari adanya SPK, yaitu untuk mendukung pengambil keputusan memilih alternatif keputusan yang merupakan hasil pengolahan informasi - informasi yang diperoleh/tersedia dengan menggunakan model-model pengambil keputusan serta untuk menyelesaikan masalah-masalah bersifat terstruktur, semi terstruktur dan tidak terstruktur (Mulyono, 1996).
2.1.1. Definisi Sistem Pendukung Keputusan Sistem Pendukung Keputusan (SPK) secara sederhana adalah sebuah sistem yang digunakan sebagai alat bantu menyelesaikan masalah untuk membantu pengambil keputusan (manajer) dalam menentukan keputusan tetapi tidak untuk menggantikan kapasitas manajer namun hanya memberikan pertimbangan. SPK ditujukan untuk keputusan-keputusan yang memerlukan penilaian atau pada keputusan-keputusan yang sama sekali tidak dapat didukung oleh algoritma (Turban & Jay, 1998).
SPK merupakan sistem informasi berbasis komputer interaktif yang dapat memberikan alternatif dan solusi bagi pengambil dan pembuat keputusan. Jadi pada umumnya SPK merupakan pengembangan lebih lanjut dari Sistem Informasi Manajemen terkomputerisasi yang dirancang sedemikian rupa sehingga bersifat interaktif dengan pemakainya. Interaktif dengan tujuan untuk memudahkan integrasi antara berbagai komponen dalam proses pengambilan keputusan seperti prosedur,
7
kebijakan, analisis, pengalaman dan wawasan manajer untuk mengambil keputusan yang lebih baik (Manurung, 2012).
2.2. Metode Decision Tree Pohon keputusan merupakan salah satu metode klasifikasi yang sangat menarik yang melibatkan konstruksi pohon keputusan yang terdiri dari node keputusan yang dihubungkan dengan cabang-cabang dari simpul akar sampai ke node daun (akhir). Pada node keputusan attribut akan diuji, dan setiap hasil akan menghasilkan cabang. Setiap cabang akan diarahkan ke node lain atau ke node akhir untuk menghasilkan suatu keputusan (Larose, 2005).
Setiap cabang dari Decision Tree menunjukkan kemungkinan keputusan. Struktur pohon menunjukkan bagaimana satu pilihan mengarah kepada pilihan yang selanjutnya, sehingga penggunaan cabang menunjukkan bahwa setiap pilihan memiliki hubungan mutually exclusive. Cabang-cabang terjauh pada strukur pohon (leaf) menunjukkan hasil akhir keputusan yang diambil (Hilman & Wibisono, 2012).
Pencarian solusi dengan bantuan Decision Tree dimulai dengan mempersiapkan sekumpulan kasus. Seluruh kumpulan kasus tersebut akan dibagi menjadi 2 (Podgorelec,Kokol, Stiglic & Rozman, 2002), yaitu : 1.
Training set, dimana digunakan untuk menginduksi Decision Tree.
2.
Testing set, dimana digunakan untuk mengecek akurasi dari solusi yang telah didapatkan.
Kelebihan dari metode Decision Tree adalah (Simarmata, 2005): 1.
Daerah pengambilan keputusan yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik.
2.
Eliminasi perhitungan-perhitungan yang tidak diperlukan, karena ketika menggunakan metode pohon keputusan maka sampel diuji hanya berdasarkan kriteria atau kelas tertentu.
3.
Fleksibel untuk memilih fitur dari internal node yang berbeda, fitur yang terpilih akan membedakan suatu kriteria dibandingkan kriteria yang lain dalam node yang sama. Kefleksibelan metode pohon keputusan ini
8
meningkatkan kualitas keputusan yang dihasilkan jika dibandingkan ketika menggunakan metode penghitungan satu tahap yang lebih konvensional. 4.
Dalam analisis multivariat, dengan kriteria dan kelas yang jumlahnya sangat banyak, seorang penguji biasanya perlu untuk mengestimasikan baik itu distribusi dimensi tinggi ataupun parameter tertentu dari distribusi kelas tersebut.
Metode
pohon
keputusan
dapat
menghindari
munculnya
permasalahan ini dengan menggunakan kriteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan.
2.2.1. Manfaat Decision Tree Konsep dari pohon keputusan adalah mengubah data menjadi pohon keputusan dan aturan-aturan keputusan. Manfaat utama dari penggunaan pohon keputusan adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simpel sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan (Manurung, 2012).
Pohon Keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan tersembunyi antara sejumlah calon variabel input dengan sebuah variable target. Pohon keputusan memadukan antara eksplorasi data dan pemodelan, sehingga sangat bagus sebagai langkah awal dalam proses pemodelan bahkan ketika dijadikan sebagai model akhir dari beberapa teknik lain. Sering terjadi tawar menawar antara keakuratan model dengan transparansi model. Dalam beberapa aplikasi, akurasi dari sebuah klasifikasi atau prediksi adalah satu-satunya hal yang ditonjolkan, misalnya sebuah perusahaan direct mail membuat sebuah model yang akurat untuk memprediksi anggota mana yang berpotensi untuk merespon permintaan, tanpa memperhatikan bagaimana atau mengapa model tersebut bekerja (Manurung, 2012).
2.3. Algoritma Iterative Dichotomiser 3 (ID3) ID3 adalah algoritma Decision Tree learning (algoritma pembelajaran pohon keputusan) yang paling dasar. Algoritma ini melakukan pencarian secara menyeluruh (greedy) pada semua kemungkinan pohon keputusan. Algoritma ID3 dapat
9
diimplementasikan menggunakan fungsi rekursif (fungsi yang memanggil dirinya sendiri) (Suyanto, 2007). 2.3.1. Langkah- langkah Algoritma ID3
Penentuan kelayakan menggunakan Algoritma ID3 dapat dilihat dalam contoh kasus berikut. Diketahui data seperti didalam tabel dibawah ini, permasalahan nya adalah bagaimana mendapatkan ketentuan(rule) untuk mencari kelayakan seseorang dalam membeli sebuah motor.
Tabel 2.1. Contoh Data Umur
Pendapatan
Pelajar
Pinjaman
Membeli Motor
<=16
Tinggi
Tidak
Tidak
Tidak
<=16
Tinggi
Tidak
Ya
Tidak
17..19
Rendah
Ya
Ya
Ya
17..19
Tinggi
Tidak
Tidak
Ya
>19
Sedang
Tidak
Tidak
Ya
>19
Rendah
Ya
Tidak
Ya
>19
Rendah
Ya
Ya
Tidak
Langkah-langkah untuk menentukan ketentuan(rule) dari tabel diatas menggunakan Algoritma ID3 : 1.
Tentukan keadaan yang mungkin terjadi dari setiap atribut yang ada pada data.
2.
Hitung Entropy awal dengan rumus (Chahal, 2013): Entropy (S) = βππ¦ππ β πππ2 ππ¦ππ β πππ β πππ2 πππ Keterangan : S
= himpunan atribut ππ¦ππ = atribut yang bernilai βYaβ πππ = atribut yang bernilai βTidakβ
10
3.
Hitung Entropy dan Information Gain dari setiap atribut untuk menentukan node awal dengan rumus (Chahal, 2013): |ππ£| π£βππππ’ππ (π΄) |π|
Information Gain (S. A) = πΈππ‘ππππ¦ π β Keterangan :
πΈππ‘ππππ¦(ππ£)
π΄ = atribut π = jumlah kasus ππ£ = jumlah kasus pada partisi ke-r |ππ£| π£βππππ’ππ (π΄) |π|
4.
= menghitung jumlah partisi
Node awal didapatkan dari atribut yang memiliki nilai Information Gain tertinggi.
5.
Ulangi langkah ketiga untuk menentukan node cabang selanjutnnya hingga seluruh kriteria keputusan digunakan.
Entropy awal : Jumlah Instance Total = 7 Jumlah Instance Ya = 4 Jumlah Instance Tidak = 3 Entropy (S)
= βππ¦ππ β πππ2 ππ¦ππ β πππ β πππ2 πππ = β
4 7
πππ2
4
β
7
3 7
πππ2
3 7
= β 0.57 (β0.811) β 0.43 (β1.218) = 0.986 Entropy dan Information Gain per Atribut untuk node awal: Umur Entropy (Umur<=16)
=β
0 2
πππ2
0 2
β
2 2
πππ2
2 2
=0 Entropy (Umur 17..19)
=0
Entropy (Umur >19)
= 0.915
Information Gain (Umur)
= πΈππ‘ππππ¦ π β = 0.986 β = 0.594
2 7
x0 β
2 7
x0
|ππ£| π£βππππ’ππ (π΄) |π|
β
3 7
x 0.915
πΈππ‘ππππ¦(ππ£)
11
Pendapatan Entropy (Pendapatan = Tinggi)
= 0.915
Entropy (Pendapatan = Sedang)
=0
Entropy (Pendapatan = Rendah)
= 0.915
Information Gain(Pendapatan)
= 0.202
Pelajar Entropy (Pelajar = Tidak)
=1
Entropy (Pelajar = Ya)
= 0.915
Information Gain(Pelajar)
= 0.023
Pinjaman Entropy (Pinjaman= Tidak)
= 0.811
Entropy (Pinjaman= Ya)
= 0.915
Information Gain(Pinjaman)
= 0.131
Hasil Information Gain dari seluruh atribut = Umur = 0.594 Pendapatan
= 0.202
Pelajar = 0.023 Pinjaman
= 0.131
Karena atribut Umur memiliki nilai Information Gain paling tinggi maka atribut Umur dijadikan node awal, dan Decision Tree nya sebagai berikut :
Gambar 2.1. Node awal Decision Tree
Kemudian hitung Entropy dan Information Gain per atribut untuk menentukan node cabang dari edge >19. Jumlah Instance untuk atribut Umur >19 = 3
12
Jumlah Instance Ya = 2 Jumah Instance Tidak = 1
Pendapatan Entropy (Pendapatan = Tinggi)
=0
Entropy (Pendapatan = Sedang)
=0
Entropy (Pendapatan = Rendah)
=1
Information Gain(Pendapatan)
= 0.319
Pelajar Entropy (Pelajar = Tidak)
=1
Entropy (Pelajar = Ya)
=0
Information Gain(Pelajar)
= 0.319
Pinjaman Entropy (Pinjaman= Tidak)
= 0.915
Entropy (Pinjaman= Ya)
=0
Information Gain(Pinjaman)
= 0.376
Hasil Information Gain dari seluruh atribut = Pendapatan
= 0.319
Pelajar = 0.319 Pinjaman
= 0.376
Karena atribut Pinjaman memiliki nilai Information Gain paling tinggi maka atribut Pinjaman dijadikan node cabang untuk edge >19. Decision Tree nya sebagai berikut :
Gambar 2.2. Hasil Decision Tree
13
Dan didapatkan rules dari pohon keputusan diatas: IF Umur = <=16 THEN beli = Tidak IF Umur = 17..19 THEN beli = Ya IF Umur = >19^Pinjaman = Tidak THEN beli = Ya IF Umur = <19^Pinjaman = Ya THEN beli = Tidak
2.4. Android Android adalah sistem operasi berbasis linux yang digunakan untuk telepon seluler/mobile seperti telepon pintar/smartphone dan komputer tablet (PDA). Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri yang digunakan oleh bermacam piranti bergerak (Ardhana, 2014).
Android didirikan pada tahun 2003 di Palo Alto, California, USA (Kasman, 2013). Pendiri Android adalah Andy Rubin, Rich Miner, Nick Sears dan Chris White. Sejak didirikan sampai saat ini, Android telah berkembang dan memiliki 13 versi sistem operasi,yaitu: 1.
Android Beta
2.
Android 1.0
3.
Android 1.1
4.
Android 1.5 (Cupcake)
5.
Android 1.6 (Donut)
6.
Android 2.0/2.1 (Γclair)
7.
Android 2.2 (Froyo : Frozen Yoghurt)
8.
Android 2.3 (Gingerbread)
9.
Android 3.0/3.1 (Honeycomb)
10. Android 4.0 (ICS : Ice Cream Sandwich) 11. Android 4.1 (Jelly Bean) 12. Android 4.4 (Kitkat) 13. Android 5.0 (Lollipop)
2.4.1. Arsitektur Aplikasi Android Arsitektur Aplikasi Android memiliki beberapa lapisan yang mendukung fungsifungsi spesifik dari sistem operasi, yaitu (Safaat, 2012) :
14
1.
Linux kernel, berperan sebagai abstraction layer antara hardware dan keseluruhan software.
2.
Android Runtime, berisi Core Libraries dan Dalvik Virtual Machine. Core Libraries mencakup serangkaian inti library Java. Dalvik Virtual Machine member kekuatan pada sistem Android dan di optimalkan untuk telepon seluler.
3.
Libraries, berisi satu set library-library dalam bahasa C/C++ yang digunakan oleh berbagai komponen yang ada pada sistem Android. Di dalamnya meliputi : System C Library, Media Libraries, Surface Manager, LibWebCore, SGL, 3D Libraries, FreeType, dan SQL Lite.
4.
Application Framework, mencakup program untuk mengatur fungsi-fungsi dasar smartphone. Di dalamnya terdapat servis dan sistem yang meliputi: satu set Views, Content Providers, Resource Manager, Notification Manager dan Activity Manager.
5.
Application, lapisan yang paling sering diakses oleh pengguna melalui user interface.