- •Э.Н.Гордеев основы теории информации
- •Раздел 1. Информация и Алгоритм. Коды объектов. 12
- •Раздел 2. Сжатие информации. 30
- •Раздел 3. Передача информации. Защита от искажений. 56
- •Раздел 1. Информация и Алгоритм. Коды объектов. 10
- •Раздел 2. Сжатие информации. 29
- •Раздел 3. Передача информации. Защита от искажений. 55
- •12 Рекомендованная литература 122
- •Введение.
- •Алгоритм
- •Представление (кодирование) информации.
- •Примеры кодировок
- •Свойства кодировок
- •Способы представления (кодирования) информации.
- •Кодирование слов и поиск минимального кода
- •Признаковое кодирование.
- •Раздел 2. Сжатие информации.
- •Кодирование информации. Количество информации. Сжатие информации.
- •Сериальное кодирование
- •Алфавитное кодирование.
- •Неравенство Крафта.
- •Префиксные коды.
- •Кодирование натурального ряда.
- •Код Элайеса.
- •Код Левенштейна
- •Количество информации. Энтропия.
- •Энтропия по Хартли.
- •Энтропия по Шеннону.
- •Математическая модель: алфавитное кодирование случайного источника.
- •Энтропия по Шеннону
- •Энтропия по Шеннону и энтропия по Хартли.
- •Теорема Шеннона
- •Алгоритмы кодирования
- •Алгоритм Шеннона (Фано).
- •Алгоритм Хаффмана
- •Блочное кодирование Хаффмена.
- •Алгоритм арифметического кодирования
- •Блочное кодирование и теорема Шеннона.
- •Раздел 3. Передача информации. Защита от искажений.
- •Передача информации по каналу с шумом.
- •Модели каналов.
- •Необходимые определения.
- •Пример кода для канала с выпадением.
- •Передача информации по двоичному симметричному каналу с шумом
- •Принципы построения кодов, исправляющих ошибки.
- •Декодирование на основе таблицы декодирования.
- •Корректирующие способности кодов. Границы мощности.
- •Теорема Шеннона для канала с шумом.
- •Факты из теории вероятности.
- •XI → канал → y
- •Вторая теорема Шеннона.
- •Комбинаторное доказательство теоремы.
- •Примеры кодов, исправляющих ошибки. Линейные коды.
- •Линейные коды.
- •Спектр кода.
- •Код Хэмминга.
- •Вопросы для самопроверки.
- •Примеры билетов для контрольных работ.
- •Приложение.
- •Рекомендованная литература
Блочное кодирование и теорема Шеннона.
Используя свойства энтропии можно в каком-то смысле уточнить теорему Шеннона. Пусть мы будем кодировать не буквы алфавита A, а блоки из k букв алфавита A. Вероятность каждого блока – это произведение вероятностей входящих в него букв. Тогда блок может быть представлен как произведение независимых событий. Энтропию такого блока H(AA…A) обозначим Hk(A). Минимальную стоимость кодирования для блока обозначим через Ck(A). Тогда стоимость кодирования C(A) одной буквы блока можно принять за C(A)= Ck(A)/k.
Из свойства энтропии (5) следует, что H(A)= Hk(A)/k. Из этих соотношений и теоремы Шеннона для блоков получаем
Ck(A) – 1 ≤ Hk(A)/logq ≤Ck(A)
Отсюда следуетследует
Ck(A)/k – 1/k ≤ H(A)/logq ≤Ck(A)/k.
Отсюда при k →∞ получаем, что H(A)/logq → C(A).
За такую точность приходится платить трудоемкостью алгоритмов кодирования (декодирования).
Таким образом, была доказана теорема.
Теорема. Для любого ε > 0 существует Nε такое, что при блочном кодировании с числом блоков N > Nε справедливо неравенство |Cε(A) – H(A)| < ε.
Здесь Cε(A) - среднее число символов на одну букву в данном алгоритме кодирования при данном ε > 0. (Например, блочный алгоритм Хаффмена.)
Данное утверждение известно как теорема Шеннона для канала без шума. Приведем это утверждение в более распространенной формулировке.
Пусть скорость источника А - Vc букв в секунду.
Тогда можно считать, что на одну букву приходится H(А) битов. Тогда средняя битовая скорость источника vc = Vc H(X). Реальная битовая скорость зависит от того, какие буквы передаются, и, конечно, может отличаться от средней.
Представим, что битовый поток поступает в канал (без искажений).
Канал
Получатель
Бинарный
поток
Бинарный
поток
Проблема: синхронизация скорости источника и пропускной способности канала.
Очевидно, что если по каналу передавать информацию со скоростью vk < Vc log n, то могут произойти потери информации, так как max H(А) = log n. Если же технические возможности канала таковы, что он обеспечивает скорость vk ≥ Vc log n, то информация может быть передана без потерь.
В общем случае с использованием неравенства Чебышева (закона больших чисел) можно показать (ниже это будет детально пояснено для более общего случая), что справедлива следующая теорема.
Теорема. (Теорема Шеннона для канала без шума). Для источника A с энтропией H(A) с вероятностью, стремящейся к единице при n→∞, скорость v передачи по каналу без шума удовлетворяет условиям:
При v > Vc H(X) невозможна.
Существует такая кодировка букв источника битовыми словами, что для любого ε > 0 и при v< Vc H(X) + ε передача (с вышеприведенной вероятностью) возможна.
На самом деле задача сложнее, если учесть необходимость синхронизировать не только скорость передачи и пропускную способность канала, но еще и скорость кодирования символов.
Переходим теперь к следующему разделу нашего курса.
Раздел 3. Передача информации. Защита от искажений.
Передача информации по каналу с шумом.
Рассмотрим теперь следующую более общую схему.
Код
Источник
F
Получатель
F-1
Декодер
II
Декодер
I
Канал
Потери информации
Избыточность
Часть рисунка вне овала соответствует изучаемой раньше схеме, т.е. кодер (Кодер I) и декодер (Декодер I) – это, например, устройства реализующие алгоритм Хаффмена или что-то подобное. Но в отличие от предыдущего случая (канала без шума) добавился еще один кодер (Кодер II ) и декодер (Декодер II). Их задача – обеспечить защиту передаваемой информации от шума в канале. Под шумом можно понимать самые разные искажения сигнала при передаче по каналу. Примеры моделей этих искажений приведены в следующем разделе.
