Нажав на кнопку "Скачать архив", вы скачаете нужный вам файл совершенно бесплатно.
Перед скачиванием данного файла вспомните о тех хороших рефератах, контрольных, курсовых, дипломных работах, статьях и других документах, которые лежат невостребованными в вашем компьютере. Это ваш труд, он должен участвовать в развитии общества и приносить пользу людям. Найдите эти работы и отправьте в базу знаний.
Мы и все студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будем вам очень благодарны.

Чтобы скачать архив с документом, в поле, расположенное ниже, впишите пятизначное число и нажмите кнопку "Скачать архив"


## ## ## ## ## ## ## ## ## ##
## ## ## ## ## ## ##
####### ## ## ## ## ######## ########
## ## ## ######### ## ## ## ##
## ## ## ## ## ## ## ## ##
####### ##### ## ####### #######

Введите число, изображенное выше:

Подобные документы

    Общее число неповторяющихся сообщений. Вычисление скорости передачи информации и пропускной способности каналов связи. Определение избыточности сообщений и оптимальное кодирование. Процедура построения оптимального кода по методике Шеннона-Фано.

    курсовая работа , добавлен 17.04.2009

    Описание и особенности некоторых алгоритмов архивации. Построение кода Хаффмана. Динамический алгоритм построения кода Хаффмана. Обратное восстановление текста. Способы двухступенчатого кодирования информации. Практическая реализация алгоритма LZ77.

    курсовая работа , добавлен 24.12.2012

    Оценка вычислительной сложности программы. Реализация алгоритма кодирования информации Хаффмана. Кодировка теста двоичным кодом и в дереве Хаффмана. Бинарный код символов. Символ и частота его появления в тексте. Вычисление трудоемкости алгоритма.

    контрольная работа , добавлен 16.12.2012

    Определение среднего количества информации. Зависимость между символами матрицы условных вероятностей. Кодирование методом Шеннона–Фано. Пропускная способность канала связи. Эффективность кодирования сообщений методом Д. Хаффмана, характеристика кода.

    контрольная работа , добавлен 04.05.2015

    Определение понятий кода, кодирования и декодирования, виды, правила и задачи кодирования. Применение теорем Шеннона в теории связи. Классификация, параметры и построение помехоустойчивых кодов. Методы передачи кодов. Пример построения кода Шеннона.

    курсовая работа , добавлен 25.02.2009

    Анализ эффективности способов кодирования. Средний размер одного разряда и средняя длина кодового слова. Кодирование по методу Хаффмена. Кодирование информации по методу Шенона-Фано. Построение кодового дерево для различных методов кодирования.

    контрольная работа , добавлен 15.10.2013

    Кодирование и декодирование, преобразование дискретного сообщения в дискретный сигнал. Построение математической модели корректирующего кода. Образующая матрица информационного кода. Модульная структура программы. Спецификация на программные модули.

    курсовая работа , добавлен 28.11.2014


Пример 16. Закодировать сообщения источника, при­веденные в табл 7, двоичным кодом Хафмана. Оценить эффектив­ность полученного кода.

Решение. В соответствии с алгоритмом построения ко­да Хафмана делаем последовательно следующие шаги:

1) располагаем сообщения источника в порядке убывания ве­роятностей;

2) образуем вспомогательный алфавит, объединяя наиболее маловероятные буквы u 1 и u 4 (m 0 =2), тогда вероят­ность новой буквы равна p 1 =р (u 1)+р (u 4)=0,1+0,05=0,15. Оставляем эту букву на месте, так как p 1 =р (u 6);

3) объединяем первую вспомогательную букву и букву u 6 , тогда вероятность второй вспомогательной буквы равна р 2 =р 1 +р (u 6)=0,15+0,15=0,3; перемещаем ее вверх в соответствии с этой вероятностью;

4) объединение продолжаем до тех пор, пока в ансамбле не останется единственное сообщение с вероятностью единица.

Построение кода Хафмана приведено на рис. 4.

Сообщения источника являются теперь концевыми узлами ко­дового дерева. Приписав концевым узлам значения символов 1 и 0, записываем кодовые обозначения, пользуясь следующим пра­вилом: чтобы получить кодовое слово, соответствующее сооб­щению u 4 , проследим переход u 4 в группировку с наиболь­шей вероятностью, кодовые символы записываем справа на­лево (от младшего разряда к старшему), получим 1100.

Для сообщения u 1 – 1101 и т.д. (см. рис. 4).

Оценим эффективность полученного кода.

Энтропия источника сообщений:

на одну букву на выходе источника.

Средняя длина кодового слова (формула (4.14) )

Для оценки эффективности кода используем коэффициент эффективности

Для оптимального двоичного кода и .

Полученный нами код имеет избыточность R =0,0109, т.е. код близок к оптимальному.

Пример 17 . Сообщение источника X составляется из статистически независимых букв, извлекаемых из алфавита А, В, С с вероятностями 0,7; 0,2; 0,1. Произвести двоичное кодирование по методу Шенно­на-Фано отдельных букв и двухбуквенных блоков. Сравнить коды по их эффективности.

Решение. Производим побуквенное кодирование ме­тодом Шеннона-Фано.

1) Располагаем буквы алфавита источника в порядке убыва­ния вероятностей.

2) Делим алфавит источника на две (m =2) примерно рав­новероятные группы. Всем сообщениям верхней группы (буква А) приписываем в качестве первого кодового симво­ла 1, всем сообщениям нижней группы приписываем сим­вол 0.

3) Производим второе разбиение на две группы (буквы В и С) и снова букве в верхней группе (В) приписываем сим­вол 1, а в нижней (С) в качестве второго символа кодового слова приписываем 0. Так как в каждой группе оказалось по одной букве, кодирование заканчиваем. Результат приведен в табл. 8.

Оценим эффективность полученного кода. Энтропия источника

Средняя длина кодового слова

Видим, что L >H (X ), и коэффициент эффективности

А избыточность R 1 =0,1102.

Покажем, что кодирование блоками по 2 буквы (k =2) увеличивает эффективность кода. Строим вспомогательный алфавит из N =3 2 блоков. Вероятности блоков находим по формуле (1.8) , считая буквы исходного алфавита независимыми. Располагаем блоки в порядке убывания вероятностей и осуществляем кодирование методом Шеннона-Фано. Все полученные двухбуквенные блоки, вероятности их и соответствующие кодовые обозначения сведены в табл. 9.

При блоковом кодировании средняя длина кодового слова на одну букву

При этом коэффициент эффективности

Избыточность при двухбуквенном кодировании R 2 =0,0045.

Получили γ 2 > γ 1 , R 2 <<R 1 , что и требовалось показать.

Пример 18 . Способ кодирования задан кодовой таблицей

a) составить матрицу расстояний

б) найти кодовое расстояние;

в) определить кратности обнаруживаемых и исправляемых ошибок;

г) определить избыточность кода, полагая буквы источника равновероятными.

Решение . а) Матрицу расстояний записываем в виде таблицы (табл. 10).

б) По табл. 10 находим кодовое расстояние

в) Кратность обнаруживаемых ошибок определяется по формуле (3.5) , откуда q о ≤3.

Кратность исправляемых ошибок находим по формуле (3.6) q и ≤1,5.

Следовательно, приведенный код позволяет обнаруживать всевозможные однократные, двукратные и трехкратные ошибки и исправлять любые однократные ошибки.

г) Избыточность кода находим из следующих соображе­ний. Для передачи равновероятных сигналов a 1 , а 2 , а 3 , а 4 достаточно переда­вать кодовые слова 00, 10, 01 и 11 соответственно. Такой код не имеет избыточности, но не позволяет обнаруживать и, тем более, исправлять ошибки. Для обнаружения и исправления ошибок введены пять избыточных символов, т.е. количествен­но избыточность равна .

Пример 19 . Линейный блочный (5,2)-код задан произ­водящей матрицей G в систематической (канонической) форме

Пусть принят вектор b =00110 и известно, что возможны только одиночные ошибки.

Произвести декодирование следующими методами:

а) по минимуму расстояния;

б) вычислением синдрома.

Решение. Если производящая матрица записана в ка­ноническом виде, это значит, что она состоит из двух блоков: диагональной матрицы размера k k , состоящей из единиц, и прямоугольной матрицы размера r k . В этом случае пер­вые k символов в любом кодовом слове являются информаци­онными.

Проверочная матрица Н также может быть записана в каноническом виде и состоит из двух блоков. Первый блок есть прямоугольная матрица размера k r , полученная транс­понированием второго блока матрицы G . В качестве второго блока матрицы Н записывают диагональную матрицу разме­ра r r , состоящую из единиц.

Для заданного кода получаем

.

Убедимся, что полученная таким образом матрица Н удов­летворяет соотношению (3.18) . Действительно,

т.е. все 6 элементов матрицы GH T равны нулю.

Построим кодовую таблицу, воспользовавшись правилом образования кодовых слов по формуле (3.21) :

a 1 =00000, а 2 =10110, а 3 =01011, а 4 = 11101=a 2 +a 3 .

Всего кодовая таблица содержит 2 k = 4 вектора.

Из кодовой таблицы определяем величину кодового рас­стояния .

Следовательно, рассматриваемый код обнаруживает одно­кратные и двукратные ошибки и исправляет однократные.

Декодируем принятый вектор b = 00110.

а) Метод декодирования по минимуму расстояния заклю­чается в том, что, вычислив расстояния вектора b относитель­но всех векторов а i кодовой таблицы, отождествляем приня­тый вектор с тем, расстояние до которого минимально. Расстояния d ib приведены в табл. 11.

По величине d ib min =1 решаем, что передавался вектор а 2 =10110, следовательно, ошибка в первом символе кодового слова, а информационная последовательность имеет вид х = 10.

б) Метод декодирования с помощью вычисления синдрома включает следующие операции:

1) По формуле (3.17) заранее устанавливаем однознач­ную связь между векторами однократных ошибок е и соот­ветствующими им синдромами. Все возможные векторы приведены в табл. 12.

2) Вычисляем синдром для принятого слова b по формуле (3.16) с =bH T :

c 1 =(00110)(10100)=1, с 2 =(00110)(11010)=1,

с 3 =(00110)(01001)=0,

т.е. вектор с = 110. Синдром не равен нулю, следовательно, есть ошибка.

Вектору с = 110 в табл. 12 соответствует век­тор ошибки в первом символе е =10000. Декодируем, сум­мируя принятый вектор с вектором ошибки

Итак, получили тот же результат: передавался вектор a 2 =10110, соответствующий информационной последователь­ности х =10.

Пример 20. Для кода, заданного в примере 19, со­ставить схему кодирующего устройства.

Решение. Обозначим буквами а 1 ,...,а 5 символы на выходе кодера, причем а 1 и а 2 есть информационные символы, поступающие на его вход, а символы а 3 , а 4 и а 5 образуются в кодере.

Из соотношения (3.22) получаем

Один из вариантов схемы кодера, определяемой этими соот­ношениями, показан на рис. 5.

Кодирующее устройство работает следующим образом. В течение первых двух шагов двухразрядный регистр сдвига за­полняется информационными символами а 1 и а 2 , а в течение следующих трех тактов его состояние сохраняется неизменным. Одновременно с заполнением регистра начинается переклю­чение мультиплексора (переключателя) MUX. Таким образом формируются 5 симво­лов кодового слова, удовлетворяющих требуемым соотноше­ниям.

Пример 21. Построить код Хэмминга, имеющий па­раметры: d код =3, r =3.

Решение. Построение кода начинаем с проверочной матрицы. В качестве семи столбцов проверочной матрицы Н выбираем всевозможные 3-разрядные двоичные числа, исклю­чая число нуль. Проверочная матрица имеет вид

Чтобы определить места проверочных и информационных символов, матрицу Н представляем в каноническом виде

Где I – единичная матрица.

Для этого достаточно в матрице Н выбрать столбцы, со­держащие по одной единице, и перенести их в правую часть. Тогда получим

Из формулы (4.3.5) получаем следующие соотношения для символов a 1 , ..., а 7 кодового слова:

Пользуясь этими соотношениями, составляем кодовую таблицу

Пример 22 . Для кода Хэмминга, определяемого проверочной матрицей H , построенного в при­мере 21, декодировать принятый вектор 1011001.

Решение. Для принятого вектора b =1011001 по фор­муле (3.16) вычисляем синдром

Синдром с ≠0, т.е. имеет место ошибка. В случае одиноч­ной ошибки (и только лишь) вычисленное значение синдрома всегда совпадает с одним из столбцов матрицы Н , причем номер столбца указыва­ет номер искаженного символа. Видим, что ошибка произошла в первом символе и передавался вектор

Пример 23 . Производится кодирование линейным блочным кодом (15,15-r ). Найти минимальное количество проверочных символов r , при котором код был бы способен исправлять любые однократные, двукратные и трехкратные ошибки.

Таким образом, для исправления всех упомянутых ошибок необходимо, чтобы передаваемые комбинации содержали не менее 10 проверочных символов, т.е. k =5.

Пример 24 . Для кодирования применяется (15,5)-код БЧХ с кодовым расстоянием d код =7, способный исправить все ошибки до трехкратных включительно.

Битовая вероятность ошибки в канале передачи p =10 -4 , ошибки независимы. Определить вероятность ошибки при декодировании кодовой комбинации и битовую вероятность ошибки на выходе декодера.

Решение. Вероятность ошибки при декодировании кодовой комбинации определим по формуле (3.59)

Битовую вероятность ошибки на выходе декодера определим по формуле (3.60) то есть, одна ошибка приходится в среднем на бит.

Информация - это совокупность сведений, подлежащих хранению, передаче, обработке и использованию в человеческой деятельности.

Изменение характеристики носителя, которое используется для представления информации, называется сигналом , а значение этой характеристики, отнесенное к некоторой шкале измерений, называется параметром сигнала .

Различают два типа сигналов (а значит и два типа сообщений ): непрерывные и дискретные.

Для обеспечения простоты и надежности распознавания сигналов дискретного вида (знаков ), их число целесообразно свести до минимума. Как правило, прибегают к операции представления исходных знаков в другом алфавите с меньшим числом знаков, называемых символами . При обозначении этой операции используется тот же термин – «кодирование ».

Собственная информация

Количество информации, которое несет в себе буква x i алфавита, назовемсобственной информацией , содержащаяся вx i и обозначим
.

.

Формула Шеннона

Усредним собственную информацию, т.е. рассчитаем, какое среднее количество информации несет в себе один символ алфавита
:
.

Среднее количество информации , приходящееся на одну букву , называется энтропией алфавита (или источника) и обозначается H :

- формула Шеннона .

Очевидно, что среднее 1 количество информации в сообщении длины n вычисляется по формуле:

.

Замечание. Количество информации приписывается самому сообщению.

Замечание. Энтропия является характеристикой источника сообщений (алфавита ).

Формула Хартли

При равновероятности знаков алфавита
, из формулы Шеннона получаем: .

- формула Хартли .

Единицы измерения информации

Единицу количества информации на один элемент сообщения (единицу измерения энтропии) называют битом .

Рассмотрим алфавит равновероятных символов, энтропия которого равна 1:
. Так как отсюда следует
, то ясно, что 1 бит - это количество информации, которое содержится в двоичном сообщении (алфавит {0,1}) длины 1.

В дальнейшем в выражениях для I и H всегда будем использовать логарифмы с основанием 2.

Свойства энтропии

1. Энтропия Н - величина

- неотрицательная (Н  0),

- ограниченная , Эти свойства следуют из того, что такими же качествами обладают все ее слагаемые
.

2. Энтропия равна нулю, если вероятность одного из символов равна 1 . В этом случае говорят о полностью детерминированном источнике и об отсутствии неопределенности в нем, так как наблюдатель знает о сообщении источника до момента его наблюдения.

3. Можно также показать, что энтропия максимальна, если все знаки алфавита равновероятны , т.е. Н max = log m . Таким образом, для поиска максимально возможного значения энтропии (для фиксированного числа символов) используется формула Хартли.

4. Особый интерес представляют бинарные сообщения , использующие бинарный алфавит {0,1}. Так как при m = 2 вероятности знаков алфавита p 1  1 и p 2  1, то можно положить p 1 = p и p 2 = 1-p . Тогда энтропия определяется соотношением

Сообщения алфавита источника выписывают в порядке убывания вероятностей их появления. Далее разделяют их на две части так, чтобы суммарные вероятности сообщений в каждой из этих частей были по возможности почти одинаковыми. Сообщениям первой части приписывается в качестве первого символа 0, а сообщениям второй части – 1 (можно и наоборот). Затем каждая из этих частей (если она содержит более одного сообщения) делится на две по возможности равновероятные части и в качестве второго символа для первой из них берется 0 , а для второй – 1. Этот процесс повторяется, пока в каждой из полученных частей не останется по одному сообщению. Для примера, приведенного в табл. 1 на первом этапе разделения первой части окажется одно сообщение а 1 с вероятностью P (а 1)=0,4, во второй части - остальные сообщения с суммарной вероятностью P Σ (а 2 -а 6)=0.6. Припишем сообщению а 1 символ 0, а остальным сообщениям в качестве первого символа – 1.

Таблица 1. Произвольное кодирование сообщений

На втором этапе разделим сообщения (а 2 ,а 3 ,а 4 ,а 5 ,а 6) на две равновероятные части, включив в первую часть сообщения а 2, а во вторую часть – сообщения (а 3 ,а 4 ,а 5 ,а 6). Припишем сообщению а 2 в качестве второго символа 0, а остальным сообщениям – 1 и т.д. В результате приходим к коду К 2, приведенному в табл. 2.

Таблица 2. Кодирование сообщений кодом Шеннона-Фано

Код по своему построению удовлетворяет свойству префикса. Поэтому вышеприведенная после последовательность двоичных символов “L ” декодируется однозначно: (а 1 ,а 1 ,а 4 ,а 1 ,а 1 ,а 1 ,а 6 ,а 1). Среднее число символов на одно сообщение с учетом их вероятностей =0,4*1+0,3*2+0,3*4=2,2 , т.е. незначительно превышает энтропию источника сообщений.

2.4. Средняя длина кодового слова

Процедура Шеннона-Фано не обязательно минимизирует , так как достижение большого значения средней собственной информации на одной кодовой букве может привести к обедненному выбору для последующих кодовых букв. Если это разбиение может быть вычислено так, что группы будут в точности равновероятны на каждом этапе разбиения, то вероятности букв источника и длины кодовых слов будут связаны равенством

(2)

Ограничения на длины кодовых слов префиксного кода задаются неравенством Крафта и теоремой кодирования для источника.

Теорема 1. (Неравенство Крафта). Если целые числа (
) удовлетворяют неравенству

(3)

то существует код, обладающий свойством префикса с алфавитом объемом Д, длины кодовых слов в котором равны этим числам. Обратно, длины кодовых слов любого кода, облагающего свойством префикса, удовлетворяет неравенству (3). Теорема не утверждает, что любой код с длинами кодовых слов, удовлетворяющими (3), является префиксным. Так, например, множество двоичных кодовых слов (0; 00; 11) удовлетворяет (3), но не обладает свойством префикса. Теорема утверждает, что существует некоторый префиксный код с такими длинами, например код (0; 10; 11) . Не любой однозначно декодирующий код обладает свойством префикса, например, код К3 табл. 3. В нем каждое кодовое слово является префиксом каждого более длинного кодового слова. Вместе с тем однозначность декодирования является тривиальной, так как символ 0 всегда определяет начало нового кодового слова. Коды, обладающие свойством префикса, отличаются, однако, от других однозначно декодируемых кодов тем, что конец кодового слова всегда может быть опознан, так что декодирование может быть выполнено без задержки наблюдаёмой последовательности кодовых слов (код. К4 табл.3). По этой причине префиксные коды иногда называют мгновенными кодами.

Таблица 3. Однозначно декодируемые коды

Так как длины кодовых слов любого однозначно декодируемого кода удовлетворяют (3) и можно построить префиксный код для любого множества длин, удовлетворяющих (3), то любой однозначно декодируемый код можно заменить на префиксный код без изменения длин кодовых слов. Таким образом, нижеследующая теорема 2 для кодирования источника относительно средней длины кодового слова предложена как к однозначно декодируемым кодам, так и к подклассу префиксных кодов.