这个算法是怎么写出来的?

这个算法是怎么写出来的?

以下算法出现在 Boyd 和 Parikh 的书的第 152 页近端算法

我想知道这是如何在 Latex 中编写的,以便我可以用相同的风格编写自己的算法。使用了哪种算法环境(如果有)?有人能猜出这是怎么写的吗?

在此处输入图片描述

答案1

恐怕没有使用专门的包:

\documentclass{article}
\usepackage{enumitem,amsmath}

\DeclareMathOperator{\prox}{\mathbf{prox}}

\begin{document}

\noindent
\begin{minipage}{\columnwidth}
\normalfont
\hrule
\vspace{2ex}
\textbf{given} $y^k$, $\lambda^{k-1}$, and parameter $\beta\in(0,1)$.

\medskip

Let $\lambda:=\lambda^{k-1}$.

\medskip

\textbf{repeat}
\begin{enumerate}[nosep,leftmargin=3.5em]
\item Let $z:=\prox_{\lambda g}(y^k-\lambda\nabla f(y^k))$.
\item \textbf{break if} $f(z)\le \hat{f}_\lambda(z,y^k)$.
\item Update $\lambda:=\beta\lambda$.
\end{enumerate}

\medskip

\textbf{return} $\lambda^k:=\lambda$, $x^{k+1}:= z$.

\vspace{2ex}
\hrule
\end{minipage}

\end{document}

在此处输入图片描述

相关内容