# Knowledge-Based Framework for Selection of Genomic Data Compression Algorithms
## 1 Introduction  
Genomic data are increasing rapidly, which creates research challenges in the field of bioinformatics. There has been tremendous development in computer hardware and processing power in the last few decades. At the same time, the production cost of biological data has also been reduced significantly. The pace of data production has exceeded the processing capabilities of computer hardware. Some projects recently generated data in terabytes. This huge amount of generated data needs to be stored and analyzed meaningfully [1]. To handle the exponentially growing amount of data, we need some techniques that can dramatically control the size of the data without losing details. Compression is a technique that helps us in dealing with such huge data. Compression programs encode, modify, or decrease the number of bits to represent the data, which ultimately saves storage space, reduces the time needed to perform operations on these data, and also reduces the cost of transferring data over the Internet [2]. General-purpose compressors such as Gzip [3], Bzip2 [4], and 7z [5] are not suitable for biological data compression. These techniques cannot make use of the characteristics of biological data. To solve this problem, many compression programs have been developed with a better compression ratio than general-purpose algorithms. There exists strong literature on algorithms for both genome and NGS data [6; 7; 8; 9; 10; 11]. The two commonly usedmethods for compression are lossless and lossy compression. In the former method, the data can be retransformed to their original form. In the latter, the data cannot be retransformed to the original form once they are compressed. It is important to understand the targeted parameters and data of a particular compression program. The compression programs for compressing video files are different than the compressing programs for the compression of text data. The programs developed for text data also target different types of text data, e.g., general text compressors and compressors for biological data. Comprehensive work has been conducted by many researchers in the field of bioinformatics to handle, analyze, and compress genomic data. Different researchers have developed compression tools for different types of biological data. The programs work on different parameters such as compression ratio, compression/decompression time, memory requirements, etc. Users need to be aware of the relationship between different parameters while selecting a program for compression. Some compression algorithms are not tuned for the compression of DNA sequences and do not give the desired compression results. Different implementations of Huffman coding use DNA sequence features to yield a better compression ratio. These implementations focus on the concept of selecting frequent repetitions to force a skewed Huffman tree and to construct multiple Huffman trees at the time of encoding. Compression programs are categorized based on the type of data. Two main categories include NGS data and genome data. The tools are further categorized into referential or reference-free compressors. Referential compressors need a reference sequence for compression and decompression, whereas reference-free compressors do not need any other sequence except the target sequence. Readers are referred to review articles for further details of programs in different categories [1; 12; 13]. Expert systems refer to the application of Artificial Intelligence (AI) having two main components, i.e., a knowledge base and an inference engine. With the massive development of computer technology, the use of machines has increased significantly. With the rapid development in technology, machines are used as experts instead of human experts, which are time-consuming and expensive [14]. The knowledge is integrated into the knowledge base to develop expert systems that can give expert advice in the same way as the human expert of a specific domain.