Основы теории передачи информации

Декодирование методом максимального правдоподобия


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

Попытаемся определить наилучшее, или оптимальное, правило декодирования. 

Пусть U = (U0 , U1 ,…Ui

,… Un )  является переданным кодовым словом некоторого двоичного блочного (n,k)-кода, а r  = (r0 , r1 , … ri , ... rn )  - последовательность, принятая на выходе канала с помехами.

Принятая последовательность из-за действия шумов может отличаться от переданной, то есть по отдельным символам приемник мог принять неправильные решения (вместо нулей – единицы и наоборот).

Декодер канала на основе принятой последовательности  должен принять решение относительно переданного кодового слова. Процедура принятия такого решения и называется декодированием.

Если декодер не в состоянии правильно воспроизвести действительное кодовое слово, то есть m* ¹ m , то при декодировании возникнет ошибка. Эта ошибка случайна, ее вероятность зависит от характеристик канала связи, характеристик кода, метода кодирования и декодирования. Желательно, чтобы вероятность ошибочного декодирования была как можно меньшей.

Как должен работать декодер, чтобы вероятность ошибочного декодирования была минимальной?

Сначала рассмотрим ситуацию, когда приемник не принимает решений относительно того, какой из символов ri

( 0 или 1 ) в данный момент принят, то есть он отдает декодеру весь принятый сигнал S(t) и предоставляет право принимать решения самому декодеру.

Пусть Ul ,(l = 0, 1, 2, 3..2k - l) ? l-е кодовое слово используемого кода;

Uli  ? i-й символ этого кодового слова;

S(t)  - принятый сигнал, содержащий одно из кодовых слов и помеху.

Какое кодовое слово содержится в принятом сигнале, мы не знаем. Известна только априорная вероятность передачи l–го кодового слова - Pl.

Оптимальный декодер должен учитывать всю имеющуюся информацию об используемом коде, канале связи и помехах, действующих в этом канале, и обеспечивать максимальную вероятность правильных ответов о том, какие кодовые слова были переданы по каналу связи. Такой критерий оптимальности - максимум апостериорной (послеопытной) вероятности правильных решений  -  называется критерием Байеса.

Оптимальный по критерию Байеса декодер должен выбирать в качестве решения кодовое слово U* = Uk, которое максимизирует условную вероятность P(Uk/S) — вероятность того, что была передана последовательность Uk, если принята данная реализация сигнала S.



Содержание раздела