Added plot showing oscillation of estimate for bch 7 4

This commit is contained in:
2023-01-25 04:24:25 +01:00
parent d9d78a379e
commit 21e1c2375c
3 changed files with 550 additions and 51 deletions

View File

@@ -467,6 +467,203 @@ Output $\boldsymbol{\hat{x}}$
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: Oscillation of Estimate}
\begin{itemize}
\item $\nabla L$ and $\nabla h$ generally end up in an equilibrium
\end{itemize}
\begin{figure}[H]
\centering
\begin{subfigure}{\textwidth}
\centering
\begin{tikzpicture}[scale = 0.75]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_0]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_0]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_0]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}\\
\begin{subfigure}{0.33\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_1]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_1]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_1]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.33\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_2]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_2]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_2]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.32\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_3]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_3]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_3]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}\\
\begin{subfigure}{0.33\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_4]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_4]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_4]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.33\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_5]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_5]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_5]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.32\textwidth}
\centering
\begin{tikzpicture}[scale = 0.35]
\begin{axis}[
grid=both,
xlabel={k},
width=8cm,
height=3cm,
scale only axis,
]
\addplot +[mark=none, line width=0.7pt]
table [col sep=comma, x=k, y=comb_r_s_6]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_L_6]
{res/proximal/comp_bch_7_4_combined.csv};
\addplot +[mark=none]
table [col sep=comma, x=k, y=grad_h_6]
{res/proximal/comp_bch_7_4_combined.csv};
\addlegendentry{est}
\addlegendentry{$\nabla L$}
\addlegendentry{$\nabla h$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\end{figure}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\newcommand{\tikzbracemark}[1]{\tikz[overlay,remember picture] \node (#1) {};}
%
@@ -580,57 +777,6 @@ Output $\boldsymbol{\hat{x}}$
%\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: Average Error}
\setcounter{footnote}{0}
\begin{figure}[H]
\vspace*{-0.5cm}
\centering
\begin{tikzpicture}[scale=0.7]
\begin{axis}[
grid=both,
xlabel={k},
ylabel={Average $\left| \boldsymbol{x}-\boldsymbol{\hat{x}} \right|$},
]
\addplot table [col sep=comma,
discard if not={omega}{0.0774263682681127},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_1db.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.0774263682681127},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_3db.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.052233450742668434},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_5db.csv};
\addlegendentry{$E_b / N_0 = \SI{5}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.052233450742668434},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_8db.csv};
\addlegendentry{$E_b / N_0 = \SI{8}{dB}$}
\end{axis}
\end{tikzpicture}
\caption{Average error for $\SI{500000}{iterations},
\omega = 0.05, \gamma = 0.05, K=200$\footnotemark}
\end{figure}
\footnotetext{Simulation performed with (3,6) regular LDPC Code with $n=204, k=102$
\cite[Code: 204.33.484]{mackay_enc}}
\begin{itemize}
\item For large $k$, the average error asymptotically approaches a minimum, non-zero value
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t, fragile]
\frametitle{Proximal Decoding: Improvement using ``ML-on-List''}
@@ -1112,6 +1258,57 @@ $\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{x}}_n\text{ with lowest }d
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}[t]
\frametitle{Proximal Decoding: Average Error}
\setcounter{footnote}{0}
\begin{figure}[H]
\vspace*{-0.5cm}
\centering
\begin{tikzpicture}[scale=0.7]
\begin{axis}[
grid=both,
xlabel={k},
ylabel={Average $\left| \boldsymbol{x}-\boldsymbol{\hat{x}} \right|$},
]
\addplot table [col sep=comma,
discard if not={omega}{0.0774263682681127},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_1db.csv};
\addlegendentry{$E_b / N_0 = \SI{1}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.0774263682681127},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_3db.csv};
\addlegendentry{$E_b / N_0 = \SI{3}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.052233450742668434},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_5db.csv};
\addlegendentry{$E_b / N_0 = \SI{5}{dB}$}
\addplot table [col sep=comma,
discard if not={omega}{0.052233450742668434},
x=k, y=err, mark=none]
{res/proximal/2d_avg_error_20433484_8db.csv};
\addlegendentry{$E_b / N_0 = \SI{8}{dB}$}
\end{axis}
\end{tikzpicture}
\caption{Average error for $\SI{500000}{decodings},
\omega = 0.05, \gamma = 0.05, K=200$\footnotemark}
\end{figure}
\footnotetext{Simulation performed with (3,6) regular LDPC Code with $n=204, k=102$
\cite[Code: 204.33.484]{mackay_enc}}
\begin{itemize}
\item For large $k$, the average error asymptotically approaches a minimum, non-zero value
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\begin{frame}[t, fragile]
% \frametitle{Proximal Decoding: Improvement using ``ML-on-List''}