Started adding proximal decoder examination results
This commit is contained in:
@@ -16,7 +16,12 @@
|
||||
\underbrace{\sum_{j=1}^{n} \left( x_j^2 - 1 \right)^2}_{\text{Bipolar constraint}}
|
||||
+ \underbrace{\sum_{i=1}^{m} \left[ \left(
|
||||
\prod_{j\in\mathcal{A}\left( i \right)} x_j\right) -1 \right]^2}
|
||||
_{\text{Parity constraint}}
|
||||
_{\text{Parity constraint}},
|
||||
\hspace{5mm}\mathcal{A}\left( i \right) \equiv \left\{
|
||||
j | j\in \mathcal{J},
|
||||
\boldsymbol{H}_{i,j} = 1
|
||||
\right\},
|
||||
i \in \mathcal{I}
|
||||
\end{align*}
|
||||
\item Approximation of prior PDF:
|
||||
\begin{align*}
|
||||
@@ -54,7 +59,7 @@
|
||||
= - \ln\left( f_{\boldsymbol{Y}}
|
||||
\left( \boldsymbol{y} | \boldsymbol{x} \right) \right)
|
||||
\end{align*}
|
||||
\todo{Note about explaning notational difference between $f$ and $f_X$ or $f_Y$}
|
||||
\note{Notational difference between $f$ and $f_X$ or $f_Y$}
|
||||
\item Code proximal operator:
|
||||
\begin{align*}
|
||||
\text{prox}_{\gamma h} \left( \boldsymbol{x} \right) &\equiv
|
||||
|
||||
@@ -7,14 +7,283 @@
|
||||
\label{sub:Ex Proximal Decoder}
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{Proximal Decoder}
|
||||
\frametitle{Proximal Decoder: Examination Results}
|
||||
\begin{itemize}
|
||||
\item AWGN Channel - LDPC Code with $n=204, k=102$:
|
||||
\vspace{2mm}
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\todo{TODO}
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR (dB)}, ylabel={Bit Error Rate},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
width=11.5cm,
|
||||
height=8cm,
|
||||
ytick={0, 10e-1, 10e-2, 10e-3, 10e-4},
|
||||
xtick={1, 2, 3, 4, 5},
|
||||
ymax=1.2, ymin=0.8e-4,
|
||||
]
|
||||
\addplot table [x=SNR, y=BER,
|
||||
col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.15$}
|
||||
\addplot table [x=SNR, y=BER,
|
||||
col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=BER,
|
||||
col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Simulation results for $\omega = 0.05, K=100$}
|
||||
\label{fig:sim_results_prox}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}{0.5\textwidth}
|
||||
\centering
|
||||
|
||||
\includegraphics[scale=0.6]{res/ber_paper}
|
||||
|
||||
\caption{Results from ``Proximal Decoding for LDPC Codes''}
|
||||
\label{fig:sim_results_prox}
|
||||
\end{subfigure}%
|
||||
|
||||
\end{figure}
|
||||
|
||||
\item Performance: $2800 \text{ transm.} / s$ - Intel Core i7-7700HQ @ 2.80GHz\\
|
||||
($\sim 10s$ for the shown plot)
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{ADMM}%
|
||||
\begin{frame}[t]
|
||||
\frametitle{Proximal Decoder: Choice of $\gamma$}
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{subfigure}[c]{0.5\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.52]
|
||||
\begin{semilogyaxis}[xlabel={SNR},ylabel={BER}, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
|
||||
\foreach \gamma in {0.01, 0.05, 0.15}{
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{\gamma}] {res/2d_ber_fer_dfr_20433484.csv};
|
||||
\legend{\gamma}
|
||||
}
|
||||
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
|
||||
\end{semilogyaxis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}%
|
||||
\begin{subfigure}[c]{0.5\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.7]
|
||||
\begin{axis}[view={75}{60},
|
||||
zmode=log,
|
||||
xlabel={SNR},
|
||||
ylabel={$\gamma$},
|
||||
zlabel={BER}]
|
||||
\addplot3[surf, mesh/rows=17, mesh/cols=10, colormap/viridis] table [col sep=comma, x=SNR, y=gamma, z=BER] {res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = \left[ 0\text{:}.01\text{:}.16 \right] $}
|
||||
\addplot3[red, line width=1.5] table[col sep=comma, discard if not={gamma}{0.05}, x=SNR, y=gamma, z=BER] {res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\addplot3[blue, line width=1.5] table[col sep=comma, discard if not={gamma}{0.01}, x=SNR, y=gamma, z=BER] {res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.01$}
|
||||
\addplot3[brown, line width=1.5] table[col sep=comma, discard if not={gamma}{0.15}, x=SNR, y=gamma, z=BER] {res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.15$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\end{subfigure}
|
||||
|
||||
\caption{BER for $\omega = 0.05, K=100$}
|
||||
\label{fig:ber_3d}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{frame}[t, fragile]
|
||||
\frametitle{Proximal Decoder: Frame Error Rate}
|
||||
|
||||
\begin{minipage}{.4\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{algorithm}[caption={}, label={},
|
||||
basicstyle=\fontsize{7.5}{9.5}\selectfont
|
||||
]
|
||||
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
|
||||
for $k=0$ to $K-1$ do
|
||||
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \omega \nabla L \left( \boldsymbol{s}^{(k)}; \boldsymbol{y} \right) $
|
||||
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
|
||||
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
|
||||
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
|
||||
If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
|
||||
end for
|
||||
Output $\boldsymbol{\hat{x}}$
|
||||
\end{algorithm}
|
||||
\end{minipage}%
|
||||
\begin{minipage}{.6\textwidth}
|
||||
\centering
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={BER},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-4,
|
||||
]
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.15$}
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}\\
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={FER},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-4,
|
||||
]
|
||||
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.15$}
|
||||
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={Decoding Failure Rate},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-4,
|
||||
]
|
||||
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.15$}
|
||||
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Simulation results for $\omega = 0.05, K=100$}
|
||||
\label{fig:simulation_results}
|
||||
\end{figure}
|
||||
\end{minipage}
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}[t]
|
||||
\frametitle{title}
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={BER},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-5,
|
||||
]
|
||||
% \addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.15$}
|
||||
% \addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484_hybrid.csv};
|
||||
\addlegendentry{hybrid $\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}\\
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={FER},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-5,
|
||||
]
|
||||
% \addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.15$}
|
||||
% \addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484_hybrid.csv};
|
||||
\addlegendentry{hybrid $\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\begin{tikzpicture}[scale=0.45]
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={SNR}, ylabel={Decoding Failure Rate},
|
||||
ymode=log,
|
||||
legend style={at={(0.05,0.05)},anchor=south west},
|
||||
ymax=1.5, ymin=0.8e-5,
|
||||
]
|
||||
% \addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.15$}
|
||||
% \addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.01}]
|
||||
% {res/2d_ber_fer_dfr_20433484.csv};
|
||||
% \addlegendentry{$\gamma = 0.01$}
|
||||
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484.csv};
|
||||
\addlegendentry{$\gamma = 0.05$}
|
||||
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/2d_ber_fer_dfr_20433484_hybrid.csv};
|
||||
\addlegendentry{hybrid $\gamma = 0.05$}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Simulation results for $\omega = 0.05, K=100$}
|
||||
\label{fig:simulation_results}
|
||||
\end{figure}
|
||||
|
||||
\end{frame}
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\subsection{ADMM: Examination Results}%
|
||||
\label{sub:Ex ADMM}
|
||||
|
||||
\begin{frame}[t]
|
||||
|
||||
@@ -56,7 +56,6 @@
|
||||
\left(0,\frac{1}{2}\left(\frac{k}{n}\frac{E_b}{N_0}\right)^{-1}\right),
|
||||
\hspace{2mm} \boldsymbol{y}, \boldsymbol{n} \in \mathbb{R}^n
|
||||
\end{align*}
|
||||
\todo{Why $\frac{1}{2}$}
|
||||
\item All zeros assumption:
|
||||
\begin{align*}
|
||||
\boldsymbol{c} = 0
|
||||
@@ -171,6 +170,7 @@
|
||||
\right\},
|
||||
j \in \mathcal{J}
|
||||
\end{align*}
|
||||
\todo{Is this correct? Shouldn't i and j be switched around?}
|
||||
\item ``Illegal configurations''
|
||||
\begin{align*}
|
||||
S \subseteq N\left( j \right), \left| S \right| \text{odd}
|
||||
@@ -237,7 +237,8 @@
|
||||
\caption{Relaxed polytope for $n=3$}
|
||||
\end{figure}
|
||||
\end{minipage}
|
||||
\todo{How is this a relaxation and not just an alternative formulation?}
|
||||
\todo{How is this a relaxation and not just an alternative formulation?
|
||||
We have just switched out valid codewords for invalid ones}
|
||||
\todo{Is LP Relaxation relevant as theoretical background?}
|
||||
\end{frame}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user