Universitas Sumatera Utara
ANALISIS DAN IMPLEMENTASI ALGORITMA KOMPRESI
SUBEXPONENTIAL CODES DAN INVERTED ELIAS
DELTA PADA FILE TEKS
SKRIPSI
DEA YULIANDA PRATIWI
141421105
PROGRAM STUDI EKSTENSI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
Universitas Sumatera Utara
ANALISIS DAN IMPLEMENTASI ALGORITMA KOMPRESI SUBEXPONENTIAL CODES DAN INVERTED ELIAS
DELTA PADA FILE TEKS
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
DEA YULIANDA PRATIWI 141421105
PROGRAM STUDI EKSTENSI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA MEDAN
Universitas Sumatera Utara PERSETUJUAN
Judul : ANALISIS DAN IMPLEMENTASI ALGORITMA KOMPRESI SUBEXPONENTIAL CODES DAN INVERTED ELIAS DELTA PADA FILE TEKS Kategori : SKRIPSI
Nama : DEA YULIANDA PRATIWI Nomor Induk Mahasiswa : 141421105
Program Studi : EKSTENSI S-1 ILMU KOMPUTER Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
M. Andri Budiman, S.T., M.Comp.Sc.M.E.M Dr. Syahril Efendi, S.Si., M.IT NIP. 19751008 200801 1 001 NIP. 19671110 199602 1 001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
Universitas Sumatera Utara PERNYATAAN
ANALISIS DAN IMPLEMENTASI ALGORITMA KOMPRESI SUBEXPONENTIAL CODES DAN INVERTED ELIAS
DELTA PADA FILE TEKS
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing - masing telah disebutkan sumbernya.
Medan, Mei 2016
Universitas Sumatera Utara PENGHARGAAN
Alhamdulillah segala puji dan syukur atas nikmat kepada Allah Yang Maha Esa sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S-1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada kesempatan ini penulis mengucapkan terima kasih kepada pihak yang telah banyak membimbing, mengarahkan, membantu, dan memberikan dukungan semangat dan kasih sayang dalam menyelesaikan skripsi ini. Penulis mengucapkan terima kasih kepada :
1. Bapak Prof. DR. Runtung Sitepu, SH, MHum selaku Rektor Universitas Sumatera Utara. memberikan arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.
6. M. Andri Budiman, S.T.,M.Comp.Sc.M.E.M selaku Dosen Pembimbing II yang telah memberikan arahan, waktu, tenaga, pikiran, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.
7. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembanding I yang telah memberikan kritik dan saran dalam penyempurnaan laporan skripsi serta mendukung penuh dalam penyusunan skiripsi
8. Bapak Drs. Marihat Situmorang, M.Kom selaku Dosen Pembanding II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.
9. Semua dosen dan semua pegawai di Program Studi S-1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
10. Teristimewa kepada kedua orang tua saya A. Boni Siswanto dan Loly Erwita yang senantiasa memberikan doa, dukungan moril dan materil, motivasi, semangat dan kasih sayang yang tiada henti kepada penulis sehingga penulis dapat menyelesaikan skripsi ini.
Universitas Sumatera Utara
12. Sahabat hidup saya, Widyana Paramita, Annisa Sadjidah, dan Rafika Hani yang telah memberikan dukungan dan semangat hingga penyelesaian skripsi ini.
13. Sahabat seperjuangan saya, Ogiana, Desy H Husni, Nadra Katika Lingga, Agus Manur, Iqbal Habibie yang telah memberikan semangat untuk cepat tamat dan menjadi teman diskusi dalam penyelesaian skripsi ini.
14. Dan semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu, kepada pembaca agar kiranya memberikan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya.
Medan, Mei 2016 Penulis.
Universitas Sumatera Utara ABSTRAK
Ukuran data atau file yang besar akan mempengaruhi jaringan, jaringan akan menjadi sibuk dan jalur komunikasi menjadi lambat sehingga menghabiskan waktu yang lama. Kompresi data bertujuan untuk mengurangi jumlah bit yang digunakan dalam penyimpanan atau pun pengiriman data. Penelitian ini bertujuan untuk merancang sebuah aplikasi berbasis desktop yang dapat mengkompresi file teks dan mengukur kinerja dari algoritma Subexponential Codes dan Inverted Elias Delta. Pengukuran kinerja dari masing-masing algoritma berdasarkan ratio yaitu, CR(Compression Ratio) dan RC (Ratio Of Compression), Space Saving (SS), dan Time Process (waktu yang berjalan selama proses kompresi dan dekompresi). Kompresi file teks dilakukan dengan membaca input String pada file teks yang berekstensi (*.txt). Sampel yang digunakan pada proses pengujian yaitu string yang terdiri dari satu jenis karakter (String Homogen) dan string yang terdiri dari beberapa jenis karakter (String Heterogen) yang tersimpan pada file teks. Hasil pengujian menyatakan bahwa algoritma Subexponential Codes tidak lebih baik dari algoritma Inverted Elias Delta. waktu kompresi dan dekompresi yang dihasilkan algoritma Subexponential Codes relative lebih besar dibandingkan dengan algoritma Inverted Elias Delta.
Kata Kunci : Kompresi File Teks, Algoritma Subexponential Codes dan Algoritma
Universitas Sumatera Utara
ANALYSIS AND IMPLEMENTATION OF ALGORITHMS
SUBEXPONENTIAL CODES AND INVERTED ELIAS DELTA IN TEXT FILE COMPRESSION
ABSTRACT
Large file size will affect the network, the network will be busy and the lines of communication becomes slow so spending a long time. Data Compression aims to decrease the amount of bits used in storage or data transmission. The purpose of this study was to design a desktop based application that can compress text files, and measure the performance of the algorithm Subexponential Codes and Inverted Elias Delta. Measurement of the performance of each algorithm based on the ratio that is, CR (Compression Ratio) and RC (Ratio Of Compression), Space Saving (SS), and Time Process (the elapsed time during the process of compression and decompression). The compression process is to read the text file on a String input text file extension (* .txt). The samples used in the testing process is a string composed of one type of character (Homogeneous String) and a string composed of several types of characters (String Heterogeneous) that are stored in a text file. Results of test on the system that Subexponential Codes algorithm is not better than the algorithm Inverted Elias Delta. Time of compression and decompression algorithms Subexponential Codes is generated relative larger than the algorithm Inverted Elias Delta.
Keywords: Text File Compression Algorithm, Algorithm Subexponential Codes and
Universitas Sumatera Utara
2.1.3. Parameter Analisis Kinerja Algoritma Kompresi 10
Universitas Sumatera Utara
Tabel 3.3. Tabel Ukuran String Sebelum Dikompres Yang Telah Diurutkan Secara Descending 27
Tabel 3.4. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 0 27
Tabel 3.5. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 1 29
Tabel 3.6. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 2 30
Tabel 3.7. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 3 31
Tabel 3.8. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 4 33
Tabel 3.9. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 5 34
Tabel 3.10. Tabel Ukuran String Inverted Elias Delta Sebelum di Kompres 39
Tabel 3.11. Tabel Ukuran String Sebelum di Kompres Yang Telah Diurutkan Secara Descending 40
Tabel 3.12. Tabel Kode Inverted Elias Delta 42
Tabel 3.13. Tabel Total Bit Setelah Dikompres Menggunakan Inverted Elias Delta Tabel 3.14. Tabel Total Bit Setelah Dikompres Menggunakan Subexponential Codes untuk nilai k = 0 45
Tabel 4.3. Hasil Pengujian 2 String Heterogen Dengan Subexponential Codes 83
Universitas Sumatera Utara
Gambar 3.2. Grafik perbandingan jumlah string bit setelah di kompres berdasarkan nilai k 35
Gambar 3.9. Gambar Activity Diagram Pengkodean Pada Proses Dekompresi 54
Gambar 3.10. Gambar Activity Diagram Simpan Pada Proses Dekompresi 54
Gambar 3.11. Gambar Sequence Diagram Pada Proses Kompresi Menggunakan Algoritma Subexponential Codes 55
Gambar 3.12. Gambar Sequence Diagram Pada Proses Kompresi Menggunakan Algoritma Inverted Elias Delta 56
Gambar 3.13. Gambar Sequence Diagram Pada Proses Dekompres 56
Gambar 3.14. Gambar Class Diagram Pada Sistem 57
Gambar 3.15. Gambar Flowchart Dengan Metode Subexponential Codes Secara Umum Pada Sistem 59
Gambar 3.16. Gambar Flowchart Dengan Metode Inverted Elias Delta Secara Umum Pada Sistem 60
Gambar 3.17. Gambar Flowchart Kompresi Algoritma Subexponential Codes 61
Gambar 3.18. Gambar Flowchart Kompresi Algoritma Inverted Elias Delta 62
Universitas Sumatera Utara
Gambar 4.7. Gambar Tampilan Setelah Input File 75
Gambar 4.8. Gambar Tampilan Setelah Save Dialog File 76
Gambar 4.9. Gambar Tampilan Pada Masing-Masing Text Field 76
Gambar 4.10. Gambar Tampilan Hasil Parameter Pada Proses Kompresi 77
Gambar 4.11. Gambar Tampilan File *.iedc Hasil Dari Proses Kompresi 77
Gambar 4.12. Gambar Tampilan Open Dialog File Proses Decompression 78
Gambar 4.13. Gambar Tampilan Setelah File diPilih Untuk Proses Dekompresi 78
Gambar 4.14. Gambar Tampilan Pada Teks Box Area Proses Dekompresi 79
Gambar 4.15. Gambar Tampilan Save Dialog File Proses Dekompresi 79
Gambar 4.16. Gambar Tampilan Pada Masing-Masing Teks Field 80
Gambar 4.17. Gambar Tampilan Time Process Decompress 80
Gambar 4.18. Gambar Tampilan Ukuran File Asli 81
Gambar 4.19. Gambar Tampilan Ukuran File Setelah diKompresi 81
Gambar 4.20. Gambar Tampilan Ukuran File Setelah diDekompresi 81
Gambar 4.21. Grafik Ratio Of Compression Terhadap String Homogen 83
Gambar 4.22. Grafik Compression Ratio Terhadap String Homogen 83
Gambar 4.23. Grafik Space Saving Terhadap String Homogen 84
Gambar 4.24. Grafik Waktu Kompresi Terhadap String Homogen 84
Gambar 4.25. Grafik Waktu Dekompresi Terhadap String Homogen 84
Gambar 4.26. Grafik Ratio Of Compression Terhadap String Heterogen 86
Gambar 4.27. Grafik Compression Ratio Terhadap String Heterogen 86
Gambar 4.28. Grafik Space Saving Terhadap String Hoterogen 86
Gambar 4.29. Grafik Waktu Kompresi Terhadap String Heterogen 87
Gambar 4.30. Grafik Waktu Dekompresi Terhadap String Heterogen 87