diff --git a/latex/thesis/chapters/decoding_techniques.tex b/latex/thesis/chapters/decoding_techniques.tex index 3211b0d..f74f6d4 100644 --- a/latex/thesis/chapters/decoding_techniques.tex +++ b/latex/thesis/chapters/decoding_techniques.tex @@ -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*}% %