SISTEM REKOMENDASI PADA INFORMAL E-LEARNING MENGGUNAKAN METODE COLLABORATIVE FILTERING DENGAN ALGORITMA SLOPE ONE SKRIPSI ANDRYAN SITUNGKIR 081402047
SISTEM REKOMENDASI PADA INFORMAL E-LEARNING
MENGGUNAKAN METODE COLLABORATIVE FILTERING DENGAN
ALGORITMA SLOPE ONE
SKRIPSI ANDRYAN SITUNGKIR081402047 PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
SISTEM REKOMENDASI PADA INFORMAL E-LEARNING MENGGUNAKAN
METODE COLLABORATIVE FILTERING DENGAN ALGORITMA SLOPE ONE
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi
PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
PERSETUJUAN
Judul : SISTEM REKOMENDASI PADA INFORMAL E- LEARNING MENGGUNAKAN METODE COLLABORATIVE FILTERING DENGAN ALGORITMA SLOPE ONE.
Kategori : SKRIPSI Nama : ANDRYAN SITUNGKIR Nomor Induk Mahasiswa : 081402047 Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
(FASILKOMTI) UNIVERSITAS SUMATERA UTARA Diluluskan di: Medan, Februari 2014
Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Drs. Marihat Situmorang, M.Si. Dr. Mahyuddin K. M. Nasution, M.IT.
NIP 196312141989031001 NIP 196712251998021001 Diketahui/Disetujui oleh Program Studi S1 Teknologi Informasi Ketua, Prof. Dr. Opim Salim Sitompul, M.Sc.
NIP196108171987011001
PERNYATAAN
SISTEM REKOMENDASI PADA INFORMAL E-LEARNING MENGGUNAKAN METODE COLLABORATIVE FILTERING DENGAN ALGORITMA SLOPE ONE SKRIPSI
Saya mengakui bahwa Skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, April 2014 Andryan Situngkir 081402047
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala kasih dan karunia- Nya yang telah memberikan kesehatan dan kekuatan kepada penulis sehingga skripsi ini dapat diselesaikan dengan baik. Skripsi ini diajukan sebagai salah satu syarat untuk memperoleh gelar Sarjana Teknologi Informasi di Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Dalam kesempatan ini, penulis menyampaikan ucapan terima kasih banyak kepada Bapak Dr. Mahyuddin K. M. Nasution, M.IT sebagai pembimbing I dan Drs. Marihat Situmorang, M.Si sebagai pembimbing II yang telah memberikan bimbingan, motivasi, kritik dan saran-saran kepada penulis sejak awal penelitian sampai dengan selesainya penulisan skripsi ini. Terima kasih juga kepada Bapak Drs. Sawaluddin, M.IT dan Bapak M. Fadly Syahputra, B.Sc, M.Sc.IT atas kesediaan menjadi dosen penguji untuk memberikan kritik dan saran yang baik. Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Program Studi Teknologi Informasi, Prof. Dr. Opim Salim Sitompul, M.Sc. dan Drs. Sawaluddin, M.IT, Dekan dan Pembantu Dekan Fasilkom-TI USU, semua dosen pengajar di Program Studi S1 Teknologi Informasi atas ilmu yang penulis dapatkan selama mengikuti perkuliahan.
Terima kasih yang sangat istimewa buat kedua orang tua yang sangat penulis cintai, Ayahanda M.Situngkir, S.Pd dan Ibunda S. br. Simarmata yang telah terlibat banyak dalam setiap langkah kehidupan saya. Terima kasih atas pengorbanan, kasih sayang, doa, semangat, motivasidan dukungan dalam bentuk materi maupun moril yang sungguh luar biasa nilainya. Terima kasih buatabang-abang dan kakak saya (Bang Dika, Bang Andos dan Kak Meyrist) yang selalu memberi semangat, doa, dukungan dan nasehat kepada penulis.Terima kasih yang sebesar-besarnya buat Tulang L. Simarmata dan Nantulang D. br. Sihaloho yang sangat penyayang, juga buat Bang Riris, Kak Sheylin, Kak Sica, Kak David, Bang Iyan, beserta keluarga dan yang teristimewa Kak Rut dan Bang Haye, yang telah banyak mengorbankan waktu dan perasaan dalam membantu pembentukan karakter penulis sejak tiba di Kota Medan, juga kepada keluarga besar Op. Ruspal Simarmata, terima kasih atas doa, dukungan, nasehat dan keteladanan yang diberikan.
Terima kasih buat teman-teman masa kecil yang sangat saya rindukan, Irpan, Jumadin dan Johanson, juga buat teman-teman dari R-NHKBP Simarmata, terima kasih atas masa- masa kebersamaan yang kita lalui, terima kasih atas dukungan dan semangat yang kalian berikan. Terima kasih juga buat teman-teman SMP dan SMA saya, atas candaan dan hari-hari yang menjadi salah satu kenangan terindah yang masih mengisi memori saya, terima kasih atas dukungannya. Terima kasih juga buat teman- teman seperjuangan TI’08 yang sangat menginspirasi, teristimewa buat teman saya Tulus dan Sakti terima kasih atas kebersamaan kita selama kuliah di Teknologi Informasi, semoga kesuksesan segera menghampiri kita semua.
Penulis telah berupaya dengan semaksimal mungkin dalam menyelesaikan skripsi ini, namun penulis menyadari masih banyak kelemahan baik dari segi isi maupun tata bahasa, untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun dari pembaca demi sempurnanya skripsi ini Akhir kata penulis ucapkan banyak
ABSTRAK
Penelitian ini dilakukan untuk menghasilkan rekomendasi pada informal e-learning. Teknik rekomendasi yang digunakan adalah item-based collaborative filtering. Item-based collaborative filtering akan bekerja dengan cara mempelajari pola rating dari pengguna, kemudian memberikan rekomendasi. Tugas akhir ini menggunakan algoritma Slope One dalam implementasinya. Parameter yang digunakan dalam penelitian ini adalah rating yang diberikan pengguna terhadap item tertentu. Akurasi prediksi yang dihasilkan oleh algoritma Slope One akan semakin meningkat dengan bertambahnya jumlah user yang memberikan rating terhadap item yang tersedia. Hasil rekomendasi pada algoritma Slope One menunjukkan ketidaksesuaian antara tipe item hasil rekomendasi dengan tipe item yang telah diberi rating oleh pengguna aktif. Hal ini disebabkan proses prediksi rating pada algoritma Slope One tidak memperhatikan tipe atau konten dari item, tetapi lebih memperhatikan kemiripan pola rating.
Kata kunci: Algoritma Slope One, Collaborative Filtering, Informal E-learning, Sistem Rekomendasi
RECOMMENDATION SYSTEM IN INFORMAL E-LEARNING USING
COLLABORATIVE FILTERING WITH SLOPE ONE ALGORITHM
ABSTRACT
This study was conducted to generate recommendations on informal e-learning. The recommendation technique used is the item-based collaborative filtering. Item-based collaborative filtering will work by studying the patterns of user ratings, and then provide recommendations. This final project using Slope One algorithm implementation. The parameters used in this research is the rating given by user to a particular item. Accuracy of predictions generated by Slope One algorithm will increase with increasing number of users who give ratings to the items available. The recommendations on the Slope One algorithm shows a mismatch between the type of item based on the recommendation with the type of items that have been rated by the active user. This is due to the predicted rating on Slope One algorithm does not pay attention to the type or content of the items, but pays more attention to the similarity rating pattern.
Keyword: Slope One Algorithm, Collaborative Filtering, Informal E-Learning, Recommendation System.
Daftar Isi
Halaman Halaman Judul i
Persetujuan ii
Pernyataan iii
Ucapan Terima Kasih iv
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel ix
Daftar Gambar x
Bab 1 Pendahuluan
1
1.1. Latar Belakang
1
1.2. Rumusan Masalah
2
1.3. Batasan Masalah
2
1.4. Tujuan dan Manfaat Penelitian
2
1.5. Metodologi Penelitian
3
1.6. Sistematika Penulisan
4 Bab 2 Landasan Teori
5
2.1.E-Learning
5
2.1.1. Pengertian E-learning
5
2.1.2. Sejarah E-Learning
5
2.1.3. Fungsi E-Learning
6
2.1.4. Keunggulan dan Kekurangan
8
2.1.5. Informal E-learning
9
2.2. Sistem Rekomendasi (Recommendation System)
9
2.2.1. Pengertian Sistem Rekomendasi
9
2.2.2. Collaborative Filtering Recommendations
10
2.3. Algoritma Slope One
12
2.4. Unified Model Language
14
2.4.1. Diagram Use Case
16
2.4.2. Use Case Spesification
17
2.4.3. Sequence Diagram
17
2.4.4. Activity Diagram
19
2.5. Bahasa Pemrograman PHP
20 Bab 3 Analisis dan Perancangan Sistem
22
3.1. Analisis Kebutuhan
22
3.1.1. Deskripsi Sistem
22
3.1.2. Item
24
3.1.3. User
24
3.1.4. Transaksi dan Input
25
3.2. Perancangan Sistem
25
3.2.1. Use Case Diagram
25
3.2.4. Kelas Diagram
33
34
3.2.5. Activity Diagram
3.3. Perancangan Interface
36
3.3.1. Struktur Menu
36
3.3.2. Perancangan Tampilan
37
3.4. Proses Algoritma Slope One
39
41
3.4.1. Flowchart Algoritma Slope One
Bab 4 Implementasi dan Pengujian Sistem
42
4.1. Implementasi Sistem
42
4.2. Pengujian Sistem
43
4.3. Tampilan Halaman Sistem
53
53
4.3.1. Halaman Utama
4.3.2. Halaman Menu Register
54
4.3.3. Halaman Login
55
4.3.4. Halaman Tampilan List Artikel Berdasarkan Kategori
56
4.3.5. Halaman Detail Artikel
57 Bab 5 Kesimpulan dan Saran
59
5.1. Kesimpulan
59
5.2. Saran
59 Daftar Pustaka
60 LAMPIRAN
62
DAFTAR TABEL
HalamanTabel 2.1. Contoh implementasi Slope One13 Tabel 2.2. Elemen-elemen dari sequence diagram
18 Tabel 2.3. Simbol Aktivitas Diagram
20 Tabel 3.1. Spesifikasi use case
26 Tabel 3.2. Contoh Algoritma Slope One
40 Tabel 4.1. Pengujian Sistem
43 Tabel 4.2. Pengujian Register
44 Tabel 4.3. Pengujian Login
46 Tabel 4.4. Hasil pengujian melihat daftar artikel
47 Tabel 4.5. Hasil pengujian melihat isi artikel
48 Tabel 4.6. Hasil pengujian memberi/meng-update rating
50 Tabel 4.7. Hasil pengujian memberikan rekomendasi
51 Tabel 4.8. Hasil pengujian pencarian
52
DAFTAR GAMBAR
Halaman52 Gambar 4.11. Tampilan Form Pencarian
45 Gambar 4.3. Daftar database anggota terdaftar
46 Gambar 4.4. Gambar tampilan login
47 Gambar 4.4. Tampilan setelah proses login berhasil
47 Gambar 4.5. Tampilan daftar artikel pada kategori jQuery
48 Gambar 4.6. Tampilan detail/isi artikel
49 Gambar 4.7. Tampilan database daftar artikel
49 Gambar 4.8. Gambar form rating
50 Gambar 4.9. Database rating pengguna
51 Gambar 4.10. Daftar rekomendasi diurutkan berdasarkan nilai prediksi
52 Gambar 4.12. Tampilan Hasil Pencarian
41 Gambar 4.1. Tampilan halaman register
53 Gambar 4.13. Halaman depan sistem rekomendasi
53 Gambar 4.14. Tampilan halaman register
54 Gambar 4.15. Pesan error ditampilkan ketika data tidak valid
55 Gambar 4.16. Tampilan halaman login
55 Gambar 4.17. Menampilkan pesan error saat data login tidak valid
56 Gambar 4.18. Daftar artikel berdasarkan kategori
56 Gambar 4.19. Halaman isi artikel
57 Gambar 4.20. Tampilan form rating sebelum user member rating
57 Gambar 4.21. Tampilan form rating sesudah user member rating
45 Gambar 4.2. Halaman depan muncul setelah berhasil mendaftar
39 Gambar 3.19. Flowchart Algoritma Slope One
Gambar 2.1. Skema dasar Slope One31 Gambar 3.7. Sequence Diagram Rekomendasi
13 Gambar 2.2. Aktor-aktor use case
16 Gambar 2.3. Aktor dan use case
16 Gambar 2.4. Aktor, use case dan keterhubungan
17 Gambar 3.1. Arsitektur dasar sistem
23 Gambar 3.2. Arsitektur mesin rekomendasi
24 Gambar 3.3. Use case diagram
26 Gambar 3.4. Sequence Diagram: Lihat Artikel
30 Gambar 3.5. Sequence Diagram: Login
31 Gambar 3.6. Sequence Diagram Register
32 Gambar 3.8. Sequence Diagram Pencarian
38 Gambar 3.18. Halaman isi artikel
33 Gambar 3.9. Class Diagram
33 Gambar 3.10.Activity Diagram Login
34 Gambar 3.11. Diagram Activity Register
35 Gambar 3.12. Diagram Activity Pencarian
35 Gambar 3.13.Activity Diagram Rekomendasi
36 Gambar 3.14. Struktur Menu
37 Gambar 3.15. Halaman depan
37 Gambar 3.16. Register
38 Gambar 3.17. Login
58