You are on page 1of 14

# DYNAMIC MARKOV COMPRESSION

## Algorithm and Data Structure

Group <1>
Names : Abdullah Azzam Robbani
Ivan Eka Putra

Class : 2SC3

CEP CCIT
FAKULTAS TEKNIK UNIVERSITAS INDONESIA
2018
PREFACE

Praise be to Allah Almighty, Most Merciful, because thanks to His grace and guidance, the
writer can arrange and present a paper that contains about Dynamic Markov Compression. The
author also thanked Mr. Tirta Akdi Toma Mesoya Hulu as a mentor who has provided guidance to
the author in the process of preparing this paper. Not to forget the writer thank the various parties
who have given encouragement and motivation.

The author realizes that in the preparation of this paper there are still many shortcomings
and far from perfection. Therefore, the authors expect constructive criticism and suggestions to
improve this paper and can be a reference in preparing the papers or subsequent tasks.

The authors also apologize if in writing this paper there are typos and errors that confuse
the reader in understanding the author's intent.

## Jakarta, 6 March 2018

Authors

ii
iii
PREFACE.................................................................................................................................................... 2
INTRODUCTION....................................................................................................................................... 1
1.1 Background .................................................................................................................. 1
1.2 Writing Objective ......................................................................................................... 1
1.3 Problem Domain .......................................................................................................... 1
1.4 Writing Methodology ................................................................................................... 2
1.5 Writing Framework ...................................................................................................... 3
BASIC THEORY ........................................................................................................................................ 4
PROBLEM ANALYSIS ............................................................................................................................. 7
CONCLUSION AND SUGGESTION ...................................................................................................... 8
4.1 Conclusion.................................................................................................................... 8
4.2 Suggestion .................................................................................................................... 8
BIBLIOGRAPHY ..................................................................................................................................... 10

iv
CHAPTER I

INTRODUCTION

1.1 Background

## Algorithm plays an important role in the field of programming. So important is an

algorithm, so it needs to understand the basic concepts of algorithms. Especially for a programmer,
certainly needed an algorithm that can make the program more effective and efficient. For most
people, algorithms are helpful in understanding the concept of programming logic.

Algorithm is a set of instructions that are made clearly to show the steps to solve a problem.
In general, the algorithm is more or less the same with a procedure that is often done every day,
such as procedures to replace the leak / broken tires, public phone use procedures, cooking
procedures and others.

In the field of computers, such as EDP (Electronic Data Processing) or MIS (Management
Information System), algorithms are often used to solve a problem or for decision-making process.
An analytical system (analysis system) certainly uses algorithms to design a system. For a
programmer, algorithms are used to create program modules. This paper will discuss about
Dynamic Markov Compression which includes the understanding, characteristics, method, and
performance.

## 1.2 Writing Objective

The following is the purpose of writing a paper entitled "Dynamic Markov Compression":

##  To improve knowledge related to algorithmic materials and data structures.

 To find out more about the dynamics markov compression algorithm.
 To find out the methods, characteristics, and functions of the dynamic markov
compression algorithm.

1
1.3 Problem Domain

This paper will discuss about Dynamic Markov Compression which includes the
understanding, characteristics, models.

## 1.4 Writing Methodology

This paper is written by studying literature review from various sources, either in the form
of material from internet or book and other various media.

2
1.5 Writing Framework
Here is a systematic writing of a paper entitled "Dynamic Markov Compression".

CHAPTER I INTRODUCTION

 Background

 Writing Objective

 Problem Domain

 Writing Methodology

 Writing Framework

##  The Definition of Algorithm

 Data Compression

 Conclusion

 Suggestion

BIBLIOGRAPHY

APPENDIX

3
CHAPTER II

BASIC THEORY

## Algorithm is an instruction to solve a problem. In non-technical terms, algorithms are used

in everyday activities. Like a recipe for making a cake or a guidebook.

Technically, computers use algorithms to list detailed instructions for carrying out an
operation. For example, computing an employee's paycheck, the computer uses an algorithm. To
accomplish this task, appropriate data must be entered into the system. In terms of efficiency,
various algorithms are able to accomplish operations or problem solving easily and quickly. [3]

## 2.2. Data Compression

Data compression is the process of converting an input data into another data that has a
smaller size. Data compression is popular for several reasons. For example, people like to
accumulate data and reluctant to throw it away. Then, people do not like to wait for data transfers
that take a lot of time.

Data compression has an important role in data transmission and data storage [1]. Many
data processing applications that require large volumes of data storage and the number of such
applications is constantly increasing along with the use of extends to new disciplines. At the same
time, the proliferation of computer communication networks is resulting in massive transfer of
data over communication links [1]. Compressing data to be stored or transmitted will reduce
storage and / or communication costs. When data to be transmitted is reduced, the effect is that of
increasing the capacity of the communication channel [1]. Similarly, compressing a file to half of
its original size is equivalent to doubling the capacity of the storage medium [1].

4
There are many methods used to perform data compression. They have different ideas, data
types, and results, but they have the same principles [2]. They perform data compression by
eliminating redundancies on the original data in the source file [2]. Some data sets have structures,
and these structures can be exploited to produce a smaller representation of data [2]. The terms
redundancy and structure are used in professional literature, both of which lead to the same thing
[2]. Therefore, redundancy is an important concept of data compression [2].

## 2.2.1. Type of Data Compression

The type of data compression can be divided into two, namely based on the data
reception and the resulting output. The following is the type of data compression based on
the data reception:

a. Dialogue Mode

Dialogue mode is a data compression that must be within the limits of sight
and human hearing. The point is data compression is done by the interaction
through sight and hearing, as in video conferencing.

b. Retrieval Mode

in real time.

## The following is the type of data compression based on the output:

a. Lossy Compression

In this data compression, the decompression result is not the same as the
data before compression. Examples: MP3, JPEG, MPEG, and WMA. Lossy
compression has a smaller size compared to loseless compression but still qualify
for use.

b. Loseless Compression

5
In this data compression, the compression result can be re-compressed and
the result remains the same as the data before the compression process. Examples:
ZIP, RAR, GZIP, 7-ZIP.

6
CHAPTER III

PROBLEM ANALYSIS

The DMC algorithm is a modeling technique based on the finite state model (the Markov model).
The DMC makes the probabilities of the following binary characters by finite state modeling.

## 3.1. History of Dynamic Markov Compression Algorithm

Dynamic Markov compression (DMC) is a loss less data compression algorithm developed
by Gordon Cormack and Nigel Horspool. It uses predictive arithmetic coding similar to prediction
by partial matching (PPM), except that the input is predicted one bit at a time (rather than one byte
at a time). DMC has a good compression ratio and moderate speed, similar to PPM, but requires
somewhat more memory and is not widely implemented. Some recent implementations include
the experimental compression programs hook by Nania Francesco Antonio, ocamyd by Frank
Schwellinger, and as a sub model in paq8l by Matt Mahoney. These are based on the 1993
implementation in C by Gordon Cormack.

## 3.4. Characteristics of Dynamic Markov Compression Algorithm

This chapter begins with a short discussion of source alphabets, followed by the details of
an initial implementation used to collect state occupancy statistics of a character based model,
which is useful information for determining the parameters for a compact and efficient data
structure. A discussion of the development of practical data structures and methods for accessing
the information contained in these structures follows. Dealing with sparse symbol sets, and coding
novel symbols is covered next, followed by model updating routines, model cloning parameters,
and methods for improving symbol search speed. Finally, visual representations of the FSM and
effectiveness of the model generated are examined, concluding with the overall performance of
this new method compared with other compression techniques in use today.

7
CHAPTER IV

## CONCLUSION AND SUGGESTION

4.1 Conclusion
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur ut hendrerit sapien.
Duis faucibus pretium pulvinar. Vestibulum in blandit turpis. Nam massa leo, malesuada non diam
id, condimentum consectetur enim. Curabitur elementum mollis diam id fringilla. Sed mattis nibh
id hendrerit maximus. Praesent eget finibus elit. Morbi finibus, lectus at sollicitudin porta, velit est
bibendum risus, et pretium nisl sem eget lorem. Nullam dapibus quis neque aliquet semper. Etiam
id leo semper, posuere lectus pretium, cursus massa. Phasellus a odio a urna vulputate dignissim
ut et tortor.
Curabitur interdum ut mauris at sodales. Vivamus sit amet dapibus leo. Aenean nunc erat,
auctor a interdum sodales, venenatis eget neque. Fusce consectetur odio diam, ultricies sagittis
tellus volutpat in. Ut at neque et erat mattis rutrum. Donec ut est at elit gravida sollicitudin quis sit
amet dolor. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus turpis augue, luctus
vitae lorem sit amet, tincidunt ornare lacus. Nam nec gravida sapien, et placerat neque.

4.2 Suggestion
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam feugiat dolor sed ligula
pellentesque luctus et id magna. Morbi risus nisl, mattis vitae ipsum ut, vehicula cursus enim.
Maecenas non enim a urna fringilla vehicula a ac dui. Aliquam vel egestas risus, eu cursus elit.
Quisque consequat risus nec libero eleifend, et egestas diam faucibus. Sed luctus faucibus elit, quis
maximus elit. Maecenas augue metus, placerat ac vulputate non, commodo a turpis. Etiam porttitor
condimentum feugiat. In vehicula dui eget felis accumsan, et consequat lorem interdum. Quisque
diam nisi, tincidunt ut libero eu, rutrum tempor mauris. Donec sed imperdiet odio, finibus finibus
massa. Phasellus consequat turpis sed arcu fringilla, eget posuere enim eleifend. Curabitur quis

8
tellus elementum, tristique sapien id, suscipit nisi. Suspendisse ut venenatis lorem. Integer posuere
maximus purus, vitae imperdiet orci elementum eget.

9
BIBLIOGRAPHY
<References>

10