Главная страница
Навигация по странице:

  • Лабараторная работа №1. Основы теории кодирования сообщений

  • Краткие теоретические сведения Преобразование информации из одной формы представления (знаковой системы) в другую называется кодированием

  • Декодирование

  • Кодирование Шеннона-Фано

  • Адаев Жарас АИСУ 20-13 ОСИПИ 1 лаб. Отчет по лабораторной работе 1 По дисциплине


    Скачать 179.74 Kb.
    НазваниеОтчет по лабораторной работе 1 По дисциплине
    Дата16.10.2022
    Размер179.74 Kb.
    Формат файлаdocx
    Имя файлаАдаев Жарас АИСУ 20-13 ОСИПИ 1 лаб.docx
    ТипОтчет
    #736663
    страница1 из 3
      1   2   3

    Некоммерческое акционерное общество

    «Алматинский университет энергетики и связи

    имени Гумарбека Даукеева»



    ОТЧЕТ по

    лабораторной работе 1

    По дисциплине ­­­______ Основы сбора и передачи информации_________

    На тему: «Основы теории кодирования сообщений»

    Образовательная программа 6В07108 – «Автоматизация и управление»__

    Выполнил Адаев Жарас
    Группа АИСУ-20-13

    (Ф.И.О.)

    ПринялВодолазкина Н.

    (ученая степень, звание, Ф.И.О.)
    «»__2022 г.

    (оценка) (подпись)

    Алматы 2022

    Лабараторная работа №1.

    Основы теории кодирования сообщений

    Цель работы: изучить понятия кодирования и декодирования информации, метод Шенно-Фано.

    Краткие теоретические сведения

    Преобразование информации из одной формы представления (знаковой системы) в другую называется кодированием. Понятие кодирование означает преобразование информации в форму, удобную для передачи по определённому каналу связи.

    Декодирование – восстановление принятого сообщения из кодированного вида в вид доступный для потребителя.

    Одно и тоже сообщение можно закодировать различными способами. Необходимо найти оптимальный способ кодирования, при котором на передачу сообщения тратится минимальное время.

    Если на передачу каждого элементарного символа (0 или 1) тратится одно и тоже время, то оптимальным будет такой код, при котором на передачу сообщения заданной длины будет затрачено минимальное количество символов.

    Кодирование Шеннона-Фано: Кодирование методом Шеннона-Фано является одним из простейших методов статистического кодирования. Кодирование по Шеннону-Фано производится в соответствии с следующим алгоритмом: 1 Все символы из исходного алфавита U записывают в порядке убывания вероятностей. 2 Всю совокупность символов разбивают на две примерно равные по сумме вероятностей группы: одной из них (в группе могут быть один или более символов) присваивают значение 1, другой - 0. 3 Каждую из этих групп снова разбивают (если это возможно) на две части и каждой из частей присваивают значения 1 или 0. Данный пункт повторяется итеративно и рекурсивно до разбиения всех групп.

    Задача 1. Пусть алфавит источника содержит шесть элементов { A, Б, В, Г, Д, Е}, появляющихся с вероятностями Р(А) = - 0.15, Р(В) =0.1, Р(Б) = 0.25, Р(Г) = 0.13, Р(Д) = Р(Е) = 0.12. Найти энтропию такого источника, среднее число символов на одну букву при кодировании методом Ш-Ф.

    Решение

    Энтропия такого источника: Н(Х)

    Алгоритм построения сжимающего кода Шеннона – Фано заключается в следующем:



    Таблица 1. Посторение кода Ш-Ф

    1. Все m символов дискретного источника располагаются в порядке убывания вероятностей их появления.

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

    3. Верхняя группа кодируется символом «1», а нижняя – «0».

    4. Каждая группа делится на две подгруппы с близкими суммарными вероятностями; верхняя подгруппа кодируется символом «1», а нижняя – «0».

    5. Процесс деления и кодирования продолжается до тех пор, пока в каждой подгруппе не окажется по одному символу сообщения источника.

    6. Записывается код для каждого символа источника; считывание кода осуществляется слева направо.

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



    nср = 3*0,25+3*0,25+3*0,15+3*0,13+3*0,12+3*0,1 =3.

    что меньше, чем при простейшем равномерном коде и незначительно отличается от энтропии источника.

    Задача 2. Закодировать методом Шенно-Фано блоки «мы все учились понемногу чему-нибудь и как-нибудь».



    Решение

    слово

    Р

    Символы кода

    код

    мы

    0,37

    0

    0







    00

    все

    0,13

    1

    0




    010

    учились

    0,125

    1




    011

    как

    0,11

    1

    0

    0




    100

    понемногу

    0,08

    1




    101

    чему

    0,06

    1

    0

    0

    1100

    нибудь

    0,052

    1

    1101

    -

    0,05

    1

    0

    1110

    и

    0,023

    1

    1111

    Среднее число элементарных символов на букву:

    Ncp=2*0,37+3*0,13+3*0,125+3*0,11+3*0,08+4*0,06+4*0,052+4*0,023+4*0,05 = 2,815.

    Энтропия на одну букву:

    H(u) = - ( 0.37* log2 0.37 + 0.13* log2 0.13 + 0.125* log2 0.125+ 0.11* log2 0.11+ 0.08* log2 0.08+ 0.06* log2 0.06 + 0.06* log2 0.06 + 0.052* log2 0.052 + 0.05* log2 0.05+ 0.023* log2 0.023 ) = 2,726.

    Информация на один элементарный символ:

    Iср = H(u)/nср= 0,968.

    Задача 3. Сообщение состоит из последовательности букв А, B и С, вероятности которых не зависят от предыдущего сочетания букв и равны Р(А)=0,7, Р(В)=0,2, Р(С)=0,1. Провести кодирование по алгоритму ШенноФано отдельных букв и двухбуквенных сочетаний. Сравнить коды по их эффективности и избыточности.

    Решение

    Буква

    Р

    Символы кода

    Код

    А

    0,7

    0




    0

    В

    0,2


    1

    0

    10

    С

    0,1

    1

    11

    А=00; АВ=0010; ВА=1000;

    В=10; АС=0011; СА=1100;

    С=11; СВ=1110; ВС=1011;

    Среднее число элементарных символов на букву

    Ncp= 1*0,7+2*0,2+2*0,1=1,3.

    Энтропия на букву

    Н(u) = -(0,7*log2 *0,7+0,2*log2 *0,2+0.1 *log2 *0,1) = 0,115.

    Информация на один элементарный символ

    Icp=H(u)/ncp = 0,0885.

    Задача 4. Закодировать сообщение методом Шенно-Фано «Теория информацииКодированияМодуляции».

    Решение

    Составляется алфавит кода и для каждого символа этого алфавита и определяется вес [количество повторений символа в сообщении].

    Т – 1, Е – 1, О – 5, Р – 3, И – 8, Я – 3, Н - 2, Ф - 1, М - 2, А - 2, Ц - 2, К - 1, Д - 2, В - 1, У - 1, Л – 1.

    Алфавит ранжируется по убыванию веса символа.

    И – 8, О – 5, Р – 3, Я – 3, А – 2, Д – 2, Н – 2, Ц – 2, М – 2, Т – 1, Е – 1, Ф – 1, К - 1, В – 1, У - 1, Л – 1.

    Далее создается таблица символов:

    Буквы

    Частота

    1-й

    2-й

    3-й

    4-й

    5-й

    6-й

    Код

    И

    8

    0

    0













    00

    О

    5

    1

    0

    010

    Р

    3

    1

    0

    0110

    Я

    3

    1

    0111

    А

    2

    1

    0

    0

    0

    1000

    Д

    2

    1

    1001

    Н

    2

    1

    0

    1010

    Ц

    2

    1

    1011

    М

    2

    1

    0

    0

    1100

    Т

    1

    1

    0

    11010

    Е

    1

    1

    11011

    Ф

    1

    1

    0

    0

    11100

    К

    1

    1

    11101

    В

    1

    1

    0

    11110

    У

    1

    1

    0

    111110

    Л

    1

    1

    111111

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

    11010 11011 010 0110 00 0111 00 1010 11100 010 0110 1100 1000 1011 00 00 11101 010 1001 00 0110 010 11110 1000 1010 00 0111 1100 010 1001 111110 111111 0111 1011 00 00

    Задача 5. Построить код Шенно-Фано для системы из семи букв: A, B, C, D, E, F, G, вероятности появления которых соответственно 0,1, 0,2, 0,05, 0,3, 0,05, 0,15, 0,15. Определить среднее количество разрядов на одну букву. Декодировать этим кодом последовательность:

    10011101001000111101110101111000.

    Решение

    Составим таблицу кодов для символов алфавита

    Буквы

    Вероятность

    1-й

    2-й

    3-й

    4-й

    Код

    D

    0,3

    0

    0







    00

    B

    0,2

    1







    01

    F

    0,15

    1

    0

    0




    100

    G

    0,15

    1




    101

    A

    0,1

    1

    0




    110

    E

    0,05

    1

    0

    1110

    C

    0,05

    1

    1111

    10011101001000111101110101111000

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

    100 1110 100 100 01 1110 1110 101 1110 00

    Полученный результат:

    FEFFBEEGED

    Определим среднюю информацию, содержащуюся в одной букве передаваемого текста, т.е. энтропия на одну букву:



    Неопределенность на одну букву:



    Определим среднее число элементарных символов на букву как произведение количества символов кода на вероятность появления данной буквы:



    Информация на один элементарный символ:





    Задача 6. Провести эффективное кодирование ансамбля из восьми знаков (m=8), используя метод Шенно-Фано.
      1   2   3


    написать администратору сайта