- •Министерство образования и науки рф
- •080801 Прикладная информатика (по областям применения)
- •Сочи, 2010 г.
- •1. Меры информации 20
- •2. Квантование сигналов 46
- •3.8. Помехоустойчивое кодирование 96
- •Введение Курс лекций
- •Определение понятия информация
- •Некоторые определения
- •Фазы обращения информации
- •1. Меры информации
- •1.1. Структурные меры количества информации
- •1.1.1. Геометрическая мера
- •1.1.2. Комбинаторная мера
- •1.1.3. Аддитивная мера (мера Хартли)
- •1.2. Статистические меры
- •1.2.1. Энтропия и ее свойства.
- •1.2.1.1. Энтропия и средняя энтропия простого события
- •Метод множителей Лагранжа
- •1.2.1.2. Энтропия сложного события, состоящего из нескольких независимых событий
- •1.2.1.3. Вывод формулы среднего значения энтропии на букву сообщения
- •1.2.1.4. Энтропия сложного события, состоящего из нескольких зависимых событий
- •1.2.2. Некоторые выводы, касающиеся статистической меры количества информации Шеннона
- •1.2.3. Литература
- •1.2.4. Избыточность сообщения
- •1.2.5. Пример оценки количества информации при помощи статистической меры Шеннона
- •1.3. Семантические меры информации
- •1.3.1. Содержательность информации
- •1.3.2. Целесообразность информации
- •1.3.3. Динамическая энтропия
- •1.4. Общие замечания об измерении информации
- •1.5. Энтропия непрерывных сообщений
- •1.5.1. Экстремальные свойства энтропии непрерывных сообщений
- •1.5.1.1. Первый случай (значения сл. Величины ограничены интервалом)
- •1.5.1.2. Второй случай (заданы дисперсия и математическое ожидание сл. Величины)
- •1.5.1.3. Третий случай (сл. Величина принимает только положительные значения)
- •2. Квантование сигналов
- •2.1. Виды дискретизации (квантования)
- •2.2. Критерии точности представления квантованного сигнала
- •2.3. Элементы обобщенной спектральной теории сигналов
- •2.4. Дискретизация по времени
- •2.4.1. Разложение в ряд Котельникова (Теорема Котельникова)
- •2.4.1.1. Свойства функции отсчетов
- •2.4.1.2. О практическом использовании теоремы Котельникова
- •2.4.2. Выбор периода дискретизации (квантования по времени) по критерию наибольшего отклонения
- •2.4.2.1. Интерполяция при помощи полиномов Лагранжа
- •2.4.2.2. Оценка максимального значения ошибки при получении воспроизводящей функции на основе полинома Лагранжа
- •2.4.2.3. Схема дискретизации-передачи-восстановления сигнала
- •2.4.2.4. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа нулевого порядка
- •2.4.2.5. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа первого порядка
- •2.4.2.6. Расчет периода дискретизации при использовании для получения воспроизводящей функции полинома Лагранжа второго порядка
- •2.4.2.7. Обобщение на случай использования полиномов Лагранжа произвольного порядка
- •2.4.3. Выбор интервала дискретизации по критерию среднеквадратического отклонения
- •2.5. Квантование по уровню
- •2.5.1. Оптимальное квантование по уровню
- •2.5.2. Дисперсия ошибки в случае использования равномерной шкалы квантования по уровню
- •2.5.3. Расчет неравномерной оптимальной в смысле минимума дисперсии ошибки шкалы квантования.
- •2.5.4. Расчет неравномерной оптимальной в смысле максимума количества информации в квантованном сигнале шкалы квантования
- •2.5.5. Закон компандирования при условии равномерного закона распределения квантуемого сигнала
- •3. Кодирование информации
- •3.1. Общие понятия и определения. Цели кодирования
- •3.2. Элементы теории кодирования
- •3.3. Неравенство Крафта
- •3.4. Теорема об обобщении некоторых результатов, полученных для префиксных кодов, на все однозначно декодируемые коды
- •3.5. Основная теорема кодирования для канала связи без шума (теорема 3)
- •3.6. Теорема о минимальной средней длине кодового слова при поблочном кодировании (теорема 4)
- •3.7. Оптимальные неравномерные коды
- •3.7.1. Лемма 1. О существовании оптимального кода с одинаковой длиной кодовых слов двух наименее вероятных кодируемых букв
- •3.7.2. Лемма 2. Об оптимальности префиксного кода нередуцированного ансамбля, если префиксный код редуцированного ансамбля оптимален
- •3.7.3. Коды Хаффмена12
- •3.7.4. Коды Шеннона−Фэно
- •3.7.5. Параметры эффективности оптимальных кодов
- •3.7.6. Особенности эффективных кодов.
- •3.8. Помехоустойчивое кодирование
- •3.8.1. Классификация кодов
- •3.8.2. Простейшие модели цифровых каналов связи с помехами
- •3.8.3. Расчет вероятности искажения кодового слова в дсмк
- •3.8.4. Общие принципы использования избыточности
- •3.8.5. Граница Хэмминга
- •3.8.6. Избыточность помехоустойчивых кодов
- •3.8.7. Математическое введение к алгебраическим кодам
- •3.8.8. Линейные коды
- •3.8.9. Упрощённый способ построения линейного кода
- •Определение числа добавочных разрядов m.
- •Построение образующей матрицы
- •Порядок кодирования
- •4. Порядок декодирования
- •3.8.10. Двоичные циклические коды
- •3.8.11. Некоторые свойства циклических кодов
- •3.8.12. Построение кода с заданной корректирующей способностью
- •3.8.13. Матричное описание циклических кодов
- •3.8.14. Выбор образующего полинома
- •4. Передача информации
- •4.1. Виды каналов передачи информации
- •4.2. Разделение каналов связи
- •4.2.1. Частотное разделение
- •4.2.2. Временное разделение
- •4.2.3. Кодовое разделение
- •4.2.4. Разделение по уровню
- •4.2.5. Корреляционное разделение
- •4.2.6. Комбинированные методы разделения
- •4.3. Пропускная способность каналов связи
- •4.4. Пропускная способность дискретного канала связи с шумом
- •4.4.1. Типичные последовательности и их свойства
- •4.4.2. Основная теорема Шеннона для дискретного канала с шумом
- •4.4.3. Обсуждение основной теоремы Шеннона для канала с шумом
- •4.5. Пропускная способность непрерывного канала при наличии аддитивного шума
- •Литература
- •Приложение 1. Таблица неприводимых полиномов
- •Учебно-лабораторный практикум л абораторная работа 1: Исследование информативности источников дискретных сообщений.
- •Теоретическое введение
- •Шаг 2. Ввод текстовых файлов в Excel-таблицу с разбиением каждой строки текста на отдельные символы.
- •Шаг 3. Используя инструмент «гистограмма» пакета анализа надстройки Анализ данных, находим частоты появления каждого символа в текстах и по ним находим вероятности их появления в данном языке.
- •Шаг 4. Находим среднюю энтропию, приходящуюся на 1 букву сообщения.
- •Шаг 6. Возьмем короткий отрезок текста на одном из заданных языков и найдем количество заключенной в нем информации
- •Шаг 7. Проделаем те же операции с учетом зависимости двух соседних букв того же текста.
- •Шаг 8. Напишем отчет о выполненной работе с описанием всех вычислений и о том, как они выполнялись. Прокомментируйте результаты.
- •Шаг 9. Сдайте или отослать по электронной почте (alexm5@fromru.Com) отчет на проверку преподавателю. Шаг 10. Защитите лабораторную работу у преподавателя. Варианты задания
- •Результаты работы
- •Сдача работы
- •Вопросы для самопроверки
- •Литература
- •Приложение 1: Пример оформления титульного листа
- •Приложение 2: Порядок создания нестандартных функций при использовании табличного процессора Excel Введение
- •Подключение возможности использования нестандартных функций.
- •Создание нестандартной функции
- •Приложение 3: Описание функции впр
- •Лабораторная работа 2. Исследование методов дискретизации непрерывных сообщений по времени
- •Теоретическое введение.
- •Последовательность выполнения практической части работы
- •1. Знакомство с программой Wavosaur для записи и обработки звука.
- •2. Подключите к компьютеру головную гарнитуру (головной телефон и микрофон, рис. 2, слева) и нажмите кнопку Monitor input with vu meter, указанную на рис. 2 справа синей стрелкой.
- •3. Запись голоса и подготовка сигнала.
- •4. Импорт текстовых данных в Excel
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Иллюстрация к порядку вычисления ряда Найквиста-Котельникова
- •Лабораторная работа 3. Исследование оптимального квантования непрерывных сообщений по уровню.
- •Теоретическое введение.
- •Возможный вариант выполнения работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Лабораторная работа 4. Исследование оптимальных (в смысле минимальной средней длины кодового слова) кодов на примере кодов Шеннона-Фэно и Хаффмена.
- •Теоретическое введение.
- •Коды Хаффмена
- •Коды Шеннона−Фэно
- •Параметры эффективности оптимальных кодов
- •Особенности эффективных кодов.
- •Выполнение работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •Лабораторная работа 5. Исследование кодов, обнаруживающих и исправляющих ошибки на примере линейного кода, исправляющего однократные ошибки.
- •Теоретическое введение.
- •Определение числа добавочных разрядов m.
- •Построение образующей матрицы
- •Порядок кодирования
- •4. Порядок декодирования
- •Выполнение работы
- •Результаты работы
- •Литература
- •Вопросы для самопроверки
- •12 Дэвид Хаффман (р. 9 августа 1925, Альянс, Огайо — 7 октября 1999, Санта Круз, Калифорния) — первопроходец в сфере информатики.
Выполнение работы
Лабораторная работа №5, как и работа №4, выполняется под управлением управляющей программы, написанной на алгоритмическом языке Visual Basic 6. Исполняемый файл программы носит имя Помехоустойчивое кодирование.exe .
Запустите программу Помехоустойчивое кодирование.
На экран будет выведено окно Форма 1. Регистрация (рис. 1):
Рис.1. Окно Форма 1. Регистрация
Как и при выполнении лабораторной работы №4 в поле Введите вашу фамилию этого окна студент должен ввести свою фамилию и, возможно, инициалы или имя и отчество (по желанию). Важно, чтобы эти данные иденцифицировали исполнителя работы и были уникальны (единственны) среди студетов данной специальности и курса обучения.
Введенный набор символов однозначно определяет вариант задания. А, поскольку вряд ли лабораторную работу удастся выполнить в один прием, для того, чтобы при повторном запуске программы получить то же задание, нужно запомнить все символы, которые вы вели в поле Введите вашу фамилию. При этом имеют значение: размер вводимых букв (строчные или прописные), принадлежность к алфавиту (кириллица или латиница), другие знаки (пробелы, знаки препинания, цифры и т.д.).
По окончании ввода фамилии (и, возможно, инициалов или имени и отчества) следует нажать кнопку Вперед.
В ответ будет высвечено окно Форма2. Определение длины информационной последовательности (рис. 2).
Рис. 2. Окно Форма2. Определение длины информационной последовательности и, добавим, количества дополнительных разрядов, а также длины кодового слова.
Предполагается, что буквы первичного алфавита обозначаются своими номерами (буквы пронумерованы) и эти номера записываются в виде двоичных чисел. Каждую букву будем кодировать по-отдельности. Поэтому количество разрядов двоичного числа, необходимых для записи номеров букв и есть длина информационной последовательности. Чтобы узнать длину информационной последовательности нужно записать объем первичного алфавита в виде двоичного числа и найти количество двоичных разрядов в этом числе. В данном примере (рис. 2) 1410=11102 , т.е. требуется 4 двоичных разряда. Значит размер информационной последовательности = 4 (левое поле Формы 2).
Для определения количества дополнительных разрядов кода с корректирующей способностью 1 (исправляющего максимум однократные ошибки) следует воспользоваться неравенством 2m > m+k, где m – количество дополнительных разрядов, а k- количество информационных разрядов в кодовых словах (все кодовые слова имеют одинаковую длину и одинаковое количество информационных и дополнительных разрядов). Простым перебором определяем, что в данном варианте задания неравенство выполняется при минимальном значении m=3 (23=8>4+3=7). Это значение вводится в поле Количество дополнительных разрядов…. (среднее поле окна).
Общее количество разрядов n в кодовых словах находится суммированием количества информационных и дополнительных разрядов, т.е. n=k+m. В данном примере n=4+3=7. Это число вводится в поле Количество разрядов равномерного кода…. (правое поле, см. рис. 3).
Рис. 3. Окно Форма2. Определение длины информационной последовательности с заполненными полями.
Проверка правильности введенных данных происходит в результате нажатия кнопки Вперед. При обнаружении ошибки запрашивается повторный ввод. Если ошибок нет, форма 2 заменяется формой 3 (см. рис. 4).
Содержание некоторых окон (формы 3 и 4) управляющей программы 5-й лабораторной работы изменчиво. Изменчивой является и Форма 3. Ввод и проверка образующей и проверочной матриц. Эта форма предназначена для ввода и проверки правильности образующей и проверочной матриц корректирующего кода. Сначала студенту предлагается указать размеры образующей матрицы (ОМ). В данном варианте образующая матрица состоит из 4 строк и 7 столбцов. Эти числа нужно ввести в соответствующие поля и нажать кнопку Проверка размеров ОМ.
Рис. 4. Форма 3. Ввод и проверка образующей и проверочной матриц.
При правильном ответе в правой части формы высвечивается таблица с пустыми поля, которые нужно заполнить значениями матрицы, а в нижней части отображаются поля для ввода размеров транспонированной проверочной матрицы (ТПМ, см. рис. 5).
Рис. 5. Поля для ввода ОМ и размеров ТПМ на форме 3.
Правильность ОМ и размеров ТПМ проверяется нажатием кнопки Проверка размеров ТПМ. При вводе правильных данных в правом нижней углу формы 3. высвечивается таблица для ввода значений ТПМ (рис. 6).
Рис. 6. Таблица для ввода значений ТПМ на форме 3.
Значения ТПМ проверяются нажатием кнопки Вперед. В случае отстствия ошибок форма 3 заменяется формой 4 Нахождение определителей, кодирование (рис. 7).
Рис. 7. Результат ввода закодированного и декодированного сообщений.
На правой половине формы высвечиваются ранее введенные матрицы ОМ и ТПМ, а в верхней левой части 2 поля (число строк и число столбцов) для ввода размеров матрицы-опознавателя. После ввода размеров опознавателя нажимается кновка Проверка размеров опознавателя и при правильном ответе в нижней левой части окна высвечивается таблица с возможными номерами искаженных разрядов и таблица для ввода соответствующих этим искажениям опознавателей (рис. 8).
Рис. 8. Появление таблицы с возможными номерами искаженных разрядов и таблицы для ввода опознавателей этих искажений.
Сначала таблица для ввода опознавателей пуста. Задача студента – найти эти опознавателя и ввести их в таблицу. Проверка правильности введенных опознавателей производится нажатием кнопки Проверка опознавателей (рис. 9).
Рис. 9. Проверка опознавателей
Если ошибок нет, управляющая программа приступает к проверке знаний студента по применению кода для кодирования.
Для этого таблицы Номер искаженного разряда и Опознаватель ошибки в нижней правой части формы 4 заменяются таблицами Информационые последовательности и Кодовые слова (рис. 10).
Рис. 10. Появление таблиц Информационные последовательности и Кодовые слова на форме 4.
Таблица Информационные последовательности состоит из 10 строк, каждая из которых содержит последовательность информационных бит, которую нужно кодовым словом кода, способного обнаруживать и исправлять максимум однократные ошибки. Эти кодовые слова нужно вводить в строки таблицы Кодовые слова. Как показано в теоретическом введении, кодовые слова получаются путем перемножения матрицы информационной последовательности на образующую матрицу.
Матрицу кодовых слов можно получить путем умножения матрицы информационных последовательностей на образующую матрицу. Для этого в Excel есть функция умнож, которая относится к классу математических функций. О правилах ее ввода можно ознакомиться в справочной системе Excel. Результирующая матрица будет содержать целые числа. Матрица результатов кодирования получается из результирующей путем замены четных чисел нулями, а нечетных - единицами.
После определения и ввода всех десяти кодовых слов нажимается кнопка Проверка кодовых слов (рис. 11).
Если ошибок кодирования нет, форма 4 сменяется формой 5 Декодирование (рис. 12). Она предназначена для проверки умения студента использовать код для декодирования ранее закодированных и возможно искаженных помехами в канале связи сообщений.
Рис. 11. Проверка кодовых слов
Рис. 12. Форма 5. Декодирование
Для декодирования используется ТПМ (изображена в центре формы). 10 кодовых слов, предназначенных для декодирования, расположены в 10 строках таблицы слева. Результаты декодирования (информационные последовательности с возможно исправленными в них ошибками) вводятся в строки таблицы справа (рис. 13).
Рис. 13. Ввод результатов декодирования.
В процессе декодирования сначала находятся опознаватели, а по ним вектора ошибок. При помощи вектора ошибок в принятое кодовое слово вносятся исправления, выделяется информационная последовательность, которая и записывается в строку матрицы информационных последовательностей справа. Как и при кодировании расчеты можно значительно облегчить, если для получения матрицы опознавателей использовать функцию мумнож для умножения матрицы принятых кодовых слов на ТПМ.
После декодирования и ввода всех информационных последовательностей в правую таблицу нажимается кнопка Вперед. При отсутствии ошибок на экран выводится последняя заключительная форма 6 для ввода параметров избыточности построенного кода. Следует ввести величины абсолютной и относительной избыточности кода.
При этом используются следующие простые формулы:
Абсолютная избыточность Иабс равномерных помехоустойчивых кодов находится по формуле:
Иабс=n-k,
где n – длины кодовых слов,
k – количество информационных разрядов
Относительная избыточность:
Иотн= Иабс/n=1-k/n.
После ввода правильных значений избыточности на экран выводится список вопрос для самопроверки и на этом работа заканчивается.
