lunes, 15 de julio de 2013

CONDICIONES DE KARUSH-KUHN-TUCKER


         En programación matemática, las condiciones de Karush-Kuhn-Tucker (también conocidas como las condiciones KKT o Kuhn-Tucker) son condiciones necesarias y suficientes para que la solución de un problema de programación matemática séa óptima. Es una generalización del método de los Multiplicadores de Lagrange.

Problema general de optimización.


Consideremos el siguiente problema general:
 \text{min }\; f(x)
 \text{sujeto a }\
\ g_i(x) \le 0\ \ i = 1,\ldots,m
\ h_j(x) = 0\ \ j = 1,\ldots,l
donde f(x) es la función objetivo a minimizar, g_{i}(x) son las restricciones de desigualdad y h_{j}(x) son las restricciones de igualdad, con m y l el número de restricciones de desigualdad e igualdad, respectivamente.
       Las condiciones necesarias para problemas con restricciones de desigualdad fueron publicadas por primera vez en la tesis de máster de W. Karush, aunque fueron renombradas tras un artículo en una conferencia de Harold W. Kuhn y Albert W. Tucker.

Condiciones necesarias de primer orden 
Supongamos que la función objetivo, por ejemplo, a minimizar, es f : \mathbb{R}^n \rightarrow \mathbb{R} y las funciones de restricción son g_i : \,\!\mathbb{R}^n \rightarrow \mathbb{R}h_j : \,\!\mathbb{R}^n \rightarrow \mathbb{R}. Además, supongamos que son continuamente diferenciables en el punto x^*. Si x^* es un mínimo local, entonces existe constantes \lambda \ge 0\mu_i \ge 0\ (i = 1,\ldots,m) y \nu_j\ (j = 1,...,l) tales que
\lambda + \sum_{i=1}^m \mu_i + \sum_{j=1}^l |\nu_j| > 0,
\lambda\nabla f(x^*) + \sum_{i=1}^m \mu_i \nabla g_i(x^*) + \sum_{j=1}^l \nu_j \nabla h_j(x^*) = 0,
\mu_i g_i (x^*) = 0\; \mbox{para todo}\; i = 1,\ldots,m.

Condiciones de regularidad (o cualificación de las restricciones)
En la condición necesaria anterior, el multiplicador dual \lambda puede ser igual a cero. Este caso se denomina degenerado o anormal. La condición necesaria no tiene en cuenta las propiedades de la función sino la geometría de las restricciones.
Existen una serie de condiciones de regularidad que aseguran que la solución no es degenerada (es decir \lambda \ne 0). Estas incluyen:
  • Cualificación de la restricción de independencia lineal (CRIL): los gradientes de las restricciones activas de desigualdad y los gradientes de las restricciones de igualdad son linealmente independientes en x^*.
  • Cualificación de la restricción de Mangasarian-Fromowitz (CRMF): los gradientes de las restricciones activas de desigualdad y los gradientes de las restricciones de igualdad son linealmente independientes positivos en x^*.
  • Cualificación de la restricción de rango constante (CRRC): para cada subconjunto de las restricciones activas de desigualdad y los gradientes de las restricciones de igualdad, el rango en el entorno de x^* es constante.
  • Cualificación de la restricción de dependencia lineal constante positiva (DLCP): para cada subconjunto de restricciones activas de desigualdad y de gradientes de las restricciones de igualdad, si es linealmente dependiente positivo en x^* entonces es linealmente dependiente positivo en el entorno de x^*. (\{v_1,\ldots,v_n\} es linealmente dependiente positivo si existe a_1\geq 0,\ldots,a_n\geq 0 distintos de cero tal que a_1v_1+\cdots+a_nv_n=0)
  • Condición de Slater: para un problema únicamente con restricciones de desigualdad, existe un punto x tal que g_i(x) < 0 para todo i = 1,\ldots,m
Puede verse que CRIL=>CRMF=>DLCP, CRIL=>CRRC=>DLCP, aunque CRMF no es equivalente a CRRC. En la práctica, se prefiere cualificación de restricciones más débiles ya que proporcionan condiciones de optimalidad más fuertes.
Condiciones suficientes

Séa la función objetivo f: \mathbb{R}^n \rightarrow \mathbb{R} y las funciones de restricción g_i : \mathbb{R}^n \rightarrow \mathbb{R} sean funciones convexas y h_j : \mathbb{R}^n \rightarrow \mathbb{R}sean las funciones de afinidad, y séa un punto x^*. si existen constantes \mu_i \ge 0\ (i = 1,\ldots,m) y \nu_j\ (j = 1,\ldots,l)tales que
\nabla f(x^*) + \sum_{i=1}^m \mu_i \nabla g_i(x^*) + \sum_{j=1}^l \nu_j \nabla h_j(x^*) = 0
\mu_i g_i (x^*) = 0\; \mbox{para todo}\; i = 1,\ldots,m,
entonces el punto x^* es un mínimo global.

No hay comentarios:

Publicar un comentario