diff --git a/src/thesis/chapters/4_decoding_under_dems.tex b/src/thesis/chapters/4_decoding_under_dems.tex index ffc91ee..dcc098e 100644 --- a/src/thesis/chapters/4_decoding_under_dems.tex +++ b/src/thesis/chapters/4_decoding_under_dems.tex @@ -1801,7 +1801,8 @@ previous experiments. \end{axis} \end{tikzpicture} - \caption{Comparison of window sizes for $F=1$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \label{fig:bp_f_over_p} \end{subfigure}% \hfill% @@ -1909,7 +1910,8 @@ previous experiments. \end{tikzpicture} \vspace{-3.2mm} - \caption{Comparison of step sizes for $W=5$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \label{fig:bp_f_over_iter} \end{subfigure} @@ -2025,6 +2027,15 @@ This motivates the next subsection, in which we replace the inner \subsection{Belief Propagation with Guided Decimation} \label{subsec:Belief Propagation with Guided Decimation} +% [Thread] Intro to BPGD + Local experimental setup + +We now turn to \ac{bpgd} as the inner decoder, in order to address +the convergence issues of plain \ac{bp} on \ac{qec} codes. +For the underlying \ac{bp} step we use the \ac{spa} variant rather +than the min-sum approximation employed in +\Cref{subsec:Belief Propagation}, since this made the implementation +of the guided decimation more straightforward. + \begin{figure}[t] \centering \hspace*{-6mm} @@ -2053,7 +2064,7 @@ This motivates the next subsection, in which we replace the inner ylabel={Per-round-LER}, % extra description/.code={ % \node[rotate=90, anchor=south] - % at ([xshift=10mm]current axis.east) + % at () % {Warm s. (---), Cold s. (- - -)}; % }, ] @@ -2093,7 +2104,9 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of window sizes for $F=1$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} + \label{fig:bpgd_w} \end{subfigure}% \hfill% \begin{subfigure}{0.5\textwidth} @@ -2162,14 +2175,112 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of step sizes for $W=5$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} + \label{fig:bpgd_f} \end{subfigure} \caption{ \red{\lipsum[2]} } + \label{fig:bpgd_wf} \end{figure} +% [Experimental parameters] Figure 4.10 + +\Cref{fig:bpgd_wf} shows the per-round \ac{ler} of \ac{bpgd} +sliding-window decoding as a function of the physical error rate. +In both panels the dashed curves correspond to cold-start +sliding-window decoding and the solid curves to the +corresponding warm-start decoding, where the warm start carries over both +the \ac{bp} messages and the decimation information of the overlap +region as described in +\Cref{subsec:Warm-Start Belief Propagation with Guided Decimation Decoding}. +The maximum number of inner \ac{bp} iterations was set to +$n_\text{iter} = 5000$. +This value was chosen to be at least as large as the number of +\acp{vn} in any single window, since with one \ac{bp} iteration +between consecutive decimations ($T = 1$ in the notation of +\Cref{alg:bpgd}) this is the maximum number of inner iterations +that can occur before every \ac{vn} in the window has been decimated. +A preliminary investigation showed that \ac{bpgd} only delivers its +intended performance gain once most \acp{vn} have actually been decimated, +which motivated this choice. +The physical error rate was swept from $p = 0.001$ to $p = 0.004$ +in steps of $0.0005$. +\Cref{fig:bpgd_w} sweeps over the window size with +$W \in \{3, 4, 5\}$ at fixed step size $F = 1$, and +\Cref{fig:bpgd_f} sweeps over the step size with +$F \in \{1, 2, 3\}$ at fixed window size $W = 5$. + +% [Description] Figure 4.10 + +In both panels, every curve again exhibits the expected monotonic +increase of the per-round \ac{ler} with the physical error rate. +Across both panels and across all parameter choices, the warm-start +curves lie above the corresponding cold-start curves, i.e., +the warm-start variant performsworse than its cold-start counterpart. +This is the opposite of what we observed for plain \ac{bp}, where +warm-start improved upon cold-start at every parameter setting. +The gap between the warm- and cold-start curves additionally widens +as the physical error rate decreases: +at the lowest sampled rate $p = 0.001$, the per-round \ac{ler} of the +warm-start runs is more than two orders of magnitude above that of +the corresponding cold-start runs. +In \Cref{fig:bpgd_w}, larger window sizes yield lower per-round +\acp{ler} for both warm- and cold-start, and the spacing between the +cold-start curves shrinks as $W$ grows. +In \Cref{fig:bpgd_f}, the cold-start curves follow the previously seen +ordering with $F = 1$ at the bottom and $F = 3$ at the top. +The warm-start curves, however, exhibit the opposite ordering: +$F = 1$ now yields the highest per-round \ac{ler}, $F = 2$ lies below +it, and $F = 3$ is the lowest of the three warm-start curves. + +% [Interpretation] Figure 4.10 + +The fact that warm-start sliding-window decoding now performs worse +than its cold-start counterpart is surprising in light of the results +for plain \ac{bp}, where the warm-start modification was uniformly beneficial. +The dependence on the window size in \Cref{fig:bpgd_w} is, on its own, +consistent with the same explanation that we gave for +\Cref{fig:whole_vs_cold}: larger windows expose the inner decoder to +a larger fraction of the constraints encoded in the detector error +matrix at the time of decoding, and this benefits both warm- and +cold-start decoding. +The dependence on the step size in \Cref{fig:bpgd_f}, however, is the +opposite of the corresponding dependence under plain \ac{bp} +(\Cref{fig:bp_f_over_p}): for warm-start, smaller $F$ now hurts +rather than helps, even though smaller $F$ implies a larger overlap +in both cases. + +This inversion provides the clue to what is going wrong. +Recall from +\Cref{subsec:Warm-Start Belief Propagation with Guided Decimation Decoding} +that the warm start for \ac{bpgd} carries over not only the \ac{bp} +messages on the edges of the overlap region but also the decimation +information. +Because we run with an iteration budget large enough to decimate +every \ac{vn} in a window, by the time window $\ell$ ends, all +of its \acp{vn} have already been hard-decided. +For the \acp{vn} that lie in the overlap region with window $\ell + 1$ +this hard decision is then carried into the next window through the +warm-start initialization, and the next window thus begins decoding +with a substantial fraction of its \acp{vn} already frozen, before +its own parity checks have had any chance to influence the +corresponding bit estimates. +This identifies one of two competing effects on the warm-start performance. +The larger the overlap, the more such prematurely frozen \acp{vn} the +next window inherits, which hurts performance. +On the other hand, a larger window still exposes the inner decoder to +a larger set of constraints, which helps performance. +The two effects together are consistent with what we observe in +\Cref{fig:bpgd_wf}. +Increasing $W$ at fixed $F$ enlarges both the overlap and the window +itself, and the benefit due to the larger $W$ dominates. +Decreasing $F$ at fixed $W$, by contrast, enlarges only the overlap +without enlarging the window, so the freezing effect is no longer +offset and warm-start performance worsens with smaller $F$. + \begin{figure}[t] \centering \hspace*{-6mm} @@ -2240,7 +2351,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of window sizes for $F=1$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure}% \hfill% \begin{subfigure}{0.48\textwidth} @@ -2311,9 +2423,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{ - Comparison of step sizes for $W=5$. - } + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure} \caption{ @@ -2389,7 +2500,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of window sizes for $F=1$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure}% \hfill% \begin{subfigure}{0.5\textwidth} @@ -2458,7 +2570,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of step sizes for $W=5$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure} \caption{ @@ -2536,7 +2649,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{Comparison of window sizes for $F=1$.} + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure}% \hfill% \begin{subfigure}{0.48\textwidth} @@ -2607,9 +2721,8 @@ This motivates the next subsection, in which we replace the inner \end{axis} \end{tikzpicture} - \caption{ - Comparison of step sizes for $W=5$. - } + \caption{\red{Lorem ipsum dolor sit amet, consectetur adipiscing + elit, sed do eiusmod tempor incididunt}} \end{subfigure} \caption{