ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ
ВЕСТНИК ТОГУ. 2013. № 2(29)
УДК 004.046
© А. Ю. Федяев, А. В. Левенец, Ен Ун Чье, 2013
ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ПРЕДСКАЗАНИЯ КАК ПРОЦЕДУРЫ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ПЕРЕД СЖАТИЕМ ТЕЛЕМЕХАНИЧЕСКИХ ДАННЫХ
Федяев А. Ю. - асп. кафедры «Автоматика и системотехника», e-mail: [email protected]; Левенец А. В. - канд. техн. наук, доц. кафедры «Автоматика и системотехника», e-mail: [email protected]; Чье Ен Ун - д-р техн. наук, проф. зав. кафедрой «Автоматика и системотехника», e-mail: [email protected] (ТОГУ)
Производится анализ эффективности алгоритмов предсказания значений телемеханических данных, которые могут быть применены в процедуре предварительного преобразования с целью увеличения степени их последующего сжатия. Даются рекомендации по выбору способа предсказания значений в зависимости от используемого алгоритма сжатия. Предлагаются способы оптимизации кадров телемеханических данных.
Analysis of efficiency for algorithms of prediction remote control data values which can be used in procedure of data reduction to increase compression ratio is carried out. Recommendations for choosing way to predict values depending on compression algorithm used are given. Ways for optimization remote control data frame are proposed.
Ключевые слова: информационно-измерительная система, алгоритм сжатия, Хаффман, LZW, RLE, предварительное преобразование, коэффициент сжатия.
Методы предварительного преобразования успешно применяются к данным для увеличения эффективности процедур последующего сжатия [1, 2]. Это относится, в том числе, и к измерительным данным [3, 4]. Однако при этом выбор средств существенно ограничивается в связи с налагаемыми ограничениями: необходимостью, в большинстве случаев, передачи данных в реальном режиме времени, с небольшими задержками во времени, применением ограниченного, в отношении производительности, аппаратного обеспечения и, как следствие, необходимостью применения нетребовательных к аппаратным ресурсам алгоритмов. Увеличение масштабов автоматизации, и как следствие рост объемов передаваемых данных приводит к необходимости постоянного
[29)
усовершенствования и создания новых алгоритмов и методов сжатия, процедур предварительного преобразования.
В работе рассматриваются телемеханические данные ряда энергетических объектов Дальнего Востока. Каждый кадр данных состоит из определенного, фиксированного для всех кадров, числа опрашиваемых информационно-измерительной системой каналов, каждый из них в свою очередь включает в себя ограниченное для каждого канала число датчиков. Данные, полученные от каждого канала, снабжаются информацией о времени получения значений, количестве опрашиваемых датчиков, при этом канальные данные дополняются до фиксированного системой размера подкадра (рис. 1, а).
Анализ структуры кадра показывает большое содержание в ней избыточной информации. Например, в результате анализа выборки из 10000 кадров, полученных от информационно-измерительной системы, вероятность появления нулевого отсчета составила 80%. Поэтому перед проведением процедуры предварительного преобразования предлагается оптимизировать структуру кадра. Поскольку наибольшую избыточность вносят "хвостовые" данные, не несущие информационной нагрузки, их следует исключить из кадра, вместе с последовательностью байт, дополняющих заголовок до фиксированного размера. Перенос информации о размере в начало подкадра позволит для пустых подкадров, не содержащих информации об измеряемой величине, не передавать дополнительно временной штамп (рис. 1, б).
о,
Кадр 1
Кадр к
0„ 5,
А| |
Заголовок а
5|П Т|П А|„ В
Канальные данные
1п
Бы Ак1 Вн Окп Ткп А^ Вьп
Кадр 1
Кадр к
5 ]| Оц Аг Канальные
й кп
Заголовок
данные
81П А^
8к1 Ок1 Ак1
ко
Рис. 1. Структура кадра телемеханики: а - до оптимизации; б - после оптимизации. Б - набор байт выделяемых для передачи временной информации, 8 - набор байт для указания размера, Т - байты дополняющие заголовок до фиксированного размера, А - набор байт для передачи информации с датчиков, В - дополнение канальных данных до фиксированного размера
ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ПРЕДСКАЗАНИЯ КАК ПРОЦЕДУРЫ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ПЕРЕД СЖАТИЕМ ТЕЛЕМЕХАНИЧЕСКИХ ДАННЫХ
г 2(29)
13
Гистограмма для выборки из 1000 кадров после проведения преобразования представлена на рис. 2. Рисунок демонстрирует, что частота повторения нулевого байта после процедуры преобразования существенно снижается.
к
г*
и
5 а-
ц Р
а> л £ §
О £
О 10
¡Е & ° 5
а т
0,150 0,125 0,100 0,075 0,050 0,025 0,000
А , ,1 1 . 1 .1
-125 -100 -75 -50 -25 0 25 50 75 100 125 значение байта
Рис. 2. Гистограмма распределения значений байт после анализа выборки из 10 000 кадров
Проведение данных шагов по оптимизации на тестовой выборке позво -ляет в среднем уменьшить размер кадра в 5 раз. При этом в самом худшем случае размер кадра уменьшиться незначительно (за счет удаления дополнительных данных из заголовка), в лучшем случае уменьшиться в 128 раз (остаётся один байт указывающий отсутствие данных).
В условиях передачи данных небольшими порциями, значительного* внимания заслуживает механизм учета уже принятых значений. На основании анализа данных значений можно спрогнозировать, с некоторой вероятно -стью, какие значения будут приняты в дальнейшем. Процедура предсказания значений может повысить эффективность последующей процедуры сжатия, например, если применить алгоритм сжатия к разностному ряду образованному разностью предсказанных и действительных значений. При этом, чем точнее алгоритм предсказания повторяет изменение анализируемого параметра, тем эффективнее будет последующее сжатие. Сама процедура преоб -разования не изменяет структуру данных, и размер получаемой после преоб -разования последовательности не изменяется.
Для конкретной информационно-измерительной системы выбор исполь -зуемого алгоритма предсказания может применяться отдельно к каждому опрашиваемому датчику. При этом возможно как статическое, так и динами -ческое задание алгоритма преобразования. Статическое задание алгоритма предполагает, что для опрашиваемого датчика известны необходимые, опре -деляемые алгоритмом предсказания характеристики. На основании данных характеристик происходит выбор алгоритма, который сохраняется до конца процедуры опроса. При динамическом задании алгоритма характеристики опрашиваемого датчика либо не известны, либо могут значительно изменять-
ВЕСТНИК ТОГУ. 2013 № 2(29)
ся в ходе опроса. При этом перед процедурой передачи выбирается алгоритм предсказания, который в ходе процедуры опроса может изменяться в зависимости от характера получаемых данных.
В качестве алгоритмов предсказания значений в данной работе рассматривались алгоритмы экспоненциального сглаживания, экстраполяции нулевого порядка, линейной регрессии, простого скользящего среднего. Каждый из этих алгоритмов прогнозирует следующий отсчет на основе набора предыдущих отсчетов и задаваемых параметров. Для экспоненциального сглаживания задается коэффициент сглаживания, увеличение значения которого позволяет уменьшить влияние ранних отсчетов в пользу более поздних, тем самым эффективнее реагировать на изменение параметров. Для алгоритма экстраполяции нулевого порядка задается параметр допустимого отклонения, влияющий на решение о смене зафиксированного ранее значения, используемого в качестве прогнозируемого на текущем шаге, на вновь полученное значение. Алгоритмы линейной регрессии и скользящего среднего используют параметр ширины окна, т.е. количества предыдущих отсчетов по которым вычисляется прогнозируемое значение. Алгоритм линейной регрессии отдает большее предпочтение более поздним значением параметра, в то время как алгоритм скользящего среднего в одинаковой мере учитывает все накопленные значения.
Анализ эффективности осуществлялся на основе временных выборок из 10000 значений, полученных от датчиков для различных каналов. Выборки были классифицированы по группам. Группировка основывается на работе [5], в которой выделяются четыре класса телемеханических данных - РР1, РР2, РР3, РР4 в зависимости от концентрации значений их разностных рядов. PP1 включает ряды с весом центрального значения гистограммы более 95%. Класс PP2 включает ряды, для которых характерно распределение 95% основных значений в диапазоне ±1. PP3 ряды с распределением 95% основных значений в диапазоне ± 4. PP4 включает ряды с распределением 95% основных значений в диапазоне свыше ±4.
Оценки эффективности сжатия производится на основе трех алгоритмов сжатия: RLE, LZW и Хаффмана. Выбор алгоритмов обосновывается тем, что алгоритм RLE потоковый и не требовательный к ресурсам, поэтому может использоваться как отдельно, так и в совокупности с другими алгоритмами сжатия. Алгоритм LZW универсальный и принадлежит к довольно распространенной, широко используемой группе словарных методов сжатия. Алгоритм Хаффмана является классическим представителем не менее распространенной, статистической группы алгоритмов, некоторые его модификации просты в реализации [1].
Временные выборки подвергаются предварительному преобразованию с использованием исследуемых алгоритмов прогнозирования и последующим сжатием с использованием перечисленных алгоритмов сжатия. На основании полученных результатов делается вывод об относительной эффективности процедур преобразования.
ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ПРЕДСКАЗАНИЯ КАК ПРОЦЕДУРЫ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ПЕРЕД СЖАТИЕМ ТЕЛЕМЕХАНИЧЕСКИХ ДАННЫХ
? 2(29)
На рис. 3 приведены значения коэффициентов сжатия (Ксж) для исходных не преобразованных данных. Распределения коэффициентов сжатия показывает, что при возрастании класса данных от РР1 до РР4 значение коэффициента сжатия увеличивается, соответственно усложняется структура данных.
ррд рр^ ррз рр4 Класс данных
Рис. 3. Коэффициенты сжатия исходных данных различных классов
Анализ алгоритмов предсказания показывает, что алгоритмы экспо -ненциального сглаживания, экстраполяции нулевого порядка, линейной регрессии, скользящего среднего влияют на распределение статистических параметров преобразуемой последовательности. Вследствие этого алго-ритм Хаффмана для последовательности класса PP2, PP3 показал более низкие коэффициенты сжатия, чем для последовательности класса PP1. В то же время использование контекстных алгоритмов, таких как LZW, RLE показывает, что исследуемые преобразования в равной степени влияют на структуру преобразуемых данных. С возрастанием класса преобразуемых данных, сложность структуры так же возрастает, и при применении кон -текстных методов коэффициенты сжатия увеличиваются при переходе от класса PP1 к PP4. Это говорит об универсальности алгоритмов преобразо -вания и о примерно одинаковой эффективности при применении к любому из классов данных.
Среди рассматриваемых алгоритмов предсказания присутствует два алгоритма использующих параметр ширины окна, что позволяет произве -сти непосредственное сравнение алгоритмов между собой. Для классов; данных с относительно не продолжительными во временной области всплесками (класс PP1), эффективность применения алгоритма скользяще -го среднего для последующего сжатия будет выше в связи с менее динамичной реакцией на изменения значения и фильтрацией частых сложно прогнозируемых всплесков (рис. 4, а).
29)
0,15 0,4 0,35 0,3 0,25 0,2 0,15 0,1 0,05
а*
¡ssajfc
эй—
Ширина окна
200 400
-ppl ■ линейная регрессия, LÜW - рр! линейная регрессия, Хаффман
600 800 -»-ppl ■ скользящее среднее, L2W — ppl ■ скользящее с редисе, Хаффмаи
1000
0,35 0,3 (IJS 0,2 0,15 0,1
Мин
О.ОЪ
«»л»»
Ширина окна
НЮ 400
-рр2 - линейная регрессия, I/'Л' - рр2 - линейная регрессия, ХаФФмаи
600 800 -в-рр2-скользящее среднее, LZW —рр? - скользящее среднее, Хаффман
0,65
О 200 400
*-*~ррЗ - линейная регрессия, Ь2\1и -Ф-ррЗ - линейная регрессия, Хаффман
БОО 800
**-ррЗ - скользящее среднее, LZW —*-ррЗ - скользящее среднее, Хаффман
в
Рис. 4. Сравнение эффективности преобразования алгоритмами линейной регрессии и скользящего среднего для типа данных: а - РР1; б - РР2; в - РР3
Для классов сигналов с широкими нестационарными во временной области участками (сигналы классов РР2, РР3), эффективность применения алгоритма линейной регрессии будет выше в связи с более быстрой реакцией на изменения статистических характеристик и более быстрыми переходами в стационарное состояние (рис. 4, б, в).
а
б
ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ПРЕДСКАЗАНИЯ КАК ПРОЦЕДУРЫ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ПЕРЕД СЖАТИЕМ ТЕЛЕМЕХАНИЧЕСКИХ ДАННЫХ
г 2(29)
13
Таким образом, алгоритм скользящего среднего приобретает преимуще -ство для классов сигналов PP1, PP4, алгоритм линейной регрессии для клас -сов сигналов PP2, PP3.
Оценка эффективности алгоритмов преобразования между собой осу -ществлялось с помощью коэффициентов сжатия исходной последовательно -сти и разностного ряда полученного от исходной последовательности. Ре -зультаты показывают, что для типов данных PP1, использование предвари -тельного преобразования, как правило, оказывается не эффективным (рис. 5). Аналогичным образом дело обстоит с алгоритмом RLE при обработке данных всех классов (рис. 5, а).
Oil 0l09 0,03 0,07 0,06 0,05 И04
Сглажимющнй коэффициент
ОД 0,2 0,3 0,4
-ppl ■ экспоненциальное стлали ванне
OlS 0,t 0,7 0,8 0,9
■-ppl-иочщные данные -*-ppl - разностный рад
0,052
0,048
0 12 3
—«— j"A экстраполяция нулевого порядка
5 6
рр 1 - исжщн ые дан ные
7 8 9
-*-PPl - разностный ряд
0,24 0,19
О 2 DO
—•—i:r: ■ линейная регрессия
400
■ppl 'Скользящеесреднее
600 £00 1000 г-ppl - иснщныеданные —ppl разностный рид
Рис. 5. Сравнение эффективности сжатия для данных типа РР1 в результате применения алгоритмов предсказания с исходными данными и разностным рядом: а - алгоритм экстраполяции нулевого порядка, с использованием алгоритма сжатия RLE; б - алгоритм экстраполяции нулевого порядка, с использованием алгоритма сжатия LZW; в - алгоритмы линейной регрессии, скользящего среднего, с использованием алгоритма Хаффмана
а
б
в
29)
Для классов PP2, PP3, PP4 при использовании контекстных алгоритмов сжатия LZW, RLE с использованием алгоритмов экспоненциального сглаживания, алгоритмов линейной регрессии и скользящего среднего коэффициенты сжатия не превышают коэффициенты, полученные для исходной последовательности, однако превышают коэффициенты, полученные для разностного ряда. При преобразовании алгоритмом экстраполяции нулевого порядка, коэффициенты сжатия начинают превосходить коэффициенты сжатия, полученные не только для разностного ряда, но и, при достижении определенного значения ширины окна, коэффициенты, полученные для исходной последовательности.
0,3 0,29
0,2? 0,26 Q25 0,24 0.« (U2 «1
С гла ж ни вю щи й и ф ф н ци еит
о 01 az йз ft4 as ад о,? as Q9
—*— экспоненциальное сглаживание -»-рр2 ■ исходные данные -*-рр2< разностный ряд
0,62
1 2 3
-рр4 - зкспоненцнальноесглажнванне
4 5 6
рр4- исходные данные
>- рр4 -раэностны й рнд
СЦ4
200
[I* - линейная регрессии
4йО
рр2 - скользящее среднее
600 S00 1000
г-ppi- негодные данные —рр 1 - разностный ряд
Рис. 6. Сравнение эффективности сжатия для данных типа РР2 в результате применения алгоритмов предсказания с исходными данными и разностным рядом с использованием алгоритма Хаффмана: а - экспоненциальное сглаживание; б - алгоритм экстраполяции нулевого порядка; в - алгоритм линейной регрессии
а
б
в
ОЦЕНКА ЭФФЕКТИВНОСТИ АЛГОРИТМОВ ПРЕДСКАЗАНИЯ КАК ПРОЦЕДУРЫ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКИ ПЕРЕД СЖАТИЕМ ТЕЛЕМЕХАНИЧЕСКИХ ДАННЫХ
ВЕСТНИК ТОГУ. 2013. № 2(29)
13
Однако для всех исследуемых типов преобразования при использовании алгоритма Хаффмана в некоторых ситуациях удается достичь уменьшения коэффициента сжатия по сравнению с исходными данными и разностным рядом (рис. 6). Это связанно с перераспределением символов (байтов) после проведения преобразования.
Проведенные исследования показывают, что для алгоритмов сжатия LZW, RLE наиболее эффективным в большинстве случаев является использование разностного алгоритма предварительного преобразования. В этом случае удается достичь минимальных коэффициентов сжатия. Использование исследованных алгоритмов предсказания может показать свою эффективность при применении статистических методов сжатия, таких метод Хафф-мана и его разновидности. Так для исследуемой системы доля данных относящихся к классу PP2 составляло большинство (60%) [5], а именно для этой группы использование способов предварительного преобразования с алгоритмом Хаффмана показало свою эффективность.
В табл. 1 приведены сводные результаты по оптимизации объема передаваемых данных для исследуемой информационно-измерительной системы. В таблице представлены степени сжатия исходных данных с неизмененной структурой кадра, с оптимизированной структурой кадра, а так же результаты сжатия в результате применения разностного метода и алгоритма экспоненциального сглаживания с коэффициентом сглаживания равным 0,1 для всех датчиков системы. Результаты построены по усреднению выборок из 10000 кадров каждая.
Таблица 1
Результаты по уменьшению объема передаваемых информационно_измерительной системой данных_
Алгоритм сжатия
LZW Хаффман RLE
Исходные данные 5,3 1,79 13,16
Данные с оптимизированной структурой кадра 5,56 6,38 4,94
Исходные данные с разностным методом преобразования 33,52 3,34 14,11
Исходные данные с экспоненциальным сглаживанием 12 3,42 6,65
Данные с оптимизированной структурой кадра с разностным методом преобразования 43,24 18,29 16,99
Данные с оптимизированной структурой кадра с экспоненциальным сглаживанием 13,16 18,31 7,01
Полученные данные демонстрируют, что наибольшую степень сжатия в большинстве случаев показывает использование алгоритма LZW. При этом эффективность данного алгоритма можно значительно повысить, используя алгоритм предварительного преобразования, наиболее подходящим из которых является разностный метод. Алгоритм Хаффмана показывает наилучшие
ВЕСТНИК ТОГУ. 2013 № 2(29)
результаты с использованием алгоритма экспоненциального сглаживания, что говорит о корректных предположениях, сделанных при исследовании эффективности алгоритмов предсказания по отдельным датчикам. Применение оптимизации кадра позволяет дополнительно улучшить результаты сжатия для алгоритмов LZW и RLE в среднем в 1,1 раза, для алгоритма Хаффма-на в 4,8 раза.
В результате оптимизации структуры кадра и использованию разностного метода сжатия для исследуемой системы удается достичь значительных коэффициентов сжатия. Исследуемые алгоритмы предсказания показывают результаты при применении статистических алгоритмов, таких как алгоритм Хаффмана.
В качестве возможных шагов для дальнейшего увеличения эффективности применения процедур сжатия следует рассмотреть корреляционные зависимости внутри самого кадра, а так же поиск алгоритмов преобразования, основанных на корреляционных зависимостях, которые дают более точные прогнозы и позволят после своего применения понизить класс данных, повысив тем самым степень сжатия.
Библиографические ссылки
1. Ватолин Д. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео / Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин - М.: ДИАЛОГ-МИФИ, 2003. - 384 с.
2. Salomon D. Data compression / David Salomon. New York: Springer, 2004. - 900 pages.
3. Левенец А. В. Способ кубического преобразования для повышения эффективности сжатия данных / А. В. Левенец, А. Ю. Федяев, Чье Ен Ун // Вестник Тихоокеанского государственного университета. - 2010. - №3 (18). - С.43-52
4. Чье Ен Ун. Представление телемеханических данных однородными n-мерными структурами как предварительная обработка в задачах сжатия / А. В. Левенец, В. В. Нильга // Информационно-управляющие системы. - 2011. - №6. -С. 7-10
5. Левенец А. В. Классификация телемеханических данных и их разностных рядов с точки зрения задачи сжатия / А. В. Левенец // Вестник Тихоокеанского государственного университета. - 2009. - №4(15). - С.71-80.