Move slides around

This commit is contained in:
Andreas Tsouchlos 2024-06-19 23:16:56 +02:00
parent 201238dd38
commit 6d04898997
8 changed files with 744 additions and 933 deletions

View File

@ -1,4 +1,5 @@
all:
mkdir -p build/build
latexmk presentation.tex
clean:

View File

@ -1,12 +1,14 @@
\documentclass[10pt, aspectratio=169, usenames, dvipsnames]{beamer}
\usepackage{tikz}
\usetikzlibrary{intersections, spy}
\usepackage{tikz-3dplot}
\usetikzlibrary{spy, external}
\tikzexternalize[prefix=build/]
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{listings}
\usepackage{listings}
\usepackage{subcaption}
@ -94,6 +96,7 @@
\input{sections/theoretical_background.tex}
\input{sections/lp_dec_using_admm.tex}
\input{sections/proximal_decoding.tex}
% \input{sections/comparison.tex}
\input{sections/question_slide.tex}
\input{sections/appendix.tex}
\end{document}

View File

@ -3,6 +3,504 @@
\section{Supplementary Slides}%
\label{app:Supplementary Slides}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Decoding Performance}
\captionsetup[subfigure]{font=footnotesize}
\hspace*{-0.4cm}
\begin{minipage}[c]{0.9\textwidth}
\centering
\begin{figure}[H]
\vspace*{-0.8cm}
\centering
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt, solid]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_963965.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_963965.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
%{res/hybrid/2d_ber_fer_dfr_963965.csv};
{res/admm/ber_2d_963965.csv};
\addplot[Black, line width=1pt]
table [col sep=comma, x=SNR, y=FER,]
{res/generic/fer_ml_9633965.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=96, k=48$
\citereference{Mac23, 96.33.965}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05},
discard if gt={SNR}{5.5}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={mu}{3.0},
discard if gt={SNR}{5.5}]
{res/admm/ber_2d_20433484.csv};
\addplot[Black, line width=1pt]
table [col sep=comma, x=SNR, y=FER,
discard if gt={SNR}{5.5}]
{res/generic/fer_ml_20433484.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
\citereference{Mac23, 204.33.484}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_40833844.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=408, k=204$
\citereference{Mac23, 408.33.844}}
\end{subfigure}%
\vspace*{-2mm}
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_bch_31_26.csv};
\addplot[Black, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if gt={SNR}{5.5},
discard if lt={SNR}{1},
]
{res/generic/fer_ml_bch_31_26.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{BCH code with $n=31, k=26$}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_20455187.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 5, 10 \right)$-regular LDPC code with $n=204, k=102$
\citereference{Mac23, 204.55.187}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[scol2, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot[scol2, only marks, mark=square, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot[KITorange, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_pegreg252x504.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{LDPC code (progressive edge growth construction) with $n=504, k=252$
\citereference{Mac23, PEGReg252x504}}
\end{subfigure}%
\end{figure}
\end{minipage}%
\begin{minipage}[c]{0.1\textwidth}
\centering
\begin{figure}
\centering
\vspace*{-1.2cm}
\hspace*{2mm}
\begin{tikzpicture}[scale=0.8]
\begin{axis}[hide axis,
xmin=10, xmax=50,
ymin=0, ymax=0.4,
legend columns=1,
legend style={draw=white!15!black}]
\addlegendimage{scol2, line width=1pt, solid}
\addlegendentry{Proximal}
\addlegendimage{scol2, line width=1pt, only marks, mark=square}
\addlegendentry{Improved}
\addlegendimage{KITorange, line width=1pt}
\addlegendentry{ADMM}
\addlegendimage{Black, line width=1pt}
\addlegendentry{ML}
\end{axis}
\end{tikzpicture}
\end{figure}
\end{minipage}
\vspace*{-1mm}
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t, fragile]
\frametitle{Comparison: Algorithm Structure}
\vspace*{-1cm}
\begin{figure}[h]
\centering
\begin{subfigure}[b]{0.47\textwidth}
\centering
\begin{align*}
\text{minimize}\hspace{2mm} & \textcolor{KITblue}{\underbrace{L\left(
\boldsymbol{y} \mid \tilde{\boldsymbol{x}} \right)}_{\text{Likelihood}}}
+ \textcolor{KITred}{\underbrace{\gamma h\left( \tilde{\boldsymbol{x}}
\right)} _{\text{Constraints}}} \\
\text{subject to}\hspace{2mm} &\tilde{\boldsymbol{x}} \in \mathbb{R}^n
\end{align*}
\vspace*{-5mm}
\begin{algorithm}[caption={}, label={},
basicstyle=\fontsize{10}{18}\selectfont
]
Initialize $\boldsymbol{r}, \boldsymbol{s}, \omega, \gamma$
while stopping critierion unfulfilled do
$\textcolor{KITblue}{\boldsymbol{r} \leftarrow \boldsymbol{r}
+ \omega \nabla L\left( \boldsymbol{y} \mid \boldsymbol{s} \right)} $
$\textcolor{KITred}{\boldsymbol{s} \leftarrow
\textbf{prox}_{\gamma h}\left( \boldsymbol{r} \right)} $|\Suppressnumber|
|\Reactivatenumber|
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}\hfill%
\begin{subfigure}[b]{0.5\textwidth}
\centering
\begin{align*}
\text{minimize}\hspace{5mm} &
\textcolor{KITblue}{\underbrace{\boldsymbol{\gamma}^\text{T}
\tilde{\boldsymbol{c}}}_{\text{Likelihood}}}
+ \textcolor{KITred}{\underbrace{\sum\nolimits_{j\in\mathcal{J}}
g_j\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}}
\right)}_{\text{Constraints}}} \\
\text{subject to}\hspace{5mm} &
\tilde{\boldsymbol{c}} \in \left[ 0, 1 \right]^n
\end{align*}
\vspace*{-5mm}
\begin{algorithm}[caption={}, label={},
basicstyle=\fontsize{10}{18}\selectfont
]
Initialize $\tilde{\boldsymbol{c}}, \boldsymbol{z}, \boldsymbol{u}, \boldsymbol{\gamma}, \rho$
while stopping criterion unfulfilled do
$\textcolor{KITblue}{\tilde{\boldsymbol{c}} \leftarrow \argmin_{\tilde{\boldsymbol{c}}}
\left( \boldsymbol{\gamma}^\text{T}\tilde{\boldsymbol{c}}
+ \frac{\rho}{2}\sum_{j\in\mathcal{J}} \left\Vert
\boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j
+ \boldsymbol{u}_j \right\Vert \right)}$
$\textcolor{KITred}{\boldsymbol{z}_j \leftarrow \textbf{prox}_{g_j}
\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}}
+ \boldsymbol{u}_j \right), \hspace{5mm}\forall j\in\mathcal{J}}$
$\boldsymbol{u}_j \leftarrow \boldsymbol{u}_j
+ \tilde{\boldsymbol{c}} - \boldsymbol{z}_j, \hspace{14.5mm}\forall j\in\mathcal{J}$
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}%
\end{figure}%
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Time Complexity}
\vspace*{-6.5mm}
\begin{itemize}
\item Codes: BCH $\left( 31, 11 \right)$; BCH $\left( 31, 26 \right)$;
\citereference{Mac23, 96.3.965; 204.33.484; 204.55.187; 408.33.844; PEGReg252x504}
\item Measured performance: $\sim\SI{10000}{}$ frames/s
on Intel Core i7-7700HQ @ 2.80GHz; $n=204$
\item Both algorithms are $\mathcal{O}\left( n \right)$ on average
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$n$}, ylabel={time per frame (ms)},
legend style={at={(0.05,0.6)},anchor=south west},
legend cell align={left},
width=0.43\textwidth,
height=0.32\textwidth,
]
\addplot[scol0, only marks, mark=square*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/proximal/fps_vs_n.csv};
\addlegendentry{proximal}
\addplot[scol1, only marks, mark=*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/hybrid/fps_vs_n.csv};
\addlegendentry{improved ($N=12$)}
\addplot[scol2, only marks, mark=triangle*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/admm/fps_vs_n.csv};
\addlegendentry{ADMM}
\end{axis}
\end{tikzpicture}
\end{figure}
\smallskip
\smallskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Convergence Behavior}
\vspace*{-6mm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\item Minimum number of iterations independent of SNR
\end{itemize}
\smallskip
\begin{figure}[H]
\centering
\begin{subfigure}[t]{0.5\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={Iterations},
ylabel={Average $\lVert \boldsymbol{c}-\boldsymbol{\hat{c}} \rVert$},
width=0.9\textwidth,
height=0.675\textwidth,
%legend pos=outer north east,
]
\addplot [scol0, mark=none, line width=1pt]
table [col sep=comma,
discard if not={omega}{0.0774263682681127},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_1db.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot [scol1, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.0774263682681127},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_3db.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot [scol2, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.052233450742668434},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_5db.csv};
\addlegendentry{$E_b / N_0 = \SI{5}{dB}$}
\addplot [KITorange, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.052233450742668434},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_8db.csv};
\addlegendentry{$E_b / N_0 = \SI{8}{dB}$}
\end{axis}
\end{tikzpicture}
\caption{Proximal Decoding}
\end{subfigure}%
\begin{subfigure}[t]{0.5\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
width=0.9\textwidth,
height=0.675\textwidth,
% legend pos=outer north east,
xlabel={Iteration},
ylabel={Average $\left\Vert \hat{\boldsymbol{c}} - \boldsymbol{c} \right\Vert$}
]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{1.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot[scol1, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{2.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
\addplot[scol2, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{3.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot[KITorange, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{4.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
\end{axis}
\end{tikzpicture}
\caption{LP Decoding using ADMM}
\end{subfigure}%
\end{figure}
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: Choice of $\gamma$}
@ -35,15 +533,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_963965.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_963965.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_963965.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_963965.csv};
@ -73,15 +571,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
@ -111,15 +609,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
@ -152,15 +650,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
@ -189,15 +687,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
@ -227,15 +725,15 @@
colormap/viridis] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot3[NavyBlue, line width=1.5] table [col sep=comma,
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot3[RedOrange, line width=1.5] table [col sep=comma,
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot3[ForestGreen, line width=1.5] table [col sep=comma,
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
@ -263,11 +761,11 @@
legend style={draw=white!15!black,legend cell align=left}]
\addlegendimage{surf, colormap/viridis}
\addlegendentry{$\gamma = \left[ 0\text{:}0.01\text{:}0.16 \right] $};
\addlegendimage{NavyBlue, line width=1.5pt}
\addlegendimage{scol1, line width=1.5pt}
\addlegendentry{$\gamma = 0.01$};
\addlegendimage{RedOrange, line width=1.5pt}
\addlegendimage{scol2, line width=1.5pt}
\addlegendentry{$\gamma = 0.05$};
\addlegendimage{ForestGreen, line width=1.5pt}
\addlegendimage{scol0, line width=1.5pt}
\addlegendentry{$\gamma = 0.15$};
\end{axis}
\end{tikzpicture}
@ -280,6 +778,103 @@
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{LP Decoding using ADMM: Choice of $\mu$ and $\rho$}
\vspace*{-5mm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\item No clear optimum value
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\begin{subfigure}[c]{0.48\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$\mu$}, ylabel={FER},
ymode=log,
width=0.8\textwidth,
height=0.6\textwidth,
]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{2.0},]
{res/admm/ber_2d_20433484.csv};
\addplot[scol1, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{3.0},]
{res/admm/ber_2d_20433484.csv};
\addplot[scol2, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{4.0},]
{res/admm/ber_2d_20433484.csv};
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[c]{0.48\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$\rho$}, ylabel={FER},
ymode=log,
width=0.8\textwidth,
height=0.6\textwidth,
]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{2.0},]
{res/admm/ber_2d_20433484_rho.csv};
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{3.0},]
{res/admm/ber_2d_20433484_rho.csv};
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{4.0},]
{res/admm/ber_2d_20433484_rho.csv};
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[t]{\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[hide axis,
xmin=10, xmax=50,
ymin=0, ymax=0.4,
legend columns=3,
legend style={draw=white!15!black,legend cell align=left}]
\addlegendimage{scol0, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
\addlegendimage{scol1, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addlegendimage{scol2, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}%
\bigskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{LP Decoding using ADMM: Choice of $\mu$ and $\rho$}
@ -305,15 +900,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_963965.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_963965.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_963965.csv};
@ -336,15 +931,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_20433484.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_20433484.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_20433484.csv};
@ -367,15 +962,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_40833844.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_40833844.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_40833844.csv};
@ -401,15 +996,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_bch_31_26.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_bch_31_26.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_bch_31_26.csv};
@ -431,15 +1026,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_20455187.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_20455187.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_20455187.csv};
@ -462,15 +1057,15 @@
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[ForestGreen, line width=1pt]
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{2.0},]
{res/admm/mu_rho_kavg_pegreg252x504.csv};
\addplot[RedOrange, line width=1pt]
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{5.0},]
{res/admm/mu_rho_kavg_pegreg252x504.csv};
\addplot[NavyBlue, line width=1pt]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=k_avg,
discard if not={mu}{9.0},]
{res/admm/mu_rho_kavg_pegreg252x504.csv};
@ -499,11 +1094,11 @@
legend columns=1,
legend style={draw=white!15!black}]
\addlegendimage{NavyBlue, line width=1pt}
\addlegendimage{scol0, line width=1pt}
\addlegendentry{$\mu = 9$}
\addlegendimage{RedOrange, line width=1pt}
\addlegendimage{scol2, line width=1pt}
\addlegendentry{$\mu = 5$}
\addlegendimage{ForestGreen, line width=1pt}
\addlegendimage{scol1, line width=1pt}
\addlegendentry{$\mu = 2$}
\end{axis}
\end{tikzpicture}

View File

@ -7,283 +7,15 @@
\label{sub:Comparison of Simulation Results}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Convergence Behavior}
\vspace*{-3mm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\item Minimum number of iterations independent of SNR
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\begin{subfigure}[t]{0.5\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={Iterations},
ylabel={Average $\lVert \boldsymbol{c}-\boldsymbol{\hat{c}} \rVert$},
width=0.9\textwidth,
height=0.675\textwidth,
%legend pos=outer north east,
]
\addplot [ForestGreen, mark=none, line width=1pt]
table [col sep=comma,
discard if not={omega}{0.0774263682681127},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_1db.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot [NavyBlue, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.0774263682681127},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_3db.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot [RedOrange, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.052233450742668434},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_5db.csv};
\addlegendentry{$E_b / N_0 = \SI{5}{dB}$}
\addplot [RoyalPurple, mark=none, line width=1pt]
table [col sep=comma, discard if not={omega}{0.052233450742668434},
discard if gt={k}{101},
x=k, y=err]
{res/proximal/2d_avg_error_20433484_8db.csv};
\addlegendentry{$E_b / N_0 = \SI{8}{dB}$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[t]{0.5\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
width=0.9\textwidth,
height=0.675\textwidth,
% legend pos=outer north east,
xlabel={Iteration},
ylabel={Average $\left\Vert \hat{\boldsymbol{c}} - \boldsymbol{c} \right\Vert$}
]
\addplot[ForestGreen, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{1.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot[RedOrange, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{2.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
\addplot[NavyBlue, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{3.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot[RoyalPurple, line width=1pt]
table [col sep=comma, x=k, y=err,
discard if not={SNR}{4.0},
discard if gt={k}{101}]
{res/admm/avg_error_20433484.csv};
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\end{figure}
\smallskip
\smallskip
\smallskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Time Complexity}
\vspace*{-6.5mm}
\begin{itemize}
\item Codes: BCH $\left( 31, 11 \right)$; BCH $\left( 31, 26 \right)$;
\citereference{Mac23, 96.3.965; 204.33.484; 204.55.187; 408.33.844; PEGReg252x504}
\item Measured performance: $\sim\SI{10000}{}$ frames/s
on Intel Core i7-7700HQ @ 2.80GHz; $n=204$
\item Both algorithms are $\mathcal{O}\left( n \right)$ on average
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$n$}, ylabel={time per frame (ms)},
legend style={at={(0.05,0.6)},anchor=south west},
legend cell align={left},
width=0.43\textwidth,
height=0.32\textwidth,
]
\addplot[RedOrange, only marks, mark=square*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/proximal/fps_vs_n.csv};
\addlegendentry{proximal}
\addplot[Gray, only marks, mark=*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/hybrid/fps_vs_n.csv};
\addlegendentry{improved ($N=12$)}
\addplot[NavyBlue, only marks, mark=triangle*]
table [col sep=comma, x=n, y=spf,
y expr=\thisrow{spf} * 1000]
{res/admm/fps_vs_n.csv};
\addlegendentry{ADMM}
\end{axis}
\end{tikzpicture}
\end{figure}
\smallskip
\smallskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Decoding Performance}
\vspace{-0.5cm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\end{itemize}
\begin{figure}[H]
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$}, ylabel={BER},
ymode=log,
legend columns=2,
legend style={at={(0.5,-0.45)},anchor=south},
ymax=1.5, ymin=3e-8,
width=0.45\textwidth,
height=0.33\textwidth,
]
\addplot[RedOrange, mark=*, line width=1pt]
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=BER, col sep=comma,
discard if not={mu}{3.0},
%discard if gt={SNR}{4.0}
]
{res/admm/ber_2d_20433484.csv};
\addplot [RoyalPurple, mark=*, line width=1pt]
table [x=SNR, y=BP, col sep=comma] {res/ber_paper.csv};
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$}, ylabel={FER},
ymode=log,
legend columns=2,
legend style={at={(0.5,-0.45)},anchor=south},
ymax=1.5, ymin=3e-8,
width=0.45\textwidth,
height=0.33\textwidth,
]
\addplot[RedOrange, mark=*, solid, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma,
discard if not={mu}{3.0},
%discard if gt={SNR}{4.0}
]
{res/admm/ber_2d_20433484.csv};
\addplot[Black, line width=1pt, mark=*]
table [col sep=comma, x=SNR, y=FER,
%discard if gt={SNR}{3.0}
]
{res/generic/fer_ml_20433484.csv};
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[hide axis,
xmin=10, xmax=50,
ymin=0, ymax=0.4,
legend columns=3,
legend style={draw=white!15!black,legend cell align=left}]
\addlegendimage{RedOrange, mark=*, line width=1pt}
\addlegendentry{Proximal}
\addlegendimage{NavyBlue, mark=*, line width=1pt}
\addlegendentry{ADMM}
\addlegendimage{Black, mark=*, line width=1pt}
\addlegendentry{ML}
\addlegendimage{RedOrange, mark=triangle, densely dashed, line width=1pt}
\addlegendentry{Improved ($N$=12)}
\addlegendimage{RoyalPurple, mark=*, line width=1pt}
\addlegendentry{BP}
\end{axis}
\end{tikzpicture}
\end{figure}
\smallskip
\smallskip
\smallskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\begin{frame}[t]
% \frametitle{Decoding Performance}
% \frametitle{Comparison: Decoding Performance}
%
% \vspace*{-5mm}
% \vspace{-0.5cm}
%
% \begin{itemize}
% \item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
% \end{itemize}
%
% \begin{figure}[H]
% \centering
@ -291,433 +23,99 @@
% \begin{tikzpicture}
% \begin{axis}[
% grid=both,
% xlabel={$E_b / N_0 \left( \text{dB} \right) $}, ylabel={FER},
% xlabel={$E_b / N_0$}, ylabel={BER},
% ymode=log,
% ymax=1.5, ymin=5e-5,
% legend columns = 3,
% legend style={at={(0.5,-0.5)},anchor=south},
% legend columns=2,
% legend style={at={(0.5,-0.45)},anchor=south},
% ymax=1.5, ymin=3e-8,
% width=0.45\textwidth,
% height=0.3375\textwidth,
% height=0.33\textwidth,
% ]
%
% \addplot[RedOrange, line width=1pt, mark=*, solid]
% table [x=SNR, y=FER, col sep=comma,
% discard if not={gamma}{0.05},
% discard if gt={SNR}{5.5}]
% \addplot[RedOrange, mark=*, line width=1pt]
% table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
% {res/proximal/2d_ber_fer_dfr_20433484.csv};
% \addlegendentry{Proximal decoding}
% \addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
% table [x=SNR, y=FER, col sep=comma,
% \addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
% table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
% {res/hybrid/2d_ber_fer_dfr_20433484.csv};
%
% \addplot[NavyBlue, line width=1pt, mark=*]
% table [x=SNR, y=BER, col sep=comma,
% discard if not={mu}{3.0},
% discard if gt={SNR}{4.0}]
% %discard if gt={SNR}{4.0}
% ]
% {res/admm/ber_2d_20433484.csv};
% \addlegendentry{ADMM}
% \addplot[PineGreen, line width=1pt, mark=triangle, solid]
% table [col sep=comma, x=SNR, y=FER,
% discard if gt={SNR}{3.0}]
% {res/generic/fer_ml_20433484.csv};
% \addlegendentry{ML}
%
% \addplot [RoyalPurple, mark=*, line width=1pt]
% table [x=SNR, y=BP, col sep=comma] {res/ber_paper.csv};
% \end{axis}
% \end{tikzpicture}
% \begin{tikzpicture}
% \begin{axis}[
% grid=both,
% xlabel={$E_b / N_0$}, ylabel={FER},
% ymode=log,
% legend columns=2,
% legend style={at={(0.5,-0.45)},anchor=south},
% ymax=1.5, ymin=3e-8,
% width=0.45\textwidth,
% height=0.33\textwidth,
% ]
%
% \caption{Comparison of FER of proximal decoding and LP decoding using ADMM%
% \protect\footnotemark{}}
% \end{figure}%
% \addplot[RedOrange, mark=*, solid, line width=1pt]
% table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
% {res/proximal/2d_ber_fer_dfr_20433484.csv};
% \addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
% table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
% {res/hybrid/2d_ber_fer_dfr_20433484.csv};
%
% \footnotetext{Simulation performed with (3,6) regular LDPC code with $n=204, k=102$
% \cite[Code: 204.33.484]{mackay_enc}}
% \addplot[NavyBlue, line width=1pt, mark=*]
% table [x=SNR, y=FER, col sep=comma,
% discard if not={mu}{3.0},
% %discard if gt={SNR}{4.0}
% ]
% {res/admm/ber_2d_20433484.csv};
% \addplot[Black, line width=1pt, mark=*]
% table [col sep=comma, x=SNR, y=FER,
% %discard if gt={SNR}{3.0}
% ]
% {res/generic/fer_ml_20433484.csv};
% \end{axis}
% \end{tikzpicture}
% \begin{tikzpicture}
% \begin{axis}[hide axis,
% xmin=10, xmax=50,
% ymin=0, ymax=0.4,
% legend columns=3,
% legend style={draw=white!15!black,legend cell align=left}]
%
% \addlegendimage{RedOrange, mark=*, line width=1pt}
% \addlegendentry{Proximal}
%
% \addlegendimage{NavyBlue, mark=*, line width=1pt}
% \addlegendentry{ADMM}
%
% \addlegendimage{Black, mark=*, line width=1pt}
% \addlegendentry{ML}
%
% \addlegendimage{RedOrange, mark=triangle, densely dashed, line width=1pt}
% \addlegendentry{Improved ($N$=12)}
%
% \addlegendimage{RoyalPurple, mark=*, line width=1pt}
% \addlegendentry{BP}
% \end{axis}
% \end{tikzpicture}
% \end{figure}
%
% \smallskip
% \smallskip
% \smallskip
%
% \addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
% Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
%\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Comparison: Decoding Performance}
\captionsetup[subfigure]{font=footnotesize}
\hspace*{-0.4cm}
\begin{minipage}[c]{0.9\textwidth}
\centering
\begin{figure}[H]
\vspace*{-0.8cm}
\centering
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*, solid]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_963965.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_963965.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
%{res/hybrid/2d_ber_fer_dfr_963965.csv};
{res/admm/ber_2d_963965.csv};
\addplot[Black, line width=1pt, mark=*]
table [col sep=comma, x=SNR, y=FER,]
{res/generic/fer_ml_9633965.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=96, k=48$
\citereference{Mac23, 96.33.965}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05},
discard if gt={SNR}{5.5}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma,
discard if not={mu}{3.0},
discard if gt={SNR}{5.5}]
{res/admm/ber_2d_20433484.csv};
\addplot[Black, line width=1pt, mark=*]
table [col sep=comma, x=SNR, y=FER,
discard if gt={SNR}{5.5}]
{res/generic/fer_ml_20433484.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
\citereference{Mac23, 204.33.484}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_40833844.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_40833844.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=408, k=204$
\citereference{Mac23, 408.33.844}}
\end{subfigure}%
\vspace*{-2mm}
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_bch_31_26.csv};
\addplot[Black, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma,
discard if gt={SNR}{5.5},
discard if lt={SNR}{1},
]
{res/generic/fer_ml_bch_31_26.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{BCH code with $n=31, k=26$}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_20455187.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_20455187.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{$\left( 5, 10 \right)$-regular LDPC code with $n=204, k=102$
\citereference{Mac23, 204.55.187}}
\end{subfigure}%
\begin{subfigure}[t]{0.33\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}[
grid=both,
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
ymode=log,
ymax=1.5, ymin=8e-5,
width=1.2\textwidth,
height=0.825\textwidth,
]
\addplot[RedOrange, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot[RedOrange, mark=triangle, densely dashed, line width=1pt]
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05}, discard if gt={SNR}{5.5}]
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
\addplot[NavyBlue, line width=1pt, mark=*]
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
{res/admm/ber_2d_pegreg252x504.csv};
\end{axis}
\end{tikzpicture}
\vspace*{-2mm}
\caption{LDPC code (progressive edge growth construction) with $n=504, k=252$
\citereference{Mac23, PEGReg252x504}}
\end{subfigure}%
\end{figure}
\end{minipage}%
\begin{minipage}[c]{0.1\textwidth}
\centering
\begin{figure}
\centering
\vspace*{-1.2cm}
\hspace*{2mm}
\begin{tikzpicture}[scale=0.8]
\begin{axis}[hide axis,
xmin=10, xmax=50,
ymin=0, ymax=0.4,
legend columns=1,
legend style={draw=white!15!black}]
\addlegendimage{RedOrange, line width=1pt, mark=*, solid}
\addlegendentry{Proximal}
\addlegendimage{RedOrange, line width=1pt, mark=triangle*, densely dashed}
\addlegendentry{Improved}
\addlegendimage{NavyBlue, line width=1pt, mark=*}
\addlegendentry{ADMM}
\addlegendimage{Black, line width=1pt, mark=*}
\addlegendentry{ML}
\end{axis}
\end{tikzpicture}
\end{figure}
\end{minipage}
\vspace*{-1mm}
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Theoretical Comparison}%
\label{sub:Theoretical Comparison}
\begin{frame}[t, fragile]
\frametitle{Comparison: Algorithm Structure}
\vspace*{-1cm}
\begin{figure}[h]
\centering
\begin{subfigure}[b]{0.47\textwidth}
\centering
\begin{align*}
\text{minimize}\hspace{2mm} & \textcolor{KITblue}{\underbrace{L\left(
\boldsymbol{y} \mid \tilde{\boldsymbol{x}} \right)}_{\text{Likelihood}}}
+ \textcolor{KITred}{\underbrace{\gamma h\left( \tilde{\boldsymbol{x}}
\right)} _{\text{Constraints}}} \\
\text{subject to}\hspace{2mm} &\tilde{\boldsymbol{x}} \in \mathbb{R}^n
\end{align*}
\vspace*{-5mm}
\begin{algorithm}[caption={}, label={},
basicstyle=\fontsize{10}{18}\selectfont
]
Initialize $\boldsymbol{r}, \boldsymbol{s}, \omega, \gamma$
while stopping critierion unfulfilled do
$\textcolor{KITblue}{\boldsymbol{r} \leftarrow \boldsymbol{r}
+ \omega \nabla L\left( \boldsymbol{y} \mid \boldsymbol{s} \right)} $
$\textcolor{KITred}{\boldsymbol{s} \leftarrow
\textbf{prox}_{\gamma h}\left( \boldsymbol{r} \right)} $|\Suppressnumber|
|\Reactivatenumber|
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}\hfill%
\begin{subfigure}[b]{0.5\textwidth}
\centering
\begin{align*}
\text{minimize}\hspace{5mm} &
\textcolor{KITblue}{\underbrace{\boldsymbol{\gamma}^\text{T}
\tilde{\boldsymbol{c}}}_{\text{Likelihood}}}
+ \textcolor{KITred}{\underbrace{\sum\nolimits_{j\in\mathcal{J}}
g_j\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}}
\right)}_{\text{Constraints}}} \\
\text{subject to}\hspace{5mm} &
\tilde{\boldsymbol{c}} \in \left[ 0, 1 \right]^n
\end{align*}
\vspace*{-5mm}
\begin{algorithm}[caption={}, label={},
basicstyle=\fontsize{10}{18}\selectfont
]
Initialize $\tilde{\boldsymbol{c}}, \boldsymbol{z}, \boldsymbol{u}, \boldsymbol{\gamma}, \rho$
while stopping criterion unfulfilled do
$\textcolor{KITblue}{\tilde{\boldsymbol{c}} \leftarrow \argmin_{\tilde{\boldsymbol{c}}}
\left( \boldsymbol{\gamma}^\text{T}\tilde{\boldsymbol{c}}
+ \frac{\rho}{2}\sum_{j\in\mathcal{J}} \left\Vert
\boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j
+ \boldsymbol{u}_j \right\Vert \right)}$
$\textcolor{KITred}{\boldsymbol{z}_j \leftarrow \textbf{prox}_{g_j}
\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}}
+ \boldsymbol{u}_j \right), \hspace{5mm}\forall j\in\mathcal{J}}$
$\boldsymbol{u}_j \leftarrow \boldsymbol{u}_j
+ \tilde{\boldsymbol{c}} - \boldsymbol{z}_j, \hspace{14.5mm}\forall j\in\mathcal{J}$
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}%
\end{figure}%
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t, fragile]
\frametitle{Comparison: Algorithm Structure}
\vspace*{-0.6cm}
\begin{figure}[h]
\centering
\begin{subfigure}{0.48\textwidth}
\centering
\begin{algorithm}[caption={}, label={},]
Initialize $\boldsymbol{r}, \boldsymbol{s}, \omega, \gamma$
while stopping critierion unfulfilled do
for $j$ in $\mathcal{J}$ do
$p_j \leftarrow \prod_{i\in N_c\left( j \right) } r_i $
$\textcolor{KITblue}{M_{j\to i} \leftarrow p_j^2 - p_j}$|\Suppressnumber|
|\vspace{0.7mm}\Reactivatenumber|
end for
for $i$ in $\mathcal{I}$ do
$s_i \leftarrow s_i + \gamma \left[ 4\left( s_i^2 - 1 \right)s_i
\phantom{\frac{4}{s_i}}\right.$|\Suppressnumber|
|\Reactivatenumber|$\left.+ \frac{4}{s_i}\sum_{j\in N_v\left( i \right) }
M_{j\to i} \right] $
$r_i \leftarrow r_i + \omega \left( s_i - y_i \right)$
end for
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}%
\hfill
\begin{subfigure}{0.48\textwidth}
\centering
\begin{algorithm}[caption={}, label={},]
Initialize $\tilde{\boldsymbol{c}}, \boldsymbol{z}, \boldsymbol{u}, \boldsymbol{\gamma}, \rho$
while stopping criterion unfulfilled do
for $j$ in $\mathcal{J}$ do
$\boldsymbol{z}_j \leftarrow \Pi_{P_{d_j}}\left(
\boldsymbol{T}_j\tilde{\boldsymbol{c}} + \boldsymbol{u}_j\right)$
$\boldsymbol{u}_j \leftarrow \boldsymbol{u}_j + \boldsymbol{T}_j\tilde{\boldsymbol{c}}
- \boldsymbol{z}_j$
$\textcolor{KITblue}{M_{j\to i} \leftarrow \left( z_j \right)_i - \left( u_j \right)_i,
\hspace{3mm} \forall i \in N_c\left( j \right)}$
end for
for $i$ in $\mathcal{I}$ do
$\tilde{c}_i \leftarrow \frac{1}{d_i}
\left(\sum_{j\in N_v\left( i \right) } M_{j\to i}
- \frac{\gamma_i}{\mu} \right)$|\Suppressnumber|
|\vspace{7mm}\Reactivatenumber|
end for
end while
return $\hat{\boldsymbol{c}}$
\end{algorithm}
\end{subfigure}%
\end{figure}%
\end{frame}

View File

@ -828,104 +828,6 @@
\stopreferences
\end{frame}
% TODO: Move this to appendix (or remove it if other slide contains this
% information anyway)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{LP Decoding using ADMM: Choice of Penalty\\
Parameters}
\vspace*{-5mm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\item No clear optimum value
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\begin{subfigure}[c]{0.48\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$\mu$}, ylabel={FER},
ymode=log,
width=0.8\textwidth,
height=0.6\textwidth,
]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{2.0},]
{res/admm/ber_2d_20433484.csv};
\addplot[scol1, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{3.0},]
{res/admm/ber_2d_20433484.csv};
\addplot[scol2, line width=1pt]
table [col sep=comma, x=mu, y=FER,
discard if not={SNR}{4.0},]
{res/admm/ber_2d_20433484.csv};
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[c]{0.48\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
grid=both,
xlabel={$\rho$}, ylabel={FER},
ymode=log,
width=0.8\textwidth,
height=0.6\textwidth,
]
\addplot[scol0, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{2.0},]
{res/admm/ber_2d_20433484_rho.csv};
\addplot[scol1, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{3.0},]
{res/admm/ber_2d_20433484_rho.csv};
\addplot[scol2, line width=1pt]
table [col sep=comma, x=rho, y=FER,
discard if not={SNR}{4.0},]
{res/admm/ber_2d_20433484_rho.csv};
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[t]{\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[hide axis,
xmin=10, xmax=50,
ymin=0, ymax=0.4,
legend columns=3,
legend style={draw=white!15!black,legend cell align=left}]
\addlegendimage{scol0, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
\addlegendimage{scol1, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addlegendimage{scol2, line width=1pt}
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}%
\bigskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}.}
\end{frame}
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\begin{frame}[t]

View File

@ -7,7 +7,7 @@
\label{sub:Decoding Algorithm}
\begin{frame}[t]
\frametitle{Proximal Decoding: General Idea \citereference{WT22}}
\frametitle{Proximal Decoding: General Approach \citereference{WT22}}
\vspace*{-0.7cm}
@ -71,7 +71,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: General Idea}
\frametitle{Proximal Decoding: General Approach}
\vspace*{-3mm}
@ -137,8 +137,7 @@ return $\boldsymbol{\hat{c}}$
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Analysis of Simulation Results}%
\label{sub:Analysis of Simulation Results}
\subsection{Simulation Results}%
\begin{frame}[t]
@ -169,27 +168,27 @@ return $\boldsymbol{\hat{c}}$
]
\addplot [scol0, line width=1pt]
table [x=SNR, y=BER, col sep=comma,
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.15},
discard if gt={SNR}{5.5},]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.15$}
\addplot [scol1, line width=1pt]
table [x=SNR, y=BER, col sep=comma,
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.01},
discard if gt={SNR}{5.5},]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.01$}
\addplot [scol2, line width=1pt]
table [x=SNR, y=BER, col sep=comma,
table [x=SNR, y=FER, col sep=comma,
discard if not={gamma}{0.05},
discard if gt={SNR}{5.5},]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.05$}
\addplot [KITorange, line width=1pt]
table [x=SNR, y=BER, col sep=comma] {res/generic/bp_20433484.csv};
table [x=SNR, y=FER, col sep=comma] {res/generic/bp_20433484.csv};
\addlegendentry{BP}
\end{axis}
@ -208,94 +207,6 @@ return $\boldsymbol{\hat{c}}$
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: Choice of $\gamma$}
\vspace*{-5mm}
\begin{itemize}
\item (3,6) regular LDPC code with $n=204, k=102$ \citereference{Mac23, 204.33.484}
\item Observation: not great benefit in finding the optimal value for $\gamma$
\end{itemize}
\bigskip
\begin{figure}[H]
\centering
\hspace*{-3.5cm}
\begin{subfigure}[c]{0.4\textwidth}
\centering
\begin{tikzpicture}
\begin{semilogyaxis}[xlabel={$E_b / N_0$ (dB)}, ylabel={BER},
grid=both, grid style={line width=.1pt},
width=\textwidth,
height=0.75\textwidth,
legend style={at={(0.05,0.05)},anchor=south west},
ymin=3e-7, ymax=1.5,]
\addplot [scol0, line width=1pt] table [x=SNR, y=BER,
col sep=comma, discard if not={gamma}{0.15}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.15$}
\addplot [scol1, line width=1pt] table [x=SNR, y=BER,
col sep=comma, discard if not={gamma}{0.01}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.01$}
\addplot [scol2, line width=1pt] table [x=SNR, y=BER,
col sep=comma, discard if not={gamma}{0.05}]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.05$}
\end{semilogyaxis}
\end{tikzpicture}
\end{subfigure}%
\hspace{5mm}
\begin{subfigure}[c]{0.4\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[view={75}{30},
zmode=log,
xlabel={$E_b / N_0$ (dB)},
ylabel={$\gamma$},
zlabel={BER},
width=\textwidth,
height=0.75\textwidth,
legend pos=outer north east,]
\addplot3[surf,
mesh/rows=17, mesh/cols=14,
colormap name={viridis}] table [col sep=comma,
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = \left[ 0\text{:}0.01\text{:}0.16 \right] $}
\addplot3[scol1, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.01},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.01$}
\addplot3[scol2, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.05},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.05$}
\addplot3[scol0, line width=1.5] table [col sep=comma,
discard if not={gamma}{0.15},
x=SNR, y=gamma, z=BER]
{res/proximal/2d_ber_fer_dfr_20433484.csv};
\addlegendentry{$\gamma = 0.15$}
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}
\bigskip
\addreference{Mac23}{David J.C. MacKay: \emph{Encyclopedia of Sparse Graph Codes}.
Jan. 2023. URL: \url{http://www.inference.org.uk/mackay/codes/data.html}}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\begin{frame}[t]
% \frametitle{Proximal Decoding: Choice of $\gamma$}
@ -512,6 +423,7 @@ return $\boldsymbol{\hat{c}}$
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Improved Algorithm}%
\begin{frame}[t, fragile]
\frametitle{Proximal Decoding: Frame Error Rate}

View File

@ -3,8 +3,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Motivation}%
\label{sub:Motivation}
%\subsection{Motivation}%
%\label{sub:Motivation}
\begin{frame}[t]
\frametitle{Motivation}
@ -31,8 +31,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Presumptions}%
\label{sub:Presumptions}
%\subsection{Presumptions}%
%\label{sub:Presumptions}
\begin{frame}[t]
\frametitle{Presumptions: Channel \& Modulation}
@ -88,8 +88,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{Optimization as a Decoding Method}%
\label{sub:Optimization as a Decoding Method}
%\subsection{Optimization as a Decoding Method}%
%\label{sub:Optimization as a Decoding Method}
\begin{frame}[t]
\frametitle{Optimization as a Decoding Method}

View File

@ -53,7 +53,7 @@
| 33 | Comparison: FER and BER | S |
| 34 | Comparison: FER and BER for more codes | S |
| 35 | Comparison: Algorithm structure | - |
| 36 | Comparison: Algorithm structure: Message passing | S |
| 36 | Comparison: Algorithm structure: Message passing | X |
| 38 | Conclusion and outlook | R |
| 41 | Supplementary slides: Choice of gamma for more codes | - |
| 42 | Supplementary slides: Choice of mu and rho for more codes | - |