i PENGEMBANGAN A.L.I.C.E SEBAGAI CHATBOT PAKAR JARINGAN KOMPUTER MENGGUNAKAN SUPERVISE (DIRECT TEACHING) DAN UNSUPERVICE LEARNING (SUMMARY BASE KNOWLADGE MENGGUNAKAN
METODE TF-IDF) Skripsi
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana Strata 1
Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh Arindra Vrizilia 201110370311102
JURUSAN INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2015
iv
KATA PENGANTAR
Dengan memanjatkan puji syukur kehadirat Allah SWT, atas limpahan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan tugas akhir yang berjudul
“PENGEMBANGAN A.L.I.C.E SEBAGAI CHATBOT PAKAR JARINGAN KOMPUTER MENGGUNAKAN SUPERVISE (DIRECT TEACHING) DAN
UNSUPERVICE LEARNING (SUMMARY BASE KNOWLADGE
MENGGUNAKAN METODE TF-IDF)” .
Dalam lembar pengantar ini, penulis ingin menyampaikan ucapan trimakasih kepada pihak-pihak yang telah membantu dalam penulisan tugas akhir ini, sehingga dapat terselesaikan dengan baik. Pada kesempatan kali ini penulis dengan hormat dan tulus ingin menyampaikan ucapan trimakasih kepada :
1. Ucapan trimakasih yang pertama penulis tujukan kepada Allah SWT yang senantiasa memberikan kemudahan, kesabaran, ilmu yang bermanfaat dan segala yang terbaik hingga penulis bisa menyelesaikan tugas akhir ini dengan kelancaran dan semangat untuk mencapai hasil terbaik.
2. Ucapan terimakasih selanjutnya penulis tujukan untuk keluarga besar khususnya kedua orang tua Bapak Sunjoto S.Sos M.Si dan Ibu Sriatun yang selalu memberikan dukungan penuh tiada henti baik secara materi, semangat, doa dan motivasi. Tak lupa ucapan trimakasih kepada kedua adik Alvin Mahendra dan Valdio Febrilian yang selalu menghibur penulis untuk tetap semangat dan tidak menyerah untuk menyelesaikan tugas akhir ini dengan maksimal. Tanpa dukungan dari keluarga, penulis tidak akan bisa menjadi seperti ini.
v
3. Bapak Zamah Sari, ST., M.T, selaku dosen pembimbing I dan Bapak Yuda Munarko, S.Kom, M.sc, selaku dosen pembimbing II yang juga sebagai Ketua Jurusan Teknik Informatika yang selalu membantu memberikan arahan, solusi, semangat dan motivasi kepada penulis untuk selalu teliti dan sabar dalam pengerjaan tugas akhir sehingga penulis bisa menyelesaikan tugas akhir ini sesuai dengan yang diharapkan.
4. Kepada dosen penguji dan seluruh jajaran dosen teknik informatika Universitas Muhammadiyah Malang yang sudah berjasa dalam membentuk karakter, mendidik, membimbing, memotivasi dan berbagi pengalaman kepada penulis hingga penulis menyelesaikan masa studi ini.
5. Ucapan trimakasih juga penulis sampaikan kepada sahabat hidup terbaik drh.Dite Nanda Lumaksono yang selalu memberikan dorongan untuk menjadi lebih baik lagi, semangat agar tak mudah menyerah, menggapai cita-cita setinggi mungkin dan mengamalkan ilmu kepada sesama agar menjadi manusia yang bermanfaat.
6. Kepada teman berbagi atap kos dedel Rurin, Dwi Yanti, Nur Itha, Dwi, Dini, Debby yang selalu menjadi saudara di kota rantau, menjadi teman berbagi, menjadi orang tua untuk saling mengingatkan, memotivasi, memperbaiki diri dan memberi dukungan. Trimakasih sudah mengajarkan banyak hal, tanpa kalian semua penulis tiada pernah merasa ber-saudara.
7. Kepada teman-teman yang telah banyak sekali membantu penulis dalam menyelesaikan segala permasalahan yang ada di tugas akhir Prasetyo Dwi Ramadhani, Muhammad Yusuf Fachroni dan Adiansyah yang sudah dengan sabar meluangkan waktu untuk membantu penulis hingga tugas akhir ini selesai.
8. Teman-teman seperjuangan yang selalu menjadi sahabat yang tidak bisa disebutkan satu-persatu penulis ucapkan trimakasih untuk ilmu dan pengalaman yang sudah dibagikan. Semoga bisa membuat penulis menjadi lebih baik lagi.
vi
Semoga Allah SWT selalu melimpahkan rahmat dan hidayahNya kepada semua pihak yang telah membantu hingga selesainya laporan tugas akhir ini dengan sebaik mungkin. Hanya Allah lah sebaik-baiknya pembalas bagi setiap kebaikan yang sudah penulis trima.
Masih banyak kekurangan dan keterbatasan dalam penyusunan laporan tugas akhir ini masih jauh dari sempurna, maka dengan keterbukaan penulis mengharapkan kritik dan saran agar tulisan ini bermanfaat bagi perkembangan ilmu dan pengetahuan di masa yang akan datang.
Malang, 6 November 2015
Penulis
vii
DAFTAR ISI
LEMBAR PERSETUJUAN... ii LEMBAH PENGESAHAN...iii LEMBAR PERNYATAAN...iv KATA PENGANTAR ... v ABSTRAK ... viii ABSTRACT ... ix DAFTAR ISI ... xDAFTAR GAMBAR ... xiii
DAFTAR TABEL ... xii
BAB I PENDAHULUAN ... 1 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 2 1.3 Tujuan Penelitian ... 3 1.4 Batasan Masalah ... 3 1.5 Metodologi ... 3 1.6 Sistematika Penulisan ... 5
BAB II LANDASAN TEORI ... 7
2.1 A.L.I.C.E ... 7
2.1.1 AIML ... 7
2.1.1.1 Unit Pembentuk AIML……….. 8
2.2 PHP ... 10
2.3 Chatbot ... 11
2.4 Sistem Pakar……….11
viii
2.5 Phrase Reinforcment Alghoritm……….12
2.6 TF-IDF………16
2.6.1 Term Frequency……….16
2.6.2 Inverse Document Frequency………17
2.7 Direct Teaching……….18
2.8 Unsupervised Learning……….18
2.9 Program O……….19
BAB III ANALISA DAN PERANCANGAN SISTEM ... 20
3.1 Analisa Sistem ... 20
3.1.1 Analisa Masalah ... 20
3.1.2 Analisa Kebutuhan Sistem ... 20
3.2 Perancangan Sistem ... 21
3.2.1 Usecase Diagram ... 21
3.2.2 Activity Diagram ... 22
3.2.3 Konsep Algoritma Sistem ... 23
3.2.3.1 Algoritma Chatbot……….25
3.2.3.2 Algoritma Crawling………26
3.2.3.3 Algoritma Pemilihan Data dan Summary………...27
3.2.3.3.1 Algoritma TF-IDF………29
3.2.4 Sistem Database ... 31
3.2.5 Sistem Model ... 31
3.2.6 Sistem User Interface ... 32
3.2.6.1 Admin………...32
3.2.6.2 User………..…32
BAB IV IMPLEMENTASI DAN PENGUJIAN ... 33
4.1 Implementasi ... 33
4.1.1 Fitur Admin ... 33
ix
4.1.3 Knowledge Base... 44
4.2 Pengujian ... 46
4.2.1 Kebutuhan Pengujian ... 46
4.2.2 Skenario Pengujian... 46
4.2.2.1 Skenario Pengujian Proses Crawling………46
4.2.2.2 Skenario Pengujian Pemilihan Data………..47
4.2.2.3 Skenario Pengujian Summary………47
4.2.2.4 Sistem Pengujian Kesesuaian Fungsi………....47
4.2.3 Hasil Pengujian ... 48
4.2.3.1 Hasil Pengujian Proses Crawling……….48
4.2.3.2 Hasil Pengujian Pemilihan Data………...50
4.2.3.3 Hasil Pengujian Summary………....51
4.2.3.4 Hasil Pengujian Kesesuaian Fungsi……….52
BAB V PENUTUP ... 54
5.1 Kesimpulan ... 54
5.2 Saran ... 54
x
DAFTAR GAMBAR
Gambar 2.1 Ringkasan parsial Terbaik dengan kalimat awal "Ted Kennedy" ... 14
Gambar 2.2 Ringkasan parsial Terbaik berakhir dengan kalimat "Ted Kennedy meninggal ... 22
Gambar 2.3 Ringkasan akhir Terbaik dari frasa yang mengandung "Ted Kennedy". 23 Gambar 2.4 Rumus TF IDF ... 24
Gambar 2.5 Rumus IDF ... 24
Gambar 3.1 Use Case Diagram Chatbot ... 21
Gambar 3.2 Activity diagram user chatting ... 26
Gambar 3.3 Activity diagram manage data ... 32
Gambar 3.4 Arsitektur sistem ... 33
Gambar 3.5 Alur sistem ... 33
Gambar 3.6 Alur proses inputoutput ... 34
Gambar 3.7 proses crawling ... 35
Gambar 3.8 proses summary ... 33
Gambar 3.9 Hasil Cosin Similarity ... 30
Gambar 3.10 Interface admin ... 32
Gambar 3.11 Interface user... 32
Gambar 4.1 Halaman utama admin ... 33
Gambar 4.2 Menu upload AIML pada halaman admin ... 33
Gambar 4.3 Halaman chatting user ... 34
Gambar 4.4 Potongan file question.aiml ... 35
Gambar 4.5 Function load_file()... 35
Gambar 4.6 Link Crawling ke webopedia ... 36
Gambar 4.7 Link Crawling ke computer hope ... 36
Gambar 4.8 Proses Crawling ke Webopedia ... 37
Gambar 4.9 Proses Crawling ke Computer Hope ... 37
Gambar 4.10 Proses Insert AIML ke database ... 38
Gambar 4.11 Function insertAIML() ke database wiki ... 38
xi
Gambar 4.13 Proses TF-IDF untuk membandingkan nilai kedua dokumen ... 40
Gambar 4.14 Function IR() ... 41
Gambar 4.15 Proses menampilkan hasil TF-IDF ... 42
Gambar 4.16 Proses summarize ... 42
Gambar 4.17 Function summarize() ... 43
Gambar 4.18 Function indexer() ... 44
Gambar 4.19 Menampilkan hasil summary ... 44
Gambar 4.20 Webpage computer hope ... 45
Gambar 4.21 Webpage webopedia ... 45
Gambar 4.22 Kuisioner untuk ahli pakar ... 48
Gambar 4.23 Input percakapan ... 49
Gambar 4.24 Pengecekan proses crawling pada table wiki ... 49
Gambar 4.25 Pengecekan proses crawling pada table comhope... 49
Gambar 4.26 Link Crawling ke webopedia Proses penghitungan term pada data hasil crawl Computerhope ... 50
Gambar 4.27 Proses penghitungan term pada data hasil crawl Webopedia ... 51
Gambar 4.28 Proses summarize ... 51
xii
DAFTAR TABEL
Tabel 3.1 Tabel TF ... 29
Tabel 3.2 Hasil Bobot ... 29
Tabel 3.3 Menghitung token ... 30
Tabel 4.1 Lembar pertanyaan pengujian sistem ... 46
Tabel 4.2 Lembar pertanyaan pengujian sistem pemilihan data ... 47
55
DAFTAR PUSTAKA
[1] Rich, Elaine, and K. Knight, Artifical Intelligence. McGraw-Hill, 2009.
[2] E. Mahdiyah and Y. Andriyani,“Analisa Algoritma Pemahaman Kalimat Pada ALICE ChatBot Dengan Menggunakan Artifical Intelligence Markup Language (AIML),”pp. 193-201, 2013.
[3] T. Kalaiyarasi, R.Parthasaranthi, and T.V Geetha,”P O O N G K U Z H A L I – A n I n t e l l i g e n t T a m i l C h a t t e r b o t,” 1950.
[4] R. Wallance, The elements of AIML style. 2003. [5] R. S. Wallance, The Anatomy of A.L.I.C.E. 2002.
[6] B. A. Shawar and E. Atwell,”A Comparison Betwen Alice and Elizabeth Chatbot Systems,”2002.
[7] “Chatbot.” [Online].Available;https://www.chatbots.org/chat_bot/program-o/. [Accessed:09-Jun-2014].
[8] M. L. Mauldin,”CHATTERBOTS, TINYMUDS, and the Turing Test Entering the Loebner Prize Competition.”pp. 16-21, 1994.
[9] “Program O.”[Online].Available:http://blog.program-o.com/.[Accesed: 13-Jun-2014].
[10] Sharifi, Beaux P, 2010, Auto Microblog Classification and Summarization, http://www.cs.uccs.edu/~jkalita/work/StudentResearch/SharifiMSThesis2010. pdf, 29 April 2015
[11] Hutton Mark-Anthony, Kalita Jugal, Sharifi, Beaux P, Automatic Summarization of Twitter Topics Summarization,
http://www.cs.uccs.edu/~jkalita/papers/2010/SharifiBeauxNWDAA2010.pdf, 29 April 2015
[12] Bossard, A. and Genereux, M. and Poibeau, T. Description of the lipn systems at tac2008: Summarizing information and opinions, Proceedings of the Text Analysis Conference (TAC),2