Analisis Perbandingan Algoritma Huffman Dan Algoritma Sequtur Dalam Kompresi Data Text
1
BAB 1
PENDAHULUAN
1.1.Latar Belakang
Perkembangan jaman yang semakin pesat membuat komputerisasi pada kehidupan
sehari-hari semakin wajar. Data-data yang dahulu hanya disimpan dalam bentuk
tercetak, saat ini disimpan dalam bentuk digital. Data yang disimpan dalam bentuk
digital ini mempunyai beberapa kelebihan dibanding dengan data tercetak, antara lain
adalah data akan aman dari serangga pengerat, data bisa di back-up sehingga resiko
kehilangan data semakin kecil, dan juga data bisa dipindah-pindahkan dengan mudah.
Namun, semakin hari data yang ada akan semakin banyak, hal itu menyebabkan
adanya kebutuhan akan memori penyimpanan semakin besar. Kebutuhan terhadap
kapasitas penyimpanan yang semakin besar merupakan penyebab munculnya berbagai
teknik kompresi data.
Kompresi adalah mengecilkan/ memampatkan ukuran. Kompresi Data adalah
teknik untuk mengecilkan data sehingga dapat diperoleh file dengan ukuran yang
lebih kecil daripada ukuran file aslinya. Dengan melakukan kompresi, data yang besar
akan berkurang ukurannya sehingga dapat menghemat kapasitas penyimpanan dan
waktu untuk pertukaran/transmisi data.
Ada beberapa faktor yang harus diperhatikan dalam kompresi data yaitu) Ratio
of Compression, Compression Ratio, Redudancy, dan time process. Ada banyak
algoritma yang dikembangkan untuk kompresi data, namun belum ada satupun
algoritma yang baik untuk mengkompresi berbagai tipe file karena karakteristik atau
struktur file yang berbeda-beda. Oleh karena itu, dalam penelitian ini penulis akan
membandingkan dua algoritma kompresi data, yaitu algoritma Huffman dan algoritma
Sequitur. Kedua algoritma ini bersifat lossless (kompresi data tanpa berkehilangan).
Algoritma
Huffman
merupakan
algoritma
yang
menggunakan
prinsip
pengkodean yang mirip dengan kode Morse, yaitu setiap karakter (simbol) dikodekan
Universitas Sumatera Utara
2
hanya dengan rangkaian beberapa bit, dimana karakter yang sering muncul dikodekan
dengan serangkaian bit yang pendek dan karakter yang jarang muncul dikodekan
dengan rangkaian bit yang lebih panjang. Sementara itu, algoritma Sequitur
merupakan algoritma yang lebih kompleks yang berdasarkan pada konsep tata
bahasa
bebas
konteks
(context-free
grammar).
Di
mana
terdapat
simbol
nonterminal dan simbol terminal yang merupakan unsur dari production rules (aturanaturan yang digunakan untuk membangun sebuah kalimat). Algoritma Sequitur
memanfaatkan frase-frase yang berulang untuk melakukan kompresi.
1.2. Rumusan Masalah
Berdasarkan latar belakang, rumusan masalah dalam penulisan Tugas Akhir ini adalah
bagaimana merancang aplikasi kompresi untuk menganalisis perbandingan kinerja
algoritma Huffman dan algoritma Sequitur dalam kompresi data teks?
1.3. Batasan Masalah
Batasan masalah dalam penelitian ini adalah:
1.
Perbandingan kinerja algoritma hanyalah antara algoritma Huffman dan
algortima Sequitur.
2.
Jenis data yang akan dikompresi adalah string dalam file teks (*.txt)
3.
Data dibatasi pada perbandingan ukuran file asal dan file hasil kompresi.
4.
Parameter pembanding yang digunakan dalam pengukuran kinerja metode ini
adalah rasio kompresi (Rc dan Cr), redundancy (Rd), waktu kompresi dan waktu
dekompresi.
5.
Bahasa pemrograman yang digunakan adalah Visual Basic.net 2010.
Universitas Sumatera Utara
3
1.4. Tujuan Penelitian
Tujuan dari penelitian ini adalah mampu menghasilkan aplikasi dan memahami
perbandingan kinerja algoritma Huffman dan algortima Sequitur dalam melakukan
kompresi teks sehingga mengetahui algoritma yang lebih optimal dalam kompresi
teks.
1.5. Manfaat Penelitian
Adapun manfaat dari penelitian ini yaitu:
1.
Memahami bagaimana proses kerja algoritma Huffman dan algoritma Sequitur
dalam kompresi data teks sehingga menghasilkan ukuran file yang lebih kecil
dari ukuran semula.
2.
Dapat dijadikan referensi, pembelajaran dan menambah pengalaman di bidang
keilmuan yang terkait.
1.6. Metodologi Penelitian
Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah sebagai
berikut:
1.
Studi Literatur
Penulis mengumpulkan bahan dan data referensi dari buku, skripsi dan sumber
lain yang berkaitan dengan algoritma Huffman dan algoritma Sequitur dalam
kompresi data teks.
2.
Analisis dan Perancangan Sistem
Pada tahap ini dilakukan analisis sesuai dengan kebutuhan seperti cara
membangun aplikasi yang mengimplementasikan algoritma Huffman dan
algoritma Sequitur, pembuatan flowchart, input serta output yang diinginkan.
Universitas Sumatera Utara
4
3.
Implementasi Sistem
Metode ini dilaksanakan dengan mengimplementasikan rancangan sistem yang
telah dibuat pada analisis dan perancangan sistem ke dalam program komputer
dengan menggunakan bahasa pemrograman Microsoft Visual Basic.net 2010.
4.
Pengujian Sistem
Metode ini dilaksanakan dengan mengimplementasikan Algoritma Hufffman
dan Algoritma Sequitur dalam kompresi data teks. Hasil program diuji
kemudian dianalisis apakah sistem ini bekerja secara efektif dan efisien.
5.
Dokumentasi
Metode ini berisi laporan dan kesimpulan akhir dari hasil analisis dan
pengujian dalam bentuk skripsi.
1.7.Sistematika Penulisan
Sistematika
dalam
penulisan
skripsi
ini
disusun menjadi
beberapa
bab,
diantaranya yaitu:
BAB 1 :
PENDAHULUAN
Bab ini berisi mengenai latar belakang masalah, rumusan masalah,
batasan masalah, tujuan dan manfaat dari penelitian, metode penelitian
dan sistematika penulisan.
BAB 2:
LANDASAN TEORI
Bab
ini
berisi
mengenai
teori-teori
yang
digunakan
untuk
mendukung penulisan penelitian, selain itu dalam bab 2 juga
dijelaskan mengenai metode yang digunakan dalam penelitian.
Universitas Sumatera Utara
5
BAB 3:
ANALISIS DAN PERANCANGAN SISTEM
Bab
ini
terdiri dari
tahap
perancangan dari program
analisis
yang akan
sistem dan desain/model
dibuat, dalam hal
ini
termasuk juga algoritma dari program tersebut.
BAB 4:
IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi mengenai implementasi dan pengujian dari program
yang sebelumnya telah dirancang dan dianalisis sistemnya.
BAB 5:
KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari hasil penelitian yang telah selesai
dilakukan, juga saran atau rekomendasi guna penelitian lebih lanjut.
Universitas Sumatera Utara
BAB 1
PENDAHULUAN
1.1.Latar Belakang
Perkembangan jaman yang semakin pesat membuat komputerisasi pada kehidupan
sehari-hari semakin wajar. Data-data yang dahulu hanya disimpan dalam bentuk
tercetak, saat ini disimpan dalam bentuk digital. Data yang disimpan dalam bentuk
digital ini mempunyai beberapa kelebihan dibanding dengan data tercetak, antara lain
adalah data akan aman dari serangga pengerat, data bisa di back-up sehingga resiko
kehilangan data semakin kecil, dan juga data bisa dipindah-pindahkan dengan mudah.
Namun, semakin hari data yang ada akan semakin banyak, hal itu menyebabkan
adanya kebutuhan akan memori penyimpanan semakin besar. Kebutuhan terhadap
kapasitas penyimpanan yang semakin besar merupakan penyebab munculnya berbagai
teknik kompresi data.
Kompresi adalah mengecilkan/ memampatkan ukuran. Kompresi Data adalah
teknik untuk mengecilkan data sehingga dapat diperoleh file dengan ukuran yang
lebih kecil daripada ukuran file aslinya. Dengan melakukan kompresi, data yang besar
akan berkurang ukurannya sehingga dapat menghemat kapasitas penyimpanan dan
waktu untuk pertukaran/transmisi data.
Ada beberapa faktor yang harus diperhatikan dalam kompresi data yaitu) Ratio
of Compression, Compression Ratio, Redudancy, dan time process. Ada banyak
algoritma yang dikembangkan untuk kompresi data, namun belum ada satupun
algoritma yang baik untuk mengkompresi berbagai tipe file karena karakteristik atau
struktur file yang berbeda-beda. Oleh karena itu, dalam penelitian ini penulis akan
membandingkan dua algoritma kompresi data, yaitu algoritma Huffman dan algoritma
Sequitur. Kedua algoritma ini bersifat lossless (kompresi data tanpa berkehilangan).
Algoritma
Huffman
merupakan
algoritma
yang
menggunakan
prinsip
pengkodean yang mirip dengan kode Morse, yaitu setiap karakter (simbol) dikodekan
Universitas Sumatera Utara
2
hanya dengan rangkaian beberapa bit, dimana karakter yang sering muncul dikodekan
dengan serangkaian bit yang pendek dan karakter yang jarang muncul dikodekan
dengan rangkaian bit yang lebih panjang. Sementara itu, algoritma Sequitur
merupakan algoritma yang lebih kompleks yang berdasarkan pada konsep tata
bahasa
bebas
konteks
(context-free
grammar).
Di
mana
terdapat
simbol
nonterminal dan simbol terminal yang merupakan unsur dari production rules (aturanaturan yang digunakan untuk membangun sebuah kalimat). Algoritma Sequitur
memanfaatkan frase-frase yang berulang untuk melakukan kompresi.
1.2. Rumusan Masalah
Berdasarkan latar belakang, rumusan masalah dalam penulisan Tugas Akhir ini adalah
bagaimana merancang aplikasi kompresi untuk menganalisis perbandingan kinerja
algoritma Huffman dan algoritma Sequitur dalam kompresi data teks?
1.3. Batasan Masalah
Batasan masalah dalam penelitian ini adalah:
1.
Perbandingan kinerja algoritma hanyalah antara algoritma Huffman dan
algortima Sequitur.
2.
Jenis data yang akan dikompresi adalah string dalam file teks (*.txt)
3.
Data dibatasi pada perbandingan ukuran file asal dan file hasil kompresi.
4.
Parameter pembanding yang digunakan dalam pengukuran kinerja metode ini
adalah rasio kompresi (Rc dan Cr), redundancy (Rd), waktu kompresi dan waktu
dekompresi.
5.
Bahasa pemrograman yang digunakan adalah Visual Basic.net 2010.
Universitas Sumatera Utara
3
1.4. Tujuan Penelitian
Tujuan dari penelitian ini adalah mampu menghasilkan aplikasi dan memahami
perbandingan kinerja algoritma Huffman dan algortima Sequitur dalam melakukan
kompresi teks sehingga mengetahui algoritma yang lebih optimal dalam kompresi
teks.
1.5. Manfaat Penelitian
Adapun manfaat dari penelitian ini yaitu:
1.
Memahami bagaimana proses kerja algoritma Huffman dan algoritma Sequitur
dalam kompresi data teks sehingga menghasilkan ukuran file yang lebih kecil
dari ukuran semula.
2.
Dapat dijadikan referensi, pembelajaran dan menambah pengalaman di bidang
keilmuan yang terkait.
1.6. Metodologi Penelitian
Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah sebagai
berikut:
1.
Studi Literatur
Penulis mengumpulkan bahan dan data referensi dari buku, skripsi dan sumber
lain yang berkaitan dengan algoritma Huffman dan algoritma Sequitur dalam
kompresi data teks.
2.
Analisis dan Perancangan Sistem
Pada tahap ini dilakukan analisis sesuai dengan kebutuhan seperti cara
membangun aplikasi yang mengimplementasikan algoritma Huffman dan
algoritma Sequitur, pembuatan flowchart, input serta output yang diinginkan.
Universitas Sumatera Utara
4
3.
Implementasi Sistem
Metode ini dilaksanakan dengan mengimplementasikan rancangan sistem yang
telah dibuat pada analisis dan perancangan sistem ke dalam program komputer
dengan menggunakan bahasa pemrograman Microsoft Visual Basic.net 2010.
4.
Pengujian Sistem
Metode ini dilaksanakan dengan mengimplementasikan Algoritma Hufffman
dan Algoritma Sequitur dalam kompresi data teks. Hasil program diuji
kemudian dianalisis apakah sistem ini bekerja secara efektif dan efisien.
5.
Dokumentasi
Metode ini berisi laporan dan kesimpulan akhir dari hasil analisis dan
pengujian dalam bentuk skripsi.
1.7.Sistematika Penulisan
Sistematika
dalam
penulisan
skripsi
ini
disusun menjadi
beberapa
bab,
diantaranya yaitu:
BAB 1 :
PENDAHULUAN
Bab ini berisi mengenai latar belakang masalah, rumusan masalah,
batasan masalah, tujuan dan manfaat dari penelitian, metode penelitian
dan sistematika penulisan.
BAB 2:
LANDASAN TEORI
Bab
ini
berisi
mengenai
teori-teori
yang
digunakan
untuk
mendukung penulisan penelitian, selain itu dalam bab 2 juga
dijelaskan mengenai metode yang digunakan dalam penelitian.
Universitas Sumatera Utara
5
BAB 3:
ANALISIS DAN PERANCANGAN SISTEM
Bab
ini
terdiri dari
tahap
perancangan dari program
analisis
yang akan
sistem dan desain/model
dibuat, dalam hal
ini
termasuk juga algoritma dari program tersebut.
BAB 4:
IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi mengenai implementasi dan pengujian dari program
yang sebelumnya telah dirancang dan dianalisis sistemnya.
BAB 5:
KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari hasil penelitian yang telah selesai
dilakukan, juga saran atau rekomendasi guna penelitian lebih lanjut.
Universitas Sumatera Utara