Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТИМ1.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
390.14 Кб
Скачать

6.3. Оптимальне кодування

При побудові оптимальних кодів найбільш розповсюджені методики Шеннона-Фано і Хаффмена. Згідно з методикою Шеннона-Фано побудова оптимального коду ансамблю із повідомлень полягає у такому:

1-й крок. Множина із повідомлень розташовується у порядку спадання ймовірностей.

2-й крок. Початковий ансамбль сигналів, що кодуються, розбивається на дві групи таким чином, щоб сумарні імовірності повідомлень обох груп були по можливості рівні. Якщо рівної імовірності у підгрупах досягти не вдається, то їх ділять так, щоб у верхній частині (верхній підгрупі) залишались символи, сумарна імовірність яких менше сумарної ймовірності символів у нижній частині (у нижній підгрупі).

3-й крок. Першій групі присвоюється символ 0, другій групі – символ 1.

4-й крок. Кожну з утворених пілгруп ділять на дві частини таким чином, щоб сумарні ймовірності знову утворених підгруп були по можливості рівні.

5-й крок. Першим групам кожної із підгруп знову присвоюється 0, а другим – 1. Таким чином, одержуємо другі цифри коду. Потім кожна з чотирьох груп знову діляться на рівні (за сумарною імовірністю) частини до тих пір, поки в кожній із підгруп не залишиться по одній літері.

Згідно з методикою Хаффмена, для побудови оптимального коду N символи первинного алфавіту виписуються у порядку спадання імовірностей. Останні п0 символів, де 2  п0 т і (N-n0)/(m-1) – ціле число, об’єднують в деякий новий символ з імовірністю, яка дорівнює сумі ймовірностей об’єднаних символів. Останні символи з врахуванням утвореного символа знову об’єднують, одержують новий, допоміжний символ, знову виписують символи у порядку спадання імовірностей з врахуванням допоміжного символа і т.д. до тих пір, поки сума імовірностей т символів, які залишилися, після (N-n0)/(m-1)-го виписування в порядку спадання імовірностей не дасть імовірність, що дорівнює 1. На практиці не проводять багаторазового виписування ймовірностей символів з врахуванням допоміжного символу, а обмежуються елементарними геометричними побудовами так, що символи алфавіту, який кодується, попарно об’єднуються в нові символи, починаючи з символів, які мають найменшу ймовірність. Потім з урахуванням заново утворених символів, котрим присвоюється значення сумарної імовірності двох попередніх, будують кодове дерево, у вершині якого стоїть символ з імовірністю 1. При цьому відпадає необхідність в упорядкуванні символів первинного алфавіту в порядку спадання імовірностей.

Побудовані за цими методиками коди з нерівномірним розподіленням символів, які мають мінімальну середню довжину кодового слова, називають оптимальними нерівномірними кодами (ОНК). Рівномірні коди можуть бути оптимальними тільки для передачі повідомлень з рівноймовірним розподіленням символів первинного алфавіту, при цьому кількість символів первинного алфавіту має дорівнювати цілому степені числа, що дорівнює кількості якісних ознак вторинного алфавіту, а у випадку двоїчних кодів – цілому степені двох.

Максимально ефективними будуть ті ОНК, у яких

N

log2mpil = lc =H. (6.11)

i=1