37
BAB IV KOMPRESI DATA MENGGUNAKAN KODE HUFFMAN
4.1 Pendahuluan
Kode Huffman dikembangkan oleh David A. Huffman pada tahun 1951. Pada awalnya David A. Huffman menulis
paper
sebagai salah satu tugas kuliahnya di MIT. Algoritma ini merupakan pengembangan lebih lanjut dari
algoritma kompresi yang dilakukan oleh Claude Shannon dan R.M. Rano. Algoritma Huffman disebut juga algoritma
prefix
, dimana setiap kode yang dihasilkan tidak akan menghasilkan kode yang sama dari karakter yang
muncul. Algoritma ini berdasarkan frekuensi kemunculan tiap karakter, yang akan menghasilkan kode-kode baru yang dihasilkan dari pembentukan pohon Huffman.
Pembentukan pohon Huffman dilakukan secara
bottom-up
, yakni berdasarkan frekuensi kemunculan karakter yang terkecil ke yang terbesar.
Kode Huffman merupakan algoritma yang cukup popular dan banyak digunakan untuk melakukan kompresi
text
maupun data. Kode Huffman ini memiliki prinsip berdasarkan metode statistik, yakni dengan menghitung
kekerapan karakter yang muncul. Jika ditijau dari segi teknik pengkodean karakter yang digunakan,
algoritma Huffman ini termasuk dalam algoritma yang menggunakan metode
symbolwise
, yaitu suatu metode yang menghitung probabilitas kemunculan suatu
karakter dalam satu waktu, karakter yang sering muncul akan dikodekan dalam suatu untaian bit yang lebih pendek dan karakter yang jarang muncul akan
dikodekan dalam untaian bit yang lebih panjang. Hal ini dimaksudkan untuk
Universitas Sumatera Utara
38 mempercepat proses inisialisasi karakter yang lebih sering muncul dalam sebuah
string, yang tentu saja akan berpengaruh saat
encoding
dan
decoding
kode Huffman.
Kelebihan kompresi data menggunakan Kode Huffman adalah: 1. Kompresi menggunakan kode Huffman merupakan kompresi
Lossless
sehingga pada saat data yang telah terkompresi didekompresikan, maka data tersebut akan sama dengan data aslinya. Hal ini baik digunakan pada
kompresi data berupa teks karena tidak akan mengurangi nilai dari data tersebut.
2. Proses kompresi menggunakan kode Huffman lebih sederhana dibandingkan dengan kompresi menggunakan metode lain.
3. Persentase kompresi menggunakan Kode Huffman pada kompresi data berupa teks berkisar hingga 45.
4.2 Variasi Kode Huffman