Научная статья на тему 'Моделирование процессов мажоритарного декодирования комбинации эквидистантного кода по k линейно-независимым элементам'

Моделирование процессов мажоритарного декодирования комбинации эквидистантного кода по k линейно-независимым элементам Текст научной статьи по специальности «Математика»

CC BY
122
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАЖОРИТАРНОЕ ДЕКОДИРОВАНИЕ / ЭКВИДИСТАНТНЫЙ КОД / ЦИКЛИЧЕСКИЙ КОД / МОДЕЛИРОВАНИЕ

Аннотация научной статьи по математике, автор научной работы — Владимиров Сергей Сергеевич

Рассмотрен алгоритм декодирования комбинаций эквидистантного двоичного циклического кода с длиной n = 2k 1 по k линейно-независимым элементам последовательности. Приведены результаты, полученные при моделировании данного алгоритма. Выполнено сравнение этого алгоритма с другими методами декодирования указанных эквидистантных кодовI

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Владимиров Сергей Сергеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

n clause decoding algorithm of equidistant code combinations with lengh n = 2k 1 with k linear-independent elements is considered. Results of modelling of this algorithm are added in. Comparison with other decoding methods for such equidistant codes is included.

Текст научной работы на тему «Моделирование процессов мажоритарного декодирования комбинации эквидистантного кода по k линейно-независимым элементам»

= Д1^ (X?)] = =

= шт[174,4; 177,6; 179,8] = 174,4.

Таким образом, внешне-внутренним центром является вершина х®, для которой число внешне-внутреннего разделения минимальное: х* = х®. Внешне-внутренний радиус предфрактального графа 04 равен числу внешне-внутреннего разделения вершины х* : р = 8(х*) = 174,4.

Заметим, что внешний центр х* = х® совпадает с внешне-внутренним центром х = х®, а внутренним центром является другая вершина х*= х®. Внешне-внутренний радиус рог = 174,4.

Теорема 2. Вычислительная сложность алгоритма а3 равна 0(2п3 ■ Ы).

Доказательство. На первом шаге алгоритм работает на подграф-затравках Ь-го ранга 2(Ь), где находит числа внешне-внутреннего разделения вершин х(Ь), 8Ь = 1, 2, ..., и-1. Поиск числа внешне-внутреннего разделения на отдельно взятой подграф-затравке состоит из: 1) поиска пар кратчайших путей х(Ь) , V (ь) ) и й(у(Ь) , х^) и 2) выбора максимального элемента из сумм кратчайших путей х(Ь) , V(Ь) ) + й(V у , х^). Поиск кратчайших путей осуществляется с помощью процедуры Флойда, вычислительная сложность которого равна и3, а выбор максимального элемента или,

в худшем случае, сортировка элементов по возрастанию, требует выполнения также и2 операций [3]. Тогда поиск числа внешне-внутреннего разделения на одной подграф-затравке требует в сумме и3 + и2 < 2и3 операций. Число всех подграф-затравок Ь-го ранга равно иЬ1, для выполнения шага 1 или поиска всех ^(х^ ), 8Ь = 1, 2, ..., иЬ-1 требуется 2и3 ■ иЬ1 = 2иЬ+2 операций.

На следующем шаге осуществляется поиск чисел внешне-внутреннего разделения для вершин х8Ь-1), = 1, 2, ..., и-2 что требует 2и3-иЬ-2 = 2иЬ+1 операций. Продолжая поиск чисел внешне-внутреннего разделения вершин до второго ранга включительно, получаем: 2иЬ+2+2иЬ+1 + 2иЬ +...+2и4. На последнем шаге осуществляется поиск чисел внешне-внутреннего разделения для вершин х(1) , 81 = 1, 2, ..., и, что требует и3 + и3 = 2и3 операций плюс поиск максимального элемента и2 операций.

В сумме получаем:

2иЬ+2 + 2иЬ+1 + 2иЬ + ... + 2и4 + 2и3 + и2 <

< 2иЬ+2 + 2иЬ+1 + 2иЬ +...+ 2и4 + 2и3 + 2и2 =

= 2

nL+2 ■ n - n2

n -1

< 2nL+3- n2 < 2nL+3- nL = 2n3- Ж

Таким образом, вычислительная сложность

алгоритма а3 равна O(2n3 ■ N). СПИСОК ЛИТЕРАТУРЫ

1. Кочкаров, А.М. Распознавание фрактальных графов. Алгоритмический подход [Текст]/А.М. Кочкаров. -Нижний Архыз: РАН САО, 1998.

2. Кристофидес, Н. Теория графов. Алгоритмиче-

ский подход [Текст]/Н. Кристофидес.-М.: Мир, 1978.

3. Асанов, М.О. Дискретная математика: графы, матроиды, алгоритмы [Текст]/М.О. Асанов, В.А. Баранский, В.В. Расин.-Ижевск: НИЦ «РХД», 2001.

УДК 621.391

С.С. Владимиров

МОДЕЛИРОВАНИЕ ПРОЦЕССОВ МАЖОРИТАРНОГО ДЕКОДИРОВАНИЯ КОМБИНАЦИИ ЭКВИДИСТАНТНОГО КОДА ПО k ЛИНЕЙНО-НЕЗАВИСИМЫМ ЭЛЕМЕНТАМ

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

уменьшает скорость передачи информации в канале. Вместе с тем, алгоритмы их декодирования имеют ограниченную способность исправления ошибок. В связи с этим возникает необходимость разработки и исследования новых алгоритмов

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

В статье рассмотрен алгоритм декодирования комбинаций эквидистантного двоичного циклического кода с длиной п = 2к - 1 по к линейно-независимым элементам последовательности, а также приведены результаты, полученные при моделировании данного алгоритма. Выполнено сравнение этого алгоритма с другими методами декодирования указанных эквидистантных кодов. В качестве критериев сравнения выбраны вероятности правильного и ложного декодирования.

Комбинации эквидистантного циклического кода (п, к) представляют собой М-последователь-ности или коды максимальной длины, порождаемые некоторым примитивным многочленом степени к. В общем случае комбинация такого кода для простого поля GF( р) имеет длину п = рк - 1, первые к элементов которой являются информационными. Все ненулевые комбинации эквидистантного циклического кода над простым полем GF( р) имеют одинаковый вес, равный ю = рк-1( р - 1). Следовательно, минимальное кодовое расстояние равно = рк-1( р - 1), а для двоичных кодов - = 2к-1. В дальнейшем, в статье вместо термина «комбинация эквидистантного циклического кода» будет использоваться термин «М-последовательность» или термин «последовательность максимальной длины» (ПМД).

Математический аппарат исследуемого алгоритма подробно описан в [1]. Поэтому рассмотрим этот вопрос очень кратко.

Зададим некоторую рекуррентную последовательность максимальной длины в общем виде через функцию-след:

{5} = [^ ^ 5 ... ^ = [Г(8»)Г(8»+1) ... Т(ет+р-2)] = = [Т(с)Т(се) ... Т(се рк-2)]. (1)

Последовательность {5} полностью определяется видом характеристического многочлена и начальной фазой с = ет. Соответственно, если характеристический многочлен задан заранее, то задача декодирования М-последовательности сводится к определению начальной фазы с = ет.

Для решения поставленной задачи выберем к линейно-независимых элементов последовательности {5}, а именно 5 , 5 , 5 , ..., 5 , из которых

' ¡1 ¡2 ¡3 'к

составим систему уравнений:

5. = Т(е"+<1) = Т(се ¡1), 5.2 = Т(е"+<2) = Т(се ¡2),

5. = Т(е"+'к) = Т(се ¡к).

Данную систему уравнений путем некоторых преобразований можно привести к виду:

где

5 =

Л

5 = 0 ■А,

© — Р}Вп —

(3)

/о,о /од /1,0 /1,1

/о,*-1 /1,4-1

к-1.

Л-1,0 /к-1,1 ''' /к-1,к-1

Если эта система уравнений линейно-независима, то ее решение относительно элемен-_1 дает векторное представление

тов а,, а

1

т

элемента ет, определяющего начальную фазу последовательности {5}.

Для решения системы уравнений (3) используем следующую формулу:

А = 01 ■ 5, (4)

где 0-1 - обратная матрица для матрицы 0.

Перебирая таким образом все к-элементные линейно-независимые комбинации, можно организовать мажоритарную обработку М-последова-тельности.

При этом возникает задача определения количества возможных линейно-независимых к-элементных комбинаций и самих этих комбинаций.

Существует два способа решения данной задачи. Это аналитический метод, который позволяет определить лишь количество линейно-независимых комбинаций, и метод программного моделирования, который определяет также и сами комбинации.

Аналитический метод подробно описан в [1], поэтому рассмотрим основные моменты метода.

Произвольные к-элементов М-последователь-ности ф представим в виде многочлена:

U(x) = s. xJ + s. xJ + ... s. xJt. (5)

V ' Jl J2 Jk V '

Выборка элементов s ., Sj , ..., s.^ будет линейно зависимой в том случае, если среди ненулевых элементов многочлена U(x) найдутся такие, что их сумма будет представлять собой ненулевой многочлен 9j(x) сравнимый с нулем по модулю характеристического многочлена P(x) степени к.

Так как многочлен 9t(x) делится без остатка на многочлен P(x), то он будет соответствовать определенной разрешенной кодовой комбинации эквидистантного циклического кода. Поэтому для определения количества k-элементных сочетаний M-последовательности, среди которых будут линейно зависимые, достаточно найти весовой спектр такого циклического кода.

Для двоичных циклических кодов весовой спектр находится по формуле:

1 Г л-4 я+11

/(г) = — (1 + z)n + n(l + - zy . (6)

Общее число линейно-независимых k-элементных сочетаний элементов принимаемой M-последовательности равно:

B = CkN-A = CkN- £CkN~_l А(ю). (7)

Ш-0>тт

Для примера определим число линейно-независимых сочетаний для двоичной M-последовательности с характеристическим многочленом P(x) = 1 + x+x4 и периодом N = 24 - 1 = = 15 (к = 4).

В соответствии с формулой (6), распределение весов Л(а>) кодовых слов будет следующим:

/(z) =^[(1 + z)15+15(1 + z)7(1-z)8] =

= 1 + 35 z3 + 105z4 + 168z5 + 280z6 + 435z7 + 435z8 +

+ 280z9 + 168zw + 105Z11 + 35z12 + z15.

Таким образом, согласно формуле (7) число линейно-независимых сочетаний в рассматриваемой M-последовательности будет равно:

В = С4 - ¿с,4"» А(ю) = 1365 - (12А(3) + А(4)) =

<0=3

= 1365-(12-35+ 105) = 840.

Теперь рассмотрим решение задачи определения количества возможных линейно-независимых к-элементных комбинаций путем моделирования. В данном случае моделирование представляет собой перебор всех возможных k-элементных комбинаций и проверку их на линейную независимость.

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

На рис. 1 показана блок-схема алгоритма определения возможных линейно-независимых к-элементных комбинаций и их количества.

Вычисления, проведенные по данному алгоритму, показали такое же количество к-элементных линейно-независимых комбинаций, как и вычисления, проведенные по аналитическому методу.

Учитывая все вышесказанное, составим алгоритм мажоритарного декодирования М-последовательности с характеристическим многочленом Р(х) степени к и периодом N = 2к _ 1. Фактически этот алгоритм представляет собой полный перебор всех возможных линейно-независимых к-элементных комбинаций и выполнение для каждой из них вышеприведенного алгоритма. После перебора всех комбинаций правильным считается ответ, полученный большее число раз (имеющий наибольший вес).

Каждой к-элементной линейно-независимой комбинации соответствует своя система уравнений (3) и, соответственно, своя обратная матрица для данной системы. Поэтому для отдельно взятого характеристического многочлена можно один раз вычислить список к-элементных линейно-независимой комбинаций и соответствующих им обратных матриц, записать их в память и при декодировании просто считывать их из памяти.

Линейно-независимые к-элементные комбинации удобно записывать в память в виде так называемых «масок» длиной N = 2к _ 1, в которых линейно-независимым элементам 5 , 5 , ..., 5 Г ¡1 ¡2 ¡к

соответствуют единицы на позициях г I ..., I а на остальных позициях стоят нули. В этом случае матрица 5 в системе (3) вычисляется путем перемножения «маски» и принятой М-последовательности.

Чтобы начать декодирование принимаемой М-последовательности, не дожидаясь приема всей последовательности, маски при записи следует сортировать по позиции ¡к.

Таким образом, декодирование может быть начато сразу же после получения первых к элементов М-последовательности.

Еще одной особенностью данного алгоритма является то, что при количестве «масок» С для определения правильного ответа достаточно получить С/2 + 1 одинаковых ответов. То есть декодирование может быть завершено еще до того,

Рис. 1. Алгоритм определения линейно-независимых А-элементных комбинаций и их количества

как будет получена вся М-последовательность и перебраны все «маски».

Если число одинаковых ответов меньше С/2 + 1, то может возникнуть ситуация, когда есть несколько ответов с одинаковым весом, при этом решение об ответе принимать нельзя, т. е. будет отказ от декодирования.

Учитывая все вышесказанное, соста-

вим алгоритм мажоритарного декодирования М-последовательности.

Необходимо отметить, что в алгоритме, показанном на рис. 2, подразумевается, что «маски» и соответствующие им обратные матрицы определены заранее по алгоритму, показанному на рис. 1, и хранятся в памяти декодера.

Проведем проверку корректирующих

Рис. 2. Алгоритм мажоритарного декодирования М-последовательности по А-элементным линейно-независимым комбинациям

свойств алгоритма мажоритарного декодирования последовательности максимальной длины для М-последовательности с характеристическим многочленом Р(х) = 1 + х + х4 и периодом N = 24 - 1 = 15.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

В качестве критерия выберем долю исправляемых ошибок различной кратности.

Для проверки была написана программа, моделирующая алгоритм, показанный на рис. 2. В данной модели на заданную М-последовательность накладываются по модулю 2 ошибки, начиная с ошибок кратности 1 и заканчивая ошибками той кратности, на которой ошибки перестают исправляться. Результатом выполнения модели является таблица соответствия количества верно исправленных ошибок их кратности.

В табл. 1 приведены результаты моделирования в сравнении с такими алгоритмами декодирования, как корреляционный (согласованные фильтры), табличный (на основании таблицы остатков от деления на образующий многочлен) и метод двойственного базиса (МДБ) с децимациями.

Как видно из таблицы, алгоритм мажоритарного декодирования по к произвольным линейно-независимым элементам по своим корректирующим свойствам совпадает с такими методами декодирования как корреляционный и табличный, а метод двойственного базиса с децимациями превосходит все эти методы по количеству исправляемых ошибок. При этом реализация алгоритма МДБ существенно проще из-за того, что в нем используется лишь 15 комбинаций-«масок» против 840 «масок» в исследуемом алгоритме. Результаты, полученные для исследуемого алгоритма, объясняются тем, что при числе ошибок большем трех возникает большое количество отказов в декодировании, вызванных появлением

максимумов одинакового веса и появлением не-обнаруживаемых ошибок.

Теперь проведем проверку корректирующих свойств исследуемого алгоритма при исправлении ошибок и стираний. Стирание представляет собой символ, о котором невозможно сказать на приемной стороне, равен он единице или нулю. Например [2], если при передаче двоичных символов по каналу с АБГШ с двоичной фазовой манипуляцией, т. е. с отображением 0 ^ +1 и 1 ^ —1, значение принятого сигнала слишком близко к нулю. Соответственно, стертую позицию невозможно использовать при «жестком» декодировании.

Для исправления ошибок и стираний необходимо изменить исследуемый алгоритм. При декодировании стираний, те «маски», которые попадают хотя бы на одну стертую позицию, отбрасываются. Поэтому при исправлении ошибок и стираний использование алгоритма МДБ с децимациями невозможно, поскольку каждое стирание исключает из процесса декодирования к «масок», что при наличии дополнительных ошибок не позволит получить верный результат. Использование табличного и корреляционного методов при стираниях также затруднено. Исследуемый же алгоритм, благодаря использованию большого числа «масок», позволяет получить выборку значений, по которым и выбирается результат. Блок-схема измененного алгоритма представлена на рис. 3.

Для проверки исправляющей способности исследуемого алгоритма при исправлении ошибок и стираний была написана программа, моделирующая алгоритм, показанный на рисунке.

В табл. 2 приведены результаты моделирования исследуемого алгоритма при исправлении ошибок и стираний.

Таблица 1

Сравнение исправляющей способности исследуемого алгоритма

с существующими алгоритмами декодирования

Кратность ошибок Общее количество ошибок Исследуемый метод Корреляционный метод Табличный метод МДБ с децимациями

1 15 15 (100 %) 15 (100 %) 15 (100 %) 15 (100 %)

2 105 105 (100 %) 105 (100 %) 105 (100 %) 105 (100 %)

3 455 455 (100 %) 455 (100 %) 455 (100 %) 455 (100 %)

4 1365 476 (34,9 %) 476 (34,9 %) 419 (30,7 %) 990 (72,5 %)

5 3003 0 0 0 825 (27,5 %)

6 5005 0 0 0 240 (4,8 %)

7 6435 0 0 0 75 (1,1 %)

8 6435 0 0 0 15 (<1%)

Рис. 3. Алгоритм мажоритарного декодирования М-последовательности по к-элементным линейно-независимым комбинациям для исправления ошибок и стираний

Таблица 2

Исправляющая способность исследуемого алгоритма при исправлении ошибок и стираний для (п, к) кода (15, 4)

Кратность стираний Кратность ошибок

0 1 2 3 4

Всего Исправл. Всего Исправл. Всего Исправл. Всего Исправл. Всего Исправл.

0 1 1 (100 %) 15 15 (100 %) 105 105 (100 %) 455 455 (100 %) 1365 476 (35 %)

1 15 15 (100 %) 14 14 (100 %) 91 91 (100 %) 364 364 (100 %) 1001 336-364 (33-36 %)

2 105 105 (100 %) 13 13 (100 %) 78 78 (100 %) 286 206-226 (72-79 %) 715 40-76 (5-10 %)

3 455 455 (100 %) 12 12 (100 %) 66 66 (100 %) 220 40-128 (18-58 %) 495 0-19 (0-3 %)

4 1365 1365 (100 %) 11 11 (100 %) 55 49-55 (89-100 %) 165 25-53 (15-32 %) 330 0

5 3003 3003 (100 %) 10 10 (100 %) 45 15-36 (33-80 %) 120 0-17 (0-14 %) 210 0

6 5005 5005 (100 %) 9 7-9 (77-100 %) 36 2-23 (5-63 %) 84 0-2 (0-2 %) 126 0

7 6435 6435 (100 %) 8 6-8 (75-100 %) 28 0-9 (0-32 %) 56 0 70 0

8 6435 6420 (99.8 %) 7 1-7 (14-100 %) 21 0-2 (0-9 %) 35 0 35 0

9 5005 4900 (98 %) 6 0-3 (0-50 %) 15 0 20 0 15 0

10 3003 2688 (90 %) 5 0 10 0 10 0 5 0

11 1365 840 (61 %) 4 0 6 0 4 0 1 0

12 455 0 3 0 3 0 1 0 0 0

Подводя итог, можно сделать ряд выводов о применимости алгоритма мажоритарного декодирования по к произвольным линейно-независимым элементам.

Результаты моделирования процессов мажоритарного декодирования комбинации эквидистантного кода по к линейно-независимым элементам, приведенные в табл. 1, показывают, что при использовании исследованного алгоритма только для исправления ошибок, его корректирующие свойства оказываются аналогичными корректи-

рующим свойствам корреляционного алгоритма декодирования. Моделирование работы алгоритма мажоритарного декодирования по к линейно-независимым элементам при исправлении ошибок и стираний показывает, что данный алгоритм позволяет восстанавливать достоверную кодовую комбинацию при потере до (п - 1)/2 элементов, что подтверждается данными моделирования, представленными в табл. 2. Таким образом, исследованный алгоритм можно рекомендовать к применению для исправления ошибок и стираний.

СПИСОК ЛИТЕРАТУРЫ

1. Когновицкий, О.С. Двойственный базис и его применение в телекоммуникациях [Текст]/О.С. Когновицкий.-СПб: Линк, 2009. - 424 с.

2. Морелос-Сарагоса, Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение [Текст]/Р. Морелос-Сарагоса; пер. с англ. В.Б. Афанасьева.-М.: Техносфера, 2005.-320 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.