\section{Comparison}% \label{sec:Comparison} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \subsection{Comparison of Simulation Results}% \label{sub:Comparison of Simulation Results} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[t] \frametitle{Comparison: Convergence Behavior} \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} \caption{Average error for $\SI{500000}{}$ decodings, $\omega = 0.05, \gamma = 0.05, K=200$\footnotemark} \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} \caption{Average error for $\SI{100000}{}$ decodings\protect\footnotemark{}} \end{subfigure}% \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{Comparison: Time Complexity} \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)}, legend style={at={(0.05,0.6)},anchor=south west}, legend cell align={left}, width=0.45\textwidth, height=0.3375\textwidth, ] \addplot[RedOrange, only marks, mark=*] table [col sep=comma, x=n, y=spf] {res/proximal/fps_vs_n.csv}; \addlegendentry{proximal} \addplot[ForestGreen, only marks, mark=triangle*] table [col sep=comma, x=n, y=spf] {res/hybrid/fps_vs_n.csv}; \addlegendentry{improved ($\SI{12}{\bit}$)} \addplot[RoyalPurple, only marks, mark=diamond*] table [col sep=comma, x=n, y=spf] {res/admm/fps_vs_n.csv}; \addlegendentry{ADMM} \end{axis} \end{tikzpicture} \end{figure} \footnote{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} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[t] \frametitle{Proximal Decoding: Improvement using \\``ML-in-the-List''} \vspace{-0.5cm} \begin{itemize} \item Comparison of proximal \& improved (correction of $N = \SI{12}{\bit}$) decoding simulation% \footnote{(3,6) regular LDPC code with $n=204, k=102$ \cite[Code: 204.33.484]{mackay_enc}} results \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.48\textwidth, height=0.35\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.48\textwidth, height=0.35\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} \addlegendimage{RoyalPurple, mark=*, line width=1pt} \addlegendentry{BP} \end{axis} \end{tikzpicture} \caption{Simulation results for $\gamma = 0.05, \omega = 0.05, K=200, N=12$} \label{fig:simulation_results_hybrid} \end{figure} \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\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{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} % \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.7cm} \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.85\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*{-1mm} \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.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.85\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*{-1mm} \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.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.85\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*{-1mm} \caption{$\left( 3, 6 \right)$-regular LDPC code with $n=408, k=204$ \cite[\text{408.33.844}]{mackay_enc}} \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.85\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*{-1mm} \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.85\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*{-1mm} \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.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.85\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*{-1mm} \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*{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{RoyalPurple, line width=1pt, mark=*} % \addlegendentry{BP} \addlegendimage{Black, line width=1pt, mark=*} \addlegendentry{ML} % \addlegendimage{PineGreen, line width=1pt, mark=triangle*, solid} % \addlegendentry{ML} \end{axis} \end{tikzpicture} \end{figure} \end{minipage} \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 \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 $\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 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 $\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} \begin{itemize} \item Analysis of the general behavior of the two decoding algorithms \begin{itemize} \item Parameter choice based on decoding performance and time complexity \item Verification of theoretical considerations with simulation results \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} \item Comparison \begin{itemize} \item based on simulation results \item based on their theoretical structure \end{itemize} \end{itemize} \end{frame}