SISTEM REKOMENDASI WISATA BERNILAI SEJARAH DI JAWA
BARAT DENGAN METODE COLLABORATIVE FILTERING
MENGGUNAKAN ALGORITMA SLOPE ONE
SKRIPSI
Diajukan untuk Memenuhi Sebagian dari
Syarat untuk Memperoleh Gelar Sarjana Komputer
Program Studi Ilmu Komputer
Oleh
Supri Yanta Sitepu
0608580
PROGRAM STUDI ILMU KOMPUTER
FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS PENDIDIKAN INDONESIA
BANDUNG
SISTEM REKOMENDASI WISATA BERNILAI SEJARAH DI JAWA BARAT DENGAN METODE COLLABORATIVE FILTERING
MENGGUNAKAN ALGORITMA SLOPE ONE
Oleh
Supri Yanta Sitepu
Sebuah skripsi yang diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana pada Fakultas Pendidikan Matematika dan Ilmu Pengetahuan Alam
© Supri Yanta Sitepu 2013 Universitas Pendidikan Indonesia
Agustus 2013
Hak Cipta dilindungi undang-undang.
ABSTRAK
Rekomendasi buku pada situs Amazon, atau rekomendasi film pada Netflix,
merupakan contoh nyata dari sistem rekomendasi pada bidang industry. Metode
collaborative filtering merupakan salah satu yang sering digunakan dalam sistem
rekomendasi. Kelebihan collaborative filtering adalah tidak dibutuhkan domain
pengetahuan dan dengan pemberian rating, pengguna lainnya dapat membuat
prediksi berdasarkan rating sebelumnya. Kali ini digunakan bersama algoritma
slope one untuk rekomendasi wisata bernilai sejarah di Jawa Barat. Tujuannya
adalah mengplikasikan sistem rekomendasi pada bidang pariwisata serta
menerapkan algoritma slope one yang dikenal mudah diimplementasikan, efisien
dan akurat.
Abstract
Recommended books on Amazon's website, or movie recommendations on Netflix,
is an example of the system in the field of industry recommendations.
Collaborative filtering method is one that is often used in recommendation
systems. Advantages of collaborative filtering is not required domain knowledge
and by giving the rating, other users can make predictions based on previous
ratings. This time the algorithm is used with one slope for sightseeing
recommendations valuable history in West Java. The goal is to apply the
recommendation system in the field of tourism as well as implementing slope one
known algorithms are easy to implement, efficient and accurate .
DAFTAR ISI
BAB I PENDAHULUAN ... Error! Bookmark not defined. 1.1 LATAR BELAKANG ... Error! Bookmark not defined. 1.2 Rumusan Masalah ... Error! Bookmark not defined. 1.3 Batasan Masalah ... Error! Bookmark not defined. 1.4 Tujuan Penelitian ... Error! Bookmark not defined. 1.5 Manfaat Penelitian ... Error! Bookmark not defined. 1.6 Metode Penelitian ... Error! Bookmark not defined. 1.7 Sistematika penelitian ... Error! Bookmark not defined. BAB II TINJAUAN PUSTAKA ... Error! Bookmark not defined. 2.1 Sistem Rekomendasi ... Error! Bookmark not defined. 2.2 Collaborative Filtering ... Error! Bookmark not defined. 2.3 Slope One ... Error! Bookmark not defined.
2.3.1. Kelebihan Algoritma Slope One ... Error! Bookmark not defined. BAB III METODOLOGI PENELITIAN... Error! Bookmark not defined. 3.1 Desain Penelitian ... Error! Bookmark not defined. 3.2 Model Proses ... Error! Bookmark not defined. 3.3 Alat dan Bahan Penelitian ... Error! Bookmark not defined. 3.3.1 Alat Penelitian ... Error! Bookmark not defined. 3.3.2 Bahan Penelitian... Error! Bookmark not defined. BAB IV HASIL PENELITIAN DAN PEMBAHASAN .... Error! Bookmark not
defined.
4.1 Analisis Sistem ... Error! Bookmark not defined. 4.1.1 Deskripsi Sistem ... Error! Bookmark not defined. 4.1.2 Analisis Input ... Error! Bookmark not defined. 4.1.3 Analisis Output ... Error! Bookmark not defined. 4.1.4 Analisis Pengguna ... Error! Bookmark not defined. 4.1.5 Analisis Perhitungan Prediksi Dengan Algoritma Slope One .. Error!
5
1 BAB I
PENDAHULUAN
1.1 LATAR BELAKANG
Pariwisata merupakan salah satu potensi sumber daya yang dapat
dikembangkan oleh setiap daerah, sebagai salah satu sumber daya yang
menghasilkan devisa bagi negara. Hal ini membutuhkan pengoptimalan
dalam penyediaan jasa untuk lebih menunjang potensi kawasan wisata
yang dikunjungi. (Habibie, 2010)
Jawa barat merupakan provinsi dengan jumlah penduduk terbanyak
di Indonesia, sebelum dimekarkan dengan Provinsi Banten. Berdasarkan
data dari situs resmi dinas pariwisata Jawa Barat, tempat wisata di Jawa
Barat cukup banyak dengan berbagai macam jenis wisata yang ada, salah
satunya adalah wisata sejarah atau tempat-tempat peninggalan sejarah.
Bangsa yang besar adalah bangsa yang menghargai sejarahnya.
Namun, keberadaan tempat-tempat bersejarah atau wisata sejarah tidak
begitu diketahui oleh masyarakat jika dibandingkan dengan keberadaan
wisata lainnya seperti wisata alam, wisata kuliner atau wisata belanja. Hal
ini disebabkan oleh beberapa faktor, salah satunya karena kurangnya
informasi mengenai tempat-tempat bersejarah itu sendiri.
Untuk hal itu, penulis membuat sistem rekomendasi tempat-tempat
bersejarah yang ada di Jawa Barat. Penulis membuat sistem rekomendasi
6
khususnya tempat-tempat bersejarah. Dengan adanya sistem rekomendasi
ini, penulis berharap calon wisatawan mendapat rekomendasi tempat
wisata sejarah yang sesuai dengan keinginnya, serta berharap terjadinya
peningkatan jumlah wisatawan terhadap tempat-tempat bersejarah di Jawa
Barat.
Tujuan dari sistem rekomendasi adalah untuk menghasilkan
rekomendasi yang tepat dari kumpulan data user atau item atau produk
yang mungkin akan disukai. Seperti rekomendasi buku pada Amazon, atau
film pada Netflix, yang merupakan contoh nyata dari sistem rekomendasi
pada bidang industri. (Prem Melville & Vikas Sindhwani; 2010).
Sedangkan menurut Amir Gershman dan Amnon Meisels sistem
rekomendasi bertujuan memberikan item yang menarik dan berguna
kepada user untuk meningkatkan keuntungan penjual dan kepuasan
pembeli. Sistem rekomendasi mencoba untuk memprediksi berdasarkan
rating yang telah dilakukan user dan rating user lainnya (yang memiliki
kemiripan/similarity). .
Ada bermacam-macam teknik dalam membangun sebuah sistem
rekomendasi, antara lain; demographic recommendation, collaborative
recommendation, content-based recommendation, dan knowledge based
recommendation. Dalam penelitian ini, sistem rekomendasi dibangun
dengan teknik collaborative filtering. Adapun kelebihan collaborative
7
tidak dibutuhkan domain pengetahuan dan dengan pemberian rating,
pengguna lainnya dapat membuat prediksi berdasarkan rating sebelumnya.
Sedangkan algoritma yang digunakan pada sistem ini adalah
algoritma slope one. Algoritma slope one mudah diimplementasikan,
query-nya efisien, akurat, dan bisa digunakan untuk query online dan
pembaruan secara dinamis. (Daniel Lemire, 2008).
Dengan dibuatnya sistem perekomendasi tempat wisata bersejarah
ini diharapkan bisa memberikan informasi tentang tempat wisata
bersejarah di Jawa Barat yang tepat dan mungkin akan disukai oleh user.
1.2 Rumusan Masalah
Dalam penelitian ini telah dirumuskan beberapa masalah yang harus
diselesaikan, yaitu:
1. Bagaimana membangun sebuah sistem rekomendasi tempat-tempat
wisata bersejarah?
2. Bagaimana membangun sebuah sistem rekomendasi dengan metode
collaborative filtering menerapkan algoritma slope one?
1.3 Batasan Masalah
Untuk memfokuskan penelitian, ditetapkan batasan masalah sebagai
8
1. Tempat bersejarah yang dimaksud adalah tempat wisata yang berada di
Jawa Barat yang mempunyai nilai sejarah yang diambil dari
www.disparbud.jabarprov.go.id
2. Data user dan data rating yang digunakan adalah data dummy.
3. User akan mendapatkan hasil rekomendasi setelah merating tempat
wisata (item) yang ada.
4. Metode yang digunakan yaitu metode collaborative filtering dengan
menerapkan algoritma Slope one.
5. Aplikasi dibangun berbasis web menggunakan bahasa pemrograman
PHP dan database MySQL.
1.4 Tujuan Penelitian
Tujuan dari penelitian skripsi ini adalah :
1. Membangun sistem rekomendasi tempat-tempat wisata bernilai sejarah
di Jawa Barat.
2. Menerapkan algoritma slope one dalam sistem rekomendasi dengan
metode collaborative filtering.
1.5 Manfaat Penelitian
Dengan dilakukannya penelitian ini, diharapkan dapat memberikan
manfaat sebagai berikut :
1. Membantu pengguna atau wisatawan untuk mendapatkan informasi
9
2. Sistem rekomendasi yang telah dibuat diharapkan memberikan
alternatif lain bagi pengguna dalam suatu pencarian, karena secara
mendasar sistem rekomendasi ini membantu pengguna dalam
menemukan sesuatu yang mungkin pengguna perlukan.
1.6 Metode Penelitian
Adapun metode yang digunakan pada penelitian ini antara lain:
1. Studi Literatur
Eksplorasi dan studi literatur dilakukan dengan mempelajari
konsep-konsep yang berkaitan dengan penelitian ini, seperti sistem rekomendasi
berbasis web dengan metode collaborative filtering, Algoritma Slope one,
melalui literatur-literatur seperti buku (textbook), paper, dan sumber
ilmiah lain seperti situs internet ataupun artikel dokumen teks yang
berhubungan.
2. Analisis dan Perancangan
Analisis dan perancangan perangkat lunak dilakukan untuk menentukan
permasalahan mengenai bahasa pemrograman yang akan digunakan,
input/outpun program, dan permasalahan teknik algoritma yang akan
diimplementasikan.
3. Pengumpulan Data
Mengumpulkan data-data yang terkait dengan penelitian.
10
Implementasi program dilakukan sesuai dengan hasil analisis pada tahapan
sebelumnya.
5. Hasil Akhir dan Penarikan Kesimpulan.
Analisis hasil dilakukan untuk mengetahui implementasi sistem
rekomendasi tempat wisata dengan menggunakan collaborative filtering.
1.7Sistematika penelitian
Dalam penulisan laporannya, sistematika penulisan dibagi kedalam
beberapa bab sebagai berikut :
BAB I PENDAHULUAN
Pada bab ini dijelaskan tentang latar belakang penelitian, rumusan
masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode
penelitian dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Bab ini berisi landasan teori yang digunakan sebagai sumber dan
alat dalam memahami permasalahan yang berkaitan dengan sistem
rekomendasi.
BAB III METODOLOGI PENELITIAN
Bab ini berisi tentang penjelasan dari desain penelitian, metode
11
BAB IV HASIL PENELITIAN DAN PEMBAHASAN
Bab ini berisi tentang penjabaran dari penelitian yang
dilakukan beserta pembahasan hasil penelitian tersebut.
BAB V KESIMPULAN DAN SARAN
Bab ini memeparkan kesimpulan dari hasil penelitian beserta
22
1 BAB III
METODOLOGI PENELITIAN
3.1 Desain Penelitian
Desain penelitian yang digunakan pada pembagunan sistem
rekomendasi wisata bernilai sejarah berbasis web menggunakan metode
collaborative filtering ini digambarkan pada gambar 3.1
Collaborative filtering
Langkah Awal Penelitian: - Formulasi Permasalahan
- Mengumpulkan data yang dibutuhkan
23
Berikut adalah penjelasan gambar dan merupakan tahapan
penelitian yang dilakukan sebagai berikut:
Penjelasan gambar:
1. Tahapan Awal Penelitian. Pada tahap ini ditentukan kebutuhan dan
data penelitian yaitu data pariwisata di Provinsi Jawa Barat, serta
rating data tempat wisata yang digunakan untuk proses rekomendasi
tempat wisata bernilai sejarah. Selain itu, diperlukan alat dan bahan
yaitu komputer, serta perangkat lunak XAMPP yang dijalankan di
sistem operasi windows.
2. Studi Literatur dilakukan dengan mempelajari dan memahami
teori-teori yang digunakan, yaitu collaborative filtering dan algoritma slope
one yang berhubungan dengan sistem rekomendasi. Data-data tersebut
dicari dengan cara mengumpulkan literatur, jurnal, browsing internet
dan bacaan-bacaan yang ada kaitannya dengan topik baik berupa
textbook atau paper.
3. Wawancara dilakukan dengan mengadakan kunjungan ke Dinas
Pariwisata Jawa Barat untuk mendapatkan data pariwisata yang ada di
Jawa Barat khususnya objek wisata yang mempunyai nilai sejarah.
4. Setelah data terkumpul, dilakukan pengembangan perangkat lunak
dengan model proses sekuensial linier. Model sekuensial linier
merupakan sebuah pendekatan pengembangan perangkat lunak yang
sistematik. Secara bertahap dimulai dari tahap analisis terus maju ke
24
perangkat lunak tersebut adalah user mendaftar pada system dan
melakukan rating terhadap objek yang ada, kemudian system
melakukan perhitungan menggunakan algoritma slope one, dan akan
menghasilkan prediksi. Dan prediksi tersebut digunakan untuk bahan
rekomendasi tempat wisata bersejarah.
Adapun penghitungan prediksi dengan algoritma slope one adalah y = x + b ; dimana: ‘y’ adalah predictee item, ‘x’ nilai rating awal yang
diberikan predictee user, dan ‘b’ adalah selisih rata-rata item yang
berpasangan.
5. Dokumen penelitian berupa skripsi dan perangkat lunak yang tercipta.
3.2 Model Proses
Pemodelan sistem informasi harus dilakukan terlebih dahulu
sebelum mulai melakukan implementasi program atau pengkodean
program. Pemodelan sistem informasi ini bertujuan untuk menemukan
batasan-batasan masalah pada penerapan sistem. Model proses yang
digunakan dalam pembangunan sistem ini adalah model sekuensial linier.
Model sekuensial linier mungusulkan sebuah pendekatan pengembangan
perangkat lunak yang sistematik dan sekuensial. Model sekuensial linier
25
Gambar 1.2Model Sekuensial Linear
Tanda panah menggambarkan urutan jalannya proses pengembangan
perangkat lunak.
Fase-fase pada rekayasa perangkat lunak sekuensial linier (Pressman,
2001) adalah sebagai berikut:
1. Analysis
Tahap ini merupakan tahap awal dalam pengembangan sebuah
perangkat lunak, tahapan ini digunakan untuk mengetahui informasi,
model, dan spesifikasi dari sistem yang dibutuhkan, baik kebutuhan
fungsional maupun kebutuhan non fungsional yang dibutuhkan dalam
membangun perangkat lunak sistem rekomendasi wisata bersejarah dengan
menggunakan metode collaborative filtering yang menerapkan algoritma
slope one.
Pada sistem rekomendasi ini, user harus melakukan rating tempat
wisata yang ada supaya mendapat hasil rekomendasi dari sistem. User
yang dimaksud adalah pengguna yang sudah melakukan registrasi
sebelumnya. Dengan kata lain, sistem membutuhkan data rating dari user System/Information engineering
26
untuk menghasilkan sebuah rekomendasi. Selain user, ada admin yang
mempunyai hak khusus untuk melihat, menghapus, menambah dan
mengedit data pada sistem, juga bisa melihat jumlah data rating item atau
objek wisata yang ada. Yang kemudian dapat melakukan maintenance
sistem jika diperlukan.
2. Design
Tahap ini bertujuan membuat desain dari hasil analisis yang
dilakukan pada tahapan sebelumnya. Informasi, model dan spesifikasi
yang diubah menjadi sebuah desain sistem yang nantinya akan dikodekan.
Tahap desain meliputi perancangan data, perancangan arsitektur,
perancangan antarmuka, dan perancangan prosedur.
Pada perancangan database dibentuk beberapa tabel, antara lain:
tabel admin, lokasi, objek, dan rating. Kemudian pada perancangan
antarmuka, dibuat; menu registrasi, menu login/logout, dan input rating
objek bagi user. Dan antarmuka untuk admin dibuat menu login/logout,
menu lihat data, edit data, tambah data, dan hapus data.
3. Coding
Tahap ini dimaksudkan untuk mengkodekan desain yang telah
dibuat dalam tahap sebelumnya menjadi sebuah kode-kode yang nantinya
akan dibaca oleh komputer dan dibuah menjadi sebuah tampilan yang
nantinya digunakan. Implementasi program tidak boleh melebihi dari apa
27
Jika desain dilakukan dalam cara yang detail, pembuatan kode
dapat dikerjakan secara mekanistik. Dalam penelitian ini digunakan PHP
MySQL untuk pembuatan sistemnya. Pada tahap inilah metode
collaborative filtering dan algoritma slope one diterapkan, dikerjakan
dengan bahasa pemrograman PHP danMySQL
4. Test
Merupakan fase pengujian layak tidaknya software yang dibangun
sesuai dengan model yang diinginkan, fase pengujian dilakukan dengan
black box. Pengujian yang dilakukan meliputi pengujian input data.
Apakah user baru yang melakukan registrasi berhasil atau tidak, user
melakukan rating berhasil atau tidak, hasil rekomendasi keluar atau tidak,
admin menambah, menghapus, mengubah data berhasil atau tidak.
3.3 Alat dan Bahan Penelitian
3.3.1 Alat Penelitian
Penelitian ini menggunakan seperangkat sistem komputer beserta
perangkat lunak pendukungnya, yaitu :
1. Satu unit komputerdenganspesifikasi :
a. Processor Intel Pentium Dual Core 1.67 GHz
b. RAM 2 GB
c. Harddisk 60 GB dengan free space 15 GB.
28
e. Mouse dan Keyboard
2. Perangkat lunak :
a. Sistem Operasi Windows XP SP 3
b. XAMPP 1.8.0
c. Web Browser (Google Chrome 27.0)
3.3.2 Bahan Penelitian
Data yang menjadi input sistem adalah rating user terhadap objek
wisata yang ada. User terlebih dahulu mendaftarkan diri dengan mengisi
data pribadi, selanjutnya user akan mendapatkan hak akses memasuki
sistem. Kemudian user melakukan rating objek wisata yang sesuai dengan
keinginan user. Hasil keluaran dari sistem adalah rekomendasi tempat
49
1
BAB V
KESIMPULAN
5.1 Kesimpulan
Berdasarkan hasil analisis dan pengujian yang dilakukan pada bab
sebelumnya, maka kesimpulan yang dapat diambil adalah sebagai berikut:
1. Telah berhasil dibuat sistem rekomendasi dengan metode
collaborative filtering dengan menggunakan algoritma slope
one.
2. Sistem rekomendasi dengan metode collaborative filtering
telah dapat diaplikasikan sebagai sebuah sistem rekomendasi
untuk objek wisata bernilai sejarah di Jawa Barat.
3. Aplikasi pendekatan metode collaborative memerlukan
feedback berupa rating dari user untuk menghasilkan
rekomendasi.
5.2Saran
Pada skripsi ini penulis menggunakan metode collaborative
filtering dengan algoritma Slope One, oleh karena itu dapat dikembangkan
dan diteliti lebih lanjut dengan metode lain serta algoritma lainnya pada
ruang lingkup sistem rekomendasi. Sehingga dapat menghasilkan
50
1 Daftar Pustaka
Daniel Lemire. Scale and translation invariant collaborative filtering
systems. Information Retrieval, 8(1):129–150, January 2005.
Daniel Lemire, Anna Maclachlan. 2008. Slope One Predictor for
Online Rating-Based Collaborative Filtering
2007. Slope One Predictor On Consumer Data. Helsinki University
of Technology.
http://lemire.me/fr/documents/publications/webpaper.txt (diakses
terakhir kali pada 13 Agustus 2013)
Habibie, Tigin Nurmajid. 2010. Implementasi Sistem Rekomendasi
Tempat Wisata Dengan Menggunakan Metode
Knowledge-Based Recommendation Studi Kasus PT. TAMA PUTERA
WISATA. Bandung: Universitas Pendidikan Indonesia.
Hakim, Irfan. 2010. Sistem Rekomendasi Film Berbasis Web
Menggunakan Metode Item-Based Collaborative Filtering Berbasis
K-Nearest Neighbor. Bandung: Universitas Pendidikan Indonesia.
Hayati, Nurul. 2012. Metode Hybrid (Content Dan Collaborative
Based) Nearest Neighbor Untuk Sistem Rekomendasi
51
Nooij, Guido Jan de. 2008. Recommender systems: An Overview.
Amsterdam: Vrije Universiteit Amsterdam.
Pressman, Roger S. 2004. Software Engineering A Practitioner