Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Optimisation SDP — Wikipédia
Optimisation SDP — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.

En mathématiques et en informatique théorique, l'optimisation SDP ou semi-définie positive, est un type d'optimisation convexe, qui étend l'optimisation linéaire. Dans un problème d'optimisation SDP, l'inconnue est une matrice symétrique que l'on impose d'être semi-définie positive. Comme en optimisation linéaire, le critère à minimiser est linéaire et l'inconnue doit également satisfaire une contrainte affine.

L'optimisation SDP se généralise par l'optimisation conique, qui s'intéresse aux problèmes de minimisation d'une fonction linéaire sur l'intersection d'un cône et d'un sous-espace affine.

L'optimisation SDP s'est beaucoup développée à partir des années 1990, du fait de plusieurs découvertes. D'une part, beaucoup de problèmes pratiques ont pu être définis au moyen de ce formalisme (en recherche opérationnelle) ou ont trouvé une formalisation SDP approchée, mais précise (en optimisation combinatoire, en optimisation algébrique). Par ailleurs, ces problèmes peuvent être résolus efficacement par divers algorithmes : points intérieurs (algorithmes polynomiaux), lagrangien augmenté, méthode des faisceaux (algorithme d'optimisation non différentiable), etc.

Notations

[modifier | modifier le code]

On note

S n := { M ∈ R n × n : M ⊤ = M } {\displaystyle {\mathcal {S}}^{n}:=\{M\in \mathbb {R} ^{n\times n}:M^{\top }=M\}} {\displaystyle {\mathcal {S}}^{n}:=\{M\in \mathbb {R} ^{n\times n}:M^{\top }=M\}}

l'espace vectoriel des matrices réelles d'ordre n {\displaystyle n} {\displaystyle n} symétriques,

S + n := { M ∈ S n : M ≽ 0 } {\displaystyle {\mathcal {S}}_{+}^{n}:=\{M\in {\mathcal {S}}^{n}:M\succcurlyeq 0\}} {\displaystyle {\mathcal {S}}_{+}^{n}:=\{M\in {\mathcal {S}}^{n}:M\succcurlyeq 0\}}

la partie de S n {\displaystyle {\mathcal {S}}^{n}} {\displaystyle {\mathcal {S}}^{n}} formée des matrices semi-définies positives (c'est ce que signifie la notation M ≽ 0 {\displaystyle M\succcurlyeq 0} {\displaystyle M\succcurlyeq 0}) et

S + + n := { M ∈ S n : M ≻ 0 } {\displaystyle {\mathcal {S}}_{++}^{n}:=\{M\in {\mathcal {S}}^{n}:M\succ 0\}} {\displaystyle {\mathcal {S}}_{++}^{n}:=\{M\in {\mathcal {S}}^{n}:M\succ 0\}}

la partie de S n {\displaystyle {\mathcal {S}}^{n}} {\displaystyle {\mathcal {S}}^{n}} formée des matrices définies positives (c'est ce que signifie la notation M ≻ 0 {\displaystyle M\succ 0} {\displaystyle M\succ 0}).

On munit S n {\displaystyle {\mathcal {S}}^{n}} {\displaystyle {\mathcal {S}}^{n}} d'une structure euclidienne en y définissant le produit scalaire standard

⟨ ⋅ , ⋅ ⟩ : ( M , N ) ∈ S n × S n ↦ ⟨ M , N ⟩ = tr ⁡ ( M ⊤ N ) = ∑ i j M i j N i j , {\displaystyle \langle \cdot ,\cdot \rangle :(M,N)\in {\mathcal {S}}^{n}\times {\mathcal {S}}^{n}\mapsto \langle M,N\rangle =\operatorname {tr} (M^{\top }N)=\sum _{ij}M_{ij}N_{ij},} {\displaystyle \langle \cdot ,\cdot \rangle :(M,N)\in {\mathcal {S}}^{n}\times {\mathcal {S}}^{n}\mapsto \langle M,N\rangle =\operatorname {tr} (M^{\top }N)=\sum _{ij}M_{ij}N_{ij},}

où tr ⁡ ( M N ) {\displaystyle \operatorname {tr} (MN)} {\displaystyle \operatorname {tr} (MN)} désigne la trace du produit matriciel M N {\displaystyle MN} {\displaystyle MN}.

On utilise souvent les propriétés « élémentaires » suivantes.

Cônes S + n {\displaystyle {\mathcal {S}}_{+}^{n}} {\displaystyle {\mathcal {S}}_{+}^{n}} et S + + n {\displaystyle {\mathcal {S}}_{++}^{n}} {\displaystyle {\mathcal {S}}_{++}^{n}} — 

  1. M ≽ 0 {\displaystyle M\succcurlyeq 0} {\displaystyle M\succcurlyeq 0}   ⟺   {\displaystyle ~\Longleftrightarrow ~} {\displaystyle ~\Longleftrightarrow ~} ∀ N ≽ 0 {\displaystyle \forall N\succcurlyeq 0} {\displaystyle \forall N\succcurlyeq 0}, on a ⟨ M , N ⟩ ⩾ 0 {\displaystyle \langle M,N\rangle \geqslant 0} {\displaystyle \langle M,N\rangle \geqslant 0}.
  2. M ≻ 0 {\displaystyle M\succ 0} {\displaystyle M\succ 0}   ⟺   {\displaystyle ~\Longleftrightarrow ~} {\displaystyle ~\Longleftrightarrow ~} ∀ N ≽ 0 {\displaystyle \forall N\succcurlyeq 0} {\displaystyle \forall N\succcurlyeq 0} non nulle, on a ⟨ M , N ⟩ > 0 {\displaystyle \langle M,N\rangle >0} {\displaystyle \langle M,N\rangle >0}.
  3. Si M {\displaystyle M} {\displaystyle M} et N ∈ S + n {\displaystyle N\in {\mathcal {S}}_{+}^{n}} {\displaystyle N\in {\mathcal {S}}_{+}^{n}}, on a ⟨ M , N ⟩ = 0 {\displaystyle \langle M,N\rangle =0} {\displaystyle \langle M,N\rangle =0}   ⟺   {\displaystyle ~\Longleftrightarrow ~} {\displaystyle ~\Longleftrightarrow ~} M N = 0 {\displaystyle MN=0} {\displaystyle MN=0}.

La propriété du point 1, attribuée à Fejér[1], exprime l'autodualité du cône S + n {\displaystyle {\mathcal {S}}_{+}^{n}} {\displaystyle {\mathcal {S}}_{+}^{n}} :

( S + n ) + = S + n . {\displaystyle ({\mathcal {S}}_{+}^{n})^{+}={\mathcal {S}}_{+}^{n}.} {\displaystyle ({\mathcal {S}}_{+}^{n})^{+}={\mathcal {S}}_{+}^{n}.}

Définitions primale et duale du problème

[modifier | modifier le code]

Le problème primal

[modifier | modifier le code]

Un problème d'optimisation SDP s'écrit de la manière suivante

( P S D P ) { inf X ∈ S n ⟨ C , X ⟩ A ( X ) = b X ≽ 0 , {\displaystyle P_{SDP})\quad \left\{{\begin{array}{l}{\inf }_{X\in {\mathcal {S}}^{n}}\;\langle C,X\rangle \\A(X)=b\\X\succcurlyeq 0,\end{array}}\right.} {\displaystyle P_{SDP})\quad \left\{{\begin{array}{l}{\inf }_{X\in {\mathcal {S}}^{n}}\;\langle C,X\rangle \\A(X)=b\\X\succcurlyeq 0,\end{array}}\right.}

où C ∈ S n {\displaystyle C\in {\mathcal {S}}^{n}} {\displaystyle C\in {\mathcal {S}}^{n}}, A : S n → R m {\displaystyle A:{\mathcal {S}}^{n}\to \mathbb {R} ^{m}} {\displaystyle A:{\mathcal {S}}^{n}\to \mathbb {R} ^{m}} est une application linéaire et b ∈ R m {\displaystyle b\in \mathbb {R} ^{m}} {\displaystyle b\in \mathbb {R} ^{m}}. Il s'agit donc de minimiser un critère linéaire sur l'intersection du cône des matrices semi-définies positives et d'un sous-espace affine. C'est que l'on appelle la formulation primale d'un problème SDP.

Le critère et la contrainte d'égalité sont linéaires (ou affines), mais la contrainte d'appartenance au cône S + n {\displaystyle {\mathcal {S}}_{+}^{n}} {\displaystyle {\mathcal {S}}_{+}^{n}} est « très » non linéaire, éventuellement non différentiable. Elle exprime en effet que v ⊤ X v ⩾ 0 {\displaystyle v^{\top }Xv\geqslant 0} {\displaystyle v^{\top }Xv\geqslant 0} pour tout v ∈ R n {\displaystyle v\in \mathbb {R} ^{n}} {\displaystyle v\in \mathbb {R} ^{n}} ; de ce point de vue, ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} est un problème d'optimisation semi-infinie (il a un nombre infini de contraintes). Elle exprime aussi que toutes les valeurs propres de X {\displaystyle X} {\displaystyle X} (des fonctions non linéaires et non différentiables de X {\displaystyle X} {\displaystyle X}) doivent être positives ; de ce point de vue, le problème est non convexe et non différentiable. Elle exprime enfin que tous les mineurs principaux de X {\displaystyle X} {\displaystyle X} (des polynômes des éléments de X {\displaystyle X} {\displaystyle X}) doivent être positifs ; de ce point de vue, le problème est non linéaire, non convexe, à données polynomiales. Cependant, le critère du problème étant linéaire et son ensemble admissible étant convexe, le problème SDP est en général considéré comme un problème d'optimisation convexe.

Si les problèmes d'optimisation SDP ont une structure assez semblable à celle de l'optimisation linéaire, qui les rend très vite familiers, les résultats que l'on connaît en optimisation linéaire ne s'étendent pas tous tels quels à l'optimisation SDP ; on ne peut guère en être étonné, vu la généralité du formalisme. Il faudra y prendre garde.

On note

val ⁡ ( P S D P ) et sol ⁡ ( P S D P ) {\displaystyle \operatorname {val} (P_{SDP})\quad {\mbox{et}}\quad \operatorname {sol} (P_{SDP})} {\displaystyle \operatorname {val} (P_{SDP})\quad {\mbox{et}}\quad \operatorname {sol} (P_{SDP})}

la valeur optimale du problème ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} et son ensemble de solution. On note

A P := { X ∈ S n : A ( X ) = b ,   X ≽ 0 } A P s := { X ∈ S n : A ( X ) = b ,   X ≻ 0 } , {\displaystyle {\begin{array}{rcl}{\mathcal {A}}_{P}&:=&\{X\in {\mathcal {S}}^{n}:A(X)=b,~X\succcurlyeq 0\}\\{\mathcal {A}}_{P}^{s}&:=&\{X\in {\mathcal {S}}^{n}:A(X)=b,~X\succ 0\},\end{array}}} {\displaystyle {\begin{array}{rcl}{\mathcal {A}}_{P}&:=&\{X\in {\mathcal {S}}^{n}:A(X)=b,~X\succcurlyeq 0\}\\{\mathcal {A}}_{P}^{s}&:=&\{X\in {\mathcal {S}}^{n}:A(X)=b,~X\succ 0\},\end{array}}}

les ensembles des matrices admissibles et strictement admissibles de ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})}.

On peut représenter l'application linéaire A {\displaystyle A} {\displaystyle A} au moyen de m {\displaystyle m} {\displaystyle m} matrices A i ∈ S n {\displaystyle A_{i}\in {\mathcal {S}}^{n}} {\displaystyle A_{i}\in {\mathcal {S}}^{n}} (théorème de Riesz-Fréchet). On a

A ( X ) = ( ⟨ A 1 , X ⟩ ⋮ ⟨ A m , X ⟩ ) . {\displaystyle A(X)={\begin{pmatrix}\langle A_{1},X\rangle \\\vdots \\\langle A_{m},X\rangle \end{pmatrix}}.} {\displaystyle A(X)={\begin{pmatrix}\langle A_{1},X\rangle \\\vdots \\\langle A_{m},X\rangle \end{pmatrix}}.}

Dans cette représentation, l'application A {\displaystyle A} {\displaystyle A} est surjective si, et seulement si, les matrices A i {\displaystyle A_{i}} {\displaystyle A_{i}} sont linéairement indépendantes dans S n {\displaystyle {\mathcal {S}}^{n}} {\displaystyle {\mathcal {S}}^{n}}.

Le problème dual

[modifier | modifier le code]

On se donne un produit scalaire sur R m {\displaystyle \mathbb {R} ^{m}} {\displaystyle \mathbb {R} ^{m}}, également noté ⟨ ⋅ , ⋅ ⟩ {\displaystyle \langle \cdot ,\cdot \rangle } {\displaystyle \langle \cdot ,\cdot \rangle }, et l'on introduit l'opérateur A ∗ : R m → S n {\displaystyle A^{*}:\mathbb {R} ^{m}\to {\mathcal {S}}^{n}} {\displaystyle A^{*}:\mathbb {R} ^{m}\to {\mathcal {S}}^{n}} adjoint de A {\displaystyle A} {\displaystyle A}, qui est défini par

∀ X ∈ S n ,   ∀ y ∈ R m : ⟨ A ( X ) , y ⟩ = ⟨ X , A ∗ ( y ) ⟩ . {\displaystyle \forall X\in {\mathcal {S}}^{n},~\forall y\in \mathbb {R} ^{m}\,:\quad \langle A(X),y\rangle =\langle X,A^{*}(y)\rangle .} {\displaystyle \forall X\in {\mathcal {S}}^{n},~\forall y\in \mathbb {R} ^{m}\,:\quad \langle A(X),y\rangle =\langle X,A^{*}(y)\rangle .}

La méthode la plus simple pour obtenir un dual de ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} est d'utiliser la dualisation lagrangienne de sa contrainte d'égalité. On utilise donc le lagrangien ℓ : S + n × R m → R {\displaystyle \ell :{\mathcal {S}}_{+}^{n}\times \mathbb {R} ^{m}\to \mathbb {R} } {\displaystyle \ell :{\mathcal {S}}_{+}^{n}\times \mathbb {R} ^{m}\to \mathbb {R} } défini par

ℓ ( X , y ) = ⟨ C , X ⟩ − ⟨ y , A ( X ) − b ⟩ {\displaystyle \ell (X,y)=\langle C,X\rangle -\langle y,A(X)-b\rangle } {\displaystyle \ell (X,y)=\langle C,X\rangle -\langle y,A(X)-b\rangle }

et on écrit ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} comme un inf-sup :

inf X ∈ S + n sup y ∈ R m ℓ ( X , y ) . {\displaystyle \inf _{X\in {\mathcal {S}}_{+}^{n}}\,\sup _{y\in \mathbb {R} ^{m}}\;\ell (X,y).} {\displaystyle \inf _{X\in {\mathcal {S}}_{+}^{n}}\,\sup _{y\in \mathbb {R} ^{m}}\;\ell (X,y).}

Le dual s'obtient alors en inversant l'infimum et le supremum

sup y ∈ R m inf X ∈ S + n ℓ ( X , y ) . {\displaystyle \sup _{y\in \mathbb {R} ^{m}}\,\inf _{X\in {\mathcal {S}}_{+}^{n}}\;\ell (X,y).} {\displaystyle \sup _{y\in \mathbb {R} ^{m}}\,\inf _{X\in {\mathcal {S}}_{+}^{n}}\;\ell (X,y).}

Après calculs, le problème dual de ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} obtenu par ce procédé consiste donc à trouver ( y , S ) ∈ R m × S n {\displaystyle (y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}} {\displaystyle (y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}} solution de

( D S D P ) { sup ( y , S ) ∈ R m × S n ⟨ b , y ⟩ A ∗ ( y ) + S = C S ≽ 0. {\displaystyle (D_{SDP})\quad {\begin{cases}\textstyle \sup _{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}}\;\langle b,y\rangle \\A^{*}(y)+S=C\\S\succcurlyeq 0.\end{cases}}} {\displaystyle (D_{SDP})\quad {\begin{cases}\textstyle \sup _{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}}\;\langle b,y\rangle \\A^{*}(y)+S=C\\S\succcurlyeq 0.\end{cases}}}

On note

val ⁡ ( D S D P ) et sol ⁡ ( D S D P ) {\displaystyle \operatorname {val} (D_{SDP})\quad {\mbox{et}}\quad \operatorname {sol} (D_{SDP})} {\displaystyle \operatorname {val} (D_{SDP})\quad {\mbox{et}}\quad \operatorname {sol} (D_{SDP})}

la valeur optimale du problème ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} et son ensemble de solution. On note

A D := { ( y , S ) ∈ R m × S n : A ∗ ( y ) + S = C ,   S ≽ 0 } A D s := { ( y , S ) ∈ R m × S n : A ∗ ( y ) + S = C ,   S ≻ 0 } , {\displaystyle {\begin{array}{rcl}{\mathcal {A}}_{D}&:=&\{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}:A^{*}(y)+S=C,~S\succcurlyeq 0\}\\{\mathcal {A}}_{D}^{s}&:=&\{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}:A^{*}(y)+S=C,~S\succ 0\},\end{array}}} {\displaystyle {\begin{array}{rcl}{\mathcal {A}}_{D}&:=&\{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}:A^{*}(y)+S=C,~S\succcurlyeq 0\}\\{\mathcal {A}}_{D}^{s}&:=&\{(y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}:A^{*}(y)+S=C,~S\succ 0\},\end{array}}}

les ensembles des couples admissibles et strictement admissibles de ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})}. On note enfin

A := A P × A D et A s := A P s × A D s . {\displaystyle {\mathcal {A}}:={\mathcal {A}}_{P}\times {\mathcal {A}}_{D}\quad {\mbox{et}}\quad {\mathcal {A}}^{s}:={\mathcal {A}}_{P}^{s}\times {\mathcal {A}}_{D}^{s}.} {\displaystyle {\mathcal {A}}:={\mathcal {A}}_{P}\times {\mathcal {A}}_{D}\quad {\mbox{et}}\quad {\mathcal {A}}^{s}:={\mathcal {A}}_{P}^{s}\times {\mathcal {A}}_{D}^{s}.}

L'écart entre les valeurs optimales primale et duale est ce que l'on appelle le saut de dualité :

saut de dualité = val ⁡ ( P S D P ) − val ⁡ ( D S D P ) . {\displaystyle {\mbox{saut de dualité}}=\operatorname {val} (P_{SDP})-\operatorname {val} (D_{SDP}).} {\displaystyle {\mbox{saut de dualité}}=\operatorname {val} (P_{SDP})-\operatorname {val} (D_{SDP}).}

On dit qu'il n'y a pas de saut de dualité si le saut de dualité est nul.

Si l'on utilise le produit scalaire euclidien dans R m {\displaystyle \mathbb {R} ^{m}} {\displaystyle \mathbb {R} ^{m}} et si l'on prend la représentation ci-dessus de A {\displaystyle A} {\displaystyle A}, son adjoint A ∗ {\displaystyle A^{*}} {\displaystyle A^{*}} s'écrit

A ∗ ( y ) = ∑ i = 1 m A i y i . {\displaystyle A^{*}(y)=\sum _{i=1}^{m}A_{i}y_{i}.} {\displaystyle A^{*}(y)=\sum _{i=1}^{m}A_{i}y_{i}.}

Dans ce cas, le problème dual peut se voir comme celui cherchant à maximiser une forme linéaire en y {\displaystyle y} {\displaystyle y} sur S n {\displaystyle {\mathcal {S}}^{n}} {\displaystyle {\mathcal {S}}^{n}}, tout en imposant qu'une combinaison affine de matrices (avec coefficients y i {\displaystyle y_{i}} {\displaystyle y_{i}}) soit semi-définie positive :

C − ∑ i = 1 m A i y i ≽ 0. {\displaystyle C-\sum _{i=1}^{m}A_{i}y_{i}\succcurlyeq 0.} {\displaystyle C-\sum _{i=1}^{m}A_{i}y_{i}\succcurlyeq 0.}

Cette dernière relation est ce que l'on appelle une inégalité matricielle linéaire (on devrait dire affine) ; IML en abrégé.

La proposition suivante donne quelques conséquences simples de la dualisation lagrangienne de ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})}. Le point 1 est connu sous le nom de dualité faible. L'écart val ⁡ ( P S D P ) − val ⁡ ( D S D P ) {\displaystyle \operatorname {val} (P_{SDP})-\operatorname {val} (D_{SDP})} {\displaystyle \operatorname {val} (P_{SDP})-\operatorname {val} (D_{SDP})} entre valeurs optimales primale et duale est appelé le saut de dualité. Le point 2 montre que ⟨ X , S ⟩ {\displaystyle \langle X,S\rangle } {\displaystyle \langle X,S\rangle } est l'écart entre valeurs primale et duale pour un triplet admissible ( X , y , S ) ∈ A {\displaystyle (X,y,S)\in {\mathcal {A}}} {\displaystyle (X,y,S)\in {\mathcal {A}}}. Le point 3 donne une condition suffisante d'optimalité élémentaire, mais bien utile.

Conséquences de la dualisation lagrangienne — 

  1. val ⁡ ( D S D P ) ⩽ val ⁡ ( P S D P ) {\displaystyle \operatorname {val} (D_{SDP})\leqslant \operatorname {val} (P_{SDP})} {\displaystyle \operatorname {val} (D_{SDP})\leqslant \operatorname {val} (P_{SDP})}.
  2. ( X , y , S ) ∈ A {\displaystyle (X,y,S)\in {\mathcal {A}}} {\displaystyle (X,y,S)\in {\mathcal {A}}}   ⟹   {\displaystyle ~\Longrightarrow ~} {\displaystyle ~\Longrightarrow ~} ⟨ C , X ⟩ − ⟨ b , y ⟩ = ⟨ X , S ⟩ ⩾ 0 {\displaystyle \langle C,X\rangle -\langle b,y\rangle =\langle X,S\rangle \geqslant 0} {\displaystyle \langle C,X\rangle -\langle b,y\rangle =\langle X,S\rangle \geqslant 0}.
  3. ( X , y , S ) ∈ A {\displaystyle (X,y,S)\in {\mathcal {A}}} {\displaystyle (X,y,S)\in {\mathcal {A}}} et ⟨ X , S ⟩ = 0 {\displaystyle \langle X,S\rangle =0} {\displaystyle \langle X,S\rangle =0}   ⟹   {\displaystyle ~\Longrightarrow ~} {\displaystyle ~\Longrightarrow ~} X ∈ sol ⁡ ( P S D P ) {\displaystyle X\in \operatorname {sol} (P_{SDP})} {\displaystyle X\in \operatorname {sol} (P_{SDP})} et ( y , S ) ∈ sol ⁡ ( D S D P ) {\displaystyle (y,S)\in \operatorname {sol} (D_{SDP})} {\displaystyle (y,S)\in \operatorname {sol} (D_{SDP})}.

La réciproque du point 3 est fausse en général, mais on verra qu'elle a lieu si A s ≠ ∅ {\displaystyle {\mathcal {A}}^{s}\neq \varnothing } {\displaystyle {\mathcal {A}}^{s}\neq \varnothing }. Lorsqu'elle a lieu, ( X , y ) {\displaystyle (X,y)} {\displaystyle (X,y)} est un point-selle du lagrangien ℓ {\displaystyle \ell } {\displaystyle \ell } défini ci-dessus sur S + n × R m {\displaystyle {\mathcal {S}}_{+}^{n}\times \mathbb {R} ^{m}} {\displaystyle {\mathcal {S}}_{+}^{n}\times \mathbb {R} ^{m}}.

Réalisabilités primale et duale

[modifier | modifier le code]

Nous nous intéressons ici à la question de la réalisabilité des problèmes primal et dual. Quand peut-on trouver une matrice X ≽ 0 {\displaystyle X\succcurlyeq 0} {\displaystyle X\succcurlyeq 0} telle que A ( X ) = b {\displaystyle A(X)=b} {\displaystyle A(X)=b} ? Quand peut-on trouver un vecteur y ∈ R m {\displaystyle y\in \mathbb {R} ^{m}} {\displaystyle y\in \mathbb {R} ^{m}} tel que A ∗ ( y ) ≼ C {\displaystyle A^{*}(y)\preccurlyeq C} {\displaystyle A^{*}(y)\preccurlyeq C} ?

Dans ( R n , ⩾ ) {\displaystyle (\mathbb {R} ^{n},\geqslant )} {\displaystyle (\mathbb {R} ^{n},\geqslant )}, ces questions trouvent une réponse dans les théorèmes de l'alternative, qui sont eux-mêmes des conséquences du lemme de Farkas. Une première application de la forme généralisée de ce lemme à l'optimisation SDP s'obtient en prenant E := S n {\displaystyle \mathbb {E} :={\mathcal {S}}^{n}} {\displaystyle \mathbb {E} :={\mathcal {S}}^{n}}, F := R m {\displaystyle \mathbb {F} :=\mathbb {R} ^{m}} {\displaystyle \mathbb {F} :=\mathbb {R} ^{m}}, L := R m {\displaystyle L:=\mathbb {R} ^{m}} {\displaystyle L:=\mathbb {R} ^{m}}, K := S + n {\displaystyle K:={\mathcal {S}}_{+}^{n}} {\displaystyle K:={\mathcal {S}}_{+}^{n}} et l'application A : S n → R m {\displaystyle A:{\mathcal {S}}^{n}\to \mathbb {R} ^{m}} {\displaystyle A:{\mathcal {S}}^{n}\to \mathbb {R} ^{m}} comme application linéaire ; cela donne

{ y ∈ R m : A ∗ ( y ) ≽ 0 } + = A ( S + n ) ¯ . {\displaystyle \{y\in \mathbb {R} ^{m}:A^{*}(y)\succcurlyeq 0\}^{+}={\overline {A({\mathcal {S}}_{+}^{n})}}.} {\displaystyle \{y\in \mathbb {R} ^{m}:A^{*}(y)\succcurlyeq 0\}^{+}={\overline {A({\mathcal {S}}_{+}^{n})}}.}

On ne peut pas se passer de l'adhérence à droite, car A ( S + n ) {\displaystyle A({\mathcal {S}}_{+}^{n})} {\displaystyle A({\mathcal {S}}_{+}^{n})} n'est pas nécessairement un fermé, alors que le cône dual à gauche est toujours fermé. La situation est donc différente de celle rencontrée en optimisation linéaire où A ( R + n ) {\displaystyle A(\mathbb {R} _{+}^{n})} {\displaystyle A(\mathbb {R} _{+}^{n})} est un polyèdre convexe, donc un fermé. On dit alors que les contraintes primales en X ∈ S n {\displaystyle X\in {\mathcal {S}}^{n}} {\displaystyle X\in {\mathcal {S}}^{n}},

A ( X ) = b et X ≽ 0 , {\displaystyle A(X)=b\quad {\mbox{et}}\quad X\succcurlyeq 0,} {\displaystyle A(X)=b\quad {\mbox{et}}\quad X\succcurlyeq 0,}

sont quasi-réalisables si b ∈ A ( S + n ) ¯ {\displaystyle b\in {\overline {A({\mathcal {S}}_{+}^{n})}}} {\displaystyle b\in {\overline {A({\mathcal {S}}_{+}^{n})}}}, c'est-à-dire si, pour tout ε > 0 {\displaystyle \varepsilon >0} {\displaystyle \varepsilon >0}, il existe b ε ∈ R m {\displaystyle b_{\varepsilon }\in \mathbb {R} ^{m}} {\displaystyle b_{\varepsilon }\in \mathbb {R} ^{m}} et X ε ∈ S + n {\displaystyle X_{\varepsilon }\in {\mathcal {S}}_{+}^{n}} {\displaystyle X_{\varepsilon }\in {\mathcal {S}}_{+}^{n}} tels que ‖ b ε − b ‖ ≤ ε {\displaystyle \|b_{\varepsilon }-b\|\leq \varepsilon } {\displaystyle \|b_{\varepsilon }-b\|\leq \varepsilon } et A ( X ε ) = b ε {\displaystyle A(X_{\varepsilon })=b_{\varepsilon }} {\displaystyle A(X_{\varepsilon })=b_{\varepsilon }}.

De même, des conditions duales d'admissibilité du problème dual ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} peuvent être obtenues par le lemme de Farkas généralisé avec E := R m × R m × S n {\displaystyle \mathbb {E} :=\mathbb {R} ^{m}\times \mathbb {R} ^{m}\times {\mathcal {S}}^{n}} {\displaystyle \mathbb {E} :=\mathbb {R} ^{m}\times \mathbb {R} ^{m}\times {\mathcal {S}}^{n}}, F := S n {\displaystyle \mathbb {F} :={\mathcal {S}}^{n}} {\displaystyle \mathbb {F} :={\mathcal {S}}^{n}}, L := S n {\displaystyle L:={\mathcal {S}}^{n}} {\displaystyle L:={\mathcal {S}}^{n}}, K := R + m × R + m × S + n {\displaystyle K:=\mathbb {R} _{+}^{m}\times \mathbb {R} _{+}^{m}\times {\mathcal {S}}_{+}^{n}} {\displaystyle K:=\mathbb {R} _{+}^{m}\times \mathbb {R} _{+}^{m}\times {\mathcal {S}}_{+}^{n}} et l'application linéaire ( u , v , X ) ∈ E → F → A ∗ ( u − v ) + S {\displaystyle (u,v,X)\in \mathbb {E} \to \mathbb {F} \to A^{*}(u-v)+S} {\displaystyle (u,v,X)\in \mathbb {E} \to \mathbb {F} \to A^{*}(u-v)+S}. Cela donne

{ X ∈ S + n : A ( X ) = 0 } + = A ∗ ( R m ) + S + n ¯ . {\displaystyle \{X\in {\mathcal {S}}_{+}^{n}:A(X)=0\}^{+}={\overline {A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n}}}.} {\displaystyle \{X\in {\mathcal {S}}_{+}^{n}:A(X)=0\}^{+}={\overline {A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n}}}.}

On dit alors que les contraintes duales en ( y , S ) ∈ R m × S n {\displaystyle (y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}} {\displaystyle (y,S)\in \mathbb {R} ^{m}\times {\mathcal {S}}^{n}},

A ∗ ( y ) + S = C et S ≽ 0 , {\displaystyle A^{*}(y)+S=C\quad {\mbox{et}}\quad S\succcurlyeq 0,} {\displaystyle A^{*}(y)+S=C\quad {\mbox{et}}\quad S\succcurlyeq 0,}

sont quasi-réalisables si C ∈ A ∗ ( R m ) + S + n ¯ {\displaystyle C\in {\overline {A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n}}}} {\displaystyle C\in {\overline {A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n}}}}, c'est-à-dire si, pour tout ε > 0 {\displaystyle \varepsilon >0} {\displaystyle \varepsilon >0}, il existe C ε ∈ S n {\displaystyle C_{\varepsilon }\in {\mathcal {S}}^{n}} {\displaystyle C_{\varepsilon }\in {\mathcal {S}}^{n}}, y ε ∈ R m {\displaystyle y_{\varepsilon }\in \mathbb {R} ^{m}} {\displaystyle y_{\varepsilon }\in \mathbb {R} ^{m}} et S ε ∈ S + n {\displaystyle S_{\varepsilon }\in {\mathcal {S}}_{+}^{n}} {\displaystyle S_{\varepsilon }\in {\mathcal {S}}_{+}^{n}} tels que ‖ C ε − C ‖ ≤ ε {\displaystyle \|C_{\varepsilon }-C\|\leq \varepsilon } {\displaystyle \|C_{\varepsilon }-C\|\leq \varepsilon } et A ∗ ( y ε ) + S ε = C ε {\displaystyle A^{*}(y_{\varepsilon })+S_{\varepsilon }=C_{\varepsilon }} {\displaystyle A^{*}(y_{\varepsilon })+S_{\varepsilon }=C_{\varepsilon }}.

Le résultat suivant résume cette discussion.

Quasi-réalisabilités primale et duale — 

  1. Les contraintes primales sont quasi-réalisables si, et seulement si, ⟨ b , y ⟩ ⩾ 0 {\displaystyle \langle b,y\rangle \geqslant 0} {\displaystyle \langle b,y\rangle \geqslant 0} pour tout y ∈ R m {\displaystyle y\in \mathbb {R} ^{m}} {\displaystyle y\in \mathbb {R} ^{m}} tel que A ∗ ( y ) ≽ 0 {\displaystyle A^{*}(y)\succcurlyeq 0} {\displaystyle A^{*}(y)\succcurlyeq 0}.
  2. Les contraintes duales sont quasi-réalisables si, et seulement si, ⟨ C , X ⟩ ⩾ 0 {\displaystyle \langle C,X\rangle \geqslant 0} {\displaystyle \langle C,X\rangle \geqslant 0} pour tout X ∈ S + n {\displaystyle X\in {\mathcal {S}}_{+}^{n}} {\displaystyle X\in {\mathcal {S}}_{+}^{n}} tel que A ( X ) = 0 {\displaystyle A(X)=0} {\displaystyle A(X)=0}.

La quasi-réalisabilité des contraintes primales et duales n'est pas une propriété très forte (elle n'assure même pas leur réalisabilité !). Numériquement, il est certainement préférable d'avoir une réalisabilité plus robuste, insensible à de petites perturbations du second membre. On définit donc les concepts suivants. On dit que les contraintes primales sont fortement réalisables si

b ∈ int ⁡ A ( S + n ) , {\displaystyle b\in \operatorname {int} A({\mathcal {S}}_{+}^{n}),} {\displaystyle b\in \operatorname {int} A({\mathcal {S}}_{+}^{n}),}

où l'opérateur «int» désigne la prise de l'intérieur. De même, on dit que les contraintes duales sont fortement réalisables si

C ∈ int ⁡ ( A ∗ ( R m ) + S + n ) . {\displaystyle C\in \operatorname {int} {(A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n})}.} {\displaystyle C\in \operatorname {int} {(A^{*}(\mathbb {R} ^{m})+{\mathcal {S}}_{+}^{n})}.}

Réalisabilités primale et duale fortes — 

  1. Les contraintes primales sont fortement réalisables si, et seulement si, A {\displaystyle A} {\displaystyle A} est surjective et A P s ≠ ∅ {\displaystyle {\mathcal {A}}_{P}^{s}\neq \varnothing } {\displaystyle {\mathcal {A}}_{P}^{s}\neq \varnothing }.
  2. Les contraintes duales sont fortement réalisables si, et seulement si, A D s ≠ ∅ {\displaystyle {\mathcal {A}}_{D}^{s}\neq \varnothing } {\displaystyle {\mathcal {A}}_{D}^{s}\neq \varnothing }.

On peut obtenir des caractérisations de réalisabilité en termes de géométrie algébrique[2].

Existence de solution et condition d'optimalité

[modifier | modifier le code]

Existence de solution

[modifier | modifier le code]

Notons ( P L ) {\displaystyle (P_{L})} {\displaystyle (P_{L})} le problème d'optimisation linéaire primal et ( D L ) {\displaystyle (D_{L})} {\displaystyle (D_{L})} son dual lagrangien. En optimisation linéaire, les résultats d'existence de solution et de dualité forte assurent que les propriétés suivantes sont équivalentes :

  • ( P L ) {\displaystyle (P_{L})} {\displaystyle (P_{L})} et ( D L ) {\displaystyle (D_{L})} {\displaystyle (D_{L})} sont réalisables,
  • ( P L ) {\displaystyle (P_{L})} {\displaystyle (P_{L})} est réalisable et borné,
  • ( D L ) {\displaystyle (D_{L})} {\displaystyle (D_{L})} est réalisable et borné,
  • ( P L ) {\displaystyle (P_{L})} {\displaystyle (P_{L})} a une solution,
  • ( D L ) {\displaystyle (D_{L})} {\displaystyle (D_{L})} a une solution.

De plus, dans chacun de ces cas, il n'y a pas de saut de dualité.

Bien que l'optimisation linéaire et l'optimisation SDP aient une structure très semblable, les équivalences ci-dessus ne tiennent plus en optimisation SDP. Voici quelques contre-exemples qui pourront servir de garde-fous.

  1. ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} est réalisable et borné, mais n'a pas de solution ; ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} a une solution ; il n'y a pas de saut de dualité. Voici un exemple avec n = 2 {\displaystyle n=2} {\displaystyle n=2} et m = 1 {\displaystyle m=1} {\displaystyle m=1} :
    C = ( 2 − 1 − 1 0 ) , A 1 = ( 0 − 1 − 1 2 ) , b = 2. {\displaystyle C={\begin{pmatrix}2&-1\\-1&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}0&-1\\-1&2\end{pmatrix}},\quad b=2.} {\displaystyle C={\begin{pmatrix}2&-1\\-1&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}0&-1\\-1&2\end{pmatrix}},\quad b=2.}
  2. ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} a une solution ; ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} est réalisable et borné, mais n'a pas de solution ; il n'y a pas de saut de dualité ; c'est le cas symétrique du précédent. Voici un exemple avec n = 2 {\displaystyle n=2} {\displaystyle n=2} et m = 2 {\displaystyle m=2} {\displaystyle m=2} :
    C = ( 0 1 1 0 ) , A 1 = ( − 1 0 0 0 ) , A 2 = ( 0 0 0 − 1 ) , b = ( − 1 0 ) . {\displaystyle C={\begin{pmatrix}0&1\\1&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}-1&0\\0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&0\\0&-1\end{pmatrix}},\quad b={\begin{pmatrix}-1\\0\end{pmatrix}}.} {\displaystyle C={\begin{pmatrix}0&1\\1&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}-1&0\\0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&0\\0&-1\end{pmatrix}},\quad b={\begin{pmatrix}-1\\0\end{pmatrix}}.}
  3. ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} n'est pas réalisable ; ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} a une solution. Voici un exemple avec n = 2 {\displaystyle n=2} {\displaystyle n=2} et m = 2 {\displaystyle m=2} {\displaystyle m=2} :
    C = ( 0 0 0 0 ) , A 1 = ( 1 0 0 0 ) , A 2 = ( 0 1 1 0 ) , b = ( 0 2 ) . {\displaystyle C={\begin{pmatrix}0&0\\0&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}1&0\\0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&1\\1&0\end{pmatrix}},\quad b={\begin{pmatrix}0\\2\end{pmatrix}}.} {\displaystyle C={\begin{pmatrix}0&0\\0&0\end{pmatrix}},\quad A_{1}={\begin{pmatrix}1&0\\0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&1\\1&0\end{pmatrix}},\quad b={\begin{pmatrix}0\\2\end{pmatrix}}.}
  4. ( P S D P ) {\displaystyle (P_{SDP})} {\displaystyle (P_{SDP})} et ( D S D P ) {\displaystyle (D_{SDP})} {\displaystyle (D_{SDP})} ont une solution ; il y a un saut de dualité. Voici un exemple avec n = 3 {\displaystyle n=3} {\displaystyle n=3} et m = 2 {\displaystyle m=2} {\displaystyle m=2} :
    C = ( 0 0 0 0 0 0 0 0 1 ) , A 1 = ( 1 0 0 0 0 0 0 0 0 ) , A 2 = ( 0 1 0 1 0 0 0 0 2 ) , b = ( 0 2 ) . {\displaystyle C={\begin{pmatrix}0&0&0\\0&0&0\\0&0&1\end{pmatrix}},\quad A_{1}={\begin{pmatrix}1&0&0\\0&0&0\\0&0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&1&0\\1&0&0\\0&0&2\end{pmatrix}},\quad b={\begin{pmatrix}0\\2\end{pmatrix}}.} {\displaystyle C={\begin{pmatrix}0&0&0\\0&0&0\\0&0&1\end{pmatrix}},\quad A_{1}={\begin{pmatrix}1&0&0\\0&0&0\\0&0&0\end{pmatrix}},\quad A_{2}={\begin{pmatrix}0&1&0\\1&0&0\\0&0&2\end{pmatrix}},\quad b={\begin{pmatrix}0\\2\end{pmatrix}}.}

Le résultat d'existence de solution classique est le suivant. Il prend comme hypothèse des conditions ressemblant à la qualification de Slater.

Existence de solution — 

  1. Si A P × A D s ≠ ∅ {\displaystyle {\mathcal {A}}_{P}\times {\mathcal {A}}_{D}^{s}\neq \varnothing } {\displaystyle {\mathcal {A}}_{P}\times {\mathcal {A}}_{D}^{s}\neq \varnothing }, alors sol ⁡ ( P S D P ) {\displaystyle \operatorname {sol} (P_{SDP})} {\displaystyle \operatorname {sol} (P_{SDP})} est non vide et borné et il n'y a pas de saut de dualité.
  2. Si A P s × A D ≠ ∅ {\displaystyle {\mathcal {A}}_{P}^{s}\times {\mathcal {A}}_{D}\neq \varnothing } {\displaystyle {\mathcal {A}}_{P}^{s}\times {\mathcal {A}}_{D}\neq \varnothing } et si A {\displaystyle A} {\displaystyle A} est surjective, alors sol ⁡ ( D S D P ) {\displaystyle \operatorname {sol} (D_{SDP})} {\displaystyle \operatorname {sol} (D_{SDP})} est non vide et borné et il n'y a pas de saut de dualité.
  3. Si A s ≠ ∅ {\displaystyle {\mathcal {A}}^{s}\neq \varnothing } {\displaystyle {\mathcal {A}}^{s}\neq \varnothing } et si A {\displaystyle A} {\displaystyle A} est surjective, alors sol ⁡ ( P S D P ) {\displaystyle \operatorname {sol} (P_{SDP})} {\displaystyle \operatorname {sol} (P_{SDP})} et sol ⁡ ( D S D P ) {\displaystyle \operatorname {sol} (D_{SDP})} {\displaystyle \operatorname {sol} (D_{SDP})} sont non vides et bornés et il n'y a pas de saut de dualité.

Conditions d'optimalité

[modifier | modifier le code]
Cette section est vide, insuffisamment détaillée ou incomplète. Votre aide est la bienvenue ! Comment faire ?

Méthodes de résolution

[modifier | modifier le code]

Il existe plusieurs méthodes de résolution : les méthodes de points intérieurs, la méthode du lagrangien augmenté (on connait par exemple une adaptation de l'algorithme des directions alternées aux problèmes SDP, voir Wen, Goldfarb et Yin (2010[3]), et les méthodes non-différentiables.

Complexité

[modifier | modifier le code]

On peut résoudre le problème avec une erreur additive ϵ {\displaystyle \epsilon } {\displaystyle \epsilon } en un temps polynomial en la taille du problème et en log ⁡ ( 1 / ϵ ) {\displaystyle \log(1/\epsilon )} {\displaystyle \log(1/\epsilon )}.

Exemples de modélisation SDP

[modifier | modifier le code]

Beaucoup de problèmes convexes ont une formulation SDP. L'intérêt d'exhiber une telle formulation est de montrer que l'on peut les résoudre par des algorithmes polynomiaux, souvent efficaces. Certains problèmes non convexes ont une relaxation SDP précise, c'est-à-dire qu'il existe un problème d'optimisation SDP dont la valeur optimale est proche de celle du problème original.

Pour plusieurs problèmes algorithmiques le meilleur algorithme d'approximation connu utilise ce type d'optimisation, qui autorise une modélisation plus générale du problème, mais en conservant la résolution en temps polynomial. L'exemple le plus connu est celui du problème de la coupe maximum avec l'algorithme de Goemans et Williamson[4],[5].

Logiciels

[modifier | modifier le code]

Voir le site de Christoph Helmberg.

  • PENSDP (en Matlab), par TOMLAB Optimization Inc., interface pour PENNON.
  • SDLS (en Matlab), par D. Henrion, J. Malick, résout des problèmes de moindres-carrés coniques.
  • SeDuMi (en Matlab), initié par Jos F. Sturm, utilise une méthode de points intérieurs (résout plus généralement des problèmes d'optimisation conique pour des cônes homogènes auto-duaux).

Annexes

[modifier | modifier le code]

Notes

[modifier | modifier le code]
  1. ↑ Selon Jarre, théorème 2.3.11 dans le manuel de Wolkowicz, Saigal et Vandenberghe (2000).
  2. ↑ I. Klep, M. Schweighofer (2012). An exact duality theory for semidefinite programming based on sums of squares. Mathematics of Operations Research. (à paraître)
  3. ↑ (en) Z. Wen, D. Goldfarb, W. Yin (2010). Alternating direction augmented Lagrangian methods for semidefinite programming. Mathematical Programming Computation, 2, 203-230. DOI
  4. ↑ Article original : (en) Michel X. Goemans et David P. Williamson, « Improved approximation algorithms for maximum cut and satisfiability problems using semidefinite programming », Journal of the ACM, vol. 42, no 6,‎ 1995, p. 1115-1145 (DOI 10.1145/227683.227684)
  5. ↑ Explication en français : Frédéric Meunier et Andras Sebo, « Parcours et coupes », dans Graphes et applications-vol. 2, JC Fournier, 2007 (lire en ligne) .

Articles connexes

[modifier | modifier le code]
  • Optimisation conique
  • Optimisation linéaire
  • Conditions d'optimalité (dimension finie)
  • Inégalité matricielle linéaire

Liens externes

[modifier | modifier le code]
  • J. Ch. Gilbert, Éléments d'Optimisation Différentiable — Théorie et Algorithmes, syllabus de cours à l'ENSTA ParisTech, Paris.

Bibliographie

[modifier | modifier le code]
  • (en) F. Alizadeh (1995). Interior point methods in semidefinite programming with applications to combinatorial optimization. SIAM Journal on Optimization, 5, 13–51.
  • (en) M. F. Anjos, J.-B. Lasserre (2012). Handbook on Semidefinite, Conic and Polynomial Optimization. Springer.
  • (en) E. de Klerk (2002). Aspects of Semidefinite Programming - Interior Point Algorithms and Selected Applications. Kluwer Academic Publishers, Dordrecht.
  • (en) R. D. C. Monteiro (2003). First- and second-order methods for semidefinite programming. Mathematical Programming, 97, 209–244.
  • (en) L. Vandenberghe, S. Boyd (1996). Semidefinite programming. SIAM Review, 38, 49–95.
  • (en) H. Wolkowicz, R. Saigal, L. Vandenberghe, éditeurs (2000). Handbook of Semidefinite Programming – Theory, Algorithms, and Applications. Kluwer Academic Publishers.


v · m
Optimisation: théorie et algorithmes
Non linéaire
  • Méthode du nombre d'or
  • Recherche linéaire
  • Méthode de Nelder-Mead
  • Critères de Wolfe
  • Méthode de Broyden-Fletcher-Goldfarb-Shanno
  • Algorithme à régions de confiance
  • Pénalisation
  • Algorithme du gradient
  • Algorithme du gradient stochastique
  • Méthode de Newton
  • Algorithme de Gauss-Newton
  • Algorithme de Levenberg-Marquardt
  • Algorithme du lagrangien augmenté
Convexe
  • Optimisation complètement positive
  • Optimisation copositive
  • Optimisation SDP
  • Méthode des plans sécants
  • Algorithme de Frank-Wolfe
  • Méthode de l'ellipsoïde
Linéaire
  • Optimisation conique
  • Algorithme du simplexe
  • Méthodes de points intérieurs
  • Décomposition de Benders
  • Génération de colonnes
Quadratique
  • Optimisation quadratique successive
Combinatoire
  • Algorithme d'approximation
  • Programmation dynamique
  • Algorithme glouton
  • Optimisation linéaire en nombres entiers
Métaheuristique
  • Stratégie d'évolution
    • Algorithme génétique
  • Essaims
  • Forêts aléatoires
  • Boosting
v · m
Convexité
Géométrie convexe
  • Article général :
    • Ensemble convexe
  • Outils et résultats fondamentaux :
    • Enveloppe convexe
    • Adhérence, intérieur et frontière d'un convexe
    • Projection sur un convexe fermé
    • Séparation des convexes
    • Points remarquables à la frontière d'un convexe
    • Polytope
    • Théorème de Krein-Milman
    • Lemme de Farkas
  • Géométrie combinatoire :
    • Théorème de Carathéodory
    • Théorème de Radon
    • Théorème de Helly
  • Géométrie métrique :
    • Courbe de largeur constante
    • Théorème des quatre sommets
  • Algorithmes de géométrie convexe :
    • Approche polyédrique
    • Marche de Jarvis
    • Parcours de Graham
    • Théorème optimisation/séparation
  • Optimisation linéaire :
    • Optimisation linéaire
    • Algorithme du simplexe
    • Génération de colonnes
Interactions géométrie-analyse
  • Théorème de Hahn-Banach
  • Fonctionnelle de Minkowski
Analyse convexe
  • Articles principaux :
    • Ensemble convexe
    • Fonction convexe
  • Outils et résultats fondamentaux :
    • Conditions de Karush-Kuhn-Tucker
    • Inégalité de Jensen
  • Algorithmique :
    • Méthodes de points intérieurs
Utilisations de la convexité
  • Inégalités de convexité :
    • Inégalité arithmético-géométrique
    • Inégalité de Hölder
    • Inégalité de Popoviciu
  • Analyse fonctionnelle :
    • Espace localement convexe
    • Théorème du point fixe de Schauder
  • Localisation de zéros de polynômes :
    • Théorème de Gauss-Lucas
  • Théorie des nombres :
    • Théorème de Minkowski
  • icône décorative Portail des mathématiques
  • icône décorative Portail de l'informatique théorique
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Optimisation_SDP&oldid=229196591 ».
Catégories :
  • Optimisation
  • Recherche opérationnelle
  • Optimisation combinatoire
Catégories cachées :
  • Article avec une section vide ou incomplète
  • Portail:Mathématiques/Articles liés
  • Portail:Sciences/Articles liés
  • Portail:Informatique théorique/Articles liés
  • Portail:Informatique/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id