+\begin{proof}
+Elle repose sur le lemme de Farkas.
+\end{proof}
+Il est à noter que une condition d'égalité peut se répresenter par deux conditions d'inégalité : $ \forall x \in \mathbb{R}^n \ \forall i \in \{ 1,\ldots,q \} \ h_i(x) = 0 \iff h_i(x) \leq 0 \land h_i(x) \geq 0 $ \cite{FEA}, ce qui peut permettre de réécrire le problème $ \mathcal{P} $ en éliminant les contraintes d'égalités et change la forme des conditions \textit{KKT} à vérifier mais rajoute $ 2q $ conditions d'inégalités et donc $ 2q $ multiplicateurs de Kuhn-Tucker.
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\chapter{Méthode de programmation quadratique séquentielle}
+
+Dans ce projet, nous nous proposons d'étudier une des méthodes d'optimisation non linéaire avec contraintes nommée programmation quadratique séquentielle ou PQS.
+
+\vspace{.5em}
+
+\section{Methode de descente}\label{descente}
+
+Partant d’un point $ x_0 \in \mathbb{R}^n $ arbitrairement choisi, un algorithme de descente va chercher à générer une suite d’itérés $ (x_k)_{k \in \mathbb{N}} $ de $ \mathbb{R}^n $ définie par :
+$$ x_{k+1} = x_k + s_kd_k $$ où $ s_k,d_k \in \mathbb{R}^n $ et avec
+$$ \forall k \in \mathbb{N} \ J(x_{k+1}) \leq J(x_k) $$
+Un tel algorithme est ainsi déterminé par deux éléments à chaque étape $ k $ : le choix de la direction $ d_k $ appelée direction de descente, et le choix de la taille du pas $ s_k $ à faire dans la direction $ d_k $. Cette étape est appelée \textit{recherche linéaire}.
+
+\subsection{Définition d'une direction de descente}
+
+Un vecteur $ d \in \mathbb{R}^n $ est une direction de descente pour $ J $ à partir d’un point $ x_0 \in \mathbb{R}^n $ si $ t \longmapsto f(x_0 + td) $ est décroissante en $ t = 0 $, c’est-à-dire :
+$$ \exists \eta \in \mathbb{R}_{+}^{*} \ \forall t \in ]0,\eta] \ J(x_0 + td) < J(x_0) $$
+Il est donc important d’analyser le comportement de la fonction $ J $ dans certaines direc-
+tions.
+\begin{Prop}
+Soient $ J : \mathbb{R}^n \longrightarrow \mathbb{R} $ différentiable et $ d \in \mathbb{R}^n $.
+\newline
+d est un vecteur de descente de $ J $ en $ x_0 \in \mathbb{R}^n $ ssi :
+$$ \nabla J(x_0)^\top d < 0 $$
+De plus
+$$ \forall \beta < 1 \in \mathbb{R}_{+} \ \exists \eta \in \mathbb{R}_{+}^{*} \ \forall t \in ]0,\eta] \ J(x_0 + td) < J(x_0) + t\beta \nabla J(x_0)^\top d < J(x_0) $$
+\end{Prop}
+\begin{proof}
+Elle s'effectue en utilisant le développement de Taylor-Young de l’application $ t \longmapsto f(x_0 + td) $ à l’ordre 1.
+\end{proof}
+Cette dernière inégalité garantit une décroissance minimum de la fonction $ J $ dans la
+direction $ d $ et peut se traduire par : la décroissance de la fonction $ J $, en effectuant un pas de longueur $ t $ dans la direction $ d $ , est au moins égale à la longueur du pas multipliée par une fraction de la pente. Le schéma général d’un algorithme de descente est alors le suivant :
+
+\hrulefill
+\newline
+ALGORITHME DE DESCENTE MODÈLE.
+\newline
+\textit{Entrées}: $ J : \mathbb{R}^n \longrightarrow \mathbb{R} $ différentiable, $ x_0 \in \mathbb{R}^n $ point initial arbitraire.
+\newline
+\textit{Sortie}: une approximation de la solution du problème : $ \displaystyle\min_{x \in \mathbb{R}^n} J(x) $.
+\begin{enumerate}
+ \item $ k := 0 $
+ \item Tant que "test d’arrêt" non satisfait,
+ \begin{enumerate}
+ \item Trouver une direction de descente $ d_k $ telle que : $ \nabla J(x_k)^\top d_k < 0 $.
+ \item \textit{Recherche linéaire} : Choisir un pas $ s_k > 0 $ à faire dans cette direction et tel que : $$ J(x_k + s_kd_k) < J(x_k) $$.
+ \item Mise à jour : $ x_{k+1} = x_k + s_kd_k; \ k := k + 1 $.
+ \end{enumerate}
+ \item Retouner $ x_k $.
+\end{enumerate}
+
+\hrulefill
+
+\subsection{Choix de la direction de descente}
+
+Une fois la théorie bien maîtrisée, calculer une direction de descente est relativement
+simple. Dans le cas différentiable, il existe deux grandes stratégies de choix de direction de
+descente :
+\begin{itemize}
+ \item la stratégie de Cauchy : $ d_k = -\nabla J(x_k) $, conduisant aux \textit{algorithmes de gradient}.
+ \item la stratégie de Newton : $ d_k = -H[J](x_k)^{-1} \nabla J(x_k) $, conduisant aux \textit{algorithmes Newtoniens}.
+\end{itemize}
+Remarquons que si $ x_k $ est un point stationnaire ($ \nabla J(x_k) = 0 $) non optimal alors toutes ces directions sont nulles et aucun de ces algorithmes ne pourra progresser. Ce problème
+peut être résolu en utilisant des approches de type région de confiance qui ne seront pas
+étudiées dans le cadre de ce projet.
+
+\subsection{Critère d’arrêt}
+
+Soit $ x^\ast $ un minimum local du critère $ J $ à optimiser. Supposons que l’on choisisse comme test d’arrêt dans l’algorithme de descente modèle, le critère idéal : "$ x_k = x^\ast $". Dans un monde idéal (i.e. en supposant tous les calculs exacts et la capacité de calcul illimitée), soit l’algorithme s’arrête après un nombre fini d’itérations, soit il construit (théoriquement) une suite infinie $ x_0,x_1,\ldots,x_k,\ldots $ de points de $ \mathbb{R}^n $ qui converge vers $ x^\ast $.