Федеральное агентство связи

Сибирский Государственный Университет Телекоммуникаций и Информатики

Межрегиональный центр переподготовки специалистов

Контрольная работа


По дисциплине: Теория информации



Выполнил:

Группа: ПБТ-22

Вариант: 6

Проверил: ___________________

Новосибирск, 2013 г

Контрольная работа

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


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

ФИО: ИВАНОВ ПАВЕЛ ЮРЬЕВИЧ

И

В

А

Н

О

П

Е

Л

Ю

Р

Ь

Ч

Частота

2

4

2

1

1

1

2

1

1

1

1

1

Вероятность

0.11

0.22

0.11

0.06

0.06

0.06

0.11

0.06

0.06

0.06

0.06

0.06


Упорядочим по вероятностям:

Н

О

П

Л

Ю

Р

Ь

Ч

И

А

Е

В

Вероятность

0.06

0.06

0.06

0.06

0.06

0.06

0.06

0.06

0.11

0.11

0.11

0.22


Буква

Код

В

10

Е

110

П

0000

Л

0001

Н

0010

О

0011

Ь

0100

Ч

0101

Ю

0110

Р

0111

И

1110

А

1111


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

Lср = 0.22 * 2 + 0.11 * 3 + (0.11 * 2 + 0.06 * 8) * 4 = 0.44 + 0.33 + 2.8 = 3.57



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

ФИО: ИВАНОВ ПАВЕЛ ЮРЬЕВИЧ

НЕ нашли? Не то? Что вы ищете?

Буква

Вероятность

Кодовое слово

Длина

В

0.22

0

0

0

3

Е

0.11

0

0

1

3

А

0.11

0

1

0

3

И

0.11

0

1

1

3

Ч

0.06

1

0

0

0

4

Ь

0.06

1

0

0

1

4

Р

0.06

1

0

1

0

4

Ю

0.06

1

0

1

1

4

Л

0.06

1

1

0

0

4

П

0.06

1

1

0

1

4

О

0.06

1

1

1

0

4

Н

0.06

1

1

1

1

4


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

Lср = 0.22 * 3 + 0.11 * 3 * 3 + 0.06 * 8 * 4 = 0.66 + 0.99 + 1.92 = 3.57



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

ФИО: ИВАНОВ ПАВЕЛ ЮРЬЕВИЧ

Буква

Pi

Qi-1

Li

Кодовое слово

В

1/23≤0.22<1/22

0

3

000

Е

1/24≤0.11<1/23

0.22

4

0011

А

1/24≤0.11<1/23

0.33

4

0101

И

1/24≤0.11<1/23

0.44

4

0111

Ч

1/25≤0.06<1/24

0.55

5

10001

Ь

1/25≤0.06<1/24

0.61

5

10011

Р

1/25≤0.06<1/24

0.67

5

10101

Ю

1/25≤0.06<1/24

0.73

5

10111

Л

1/25≤0.06<1/24

0.79

5

11001

П

1/25≤0.06<1/24

0.85

5

11011

О

1/25≤0.06<1/24

0.91

5

11101

Н

1/25≤0.06<1/24

0.97

5

11111


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

Lср = 0.22 * 3 + 0.11 * 3 * 4 + 0.06 * 8 * 5 = 0.66 + 1.32 + 2.4 = 4.38



      Закодировать первые три буквы своего имени арифметическим кодом. Для оценки вероятностей символов использовать частоты вхождения букв в ФИО.

ФИО: ИВАНОВ ПАВЕЛ ЮРЬЕВИЧ

И

В

А

Н

О

П

Е

Л

Ю

Р

Ь

Ч

Частота

2

4

2

1

1

1

2

1

1

1

1

1

Вероятность

0.11

0.22

0.11

0.06

0.06

0.06

0.11

0.06

0.06

0.06

0.06

0.06


Вычислим кумулятивные вероятности:

Q0 = 0

Q1 = 0.11

Q2 = 0.33

Q3 = 0.44

Q4 = 0.50

Q5 = 0.56

Q6 = 0.62

Q7 = 0.73

Q8 = 0.79

Q9 = 0.85

Q10 = 0.91

Q11 = 0.97

Q12 = 1

Имя: Павел

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

l1 = l0 + r0 * Q6-1 = 0 + 1 * 0.56 = 0.56

h1 = l0 + r0 * Q6 = 0 + 1 * 0.62 = 0.62

r1 = h1 – l1 = 0.62 – 0.56 = 0.06

Для второго символа (А)  кодируемого сообщения  границы интервала будут следующие:

l2 = l1 + r1 * Q3-1 = 0.56 + 0.06 * 0.33 = 0.5798

h2 = l1 + r1 * Q3 = 0.56 + 0.06 * 0.44 = 0.5864

r2 = h2 – l2 = 0.5864 – 0.5798 = 0.0066

Для третьего символа (В):

l3 = l2 + r2 * Q2-1 = 0.5798 + 0.0066 * 0.11 = 0.580526

h3 = l2 + r2 * Q2 = 0.5798 + 0.0066 * 0.33 = 0.581978

r3 = h3 – l3 = 0.581978 – 0.580526 = 0.001452

Кодом последовательности  “ПАВ” будет двоичная запись любой точки из интервала [0.580526, 0.581978), например, 0.580526. Для однозначного декодирования возьмем  –log r3 = –log 0.001452 = 10 разрядов (с округлением до большего целого).

Получим код: 1001010010



      Закодировать последовательность из 10 букв ФИО адаптивным кодом Хаффмана (размер окна 6).

ФИО: ИВАНОВ ПАВЕЛ ЮРЬЕВИЧ

Последовательность из 10 букв ФИО: ИВАНОВПАВЕ

Кодируем 7-ой символ (П):

Символы

Вероятности

Кодовые слова

И

1/6

101

В

1/3

0

А

1/6

100

Н

1/6

111

О

1/6

1101

П

0

11001

Е

0

11000

Символ П кодируем кодовым словом 11001

Кодируем 8-ой символ (А):

Символы

Вероятности

Кодовые слова

И

0

11001

В

1/3

0

А

1/6

101

Н

1/6

100

О

1/6

111

П

1/6

1101

Е

0

11000

Символ А кодируем кодовым словом 101

Кодируем 9-ый символ (В):

Символы

Вероятности

Кодовые слова

И

0

11001

В

1/6

101

А

1/3

0

Н

1/6

100

О

1/6

111

П

1/6

1101

Е

0

11000

Символ В кодируем кодовым словом 101

Кодируем 10-ый символ (Е):

Символы

Вероятности

Кодовые слова

И

0

11001

В

1/3

0

А

1/6

101

Н

1/6

100

О

1/6

111

П

1/6

1101

Е

0

11000

Символ Е кодируем кодовым словом 11000

Таким образом, ИВАНОВПАВЕ кодируем так:

101  0  100  111  1101  0  11001  101  101  11000