Расчет и оптимизация характеристик дискретного канала
Курсовая работа, 13 Марта 2012, автор: пользователь скрыл имя
Описание
В кибернетике и математике, информация – это количественная мера устранения неопределенности (энтропия).
Теория информации (теория сообщений) – область кибернетики, в которой математическими методами исследуется:
способы измерения количества информации;
сбора информации;
кодирование;
преобразование;
передача.
Содержание
1. Система передачи дискретных сообщений 3
1.1 Блок-схема передачи СПДС. 3
1.2 Функции блоков источника сообщений: 4
1.3 Виды информации: 4
1.4 Виды и функции линий связи 4
1.5 Функции блока приемника сообщений: 5
2. Информационные характеристики дискретного канала 5
2.1 Информационные характеристики источника сообщений. 5
2.2 Информационные характеристики приемника сообщений. 6
2.3 Расчет канальных матриц 6
2.4 Характеристики источника сообщений 8
2.5 Характеристики приемника сообщения 9
2.6 Скоростные характеристики 10
2.7 Рекомендации и вывод по надежности и эффективности канала 10
3. Оптимальное кодирование 11
3.1 Назначение ОНК 11
3.2 Равномерный двоичный код 11
3.2.1 Корневое бинарное дерево РДК 12
3.3 Метод Шеннона–Фано 13
3.3.1 Алгоритм метода бисекции вычисления ОНК: 13
3.3.2 КБР ОНК Шеннона–Фано 14
3.3.3 Информационные характеристики ОНК Шеннона–Фано 14
3.4 Метод Хаффмена 15
3.4.1 Алгоритм Хафффмена: 15
3.4.2 КБД ОНК Хаффмена 16
3.4.3 Информационные характеристики ОНК Шеннона–Фано 17
4. Помехоустойчивое кодирование 18
4.1 Обнаруживающие коды 18
4.1.1 Обнаруживающий код чётности (ОКЧ) 18
4.1.2 Обнаруживающий код удвоения (ОКУ) 19
4.1.3 Обнаруживающий код инверсией (ОКИ) 20
4.1.4 Обнаруживающий код стандартный телеграфный код №3 (ОК СТК №3) 21
4.2 Корректирующие коды 21
4.2.1 Корректирующий систематический код Хэмминга (КСК Хэмминга) 21
4.3 Корректирующий циклический код (КЦК) 23
4.4 Коды, корректирующие кратную ошибку 26
4.4.1 Корректирующий мажоритарный код (КМК)(код по голосованию) (К – удвоения) 26
Литература 27
Работа состоит из 1 файл
Курсовая работа.docx
— 202.40 Кб (Скачать документ)
SОНК = 111110100111100001010100011100
000101100110101100001101000101
3.3.2 КБР ОНК Шеннона–Фано
3.3.3 Информационные характеристики ОНК Шеннона–Фано
1. Средняя длина ОНК:
Lср =Σ Li p(ai) [бит]
Lср = 0,48 + 3*0,36 + 6*0,24 + 0,18 + 2*0,15 = 3,52 (бит)
2. Энтропия сообщения:
H(A) = – Σ p(ai) log p(ai) [бит/символ]
H(A) = – ( 0,24*log 0,24 + 3*0,09*log 0,09 + 7*0,06*log 0,06 + 2*0,03*
*log 0,03) = 3,46 (бит/символ)
3. Максимальная энтропия:
Hmax(A) = – log2 N [бит]
Hmax(A) = –log2 13 = 3,7 (бит)
4. Относительная энтропия:
5. Информационная
избыточность показывает
D = 1 – μ = 1 – 0,94 = 0,06
6. Абсолютная недогруженность:
ΔD = Hmax(A) – H(A)
ΔD = 3,7 – 3,46 = 0,24
7. Коэффициент
сжатия характеризует
8. Коэффициент эффективности
Эффективность ОНК: оптимальный код тем эффективнее, чем ближе средняя длина ОНК к H(A).
Построенный ОНК Шеннона–Фано имеет высокие информационные характеристики и этот код является эффективным и оптимальным,
т.к. КЭ = 0,98.
3.4 Метод Хаффмена
3.4.1 Алгоритм Хафффмена:
- шаг 1: группируем («склеиваем») вместе два символа, которые имеют наименьшую вероятность и вычисляем их общую вероятность. Получаем новый объединенный символ.
- шаг 2: делаем второе сжимание; опять группируем вместе два символа, которые имеют наименьшие вероятности, и вычисляем их общую вероятность, проводим соединительные линии. И так далее, процесс пошагового сжимания символов осуществляется до тех пор, пока в ансамбле сообщения остается один объединенный символ с вероятностью p = 1 (корневой узел).
- завершающий шаг: кодовые слова ОНК получаем, передвигаясь по ветвям корневого дерева от корня к конечным узлам; при этом каждое ребро дерева определяет бит ОНК (0 или 1) в соответствии с направлением значений битов корневого дерева.
ai |
Р(ai) |
1 шаг |
2 шаг |
3 шаг |
4 шаг |
5 шаг |
6 шаг |
7 шаг |
8 шаг |
9 шаг |
10 шаг |
11 шаг |
12 шаг |
13 шаг |
ОНК |
|
А |
0,24 |
00 | ||||||||||||||
О |
0,09 |
010 | ||||||||||||||
Л |
0,09 |
0110 | ||||||||||||||
Н |
0,09 |
0111 | ||||||||||||||
В |
0,06 |
1000 | ||||||||||||||
Д |
0,06 |
1001 | ||||||||||||||
Е |
0,06 |
1010 | ||||||||||||||
К |
0,06 |
1011 | ||||||||||||||
Р |
0,06 |
1100 | ||||||||||||||
С |
0,06 |
1101 | ||||||||||||||
ПРОБЕЛ |
0,06 |
1110 | ||||||||||||||
П |
0,03 |
11110 | ||||||||||||||
Т |
0,03 |
11111 | ||||||||||||||
3.4.2 КБД ОНК Хаффмена
3.4.3 Информационные характеристики ОНК Шеннона–Фано
ai |
Р(ai) |
ОНК |
Li |
Li*P(ai) |
H(ai) |
А |
0,24 |
00 |
2 |
0,48 |
0,50 |
О |
0,09 |
010 |
3 |
0,27 |
0,31 |
Л |
0,09 |
0110 |
4 |
0,36 |
0,31 |
Н |
0,09 |
0111 |
4 |
0,36 |
0,31 |
В |
0,06 |
1000 |
4 |
0,24 |
0,25 |
Д |
0,06 |
1001 |
4 |
0,24 |
0,25 |
Е |
0,06 |
1010 |
4 |
0,24 |
0,25 |
К |
0,06 |
1011 |
4 |
0,24 |
0,25 |
Р |
0,06 |
1100 |
4 |
0,24 |
0,25 |
С |
0,06 |
1101 |
4 |
0,24 |
0,25 |
ПРОБЕЛ |
0,06 |
1110 |
4 |
0,24 |
0,25 |
П |
0,03 |
11110 |
5 |
0,15 |
0,15 |
Т |
0,03 |
11111 |
5 |
0,15 |
0,15 |
Сумма |
3,48 |
3,46 |
1. Средняя длина ОНК:
Lср =Σ Li p(ai) [бит]
Lср = 0,48 + 0,27 + 2*0,36 + 7*0,24 + 2*0,15 = 3,48 (бит)
2. Энтропия сообщения:
H(A) = – Σ p(ai) log p(ai) [бит/символ]
H(A) = – ( 0,24*log 0,24 + 3*0,09*log 0,09 + 7*0,06*log 0,06 + 2*0,03*
*log 0,03) = 3,46 (бит/символ)
3. Максимальная энтропия:
Hmax(A) = – log2 N [бит]
Hmax(A) = –log2 13 = 3,7 (бит)
4. Относительная энтропия:
5. Информационная
избыточность показывает
D = 1 – μ = 1 – 0,94 = 0,06
6. Абсолютная недогруженность:
ΔD = Hmax(A) – H(A)
ΔD = 3,7 – 3,46 = 0,24
7. Коэффициент
сжатия характеризует
8. Коэффициент эффективности
Эффективность ОНК: оптимальный код тем эффективнее, чем ближе средняя длина ОНК к H(A).
Построенный ОНК Шеннона–Фано имеет высокие информационные характеристики, и этот код является эффективным и оптимальным,
т.к. КЭ = 0,99.
Помехоустойчивое кодирование
Назначение помехоустойчивого кодирования: защита данных от действия помех. Эти коды делятся на 2 группы:
- обнаруживающие коды – коды, которые только обнаруживают ошибки, но не указывают её адрес;
- корректирующие коды – коды, которые обнаруживают наличие ошибки, вычисляют адрес ошибки (позицию, в которой появился ошибочный бит).
4.1 Обнаруживающие коды
Двоичный код становится обнаруживающим за счёт добавления дополнительных контрольных бит.
4.1.1 Обнаруживающий код чётности (ОКЧ)
Двоичный код дополняется одним контрольным битом в конце слова:
n = nи + nk
где n – длина обнаруживающего кода; nи – длина информационной части, количество бит; nk – длина контрольной части, количество бит.
Пример:
а) Генерация
Дан исходный код: 1000001.
Макет: .
K – контрольный бит. К равняется сумме по модулю 2 информационных бит исходника.
.
ОКЧ ()
ОКЧ (8,7) = 10000010.
б) Диагностика:
ошибки;
ошибки.
[S – синдром; - квантор существования, в нашем случае: - ошибка существует, - ошибки не существует].
Количество ошибок |
Передано |
Принято |
Наличие ошибки |
Нет ошибки |
10000010 |
10000010 |
S = 0 ошибки |
1 ошибка |
10000010 |
00000010 |
S = 1 ошибки |
2 ошибки |
10000010 |
00000011 |
S = 2 ошибки |
3 ошибки |
10000010 |
00101011 |
S = 3 ошибки |
4 ошибки |
10000010 |
01101011 |
S = 4 ошибки |
5 ошибки |
10000010 |
01111011 |
S = 5 ошибки |
6 ошибки |
10000010 |
01111111 |
S = 6 ошибки |
7 ошибки |
10000010 |
01111101 |
S = 7 ошибки |
ОКЧ позволяет определить наличие ошибки при нечётном их количестве и не определяет ошибку при их чётном количестве.
в) Эффективность ОКЧ:
- минимальное количество контрольных бит;
- простой, удобный алгоритм генерации кода и диагностики (обнаружения кода);
- ОКЧ обнаруживает нечетное количество ошибок.
Обнаруживающий код удвоения (ОКУ)
а) Генерация ОКУ.
Макет: .
Контрольные биты равны соответствующим информационным битам: .
ОКУ(14; 7) = .
б) Диагностика ОКУ
При диагностике суммируются по модулю 2 информационная и контрольная части ОКУ.