Em otimiza¸c˜ao, os problemas restritos que s˜ao compostos por fun¸c˜ao obje-tivo quadr´atica e restri¸c˜oes lineares, s˜ao chamados de problemas de Programa¸c˜ao Quadr´atica. Esse tipo de problema ´e muito importante, pois eles surgem na for-mula¸c˜ao matem´atica de v´arias situa¸c˜oes pr´aticas ou ainda como subproblemas gera-dos por m´etogera-dos de programa¸c˜ao n˜ao linear como ´e o caso de Programa¸c˜ao Quadr´atica Seq¨uencial, que veremos com mais detalhes adiante.
O problema quadr´atico geral com restri¸c˜oes de igualdade e desigualdade ´e definido da seguinte forma:
(P Q)
minimizar q(x) = 12xtGx+xtd
sujeito a atix=bi i∈E = 1,2, . . . , p atix≤bi i∈I = 1,2, . . . , m sendo [ai] i∈E ∪I,x e d ∈IRn eG∈IRn×n sim´etrica.
Pode-se resolver um problema quadr´atico em um n´umero finito de itera¸c˜oes mas o qu˜ao trabalhoso ser´a para encontrar a solu¸c˜ao para esse problema depende das caracter´ısticas da fun¸c˜ao objetivo e do n´umero de restri¸c˜oes. Uma das dificuldades na resolu¸c˜ao de um problema quadr´atico ´e que esse problema pode n˜ao ter solu¸c˜ao.
Isto acontece em duas situa¸c˜oes:
• Quando a regi˜ao vi´avel ´e vazia, ou seja, quando n˜ao tem intersec¸c˜oes entre as restri¸c˜oes;
• Quando a fun¸c˜ao objetivo n˜ao ´e limitada inferiormente na regi˜ao vi´avel.
Se a matriz hessianaG´e semidefinida positiva, o problema ´e convexo, e nesse caso resolver esse tipo de problema, `as vezes n˜ao ´e mais dif´ıcil do que resolver um problema linear. No caso da matriz hessianaGser indefinida, o problema quadr´atico
´e n˜ao convexo, podendo ser mais desafiador resolver esse problema.
Primeiramente ser˜ao tratados os problemas de programa¸c˜ao quadr´atica com restri¸c˜oes de igualdade e alguns m´etodos para minimizar esse tipo de problema. Na se¸c˜ao referente a programa¸c˜ao quadr´atica com restri¸c˜oes de igualdade e desigualdade ser´a visto que os m´etodos existentes na literatura recaem no caso onde o problema
´e composto somente por restri¸c˜oes de igualdade.
E por fim vamos propor a aplica¸c˜ao do m´etodo Lagrangeano Aumentado com penalidade quadr´atica para problemas quadr´aticos convexos com restri¸c˜oes de desigualdade.
3.1 Programa¸c˜ ao Quadr´ atica com Restri¸c˜ oes de Igualdade
Iniciamos a nossa discuss˜ao pelo algoritmo para programa¸c˜ao quadr´atica, considerando o caso em que somente restri¸c˜oes de igualdade est˜ao presentes.
Considere o problema que desejamos resolver (P QE) minimizar q(x) = 12xtGx+xtd
sujeito a Ax=b
onde A∈IRm×n´e a matriz jacobiana das restri¸c˜oes definida por A= [ai]ti∈E.
Sendo o n´umero de restri¸c˜oes igual a m, e assumindo que m ≤n, supondo queA tem posto linha completo, ou seja,posto(A) =m e as restri¸c˜oes do problema (PQE) s˜ao consistentes, ent˜ao as condi¸c˜oes de Karush-Kuhn-Tucker para o problema quadr´atico com restri¸c˜oes de igualdade ´e da seguinte forma:
Teorema 3.1 Suponha quex∗´e solu¸c˜ao local de (PQE) e que satisfaz a condi¸c˜ao de qualifica¸c˜ao (LICQ), dada na defini¸c˜ao (1.18). Ent˜ao h´a um vetor de multiplicadores de Lagrange λ∗,com componentes λ∗i, i ∈ E, tal que as seguintes condi¸c˜oes s˜ao satisfeitas em (x∗, λ∗)
Gx∗+d+Atλ∗ = 0,
Ax∗−b = 0. (3.1)
A condi¸c˜ao de otimalidade de primeira ordem para x∗ ser a solu¸c˜ao do (PQE) ´e especificar qual ´e o vetor λ∗ que satisfaz o seguinte sistema de equa¸c˜oes:
"
Esse sistema de equa¸c˜oes s˜ao as condi¸c˜oes de primeira ordem (3.1), reescritas matricialmente. O vetor λ´e o vetor de multiplicadores de Lagrange.
O sistema (3.2) pode ser escrito de uma forma mais usual para imple-menta¸c˜ao computacional, fazendo
x∗ =x+p
onde x ´e uma estimativa da solu¸c˜ao e p ´e o passo desejado, substituindo em (3.2) tem-se: e substituindo em (3.3) tem-se:
" A matriz, no sistema ( 3.4), ´e chamada de matriz KKT, e o resultado seguinte prova a n˜ao-singularidade dessa matriz, para isso usa-se Z para denotar a matrizn×(n−m) cuja as colunas formam uma base para o espa¸co nulo deA. Ou seja,Z tem posto completo e AZ = 0.
Lema 3.2 Considere a matriz A com posto completo e ZtGZ positiva definida, ent˜ao a matriz KKT
Prova. Considere vetores p e v tais que satisfa¸cam o sistema homogˆeneo a seguir: "
Multiplicando a primeira equa¸c˜ao do sistema (3.5) por pt, tem-se ptGp+ (Ap)tv = 0.
Pela equa¸c˜ao (3.5) Ap = 0, ent˜ao ptGp = 0. Se Z ´e base para o espa¸co nulo deAent˜ao pode-se escrever pcomo uma combina¸c˜ao linear deZ,p=Zµpara algum vetorµ∈IRn−m assim:
0 = ptGp= (Zµ)tG(Zµ) = µtZtGZµ
como por hip´otese (ZtGZ) ´e definida positiva isso implica que µ = 0, dessa forma p=Zµ = 0, logo p= 0. Substituindo p = 0 na primeira equa¸c˜ao do sistema (3.5), obt´em-se Atv = 0, logo AAtv = 0. Como posto(AAt) = posto(A) = m, a matriz (AAt) ´e n˜ao singular e conseq¨uentemente v = 0. Assim o sistema homogˆeneo (3.5) s´o tem a solu¸c˜ao trivial, portanto a matriz KKT ´e n˜ao-singular.
Vimos que se as condi¸c˜oes (3.2) s˜ao satisfeitas, ent˜ao h´a um ´unico par de ve-tor (x∗, λ∗) que satisfaz a condi¸c˜ao de otimalidade de primeira ordem para (PQE). A condi¸c˜ao suficiente de otimalidade de segunda ordem ´e satisfeita em (x∗, λ∗) quando x∗ ´e um minimizador local estrito para (PQE).
Teorema 3.3 Considere o par de vetores (x∗, λ∗) do lema (3.2). Ent˜ao o vetor x∗
´e a solu¸c˜ao global ´unica do problema (PQE).
Prova. Seja xum ponto vi´avel, isto ´e, Ax=b e tome p=x∗−x, desde que Ax∗ =Ax=b, tem-se que e Ap= 0. Substituindo na fun¸c˜ao objetivo do problema (PQE), tem-se:
q(x) = 12xtGx+xtd
q(x∗−p) = 12(x∗−p)tG(x∗−p) +dt(x∗−p)
= 12£
x∗tGx∗−x∗tGp−ptGx∗+ptGp¤
+x∗td−ptd
= 12ptGp−ptGx∗−ptd+q(x∗).
Da condi¸c˜ao de otimalidade de primeira ordem para (PQE) tem-se Gx∗ =
−d+Atλ∗ e desde que Ap= 0, substituindo em q(x∗−p) tem-se:
q(x∗−p) = 12ptGp−pt(−d+At)−ptd+q(x∗)
= 12ptGp+ptd−(Ap)tλ∗−ptd+q(x∗)
= 12ptGp+q(x∗)
desde que,pexista dentro do espa¸co nulo deA, pode-se escreverp=Zµ, para algum vetor µ∈IRn−m, assim
q(x∗−p) = 12(Zµ)tG(Zµ) +q(x∗)
= 12µtZtGZµ+q(x∗)
Por hip´otese, ZtGZ ´e definida positiva, conclui-se que q(x)> q(x∗) exceto quando µ = 0, ou seja, quando x = x∗. Conseq¨uentemente, x∗ ´e solu¸c˜ao global ´unica de (PQE).
Na pr´oxima se¸c˜ao ser˜ao discutidos alguns m´etodos para resolver o sistema KKT ou alternativas para isso.
3.1.1 Resolvendo o Sistema KKT Fatora¸c˜ ao Sim´ etrica Indefinida
Para o caso, onde o problema (PQE), ´e n˜ao convexo, ou seja, a matrizG´e indefinida pode-se achar a solu¸c˜ao fazendo a fatoriza¸c˜ao triangular total da matriz KKT e depois fazer as substitui¸c˜oes, mas n˜ao pode-se usar o algoritmo de fatoriza¸c˜ao Cholesky, pois a matriz KKT ´e indefinida. Outra alternativa ´e usar a elimina¸c˜ao Gaussiana com pivoteamento parcial e obter as matrizes L e U, mas esse m´etodo tem a desvantagem de ignorar a simetria do sistema. A estrat´egia mais eficiente para esse caso ´e usar a Fatora¸c˜ao Sim´etrica Indefinida.
PtKP =LBLt (3.6)
onde P ´e a matriz permuta¸c˜ao,L´e a matriz triangular inferior e B ´e a matriz com blocos na diagonal, com blocos de (1x1) ou (2x2) e K a matriz a ser fatorada.
As permuta¸c˜oes sim´etricas definida pela matriz P servem para a estabili-dade num´erica dos c´alculos e para o caso em que a matriz KKT ´e esparsa, essas permuta¸c˜oes mant´em a esparcidade da mesma.
Para resolver o sistema KKT (3.2), primeiramente calcula-se a fatoriza¸c˜ao (3.6), utilizando a matriz KKT no lugar da matriz K e depois realiza a seguinte seq¨uˆencia de opera¸c˜oes para se chegar `a solu¸c˜ao:
resolva Ly =Pt