[alexandre] 8. não linear restrita

97
Programa¸ ao N˜ ao Linear com Restri¸ c˜oes Alexandre Salles da Cunha DCC-UFMG, Mar¸ co 2010 Alexandre Salles da Cunha Programa¸c˜ ao N˜ aoLinearcomRestri¸c˜oes

Upload: lapodcc

Post on 09-Jun-2015

1.115 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: [Alexandre] 8. Não Linear Restrita

Programacao Nao Linear com Restricoes

Alexandre Salles da Cunha

DCC-UFMG, Marco 2010

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 2: [Alexandre] 8. Não Linear Restrita

Definicao do Problema

Problema de Otimizacao sobre um conjunto convexo

minimize f (x) (1)

x ∈ X (2)

Vamos assumir que X 6= ∅ e um conjunto convexo.

O conjunto X e normalmente definido por um conjunto de restricoesnao lineares h(x) = 0 e g(x) ≤ 0, onde:

◮ h : Rn → R

m

◮ g : Rn → R

p

Assumimos que f ∈ C 2 : Rn → R.

Page 3: [Alexandre] 8. Não Linear Restrita

Algumas observacoes preliminares

Se f for convexa sobre X , o Problema de Otimizacao e Convexo equalquer otimo local do problema e um otimo global.

Assim como no Problema de Otimizacao Irrestrita, no Problema deOtimizacao com restricoes, esperamos que, em um ponto candidato amınimo x∗, a variacao de primeira ordem (∇f (x∗))′△x ≥ 0 sejaverificada para qualquer direcao △x viavel.

Este problema generaliza o Problema de Programacao Nao-LinearIrrestrito.

Page 4: [Alexandre] 8. Não Linear Restrita

Panorama dos Metodos que iremos discutir neste curso

Metodos Primais:◮ Metodo de Direcoes Viaveis◮ Metodo do Gradiente Projetado◮ Particularmente adequados quando o domınio e um poliedro e a funcao

objetivo e nao linear, ou quando obter uma direcao viavel ou projetarsobre o conjunto forem faceis de serem resolvidas.

Metodos baseados em Multiplicadores de Lagrange:◮ Penalidades◮ Barreiras◮ Transformam o problema com restricoes em uma serie de problemas

irrestritos, envolvendo uma alta penalidade pela violacao das restricoes.A solucao destes problemas irrestritos fornece, assintoticamente, asolucao do problema original.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 5: [Alexandre] 8. Não Linear Restrita

Condicoes de Otimalidade

Proposicao

Seja x∗ um mınimo local de f em um conjunto convexo X . Entao:

1 ∇f (x∗)′(x − x∗) ≥ 0,∀x ∈ X

2 Se f for convexa sobre X , entao a condicao acima e uma condicaosuficiente para x∗ minimizar f em X.

Prova

Parte 1 Suponha ∇f (x∗)′(x − x∗) < 0, para algum x ∈ X. Pelo Teoremado Valor Central, temos que para todo ǫ > 0, existe s ∈ [0, 1] tal que:

f (x∗ + ǫ(x − x∗)) = f (x∗) + ǫ∇f (x∗ + sǫ(x − x∗))′(x − x∗)

Pela continuidade de f , temos que para ǫ > 0 suficientemente pequeno,∇f (x∗ + sǫ(x − x∗))′(x − x∗) < 0 e entao f (x∗ + ǫ(x − x∗)) < f (x∗).Como o conjunto X e convexo, temos que x∗ + ǫ(x − x∗) e viavel paratodo ǫ ∈ [0, 1] e entao contradizemos a otimalidade de x∗.

Page 6: [Alexandre] 8. Não Linear Restrita

Condicoes de Otimalidade

Prova

Parte 2

Pela convexidade de f em X temos:

f (x) ≥ f (x∗) +∇f (x∗)′(x − x∗),∀x ∈ X

Pela parte 1 ja demonstrada temos que ∇f (x∗)(x − x∗) ≥ 0

f (x) ≥ f (x∗) +∇f (x∗)′(x − x∗) ≥ f (x∗),∀x ∈ X ,

e o resultado segue.

Page 7: [Alexandre] 8. Não Linear Restrita

Ponto estacionario

Definicao

Um ponto x∗ que satisfaz a condicao

∇f (x∗)′(x − x∗) ≥ 0,∀x ∈ X

e denominado ponto estacionario.

Observe que se x∗ e um ponto interior ou se X = Rn as condicoes

enunciadas equivalem a ∇f (x∗) = 0.

Assim sendo, estas condicoes tambem podem ser satisfeitas parapontos de maximo ou mesmo outros pontos.

Page 8: [Alexandre] 8. Não Linear Restrita

Se X nao for convexo...

Alem de serem nao suficientes, estas condicoes podem falhar

Observe no exemplo (a direita) abaixo temos que:◮ x∗ e um ponto de mınimo local, uma vez que ∇f (x∗)′△x ≥ 0 para

qualquer △x viavel,mas...◮ a condicao enunciada falha porque x − x∗ nao e uma direcao viavel,

uma vez que X nao e convexo e entao ∇f (x∗)′(x − x∗) < 0.

Page 9: [Alexandre] 8. Não Linear Restrita

Restricoes Ativas e Inativas

Normalmente, o conjunto X e definido por restricoes de igualdade edesigualdade:

hi(x) = 0 i = 1, . . . ,m

gj(x) ≤ 0 j = 1, . . . , p

Consideremos cada uma das restricoes gj(x) : j = 1, . . . , p e umponto x viavel para o problema em estudo.

Dizemos que gj(x) e ativa em x se gj (x) = 0.

Caso gj (x) < 0, gj(x) e inativa em x .

Por definicao, todas as restricoes hi (x) : i = 1, . . . ,m sao ativas.

Page 10: [Alexandre] 8. Não Linear Restrita

Otimizacao sobre um quadrante nao negativo

Considere o conjunto convexo X = {x ∈ Rn : xi ≥ 0,∀i = 1, . . . , n}.

Observe que a condicao de otimalidade ∇f (x∗)′(x − x∗) ≥ 0,∀x ∈ Xequivale a:

n∑

i=1

∂f (x∗)

∂xi

(xi − x∗i ) ≥ 0, ∀x = (x1, . . . , xn) ∈ X

Fixando direcoes convenientes, dependendo da coordenada de i de x∗i

estar ou nao na fronteira, temos que a equacao escalar anteriorimplica em:

◮∂f (x∗)

∂xi= 0, ∀i : xi > 0

◮∂f (x∗)

∂xi≥ 0, ∀i = 1, . . . , n

Page 11: [Alexandre] 8. Não Linear Restrita

Otimizacao sobre uma caixa

Como poderiam ser expressas as condicoes de otimalidade caso

X = {x ∈ Rn : ai ≤ xi ≤ bi , i = 1, . . . , n}

∂f (x∗)

∂xi

= 0 ∀i : ai < x∗i < bi (3)

∂f (x∗)

∂xi

≥ 0 ∀i : x∗i = ai (4)

∂f (x∗)

∂xi

≤ 0 ∀i : x∗i = bi (5)

Page 12: [Alexandre] 8. Não Linear Restrita

Otimizacao sobre uma caixa

Como poderiam ser expressas as condicoes de otimalidade caso

X = {x ∈ Rn : ai ≤ xi ≤ bi , i = 1, . . . , n}

∂f (x∗)

∂xi

= 0 ∀i : ai < x∗i < bi (3)

∂f (x∗)

∂xi

≥ 0 ∀i : x∗i = ai (4)

∂f (x∗)

∂xi

≤ 0 ∀i : x∗i = bi (5)

Page 13: [Alexandre] 8. Não Linear Restrita

A importancia das restricoes ativas

Exemplo

min f (x1, x2) : x1, x2 ≥ 0

No ponto x∗ de mınimo, todas as derivadas parciais ∂f (x∗)∂xi

sao naonegativas e sao nulas para as restricoes xi ≥ 0 inativas. Se todas asrestricoes forem inativas em x∗, a condicao de otimalidade equivale a∇f (x∗) = 0.

Page 14: [Alexandre] 8. Não Linear Restrita

A importancia das restricoes ativas

As restricoes ativas em x e que restringem a viabilidade nasvizinhancas de um ponto.

Desempenham papel fundamental na deducao das propriedades(condicoes necessarias e suficientes) de um ponto de mınimo local.

As restricoes inativas nao influenciam em nada a viabilidade nasvizinhancas de x .

Caso soubessemos quais sao as restricoes ativas no ponto de mınimo,poderıamos concentrar nosso estudo apenas a elas, tratando-as comorestricoes de igualdade e ignorando as restricoes inativas.

Page 15: [Alexandre] 8. Não Linear Restrita

Metodo de Direcoes Viaveis

minimize f (x)

x ∈ X

Vamos inicialmente estudar metodos de otimizacao para o problema,assumindo:

X e convexo, nao vazio

f ∈ C 1, isto e, X e continuamente diferenciavel em X .

Nao assumimos nenhuma estrutura ou caracterıstica especial aoconjunto de restricoes que determinam X , a nao as citadas acima.

Page 16: [Alexandre] 8. Não Linear Restrita

Metodos de Direcoes Viaveis

Definicao

Dado um vetor viavel x , dizemos que d e uma direcao viavel em x se d etal que x + αd ∈ X para qualquer α > 0 suficientemente pequeno.

Page 17: [Alexandre] 8. Não Linear Restrita

Metodo de Direcoes Viaveis

Um metodo nesta classe:

inicia com uma solucao x0 e gera uma sequencia {xk} de pontosviaveis, atraves da iteracao tıpica:

xk+1 = xk + αkdk

se xk nao e um ponto estacionario, entao a direcao dk escolhidasatisfaz:

∇f (xk)′dk < 0

o passo αk e escolhido de forma que xk + αkdk ∈ X .

se xk e estacionario, o metodo para (xk+1 = xk).

Vamos nos concentrar em metodos de direcoes viaveis que saometodos de descida, isto e, f (xk + αkdk) < f (xk).

Page 18: [Alexandre] 8. Não Linear Restrita

Um metodo de direcoes viaveis, de descida

Page 19: [Alexandre] 8. Não Linear Restrita

Caracterizacao da direcao viavel

Conforme ja mencionamos, no caso onde X e convexo, uma direcaoviavel dk em xk pode ser caracterizada da seguinte maneira:

dk = γ(xk − xk), γ > 0

onde xk e algum ponto viavel.

O metodo opera entao de acordo com a seguinte iteracao:

xk+1 = xk + αkdk , α ∈ [0, 1],

onde a direcao dk alem de viavel, deve ser de descida:

∇f (xk)′(xk − xk) < 0, xk ∈ X

Observe que pela convexidade de X , xk + αk(xk − xk) ∈ X paraqualquer α ∈ [0, 1].

Alem disto, se dk = γ(xk − xk) e uma direcao de descida e xk e naoestacionario, temos a garantia de existir um αk para o qualf (xk+1) < f (xk).

Page 20: [Alexandre] 8. Não Linear Restrita

Metodos de direcoes viaveis: ideias centrais

Requerem uma solucao viavel inicial (metodo de duas fases)

Definem uma direcao viavel de descida, ou concluem que o ponto eestacionario.

Implementam uma iteracao tıpica que corresponde a uma buscaunidirecional na direcao escolhida.

Podem ser vistos como uma especializacao dos metodos que vimosate anteriormente para otimizacao irrestrita.

Page 21: [Alexandre] 8. Não Linear Restrita

Metodo de Direcoes viaveis: determinacao do passo

Minimizacao exata: αk = arg min α∈[0,1]f (xk + αdk)

Armijo: Fixados escalares β, σ > 0 tais que β ∈ (0, 1) e σ ∈ (0, 1),fazemos αk = βmk , onde mk e o primeiro inteiro nao negativo m talque:

f (xk)− f (xk + βmdk) ≥ −σβm∇f (xk)′dk

Ou seja, tentamos sucessivamente os passos αk = 1, β, β2, . . . atesatisfazer a condicao acima.

Page 22: [Alexandre] 8. Não Linear Restrita

Metodos de Direcoes Viaveis: convergencia

Proposicao

Seja {xk} a sequencia gerada por um Metodo de Direcoes Viaveisxk+1 = xk + αkdk , onde as direcoes {dk} sao gradiente relacionadas e αk

e determinado atraves de minimizacao exata ou via regra de Armijo.Entao, todo ponto limite de {xk} e um ponto estacionario.

Page 23: [Alexandre] 8. Não Linear Restrita

Encontrando um ponto inicialDado o problema

minimize f (x)

hi (x) = 0 i = 1, . . . ,m

gj (x) ≤ 0 j = 1, . . . , p

criamos e resolvemos o problema artificial (fase 1)

minimizem∑

i=1

zi +

p∑

j=1

yj

hi(x) + zi = 0 i = 1, . . . ,m

gj (x)− yj ≤ 0 j = 1, . . . , p

yj ≥ 0 j = 1, . . . , p

Iniciamos o metodo com x = (0, . . . , 0) e o vetor y e z calculadospara viabilizar o programa acima. Ao final da fase 1, caso a funcaoobjetivo seja nula, dispomos de um ponto inicial viavel para oprograma original.

Page 24: [Alexandre] 8. Não Linear Restrita

Metodo do Gradiente Condicional

Os metodos nesta classe se diferenciam em como a direcao viavel, dedescida e obtida. Um dos metodos mais usados nesta classe e o GradienteCondicional:

O problema de obter uma direcao viavel com propriedade de descidaem xk pode ser formulado como:

min ∇f (xk)′(x − xk)

x ∈ X

Se X e compacto, o programa acima e limitado. Caso X nao sejalimitado, impomos restricoes lineares do tipo ‖x‖∞ ≤ 1 e resolvemoso programa.

Se o valor otimo do programa auxiliar for negativo, encontramos umadirecao viavel, de descida.

Page 25: [Alexandre] 8. Não Linear Restrita

Obtendo uma direcao viavel

Observe que o programa auxiliar envolve o mesmo conjunto derestricoes que do original, mas a funcao objetivo e linear.

No caso das restricoes que definem X serem nao lineares, o programaauxiliar e tao complicado quanto o programa original.

Os metodos de direcoes viaveis, em particular o do GradienteCondicional, sao particularmente interessantes quando X e umpoliedro, uma vez que o subproblema e um Programa Linear.

Page 26: [Alexandre] 8. Não Linear Restrita

Gradiente Condicional quando X e um poliedro

Se o metodo Simplex e usado para resolver o subproblema, xk sempree um ponto extremo de X .Por que a direcao dk que resolve o subproblema nao e contraria a∇f (xk), se xk for um ponto interior ?

Page 27: [Alexandre] 8. Não Linear Restrita

Metodo do Gradiente Condicional: exemplo numerico

Problema Quadratico

minimize f (x) =1

2(x2

1 + x22 + 0.1x2

3 ) + 0.55x3

x1 + x2 + x3 = 1

x ≥ 0

Subproblema associado - determinacao da direcao viavel, de descida

minimize (xk1 )x1 + (xk

2 )x2 + (0.1xk3 + 0.55)x3 +

+ (−(xk1 )2 − (xk

2 )2 − (xk3 )(0.1xk

3 + 0.55)

x1 + x2 + x3 = 1

x ≥ 0

que pode ser resolvido de forma gulosa.gradcondicional.sci

Page 28: [Alexandre] 8. Não Linear Restrita

Metodo do Gradiente Condicional: exemplo numerico

Vamos implementar o metodo considerando:

x0 = 13(1, 1, 1)′ e tambem x0 = (1, 0, 0)′

Passo de Armijo.

Condicao de parada definida na resolucao do subproblema:

∇f (xk)′dk

‖∇f (xk)‖‖dk‖≥ −1.0E − 4

Page 29: [Alexandre] 8. Não Linear Restrita

Taxa de Convergencia do Metodo do Gradiente Condicional

Se a regra de Armijo ou aminimizacao exata forem empregadaspara se determinar o αk , pode-sedemonstrar que as direcoes geradassao gradiente relacionadas e, entao,todo ponto limite da sequencia geradapelo metodo e um ponto estacionario.

Apesar disto, a taxa de convergenciado metodo e baixa: os pontos xk

gerados sao tais que a direcao dk equase ortogonal a direcao que levariaao otimo, a partir do ponto xk

(zig-zag). Veja a figura:

Page 30: [Alexandre] 8. Não Linear Restrita

Metodo do Gradiente Projetado

Mover ao longo da direcao contraria ao gradiente nao garante aviabilidade do ponto obtido, caso o ponto de origem esteja nafronteira do conjunto de viabilidade.

O Metodo do Gradiente Projetado consiste em projetar o vetorcontrario ao gradiente no conjunto X , de forma que aprimore afuncao objetivo e garanta viabilidade.

Do ponto de vista computacional, a principal desvantagem do metodoe o elevando custo associado a projecao, em cada iteracao.

O metodo e uma boa alternativa quando a operacao de projecao podeser feita com baixo custo computacional.

Page 31: [Alexandre] 8. Não Linear Restrita

O problema de projetar z ∈ Rn em X convexo, fechado

Projecao

Consiste em encontrar um vetor x∗ ∈ X , cuja distancia a z seja mınima:

minimize ‖z − x‖

x ∈ X

Alguns fatos sobre a projecao

Para todo z ∈ Rn existe um x∗ ∈ X unico que minimiza ‖z − x‖

sobre todo x ∈ X . Este vetor e chamado projecao de z em X .

Usualmente denominamos x∗ = [z ]+.

Dado z ∈ Rn, x∗ = [z ]+ se e somente se

(z − x∗)(x − x∗) ≤ 0,∀x ∈ X .

No caso de X ser um subespaco, x∗ ∈ X e a projecao de z em X se esomente se z − x∗ for ortogonal a X , isto e: (z − x∗)x = 0,∀x ∈ X .

Page 32: [Alexandre] 8. Não Linear Restrita

Gradiente projetado

Vamos supor que o nosso problema de otimizacao seja

minimize f (x)

Ax ≤ b

Ex = e

onde A ∈ Rm×n,E ∈ R

l×n, b ∈ Rm×1, e ∈ R

l×1 eX = {x ∈ R

n : Ax ≤ b,Ex = e}.

e que disponhamos de um ponto viavel xk na fronteira do conjunto deviabilidade X .

Assuma entao que A1xk = b1 e A2x

k < b2, onde A′ = [A′1,A

′2],

b′ = [b′1, b

′2].

Suponha tambem que f seja diferenciavel em xk .

Como fazemos para projetar −∇f (xk) na face de X ativa em xk ?

Page 33: [Alexandre] 8. Não Linear Restrita

Resolvemos o seguinte Problema de Otimizacao Quadratica

minimize ‖x − (−∇f (xk))‖

A1x = b1

A2x ≤ b2

Ex = e

cuja solucao (obtida analiticamente) e x∗ = −P∇f (xk) onde a matriz P(chamada de matriz de projecao) e dada por:

P = I −M ′(MM ′)−1M

e a matriz M corresponde as linhas das restricoes ativas em xk :

M ′ = [A′1,E

′].

Page 34: [Alexandre] 8. Não Linear Restrita

Matrizes de Projecao

Definicao

Assuma que P ∈ Rn×n seja uma matriz quadrada de ordem n. P e

chamada matriz de projecao se:

P = P ′

PP = P

Proposicao

Seja P uma matriz quadrada de ordem n. Entao, o seguinte e verdadeiro:

1 Se P e uma matriz de projecao, entao P e positiva semi definda.

2 P e uma matriz de projecao se e somente se I − P e uma matriz deprojecao.

3 Seja P uma matriz de projecao e Q = I − P. Entao os subespacoslineares L = {Px : x ∈ R

n} e L⊥ = {Qx : x ∈ Rn} sao ortogonais.

Alem disto, qualquer x ∈ Rn pode ser escrito como x = p + q onde

p ∈ L, q ∈ L⊥, atraves de p, q unicos.

Page 35: [Alexandre] 8. Não Linear Restrita

Matrizes de Projecao

Prova1 Seja x ∈ R

n um vetor arbitrario. Entao, se P e uma matriz deprojecao, x ′Px = x ′PPx = x ′P ′Px = ‖Px‖2 ≥ 0, logo P e positivasemidefinida.

2 Obvio.

3 Claramente L,L⊥ sao subespacos lineares.Uma vez que P ′Q = P ′(I − P) = P − P ′P = 0, L,L⊥ sao de fatoortogonais.(Unicidade) suponha que x = p′ + q′ e que x = p + q. Entaosubtraindo a primeira da segunda temos p − p′ = qprime − q. Umavez que L ∩ L⊥ = 0, p − p′ = q′ − q = 0 e a representacao e unica.

Page 36: [Alexandre] 8. Não Linear Restrita

Interpretacao

Dado z ∈ Rn temos que 〈(Pz)′, (I − P)z〉 = 0. Ou seja, a aplicacao

Pz projeta z no espaco ortogonal ao da aplicacao Qz = (I − P)z .

Assim sendo podemos escrever que z e a soma direta de Pz e Qz ouseja, z = Pz ⊕ Qz .

Page 37: [Alexandre] 8. Não Linear Restrita

Gradiente Projetado - Problema com restricoes lineares

minimize f (x)

Ax ≤ b

Ex = e

onde A ∈ Rm×n,E ∈ R

l×n, b ∈ Rm×1, e ∈ R

l×1 eX = {x ∈ R

n : Ax ≤ b,Ex = e}.

Ideia central

Dado xk , se movemos na direcao −∇f (xk), podemos perderviabilidade.

Para preservar viabilidade, projetamos −∇f (xk) na face ativa de Xativa (em relacao a xk , usando uma matriz de projecao P adequada)e nos movemos na direcao dk = −P∇f (xk).

Page 38: [Alexandre] 8. Não Linear Restrita

Caracterizacao de Direcoes Viaveis

Proposicao

Considere o poliedro X = {x ∈ Rn : Ax ≤ b,Ex = e} que definimos.

Suponha que xk ∈ X e queA1x

k = b1,A2xk < b2,A

′ = [A′1,A

′2], b

′ = [b′1, b

′2].

Entao, um vetor dk e viavel em xk se e somente se A1dk ≤ 0,Edk = 0.

(A demonstracao e obvia).

Page 39: [Alexandre] 8. Não Linear Restrita

Gradiente projetado - X e um poliedro

Proposicao

Considere o problema minx∈X definido acima. Assuma que xk seja umponto viavel tal que A1x

k = b1 e A2xk < b2, onde A′ = [A′

1,A′2],

b′ = [b′1, b

′2]. Suponha tambem, que f seja diferenciavel em xk . Entao:

1 Se P e uma matriz de projecao tal que P∇f (xk) 6= 0, entaodk = −P∇f (xk) e uma direcao de descida de f em xk .

2 Alem disto, se M ′ = [A′1,E

′] possui posto completo e seP = I −M ′(MM ′)−1M, entao dk e uma direcao de descida, viavel.

Page 40: [Alexandre] 8. Não Linear Restrita

Gradiente projetado - X e um poliedro

Prova

1 (−P∇f (xk) e direcao de descida)Observe que: ∇f (xk)′dk = −∇f (xk)′P∇f (xk) =−∇f (xk)′P ′P∇f (xk) = −‖P∇f (xk)‖ < 0, uma vez que P e positivasemi-definda e, pelo enunciado ∇f (xk)′P 6= 0. Entao dk e umadirecao de descida.

2 (−P∇f (xk) e direcao viavel)Se M possui posto completo, (MM ′) e nao singular e entao:

P = I −M ′(MM ′)−1M

MP = M −MM ′(MM ′)−1M = M − IM = 0

Logo Mdk = −MP∇f (xk) = 0

Se Mdk = 0 temos A1dk = 0,Edk = 0 e dk e viavel.

Page 41: [Alexandre] 8. Não Linear Restrita

Interpretacao Geometrica do Metodo

Uma vez que MP = 0 temos que A1P = 0, EP = 0 e entao a matrizde projecao P projeta cada linha de A1 e de E no vetor nulo.

Entretanto, as linhas de A1 e de E sao os gradientes das restricoesativas em xk , a matriz P e na verdade a matriz que projeta osgradientes das restricoes ativas em xk no vetor zero.

Assim sendo, P∇f (xk) corresponde a projecao de ∇f (xk) no espaconulo das restricoes ativas.Veja: MP∇f (xk) = 0, logo, P∇f (xk) ∈ N (M)

Page 42: [Alexandre] 8. Não Linear Restrita

Teoria de Multiplicadores de Lagrange

Vamos considerar os problemas de otimizacao definidos por restricoes deigualdade:

minimize f (x)

hi (x) = 0 i = 1, . . . ,m

onde f (x) : Rn → R, hi(x) : R

n → R,∀i = 1, . . . ,m sao funcoescontinuamente diferenciaveis.

Condicoes Necessarias de Otimalidade

O nosso principal resultado e o seguinte: se x∗ e um ponto de mınimolocal, entao existem escalares λi : i = 1, . . . ,m, denominadosMultiplicadores de Lagrange tais que vale a seguinte equacao vetorial:

∇f (x∗) +

m∑

i=1

λi∇hi(x∗) = 0

Page 43: [Alexandre] 8. Não Linear Restrita

Interpretando este resultado

∇f (x∗) +m∑

i=1

λi∇hi(x∗) = 0

O gradiente da funcao objetivo ∇f (x∗) pertence ao subespaco geradopelo gradiente ∇hi(x

∗) das restricoes ativas em x∗.

Exemplo

min x1 + x2

x21 + x2

2 = 2

Page 44: [Alexandre] 8. Não Linear Restrita

Interpretando este resultado

Definicao

Definimos o subespaco de varicoes nulas de primeira ordem, isto e, osubespaco para o qual o vetor x = x∗ +△x satisfaz as restricoes h(x) = 0ate a primeira ordem, como:

V (x∗) = {y : ∇hi (x∗)′y = 0, i = 1, . . . ,m}

Tome y ∈ V (x∗);

Uma vez que ∇f (x∗) +∑m

i=1 λi∇hi (x∗) = 0, temos que

∇f (x∗)′y +∑m

i=1 λi∇hi(x∗)′y = 0 e logo ∇f (x∗)′y = 0.

Ou seja, ∇f (x∗) ⊥ V (x∗). Ou seja, o gradiente de f em x∗ eortogonal ao espaco das direcoes viaveis que geram variacao deprimeira ordem nula nas restricoes.

Este resultado e analago a condicao ∇f (x∗) = 0 para OtimizacaoIrrestrita.

Page 45: [Alexandre] 8. Não Linear Restrita

Formalizando e demonstrando o resultado

Proposicao

Seja x∗ um ponto de mınimo local de f sujeito as restricoes h(x) = 0.Assuma que os gradientes ∇h1(x), . . . ,∇hm(x) sejam li em x∗.

1 Entao, existe λ∗ = (λ∗1, . . . , λ

∗m)′ unico, tal que:

∇f (x∗) +m∑

i=1

λ∗i ∇hi(x

∗) = 0

2 Se f e h forem duas vezes continuamente diferenciaveis, temos que

y ′

(

∇2f (x∗) +

m∑

i=1

λ∗i ∇

2hi(x∗)

)

y ≥ 0,∀y ∈ V (x∗) onde

V (x∗) = {y : ∇hi (x∗)′y = 0, i = 1, . . . ,m}

denota o subespaco de primeira ordem de variacoes viaveis de h.

Page 46: [Alexandre] 8. Não Linear Restrita

Um problema sem multiplicadores de LagrangeAntes de provar este resultado, vamos estudar este exemplo:

minimize f (x) = x1 + x2 (6)

h1(x) = (x1 − 1)2 + x22 − 1 = 0 (7)

h2(x) = (x1 − 2)2 + x22 − 4 = 0 (8)

Observe que o unico ponto viavel e (0, 0) e que neste ponto os gradientesde h1 e h2 sao ld, nao permitindo escrever o gradiente de f em R

2.

Page 47: [Alexandre] 8. Não Linear Restrita

Pontos regulares

Definicao

Dizemos que um ponto x e regular se ∇hi (x), . . . ,∇hm(x) sao linearmenteindependentes em x .

No exemplo anterior, o ponto otimo nao e regular.

Page 48: [Alexandre] 8. Não Linear Restrita

Demonstracao do Teorema dos Multiplicadores de

Lagrange

A prova se baseia na aplicacao do metodo de penalidades. Basicamentesuas ideias centrais sao:

Relaxamos as restricoes do problema

Adicionamos estas restricoes a funcao objetivo do problema,multiplicando cada restricao por uma penalidade.

Aplicamos as condicoes necessarias de primeira e segunda orgem aoproblema relaxado e

Tomamos o limite destas condicoes, na medida em que as penalidadescrescem.

Page 49: [Alexandre] 8. Não Linear Restrita

Prova - Metodo de Penalidades

Funcao de custo penalizada

F k(x) = f (x) +k

2‖h(x)‖2 +

α

2‖x − x∗‖2, k = 1, 2, . . .

onde:

x∗: e um mınimo local de f (x) : h(x) = 0.

O termo k2‖h(x)‖2 penaliza a violacao das restricoes

O termo α2 ‖x − x∗‖2 e inserido para facilitar a prova, garantindo que

x∗ e um mınimo local estrito de f (x)+ α2 ‖x − x∗‖2 sujeito a h(x) = 0.

Page 50: [Alexandre] 8. Não Linear Restrita

Prova - Metodo de Penalidades

Dado que x∗ e um mınimo local do problema, e possıvel escolherǫ > 0 tal que f (x∗) ≤ f (x),∀x ∈ S ondeS = {x : h(x) = 0; ‖x − x∗‖ ≤ ǫ}.

Entao vamos assumir que xk resolve o seguinte problema:

minimize F k(x)

x ∈ S

Observe que este otimizador xk existe, uma vez que S e compacto.

Vamos mostrar agora que {xk} converge para x∗.

Page 51: [Alexandre] 8. Não Linear Restrita

{xk} converge para x∗

Para todo k temos:

F k(xk) = f (xk) + k2‖h(x)‖2 + α

2 ‖xk − x∗‖

≤ F k(x∗) otimal. de xk

= f (x∗) ja que h(x∗) = 0

Observe que f (xk) e limitada em S .

Asssim sendo, o lado esquerdo da desigualdade acima precisa ficarlimitado quando k →∞

Para que isto ocorra, o termos k2‖h(x)‖2 precisa assumir valor finito

quando k →∞.

Logo, limk→∞ ‖h(x)‖ = 0.

Entao todo ponto limite x de {xk} satisfaz f (x)+ α2 ‖x − x∗‖ ≤ f (x∗).

Uma vez que x , x∗ ∈ S e x e viavel e pela otimalidade de x∗, isto ef (x∗)− f (x), ‖x − x∗‖ = 0. Logo x = x∗.

Page 52: [Alexandre] 8. Não Linear Restrita

Observacoes

Note que xk e um ponto interior a S para k suficientemente grande.

Por este motivo, a partir deste valor suficientemente grande de k, xk

e um mınimo local do problema irrestrito que consiste em minimizarF k(x).

Note tambem que ja dispomos de um algoritmo para obter x .

Vamos provar o Teorema dos Multiplicadores de Lagrange, aplicandoas condicoes necessarias de primeira ordem (irrestritas) a F k(x) emxk .

Page 53: [Alexandre] 8. Não Linear Restrita

Obtendo λ∗

Aplicando as CNPO a F k(xk), temos:

0 = ∇F k(xk) = ∇f (xk) + k∇h(xk)h(xk) + α(xk − x∗) (9)

Pelo enunciado, temos que ∇h(x∗) possui posto completo, igual am < n. Por continuidade, existe k suficientemente grande para o qualo posto de ∇h(xk) tambem e m. Logo [∇h(xk)′∇h(xk)]−1 e naosingular.

Pre multiplique (9) por [∇h(xk)′∇h(xk)]−1 e obtenha:

kh(xk) = −[∇h(xk)′∇h(xk)]−1∇h(xk)′(

∇f (xk) + α(xk − x∗))

Sabemos que k →∞, xk → x∗ e kh(xk) converge para um valorfinito. Denonine entao por

λ∗ = [∇h(x∗)′∇h(x∗)]−1∇h(x∗)′∇f (x∗)

Tome o limite em (9) quando k →∞ e obtenha:

∇f (x∗) +∇h(x∗)λ∗ = 0

Page 54: [Alexandre] 8. Não Linear Restrita

Vamos agora provar as condicoes de 2a. ordem

Aplicando as CNSO a F k(xk) temos (diferenciando (9)) que a matriz:

∇2F k(xk) = ∇2f (xk)+k∇h(xk)∇h(xk)′+km∑

i=1

hi (xk)∇2hi (x

k)+αI

(10)e semi-positiva definida, para todo k suficientemente grande e α > 0.

Tome qualquer y ∈ V (x∗) isto e y : ∇h(x∗)′y = 0 e considere que yk

seja a projecao de y no espaco nulo de ∇h(xk)′, isto e:

(I − P)y = yk = y −∇h(xk)[∇h(xk)′∇h(xk)]−1∇h(xk)y

As condicoes necessarias de primeira ordem garantem que∇h(xk)′yk = 0 e como ∇2F k(xk) e semi-positiva definida, temos:

0 ≤ (yk)′∇2F k(xk)yk

0 ≤ (yk)′(

∇2f (xk) + k∑m

i=1 hi (xk)∇2hi(x

k))

yk + α‖yk‖2

(11)

Page 55: [Alexandre] 8. Não Linear Restrita

Condicoes de 2a. ordem - continuacao

Uma vez que:◮ khi(x

k)→ λi

◮ xk → x∗

◮ ∇h(x∗)′y = 0

temos que yk → y e entao temos:

0 ≤ y ′

(

∇2f (x∗) +

m∑

i=1

λ∗i∇

2hi(x∗)

)

y + α‖y‖2 (12)

Uma vez que α > 0 pode ser arbitrariamente pequeno, temos:

0 ≤ y ′

(

∇2f (x∗) +

m∑

i=1

λ∗i ∇

2hi (x∗)

)

y , ∀y ∈ V (x∗) (13)

e a prova esta completa.

Page 56: [Alexandre] 8. Não Linear Restrita

A Funcao Lagrangeana

Definicao

Considere a funcao Lagrangeana L : Rn+m → R definida como:

L(x , λ) := f (x) +m∑

i=1

λihi(x).

Observe que as condicoes necessarias de Primeira Ordem, de ViabilidadePrimal (hi (x) = 0,∀i = 1, . . . ,m) e as condicoes necessarias de segundaordem podem ser escritas em termos de L(x , λ) como:

∇xL(x∗, λ∗) = 0⇔ ∇f (x∗) +∑m

i=1 λ∗i ∇hi(x

∗) = 0

∇λL(x∗, λ∗) = 0⇔ hi (x) = 0,∀i = 1, . . . ,m (viabilidade)

y ′∇2xxL(x∗, λ∗)y ≥ 0, ∀y ∈ V (x∗) ⇔

y ′

(

∇2f (x∗) +

m∑

i=1

λ∗i∇

2hi (x∗)

)

y

Page 57: [Alexandre] 8. Não Linear Restrita

A funcao Lagrangena

L(x , λ) := f (x) +

m∑

i=1

λihi(x).

Todo mınimo local regular deve entao satisfazer o sistema de equacoes emn + m variaveis dado por:

∇xL(x∗, λ∗) = 0

∇λL(x∗, λ∗) = 0

Cabe salientar que nem todo ponto que satisfizer o sistema acima e umponto de mınimo (recorde nossa experiencia com Otimizacao Irrestrita).Um ponto de maximo pode tambem satisfazer o sistema acima.

Page 58: [Alexandre] 8. Não Linear Restrita

Funcao Lagrangeana - Exemplo

minimize1

2

(

x21 + x2

2 + x23

)

x1 + x2 + x3 = 3

Consideremos o vetor (x∗, λ∗) = (1, 1, 1,−1)′

Observe que ∇h(x∗) = (1, 1, 1)′ (e li), logo o ponto e regular.

Observe que ∇f (x∗)′ + λ∗h(x∗)′ = (1, 1, 1) − 1(1, 1, 1) = 0, logo ascondicoes necessarias de primeira ordem sao satisfeitas.

Uma vez que ∇2f (x∗) = diag(1) e ∇2h(x) = 03×3, temos quex ′∇2f (x∗)x > 0,∀x ∈ R

n, em particular para y ∈ V (x∗).

Portanto x∗ e um mınimo global para o problema.

Page 59: [Alexandre] 8. Não Linear Restrita

Interpretacao do uso da Funcao Langeana

Criamos a funcao Lagrangeana para obter um modelo irrestrito, cujoobjetivo coincide com o objetivo do problema original para qualquersolucao viavel.

Para qualquer valor dos multiplicadores λi , um otimo x∗ do problemarelaxado deve ser um ponto estacionario de L(·, λ). Esta e a condicaoassociada a ∇xL(x∗, λ∗) = 0.

Impor as condicoes ∇λL(x∗, λ∗) implica em restringir os pontosestacionarios admissıveis de L(x∗, λ∗) aqueles que satisfazem asrestricoes do problema original.

Assim sendo, se um ponto x∗ satisfizer as condicoes de pontoestacionario (em x , λ) para o problema relaxado com multiplicadoresfixados em λ∗, ele deve ser viavel e L(x∗, λ∗) = f (x∗).

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 60: [Alexandre] 8. Não Linear Restrita

Funcao Lagrangeana - Exemplo

minimize −1

2

(

x21 + x2

2 + x23

)

x1 + x2 + x3 = 3

Este problema admite mınimo ?

Consideremos agora o vetor (x∗, λ∗) = (1, 1, 1, 1)′

∇h(x∗) = (1, 1, 1)′ e o ponto e regular.

Observe que ∇f (x∗)′ + λ∗h(x∗)′ = (−1,−1,−1) + (1, 1, 1) = 0, logoas condicoes necessarias de primeira ordem sao satisfeitas.

Uma vez que ∇2f (x∗) = diag(−1) e ∇2h(x) = 03×3, as condicoesnecessarias de segunda ordem nao sao satisfeitas.

O conjunto X nao e compacto.

Page 61: [Alexandre] 8. Não Linear Restrita

Condicoes Suficientes de Otimalidade

Proposicao - Prop 3.2.1

(Condicoes Suficientes de Otimalidade)Assuma que f e h sejam funcoes duas vezes diferenciaveis e seja x∗ ∈ R

n eλ ∈ R

m satisfazendo:

1 ∇xL(x∗, λ∗) = 0, ∇λL(x∗, λ∗) = 0

2 y ′∇2xxL(x∗, λ∗)y > 0 para todo y 6= 0,∇h(x∗)′y = 0.

Entao:

x∗ e um mınimo local estrito de f sujeito a h(x) = 0.

De fato, existem γ > 0 e ǫ > 0 tais que: f (x) ≥ f (x∗) + γ2 ||x − x∗||2

para qualquer x : h(x) = 0 e ||x − x∗|| ≤ ǫ.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 62: [Alexandre] 8. Não Linear Restrita

Exemplo

min −(x1x2 + x1x3 + x2x3)

x1 + x2 + x3 = 3

Funcao Lagrangeana

L(x , λ) = −(x1x2 + x1x3 + x2x3) + λ(x1 + x2 + x3 − 3)

CNPO: ∇xL(x∗, λ∗) = 0,∇λL(x∗, λ∗) = 0 que implica em:

−x∗2 − x∗

3 + λ∗ = 0

−x∗1 − x∗

3 + λ∗ = 0

−x∗1 − x∗

2 + λ∗ = 0

x∗1 + x∗

2 + x∗3 = 0

cuja solucao unica e (x∗, λ∗) = (1, 1, 1, 2)Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 63: [Alexandre] 8. Não Linear Restrita

Exemplo - continua

Condicoes Suficientes de Otimalidade:

∇2xxL(x∗, λ∗) =

0 −1 −1−1 0 −1−1 −1 0

Observacoes:

∇2xxL(x∗, λ∗) e semi-positiva definida.

Entretanto, para os vetores y : ∇h(x∗)′y = 0 temos:◮ y : ∇h(x∗)′y = 0→ y1 + y2 + y3 = 0.◮ y ′∇2

xxL(x∗, λ∗)y = −y1(y2 + y3)− y2(y1 + y3)− y3(y1 + y2) =y21 + y2

2 + y23 > 0.

Logo, para os y : ∇h(x∗)′y = 0, ∇2xxL(x∗, λ∗) e positiva definida e as

condicoes de segunda ordem sao verificadas.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 64: [Alexandre] 8. Não Linear Restrita

Demonstracao das Condicoes Suficientes de Otimalidade

O entendimento da demonstracao da suficiencia destas condicoes efundamental para entender porque os metodos que iremos estudarfuncionam.

Vamos usar uma funcao denominada Funcao LagrangeanaAumentada que nada mais e que a Funcao Lagrangena de umProblema de Otimizacao similar ao problema original, modificadoapenas pela sua funcao objetivo, que passa a incorporar umapenalidade pela violacao das restricoes h(x) = 0.

Antes de demonstrar as condicoes suficientes, precisamos de algunsresultados auxiliares.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 65: [Alexandre] 8. Não Linear Restrita

Alguns resultados auxiliares

Teorema de Bolzano-Weierstrass

Toda sequencia limitada no conjunto Rn possui uma subsequencia

convergente.

Nao negatividade de A′A

Seja A uma matriz m × n. Entao a matriz simetrica A′A e uma matrizpositiva semidefinida.

Lema Auxiliar

Sejam P e Q duas matrizes simetricas. Assuma que Q seja semi-positivadefinida e que P e positiva definida no espaco nulo de Q. Isto e, x ′Px > 0para qualquer x : Qx = 0 ou, equivalentemente x : x ′Qx = 0. Entao existeum escalar c tal que P + cQ e positiva definida para qualquer c > c .

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 66: [Alexandre] 8. Não Linear Restrita

Demonstracao do Lema Auxiliar

Ideia da prova: vamos assumir o contrario e obter uma contradicao.

Assuma entao que o resultado enunciado nao vale. Entao, paraqualquer inteiro k, existe um vetor xk , ||xK || = 1 tal que:

(xk)′Pxk + k(xk)′Qxk ≤ 0

Uma vez que ||xk || = 1, a sequencia {xk} e limitada e pelo Teoremade Bolzano-Weierstrass, existe uma subsequencia {xk}k∈K queconverge para algum vetor x .

Tomando o limite supremo da desigualdade acima temos:

limk→∞,k∈K

{

(xk)′Pxk + k(xk)′Qxk}

≤ 0 →

x ′Px + limk→∞,k∈K

{

k(xk)′Qxk}

≤ 0

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 67: [Alexandre] 8. Não Linear Restrita

Demonstracao do Lema auxiliar - continua

x ′Px + limk→∞,k∈K

{

k(xk)′Qxk}

≤ 0

Para que o lado esquerdo seja limitado superiormente (≤ 0), temosque ter k(xk)′Qxk → 0.

Uma vez que a matriz Q e nao negativa e k →∞, isto so ocorre se(xk)Qxk → 0.

Logo limk→∞,i∈K (xk)′Qxk = x ′Qx = 0 e consequentementex ′Px ≤ 0.

Portanto, x e tal que Qx = 0 (x pertence ao nulo de Q).

Logo x ′Px > 0 (pelo proprio teorema) e temos uma contradicao !

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 68: [Alexandre] 8. Não Linear Restrita

O Metodo do Lagrangeano Aumentado

Funcao Lagrangeana Aumentada

Lc(x , λ) = f (x) + λ′h(x) +c

2||h(x)||2

onde c e um escalar positivo.

Observe que:

A funcao Lc(x , λ) corresponde a funcao Lagrangeana para o seguinteproblema:

min f (x) +c

2||h(x)||2

h(x) = 0

Minimizar este problema equivale a minimizar f (x) : h(x) = 0.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 69: [Alexandre] 8. Não Linear Restrita

Avaliando Lc(x , λ) e suas derivadas

Lc(x , λ) = f (x) + λ′h(x) +c

2||h(x)||2

Primeira derivada de Lc em relacao a x

∇xLc (x , λ) = ∇f (x) +∑m

i=1 λi∇hi(x) + c∑m

i=1 hi(x)∇hi (x)

Segunda derivada de Lc em relacao a x

∇2xxLc(x , λ) =

∇2f (x) +

m∑

i=1

λi∇2hi(x) + c

m∑

i=1

hi (x)∇2hi(x) + c∇h(x)∇h(x)′

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 70: [Alexandre] 8. Não Linear Restrita

Impondo as condicoes necessarias para x∗, λ∗

Se x∗, λ∗ satisfizerem as condicoes necessarias de 1a. ordem:

∇xLc (x∗, λ∗) = ∇f (x∗) +

m∑

i=1

λi∇hi(x∗) + c

m∑

i=1

hi(x∗)∇hi(x

∗)

= ∇f (x∗) +

m∑

i=1

λi∇hi(x∗) = ∇xL(x∗, λ∗) = 0

∇2xxLc (x

∗, λ∗) =

∇2f (x∗) +

m∑

i=1

λi∇2hi (x

∗) + c

m∑

i=1

hi (x∗)∇2hi (x

∗) + c∇h(x∗)∇h(x∗)′ =

∇2f (x∗) +

m∑

i=1

λi∇2hi (x

∗) + c∇h(x∗)∇h(x∗)′ =

∇2xxL(x∗, λ∗) + c∇h(x∗)∇h(x∗)′

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 71: [Alexandre] 8. Não Linear Restrita

Se as condicoes suficientes de 2a. ordem forem impostas

Vamos assumir que (condicoes suficientes descritas no Teorema) paraqualquer y ∈ R

m : ∇h(x∗)′y = 0 (ou y ′∇h(x∗)∇h(x∗)′y = 0) tenhamos:

y ′(

∇2xxL(x∗, λ∗)

)

y > 0

Observe que:

Aplicando o Lema Auxiliar, fazendo P = ∇2xxL(x∗, λ∗) e

Q = ∇h(x∗)∇h(x∗)′ (esta matriz e semipositiva definida), existe ctal que ∇xxLc(x

∗, λ∗) e postivida definida.

Usando as condicoes suficientes de otimalidade para otimizacaoirrestrita, concluımos que para c > c , x∗ e um otimo local irrestritode Lc (·, λ

∗).

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 72: [Alexandre] 8. Não Linear Restrita

Se as condicoes suficientes de 2a. ordem forem impostas

Entao x∗ e um otimo local para Lc (·, λ∗)

Em particular, existem γ > 0 e ǫ > 0 tais que

Lc(x , λ∗) ≥ Lc (x∗, λ∗) +

γ

2||x − x∗||2, ||x − x∗|| < ǫ

Observe que para todo x viavel (h(x) = 0) temos Lc (x , λ∗) = f (x) e∇λL(x∗, λ∗) = h(x∗) = 0

Finalmente, temos que:

f (x) = Lc (x , λ∗) ≥ Lc(x∗, λ∗)+

γ

2||x−x∗||2 = f (x∗)+

γ

2||x−x∗||2 ≥ f (x∗)

para qualquer x : h(x) = 0 e ||x − x∗|| < ǫ e a prova esta completa !

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 73: [Alexandre] 8. Não Linear Restrita

Metodos de Penalidade e Lagrangeano Aumentado

min f (x)

h(x) = 0

x ∈ X

Vamos considerar o caso onde X = Rn.

Vamos criar a funcao Lagrangena Aumentada associada ao Programaacima, para c > 0

Lc(x , λ) = f (x) + λ′h(x) +c

2||h(x)||2.

Observe que o parametro c controla a severidade da penalizacao daviolacao das restricoes.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 74: [Alexandre] 8. Não Linear Restrita

Usando Lc(x , λ) em algoritmos

Dois mecanismos sao normalmente usados para, atraves da minimizacaoirrestrita de Lc(·, λ) fornecer pontos proximos a x∗, um minimizador(local) de f (x) : h(x) = 0.

1 Fazemos λ = λ∗. Conforme mostramos, se c e maior que um valor c ,entao existem γ > 0, ǫ > 0 tais que:

Lc (x , λ∗) ≥ Lc(x∗, λ∗) +

γ

2||x − x∗||2,∀x : ||x − x∗|| < ǫ

Este resultado sugere que se λ ≈ λ∗, uma razoavel aproximacao de x∗

deve ser obtida via minimizacao irrestrita de Lc(· · · , λ).

2 Tomamos um valor bastante alto de c . Nestes casos, o custo dainviabilidade e elevado e entao o mınimo irrestrito de Lc(·, λ) deve serquase viavel. Uma vez que Lc (x , λ) = f (x) para todo x viavel,devemos esperar Lc(x , λ) ≈ f (x) para x proximo da viabilidade.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 75: [Alexandre] 8. Não Linear Restrita

Exemplo - abordagem 1

min1

2

(

x21 + x2

2

)

x1 = 1

onde o vetor primal-dual otimo edado por (x∗, λ∗) = (1, 0,−1).

Lc(x , λ) = 12

(

x21 + x2

2

)

+ λ(x1 − 1) + c2(x1 − 1)2, para c > 0.

Impondo ∇xLc (x , λ) = 0, o mınimo irrestrito possui coordenadas:◮ x1(c , λ) = c−λ

c+1 . Logo para c > 0, temoslimλ→λ∗ x1(λ, c) = x1(−1, c) = 1. Logo limλ→λ∗ x2(λ, c) = 0

◮ x2(λ, c) = 0.

Page 76: [Alexandre] 8. Não Linear Restrita

Exemplo - abordagem 2 pura

Lc(x , λ) = 12

(

x21 + x2

2

)

+ λ(x1 − 1) + c2 (x1 − 1)2.

x1(c , λ) = c−λc+1 . Logo limc→∞

c−λc+1 = 1 = x∗

1

x2(c , λ) = 0. Logo limc→∞ x2(c , λ) = 0 = x∗2 .

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 77: [Alexandre] 8. Não Linear Restrita

Metodo de Penalidade Quadratica

Consiste em resolver uma sequencia de Problemas:

min Lck (x , λk) = f (x) +∑m

i=1 λki hi (x) + ck

2

(∑m

i=1 hi (x)2)

x ∈ X

onde {λk} e uma sequencia em Rm e {ck} e uma sequencia de

penalidades positivas.

Na versao original do metodo (decada de 1960), os multiplicadoresnao eram aproximados; os multiplicadores eram fixados em zero. Aideia de aproxima-los veio mais tarde.

Vamos permitir que os multiplicadores sejam multiplicados, sem nomomento definir como isto ocorrera.

Para sua validade, o metodo depende de incrementar ck para ∞.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 78: [Alexandre] 8. Não Linear Restrita

Metodo Penalidades Quadraticas - Principal Resultado

Proposicao

Assuma que f , h sao funcoes contınuas, que X e um conjunto fechado eque o conjunto {x ∈ X : h(x) = 0} e nao vazio. Para k = 0, 1, . . . ,, sejaxk um mınimo global do problema

min Lck (x , λk)

x ∈ X ,

onde {λk} e limitada, 0 < ck < ck+1, ∀k e ck →∞.

Entao todo ponto limite da sequencia {xk} e um mınimo global doproblema ofiginal.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 79: [Alexandre] 8. Não Linear Restrita

Observacoes

O resultado assume que o mınimo global irretristo e obtido de formaexata. Entretanto, os metodos de otimizacao irrestrita sao terminadosquando ||∇xLc(x

k , λk)|| ≤ ǫk , onde ǫk e um pequeno escalar.

Proposicao

Assuma que f , h sejam funcoes diferenciaveis e que X = Rn. Para

k = 0, 1, . . . , assuma que xk satisfaca ||∇xLc (xk , λk)|| ≤ ǫk , onde {λk} e

limitada e {ǫk}, {ck} satisfazem:

0 < ck < ck+1, ∀k, ck →∞

0 ≥ ǫk , ∀k, ǫk → 0.

Assuma que a subsequencia {xk}K convirja para o vetor x∗ tal que∇h(x∗) possua posto m. Entao: {λk + ckh(xk)}K → λ∗, onde λ∗ emconjunto com x∗ satisfazem as condicoes necessarias de primeira ordem:

∇f (x∗) +∇h(x∗)′λ∗ = 0, h(x∗) = 0.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 80: [Alexandre] 8. Não Linear Restrita

Exemplo

min x3

x + 1 = 0

L(x , λ) = x3 + λ(x + 1)

Lc(x , λ, c) = L(x , λ) +c

2(x + 1)2

∇xL(x∗, λ∗) = 0→ 3(x∗)2 + λ∗ = 0

∇λL(x∗, λ∗) = 0→ x∗ = −1, λ∗ = −3

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 81: [Alexandre] 8. Não Linear Restrita

Exemplo - continua

Na Figura abaixo, indicamos f (x),L(x , λ∗),Lc (x , λ∗) para c = 9.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 82: [Alexandre] 8. Não Linear Restrita

Penalidades Quadraticas - desempenho na pratica

Temos tres possibilidades:1 O metodo nao funciona porque nao conseguimos satisfazer||∇xLc(x

k , λk)|| ≤ ǫk . Isto normalmente ocorre quando Lc(·, λk) e

ilimitada inferiormente.2 Conseguimos satisfazer ||∇xLc(x

k , λk)|| ≤ ǫk , ek → 0, mas asequencia {xk} converge para um ponto nao regular, ou nao converge.Isto normalmente ocorre quando o problema original e inviavel.

3 {xk} converge para um ponto viavel regular. Este e o caso maiscomum. Pode tambem ocorrer que {xk} convirja para um pontoviavel nao regular, indicando que neste caso nao existem osmultiplicadores associados a x∗ e a sequencia {λk + ckh(xk)} divergee nao possui ponto limite.

A experiencia sugere que, normalmente, e bastante confiavel e que, nomınimo, converge para um mınimo local do problema. O seu fracasso enorlmalmente associado ao malcondiconamento de min Lc (·, λ

k), x ∈ Xquando ck →∞.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 83: [Alexandre] 8. Não Linear Restrita

Penalidades Quadraticas: malcondicionamento

min1

2

(

x21 + x2

2

)

x1 = 1

Lc(x , λ) =1

2

(

x21 + x2

2

)

+ λ(x1 − 1) +c

2(x1 − 1)2

∇2xxLc(x , λ) = I + c

(

10

)

(

1 0)

=

(

1 + c 00 1

)

Autovalores de ∇2xxLc (x , λ) : 1 + c e 1. Quando c →∞, o problema

torna-se malcondicionado.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 84: [Alexandre] 8. Não Linear Restrita

Modificacoes no Metodo de Penalidades Quadraticas

A cada iteracao k + 1, fazemos λk+1 ← λk + ckh(xk), como umamelhor aproximacao para o vetor de multiplicadores otimo. Entaominimizamos Lc (·, λ

k+1). O metodo baseado nesta aproximacao demultiplicadores e chamado de Metodo dos Multiplicadores.

Para evitar o malcondicionamento, recomenda-se empregar o Metodode Newton para minimizar Lc(·, λ

k).

Alem disto, e usual empregar xk como ponto de partida para aminimizacao irrestrita de Lc(·, λ

k+1).

A vantagem do uso combinado destas ideias e poder empregar, emvirtude de uma melhor aproximacao de λ∗, uma taxa menor decrescimento da penalidade ck . Assim sendo, ha uma tendencia doproblema ser menos malcondicionado.

Se ck aumenta muito rapidamente, a sequencia {xk} tende aconvergir mais rapidamente, mas o problema de malcondicionamentodeve ser mais evidente.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 85: [Alexandre] 8. Não Linear Restrita

Restricoes de Desigualdades

(P) min f (x)

hi(x) = 0 i = 1, . . . ,m

gj(x) ≤ 0 j = 1, . . . , r

Dado x viavel, vamos designar por A(x) = {j : g(x) = 0} o conjuntodos ındices de restricoes de desigualdades que sao justas para x .

Vamos assumir que x∗ seja um mınimo local para (P). Neste caso, x∗

tambem deve ser um mınimo local para o programa abaixo:

(PE) min f (x)

hi(x) = 0 i = 1, . . . ,m

gj(x) = 0 j ∈ A(x∗)

no qual as restricoes de desigualdades folgadas em x∗ (j 6∈ A(x∗))foram eliminadas.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 86: [Alexandre] 8. Não Linear Restrita

Analogia

Esta observacao nos leva a crer que se x∗ for um ponto regular para oprograma (PE), deve haver multiplicadores λ∗

i : i = 1, . . . ,m eµj : j ∈ A(x∗) tais que as CNPO sejam atendidas:

∇f (x∗) +m∑

i=1

λi∇hi (x∗) +

j∈A(x∗)

µjgj (x∗) = 0

Atribuindo multiplicadores nulos para as restricoes gj(·) tais quej 6∈ A(x∗) temos:

∇f (x∗) +∑m

i=1 λi∇hi(x∗) +

∑rj=1 µjgj(x

∗) = 0

µj = 0, j 6∈ A(x∗)

Um fato importante sobre os multiplicadores associados a gj(·):devem ser nao negativos. Observe que se a restricao gj(x) ≤ 0 forrelaxada para g(x) ≤ µj para µj > 0, o custo otimo de P devediminuir.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 87: [Alexandre] 8. Não Linear Restrita

Generalizando o conceito de ponto regular

Definicao

Um vetor viavel x e dito regular se:

os gradientes das restricoes de igualdade ∇hi(x) : i = 1, . . . ,m e osgradientes das restricoes de desigualdades ativas em x ,∇gj(x) : j ∈ A(x) sao linearmente independentes.

Tambem dizemos que x e regular no caso em que nao ha restricoes deigualdade e todas as restricoes de desigualdade sao inativas em x .

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 88: [Alexandre] 8. Não Linear Restrita

Condicoes de Karush-Kuhn-Tucker

Teorema - Condicoes de Karush-Kuhn-Tucker (KKT)

Seja x∗ um mınimo local regular para

(P) min f (x)

hi(x) = 0 i = 1, . . . ,m

gj(x) ≤ 0 j = 1, . . . , r

onde f , hi , gj : Rn → R,∀i , j sao funcoes continuamente diferenciaveis.

Entao existem multiplicadores de Lagrange unicos λ∗ e µ∗ tais que:

∇xL(x∗, λ∗, µ∗) = 0µ∗

j ≥ 0 j = 1, . . . , r

µ∗j = 0 j 6∈ A(x∗)

(14)

Se em adicao a isto, tivermos f , hi , gj ∈ C 2,∀i , j entao:

y ′∇2xxL(x∗, λ∗, µ∗)y ≥ 0 ∀y ∈ R

m : ∇hi(x)′y = 0∇gj(x)′y = 0, j ∈ A(x∗).

(15)

Page 89: [Alexandre] 8. Não Linear Restrita

Exemplo

min1

2(x2

1 + x22 + x2

3 )

x1 + x2 + x3 ≤ −3

L(x , µ) =1

2(x2

1 + x22 + x2

3 ) + µ(x1 + x2 + x3 + 3)

Das CNPO, temos ∇Lx(x∗, λ∗) = 0→ x∗

i + µ∗ = 0, i = 1, 2, 3

Precisamos avaliar dois casos:◮ A restricao e folgada e entao µ∗ = 0. Neste caso x∗

1 = x∗

2 = x∗

3 = 0,violando a restricao do problema. Logo a restricao nao e folgada.

◮ A restricao e justa. Observe entao que x∗

1 + x∗

2 + x∗

3 = −3 equivale aimpor tambem que (CNPO) ∇µL(x∗, µ∗) = 0.Assim sendo, temos x∗

1 = x∗

2 = x∗

3 = −1 e µ∗ = 1

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 90: [Alexandre] 8. Não Linear Restrita

Exemplo - continua

Analisando as condicoes de KKT de segunda ordem:y ′∇2

xxL(x∗, µ∗)y ≥ 0 para qualquery : ∇h(x∗)y = 0,∇gj (x

∗)y = 0, j ∈ A(x∗).

Como nao ha restricoes de igualdade, temos que a condicao torna-sey ′∇2

xxL(x∗, µ∗)y ≥ 0 para qualquer y ∈ R3 : y1 + y2 + y3 = 0.

Entretanto, como ∇2xxL(x∗, µ∗) = diag(1) e positiva definida, para

qualquer y (em particular satisfazendo y1 + y2 + y3 = 0) a condicaonecessaria de segunda ordem e atendida.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 91: [Alexandre] 8. Não Linear Restrita

Condicoes Suficientes de Segunda Ordem

Proposicao

Condicoes Suficientes de Segunda Ordem Assuma que f , g , h sejamfuncoes duas vezes diferenciaveis e seja x∗ ∈ R

n, λ∗ ∈ Rm, µ∗ ∈ R

r

satisfazendo:

∇xL(x∗, λ∗, µ∗) = 0 h(x∗) = 0 g(x∗) ≤ 0µ∗

j ≥ 0 j = 1, . . . , r

µ∗j = 0 j 6∈ A(x∗)

y ′∇xxL(x∗, λ∗, µ∗)y > 0 para todo y satisfazendo:

∇hi (x∗)′y = 0, ∀i = 1, . . . ,m e ∇gj(x

∗)′y = 0,∀j ∈ A(x∗).

Assuma tambem que µ∗j > 0 para qualquer j ∈ A(x∗).

Entao x∗ e um mınino local de f (x) restrito a h(x) = 0, g(x) ≤ 0.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 92: [Alexandre] 8. Não Linear Restrita

Metodo da Barreira

Vamos considerar o Problema

min f (x)

gj(x) ≤ 0 j = 1, . . . , r

x ∈ X

e definir o interior (relativo a X ) do conjunto de viabilidade comoS = {x ∈ X : gj (x) < 0,∀j = 1, . . . , r}.

Assumimos que:

S 6= ∅.

Qualquer ponto viavel y 6∈ S pode ser aproximado tao proximamentequanto se queira por um ponto em x ∈ S . Isto e, para qualquer δ > 0existe x ∈ S tal que ‖x − y‖ ≤ δ.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 93: [Alexandre] 8. Não Linear Restrita

Ideias centrais do metodo

Vamos acrescentar uma funcao de custo B(x), denominada funcaobarreira a funcao objetivo, definida exclusivamente em S e vamosresolver uma sequencia de problemas, satisfazendo0 < ǫk+1 < ǫk , k = 0, 1, . . . , ǫk → 0 na medida em que k →∞:

min f (x) + ǫkB(x)

x ∈ S

A funcao barreira deve ser contınua e na medida em que x tenda paraa fronteira do conjunto, B(x) deve tender a ∞. Isto e, B(x) deve teruma descontinuidade na fronteira do conjunto de viabilidade.Funcoes barreira usuais:

1 B(x) = −r∑

j=1

ln{−gj(x)}

2 B(x) = −r∑

j=1

1

gj(x)

Sendo gj (x) convexas, as funcoes acima tambem o sao.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 94: [Alexandre] 8. Não Linear Restrita

Ideias centrais do metodo

Seja xk a solucao de:

(Pk) min f (x) + ǫkB(x)

x ∈ S .

A sequencia {xk} pertence a S .

Na medida em que k →∞ e por consequencia ǫk → 0, a contribuicaodo termo barreira, ǫkB(x), deve tender a zero, para todo ponto x ∈ S .

Assim sendo, com a evolucao das iteracoes, pontos proximos afronteira terao sua componente de custo decorrente do termo debarreira minorado, como deveria ser, caso o otimo esteja na fronteira.

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 95: [Alexandre] 8. Não Linear Restrita

Principal resultado teorico

Proposicao

Todo ponto limite da sequencia {xk} gerada pelo Metodo da Barreira eum ponto de mınimo global do problema original.

Observacoes:

Esta implıcito que o problema e convexo ou que xk e um otimo globaldo problema Pk .

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 96: [Alexandre] 8. Não Linear Restrita

Exemplo

min f (x) =1

2(x2

1 + x22 )

2 ≤ x1

Solucao otima: x∗ = (2, 0).

Assumindo a funcao barreira logaritmica, B(x) = −ln(x1 − 2),impondo as CNPQ ao problema Pk temos:

xk ∈ arg minx1>2

{

1

2(x2

1 + x22 )− ǫk ln(x1 − 2)

}

=(

1 +√

1 + ǫk , 0)

limǫk→0 xk1 = 2

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes

Page 97: [Alexandre] 8. Não Linear Restrita

Exemplo - continua

min1

2(x2

1 + x22 )− ǫk ln(x1 − 2) : x1 > 2

Curvas de nıvel para Pk : ǫ = 0.3 (esquerda) e ǫ = 0.03 (direita).

Alexandre Salles da Cunha Programacao Nao Linear com Restricoes