Added figures to proximal improvement section; Minor other changes
This commit is contained in:
parent
50d55af046
commit
7af0eaea5b
@ -690,7 +690,7 @@ while $\sum_{j\in\mathcal{J}} \lVert \boldsymbol{T}_j\tilde{\boldsymbol{c}} - \b
|
||||
\Big) - \frac{\gamma_i}{\mu} \right)$
|
||||
end for
|
||||
end while
|
||||
\end{genericAlgorithm}
|
||||
\end{genericAlgorithm}
|
||||
%
|
||||
\footnotetext{$\epsilon_{\text{pri}} > 0$ and $\epsilon_{\text{dual}} > 0$
|
||||
are additional parameters
|
||||
@ -700,7 +700,7 @@ $\boldsymbol{z}_j$ in the previous iteration.}%
|
||||
%
|
||||
\noindent The $\boldsymbol{z}_j$- and $\boldsymbol{\lambda}_j$-updates can be understood as
|
||||
a check-node update step (lines $3$-$6$) and the $\tilde{c}_i$-updates can be understood as
|
||||
a variable-node update step (lines $7$-$9$ in figure \ref{fig:lp:message_passing}).
|
||||
a variable-node update step (lines $7$-$9$ in figure \ref{alg:admm}).
|
||||
The updates for each variable- and check-node can be perfomed in parallel.
|
||||
|
||||
The main computational effort in solving the linear program then amounts to
|
||||
|
||||
@ -246,7 +246,7 @@ return $\boldsymbol{\hat{c}}$
|
||||
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\section{Implementation Details}%
|
||||
\section{Implementation Details (``A Selection of Implementation Considerations?'')}%
|
||||
\label{sec:prox:Implementation Details}
|
||||
|
||||
The algorithm was first implemented in Python because of the fast development
|
||||
@ -302,8 +302,8 @@ the gradient can be written as%
|
||||
\boldsymbol{v}
|
||||
,\end{align*}
|
||||
%
|
||||
enabling the computation of the gradient primarily with element-wise
|
||||
operations and matrix-vector multiplication.
|
||||
enabling its computation primarily with element-wise operations and
|
||||
matrix-vector multiplication.
|
||||
This is beneficial, as the libraries used for the implementation are
|
||||
heavily optimized for such calculations (e.g., through vectorization of the
|
||||
operations).
|
||||
@ -848,14 +848,15 @@ the frame errors may largely be attributed to decoding failures.
|
||||
|
||||
|
||||
\subsection{Convergence Properties}
|
||||
\label{subsec:prox:conv_properties}
|
||||
|
||||
The previous observation, that the \ac{FER} arises mainly due to the
|
||||
The previous observation, that the \ac{FER} may arise mainly due to the
|
||||
non-convergence of the algorithm instead of convergence to the wrong codeword,
|
||||
raises the question why the decoding process does not converge so often.
|
||||
In figure \ref{fig:prox:convergence}, the iterative process is visualized.
|
||||
In order to be able to simultaneously consider all components of the vectors
|
||||
being dealt with, a BCH code with $n=7$ and $k=4$ is chosen.
|
||||
Each chart shows one component of the current estimates during a given
|
||||
being dealt with, a BCH code with $n=7$ and $k=4$ has been chosen.
|
||||
Each chart shows one component of the current estimate during a given
|
||||
iteration (alternating between $\boldsymbol{r}$ and $\boldsymbol{s}$), as well
|
||||
as the gradients of the negative log-likelihood and the code-constraint
|
||||
polynomial, which influence the next estimate.
|
||||
@ -1271,11 +1272,35 @@ This gives rise to the notion that some property or behaviour of
|
||||
$\nabla h\left( \tilde{\boldsymbol{x}} \right) $ may be related in its
|
||||
magnitude to the confidence that a given bit is correct.
|
||||
And indeed, the magnitude of the oscillation of
|
||||
$\nabla h\left( \tilde{\boldsymbol{x}} \right)$ (introduced in a previous
|
||||
section) and the probability of having a bit error are strongly correlated,
|
||||
a relationship depicted in figure \ref{fig:prox:correlation}.
|
||||
$\nabla h\left( \tilde{\boldsymbol{x}} \right)$ (introduced previously in
|
||||
section \ref{subsec:prox:conv_properties}) and the probability of having a bit
|
||||
error are strongly correlated, a relationship depicted in figure
|
||||
\ref{fig:prox:correlation}.
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
TODO: Figure
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[point meta min = -1,
|
||||
point meta max = 1,
|
||||
grid=both,
|
||||
xlabel={$Var\left( \nabla h\left( \boldsymbol{x} \right) \right) $},
|
||||
ylabel={Bit error (bool)},
|
||||
ytick={0, 1},
|
||||
width=8cm,
|
||||
height=3cm,
|
||||
%colormap/viridis,
|
||||
scale only axis,]
|
||||
|
||||
\addplot [RoyalPurple, only marks,]
|
||||
table [col sep=comma, x=grad_h_vars, y=bit_error]
|
||||
{res/proximal/extreme_components_20433484_variance.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Correlation between bit error and amplitude of oscillation}
|
||||
\label{fig:prox:correlation}
|
||||
\end{figure}
|
||||
|
||||
\noindent The y-axis depicts whether there is a bit error and the x-axis the
|
||||
variance in $\nabla h\left( \tilde{\boldsymbol{x}} \right)$ past the iteration
|
||||
@ -1289,25 +1314,179 @@ probably wrong bits, all variations of the estimate with those bits modified
|
||||
can be generated.
|
||||
An \ac{ML}-in-the-List step can then be performed in order to determine the
|
||||
most likely candidate.
|
||||
This process is outlined in figure \ref{fig:prox:improved_algorithm}.
|
||||
This process is outlined in algorithm \ref{alg:prox:improved}.
|
||||
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
|
||||
performed (highlighted in blue).
|
||||
|
||||
Figure \ref{fig:prox:improved_results} shows the gain that can be achieved.
|
||||
\begin{genericAlgorithm}[caption={Improved proximal decoding algorithm},
|
||||
label={alg:prox:improved},]
|
||||
$\boldsymbol{s} \leftarrow \boldsymbol{0}$
|
||||
for $K$ iterations do
|
||||
$\boldsymbol{r} \leftarrow \boldsymbol{s} - \omega \nabla L \left( \boldsymbol{y} \mid \boldsymbol{s} \right) $
|
||||
$\boldsymbol{s} \leftarrow \boldsymbol{r} - \gamma \nabla h\left( \boldsymbol{r} \right) $
|
||||
$\boldsymbol{\hat{x}} \leftarrow \text{sign}\left( \boldsymbol{s} \right) $
|
||||
if $\boldsymbol{H}\boldsymbol{\hat{c}} = \boldsymbol{0}$
|
||||
return $\boldsymbol{\hat{c}}$
|
||||
end if
|
||||
end for
|
||||
$\textcolor{KITblue}{\text{Find }N\text{ most probably wrong bits}}$
|
||||
$\textcolor{KITblue}{\text{Generate variations } \boldsymbol{\tilde{c}}_i\text{ of }\boldsymbol{\hat{c}}\text{ with the }N\text{ bits modified}}$
|
||||
$\textcolor{KITblue}{\text{Compute }d_H\left( \boldsymbol{ \tilde{c}}_i, \boldsymbol{\hat{c}} \right) \text{ for all valid codewords } \boldsymbol{\tilde{c}}_i}$
|
||||
$\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_i\text{ with lowest }d_H\left( \boldsymbol{ \tilde{c}}_i, \boldsymbol{\hat{c}} \right)}$
|
||||
\end{genericAlgorithm}
|
||||
|
||||
\todo{Not hamming distance, correlation}
|
||||
|
||||
Figure \ref{fig:prox:improved_results} shows the gain that can be achieved,
|
||||
when the number $N$ is chosen to be 12.
|
||||
Again, three values of gamma are chosen, for which the \ac{BER}, \ac{FER}
|
||||
and decoding failure rate is plotted.
|
||||
The simulation results for the original proximal decoding algorithm are shown
|
||||
with solid lines and the results for the improved version are shown with
|
||||
dashed lines.
|
||||
For the case of $\gamma = 0.05$, the number of frame errors produced for the
|
||||
datapoints at $\SI{6}{dB}$, $\SI{6.5}{dB}$ and $\SI{7}{dB}$ are
|
||||
70, 17 and 2, respectively. \todo{Redo simulation with higher number of iterations}
|
||||
The gain seems to depend on the value of $\gamma$, as well as become more
|
||||
pronounced for higher \ac{SNR} values.
|
||||
This is to be expected, since with higher \ac{SNR} values the number of bit
|
||||
errors decreases, making the correction of those errors in the ML-in-the-List
|
||||
step more likely.
|
||||
In figure \ref{fig:prox:improved_results_multiple} the decoding performance
|
||||
In figure \ref{fig:prox:improved:comp} the decoding performance
|
||||
between proximal decoding and the improved algorithm is compared for a number
|
||||
of different codes.
|
||||
Similar behaviour can be observed in all cases, with varying improvement over
|
||||
standard proximal decoding.
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$}, ylabel={BER},
|
||||
ymode=log,
|
||||
width=0.48\textwidth,
|
||||
height=0.36\textwidth,
|
||||
ymax=1.5, ymin=3e-8,
|
||||
]
|
||||
\addplot[ForestGreen, mark=*, solid]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[Emerald, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
|
||||
\addplot[NavyBlue, mark=*, solid]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
|
||||
\addplot[RedOrange, mark=*, solid]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[red, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$}, ylabel={FER},
|
||||
ymode=log,
|
||||
width=0.48\textwidth,
|
||||
height=0.36\textwidth,
|
||||
ymax=1.5, ymin=3e-8,
|
||||
]
|
||||
|
||||
\addplot[ForestGreen, mark=*, solid]
|
||||
table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{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}]
|
||||
{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}]
|
||||
{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}]
|
||||
{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}]
|
||||
{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}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[
|
||||
grid=both,
|
||||
xlabel={$E_b / N_0$}, ylabel={Decoding Failure Rate},
|
||||
ymode=log,
|
||||
width=0.48\textwidth,
|
||||
height=0.36\textwidth,
|
||||
ymax=1.5, ymin=3e-8,
|
||||
]
|
||||
|
||||
\addplot[ForestGreen, mark=*, solid]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[Emerald, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.15}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
|
||||
\addplot[NavyBlue, mark=*, solid]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[RoyalPurple, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.01}]
|
||||
{res/hybrid/2d_ber_fer_dfr_20433484.csv};
|
||||
|
||||
\addplot[RedOrange, mark=*, solid]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/proximal/2d_ber_fer_dfr_20433484.csv};
|
||||
\addplot[red, mark=triangle, densely dashed]
|
||||
table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{0.05}]
|
||||
{res/hybrid/2d_ber_fer_dfr_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{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}
|
||||
|
||||
\caption{Simulation results for $\gamma = 0.05, \omega = 0.05, K=200, N=12$}
|
||||
\label{fig:prox:improved_results}
|
||||
\end{figure}
|
||||
|
||||
Interestingly, the improved algorithm does not have much different time
|
||||
complexity than proximal decoding.
|
||||
This is the case, because the ML-in-the-List step is only performed when the
|
||||
@ -1317,11 +1496,339 @@ This is illustrated in figure \ref{fig:prox:time_complexity_comp}, where the
|
||||
average time needed to decode a single received frame is visualized for
|
||||
proximal decoding as well as for the improved algorithm.
|
||||
|
||||
\begin{figure}[H]
|
||||
\centering
|
||||
|
||||
\begin{tikzpicture}
|
||||
\begin{axis}[grid=both,
|
||||
xlabel={$n$}, ylabel={Time per frame (s)},
|
||||
legend style={at={(0.05,0.77)},anchor=south west},
|
||||
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}
|
||||
|
||||
\addplot[RoyalPurple, only marks, mark=triangle*]
|
||||
table [col sep=comma, x=n, y=spf]
|
||||
{res/hybrid/fps_vs_n.csv};
|
||||
\addlegendentry{improved ($N = 12$)}
|
||||
\end{axis}
|
||||
\end{tikzpicture}
|
||||
|
||||
\caption{Time Complexity of Proximal Decoding and Modified Implementation%
|
||||
\protect\footnotemark{}}
|
||||
\label{fig:prox:time_complexity_comp}
|
||||
\end{figure}%
|
||||
%
|
||||
\footnotetext{The datapoints depicted were calculated by evaluating the
|
||||
metadata of \ac{FER} simulation results from the following codes:
|
||||
BCH (31, 11); BCH (31, 26); \cite[\text{96.3.965; 204.33.484; 204.55.187;
|
||||
408.33.844; PEGReg252x504}]{mackay_enc}
|
||||
}%
|
||||
%
|
||||
|
||||
In conclusion, the decoding performance of proximal decoding can be improved
|
||||
by appending an ML-in-the-List step when the algorithm does not produce a
|
||||
valid result.
|
||||
The gain is in some cases as high as $\SI{1}{dB}$ and can be achieved with
|
||||
The gain can in some cases be as high as $\SI{1}{dB}$ and is achievable with
|
||||
negligible computational performance penalty.
|
||||
The improvement is mainly noticable for higher \ac{SNR} values and depends on
|
||||
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 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,
|
||||
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 LDPC code with $n=204, k=102$ \cite[\text{204.33.484}]{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 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,
|
||||
%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,
|
||||
%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 LDPC code with $n=204, k=102$ \cite[\text{204.55.187}]{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{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 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}
|
||||
|
||||
|
||||
43
latex/thesis/res/hybrid/2d_ber_fer_dfr_20433484.csv
Normal file
43
latex/thesis/res/hybrid/2d_ber_fer_dfr_20433484.csv
Normal file
@ -0,0 +1,43 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.08857503397398564,1.0,0.5,101.0
|
||||
1.5,0.01,0.07048353321911288,0.9805825242718447,0.4950980392156863,103.0
|
||||
2.0,0.01,0.05350140056022409,0.9619047619047619,0.49029126213592233,105.0
|
||||
2.5,0.01,0.03744921391980215,0.9099099099099099,0.47641509433962265,111.0
|
||||
3.0,0.01,0.025939542483660132,0.8416666666666667,0.45701357466063347,120.0
|
||||
3.5,0.01,0.014778503994190268,0.7481481481481481,0.4279661016949153,135.0
|
||||
4.0,0.01,0.00835057641146911,0.507537688442211,0.33666666666666667,199.0
|
||||
4.5,0.01,0.004282382097820541,0.3754646840148699,0.27297297297297296,269.0
|
||||
5.0,0.01,0.0015746260263187492,0.1931166347992352,0.16185897435897437,523.0
|
||||
5.5,0.01,0.00065359477124183,0.08523206751054853,0.07853810264385692,1185.0
|
||||
6.0,0.01,0.0003127631420666426,0.04130879345603272,0.0396700706991359,2445.0
|
||||
6.5,0.01,0.00011029974518507847,0.015459972447573855,0.015224600542659028,6533.0
|
||||
7.0,0.01,2.7036508518478465e-05,0.00452894489036366,0.004508526024462101,22301.0
|
||||
7.5,0.01,8.101366552599426e-06,0.0014514830995631179,0.001449379349931836,69584.0
|
||||
1.0,0.05,0.0871559633027523,0.926605504587156,0.48095238095238096,109.0
|
||||
1.5,0.05,0.06592721834496511,0.8559322033898306,0.4611872146118721,118.0
|
||||
2.0,0.05,0.04344614558152028,0.6917808219178082,0.4089068825910931,146.0
|
||||
2.5,0.05,0.023415412676698586,0.4697674418604651,0.31962025316455694,215.0
|
||||
3.0,0.05,0.010770665574814613,0.23433874709976799,0.18984962406015038,431.0
|
||||
3.5,0.05,0.0049633888643176565,0.12656641604010024,0.11234705228031146,798.0
|
||||
4.0,0.05,0.00151358011559054,0.045660036166365284,0.043666234327712924,2212.0
|
||||
4.5,0.05,0.0003522100063308634,0.011482492041837199,0.011352141171181298,8796.0
|
||||
5.0,0.05,8.711464887548632e-05,0.0030893463432539077,0.003079831676526194,32693.0
|
||||
5.5,0.05,1.669054519578649e-05,0.0005991149707560712,0.000598756246924705,168582.0
|
||||
6.0,0.05,3.872549019607843e-06,0.00014,0.00013998040274361588,500000.0
|
||||
6.5,0.05,8.137254901960785e-07,3.4e-05,3.3998844039302665e-05,500000.0
|
||||
7.0,0.05,9.80392156862745e-08,4e-06,3.9999840000639995e-06,500000.0
|
||||
7.5,0.05,0.0,0.0,0.0,500000.0
|
||||
1.0,0.15,0.36318190642593673,1.0,0.5,101.0
|
||||
1.5,0.15,0.35721219180741604,1.0,0.5,101.0
|
||||
2.0,0.15,0.3584740827023879,1.0,0.5,101.0
|
||||
2.5,0.15,0.3616288099398175,1.0,0.5,101.0
|
||||
3.0,0.15,0.34989529792499524,0.9805825242718447,0.4950980392156863,103.0
|
||||
3.5,0.15,0.34784884827717494,0.9805825242718447,0.4950980392156863,103.0
|
||||
4.0,0.15,0.3346744358120607,0.9528301886792453,0.48792270531400966,106.0
|
||||
4.5,0.15,0.32926378098409176,0.9528301886792453,0.48792270531400966,106.0
|
||||
5.0,0.15,0.3075335397316821,0.8859649122807017,0.4697674418604651,114.0
|
||||
5.5,0.15,0.31763845889232883,0.8859649122807017,0.4697674418604651,114.0
|
||||
6.0,0.15,0.2609212802768166,0.7426470588235294,0.42616033755274263,136.0
|
||||
6.5,0.15,0.21796218487394958,0.6011904761904762,0.3754646840148699,168.0
|
||||
7.0,0.15,0.16116533949824471,0.4410480349344978,0.30606060606060603,229.0
|
||||
7.5,0.15,0.11419180852856903,0.28939828080229224,0.22444444444444445,349.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 351.4174764650015,
|
||||
"name": "2d_BER_FER_DFR_20433484",
|
||||
"platform": "Linux-6.1.6-arch1-1-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-17 18:33:23.676873"
|
||||
}
|
||||
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_20455187.csv
Normal file
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_20455187.csv
Normal file
@ -0,0 +1,31 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.1282760629004077,1.0,0.5,101.0
|
||||
1.5,0.01,0.10891089108910891,1.0,0.5,101.0
|
||||
2.0,0.01,0.0815592903828198,0.9619047619047619,0.49029126213592233,105.0
|
||||
2.5,0.01,0.05990286022665947,0.926605504587156,0.48095238095238096,109.0
|
||||
3.0,0.01,0.03941495297305914,0.8211382113821138,0.45089285714285715,123.0
|
||||
3.5,0.01,0.02159746251441753,0.5941176470588235,0.3726937269372694,170.0
|
||||
4.0,0.01,0.008099504169483886,0.29022988505747127,0.22494432071269488,348.0
|
||||
4.5,0.01,0.003413511153449234,0.13630229419703105,0.11995249406175772,741.0
|
||||
5.0,0.01,0.0007971804984475959,0.048026628625772706,0.04582577132486389,2103.0
|
||||
5.5,0.01,0.00014528144415937685,0.010614818707304257,0.01050332778702163,9515.0
|
||||
1.0,0.05,0.13312948941953018,1.0,0.5,101.0
|
||||
1.5,0.05,0.11264991433466591,0.9805825242718447,0.4950980392156863,103.0
|
||||
2.0,0.05,0.08948390677025528,0.9528301886792453,0.48792270531400966,106.0
|
||||
2.5,0.05,0.06017854296190021,0.8211382113821138,0.45089285714285715,123.0
|
||||
3.0,0.05,0.03815004262574595,0.6273291925465838,0.38549618320610685,161.0
|
||||
3.5,0.05,0.01944624003447533,0.36996336996337,0.2700534759358289,273.0
|
||||
4.0,0.05,0.007252326217843459,0.16584564860426929,0.14225352112676057,609.0
|
||||
4.5,0.05,0.0021536038238009884,0.05595567867036011,0.05299055613850997,1805.0
|
||||
5.0,0.05,0.0004567736185383244,0.012752525252525253,0.01259194614137888,7920.0
|
||||
5.5,0.05,5.7238650812895664e-05,0.0018341293333575463,0.0018307714617169374,55067.0
|
||||
1.0,0.15,0.4978644923315861,1.0,0.5,101.0
|
||||
1.5,0.15,0.5006309454474859,1.0,0.5,101.0
|
||||
2.0,0.15,0.5033973985633857,1.0,0.5,101.0
|
||||
2.5,0.15,0.47709182682974177,1.0,0.5,101.0
|
||||
3.0,0.15,0.47005435837701415,1.0,0.5,101.0
|
||||
3.5,0.15,0.4798097456804504,1.0,0.5,101.0
|
||||
4.0,0.15,0.4680159192389827,1.0,0.5,101.0
|
||||
4.5,0.15,0.451465734808775,1.0,0.5,101.0
|
||||
5.0,0.15,0.40695981362842165,1.0,0.5,101.0
|
||||
5.5,0.15,0.33649132730015086,0.9711538461538461,0.4926829268292683,104.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 55.621502028021496,
|
||||
"name": "2d_BER_FER_DFR_20455187",
|
||||
"platform": "Linux-6.1.6-arch1-3-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-24 08:55:18.173639"
|
||||
}
|
||||
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_40833844.csv
Normal file
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_40833844.csv
Normal file
@ -0,0 +1,31 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.0918025626092021,1.0,0.5,101.0
|
||||
1.5,0.01,0.07178217821782178,1.0,0.5,101.0
|
||||
2.0,0.01,0.05319355464958261,1.0,0.5,101.0
|
||||
2.5,0.01,0.037701845444059974,0.9901960784313726,0.4975369458128079,102.0
|
||||
3.0,0.01,0.024914334665905195,0.9805825242718447,0.4950980392156863,103.0
|
||||
3.5,0.01,0.014256161180068358,0.926605504587156,0.48095238095238096,109.0
|
||||
4.0,0.01,0.00819607843137255,0.808,0.4469026548672566,125.0
|
||||
4.5,0.01,0.003703703703703704,0.5611111111111111,0.3594306049822064,180.0
|
||||
5.0,0.01,0.0017734056079769791,0.3447098976109215,0.2563451776649746,293.0
|
||||
5.5,0.01,0.0007903353279891611,0.19385796545105566,0.16237942122186494,521.0
|
||||
1.0,0.05,0.08972510572856593,0.9901960784313726,0.4975369458128079,102.0
|
||||
1.5,0.05,0.06624649859943978,0.9619047619047619,0.49029126213592233,105.0
|
||||
2.0,0.05,0.04635172653132049,0.8938053097345132,0.4719626168224299,113.0
|
||||
2.5,0.05,0.024525719378660556,0.6558441558441559,0.396078431372549,154.0
|
||||
3.0,0.05,0.010826771653543307,0.39763779527559057,0.28450704225352114,254.0
|
||||
3.5,0.05,0.004023473188558577,0.18100358422939067,0.15326251896813353,558.0
|
||||
4.0,0.05,0.0010486080573690086,0.05807935595169638,0.05489130434782609,1739.0
|
||||
4.5,0.05,0.00020709882532053673,0.012814006597310327,0.01265188525616936,7882.0
|
||||
5.0,0.05,3.131208430508767e-05,0.002224669603524229,0.0022197314344739676,45400.0
|
||||
5.5,0.05,6.4252223396991424e-06,0.00046369625599706175,0.00046348134143431416,217815.0
|
||||
1.0,0.15,0.3438895360124248,1.0,0.5,101.0
|
||||
1.5,0.15,0.34032226752086975,1.0,0.5,101.0
|
||||
2.0,0.15,0.33034847602407297,1.0,0.5,101.0
|
||||
2.5,0.15,0.32974179770918266,1.0,0.5,101.0
|
||||
3.0,0.15,0.3295476606484178,1.0,0.5,101.0
|
||||
3.5,0.15,0.32175791108522617,1.0,0.5,101.0
|
||||
4.0,0.15,0.3154241894777713,1.0,0.5,101.0
|
||||
4.5,0.15,0.32195204814599104,1.0,0.5,101.0
|
||||
5.0,0.15,0.3212483013007183,1.0,0.5,101.0
|
||||
5.5,0.15,0.31752210688196847,0.9901960784313726,0.4975369458128079,102.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 871.6730747620168,
|
||||
"name": "2d_BER_FER_DFR_40833844",
|
||||
"platform": "Linux-6.1.6-arch1-3-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-24 09:12:00.353386"
|
||||
}
|
||||
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_963965.csv
Normal file
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_963965.csv
Normal file
@ -0,0 +1,31 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.0943452380952381,0.9619047619047619,0.49029126213592233,105.0
|
||||
1.5,0.01,0.07425458715596331,0.926605504587156,0.48095238095238096,109.0
|
||||
2.0,0.01,0.05845385674931129,0.8347107438016529,0.45248868778280543,121.0
|
||||
2.5,0.01,0.04104938271604938,0.7481481481481481,0.425531914893617,135.0
|
||||
3.0,0.01,0.02481785063752277,0.5519125683060109,0.35563380281690143,183.0
|
||||
3.5,0.01,0.01668552036199095,0.45701357466063347,0.3136645962732919,221.0
|
||||
4.0,0.01,0.009225217864923748,0.3300653594771242,0.24815724815724816,306.0
|
||||
4.5,0.01,0.0038886542792792795,0.17060810810810811,0.14574314574314573,592.0
|
||||
5.0,0.01,0.0018921095008051529,0.09758454106280193,0.08890845070422536,1035.0
|
||||
5.5,0.01,0.0008550995024875622,0.04710820895522388,0.04498886414253898,2144.0
|
||||
1.0,0.05,0.09079861111111111,0.8416666666666667,0.45701357466063347,120.0
|
||||
1.5,0.05,0.06677704194260485,0.6688741721854304,0.396,151.0
|
||||
2.0,0.05,0.050011510128913444,0.5580110497237569,0.3489208633093525,181.0
|
||||
2.5,0.05,0.03151611922141119,0.3686131386861314,0.26541554959785524,274.0
|
||||
3.0,0.05,0.01758841234010534,0.22799097065462753,0.18265682656826568,443.0
|
||||
3.5,0.05,0.006907068532472192,0.10871905274488698,0.09365853658536585,929.0
|
||||
4.0,0.05,0.003318484521238301,0.05453563714902808,0.04879301489470981,1852.0
|
||||
4.5,0.05,0.0010753547719105914,0.018454229855655035,0.01794365691727974,5473.0
|
||||
5.0,0.05,0.0003437132188806364,0.006148788506027031,0.005629880743386404,16426.0
|
||||
5.5,0.05,9.290550348976298e-05,0.0017593979723373864,0.0016521451800838246,57406.0
|
||||
1.0,0.15,0.399236798679868,1.0,0.5,101.0
|
||||
1.5,0.15,0.38721955128205127,0.9711538461538461,0.4926829268292683,104.0
|
||||
2.0,0.15,0.3641141141141141,0.9099099099099099,0.47393364928909953,111.0
|
||||
2.5,0.15,0.34692028985507245,0.8782608695652174,0.4675925925925926,115.0
|
||||
3.0,0.15,0.31012139107611547,0.7952755905511811,0.44052863436123346,127.0
|
||||
3.5,0.15,0.2872767857142857,0.7214285714285714,0.41422594142259417,140.0
|
||||
4.0,0.15,0.23815104166666667,0.63125,0.3798449612403101,160.0
|
||||
4.5,0.15,0.2106729055258467,0.5401069518716578,0.34843205574912894,187.0
|
||||
5.0,0.15,0.19948186528497408,0.5233160621761658,0.3412969283276451,193.0
|
||||
5.5,0.15,0.17773729446935724,0.452914798206278,0.3117283950617284,223.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 12.159791988000507,
|
||||
"name": "2d_BER_FER_DFR_963965",
|
||||
"platform": "Linux-6.1.6-arch1-3-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-24 09:16:22.859899"
|
||||
}
|
||||
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_bch_31_26.csv
Normal file
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_bch_31_26.csv
Normal file
@ -0,0 +1,31 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.1076036866359447,0.7214285714285714,0.014084507042253521,140.0
|
||||
1.5,0.01,0.09863523573200993,0.6474358974358975,0.006369426751592357,156.0
|
||||
2.0,0.01,0.06782464846980976,0.517948717948718,0.01015228426395939,195.0
|
||||
2.5,0.01,0.05789547823637132,0.4410480349344978,0.01293103448275862,229.0
|
||||
3.0,0.01,0.040507667900581704,0.33114754098360655,0.022435897435897436,305.0
|
||||
3.5,0.01,0.03225806451612903,0.24634146341463414,0.0024330900243309003,410.0
|
||||
4.0,0.01,0.021353930031803726,0.17781690140845072,0.01217391304347826,568.0
|
||||
4.5,0.01,0.013437889859205132,0.11160220994475138,0.006586169045005488,905.0
|
||||
5.0,0.01,0.0063573012906718825,0.05468327016783974,0.0021609940572663426,1847.0
|
||||
5.5,0.01,0.0027177400481643932,0.023636789141118653,0.00046783625730994154,4273.0
|
||||
1.0,0.05,0.08720083246618106,0.6516129032258065,0.00641025641025641,155.0
|
||||
1.5,0.05,0.0712799167533819,0.543010752688172,0.0053475935828877,186.0
|
||||
2.0,0.05,0.06328137058187992,0.48325358851674644,0.0,209.0
|
||||
2.5,0.05,0.04130340017436791,0.34121621621621623,0.010033444816053512,296.0
|
||||
3.0,0.05,0.02823529411764706,0.2376470588235294,0.009324009324009324,425.0
|
||||
3.5,0.05,0.021330060776063583,0.18297101449275363,0.0018083182640144665,552.0
|
||||
4.0,0.05,0.014593883328681367,0.12484548825710753,0.0,809.0
|
||||
4.5,0.05,0.006654567453115548,0.06110102843315184,0.0006045949214026602,1653.0
|
||||
5.0,0.05,0.0034803386837047425,0.032528180354267314,0.0003219575016097875,3105.0
|
||||
5.5,0.05,0.0017559403087039132,0.01671078755790867,0.000496113775425831,6044.0
|
||||
1.0,0.15,0.31174587540014775,0.7709923664122137,0.0,131.0
|
||||
1.5,0.15,0.32302867383512546,0.7013888888888888,0.0,144.0
|
||||
2.0,0.15,0.2903225806451613,0.6474358974358975,0.012658227848101266,156.0
|
||||
2.5,0.15,0.20661703887510338,0.517948717948718,0.00510204081632653,195.0
|
||||
3.0,0.15,0.20477476197243144,0.44493392070484583,0.0043859649122807015,227.0
|
||||
3.5,0.15,0.14526953886122537,0.3389261744966443,0.0,298.0
|
||||
4.0,0.15,0.1234954260953298,0.2512437810945274,0.0024813895781637717,402.0
|
||||
4.5,0.15,0.09664719329438659,0.19881889763779528,0.0,508.0
|
||||
5.0,0.15,0.055768179332968834,0.10699152542372882,0.0,944.0
|
||||
5.5,0.15,0.0412538327040519,0.0793401413982718,0.0,1273.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 0.4332787909952458,
|
||||
"name": "2d_BER_FER_DFR_bch_31_26",
|
||||
"platform": "Linux-6.1.6-arch1-3-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-24 16:51:03.263440"
|
||||
}
|
||||
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv
Normal file
31
latex/thesis/res/hybrid/2d_ber_fer_dfr_pegreg252x504.csv
Normal file
@ -0,0 +1,31 @@
|
||||
SNR,gamma,BER,FER,DFR,num_iterations
|
||||
1.0,0.01,0.09354864057834354,1.0,0.5,101.0
|
||||
1.5,0.01,0.07331447430457332,1.0,0.5,101.0
|
||||
2.0,0.01,0.05638063806380638,1.0,0.5,101.0
|
||||
2.5,0.01,0.040782649693540785,1.0,0.5,101.0
|
||||
3.0,0.01,0.024859943977591035,0.9901960784313726,0.4975369458128079,102.0
|
||||
3.5,0.01,0.01549865229110512,0.9528301886792453,0.48792270531400966,106.0
|
||||
4.0,0.01,0.008361678004535147,0.9017857142857143,0.47417840375586856,112.0
|
||||
4.5,0.01,0.003981570256738042,0.6778523489932886,0.404,149.0
|
||||
5.0,0.01,0.001657329598506069,0.396078431372549,0.28370786516853935,255.0
|
||||
5.5,0.01,0.00063619302096256,0.20240480961923848,0.16833333333333333,499.0
|
||||
1.0,0.05,0.09390224736759391,1.0,0.5,101.0
|
||||
1.5,0.05,0.06728351406569229,1.0,0.5,101.0
|
||||
2.0,0.05,0.04523809523809524,0.9619047619047619,0.49029126213592233,105.0
|
||||
2.5,0.05,0.02620517342739565,0.7481481481481481,0.4279661016949153,135.0
|
||||
3.0,0.05,0.010427855352667383,0.37969924812030076,0.27520435967302453,266.0
|
||||
3.5,0.05,0.0029187763037022796,0.13593539703903096,0.11966824644549763,743.0
|
||||
4.0,0.05,0.0006703462313819897,0.041512535963830664,0.039857932123125495,2433.0
|
||||
4.5,0.05,9.190850090968527e-05,0.006645611264640084,0.00660173867573044,15198.0
|
||||
5.0,0.05,1.3433806155116967e-05,0.0010221740934530255,0.0010211303204933778,98809.0
|
||||
5.5,0.05,1.5555555555555556e-06,0.000126,0.00012598412600012398,500000.0
|
||||
1.0,0.15,0.33667295300958666,1.0,0.5,101.0
|
||||
1.5,0.15,0.33075986170045574,1.0,0.5,101.0
|
||||
2.0,0.15,0.32374666038032374,1.0,0.5,101.0
|
||||
2.5,0.15,0.31655665566556657,1.0,0.5,101.0
|
||||
3.0,0.15,0.30365000785792867,1.0,0.5,101.0
|
||||
3.5,0.15,0.309013044161559,1.0,0.5,101.0
|
||||
4.0,0.15,0.3084040546911834,1.0,0.5,101.0
|
||||
4.5,0.15,0.3033160458903033,1.0,0.5,101.0
|
||||
5.0,0.15,0.3023338048090523,1.0,0.5,101.0
|
||||
5.5,0.15,0.30788982259570497,0.9901960784313726,0.4975369458128079,102.0
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"duration": 3169.7098331579764,
|
||||
"name": "2d_BER_FER_DFR_pegreg252x504",
|
||||
"platform": "Linux-6.1.6-arch1-3-x86_64-with-glibc2.36",
|
||||
"omega": 0.05,
|
||||
"K": 200,
|
||||
"min_var_k": 150,
|
||||
"end_time": "2023-01-24 14:58:01.240346"
|
||||
}
|
||||
8
latex/thesis/res/hybrid/fps_vs_n.csv
Normal file
8
latex/thesis/res/hybrid/fps_vs_n.csv
Normal file
@ -0,0 +1,8 @@
|
||||
n,k,fps,spf
|
||||
96,48,7374.0570635159675,0.00013561055893473079
|
||||
204,102,6601.111655956669,0.00015148963570365097
|
||||
204,102,1450.823819165217,0.000689263566526903
|
||||
408,204,317.62940489539665,0.0031483231230727054
|
||||
31,11,8433.078242796635,0.00011858066191359955
|
||||
31,26,61715.460243456524,1.6203395325177478e-05
|
||||
504,252,195.7683929010524,0.0051080768717626035
|
||||
|
@ -0,0 +1,205 @@
|
||||
,grad_h_vars,bit_error
|
||||
0,1.1469145950016066,0.0
|
||||
1,0.7349649597670473,0.0
|
||||
2,0.41034980410664235,0.0
|
||||
3,1.5936176557962956,0.0
|
||||
4,1.2556306230799523,0.0
|
||||
5,0.9501079929593809,0.0
|
||||
6,1.0608527311485363,0.0
|
||||
7,0.9065636992308471,0.0
|
||||
8,0.7130161266399191,0.0
|
||||
9,0.895826670845081,0.0
|
||||
10,1.5330042130453543,0.0
|
||||
11,0.8781452062655208,0.0
|
||||
12,0.6859253819091313,0.0
|
||||
13,0.8494837401995201,0.0
|
||||
14,1.7298258920316718,0.0
|
||||
15,0.5441116768013853,0.0
|
||||
16,1.0870164877307138,0.0
|
||||
17,0.8776332266276086,0.0
|
||||
18,2.3446586396116924,0.0
|
||||
19,1.381488362354177,0.0
|
||||
20,1.8361912485093685,0.0
|
||||
21,1.176340804980718,0.0
|
||||
22,0.30881298873064295,0.0
|
||||
23,1.046505970974569,0.0
|
||||
24,0.6542139798501604,0.0
|
||||
25,0.9358783438098642,0.0
|
||||
26,0.9145146314388769,0.0
|
||||
27,0.9325624236784603,0.0
|
||||
28,1.000558264485271,0.0
|
||||
29,1.1668018406385636,0.0
|
||||
30,0.9604669615462674,0.0
|
||||
31,0.8080509629925774,0.0
|
||||
32,0.31707179921145534,1.0
|
||||
33,0.7246558632787823,0.0
|
||||
34,0.5621649892107863,0.0
|
||||
35,0.7694807648719255,0.0
|
||||
36,0.6610013498912781,0.0
|
||||
37,0.7736375435823932,0.0
|
||||
38,0.5562601732655184,0.0
|
||||
39,0.18780885479261286,1.0
|
||||
40,1.7171254078500968,0.0
|
||||
41,0.5223816647948951,0.0
|
||||
42,0.8414436097078756,0.0
|
||||
43,0.891196054076969,0.0
|
||||
44,0.7485078461673225,0.0
|
||||
45,1.04287532172377,0.0
|
||||
46,0.10396015745641062,1.0
|
||||
47,0.4441693122072358,0.0
|
||||
48,1.1069364968607116,0.0
|
||||
49,0.9872887700316798,0.0
|
||||
50,0.7821904177749635,0.0
|
||||
51,0.9078965395457048,0.0
|
||||
52,1.2804728966125465,0.0
|
||||
53,0.8327949586188865,0.0
|
||||
54,1.052227851986963,0.0
|
||||
55,0.9063828067361694,0.0
|
||||
56,0.952160447221664,0.0
|
||||
57,1.0997592704590031,0.0
|
||||
58,0.43550867124864345,0.0
|
||||
59,2.0157240264588667,0.0
|
||||
60,1.3813325115541275,0.0
|
||||
61,1.7431077364927987,0.0
|
||||
62,1.1847336441743674,0.0
|
||||
63,1.5988112534577419,0.0
|
||||
64,0.9539590259773287,0.0
|
||||
65,0.7269923809541012,0.0
|
||||
66,0.8398432723726956,0.0
|
||||
67,1.409882546338875,0.0
|
||||
68,0.9013351730976709,0.0
|
||||
69,1.3941824623052859,0.0
|
||||
70,0.36277376770946385,0.0
|
||||
71,0.7629017682242774,0.0
|
||||
72,1.3614744362633528,0.0
|
||||
73,0.8404837668913099,0.0
|
||||
74,1.1332131299535815,0.0
|
||||
75,1.8141339310834872,0.0
|
||||
76,0.9198980762091067,0.0
|
||||
77,0.9487046055630209,0.0
|
||||
78,1.401111613370583,0.0
|
||||
79,1.151639175635881,0.0
|
||||
80,0.38790767209567306,0.0
|
||||
81,1.105773950986082,0.0
|
||||
82,0.8352297990223916,0.0
|
||||
83,0.8665562954089628,0.0
|
||||
84,1.4868580119778607,0.0
|
||||
85,0.9211843020326788,0.0
|
||||
86,1.1689944009257842,0.0
|
||||
87,1.0068677015448033,0.0
|
||||
88,1.0836181136301897,0.0
|
||||
89,0.9235435526128809,0.0
|
||||
90,0.6707729475015448,0.0
|
||||
91,0.5380953446627244,0.0
|
||||
92,0.9647446516243714,0.0
|
||||
93,0.7517372755928693,0.0
|
||||
94,0.946955187983692,0.0
|
||||
95,1.3954397761745327,0.0
|
||||
96,0.5352161356828059,0.0
|
||||
97,1.1072791988470319,0.0
|
||||
98,1.4240110977445817,0.0
|
||||
99,1.0902836656382533,0.0
|
||||
100,0.9945863889695074,0.0
|
||||
101,1.5189575775894155,0.0
|
||||
102,0.895129990068306,0.0
|
||||
103,1.3025913004882157,0.0
|
||||
104,0.6824840943770301,0.0
|
||||
105,0.5577623593934801,0.0
|
||||
106,0.5829910630128274,0.0
|
||||
107,1.300606650522138,0.0
|
||||
108,0.9758395820957634,0.0
|
||||
109,0.5011535319391117,0.0
|
||||
110,0.847385443182737,0.0
|
||||
111,1.6053646604821943,0.0
|
||||
112,0.7479584114380543,0.0
|
||||
113,0.7154358159984203,0.0
|
||||
114,1.2809985907651924,0.0
|
||||
115,0.8500925174070807,0.0
|
||||
116,0.9422984104715906,0.0
|
||||
117,1.0144193081149928,0.0
|
||||
118,0.8928703387803261,0.0
|
||||
119,0.9135384927123353,0.0
|
||||
120,1.1114031211227495,0.0
|
||||
121,0.5009132448338548,0.0
|
||||
122,1.17922019373665,0.0
|
||||
123,0.8808257592555049,0.0
|
||||
124,0.4736104892052034,0.0
|
||||
125,0.6125500836968003,0.0
|
||||
126,0.5798464193671122,0.0
|
||||
127,0.7622448243391861,0.0
|
||||
128,1.2639682341841492,0.0
|
||||
129,1.397033047299318,0.0
|
||||
130,0.9091683804677143,0.0
|
||||
131,1.2147541611710555,0.0
|
||||
132,0.2447114380129915,1.0
|
||||
133,1.4276638744510006,0.0
|
||||
134,1.6500906242808973,0.0
|
||||
135,0.7097495271906855,0.0
|
||||
136,0.6070289018226261,0.0
|
||||
137,1.707276208332383,0.0
|
||||
138,1.5552499418106627,0.0
|
||||
139,0.9026306223185824,0.0
|
||||
140,0.44266393218454547,0.0
|
||||
141,0.7572433991531969,0.0
|
||||
142,0.9938527639391456,0.0
|
||||
143,1.629492044830871,0.0
|
||||
144,0.7995704002918802,0.0
|
||||
145,0.7809987777608669,0.0
|
||||
146,0.848733412232679,0.0
|
||||
147,0.3222830373637598,0.0
|
||||
148,1.5543660011458496,0.0
|
||||
149,1.653926092422478,0.0
|
||||
150,1.281204520778369,0.0
|
||||
151,0.9815388578918458,0.0
|
||||
152,1.1368563793597533,0.0
|
||||
153,1.3142794996072125,0.0
|
||||
154,1.3986851636622872,0.0
|
||||
155,0.3012765656054378,0.0
|
||||
156,0.596092854844867,0.0
|
||||
157,0.8857431745997897,0.0
|
||||
158,1.2543247875702626,0.0
|
||||
159,1.1601351303300462,0.0
|
||||
160,0.9757095780886789,0.0
|
||||
161,0.5118576863239332,0.0
|
||||
162,0.3278302376347513,0.0
|
||||
163,0.7739041398840416,0.0
|
||||
164,1.348158158191261,0.0
|
||||
165,0.9373253418030763,0.0
|
||||
166,0.8407140796905404,0.0
|
||||
167,0.7701902562530398,0.0
|
||||
168,0.7373339357864163,0.0
|
||||
169,0.6322137476990133,0.0
|
||||
170,0.49406238720934886,0.0
|
||||
171,1.1373885990027888,0.0
|
||||
172,0.776329392554151,0.0
|
||||
173,1.5799647321616117,0.0
|
||||
174,0.9340163264984314,0.0
|
||||
175,1.051485368808022,0.0
|
||||
176,1.4547411595091289,0.0
|
||||
177,2.3122310673514046,0.0
|
||||
178,0.4431898892258028,0.0
|
||||
179,0.6602474324735155,0.0
|
||||
180,1.0284972218659039,0.0
|
||||
181,0.7079467538460712,0.0
|
||||
182,0.6992783811504699,0.0
|
||||
183,1.6858177272412607,0.0
|
||||
184,0.8646574331609789,0.0
|
||||
185,0.6073345697134169,0.0
|
||||
186,1.7225604717078735,0.0
|
||||
187,0.9394537943330523,0.0
|
||||
188,0.8585445078403137,0.0
|
||||
189,1.1868247620624086,0.0
|
||||
190,0.9530922847239147,0.0
|
||||
191,0.7991154274895775,0.0
|
||||
192,0.7751256589398754,0.0
|
||||
193,1.995312237243617,0.0
|
||||
194,1.0583299321954904,0.0
|
||||
195,1.0741257191353668,0.0
|
||||
196,1.0360387420102335,0.0
|
||||
197,1.6726289917395618,0.0
|
||||
198,1.5154012159268524,0.0
|
||||
199,0.6079634018868354,0.0
|
||||
200,1.1137919258655136,0.0
|
||||
201,0.34364650124488877,0.0
|
||||
202,0.8982288426167987,0.0
|
||||
203,0.7158776862928066,0.0
|
||||
|
8
latex/thesis/res/proximal/fps_vs_n.csv
Normal file
8
latex/thesis/res/proximal/fps_vs_n.csv
Normal file
@ -0,0 +1,8 @@
|
||||
n,k,fps,spf
|
||||
96,48,23963.664002681122,4.1729845648316434e-05
|
||||
204,102,11466.593636251799,8.720985775919413e-05
|
||||
204,102,1262.3084456970446,0.0007921994053108008
|
||||
408,204,291.5566845813344,0.0034298647669010448
|
||||
31,11,48018.582682609645,2.0825271054119614e-05
|
||||
31,26,72986.7772585266,1.3701111866576847e-05
|
||||
504,252,252.54094111529753,0.0039597539930899765
|
||||
|
Loading…
Reference in New Issue
Block a user