SKRIPSI
ELSYA SABRINA ASMTA SIMORANGKIR 131421029
PROGRAM STUDI S1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFOMASI
UNIVERSITAS SUMATERA UTARA MEDAN
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
ELSYA SABRINA ASMTA SIMORANGKIR 131421029
PROGRAM STUDI S1 EKSTENSI ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFOMASI
UNIVERSITAS SUMATERA UTARA MEDAN
PERSETUJUAN
Judul :
Kategori : SKRIPSI
Nama : ELSYA SABRINA ASMITA SIMORANGKIR
Nomor Induk Mahasiswa : 131421029
Program Studi : EKSTENSI S1 ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing :
Pembimbing II Pembimbing I
Drs. Marihat Situmorang, M. Kom Poltak Sihombing, M. Kom NIP. 196312141989031001 196203171991031001
Diketahui/disetujui oleh
Program Studi Ekstensi S1 Ilmu Komputer Ketua,
Poltak Sihombing, M. Kom
NIP. 196203171991031001
PERNYATAAN
ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SEQUITUR DALAM KOMPRESI DATA TEXT
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 25 Juli 2017
PENGHARGAAN
Dengan segala kerendahan hati penulis memanjatkan puji dan syukur kehadirat Allah yang penulis kenal melalui Yesus Kristus atas berkat, dan kasih karunia-Nya yang berlimpah sehingga penulis dapat menyelesaikan skripsi ini.
Dalam penyusunan dan penulisan skripsi ini, penulis banyak mendapatkan pengalaman-pengalaman, bimbingan, dan dukungan dari berbagai pihak. Pada kesempatan ini, penulis ingin mengucapkan rasa terima kasih dan penghargaan kepada :
1. Bapak Prof. Dr. Runtung Sitepu, SH., M.Hum selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer.
4. Bapak Herriyance, ST, M.Kom selaku Sekretaris Program Studi Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.
5. Bapak Dr. Poltak Sihombing, M.Kom selaku Dosen Pembimbing I yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, memberikan nasehat, motivasi penulis agar dapat menyeselesaikan skripsi ini. telah memberikan kritik dan saran terhadap skripsi penulis.
10.Teristimewa untuk Kedua Orang Tua penulis, Papa : Marudut Simorangkir, S.pd dan Mama : Nuryeni Sidabutar, serta adik-adik penulis Devi Yuslianti Simorangkir, S.pd, Nella Simorangkir, dan Yusmiarni Simorangkir serta Opung tercinta : Soaloon Simorangkir yang tidak henti-hentinya memberikan doa, motivasi, dan dukungan baik secara moril maupun materil yang selalu menjadi sumber semangat penulis.
11.Teman berbagi keceriaaan bersama : Efori Bu’ulolo, S.Kom, M.Kom yang
telah memberikan doa dan dukungan kepada penulis hingga terselesaikannya skripsi ini.
12.Seluruh teman-teman mahasiswa S1 ekstensi ilmu komputer khususnya Kom A stambuk 2013 yang selama ini menjadi keluarga dan sahabat penulis.
13.Seluruh rekan-rekan kerja di yang telah memberikan dukungan dan motivasi dalam menyelesaikan skripsi ini.
14.Semua pihak yang terlibat lansung maupun tidak lansung yang tidak dapat penulis sebutkan satu persatu yang telah membantu menyelesaikan skripsi ini.
Penulis menyadari bahwa skripsi ini masih memiliki banyak kekkurangan, baik dari segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis menerima kritik san ssaran dari pembaca dalam upaya perbaikan skripsi ini.
Demikianlah halaman penghargaan ini, semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan-rekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.
Medan, 25 Juli 2017 Penulis
ABSTRAK
Kebutuhan terhadap kapasitas penyimpanan yang semakin besar merupakan penyebab munculnya berbagai teknik kompresi. Kompresi Data bertujuan untuk mengurangi ukuran data sehingga dapat menghemat kebutuhan tempat penyimpanan dan mempercepat waktu transmisi/ pertukaran data. Algoritma Huffman dan algoritma Sequitur merupakan algoritma yang digunakan dalam proses Kompresi Data pada Tugas Akhir ini. Kedua algoritma ini merupakan jenis kompresi Lossless yang artinya teknik kompresi dengan tidak mengurangi ukuran aslinya. Parameter yang digunakan dalam penelitian ini terdiri dari Compression Ratio (CR), Ratio of Compression (RC), Redudancy, waktu kompresi (ms) dan waktu dekompresi (ms) yang mana akan dilakukan proses analisis dan perbandingan kinerja dari masing-masing algoritma. Terdapat tiga fase dalam proses kompresi huffman yaitu fase pembentukkan pohon huffman, encoding, dan decoding. Algoritma sequitur merupakan algoritma yang memanfaatkan frase yang berulang. Pada algoritma ini dikenal dengan simbol nonterminal. Simbol tersebut merupakan unsur dari production rules. Sampel yang digunakan dalam pengujian berupa file teks (*.txt). Dari hasil pengujian, disimpulkan bahwa algoritma Huffman lebih optimal dalam mengkompresi file teks yang tidak mengandung perulangan frase, sedangkan algoritma Sequitur lebih optimal dalam mengkompresi file teks yang mengandung perulangan frase.
ABSTRACT
The need for greater storage capacity is the cause of various compression techniques. Data Compression aims to reduce the size of the data so that it can save storage requirements and speed up the transmission / exchange of data. Huffman and sequitur algorithm is an algorithm used in data compression process in this final project. Both of these algorithms is a type of lossless compression, which means compression techniques without reducing the original size. The parameters used in this study consisted of Compression Ratio (CR), Ratio of Compression (RC), redundancy, compression of time (ms) and decompression time (ms) which will perform an analysis and comparison of the performance of each algorithm. There are three phases in the compression process is the phase formation Huffman Huffman tree, encoding, and decoding. Sequitur algorithm is an algorithm that utilizes repetitive phrases. In this algorithm known as nonterminal symbols. The symbol is an element of production rules. The samples used in the testing in the form of text files (* .txt). From the test results, it was concluded that the optimal Huffman algorithm in compressing text files that do not contain the phrase looping, whereas a more optimal algorithm sequitur in compressing a text file that contains a looping phrase.
DAFTAR ISI
1.5. Manfaat Penelitian 3
1.6. Metodolgi Penelitian 3
1.7. Sistematika Penulisan 4
BAB 2 LANDASAN TEORI
2.1. Kompresi Data 6
2.2. Parameter Analisis Kompresi 6
2.3. Algoritma 7
2.4.1. Pembentukan Pohon Huffman (Huffman Tree) 9
2.4.2. Proses Encoding 9
2.4.3. Proses Decoding 10
2.5. Algoritma Sequitur 10
2.5.1. Diagram Keunikan (Diagram Uniqueness) 11
2.6. Kompleksitas Algoritma 11
2.7. Pengertian Data Teks 13
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem 14
3.1.1. Identifikasi Masalah 14
3.1.2. Analisis Kebutuhan Sistem 15
3.1.3. Pemodelan Sistem 17
3.1.3.1. Use Case Diagram 17 3.1.3.2. Activity Diagram 18 3.1.3.3 Sequence Diagram 20
3.2. Perancangan Sistem 20
3.2.1 Bagan Alir Sistem (Flowchart) 21
3.3. Perancangan Antarmuka 26
3.3.1. Struktur Menu 27
3.3.2. Rancangan Halaman Kompresi Huffman 28 3.3.3. Rancangan Halaman Kompresi Sequitur 30 3.3.4. Rancangan Halaman Dekompresi Huffman 32 3.3.5. Rancangan Halaman Dekompresi Sequitur 34 3.3.3. Rancangan Halaman Tentang 35 BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1.1. Implementasi Kompresi Algoritma Huffman 36 4.1.2. Implementasi Dekompresi Algoritma Huffman 41 4.1.3. Kompleksitas Algoritma Huffman 41 4.1.4. Implementasi Kompresi Algoritma Sequitur 41 4.1.5. Implementasi Dekompresi Algoritma Sequitur 43 4.1.5. Kompleksitas Algoritma Sequitur 44
4.2. Tampilan Antarmuka Sistem 45
4.2.1. Tampilan Beranda 45
4.2.2. Tampilan Form File 46
4.2.3. Tampilan Form File Kompresi 46 4.2.3.1. Form Kompresi Huffman 46 4.2.3.1. Form Kompresi Sequitur 46 4.2.4. Tampilan Form File Dekompresi 47 4.2.4.1. Form Dekompresi Huffman 47 4.2.3.1. Form Dekompresi Sequitur 47 4.2.5. Tampilan Form Tentang 48
4.3. Pengujian Sistem 48
4.3.1. Pengujian Proses Kompresi 48 4.3.1.1. Pengujian Proses Kompresi Huffman 48 4.3.1.2. Pengujian Proses Kompresi Sequitur 49 4.3.2. Pengujian Proses Dekompresi 50 4.3.1.3. Pengujian Proses Dekompresi Huffman 50 4.3.1.4. Pengujian Proses Dekompresi Sequitur 51
4.3.3. Hasil Pengujian 52
4.3.3.3. Grafik Pebandingan Algoritma Huffman 54 Dan Algoritma Sequitur
BAB 5 KESIMPULAN DAN SARAN
5.1. Kesimpulan 57
DAFTAR TABEL
Hal. Tabel 3.1. Kompleksitas Algoritma 12 Tabel 4.1. Pembentukan Karakter 36 Tabel 4.2. Pohon Huffman Langkah 1 37 Tabel 4.3. Pohon Huffman Langkah 2 37 Tabel 4.4. Pohon Huffman Langkah 3 38 Tabel 4.5. Pohon Huffman Langkah 4 38 Tabel 4.6. Pohon Huffman Langkah 5 38 Tabel 4.7. Pohon Huffman Langkah 6 39 Tabel 4.8. Tampilan Pembentukan Kode 39 Tabel 4.9. Proses Algoritma Sequitur 42 Tabel 4.10. Total Bit Setelah Dikompresi Menggunakan 43 Algoritma Sequitur
DAFTAR GAMBAR
Hal. Gambar 3.1. Diagram Ishikawa Analisis Permasalahan Sistem 15
Gambar 3.2. Diagram Use Case 17
Gambar 3.3. Activity Diagram Pada Proses Kompresi 18 Gambar 3.4. Activity Diagram Pada Proses Dekompresi 19 Gambar 3.5. Sequence Diagram Pada Proses Kompresi 20 Gambar 3.6. Sequence Diagram Pada Proses Dekompresi 20 Gambar 3.7. Flowchart Proses Kompresi Huffman 21 Gambar 3.8. Flowchart Proses Dekompresi Huffman 22 Gambar 3.9. Flowchart Proses Kompresi Sequitur 23 Gambar 3.10. Flowchart Proses Dekompresi Sequitur 24 Gambar 3.11. Flowchart Umum Kompresi Huffman 25 Gambar 3.12. Flowchart Umum Dekompresi Huffman 25 Gambar 3.13. Flowchart Umum Kompresi Sequitur 26 Gambar 3.14. Flowchart Umum Dekompresi Sequitur 26 Gambar 3.15. Rancangan Antarmuka Menu Utama 27 Gambar 3.16. Rancangan Halaman Kompresi Huffman 28 Gambar 3.17. Rancangan Halaman Kompresi Sequitur 30 Gambar 3.18. Rancangan Halaman Dekompresi Huffman 32 Gambar 3.19. Rancangan Halaman Dekompresi Sequitur 34 Gambar 3.20. Rancangan Halaman Tentang 35
Gambar 4.1. Tampilan Beranda 45
Gambar 4.3. Tampilan Form Kompresi Huffman 46 Gambar 4.4. Tampilan Form Kompresi Sequitur 46 Gambar 4.5. Tampilan Form Dekompres Huffman 47 Gambar 4.6. Tampilan Form Dekompres Sequitur 47 Gambar 4.7 Tampilan Form Tentang 48 Gambar 4.8. Informasi Hasil Kompresi Huffman 49 Gambar 4.9. informasi Hasil Kompresi Sequitur 50 Gambar 4..10. Informasi Hasil Dekompresi Huffman 51 Gambar 4..11. Informasi Hasil Dekompresi Sequitur 52 Gambar 4.12. Grafik Kompresi Rasio 54 Gambar 4.13. Grafik Rasio Kompresi 54
Gambar 4.13. Grafik Redundancy 55