pyproximal.HuberCircular#
- class pyproximal.HuberCircular(alpha)[source]#
Circular Huber norm proximal operator.
Proximal operator of the Circular Huber norm defined as:
\[\begin{split}H_\alpha(\mathbf{x}) = \begin{cases} \frac{\|\mathbf{x}\|_2^2}{2 \alpha}, & \|\mathbf{x}\|_2 \leq \alpha \\ \|\mathbf{x}\|_2 - \frac{\alpha}{2}, & \|\mathbf{x}\|_2 > \alpha \\ \end{cases}\end{split}\]which behaves like a \(\ell_2\) norm for \(\|\mathbf{x}\|_2 \leq \alpha\) and a \(\ell_1\) norm for \(\|\mathbf{x}\|_2 > \alpha\).
- Parameters
- alpha
float
Huber parameter
- alpha
Notes
The Circular Huber proximal operator is defined as [1]:
\[\prox_{\tau H_\alpha(\cdot)}(\mathbf{x}) = \left( 1 - \frac{\tau}{\max\{\|\mathbf{x}\|_2, \tau + \alpha \} } \right) \mathbf{x}\]- 1
O’Donoghue, B. and Stathopoulos, G. and Boyd, S. “A Splitting Method for Optimal Control”, In the IEEE Transactions on Control Systems Technology, 2013.
Methods
__init__
(alpha)affine_addition
(v)Affine addition
chain
(g)Chain
grad
(x)Compute gradient
postcomposition
(sigma)Postcomposition
precomposition
(a, b)Precomposition
prox
(**kwargs)proxdual
(**kwargs)