Projection on convex set

860 Views Asked by At

Given a vector $y=(y_k) \in \mathbb{R}^n$, we consider the energy function $$E:\mathbb{R}^n\rightarrow \mathbb{R}^n,\; x \mapsto \sum_{k=1}^{n-1}(x_{k+1} + x_{k−1} − 2x_k)^2,$$

and the set $$C = \{x \in \mathbb{R}^n \text{ s.t } |x_k − y_k| ≤ q, \forall k=1,\ldots,n\},$$ where $q$ is a fixed positive real number.

  1. Show that $C$ is convex.
  2. Give an explicit formula for $\pi_C(x)$, the euclidean projection of a vector $x \in \mathbb R^n$ onto $C$.

I have tried to solve this. I proved that the energy function is convex. but somehow i am getting stuck on finding the projection of the vector on set C.

1

There are 1 best solutions below

2
On BEST ANSWER
  • $C$ is a product of $n$ compact intervals $[y_1 - q, y_1 + q] \times \ldots \times [y_n - q, y_n + q]$ and is therefore convex (N.B.: every interval is convex and the Cartesian product of a finite number of convex sets is convex)
  • For computing the projection onto a hyper-cube, see here.
  • Finally, for an appropriately chosen sparse $n$-by-$n$ matrix $A$ (exercise), your energy can be written as $E(x) \equiv \|Ax\|_2^2$, and so your problem can be written in the form

$$\underset{x \in C}{\text{minimize }} \|Ax\|_2^2, $$

which is solvable via a fast projected-gradient scheme like FISTA, when not solvable in closed form...

Hope this helps.