From a11e6dde602eeac077a33c18893aa39709893250 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Sun, 25 Nov 2018 21:54:06 +0100 Subject: [PATCH] Fix the PQS execution trace. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- rapport/ProjetOptimRO.tex | 458 +++++++++++++++++++------------------- 1 file changed, 225 insertions(+), 233 deletions(-) diff --git a/rapport/ProjetOptimRO.tex b/rapport/ProjetOptimRO.tex index ac17118..489e6c8 100644 --- a/rapport/ProjetOptimRO.tex +++ b/rapport/ProjetOptimRO.tex @@ -818,248 +818,240 @@ On en déduit que $ H[J](x,y,z) $ est inversible et que $ H[J](x,y,z)^{-1} = \fr \newpage -\subsection{Trace d'éxécution de PQS avec contrainte} -%\includegraphics[scale=0.2]{figure_sphere_avec_contrainte.png}\\ -\begin{center} -\includegraphics[scale=0.2]{sphere2.jpg}\\ +\subsection{Trace d'éxécution de l'algorithme PQS} -\footnotesize{ - \small \it Fig : Exemple de la sphère\\ - \vspace*{0.5cm} -} +\begin{center} + \includegraphics[scale=0.2]{sphere2.jpg} \\ + \footnotesize{ + \small \it Fig : Exemple de la sphère \\ + \vspace*{0.5cm} + } \end{center} -Utilisons le problème $ \mathcal{P} $ précédent : +En utilisant le problème $ \mathcal{P} $ précédent : -$$ - \mathcal{P} \left \{ - \begin{array}{l} - \displaystyle\min_{(x,y,z) \in \mathbb{R}^3} J(x,y,z) = x^2 + y^2 + z^2 -r^2 \\ - g(x,y,z) = (g_1(x,y,z), g_2(x,y,z)) = (x^2 + y^2 - r_1^2, x^2 + z^2 -r_2^2) \leq 0 \\ - \end{array} - \right . -$$ -où $$ (r,r_1,r_2) \in \mathbb{R}_+^3. $$ -\textit{Entrées} : $ J $ et $ g $ de classe $ \mathcal{C}^2 $, $ \varepsilon = 0.01 $, $ (x_0,y_0,z_0) = (100, 100 ,0)$ et $(\lambda_{0_1},\lambda_{0_2}) = (1 , 1)$, les rayons : $r= 100$ et $r1 = r2 = 10$. +\textit{Entrées} : $ J $ et $ g $ de classe $ \mathcal{C}^2 $, $ \varepsilon = 0.01 $, $ (x_0,y_0,z_0) = (100, 100 ,0)$ et $(\lambda_{0_1},\lambda_{0_2}) = (1 , 1)$, les rayons : $r = 100$ et $r_1 = r_2 = 10$. \newline -Le Lagrangien $ L $ de $ \mathcal{P} $ : $$ L((x,y,z),(\lambda_1,\lambda_2)) = x^2 + y^2 + z^2 -r^2 + \lambda_1(x^2 + y^2 - r_1^2) + \lambda_2(x^2 + z^2 -r_2^2). $$ +Calcul du Lagrangien $ L $ de $ \mathcal{P} $ en $(x_0,y_0,z_0)$ : \newline -Le Lagrangien $ L $ de $ \mathcal{P} $ avec les valeurs : - $ L((100,100,0),(1,1)) = 100^2 + 100^2 + 0^2 -100^2 + 1 * (100^2 +100^2 - 10^2) + \lambda_2(100^2 + 100^2 -10^2). $ - $ L((100,100,0),(1,1)) = 1000 + 1000 - 1000 + (1000 + 1000 - 100) + (1000 + 1000 -100). $ - $ L((100,100,0),(1,1)) = 4800. $ +$ L((100,100,0),(1,1)) = 100^2 + 100^2 + 0^2 -100^2 + 1 * (100^2 +100^2 - 10^2) + 1 * (100^2 + 100^2 -10^2). $ +$ L((100,100,0),(1,1)) = 1000 + 1000 - 1000 + (1000 + 1000 - 100) + (1000 + 1000 -100). $ +$ L((100,100,0),(1,1)) = 4800. $ \newpage -\begin{algorithmfloat}[#Algo 1] - \caption {Trace d'éxécution du PQS du problème $ \mathcal{P} $} - \begin{algorithmic} - \REQUIRE $g(x_0,y_0,z_0)\leq 0$, $(x_0,y_0,z_0) = (10, 10 ,10)$ - \ENSURE $\min_{(x,y,z) \in \mathbb{R}^3} J(x,y,z) = x^2 + y^2 + z^2 -r^2$ and \newline $g(x,y,z) = (g_1(x,y,z), g_2(x,y,z)) = (x^2 + y^2 - r_1^2, x^2 + z^2 -r_2^2) \leq 0 $ - \STATE \textbf{Data :} - \STATE $k \leftarrow 0, (x_k, y_k, z_k) \leftarrow (100, 100, 0), r \leftarrow 100$ - \STATE $r_1 = r2 \leftarrow 10, \varepsilon \leftarrow 0.01$ - \STATE $\lambda_1 = \lambda_2 = 1$ - \STATE $ H[J](x,y,z)^{-1}\leftarrow \begin{pmatrix} - 0.5 & 0 & 0 \\ - 0 & 0.5 & 0 \\ - 0 & 0 & 0.5 \\ \end{pmatrix} $ -\newline - - \STATE{//Calcule du gradient de $ J $ :} - \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (100,100,0) $ -\newline - \STATE {//calcule des deux sous partie de du gradient de $ g $: } - \STATE $ \nabla g_1(x_a,y_a,z_a) = ((2x_a,2y_a,0)$ \hfill $ //résultat : (20, 20, 0)$ - \STATE $ \nabla g_2(x_a,y_a,z_a) = (2x_a,0,2z_a))$ \hfill $ //résultat : (20, 0, 20)$ - \STATE $ \nabla g(x_k,y_k,z_k) = (\nabla g_1(x_k,y_k,z_k), \nabla g_2(x_k,y_k,z_k))$ -\newline - \WHILE{$ (\norme{\nabla L(x_k,\lambda_k,\mu_k)} > \varepsilon $ or k $ \leq 10)$} - - \STATE { //première itération :} - -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (220, 220, 40)$ - \STATE $ \nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = (x_L , y_L, z_L) $ -\newline - \STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } - \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(50,50,0))$ - \newline - \STATE {//Calcul nouvelles valeurs des coordonnées} - \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (50,50,0)$ - \newline - \STATE {//Incrémentation de k} - \STATE $ k \leftarrow k+1$\hfill $ //k = 1$ -\newline - - \STATE {//Deuxième itération :} - \STATE{//Calcule du gradient de $ J $ :} - \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (100,100,0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (120, 120, 0)$ - \STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline - \STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } - \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(25,25,0))$ - \STATE {//Calcul nouvelles valeurs des coordonnées} - \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (25,25,0)$ - \newline - \STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1$\hfill $ //k = 2$ -\newline - -\STATE {//Troisième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (50,50,0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (70, 70, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(12.5,12.5,0))$ -\STATE {//Calcul nouvelles valeurs des coordonnées} -\newline -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (12.5,12.5,0)$ -\STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1$\hfill $ //k = 3$ -\newline - -\STATE {//Quatrième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (25,25,0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (45, 45, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(6.25,6.25,0))$ -\newline -\STATE {//Calcul nouvelles valeurs des coordonnées} -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (6.25,6.25,0)$ -\STATE {//Incrémentation de k} -\newline -\STATE $ k \leftarrow k+1$\hfill $ //k = 4$ -\STATE $ $ - -\STATE {//Cinquième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (12.5,12.5,0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (32.5, 32.5, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(3.125,3.125,0))$ -\newline -\STATE {//Calcul nouvelles valeurs des coordonnées} -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (3.125,3.125,0)$ -\newline -\STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1$\hfill $ //k = 5$ -\newline - -\STATE {//Sixième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (6.25,6.25,0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (26.25, 26.25, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(1.5625,1.5625,0))$ -\STATE {//Calcul nouvelles valeurs des coordonnées} -\newline -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (1.5625,1.5625,0)$ -\STATE {//Incrémentation de k} -\newline -\STATE $ k \leftarrow k+1$\hfill $ //k = 6$ -\newline -\STATE {//Septième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (3.125, 3.125, 0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (23.125, 23.125, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.78125,0.78125,0))$ -\STATE {//Calcul nouvelles valeurs des coordonnées} -\newline -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (0.78125,0.78125,0)$ -\STATE {//Incrémentation de k} -\newline -\STATE $ k \leftarrow k+1$\hfill $ //k = 7$ -\newline - -\STATE {//Huitième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (1.5625, 1.5625, 0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (21.5625, 21.5625, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.390625,0.390625,0))$ -\newline -\STATE {//Calcul nouvelles valeurs des coordonnées} -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (0.390625,0.390625,0)$ -\newline -\STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1$\hfill $ //k = 8$ -\newline - -\STATE {//neuvième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (0.78125, 0.78125, 0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (20.78125, 20.78125, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.1953125,0.1953125,0))$ -\newline -\STATE {//Calcul nouvelles valeurs des coordonnées} -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (0.1953125,0.1953125,0)$ -\newline -\STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1 \hfill //k = 9$ -\newline - -\STATE {//Dixième itération :} -\STATE{//Calcule du gradient de $ J $ :} -\STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ // résultat : (0.390625, 0.390625, 0) $ -\newline -\STATE {//Calcule du gradient de $ L $ : } -\STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_a,y_a,z_a) + \lambda_2 \nabla g_2(x_a,y_a,z_a)) $ \hfill $// résultat : (20.390625, 20.390625, 0)$ -\STATE $ \varepsilon _1 = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ -\newline -\STATE {//Calcule de la direction de la pente dk (méthode de Newton) : } -\STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.097665625,0.097665625,0))$ -\newline -\STATE {//Calcul nouvelles valeurs des coordonnées} -\STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (0.097665625,0.097665625,0)$ -\newline -\STATE {//Incrémentation de k} -\STATE $ k \leftarrow k+1$\hfill $ //k = 10$ -\newline -\STATE {// Fin de la boucle "while" car nous avons atteint k =10, condition mettant fin à la //boucle} -\newline - - \ENDWHILE - -\end{algorithmic} -\end{algorithmfloat} - - -\hrulefill +% \begin{algorithmfloat}[#Algo 1] +\begin{algorithm} + \caption {Trace d'éxécution de l'algorithme PQS} + \begin{algorithmic} + \REQUIRE $g(x_0,y_0,z_0)\leq 0$, $(x_0,y_0,z_0) = (10, 10 ,10)$ + \ENSURE $\displaystyle\min_{(x,y,z) \in \mathbb{R}^3} J(x,y,z) = x^2 + y^2 + z^2 -r^2$ and \newline $g(x,y,z) = (g_1(x,y,z), g_2(x,y,z)) = (x^2 + y^2 - r_1^2, x^2 + z^2 -r_2^2) \leq 0 $ + \STATE \textbf{Data :} + \STATE $k \leftarrow 0, (x_k, y_k, z_k) \leftarrow (100, 100, 0), r \leftarrow 100$ + \STATE $r_1 = r_2 \leftarrow 10, \varepsilon \leftarrow 0.01$ + \STATE $\lambda_1 = \lambda_2 = 1$ + \STATE $ H[J](x,y,z)^{-1} \leftarrow + \begin{pmatrix} + 0.5 & 0 & 0 \\ + 0 & 0.5 & 0 \\ + 0 & 0 & 0.5 \\ + \end{pmatrix} $ + \newline + \STATE {//Calcul des deux composantes du gradient de $ g $: } + \STATE $ \nabla g_1(x_k,y_k,z_k) = ((2x_k,2y_k,0)$ \hfill $ //résultat : (20, 20, 0)$ + \STATE $ \nabla g_2(x_k,y_k,z_k) = (2x_k,0,2z_k))$ \hfill $ //résultat : (20, 0, 20)$ + \STATE $ \nabla g(x_k,y_k,z_k) = (\nabla g_1(x_k,y_k,z_k), \nabla g_2(x_k,y_k,z_k))$ + \newline + + \WHILE{$ (\norme{\nabla L(x_k,\lambda_k,\mu_k)} > \varepsilon $ or k $ \leq 10)$} + + \STATE {//Première itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (100,100,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (220, 220, 40)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + % \STATE $ \nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = (x_L , y_L, z_L) $ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(50,50,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (50,50,0)$ + \newline + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 1$ + \newline + + \STATE {//Deuxième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (100,100,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (120, 120, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(25,25,0))$ + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (25,25,0)$ + \newline + \STATE {//Incrémentation de $ k $ } + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 2$ + \newline + + \STATE {//Troisième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (50,50,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (70, 70, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(12.5,12.5,0))$ + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \newline + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (12.5,12.5,0)$ + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 3$ + \newline + + \STATE {//Quatrième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (25,25,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (45, 45, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcule de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(6.25,6.25,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (6.25,6.25,0)$ + \STATE {//Incrémentation de $ k $} + \newline + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 4$ + \STATE $ $ + \newline + + \STATE {//Cinquième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (12.5,12.5,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (32.5, 32.5, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(3.125,3.125,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (3.125,3.125,0)$ + \newline + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 5$ + \newline + + \STATE {//Sixième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (6.25,6.25,0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (26.25, 26.25, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(1.5625,1.5625,0))$ + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \newline + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (1.5625,1.5625,0)$ + \STATE {//Incrémentation de $ k $} + \newline + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 6$ + \newline + + \STATE {//Septième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (3.125, 3.125, 0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (23.125, 23.125, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.78125,0.78125,0))$ + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \newline + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (0.78125,0.78125,0)$ + \STATE {//Incrémentation de $ k $} + \newline + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 7$ + \newline + + \STATE {//Huitième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (1.5625, 1.5625, 0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (21.5625, 21.5625, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.390625,0.390625,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k)+ d_k $ \hfill $ //résultat : (0.390625,0.390625,0)$ + \newline + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1$ \hfill $ //résulat : k = 8$ + \newline + + \STATE {//Neuvième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (0.78125, 0.78125, 0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (20.78125, 20.78125, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.1953125,0.1953125,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (0.1953125,0.1953125,0)$ + \newline + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1 \hfill //résultat : k = 9$ + \newline + + \STATE {//Dixième itération :} + \STATE{//Calcul du gradient de $ J $ :} + \STATE $ \nabla J(x,y,z) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (0.390625, 0.390625, 0) $ + \newline + \STATE {//Calcul du gradient de $ L $ : } + \STATE $\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2)) = \nabla J(x_k,y_k,z_k) + \lambda_1 \nabla g_1(x_k,y_k,z_k) + \lambda_2 \nabla g_2(x_k,y_k,z_k)) $ \hfill $//résultat : (20.390625, 20.390625, 0)$ + \STATE $ \varepsilon_k = \norme{\nabla L((x_k,y_k,z_k),(\lambda_1,\lambda_2))}$ + \newline + \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :} + \STATE $ d_k = -H[J](x,y,z)^{-1}* J(x,y,z)$ \hfill $ //résultat : (-(0.097665625,0.097665625,0))$ + \newline + \STATE {//Calcul des nouvelles valeurs des coordonnées} + \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + d_k $ \hfill $ //résultat : (0.097665625,0.097665625,0)$ + \newline + \STATE {//Incrémentation de $ k $} + \STATE $ k \leftarrow k + 1$ \hfill $ //résultat : k = 10$ + \newline + \STATE {//Fin de la boucle "while" car nous avons atteint $ k = 10 $, condition mettant fin à la //boucle} + \newline + + \ENDWHILE + + \end{algorithmic} + % \end{algorithmfloat} +\end{algorithm} \bibliographystyle{plain} \bibliography{stdlib_sbphilo} -- 2.34.1