Nonlinear Opt.: KKT- theorem 5: Unterschied zwischen den Versionen

Aus Operations-Research-Wiki
Wechseln zu: Navigation, Suche
[unmarkierte Version][unmarkierte Version]
(Die Seite wurde neu angelegt: „= '''Karush-Kuhn Tucker Theorie (KKT-Theorie) :''' = <nowiki>Karush-Kuhn Tucker Theorem (KKT-Theorem) is a mathematical Method to solve Nonlinear optimizati…“)
 
Zeile 15: Zeile 15:
 
<nowiki>Min</nowiki> <math>z</math> = <math>f</math>(<math>x_1</math>, …., <math>x_n</math>)  
 
<nowiki>Min</nowiki> <math>z</math> = <math>f</math>(<math>x_1</math>, …., <math>x_n</math>)  
  
s.t. <math>h_i</math> (<math>x_1</math>, ...,<math>x_n</math> ) – b ≤0 bzw.  <math>g_i</math>(<math>x_1</math>,. ..,<math>x_n</math>) ≤ 0    ,  <math>x_j</math> ≥ 0
+
s.t. <math>h_i</math> (<math>x_1</math>, ...,<math>x_n</math> ) – b ≤0 bzw.  <math>g_i</math>(<math>x_1</math>,. ..,<math>x_n</math>) ≤ <math>0</math>   ,  <math>x_j</math> ≥ <math>0</math>
  
 
<math>i=1,...,m</math>  ;  <math>j=1,...,n</math>.
 
<math>i=1,...,m</math>  ;  <math>j=1,...,n</math>.
Zeile 21: Zeile 21:
 
<nowiki>f and g are continuously differentiable</nowiki>
 
<nowiki>f and g are continuously differentiable</nowiki>
  
=== Lagrangian Function for a optimization Problem who has to be minimized: ===
+
=== Lagrangian Function for a minimization Problem : ===
  
 
<math>L(x;\lambda)</math> = <math>f</math>(<math>x_1</math>,…,<math>x_n</math>)+ <math>\sum_{k=1}^m\lambda_i</math>  <math>g_i</math> (<math>x_1</math>,…,<math>x_n</math>)
 
<math>L(x;\lambda)</math> = <math>f</math>(<math>x_1</math>,…,<math>x_n</math>)+ <math>\sum_{k=1}^m\lambda_i</math>  <math>g_i</math> (<math>x_1</math>,…,<math>x_n</math>)
Zeile 29: Zeile 29:
 
<math>L(x;\lambda)=f(x)+\lambda^T g(x)</math>
 
<math>L(x;\lambda)=f(x)+\lambda^T g(x)</math>
  
A vector <math>(x ̂, \lambda ̂)</math>in <math>R_+^{n+m}</math> is called saddle point of Lagrangian function <math>L(x,\lambda)</math>, if it holds for all x ∈<math>R_+^n</math>
+
A vector <math>(\hat x,\hat \lambda)</math> in <math>R_+^{n+m}</math> is called saddle point of Lagrangian function <math>L(x,\lambda)</math>, if it holds for all x ∈<math>R_+^n</math>
And <math>\lambda</math>  ∈<math>R_+^m</math>:
+
And <math>\lambda</math>  ∈<math>R_+^m</math> :
 +
 
 +
<math>L(\hat x,\lambda)</math> ≤ <math>L(\hat x,\hat \lambda)</math> ≤ <math>L(x,\hat \lambda)</math>
 +
 
 +
=== '''Saddle Point Condition :''' ===
 +
 
 +
<nowiki>The slater condition is satisfied if there exists a</nowiki> <math>x</math> ≥ 0 <nowiki>such that</nowiki> <math>g(x)</math> < 0
 +
 
 +
'''Minimizer :'''
 +
 
 +
<nowiki>If the vector</nowiki> <math>(\hat x;\hat \lambda)</math> is saddle point of <math>L(x,\lambda)</math>, <nowiki>then</nowiki>  <math>\hat x</math> <nowiki>is a  minimizer of NLP.</nowiki>
 +
 
 +
<nowiki>Suppose that there exist a</nowiki> <math>x</math> ≥0 <nowiki>s.t.</nowiki> <math>g(x)</math> < 0, <nowiki>so the following KKT conditions are necessary for</nowiki> <math>(\hat x,\hat \lambda)</math> <nowiki>being a saddle point of</nowiki> <math>L(x;\lambda)</math> :
 +
 
 +
<math>\frac{\partial L}{\partial x_j}</math> = <math>\frac{\partial f}{\partial x_j}</math> <math>(\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x)</math> ≥ <math>0</math>          ;      <math>j=1,...,n</math>.
 +
 
 +
<math>\hat x \cdot \frac{\partial L}{\partial x_j}</math> = <math>\hat x \cdot \bigg( \frac{\partial f}{\partial x_j}</math> <math>(\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x) \bigg) </math> = <math>0</math>          ;      <math>j=1,...,n</math>.
 +
 +
<math>\frac{\partial L}{\partial \lambda_i} = g(\hat x)</math> ≤ <math>0</math>      ;    <math>i=1,...,m</math>                                                                 
 +
 
 +
<math>\hat \lambda_i \cdot \frac{\partial L}{\partial \lambda_i} = \hat \lambda_i \cdot g(\hat x)</math> ≤ <math>0</math>      ;    <math>i=1,...,m</math>
 +
 
 +
<math>\hat x</math> ≥ <math>0</math>
 +
 
 +
<math>\hat \lambda</math> ≥ <math>0</math>
 +
 
 +
== '''Nonlinear maximization problem''' ==
 +
 
 +
'''Given a nonlinear  maximization problem:'''
 +
 
 +
 
 +
<nowiki>Max</nowiki> <math>z</math> = <math>f</math>(<math>x_1</math>, …., <math>x_n</math>)
 +
 
 +
s.t. <math>h_i</math> (<math>x_1</math>, ...,<math>x_n</math> ) – b ≤0 bzw.  <math>g_i</math>(<math>x_1</math>,. ..,<math>x_n</math>) ≤ <math>0</math>    ,  <math>x_j</math> ≥ <math>0</math>
 +
 
 +
<math>i=1,...,m</math>  ;  <math>j=1,...,n</math>.
 +
 
 +
<nowiki>f and g are continuously differentiable</nowiki>
 +
 
 +
=== Lagrangian Function for a maximization Problem : ===
 +
 
 +
<math>L(x;\lambda)</math> = <math>f</math>(<math>x_1</math>,…,<math>x_n</math>)- <math>\sum_{k=1}^m\lambda_i</math>  <math>g_i</math> (<math>x_1</math>,…,<math>x_n</math>)
 +
 
 +
<nowiki>Or</nowiki>
 +
 
 +
<math>L(x;\lambda)=f(x)-\lambda^T g(x)</math>
 +
 
 +
'''KKT-condition for a  maximization problem.'''
 +
 +
<math>\frac{\partial L}{\partial x_j}</math> = <math>\frac{\partial f}{\partial x_j}</math> <math>(\hat x)-\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x)</math> ≤ <math>0</math>          ;      <math>j=1,...,n</math>.
 +
 
 +
<math>\hat x \cdot \frac{\partial L}{\partial x_j}</math> = <math>\hat x \cdot \bigg( \frac{\partial f}{\partial x_j}</math> <math>(\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x) \bigg) </math> = <math>0</math>          ;      <math>j=1,...,n</math>.
 +
 +
<math>\frac{\partial L}{\partial \lambda_i} = g(\hat x)</math> ≤ <math>0</math>      ;    <math>i=1,...,m</math>                                                                 
 +
 
 +
<math>\hat \lambda_i \cdot \frac{\partial L}{\partial \lambda_i} = \hat \lambda_i \cdot g(\hat x)</math> ≤ <math>0</math>      ;    <math>i=1,...,m</math>
 +
 
 +
<math>\hat x</math> ≥ <math>0</math>
 +
 
 +
<math>\hat \lambda</math> ≥ <math>0</math>
 +
 
 +
== Example: ==
 +
 +
Given the following optimization problem:
 +
         
 +
<math>minf(x_1,x_2)= x_1^2 + x_2^2 + (1-x_1-x_2)^2</math>  with <math>x_1 , x_2</math>  ∈ <math>R_+^2</math> ,
 +
 
 +
under the following constraints :               
 +
 
 +
<math>4x_1 +2x_2</math> ≤ <math>10</math>
 +
 
 +
<math>x_2</math> ≤ <math>15</math>
 +
 
 +
<math>x_1+ x_2</math> ≥ <math>3</math>
 +
 
 +
<math>x_1, x_2</math> ≥ <math>0</math>
 +
 
 +
'''KKT-Conditions :'''
 +
 
 +
<math>f(x_1,x_2)= x_1^2 + x_2^2 + (1-x_1-x_2)^2</math>

Version vom 30. Juni 2013, 03:34 Uhr

Karush-Kuhn Tucker Theorie (KKT-Theorie) :

Karush-Kuhn Tucker Theorem (KKT-Theorem) is a mathematical Method to solve Nonlinear optimization problems with help of Lagrangian Function. It requires inequality constraints. The system of equations corresponding to the KKT conditions is usually not solved directly, except in the few special cases where a closed-form solution can be derived analytically.

Optimality conditions according to KKT-Theorem:

#Generalization of the Lagrangian condition #Take the inequality Constraints in consideration #Necessary (even sufficient under certain preconditions) conditions which shall be satisfied by an extremizer of the Lagrangian function.

Nonlinear minimization problem

Consider the nonlinear optimization Problem :

Min = (, …., )

s.t. (, ..., ) – b ≤0 bzw. (,. ..,) ≤ ,

 ; .

f and g are continuously differentiable

Lagrangian Function for a minimization Problem :

= (,…,)+ Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \sum_{k=1}^m\lambda_i

  (,…,)

Or

A vector in is called saddle point of Lagrangian function , if it holds for all x ∈ And  :

Saddle Point Condition :

The slater condition is satisfied if there exists a ≥ 0 such that < 0

Minimizer :

If the vector is saddle point of , then is a minimizer of NLP.

Suppose that there exist a ≥0 s.t. < 0, so the following KKT conditions are necessary for being a saddle point of  :

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial L}{\partial x_j}

= Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial f}{\partial x_j}
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): (\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x)          ;       .

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat x \cdot \frac{\partial L}{\partial x_j}

= Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat x \cdot \bigg( \frac{\partial f}{\partial x_j}
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): (\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x) \bigg) 
=           ;       .

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial L}{\partial \lambda_i} = g(\hat x)

      ;                                                                      

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat \lambda_i \cdot \frac{\partial L}{\partial \lambda_i} = \hat \lambda_i \cdot g(\hat x)

      ;    

Nonlinear maximization problem

Given a nonlinear maximization problem:


Max = (, …., )

s.t. (, ..., ) – b ≤0 bzw. (,. ..,) ≤ ,

 ; .

f and g are continuously differentiable

Lagrangian Function for a maximization Problem :

= (,…,)- Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \sum_{k=1}^m\lambda_i

  (,…,)

Or

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): L(x;\lambda)=f(x)-\lambda^T g(x)


KKT-condition for a maximization problem.

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial L}{\partial x_j}

= Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial f}{\partial x_j}
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): (\hat x)-\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x)          ;       .

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat x \cdot \frac{\partial L}{\partial x_j}

= Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat x \cdot \bigg( \frac{\partial f}{\partial x_j}
Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): (\hat x)+\sum_{j=1}^m \hat \lambda_i \cdot \frac{\partial g_i}{\partial x_j}(\hat x) \bigg) 
=           ;       .

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \frac{\partial L}{\partial \lambda_i} = g(\hat x)

      ;                                                                      

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): \hat \lambda_i \cdot \frac{\partial L}{\partial \lambda_i} = \hat \lambda_i \cdot g(\hat x)

      ;     

Example:

Given the following optimization problem:

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): minf(x_1,x_2)= x_1^2 + x_2^2 + (1-x_1-x_2)^2

  with  ,

under the following constraints :

KKT-Conditions :

Fehler beim Parsen (http://mathoid.testme.wmflabs.org Serverantwort ist ungültiges JSON.): f(x_1,x_2)= x_1^2 + x_2^2 + (1-x_1-x_2)^2