
книги из ГПНТБ / Толстоусов, Г. Н. Прикладная теория информации учеб. пособие
.pdfУх |
Гаг; |
|
у* |
||
|
сигналов передатчика. Когда число Ко дробное, иы вынуждены использовать только часть комбинаций К -разрядного кода. В этих комбинациях сигналы передатчика не равновероятны и поэто му несут меньшее количество информации;
Указанный недостаток частично исправляется при использова нии неравномерного кода без разделительных знаков. Для равномер ного кода положение улучшается при переходе к кодированию бло ков сообщений. Будем кодировать не каждое сообщение, а блоки из
N сообщений. Тогда необходимо закодировать
разных блоков. Если К(А/) - разрядность равномерных кодовых комбинаций, кодирующих блоки, то число комбинаций
Q -m
Из соотношения ^ <6 получаем
Так как К(А/) - наименьшее целое число, удовлетворяющее нера венству, то можно записать
|
|
/г |
Sofjrrb" |
K(N)^N ы .’/71- + 1 . |
|
' м ' ,/ |
ßög, |
Ф )
Разделим неравенство но N учтем, что величина ^ =К - число разрядов кодовой комбинации, приходящееся на одно сооб^ щениѳ. Получим
&Hjrrb |
üMf/ТЬ fl/ |
59
При большом А/ величина К приближается к |
оптимальной величи |
|
не |
(9 .2 ). Это объясняется тем, что с ростом |
N уменьшается до |
ля |
неиспользуемых комбинаций и вероятности |
сигналов передатчика |
выравниваются.
Использование обычного двоичного кода в технических систе мах не всегда возможно ввиду следующей особенности кода. На рис. 9.2 изображена кодирующая маска в виде прямоугольной плас тины, предназначенная для преобразования линейного перемещения в двоичный код. Если считывающие элементы располагаются на гра нице позиций 7 и 8, то преобразователь при малых погрешностях этих элементов может выдать в этот момент любое число от 0 до 15; Одним из способов устранения ошибки неоднозначности считы вания является использование кода Грея. Код Грея - это равно мерный двоичный код, в котором при переходе от одной позиции или числа к другой позиции или числу изменяется только один разряд. Правило перевода обычного двоичного кода в код Грея следующее. Переписывается, начиная слева, двоичная кодовая ком бинация до старшей единицы включительно; последующие 0 и I ин вертируются, если в предшествующей составленной части комбина ции кода Грея число единиц нечетно. В табл. 9.1 показаны комби нации кода Грея и двоичного кода для чисел от 0 до 15.
fr*™' |
1 |
мрмрідацчи t
О 1 Z 3 |
h 5 6 7 6 |
9 W ti І2 13 |
15 |
|
|
Рис. |
9.2 |
|
|
Видно, что |
для соседних |
чисел, |
в том числе и для |
чисел О |
и 15 (что важно при измерении угловых перемещений), комбинации кода Грея отличаются только одним разрядом.
Для перевода кода Грея в обычный двоичный код при декоди ровании можно использовать следующее правило. Переписывается,
начиная слева, комбинация кода Грея до старшей единицы включи тельно. Последующие 0 и I инвертируются, если в предшествующей части кода Грея число единиц нечетно.
|
|
Таблица 9.1 |
Число |
Двоичішй код |
Код Грея |
0 |
0000 |
0000 |
I |
0001 |
0001 |
2 |
0010 |
ООП |
3 |
ООН |
0010 |
4 |
0100 |
о н о |
5 |
0101 |
ОШ |
6 |
ОНО |
0101 |
7 |
ОШ |
0100 |
8 |
I0J0 |
п оо |
9 |
1001 |
ІІОІ |
10 |
1010 |
І І І І |
II |
ю н |
н ю |
12 |
п о о |
1010 |
13 |
ІІОІ |
ІОІІ |
14 |
ИЮ |
ЮОІ |
15 |
І І І І |
1000 |
§ 10. Оптимальный неравномерный код
Рассмотрим вопросы кодирования сообщений источника инфор мации, состояния которого в общем случае могут быть неравиоверонтными.Задачи кодирования в этом случае должны решаться с по мощью неравномерных кодов. Наиболее вероятные сообщения должны кодироваться наиболее короткими кодовыми комбинациями. Менее ве роятные сообщения, которые будут передаваться редко, могут коди роваться более длинными кодовыми комбинациями. Тогда в среднем длина кодовой комбинации будет уменьшаться. Средняя длина кодо вой комбинации станет минимальной тогда, когда каждый сигнал передатчика будет передавать максимально возможное количество информации. Для этого кодовые комбинации должны быть составле ны так, чтобы сигналы передатчика при передаче были равновѳро-
ятны
Процедура построения оптимального двоичного кода, предло женная Р.Фано, сводится к следующему:
1. Все сообщения источника располагаются в порядке убыва ния вероятностей.
2. Сообщения делятся на две примерно равновероятные груп пы. Первым сигналом кодовой комбинации для первой группы сообще ний является 0, для второй группы сообщений - I .
3. Каждая группа сообщений делится |
на две примерно равно |
|||||
вероятные подгруппы. Вторым сигналом кодовой комбинации для |
||||||
каждой |
первой |
подгруппы |
является |
0, |
для |
каждой второй подгруппы |
- I . |
|
|
|
|
|
|
4. |
Каждая |
подгруппа |
делится |
на |
две |
примерно равновероятные |
с указанным выше принципом выбора сигналов кодовой комбинации.
Деление продолжается |
до тех |
пор, |
пока подгруппа не |
будет |
содер |
|||
жать |
одного |
сообщения. |
|
|
|
|
|
|
|
|
|
|
|
|
Таблица |
10.I |
|
3 * |
|
1 деление |
2-ѳ |
деление |
5-е деление14-е делени |
|||
|
І-й |
сигнал |
2-й |
сигнал |
3-й сигнал |
4-й |
сигнал |
|
X , |
0,250 |
|
0 |
|
0 |
|
|
|
Хг |
0,250 |
|
0 |
|
I |
|
|
|
•&І |
0,125 |
|
I |
|
0 |
0 |
|
|
Xf |
0,125 |
|
I |
|
0 |
I |
|
|
0,125 |
|
I |
|
I |
0 |
|
|
|
х { |
0,0625 |
|
I |
|
I |
I |
|
0 |
х 7 0,0625 |
|
1 |
|
I |
I |
|
I |
В табл. 10.1 показана процедура составления кода для со общений Xf.- Xf . Ври первом делении в первую группу вошли сообщения x f ; Хц. , во вторую .группу Х3 - х ? . При втором делении в первые подгруппы вошли сообщения X, ; Хь и Хц , а во вторые подгруппы остальные сообщения. Процедура образования
кодовых комбинаций для сообщений X, и |
X*. на этом закончилась. |
||
При третьем, делении в первые подгруппы |
вошли |
сообщения |
и |
Хр > во вторые подгруппы - сообщения |
Ху ; |
Хе и Х7 . |
Закон- |
4-2 |
|
|
|
чилось образование кодовых комбинаций сообщений |
Хь ; |
Хч и |
Ху о При четвертом делении в первую подгруппу |
входит |
сообще |
ние Х6 I во вторую - Х 7 . |
|
|
Врезультате получили неравномерный неприводимый код, ко торым можно пользоваться без применения специальных разделитель ных сигналов. Никакая кодовая комбинация не является началом дру гой.
Врассматриваемом примере состояния делились на точно рав новероятные группы и подгруппы. Поэтому вероятности сигналов пере
датчика 0 |
и I равны. |
Тогда каждый сигнал |
передатчика |
передает |
I бит информации. Дли передачи информации, содержащейся в одном |
||||
сообщении |
источника, |
необходимо передать |
количество |
информации, |
равное энтропии источника Н(Х) . Следовательно, среднее коли чество сигналов передатчика, необходимых для передачи одного сообщения, или средняя длина кодовой комбинации Кср , равно энтропии источника:
Кср-Н(Х).
В общем случае состояния источника могут не делиться точно на равновероятные группы и подгруппы. Тогда в составленных кодо вых комбинациях сигналы 0 и I будут неравновероятными. Количе ство информации, передаваемое одним сигналом,будет меньше одно го бита. Следовательно, в общем случае для средней длины кодо вой комбинации будет иметь место следующее соотношение:
КсрЪ-ніЮ. Ѵ°-1)
Рассмотренный способ оптимального кодирования нетрудно
распространить на случай передатчика, имеющего т сигналов. Тогда состояния источника необходимо делить сначала на пъ при
мерно равновероятных групп и т .д .
В оптимальном случае, когда все группы и подгруппы будут точно равновероятны, количество информации, передаваемое каж дым сигналом передатчика У(гЕ) , будет максимально возможным:
Средняя длина кодовой коюбинации в этом случае
|
|
к - Ш } ~ н(м |
(10. 2) |
|
|
|
П(р У(г ) ~ &ут ■ |
равном т . |
|
Будем вычислять все логарифмы при основании, |
||||
Тогда |
(10.2) |
примет |
вид |
|
|
|
|
«ср Н(Х) . |
|
В |
общем |
случае, |
когда нельзя провести деления |
на равнове |
роятные группы, для сродней длины кодовой комбинации имеем со отношение (Ю Л ), где при вычислении энтропии основание лога рифма равно пг (числу сигналов передатчика).
Уточним соотношение (Ю Л ). Найдем ограничение сверху для значения , Для этого рассмотрим процедуру составления оп тимального неравномерного двоичного кода, предложенную К.Шен ноном.
1. Все сообщения располагаются в порядке убывания вероят ностей.
2. Вероятности квждого сообщения записываются в двоичной ' системе счисления.- Оставляется старшая единица и предшествую щие ей до запятой нули. Остальные цифры отбрасываются. Получен ное число назовем оценкой.
3. Кодовой комбинацией сообщения является сумма сценок предыдущих сообщений. Если разрядность кодовой комбинации со общения меньше разрядности оценки этого сообщения, она дополня ется нулями так, чтобы указанные разрядности совпадали. Послед няя кодовая комбинация нулями не дополняется.
|
|
|
|
Таблица |
10.2 |
I |
Рі |
Рі |
Pc |
|
К о д |
2 |
3 |
ф |
5 |
6 |
|
■*, |
0,5625 |
0,Ю 0І |
I |
0 |
0 |
х } |
0,1875 |
0,0011 |
001 |
I |
100 |
0,1875 |
0,0011 |
001 |
ЮІ |
IOI |
|
|
0,0625 |
0,0001 |
0001 |
ІЮ |
по |
Д4
В табл. 10.2 показана процедура построения кода для четы рех сообщений X f—Хч. В графе 2 указаны вероятности сообща - ний. В графе 3 эти вероятности указаны в двоичной системе. В графе 4 приведена оценка. Поскольку все вероятности меньше еди ницы, цифра "О" до запятой как признак кодовой комбинации явля ется лишней. Так как кодовые комбинации образуются сложением оценок, то в оценках достаточно оставить одну старшую единицу, чтобы кодовые комбинации отличались друг от друга. В графе 5 указаны суммы оценок предыдущих сообщений.' Для сообщения осг разрядность суммы меньше разрядности оценки и сумма должна
быть дополнена нулями. Действительно, код |
" I й не |
может быть |
кодом сообщения х^ , так как он будет |
началом |
по крайней |
мере следующей кодовой комбинации. Этого не произойдет, если разрядности оценки и кодовой комбинации будут совпадать. В гра фе б указаны коды сообщений. Заметим, что код Шеннона моаѳт иметь несколько большую среднюю длину кодовой комбинации по сравнению с кодом Фано, Оценим среднюю длину кодовой комбина ции. Для вероятности каждого сообщения справедливо неравенство
|
-f |
/ |
|
|
('0.5} |
|
|
I G ’ |
|
|
|
|
|
|
|
|
|
где 4 |
- номер позиции |
старшей единицы. |
хй в |
|
|
Длина кодовой комбинации |
сообщения |
соответст- |
|||
вии с процедурой построения кода |
Шеннона равна 6С . Например, |
||||
согласно |
табл. 10.2 |
|
|
|
|
Длина кодовой комбинации сообщения |
равна |
трем. |
|||
Неравенство (10.3) |
приводится к следующему виду: |
Умножая все части неравенства на вероятность сообщения Рі и суммируя неравенства почленно для всех сообщений, полу
чим
45
Учитывая, что средняя длина кодовой комбинации равна
П,
подучим
кср Н(JC)^ ~У.
Следовательно, средняя длина ограничена значениями
H(Xb -I > Кср * H(X) . ܰ-s)
В худшем случае составления оптимального кода, когда со стояния делятся на группы, сильно отличающиеся по вероятности,
средняя длина кодовой |
комбинации превышает величину энтропии |
|
не более, чем на один |
разряд. Однако при кодировании блоков со |
|
общений средняя длина |
оптимального кода макет быть приближена |
|
сколь угодно близко к |
энтропии |
источника. |
Пусть кодируются |
блоки из |
М независимых сообщений. Тог |
да энтропия блока |
|
|
Средняя длина кодовой комбинации Kqo(A/), кодирующей блок из /V сообщений, согласно (10.5) ограничена следующими значе ниями:
|
|
Hj-+ У > |
|
(hl) Ъ Hj- . |
|
|
|
Разделим |
все |
части неравенства |
на |
N |
. Учитывая соотно |
||
шение (10 .6), |
получим |
|
|
|
|
|
|
Н(Х) + ^ > 2 з $ £ * Н ( Х ) . |
(Ю.7) |
||||||
Приходящаяся на одно |
сообщение |
средняя длина |
|||||
|
|
|
_ |
Kcp(/Zl |
|
|
|
|
|
пср- |
д / |
• |
|
|
|
Выбирая |
А/ |
большим, |
вместо (10.7) |
можно записать |
|||
|
|
кср = Н(Х.) + £ , |
|
|
(ш ) |
46
где £ - сколь угодно малая величина.
Таким образом, энтропия источника определяет количество сигналов передатчика, необходимых в среднем для кодирования од ного сообщения источника.
В процессе составления оптимального кода по методу Фано необходимо разбивать состояния источника на примерно равноверо ятные группы и подгруппы. При этом на различных этапах деления часто появляется неопределенность. Можно сделать большей по ве роятности как верхнюю, так и нижнюю подгруппы. При этом средняя длина кода может оказаться разной. Построенный таким образом код может оказаться не самым лучшим.
От указанного недостатка свободна методика Хаффмена. Она гарантирует однозначное построение кода с наименьшей для данно го источника средней длиной кода. Для двоичного кода методика следующая.
1. Все сообщения располагаются в порядке убывания вероят ностей.
2 . Два последних сообщения объединяются в одно вспомога тельное, которому приписывается суммарная вероятность. Оставши еся сообщения и вспомогательное располагаются в порядке убыва ния вероятностей в дополнительном столбце.
3. Два последних сообщения дополнительного столбца объеди няются и т .д . Процесс продолжается до тех пор, пока не получим единственное вспомогательное сообщение.
4 . Построение кодовой комбинации начинается с предпослед него дополнительного столбца. Верхнему состоянию, входящему в объединение, приписывается сигнал 0, нижнему - I . В следующем слева столбце состояниям, входящим в объединение, добавляется
сигнал 0 (для верхнего состояния) и I |
(для нижнего). |
|
|||
Методика Хаффмена поясняется примером. Процесс объединения |
|||||
сообщений |
во вспомогательные показан |
в табл. 10.3, |
а процесс |
||
составления кода на рис. 10.I . |
|
|
|
||
Таким образом, получены следующие кодовые комбинации: |
|||||
X ,- 00; |
X j - 01; |
.£ ,- 1 1 ; |
х у -Ю 0 ; |
-?■- |
Ю І. |
Сравнивая результаты, |
изложенные |
в § 9 и 10, |
можно |
сделать |
следующий вывод. Если кодировать сообщение, не обращая внимания на статистические свойства источника, т .е . рассматривая все со общения равноправными или равновероятными, то длина кодовой
4?
комбинации
где гь - |
|
K = fymn = Hrru^ |
(М ) |
число |
сообщений; |
|
|
пь - |
число |
сигналов передатчика. |
|
|
|
Таблица |
10.3 |
При опти мальном кодиро вании, учитыва ющем статистиче ские свойства источника, сред няя длина кодо вой комбинации мокет быть сде лана равной эн тропии источни ка -
Ку = Н(Х) . |
Ш іо) |
Таким образом, достигаемый при оптимальноі кодировании выигрыш
и
rrmcLX-нет (іО.11) mjx-x
^8