TD16 Analyse Numérique et Optimisation Correction O. Pantz Exercice I. Algorithme du simplexe. Appliquons l’algorithme du simplexe au problème proposé. On a 1 0 −3 3 6 A= b= 0 1 −8 4 4 De plus, c = (0, 0, 0, 3, −1)T . Étape I. Initialisation Afin d’amorcer l’algorithme, il faut exhiber un sommet. Le choix le plus simple consiste à choisir le sommet associé à 1 0 −3 3 B= N= 0 1 −8 4 Le sommet est donc x0 = (x0B , 0) où x0B = (6, 4) ≥ 0. Étape II. Calcul du coût réduit. e c0N = c0N − (N 0 )∗ (B 0 )−∗ c0B 3 = . −1 Ainsi, e c0N n’est pas positif. x0 n’est pas l’optimum. On cherche x(ε) = (xB (ε), xN (ε)) où xN (ε) = (0, ε)T . On a xB (ε) = x0B 0 −1 − (B ) xN (ε) = 6 − 3ε 4 − 4ε . Le plus grand choix possible pour ε est ε = 1 et x(1) = xB (1)+xN (1) = 3e1 +e4 . Poursuite des itérations Dans la base (e1 , e4 , e3 , e2 ), on a 1 3 −3 0 1 3 −3 0 1 1 A= , B = , N = 0 4 −8 1 0 4 −8 1 De plus, x1B = (3, 1)T , c1B = (0, −1)T et c1N = (3, 0)T . L’inverse de B 1 est 1 4 −3 1 −1 B = 0 1 4 Le coût réduit est donc e c1N = c1N − (N 1 )∗ (B 1 )−∗ c1N = 1 1 1/4 Étant strictement positif, on a atteint l’optimum. Conclusion L’optimum est atteint en x = 3e1 +e4 . La valeur optimale est 3x3 −x4 = −1. Exercice II. Optimisation et Lagrangien. 1. On a u(v) = A−1 (f + v). Ainsi, l’application qui à v associe u(v) est linéaire et hu0 (v), wi = A−1 w. Enfin, Jc0 (v) = j 0 (u(v)).u0 (v). Or j 0 (w) = 2(w − u0 ), ainsi, hJc0 (v), wi = 2(u(v) − u0 ).A−1 w. 2. il suffit de remarquer que, A étant symétique, Jc0 (v) = 2A−1 (u(v) − u0 ). Le calcul de la dérivée de J nécessite donc la résolution de duex systèmes linéaires: l’un pour le calcul de u(v), l’autre pour le calcul de p = 2A−1 (u(v) − u0 ). 3. Le Lagrangien associé au système est L(u, v, p) = j(u) − (Au − f − v).p 4. h ∂L , wi = hj 0 (u), wi − Aw.p ∂u ∂L h , wi = w.p. ∂v 5. Pour tout p, on a Jc (v) = L(u(v), v, p). En dérivant cette expression, on obtient Jc0 (v) = ∂L ∂L (u(v), v, p).u0 (v) + (u(v), v, p). ∂u ∂v 6. Il suffit de choisir p tel que ∂L (u(v), v, p) = 0, ∂u c’est à dire hj 0 (u(v)), wi = Aw.p = Ap.w pour tout w ∈ Rn , soit encore p = 2A−1 (u(v) − u0 ). On retrouve l’expression de Jc0 précédente. 2