Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Turchin_D_E_Teoria_informatsii_Praktikum_2013.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
2.06 Mб
Скачать

Марковские источники сообщений.

Марковским источником называется дискретный источник сообщений с памятью 1-го порядка, работающий по схеме эргодического марковского процесса. Графы состояний марковских источников, имеющих два, три и четыре состояния, показаны на рис. 2.2.

Рис. 2.2. Графы состояний простейших марковских источников

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

;

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

(i = 1, 2, … , m).

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

(бит/символ); (2.1)

где p(sj | si) – условная вероятность появления символа sj при заданном символе si.

Для нахождения энтропии марковского источника требуется найти стационарное распределение вероятностей состояний p*(si) этого источника.

Пример 2.1. Разработка компьютерной модели дискретного источника сообщений с памятью.

Требуется разработать компьютерную модель дискретного источника сообщений с памятью. В качестве такого источника выступает марковский источник с алфавитом S = {s1, s2, s3, s4}, который описывается следующей матрицей переходных вероятностей:

i, j

s1

s2

s3

s4

s1

0,11

0,36

0,19

0,34

s2

0,27

0

0,45

0,28

s3

0,35

0,29

0,05

0,31

s4

0,23

0,48

0,29

0

В результате моделирования необходимо получить вероятности нахождения источника в состояниях s1, s2, s3, s4.

В качестве основы для создания компьютерной модели воспользуемся программным кодом, полученным в примере 1.5.

Для получения модели марковкого источника необходимо доработать класс DiskrIS, добавив в него вместо одномерного массива безусловных вероятностей двумерный массив переходных вероятностей p[m,m]. Также требуется добавить целочисленное поле z для хранения индекса текущего отправленного символа, что является памятью источника о своем состоянии.

Исправленный программный код класса DiskrIS представлен на рис. 2.3.

Рис. 2.3. Доработанный программный код класса DiskrIS

В методе GenSimv() класса DiskrIS добавлена проверка принадлежности случайного числа x определенному интервалу переходных вероятностей. Этот интервал выбирается как строка матрицы p[m,m] с номером равным значению z.

Результат работы консольного приложения при заданной длине исходного сообщения N = 50000 символов показан на рис. 2.4.

Рис. 2.4. Результат работы консольного приложения

Отсюда стационарное распределение вероятностей появления символов будет:

p*(s1) = 12102 / 50000 = 0,242;

p*(s2) = 13557 / 50000 = 0,271;

p*(s3) = 12511 / 50000 = 0,250;

p*(s4) = 11830 / 50000 = 0,237;

= 0,242 + 0,271 + 0,25 + 0,237 = 1.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]