History of Data Compression Algorithms - PowerPoint PPT Presentation

1 / 6
About This Presentation
Title:

History of Data Compression Algorithms

Description:

... (Lempel-Ziv #2) 1978 LZW (Lempel-Ziv-Welch) 1984 LZMW (Syllable-based LZW) 1985 LZAP 1988 LZWL 2006 bzip2 (Algorithm Amalgam) 1996 PAQ* (Context Mixing) ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 7
Provided by: Michael2081
Learn more at: http://www.cs.sjsu.edu
Category:

less

Transcript and Presenter's Notes

Title: History of Data Compression Algorithms


1
History of Data Compression Algorithms
  • By Michael Riha

2
Questions to Answer
  • How have compression algorithms evolved over
    time?
  • What methods do they use to compress and how are
    they interrelated?
  • What real-world applications do they have, and
    how have they changed?
  • What priority do they place on speed vs.
    compression ratio?
  • What effect have software patents had on the
    development of compression algorithms?

3
Sliding Window Algorithms
  • LZ77 (Lempel-Ziv 1) 1977
  • LZSS (Lempel-Ziv-Storer-Szymanski) 1982
  • LZRW (Lempel-Ziv Ross Williams) 1991
  • LZJB (Lempel-Ziv Jeff Bonwick) 1998
  • LZR (Lempel-Ziv-Renau) ???
  • DEFLATE (ZIP, PNG, gzip, etc.) 1993
  • DEFLATE64 (Proprietary) 1999
  • LZS (Lempel-Ziv-Stac) 1994
  • LZX (Used in Microsoft .CAB) 1995
  • LZP (Usually a preprocessor) 1995
  • LZO (Lempel-Ziv-Oberhumer) 1996
  • LZMA (Lempel-Ziv-Markov Chain) 1998

4
Dictionary Algorithms
  • LZ78 (Lempel-Ziv 2) 1978
  • LZW (Lempel-Ziv-Welch) 1984
  • LZMW (Syllable-based LZW) 1985
  • LZAP 1988
  • LZWL 2006
  • bzip2 (Algorithm Amalgam) 1996
  • PAQ (Context Mixing) 2002
  • PAQ8O (Faster, higher CR) 2007
  • Many others
  • Statistical LZ
  • ROLZ (Reduced Offset LZ)

5
Methods
  • Dictionary Compression (ubiquitous)
  • Prediction by Partial Matching (PPM, used by
    7-Zip and RAR)
  • Context Mixing (Combines multiple statistical
    models)
  • Entropy Encoding
  • Huffman Coding (Used in DEFLATE, bzip2, SSH,
    etc.)
  • Adaptive Huffman Coding (Dynamic scope)
  • Shannon-Fano Coding (Suboptimal compared to
    Huffman)
  • Arithmetic Range Encoding
  • Rice Golomb Coding (FLAC uses Rice, not used
    general purpose)
  • Universal Coding (Slower than Huffman, uncommon)
  • Run-Length Encoding (AAAAAAABBBBA gt 7A4BA)
  • Burrows-Wheeler Transform (Preprocessor for
    Run-length Encoding)

6
Materials
  • Google Scholar / SJSU Library Databases
  • Regular Google
  • Wikipedia links to many detailed
    descriptions/specifications/implementations of
    algorithms
  • A few sources, mainly technical papers
  • https//secure.wikimedia.org/wikibooks/en/wiki/Dat
    a_Compression/Dictionary_compression
  • http//www.maximumcompression.com/algoritms.php
  • https//tools.ietf.org/html/rfc1951
  • http//www.cbloom.com/papers/lzp.html
  • http//www.larsson.dogma.net/dccpaper.pdf
  • http//ftp.informatik.rwth-aachen.de/Publications/
    CEUR-WS/Vol-176/paper5.pdf
  • Have not contacted any project advisors, not sure
    who would have expertise
Write a Comment
User Comments (0)
About PowerShow.com