§Wrote ADMM in proximal form
This commit is contained in:
parent
d8646a2741
commit
1beb8c484e
@ -63,14 +63,14 @@ proximal operator form.%
|
|||||||
\end{align*}
|
\end{align*}
|
||||||
|
|
||||||
\begin{genericAlgorithm}[caption={}, label={},
|
\begin{genericAlgorithm}[caption={}, label={},
|
||||||
basicstyle=\fontsize{10.5}{15}\selectfont
|
basicstyle=\fontsize{11}{17}\selectfont
|
||||||
]
|
]
|
||||||
Initialize variables
|
Initialize variables
|
||||||
while stopping critierion not satisfied do
|
while stopping critierion not satisfied do
|
||||||
$\boldsymbol{r} \leftarrow \boldsymbol{r}
|
$\boldsymbol{r} \leftarrow \boldsymbol{r}
|
||||||
+ \omega \nabla L\left( \boldsymbol{y} \mid \boldsymbol{s} \right) $
|
+ \omega \nabla L\left( \boldsymbol{y} \mid \boldsymbol{s} \right) $
|
||||||
$\boldsymbol{s} \leftarrow
|
$\boldsymbol{s} \leftarrow
|
||||||
\text{prox}_{\gamma h}\left( \boldsymbol{r} \right) $|\Suppressnumber|
|
\textbf{prox}_{\scaleto{\gamma h}{7.5pt}}\left( \boldsymbol{r} \right) $|\Suppressnumber|
|
||||||
|\Reactivatenumber|
|
|\Reactivatenumber|
|
||||||
end while
|
end while
|
||||||
return $\boldsymbol{s}$
|
return $\boldsymbol{s}$
|
||||||
@ -86,24 +86,28 @@ return $\boldsymbol{s}$
|
|||||||
\text{minimize}\hspace{5mm} &
|
\text{minimize}\hspace{5mm} &
|
||||||
\underbrace{\boldsymbol{\gamma}^\text{T}\tilde{\boldsymbol{c}}}
|
\underbrace{\boldsymbol{\gamma}^\text{T}\tilde{\boldsymbol{c}}}
|
||||||
_{\text{Likelihood}}
|
_{\text{Likelihood}}
|
||||||
+ \underbrace{\text{TODO}}_{\text{Constraints}} \\
|
+ \underbrace{\sum_{j\in\mathcal{J}} g_j\left(
|
||||||
% + \sum_{j\in\mathcal{J}} \boldsymbol{\lambda}^\text{T}_j
|
\boldsymbol{T}_j\tilde{\boldsymbol{c}} \right) }
|
||||||
% \left( \boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j \right)
|
_{\text{Constraints}} \\
|
||||||
% + \frac{\mu}{2}\sum_{j\in\mathcal{J}}
|
\text{subject to}\hspace{5mm} &
|
||||||
% \lVert \boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j \rVert^2_2 \\
|
\tilde{\boldsymbol{c}} \in \mathbb{R}^n
|
||||||
\text{subject to}\hspace{5mm} & \text{TODO}
|
% \boldsymbol{T}_j\tilde{\boldsymbol{c}} = \boldsymbol{z}_j\hspace{3mm}
|
||||||
|
% \forall j\in\mathcal{J}
|
||||||
\end{align*}
|
\end{align*}
|
||||||
|
|
||||||
\begin{genericAlgorithm}[caption={}, label={},
|
\begin{genericAlgorithm}[caption={}, label={},
|
||||||
basicstyle=\fontsize{10.5}{15}\selectfont
|
basicstyle=\fontsize{11}{17}\selectfont
|
||||||
]
|
]
|
||||||
Initialize variables
|
Initialize variables
|
||||||
while stopping criterion not satisfied do
|
while stopping criterion not satisfied do
|
||||||
$\tilde{\boldsymbol{c}} \leftarrow \text{prox}_{\text{TODO}}\left( \text{TODO} \right) $
|
$\tilde{\boldsymbol{c}} \leftarrow \textbf{prox}_{
|
||||||
$\boldsymbol{z} \leftarrow \text{prox}_{\text{TODO}}\left( \text{TODO} \right) $
|
\scaleto{\nu \cdot \boldsymbol{\gamma}^{\text{T}}\tilde{\boldsymbol{c}}}{8.5pt}}
|
||||||
$\boldsymbol{u}_j \leftarrow \boldsymbol{u}_j
|
\left( \boldsymbol{z} - \boldsymbol{u} \right) $
|
||||||
+ \boldsymbol{T}_j\tilde{\boldsymbol{c}}
|
$\boldsymbol{z}_j \leftarrow \textbf{prox}_{\scaleto{g_j}{7pt}}
|
||||||
- \boldsymbol{z}_j$
|
\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}}
|
||||||
|
+ \boldsymbol{T}_j\boldsymbol{u} \right) \hspace{5mm}\forall j\in\mathcal{J}$
|
||||||
|
$\boldsymbol{u} \leftarrow \boldsymbol{u}
|
||||||
|
+ \tilde{\boldsymbol{c}} - \boldsymbol{z}$
|
||||||
end while
|
end while
|
||||||
return $\tilde{\boldsymbol{c}}$
|
return $\tilde{\boldsymbol{c}}$
|
||||||
\end{genericAlgorithm}
|
\end{genericAlgorithm}
|
||||||
@ -117,6 +121,16 @@ return $\tilde{\boldsymbol{c}}$
|
|||||||
\label{fig:ana:theo_comp_alg}
|
\label{fig:ana:theo_comp_alg}
|
||||||
\end{figure}%
|
\end{figure}%
|
||||||
%
|
%
|
||||||
|
\todo{Show how $\tilde{\boldsymbol{c}} \leftarrow \textbf{prox}
|
||||||
|
_{1 / \mu \cdot \boldsymbol{\gamma}^{\text{T}}\tilde{\boldsymbol{c}}}
|
||||||
|
\left( \boldsymbol{z} - \boldsymbol{u} \right) $
|
||||||
|
is the same as
|
||||||
|
$\boldsymbol{\gamma}^\text{T}\tilde{\boldsymbol{c}}
|
||||||
|
+ \sum_{j\in\mathcal{J}} \boldsymbol{\lambda}^\text{T}_j
|
||||||
|
\left( \boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j \right)
|
||||||
|
+ \frac{\mu}{2}\sum_{j\in\mathcal{J}}
|
||||||
|
\lVert \boldsymbol{T}_j\tilde{\boldsymbol{c}} - \boldsymbol{z}_j \rVert^2_2$}%
|
||||||
|
%
|
||||||
\noindent The objective functions of both problems are similar in that they
|
\noindent The objective functions of both problems are similar in that they
|
||||||
both comprise two parts: one associated to the likelihood that a given
|
both comprise two parts: one associated to the likelihood that a given
|
||||||
codeword was sent and one associated to the constraints the codeword is
|
codeword was sent and one associated to the constraints the codeword is
|
||||||
@ -124,7 +138,7 @@ subjected to.
|
|||||||
Their major difference is that the two parts of the objective minimized with
|
Their major difference is that the two parts of the objective minimized with
|
||||||
proximal decoding are both functions of the same variable
|
proximal decoding are both functions of the same variable
|
||||||
$\tilde{\boldsymbol{x}}$, whereas with \ac{ADMM} the two parts are functions
|
$\tilde{\boldsymbol{x}}$, whereas with \ac{ADMM} the two parts are functions
|
||||||
of different variables: $\tilde{\boldsymbol{c}}$ and $\boldsymbol{z}$.
|
of different variables: $\tilde{\boldsymbol{c}}$ and $\boldsymbol{z}_{[1:m]}$.
|
||||||
This difference means that while with proximal decoding the alternating
|
This difference means that while with proximal decoding the alternating
|
||||||
minimization of the two parts of the objective function inevitably leads to
|
minimization of the two parts of the objective function inevitably leads to
|
||||||
oscillatory behaviour (as explained in section (TODO)), this is not the
|
oscillatory behaviour (as explained in section (TODO)), this is not the
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user