Fininshed first version of admm part and comparison
This commit is contained in:
458
latex/presentations/final/sections/comparison.tex
Normal file
458
latex/presentations/final/sections/comparison.tex
Normal file
@@ -0,0 +1,458 @@
|
||||
\section{Comparison}%
|
||||
\label{sec:Comparison}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{Comparison of Simulation Results}%
|
||||
\label{sub:Comparison of Simulation Results}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{Decoding Performance}
|
||||
|
||||
\vspace*{-5mm}
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0 \left( \text{dB} \right) $}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=5e-5,
|
||||
legend columns = 3,
|
||||
legend style={at={(0.5,-0.5)},anchor=south},
|
||||
width=0.45\textwidth,
|
||||
height=0.3375\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}]
|
||||
{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,
|
||||
discard if not={mu}{3.0},
|
||||
discard if gt={SNR}{4.0}]
|
||||
{res/admm/ber_2d_20433484.csv};
|
||||
\addlegendentry{LP Decoding}
|
||||
\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}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Comparison of FER of proximal decoding and LP decoding using ADMM%
|
||||
\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{Simulation performed with (3,6) regular LDPC code with $n=204, k=102$
|
||||
\cite[Code: 204.33.484]{mackay_enc}}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{Decoding Performance}
|
||||
|
||||
\captionsetup[subfigure]{font=footnotesize}
|
||||
|
||||
\hspace*{-0.4cm}
|
||||
\begin{minipage}[c]{0.9\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{figure}[H]
|
||||
\vspace*{-0.5cm}
|
||||
\centering
|
||||
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
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[PineGreen, line width=1pt, mark=triangle]
|
||||
% table [col sep=comma, x=SNR, y=FER,]
|
||||
% {res/generic/fer_ml_9633965.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=96, k=48$
|
||||
\cite[\text{96.3.965}]{mackay_enc}}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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_bch_31_26.csv};
|
||||
\addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
|
||||
{res/admm/ber_2d_bch_31_26.csv};
|
||||
% \addplot[PineGreen, line width=1pt, mark=triangle*]
|
||||
% 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}
|
||||
|
||||
\caption{BCH code with $n=31, k=26$}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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},
|
||||
discard if gt={SNR}{5.5}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
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[PineGreen, line width=1pt, mark=triangle, solid]
|
||||
% table [col sep=comma, x=SNR, y=FER,
|
||||
% discard if gt={SNR}{5.5}]
|
||||
% {res/generic/fer_ml_20433484.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
|
||||
\cite[\text{204.33.484}]{mackay_enc}}
|
||||
\end{subfigure}%
|
||||
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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_20455187.csv};
|
||||
\addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
|
||||
{res/admm/ber_2d_20455187.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{$\left( 5, 10 \right)$-regular LDPC code with $n=204, k=102$
|
||||
\cite[\text{204.55.187}]{mackay_enc}}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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_40833844.csv};
|
||||
\addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
|
||||
{res/admm/ber_2d_40833844.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{$\left( 3, 6 \right)$-regular LDPC code with $n=204, k=102$
|
||||
\cite[\text{204.33.484}]{mackay_enc}}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[t]{0.33\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.4]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$ (dB)}, ylabel={FER},
|
||||
ymode=log,
|
||||
ymax=1.5, ymin=8e-5,
|
||||
% width=1.1\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_pegreg252x504.csv};
|
||||
\addplot[NavyBlue, line width=1pt, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=FER, col sep=comma, discard if not={mu}{3.0}]
|
||||
{res/admm/ber_2d_pegreg252x504.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{LDPC code (progressive edge growth construction) with $n=504, k=252$
|
||||
\cite[\text{PEGReg252x504}]{mackay_enc}}
|
||||
\end{subfigure}%
|
||||
\end{figure}
|
||||
\end{minipage}%
|
||||
\begin{minipage}[c]{0.1\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\vspace*{-1.2cm}
|
||||
\hspace*{-0.5cm}
|
||||
\begin{tikzpicture}[scale=0.7]
|
||||
\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 decoding}
|
||||
|
||||
\addlegendimage{NavyBlue, line width=1pt, mark=triangle, densely dashed}
|
||||
\addlegendentry{LP decoding}
|
||||
|
||||
% \addlegendimage{PineGreen, line width=1pt, mark=triangle*, solid}
|
||||
% \addlegendentry{ML}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{figure}
|
||||
\end{minipage}
|
||||
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{Time Complexity}
|
||||
|
||||
\vspace*{-8mm}
|
||||
|
||||
\begin{itemize}
|
||||
\item Both algorithms are $\mathcal{O}\left( n \right)$ on average
|
||||
\item LP decoding implementation significantly faster
|
||||
\end{itemize}
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[grid=both,
|
||||
xlabel={$n$}, ylabel={Time per frame (s)},
|
||||
width=0.45\textwidth,
|
||||
height=0.3375\textwidth,
|
||||
legend style={at={(0.03,0.96)},anchor=north west},
|
||||
%legend pos=outer north east,
|
||||
legend cell align={left},]
|
||||
|
||||
\addplot[RedOrange, only marks, mark=*]
|
||||
table [col sep=comma, x=n, y=spf]
|
||||
{res/proximal/fps_vs_n.csv};
|
||||
\addlegendentry{Proximal decoding}
|
||||
\addplot[RoyalPurple, only marks, mark=triangle*]
|
||||
table [col sep=comma, x=n, y=spf]
|
||||
{res/admm/fps_vs_n.csv};
|
||||
\addlegendentry{LP decoding}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\vspace*{-2mm}
|
||||
|
||||
\caption{Timing requirements of the proximal decoding and LP decoding imlementations%
|
||||
\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{The points shown were calculated by evaluating the metadata
|
||||
of BER simulation results for the following codes:
|
||||
BCH $\left( 31, 11 \right)$;
|
||||
BCH $\left( 31, 26 \right)$;
|
||||
\cite[\text{96.3.965; 204.33.484;
|
||||
204.55.187; 408.33.844; PEGReg252x504}]{mackay_enc}
|
||||
}
|
||||
\end{frame}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{Theoretical Comparison}%
|
||||
\label{sub:Theoretical Comparison}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t, fragile]
|
||||
\frametitle{Comparison of Proximal Decoding and\\LP Decoding using ADMM}
|
||||
|
||||
\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 $\boldsymbol{s}$
|
||||
\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 \mathbb{R}^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 $\tilde{\boldsymbol{c}}$
|
||||
\end{algorithm}
|
||||
\end{subfigure}%
|
||||
\end{figure}%
|
||||
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t, fragile]
|
||||
\frametitle{Comparison of Proximal Decoding and\\LP Decoding using ADMM}
|
||||
|
||||
\vspace*{-1cm}
|
||||
|
||||
\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} \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} \right] $
|
||||
$r_i \leftarrow r_i + \omega \left( s_i - y_i \right)$
|
||||
end for
|
||||
end while
|
||||
return $\boldsymbol{s}$
|
||||
\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 $\tilde{\boldsymbol{c}}$
|
||||
\end{algorithm}
|
||||
\end{subfigure}%
|
||||
\end{figure}%
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{Conclusion}
|
||||
|
||||
\end{frame}
|
||||
@@ -123,8 +123,8 @@ return $\boldsymbol{\hat{c}}$
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{LP Decoding}%
|
||||
\label{sub:LP Decoding}
|
||||
\subsection{LP Decoding using ADMM}%
|
||||
\label{sub:LP Decoding using ADMM}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding \cite{feldman_paper}}
|
||||
@@ -757,10 +757,6 @@ return $\boldsymbol{\hat{c}}$
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{LP Decoding using ADMM}%
|
||||
\label{sub:LP Decoding using ADMM}
|
||||
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding using ADMM}
|
||||
|
||||
@@ -838,144 +834,6 @@ return $\boldsymbol{\hat{c}}$
|
||||
\end{frame}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t, fragile]
|
||||
\frametitle{Comparison of Proximal Decoding and\\LP Decoding using ADMM}
|
||||
|
||||
\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 $\boldsymbol{s}$
|
||||
\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 \mathbb{R}^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 $\tilde{\boldsymbol{c}}$
|
||||
\end{algorithm}
|
||||
\end{subfigure}%
|
||||
\end{figure}%
|
||||
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t, fragile]
|
||||
\frametitle{Comparison of Proximal Decoding and\\LP Decoding using ADMM}
|
||||
|
||||
\vspace*{-0.75cm}
|
||||
|
||||
\begin{itemize}
|
||||
\item Both algorithms can be understood as message passing algorithms
|
||||
\end{itemize}
|
||||
|
||||
\vspace*{-0.25cm}
|
||||
|
||||
\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} \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} \right] $
|
||||
$r_i \leftarrow r_i + \omega \left( s_i - y_i \right)$
|
||||
end for
|
||||
end while
|
||||
\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
|
||||
\end{algorithm}
|
||||
\end{subfigure}%
|
||||
\end{figure}%
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%\begin{frame}[t]
|
||||
% \frametitle{LP Relaxation}
|
||||
|
||||
@@ -1570,23 +1570,345 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }d
|
||||
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%\begin{frame}[t]
|
||||
% \frametitle{Conclusion}
|
||||
%
|
||||
% \begin{itemize}
|
||||
% \item Analysis of proximal decoding for AWGN channels:
|
||||
% \begin{itemize}
|
||||
% \item Error correcting performance (BER, FER, decoding failures)
|
||||
% \item Computational performance ($\mathcal{O}\left( n \right) $ time complexity,
|
||||
% fast implementation possible)
|
||||
% \item Number of iterations independent of SNR
|
||||
% \end{itemize}
|
||||
% \item Suggestion for improvement of proximal decoding:
|
||||
% \begin{itemize}
|
||||
% \item Addition of ``ML-in-the-list'' step
|
||||
% \item Up to $\sim\SI{1}{dB}$ gain under certain conditions
|
||||
% \end{itemize}
|
||||
% \end{itemize}
|
||||
%\end{frame}
|
||||
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{LP Decoding using ADMM}%
|
||||
\label{sub:LP Decoding using ADMM}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding using ADMM}
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0 \left( \text{dB} \right) $}, ylabel={FER},
|
||||
ymode=log,
|
||||
width=0.45\textwidth,
|
||||
height=0.325\textwidth,
|
||||
%legend style={at={(0.03,0.04)},anchor=south west},
|
||||
legend pos=outer north east,
|
||||
]
|
||||
\addplot[RedOrange, line width=1pt]
|
||||
table [col sep=comma, x=SNR, y=FER,
|
||||
discard if gt={SNR}{2.2},
|
||||
]
|
||||
{res/admm/fer_paper_margulis.csv};
|
||||
\addlegendentry{ADMM (Barman et al.)}
|
||||
\addplot[NavyBlue, only marks, mark=o, line width=1pt]
|
||||
table [col sep=comma, x=SNR, y=FER,]
|
||||
{res/admm/ber_margulis264013203.csv};
|
||||
\addlegendentry{ADMM (Own results)}
|
||||
\addplot[RoyalPurple, line width=1pt, densely dashed]
|
||||
table [col sep=comma, x=SNR, y=FER, discard if gt={SNR}{2.2},]
|
||||
{res/generic/fer_bp_mackay_margulis.csv};
|
||||
\addlegendentry{BP (Barman et al.)}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Comparison of datapoints from Barman et al. with own simulation results%
|
||||
\protect\footnotemark{}}
|
||||
\label{fig:admm:results}
|
||||
\end{figure}%
|
||||
%
|
||||
\footnotetext{``Margulis'' LDPC code with $n = 2640$, $k = 1320$
|
||||
\cite[\text{Margulis2640.1320.3}]{mackay_enc}; $K=200, \mu = 3.3, \rho=1.9,
|
||||
\epsilon_{\text{pri}} = 10^{-5}, \epsilon_{\text{dual}} = 10^{-5}$
|
||||
}%
|
||||
%
|
||||
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t]
|
||||
\frametitle{Conclusion}
|
||||
|
||||
\begin{itemize}
|
||||
\item Analysis of proximal decoding for AWGN channels:
|
||||
\begin{itemize}
|
||||
\item Error correcting performance (BER, FER, decoding failures)
|
||||
\item Computational performance ($\mathcal{O}\left( n \right) $ time complexity,
|
||||
fast implementation possible)
|
||||
\item Number of iterations independent of SNR
|
||||
\end{itemize}
|
||||
\item Suggestion for improvement of proximal decoding:
|
||||
\begin{itemize}
|
||||
\item Addition of ``ML-in-the-list'' step
|
||||
\item Up to $\sim\SI{1}{dB}$ gain under certain conditions
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
\frametitle{LP Decoding using ADMM: Choice of Penalty\\
|
||||
Parameters}
|
||||
|
||||
\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.9\textwidth,
|
||||
height=0.675\textwidth,
|
||||
]
|
||||
\addplot[ForestGreen, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=mu, y=FER,
|
||||
discard if not={SNR}{2.0},]
|
||||
{res/admm/ber_2d_20433484.csv};
|
||||
\addplot[RedOrange, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=mu, y=FER,
|
||||
discard if not={SNR}{3.0},]
|
||||
{res/admm/ber_2d_20433484.csv};
|
||||
\addplot[NavyBlue, line width=1pt, densely dashed, mark=*]
|
||||
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.9\textwidth,
|
||||
height=0.675\textwidth,
|
||||
]
|
||||
\addplot[ForestGreen, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=rho, y=FER,
|
||||
discard if not={SNR}{2.0},]
|
||||
{res/admm/ber_2d_20433484_rho.csv};
|
||||
\addplot[RedOrange, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=rho, y=FER,
|
||||
discard if not={SNR}{3.0},]
|
||||
{res/admm/ber_2d_20433484_rho.csv};
|
||||
\addplot[NavyBlue, line width=1pt, densely dashed, mark=*]
|
||||
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{ForestGreen, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
|
||||
\addlegendimage{RedOrange, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
|
||||
\addlegendimage{NavyBlue, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{Relation between $\mu$ and $\rho$ and decoding performance%
|
||||
\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{Simulation performed with (3,6) regular LDPC code with $n=204, k=102$
|
||||
\cite[Code: 204.33.484]{mackay_enc}}
|
||||
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding using ADMM: Choice of Penalty\\
|
||||
Parameters}
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{subfigure}[c]{0.48\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$\mu$}, ylabel={Average \# of iterations},
|
||||
width=0.9\textwidth,
|
||||
height=0.675\textwidth,
|
||||
]
|
||||
\addplot[ForestGreen, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=mu, y=k_avg,
|
||||
discard if not={SNR}{2.0},]
|
||||
{res/admm/mu_kavg_20433484.csv};
|
||||
\addplot[RedOrange, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=mu, y=k_avg,
|
||||
discard if not={SNR}{3.0},]
|
||||
{res/admm/mu_kavg_20433484.csv};
|
||||
\addplot[NavyBlue, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=mu, y=k_avg,
|
||||
discard if not={SNR}{4.0},]
|
||||
{res/admm/mu_kavg_20433484.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[c]{0.48\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$\rho$}, ylabel={Average \# of iterations},
|
||||
width=0.9\textwidth,
|
||||
height=0.675\textwidth,
|
||||
]
|
||||
\addplot[ForestGreen, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=rho, y=k_avg,
|
||||
discard if not={SNR}{2.0},]
|
||||
{res/admm/rho_kavg_20433484.csv};
|
||||
\addplot[RedOrange, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=rho, y=k_avg,
|
||||
discard if not={SNR}{3.0},]
|
||||
{res/admm/rho_kavg_20433484.csv};
|
||||
\addplot[NavyBlue, line width=1pt, densely dashed, mark=*]
|
||||
table [col sep=comma, x=rho, y=k_avg,
|
||||
discard if not={SNR}{4.0},]
|
||||
{res/admm/rho_kavg_20433484.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{ForestGreen, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{2}{dB}$}
|
||||
\addlegendimage{RedOrange, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
|
||||
\addlegendimage{NavyBlue, line width=1pt, densely dashed, mark=*}
|
||||
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{Relation between $\mu$ and $\rho$ and speed of convergence%
|
||||
\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{Simulation performed with (3,6) regular LDPC code with $n=204, k=102$
|
||||
\cite[Code: 204.33.484]{mackay_enc}}
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding using ADMM: Average Error}
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
width=0.5\textwidth,
|
||||
height=0.375\textwidth,
|
||||
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}{100}]
|
||||
{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}{100}]
|
||||
{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}{100}]
|
||||
{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}{100}]
|
||||
{res/admm/avg_error_20433484.csv};
|
||||
\addlegendentry{$E_b / N_0 = \SI{4}{dB}$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Average error for $\SI{100000}{}$ decodings\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{Simulation performed with (3,6) regular LDPC code with $n=204, k=102$
|
||||
\cite[Code: 204.33.484]{mackay_enc}}
|
||||
\end{frame}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t]
|
||||
\frametitle{LP Decoding using ADMM: Time Complexity}
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[grid=both,
|
||||
xlabel={$n$}, ylabel={Time per frame (s)},
|
||||
width=0.45\textwidth,
|
||||
height=0.3375\textwidth,
|
||||
legend style={at={(0.03,0.96)},anchor=north west},
|
||||
%legend pos=outer north east,
|
||||
legend cell align={left},]
|
||||
|
||||
% \addplot[RedOrange, only marks, mark=*]
|
||||
% table [col sep=comma, x=n, y=spf]
|
||||
% {res/proximal/fps_vs_n.csv};
|
||||
% \addlegendentry{Proximal decoding}
|
||||
\addplot[RoyalPurple, only marks, mark=triangle*]
|
||||
table [col sep=comma, x=n, y=spf]
|
||||
{res/admm/fps_vs_n.csv};
|
||||
% \addlegendentry{LP decoding using ADMM}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Timing requirements of the LP decoding imlementation%
|
||||
\protect\footnotemark{}}
|
||||
\end{figure}%
|
||||
|
||||
\footnotetext{The points shown were calculated by evaluating the metadata
|
||||
of BER simulation results for the following codes:
|
||||
BCH $\left( 31, 11 \right)$;
|
||||
BCH $\left( 31, 26 \right)$;
|
||||
\cite[\text{96.3.965; 204.33.484;
|
||||
204.55.187; 408.33.844; PEGReg252x504}]{mackay_enc}
|
||||
}
|
||||
|
||||
\end{frame}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user