Kontinuierliche Reformulierung von ganzzahligen Variablen

Durch ganzzahlige Variablen in MINLPs kann man keine NLP Algorithmen anwenden. Daher macht es Sinn diese kontinuierlich zu reformulieren.

Die oberen und unteren Schranken uu und ll des MINLP können wir als ganzzahlig annehmen.

Wir können also zj{0,...,uj}z_j\in\{0, ..., u_j\} als:

zj=20zj0+21zj1+22zj2+23zj3++2kjzjkjz_{j}=2^{0} z_{j}^{0}+2^{1} z_{j}^{1}+2^{2} z_{j}^{2}+2^{3} z_{j}^{3}+\ldots+2^{k_{j}} z_{j}^{k_{j}}

binär darstellen mit zji{0,1}z_j^i \in\{0,1\} für i=0,1,...log2uji=0,1,...\lfloor \operatorname{log}_2u_j\rfloor . Eine weitere Darstellung wäre durch

zj=zj1+zj2+zj3++zjujz_{j}=z_{j}^{1}+z_{j}^{2}+z_{j}^{3}+\ldots+z_{j}^{u_{j}}

möglich, hier mit linear vielen Binärvariablen.

Nun müssen wir also nur noch eine Möglichkeit finden Binärvariablen kontinuierlich zu reformulieren, dann können wir beliebige ganzzahlige Variablen durch kontinuierliche Variablen darstellen.

Wir verwenden eine Komplementaritätsbedingung mit n=2n=2 und ψ(x,y)=y\psi(x,y)=y und ϕ(x,y)=y\phi(x,y)=y zusammen mit der Bedingung x+y=1x+y=1 und modellieren somit den Bereich {(0,1)T,(1,0)T}R2\{(0,1)^T,(1,0)^T\}\subseteq \mathbb{R}^2, welcher nur aus den beiden Punkten besteht.

Nun könen wir jede binäre Variable durch x,yx,y mit den oben beschriebenen Bedingungen ersetzen und identifizieren (0,1)(0,1) als 00 und (1,0)(1,0) als 11. Somit ist es jetzt möglich ein MINLP in ein NLP umzuformen. Dabei entsteht allerdings der Nachteil, dass keiner der zulässigen Punkte die LICQ erfüllt und man somit nicht mehr überprüfen kann ob unter den KKT-Punkten das Minimum vorhanden ist.

Vor- und Nachteile der Reformulierungen

Reformulierung Für Wieder
Komplementaritätsbedingung Glattheit globale Verletzung der LICQ
NCP-Funktion kein Einfluss auf LICQ schlechte Glattheit und η\eta schwierig auszuwerten
Parabelfunktion-Reformulierung Glattheit lokale Verletzung der LICQ