Changed pseudocode to not use indexing, double return instead of loop break
This commit is contained in:
parent
d4e531d47c
commit
9ca69da479
@ -195,7 +195,7 @@
|
||||
basicstyle=\normalfont,
|
||||
columns=fullflexible,
|
||||
keywordstyle=\color{black}\bfseries,
|
||||
keywords={a, for, end, do, b} % add the keywords you want, or load
|
||||
keywords={a, for, end, do, return, b} % add the keywords you want, or load
|
||||
% a language as Rubens explains in his comment above.
|
||||
numbers=left,
|
||||
xleftmargin=.04\textwidth,
|
||||
|
||||
@ -94,15 +94,14 @@
|
||||
|
||||
\vspace{2mm}
|
||||
\begin{algorithm}[caption={}, label={}]
|
||||
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
|
||||
for $k=0$ to $K-1$ do
|
||||
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \omega \nabla L \left( \boldsymbol{y} \mid \boldsymbol{s}^{(k)} \right) $
|
||||
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
|
||||
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
|
||||
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
|
||||
If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
|
||||
$\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}$, then return $\boldsymbol{\hat{c}}$
|
||||
end for
|
||||
Output $\boldsymbol{\hat{x}}$
|
||||
return $\boldsymbol{\hat{c}}$
|
||||
\end{algorithm}
|
||||
\end{frame}
|
||||
|
||||
|
||||
@ -379,18 +379,15 @@
|
||||
\begin{figure}[htpb]
|
||||
\centering
|
||||
|
||||
\begin{algorithm}[caption={}, label={},
|
||||
basicstyle=\fontsize{7.5}{9.5}\selectfont
|
||||
]
|
||||
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
|
||||
for $k=0$ to $K-1$ do
|
||||
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \omega \nabla L \left( \boldsymbol{y} \mid \boldsymbol{s}^{(k)}\right) $
|
||||
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
|
||||
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
|
||||
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
|
||||
If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
|
||||
\begin{algorithm}[caption={}, label={}]
|
||||
$\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}$, then return $\boldsymbol{\hat{c}}$
|
||||
end for
|
||||
Output $\boldsymbol{\hat{x}}$
|
||||
return $\boldsymbol{\hat{c}}$
|
||||
\end{algorithm}
|
||||
|
||||
\caption{Proximal decoding algorithm \cite{proximal_paper}}
|
||||
@ -862,18 +859,15 @@ Output $\boldsymbol{\hat{x}}$
|
||||
\begin{figure}
|
||||
\centering
|
||||
|
||||
\begin{algorithm}[caption={}, label={},
|
||||
basicstyle=\fontsize{7.5}{9.5}\selectfont
|
||||
]
|
||||
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
|
||||
for $k=0$ to $K-1$ do
|
||||
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \omega \nabla L \left( \boldsymbol{y} \mid \boldsymbol{s}^{(k)} \right) $
|
||||
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
|
||||
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
|
||||
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
|
||||
If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
|
||||
\begin{algorithm}[caption={}, label={}]
|
||||
$\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}$, then return $\boldsymbol{\hat{c}}$
|
||||
end for
|
||||
Output $\boldsymbol{\hat{x}}$
|
||||
return $\boldsymbol{\hat{c}}$
|
||||
\end{algorithm}
|
||||
|
||||
\caption{Proximal decoding algorithm \cite{proximal_paper}}
|
||||
@ -884,22 +878,19 @@ Output $\boldsymbol{\hat{x}}$
|
||||
\centering
|
||||
\begin{figure}
|
||||
\centering
|
||||
|
||||
\begin{algorithm}[caption={}, label={},
|
||||
basicstyle=\fontsize{7.5}{9.5}\selectfont
|
||||
]
|
||||
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
|
||||
for $k=0$ to $K-1$ do
|
||||
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \omega \nabla L \left( \boldsymbol{y} \mid \boldsymbol{s}^{(k)}\right) $
|
||||
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
|
||||
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
|
||||
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
|
||||
$\textcolor{KITblue}{\text{If }\boldsymbol{\hat{x}}\text{ passes the parity check condition, output }\boldsymbol{\hat{x}}}$
|
||||
|
||||
\begin{algorithm}[caption={}, label={}]
|
||||
$\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}$, then return $\boldsymbol{\hat{c}}$
|
||||
end for
|
||||
$\textcolor{KITblue}{\text{Find }N\text{ most probably wrong bits.}}$
|
||||
$\textcolor{KITblue}{\text{Generate variations } \boldsymbol{\tilde{x}}_n\text{ of }\boldsymbol{\hat{x}}\text{ with the }N\text{ bits modified.}}$
|
||||
$\textcolor{KITblue}{\text{Compute }d_H\left( \boldsymbol{ \tilde{x}}_n, \boldsymbol{\hat{x}} \right) \forall n \in \left[ 1 : N-1 \right]}$
|
||||
$\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{x}}_n\text{ with lowest }d_H\left( \boldsymbol{ \tilde{x}}_n, \boldsymbol{\hat{x}} \right)}$
|
||||
$\textcolor{KITblue}{\text{Generate variations } \boldsymbol{\tilde{c}}_n\text{ of }\boldsymbol{\hat{c}}\text{ with the }N\text{ bits modified.}}$
|
||||
$\textcolor{KITblue}{\text{Compute }d_H\left( \boldsymbol{ \tilde{c}}_n, \boldsymbol{\hat{c}} \right) \forall n \in \left[ 1 : N-1 \right]}$
|
||||
$\textcolor{KITblue}{\text{Output }\boldsymbol{\tilde{c}}_n\text{ with lowest }d_H\left( \boldsymbol{ \tilde{c}}_n, \boldsymbol{\hat{c}} \right)}$
|
||||
\end{algorithm}
|
||||
|
||||
\caption{Hybrid proximal \& ML decoding algorithm}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user