IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC
MARKOV COMPRESSION (DMC) PADA FILE TEXT
SKRIPSI
FIKTARUDDIN 091401075
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2015
IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC
MARKOV COMPRESSION (DMC) PADA FILE TEXT
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer
FIKTARUDDIN 091401075
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2015
PERSETUJUAN
Judul : IMPLEMENTASI DAN ANALISIS ALGORITMA
DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT
Kategori : SKRIPSI
Nama : FIKTARUDDIN
Nomor Induk Mahasiswa : 091401075
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA (Fasilkom-T I USU)
Diluluskan di Medan, Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Ade Candra, ST, M.Kom Prof. Dr. Iryanto, M.Si
NIP. 197909042009121002 NIP. 194604041971071001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001
PERNYATAAN
IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Januari 2015
Fiktaruddin 091401075
PENGHARGAAN
Puji dan syukur penulis panjatkan ke hadirat Allah SWT, yang telah memberikan rahmat dan hidayah-Nya, serta segala sesuatu dalam hidup, sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi S1 Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada semua pihak yang telah membantu penulis dalam menyelesaikan skripsi ini baik secara langsung maupun tidak langsung, teristimewa untuk kedua orangtua terkasih, Ayahanda Tgk. Rusli dan Ibunda Rabi’ah, S.Ag. Pada kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Bapak Prof. Dr. dr. Syahril Pasaribu DTM&H, Msc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Dr. Poltak Sihombing, M. Kom. selaku Ketua Program Studi S1 Ilmu Komputer dan Dosen Penguji I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.
4. Ibu Maya Silvi Lydia, B.Sc., M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.
5. Bapak Prof. Dr. Iryanto, M.Si. selaku Dosen Pembimbing I yang telah banyak meluangkan waktunya dalam memberikan masukan-masukan kepada penulis. 6. Bapak Ade Candra, ST, M.Kom. selaku Dosen Pembimbing II yang telah
banyak meluangkan waktunya dalam memberikan masukan-masukan kepada penulis.
7. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM. selaku Dosen Penguji II yang telah memberikan kritik dan saran dalam penyempuraan skripsi ini. 8. Abang dan kakak Penulis yang tersayang Ida Rosmidar, A.MaK., Ida Safrida,
AMTE., Basyaruddin, S.Si., dan Azwaruddin, Amd. yang selalu memberi semangat pada penulis.
9. Teman-teman seperjuangan mahasiswa S1-Ilmu Komputer stambuk 2009 terkhusus, Samuel Tarigan, Rio Auditya Pratama S., M. Iqshan Johandra,
S.Kom., Santo Nainggolan, S.Kom., Ardi Hasiholan, S.Kom, Tian Situngkir, S.Kom., yang telah memberikan semangat dan menjadi teman diskusi penulis dalam menyelesaikan skripsi ini.
10. Laila Manja, S.Kom. yang telah memberikan bimbingan, dukungan, dan perhatian kepada penulis.
11. Teman-teman sekaligus keluarga besar Program Studi S1 Ilmu Komputer Fasilkom-TI USU.
12. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis ucapkan satu demi satu yang telah membantu penyelesaian skripsi ini. Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena itu, penulis mengharapkan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini.
Medan, Januari 2015 Penulis,
Fiktaruddin
ABSTRAK
Pada dasarnya ketidakpuasan pengguna terhadap ukuran file dan keinginan pengguna untuk dapat mengirim data lebih cepat belum dapat terpenuhi secara maksimal dan untuk mengatasi kedua masalah tersebut dapat diatasi dengan proses kompresi data. Kompresi adalah proses mereduksi ukuran suatu data untuk menghasilkan representasi digital yang padat (compact) namun tetap dapat mewakili kuantitas informasi yang terkandung pada data tersebut. Kompresi terbagi dua jenis yaitu Lossless dan Lossy. Disini penulis hanya membahas satu algoritma yaitu kompresi Lossless, yaitu algoritma
Dynamic Markov Compression. Penulis hanya menggunakan file format (.docx) dan
(.odt). File dikompresi dengan cara memampatkan file tersebut sehingga membentuk beberapa simbol yang menjadi hasil dari file terkompresi, ukuran file akan menjadi lebih kecil dan memungkinkan untuk pengiriman data lebih cepat, kemudian untuk mengembalikan file awal dilakukan proses dekompresi.
IMPLEMENTATION AND ANALYSIS OF DYNAMIC MARKOV COMPRESSION ALGORITHM (DMC) ON TEXT FILE
ABSTRACT
Basically the user dissatisfaction on the size of the file and the user wishes to be able to send data faster can not be fulfilled optimally and to solve these two problems can be solved with data compression process. Compression is the process of reducing the size of the data to produce a digital representation of a dense (compact) but still be able to represent the quantity of information contained in the data. Compression divided into two types: Lossless and Lossy. The author discusses only one algorithm is Lossless compression, namely Dynamic Markov Compression algorithms. The author only uses the file format (.docx) and (.odt). The file is compressed by compressing the file to form several symbols which became the result of the compressed file, the file size will be smaller and allows for faster data transmission, and then to restore the original file decompression process is carried out.
Keywords: Dynamic Markov Compression, docx, .odt.
DAFTAR ISI
Hal.
Persetujuan ii
Pernyataan iii iii
Penghargaan iv iv
Abstrak vi v
Abstract vii vi
Daftar Isi viii vii
Daftar Tabel viii x
Daftar Gambar xi ix
xii Bab 1 Pendahuluan
1.1 Latar Belakang Masalah 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 2
1.5 Manfaat Penelitian 1.6 Metodologi Penelitian 3 3
1.6 Metodologi Penelitian 3
1.7 Sistematika penulisan 4
Bab 2 Tinjauan Pustaka
2.1 Defenisi Data 8 5 2.4 Teknik Kompresi Citra 9
2.2 Teknik File 6 2.3 Teknik Kompresi 2.3.1 Lossless Compression 2.3.2 Lossy Compression 6 7 2.4 Kompresi Data 7
2.5 Kompresi Citra 2.6 Citra Digital 11 9
2.6 Metode Kompresi Data 9
2.7 Dekompresi Data 10
2.8 Dynamic Markov Compression 10
2.9 Penelitian yang Relevan
2.9.1 Kompresi citra menggunakan algoritma dynamic Markov 14 Compression
2.9.2 Study perbandingan kinerja algoritma kompresi Lempel ziv77, lempel ziv78, dan lempel ziv welch pada file text
14
Bab 3 Analisis Dan Perancangan Sistem 3.1 Analisis Sistem 3.1.1 Analisis masalah 15 3.1.2 Analisis Persyaratan 3.1.2.1 Persyaratan Fungsional 3.1.2.2 Persyaratan Non-Fungsional 3.2 Pemodelan Sistem 16 16
3.2.1 Use Case Diagram 17
3.2.3 Sequence Diagram 21 3.2.4 Flowchart
3.2.4.1 Flowchart Kompresi 22 3.2.4.2 Flowchart Dekompresi 23
3.3 Perancangan Antar Muka 24
3.3.1 Form Interface Cover 24
3.3.2 Interface Form Menu Utama 25
Bab 4 Implementasi Dan Pengujian
4.1 Implementasi Sistem 28
4.2 Pengujian Sistem 35
4.2.1 Tampilan Halaman Cover 36 4.1.2 Algoritma Arithmetic Coding 40 4.1.3 Algoritma Huffman 50
4.2.2 Tampilan Menu Utama 37
4.2.3 Tampilan Halaman Menu About 4.2.4 Tampilan Halaman Menu Help
38 35
4.3 Tahap Pengujian 39
4.3.1 Pengujian Kompresi dan Dekompresi File Text 4.1.2 Algoritma Arithmetic Coding 40 4.1.3 Algoritma Huffman 50 4.3.1.1 Pengujian Kompresi dan Dekompresi File Text .docx
a. Proses Kompresi File .docx b. Proses Dekompresi File .docx
39 41 43 4.3.1.2 Pengujian Kompresi dan Dekompresi File Text .odt
a. Proses Kompresi File .odt b. Proses Dekompresi File .odt
46 48 50 4.4 Analisa DMC
4.5 Perhitungan Kompleks Algoritma DMC 4.5.1 Perhitungan Running Time Kompresi 4.5.2 Perhitungan Running Time Dekompresi
51 53 58 Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 62
5.2 Saran 63
Daftar Pustaka 64
Lampiran Listing Program A-1
Lampiran Curriculum Vitae B-1
DAFTAR TABEL
Hal. Tabel 3.1 Spesifikasi Use Case untuk Kompresi DMC
Tabel 3.2 Spesifikasi Use Case untuk Dekompresi DMC
18 18 Tabel 3.3 Rincian Rancangan Form Interface Cover 25 Tabel 3.4 Rincian Rancangan Form Interface Menu Utama 26 Tabel 4.1 Analisa Untuk File .docx Yang Terkompresi 51 Tabel 4.2 Analisa Untuk File .docx Yang Dekompresi 52 Tabel 4.3 Analisa Untuk File .odt Yang Terkompresi 52 Tabel 4.4 Analisa Untuk File .odt Yang Dekompresi
Tabel 4.5 Tabel Perhitngan Running Time Kompresi Tabel 4.6 Tabel Perhitngan Running Time Dekompresi
52 53 58
DAFTAR GAMBAR
Hal.
Gambar 2.1 Alur Kompresi-Dekompresi Data 9
Gambar 2.2 Model Awal DMC 11
Gambar 2.3 Sebuah Model yang Diciptakan Oleh Metode DMC Gambar 2.4 State yang Di-Cloning
12 13 Gambar 3.1 Diagram Ishikawa untuk Analisa Masalah 16 Gambar 3.2 Use Case Diagram Sistem Kompresi dan Dekompresi DMC 17
Gambar 3.3 Activity Diagram untuk Kompresi DMC 19
Gambar 3.4 Activity Diagram untuk Dekompresi DMC 20
Gambar 3.5 Sequence Diagram Kompresi DMC 21
Gambar 3.6 Sequence Diagram Dekompresi DMC 21
Gambar 3.7 Flowchart Kompresi 22
Gambar 3.8 Flowchart Dekompresi 23
Gambar 3.9 Interface Cover 24
Gambar 3.10 Interface Form Menu Utama 25
Gambar 4.1 Halaman Cover 36
Gambar 4.2 Menu Utama 37
Gambar 4.3 Halaman Menu About 38
Gambar 4.4 Halaman Menu Help 39
Gambar 4.5 Pop Up Window Hasil Open File .docx 40
Gambar 4.6 Hasil Buka File .docx 40
Gambar 4.7 Proses Kompresi File .docx 41
Gambar 4.8 Pop Up Window Simpan Kompresi File .docx 42
Gambar 4.9 Hasil Kompresi File .docx 42
Gambar 4.10 Open File Dekompresi 43
Gambar 4.11 Hasil Buka File Dekompresi 44
Gambar 4.12 Proses Dekompresi File .dmc 44
Gambar 4.13 Pop Up Window Simpan Dekompresi File .docx 45
Gambar 4.14 Hasil Dekompresi File .docx 46
Gambar 4.15 Pop Up Window Hasil Open File .odt 47
Gambar 4.16 Hasil Open File .odt 47
Gambar 4.17 Proses Kompresi dengan File .odt 48
Gambar 4.18 Pop up window Simpan Kompresi File .odt 49
Gambar 4.19 Hasil Kompresi File .odt 49
Gambar 4.20 Pop up window Simpan Dekompresi File .odt 50
Gambar 4.21 Hasil Dekompresi File .odt 51