ПРОБЛЕМЫ ПЕРЕДАЧИ ИНФОРМАЦИИ
Том 55
2019
Вып. 2
УДК 621.391.15
© 2019 г.
В.А. Давыдов
О ПРИМЕНЕНИИ МОДУЛЬНОЙ МЕТРИКИ К РЕШЕНИЮ ЗАДАЧИ
ДЕКОДИРОВАНИЯ ПО МИНИМУМУ ЕВКЛИДОВОГО РАССТОЯНИЯ
Доказывается эквивалентность использования модульной метрики и метрики
Евклида для решения задачи мягкого декодирования в дискретном канале без
памяти с двоичным входом и Q-ичным выходом. Дается пример конструкции
двоичных кодов для рассмотренного канала, исправляющих t двоичных оши-
бок в метрике Хэмминга. Построенные коды исправляют ошибки на выходе
демодулятора с Q уровнями квантования как (t + 1)(Q - 1) - 1 ошибок в мо-
дульной метрике. Указывается, что полученные коды имеют полиномиальную
сложность декодирования.
Ключевые слова: модульная метрика, метрика Евклида, мягкое декодирование,
канал с двоичным входом и Q-ичным выходом, коды в модульной метрике.
DOI: 10.1134/S0555292319020037
§ 1. Модель симметричного канала без памяти с двоичным входным
и Q-ичным выходным алфавитами
Симметричным каналом с двоичным входом и непрерывным выходом будем на-
зывать дискретный по времени канал со следующими свойствами:
Входной алфавит U ≡ {0, 1} состоит из двух символов, обозначаемых 0 и 1.
Обозначим через Un множество векторов длины n с элементами из множества U;
Выходной алфавит F представлен как множество вещественных чисел;
Выход f ∈ F в заданный отсчет времени зависит только от одного входного
символа;
Для всех выходов f выполняется свойство симметрии: Pr(f |0) = Pr(f +1|1). Под
Pr(f | x) понимается плотность распределения условной вероятности получения
из канала символа f при условии того, что по каналу передавался символ x ∈ U.
Пример функций Pr(f | 0) и Pr(f | 1) показан на рисунке.
Под вектором ошибки для кодового слова u = (u1, u2, . . . , un), ui ∈ U, длины n
будем понимать вектор e = (e1, e2, . . . , en), ei ∈ F , такой же длины, соответствующие
элементы которого равны разностям между вектором f = (f1, f2, . . . , fn), принятым
из канала, и передаваемым словом: ei = fi - ui, 1 i n.
Декодирование по максимуму правдоподобия кода G ⊂ Un означает нахождение
по заданному принятому вектору f такого кодового слова u ∈ G, которое макси-
мизирует вероятность того, что передавалось слово u при условии принятия век-
тора f: P(u|f) max [1]. Канал без памяти с аддитивным белым гауссовским
шумом согласован с метрикой Евклида. Декодирование по максимуму правдоподо-
бия в этом случае заключается в поиске такого вектора u = (u1, u2, . . . , un) ∈ G,
который находится на минимальном расстоянии Евклида от полученного вектора
f = (f1,f2,...,fn).
50
1
0,8
0,6
Pr(f | 1)
0,4
Pr(f | 0)
0,2
0
1,0
-0,5
0,0
0,5
1,0
1,5
2,0
Пример зависимости Pr(f | 0) и Pr(f | 1) от f
В [2] рассматривается задача мягкого декодирования для канала с двоичным
входом и Q-ичным выходом. В такой постановке значения компонент вектора f =
= (f1, f2, . . . , fn) остаются вещественными, но могут принимать ограниченное чис-
ло значений, которое будем называть выходным алфавитом. Размерность выходно-
го алфавита обусловлена числом уровней квантования выходного согласованного
фильтра. Схема квантования с Q = 8 часто применяется в системах декодирования
с мягким решением. Как отмечается в [2], характеристика такой схемы близка к
характеристике, получающейся при бесконечном числе уровней квантования. Деко-
дирование по максимуму правдоподобия для квантованного канала также заключа-
ется в поиске вектора u = (u1, u2, . . . , un) ∈ G, который находится на минимальном
расстоянии Евклида от принятого вектора f = (f1, f2, . . . , fn).
В реальных системах связи, как отмечается в [2], используются не веществен-
ные значения компонентов fi, а числа, указывающие на тот уровень квантования
vi ∈ {0, 1, . . ., Q - 1}, которому соответствует значение fi. В результате вектору
f = (f1,f2,...,fn) ставится в соответствие Q-ичный вектор v = (v1,v2,...,vn).
Таким образом, мы получили описание дискретного канала с двоичным входом и
Q-ичным выходным алфавитом. Данный канал полностью задается множеством пе-
реходных вероятностей Pr(j | x), где Pr(j | x) - условная вероятность того, что вы-
ходной символ равен j при условии, что входной символ равен x. Будем считать,
что канал симметричен и Pr(j | 0) = Pr(Q - 1 - j | 1).
Если по каналу был передан двоичный вектор u = (u1, u2, . . . , un) ∈ Un, то ве-
роятность того, что на выходе был получен вектор v = (v1, v2, . . . , vn), вычисляется
по формуле
Pr(v | u) = Pr(vi | ui).
i=1
Логарифмируя данное выражение, получим
log(Pr(v | u)) =
log(Pr(vi | ui)).
(1)
i=1
Декодер должен максимизировать величину Pr(v |u), которая будет максималь-
ной, если отрицательная сумма в правой части (1) минимальна. В [2] вводится ап-
проксимирующее выражение для (1), более удобное для вычисления расстояния при
51
мягком решении, которое называется символьной метрикой. Соответствующие зна-
чения в такой метрике определяются по формуле mj = -A - B log(Pr(j | 0)). Кон-
станты A и B выбираются так, чтобы минимальное значение mj равнялось нулю,
а остальные были положительны.
Наиболее часто используется схема, в которой mj = j. Если число уровней рав-
но Q, то метрика принимает значения из множества {0, 1, 2, . . . , Q - 1}. Как отмеча-
ется в [2], такой выбор метрики хорошо описывает многие используемые на практике
декодеры.
Далее в данной статье рассматриваются только согласованные с евклидовой мет-
рикой каналы, задаваемые переходными вероятностями. Таким образом, задача де-
кодирования по максимуму правдоподобия решается путем нахождения ближайше-
го слова кода (в евклидовой метрике) к принятому слову.
§2. Взаимосвязь модульной и евклидовой метрики в канале с двоичным
входным и Q-ичным выходным алфавитами
Рассмотрим канал из § 1, для которого выполняется условие Q = 2z + 1. Пусть
задано множество двоичных кодовых векторов G ⊂ Un, использующихся для пере-
дачи по каналу.
Двоичный вектор u = (u1, u2, . . . , un) ∈ G с элементами из множества {0, 1} при
использовании Q = 2z + 1 уровней квантования и отсутствии ошибок рассматрива-
ется демодулятором как двоичный вектор v = (v1, v2, . . . , vn) ∈ G с элементами из
множества vi ∈ {0, 2z} H. Таким образом, множество слов G из двоичного алфа-
вита {0, 1} будет рассматриваться демодулятором как множество двоичных слов G
из двоичного алфавита {0, 2z}.
В результате наложения ошибок в канале на вектор u = (u1, u2, . . . , u∗n) на вы-
ходе демодулятора получается Q-ичный вектор y = (y1, y2, . . . , yn) с элементами из
множества {0, 1, 2, . . . , 2z} Z. Обозначим через Zn множество векторов длины n
с элементами из множества Z.
Задача декодирования кода G по максимуму правдоподобия с использованием
2z+1 подуровней для канала без памяти с гауссовским шумом осуществляется путем
нахождения ближайшего кодового слова v = (v1, v2, . . . , vn) ∈ G к полученному
слову y = (y1, y2, . . . , yn) ∈ Zn с использованием расстояния в метрике Евклида
-
dE(y; v) =
(yi - vi)2.
(2)
i=1
Расстояние в модульной метрике dM (u; v) между векторами u = (u1, u2, . . . , un)
∈ Zn и v = (v1,v2,...,vn) ∈ Zn вычисляется по формуле
dM (u; v) =
|ui - vi|.
(3)
i=1
Вес wM (u) вектора u = (u1, u2, . . . , un) в модульной метрике определяется как
расстояние dM (u; 0), где 0 - нулевой вектор длины n. Если выполняется условие
dM (u; v) = t, то будем говорить, что вектор u = (u1, u2, . . . , un) получен t-кратными
ошибками из вектора v = (v1, v2, . . . , vn).
Введем отношение частичного порядка на множестве Zn векторов длины n. По-
ложим u ≫ v, если для всех 1 i n выполняется неравенство vi ui. В том
случае, если указанное неравенство выполнено не для всех 1 i n, будем назы-
вать u и v несравнимыми векторами. Пусть dM (u; v) = t и выполняется условие
52
u ≫ v. Тогда будем говорить, что вектор u получен из вектора v путем t однона-
правленных увеличивающих ошибок. Аналогично определяются однонаправленные
уменьшающие ошибки.
Обозначим через J множество векторов длины n, компоненты которых принад-
лежат множеству {0, 1, 2, . . . , 2z}. Для мощности множества J выполняется условие
|J| = (2z + 1)n.
Пусть u и v - векторы длины n, компоненты которых принадлежат множеству
{0, 2z} = H. Обозначим через W множество таких векторов. Заметим, что для
мощности данного множества выполняется условие |W | = 2n . Фактически векторы
из множества W являются вершинами n-мерного куба, а вектор y - произвольной
точкой такого куба. Для кода B и множеств W и J выполняется условие B
⊂W ⊂J.
Теорема. Для любого вектора y = (y1,y2,...,yn) ∈ J и любой пары векторов
u ∈ W и v ∈ W выполняется равенство
d2E(y; v) - d2E(y; u) = 2z(dM (y; v) - dM (y; u)).
(4)
Доказательство. Рассмотрим векторы u ∈ W и v ∈ W . Заметим, что
множество позиций, в которых данные векторы совпадают, не оказывает влияния
на тождество (4). Таким образом, будем рассматривать только позиции, в которых
данные векторы различны. Без потери общности будем считать, что на первых
позициях вектора u расположен символ 2z, а на следующих m позициях - сим-
вол 0. Соответственно, на первых позициях вектора v расположен символ 0, а на
следующих m позициях - символ 2z. Оставшиеся n-ℓ-m позиций данных векторов
совпадают, и в дальнейшем мы не будем их рассматривать. Тогда, исходя из (2), для
левой части соотношения (4) имеет место тождество
(
)
d2E(y; v) - d2E(y; u) =
y2i
+ m22z - 2z+1
yi +
y2
i
-
i=1
i=+1
i=+1
(
)
-
y2i
+22z - 2z+1
yi +
y2
=
i
i=1
i=1
i=+1
((
) (
))
= 2z m2z
2
yi
- ℓ2z
-2
yi
(5)
i=+1
i=1
Рассмотрим теперь правую часть соотношения (4) в модульной метрике. Исходя
из (3), получаем
dM (y; v) - dM (y; u) =
yi + m22z -
yi -
i=1
i=+1
(
) (
) (
)
- yi + 2z
+
yi
= m2z
2
yi
- ℓ2z
-2
yi
(6)
i=1
i=+1
i=+1
i=1
Сравнивая (5) и (6), убеждаемся, что тождество (4) выполняется.
Следствие. Для любого вектора y = (y1,y2,...,yn) ∈ J и любой пары век-
торов u ∈ W и v ∈ W имеет место равносильность неравенств
dE(y; v) > dE(y; u) ⇐⇒ dM(y; v) > dM (y; u).
(7)
53
Доказательство. Пусть для вектора y = (y1,y2,...,yn) ∈ J и любой пары
векторов u ∈ W и v ∈ W выполняется неравенство
dE(y; v) > dE(y; u).
Тогда возведение обеих частей в квадрат не меняет знак неравенства, т.е. имеет
место неравенство
d2E(y; v) > d2E(y; u).
Данное утверждение следует из того, что множество {0, 1, 2, . . ., 2z}, которому при-
надлежат все компоненты векторов u, v и y, состоит из целых неотрицательных
чисел.
Разделим обе части полученного неравенства на 2z. Получим неравенство с неиз-
менным знаком
d2E(y; v)
d2E(y; u)
>
,
2z
2z
из которого следует
d2E(y; v)
d2E(y; u)
-
> 0.
(8)
2z
2z
Из доказанного тождества (4) получаем, что неравенство (8) равносильно неравен-
ству
dM (y; v) - dM (y; u) > 0.
Таким образом, требуемая эквивалентность (7) доказана.
При получении вектора y = (y1, y2, . . . , yn) ∈ J мягкое декодирование кода B
по максимуму правдоподобия с использованием 2z + 1 подуровней для канала без
памяти с гауссовским шумом осуществляется путем нахождения ближайшего в ев-
клидовой метрике к полученному слову y слова v = (v1, v2, . . ., vn) ∈ W ⊂ J,
которое также должно быть кодовым словом B ∈ W .
С учетом доказанной эквивалентности (7) получаем, что использование модуль-
ной метрики возможно в процедуре мягкого декодирования вместо евклидовой мет-
рики. При этом результат такого декодирования не изменяется.
§3. Коды в модульной метрике
Множество G(n, t) ⊂ Zn называется кодом, исправляющим t однонаправленных
увеличивающих ошибок, если для любой пары различных векторов u ∈ G(n, t) и
v ∈ G(n,t) не существует вектора c, такого что c ≫ u, c ≫ v, dM(c;v) t и
dM (c; u) t.
Выберем конечное поле GF (qm), где q - простое число, m - натуральное и вы-
полняется неравенство qm > n. Пусть α - примитивный элемент поля. Определим
отображение F множества Zn в множество полиномов от формальной переменной x
над полем GF (qm). Для этого поставим в соответствие i-й позиции (1 i n) век-
торов множества Zn ненулевой элемент αi поля GF(qm). Из неравенства qm > n
следует, что такое сопоставление возможно. Определим отображение F вектора
u = (u1,u2,...,un) в многочлен u(x) по правилу
∏(
)ui
x
F (u) u(x) =
1-
αi
i=1
54
Заметим, что для любых векторов u, v ∈ Zn выполняется условие F(u) ≡ F(v)
1 mod x.
Обозначим через GF[x] кольцо многочленов от формальной переменной x над
полем GF (qm). Пусть s(x) ∈ GF [x] - многочлен степени не выше t, младший коэф-
фициент которого равен 1. В [3] доказывается, что множество слов
C{u | u ∈ Zn, F(u) ≡ s(x) mod xt+1}
(9)
является кодом, исправляющим t однонаправленных увеличивающих ошибок в мо-
дульной метрике. В [3] доказывается, что код C, исправляющий t однонаправленных
увеличивающих ошибок в модульной метрике, также исправляет t однонаправлен-
ных уменьшающих ошибок. В [3] доказывается, что для любого 0 σ 2t подмно-
жество слов
{
}
B u
u∈C,
ui ≡ σ mod (2t + 1)
⊂C
(10)
i=1
является кодом, исправляющим t произвольных ошибок в модульной метрике. По-
мимо конструкций самих кодов, в [4] был также предложен алгоритм декодирования
указанных кодов с полиномиальной сложностью, в основе которого лежит решение
ключевого уравнения методом Евклида.
§4. Использование кодов в модульной метрике для мягкого декодирования
в канале с двоичным входным и Q-ичным выходным алфавитами
Пусть заданы двоичные векторы u ∈ 2n и v ∈ 2n. Обозначим через dH (u; v) рас-
стояние между данными векторами в метрике Хэмминга. Тогда для любых векторов
u и v справедливо тождество
dM (u; v) = dH(u; v).
Пусть задано множество слов
C{u | u ∈ 2n, F(u) ≡ s(x) mod xt+1}.
Тогда подмножество слов
{
}
B u
u∈C,
ui ≡ σ mod 2(t + 1)
⊂C
i=1
является двоичным кодом, исправляющим t ошибок в метрике Хэмминга и в мо-
дульной метрике.
Будем строить для B схему мягкого декодирования. Выпишем в явном виде
условие для кода C:
∏(
)ui
x
F (u) u(x) =
1-
= s(x) + f(x)xt+1.
(11)
αi
i=1
Будем считать, что n < 2m и αi ∈ GF (2m) при 1 i n. Предположим, что
декодер кода имеет Q = 2z + 1 подуровней. Другими словами, на выходе демодуля-
тором по каждому символу кода принимается решение, принадлежащее множеству
{0, 1, 2, . . ., 2z}.
55
Возведем левую и правую части уравнения (11) в степень 2z. Поскольку действия
производятся в поле характеристики 2, получим
(
)2z
∏(
x )ui
u(x) =
1-
= s(x)2z + f(x)2z x(t+1)2z .
αi
i=1
Это означает, что двоичный вектор u = (u1, u2, . . . , un) ∈ C с элементами из множе-
ства {0, 1} преобразовался в двоичный вектор u = (u1, u2, . . . , u∗n) с элементами из
множества {0, 2z} = H.
Заметим, что степень полинома s(x)2z удовлетворяет неравенству deg(s(x)2z )
2zt. Таким образом, s(x)2z - многочлен степени не выше 2zt, младший коэффи-
циент которого равен 1.
Заметим, что 2z(t + 1) = 1 + (2zt + 2z - 1). Следовательно, из (9) получаем, что
{
}
C
u | u ∈ Hn, F(u) ≡ s(x)2z mod x2z(t+1)
является кодом, исправляющим 2zt + 2z - 1 однонаправленных увеличивающих
ошибок в модульной метрике, если за единичную ошибку считать изменение на
один уровень из множества уровней {0, 1, 2, . . . , 2z} в одном из n символов векто-
ра u = (u1, u2, . . . , u∗n).
Если для вектора u = (u1, u2, . . . , un) ∈ C выполняется условие
ui ≡ σ mod (2t + 1),
i=1
то для вектора u = (u1, u2, . . ., u∗n) ∈ C с элементами из множества {0, 2z} = H
выполняется условие
2zui ≡ σ2z mod (2z(2t + 1)).
i=1
Тогда из равенства 2z(t + 1) = 1 + (2zt + 2z - 1) с учетом (10) получаем, что код
{
}
B u
u ∈C,
u∗i ≡ σ2z mod (2z(2t + 1))
⊂C
i=0
является кодом, исправляющим 2zt + 2z - 1 произвольных ошибок в модульной мет-
рике, если за единичную ошибку считать изменение на один уровень из множества
уровней {0, 1, 2, . . . , 2z} в одном из n символом вектора u = (u1, u2, . . . , u∗n).
Алгебраическая структура полученного кода B может быть использована c при-
менением алгоритма из [4] для нахождения с полиномиальной сложностью части
ошибок, исправляемых кодом B в модульной метрике до его конструктивного рас-
стояния 1 + (2zt + 2z - 1). При нахождении всех остальных ошибок, исправляемых
кодом B в модульной метрике, получаем мягкое декодирование кода B по мак-
симуму правдоподобия для канала с двоичным входным алфавитом и выходным
алфавитом из Q = 2z + 1 символов.
СПИСОК ЛИТЕРАТУРЫ
1. Колесник В.Д., Мирончиков Е.Т. Декодирование циклических кодов. М.: Связь, 1968.
2. Кларк Дж., мл., Кейн Дж. Кодирование с исправлением ошибок в системах цифровой
связи. М.: Радио и Связь, 1987.
56
3. Давыдов В.А. Коды, исправляющие ошибки в модульной метрике, метрике Ли и ошибки
оператора // Пробл. передачи информ. 1993. Т. 29. № 3. С. 10-20.
4. Давыдов В.А. Методы исправления ошибок в модульной и порожденных ею метриках:
Дис. канд. техн. наук: 05.13.01. Санкт-Петербург, 1993.
Давыдов Вячеслав Анатольевич
Поступила в редакцию
Московский институт электроники и математики
09.05.2018
им. А.Н. Тихонова,
После доработки
Национальный исследовательский университет
23.03.2019
“Высшая школа экономики”
Принята к публикации
novdav2017@yandex.ru
16.04.2019
57