Kamis, 25 Oktober 2012

CTARRRRRR

teringat kata-kata pamungkas yang ditangkis oleh ayahanda


#pamungkas1
anak : "pa,kemaren ad yang nawarin maen ke rumahnya"
ayah : "orang mana?"
anak : "suatu tempat di Indonesia"
ayah : "yah,,asal siap aj.boleh" aja. setidaknya ud kerja,jadi aslab misalnya.."
anak : "........(kog mudah amat yaaa,LANGSUNG JIPER!)"


beberapa bulan berikutnya
#pamungkas 2
anak : "pa,kira" kalo daftar sekarang kapan berangkatnya?
ayah : "yah,,,tergantung...klo daftar aja tanpa pelunasan yaaa,,bisa kapan-kapan"

anak : "......."
anak : "minimum dapat kursi berapa yg mesti di setor?"
ayah : "25 juta,duit semua yaaaa"
anak : "ooooo,mikir(klo ditumpuk kira" berapa senti tingginya yaaa)"
sambil ngeliat tayangan wukuf..

anak : "pa,kayaknya keren banget yaa paa,,klo nikah maharnya haji.."#mulai memancing
ayah : "yaaaa....nda bisa"
anak : :HAH????lho mngnya kenapa?"~~~(bersungut tidak jelas,secara berhaji dengan lelaki ke3 di dalam hidup ada di list harapan :D)

ayah : "yaaaa,,haji kan wajib.klo memang hadiah silahkan,,mahar tetep mesti ada barangnya nak"
anak : "nahhhhh,,maksud saya juga begitu paaa,,hadiah nya haji gituuuu..."
ayah : "ONH +?

anak : "yaaa,,pengennya reguler aja,jadi lebih merasakan nikmatnya ibadah haji dan kelebihannya uangnya bisa untuk kebtuhan dan berbagi :D"
ayah : "yaaa,berarti daftar dari sekarang,25 juta"
anak : "lha,uangnya dari mana??"
ayah : "yaa,,minta dengan Alloh lewat suamimu bisa kali nak"

anak : "lha,,,kan belum nikah pa??"
ayah : "yaaa,nikah dulu berarti."
anak: "........(mikir)"
*bisa dibayangkan ga akhir cerita di atas????
bener" men-CTAARRRRR :|


Sabtu, 28 April 2012

Perbandingan Algoritma Kompresi Huffman , LZW dan DMC


Ika Puji Astuti (2009 31 205)
STT PLN Jakarta 2012

Perbandingan Algoritma Kompresi Huffman , LZW  dan DMC

1.  PENDAHULUAN

Kompresi ialah proses pengubahan sekumpulan data menjadi suatu bentuk kode untuk menghemat kebutuhan tempat penyimpanan dan waktu untuk transmisi data.
Saat ini terdapat berbagai tipe algoritma kompresi ,antara lain: Huffman, LIFO, LZHUF, LZ77 dan variannya  (LZ78, LZW, GZIP),  Dynamic Markov Compression (DMC),  Block-Sorting Lossless,  Run- Length,  ShannonFano, Arithmetic, PPM (Prediction by Partial Matching), Burrows-Wheeler Block Sorting, dan Half Byte.

Berdasarkan tipe peta kode yang digunakan untuk mengubah pesan awal (isi file input) menjadi sekumpulan codeword, metode kompresi terbagi menjadi dua kelompok, yaitu :
(a) Metode statik :
Menggunakan peta kode yang selalu sama. Metode ini membutuhkan dua fase (two-pass): Fase pertama  untuk  menghitung probabilitas kemunculan tiap simbol/karakter dan menentukan peta kodenya, dan fase kedua untuk mengubah pesan menjadi kumpulan kode yang akan ditransmisikan.
Contoh: algoritma Huffman statik.
(b) Metode dinamik (adaptif) :
Menggunakan peta kode yang dapat berubah dari waktu ke waktu. Metode ini disebut adaptif karena peta kode mampu beradaptasi terhadap perubahan karakteristik isi file selama proses kompresi berlangsung. Metode ini bersifat  onepass, karena hanya diperlukan satu kali pembacaan terhadap isi file. Contoh: algoritma LZW dan DMC

2.  METODE

2.1  Algoritma – algoritma dalam Kompresi Data
Dalam pengkompresian data, ada bermacam – macam algoritma yang dapat digunakan. Kali ini, akan dijelaskan tentang algoritma  Huffman, LZW, dan  DMC.

2.1.1  Algoritma Huffman
Algoritma Huffman ditemukan oleh David Huffman pada tahun 1952. Algoritma ini menggunakan pengkodean yang mirip dengan kode Morse. Berdasarkan tipe kodeyang digunakan algoritma Huffman termasuk metode statistic. Sedangkan berdasarkan teknik pengkodeannya menggunakan metode symbolwise. Algoritma Huffman merupakan salah satu algoritma yang digunakan untuk mengompres teks. Algoritma Huffman secara lengkap :

1. Pilih dua simbol dengan peluang (probability) paling kecil (pada contoh di atas simbol  B dan  D). Kedua simbol tadi dikombinasikan sebagai simpul orangtua dari simbol  B dan  D sehingga menjadi simbol  BDdengan peluang 1/7 + 1/7 = 2/7, yaitu jumlah peluang kedua anaknya.
2. Selanjutnya, pilih dua simbol berikutnya, termasuk simbol baru, yang mempunyai peluang terkecil.
3. Ulangi langkah 1 dan 2 sampai seluruh simbol habis.Sebagai contoh, dalam kode ASCII  string  7 huruf
“ABACCDA” membutuhkan representasi 7 × 8 bit = 56 bit (7 byte), dengan rincian sebagai berikut:
01000001 01000010 01000001 01000011 01000011
            A                B             A                 C               C
01000100 01000001
       D               A
Untuk mengurangi jumlah bit yang dibutuhkan, panjang kode untuk tiap karakter dapat dipersingkat, terutama untuk karakter yang frekuensi kemunculannya besar. Pada string di atas, frekuensi kemunculan A = 3, B = 1, C = 2, dan D = 1, sehingga dengan menggunakan algoritma di atas diperoleh kode Huffman seperti pada Tabel 1.
Gambar 1. Pohon Huffman untuk “ABACCDA”















Dengan menggunakan kode Huffman ini, string “ABACCDA” direpresentasikan menjadi rangkaian bit : 0 110 0 10 10 111 0. Jadi, jumlah bit yang dibutuhkan hanya 13 bit dari yang seharusnya dibutuhkan 56 bit. Untuk menguraikan kembali data yang sudah dikodekan sebelumnya dengan algoritma  Huffman, dapat digunakan cara sebagai berikut :
1. Baca bit pertama dari string biner masukan
2. Lakukan traversal pada pohon Huffman mulai dari akar sesuai dengan bit yang dibaca. Jika bit yang dibaca adalah 0 maka baca anak kiri, tetapi jika bit yang dibaca adalah 1 maka baca anak kanan.
3. Jika anak dari pohon bukan daun (simpul tanpa anak) maka baca bit berikutnya dari string biner asukan.
4. Hal ini diulang (traversal) hingga ditemukan daun.
5. Pada daun tersebut simbol ditemukan dan proses penguraian kode selesai.
6. Proses penguraian kode ini dilakukan hingga keseluruhan string biner masukan diproses.

2.1.2  Algoritma LZW (Lempel-Ziv-Welch)

Algoritma LZW dikembangkan oleh Terry A.Welch dari metode kompresi sebelumnya yang ditemukan oleh Abraham Lempel dan Jacob Ziv pada tahun 1977. Algortima ini menggunakan teknik dictionary dalam kompresinya. Dimana string karakter digantikan oleh kode table yang dibuat setiap ada string yang masuk. Tabel dibuat untuk referensi masukan string selanjutnya. Ukuran tabel dictionary pada algoritma LZW asli adalah 4096 sampel atau 12 bit, dimana 256 sampel pertama digunakan untuk table karakter single (Extended ASCII), dan sisanya digunakan untuk pasangan karakter atau string dalam data
input. 

Algoritma  LZW  melakukan  kompresi  dengan mengunakan kode table 256 hingga 4095 untuk mengkodekan pasangan byte atau string. Dengan metode ini banyak string yang dapat dikodekan dengan mengacu pada string yang telah muncul sebelumnya dalam teks. Algoritma kompresi LZW secara lengkap :
1. KAMUS diinisialisasi dengan semua karakter dasar yang ada : {‘A’..’Z’,’a’..’z’,’0’..’9’}.
2. W  karakter pertama dalam stream karakter.
3. K  karakter berikutnya dalam stream karakter.
4. Lakukan pengecekan apakah (W+K) terdapat dalam KAMUS
 Jika ya, maka W  W + K (gabungkan W dan K menjadi string baru).
 Jika tidak, maka :
Output  sebuah kode untuk menggantikan  string W.
Tambahkan string (W+ K) ke dalam dictionary dan berikan nomor/kode berikutnya yang belum digunakan dalam dictionary untuk string tersebut.
W  K.
Lakukan pengecekan apakah masih ada karakter berikutnya dalam stream karakter
 Jika ya, maka kembali ke langkah 2.
 Jika tidak, maka output kode yang
menggantikan string W, lalu terminasi proses (stop).
Gambar 2. Flowchart Algoritma LZW (Gambar diatas)

Sebagai  contoh,  string  “ABBABABAC”  akan dikompresi dengan LZW. Isi dictionary pada diset dengan tiga karakter dasar yang ada: “A”, “B”, dan “C”. Tahapan proses kompresi ditunjukkan pada Tabel 2
Kolom posisi  menyatakan posisi sekarang dari stream karakter dan kolom  karakter  menyatakan karakter yang terdapat pada posisi tersebut. Kolom dictionary menyatakan string baru yang sudah ditambahkan ke dalam dictionary dan nomor indeks untuk string tersebut ditulis pakah masih ada karakter dalam kurung siku. Kolom  output output yang dihasilkan oleh langkah proses kompresi ditunjukkan pada Gambar 2

Gambar 3. Hasil Proses Kompresi

Proses dekompresi data pada algoritma LZW tidak jauh berbeda dengan proses kompresinya. Pada dekompresi LZW, juga dibuat tabel dictionary dari data input kompresi, sehingga tidak diperlukan penyertaan tabel dictionary ke dalam data kompresi. Berikut algoritma dekompresi LZW :




1. Dictionary diinisialisasi dengan semua karakter dasar yang ada : {‘A’..’Z’,’a’..’z’,’0’..’9’}.
2. CW  kode pertama dari stream salah satu karakter dasar).
3. Lihat dictionary dan output string (string.CW) ke stream karakter.
4. PW  CW; CW  kode berikutnya dari
5. Apakah string.CW terdapat dalam
Jika ada, maka :
 Output string.CW ke stream
 P  string.PW
 C  karakter pertama dari CW
 Tambahkan string (P+C) ke dalam
Jika tidak, maka :
 P  string.PW
 C  karakter pertama dari PW
 Output string (P+C) ke stream tambahkan string tersebut ke dalam (sekarang berkorespondensi dengan CW)
6. Apakah terdapat kode lagi di stream  Jika ya, maka kembali ke langkah 4.
 Jika tidak, maka terminasi proses (stop)

2.1.3  Algoritma DMC

Algoritma  DMC (Dynamic Markov Compression) adalah algoritma kompresi data lossless dikembangkan oleh Gordon Cormack dan Nigel Horspool. Algoritma ini menggunakan pengkodean aritme prediksi oleh pencocokan sebagian (PPM), kecuali bahwa input diperkirakan satu bit pada satu waktu (bukan dari satu byte pada suatu waktu). DMC memiliki rasio kompresi yang baik dan kecepatan moderat, mirip dengan PPM, tapi memerlukan sedikit lebih banyak memori dan tidak diterapkan secara luas. Beberapa implementasi baru baru ini mencakup program kompresi eksperimental pengait oleh Nania Francesco Antonio, ocamyd oleh Frank Schwellinger, dan sebagai submodel di paq8l oleh Matt Mahoney. Ini didasarkan pada pelaksanaan tahun 1993 di C oleh Gordon Cormack.
Pada DMC, simbol alfabet input diproses per bit, bukan per byte. Setiap output transisi menandakan berapa banyak simbol tersebut muncul. Penghitungan tersebut dipakai untuk memperkirakan probabilitas dari transisi.Contoh: pada Gambar 3, transisi yang keluar dari state 1 diberi label 0/5, artinya bit 0 di state 1 terjadi sebanyak 5 kali.

Secara umum, transisi ditandai dengan 0/p  atau 1/q dimana  p  dan  q  menunjukkan jumlah transisi dari  state dengan input 0 atau 1. Nilai probabilitas bahwa input selanjutnya bernilai 0 adalah p/(p+q) dan input selanjutnya bernilai 1 adalah  q/(p+q). Lalu bila bit sesudahnya ternyata bernilai 0, jumlah bit 0 di transisi sekarang ditambah satu menjadi  p+1. Begitu pula bila bit sesudahnya ternyata bernilai 1, jumlah bit 1 di transisi sekarang ditambah satu menjadi q+1. Algoritma kompresi DMC :
1. s  1 ( jumlah state sekarang)
2. t  1 (state sekarang)
3. T[1][0] = T[1][1]  1 (model inisialisasi)
4. C[1][0] = C[1][1]  1 (inisialisasi untuk menghindari masalah frekuensi nol)
5. Untuk setiap input bit e :
 u  t
 t  T[u][e] (ikuti transisi)
Kodekan e dengan probabilitas : C[u][e] / (C[u][0]
+ C[u][1])
 C[u][e]  C[u][e]+1
Jika ambang batas cloning tercapai, maka :
 s  s + 1 (state baru t’)
 T[u][e]   s ; T[s][0]   T[t][0] ;  T[s][1]  
T[t][1]
 Pindahkan beberapa dari C[t] ke C[s]

Masalah tidak terdapatnya kemunculan suatu bit pada state  dapat diatasi dengan menginisialisasi model awal state  dengan satu. Probabilitas dihitung menggunakan frekuensi relatif dari dua transisi yang keluar dari  state yang baru.
Jika frekuensi transisi dari suatu  state t  ke  state sebelumnya, yaitu  state u, sangat tinggi, maka state t dapat di-cloning. Ambang batas nilai cloning  harus disetujui oleh encoder dan decoder. State yang di-cloning diberi simbol  t’ (lihat Gambar 4 dan 5). Aturan  cloning adalah sebagai berikut :
 Semua transisi dari state u dikirim ke state t’. Semua transisi dari state lain ke state t tidak berubah.
 Jumlah transisi yang keluar dari  t’ harus mempunyai rasio yang sama (antara 0 dan 1) dengan jumlah transisi yang keluar dari t.
 Jumlah transisi yang keluar dari t dan t’ diatur supaya mempunyai nilai yang sama dengan jumlah transisi yang masuk [2].
2.2  Perbandingan Kinerja Algoritma Huffman dengan Algoritma LZW dan DMC

Jika kinerja algoritma Huffman dibandingkan dengan Algoritma LZW dan DMC, maka akan diperoleh asil
seperti dibawah ini  :








Dari grafik di atas, dapat kita lihat bahwa secara ratarata algoritma DMC menghasilkan rasio file hasil kompresi yang terbaik (41.5% ± 25.9), diikuti algoritma LZW (60.2% ± 28.9) dan terakhir algoritma Huffman (71.4% ± 15.4).
Dan dari grafik di atas juga, dapat kita lihat bahwa secara rata-rata algoritma LZW membutuhkan waktu kompresi yang tersingkat (kecepatan kompresinya = 1139 KByte/sec ± 192,5), diikuti oleh algoritma Huffman (555,8 KByte/sec ± 55,8), dan terakhir DMC (218,1 KByte/sec ± 69,4). DMC mengorbankan kecepatan kompresi untuk mendapatkan rasio hasil kompresi yang baik. File yang berukuran sangat besar membutuhkan waktu yang sangat lama bila dikompresi dengan DMC.

3. KESIMPULAN

Dari makalah ini, dapat diambil kesimpulan sebagai berikut :
1. Algoritma  Huffman dapat digunakan sebagai dasar untuk kompresi data, dan pengaplikasiannya ukup
mudah serta dapat digunakan dalam berbagai jenis data.
2. Secara rata-rata algoritma DMC menghasilkan rasio file hasil kompresi yang terbaik (41.5% ± 25.9), diikuti algoritma LZW (60.2% ± 28.9) dan terakhir algoritma Huffman (71.4% ± 15.4)
3. Secara rata-rata algoritma LZW membutuhkan waktu kompresi yang tersingkat (kecepatan kompresinya = 1139 KByte/sec ± 192,5), diikuti oleh algoritma Huffman (555,8 KByte/sec ± 55,8), dan terakhir DMC (218,1 KByte/sec ± 69,4). DMC mengorbankan kecepatan kompresi untuk mendapatkan rasio hasil kompresi yang baik. File yang berukuran sangat besar membutuhkan waktu yang sangat lama bila dikompresi dengan DMC.
4. Jika dibandingkan dengan algoritma LZW dan DMC, dalam kompresi data, algoritma Huffman masih kalah dalam hal rasio kompresi data maupun kecepatan kompresinya.

source : google.com

Senin, 02 April 2012

Dampak Multimedia terhadap perkembangan Masyarakat Indonesia

“Tolong sediakan iklan lalu sebar ke berbagai socialmedia yang ada.”
Seringkali kata-kata tersebut mengambang di udara di sekitar kita. Baik di lingkup kampus,kantor,organisasi bahkan sampai RT. Iklan yang dibuat dengan semenarik mungkin menjadi semakin mudah di sebarkan dengan berbagai  social media yang ada di jaringan internet. Perkembangan pemanfaatan multimedia sendiri  tak dapat dipungkiri jauh melesat dari tahun ke tahun. Penggunaan animasi yang sangat erat hubungannya dengan multimedia itu sendiri semakin apik. Dibuktikan dengan film-film yang beredar,dengan sentuhan tangan-tangan yang memang diberikan berkah oleh Alloh,mereka meramu hasil yang direkam oleh kamera maupun gambar yang berhasil di capture menjadi suguhan yang memanjakan mata penikmat multimedia.
Berpanjang lebar menjelaskan multimedia,namun kita tidak tahu apa arti multimedia.Multimedia itu terdiri dari 2 kata yakni multi yang berarti banyak dan media yang berarti sesuatu yang digunakan untuk menyampaikan sesuatu. Jadi makna keseluruhannya yaitu seseatu yang digunkan untuk menyampaikan sesuatu kepada banyak pihak. Nah dalam maknanya sekarang,multimedia lebih direkatkan dengan komunikasi dan kemudahan penyampaian informasi dari suatu maupun banyak sumber ke seorang maupun banyak orang.
Multimedia sendiri merupakan kombinasi antara teks, gambar, video dan animasi. Bisa saja hanya satu aspek yang dikembangkan dalam perkembangannya. Dan itu semua tergantung kebutuhan dan keinginan dari penikmat multimedia itu sendiri. Tak dipungkiri,multimedia tidak terlepas dari computer. Setidaknya pengelolaan untuk teks, gambar, video dan animasi itu sendiri menggunakan computer. Multimedia seringkali terintegrasi diantara semuanya. Semisal film yang seringkali kita nonton. Multimedia juga bersifat dinamis yang bergerak dan mengikuti perkembangan zaman. Selain itu multimedia juga bersifat interaktif antara penikmat dan penyedia.
Multimedia juga membutuhkan akses berupa networking yang berkesinambungan. Yaitu berupa internet.Dengan fasilitas internet tiap orang dapat berinteraksi dengan mudah.
Diantara pengertian-pengertian di atas, banyak sekali dampak yang sangat berpengaruh dengan masyarakat pada era sekarang ini :
1.                   Kemalasan, dengan kemudahan akses yang semakin mudah
2.                   Dalam bidang komunikasi ,informasi akan semakin mudah sampai dari satu ke yang lain,tentunya pertemuan fisik menjadi tidak terlalu penting.Ini akan menyebabkan silaturahim merenggang,karena mau bagaimanapun pertemuan fisik itu lebih penting dan lebih baik dibandingkan komunikasi dunia maya.
3.                   Dalam bidang pemasaran,sampling maupun gmbaran produk yang di trading akan mudah untuk diketahui dengan pengiklanan melalui intenet terutama melalui jejaring social.
4.                   Dalam bidang social,aspirasi masyarakat akan dengan mudah tersampaikan di public.
Masih banyak sekali dampak yang terjadi,namun tentunya kita yang menentukan dampak yang akan terjadi. Maka berlaku bijaklah. ^^.
Sesungguhnya segala sesuatu itu bisa tepat guna jika memang dilaksanakan dengan tepat juga.Bukan hanya dibuat lalu tidak dilaksanakan..

Selasa, 27 Maret 2012

journey to my dreaM >> Mecca al mukarramah part 1


29 februari-8 maret 2012
one of my dreams..
bersama mama tercinta dan mencinta,go to Al haram..
segala asa,do'a harapan mengambang memenuhi relung di hati,pikiran dan segalanya..
Hidupku hanya untukMu Alloh..
adzaariyat 56
#persiapan al haram in hajj







Masjidil Haram, Makkah Al Mukarramah

Rabu, 08 Februari 2012

SP part 2

Merasakan kembali masa dimana orang-orang lain sudah pulang ke kampung halaman masing" tapi kita masih harus berkutat dengan kuliah perbaikan yang mau tidak mau diambil karena keteledoran diri sendiri yang tidak serius pada saat ujian..
Yah,mengulang kembali mata kuliah dalam waktu yang sangat singkat(hanya 2 minggu) dan tentunya dengan uang yang berkebalikan dari waktu kuliahnya alias,lebih mahal.
Suatu pembelajaran akan hikmah kehidupan, masa kuliah,masa sekolah sidah dibatasi hanya 8 semester,walaupun adakalanya beberapa orang memilih untuk mengundur kelulusannya dengan berbagai alasan.
Namun ingat.Itu di dunia.beda halnya dengan urusan akhirat yang notabenenya masa nya tidak akan dpernah diketahui oleh siapapun termasuk yang menjalaninya.Hanya Alloh SWT yang tahu permulaan dan pengakhiran.Ketika ada kesalahan pun tiada lagi SP ,hanya penyesalan yang hadir dalam gulungan roll film kehidupan.
Astahgfirulloh..
Semoga Alloh masih memberi kita kesempatan untuk menjadi lebih baik,
Aamiin..
#Semangat Ishlah..^^