Correction dans la structure de la trace d'execution.
[Projet_Recherche_Operationnelle.git] / présentation / Slides_ProjetOptimRO.tex
CommitLineData
f471c8ba
JB
1\documentclass[9pt,blackandwhite,roman,handout]{beamer}
2\usepackage{etex}
3
4\usefonttheme{professionalfonts}
5
f471c8ba
JB
6% Setup appearance:
7%\usetheme{Warsaw}
8\usetheme{Darmstadt}
9
10%\usecolortheme{seahorse}
11%\usecolortheme{dove}
12\usecolortheme{seagull}
13%\usefonttheme[onlylarge]{structurebold}
14%\setbeamerfont*{frametitle}{size=\normalsize,series=\bfseries}
15%\setbeamertemplate{navigation symbols}{}
16
17
18
19% Standard packages
20%\usepackage[frenchb]{babel}
21%\usepackage[english]{babel}
22\usepackage[utf8]{inputenc}
23%\usepackage[T1]{fontenc}
24\usepackage{cmbright}
25\usepackage[sans]{dsfont}
26\usepackage{pifont}
27%calscaled=.94,
28%frakscaled=.97,
29\usepackage[cal=euler,scr=rsfso]{mathalfa}%bb=cm,
30%frak=mma,
31%scr=esstix
32\usepackage{mathrsfs} % pour faire des majuscules calligraphiées \mathcal{blabla}
33%\usepackage[french,lined]{algorithm2e} % rajouter linesnumbered dans les arguments pour numéroter les lignes des algos, boxed pour l'encadrement
34%\usepackage{extsizes}
35%\usepackage{MnSymbol}
36\usepackage{graphicx}
37\usepackage{mathabx}
38\usepackage[all]{xy}
39\usepackage{ulem}
40
41\usepackage{DotArrow}
42%\usepackage[varg]{txfonts}
43%\usepackage{matptmx}
44\usepackage{extpfeil}
45%\usepackage{MyMnSymbol}
46\usepackage{comment}
47%\usepackage{etex}
3f5da2c3 48%\usepackage{mathtools}
f471c8ba
JB
49%\usepackage{fourier}
50
51\usepackage{ragged2e}
f471c8ba
JB
52
53% Setup TikZ
54\usepackage{tikz}
55\usetikzlibrary{matrix,arrows}
56\tikzstyle{block}=[draw opacity=0.7,line width=1.4cm]
57
58\newcommand{\gk}{$g_k = \left \{ \begin{array}{ll}
59 q^k+q^{k-1}-q^\frac{k+1}{2} - 2q^\frac{k-1}{2}+1 & \mbox{si } k \equiv 1 \pmod 2,\\
60 q^k+q^{k-1}-\frac{1}{2}q^{\frac{k}{2}+1} - \frac{3}{2}q^{\frac{k}{2}}-q^{\frac{k}{2}-1} +1& \mbox{si } k \equiv 0 \pmod 2.
61 \end{array} \right .$}
62
63\newcommand{\ext}{\xymatrix{
64 \FF= \Fq(x)(y) \ar@{-}[d]^{<\infty} \\ \Fq(x) \ar@{-}[d] \\ \Fq} }
65
66\newcommand{\twoheaddownarrow}{%
67\mathrel{\reflectbox{\rotatebox[origin=c]{-90}{$\xtwoheadrightarrow[ \; ]{ \reflectbox{\rotatebox[origin=c]{-90}{$\pi_Q \ $}} \ \ }$}}}}
68
69\newcommand{\longdownmapsto}{%
70\mathrel{\reflectbox{\rotatebox[origin=c]{-90}{$\xmapsto{ \ \ \ \reflectbox{\rotatebox[origin=c]{-90}{$\pi_Q \ $}} \ \ \ }$}}}}
71
72\newcommand{\bigubrace}[1]{\underbrace{\mbox{}f(P_i), f'(P_i), \ldots, f^{(\ell_i-1)}(P_i)\vphantom{\sum_0^0}\hspace{#1}\mbox{}}_?}
73
74\newcommand{\myubrace}[2]{\rotatebox[origin=c]{90}{$
75\rotatebox[origin=c]{-90}{#1} \left \{
76\begin{array}{l}
77 \vspace{#2} \\
78\end{array}
79\right . \hspace{-1em}
80$}}
81
82\newcommand{\bluebrace}{{\color{blue}\left\{}}
83
3f5da2c3 84\newcommand{\norme}[1]{\left\Vert #1 \right\Vert}
f471c8ba
JB
85
86\definecolor{mycvblue}{rgb}{0.302,0.537,0.737}
87
f471c8ba
JB
88\setbeamercolor{structure}{fg=mycvblue}
89\setbeamercolor{palette primary}{fg=mycvblue}
90\setbeamercolor{subsection in head/foot}{parent=palette primary}
91
92\setbeamertemplate{navigation symbols}{
93% \insertslidenavigationsymbol
94% \insertframenavigationsymbol
95% \insertsubsectionnavigationsymbol
96% \insertsectionnavigationsymbol
97% \insertdocnavigationsymbol
98% \insertbackfindforwardnavigationsymbol
99}
100
101%\renewcommand{\item}{\item[$\bullet$]}
102
3f5da2c3 103\title[]{\LARGE{\textsc{Méthode de Programmation Quadratique Séquentielle ou PQS\\ en\\ Optimisation non linéraire sous contraintes}}}
f471c8ba 104
3f5da2c3 105\author[Jérôme {\textsc Benoit} \& Sylvain {\textsc Papa}]{\textbf{Jérôme {\textsc Benoit}\\ \textbf{Sylvain {\textsc Papa}}}}
f471c8ba 106
3f5da2c3 107\date[]{{\bf HUGo}\\ {\bf Polytech'Marseille} \\{\small Novembre 2018}}
f471c8ba
JB
108
109\newtheorem{defin}{Définition}
110\newtheorem{theoreme}{Théorème}
111\newtheorem{lemme}{Lemme}
112\newtheorem{corollaire}{Corollaire}
113\newtheorem{proposition}{Proposition}
114\newtheorem{propriete}{Propriété}
115%\newtheorem{exemple}[definition]{Exemple}
116
117\newcommand{\NN}{\ensuremath{\mathbb{N}}}
118\newcommand{\CC}{\ensuremath{\mathbb{C}}}
119\newcommand{\ZZ}{\ensuremath{\mathbb{Z}}}
120\newcommand{\PF}{\mathbf{P}_F}
121\newcommand{\DF}{\mathsf{Div}(F)}
122\newcommand{\Jac}{\ensuremath{\mathcal{J}\mathsf{ac}(F/\Fq)}}
123\newcommand{\Fqr}[2][q]{\mathds{F}_{\!{#1}^{#2}}}
124\newcommand{\Fq}{\Fqr{}}
125\newcommand{\F}{\mathds{F}}
126\newcommand{\FF}{\mathsf{F}}
127\newcommand{\Fqn}{\Fqr{n}}
128\newcommand{\D}[1][D]{\ensuremath{\mathcal{#1}}}
129\newcommand{\Ld}[1][\D]{\ensuremath{\mathscr{L}\!\!\left(#1\right)}} % utilisation : \Ld ou \Ld[A] pour un diviseur A au lieu de D
130\newcommand{\Ak}[1][k]{\ensuremath{\mathbb{A}_{#1}}}
131\newcommand{\A}{\ensuremath{\mathsf{A}}}
132\newcommand{\Cl}{\ensuremath{\mathsf{Cl}}}
133\newcommand{\mus}{\ensuremath{\mu^\mathsf{sym}}}
134\newcommand{\Ms}{\ensuremath{M^\mathsf{sym}}}
135\newcommand{\ms}{\ensuremath{m^\mathsf{sym}}}
136\newcommand{\chch}{{C}hudnovsky-{C}hudnovsky}
137\newcommand{\ch}{{C}hudnovsky}
138
f471c8ba 139\addtobeamertemplate{footline}{\texttt{\hfill\insertframenumber/{\inserttotalframenumber}}}
3f5da2c3
JB
140
141% \AtBeginSubsection[] {
142% \begin{frame}<beamer>
143% \frametitle{Plan}
144% \tableofcontents[currentsection,currentsubsection]
145% \end{frame}
146% }
147% \AtBeginSection[] {
148% \begin{frame}<beamer>
149% \frametitle{Plan}
150% \tableofcontents[currentsection]%,currentsubsection]
151% \end{frame}
152% }
f471c8ba
JB
153
154\setbeamertemplate{sections/subsections in toc}[sections numbered]
155%\setbeamertemplate{sections in toc}[sections numbered]
156
157\begin{document}
158
159% \begin{frame}[plain]
160%
161% \begin{center}
162%
163% {\bf Institut de Mathématiques de Marseille}\\
164%
165% {\bf Equipe Analyse, Géométrie et Topologie (AGT) }\\
166%
167% \vspace{2em}
168%
169% {\bf Séminaire de Géométrie Complexe}\\
170% Mardi 12 Juin 2018
171% \end{center}
172%
173% \begin{center}
174%
175% \end{center}
176%
177% \end{frame}
178
179\begin{frame}[plain]
180
181 \titlepage
182
183\end{frame}
184
185\begin{frame}[plain]{Plan}
186
187 \tableofcontents
188
189\end{frame}
190
191\section{Introduction}
192
c207a96f 193\subsection{Définition de la problèmatique}
f471c8ba
JB
194
195%%%%% SLIDE 1
c207a96f
JB
196\begin{frame}{Définition de la problèmatique}
197 \begin{defin}
198 Résoudre le problème $ \mathcal{P} $ :
199 $$
200 \mathcal{P} \left \{
201 \begin{array}{l}
202 \displaystyle\min_{x \in \mathbb{R}^n} J(x) \\
203 g(x) \leq 0 \\
204 h(x) = 0
205 \end{array}
206 \right .
207 $$
e173772d
JB
208
209 \begin{center}
210 $ g: \mathbb{R}^n \longrightarrow \mathbb{R}^p $ représente les contraintes d'inégalité,
211 \end{center}
212 \begin{center}
213 $ h: \mathbb{R}^n \longrightarrow \mathbb{R}^q $ représente les contraintes d'égalité,
214 \end{center}
215 et
216 \begin{center}
217 $ J: \mathbb{R}^n \longrightarrow \mathbb{R} $ est la fonction objectif ou coût.
218 \end{center}
219 en utilisant des méthodes numériques itératives.
c207a96f 220 \end{defin}
c207a96f
JB
221\end{frame}
222
e173772d
JB
223\subsection{Prérequis mathématiques}
224
225\section{La méthode PQS est une méthode de descente}
c207a96f
JB
226
227\subsection{Définition}
228
229%%%%% SLIDE 2
230\begin{frame}{Définition d'une méthode de descente}
231 \begin{defin}
232 Générer une suite d’itérés $ (x_k)_{k \in \mathbb{N}} $ de $ \mathbb{R}^n $ avec :
e173772d
JB
233 \begin{center}
234 $ x_0 \in \mathbb{R}^n $ arbitraire,
235 \end{center}
236 \begin{center}
237 $ x_{k+1} = x_k + s_kd_k $,
238 \end{center}
239 tel que :
c207a96f 240 $$ \forall k \in \mathbb{N} \ J(x_{k+1}) \leq J(x_k) $$
e173772d
JB
241
242 \begin{center}
243 $ s_k \in \mathbb{R}_{+}^{*} $ est le pas de descente
244 \end{center}
245 et
246 \begin{center}
247 $ d_k \in \mathbb{R}^n $ est la direction de descente.
248 \end{center}
c207a96f
JB
249 \end{defin}
250\end{frame}
251
252\subsection{Algorithme}
253
254%%%%% SLIDE 3
255\begin{frame}{Algorithme de descente modèle}
256 \begin{block}{ALGORITHME DE DESCENTE MODÈLE.}
257 \textit{Entrées}: $ J : \mathbb{R}^n \longrightarrow \mathbb{R} $ différentiable, $ x_0 \in \mathbb{R}^n $ point initial arbitraire.
258 \newline
259 \textit{Sortie}: une approximation $ x_k $ de la solution $ x^\ast $ du problème : $ \displaystyle\min_{x \in \mathbb{R}^n} J(x) $.
260 \begin{enumerate}
261 \item $ k := 0 $.
262 \item Tant que "test d’arrêt" non satisfait,
263 \begin{enumerate}
264 \item Trouver une direction de descente $ d_k $ telle que : $ \nabla J(x_k)^\top d_k < 0 $.
265 \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). $$
266 \item Mise à jour : $ x_{k+1} = x_k + s_kd_k; \ k := k + 1 $.
267 \end{enumerate}
268 \item Retourner $ x_k $.
269 \end{enumerate}
270 \end{block}
271\end{frame}
272
273\subsubsection{Direction de descente}
274
275%%%%% SLIDE 4
276\begin{frame}{Direction de descente}
277 Deux grandes stratégies :
278 \begin{itemize}
279 \item la stratégie de Cauchy : $ d_k = -\nabla J(x_k) $, conduisant aux \textit{algorithmes de gradient}.
280 \item la stratégie de Newton : $ d_k = -H[J](x_k)^{-1} \nabla J(x_k) $, conduisant aux \textit{algorithmes Newtoniens}.
281 \end{itemize}
282\end{frame}
283
284\subsubsection{Critère d'arrêt}
285
286%%%%% SLIDE 5
287\begin{frame}{Critère d'arrêt}
288 \centerline{Critère d’arrêt =}
289 \begin{tabular}{c}
290 Test d’optimalité satisfait($\norme{\nabla J(x_k)} < \varepsilon$) \\
291 OU (Stagnation de la valeur courante($ \norme{x_{k+1} - x_k} < \varepsilon(1 + \norme{x_k}) $) \\
292 ET Stagnation de la solution($ |J(x_{k+1}) - J(x_k)| < \varepsilon(1 + |J (x_k)|) $)) \\
293 OU Nombre d’itérations maximum autorisé dépassé($ k < IterMax $)
294 \end{tabular}
295\end{frame}
296
297\subsubsection{Recherche linéaire}
298
299%%%%% SLIDE 6
300\begin{frame}{Recherche linéaire}
301 \begin{block}{RECHERCHE LINÉAIRE : PAS FIXE.}
302 $ s_k = s_{k-1} $
303 \end{block}
304 \begin{block}{RECHERCHE LINÉAIRE : PAS OPTIMAL.}
305 $ s_k $ solution du problème $ \displaystyle\min_{s \in \mathbb{R}_{+}^{*}} J(x_k + sd_k) $
306 \end{block}
307\end{frame}
308
309\subsubsection{Méthode Newtonienne}
310
311%%%%% SLIDE 7
312\begin{frame}{Méthode Newtonienne I}
313 Choix de la direction de descente $ d_k = -H[J](x_k)^{-1} \nabla J(x_k) $ solution unique du problème :
314
315 $$ \underset{d \in \mathbb{R}^n}{\mathrm{argmin}} \ J(x_k) + \langle \nabla J(x_k),d \rangle + \frac{1}{2}\langle H[J](x_k)d,d \rangle $$
316
317 $ \iff d_k $ est le point de minimum global de l’approximation quadratique de $ J $ au voisinage du point courant $ x_k $.
318\end{frame}
319
320%%%%% SLIDE 8
321\begin{frame}{Méthode Newtonienne II}
322 \begin{tabular}{|p{15em}|p{15em}|}
323 \hline
324 Avantages & Inconvénients \\
325 \hline
326 sa convergence quadratique (le nombre de décimales exactes est multiplié par 2 à chaque itération). & \\
327 \hline
328 & les difficultés et le coût de calcul de la hessienne $ H[J](x_k) $ : l’expression analytique des dérivées secondes est rarement disponible dans les applications. \\
329 \hline
330 & le coût de résolution du système linéaire $ H[J](x_k )(x_{k+1} - x_k) = \nabla J(x_k) $. \\
331 \hline
332 & l’absence de convergence si le premier itéré est trop loin de la solution, ou si la hessienne est singulière. \\
333 \hline
334 & pas de distinction entre minima, maxima et points stationnaires. \\
335 \hline
336 \end{tabular}
337\end{frame}
338
339\section{Méthode PQS}
340
341\subsection{Principe général}
342
343%%%%% SLIDE 9
3f5da2c3
JB
344\begin{frame}{Principe général I}
345 \begin{defin}
346 Résoudre le problème $ \mathcal{P} $ :
347 $$
348 \mathcal{P} \left \{
349 \begin{array}{l}
350 \displaystyle\min_{x \in \mathbb{R}^n} J(x) \\
351 g(x) \leq 0 \\
352 h(x) = 0
353 \end{array}
354 \right .
355 $$
356 où $$ g: \mathbb{R}^n \longrightarrow \mathbb{R}^p,\ h: \mathbb{R}^n \longrightarrow \mathbb{R}^q\ et\ J: \mathbb{R}^n \longrightarrow \mathbb{R}\ de\ classe\ \mathcal{C}^2. $$
357 \end{defin}
f471c8ba
JB
358\end{frame}
359
c207a96f 360%%%%% SLIDE 10
3f5da2c3
JB
361\begin{frame}{Principe général II}
362 \begin{enumerate}
363 \item Conditions nécessaires et suffisantes d'existence et d'unicité d'une solution (\textit{KKT}, $ H[J] $ définie positive et convexité de $ \mathcal{P} $).
364 \item Approximation quadratique du Lagrangien $ L $ de $ \mathcal{P} $ par Taylor-Young à l'ordre 2 en $ x_k $:
365 $$ L(x,\lambda,\mu) \approx L(x_k,\lambda_k,\mu_k) + \nabla L(x_k,\lambda_k,\mu_k)^\top (x - x_k) $$
366 $$ + \frac{1}{2} (x - x_k)^\top H[L](x_k,\lambda_k,\mu_k) (x - x_k) $$
367 \item Approximation linéaire de $ g $ et $ h $ par Taylor-Young à l'ordre 1 en $ x_k $ :
368 $$ g(x) \approx g(x_k) + \nabla g(x_k)^\top(x - x_k) $$
369 $$ h(x) \approx h(x_k) + \nabla h(x_k)^\top(x - x_k) $$
c207a96f
JB
370 \item Condition d'optimalité sur le Lagrangien $ L $ de $ \mathcal{P} $ :
371 $$ \nabla L(x_k,\lambda_k,\mu_k)^\top (x - x_k) + \frac{1}{2} (x - x_k)^\top H[L](x_k,\lambda_k,\mu_k) (x - x_k) $$
3f5da2c3 372 \end{enumerate}
f471c8ba
JB
373\end{frame}
374
c207a96f 375%%%%% SLIDE 11
3f5da2c3 376\begin{frame}{Principe général III}
3f5da2c3
JB
377 \begin{block}{}
378 Résoudre le sous-problème quadratique $ \mathcal{PQ}_k $ avec contraintes linéaires :
379 $$
380 \mathcal{PQ}_k \left \{
381 \begin{array}{l}
382 \displaystyle\min_{d \in \mathbb{R}^n} \nabla J(x_k)^\top d + \frac{1}{2}d^\top H_k d \\
383 g_j(x_k) + \nabla g_j(x_k)^\top d \leq 0, \ \forall j \in \{1,\ldots,p\} \\
384 h_i(x_k) + \nabla h_i(x_k)^\top d = 0, \ \forall i \in \{1,\ldots,q\}
385 \end{array}
386 \right .
387 $$
388 où $ d = x - x_k $ et $ H_k = H[L](x_k,\lambda_k,\mu_k) $ symétrique (Schwarz).
389 \end{block}
c207a96f 390 \centerline{$ \implies $ La solution $ d_k $ est la valeur optimale de direction de descente.}
f471c8ba
JB
391\end{frame}
392
c207a96f 393\subsection{Algorithme PQS}
3f5da2c3 394
c207a96f 395%%%%% SLIDE 12
3f5da2c3
JB
396\begin{frame}{Algorithme PQS}
397 \begin{block}{ALGORITHME PQS AVEC CONSTRAINTES D'ÉGALITÉ ET D'INÉGALITÉ.}
398 \textit{Entrées}: $ J : \mathbb{R}^n \longrightarrow \mathbb{R} $, $g: \mathbb{R}^n \longrightarrow \mathbb{R}^p$, $ h : \mathbb{R}^n \longrightarrow \mathbb{R}^q $ différentiables, $ x_0 \in \mathbb{R}^n $ point initial arbitraire, $ \lambda_0 \in \mathbb{R}_+^p $ et $ \mu_0 \in \mathbb{R}_+^q $ multiplicateurs initiaux, $ \varepsilon > 0 $ précision demandée.
399 \newline
400 \textit{Sortie}: une approximation $ x_k $ de la solution $ x^\ast $ du problème $ \mathcal{P} $.
401 \begin{enumerate}
402 \item $ k := 0 $.
403 \item Tant que $ \norme{\nabla L(x_k,\lambda_k,\mu_k)} > \varepsilon $,
404 \begin{enumerate}
405 \item Résoudre le sous-problème quadratique :
406 $$
407 \mathcal{PQ}_k \left \{
408 \begin{array}{l}
409 \displaystyle\min_{d \in \mathbb{R}^n} \nabla J(x_k)^\top d + \frac{1}{2}d^\top H_k d \\
410 g_j(x_k) + \nabla g_j(x_k)^\top d \leq 0, \ \forall j \in \{1,\ldots,p\} \\
411 h_i(x_k) + \nabla h_i(x_k)^\top d = 0, \ \forall i \in \{1,\ldots,q\}
412 \end{array}
413 \right .
414 $$
415 et obtenir la solution primale $ d_k $ et les multiplicateurs $ \lambda^{\prime} $ et $ \mu^{\prime} $ associé aux contraintes d’inégalité et d’égalité respectivement.
416 \item $ x_{k+1} = x_k + d_k; \ \lambda_{k+1} = \lambda^{\prime}; \ \mu_{k+1} = \mu^{\prime}; \ k := k + 1 $.
417 \end{enumerate}
418 \item Retourner $ x_k $.
419 \end{enumerate}
420 \end{block}
f471c8ba
JB
421\end{frame}
422
f471c8ba
JB
423%%%%% SLIDE DE FIN
424
425\begin{frame}[plain]
426 \begin{beamerboxesrounded}%
427 [lower=block title, %
428 upper=block title,%
429 shadow=true]{}
430 \begin{center}
3f5da2c3 431 {\Large \textbf{{\color{mycvblue}Merci pour votre attention.}}}\\
f471c8ba
JB
432 \vspace{3em}
433 {\Large \textbf{{\color{mycvblue}Questions?}}}\\
434 \end{center}
435 \end{beamerboxesrounded}
f471c8ba
JB
436\end{frame}
437
438\end{document}