Perbandingan Algoritma Ternary Comma Code Dengan Levenstein Untuk Kompresi File Text

PERBANDINGAN ALGORITMA TERNARY
COMMA CODE (TCC) DAN LEVENSTEIN
CODE DALAM KOMPRESI FILE TEXT

SKRIPSI

ZULAIHA YULANDARI
121401140

PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

2

PERBANDINGAN ALGORITMA TERNARY
COMMA CODE (TCC) DAN LEVENSTEIN

CODE DALAM KOMPRESI FILE TEXT

SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana
Komputer

ZULAIHA YULANDARI
121401140

PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2016

Universitas Sumatera Utara

3

PERSETUJUAN


Judul

: PERBANDINGAN ALGORITMA TERNARY COMMA
CODE DENGAN LEVENSTEIN UNTUK

KOMPRESI

FILE TEXT
Kategori

:

SKRIPSI

Nama

:

ZULAIHA YULANDARI


Nomor Induk Mahasiswa

:

121401140

Program Studi

:

S1 ILMU KOMPUTER

Fakultas

:

ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA


Diluluskan di
Medan,

2016

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

Universitas Sumatera Utara

4

PERNYATAAN

PERBANDINGAN ALGORITMA TERNARY
COMMA CODE (TCC) DAN LEVENSTEIN
CODE DALAM KOMPRESI FILE TEXT

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan
dan ringkasan yang masing-masing telah disebutkan sumbernya.


Medan, 2016

Zulaiha Yulandari
121401140

Universitas Sumatera Utara

5

PENGHARGAAN

Alhamdulillah. Puji dan syukur kehadirat Allah SWT, yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk
memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara.

Pada pengerjaan skripsi dengan judul Perbandingan Algoritma Ternary Comma Code (TCC)
dan Levenstein Code (LC) dalam kompresi file Text , penulis menyadari bahwa banyak pihak
yang turut membantu, baik dari pihak keluarga, sahabat dan orang-orang terkasih yang

memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih
kepada:

1. Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera
Utara.
2. Bapak Prof. Dr. Opim Salim M.Sc selaku Dekan Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
4. Bapak Prof. Dr. Iryanto, M.Si selaku Dosen Pembimbing I yang telah memberikan
arahan, kritik dan saran serta motivasi kepada penulis dalam pengerjaan skripsi ini.
5. Bapak Ade Candra, ST, M.Kom selaku Dosen Pembimbing II yang telah memberikan
arahan, kritik dan saran kepada penulis dalam pengerjaan skripsi ini.
6. Bapak Prof. Dr. Muhammad Zarlis, M.Sc selaku Dosen Pembanding I yang telah
banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.
7. Bapak Dr. Syahril Efendi, S.Si., M. IT selaku Dosen Pembanding II yang telah
banyak memberikan arahan dan masukan yang sangat berharga kepada penulis.
8. Ayahanda Suripno, Ibunda Latipah, Adinda Dwi Atika Putri, yang mana telah banyak
memberikan kasih sayang, semangat, serta dorongan kepada penulis.
9. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan Teknologi

Informasi USU.

Universitas Sumatera Utara

6

10. Teman-teman seperjuangan menggapai gelar sarjana yang selama ini telah menjadi
keluarga kedua penulis selama mengikuti perkuliahan, tempat berbagi suka dan duka
dalam pengerjaan skripsi ini, kepada Yohanes Simare mare, Dhika Handayani
Rangkuti, Ratu Mutiara Siregar, Natasha Maharani Siregar, Novita Chairunnisa,
Kevin Irfanda, dan Aulia Khaizairani.
11. Stambuk 2012 yang tidak dapat disebut satu-persatu, yang telah banyak membantu
dalam selesainya pengerjaan skripsi ini.
12. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis
ucapkan satu demi satu yang telah membantu penyelesaian laporan ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah memberikan
bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan skripsi ini.

Medan,


September 2016

Penulis,

Zulaiha Yulandari

Universitas Sumatera Utara

7

ABSTRAK

Metode-metode kompresi data sangat dibutuhkan untuk mengkompresi data yang
memiliki kapasitas ukuran besar ke dalam ukuran yang kecil untuk menghemat
penggunaan memori . Kompresi data adalah sebuah cara untuk memadatkan data
sehingga hanya memerlukan ruangan penyimpanan lebih kecil sehingga lebih efisien
dalam penyimpanan atau mempersingkat waktu pengiriman data. Algoritma Ternary
Comma Code dan Levenstein Code merupakan jenis kompresi lossless yang digunakan
dalam penelitian ini, yang mana akan diukur kinerjanya dengan Compression Ratio (CR),
Ratio of Compression (RC), Redundancy (Rd), waktu kompresi (milisekon) dan waktu

dekompresi (milisekon). Kompresi file melakukan proses dengan membaca string dalam
file teks berekstensi *.txt. Hasil dari penelitian menunjukkan bahwa dalam kinerja metode
Ternary Comma Code lebih baik dibandingkan dengan metode Levenstein Code dengan
ratio kompresi rata-rata sebesar 1,96% pada kompresi String Homogen. Dan hasil
penelitian menunjukkan bahwa dalam kinerja metode Ternary Comma Code lebih baik
dibandingkan dengan metode Levenstein Code dengan Compression Ratio rata-rata
sebesar 13.13%. pada kompresi String Heterogen.

Kata Kunci : Kompresi, File Teks, Ternary Comma Code, Levenstein Code

Universitas Sumatera Utara

8

COMPARISON OF TERNARYCOMMA CODE AND
LEVENSTEIN CODE ALGORITHM IN TEXT
FILE COMPRESSION

ABSTRACT


Methods of data compression is needed to compress the data which has a capacity of large
size into smaller size to save on memory usage. Data compression is a way of compressing
data so that only requires less storage space making it more efficient in storage or shorten the
delivery time of data. Algorithm Ternary Comma Code and Levenstein Code are the kinds of
lossless compression that used in this research, it will be measured the performance by
Compression Ratio (CR), Ratio of Compression (RC), Redundancy (RD), Time of
Compression (millisecond) and Time of Decompression (millisecond). The file of
compression does the process by reading the string in a text file of extension *.txt. The result
of research shows that the performance of Ternary Comma Code method is better than
Levenstein Code method that shows the Ratio of compression on the average in the amount
of 1.96% in the compression of string Homogeneous. The result of research shows that the
performance of Ternary Comma Code method is better than Levenstein Code method that
shows the compression ratio on the average in the amount of 13,13% in the compression of
string Heterogeneous.

Keywords: Compression, Text File, Ternary Comms Code, Levenstein Code

Universitas Sumatera Utara

9

DAFTAR ISI

Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Daftar Lampiran

Hal.
ii
iii
iv
vi
vii
viii
x
xi
xii

Bab 1 Pendahuluan
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Penelitian
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metodologi Penelitian
1.7 Sistematika Peneltian

1
2
2
2
2
3
3
3

Bab 2 Tinjauan Pustaka
2.1 Kompresi Data
2.2 Penggolongan Kompresi
2.2.1 Kompresi Lossy (Lossy Compression)
2.2.2 Kompresi Loseless (Lossless Compression)
2.2.3 Pengukuran kinerja kompresi data

5
5
6
6
7
8

2.3 Dekompresi
2.3.1 Algoritma
2.4 Algoritma Ternary Comma Code
2.5 Algoritma Levenstein Code
2.6 File Teks
2.7 Black Box Testing
Bab 3 Analisis Dan Perancangan Sistem
3.1 Analisis Sistem
3.1.1 Analisis masalah
3.1.2 Analisis persyaratan
3.1.3 Pemodelan Sistem
3.1.4 Pseudocode
3.1.5 Flowchart
3.2 Kompleksitas Algoritma
3.2.1 Kompleksitas Algoritma Ternary Comma Code
3.2.2 Kompleksitas Algoritma Levenstein Code
3.3 Perancangan Interface

9
10
10
10
12
14
15
15
15
16
17
22
23
26
26
27
28

Universitas Sumatera Utara

10

Bab 4 Implementasi Dan Pengujian Sistem
4.1. Implementasi Sistem

35
35

Universitas Sumatera Utara

11

DAFTAR TABEL

Hal
.
Tabel 2.1 Kode Levenstein Code

11

Tabel 2.2 ASCII

13

Tabel 3.1 Kompleksitas Algoritma Ternary Comma Code

26

Tabel 3.2 Kompleksitas Algoritma Levenstein Code

27

Tabel 4.1 Penjelasan string yang belum dikompresi

35

Tabel 4.2 String yang belum dikompresi

37

Tabel 4.3 Cara pengkodean algoritma Ternary Comma Code

38

Tabel 4.4 String yang sudah dikompresi dengan Ternary Comma

39

Code
Tabel 4.5 Cara pengkodean algoritma Levenstein Code

41

Tabel 4.6 String yang sudah dikompresi dengan Levenstein Code

42

Tabel 4.7 Hasil Pengujian String Homogen dengan Ternary Comma Code
Tabel 4.8 Hasil Pengujian String Homogen dengan Levenstein Code

51

Tabel 4.9 Hasil Pengujian String Heterogen dengan Ternary Comma Code

51

Tabel 4.10 Hasil Pengujian String Heterogen dengan Levenstein Code

52

52

Universitas Sumatera Utara

12

DAFTAR GAMBAR
Hal.

Gambar 2.1 Diagram Blok Proses Kompresi dan Dekompresi Data

6

Gambar 2.2 Ilustrasi Kompresi Lossy

7

Gambar 2.3 Teknik Kompresi Lossy

7

Gambar 2.4 Ilustrasi Kompresi Lossy

8

Gambar 2.5 Teknik Kompresi Loseless

8

Gambar 3.1 Diagram Ishikawa

16

Gambar 3.2 Use Case Diagram pada sistem

18

Gambar 3.3 Activity Diagram proses Kompresi Ternary Comma Code

19

Gambar 3.4 Activity Diagram proses Kompresi Levenstein Code

20

Gambar 3.5 Sequence Diagram proses Kompresi Ternary Comma Code

21

Gambar 3.6 Sequence Diagram proses Kompresi Levenstein

21

Gambar 3.7 Flowchart Sistem Secara Umum

23

Gambar 3.8 Flowchart algoritma Ternary Comma Code

24

Gambar 3.9 Flowchart algoritma Levenstein Code

25

Gambar 3.10 Form Beranda pada Sistem

29

Gambar 3.11 Form Kompresi pada Sistem

30

Gambar 3.12 Form Dekompresi pada Sistem

31

Gambar 3.13 Form Bantuan pada Sistem

32

Gambar 3.14 Form Tentang pada Sistem

33

Gambar 4.1 Open File Dialog untuk Input File Teks

45

Gambar 4.2 Button Kompresi

46

Gambar 4.3 Informasi Hasil Kompresi Ternary Comma Code

46

Gambar 4.4 Informasi Hasil Kompresi Levenstein Code

47

Gambar 4.5 Button Dekompresi

47

Gambar 4.6 Hasil dari dekompresi Ternary Comma Code

48

Gambar 4.7 Hasil dari dekompresi Levenstein Code

48

Universitas Sumatera Utara