Le calcul de projections orthogonales est probablement l'opération la plus importante en mathématiques. On va ici essayer de voir comment il est parfois possible de calculer celle-ci analytiquement mais comment dans la plus grande majorité des cas, il n'existe pas de calcul en offrant une expression simple.
Commençons par le cas le plus simple, celui qui l'on sait calculer. On considère un sous-espace vectoriel $\mathcal{V} \sub \mathbb{R}^n$ de dimension $k$ engendré par $A \in \mathcal{M}_{n, k}(\mathbb{R})$ que l'on suppose de rang plein. On cherche la projection orthogonale $x^* = A \alpha^*$ de $b \in \mathbb{R}^n$ sur $\mathcal{V}$, c'est à dire: $$ x^* = \underset{x \in \mathcal{V}}{\operatorname{argmin}} \| b - x \|^2 = \underset{\alpha \in \mathbb{R}^k}{\operatorname{argmin}} \| b - \alpha A \| = \underset{\alpha \in \mathbb{R}^k}{\operatorname{argmin}} \gamma(\alpha) $$ avec: $$ \begin{align*} \gamma(\alpha) &= \| b - A \alpha \|^2 \\ &= (b-A\alpha)^\top(b-A\alpha) \\ &= b b^\top - 2 \alpha^\top A^\top b + \alpha^\top A^\top A \alpha \end{align*} $$ Maintenant, on s'intéresse au minimum de $\gamma$ sur $\mathbb{R}^k$. On va donc s'intéresser à ses points stationnaires. Montrons dans un premier temps la convexité de $\gamma$ via la Hessienne. Soit $\alpha \in \mathbb{R}^k$ $$ H_{\gamma}(\alpha) = \frac{\partial^2 \gamma}{\partial \alpha^2} = \frac{\partial}{\partial \alpha}\left( -2 Ab + 2 \alpha^\top A^\top A \right) = 2 A^\top A $$ Ainsi, $H_{\gamma}(\alpha)$ est à une constante près une matrice de Gram donc $H_\gamma(\alpha) \succ 0$. Ainsi par condition d'optimalité globale tout point stationnaire est également un minimum global de $\gamma$. Par ailleurs: $$ \begin{align*} \Delta_\alpha \gamma (\alpha^*) &= -2 A^\top b + 2 A^\top A \alpha^* = 0 \\ &\Leftrightarrow A^\top A \alpha^* = A^\top b \\ &\Leftrightarrow \alpha^* = (A^\top A)^{-1}A^\top b \end{align*} $$ En effet puisque l'on a supposé que $\operatorname{rang}(A) = k$, on a bien que $A^\top A$ est inversible. Ainsi on obtient finalement: $$ \boxed{ x^* = A(A^\top A)^{-1} A^\top b } $$
Bon c'est très sympa, c'est notamment exactement ce qui est utilisé pour calculer des régressions linéaires, mais ça demande tout de même que le sous-espace soit linéaire. De manière plus générale, la démonstration précédente ne donne pas de solution au problème plus général
$$ (\mathcal{P}_{f, b}) \quad \underset{x \in \operatorname{Dom}(f)}{\operatorname{argmin}} \| f(x) - b \| $$ Est-ce que ça veut pour autant dire que l'on connait pas de solution analytique du tout? Non. Considérons à titre d'exemple la fonction $f = \operatorname{id}_{[0,1]^3}$, donc un cube dans $\mathbb{R}^3$. Soit $b \in \mathbb{R}^3$ $$ \begin{align*} x^* &= \underset{x \in [0,1]^3}{\operatorname{argmin}\| x - b \|^2} \\ &= \underset{x_1 \in [0,1]}{\operatorname{argmin}}(x_1 - b_1)^2 + \underset{x_2 \in [0,1]}{\operatorname{argmin}}(x_2 - b_2)^2 + \underset{x_3 \in [0,1]}{\operatorname{argmin}}(x_3 - b_3)^2 \\ \end{align*} $$ Par ailleurs, $(x_i - b_i)^2$ est une parabole centrée en $b_i$. On distingue alors 3 cas: $$ x_i^* = \underset{x_i \in [0,1]}{\operatorname{argmin}}(x_i - b_i)^2 = \begin{cases} 0 \quad\text{si}\quad b_i < 0 \\ b_i \quad\text{si}\quad 0 < b_i < 1 \\ 1 \quad\text{si}\quad b_i > 1 \\ \end{cases} $$ Ainsi, dans tous les cas, $x_i^* = \operatorname{max}(\operatorname{min}(b_i, 1), 0)$. On a donc bien trouvé une expression analytique de la projection bien que l'espace considéré ne soit pas linéaire. On peut voir ci-dessous, en vert représenté $b \in \mathbb{R}^3$ et en rouge $x^* \in [0,1]^3$La condition $\nabla_u d_b(u^*, v^*)=0$ donne, à condition que $R > r$, $v^* = \operatorname{arctan}\left(\displaystyle\frac{b_2}{b_1}\right)$. Puis, par injection on trouve: $$ v^* = \operatorname{arctan}\left(\frac{b_2}{b_1}\right) \quad\text{et}\quad u^* = \operatorname{arctan}\left(\frac{b_3}{\sqrt{b_1^2+b_2^2}-R}\right) $$ Ainsi, en injectant ces valeurs dans la paramétrisation du tore on obtient, en posant $\rho = \sqrt{b_1^2 + b_2^2}$ et $D = \sqrt{(\rho - R)^2 + b^3}$ (la distance de $b$ au cercle centrale) $$ \boxed{ x^* = \frac{b_1}{\rho}\left(R + \frac{r(\rho - R)}{D} \right) \text{,}\quad y^* = \frac{b_2}{\rho}\left(R + \frac{r(\rho - R)}{D} \right) \text{,}\quad z^* = \frac{r b_3}{D} } $$