More fixes to the execution trace.
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Sun, 25 Nov 2018 23:22:39 +0000 (00:22 +0100)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Sun, 25 Nov 2018 23:22:39 +0000 (00:22 +0100)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
rapport/ProjetOptimRO.tex

index f0024f2a1063b6f2a4240ef6bebfa329b89874a5..98d5d2d54f600db81be5792bd4dd4b3c47baa22b 100644 (file)
@@ -802,6 +802,7 @@ $$ = ((2x,2y,0),(2x,0,2z)). $$
 \newline
 Le gradient du Lagrangien $ L $ :
 $$ \nabla L((x,y,z),(\lambda_1,\lambda_2)) = \nabla J(x,y,z) + \lambda_1 \nabla g_1(x,y,z) + \lambda_2 \nabla g_2(x,y,z)) $$
+$$ = (2x(1 + \lambda_1 + \lambda_2),2y(1 + \lambda_1),2z(1 + \lambda_2)) $$
 \newline
 La matrice hessienne de $ J $ : $$ H[J](x,y,z) =
  \begin{pmatrix}
@@ -834,8 +835,8 @@ En utilisant le problème $ \mathcal{P} $ précédent :
 \newline
 Calcul du Lagrangien $ L $ de $ \mathcal{P} $ en $(x_0,y_0,z_0)$ :
 \newline
-$ 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)) = 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
@@ -850,6 +851,7 @@ $ L((100,100,0),(1,1)) = 4800. $
   \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 \leftarrow 1$
+  \STATE $s_k \leftarrow \frac{1}{2}$
   \STATE $ H[J](x,y,z)^{-1} \leftarrow
    \begin{pmatrix}
     0.5 & 0   & 0   \\
@@ -857,80 +859,80 @@ $ L((100,100,0),(1,1)) = 4800. $
     0   & 0   & 0.5 \\
    \end{pmatrix} $
   \newline
-  \STATE {//Pré-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) $
+  \STATE {//Calcul du gradient de $ J $ :}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (200,200,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 {//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 : (200, 200, 0)$
+  \STATE $ \nabla g_2(x_k,y_k,z_k) = (2x_k,0,2z_k)$ \hfill $ //résultat : (200, 0, 0)$
+  % \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
+  \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 : (600, 400, 0)$
   \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))$
+  \STATE $ d_k = -H[J](x_k,y_k,z_k)^{-1} * \nabla J(x_k,y_k,z_k)$ \hfill $ //résultat : (-(100,100,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)$
+  \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + s_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) $
+  \STATE {//Calcul du gradient de $ J $ :}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (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 {//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 : (6*50, 4*50, 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 $ d_k = -H[J](x_k,y_k,z_k)^{-1}* \nabla J(x_k,y_k,z_k)$ \hfill $ //résultat : (-(50,50,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)$
+  \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + s_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) $
+  \STATE {//Calcul du gradient de $ J $:}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (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 {//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 : (6*25, 4*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 : (-(12.5,12.5,0))$
+  \STATE $ d_k = -H[J](x,y,z)^{-1} * \nabla J(x_k,y_k,z_k)$ \hfill $ //résultat : (-(25,25,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 $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + s_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) $
+  \STATE {//Calcul du gradient de $ J $ :}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (25,25,0) $
   \newline
-  \STATE {//Calcul du gradient de $ L $ : }
+  \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))$
+  \STATE {//Calcul de la direction de la pente $ d_k $ (méthode de Newton) :}
+  \STATE $ d_k = -H[J](x_k,y_k,z_k)^{-1}* \nabla J(x_k,y_k,z_k)$ \hfill $ //résultat : (-(12.5,12.5,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 $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + s_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$
@@ -938,28 +940,28 @@ $ L((100,100,0),(1,1)) = 4800. $
   \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) $
+  \STATE {//Calcul du gradient de $ J $ :}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (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 {//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 : (6*6.25, 4*6.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 : (-(3.125,3.125,0))$
+  \STATE $ d_k = -H[J](x_k,y_k,z_k)^{-1} * \nabla J(x_k,y_k,z_k)$ \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 : (3.125,3.125,0)$
+  \STATE $ (x_{k+1},y_{k+1},z_{k+1}) = (x_k,y_k,z_k) + s_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) $
+  \STATE {//Calcul du gradient de $ J $ :}
+  \STATE $ \nabla J(x_k,y_k,z_k) = (2x_k,2y_k,2z_k)$ \hfill $ //résultat : (6.25,6.25,0) $
   \newline
-  \STATE {//Calcul du gradient de $ L $ : }
+  \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
@@ -974,7 +976,7 @@ $ L((100,100,0),(1,1)) = 4800. $
   \newline
 
   \STATE {//Septième itération :}
-  \STATE{//Calcul du gradient de $ J $ :}
+  \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 $ : }
@@ -1010,10 +1012,10 @@ $ L((100,100,0),(1,1)) = 4800. $
   \newline
 
   \STATE {//Neuvième itération :}
-  \STATE{//Calcul du gradient de $ J $ :}
+  \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 {//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
@@ -1028,10 +1030,10 @@ $ L((100,100,0),(1,1)) = 4800. $
   \newline
 
   \STATE {//Dixième itération :}
-  \STATE{//Calcul du gradient de $ J $ :}
+  \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 {//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