Apa itu Algoritma Kompresi?

File komputer dapat memakan banyak ruang pada hard drive serta banyak bandwidth untuk dikirim. Untuk menghemat ruang, terutama dengan file yang tidak sering diakses, dan bandwidth untuk file yang sedang ditransmisikan, metode penyimpanan telah dikembangkan untuk menyimpan data dalam paket yang lebih kecil dengan mengompresinya dengan cara tertentu. Dalam setiap kasus, algoritma kompresi — metode untuk mengurangi ukuran data — digunakan. Ada beberapa kategori dan jenis algoritma kompresi yang populer, yang masing-masing bekerja dengan cara yang berbeda, dan beberapa di antaranya memiliki hasil yang berbeda dalam hal penting. Dengan menggunakan berbagai algoritme kompresi, biasanya dimungkinkan untuk mengurangi file teks menjadi kurang dari setengah ukuran aslinya; untuk file grafik, hasilnya sangat bervariasi. File yang dihasilkan dari kompresi dapat berupa format yang berbeda atau file arsip, yang sering digunakan untuk penyimpanan, transmisi, dan distribusi.

Salah satu cara untuk mengkategorikan algoritma kompresi adalah dengan apakah mereka menggunakan kamus atau metode statistik untuk mengompresi data. Metode kamus berfokus pada frasa yang dapat diulang dan digunakan dalam gambar GIF dan dalam arsip JAR dan ZIP. Metode statistik mengandalkan frekuensi penggunaan untuk melakukan konversi, yang dilakukan dalam dua lintasan. Contohnya adalah Modified Huffman (mh), digunakan di beberapa mesin faks.

Cara kedua untuk mengkategorikan algoritma kompresi, dan salah satu yang paling sering ditemui oleh programmer non-profesional adalah apakah mereka lossless atau lossy. Sebuah algoritma kompresi data lossless adalah salah satu kompres data sedemikian rupa sehingga ketika didekompresi, itu persis identik dengan file aslinya. Salah satu contoh algoritma kompresi data lossless adalah lzw (algoritma Lempel-Ziv-Welch). Dikembangkan pada tahun 1977 oleh Lempel dan Ziv dan ditingkatkan pada tahun 1984 oleh Welch, ini digunakan dalam file seperti GIF, TIF, dan PDF, serta modem tertentu.

Algoritma kompresi data lossy memiliki kapasitas untuk mengurangi data ke ukuran yang lebih kecil daripada kompresi lossless, tetapi dengan mengorbankan beberapa data asli. Dengan kata lain, pemulihan berikut kompresi data lossy tidak memberikan salinan identik dari file asli. Algoritma kompresi, bagaimanapun, dirancang untuk membatasi kerugian sehingga tidak terlihat oleh telinga atau mata. Kompresi lossy digunakan dalam format file seperti AAC, JPEG, MPEG, dan MP3.