DAFTAR ISI
Hal
HALAMAN JUDUL i
PERSETUJUAN ii
PERNYATAAN ORISINALITAS iii
PERSETUJUAN PUBLIKASI iv
PANITIA PENGUJI v
RIWAYAT HIDUP vi
UCAPAN TERIMA KASIH vii
ABSTRAK ix
ABSTRACT x
DAFTAR ISI xxxXX
xi DAFTAR TABEL
xiv DAFTAR GAMBAR
xv BAB 1
: PENDAHULUAN :
1.1. Latar Belakang 1
: 1.2. Perumusan Masalah
4 :
1.3. Batasan Masalah 4
: 1.4. Tujuan Penelitian
4 :
1.5. Manfaat Penelitian 5
: 1.6. Sistematika Penulisan
5
BAB 2 : TINJAUAN PUSTAKA
: 2.1. Kompresi Data
6 2.1.1. Kompresi Lossy
7 2.1.2. Kompresi Lossless
8 :
2.2. Sistem Pengkodean 11
2.2.1. Fixed Length Encoding 11
2.2.2. Variable Length Encoding 11
2.2.3. Prefix Code 11
: 2.3. Algoritma Elias Gamma Code
11 xi
Universitas Sumatera Utara
: 2.4. Algoritma Elias Delta Code
14 :
2.5. Algoritma Levenstein Code 17
: 2.6. Riset Terkait
20 :
2.7. Perbedaan dengan Riset yang Lain 22
: 2.8. Kontribusi Riset
22
BAB 3 : METODOLOGI PENELITIAN
: 3.1. Pendahuluan
23 :
3.2. Data Yang Digunakan 24
: 3.3. Analisis Data
3.3.1. Elias Gamma Code 24
3.3.2. Elias Delta Code 34
3.3.3. Levenstein Code 43
: 3.4. Alat Penelitian
52
BAB 4 : HASIL DAN PEMBAHASAN
: 4.1. Hasil Kompresi Algoritma Elias Gamma Code
55 :
4.2. Hasil Kompresi Algoritma Elias Delta Code 63
: 4.3. Hasil Kompresi Algoritma Levenstein Code
71 :
4.4. Analisis Perbandingan Hasil Kompresi 79
4.4.1. Perbandingan Rasio Kompresi dan Space Saving 4.4.1.
Algoritma Elias Gamma Code, Elias Delta Code dan 4.4.1.
Levenstein Code 79
4.4.2. Grafik Perbandingan Rasio Kompresi dan Space Saving 4.4.1.
Algoritma Elias Gamma Code, Elias Delta Code dan 4.4.1.
Levenstein Code 83
4.4.3. Perbandingan Waktu Kompresi Dan Waktu Dekompresi 4.4.1.
Algoritma Elias Gamma Code, Elias Delta Code dan 4.4.1.
Levenstein Code 86
Universitas Sumatera Utara
BAB 5 : KESIMPULAN DAN SARAN
: 5.1. Kesimpulan
87 :
5.2. Saran 88
DAFTAR PUSTAKA 89
LAMPIRAN 90
Universitas Sumatera Utara
DAFTAR TABEL
Nomor Keterangan
Halaman 2.1.
18 Kode Elias Gamma 12
2.2. Pemetaan Data Teks Dengan Kode Elias Gamma
13 2.3.
18 Kode Elias Delta 15
2.4. Pemetaan Data Teks Dengan Kode Elias Delta
17 2.5.
18 Kode Levenstein 18
2.6. Pemetaan Data Teks Dengan Kode Levenstein
19 2.7.
Riset Terkait 21
3.1. Data Yang Digunakan
24 3.2.
Hasil Pengurutan Karakter Set Kompresi Kode Elias Gamma 27
3.3. Penggantian Karakter Dengan Kode Elias Gamma
28 3.4.
Hasil Pengurutan Karakter Set Kompresi Kode Elias Delta 36
3.5. Penggantian Karakter Dengan Kode Elias Delta
37 3.6.
Hasil Pengurutan Karakter Set Kompresi Kode Levenstein 45
3.7. Penggantian Karakter Dengan Kode Levenstein
46 4.1.
Hasil Kompresi Dengan Kode Elias Gamma 63
4.2. Hasil Kompresi Dengan Kode Elias Delta
71 4.3.
Hasil Kompresi Dengan Kode Levenstein 79
4.4. Perbandingan Hasil Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code pada Dokumen U10k.txt 79
4.5. Perbandingan Hasil Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code pada Dokumen U20k.txt 80
4.6. Perbandingan Hasil Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code pada Dokumen U30k.txt 80
4.7. Perbandingan Hasil Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code pada Dokumen U45k.txt 81
4.8. Perbandingan Hasil Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code pada Dokumen U60k.txt 81
4.9. Hasil Kompresi Elias Gamma Code, Elias Delta Code dan
Levenstein Code 82
4.10. Rata-Rata Rasio Kompresi dan Space Saving Elias Gamma
Code, Elias Delta Code dan Levenstein Code 82
4.11. Waktu KompresiDekompresi Algoritma Elias Gamma
Code, Elias Delta Code dan Levenstein Code 86
Universitas Sumatera Utara
DAFTAR GAMBAR
Nomor Keterangan
Halaman 2.1.
Skema Lossy Compression 8
2.2. Skema Lossless Compression
9 3.1.
Diagram Kompresi Algoritma Elias Gamma Code 25
3.2. String Bit Kode Elias Gamma Pada dokumen.txt
28 3.3.
Pemeriksaan Panjang String Bit 29
3.4. Hasil Penambahan Pada String Bit
29 3.5.
Hasil Generate String Bit Kode Elias Gamma ke ASCII 30
3.6. Diagram Dekompresi Algoritma Elias Gamma Code
31 3.7.
Hasil Generate ASCII ke Binary 32
3.8. Pengembalian Binary ke String Bit Semula
32 3.9.
Hasil Dekompresi Kode Elias Gamma 33
3.10. Diagram Kompresi Algoritma Elias Delta Code
34 3.11.
String Bit Kode Elias Delta Pada dokumen.txt 37
3.12. Pemeriksaan Panjang String Bit
38 3.13.
Hasil Penambahan Pada String Bit 38
3.14. Hasil Generate String Bit Kode Elias Delta ke ASCII
39 3.15.
Diagram Dekompresi Algoritma Elias Delta Code 40
3.16. Hasil Generate ASCII ke Binary
41 3.17.
Pengembalian Binary ke String Bit Semula 41
3.18. Hasil Dekompresi Kode Elias Delta
42 3.19.
Diagram Kompresi Algoritma Elias Levenstein Code 43
3.20. String Bit Kode Levenstein Pada dokumen.txt
46 3.21.
Pemeriksaan Panjang String Bit 47
3.22. Hasil Penambahan Pada String Bit
47 3.23.
Hasil Generate String Bit Kode Levenstein ke ASCII 48
3.24. Diagram Dekompresi Algoritma Levenstein Code
49 3.25.
Hasil Generate ASCII ke Binary 50
3.26. Pengembalian Binary ke String Bit Semula
50 3.27.
Hasil Dekompresi Kode Levenstein 51
4.1. Proses Kompresi Dokumen U10k.txt Dengan Kode Elias
Gamma 55
4.2. Waktu Dekompresi Kode Elias Gamma Pada Dokumen
U10k.txt 56
4.3. Proses Kompresi Dokumen U20k.txt Dengan Kode Elias
Gamma 57
4.4. Waktu Dekompresi Kode Elias Gamma Pada Dokumen
U20k.txt 58
4.5. Proses Kompresi Dokumen U30k.txt Dengan Kode Elias
Gamma 58
4.6. Waktu Dekompresi Kode Elias Gamma Pada Dokumen
U30k.txt 59
Universitas Sumatera Utara
4.7. Proses Kompresi Dokumen U45k.txt Dengan Kode Elias
Gamma 60
4.8. Waktu Dekompresi Kode Elias Gamma Pada Dokumen
U45k.txt 61
4.9. Proses Kompresi Dokumen U60k.txt Dengan Kode Elias
Gamma 61
4.10. Waktu Dekompresi Kode Elias Gamma Pada Dokumen
U60k.txt 62
4.11. Proses Kompresi Dokumen U10k.txt Dengan Kode Elias Delta
63 4.12.
Waktu Dekompresi Kode Elias Delta Pada Dokumen U10k.txt 64
4.13. Proses Kompresi Dokumen U20k.txt Dengan Kode Elias Delta
65 4.14.
Waktu Dekompresi Kode Elias Delta Pada Dokumen U20k.txt 66
4.15. Proses Kompresi Dokumen U30k.txt Dengan Kode Elias Delta
66 4.16.
Waktu Dekompresi Kode Elias Delta Pada Dokumen U30k.txt 67
4.17. Proses Kompresi Dokumen U45k.txt Dengan Kode Elias Delta
68 4.18.
Waktu Dekompresi Kode Elias Delta Pada Dokumen U45k.txt 69
4.19. Proses Kompresi Dokumen U60k.txt Dengan Kode Elias Delta
69 4.20.
Waktu Dekompresi Kode Elias Delta Pada Dokumen U60k.txt 70
4.21. Proses Kompresi Dokumen U10k.txt Dengan Kode Levenstein
71 4.22.
Waktu Dekompresi Kode Levenstein Pada Dokumen U10k.txt 72
4.23. Proses Kompresi Dokumen U20k.txt Dengan Kode Levenstein
73 4.24.
Waktu Dekompresi Kode Levenstein Pada Dokumen U20k.txt 74
4.25. Proses Kompresi Dokumen U30k.txt Dengan Kode Levenstein
74 4.26.
Waktu Dekompresi Kode Levenstein Pada Dokumen U30k.txt 75
4.27. Proses Kompresi Dokumen U45k.txt Dengan Kode Levenstein
76 4.28.
Waktu Dekompresi Kode Levenstein Pada Dokumen U45k.txt 77
4.29. Proses Kompresi Dokumen U60k.txt Dengan Kode Levenstein
77 4.30.
Waktu Dekompresi Kode Levenstein Pada Dokumen U60k.txt 78
4.31. Grafik Perbandingan Rasio Kompresi Elias Gamma Code, Elias
Delta Code dan Levenstein Code 83
4.32. Grafik Perbandingan Space Saving Elias Gamma Code, Elias
Delta Code dan Levenstein Code 84
4.33. Grafik Rata-Rata Nilai Ratio Kompresi dan Space Saving Elias
Gamma Code, Elias Delta Code dan Levenstein Code 85
Universitas Sumatera Utara
ABSTRAK
Kompresi data merupakan suatu proses untuk mengubah sebuah input data stream data asli ke dalam aliran data yang lain yag berupa output atau stream lainnya yang
sudah terkompresi yang memiliki ukuran yang lebih kecil. Salah satu fungsi utama kompresi data adalah memperkecil ukuran file dengan cara menggantikan karakter
yang umumnya berukuran 8 bit dengan kode yang lebih pendek. Pada kompresi data, terdapat banyak algoritma yang dapat digunakan untuk mengolah input menjadi
output yang diinginkan, sehingga harus diperhatikan aspek seperti rasio kompresi, space saving dan kecepatan kompresi dari masing-masing algoritma tersebut. Tujuan
penelitian ini adalah untuk menganalisis dan membandingkan rasio kompresi, space saving dan kecepatan kompresi algoritma Elias Gamma Code, Elias Delta Code dan
Levenstein Code. Data yang digunakan adalah 5 buah dokumen dengan jumlah karakter yang berbeda-beda. Algoritma Elias Gamma Code digunakan untuk
mengkodekan bilangan bulat positip, sementara Elias Delta Code merupakan kelanjutan dari Elias Gamma Code namun lebih kompleks. Sedangkan Levenstein
Code digunakan jika nilai terbesar yang akan dikodekan tidak diketahui sebelumnya, atau untuk kompres data yang nilai kecil jauh lebih sering daripada nilai besar. Hasil
perbandingan rata-rata rasio kompresi menunjukkan Elias Gamma Code sebesar 63.36, Elias Delta Code sebesar 68.83 dan Levenstein Code sebesar 72.12. Hasil
perbandingan rata-rata space saving menunjukkan Elias Gamma Code sebesar 36.64, Elias Delta Code sebesar 31.17 dan Levenstein Code sebesar 27.88.
Sementara untuk kecepatan kompresi Elias Gamma Code merupakan yang paling cepat, diikuti dengan Elias Delta Code lalu Levenstein Code.
Kata Kunci: Kompresi Data, Kode Elias Gamma, Kode Elias Delta, Kode Levenstein, Rasio Kompresi, Space Saving, Kecepatan Kompresi.
Universitas Sumatera Utara
RESULTS ANALYSIS OF TEXT DATA COMPRESSION ON ELIAS GAMMA CODE, ELIAS DELTA CODE
AND LEVENSTEIN CODE
ABSTRACT
Data compression is the process of converting an input data stream the source or the original raw data into another data stream the output, the bitstream, compressed
stream that has a smaller size. One of the main function of data compression is to reduce the file size by replacing characters that generally has 8 bits with shorter code.
In the data compression, there is a lot of algorithms that can be used to process the input into desired output, thus it is very important to observe the compression ratio,
space saving and compression speed of each of these algorithms. The purpose of this research is to analyze and compare the compression ratio, space saving and
compressin speed of Elias Gamma Code, Elias Delta Code and Levenstein Code. The data used are 5 documents with a number of different characters. Elias Gamma Code
for positive integers n is simple to encode dan decode and is also universal. Elias Delta Code is also for positive integers n but more complex from Elias Gamma Code.
While Levenstein Code is used in applications where the largest encoded valus is not known ahead of time, or to compress data in which small values are much more
frequent than large values. The result of the average compression ratio showed that Elias Gamma Code got 63.36, Elias Delta Code got 68.83 and Levenstein Code
got 72.12. The result of the average space saving showed that Elias Gamma Code got 36.64, Elias Delta Code got 31.17 and Levenstein Code got 27.88. While for
the compression speed showed that Elias Gamma Code is the fastest followed by Elias Delta Code then Levenstein Code.
Keywords: Data Compression, Elias Gamma Code, Elias Delta Code, Levenstein Code, Compression Ratio, Space Saving, Compression Speed.
Universitas Sumatera Utara
1
BAB 1 PENDAHULUAN