BAB I PENDAHULUAN 1.1. Latar Belakang Seiring dengan pesatnya perkembangan internet, ketersediaan data-data yang ada di internet juga semakin banyak. Aktifitas manusia dalam melakukan kegiatan saat ini membutuhkan data-data berguna yang dapat dijadikan sumber informasi sebagai pengambilan keputusan, perencanaan, dan sebagainya. Suatu sistem informasi yang menggunakan data dari halaman web membutuhkan data yang terstruktur untuk dapat saling bertukar data, tetapi pada halaman web data yang ditampilkan biasanya masih dalam bentuk tidak terstruktur maupun semi struktur (Banowosari dkk, 2008). Pada halaman web data terstruktur biasanya mengandung informasi yang penting dan umumnya berasal dari basis data dan menggunakan template yang tetap dalam menampilkannya. Istilah dari data tersebut dinamakan data records (Zhai dan Liu, 2006). Proses ekstraksi data records kedalam bentuk yang lebih terstruktur dibutuhkan suatu modul yang dapat memudahkan manusia untuk memperoleh informasi dari web. Ekstraksi data pada halaman web dapat dilakukan menggunakan suatu wrapper. Wrapper adalah program yang bertujuan untuk mengekstrak data dari berbagai halaman web (Iasinschi dan Cosulschi, 2008). Agar tujuan dalam mengekstrak data tercapai, wrapper harus dapat mengidentifikasi data yang dibutuhkan dan menyimpannya ke dalam suatu format yang sesuai sehingga mudah diakses dan dapat digunakan untuk berbagai keperluan. Mobile agent merupakan salah satu jenis agen cerdas yang dikembangkan dalam jaringan. Rajguru dan Deshmukh (2011) berpendapat bahwa sebuah aplikasi yang menggunakan mobile agent akan melibatkan penggunaan internet. Mobile agent cocok diterapkan didalam jaringan karena hanya menggunakan bandwith yang kecil untuk melakukan perjalanan ke sumber informasi sehingga dapat mereduksi trafik jaringan (network traffic) (Azhari, 2010). Kelebihan lain dari mobile agent adalah kemampuannya untuk tetap hidup dan beroperasi meskipun 1 2 pemiliknya tidak terkoneksi (disconnect) dengan jaringan sehingga sangat cocok digunakan untuk pengambilan data halaman web yang akan diekstraksi. Peneliti mengusulkan suatu pemanfaatan mobile agent dan agen lainnya untuk dijadikan sebagai pengganti wrapper dalam melakukan ekstraksi data pada halaman web. Halaman web yang akan diekstraksi adalah toko buku online. Menurut Atmojo (2011) toko-toko buku online belum terintegrasi antara satu dengan yang lainnya sehingga konsumen harus mengunjungi satu persatu toko buku online untuk mencari buku yang diinginkan, untuk itulah diperlukan pusat data dari berbagai toko buku online yang merupakan hasil ekstraksi untuk memudahkan konsumen dalam mencari buku yang diinginkan. Suatu extraction rule yang merupakan inti dari suatu wrapper dibutuhkan agar dapat melakukan ekstraksi data pada halaman web (Zhang dan Shi, 2009). Extraction rule ini akan diberikan atau ditanamkan pada agen sehingga dapat membangkitkan kecerdasan agen dalam melakukan ekstraksi data. Penelitian yang dilakukan oleh Breuel (2003) tentang ide ekstraksi data dengan cara pencarian pola secara otomatis sangat cocok dengan sifat agen yang autonomous. Ide pencarian pola secara otomatis terbagi menjadi dua kategori yaitu pencarian pola berdasarkan pencocokan struktur pohon HTML Documet Object Model (DOM) dan berdasarkan pencocokan string (untaian karakter) (Yeonjung dkk, 2007). Hasil percobaan menunjukkan pencarian pola berdasarkan pencocokan struktur pohon HTML lebih efisien daripada metode yang berdasarkan pencocokan string. Algoritma simple tree matching merupakan salah satu algoritma yang digunakan pada pencarian pola otomatis berdasarkan pencocokan pohon untuk menemukan pencocokan maksimum antara dua pohon pada list pages, sehingga algoritma ini sangat cocok untuk dijadikan extraction rule yang akan ditanamkan pada agen. Pembuatan perangkat lunak agen ini menggunakan metodologi prometheus. Metodologi prometheus adalah proses menentukan, merancang, melaksanakan dan pengujian (debugging) sistem perangkat lunak berorientasi agen (Padgham dan Winikoff, 2004). Metode AOSE (Agent Oriented Software Engineering) atau metode perangkat lunak berorientasi agen ini merupakan upaya membangun dan 3 mengembangkan perangkat lunak dengan menggunakan abstraksi berorientasi agen secara alamiah yang dimodelkan untuk sebuah sistem kompleks seperti dunia nyata (Azhari dan Hartati, 2005). Agen yang akan dibangun menggunakan arsitektur BDI (Belief-DesireIntention), karena sesuai dengan metodologi Prometheus yang menekankan pada beliefs, goals dan plans pada pembangunan sistem berbasis agen ini. Untuk mengimplementasikan agennya digunakan platform JADE yang merupakan salah satu platform pengembangan agen dengan menggunakan bahasa pemrograman Java. 1.2.Rumusan Masalah Berdasarkan latar belakang yang sudah diuraikan, maka masalah yang akan diselesaikan dalam penelitian ini adalah : 1. Bagaimana melakukan ekstraksi data pada halaman web dengan menggunakan mobile agent ? 2. Bagaimanakah kinerja hasil ekstraksi dari halaman web dengan menggunakan mobile agent ? 1.3.Batasan Masalah Batasan masalah dalam penelitian ini adalah : 1. Agen yang akan dibangun hanya melakukan ekstraksi data terstruktur pada halaman web yang alamatnya akan diberikan secara manual oleh pengguna. 2. Agen yang dibangun menggunakan arsitektur BDI dengan platform JADE dan dikembangkan melalui metodologi prometheus. 3. Algoritma yang digunakan untuk pencocokan pohon yaitu algoritma simple tree matching. 4. Halaman web yang diekstraksi adalah halaman web toko buku yang merupakan list page yaitu halaman yang mengandung satu atau lebih data record. 5. Data records yang menjadi target ekstraksi adalah data records yang strukturnya tidak bersarang (flat data records) dan contiguous. 4 1.4.Tujuan Penelitian Tujuan penelitian ini adalah untuk menghasilkan model berbasis agen yang dapat digunakan sebagai pengganti wrapper untuk melakukan ekstraksi data pada halaman web. 1.5.Manfaat Penelitian Manfaat penelitian ini adalah hasil ekstraksi yang berupa data terstruktur dapat disimpan sehingga hasil ekstraksi tersebut dapat diakses untuk berbagai keperluan. Manfaat lainnya yaitu hasil ekstraksi dapat dijadikan sebagai pusat data. 1.6.Keaslian Penelitian Penelitian tentang ekstraksi web data menggunakan wrapper telah banyak dilakukan tetapi peneliti belum menemukan penelitian yang membahas perangkat lunak agen yang dijadikan sebagai pengganti wrapper untuk melakukan ekstraksi data pada halaman web. 1.7.Metodologi Penelitian Beberapa tahap yang akan dilakukan sehingga penelitian ini dapat berlangsung dengan baik yaitu : 1. Tahap awal berupa studi kepustakaan yang dilakukan dengan mengumpulkan berbagai macam bahan referensi seperti jurnal penelitian, tesis, disertasi, buku-buku teori dan sumber-sumber lain termasuk informasi yang diperoleh dari internet sebagai sumber data dan informasi yang berhubungan dengan web data extraction dan sistem agen. 2. Perancangan sistem yang dilakukan dikelompokkan menjadi dua bagian yaitu perancangan proses ekstraksi data pada halaman web dan perancangan pada agen. Perancangan perangkat lunak agennya menggunakan metodologi penelitian berbasis agen yaitu dengan menggunakan metodologi prometheus yang meliputi spesifikasi sistem, rancangan arsitektural, dan rancangan detail. Tahap pertama adalah dengan menentukan spesifikasi sistem dengan beberapa aktifitas seperti : 5 a. Mengidentifikasi skenario, persepsi, aksi dan aktor yang akan dilibatkan didalam sistem. b. Mengembangkan suatu skenario yang lebih spesifik. c. Menentukan tujuan dari sistem. d. Menentukan deskripsi role berdasarkan persepsi, aksi dan tujuannya. Tahap kedua yang dilakukan adalah perancangan arsitektur, yaitu melakukan perancangan dengan menggunakan hasil keluaran pada tahap sebelumnya (spesifikasi sistem) dengan beberapa kegiatan antara lain : a. Menentukan jenis agen yang akan digunakan pada sistem. Jenis agen dibentuk berdasarkan pengelompokan sejumlah fungsionalitas secara bersamaan dan menggunakan data coupling diagrams untuk membantu dalam menganalisis. b. Merancang struktur sistem secara keseluruhan menggunakan system overview diagram beserta penjelasannya. c. Menggambarkan interaksi antara agen dengan menggunakan interaction protocols. Tahap ketiga adalah perancangan rinci dengan beberapa aktivitas yang dilakukan yaitu : a. Mengembangkan agent overview dengan menunjukkan interaksi antar kemampuan dan deskripsi kemampuan agen yang telah ditentukan pada tahapan sebelumnya. b. Mengembangkan proses internal agen dari interaction protocols. Berdasarkan struktur BDI (belief, desire, dan intention) hal tersebut dapat dilakukan. c. Mengembangkan rancangan internal dari setiap kemampuan untuk plan, event, belief, dan mungkin sub-capability. 3. Implementasi akan menggunakan platform JADE dalam Java. Hasil yang didapat dari tahapan desain akan dimanfaatkan dalam implementasi berupa hasil desain rinci yaitu agents, capabilities, plans, massages, dan beliefs; 6 juga actions, percepts dan goals. JADE akan berfokus pada untuk mendukung plans, goals, dan sebagainya. 4. Tahapan pengujian yang dilakukan yaitu dengan menguji kemampuan mobilitas agen untuk mengetahui apakah agen bisa bergerak ke lokasi tujuan dan sebaliknya, dalam rangka menjalankan tugas yang diberikan kepadanya yaitu berpindah dan mengambil halaman web. Pengujian berikutnya adalah evaluasi kinerja menggunakan precision dan recall terhadap data record yang menjadi target ekstraksi dari suatu halaman web. 1.8.Sistematika Penulisan Penulisan Tesis ini dibagi dalam 7 (Tujuh) bab, dengan rincian masing masing sebagai berikut: BAB I. PENDAHULUAN Bab ini akan menguraikan secara singkat mengenai latar belakang da Rumusan masalah, tujuan penelitian, manfaat penelitian, batasan masalah, keaslian penelitian, metodologi penelitian dan sistematika penulisan. BAB II. TINJAUAN PUSTAKA Bab ini membahas tinjauan pustaka yang digunakan sebagai bahan referensi dalam penelitian ini. BAB III. LANDASAN TEORI Bab ini menguraikan teori dasar yang digunakan sebagai acuan dalam penelitian yang meliputi tentang: pendekatan agen cerdas dan metodologi pengembangannya serta platform yang digunakan untuk implementasi yaitu JADE. Informasi lain yang dibahas dalam bab ini adalah domain penelitian yaitu tentang ekstraksi data terstruktur pada halaman web. BAB IV. ANALISA DAN PERANCANGAN SISTEM Bab ini akan menguraikan tentang analisa dan rancangan sistem agen yang dikembangkan. Analisis dilakukan terhadap kebutuhan terhadap penggunakan agen dalam melakukan proses ekstraksi, deskripsi umum 7 sistem dan skema model agen. Rancangan sistem yang dibuat adalah rancangan sistem untuk proses ekstraksi data terstruktur, rancangan antarmuka,dan rancangan agen menggunakan metodologi prometheus. BAB V. IMPLEMENTASI Bab ini berisikan kode program dan tampilan antarmuka program dari implementasi sistem. BAB VI. HASIL DAN PEMBAHASAN Bab ini berisikan hasil percobaan dari sistem yang dibangun, disertai dengan pembahasan dari setiap percobaan yang dilakukan. BAB VII. KESIMPULAN DAN SARAN Bab ini berisi penelitian yang lebih lanjut. kesimpulan-kesimpulan yang dapat ditarik dari telah dilakukan dan saran-saran untuk penelitian