Programación secuencial lineal-cuadrática - Sequential linear-quadratic programming

La programación secuencial lineal-cuadrática ( SLQP ) es un método iterativo para problemas de optimización no lineal donde la función objetivo y las restricciones son dos veces diferenciables de forma continua . De manera similar a la programación cuadrática secuencial (SQP), SLQP procede resolviendo una secuencia de subproblemas de optimización. La diferencia entre los dos enfoques es que:

  • en SQP, cada subproblema es un programa cuadrático , con un modelo cuadrático del objetivo sujeto a una linealización de las restricciones
  • en SLQP, se resuelven dos subproblemas en cada paso: un programa lineal (LP) utilizado para determinar un conjunto activo , seguido de un programa cuadrático con restricciones de igualdad (EQP) utilizado para calcular el paso total

Esta descomposición hace que SLQP sea adecuado para problemas de optimización a gran escala, para los cuales se encuentran disponibles solucionadores LP y EQP eficientes, siendo estos problemas más fáciles de escalar que los programas cuadráticos completos.

Conceptos básicos de algoritmos

Considere un problema de programación no lineal de la forma:

El lagrangiano para este problema es

donde y son los multiplicadores de Lagrange .

Fase LP

En la fase LP de SLQP, se resuelve el siguiente programa lineal:

Dejar que denotan el conjunto activo en el óptimo de este problema, es decir, el conjunto de restricciones que son iguales a cero al . Denotar por y los subvectores de y correspondientes a elementos de .

Fase EQP

En la fase EQP de SLQP, la dirección de búsqueda del paso se obtiene resolviendo el siguiente programa cuadrático:

Tenga en cuenta que el término en las funciones objetivo anteriores puede omitirse para los problemas de minimización, ya que es constante.

Ver también

Notas

Referencias