Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
4.2. Кластерный подход к декодированию полиномиальных кодовОдной из распространенных
метрик, используемой при декодировании помехоустойчивых кодов, является метрика
Евклида. Если обозначить переданный вектор через
Применяя данный подход к
двумерной декартовой плоскости, можно отобразить
Непосредственное вычисление кодовых векторов дает их значения: 0000002; 0011012; 0100112; 0111102; 1001102; 1010112; 1101012; 1110002.
Разделим двоичные символы
каждого вектора на две части. Первую часть символов примем за координату
Рис. 4.2. Геометрическое представление на плоскости комбинаций кода (6,3,3)
Поскольку групповой код (6,3,3) является укороченным, в нем отсутствует единичный элемент группы с координатами (7;7)10. Используя данную методику, представим для наглядности в подобной форме (см. рис. 4.3) множество комбинаций кода БЧХ (15,7,5).
Рис. 4.3. Топология комбинаций кода БЧХ (15,7,5)
Укороченный код обеспечивает получение более ясной картины и поэтому будет использован для дальнейших рассуждений. Полученная конфигурация кодовых комбинаций говорит о центральной симметрии значений кодовых векторов, которая непосредственно вытекает из свойств прямого и дуального кода. Расстояние между комбинациями на плоскости не может быть истолковано как метрика Хэмминга, поэтому удаление одной комбинации относительно других на плоскости не является мерой их защищенности, а метрика Евклида оказывается справедливой только при представлении принятого вектора (возможно искаженного) в выбранной системе счисления. На рис. 4.4 точками
показана каноническая топология кодовых комбинаций кода (6,3,3), а
треугольниками показаны координаты точек при искажении младших разрядов
нулевого вектора. При этом заметно, что возможные варианты искажений двух самых
младших разрядов координаты Выделенное пространство не включает в себя ни одного разрешенного кодового вектора и представленные искажения могут быть интерпретированы как стирания, которые данный код гарантированно исправляет.
Рис. 4.4. Конфигурация нулевого вектора при искажении его младших разрядов
При искажении двух младших разрядов координат прямоугольник увеличивает свою площадь и в новых условиях ограничивается точкам с координатами (0;0), (0;3), (3;3) и (3;0), при этом в защитную зону нулевого вектора попадает разрешенная комбинация кода (2;3). Поиск защитных зон для вектора
(2;3) по аналогичной схеме показывает, что эти зоны будут совпадать с
прямоугольником, определенным для нулевого вектора. Для исключения подобного
совпадения целесообразно применить метод кластерного анализа, который позволяет
разбить исследуемую совокупность объектов на группы похожих по каким-либо
признакам объектов, называемых кластерами. Кластерный анализ предполагает, что
выделенные в один класс объекты должны находиться на близких расстояниях
относительно друг друга, а объекты разных классов на относительно отдаленных
расстояниях. При этом каждый объект На основании определения
кластера не все разряды кодовых векторов определим в качестве нумераторов
координат, а только их часть. При этом выделенные разряды и не вошедшие в новый
порядок нумерации координат Трансформируем список кодовых комбинаций кода (6,3,3) с учетом изложенного правила, выделяя под номер кластера первые два разряда. К кластеру с нулевым номером будут отнесены комбинации: 000000 и 001101; к первому кластеру – комбинации 010011 и 011110; ко второму кластеру – комбинации 100110 и 101011; к третьему кластеру – комбинации 110101 и 111000. Комбинации, отнесенные к одному кластеру в новых условиях будут иметь большие защитные зоны, которые позволяют эффективно использовать введенную в код избыточность. Новая топология комбинаций внутри кластеров приведена на рис. 4.5.
Рис. 4.5. Топология комбинаций кода (6,3,3), разбитых на кластеры
Решение проблемы декодирования блочных кодов алгебраическими методами, опирающихся на критерий максимума правдоподобия и метрику Хэмминга натолкнулась на проблему сложности декодера, исправляющего от трех и более ошибок. После указанного порога, трудности технической реализации декодера возрастают экспоненциально относительно кратности исправляемых ошибок. Это привело к созданию неалгебраических методов исправления ошибок, построению каскадных схем кодирования – декодирования с последовательным включением декодеров и схем турбо кодирования с параллельным включением декодеров. Суть рассматриваемого в работе способа обработки кодовых векторов заключается в том, что все множество разрешенных комбинаций блокового кода разбивается на подмножества (кластеры), определяемые по заранее оговоренном принципу, с последующим определением принятого вектора по метрике Евклида внутри кластера. Для этого символы кодовой комбинации разбиваются на две группы, каждая из которых образуют координаты по двум осям координатной плоскости. Такое разбиение приводит к размещению разрешенных комбинаций кода в трехмерном пространстве, при этом номера кластеров образуют плоскости, для которых известны координаты кодовых векторов, принадлежащие данному кластеру. Применение на практике данного метода требует доказательства ряда утверждений, основанных на алгебраической теории групп, колец и полей. Пусть общее число
комбинаций группового кода равно Утверждение 1. Если число двоичных символов, определяющих признак
кластера равно Следствие 1.1. При В множество комбинаций
при циклическом сдвиге любого Действительно, Утверждение 2. Циклический сдвиг строки с номером Следствие 2.1. Номера комбинаций прямого и дуального циклического
кода, упорядоченные по циклическим сдвигам строки с номером В качестве примера в
табл. 4.1 приведены упорядоченные по указанному принципу номера кодовых
комбинаций и соответствующие им номера кластеров кода (15;5;7) с порождающим
полиномом Табл. 4.1 Упорядоченные номера кодовых комбинаций и соответствующие им номера кластеров
Указанная информация
полностью содержится в строке Порождающая матрица произвольного циклического кода может быть приведена к модифицированной приведено-ступенчатой форме. При этом каждая строка новой матрицы определяется соотношением
где Поскольку степень В алгебре многочленов по
модулю В систематическом коде
порядковый номер информационного вектора автоматически переносится на порядковый
номер разрешенного вектор избыточного кода. Выделим Умножение на Если Утверждение 3. Для любого двоичного циклического кода с установленной базовой структурой бит, определяющей номер кластера, возможна однозначная идентификация номера кластера по любой другой группе двоичных символов адекватной базовой структуре. Рассмотренное свойство позволяет установить номер кластера зафиксированного приемником кодового вектора в случае его искажения при передаче по каналу связи. Для этого может быть использована другая группа разрядов той же кодовой комбинации, которые оказались принятыми с высокими значениями ИДС. Подобный подход не исключает применения и итеративных преобразований разрядов кодового вектора в комплексе с известными проверочными соотношениями. Пример. Пусть задан циклический код
(15;5;7). Представляя его в двоичной форме, получим
Выделим последнюю строку
матрицы, отделив условно
Умножая этот вектор на
1; 16; 24; 28; 14; 23; 27; 13; 6; 19; 9; 20; 10; 5; 2.
Эта последовательность может быть использована для восстановления признака кластера в случае поражения символов, определяющих признак кластера, помехой. Пусть был передан вектор
с номером 19: 100110111000010 и пусть установленная структура символов для определения
номера кластера представляется тремя последними подряд, идущими символами ( Пусть структура вектора
на приеме имеет вид: 10011Х111000ХХХ, где символом Х отмечены стертые
символы, принятые с наименьшими оценками достоверности. Приемник в сложившейся
ситуации оценивает первые три подряд идущих символа (структура бит,
определяющих номер кластера, не меняется) с получением № 4. Поскольку эти
символы представляют циклический сдвиг последних разрядов на три шага вправо,
то в последовательности номеров образованных при циклических сдвигах последней
строки Упорядочим разрешенное
множество кодовых комбинаций корректирующего кода в порядке возрастания номеров
комбинаций безызбыточного кода. Примем эти номера за часть разрядов координат
для
Здесь коэффициенты В циклических кодах часть
кодового вектора, принадлежащая координате Утверждение 4. При разбиении множества кодовых комбинаций на
кластеры ни одно значение координат взятых отдельно по подмножеству Следствие 4.1. Любой вектор может быть восстановлен по признаку
кластера и значению только одной из координат Следствие 4.2. При хорошем состоянии канала связи относительная скорость передачи кода может быть повышена за счет выкалывания значений одной из координат и восстановления кодового вектора по признаку кластера и параметра только одной координаты. Следствие 4.3. Каждый разряд любой координаты Вновь рассмотрим код Хэмминга (7,4,3), список кодовых комбинаций, которого представлен табл. 4.2. Табл. 4.2 Список кодовых комбинаций кода Хэмминга (7,4,3)
В табл. 4.2 в колонках 2 и 8 выделены первые три разряда каждой кодовой комбинации, определяющие координату Х в двоичной форме. Соответствующие значения этой координаты в десятичной форме приведены соответственно в колонках 6 и 11. Таким же образом определяются координаты Y2 в колонках 3 и 9, а также Y10 в 6 и 12. В колонках 4 и 10 оставшиеся разряды каждой кодовой комбинации определяют номер кластера, например, комбинации с номерами 1; 3; 4 и 6 относятся к кластеру 2. Номера кластеров показаны курсивом. Представим комбинации каждого из четырех образованных кластеров на плоскости с декартовой системой координат.
Рис. 4.6. Созвездия комбинаций кода (7,4,3), распределенных по кластерам
Очевидными особенностями такого разбиения комбинаций кода (7,4,3) являются:
Принципиально под
значения координат при других параметрах кода и иной нумерации кластеров могут
выделяться одинаковое число разрядов. В этом случае значения кодовых комбинаций
с симметричными координатами будут определяться по модулю Применение кластерного подхода предполагает декодирование комбинаций по списку. В современных условиях это не является сложной задачей, поскольку прогресс в создании систем памяти значителен, а методы алгебраического декодирования кодов сохранили классическую форму. При алгебраическом декодировании декодер связан обязательной процедурой составления системы линейных уравнений и ее решения. Сложность этой процедуры зависит от конфигурации ошибок и не может быть решена итеративными методами. Предлагаемый подход позволяет повысить корректирующие возможности кода. Код (7,4,3), способен гарантированно исправить одну ошибку или два стирания. Исправление стираний более высокой кратности связано с изучением весовой структуры кода, на основе переборных методов поиска соседних комбинаций относительно исправляемой. При кластерном подходе исключаются методы перебора. Все зависит от правильности определения кластера и старших разрядов координат. Рассмотрим это на примере кластера 1 (см. рис. 4.7).
Рис. 4.7. Расстановка защитных зон в кластере № 1
Если они правильно
идентифицированы, то кластерный подход позволяет игнорировать младшие разряды
при декодировании, т.е. представить их в виде стираний. В этом случае код
исправляет В общем случае методика
получения защитных зон заключается в определении диапазона изменения допустимых
границ при перемещении кодовой комбинации в ходе искажения младших разрядов.
Поскольку для координаты Х выделяется В целом сочетания максимальных и минимальных значений координат дают четыре числа, которые определяют границы возможных изменений для данного вектора. Следовательно, любые наборы искажений младших разрядов могут быть исправлены при условии, что номер кластера, к которому принадлежит комбинация и старшие разряды координат определены достоверно. Докажем это свойство более строго. Утверждение 5. Любые искажения координат,
относящиеся к одной кодовой комбинации и содержащие Для доказательства рассмотрим код БЧХ (15,5,7) с порождающим полиномом g(x)=24678. Приведем список кодовых комбинаций и их разбиение на кластеры (таб. 4.3). В этой таблице наряду с прямыми координатами векторов приведены и, так называемые, инвариантные значения координат, суть которых будет показана ниже. Рассмотрим случай, когда в кластере находится четыре комбинации (доказательство нетрудно обобщить на другие условия). Табл. 4.3 Список кодовых комбинаций кода с g(x) = 24678
Рис. 4.8.
Топология кластеров кода БЧХ (15,5,7) при В приведенном примере
координаты
для вертикальной границы [( для горизонтальной границы [0; (
В приведенном примере легко заметить то, что расстояние между комбинациями кластера № 4 (30;44) и (35;53) минимально, и с точки зрения метрики Евклида эти комбинации могут легко перейти одна в другую. Применяя метрику
кластерного анализа, покажем, что это произойдет только при искажении старших
разрядов координат. Выберем, например, комбинацию с координатами (35;53) Искажение младших разрядов координат приведет к образованию следующих последовательностей:
Заметно, что миграция
рабочей точки в плоскости защитной зоны при переборе всевозможных искажений
младших разрядов координат минимальна, т.к. вес этого разряда при переходе При искажении пятого разряда получим:
Поскольку
границами данного прямоугольника защитной зоны являются прямые Придавая младшим разрядам координат граничные значения: только все нули или только все единицы, можно установить области изменения координат, как это показано на рис. 4.9.
Рис. 4.9. Изменение защитных зон при искажении координат
Утверждение 5
открывает принципиальную возможность назначить весовые коэффициенты для
стертых позиций. Это исключает методы перебора при восстановлении стираний или
позволяет целенаправленно снижать степень расширения двоичного поля Галуа в
целях сокращения времени при переборе стираний старших разрядов. Указанное
свойство имеет важное прикладное значение. Суть его заключается в том, что при
хорошем состоянии канала связи в каждой координате В случае искажения
старшего разряда одной из координат кодовой комбинации ресурсом декодера
является надежная фиксация другой координаты. При искажении старших разрядов
декодер переходит к инвариантному коду координат. Инвариантным кодом координат
называется такое представление истинных координат, при котором позиция
Рис. 4.10. Пример искажений в младших разрядах значений координат Иначе выглядит картина
при искажении самого старшего разряда из группы символов, определяющих
координату кодового вектора. Рис. 3.6 представляет случай, когда в координате
Рис.
4.11. Пример искажения старшего разряда координаты
Признаком такого искажения может быть низкая оценка достоверности приема данного символа, следовательно, в рассматриваемом алгоритме декодирования должна быть предусмотрена процедура проверки оценок достоверности старших разрядов координат. В случае низких оценок надежности старших разрядов координат декодер переходит к инвариантному коду, что приводит к успешному определению принятого вектора. Пример такого перехода показан на рисунке 4.12. Заметно, что применение такого кодирования переводит комбинацию в нужную защитную зону и ее идентификация не вызывает сомнений. Одновременное искажение старшего и младшего разряда одной координаты может быть оценено сверху выражением
Рис. 4.12. Пример восстановления кодовой комбинации за счет применения инвариантного кода
На основании утверждения 1 целесообразно использовать в качестве символов, определяющих номер кластера информационные разряды. В эту же группу целесообразно включить и старшие разряды координат. При больших значениях
Покажем возможность определения структуры кластеров для кода с большим значением информационных разрядов. Утверждение 6. Полное множество всех возможных
кластеров блокового систематического кода может быть образовано путем линейной
комбинации строк порождающей матрицы. Действительно, определив разряды кодовых
комбинаций, указывающих на номер кластера (параметр Выражение (4.10) указывает на два представителя кластера с нулевым номером. Линейно комбинируя строки между собой, получаем третий вектор: 000000000110001, а чисто нулевой вектор дополняет этот кластер до полного множества комбинаций (см. табл. 4.4.). Табл. 4.4 Комбинации кластера с № 010
Выделим кластер с номером
51110 или 1111111112. Для этого необходимо оперировать со
всеми строками матрицы Табл. 4.5 Комбинации кластера с № 51110
Было показано, что все
кластеры группового кода, номера которых в сумме дают значение
Рис. 4.13. Созвездие комбинаций кластеров 0 и 511
Утверждение 7. Учитывая структуру порождающей матрицы Назначение номеров кластеров
со стороны единичной матрицы, порождающей матрицы
|
1 |
Оглавление
|