Skip to main content
QUICK REVIEW

[Paper Review] A DNA Sequence Compression Algorithm Based on LUT and LZ77

Sheng Bao, Chen Shi|ArXiv.org|Apr 25, 2005
Algorithms and Data Compression6 references4 citations
TL;DR

This paper proposes a DNA sequence compression algorithm that combines a LUT-based pre-coding step with LZ77 compression, achieving a compression ratio of 1.9 bits/base or lower. By mapping 3-base DNA sequences to 64 ASCII characters via a lookup table before applying LZ77, the method enables fast, low-memory, and easily implementable compression, outperforming traditional LZ77 and other algorithms in execution speed while maintaining competitive compression efficiency.

ABSTRACT

This article introduces a new DNA sequence compression algorithm which is based on LUT and LZ77 algorithm. Combined a LUT-based pre-coding routine and LZ77 compression routine,this algorithm can approach a compression ratio of 1.9bits \slash base and even lower.The biggest advantage of this algorithm is fast execution, small memory occupation and easy implementation.

Motivation & Objective

  • To develop a DNA sequence compression method that achieves high compression ratios with minimal computational cost.
  • To leverage the efficiency of LUT (Look-Up Table) techniques from FPGA design for biological sequence compression.
  • To reduce execution time and memory usage compared to existing compression algorithms in bioinformatics.
  • To enable near-instantaneous decompression for database storage and retrieval of DNA sequences.

Proposed method

  • The algorithm uses a pre-coding step that maps every 3-base DNA sequence (excluding N) into a single ASCII character using a custom 64-character lookup table.
  • The LUT maps all possible 3-base combinations of A, T, G, C into printable ASCII characters, eliminating the need for raw base sequences in the compressed file.
  • Sequences with N (unknown bases) are handled by inserting ‘/n/’ where n is the count of consecutive Ns, preserving sequence integrity.
  • Non-triplet segments (fewer than three non-N bases) are written directly to the output without encoding.
  • The pre-coded output is then compressed using the LZ77 algorithm to further reduce file size.
  • Decompression reverses the process: LUT-based decoding reconstructs the original 3-base sequences, and LZ77 decompression restores the full DNA sequence.

Experimental results

Research questions

  • RQ1Can a LUT-based pre-coding step significantly improve DNA sequence compression efficiency while reducing execution time?
  • RQ2How does combining LUT pre-coding with LZ77 compare to using LZ77 alone in terms of compression ratio and speed?
  • RQ3Can the proposed method achieve both high compression ratios and sub-second processing times for large DNA files?
  • RQ4To what extent does the pre-coding step reduce memory usage and simplify implementation compared to other compression algorithms?

Key findings

  • The proposed algorithm achieves a compression ratio of 1.9 bits/base on average, with some sequences reaching as low as 1.75 bits/base.
  • The average execution time for both compression and decompression is 17.647 milliseconds, significantly faster than Gzip, which averages 65 milliseconds.
  • The pre-coding phase requires less than 10,000 CPU clock cycles for most sequences, indicating minimal computational overhead.
  • The algorithm reduces file size to approximately 75% of the size achieved by pre-coding alone, with LZ77 providing a modest but measurable improvement.
  • The method is highly efficient in memory usage and supports near-instantaneous decompression, making it suitable for database storage.
  • The algorithm outperforms traditional LZ77 and other state-of-the-art methods in both speed and compression ratio, especially in real-time applications.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.