Rescaled all figures; Lu23 -> Lu22

This commit is contained in:
Andreas Tsouchlos 2023-04-18 15:43:34 +02:00
parent 5ca2410a8f
commit c4bd9701e0
5 changed files with 120 additions and 79 deletions

View File

@ -72,7 +72,7 @@
@mastersthesis{yanxia_lu_thesis, @mastersthesis{yanxia_lu_thesis,
author = {Lu, Yanxia}, author = {Lu, Yanxia},
title = {Realization of Channel Decoding Using Optimization Techniques}, title = {Realization of Channel Decoding Using Optimization Techniques},
year = {2023}, year = {2022},
type = {Bachelor's Thesis}, type = {Bachelor's Thesis},
institution = {KIT}, institution = {KIT},
} }

View File

@ -126,6 +126,9 @@
% marcos used throughout the slides % marcos used throughout the slides
\input{\templates/makros_own.tex} \input{\templates/makros_own.tex}
\tikzstyle{every node}=[font=\small]
\title{Application of Optimization Algorithms for Channel Decoding} \title{Application of Optimization Algorithms for Channel Decoding}
\subtitle{\small Final Presentation, 20.04.2023} \subtitle{\small Final Presentation, 20.04.2023}

View File

@ -64,20 +64,20 @@
\centering \centering
\begin{figure}[H] \begin{figure}[H]
\vspace*{-0.5cm} \vspace*{-0.7cm}
\centering \centering
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -93,20 +93,22 @@
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=96, k=48$ \caption{$\left( 3, 6 \right)$-regular LDPC code with $n=96, k=48$
\cite[\text{96.3.965}]{mackay_enc}} \cite[\text{96.3.965}]{mackay_enc}}
\end{subfigure}% \end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -124,19 +126,21 @@
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{BCH code with $n=31, k=26$} \caption{BCH code with $n=31, k=26$}
\end{subfigure}% \end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -156,6 +160,8 @@
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$ \caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
\cite[\text{204.33.484}]{mackay_enc}} \cite[\text{204.33.484}]{mackay_enc}}
\end{subfigure}% \end{subfigure}%
@ -163,14 +169,14 @@
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -182,20 +188,22 @@
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{$\left( 5, 10 \right)$-regular LDPC code with $n=204, k=102$ \caption{$\left( 5, 10 \right)$-regular LDPC code with $n=204, k=102$
\cite[\text{204.55.187}]{mackay_enc}} \cite[\text{204.55.187}]{mackay_enc}}
\end{subfigure}% \end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -206,6 +214,8 @@
{res/admm/ber_2d_40833844.csv}; {res/admm/ber_2d_40833844.csv};
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$ \caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
\cite[\text{204.33.484}]{mackay_enc}} \cite[\text{204.33.484}]{mackay_enc}}
@ -213,14 +223,14 @@
\begin{subfigure}[t]{0.33\textwidth} \begin{subfigure}[t]{0.33\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.4] \begin{tikzpicture}[scale=0.8]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
ymax=1.5, ymin=8e-5, ymax=1.5, ymin=8e-5,
% width=1.1\textwidth, width=1.2\textwidth,
% height=0.825\textwidth, height=0.85\textwidth,
] ]
\addplot[RedOrange, line width=1pt, mark=*, solid] \addplot[RedOrange, line width=1pt, mark=*, solid]
@ -232,6 +242,8 @@
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\vspace*{-1mm}
\caption{LDPC code (progressive edge growth construction) with $n=504, k=252$ \caption{LDPC code (progressive edge growth construction) with $n=504, k=252$
\cite[\text{PEGReg252x504}]{mackay_enc}} \cite[\text{PEGReg252x504}]{mackay_enc}}
\end{subfigure}% \end{subfigure}%
@ -243,18 +255,18 @@
\begin{figure} \begin{figure}
\centering \centering
\vspace*{-1.2cm} \vspace*{-1.2cm}
\hspace*{-0.5cm} \hspace*{2mm}
\begin{tikzpicture}[scale=0.7] \begin{tikzpicture}[scale=0.8]
\begin{axis}[hide axis, \begin{axis}[hide axis,
xmin=10, xmax=50, xmin=10, xmax=50,
ymin=0, ymax=0.4, ymin=0, ymax=0.4,
legend columns=1, legend columns=1,
legend style={draw=white!15!black}] legend style={draw=white!15!black}]
\addlegendimage{RedOrange, line width=1pt, mark=*, solid} \addlegendimage{RedOrange, line width=1pt, mark=*, solid}
\addlegendentry{Proximal decoding} \addlegendentry{Proximal}
\addlegendimage{NavyBlue, line width=1pt, mark=triangle, densely dashed} \addlegendimage{NavyBlue, line width=1pt, mark=triangle, densely dashed}
\addlegendentry{LP decoding} \addlegendentry{ADMM}
% \addlegendimage{PineGreen, line width=1pt, mark=triangle*, solid} % \addlegendimage{PineGreen, line width=1pt, mark=triangle*, solid}
% \addlegendentry{ML} % \addlegendentry{ML}
@ -466,7 +478,7 @@ return $\tilde{\boldsymbol{c}}$
\item Addition of "ML-in-the-List" step \item Addition of "ML-in-the-List" step
\item Up to $\sim \SI{1}{dB}$ gain under certain conditions \item Up to $\sim \SI{1}{dB}$ gain under certain conditions
\end{itemize} \end{itemize}
\item Comparison of the two decoding algorithms \item Comparison
\begin{itemize} \begin{itemize}
\item based on simulation results \item based on simulation results
\item based on their theoretical structure \item based on their theoretical structure

View File

@ -20,14 +20,14 @@
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{tikzpicture}[scale=0.5] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid style={line width=.1pt}, grid=both, grid style={line width=.1pt},
xlabel={$E_b / N_0$ (dB)}, ylabel={BER}, xlabel={$E_b / N_0$ (dB)}, ylabel={BER},
ymode=log, ymode=log,
legend pos=outer north east, legend pos=outer north east,
width=11.5cm, width=0.45\textwidth,
height=8cm, height=0.3375\textwidth,
ymax=1.2, ymin=0.8e-4, ymax=1.2, ymin=0.8e-4,
xtick={1, 2, ..., 5}, xtick={1, 2, ..., 5},
xmin=0.9, xmax=5.6, xmin=0.9, xmax=5.6,
@ -103,9 +103,11 @@
\begin{subfigure}[c]{0.5\textwidth} \begin{subfigure}[c]{0.5\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.52] \begin{tikzpicture}
\begin{semilogyaxis}[xlabel={$E_b / N_0$ (dB)}, ylabel={BER}, \begin{semilogyaxis}[xlabel={$E_b / N_0$ (dB)}, ylabel={BER},
grid=both, grid style={line width=.1pt}, grid=both, grid style={line width=.1pt},
width=0.8\textwidth,
height=0.6\textwidth,
legend style={at={(0.05,0.05)},anchor=south west}, legend style={at={(0.05,0.05)},anchor=south west},
ymin=3e-7, ymax=1.5,] ymin=3e-7, ymax=1.5,]
\addplot [ForestGreen, mark=*] table [x=SNR, y=BER, \addplot [ForestGreen, mark=*] table [x=SNR, y=BER,
@ -126,12 +128,14 @@
\begin{subfigure}[c]{0.5\textwidth} \begin{subfigure}[c]{0.5\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.55] \begin{tikzpicture}
\begin{axis}[view={75}{30}, \begin{axis}[view={75}{30},
zmode=log, zmode=log,
xlabel={$E_b / N_0$ (dB)}, xlabel={$E_b / N_0$ (dB)},
ylabel={$\gamma$}, ylabel={$\gamma$},
zlabel={BER}, zlabel={BER},
width=0.8\textwidth,
height=0.6\textwidth,
legend pos=outer north east,] legend pos=outer north east,]
\addplot3[surf, \addplot3[surf,
@ -424,16 +428,18 @@ return $\boldsymbol{\hat{c}}$
\begin{minipage}{.6\textwidth} \begin{minipage}{.6\textwidth}
\centering \centering
\begin{figure}[H] \begin{figure}[H]
\vspace*{-8mm} \vspace*{-9mm}
\centering \centering
\begin{tikzpicture}[scale=0.42] \begin{tikzpicture}[scale=0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={BER}, xlabel={$E_b / N_0$ (dB)}, ylabel={BER},
ymode=log, ymode=log,
legend style={at={(0.05,0.05)},anchor=south west}, legend style={at={(0.05,0.05)},anchor=south west},
ymax=1.5, ymin=3e-7, ymax=1.5, ymin=3e-7,
width=0.7\textwidth,
height=0.6\textwidth,
] ]
\addplot [ForestGreen, mark=*] \addplot [ForestGreen, mark=*]
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}] table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
@ -449,13 +455,15 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\gamma = 0.05$} \addlegendentry{$\gamma = 0.05$}
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\begin{tikzpicture}[scale=0.42] \begin{tikzpicture}[scale=0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER}, xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log, ymode=log,
legend style={at={(0.05,0.05)},anchor=south west}, legend style={at={(0.05,0.05)},anchor=south west},
ymax=1.5, ymin=3e-7, ymax=1.5, ymin=3e-7,
width=0.7\textwidth,
height=0.6\textwidth,
] ]
\addplot [ForestGreen, mark=*] \addplot [ForestGreen, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}] table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
@ -471,13 +479,15 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\gamma = 0.05$} \addlegendentry{$\gamma = 0.05$}
\end{axis} \end{axis}
\end{tikzpicture}\\ \end{tikzpicture}\\
\begin{tikzpicture}[scale=0.42] \begin{tikzpicture}[scale=0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={Decoding Failure Rate}, xlabel={$E_b / N_0$ (dB)}, ylabel={Decoding Failure Rate},
ymode=log, ymode=log,
legend style={at={(0.05,0.05)},anchor=south west}, legend style={at={(0.05,0.05)},anchor=south west},
ymax=1.5, ymin=3e-7, ymax=1.5, ymin=3e-7,
width=0.7\textwidth,
height=0.6\textwidth,
] ]
\addplot [ForestGreen, mark=*] \addplot [ForestGreen, mark=*]
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}] table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}]
@ -513,15 +523,16 @@ return $\boldsymbol{\hat{c}}$
\end{itemize} \end{itemize}
\begin{figure}[H] \begin{figure}[H]
\centering
\begin{minipage}[c]{0.25\textwidth} \begin{minipage}[c]{0.25\textwidth}
\centering \centering
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -540,12 +551,12 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\left(\nabla h \right)_2 $} \addlegendentry{$\left(\nabla h \right)_2 $}
\end{axis} \end{axis}
\end{tikzpicture}\\ \end{tikzpicture}\\
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -564,12 +575,12 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\left(\nabla h \right)_3 $} \addlegendentry{$\left(\nabla h \right)_3 $}
\end{axis} \end{axis}
\end{tikzpicture}\\ \end{tikzpicture}\\
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -593,13 +604,13 @@ return $\boldsymbol{\hat{c}}$
\vspace*{-1cm} \vspace*{-1cm}
\centering \centering
\begin{tikzpicture}[scale = 0.85, spy using outlines={circle, magnification=6, \begin{tikzpicture}[, spy using outlines={circle, magnification=6,
connect spies}] connect spies}]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=0.8\textwidth,
height=3cm, height=0.35\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -617,8 +628,8 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\left(\nabla L \right)_1$} \addlegendentry{$\left(\nabla L \right)_1$}
\addlegendentry{$\left(\nabla h \right)_1 $} \addlegendentry{$\left(\nabla h \right)_1 $}
\coordinate (spypoint) at (axis cs:100,0.53); \coordinate (spypoint) at (axis cs:100,1.12);
\coordinate (magnifyglass) at (axis cs:175,2); \coordinate (magnifyglass) at (axis cs:180,2.75);
\end{axis} \end{axis}
\spy [black, size=2cm] on (spypoint) \spy [black, size=2cm] on (spypoint)
in node[fill=white] at (magnifyglass); in node[fill=white] at (magnifyglass);
@ -627,12 +638,12 @@ return $\boldsymbol{\hat{c}}$
\begin{minipage}[c]{0.25\textwidth} \begin{minipage}[c]{0.25\textwidth}
\centering \centering
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -651,12 +662,12 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\left(\nabla h \right)_5 $} \addlegendentry{$\left(\nabla h \right)_5 $}
\end{axis} \end{axis}
\end{tikzpicture}\\ \end{tikzpicture}\\
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -675,12 +686,12 @@ return $\boldsymbol{\hat{c}}$
\addlegendentry{$\left(\nabla h \right)_6 $} \addlegendentry{$\left(\nabla h \right)_6 $}
\end{axis} \end{axis}
\end{tikzpicture}\\ \end{tikzpicture}\\
\begin{tikzpicture}[scale = 0.35] \begin{tikzpicture}[scale = 0.7]
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=1.2\textwidth,
height=3cm, height=0.45\textwidth,
scale only axis, scale only axis,
xtick={0, 50, ..., 200}, xtick={0, 50, ..., 200},
xticklabels={0, 25, ..., 100}, xticklabels={0, 25, ..., 100},
@ -722,10 +733,12 @@ return $\boldsymbol{\hat{c}}$
\centering \centering
\begin{tikzpicture}[scale=0.8] \begin{tikzpicture}
\begin{axis}[xmin = -1.25, xmax=1.25, \begin{axis}[xmin = -1.25, xmax=1.25,
ymin = -1.25, ymax=1.25, ymin = -1.25, ymax=1.25,
xlabel={$x_1$}, ylabel={$x_2$}, xlabel={$x_1$}, ylabel={$x_2$},
width=0.9\textwidth,
height=0.8\textwidth,
grid=major, grid style={dotted}, grid=major, grid style={dotted},
view={0}{90}] view={0}{90}]
\addplot3[point meta=\thisrow{grad_norm}, \addplot3[point meta=\thisrow{grad_norm},
@ -753,9 +766,11 @@ return $\boldsymbol{\hat{c}}$
\begin{subfigure}[c]{0.5\textwidth} \begin{subfigure}[c]{0.5\textwidth}
\centering \centering
\begin{tikzpicture}[scale=0.8] \begin{tikzpicture}
\begin{axis}[xmin = -1.25, xmax=1.25, \begin{axis}[xmin = -1.25, xmax=1.25,
ymin = -1.25, ymax=1.25, ymin = -1.25, ymax=1.25,
width=0.9\textwidth,
height=0.8\textwidth,
xlabel={$x_1$}, ylabel={$x_2$}, xlabel={$x_1$}, ylabel={$x_2$},
grid=major, grid style={dotted}, grid=major, grid style={dotted},
view={0}{90}] view={0}{90}]
@ -808,12 +823,12 @@ return $\boldsymbol{\hat{c}}$
\begin{subfigure}[t]{0.5\textwidth} \begin{subfigure}[t]{0.5\textwidth}
\centering \centering
\begin{tikzpicture}[scale = 0.85] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
width=8cm, width=0.85\textwidth,
height=3cm, height=0.4\textwidth,
scale only axis, scale only axis,
xtick={0, 100, ..., 400}, xtick={0, 100, ..., 400},
xticklabels={0, 50, ..., 200}, xticklabels={0, 50, ..., 200},
@ -839,7 +854,7 @@ return $\boldsymbol{\hat{c}}$
\begin{subfigure}[t]{0.5\textwidth} \begin{subfigure}[t]{0.5\textwidth}
\centering \centering
\begin{tikzpicture}[scale = 0.85] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
point meta min = -1, point meta min = -1,
point meta max = 1, point meta max = 1,
@ -847,8 +862,8 @@ return $\boldsymbol{\hat{c}}$
xlabel={$Var\left( \nabla h\left( \tilde{\boldsymbol{x}} \right) \right) $}, xlabel={$Var\left( \nabla h\left( \tilde{\boldsymbol{x}} \right) \right) $},
ylabel={Bit error (bool)}, ylabel={Bit error (bool)},
ytick={0, 1}, ytick={0, 1},
width=8cm, width=0.85\textwidth,
height=3cm, height=0.4\textwidth,
scale only axis, scale only axis,
% colormap/viridis, % colormap/viridis,
] ]
@ -1067,7 +1082,7 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{tikzpicture}[scale=0.55] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$}, ylabel={BER}, xlabel={$E_b / N_0$}, ylabel={BER},
@ -1075,6 +1090,8 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
legend columns=2, legend columns=2,
legend style={at={(0.5,-0.45)},anchor=south}, legend style={at={(0.5,-0.45)},anchor=south},
ymax=1.5, ymin=3e-8, ymax=1.5, ymin=3e-8,
width=0.33\textwidth,
height=0.28\textwidth,
] ]
\addplot[ForestGreen, mark=*, solid] \addplot[ForestGreen, mark=*, solid]
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}] table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
@ -1098,7 +1115,7 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
{res/hybrid/2d_ber_fer_dfr_20433484.csv}; {res/hybrid/2d_ber_fer_dfr_20433484.csv};
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\begin{tikzpicture}[scale=0.55] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$}, ylabel={FER}, xlabel={$E_b / N_0$}, ylabel={FER},
@ -1106,6 +1123,8 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
legend columns=2, legend columns=2,
legend style={at={(0.5,-0.45)},anchor=south}, legend style={at={(0.5,-0.45)},anchor=south},
ymax=1.5, ymin=3e-8, ymax=1.5, ymin=3e-8,
width=0.33\textwidth,
height=0.28\textwidth,
] ]
\addplot[ForestGreen, mark=*, solid] \addplot[ForestGreen, mark=*, solid]
@ -1130,7 +1149,7 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
{res/hybrid/2d_ber_fer_dfr_20433484.csv}; {res/hybrid/2d_ber_fer_dfr_20433484.csv};
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\begin{tikzpicture}[scale=0.55] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$E_b / N_0$}, ylabel={Decoding Failure Rate}, xlabel={$E_b / N_0$}, ylabel={Decoding Failure Rate},
@ -1138,6 +1157,8 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
legend columns=2, legend columns=2,
legend style={at={(0.5,-0.45)},anchor=south}, legend style={at={(0.5,-0.45)},anchor=south},
ymax=1.5, ymin=3e-8, ymax=1.5, ymin=3e-8,
width=0.33\textwidth,
height=0.28\textwidth,
] ]
\addplot[ForestGreen, mark=*, solid] \addplot[ForestGreen, mark=*, solid]
@ -1162,7 +1183,7 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
{res/hybrid/2d_ber_fer_dfr_20433484.csv}; {res/hybrid/2d_ber_fer_dfr_20433484.csv};
\end{axis} \end{axis}
\end{tikzpicture} \end{tikzpicture}
\begin{tikzpicture}[scale=0.7] \begin{tikzpicture}
\begin{axis}[hide axis, \begin{axis}[hide axis,
xmin=10, xmax=50, xmin=10, xmax=50,
ymin=0, ymax=0.4, ymin=0, ymax=0.4,
@ -1490,11 +1511,13 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{tikzpicture}[scale=0.6] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={Iterations}, xlabel={Iterations},
ylabel={Average $\lVert \boldsymbol{c}-\boldsymbol{\hat{c}} \rVert$}, ylabel={Average $\lVert \boldsymbol{c}-\boldsymbol{\hat{c}} \rVert$},
width=0.45\textwidth,
height=0.3375\textwidth,
legend pos=outer north east, legend pos=outer north east,
] ]
\addplot [ForestGreen, mark=none, line width=1pt] \addplot [ForestGreen, mark=none, line width=1pt]
@ -1537,12 +1560,14 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{tikzpicture}[scale=0.7] \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
xlabel={$n$}, ylabel={time per frame (s)}, xlabel={$n$}, ylabel={time per frame (s)},
legend style={at={(0.05,0.77)},anchor=south west}, legend style={at={(0.05,0.7)},anchor=south west},
legend cell align={left}, legend cell align={left},
width=0.45\textwidth,
height=0.3375\textwidth,
] ]
\addplot[RedOrange, only marks, mark=*] \addplot[RedOrange, only marks, mark=*]
table [col sep=comma, x=n, y=spf] table [col sep=comma, x=n, y=spf]
@ -1829,8 +1854,9 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
\begin{tikzpicture} \begin{tikzpicture}
\begin{axis}[ \begin{axis}[
grid=both, grid=both,
width=0.5\textwidth, width=0.45\textwidth,
height=0.375\textwidth, height=0.3375\textwidth,
legend pos=outer north east,
xlabel={Iteration}, ylabel={Average $\left\Vert \hat{\boldsymbol{c}} xlabel={Iteration}, ylabel={Average $\left\Vert \hat{\boldsymbol{c}}
- \boldsymbol{c} \right\Vert$} - \boldsymbol{c} \right\Vert$}
] ]

View File

@ -10,11 +10,11 @@
\frametitle{Motivation} \frametitle{Motivation}
\begin{itemize} \begin{itemize}
\item The general [ML] decoding problem for linear codes and the general problem \item The general [ML] decoding problem for linear codes and the general problem
of finding the weights of a linear code are both NP-complete. \cite{ml_np_hard_proof} of finding the weights of a linear code are both NP-complete \cite{ml_np_hard_proof}.
\item The iterative messagepassing algorithms preferred in practice do not guarantee \item The iterative messagepassing algorithms preferred in practice do not guarantee
optimality and may fail to decode correctly when the graph contains cycles. optimality and may fail to decode correctly when the graph contains cycles
\cite{ldpc_conv} \cite{ldpc_conv}.
\item The standard message-passing algorithms used for decoding [LDPC and turbo codes] \item The standard message-passing algorithms used for decoding LDPC and turbo codes
are often difficult to analyze. \cite{feldman_thesis} are often difficult to analyze. \cite{feldman_thesis}
\end{itemize} \end{itemize}