LEKTsIYa_5
.pdfЛЕКЦИЯ № 5.
Алгоритм кодирования Лемпела-Зива.
На практике статистика выхода источника неизвестна. Тогда можно оценить вероятности выхода символов, наблюдая длинную информационную последовательность, выдаваемую источником с помощью методов математической статистики. Но это достаточно просто сделать только для определения вероятностей появления отдельных символов. Определить совместные вероятности появления символов в блоке сложно. Поэтому алгоритм Хаффмена для кодирования стационарных источников применять нецелесообразно. В этом случае используется алгоритм Лемпела-Зива. Его достоинством является независимость от статистики источника. Он принадлежит к классу универсальных алгоритмов.
В алгоритме Лемпела-Зива последовательность с выхода источника делится на фразы (блоки) разной длины. Каждая новая фраза состоит из некоторой прошлой фразы, которая короче новой на один символ, и нового символа источника. Например, прошлая фраза 01, новая фраза 010. Фразы перечислены в словаре, каждая под своим номером, записанном в двоичной форме. Код новой фразы состоит из двух частей: (часть1, часть2). Часть 1-номер в словаре прошлой фразы, часть 2- новый символ источника. Пример: фраза 01 стоит в словаре под номером 5 (0101), тогда кодовое слово для фразы 010 выглядит следующим образом: (01010).
Пусть двоичный стационарный источник выдает последовательность символов: 1, 0,1, 0, 1, 1, 0, 1, 0, 0,1, 0 . Далее разобьем эту последовательность на фразы и поместим в словарь.
Ячейки словаря |
№ ячейки в |
Фразы |
Кодовые слова |
|
двоичной форме |
|
|
1 |
0001 |
1 |
00001 |
2 |
0010 |
0 |
00000 |
3 |
0011 |
10 |
00010 |
4 |
0100 |
11 |
00011 |
5 |
0101 |
01 |
00101 |
6 |
0110 |
00 |
00100 |
7 |
0111 |
100 |
00110 |
8 |
1000 |
111 |
01001 |
9 |
1001 |
010 |
01010 |
10 |
1010 |
1000 |
01110 |
11 |
1011 |
011 |
01011 |
12 |
1100 |
001 |
01101 |
13 |
1101 |
110 |
01000 |
14 |
1110 |
101 |
00111 |
15 |
1111 |
10001 |
10101 |
16 |
|
1011 |
11101 |
Первоначальный номер ячейки нулевой (0000) кодирует пустую фразу. Например, фраза 1 кодируется кодом 00001, т.к. до нее была пустая фраза.
Декодер источника создает такую же таблицу для декодирования. Для устранения переполнения таблиц кодер и декодер должны согласованно удалять фразы из словарей, которые больше не используются, и подставлять на их место новые. Приведенная таблица закодировала исходные 44 бита в 16 кодовых словах по 5 бит каждое. Всего получилось 80 бит. В этом случае алгоритм не обеспечил сжатия данных. Его эффективность увеличивается с ростом длины последовательности с выхода источника. При длинных последовательностях процедура Лемпела-Зива эффективно работает.
Алгоритм Лемпела-Зива используется при сжатии компьютерных файлов в операционных системах UNIX, MSDOS.
3. ДИСКРЕТНЫЙ КАНАЛ СВЯЗИ (ДКС).
3.1. Информационные характеристики ДКС.
X Y
ДКС
Как было показано выше, среднее значение взаимной информации определяется по формуле (2.3):
L M L M
I ( X ,Y ) p(ak , bl )I (ak , bl ) p(ak , bl ) log 2 ( p(ak ) p(bl ) ) I (Y , X ) .
Свойства средней взаимной информации.
1. I (X ,Y ) 0 , т.е. средняя взаимная информация – величина неотрицательная.
I (X ,Y ) 0 , если X и Y не зависят друг от друга. Это наблюдается при больших шумах в канале связи.
2. I (X ,Y ) H (X ) , кода сообщения X и Y равны.
3. Среднюю взаимную информацию можно найти через энтропию и условную энтропию следующим образом:
I (X ,Y ) H(X ) H(X / Y) H(Y ) H(Y / X ) |
(3.1) |
Скорость передачи взаимной информации – количество взаимной информации, переданной по каналу связи в единицу времени
RKC |
|
I ( X ,Y ) |
(бит/с) , |
(3.2) |
|
||||
|
|
TH |
|
где TH - время передачи.
Пропускная способность канала связи – максимально достижимая скорость передачи взаимной информации по каналу
C max RKC (бит/с), |
(3.3) |
{ p} |
|
где максимум ищется по распределению вероятностей { pk } .
Информационная эффективность (коэффициент использования канала связи) определяется как
|
RKC |
|
(3.4) |
C |
|||
0 1, тем больше, чем ближе RRC |
к C . |
3.2. Модель дискретного канала без памяти (ДКБП).
Пусть X A {a1 ,..., an }, Y B {b1 ,..., bm } с вероятностями появления p(ak ), p(bj ) .
Вход-выход |
канала |
описывается |
условными |
вероятностями |
p(bj / ak ) P{Y bj |
/ X ak }, |
j 1,2,..., m, k 1,2,.., n . |
|
|
Граф такого канала связи имеет вид, изображенный на рисунке.
a1 |
|
b |
|
||
|
1 |
|
a2 |
|
b2 |
|
|
|
an |
|
bm |
Например, переход от a1 к b2 |
описывается вероятностью p(b2 / a1 ) и т.д. |
Двоичный симметричный канал (ДСКС) является частным случаем ДКБП. У ДСКС X {0,1},Y {0,1} , где X - набор возможных значений входа, Y - набор возможных значений выхода. Если канальный шум и другие нарушения вызывают статистически независимые ошибки при передаче двоичной последовательности со средней вероятностью pош , то
P{Y 0 / X 1} P{Y 1/ X 0} pош , P{Y 1/ X 1} P{Y 0 / X 0} 1 pош .
|
Граф ДСКС. |
|
|
|||||
0 |
1 pош |
0 |
|
|||||
|
|
|
|
|
|
|
||
|
pош |
|
|
|||||
|
pош |
|
|
|||||
1 |
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|||
|
1 pош |
|
|
|||||
|
Пропускная способность ДСКС. |
|
||||||
I ( X ,Y ) Imax ( X ,Y ) , |
если p(0) p(1) 0.5 . Тогда по формулам (3.1), |
(3.2), (3.3) |
||||||
запишем: |
|
|
|
|
|
|
|
|
|
C |
1 |
|
(H max (Y ) H max (Y / X )) . |
(3.5) |
|||
|
|
|
||||||
|
|
TH |
|
|
Далее, используя формулу полной вероятности ТВ, получим:
P{Y 0} p(0)P{Y 0 / X 0} p(1)P(Y 0 / X 1} 0.5(1 pош ) 0.5 pош 0.5 .
Аналогично определяем, что P{Y 1} 0.5 . Т.е. выход канала равновероятен, тогда H (Y ) H max (Y ) log 2 n log 2 2 1бит/символ.
Затем по формуле (2.3) найдем условную энтропию H max (Y / X ) .
|
2 |
2 |
|
2 |
2 |
|
H max (Y / X ) p(bj , ak ) log 2 ( p(bj |
/ ak ) p(ak ) p(bj / ak ) log 2 ( p(bj / ak ) |
|||||
|
j 1 k 1 |
|
j 1 k 1 |
|
||
( p(0) p(1/ 0)log 2 |
p(1/ 0) p(1) p(1/1)log 2 |
p(1/1) p(0) p(0 / 0)log 2 |
p(0 / 0) p(1) p(0 /1)log 2 p(0 /1)) |
0.5(2 pош log 2 pош 2(1 pош ) log 2 (1 pош )) ( pош log 2 pош (1 pош ) log 2 (1 pош )) .
Подставляя выражения для H max (Y ) и H max (Y / X ) в формулу (3.5), окончательно получим пропускную способность ДСКС:
C |
1 |
(1 pош log 2 |
pош (1 pош ) log 2 (1 pош )) |
(3.6) |
|
||||
|
TH |
|
|
Выводы. Пропускная способность ДСКС зависит только от вероятности ошибки pош , она увеличивается, если pош уменьшается.
CTH |
нормальная ветвь |
1 |
аномальная ветвь |
0 |
0.5 |
1 |
pош |
При увеличении |
отношения |
сигнал/шум вероятность ошибки pош |
уменьшается, а пропускная способность увеличивается.
Теорема Шеннона для кодирования канала с шумами. Существуют кодеры и декодеры, которые позволяют создавать надежную связь со столь малой, насколько угодно вероятностью ошибки, если скорость передачи информации меньше пропускной способности канала связи:
RKC C |
(3.7) |