• Tidak ada hasil yang ditemukan

Perbandingan Algoritma Even-Rodeh Code dan Algoritma Variable Length Binary Encoding (VLBE) Pada Kompresi File Teks

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perbandingan Algoritma Even-Rodeh Code dan Algoritma Variable Length Binary Encoding (VLBE) Pada Kompresi File Teks"

Copied!
12
0
0

Teks penuh

(1)

BAB 2

TINJ AUAN PUSTAKA

2.1 Kompr esi Data

Kompresi data didalam konteks ilmu komputer merupakan ilmu atau seni dalam merepresentasikan informasi yang terdapat pada data ke dalam suatu bentuk yang lebih padat (kecil) (Pu, 2006). Perkembangan komputer dan multimedia mengakibatkan kompresi data menjadi hal yang penting dan berguna dalam teknologi pada saat sekarang ini.

Kompresi data adalah suatu proses yang dapat mengubah sebuah aliran data masukan (data asli) ke dalam aliran data yang lain (data yang dimampatkan) yang memiliki ukuran yang lebih kecil (Salomon & Motta, 2010). Ada sejumlah algoritma kompresi data, yang didedikasikan untuk kompresi format data yang berbeda. Bahkan untuk tipe data tunggal ada sejumlah algoritma kompresi yang berbeda, yang menggunakan pendekatan yang berbeda. Dengan kata lain, menggunakan kompresi data, ukuran file tertentu dapat dikurangi. Hal ini sangat berguna ketika memproses, menyimpan atau mentransfer file besar, yang membutuhkan banyak sumber daya (Kodituwakku, 2005).

Kompresi terdiri dari dua komponen, algoritma encoding yang mengambil pesan dan menghasilkan sebuah representasi "kompresi" (dengan sedikit bit), dan algoritma decoding yang merekonstruksi pesan asli atau perkiraan dari representasi kompresi (Gozali & Mervyn, 2004).

Dengan merujuk pada beberapa definisi diatas, dapat ditarik kesimpulan bahwa kompresi adalah sebuah usaha untuk memperkecil ukuran data pada suatu file, dimana informasi yang terdapat di dalam file tersebut tidak berubah.

(2)

data sebelum mereka menyimpan dan mengirimkan data tersebut ke sebuah media penyimpanan. Hal itu dilakukan untuk mempermudah dalam mengatur file dan memperkecil penggunaan media penyimpanan. Selain itu juga membantu dalam mempercepat proses pengiriman file dari satu media ke media lain dimana pada saat sekarang ini telah dikembangkan cloud computing yaitu sebuah media penyimpanan yang terdapat pada media online yang dapat diakses dimana saja dengan memerlukan koneksi internet. Dengan adanya kompresi data maka data yang telah dikompresi akan memperkecil kuota atau bandwith dalam pengiriman data melalui internet (Andika, 2014).

Proses kompresi dan dekompresi data dapat ditunjukkan melalui diagram blok seperti pada Gambar 2.1.

Ga mbar 2.1 Diagr am Blok Pr oses Kompr esi dan Dekompr esi Data (Pu, 2006)

2.2 Teknik Kompr esi

Berdasarkan kemungkinan data yang telah dikompresi dapat dikembalikan ke data sebelum dikompresi atau data aslinya, teknik kompresi data dikelompokkan menjadi dua bagian yaitu kompresi data Lossless dan kompresi data Lossy (Pu, 2006).

2.2.1 Kompresi Lossless (Lossless Compression)

Algoritma kompresi dikatakan lossless adalah teknik kompresi data dimana data yang telah dikompresi dapat dikembalikan ke data yang aslinya tanpa mengurangi informasi yang ada pada data tersebut (Pu, 2006). Losseless compression disebut juga dengan reversible compression karena data asli bisa dikembalikan dengan sempurna. Akan tetapi rasio kompresinya sangat rendah, misalnya pada gambar seperti GIF dan PNG (Sarifah, 2010). Contoh data yang cocok adalah gambar medis, teks, program,

Uncompressed data Compressed data

Compressed data Uncompressed data

Kompresi

(3)

spreadsheet dan lain-lain. Teknik ini digunakan jika data tersebut sangat penting, jadi tidak dimungkinkan untuk menghilangkan beberapa detail. Contoh algoritma losseless pada kompresi data adalah Arithmetic Coding, Huffman Coding, Variable Length Binary Encoding, Even-Rodeh Code dan lain-lain. Teknik kompresi lossless dapat digambarkan seperti gambar 2.2.

Gambar 2.2 Teknik Kompr esi Lossless (Pu, 2006)

2.2.2 Kompresi Lossy (Lossy Compression)

Algoritma kompresi dikatakan lossy adalah teknik kompresi data dimana data mengalami sedikit atau banyak kehilangan data pada saat kompresi (Pu, 2006). . Lossy compression disebut juga dengan irreversible compression karena data asli tidak bisa dikembalikan dengan sempurna. Oleh karena itu sangat kecil kemungkinan dan bahkan tidak akan pernah bisa data yang dikompresi dengan teknik Lossy dapat dikembalikan seperti data sebelum dikompresi atau data aslinya. Contoh data yang cosok adalah gambar, suara dan video. Karena cara kerja sistem penglihatan dan pendengaran manusia yang terbatas, beberapa detail dapat dihilangkan, sehingga didapat data hasil kompresi yang seolah-olah sama dengan data asli. Contoh algoritma lossy pada kompresi data adalah Wavelet Compression, Fractal Compression, Wyner-Coding (WZC) dan lain-lain. Teknik kompresi lossy dapat digambarkan seperti gambar 2.3.

(4)

2.2.3 Padding dan Flag Bits

a. Padding

Padding adalah penambahan bit 0 sebanyak kekurangan jumlah bit-bit data pada hasil proses kompresi sehingga jumlah keseluruhan bit-bit data pada hasil kompresi merupakan kelipatan delapan (habis dibagi delapan). Contoh misalkan dihasilkan bit-bit data hasil kompresi 1100101101010001100001101. Terdapat 25 bit-bit data dalam bilangan biner. Maka dilakukan penambahan bit 0 sebanyak 7 kali agar jumlah bit data tersebut habis dibagi delapan. Sehingga bit-bit data tersebut menjadi 11001011010100011000011010000000 setelah diberikan padding (Andika, 2014).

b. Flag Bits

Flag bits adalah penambahan bilangan biner sepanjang delapan bit setelah padding dimana flag bits ini adalah sejumlah bilangan yang memberikan sebuah tanda bahwa terdapat n buah padding di dalam bit-bit data hasil dari kompresi. Penambahan flag bits ini dimaksudkan untuk mempermudah dalam membaca bit-bit data hasil kompresi pada saat proses dekompresi. Contoh misalkan bit-bit data yang telah diberikan padding adalah 11001011010100011000011010000000. Karena terdapat 7 bit penambahan padding maka flag bits-nya adalah bilangan biner dari 7 dengan panjang 8 bit yaitu 00000111. Sehingga bit-bit datanya menjadi 1100101101010001100001101000000000000111 setelah diberikan flag bits. (Andika, 2014).

2.2.4 Pengukuran kinerja kompresi data

Pada suatu teknik yang digunakan dalam proses kompresi data terdapat beberapa faktor atau variabel yang biasa digunakan untuk mengukur kualitas dari suatu teknik kompresi data tersebut, yaitu :

1. Ratio of Compression (Rc)

Ratio of Compression (Rc) adalah perbandingan antara ukuran data sebelum dikompresi dengan ukuran data setelah dikompresi (Salomon & Motta, 2010).

……….….(1)

(5)

Misalkan didapat sebuah nilai Ratio of Compression sebesar 2.75. Itu berarti besar data sebelum kompresi adalah 2.75 kali lipat dari besar data setelah dikompresi.

2. Compression Ratio (Cr)

Compression Ratio (Cr) adalah persentasi besar data yang telah dikompresi yang didapat dari hasil perbandingan antara ukuran data setelah dikompresi dengan ukuran data sebelum dikompresi (Salomon & Motta, 2010).

………...………..(2)

Misalkan didapat sebuah nilai Compression Ratio sebesar 35%. Itu berarti setelah dikompresi ukuran data adalah 35% dari data sebelum dikompresi.

3. Redundancy (Rd)

Redundancy (Rd) adalah kelebihan yang terdapat di dalam data sebelum dikompresi. Jadi setelah data dikompresi dapat dihitung Redundancy data yaitu persentasi dari hasil selisih antara ukuran data sebelum dikompresi dengan data setelah dikompresi (Salomon & Motta, 2010).

…..………(3)

Misalkan didapat sebuah nilai Redundancy sebesar 14%. Itu berarti besarnya kelebihan data sebelum dikompresi adalah 14%.

4. Waktu Kompresi dan Dekompresi

(6)

2.3 Algor itma

2.3.1 Pengertian Algoritma

Algoritma diambil dari kata Al-Khawarizmi. Al-Khwarizmi adalah bagian dari nama seorang ahli Matematika dan Astronomi yaitu Abu Ja’far Muhammad Ibnu Musa Al- Khawarizmi. Ia dianggap sebagai pencetus pertama algoritma karena di dalam bukunya yang berjudul “Aljabar wal muqabala” Abu Ja’far menjelaskan langkah dalam penyelesaian berbagai program Aritmatika (Aljabar). Seiring berjalannya waktu, Al-Khwarizmi berubah kata menjadi algorism, selanjutnya menjadi algorithm (Suarga, 2006).

Algoritma adalah teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan sistematis. Langkah-langkah pemecahan masalah bisa dilakukan dengan berbagai cara berbeda-beda (Wahyudi, 2004). Di dalam algoritma berbasis karakter, kode hanya dapat mewakili satu kata yang berisi beberapa karakter (Cheng, et al. 1999).

2.3.2 Ciri-ciri Algoritma

Ada beberapa ciri algoritma, yaitu:

1. Algoritma memiliki awal dan akhir, suatu algoritma harus berhenti setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma memiliki langkah yang terbatas.

2. Setiap langkah harus didefenisikan dengan tepat sehingga tidak memiliki arti ganda, tidak membingungkan (non ambiguous).

3. Memiliki masukan (input) atau kondisi awal. 4. Memiliki keluaran (output) atau kondisi akhir.

5. Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan persoalan (Suarga, 2006).

2.4 Algor itma Even-Rodeh Code

(7)

dengan menggunakan beberapa rangkaian bit. Pembentukan bit yang mewakili masing-masing karakter dibuat berdasarkan frekuensi kemunculan tiap karakter. Cara untuk membangun kode Even-Rodeh Code adalah sebagai berikut:

1. Hitung panjang bit.

2. Jika panjang bit 0 <= n <= 3 maka nilai n diubah ke biner, tambahkan 0 didepan nilai biner sehingga bit menjadi 3 digit.

3. Jika panjang bit 4 <= n <= 7 maka nilai n diubah ke biner, tambahkan 0 dibelakang nilai biner sehingga bit menjadi 4 digit.

4. Jika panjang bit n >= 8 maka nilai n diubah ke biner, tambahkan 0 dibelakang nilai biner kemudian angka ditambahkan didepan nilai biner sebanyak jumlah digit nilai biner.

Algoritma Even-Rodeh Code adalah kode yang hampir mirip dengan algoritma Elias Omega Code, tetapi dengan beberapa perbedaan berikut ini:

1. Setiap kelompok diberikan jumlah bilangan dari bit dikelompok berikutnya, tidak untuk jumlah bit 1.

2. Berbeda dengan tata cara awal yang digunakan, dengan pertimbangan khusus untuk 3 kode pertama. Elias Code khusus untuk nilai pertama (Fenwick, 1996). Kode Even-Rodeh dapat dilihat pada tabel 2.2 (Salomon, 2007).

Tabel 2.2 Tabel Kode Omega dan Even-Rodeh Codes

N Omega Even-Rodeh

(8)

Algoritma Variable Length Binary Encoding (VLBE) merupakan algoritma kompresi yang dikembangkan oleh David A Huffman pada tahun 1952 (Salomon, 2007). Algoritma Variable Length Binary Encoding (VLBE) dalam teori pengkodean adalah kode yang memetakan simbol sumber untuk sejumlah variabel bit. Kode variabel-panjang dapat memungkinkan sumber yang akan dikompresi dengan nol kesalahan (kompresi data lossless) dan masih dapat dibaca kembali oleh simbol-simbol. (Salomon, 2007).

Algoritma Variable Length Binary Encoding (VLBE) adalah algoritma kompresi data yang mengkodekan tiap karakter dengan mengurutkan karakter berdasarkan frekuensi dan disortir secara stabil sehingga membentuk beberapa rangkaian bit.

Cara untuk membangun kode Variable Length Binary Encoding (VLBE) adalah sebagai berikut:

1. Nilai awal biner dimulai dari 0 sebagai root untuk pembentukan biner selanjutnya. 2. Nilai awal biner sebelumnya ditambahkan dengan angka 1, setiap angka 1

diletakkan didepan nilai awal biner.

3. Jika biner n terakhir maka nilai awal biner diubah menjadi angka 1.

Kode Variable Length Binary Encoding (VLBE) dapat dilihat pada tabel 2.4 (Salomon, 2007).

Tabel 2.4 Tabel Kode Variable Length Binary Encoding (VLBE) N Variable Length Binary Encoding

(9)

dari dokumen pengolah kata, angka yang digunakan dalam perhitungan, nama dan alamat dalam basis data merupakan contoh masukan data teks yang terdiri dari karakter, angka dan tanda baca (Pramilo, 2008).

Masukan dan keluaran data teks direpresentasikan sebagai set karakter atau sistem kode yang dikenal oleh sistem komputer. Ada tiga macam set karakter yang umum digunakan untuk masukan dan keluaran pada komputer, yaitu ASCII, Unicode, dan EBCDIC. ASCII (American Standard Code for Information Interchange) merupakan suatu standar internasional dalam kode huruf dan simbol seperti Hex, dan Unicode tetapi ASCII bersifat lebih universal. ASCII digunakan oleh komputer dan alat komunikasi lain untuk menunjukkan teks. Kode ASCII memiliki komposisi bilangan biner sebanyak 8 bit, dimulai dari 00000000 dan 11111111. Total kombinasi yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem bilangan desimal. Unicode adalah suatu standar industri yang dirancang untuk mengizinkan teks dan simbol dari semua sistem tulisan di dunia untuk ditampilkan dan dimanipulasi secara konsisten oleh komputer. EBCDIC (Extended Binary Code Decimal Interchange Code) merupakan set karakter yang diciptakan oleh komputer merk IBM. EBCDIC terdiri dari 256 karakter yang masing-masing berukuran 8 bit (Erdiansyah, 2014). Tabel ASCII dapat dilihat pada Tabel 2.5.

Tabel 2.5 Tabel ASCII

Dec Char Dec Char Dec Char Dec Char Dec Char Dec Char

0 NUL 47 / 94 ^ 141 RI 188 ¼ 235 ë

1 SOH 48 0 95 _ 142 SS2 189 ½ 236 ì

2 STX 49 1 96 ` 143 SS3 190 ¾ 237 í

3 ETX 50 2 97 a 144 DCS 191 ¿ 238 î

4 EOT 51 3 98 b 145 PU1 192 À 239 ï

5 ENQ 52 4 99 c 146 PU2 193 Á 240 ð

6 ACK 53 5 100 d 147 STS 194 Â 241 ñ

7 BEL 54 6 101 e 148 CCH 195 Ã 242 ò

8 BS 55 7 102 f 149 MW 196 Ä 243 ó

(10)

10 LF 57 9 104 h 151 EPA 198 Æ 245 õ

11 VT 58 : 105 i 152 SOS 199 Ç 246 ö

12 FF 59 ; 106 j 153 SGCI 200 È 247 ÷

13 CR 60 < 107 k 154 SCI 201 É 248 ø

14 SO 61 = 108 l 155 CSI 202 Ê 249 ù

15 SI 62 > 109 m 156 ST 203 Ë 250 ú

16 DLE 63 ? 110 n 157 OSC 204 Ì 251 û

17 DC1 64 @ 111 o 158 PM 205 Í 252 ü

18 DC2 65 A 112 p 159 APC 206 Î 253 ý

19 DC3 66 B 113 q 160 Space 207 Ï 254 þ

20 DC4 67 C 114 r 161 ¡ 208 Ð 255 ÿ

21 NAK 68 D 115 s 162 ¢ 209 Ñ

22 SYN 69 E 116 t 163 £ 210 Ò

23 EBT 70 F 117 u 164 ¤ 211 Ó

24 CAN 71 G 118 v 165 ¥ 212 Ô

25 EM 72 H 119 w 166 ¦ 213 Õ

26 SUB 73 I 120 x 167 § 214 Ö

27 ESC 74 J 121 y 168 ¨ 215 ×

28 FS 75 K 122 z 169 © 216 Ø

29 GS 76 L 123 { 170 ª 217 Ù

30 RS 77 M 124 | 171 « 218 Ú

31 US 78 N 125 } 172 ¬ 219 Û

32 SPACE 79 O 126 ~ 173 - 220 Ü

33 ! 80 P 127 174 ® 221 Ý

34 " 81 Q 128 PAD 175 ¯ 222 Þ

35 # 82 R 129 HOP 176 ° 223 ß

36 $ 83 S 130 BPH 177 ± 224 à

(11)

38 & 85 U 132 IND 179 ³ 226 â

Kebutuhan untuk dapat mengukur masalah kompleksitas, algoritma atau struktur dan dan memperoleh batas serta hubungan kuantitatif untuk kuantitas muncul di beberapa bidang ilmu disamping Ilmu Komputer, cabang tradisional Matematika, Fisika Statistik, Biologi, dan Kedokteran juga dihadapkan lebih banyak dan lebih sering dengan masalah kompleksitas ini. Dalam Ilmu Komputer, kompleksitas diukur oleh kuantitas sumber daya komputasi (waktu, penyimpanan, program, komunikasi) yang digunakan oleh sebuah tugas tertentu (Gács & Lovász, 1999).

(12)

2.8 Penelitia n yang Relevan

Berikut ini beberapa penelitian yang terkait dengan algoritma Even-Rodeh Code dan Variable Length Binary Encoding (VLBE):

1. Debora Villiana (2014) dalam skripsi yang berjudul Perbandingan Kinerja Algoritma Fixed Length Binary Encoding (FLBE) Dengan Variable Length Binary

Encoding (VLBE) Dalam Kompresi Text File. Dalam skripsi, dapat disimpulkan bahwa, secara rata-rata algoritma Fixed Length Binary Encoding (FLBE) menghasilkan rasio file hasil pemampatan yang sama daripada algoritma Variable Length Binary Encoding (VLBE). Dan juga, secara rata-rata algoritma Fixed Length Binary Encoding (FLBE) membutuhkan waktu pemampatan yang tersingkat daripada algoritma Variable Length Binary Encoding (VLBE).

Gambar

Gambar 2.1 Diagram Blok Proses Kompresi dan Dekompresi Data (Pu, 2006)
Gambar 2.2 Teknik Kompresi Lossless (Pu, 2006)
Tabel 2.2 Tabel Kode Omega dan Even-Rodeh Codes
Tabel 2.4 Tabel Kode Variable Length Binary Encoding (VLBE)
+2

Referensi

Dokumen terkait

[r]

Teknologi Mekanik, Mekanika Teknik dan Elemen Mesin 144 C3.. Teknik Mekanik Mesin

menggunakan MS Word untuk bekerja (mengetik).Jendela utama terdiri dari jendela dokumen. (tempat untuk memasukkan teks dan penyuntingan) dan jendela perintah

PENDIDIKAN ANAK USIA DINI DAN PENDIDIKAN MASYARAKAT DIREKTORAT PEMBINAAN PENDIDIKAN ANAK USIA DINI.

Dari diagram aktivitas belajar siklus I dan siklus II dapat dijelaskan mengenai peningkatan aktivitas belajar peserta didik, perolehan data pada siklus I indikator pertama

Adapun perlindungan hukum bagi konsumen adalah : Pembentukan undang-undang periklanan, penetapan pasal tentang badan sensor iklan media cetak, penetapan pasal yang mewajibkan

Level Kognitif Lingkup Materi Teknik Bengkel &amp; K3LH Manajemen Proyek Sistem Telekomunikasi Teknik Dasar Listrik ( TDL ).

Kondisi lingkungan yang panas dapat menyebabkan cekaman pada tubuh sapi potong yang salah satunya akan berdampak pada peningkatan suhu rektal, frekuensi pernapasan, denyut