Added constraint definition for relaxed LP

This commit is contained in:
Andreas Tsouchlos 2023-02-19 10:00:38 +01:00
parent a14ad6d9e5
commit da7162e0c9

View File

@ -232,20 +232,40 @@ decoding, redefining the constraints in terms of the \text{codeword polytope}
,\end{align*} %
%
which represents the \textit{convex hull} of all possible codewords,
i.e. the set of convex linear combinations of all codewords.
i.e. the convex set of linear combinations of all codewords.
However, since the number of constraints needed to characterize the codeword
polytope is exponential in the code length, this formulation is relaxed futher.
By observing that each check-node defines its own local single parity-check
By observing that each check node defines its own local single parity-check
code, and thus its own \textit{local codeword polytope},
the \textit{relaxed codeword polytope} $\overline{Q}$ is defined as the intersection of all
local codeword polytopes.
This consideration leads to the following constraints:%
This consideration leads to constraints, that can be described as follows
\cite[Sec. II, A]{efficient_lp_dec_admm}:%
%
\begin{align*}
\ldots
.\end{align*}
\boldsymbol{T}_j \boldsymbol{c} \in \mathcal{P}_{d_j}
\hspace{5mm}\forall j\in \mathcal{J}
,\end{align*}%
where $\boldsymbol{T}_j$ is the \textit{transfer matrix}, which selects the
neighboring variable nodes
of check node $j$%
\footnote{For example, if the $j$th row of the parity-check matrix
$\boldsymbol{H}$ was $\boldsymbol{h}_j =
\begin{bmatrix} 0 & 1 & 0 & 1 & 0 & 1 & 0 \end{bmatrix}$,
the transfer matrix would be $\boldsymbol{T}_j =
\begin{bmatrix}
0 & 1 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 0 & 1 & 0 & 0 & 0 \\
0 & 0 & 0 & 0 & 0 & 1 & 0 \\
\end{bmatrix} $ (example taken from \cite[Sec. II, A]{efficient_lp_dec_admm})}%
(i.e. the relevant components of $\boldsymbol{c}$ for parity-check $j$)
and $\mathcal{P}_{d}$ is the \textit{check polytope}, the convex hull of all
binary vectors of length $d$ with even parity%
\footnote{Essentially $\mathcal{P}_{d_j}$ is the set of vectors that satisfy
parity-check $j$, but extended to continuous domain.}%
.
In figure \ref{fig:dec:poly}, the two relaxations are compared based on an
In figure \ref{fig:dec:poly}, the two relaxations are compared for an
example code.
Figure \ref{fig:dec:poly:exact} shows the codeword polytope
$\text{poly}\left( \mathcal{C} \right) $, i.e. the constraints for the
@ -253,13 +273,13 @@ equivalent linear program to exact \ac{ML} decoding - only valid codewords are
feasible solutions.
Figures \ref{fig:dec:poly:local1} and \ref{fig:dec:poly:local2} show the local
codeword polytopes of each check node.
Their intersection, the relaxed codeword polytope $\overline{Q}$, is shown in figure
\ref{fig:dec:poly:relaxed}.
Their intersection, the relaxed codeword polytope $\overline{Q}$, is shown in
figure \ref{fig:dec:poly:relaxed}.
%
%
% Codeword polytope visualization figure
%
%
\begin{figure}[H]
\centering
@ -545,9 +565,8 @@ Their intersection, the relaxed codeword polytope $\overline{Q}$, is shown in fi
\caption{Visualization of the codeword polytope and the relaxed codeword
polytope for an example code}
\label{fig:dec:poly}
\end{figure}
\noindent%
\end{figure}%
%
It can be seen, that the relaxed codeword polytope $\overline{Q}$ introduces
vertices with fractional values;
these represent erroneous non-codeword solutions to the linear program and
@ -556,12 +575,12 @@ correspond to the so-called \textit{pseudocodewords} introduced in
However, since for \ac{LDPC} codes $\overline{Q}$ scales linearly with $n$ instead of
exponentially, it is a lot more tractable for practical applications.
The resulting formulation of the relaxed optimization problem
(called \ac{LCLP} by the authors) is the following:%
The resulting formulation of the relaxed optimization problem is the following:%
%
\begin{align*}
\text{minimize }\hspace{2mm} &\sum_{i=1}^{n} \gamma_i c_i \\
\text{subject to }\hspace{2mm} &\ldots
\text{subject to }\hspace{2mm} &\boldsymbol{T}_j \boldsymbol{c} \in \mathcal{P}_{d_j}
\hspace{5mm}j\in\mathcal{J}
.\end{align*}%
%