Moved large figures to appendix
This commit is contained in:
parent
545fed15c8
commit
c80d37e6b3
@ -1,5 +1,539 @@
|
|||||||
\appendix
|
\appendix
|
||||||
|
|
||||||
|
\chapter{A Comparison of the Behaviour of Various Codes}
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=10,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
||||||
|
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=96, k=48$
|
||||||
|
\cite[\text{96.3.965}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=10,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
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,
|
||||||
|
discard if not={gamma}{0.05},
|
||||||
|
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,
|
||||||
|
discard if not={gamma}{0.01},
|
||||||
|
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,
|
||||||
|
discard if not={gamma}{0.15},
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{BCH code with $n=31, k=26$\\[2\baselineskip]}
|
||||||
|
\end{subfigure}
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=14,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||||
|
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
||||||
|
\cite[\text{204.33.484}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=10,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{$\left( 5, 10 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
||||||
|
\cite[\text{204.55.187}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=10,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=408, k=204$
|
||||||
|
\cite[\text{408.33.844}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill
|
||||||
|
\begin{subfigure}[c]{0.48\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,]
|
||||||
|
\addplot3[surf,
|
||||||
|
mesh/rows=17, mesh/cols=10,
|
||||||
|
colormap/viridis] table [col sep=comma,
|
||||||
|
x=SNR, y=gamma, z=BER]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{LDPC code (Progressive Edge Growth Construction) with $n=504, k=252$
|
||||||
|
\cite[\text{PEGReg252x504}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
|
||||||
|
\vspace{1cm}
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[hide axis,
|
||||||
|
xmin=10, xmax=50,
|
||||||
|
ymin=0, ymax=0.4,
|
||||||
|
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}
|
||||||
|
\addlegendentry{$\gamma = 0.01$};
|
||||||
|
\addlegendimage{RedOrange, line width=1.5pt}
|
||||||
|
\addlegendentry{$\gamma = 0.05$};
|
||||||
|
\addlegendimage{ForestGreen, line width=1.5pt}
|
||||||
|
\addlegendentry{$\gamma = 0.15$};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\end{subfigure}
|
||||||
|
|
||||||
|
\caption{BER for $\omega = 0.05, K=100$ (different codes)}
|
||||||
|
\label{fig:prox:results_3d_multiple}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=96, k=48$
|
||||||
|
\cite[\text{96.3.965}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill%
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
%legend columns=2,
|
||||||
|
%legend style={at={(0.5,-0.45)},anchor=south},
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\caption{BCH code with $n=31, k=26$\\[\baselineskip]}
|
||||||
|
\end{subfigure}%
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
xmin=0.5, xmax=6, xtick={1, ..., 5},
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid,]
|
||||||
|
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};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma,
|
||||||
|
discard if not={gamma}{0.15},
|
||||||
|
discard if gt={SNR}{5.5},]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
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};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma,
|
||||||
|
discard if not={gamma}{0.01},
|
||||||
|
discard if gt={SNR}{5.5},]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
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};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
||||||
|
\cite[\text{204.33.484}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill%
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
%legend columns=2,
|
||||||
|
%legend style={at={(0.5,-0.45)},anchor=south},
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\caption{$\left( 5, 10 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
||||||
|
\cite[\text{204.55.187}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
%legend columns=2,
|
||||||
|
%legend style={at={(0.5,-0.45)},anchor=south},
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=408, k=204$
|
||||||
|
\cite[\text{408.33.844}]{mackay_enc}}
|
||||||
|
\end{subfigure}%
|
||||||
|
\hfill%
|
||||||
|
\begin{subfigure}[c]{0.48\textwidth}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
grid=both,
|
||||||
|
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||||
|
ymode=log,
|
||||||
|
legend columns=1,
|
||||||
|
legend pos=outer north east,
|
||||||
|
ymax=1.5, ymin=8e-5,
|
||||||
|
width=\textwidth,
|
||||||
|
height=0.75\textwidth,
|
||||||
|
]
|
||||||
|
|
||||||
|
\addplot[ForestGreen, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
\addplot[Emerald, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
|
||||||
|
\addplot[NavyBlue, mark=*, solid]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
|
||||||
|
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
||||||
|
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
||||||
|
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}\\
|
||||||
|
|
||||||
|
\caption{\ac{LDPC} code (progressive edge growth construction) with $n=504, k=252$
|
||||||
|
\cite[\text{PEGReg252x504}]{mackay_enc}}
|
||||||
|
\label{fig:prox:improved:comp:504}
|
||||||
|
\end{subfigure}%
|
||||||
|
|
||||||
|
\vspace{1cm}
|
||||||
|
|
||||||
|
\begin{subfigure}[c]{\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, mark=*, solid}
|
||||||
|
\addlegendentry{proximal, $\gamma = 0.15$}
|
||||||
|
|
||||||
|
\addlegendimage{NavyBlue, mark=*, solid}
|
||||||
|
\addlegendentry{proximal, $\gamma = 0.01$}
|
||||||
|
|
||||||
|
\addlegendimage{RedOrange, mark=*, solid}
|
||||||
|
\addlegendentry{proximal, $\gamma = 0.05$}
|
||||||
|
|
||||||
|
\addlegendimage{Emerald, mark=triangle, densely dashed}
|
||||||
|
\addlegendentry{improved, $\gamma = 0.15$}
|
||||||
|
|
||||||
|
\addlegendimage{RoyalPurple, mark=triangle, densely dashed}
|
||||||
|
\addlegendentry{improved, $\gamma = 0.01$}
|
||||||
|
|
||||||
|
\addlegendimage{red, mark=triangle, densely dashed}
|
||||||
|
\addlegendentry{improved, $\gamma = 0.05$}
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\end{subfigure}
|
||||||
|
|
||||||
|
\caption{Comparison of improvement in decoding performance for various
|
||||||
|
codes}
|
||||||
|
\label{fig:prox:improved:comp}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\chapter{\acs{LP} Decoding using \acs{ADMM} as a Proximal Algorithm}%
|
\chapter{\acs{LP} Decoding using \acs{ADMM} as a Proximal Algorithm}%
|
||||||
\label{chapter:LD Decoding using ADMM as a Proximal Algorithm}
|
\label{chapter:LD Decoding using ADMM as a Proximal Algorithm}
|
||||||
|
|
||||||
|
|||||||
@ -479,8 +479,8 @@ in each case.
|
|||||||
\end{axis}
|
\end{axis}
|
||||||
\end{tikzpicture}
|
\end{tikzpicture}
|
||||||
|
|
||||||
\caption{Visualization of relationship between the decoding performance\protect\footnotemark{}
|
\caption{Visualization of the relationship between the decoding performance
|
||||||
and the parameter $\gamma$}
|
\protect\footnotemark{} and the parameter $\gamma$}
|
||||||
\label{fig:prox:results_3d}
|
\label{fig:prox:results_3d}
|
||||||
\end{figure}%
|
\end{figure}%
|
||||||
%
|
%
|
||||||
@ -542,231 +542,6 @@ certain threshold does not improve the decoding performance.
|
|||||||
The choice of $\eta$ is insignificant and the parameter is only relevant as a
|
The choice of $\eta$ is insignificant and the parameter is only relevant as a
|
||||||
means to bring about numerical stability.
|
means to bring about numerical stability.
|
||||||
|
|
||||||
\begin{figure}[H]
|
|
||||||
\centering
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=10,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
|
||||||
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=96, k=48$
|
|
||||||
\cite[\text{96.3.965}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=10,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
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,
|
|
||||||
discard if not={gamma}{0.05},
|
|
||||||
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,
|
|
||||||
discard if not={gamma}{0.01},
|
|
||||||
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,
|
|
||||||
discard if not={gamma}{0.15},
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{BCH code with $n=31, k=26$\\[2\baselineskip]}
|
|
||||||
\end{subfigure}
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=14,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
|
||||||
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
|
||||||
\cite[\text{204.33.484}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=10,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{$\left( 5, 10 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
|
||||||
\cite[\text{204.55.187}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=10,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=408, k=204$
|
|
||||||
\cite[\text{408.33.844}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill
|
|
||||||
\begin{subfigure}[c]{0.48\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,]
|
|
||||||
\addplot3[surf,
|
|
||||||
mesh/rows=17, mesh/cols=10,
|
|
||||||
colormap/viridis] table [col sep=comma,
|
|
||||||
x=SNR, y=gamma, z=BER]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
\addplot3[RedOrange, 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[NavyBlue, 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[ForestGreen, 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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\caption{LDPC code (Progressive Edge Growth Construction) with $n=504, k=252$
|
|
||||||
\cite[\text{PEGReg252x504}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
|
|
||||||
\vspace{1cm}
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[hide axis,
|
|
||||||
xmin=10, xmax=50,
|
|
||||||
ymin=0, ymax=0.4,
|
|
||||||
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}
|
|
||||||
\addlegendentry{$\gamma = 0.01$};
|
|
||||||
\addlegendimage{RedOrange, line width=1.5pt}
|
|
||||||
\addlegendentry{$\gamma = 0.05$};
|
|
||||||
\addlegendimage{ForestGreen, line width=1.5pt}
|
|
||||||
\addlegendentry{$\gamma = 0.15$};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\end{subfigure}
|
|
||||||
|
|
||||||
\caption{BER for $\omega = 0.05, K=100$ (different codes)}
|
|
||||||
\label{fig:prox:results_3d_multiple}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
\subsection{Decoding Performance}
|
\subsection{Decoding Performance}
|
||||||
|
|
||||||
@ -1247,7 +1022,7 @@ gradient of the negative log-likelihood is counteracted.
|
|||||||
|
|
||||||
In conclusion, as a general rule, the proximal decoding algorithm reaches
|
In conclusion, as a general rule, the proximal decoding algorithm reaches
|
||||||
an oscillatory state which it cannot escape as a consequence of its structure.
|
an oscillatory state which it cannot escape as a consequence of its structure.
|
||||||
In this state, the constraints may not be satisfied, leading to the algorithm
|
In this state the constraints may not be satisfied, leading to the algorithm
|
||||||
returning an invalid codeword.
|
returning an invalid codeword.
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
@ -1418,7 +1193,6 @@ Its only difference to algorithm \ref{alg:prox} is that instead of returning
|
|||||||
the last estimate when no valid result is reached, an ML-in-the-List step is
|
the last estimate when no valid result is reached, an ML-in-the-List step is
|
||||||
performed.
|
performed.
|
||||||
|
|
||||||
\begin{minipage}{\linewidth}
|
|
||||||
\begin{genericAlgorithm}[caption={Improved proximal decoding algorithm},
|
\begin{genericAlgorithm}[caption={Improved proximal decoding algorithm},
|
||||||
label={alg:prox:improved},]
|
label={alg:prox:improved},]
|
||||||
$\boldsymbol{s} \leftarrow \boldsymbol{0}$
|
$\boldsymbol{s} \leftarrow \boldsymbol{0}$
|
||||||
@ -1438,7 +1212,6 @@ $\textcolor{KITblue}{\text{Compute }d_H\left( \boldsymbol{ \tilde{c}}_l,
|
|||||||
$\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }
|
$\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_l\text{ with lowest }
|
||||||
d_H\left( \boldsymbol{ \tilde{c}}_l, \boldsymbol{\hat{c}} \right)}$
|
d_H\left( \boldsymbol{ \tilde{c}}_l, \boldsymbol{\hat{c}} \right)}$
|
||||||
\end{genericAlgorithm}
|
\end{genericAlgorithm}
|
||||||
\end{minipage}
|
|
||||||
|
|
||||||
\todo{Not hamming distance, correlation}
|
\todo{Not hamming distance, correlation}
|
||||||
|
|
||||||
@ -1654,309 +1427,3 @@ negligible computational performance penalty.
|
|||||||
The improvement is mainly noticable for higher \ac{SNR} values and depends on
|
The improvement is mainly noticable for higher \ac{SNR} values and depends on
|
||||||
the code as well as the chosen parameters.
|
the code as well as the chosen parameters.
|
||||||
|
|
||||||
\begin{figure}[H]
|
|
||||||
\centering
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_963965.csv};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_963965.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=96, k=48$
|
|
||||||
\cite[\text{96.3.965}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill%
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
%legend columns=2,
|
|
||||||
%legend style={at={(0.5,-0.45)},anchor=south},
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_bch_31_26.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\caption{BCH code with $n=31, k=26$\\[\baselineskip]}
|
|
||||||
\end{subfigure}%
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
xmin=0.5, xmax=6, xtick={1, ..., 5},
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid,]
|
|
||||||
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};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma,
|
|
||||||
discard if not={gamma}{0.15},
|
|
||||||
discard if gt={SNR}{5.5},]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
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};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma,
|
|
||||||
discard if not={gamma}{0.01},
|
|
||||||
discard if gt={SNR}{5.5},]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
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};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
|
||||||
\cite[\text{204.33.484}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill%
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
%legend columns=2,
|
|
||||||
%legend style={at={(0.5,-0.45)},anchor=south},
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_20455187.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\caption{$\left( 5, 10 \right)$-regular \ac{LDPC} code with $n=204, k=102$
|
|
||||||
\cite[\text{204.55.187}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
%legend columns=2,
|
|
||||||
%legend style={at={(0.5,-0.45)},anchor=south},
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_40833844.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
|
|
||||||
\caption{$\left( 3, 6 \right)$-regular \ac{LDPC} code with $n=408, k=204$
|
|
||||||
\cite[\text{408.33.844}]{mackay_enc}}
|
|
||||||
\end{subfigure}%
|
|
||||||
\hfill%
|
|
||||||
\begin{subfigure}[c]{0.48\textwidth}
|
|
||||||
\centering
|
|
||||||
\begin{tikzpicture}
|
|
||||||
\begin{axis}[
|
|
||||||
grid=both,
|
|
||||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
|
||||||
ymode=log,
|
|
||||||
legend columns=1,
|
|
||||||
legend pos=outer north east,
|
|
||||||
ymax=1.5, ymin=8e-5,
|
|
||||||
width=\textwidth,
|
|
||||||
height=0.75\textwidth,
|
|
||||||
]
|
|
||||||
|
|
||||||
\addplot[ForestGreen, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
\addplot[Emerald, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
|
|
||||||
\addplot[NavyBlue, mark=*, solid]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/proximal/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.01}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
|
|
||||||
\addplot[RedOrange, 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[red, mark=triangle, densely dashed]
|
|
||||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.05}]
|
|
||||||
{res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv};
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}\\
|
|
||||||
|
|
||||||
\caption{\ac{LDPC} code (progressive edge growth construction) with $n=504, k=252$
|
|
||||||
\cite[\text{PEGReg252x504}]{mackay_enc}}
|
|
||||||
\label{fig:prox:improved:comp:504}
|
|
||||||
\end{subfigure}%
|
|
||||||
|
|
||||||
\vspace{1cm}
|
|
||||||
|
|
||||||
\begin{subfigure}[c]{\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, mark=*, solid}
|
|
||||||
\addlegendentry{proximal, $\gamma = 0.15$}
|
|
||||||
|
|
||||||
\addlegendimage{NavyBlue, mark=*, solid}
|
|
||||||
\addlegendentry{proximal, $\gamma = 0.01$}
|
|
||||||
|
|
||||||
\addlegendimage{RedOrange, mark=*, solid}
|
|
||||||
\addlegendentry{proximal, $\gamma = 0.05$}
|
|
||||||
|
|
||||||
\addlegendimage{Emerald, mark=triangle, densely dashed}
|
|
||||||
\addlegendentry{improved, $\gamma = 0.15$}
|
|
||||||
|
|
||||||
\addlegendimage{RoyalPurple, mark=triangle, densely dashed}
|
|
||||||
\addlegendentry{improved, $\gamma = 0.01$}
|
|
||||||
|
|
||||||
\addlegendimage{red, mark=triangle, densely dashed}
|
|
||||||
\addlegendentry{improved, $\gamma = 0.05$}
|
|
||||||
\end{axis}
|
|
||||||
\end{tikzpicture}
|
|
||||||
\end{subfigure}
|
|
||||||
|
|
||||||
\caption{Comparison of improvement in decoding performance for various
|
|
||||||
codes}
|
|
||||||
\label{fig:prox:improved:comp}
|
|
||||||
\end{figure}
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user