Sei sulla pagina 1di 18

Optimizacin para ingenieros

Programacin no lineal con


restricciones
Sequential Quadratic Programming
1er semestre de 2010
2/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones
Idea general del mtodo SQP
El mtodo SQP se utiliza para resolver problemas de PNL
con restricciones de la forma
Minimizar
sujeto a
En cada paso, el mtodo SQP utiliza una aproximacin
cuadrtica de la funcin objetivo y una aproximacin
lineal de las restricciones para encontrar una mejor
solucin al problema
Inicialmente el mtodo ser planteado para problemas con
solo restricciones de igualdad
0 ) ( , 0 ) ( x g x h
) (x f
3/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Aproximacin lineal de las restricciones
Podemos aproximar las restricciones en un
punto x
k
a travs de una serie de Taylor de
primer orden
0 ) ( ) ( ) ( + +
k k k
x h p x h p x h
T
4/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Aproximacin cuadrtica de la funcin objetivo
A primera vista, esperaramos que la funcin cuadrtica para el
problema de SQP sea la aproximacin de Taylor de segundo orden de
la funcin objetivo
0 ) ( ) ( ) ( ) (
2
1
+ + + p x F p p x x p x
k k k k
T T
f f f
Sin embargo, esta aproximacin no da buenos resultados, al no
capturar informacin de la curvatura de las restricciones. Por esta
razn, se usa la siguiente aproximacin
p x L p p x x p x
k k k k k k k k
) , ( ) , ( ) , ( ) , (
2
1
T T
l l l + + +
correspondiente al Lagrangiano de la funcin
5/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Formulacin del mtodo SQP
El mtodo consiste en hallar sucesivamente el mnimo de la aproximacin de
segundo orden del Lagrangiano sujeta a aproximaciones lineales de las
restricciones. Es decir, resolver
cuya solucin est dada por las condiciones de optimalidad de primer orden
siendo el multiplicador de Lagrange correspondiente a este nuevo problema
0 ) ( ) (
) , ( ) , ( ) , (
2
1
+
+ +
k k
k k k k k k
x h p x h
x p x p x L p
T
T T
l l
a sujeto
Minimizar
0 ) ( ) (
0 ) ( ) , ( ) , (
+
+ +
k k
k k k k k
x h p x h
! x h x p x L
T
l
6/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Formulacin del mtodo SQP
En vista de esto, en cada iteracin la
solucin x
k+1
,
k+1
al problema original est
dada por
1
]
1

1
]
1

1
]
1

) (
) , (
) (
) ( ) , (
k
k k
k
k
k
k k k
x h
x
!
p
0 x h
x h x L l
T
k k 1 k
k k 1 k
!
p x x
+
+
+
+
7/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Formulacin alterna del mtodo SQP
Se puede demostrar que la solucin a
es la misma de
por lo tanto, esta formulacin alterna del mtodo SQP es vlida
Esta formulacin se utilizar al incluir restricciones de desigualdad
0 ) ( ) (
) , ( ) , ( ) , (
2
1
+
+ +
k k
k k k k k k
x h p x h
x p x p x L p
T
T T
l l
a sujeto
Minimizar
0 ) ( ) (
) , ( ) , (
2
1
+
+
k k
k k k k
x h p x h
p x p x L p
T
T T
f
a sujeto
Minimizar
8/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Formulacin alterna del mtodo SQP
Para esta formulacin alterna, la nueva
aproximacin x
k+1
,
k+1
est dada por
1
]
1

1
]
1

1
]
1

) (
) , (
) (
) ( ) , (
k
k k
k
k
k
k k k
x h
x
!
p
0 x h
x h x L f
T
k 1 k
k k 1 k
!
p x x

+
+
+
9/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Ejemplo
0 56 7 14 8 ) (
0 25 ) (
2 1000 ) (
3 2 1 2
2
3
2
2
2
1 1
3 1 2 1
2
3
2
2
2
1
+ +
+ +

x x x h
x x x h
x x x x x x x f
x
x
x
a sujeto
Minimizar
1
1
1
]
1





1 3
1 2
3 2 1
2
4
2
) (
x x
x x
x x x
f x
1
1
1
]
1


7 2
14 2
8 2
) (
3
2
1
x
x
x
x h
1
1
1
]
1

+ +
+ +
+ +

2 1 3 1 3
2 1 2 1 2
2 1 1 3 2 1
7 2 2
14 2 4
8 2 2
) , (



x x x
x x x
x x x x
l x
1
1
1
]
1

+
+
+

1
1
1
2 2 0 1
0 2 4 1
1 1 2 2
) , (

x L
Las variables de inters son
10/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Ejemplo
( )
( )
( )
( )
( )
1
1
1
1
1
1
]
1

+ +
+ +


1
1
1
1
1
1
]
1

1
1
1
1
1
1
]
1

+
+
+
+
+
56 7 14 8
25
2
4
2
0 0 7 14 8
0 0 2 2 2
7 2 2 2 0 1
14 2 0 2 4 1
8 2 1 1 2 2
) ( 3 ) ( 2 ) ( 1
2
) ( 3
2
) ( 2
2
) ( 1
) ( 1 ) ( 3
) ( 1 ) ( 2
) ( 3 ) ( 2 ) ( 1
) 1 ( 2
) 1 ( 1
) ( 3
) ( 2
) ( 1
) ( 3 ) ( 2 ) ( 1
) ( 3 ) ( 1
) ( 2 ) ( 1
) ( 1 ) ( 1
k k k
k k k
k k
k k
k k k
k
k
k
k
k
k k k
k k
k k
k k
x x x
x x x
x x
x x
x x x
p
p
p
x x x
x
x
x

Con estas variables, el sistema a resolver en cada paso es


Partiendo de x
0
= (10,10,10) y
0
= (5,5) tenemos la siguiente sucesin de pasos
k 1 2 3 4 5 6 7 8 9
x
k

k
1
1
1
]
1

008 . 15
832 . 9
07 . 11
1
1
1
]
1

357 . 8
862 . 3
446 . 6
1
1
1
]
1

282 . 5
069 . 1
248 . 4
1
1
1
]
1

206 . 4
032 . 0
263 . 3
1
1
1
]
1

225 . 2
145 . 0
306 . 5
1
1
1
]
1

63 . 4
33 . 0
527 . 3
1
1
1
]
1

687 . 3
137 . 0
535 . 3
1
1
1
]
1

556 . 3
215 . 0
512 . 3
1
1
1
]
1

552 . 3
217 . 0
512 . 3
1
]
1

58 . 25
402 . 9
1
]
1

964 . 1
854 . 3
1
]
1

009 . 1
954 . 0
1
]
1

483 . 0
591 . 0
1
]
1

347 . 0
149 . 1
1
]
1

215 . 0
293 . 1
1
]
1

264 . 0
242 . 1
1
]
1

275 . 0
223 . 1
1
]
1

275 . 0
223 . 1
11/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de igualdad
Ejemplo
0 56 7 14 8 ) (
0 25 ) (
2 1000 ) (
3 2 1 2
2
3
2
2
2
1 1
3 1 2 1
2
3
2
2
2
1
+ +
+ +

x x x h
x x x h
x x x x x x x f
x
x
x
a sujeto
Minimizar
Las grficas muestran el valor de f(x) (izquierda) y h(x) (derecha) en cada iteracin. Note
el incremento en el valor de f debido a la no factibilidad del punto inicial
12/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de
desigualdad
Formulacin del mtodo SQP
De manera anloga al caso con restricciones de igualdad,
esperaramos resolver el problema con la aproximacin de
segundo orden del Lagrangiano
Sin embargo, se puede demostrar que, en presencia de
restricciones de desigualdad, el punto mnimo de la funcin
objetivo no es el mismo que el del Lagrangiano por lo que
esta formulacin no es vlida
0 ) ( ) (
0 ) ( ) (
) , ( ) , (
2
1
+
+
+
k k
k k
k k k k
x g p x g
x h p x h
p x p x L p
T
T
T T
l
a sujeto
Minimizar
13/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de
desigualdad
Formulacin del mtodo SQP
Para resolver el problema
La formulacin a utilizar es
Este es un problema de programacin cuadrtica con restricciones de
igualdad y desigualdad, el cual usualmente es resuelto con un mtodo
de conjunto activo
0 ) ( ) (
0 ) ( ) ( a sujeto
) , ( ) , ( Minimizar
2
1
+
+
+
k k
k k
k k k k
x g p x g
x h p x h
p x p x L p
T
T
T T
f
0 ) ( , 0 ) ( x g x h a sujeto
) (x f Minimizar
14/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de
desigualdad
Ejemplo
0 1
4
) (
0 1 2 ) (
) 1 ( ) 2 ( ) (
2
2
2
1
2 1
2
2
2
1
+
+
+
x
x
g
x x h
x x f
x
x
x
a sujeto
Minimizar
1
]
1


) 1 ( 2
) 2 ( 2
) (
2
1
x
x
f x
1
1
]
1


2
1
2
2
) (
x
x
g x
1
1
]
1

+
+ +

2 2
1
1
2 2 ) 1 ( 2
2
) 2 ( 2
) , (
x x
x
x
l


x
1
1
]
1

2 2 0
0
2
2
) , ( x L
Las variables de inters son
1
]
1


2
1
) (x h
15/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin no lineal con restricciones de
desigualdad
Ejemplo
Con estas variables, el problema de programacin cuadrtica a a resolver en
cada paso es
[ ] ( )
4 4 4 3 4 4 4 2 1
4 4 3 4 4 2 1
4 4 4 3 4 4 4 2 1
3 2 1
4 4 3 4 4 2 1
4 4 4 3 4 4 4 2 1
2
1
1
4
2
2
1 2 2 1
) 1 ( 2
) 2 ( 2
2 2 0
0
2
2
2
) ( 2
2
) ( 1
) ( 2
) ( 1
) ( 2 ) ( 1
) ( 2
) ( 1
) (
) (
2
1
b
k
k
k
k
b
k k
T
k
k
k
k
T
x
x
x
x
x x -
x
x

,
_

+
1
]
1

+
1
]
1

+
1
1
]
1

p
p
x p p
2
1
k
k
a
a
c
Q
a sujeto
Minimizar

16/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin cuadrtica
Mtodo de conjunto activo
Considere el siguiente problema
Si conociramos cuales restricciones son activas en la solucin
factible, este problema se reducira a un problema con solo
restricciones de igualdad cuya solucin esta dada por
I i b
E i b
i
T
i
T
T T


+
,
,
2
1
x a
x a
x c Qx x
i
i
a sujeto
Minimizar
( ) ( ) ( )
( ) ( ) b c AQ A AQ
b A AQ A Q c AQ A AQ A Q x
+
+


1
1
1
1
1 1 1
1
1 1
T
T T T T
I (1)
(2)
17/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin cuadrtica
Mtodo de conjunto activo
Para resolver el problema con restricciones de desigualdad
podemos utilizar el siguiente mtodo para incorporar y
desincorporar restricciones activas
1. Defina un conjunto de trabajo W
k
que incluya todas las
restricciones en E y posiblemente alguna de las restricciones en
I (es decir las restricciones que se consideran activas)
2. Seleccione un punto inicial x
k
que satisfaga todas las
restricciones en W
k
3. Resuelva el siguiente problema cuadrtico con restricciones de
igualdad (utilice la ecuacin 1)
( )
k
T
T T
W i
+ +
, 0
2
1
k i
k k k k
d a
d Qx c Qd d
a sujeto
Minimizar
(3)
18/18
Programacin no lineal con restricciones - Sequential Quadratic Programming
Programacin cuadrtica
Mtodo de conjunto activo
4. Si
a) Si x
k
+ d
k
es factible
i. Hacer x
k+1
= x
k
+ d
k
y volver al paso 3 con k = k+1
b) Si x
k
+ d
k
es no factible
i. Buscar el mayor
k
tal que x
k
+
k
d
k
sea factible. Utilice la siguiente ecuacin
el valor buscado es el menor de los
i
ii. Aada a W
k
la restriccin de desigualdad que se hace activa con
k
para formar
W
k+1
iii. Hacer x
k+1
= x
k
+
k
d
k
y volver al paso 3 con k = k+1
5. Si , se encontr el ptimo con respecto al conjunto de trabajo
actual
1. Calcular los correspondientes al sistema (3)
2. Si todos los son positivos, el punto x
k
es ptimo
3. En caso contrario, remueva de W
k
la restriccin correspondiente al menor
i
para formar W
k+1
y vuelva al paso 3 con k = k+1
0
k
d
0
k
d
I i
i
,
k i
k i
d a
x a
T
T
i
i
b

Potrebbero piacerti anche