ПРИБОРОСТРОЕНИЕ, МЕТРОЛОГИЯ И ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫЕ ПРИБОРЫ И СИСТЕМЫ
ВЕСТНИК ТСГУ. 2022. № 2 (65)
УДК 004.62
А. Н. Дронов, А. В. Левенец
АЛГОРИТМЫ СЖАТИЯ ДАННЫХ В ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМАХ
Дронов А. Н. - магистрант Тихоокеанского государственного университета, тел.: 89243146051, e-mail: [email protected]; Левенец А. В. - д-р техн. наук, профессор кафедры «Автоматика и системотехника», тел.: 89141913339, e-mail: [email protected].
В статье дается краткий обзор как некоторых широко известных алгоритмов сжатия данных, так и ряда наиболее перспективных алгоритмов, разработанных в последнее время. Рассмотренные алгоритмы предназначены для проведения операции сжатия измерительных данных в информационно -измерительных системах различного типа или часто применяются для этой цели. Сбзор предназначен, в первую очередь, для ознакомления с текущим состоянием проблемы сжатия данных и обозначает некоторые перспективные направления развития в этой области.
Ключевые слова: измерительные данные, алгоритм сжатия данных, преобразование данных, информационно-измерительная система.
Введение
Активное технологическое развитие человечества приводит к необходимости передавать по линиям связи различного типа все увеличивающиеся объемы информации. Основными подходами к решению этой проблемы были разработка систем связи с более высокой пропускной способностью, а также сокращение объема передаваемых данных. Возможности по наращиванию пропускной способности систем связи ограничиваются текущим техническим уровнем, поэтому предельные значения параметров достигаются достаточно быстро. Это приводит к необходимости применения алгоритмов сжатия данных, т.е. специализированной обработки данных, уменьшающей их избыточность.
Алгоритмы сжатия, впервые появившиеся в 60-х гг XX века, продолжают активно развиваться и по заложенным в них базовым принципам делятся на универсальные и специализированные [1]. Алгоритмы первого типа могут сжимать данные с различными характеристиками и обеспечивают среднее значение степени сжатия. Второй тип алгоритмов сжатия предполагает работу только с данными,
© Дронов А. Н., Левенец А. В., 2022
ВЕСТНИК ТОГУ. 2022. № 2 (65)
имеющими некоторые известные свойства, поэтому эффективность сжатия таких данных может быть высока.
В настоящее время весьма значительно вырос объем измерительных данных, основной отличительной особенностью которых является их схожесть со случайными последовательностями [2]. Кроме того, следует учитывать то обстоятельство, что при сжатии таких данных крайне нежелательна потеря информации, следовательно применяемые алгоритмы сжатия цифровых данных должны быть обратимыми, а для аналоговых данных - квазиобратимыми, обеспечивающими приемлемую погрешность восстановления.
В настоящее время интерес к сжатию измерительных данных достаточно высок и разрабатываются как специализированные методы [3 - 5], так и предпринимаются попытки поиска новых направлений развития, поиска новых подходов к самой задаче сжатия таких данных [6].
Как правило, в информационно-измерительных системах (ИИС) предпочитают применять универсальные алгоритмы сжатия, т.к. свойства измерительных данных не всегда известны априори. Однако в ряде случаев возможно и применение специализированных алгоритмов. Таким образом, для разработчиков ИИС важно иметь общие представление о современном состоянии этой области, в силу чего обзор как известных алгоритмов, так и новых направлений развития в этой области представляется актуальным.
Классические алгоритмы сжатия измерительных данных
В основе подавляющего большинства алгоритмов сжатия лежит принцип энтропийного кодирования, когда наиболее часто встречающемуся символу (строке символов) присваивается наиболее короткое кодовое слово. Выделяют три основных класса таких алгоритмов: на основе кодирования длин серий, на основе кодов переменной длины, а также алгоритмы арифметического кодирования.
Простейший алгоритм кодирования длин серий заменяет последовательности из двух или более одинаковых символов числом, обозначающим длину такой последовательности (серии) и самим повторяющимся символом [1]. Такой алгоритм может быть полезен для достаточно сильно избыточных данных, однако для измерительных данных его применение сильно ограничено случайным характером данных и без предварительной обработки такой алгоритм в ИИС практически не применяется. Тем не менее, варианты алгоритма, в том числе для задачи сжатия телеметрических данных, разрабатываются до сих пор [7].
В алгоритмах сжатия данных применяют, как правило, префиксные коды переменной длины, у которых кодовые слова однозначно разделяются по специальной группе элементарных символов - префиксу. Формально, при выборе оптимального кода переменной длины, данные независимого источника могут быть сжаты максимально эффективно. На практике эффективность сжатия сильно зависит от статистических свойств сжимаемых данных и ограничивается дискретностью самого кода.
АЛГОРИТМЫ СЖАТИЯ ДАННЫХ В ИНФОРМА- -
ЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМАХ ШЛНЖ ТОГУ. Ж2 № 2 (65)
Классическими алгоритмами сжатия на основе кодов переменной длины являются алгоритм Шеннона-Фано и алгоритм Хаффмана. Суть работы первого алгоритма заключается в создании двоичного дерева, отображающего вероятности появления каждого из символов входной последовательности. Далее проводится операция сортировки, заключающаяся в том, что наиболее часто встречающиеся символы помещаются наверху дерева. Код для символа формируется в результате прохода по дереву, когда к формируемому коду добавляют бит, значение которого определяет направление поискового движения по дереву. Алгоритм Шеннона-Фано не всегда дает оптимальные коды из-за методики построения дерева снизу вверх, поэтому наиболее часто применяют алгоритм Хаффмана, для которого кодирование идет сверху вниз, что и приводит к существенно лучшим результатам [1].
Арифметическое кодирование, как и алгоритм Хаффмана, является энтропийным, то есть длина кода конкретного символа зависит от частоты встречаемости этого символа в тексте. Алгоритм при кодировании ставит в соответствие кодируемой последовательности символов некоторое вещественное число, принадлежащее отрезку фиксированной длины, чаще всего его выбирают равным [0;1). Этот метод обеспечивает более высокие результаты сжатия, чем алгоритм Хаффмана, для данных с неравномерными распределениями вероятностей кодируемых символов. При арифметическом кодировании каждый входной символ кодируется нецелым числом бит, что и обеспечивает его эффективность. Действительно, некоторому символу «а» с вероятностью появления р(а) допустимо ставить в соответствие код длины 1о§2р(а), поэтому для алгоритма Хаффмана это достигается только с вероятностями, равными обратным степеням двойки, а для арифметического кодирования такое ограничение снимается [1 ]. В настоящее время известен ряд модификаций алгоритма арифметического сжатия, как правило, разработанных под конкретную задачу [8, 9].
Следует отметить, что для некоторых ИИС ограничивающим фактором при выборе алгоритмов сжатия может быть требование работы в реальном масштабе времени, поэтому перечисленные варианты классических алгоритмов не могут быть применены без соответствующей доработки, что приводит к повышению требований к вычислительной мощности ИИС. В силу вышеизложенного, в таких случаях применяют еще один классический метод сжатия - разностный алгоритм с кодированием кодами переменной длины. Суть алгоритма заключается в том, что передаче подлежит не само числовое значение, а разность текущего и предыдущего значений, что сокращает динамический диапазон значений и позволяет более эффективно применять коды переменной длины [7].
Современные состояние задачи сжатия измерительных данных
Несмотря на то, что в большинстве случаев классические методы сжатия обеспечивают приемлемую эффективность сжатия, разработка новых и модификация известных алгоритмов проводится и в настоящее время.
Так, для сжатия телеметрических данных в работе [2], помимо применения известных алгоритмов сжатия, предлагается пакетный механизм формирования и
ВЕСТНИК ТОГУ. 2022. № 2 (65)
передачи данных, который представляет собой механизм, включающий стандартные структуры данных и протоколы, позволяющие упростить разработку и расширить возможности передачи данных. Принцип пакетной телеметрии заключается в группировании данных от источников информации в информационные блоки (пакеты), которые далее передаются по каналу связи. Для уменьшения избыточности предлагается использовать режим управляемой телеметрии, согласно которого пакеты без запроса их передачи в канал связи не выдаются.
Кроме того, авторы предлагают адаптивный разностный алгоритм сжатия, подразумевающий фиксированный объем пакета передачи. В этом случае количество отсчетов в каждом пакете зависит от разницы между соседними измерениями, т.е. чем разница меньше, тем больше отсчетов помещается в пакет. Основным полученным результатом является то, что коэффициент сжатия и время задержки выдачи первого пакета обратно пропорциональны частоте сигнала, а уменьшение размера пакета ведет к уменьшению коэффициента сжатия. Также в статье предлагается алгоритм преобразования данных на основе представления их образами-остатками. Один из вариантов такого алгоритма состоит в делении каждого отсчета на два близких числа и передаче остатков деления на приемную сторону. При определенных условиях возможно однозначное восстановление данных. Преобразованием данных на основе представления их образами-остатками можно добиться как сокращения избыточности, так и повышения помехоустойчивости.
Повышение эффективности сжатия данных может быть связано с предварительной обработкой данных перед процедурой сжатия. Так, в [10] предлагается структура группового телеметрического сигнала и алгоритм ее формирования, реализующей экономное кодирование информации. В статье описывается способ предварительной обработки данных, суть которого сводится к преобразованию исходной последовательности данных в такую, у которой гистограмма частот появления отдельных отсчетов будет неравномерной, что позволяет эффективно использовать неравномерное кодирование. Особенностью предлагаемого алгоритма является необходимость передачи информации о связи между элементом исходного сообщения и соответствующей ему кодовой последовательностью.
Возможность применения нейросетевых методов для сжатия телеметрических данных обсуждается в [11]. Авторами показано, что для задачи сжатия данных дистанционного зондирования Земли существенное сокращение объема передаваемых данных обеспечивается за счет применения предложенной авторами структуры нейросетевого блока сжатия.
Краткий обзор методов обратимого сжатия и возможность их применения для сжатия телеметрических данных дан в [12]. Автором рассмотрены алгоритмы Хаффмана, DFT, Deflate и ряд других, проведен анализ возможности их применения для поставленной задачи. Отмечается, что повышение эффективности сжатия прямо связано с интегральным рассмотрением кадров в виде единого объекта, причем размерность формируемой структуры определяется числом источников информации и степенью их коррелированности.
Вопросы применения блочного адаптивного квантования радиолокационных данных обсуждаются в [13], где предлагается математическое решение проблемы
АЛГОРИТМЫ СЖАТИЯ ДАННЫХ В ИНФОРМАЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМАХ
ВЕСТНИК ТОГУ. 2022. № 2 (65)
и приведены экспериментальные данные, подтверждающие правильность предлагаемого решения. Ограничением предложенного подхода является предположение, что сжимаемые данные имеют гауссово распределение с нулевым средним значением. Анализ результатов проведенного авторами имитационного моделирования показывает, что предложенный ими подход позволяет получать значения уровней квантования практически для любой требуемой разрядности квантователя.
Интересное направление развития теории сжатия данных показано в работе [14]. Здесь для задачи сжатия без потерь исходная последовательность данных кодируется предложенным авторами методом универсального кодирования тройками двоичных наборов. Предложенный метод не связан статистикой источника информации и состоит в разбиении входного потока данных на блоки фиксированной длины, каждому из которых ставится в соответствие три параметра: количество единиц в блоке, сумма номеров позиций единиц, номер данной конкретной комбинации. Авторами проведен анализ предложенного метода и определены особенности его применения. Кроме того, рассмотрены вопросы применения такого подхода к представлению данных для задачи помехоустойчивого кодирования.
Работа [15] описывает алгоритм сжатия без потерь телеметрических данных ракетной техники, в основе которого лежит преобразование исходной последовательности данных, которую можно представить как одномерную структуру, в двумерный объект, который можно описать более компактно. Предлагаемое преобразование обратимо, что и позволяет применить его для задачи сжатия. В статье приводятся экспериментальные данные, подтверждающие эффективность предложенного алгоритма, в частности на тестируемых данных получено увеличение коэффициента сжатия в два раза.
Вопросы сжатия больших объемов научных данных рассмотрены в статье [16], где приводится краткий обзор существующих алгоритмов сжатия данных с потерями и проведен анализ перспективности их применения для поставленной задачи. Приведены полученные авторами на примере нескольких систем хранения данных результаты, показывающие уменьшение объемов передаваемых данных в системах хранения, а также уменьшение требуемых объемов хранилищ и снижение среднего времени доступа пользователей к запрошенным данным.
Перспективным методом сжатия научных (измерительных) данных следует считать алгоритм Compressive Sensing (CS) [17]. Следует отметить, что в первую очередь алгоритм предназначен для сжатия данных, представленных в графическом виде. В основе этого алгоритма лежит теория кодирования и декодирования многоразрядных сигналов, имеющих «разреженное» представление в некотором базисе. В настоящее время эта теория широкое распространение. Основная идея теории состоит в том, что большинство информационных сигналов имеют некую структуру и избыточность, т.е. они не являются чистым шумом. Работа CS начинается с получения фиксированного числа выборок в базис, отличный от базиса, в котором сигнал является разреженным. Так как число выборок ограниченно, задача обратного преобразования изображения влечет за собой необходимость ре-
ВЕСТНИК ТОГУ. 2022. № 2 (65)
шения неопределенного матричного уравнения. Другими словами, для данной выборки можно сформировать значительное число различных изображений-кандидатов, т.к. число выборок меньше, чем полное число коэффициентов в исходном изображении. Таким образом, необходимо ввести некоторое дополнительное ограничение, помогающее выбрать наиболее подходящего кандидата.
Классическим решением такой проблемы является минимизация количество энергии в системе (нормы l2), однако несмотря на простоту этого решения в математическом плане, для большинства практических приложений это решение неприемлемо, т.к. отсутствующие в выборке неизвестные коэффициенты имеют ненулевую энергию. Более приемлемым решением является минимизация числа нулевых коэффициентов в новом базисе (норму lo), однако это NP-сложная задача и практически нереализуема в вычислительном отношении. Таким образом, в настоящее время принято минимизировать сумму в абсолютных значениях (норму li). Эта задача линейного программирования, для которой существуют эффективные методы решения и, в результате, приводит к результатам, когда многие коэффициенты равны нулю, т.е. результаты сопоставимы с результатами при использовании нормы lo. Подробно эта проблема рассматривается в работе [18], где показано, что метод CS применим как для дискретных последовательностей, так и для некоторых аналоговых сигналов, относящихся к классу сжимаемых (s-ред-ких).
Следует также отметить работу [19], в которой рассматривается многомерное сжатие данных на основе поиска одинаковых элементов (шаблонов) в потоке данных, а также статью [20], авторы которой предлагают модификацию известного алгоритма сжатия zip, позволяющего повысить эффективность сжатия, по сравнению с исходным алгоритмом, на величину до 25%.
В ряде случаев ИИС кроме измерительной и управляющей информации передают изображения. Алгоритмы сжатия изображений используют особенности функционирования человеческих органов зрения, что позволяет добиваться весьма высоких значений коэффициента сжатия, но обычно приводит к потере некоторой части информации. Следует отметить, что существуют варианты алгоритмов сжатия изображений без потерь, однако эффективность сжатия для них оказывается существенно ниже. Интересно, что применение наиболее распространенных алгоритмов сжатия изображений для сокращения избыточности измерительных данных, где основными требованиями являются отсутствие потерь в данных, как правило малоэффективно, хотя и может дать заметное увеличение эффективности сжатия для некоторых типов данных.
Заключение
Таким образом, в настоящее время большинство ИИС применяют такие традиционные, достаточно хорошо зарекомендовавшие себя алгоритмы сжатия, как алгоритм Хаффмана, арифметическое кодирование и др. Однако возможность применения таких алгоритмов может быть ограничена необходимостью работы в реальном масштабе времени и вычислительными ресурсами, поэтому разработка
АЛГОРИТМЫ СЖАТИЯ ДАННЫХ В ИНФОРМА- -
ЦИОННО-ИЗМЕРИТЕЛЬНЫХ СИСТЕМАХ ВЕСШИС ТОГУ. 2022. № 2 (65)
новых, более эффективных алгоритмов сжатия до сих пор остается актуальной задачей, решением которой занимаются многие ученые. Основным направлением развития в этой области следует считать разработку адаптивных методов, построенных на глубоком анализе структуры и статистических параметров сжимаемых данных.
Библиографические ссылки
1. Методы сжатия данных : Устройство архиваторов, сжатие изображений и видео / Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин. М. : Диалог-МИФИ, 2002. 381 с.
2. Обзор способов снижения избыточности телеметрической информации / Ф. Н. Байбекова, В. В. Подольцев, Н. М. Беспалова, Л. А. Сологубова // Радиопромышленность. 2019. Т. 29, № 2. С. 8-16.
3. Бакулина М.П. Эффективное сжатие изображений на основе кодирования низкоэнтропийных источников // Автометрия. 2011. Т. 47, № 1. С. 59-66.
4. Chen C., Zhang L., Tiong R.L.K. A new lossy compression algorithm for wireless sensor networks using Bayesian predictive coding // Wireless Networks. 2020. Vol. 26, Issue 8. P. 5981-5995.
5. A hierarchical adaptive spatio-temporal data compression scheme for wireless sensor networks / Chen S., Liu J., Wang K., Wu M. // Wireless Networks. 2019. № 25. P. 429-438.
6. Левенец А. В. Принципы разработки перспективных способов сжатия телеметрических данных // Вестник ТОГУ. 2017. № 2. С. 31-38
7. An enhanced run-length encoding compression method for telemetry data / Yanhu Shan, Yongfeng Ren, Guoyong Zhen, Kaiqun Wang // Metrology and measurement systems. 2017. № 4. P. 551-562.
8. Потапов В. Н. Арифметическое кодирование сообщений с использованием случайных последовательностей // Прикладная дискретная математика. 2008. № 2. С. 131-133.
9. Карпенко Д. С., Максимов И. А., Иванов В. В. Метод сжатия телеизмерений с использованием бинарного арифметического кодирования // Труды МАИ. 2013. № 65. С. 26-36.
10. Артюшкин А. Б., Куксенко М. А., Пантенков А. П. Экономное кодирование как метод повышения скорости передачи информации в телеметрических системах // Вестник РосНОУ. Сер. Сложные системы: модели, анализ и управление. 2020. Вып. 1. С. 43-54.
11. Сатыбалдиев А. А., Таштай Е. Т. Анализ практического применения нейросжатия для телеметрических задач космического назначения // Научный журнал. 2020. № 1. С.10-12.
12. Тулекбаев Е. Т. Эффективные методы сжатия телеметрической информации для наземных комплексов управления // Вестник науки и образования. 2017. № 10. С. 14-20.
ВЕСТНИК ТОГУ. 2022. № 2 (65)
13. Моделирование сжатия радиолокационных данных дистанционного зондирования земли на основе блочного адаптивного квантования / Р. П. Богуш, И. Ю. Захарова, Ю. Ф. Пастухов и др. // Вестник ПГУ. Сер. С. 2020. № 4. С. 7-15.
14. Граничин О. Н. Рандомизация данных и l1 оптимизация // Компьютерные инструменты в образовании. 2010. № 1. С. 4-13.
15. Lossless Compression Method for Rocket Telemetry Data based on Reorganizing Frame Information / Pan Y., Guo X., Lin H., Luo S. // Proceedings of 2020 ACM International Conference Proceeding Series. 2020. P. 130-133.
16. Use cases of lossy compression for floating-point data in scientific data sets / F. Cappello, S. Di, S. Li, etc. // International Journal of High Performance Computing Applications. 2019. № 33. P. 1201-1220.
17. Donoho D. Compressed sensing // IEEE Trans. Inform. Theory. 2006. № 4. P. 1289-306.
18. Граничин О. Н. Рандомизация измерений и l1 оптимизация // Стохастическая оптимизация в информатике. 2009. Т. 5. С. 3-23.
19. Multidimensional Compression with Pattern Matching / Del Guercio O., Orozco R., Sim A., Wu J. // Data Compression Conference Proceedings. 2019. Vol. 2019-March. P. 567.
20. DZip: Improved general-purpose lossless compression based on novel neural network modeling / Goyal M., Tatwawadi K., Chandak S., Ochoa I. // Data Compression Conference Proceedings. 2020. Vol. 2020-March. P. 372.
Title: Data Compression Algorithms in Information and Measuring Systems Authors' affiliation:
Dronov A.N. - Pacific National University, Khabarovsk, Russian Federation Levenets A.V. - Pacific National University, Khabarovsk, Russian Federation
Abstract: In the article, the authors provide a brief overview of both some well-known data compression algorithms and a number of the most promising recently developed algorithms. The considered algorithms are intended for carrying out the measurement data compression operation in information and measuring systems of various types or are often used for this purpose. The review is intended, first of all, to get familiar with the current state of the problem of data compression, and it outlines some promising areas of development in this area.
Keywords: measurement data, data compressed algorithm, data transformation, information and measuring system