otimiza¸c˜ao - federal university of rio de janeironero/notasotim.pdfotimiza¸c˜ao: aspectos...

181
Programa de Engenharia El´ etrica COPPE/UFRJ 2018/2 Rio Otimiza¸c˜ ao: AspectosTe´oricos e etodos Num´ ericos Notas de aulas baseadas em: Practical Optimization Philip E. Gill, Walter Murray, Margareth H. Wright. Academic Press, 1981 Optimization Concepts and Applications in Engineering Ashok D. Belegundu, Tirupathi R. Chandrupatla. Prentice-Hall, 1999 Numerical Optimization Jorge Nocedal, Stephen J. Wright. Springer, 1999 Iterative Methods for Optimization C. T. Kelley. Siam, 1999 Hist´ oria da Matem´ atica Carl B. Boyer, Elza F. Gomide (tradu¸ c˜ao). Edgard Bl¨ ucher ltda. 1978 outras . . .

Upload: others

Post on 29-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Programa de Engenharia Eletrica

COPPE/UFRJ2018/2

Rio

Otimizacao:

Aspectos Teoricose

Metodos Numericos

Notas de aulas baseadas em:

• Practical OptimizationPhilip E. Gill, Walter Murray, Margareth H. Wright.Academic Press, 1981

• Optimization Concepts and Applications in EngineeringAshok D. Belegundu, Tirupathi R. Chandrupatla.Prentice-Hall, 1999

• Numerical OptimizationJorge Nocedal, Stephen J. Wright. Springer, 1999

• Iterative Methods for OptimizationC. T. Kelley. Siam, 1999

• Historia da MatematicaCarl B. Boyer, Elza F. Gomide (traducao).Edgard Blucher ltda. 1978

• outras . . .

Page 2: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

pagina intencionalmente deixada em branco

Page 3: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Sumario

1 Generalidades 11.1 Estudo das relacoes de causa e efeito . . . . . . . . . . . . . . 11.2 Entra a Matematica . . . . . . . . . . . . . . . . . . . . . . . 21.3 Funcoes reais de uma variavel real . . . . . . . . . . . . . . . . 31.4 Pontos especiais de uma funcao escalar . . . . . . . . . . . . . 51.5 Otimizacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.6 Propriedades Desejaveis em Funcoes . . . . . . . . . . . . . . . 7

1.6.1 Continuidade . . . . . . . . . . . . . . . . . . . . . . . 71.6.2 Diferenciabilidade . . . . . . . . . . . . . . . . . . . . . 81.6.3 Suavidade . . . . . . . . . . . . . . . . . . . . . . . . . 91.6.4 Convexidade . . . . . . . . . . . . . . . . . . . . . . . . 12

1.7 Recapitulando . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2 Otimizacao Escalar 162.1 Reconhecimento analıtico . . . . . . . . . . . . . . . . . . . . . 162.2 Exemplos praticos . . . . . . . . . . . . . . . . . . . . . . . . . 172.3 Conclusoes parciais . . . . . . . . . . . . . . . . . . . . . . . . 232.4 Metodos Numericos . . . . . . . . . . . . . . . . . . . . . . . . 23

2.4.1 Raızes de funcoes . . . . . . . . . . . . . . . . . . . . . 232.5 Mınimos de funcoes escalares . . . . . . . . . . . . . . . . . . . 30

2.5.1 Funcoes unimodais e enquadramento . . . . . . . . . . 312.5.2 Enquadramento inicial . . . . . . . . . . . . . . . . . . 322.5.3 Reducao de intervalos . . . . . . . . . . . . . . . . . . 34

2.6 Metodo de Fibonacci . . . . . . . . . . . . . . . . . . . . . . . 352.6.1 Numeros de Fibonacci . . . . . . . . . . . . . . . . . . 382.6.2 Metodo de Fibonacci (de novo) . . . . . . . . . . . . . 412.6.3 Fibonacci, ainda uma vez . . . . . . . . . . . . . . . . 45

2.7 Ideias de ouro . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.8 Metodos de interpolacao polinomial . . . . . . . . . . . . . . . 50

i

Page 4: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3 Otimizacao Vetorial 523.1 Recordacao Breve de Analise no IRn . . . . . . . . . . . . . . . 52

3.1.1 Continuidade e Derivadas . . . . . . . . . . . . . . . . 533.1.2 Funcoes Vetoriais de Variaveis Vetoriais . . . . . . . . . 57

3.2 Pontos Estacionarios e Especiais no IRn . . . . . . . . . . . . . 583.2.1 Condicoes analıticas . . . . . . . . . . . . . . . . . . . 58

3.3 Formas e Funcoes . . . . . . . . . . . . . . . . . . . . . . . . . 623.3.1 Formas Lineares e Quadraticas . . . . . . . . . . . . . 623.3.2 Sinal da Forma . . . . . . . . . . . . . . . . . . . . . . 663.3.3 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 673.3.4 Criterios de definicao . . . . . . . . . . . . . . . . . . . 673.3.5 Normas, Metricas e “Tamanho” . . . . . . . . . . . . . 693.3.6 Exercıcios . . . . . . . . . . . . . . . . . . . . . . . . . 693.3.7 Visao Geometrica das Formas Quadraticas . . . . . . . 703.3.8 Miscelanea de Formulas . . . . . . . . . . . . . . . . . 713.3.9 Funcoes Lineares e Quadraticas . . . . . . . . . . . . . 72

3.4 Convexidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4 Metodos numericos para minimizacao vetorial 804.1 Metodo de descida maxima . . . . . . . . . . . . . . . . . . . 81

4.1.1 Convergencia do metodo de descida maxima . . . . . . 854.2 Metodo do gradiente conjugado . . . . . . . . . . . . . . . . . 884.3 Metodos de Newton . . . . . . . . . . . . . . . . . . . . . . . . 924.4 Metodos de Newton modificados . . . . . . . . . . . . . . . . . 944.5 Metodos de quase Newton . . . . . . . . . . . . . . . . . . . . 964.6 Metodo do politopo . . . . . . . . . . . . . . . . . . . . . . . . 98

5 Otimizacao Geral I 995.1 Solucoes do PGO . . . . . . . . . . . . . . . . . . . . . . . . . 1005.2 Otimizacao com Restricoes . . . . . . . . . . . . . . . . . . . . 1015.3 Restricoes Lineares de Igualdade . . . . . . . . . . . . . . . . . 102

5.3.1 Condicoes Analıticas para o PGORLI . . . . . . . . . . 1065.3.2 Problema da Projecao Ortogonal . . . . . . . . . . . . 113

5.4 Restricoes Lineares de Desigualdade . . . . . . . . . . . . . . . 1155.4.1 Geometria da Regiao Viavel . . . . . . . . . . . . . . . 1155.4.2 Geometria da funcao objetivo e do PGORLD . . . . . 1195.4.3 Algebra do PGORLD . . . . . . . . . . . . . . . . . . . 1215.4.4 Resumo do enredo e roteiro . . . . . . . . . . . . . . . 123

5.5 Metodo do Gradiente Projetado . . . . . . . . . . . . . . . . . 127

ii

Page 5: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

6 Programacao Linear 1396.1 Geometria basica . . . . . . . . . . . . . . . . . . . . . . . . . 1396.2 Programacao Linear, mais detalhes . . . . . . . . . . . . . . . 1426.3 Exemplos praticos . . . . . . . . . . . . . . . . . . . . . . . . . 143

6.3.1 Problema geral da dieta . . . . . . . . . . . . . . . . . 1436.3.2 Problema de refinaria . . . . . . . . . . . . . . . . . . . 1446.3.3 Producao de ligas metalicas . . . . . . . . . . . . . . . 145

6.4 Resolucao grafica de um PPL . . . . . . . . . . . . . . . . . . 1466.5 Resolucao manual de um PPL . . . . . . . . . . . . . . . . . . 1466.6 Resolucao numerica de um PPL . . . . . . . . . . . . . . . . . 1466.7 Dualidade em PL . . . . . . . . . . . . . . . . . . . . . . . . . 146

7 Otimizacao Geral II 1477.1 Programacao quadratica . . . . . . . . . . . . . . . . . . . . . 1477.2 Restricoes Nao-Lineares de Igualdade . . . . . . . . . . . . . . 147

7.2.1 Algebra das restricoes e da funcao objetivo . . . . . . . 1507.3 Restricoes Nao-Lineares de Desigualdade . . . . . . . . . . . . 156

7.3.1 Geometria da funcao objetivo e das restricoes . . . . . 1577.3.2 Algebra do PGORNLD . . . . . . . . . . . . . . . . . . 159

7.4 Metodos numericos . . . . . . . . . . . . . . . . . . . . . . . . 1657.4.1 Metodo das direcoes viaveis . . . . . . . . . . . . . . . 1657.4.2 Outros metodos . . . . . . . . . . . . . . . . . . . . . . 169

7.5 Penalidades e Barreiras . . . . . . . . . . . . . . . . . . . . . . 1707.5.1 Metodos de penalidades . . . . . . . . . . . . . . . . . 1707.5.2 Metodos de barreiras . . . . . . . . . . . . . . . . . . . 175

7.6 Problemas basicos . . . . . . . . . . . . . . . . . . . . . . . . . 1757.7 Outras propostas . . . . . . . . . . . . . . . . . . . . . . . . . 175

iii

Page 6: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

pagina intencionalmente deixada em branco

iv

Page 7: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 1

Generalidades

Diz a Filosofia (caramba, voos altos logo no comeco. . . ) que o universo egovernado pela lei de causa e efeito: toda causa produz um efeito e todo efeitoe consequencia de uma causa. Embora esta afirmacao, assim como tudo emFilosofia, alias, seja passıvel de discussoes, debates e crıticas, ela sera aceitacomo verdadeira. Assim, e possıvel teorizar que todo o conhecimento e todaa ciencia dos seres humanos se resumem, em ultima analise, ao estudo dasrelacoes de causa e efeito.

1.1 Estudo das relacoes de causa e efeito

Pode-se reconhecer duas posturas, duas atitudes basicas frente as relacoes decausa e efeito:

• Dada uma causa qualquer, qual o seu efeito? Isto se chama analise.

• Dado um efeito qualquer, o que o causou? E isto e a sıntese.

A palavra sıntese e normalmente usada com uma acepcao mais especıfica:que se deve fazer para que um certo efeito seja alcancado? Que medidastomar para que algo desejado ocorra? Analise e sıntese sao atividades bemgerais, dada uma causa qualquer. . . dado um efeito qualquer. . . mas nasaplicacoes praticas o interesse se fixa em coisas bem menos vastas, em coisasbem precisas, os

Efeitos Especiais, ou Nobres

Existem efeitos especiais? quais sao eles? o que os causa? Antes de maisnada, o que e, o que caracteriza um efeito especial? A resposta e simples.Para os seres humanos, em geral, coisas especiais sao coisas extremas, ou

1

Page 8: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

maximas ou mınimas de acordo com algum criterio. Agora, conhecendo osentido da palavra especial, fica facil conceituar Otimizacao.

Otimizacao e o estudo das situacoes especiais, o que sao, quantovalem e, principalmente, como atingi-las.

Trata-se de algo extremamente normal, natural e forte nas pessoas. Osseres humanos carregam isso dentro deles, bem vivo, de modo consciente ounao. Assim se percebe a enorme importancia do estudo de Otimizacao.

1.2 Entra a Matematica

Os matematicos, como sempre, tem ferramentas muito exatas, precisas epoderosas para descrever as relacoes de causa e efeito, as funcoes. Dado umdomınio C e um contra-domınio E o conceito de funcao ou aplicacao oumapa e classico:

f : C −→ Ex ∈ C 7→ f(x) ∈ E

O domınio C e o conjunto das causas, e o contra-domınio E o dos efeitos,e deste modo pode-se ler a sentenca matematica acima como: a uma causax corresponde um efeito f(x). E e simples assim mesmo, uma funcao eapenas uma relacao de causa e efeito e nao algo tenebrosamente abstratopara assustar ainda mais os ja assustados alunos iniciantes de calculo. Asfuncoes basicas sao as que associam conjuntos de numeros entre si, assim

x ∈ C =

ZZn

IRn

Cne y = f(x) ∈ E =

ZZn

IRn

Cn

O volume de conhecimento sobre estas funcoes e bastante grande. As maiselementares sao as famosas funcoes reais de variavel real, ou univariaveis, ouescalares, onde C = E = IR, o corpo dos numeros reais.

f : IR −→ IRx ∈ IR 7→ f(x) ∈ IR

O conceito de Operador e algo mais sofisticado, embora a ideia basicaseja a mesma. E ainda uma aplicacao, um mapa, mas as causas e os efeitossao agora funcoes de um dado tipo, e nao mais numeros.

C = E = {funcoes de um dado tipo}

2

Page 9: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Quando as causas e efeitos sao funcoes do tempo pode-se associar o con-ceito de operador, algo tipicamente matematico, a ideia de sistema, de vastoemprego na engenharia. Em muitas situacoes de Otimizacao do comporta-mento de sistemas associa-se um numero real a uma funcao:

C = {funcoes de um dado tipo} e E = IR

Sendo a Matematica tao importante, a hora e boa para uma “Revisaode Conceitos Basicos”. Neste documento, as varias revisoes de conceitosmatematicos tradicionais virao em secoes entremeadas ao texto, ao inves deexiladas em apendices finais que, provavelmente, jamais sao lidos.

1.3 Funcoes reais de uma variavel real

Tambem chamadas, como ja visto, de funcoes univariaveis ou ainda escalares,podem ser designadas simbolicamente por

f : IR −→ IRx ∈ IR 7→ f(x) ∈ IR

como tambem ja visto um pouquinho aı atras. Nesta revisao havera

• muitas ideias, • pouco rigor, • muitas imagens.

Posteriormente, para funcoes menos simples, as imagens ficarao maisdifıceis, e o rigor devera crescer, entao e bom adquirir ideias solidas a partirde agora. Ha algumas maneiras basicas de se conhecer, de se entender umafuncao escalar; a elas.

1. Conhecimento visual de uma funcao escalar. Usa uma repre-sentacao grafica da funcao. Os seres humanos tem grande afinidadecom o sentido da visao, certamente mais do que com os outros. Talvezpor isto a inteligencia humana e tao associada a padroes visuais, e osrecursos graficos sao tao importantes no aprendizado e na fixacao deconceitos.

Os meios visuais de se descrever funcoes sao intuitivos, comodos e agra-daveis. Sao tambem, se nao houver disponibilidades computacionais,de obtencao um tanto quanto trabalhosa. A figura 1.1 ilustra umafuncao escalar.

3

Page 10: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✲x

✻f(x)

Figura 1.1: Grafico de uma funcao real de variavel real

2. Conhecimento analıtico de uma funcao escalar. E o que se tempor meio de uma expressao analıtica da funcao, ou seja, uma formula,como por exemplo

f(x) = x2 + 3x− sen(

3√x)

O poderoso arsenal de ferramentas matematicas desenvolvidas pelo Cal-culo se aplica primordialmente a funcoes descritas por uma expressaoanalıtica. Estas expressoes sao simples, densas e rapidas, embora asvezes possam nao ser muito intuitivas.

3. Conhecimento discreto de uma funcao escalar. Por meio de umatabela de valores que a funcao assume em varios pontos do domınio:

x f(x)

x1 y1x2 y2...

...xn yn

E comum dizer que a funcao e amostrada em alguns pontos. Estetipo de conhecimento e necessario as vezes.

Conhecendo a expressao analıtica de uma funcao e possıvel, e ate mesmofacil (embora possa ser trabalhoso), obter seu grafico e uma tabela de valores.Em tempos passados isso poderia requerer papel milimetrado, reguas, esqua-dros, curvas francesas, cuidado, carinho e alguns pendores artısticos. Hojeem dia ha varios programas computacionais especializados nessas tarefas.

Dado o grafico de uma funcao, a obtencao de uma tabela de valores e algosimples e direto, mas chegar a uma expressao analıtica pode se tornar muito

4

Page 11: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

complicado ou ate mesmo impossıvel. Quando se conhece apenas uma tabelacom os valores de uma funcao, a tarefa de se obter para ela uma formula e umgrafico e sempre delicada, e muitas vezes problematica ou mesmo impossıvel.

1.4 Pontos especiais de uma funcao escalar

E muito facil identificar os pontos especiais ou nobres de uma funcao quandose pode visualiza-la, como por exemplo na figura 1.2. Pontos como P1 saochamados de mınimos locais fortes ou estritos e variaveis que os acarre-tam, como a abscissa x1, sao os pontos de mınimos locais fortes ou estritos,ou entao minimizadores locais fortes ou estritos ou ainda, com um certoabuso de linguagem, recebem os mesmos nomes dos pontos e sao tambemchamados de mınimos locais fortes (ou estritos).

✲x

✻f(x)

x1

P1

x2

P3

x3 x4

P5

x5

x6

P6

P7

x7

Figura 1.2: Pontos especiais de uma funcao real de variavel real

O ponto P3 e tambem um mınimo local forte, e x3 um minimizador (ouponto de mınimo, ou simplesmente mınimo) local forte. O sentido da palavraforte nas ideias acima fica claro ao observar o ponto P6, um mınimo localfraco; a abscissa causadora x6 e um minimizador (ou ponto de mınimo, ousimplesmente mınimo) local fraco. As situacoes (x5, P5) e (x7, P7) represen-tammaximos locais fortes. As representacoes graficas sao excelentes para seentender os conceitos fundamentais, mas a caracterizacao analıtica e semprenecessaria, apenas com ela se pode chegar a nıveis satisfatorios de precisao erigor. Ao trabalho, entao!

Definicao 1.4.1 (Mınimo local fraco) Um ponto x∗ ∈ IR e um minimi-zador local fraco de uma funcao escalar f se existe uma vizinhanca V de x∗

tal que f(x∗) ≤ f(x) para todo x ∈ V. O valor f(x∗) sera o mınimo local(fraco).

5

Page 12: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Conforme ja mencionado, x∗ e o minimizador, ou ponto de mınimo, aopasso que f(x∗) e o mınimo, mas normalmente se abusa da nomenclatura ex∗ e tambem chamado de mınimo.

Definicao 1.4.2 (Mınimo local forte) Um ponto x∗ ∈ IR e um minimi-zador local forte de uma funcao escalar f se existe uma vizinhanca V de x∗

tal que f(x∗) < f(x) para todo x ∈ V, com x 6= x∗. O valor f(x∗) sera omınimo local (forte).

As palavras fraca e forte que aparecem nestes conceitos ja foram explica-das, falta apenas entender o significado de local.

Definicao 1.4.3 (Mınimo global) Um ponto x∗ ∈ IR e um minimizadorglobal de uma funcao escalar f se f(x∗) ≤ f(x) para todo x ∈ IR. O valorf(x∗) sera o mınimo global.

Os metodos teoricos e praticos de otimizacao sao muito eficientes paraapontar mınimos locais, a obtencao de mınimos globais apresenta uma seriede problemas, como se vera mais a frente. As definicoes para maximos saoobtidas de maneira trivial, mudando nas frases acimas aquilo que deve sermudado. Isto para nao sermos pernosticos com a sentenca “As definicoes . . .sao obtidas mutatis mutandis”.

1.5 Otimizacao

A ideia mestra ja foi apresentada, e nem seria preciso conceitua-la agora, maseis la, Otimizacao e a busca de minimizadores ou maximizadores de funcoes.Pode-se reconhecer algumas maneiras basicas de proceder.

Otimizacao Visual: quando ha uma descricao visual, o grafico da funcao,de onde diretamente se extrai informacoes sobre os extremos.

Otimizacao Analıtica: quando ha uma descricao analıtica da funcao, asua formula, a patir da qual se aplicam metodos teoricos.

Otimizacao Numerica: quando uma tabela de valores da funcao e gerada,(a partir de um grafico, ou de uma formula ou de uma serie de medidas)e, iterativamente, sao selecionados candidatos a solucao.

Fato 1.5.1 A Otimizacao Visual e simples, direta, facil, extremamente co-moda e desejavel. Basta olhar a curva e identificar os extremos.

6

Page 13: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Se ha tantas vantagens na otimizacao visual, por que procurar os outrostipos? A razao e simples: as vezes e difıcil tracar o grafico da funcao, pormuitos possıveis motivos. Em outras vezes e simplesmente impossıvel obteruma representacao grafica, como no caso de funcoes de variaveis vetoriais,f : IRn −→ IR onde n ≥ 3. Nestes casos crıticos e preciso recorrer a oti-mizacao analıtica, e quando esta tambem e problematica, o unico remedioe a otimizacao numerica. A otimizacao analıtica e bela e rigorosa. Muitosdos desenvolvimentos da Matematica classica ajudam a formar seus alicercese talvez por esta razao os primeiros avancos em seus territorios lembram oestudo do Calculo.

1.6 Propriedades Desejaveis em Funcoes

A finalidade desta secao e recordar conceitos para aplica-los a Otimizacao, ouseja, a procura de situacoes nobres em relacoes de causa e efeito. As funcoesreais de variavel real, ou escalares, ou univariaveis ja foram apresentadas(reapresentadas, na realidade, certo?) na secao 1.2. Repetindo a dose

f : IR −→ IRx ∈ IR 7→ f(x) ∈ IR

Algumas propriedades sao muito desejaveis em uma funcao, pois quandoestao presentes e possıvel prever o comportamento da funcao em varios pon-tos a partir do seu valor em um unico ponto. Este poder e algo muitoprecioso.

1.6.1 Continuidade

Uma funcao f e contınua no intervalo [a b] ⊂ IR quando e possıvel tracaro seu grafico, de f(a) ate f(b), sem tirar o lapis do papel. Uma funcao fe contınua no ponto x0 ∈ IR quando e contınua em um intervalo [a b] quecontem x0.

Os leitores diligentes certamente verificarao a continuidade da funcaomostrada no grafico da figura 1.3. As descontinuidades nos pontos a e csao do tipo salto, no ponto b ha uma fuga para infinito e em d uma falhapontual. Os metodos visuais, como sempre, sao comodos e atraentes, mas epreciso relembrar os conceitos analıticos.

Definicao 1.6.1 A funcao real de variavel real f e contınua no ponto x0 ∈ IRse e somente se

limx→x0

f(x) = f(x0)

7

Page 14: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✲x

✻f(x)

a b cd

Figura 1.3: Continuidade de uma funcao real de variavel real

Ou entao, sem usar o conceito de limite:

Definicao 1.6.2 A funcao real de variavel real f e contınua no ponto x0 ∈ IRse e somente se para todo real ε > 0 existe um real δ > 0 tal que se |x−x0| < δentao |f(x)− f(x0)| < ε.

E a velha ideia de sempre, e possıvel chegar arbitrariamente proximo def(x0) desde que se chegue suficientemente perto de x0.

Definicao 1.6.3 A funcao real de variavel real f e contınua em um intervalose e somente se for contınua em todos os pontos desse intervalo.

O que e mais intuitivo, conceitos analıticos ou visuais?

1.6.2 Diferenciabilidade

Uma funcao f e diferenciavel no ponto x0 ∈ IR quando e possıvel tracaruma unica tangente a curva no ponto f(x0), e esta tangente e nao vertical.O coeficiente angular desta reta (tangente do angulo que ela faz com o eixohorizontal) sera a derivada de f em x0. A figura 1.4 mostra a situacao.

Fica muito claro que se f nao e contınua em um ponto tambem nao ediferenciavel neste ponto. O conceito de diferenciabilidade em um intervaloe simples, a propriedade deve valer em todos os pontos deste intevalo. Muitobem, hora de colocar um pouco de rigor nestas ideias.

Definicao 1.6.4 A funcao f e diferenciavel no ponto x0 ∈ IR quando

limh→0

f(x0 + h)− f(x0)

h

8

Page 15: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✲x

✻f(x)

x0

Figura 1.4: Tangente de uma funcao real de variavel real

existe. Este limite e chamado de primeira derivada, ou derivada pri-

meira, ou gradiente de f em x0, com notacao

f ′(x0) ou f (1)(x0) oudf

dx

x0

Conceito certamente conhecido dos leitores, e muito. Algumas vezes apa-rece a necessidade de se falar nas derivadas laterais.

Definicao 1.6.5 A derivada lateral pela direita de f em x0 ∈ IR e dada por

limh→0+

f(x0 + h)− f(x0)

h= f+(x0)

quando este limite existe. Para a derivada pela esquerda: h → 0− e a notacaoe f−(x0).

Exemplo 1.6.1 Analisar a funcao descrita pela expressao f(x) = |x|. Osleitores tracarao o grafico, com certeza, e facil. Como tambem e facil verificarque f ′(x) existe ∀x 6= 0 mas f nao e diferenciavel em x0 = 0. Entretantof+(0) = 1 e f−(0) = −1.

1.6.3 Suavidade

Parece coisa de poesia e literatura, mas tem um significado importante. Asuavidade e a ausencia de mudancas bruscas. A falta de continuidade eresponsavel pelas mudancas mais bruscas que podem existir, assim e facilperceber que uma funcao nao pode ser suave em um trecho onde apresentedescontinuidades. Os requisitos para suavidade vao alem disso, pois mu-dancas bruscas podem ser associadas tambem a outros fatores, como embreve se vera. A figura 1.5 ilustra trechos suaves e bruscos ou rıspido de umafuncao.

9

Page 16: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✲x

✻f(x)

Figura 1.5: Suavidade de uma funcao real de variavel real

Para aqueles que acharam este conceito um tanto quanto vago e impreciso,dependendo de avaliacoes particulares (afinal, o que deve ser considerado umamudanca brusca?) e hora de rigor analıtico, as vezes ele faz falta.

Definicao 1.6.6 A funcao escalar f e diferenciavel em um intervalo

I ⊂ IR se e somente se f ′(x) existe ∀x ∈ I. Neste caso se pode definir afuncao derivada, designada por f ′, como

f ′ : I −→ IR

x 7→ f ′(x) = dfdx

x

Pessoal, isto e terreno conhecidıssimo, certo? E agora vem o que? Asderivadas de ordem superior, claro, definidas seguindo esta mesma linha deraciocınio.

Definicao 1.6.7 Se a funcao escalar f possui derivada primeira f ′ dife-renciavel em um intervalo I ⊂ IR entao a funcao derivada de f ′ sera cha-mada de derivada segunda de f e designada por f ′′ ou f (2).

Exemplo 1.6.2 Para funcao f(x) = x2 a definicao pode ser aplicada le-vando a

f ′(x) = limh→0

f(x+ h)− f(x)

h= lim

h→0

(x+ h)2 − x2

h= lim

h→0(2x+ h) = 2x

como alias era esperado. As outras derivadas seriam obtidas de maneiraanaloga, ou entao usando as famosas regrinhas de derivacao, resultando em

f ′′(x) = 2 ∀xf (3)(x) = 0 ∀x

...

f (n)(x) = 0 ∀x, ∀n ≥ 3

Os leitores sao encorajados a tracar os graficos para estas funcoes.

10

Page 17: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Exemplo 1.6.3 Analisar a diferenciabilidade da funcao dada por f(x) =(1/2) (max(0, x− 5))2. O primeiro passo, se possıvel, e tracar o grafico. Sea expressao dada estiver meio estranha tentem verificar o seguinte:

f(x) =1

2[g(x)]2 onde g(x) =

{

0 se x ≤ 5x− 5 se x ≥ 5

As coisas ficaram mais faceis, f e nula antes de x = 5 e um arco deparabola quadratica, com concavidade para cima, para x ≥ 5, sendo contınuae diferenciavel em todo o espaco. E facil desenhar o grafico desta funcao, ede suas derivadas. Tentem, leitores, e verifiquem que f ′ e contınua sempremas sua diferenciabilidade falha em um ponto (qual?) e que f ′′ tem falhasna continuidade e na diferenciabilidade em um ponto (qual?).

A diferenciabilidade de uma funcao certamente falha quando ela nao econtınua. Ha, normalmente, interesse em funcoes que possam ser diferenci-adas varias vezes, ou seja, funcoes contınuas que tenham derivadas tambemcontınuas.

Definicao 1.6.8 Quando uma funcao f e suas derivadas f ′, f ′′, . . . f (n) saocontınuas em um dado intervalo diz-se que ela e n vezes diferenciavel, e declasse Cn, ou entao e Cn contınua, e se usa a simbologia f ∈ Cn.

Nos exemplos anteriores a esta definicao, f ∈ C∞ e f ∈ C1.

Definicao 1.6.9 Uma funcao escalar e suave quando pertencer a classe Cn

com n ≥ 2.

Pronto, eis aı o rigor desejado, a suavidade esta associada ao numerode vezes que se pode diferenciar a funcao. E por que mesmo a suavidade eimportante? Vejam bem: quando uma funcao f e suave, o conhecimento deseu valor em um dado ponto permite otimos palpites para os seus valores empontos proximos: dado f(x0) e facil estimar f(x) para x em uma vizinhancade x0. Para justificar este fato segue, sem demonstracoes, um resultadoclassico do Calculo elementar.

Teorema 1.6.1 (Teorema de Taylor:) sendo x0 e x dois pontos em umintervalo I onde f ∈ Cp entao existe um real z, situado entre x0 e x, tal que

f(x) = f(x0) + f ′(x0)(x− x0) + (1/2!)f ′′(x0)(x− x0)2 + · · ·

+(1/(p−1)!)f (p−1)(x0)(x−x0)p−1+(1/p!)f (p)(z)(x−x0)

p (1.1)

11

Page 18: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Se uma funcao e suficientemente suave em um intervalo, entao conhe-cendo seu valor e os de suas derivadas em x0, e tambem um ponto z interno(z = αx0 + (1 − α)x para 0 < α < 1), e possıvel encontrar valores de fem outros pontos do intervalo, exatamente o que se afirmava possıvel. Eimportante lembrar que quando o ponto “desconhecido” x esta proximo dex0, aproximacoes muito boas sao obtidas mesmo com poucos termos na ex-pressao acima. Mais detalhes sobre o teorema de Taylor virao a frente, nocaso vetorial. Taylor e uma peca basica na demonstracao formal de variosresultados basicos de Otimizacao.

1.6.4 Convexidade

E uma ideia muito basica, mas que depende do ponto de vista. A figura 1.6,por exemplo, ilustra o que se pode chamar de convexidade de linhas noplano; o observador O1 ve algo concavo, ao passo que O2 ve algo convexo.

O1 O2

Figura 1.6: Convexo ou concavo?

Convexidade de regioes fechadas

Quando se trata de regioes fechadas no plano, ainda se pode recorrer a vi-sualizacao e usar os conceitos intuitivos de convexidade e concavidade: seum observador externo a regiao percebe a linha da fronteira sempre convexaentao a regiao e convexa.

Figura 1.7: Regioes fechadas no plano

O conceito analıtico: dados dois pontos A e B quaisquer na regiao plana,esta sera convexa quando todos os pontos do segmento de reta AB unindoA e B tambem estiverem contidos nela.

12

Page 19: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Convexidade de funcoes

Visualmente e facil, como sempre: uma funcao f e convexa no intervalo [a b]quando a regiao fechada formada pela curva da funcao e o segmento de retaentre f(a) e f(b) for convexa.

✲x

✻f(x)

a b c

Figura 1.8: Convexidade de funcoes

A funcao representada na figura 1.8 e convexa nos intervalos [a b] e [b c],mas nao em [a c]. A bem do rigor, a funcao nao deveria ser considerada con-vexa no intervalo [a b], embora satisfaca o criterio visual acima; ela deveriaser considerada concava. Como o rigor foi mencionado, e hora de apresentaro conceito analıtico.

Definicao 1.6.10 Uma funcao escalar f e convexa no intervalo I se e so-mente se para cada par de pontos x1, x2 ∈ I, e para todo α ∈ [0 1], pode-seescrever

f(αx1 + (1− α)x2) ≤ αf(x1) + (1− α)f(x2)

Para simplificar a notacao, f(xi) sera designado por fi. A expressaoacima significa que o grafico da funcao f deve ficar abaixo do segmento dereta unindo f1 a f2, e isto deve valer para quaisquer pontos x1 e x2 nointervalo. Uma figura cai bem.

✲x

✻f(x)

f1

x1

✲ αf1 + (1− α)f2✲ αx1 + (1− α)x2

f2

x2

Figura 1.9: Visualizando a definicao de convexidade de funcoes

13

Page 20: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 1.6.11 Uma funcao escalar f e estritamente convexa no inter-valo I se e somente se para cada par de pontos x1, x2 ∈ I pode-se escrever

f(αx1 + (1− α)x2) < αf(x1) + (1− α)f(x2)

para cada α ∈ [0 1].

A diferenca e sutil, e a figura 1.10 ajuda a entender.

✲x

✻f(x)

a b

Figura 1.10: Caso de convexidade nao estrita

Seguem algumas propriedades simples, que virao sem demonstracoes,como alias quase todas as propriedades neste texto. Leitores curiosos de-vem se dirigir as referencias citadas, e a outras nelas citadas.

Propriedade 1.6.1 Uma funcao escalar f de classe C1 e convexa em umintervalo I se e somente se, para quaisquer x0, x ∈ I,

f(x) ≥ f(x0) + f ′(x0)(x− x0)

A interpretacao visual e simples: a curva da funcao f esta sempre acimade qualquer tangente no intervalo.

✲x

✻f(x)

f1

x1

f2

x2

Figura 1.11: Caracterısticas de funcoes convexas

Propriedade 1.6.2 Uma funcao escalar f de classe C2 e convexa em umintervalo I se e somente se, para qualquer x ∈ I,

f ′′(x) ≥ 0

14

Page 21: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A “concavidade” da curva esta voltada para cima, esta e obvia, e tambempode ser visualizada na figura 1.11.

Propriedade 1.6.3 Se x∗ e um minimizador local para uma f convexa emum dado intervalo I entao x∗ e tambem um minimizador global de f em I.

Mais uma vez a figura 1.11 ajuda. Se f e convexa em um intervaloentao qualquer mınimo local e tambem global ou, em outras palavras, funcoesconvexas em um intervalo possuem um unico mınimo nesse intervalo, quee, consequentemente, local e global. Ja se mencionou anteriormente quea busca de mınimos globais e problematica, a maioria dos metodos leva asolucoes locais. A propriedade acima outorga as funcoes convexas um statusde nirvana, de algo sempre desejado e procurado, pois para elas e possıvelgarantir que extremos locais sejam tambem globais.

1.7 Recapitulando

O que se esta fazendo mesmo? Qual era o objetivo disto tudo? Parece claroque a otimizacao visual e altamente desejavel, mas muitas vezes nao se podeusa-la e e necessario recorrer a otimizacao analıtica. Quando esta tambemfor impraticavel restam apenas os recursos da otimizacao numerica.

Para auxiliar na otimizacao analıtica, foi feita uma rapida revisao deconceitos basicos de calculo escalar. Foram revistas algumas propriedadesdesejaveis de um funcao: continuidade, diferenciabilidade, suavidade e con-vexidade. E a importancia das idades . . . Hora boa para retornar ao interessemaior, a otimizacao, e comecando pelo caso mas simples, o escalar ou uni-variavel.

15

Page 22: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 2

Otimizacao Escalar

Os pontos especiais de uma funcao qualquer sao os minimizadores e ma-ximizadores, fracos ou fortes, locais ou globais. A missao deste capıtulo ebusca-los para as funcoes reais de apenas uma variavel real, tambem chama-das de escalares ou univariaveis. Os aspectos analıticos, sempre que possıvelentremeados com visualizacoes, claro, iniciarao os estudos, seguidos rapida-mente pela praia dos metodos numericos.

2.1 Reconhecimento analıtico

A conceituacao analıtica rigorosa dos pontos especiais ja foi apresentada nocapıtulo 1. O objetivo agora e descobrir propriedades destes pontos especiais,em busca de uma alternativa: ao inves de procurar os pontos que satisfazema definicao (o que pode ser impraticavel, ou muito difıcil) a atencao e co-locada em pontos que satisfazem algumas propriedades, o que pode ser (enormalmente e mesmo!) bem mais simples.

Definicao 2.1.1 O ponto xe ∈ IR e um ponto estacionario da funcaof ∈ C1 quando e apenas quando f ′(xe) = 0.

Nos pontos estacionarios a derivada se anula. E claro que a funcao precisaser diferenciavel, ou melhor ainda, de classe C1.

Teorema 2.1.1 Se x∗ ∈ IR e um mınimo local de f ∈ C1 entao x∗ e esta-cionario: f ′(x∗) = 0.

Este primeiro teorema fornece uma condicao necessaria para um ponto x∗

ser mınimo local: ele deve ser estacionario. E interessante notar que o mınimoem questao pode ser fraco ou forte. Uma demonstracao sera fornecida para

16

Page 23: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

o caso geral de funcoes vetoriais, no proximo capıtulo. Para maximos ha umresultado semelhante.

Teorema 2.1.2 Se x∗ ∈ IR e um maximo local de f ∈ C1 entao x∗ e esta-cionario: f ′(x∗) = 0.

Isto e conhecido desde o colegial, derivar e igualar a zero! A busca deminimizadores ou maximizadores ja esta simplificada, basta buscar os es-tacionarios. Mas . . . basta mesmo? Infelizmente nao. Se se deseja, porexemplo, um mınimo e a funcao tem apenas um ponto estacionario, estepode muito bem ser um maximo, ou um ponto de inflexao. Para haver cer-teza de que o ponto estacionario em questao e realmente um minimizador oumaximizador, outras garantias, as condicoes suficientes, sao requeridas.

Teorema 2.1.3 Se x∗ ∈ IR e um ponto estacionario de f ∈ C2 e se f ′′(x∗) >0 entao x∗ e um minimizador local forte.

Teorema 2.1.4 Se x∗ ∈ IR e um ponto estacionario de f ∈ C2 e se f ′′(x∗) <0 entao x∗ e um maximizador local forte.

Pronto, com estas condicoes suficientes e possıvel testar os candidatos(os ponto estacionarios) e garantir a sua natureza. Assim, se x∗ e tal quef ′(x∗) = 0 ele sera estacionario e um candidato a otimizador. Ate aquitrabalhou a condicao necessaria, hora de entrarem as suficientes:

Se f ′′(x∗) > 0 entao x∗e mınimo local forteSe f ′′(x∗) < 0 entao x∗e maximo local forteSe f ′′(x∗) = 0 entao x∗nao otimiza, e de inflexao

Enredo conhecido ha muito tempo: derivar, igualar a zero e olhar a de-rivada segunda. Note-se: as condicoes analıticas de otimalidade funcionampara funcoes suaves, de classe C1 a necessaria e C2 as suficientes. A oti-mizacao analıtica de funcoes bruscas — as de pouca continuidade, de classeC0 — e problematica.

2.2 Exemplos praticos

Serao mostrados, sempre que possıvel, casos de interesse na engenharia. Porsorte, e enorme o numero de situacoes na engenharia que requerem oti-mizacao.

Exemplo 2.2.1 Construir uma caixa aberta a partir de uma folha de papeltamanho A4 de modo a maximizar o volume obtido. As dimensoes do papelA4 sao, em milımetros, 297× 210. A figura 2.1 mostra a situacao.

17

Page 24: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

comprimento = 297 − 2x

largura = 210 − 2x

altura = x

volume = (297− 2x)(210 − 2x)x

Figura 2.1: Caixa aberta a partir de folha A4; recortando-se, de cada canto,um quadrado com lado x e dobrando-se nas linhas pontilhadas, resulta emuma caixa com as medidas indicadas.

A funcao a ser maximizada e o volume da caixa:

volume = f(x) = (297− 2x)(210− 2x)x = 4x3 − 1014x2 + 62370x

Esta funcao objetivo e polinomial, uma parabola cubica. E relativamentesimples tracar o seu grafico, ate mesmo sem auxılio computacional. O resul-tado, usando o GNUPLOT, e mostrado na figura 2.2.

0

1e+06

2e+06

3e+06

4e+06

0 50 100 150 200

4x3 − 1014x2 + 62370x

Figura 2.2: Volume da caixa aberta em funcao de x.

Uma simples inspecao visual permite identificar o maximo: x∗ ≈ 45 cor-respondendo a V ∗ = f ∗ ≈ 106. Existe tambem um mınimo, em x ≈ 130,mas nao tem sentido um valor de x maior do que a metade de uma das di-mensoes do papel. A solucao analıtica tambem e simples, afinal esta funcaoe camarada. Usando as regras de derivacao:

f ′(x) = 12x2 − 2028x+ 62370

= 6(

2x2 − 338x+ 10395)

18

Page 25: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

cujas raızes sao os dois pontos estacionarios: xe1 = 128.58 e xe2 = 40.42.Para o veredicto final usa-se a derivada segunda.

f ′′(x) = 6(4x− 338) =⇒{

f ′′(xe1) > 0 donde xe1 e mınimof ′′(xe2) < 0 donde xe2 e maximo

O volume maximo pode ser obtido com precisao: V ∗ = f ∗ = 1128.5mm3.

Exemplo 2.2.2 Dada uma chapa de metal retangular de 50×30 unidades decomprimento, deseja-se caixas abertas, como antes, mas agora o lucro deveser maximo. Cada unidade de volume rende 0.10$, cada unidade de areadesprezada custa 0.04$ e a solda custa 0.02$ por unidade de comprimento.E facil deduzir que

lucro = 0.10 ∗ volume− 0.04 ∗ area− 0.02 ∗ comprimento

= 0.10(50− 2x)(30− 2x)x− 0.04(4x2)− 0.02(4x)

E bem parecido com o anterior, e fica para os leitores.

Exemplo 2.2.3 Construir e operar um tanque de refrigeracao cilındrico,com volume de 50m3 e custo total mınimo. As tampas circulares custam10$/m2, as paredes laterais custam 6$/m2, e a operacao depende da areatotal, custando 80$/m2. Calcular o diametro otimo para a base do tan-que. Sendo o volume fixo, deve-se exprimir a altura do tanque em funcaodo diametro x e depois calcular as areas das tampas, lateral e total.

volume = 50 = π(

x

2

)2

h =⇒ h =200

πx2

O custo total e obtido somando o custo das tampas, da parede lateral ede operacao.

custo = 10 ∗ area das tampas+ 6 ∗ area lateral+ 80 ∗ area total

= 10

(

2πx2

4

)

+ 6(

πx200

πx2

)

+ 80

(

2πx2

4+

200

x

)

= 45πx2 +17200

x= f(x)

As coisas ficam um pouquito mais difıceis, pois f nao e mais polinomial,mas ainda e perfeitamente possıvel tracar o grafico, como na figura 2.3, edele concluir que x∗ ≈ 4 e f ∗ ≈ 8000.

A solucao analıtica e menos direta, mas ainda facil:

f ′(x) = 90πx− 17200

x2= 0 ⇐⇒ x3 =

17200

90π

levando a x∗ = 3.93 e f ∗ = 6560 que representam efetivamente um mınimo,pois f ′′(x∗) < 0.

19

Page 26: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

0

10000

20000

30000

40000

50000

60000

2 4 6 8 10 12 14 16 18 20

45πx2 + 17200/x

Figura 2.3: Custo total do tanque cilındrico em funcao do diametro x

Exemplo 2.2.4 Trapezio inscrito em uma semicircunferencia de diametro20, que altura maximiza a area?

A O B

C D

M

OA = OB = OC = OD = r

MD = h OM = d

Figura 2.4: Trapezio inscrito em uma semicircunferencia de diametro 20

No triangulo retangulo OMD, r2 = h2 + d2 donde d =√r2 − h2 e a area

do trapezio e

Area =2d+ 2r

2h = 10h+ h

√100− h2 = f(h)

A otimizacao visual continua simples e direta, embora, talvez, pouco pre-cisa: h∗ ≈ 8.4 e A∗ ≈ 130. O processo analıtico e mais complicadinho, masainda da para encarar na mao.

f ′(x) = 10 +1

2

(

100h2 − h4)−1/2 (

200h− 4h3)

= 10 +100− 2h2

√100− h2

Igualando a zero leva a h2(h2 − 75) = 0, cuja solucao positiva e nao nulae h∗ =

√75 = 8.66, que corresponde ao maximo procurado.

20

Page 27: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

0

20

40

60

80

100

120

140

0 2 4 6 8 10

10x+ x√100− x2

Figura 2.5: Area do trapezio inscrito em funcao da altura h

Exemplo 2.2.5 Em uma solucao de cloreto de potassio a energia de atracaoe repulsao atomica e dada por

E = −1.44

r+

5.9× 10−6

r9

onde r e a distancia entre os atomos. Sabendo que os estados de equilıbrioocorrem nos mınimos de energia, calcular as distancias de equilıbrio. Nafigura 2.6 esta plotada a curva para 106E, e pode-se identificar claramente ominimizador r∗ ≈ 0.27.

-5e+06

-4e+06

-3e+06

-2e+06

-1e+06

0

1e+06

2e+06

3e+06

4e+06

5e+06

0.2 0.25 0.3 0.35 0.4 0.45 0.5

5.0x9 − 1440000

x

Figura 2.6: Energia em funcao da distancia interatomica

21

Page 28: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A solucao analıtica e obtida trilhando o caminho de sempre.

f ′(r) = 1.44r−2 − 9× 5.9× 10−6r−10 = 1.44r−2(

1− 3.6875× 10−5r−8)

f ′(r) = 0 ⇐⇒ r8 = 3.6875× 10−5 =⇒ r∗ = 0.279

O calculo da derivada segunda revelaria ser este um ponto de mınimo

Exemplo 2.2.6 Placa plana com um orifıcio circular de diametro d podesuportar uma tensao de tracao maxima dada pela formula

σ =1.11 + 1.11 (d/20)−0.18

20− d= f(d)

Calcular d que minimiza σ. A figura 2.7 mostra o grafico desta funcao, deonde se estima d∗ ≈ 2.

0.15

0.16

0.17

0.18

0.19

0.2

0.21

0.22

0.23

0.24

0 2 4 6 8 10

1.11(1 + 1.7147x0.18 )/(20− x)

Figura 2.7: Tensao na placa plana em funcao do diametro do orifıcio

O calculo de derivada primeira forneceria, apos alguns algebrismos

f ′(d) =1.11(−0.18)(d/20)−1.18(20− d)(1/20) + 1.11 + 1.11(d/20)−0.18

(20− d)2

f ′(x) =1.11

400

1 + 1.18x−0.18 − 0.18x−1.18

(1− x)2onde x =

d

20

O calculo dos pontos estacionarios recai em uma equacao cuja solucaonao e muito facil . . .

22

Page 29: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

2.3 Conclusoes parciais

A otimizacao visual e comoda, agradavel e foi possıvel em todos os casosvistos. Pode-se arriscar uma afirmacao: os atuais recursos computacionaisde visualizacao tornam a otimizacao visual sempre (ou, va la, quase sempre)possıvel para o caso univariavel. Se nao se puder usa-los, fica-se restrito apouquıssimos casos polinomiais de baixo grau, onde o tracado manual dascurvas e factıvel.

A otimizacao analıtica pode ser simples e direta nos casos polinomiais debaixo grau, mas pode conduzir a equacoes mais delicadas ou ate mesmo asituacoes definitivamente complicadas, como se pode perceber nos exemplosanteriores. E preciso lembrar que ainda se trata do caso escalar, com funcoesreais de uma unica variavel real, e as previsoes para o caso multivariavel ficampreocupantes. Com efeito, para f : IRn → IR com n = 2 as visualizacoes saomais elaboradas e trabalhosas, mas quando n > 2 elas sao impossıveis. Alemdisto, e facil aceitar que as solucoes analıticas podem se tornar difıceis e im-praticaveis. Esta situacao gera a necessidade de procedimentos alternativospara a solucao de problemas de otimizacao, os . . .

2.4 Metodos Numericos

Os procedimentos visuais e analıticos, quando aplicados a situacoes praticas,eventualmente encontram seus limites. Estes limites sao superados pelastecnicas numericas. Atualmente a otimizacao — e varios outros campos daciencia e da tecnologia — esta intimamente associada aos metodos numericos.A menos de raras excecoes, a busca real de solucoes analıticas deve ser im-plementada por meios numericos, aproveitando a abundancia e custo cadavez menor dos recursos computacionais.

2.4.1 Raızes de funcoes

As raızes, ou zeros, de uma funcao escalar f sao as solucoes da equacaof(x) = 0. Em alguns casos, como por exemplo quando f e polinomial comgrau ≤ 4, a matematica oferece procedimentos solidos e exatos para o calculodas raızes, mas e comum encontrar situacoes onde estas solucoes analıticasse tornam muito trabalhosas, ou mesmo impossıveis.

A busca de raızes e util em otimizacao porque permite encontrar os pontosestacionarios de funcoes, e estes sao os candidatos a minimizadores ou maxi-mizadores, como ja visto. Alguns problemas de otimizacao vetorial tambemenvolvem o calculo de raızes. Seguem alguns metodos simples e tradicionais

23

Page 30: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

para o calculo numerico de raızes, utilizaveis quando a funcao pesquisada esuficientemente suave.

Metodo da bissecao

A ideia e simples e intuitiva: e dado um intervalo inicial onde garantidamenteexiste uma raiz, como na figura 2.8. Este intervalo e dividido em duas partesiguais, com auxılio de seu ponto medio, e verifica-se em qual das duas metadesa raiz permanece. E assim procede o metodo, gerando intervalos cada vezmenores e que sempre contem a raiz.

x

✻f(x)

a

fa

b

fb

Figura 2.8: Intervalo contendo uma raiz

Como saber com certeza se em um dado intervalo existe uma raiz? Umcriterio simples, para o qual e necessaria a continuidade de f , e calcularf(a) = fa e f(b) = fb. Se fafb < 0 entao uma raiz de f certamente estacontida no intervalo [a b]. Na realidade este criterio garante a existencia deum numero ımpar de raızes de f no intervalo. O metodo convergira parauma delas.

Algoritmo 2.4.1 (Metodo da Bissecao)

Dados: • f : IR → IR, uma funcao suave, (≥ C0)

• I0 = [a b] ⊂ IR, intervalo com fafb < 0

• δ ∈ IR+, tolerancia

Meta: Encontrar um intervalo I suficientemente pequeno con-tendo uma raiz de f .

Passo i, i = 1, 2 . . .

1. [a b] = Ii−1 intervalo inicial

2. c = a + (b− a)/2 bissecao do intervalo

24

Page 31: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3. fa = f(a), fb = f(b), fc = f(c) calculo da funcao

4. fafc < 0 raiz na 1.a metade

(a) b = c novo limite

(b) Ii = [a b] e vai para 6. novo intervalo

5. fafc > 0 raiz na 2.a metade

(a) a = c novo limite

(b) Ii = [a b] novo intervalo

6. (b− a) > δ repete o passo

7. (b− a) < δ =⇒ I = Ii FIM

Em cada passo a largura do intervalo e reduzida a metade, e assim, aofinal do k-esimo passo, o intervalo resultante tem amplitude Lk

Lk = L02−k = (b− a)2−k

E facil calcular o numero de iteracoes necessarias para que a toleranciadesejada seja atingida:

Lk < δ ⇐⇒ k > log2b− a

δ

Este metodo converge sempre, e e razoavelmente rapido. Pode-se pensarem esquemas para acelerar seu comportamento, como por exemplo dividir ointervalo em 3 (ou mais) partes iguais.

Enquadramento Inicial

O resultado de cada passo do algoritmo e um intervalo que enquadra a raiz:x∗ ∈ Ik. O intervalo inicial I0 tambem precisa enquadra-la, como escolhe-lo?Pode-se pensar em um procedimento do tipo:

• fixar um ponto a ∈ IR e um passo 0 < ∆i ∈ IR

• calcular b = a+∆i

• fafb < 0 → I0 = [a b] → FIM

• fafb > 0 aumentar ∆i e recomecar

Qualquer conhecimento previo do usuario sobre f ajudara.

25

Page 32: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Metodo de Newton

A base do metodo anterior e uma sequencia de intervalos cada vez menorese que sempre enquadram a solucao x∗. A ideia agora e gerar uma sequenciade pontos cada vez mais proximos da raiz procurada x∗. Dado um ponto,como obter um outro ponto melhor? Uma tatica muito usada e a de escolherum substituto de f , ou seja, uma funcao g que seja proxima de f no pontoem consideracao e cuja raiz seja facil de obter. Em certas condicoes esta raizsubstituta esta mais proxima de x∗ do que o ponto inicial.

✻f(x)

xb a

fa

f ′(a) = fa/(a− b)

Figura 2.9: Base do metodo de Newton

A figura 2.9 ilustra a base do metodo. A tangente a uma curva, em umdado ponto e, possivelmente, o substituto em que primeiro se pensa, e serautilizada neste procedimento.

Algoritmo 2.4.2 (Metodo de Newton)

Dados: • f : IR → IR, uma funcao suave, (≥ C1)

• f ′ : IR → IR, sua derivada

• x0 ∈ IR, palpite inicial

• δ ∈ IR+, toleranciaMeta: Encontrar xr suficientemente proximo de uma raiz de f .

Passo i, i = 1, 2 . . .

1. a = xi−1 ponto inicial

2. fa = f(a), f ′a = f ′(a) calculos

3. b = a− fa/f′a novo ponto

4. xi = b atualiza o ponto

5. (b− a) > δ =⇒ repete o passo

26

Page 33: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

6. (b− a) < δ =⇒ xr = b FIM

A partir de um palpite inicial x0, para determinar o proximo ponto usa-se um substituto de f , a sua tangente em x0. Quando o inicializador x0 ebem escolhido (isto, em geral, significa que x0 esta proximo da solucao x∗)a convergencia e rapida, com ındice quadratico. Escolhas menos felizes dex0 podem acarretar problemas, ou mesmo impossibilidade de convergencia.Uma escolha particularmente problematica para x0 e a de um ponto esta-cionario, onde f ′(x0) = 0 e o algoritmo e incapaz de partir. Em geral, se aderivada em uma iteracao qualquer e pequena — f ′(xi) ≈ 0 — havera pro-blemas na convergencia do algoritmo. Os leitores sao convidados a analisaros efeitos dos inicializadores a, b e c na figura 2.10.

✲x

✻f(x)

ab c

Figura 2.10: Que dizer destes inicializadores?

Isto mostra que a eficiencia do metodo e muito sensıvel a escolha doinicializador x0 e assim, qualquer experiencia previa do usuario com respeito asua localizacao pode ser util. Em varios outros metodos numericos, aplicadosou nao a Otimizacao, a escolha de inicializadores e um passo importante,muitas vezes decisivo para o sucesso da busca.

Outro aspecto importante e o criterio de parada. Como saber se o pontogerado em uma dada iteracao esta suficientemente proximo da solucao desco-nhecida x∗, ou seja, quando finalizar o processo? Como o objetivo procuradoe uma raiz da funcao f , e possıvel monitorar f(xi) , a cada passo i, e pararquando este valor for considerado satisfatorio. Uma estrategia de parada di-ferente foi usada no algoritmo acima. Para explica-la considera-se o seguintefato: quando dois pontos sucessivos estiverem suficientemente proximos en-tre si entao eles estao igualmente proximos da solucao. A validade destaafirmacao pode ser demonstrada com rigor. Em sımbolos:

Se |xk − xk−1| < δ entao xk = xr ≈ x∗

27

Page 34: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Um claro inconveniente do metodo de Newton, do modo como foi apre-sentado, e a necessidade de se conhecer a expressao analıtica para a deri-vada da funcao f . Uma maneira de evitar este incomodo e fazer o calculonumerico das derivadas. Este calculo e feito escolhendo dois pontos proximosdo ponto considerado, que determinarao uma secante a curva, a qual, sob cer-tas condicoes, pode ser considerada uma aproximacao da tangente. O usodas secantes e importante a ponto de merecer um metodo proprio.

Metodo da secante

A filosofia basica e a mesma, o uso de um substituto para f , cuja raiz sejade facil determinacao. Neste caso o substituto e ainda uma funcao linear, asecante e nao mais a tangente.

✻f(x)

✲xc b a

fa

Figura 2.11: Usando uma secante como substituto

Dado o passo inicial, a primeira providencia e determinar um outro pontoda secante. Em geral isto e feito por meio de um avanco ε: b = a + ε. Nasituacao ilustrada na figura 2.11 seria necessario um avanco negativo paraobter b. Um raciocınio geometrico elementar, baseado em semelhanca detriangulos, leva a

a− c

b− c=

fafb

=⇒ a− c = (b− c)fafb

=⇒ c = b− a− b

fa − fbfb

Algoritmo 2.4.3 (Metodo da Secante)

Dados: • f : IR → IR, uma funcao suave, (≥ C1)

• x0 ∈ IR, palpite inicial

• ε0 ∈ IR, avanco inicial

• δ ∈ IR+, toleranciaMeta: Encontrar xr suficientemente proximo de uma raiz de f .

Passo i, i = 1, 2 . . .

28

Page 35: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

1. a = xi−1 ponto inicial

2. b = a+ εi outro ponto da secante

3. c = b− fb(a− b)/(fa − fb) raiz da secante

4. xi = c atualiza o ponto

5. (c− a) > δ =⇒ repete o passo

6. (c− a) < δ =⇒ c = xr FIM

Os comentarios feitos ao metodo de Newton se aplicam aqui, com relacaoa convergencia, etc. A novidade e a presenca do parametro de controle εi.Um valor constante em todos os passos simplifica o algoritmo, mas requerum valor pequeno para o avanco, para nao nos afastarmos muito da regiaode interesse. Como, por outro lado, valores muito pequenos para ε podemtrazer problemas numericos, ou de lentidao, o ideal e um esquema onde ε eescolhido passo a passo Quando o avanco inicial ε0 e grande pode-se ter oponto b tal que fafb < 0, ou seja, o interfvalo [a b] enquadra a raiz.

Metodo da Regula Falsa

E novamente um metodo de intervalos, onde o passo posterior e determinadonao mais por bissecao mas sim por uma secante. E tambem chamado deinterpolacao linear.

✻f(x)

✲xb

a c

Figura 2.12: Regula Falsa ou interpolacao linear

A estrutura basica do algoritmo da bissecao pode ser usada, apenas mudao calculo do ponto c

c− a

−fa=

b− c

fb=⇒ cfb − afb = cfa − bfa =⇒ c =

afb − bfafb − fa

A convergencia e assegurada, mas as coisas podem ser lentas.

29

Page 36: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Interpolacoes de ordem superior

O princıpio basico dos metodos de Newton e da secante e o mesmo: um subs-tituto de f permite calcular, a cada passo, uma aproximacao melhor para araiz. A facilidade de se obter raızes de funcoes lineares garante a populari-dade destes metodos, mas pode-se pensar em aproximacoes mais elaboradasque podem melhorar as caracterısticas de convergencia dos processos.

Se, por exemplo, a partir de um ponto inicial a gera-se dois outros pontosb e c proximos, e possıvel encontrar uma parabola quadratica αx2 + βx+ γpara substituir f . Alem desta curva de segundo grau, ha outras funcoes can-didatas: polinomiais, racionais, ou de qualquer tipo. A complexidade dosalgoritmos aumentaria, mas os ganhos em velocidade podem ser significati-vos.

Exemplo 2.4.1 Escrever programas, em linguagem MATLAB, para imple-mentar os algoritmos da bissecao, Newton, secante e regula falsa. Encontraras raızes que determinam os mınimos de todos os exemplos ja vistos.

2.5 Mınimos de funcoes escalares

A partir de agora, os procedimentos numericos que permitem a obtencao di-reta dos mınimos serao discutidos, para funcoes univariaveis suaves, inicial-mente. Assim como no caso de raızes de funcoes, os metodos de minimizacaonumerica direta podem pertencer a duas famılias basicas.

Metodos de intervalos enquadrantes. Tambem chamados de metodosde reducao de intervalos. Dado um intervalo I0 ⊂ IR que enquadraa solucao (raiz ou mınimo), ou seja, x∗ ∈ I0, encontrar uma famılia deintervalos {Ij} tais que Ij ⊂ Ij−1 e x

∗ ∈ Ij para j = 1, 2, . . .. A bissecaoe a regula falsa geram intervalos assim.

Metodos de pontos convergentes. Dado um palpite inicial x0 ∈ IR, en-contrar uma sequencia de pontos {xk}, para k = 1, 2, . . ., tal que

limk→∞

xk = x∗

Alem destas classes basicas, e preciso mencionar o conceito de metodogarantido. Uma ideia preliminar e a de metodo seguro ou confiavel. Ummetodo e seguro quando sua aplicacao leva sempre a um resultado. Conformeja visto nestas notas, o metodo da bissecao e seguro, mas o de Newton nao,por depender criticamente de x0 e da particular funcao f .

30

Page 37: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Alguns outros metodos, como por exemplo os de interpolacoes, podemser extremamente rapidos quando f e “boazinha” e x0 e bem escolhido. Ummetodo e chamado de garantido quando e rapido para funcoes camaradas,e seguro em caso contrario. E claro que e exatamente este o objetivo dequalquer procedimento numerico!

2.5.1 Funcoes unimodais e enquadramento

Os metodos de intervalos para a obtencao de raızes se baseiam no conceitode “enquadrar” a solucao: cada intervalo deve conter uma unica raiz, ou umnumero ımpar delas. Algo semelhante e necessario na busca de mınimos, epara isto entra em cena o conceito de unimodalidade: uma funcao unimo-dal em um dado intervalo possuira um unico mınimo nesse intervalo.

Definicao 2.5.1 Uma dada f : IR → IR e unimodal no intervalo [a b] quandoexiste um unico x∗ ∈ [a b] tal que, para quaisquer x1, x2 ∈ [a b] com x1 < x2,verifica-se que

x2 < x∗ =⇒ f(x1) > f(x2)

x1 > x∗ =⇒ f(x1) < f(x2)

Em outras palavras: a funcao decresce monotonicamente quando x seaproxima de x∗ pela esquerda, partindo de a, e cresce monotonicamentequando se afasta pela direita, em direcao a b. E interessante notar quemesmo funcoes nao suaves e nao convexas podem ser unimodais, como nacurva da esquerda da figura 2.13. Como o interesse em funcoes suaves, e sepossıvel convexas, e maior, entao e bom armazenar na memoria a curva dadireita da mesma figura. O leitor deve se convencer de que o conceito deunimodalidade implica na existencia de um unico mınimo no intervalo.

✲x

✻f(x)

a bx∗✲x

✻f(x)

a x∗ b

Figura 2.13: Exemplos de funcoes unimodais

Se f e unimodal em um intervalo [a b] = Ik ⊂ IR, entao este intervaloenquadra um mınimo, o unico mınimo, como devem fazer todos os intervalos

31

Page 38: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

de interesse nos metodos numericos. Neste ponto surgem dois problemas:em primeiro lugar, como escolher, dentro de um intervalo enquadrante, umoutro intervalo enquadrante? Isto constitui a base dos metodos numericos,e sera visto mais a frente. Mais urgente e mais geral e: como escolher in-tervalos enquadrantes? como verificar se um dado intervalo e enquadrante?A unimodalidade de um intervalo e suficiente para que ele seja enquadrante,como ja visto, mas as condicoes de definicao 2.5.1 sao de aplicacao incomoda,pois o conhecimento de x∗ se faz necessario. Para contornar este impasse esimplificar as coisas, o chamado Criterio dos 3 pontos entra em cena.

Propriedade 2.5.1 Sejam x1, x2, x3 ∈ IR tais que x1 < x2 < x3 e umafuncao f : IR → IR suave. Se f(x1) ≥ f(x2) < f(x3) entao o intervalo[x1 x3] enquadra um mınimo.

A demonstracao desta propriedade sera omitida, ela e baseada em conti-nuidade. E importante notar que o resultado continua valido se x1 > x2 > x3,ou seja, o ponto x2 deve estar entre os outros dois. E tambem importantefrizar que este criterio dos 3 pontos garante intervalos enquadrantes, masnao unimodais. Em outras palavras, pode haver mais de um mınimo em umintervalo onde a condicao e satisfeita, como se ve na figura 2.14.

✲x

✻f(x)

x3 x2 x1

Figura 2.14: Intervalo nao unimodal que satisfaz os 3 pontos

O criterio dos 3 pontos e, claramente, menos poderoso do que a unimoda-lidade, mas sua aplicacao e muito simples e isto compensa a possibilidade deenquadramento de mais de um mınimo. O criterio dos 3 pontos e o usado, emgeral, nos procedimentos numericos. Antes de um detalhamento maior, umproblema pratico importante precisa ser resolvido, o problema de encontrarum intervalo enquadrante inicial.

2.5.2 Enquadramento inicial

Qualquer conhecimento previo sobre o problema, que permita estimar umintervalo onde se deve procurar o mınimo, sera saudado com entusiasmo. Se

32

Page 39: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

nada disso houver, deve-se lancar mao de um procedimento numerico extrapara determinar um intervalo que contenha a solucao. A ideia e procurarx1, x2 e x3 que satisfacam o criterio dos 3 pontos e possam servir como in-tervalo enquadrante inicial. Dados inicialmente o ponto x1 e um avanco ∆calcula-se x2 = x1 + ∆. Se f2 ≤ f1 isto significa que o sentido de avanco ecorreto e deve ser mantido ate se encontrar x3 tal que f3 > f2. Quando oresultado da primeira verificacao e f2 > f1, a funcao esta crescendo e deve-seinverter o sentido da busca (passo 4 abaixo).

Algoritmo 2.5.1 (Enquadramento Inicial por 3 pontos)

Dados: • f : IR → IR, uma funcao suave

• x1 ∈ IR, ponto inicial

• ∆ ∈ IR, avanco fixo

• γ ≥ 1 parametro de expansao

Objetivo: Encontrar [a b] ∈ IR que enquadre um mınimo de f

Passo i, i = 1, 2 . . .

1. x2 = x1 +∆

2. f1 = f(x1), f2 = f(x2)

3. f2 ≤ f1 =⇒ passo 5 continua avancando

4. a = x1, b = x2, x1 = b, x2 = a, ∆ = −∆ inversao de sentido

5. x3 = x2 + γ∆, f3 = f(x3) continua avancando

6. f3 > f2 =⇒ passo 8 tudo bem

7. x1 = x2, x2 = x3 =⇒ passo 5 recomeca de x2

8. a = x1, b = x3 =⇒ FIM

O fator de expansao γ = 1 significa que todos os avancos sao iguais a ∆:x3 = x2+∆ = x1+∆+∆. Para acelerar o procedimento usa-se normalmenteγ = 2 ou γ = 1.618, a razao aurea.

Exemplo 2.5.1 Aplicar o metodo acima para f(x) = −x3 + 6x2 + 15x− 5.O uso de x1 = 0 e ∆ = 1 leva a x2 = 1, f1 = −5 e f2 = 15 > f1. Invertendoo sentido da busca: x1 = 1, ∆ = −1, x2 = 0, f1 = 15 e f2 = −5 ≤ f1 eisto garante que este e o sentido correto. Entra agora o fator de expansao ea procura de x3. Para voces, leitores.

33

Page 40: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A procura de bons inicializadores, pontos ou intervalos iniciais, e algosempre presente em otimizacao. Em geral esta e uma etapa delicada e capazde influenciar ate mesmo o sucesso final do algoritmo, vide Newton. Em mui-tas aplicacoes, o fenomeno estudado e conhecido com profundidade suficientepara se ter uma nocao precisa dos limites onde se espera o extremo. Isto eprecioso, pois evita a aplicacao de algoritmos inicializadores e ja se pode irdireto aos metodos minimizadores. A eles entao!

2.5.3 Reducao de intervalos

Sendo Ik, com largura Lk, um intervalo enquadrante (ou por ser unimodal,ou pelo teste dos 3 pontos), como encontrar um intervalo Ik+1, menor, comlargura Lk+1, que ainda enquadre o mınimo, ou seja, Ik+1 ⊂ Ik e Lk+1 < Lk?O Criterio dos 2 Pontos cuida destes aspectos: dois pontos internos saoescolhidos no intervalo inicial, e um rapido teste permite selecionar um novointervalo. A figura 2.15 mostra o processo. Tomando os pontos x1, x2 ∈ [a b]com x1 < x2 calcula-se f1 = f(x1) e f2 = f(x2) e aplica-se o criterio

f1 = f2 −→ x∗ ∈ [x1 x2] ⊂ [a b]

f1 > f2 −→ x∗ ∈ [x1 b] ⊂ [a b]

f1 < f2 −→ x∗ ∈ [a x2] ⊂ [a b]

✲x

✻f(x)fa

a x1 x2

fb

b

fa = f(a)

fb = f(b)

f1 = f(x1)

f2 = f(x2)

Figura 2.15: Diminuindo a largura dos intervalos enquadrantes

Este teste sempre gera um intervalo enquadrante contido no anterior, euma vez definidas regras para a obtencao dos pontos interiores x1 e x2 ummetodo numerico de busca direta do otimo sera obtido. Quando um inter-valo envolvido nesse processo e enquadrante mas nao unimodal pode haverproblemas. E facil perceber isso, pois nesse caso o intervalo pode conter maisde um mınimo, e o processo de reducao pode eliminar coisas que nao deve-riam ser eliminadas! Apesar destes possıveis perigos, os metodos numericos,em geral, empregam estas tecnicas de reducao de largura, implicitamenteconfiando que os intevalos sejam unimodais.

34

Page 41: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

2.6 Metodo de Fibonacci

Dado um intervalo enquadrante generico Ik = [a b], onde a funcao f e unimo-dal, escolhe-se dois pontos internos simetricos com relacao ao centro. Cha-mando x1 = a e x4 = b os pontos escolhidos serao x2 e x3.

a x2 x3 bx1 x4

A localizacao exata desses pontos internos x2 e x3, a partir do segundointervalo, e feita de maneira automatica, como se vera em breve. Restaassim um detalhe importante, a primeira escolha. Dado um intervalo inicialI1 = [a b] = [x1 x4], com largura L1, como determinar seus pontos interiores?O metodo de Fibonacci necessita de um fator de reducao inicial, um realα1, com 0.5 < α1 < 0.7. Mais a frente se vera como encontrar tal fator, e oporque desses limites. A largura do segundo intervalo e obtida a partir de

L2 = α1L1 donde 0.5L1 < L2 < 0.7L1

Como os pontos internos adicionais sao equidistantes do ponto medio, eclaro que x3−x1 = x4−x2, donde, conhecida a nova largura, eles podem serobtidos facilmente, de uma maneira geometrica

x3 tal que x3 − x1 = L2 e x2 tal que x4 − x2 = L2

ou entao de um modo algebrico:

x2 = α1x1 + (1− α1)x4 x3 = (1− α1)x1 + α1x4

A primeira reducao depende deste parametro α1 ainda nao discutido. Areducao dos intervalos Ik para k > 1 e efetuada como acima, de maneiraalgebrica ou geometrica, desde que se conheca o fator de reducao αk.

Para explicar o mecanismo geral de reducao de intervalos, seja novamenteo intervalo enquadrante generico Ik = [a b] = [x1 x4] visualizado acima, ondef e unimodal e os pontos internos simetricos com relacao ao centro sao x2 ex3. Para determinar o proximo intervalo enquadrante, Ik+1, usa-se o Criteriodos 2 Pontos. Se f2 < f3 entao [x1 x3] e o novo intervalo, e se f2 > f3 entao[x2 x4] sao retidos. No caso de igualdade entre f2 e f3, a escolha e indiferente,ambos os intervalos serao enquadrantes. A unimodalidade de f em Ik validaeste procedimento; se o intervalo Ik for enquadrante, com garantia dada pelocriterio dos 3 pontos, mas nao unimodal podera haver problemas.

Supondo que o primeiro caso ocorre, e o novo intervalo e o da esquerda,Ik+1 = [x1 x3], pode-se rebatiza-lo de [a b] e reiniciar o processo, achando

35

Page 42: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

dois pontos internos x′2 e x′

3 equidistantes do centro. E util notar que se oponto x2 “antigo” puder ser aproveitado, isto poupara trabalho.

x1 x2 x3 x4intervalos antigo e novo

a x2 bx′2 e x′

3 tais que x′3 − a = b− x′

2

x′2 x′

3

Ha novamente quatro pontos, em um intervalo menor, e o processo podecontinuar. Se o segundo caso ocorre e o intervalo da direita e o eleito, pode-serebatiza-lo Ik+1 = [x2 x4] = [a b] e recomecar com novos pontos interiores (seo “antigo” x3 puder ser aproveitado, melhor):

x1 x2 x3 x4

a x3 b

x′2 x′

3

A descricao acima e bastante geral. E neste ponto entra uma particula-ridade importante do metodo de Fibonacci: os pontos “antigos” sao sempreaproveitados! Isto significa que x′

3 = x2 nos intervalos da esquerda, ou entao,nos da direita, x′

2 = x3. Para uma visao mais detalhada supoe-se, sem perdade generalidade, que os intervalos enquadrantes reduzidos sao sempre os daesquerda. Com isto:

Ik = [x1 x4] com largura Lk = x4 − x1

Ik+1 = [x1 x3] com largura Lk+1 = x3 − x1

Na proxima reducao, supondo ainda que o intervalo da esquerda e oescolhido, Ik+2 = [x1 x′

3]. Mas os pontos antigos sao aproveitados, entaox′3 = x2 e pode-se escrever

Ik+2 = [x1 x2] com largura Lk+2 = x2 − x1

Como x2 e x3 sao equidistantes do centro do segmento e facil acompanharo desenvolvimento abaixo

Lk+2 = x2 − x1

= x4 − x3

= x4 − x1 + x1 − x3

= Lk − Lk+1

36

Page 43: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Este e um aspecto marcante do metodo de Fibonacci: a largura de umintervalo qualquer da sequencia e obtida subtraindo as larguras dos doisintervalos imediatamente anteriores. E isto acontecera mesmo se intervalosda direita forem eventualmente escolhidos nas selecoes.

A mecanica basica de geracao de intervalos do metodo esta exposta, masvarios detalhes ainda precisam ser explicados. Como encontrar α1, o fator dereducao inicial? Como determinar a largura do k-esimo intervalo? Quantasiteracoes sao necessarias para que os intervalos sejam menores que uma dadatolerancia? Para facilitar a analise, as relacoes acima sao reescritas.

L1 = L2 + L3

L2 = L3 + L4

...

Lj = Lj+1 + Lj+2

...

Lk−2 = Lk−1 + Lk

Lk−1 = Lk + Lk+1

Lk = . . .

A sequencia anterior pode ser reescrita, na ordem inversa.

Lk

Lk−1 = Lk+1 + Lk

Lk−2 = Lk−1 + Lk

...

L2 = L3 + L4

L1 = L2 + L3

Usar uma nova variavel Fi = Lk−i+1 leva a outra versao para a sequenciaacima, com a numeracao dos ındices comecando no topo da lista e nao abaixo

F1 = Lk

F2 = Lk−1

F3 = Lk−2 = F1 + F2

...

Fi = Fi−2 + Fi−1

...

Fk = Fk−2 + Fk−1

37

Page 44: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Mas isto e uma sequencia de Fibonacci! Fibo quem, o que e isto? Horade recordar, ao passado entao.

2.6.1 Numeros de Fibonacci

Leonardo de Pisa viveu na Italia entre os anos 1180–1250. Filho de umcomerciante que possuıa negocios no mundo arabe, e muito provavel que eletenha sido educado la, e la tenha aprendido sobre o que hoje se conhece comoalgarismos indo-arabicos. O fato e que ele foi um dos principais deflagradoresde uma das maiores revolucoes da historia da Matematica Ocidental ao lancara obra Liber Abaci (Livro dos Abacos), onde descreve os novos conceitos emuitas de suas consequencias.

A despeito do tıtulo, esse livro nao e sobre abacos, e um tratado bastantecompleto sobre metodos e problemas algebricos em que o uso de numeraisindo-arabicos e fortemente recomendado. O Liber Abaci apresenta partespouco interessantes para o leitor moderno, mas muito uteis na epoca, sobrecomo resolver certas transacoes comerciais usando um complicado sistemade fracoes para calcular o cambio entre diferentes moedas. Apesar destaspassagens, alguns dos problemas comentados sao tao estimulantes que foram— e continuam sendo — usados por autores posteriores. Eis um destesproblemas, provavelmente adaptado de um papiro egıpcio arcaico.

Sete velhas foram a Roma; cada uma tinha sete mulas; cada mulacarregava sete sacos; cada saco continha sete paes; em cada paohavia sete facas e cada faca estava dentro de sete bainhas.

Era isto. O que mesmo se pedia, senhor Leonardo, o numero total debainhas? Este problema pode parecer meio bobo e elementar hoje em dia,mas e preciso lembrar que nos tempos de Leonardo (e, mais ainda, nos temposdo antigo Egito) nao havia computadores para auxiliar nas contas. Tambemnao havia calculadoras, e nem sequer reguas de calculo. Nao, tabuas delogaritmo ainda nao tinham sido inventadas. Pessoal, nem Aritmetica existia(pelo menos na Europa), as quatro operacoes basicas, as tabuadas nada dissoera de conhecimento geral. Quando muito, havia abacos, e mesmo assim paraos poucos que os sabiam manejar. O problema das sete velhas e de fato meiotolo, basta calcular 76 e hoje se tira isso de letra, mas naquele tempo . . .O problema do Liber Abaci que mais inspirou os futuros matematicos foi oseguinte:

Quantos casais de coelhos sao produzidos em um ano, comecandocom apenas um casal, se em cada mes um casal gera um novo casalque se torna produtivo depois de um mes?

38

Page 45: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Alem desta obra Leonardo tambem escreveu outras, como por exem-plo Flos, Liber Quadratorum e Practica Geometriae, todas muitaavancadas para a epoca em que viveu, mas suficientes para que fosse consi-derado pela posteridade como o matematico mais original e capaz do mundocristao medieval. Como seu pai fosse chamado de Bonaccio, Leonardo dePisa era conhecido como filho de Bonaccio ou, em italiano, Figlio Bonaccioou simplesmente Fibonaccio ou Fibonacci.

Chega de Historia, e hora de dar uma olhada nesses coelhos. O primeiromes de cada casal e o mes de maturacao, e o casal apenas sobrevive. Depoisdeste perıodo, o casal ja e capaz de procriar, e ao final do segundo mesele gerou outro casal, e permanece vivo. Simbolizando um casal jovem poruma circunferencia e um casal maduro por um cırculo chega-se a seguinteexplicacao grafica para o processo

mes #1 mes #2

inıcio do mes numero de casais1 12 13 2

Agora e facil continuar, o mecanismo basico foi descoberto, casal imaturoapenas sobrevive, casal maduro sobrevive e gera outro casal. Ou entao:de cada circunferencia sai apenas uma seta, e de cada cırculo saem duas.Completando o esquema para mais alguns meses leva ao diagrama tipo arvoreilustrado na figura 2.16.

O diagrama da figura 2.16 facilita o estabelecimento dos famosos numerosde Fibonacci:

1 1 2 3 5 8 13 21 34 55 · · ·

A partir do terceiro, cada um destes numeros pode ser obtido somando osdois numeros imediatamente precedentes. Em uma criacao real de coelhos ascoisas podem ser diferentes, pois cada casal maduro normalmente gera maisde um casal de descendentes por perıodo. Em compensacao, varios elementossao perdidos e nao amadurecem ou procriam. Deste modo pode-se dizer queos numeros de Fibonacci ajudam a entender o mecanismo de crescimentode colonias de animais, mas a importancia destes numeros extrapola estaspossıveis aplicacoes.

39

Page 46: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Figura 2.16: Visualizando os numeros de Fibonacci

Equacao de Fibonacci

Para um estudo mais detalhado dos numeros de Fibonacci, seja a relacaoabaixo.

{

f(i+ 2) = f(i+ 1) + f(i) i = 0, 1, 2, . . .f(0) = f0, f(1) = f1

E facil perceber a lei de formacao por tras desta equacao de recorrencias:cada elemento e obtido somando dois elementos precedentes, a propria ideiados numeros de Fibonacci. Os dois primeiros elementos, as condicoes iniciais,sao dados do problema. Se f0 = f1 = 0 resulta a sequencia nula 0 0 0 . . .A escolha f0 = f1 = 1 gera 1 1 2 3 5 8 . . ., os numeros de Fibonacci. Sef0 = 0 e f1 = 1 o resultado sera 0 1 1 2 3 5 8 . . ., a sequencia de Fibonaccideslocada para a direita. Os leitores sao convidados a testar os efeitos deoutras condicoes iniciais.

Para calcular f(k), o valor da sequencia de Fibonacci no inteiro k, bastaaplicar a definicao k − 2 vezes, mas esta tarefa pode ser muito pesada paravalores altos de k. Seria interessante uma formula de aplicacao direta, quefornecesse f(k) para qualquer valor de k, sem a necessidade das k−2 iteracoes.Esta formula existe e pode ser encontrada, por exemplo, aplicando a teoriadas transformadas Z na relacao basica. O resultado geral e

f(k) =f0√5 + 2f1 − f0

2√5

(

1 +√5

2

)k

+f0√5− 2f1 + f0

2√5

(

1−√5

2

)k

40

Page 47: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Uma expressao para a sequencia de Fibonacci tradicional e obtida quandof0 = f1 = 1

f(k) =1 +

√5

2√5

(

1 +√5

2

)k

− 1−√5

2√5

(

1−√5

2

)k

Uma simplificacao trivial leva a conhecida formula de Binet para o k-esimo numero de Fibonacci:

f(k) =

√5

5

(

1 +√5

2

)k+1

−(

1−√5

2

)k+1

(2.1)

Aplicando esta expressao para k = 0, 1, 2 . . . sao gerados os numeros deFibonacci. Usando-a tambem se pode calcular a razao entre dois numeros deFibonacci consecutivos, Apos alguns algebrismos simples chega-se a

r(k) =f(k)

f(k − 1)=

1 +√5

2

1− pk+1

1− pkonde p =

1−√5

1 +√5

(2.2)

Mas p ≈ −0.3820, logo |p| < 1, donde |pk| e |pk+1| tendem a 0 quandok cresce e assim a razao entre dois numeros de Fibonacci consecutivos eelevados tende a

limk→∞

r(k) =1 +

√5

2= 1.6180 . . .

Opa! Pode haver sinetas tocando para alguns leitores, pois este e umnumero conhecido. Mas isto fica para depois, ja se faz tarde e e hora de inter-romper esta agradavel revisao matematica e retornar aos metodos numericosde otimizacao.

2.6.2 Metodo de Fibonacci (de novo)

Recordacao das ultimas secoes: uma sequencia I1, I2, . . . Ik de intervalosenquadrantes era gerada, na qual, sendo Li a largura do i-esimo intervalo, asseguintes relacoes se verificavam

L1 = L2 + L3

L2 = L3 + L4

...

Lk−2 = Lk−1 + Lk

Lk−1 = Lk + Lk+1 = 2Lk

Lk = suficientemente pequeno

41

Page 48: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Escrevendo esta sequencia na ordem inversa e rebatizando cada termoleva a

F1 = Lk

F2 = Lk−1

F3 = F2 + F1

...

Fk−1 = Fk−2 + Fk−3

Fk = Fk−1 + Fk−2

Adicionando um termo falso F0 = Lk a sequencia acima, obtem-se umasequencia onde cada termo e o produto de Lk, a largura final desejada, pelonumero de Fibonacci correspondente:

Lk Lk 2Lk 3Lk 5Lk 8Lk . . . f(k)Lk

Terreno conhecido, valeu a recordacao, e notem bem que aqui nao hacoelhos! Varias perguntas ja podem ser respondidas. Por exemplo, quantasreducoes de intervalo sao necessarias para que a largura final Lk seja menorque uma tolerancia δ especificada? Facil, basta olhar acima e perceber queo intervalo inicial — de largura L1 conhecida — esta associado ao ultimonumero de Fibonacci: L1 = f(k)Lk donde

Lk < δ ⇐⇒ L1

f(k)< δ ⇐⇒ f(k) >

L1

δ⇐⇒ k > k∗

A formula de Binet ensina a calcular f(k), entao pode-se pensar que otrabalho terminou. Bem, a rigor ainda nao, pois na formula o k aparece comoexpoente, e as coisas estariam realmente feitas apenas apos a determinacaocorreta do valor de k∗.

Ha um outro aspecto, importante, ainda inexplicado. Dado o intervaloinicial I1 a determinacao de I2 depende do desconhecido fator de reducao ini-cial α1. Eis como determina-lo: conhecido o numero de reducoes de intervalonecessarias, a sequencia de Fibonacci esta dimensionada, e com ela todos osintervalos do metodo. O intervalo I1 tem largura L1 = f(k)Lk e a largurado segundo e L2 = f(k − 1)Lk. A formula para a razao de dois elementosconsecutivos da sequencia de Fibonacci, equacao (2.2) leva a

α1 =L2

L1=

f(k − 1)

f(k)=

1

r(k)=

2

1 +√5

1− pk

1− pk+1onde p =

1−√5

1 +√5

Um estudo analıtico, ou grafico da variacao de α1 mostraria que 0.5 <α1 < 0.7 para valores de k de interesse, o que justifica a afirmacao do segundo

42

Page 49: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

paragrafo da secao 2.6. Supondo que se deseja n = 4 reducoes de intervalo,o que corresponde a k = 5, vem

α1 =L2

L1=

2

1 +√5

1− p5

1− p6= 0.625 = 5/8

Isto significa que (x3 − x1) = (x4 − x2) = 5L1/8 e ja se sabe tudo paraprosseguir. E possıvel que em uma das reducoes de intervalo os pontos in-ternos x2 e x3 coincidam, impedindo o progresso do algoritmo. O exemploacima leva a essa situacao, verifiquem, leitores! O remedio para este tipo demazela e espacar lateralmente um dos pontos, com x′

3 = x3 + δ onde δ deveser bem escolhido. Hora de sistematizar as coisas, e para isso e bom fazeruma distincao. Se n e o numero desejado de reducoes de intervalo, a ele estaassociado o ındice de Fibonacci k = n + 1, como ja visto acima.

Algoritmo 2.6.1 (Metodo de Fibonacci)

Dados: • f : IR → IR, uma funcao suave e unimodal em

• I1 = [a b] ⊂ IR, intervalo enquadrante inicial

• n ∈ ZZ # desejado de reducoes

• k ∈ ZZ ındice de Fibonacci (= n + 1)

Objetivo: Encontrar In ⊂ I1 com largura suficientemente pequenae que enquadre um mınimo de f

Operacoes

1. p = 1−√5

1+√5; α = 2

1+√5

1−pk

1−pk+1

2. i = 1

3. x1 = a; x4 = b; Lini = b− a;

4. x2 = αx1 + (1− α)x4; f2 = f(x2)

5. x3 = αx4 + (1− α)x1; f3 = f(x3)

6. f2 < f3

(a) a = x1; b = x3; Lfin = b− a;

(b) i = n → In = [a b] → FIM

(c) α = (Lini − Lfin)/Lfin; i = i+ 1

(d) volta a 3.

43

Page 50: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

7. f2 ≥ f3

(a) a = x2; b = x4; Lfin = b− a;

(b) i = n → In = [a b] → FIM

(c) α = (Lini − Lfin)/Lfin; i = i+ 1

(d) volta a 3.

Hora de exemplos para fixar todas essas coisaradas, ninguem e de ferro.

Exemplo 2.6.1 Em um certo problema de reducao de intervalos a largurado intervalo inicial e L1 = 5.00 e se deseja um intervalo final com largura≤ 0.01. Quantas reducoes serao necessarias pelo metodo de Fibonacci?

Lembrando que L1 = f(k)Lk:

Lk ≤ 0.01 ⇐⇒ L1

f(k)≤ 0.01 ⇐⇒ f(k) ≥ 500

Ou pela formula de Binet, ou escrevendo os numeros de Fibonacci namarra, verifica-se que f(13) = 377 e f(14) = 610 donde k = 14. A tendenciainicial e dizer que seriam necessarias 14 reducoes ou 14 passos do algoritmo,mas e preciso uma certa cautela aqui, pois o intervalo inicial foi batizado deI1 e com isto, apos n reducoes, o ındice de Fibonacci e k = n + 1. Assim,seriam necessarias n = k − 1 = 13 reducoes.

Exemplo 2.6.2 Um projetil e arremessado de uma altura h e com umangulo θ com relacao ao solo, como se ve na figura 2.17. A distancia dpercorrida, ja com os dados numericos, e dada por (recordem Fısica!)

d =[

9 sen θ +√10 + 81sen2θ

]

90 cos θ

Deseja-se encontrar θ que maximize d. Resolver numericamente, por Fi-bonacci, com n = 3 reducoes e intervalo inicial I1 = [0 80].

Este problema pede uma maximizacao e a teoria ensina a minimizar.Muito simples, basta minimizar f(θ) = −d(θ). Para 3 reducoes deve-se usark = n+ 1 = 4 e

p =1−

√5

1 +√5= −0.3820 α = α1 =

2

1 +√5

1− p4

1− p5= 0.600

A partir do intervalo inicial x1 = 0 e x4 = 80 e tendo obtido α1 acimacalcula-se

x2 = α1x1 + (1− α1)x4 = 32 e x3 = 0.6x4 + 0.4x1 = 48

44

Page 51: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✲✛d

h

Figura 2.17: Alcance horizontal de um projetil

Agora os valores da funcao:

f2 = f(x2) = f(32) = · · · = −80.7720

f3 = f(x3) = f(48) = · · · = −848.3137

Como f2 > f3 o novo intervalo e I2 = [x2 x4] = [32 80], com larguraL2 = 80 − 32 = 48. A largura do proximo intervalo ja pode ser calculada:L3 = L1 − L2 = 32 o que origina um novo valor para α: α = 32/48 = 0.666e os novos pontos interiores devem ser calculados:

x2 = α32 + (1− α)80 = 48 e x3 = α80 + (1− α)32 = 64

Novamente os valores da funcao:

f2 = f(x2) = f(32) = · · · = −848.3137

f3 = f(x3) = f(64) = · · · = −661.8800

Como f2 < f3 o novo intervalo e I3 = [x1 x3] = [32 64], com larguraL3 = 32. A largura do proximo intervalo, L4 = L2−L3 = 16, o que significaα = 16/32 = 0.50, leva exatamente ao meio do intervalo, impossibilitando aprocura de dois pontos interiores. Ha alertas anteriores para essa possibili-dade; para acertar as coisas escolhe-se dois pontos um pouquinho afastadosdo ponto medio 48 e a danca recomeca.

Ja deu para sentir o gostinho, e, principalmente, ja deu para perceberque em qualquer aplicacao menos didatica e mais proxima da realidade aquantidade de contas e braba. E, certamente, coisa para computadores.

2.6.3 Fibonacci, ainda uma vez

Na versao do algoritmo apresentada acima, um dado necessario para iniciara busca e o numero n de iteracoes totais, mas as vezes o que se conhece a

45

Page 52: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

priori e a tolerancia, ou seja, δ ∈ IR tal que Lk < δ. Pode-se pensar emadaptar o procedimento visto de modo a testar, em cada iteracao, se Li < δao inves de testar se i = n. Haveria dificuldades logo no primeiro passo, quepode ser efetuado apenas com o conhecimento do numero total de iteracoes;isto e uma caracterıstica basica de Fibonacci. A solucao clara e determinarn a partir de δ, mas isto nao e das tarefas mais simples e assim fica explicadaa razao de Fibonacci ser inicializado com n e nao com δ.

Outro aspecto. As reducoes de intervalo sao baseadas no criterio dos doispontos: os valores de f sao comparados em dois pontos internos. E bom frizarque a garantia destes testes e dada pela unimodalidade de f no intervalo. Noexemplo ilustrado na figura 2.18, o criterio dos dois pontos diria que, comof2 > f3 entao [x2 b] e enquadrante, o que e um grave erro.

✻f(x)

✲xa x2 x3 b

Figura 2.18: Problemas com o criterio dos dois pontos

A hipotese de unimodalidade e essencial. As preocupacoes comecamquando se percebe que o intervalo inicial e gerado pelo criterio dos 3 pon-tos, que garante enquadramento mas nao unimodalidade. Que fazer? Umapostura pragmatica aconselharia tocar o bonde sem grandes preocupacoescom esses detalhes, pois afinal de contas os problemas de interesse realmentepratico envolvem funcoes bem comportadas e certamente unimodais. Casospatologicos como o acima sao frutos de mentes matematicas rigorosas, e naode engenheiros. Se se seguir essa postura e houver resultados inesperados,o principal suspeito e a falta de unimodalidade, e para corrigir os rumosdeve-se procurar com mais cuidado o intervalo inicial.

Ainda um aspecto a considerar. Conforme visto, quando o numero deiteracoes cresce muito, a razao entre os dois primeiros intervalos tende a

α1 =L2

L1

=2

1 +√5≈ 0.61803

Na pratica, quando n ≥ 12 ja se pode considerar isto valido, e o primeiropasso do algoritmo fica mais simples. Apesar dos detalhes apontados, Fibo-

46

Page 53: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

nacci e considerado o metodo mais eficiente para obter grandes reducoes notamanho dos intervalos de incerteza em um numero fixo de passos.

2.7 Ideias de ouro

O sentido artıstico dos antigos gregos era muito apurado e suas exigenciasesteticas muito abrangentes. Parte de sua geometria era dirigida a essasnecessidades. Considere por exemplo a construcao de retangulos. Retangulosmuito finos ou muito gordos podem ser considerados “feios” tanto naquelaepoca como tambem hoje em dia.

Figura 2.19: Retangulos feios e um mais equilibrado

Quando um arquiteto quiser um retangulo “bonito” como fazer? Qual aproporcao entre base e altura de um tal retangulo belo, perfeito, equilibrado?Os gregos diziam que a resposta a esta pergunta esta no que eles chamavamde divisao de um segmento em media e extrema razao. Mais tarde,ja na Idade Media, este procedimento foi chamado de razao, proporcao oudivisao aurea. Dado um segmento AB, dividi-lo na razao aurea significaencontrar um ponto interno M tal que o segmento todo esta para a partemaior assim como esta parte maior esta para a parte menor.

AM

B

(

AB/AM)

=(

AM/MB)

Figura 2.20: Divisao aurea de um segmento

Os gregos classicos formularam o problema e sabiam resolve-lo, usando asunicas ferramentas permitidas pelas regras de sua geometria: regua e com-passo. E estava feito, um retangulo cujos lados fossem os dois segmentos deuma divisao em media e extrema razao era um retangulo com aspecto equili-brado, harmonioso, um retangulo belo, para resumir, e que mais tarde seriapromovido a aureo. E as aplicacoes apareciam, principalmente na Arquite-tura. Ate hoje, em escadas bem projetadas, qual a dimensao dos degraus?razao aurea, ela mesma. Templos, edifıcios, monumentos, construcoes em

47

Page 54: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

geral com aparencia leve e harmoniosa? razao aurea. Artistas posterio-res, como Leonardo da Vinci, por exemplo, colocavam a proporcao aureaem figuras humanas para lhes conferir graca e equilıbrio. O formato A4 eaproximadamente aureo.

Nem so de arte vive a razao aurea, ja os matematicos antigos descobriamcoisas interessantes . . . dentro de um retangulo aureo considere o quadradoconstituıdo pelo lado menor, e corte-o fora. O retangulo que sobra e tambemaureo. Tem mais, a construcao geometrica (usando regua e compasso apenas,lembrem, isto e geometria Euclidiana) do pentagono regular e baseada emquem? na razao aurea, claro. Chega de reminiscencias e divagacoes, hojeem dia a Matematica vai muito alem da Geometria Euclidiana da regua ecompasso. Para entender como a Algebra encara o segmento aureo, seja d otamanho do segmento AB que se quer dividir e x o comprimento da divisaomaior AM. A relacao basica fica

d

x=

x

d− x=⇒ x2 + dx− d2 = 0 =⇒ x =

d(√5 + 1)/2 ≈ 1.6180d

d(√5− 1)/2 ≈ 0.6180d

A primeira solucao nao interessa e a segunda fornece a famosa razao aureau, em notacao mais recente:

u =x

d=

√5− 1

2≈ 0.6180

Em termos praticos, o segmento aureo maior e ≈ 61.80% do todo, e omenor e ≈ 38.20%. E interessante notar que o inverso da primeira raiz, adesprezada, e exatamente a segunda: 1.618−1 = 0.618. O objetivo principaldeste texto e a otimizacao, e onde isto se encaixa? Voltando atras algumaspaginas o leitor verificara que a razao entre dois numeros de Fibonacci con-secutivos depende do ındice k e que para valores altos de k esta razao tendepara um valor constante:

limk→∞

f(k)

f(k − 1)=

√5 + 1

2= 1.618 = 1 + u

ou entao

limk→∞

f(k − 1)

f(k)=

√5− 1

2= 0.618 = u

Eis a razao aurea de novo! Verificando os numeros de Fibonacci percebe-se que ja para k = 10 a aproximacao aurea e muito boa. Um aspecto leve-mente incomodo do algoritmo de Fibonacci e que o numero total de reducoes

48

Page 55: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

e o ındice k associado precisam ser conhecidos a priori, porque logo a pri-meira reducao de intervalo depende disso, depende de f(k − 1)/f(k). Agorae facil perceber que se o numero de reducoes prevista for grande (> 10) ocalculo da primeira delas e exatamente a divisao aurea do segmento inicial.

ax1

x2 x3 bx4

(x3 − x1)/(x4 − x1) = u = (x4 − x2)/(x4 − x1)

Figura 2.21: Divisao aurea para Fibonacci

Bem mais facil, o processo pode ser inicializado sem o conhecimento dek. Mas tem mais, e imediato perceber que (x2 − x1)/(x3 − x1) = u = 0.618e isto significa que se o intervalo escolhido for o da esquerda, I2 = [x1 x3], oponto “antigo” x2 divide aureamente I2 e pode ser reaproveitado: x′

3 = x2.A ideia basica do metodo da Divisao Aurea e exatamente essa, cada escolhade pontos internos e feita com o parametro u = 0.618. Apos n reducoes ointervalo final In e tal que Ln = un−1L1 de onde se poderia calcular o numerode reducoes necessarias para se atingir uma dada tolerancia.

Algoritmo 2.7.1 (Metodo da Divisao Aurea)

Dados: • f : IR → IR, uma funcao suave e unimodal em

• I1 = [a b] ⊂ IR, intervalo enquadrante inicial

• ε ∈ IR tolerancia

Objetivo:

Encontrar I∗ ⊂ I1, enquadrante, tal que L∗ < ε

Operacoes

1. x1 = a; x4 = b; Li = b− a; u = (√5− 1)/2;

2. x2 = ux1 + (1− u)x4;

3. x2 = (1− u)x1 + ux4;

4. f2 = f(x2)

5. f3 = f(x3)

6. f2 < f3

• a = x1; b = x3; Lf = b− a;

• Lf < ε =⇒ I∗ = [a b] → FIM

• x3 = x2;

49

Page 56: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

• x2 = ua+ (1− u)b; =⇒ volta para 4.

7. f2 ≥ f3

• a = x2; b = x4; Lf = b− a;

• Lf < ε =⇒ I∗ = [a b] → FIM

• x2 = x3;

• x3 = (1− u)a+ ub; =⇒ volta para 4.

Este metodo e uma adaptacao de Fibonacci, possivelmente mais simplese rapido. Os comentarios feitos anteriormente continuam portanto validos.

Exemplo 2.7.1 E o mesmo problema do projetil, maximizar o alcance ho-rizontal dado por

d =[

9 sen θ +√10 + 81 sen 2θ

]

90 cos θ

Deve-se minimizar f = −d como ja visto. O intervalo inicial e [0 80]. Asdivisoes de intervalos sao agora sempre dadas pela razao aurea u e os leitoressao convidados a calcular algumas iteracoes manualmente.

As vantagens obtidas com a aplicacao da divisao aurea a Fibonacci esti-mulam a ideia de aplica-la a outros algoritmos que envolvam intervalos, comopor exemplo o algoritmo de enquadramento inicial via criterio dos 3 pontos.Mas e hora de mudar um pouco de ares. Os metodos de reducao de intervalosao robustos e confiaveis, mas exigem o calculo da funcao objetivo f em umgrande numero de pontos. As vezes isto e problematico.

2.8 Metodos de interpolacao polinomial

Em intervalos pequenos as funcao suaves podem ser aproximadas por funcoespolinomiais. Nas vizinhancas de um mınimo, estas funcoes podem ser con-fundidas com parabolas quadraticas. Dada uma funcao f e os pontos x1 <x2 < x3 e facil determinar a parabola que passa pelos pontos f1, f2 e f3. Sesua equacao e g(x) = αx2 + βx + γ entao hhhavera tres equacoes do tipoαx2

i + βxi + γ = fi para i = 1, 2, 3. A solucao deste sistema fornece oscoeficientes da parabola. Se f e suave entao g ≈ f no intervalo [x1 x3], seeste e “pequeno”. Se houver um mınimo de f neste intervalo entao o mınimo

50

Page 57: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

da parabola (−β/(2α), quando α > 0) e uma boa aproximacao para ele. Ecomum dizer que g e uma interpolacao de f .

Conhecendo mais informacoes sobre f — seu valor em outros pontosou o valor de suas derivadas — pode-se encontrar parabolas cubicas ou deordem superior que interpolam f . Pode-se usar estas ideias para atingirmınimos. Dentro de um intervalo enquadrante [a b] tres pontos p, q e m saoselecionados, levando aos calculos fp = f(p), fq = f(q) e fm = f(m). Aparabola g(x) que passa por estes pontos e obtida solucionando o sistema

p2 p 1q2 q 1m2 m 1

αβγ

=

fpfqfm

O minimizador desta curva e u = −β/(2α). Supoe-se que u ∈ [a b] enao esta muito proximo dos outros pontos, para evitar problemas numericos.Ha agora quatro pontos internos, dos quais um sera descartado. O “pior”entre p, q e m e escolhido, comparando fp, fq e fm: o maior destes numerosindicara o excluıdo. Com os pontos restantes outra parabola e tracada, etc,etc, etc. Como proceder quando a minimizacao da parabola g gera um pontonao aproveitavel? Procura-se novamente o pior entre os 3 pontos originais,pois ele sera descartado, mas agora se procura tambem o melhor dentre eles,chamado de z (lembrem que nao se trata de um ponto novo, z = p ou z = qou z = m). Este ponto divide [a b] em duas partes. Comparando (z − a) e(b − z) escolhe-se a parte maior que sera dividida de maneira aurea, o quevai gerar o novo ponto u.

Esta e a filosofia basica, um uso hıbrido de reducao via divisao aurea einterpolacao quadratica. Varios detalhes ainda precisam ser equacionados,claro, como por exemplo a inicializacao e o termino do processo. Um dosmetodos mais conhecidos que usa este processo e o algoritmo de Brent. Eleparte com apenas um ponto interno p e os extremos a e b do intervalo ini-cial. Divisao aurea no maior dos segmentos resultantes gera um novo ponto.Mas chega, isto e apenas para estimular interesses. Basta deste aperitivounivariavel, e hora de encarar outras dimensoes, com animo e entusiasmo.

51

Page 58: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 3

Otimizacao Vetorial

Antes de sair em busca de maximos e mınimos e hora de rever as ideias e con-ceitos basicos das funcoes reais de varias variaveis reais, tambem chamadasde funcoes reais de variavel vetorial. Ou seja, e hora de encarar uma

3.1 Recordacao Breve de Analise no IRn

O conhecido caso escalar, de funcoes reais de uma unica variavel real, foirevisto anteriormente nestas notas. O caso geral de funcoes vetoriais devariaveis vetoriais, f : IRn −→ IRm, nao interessa muito em otimizacao,entao o foco iluminara o caso m = 1. Uma funcao real de varias variaveisreais, ou de variavel vetorial, ou funcao multivariavel e representada por:

f : IRn −→ IRx ∈ IRn 7→ y = f(x) ∈ IR

Exemplo 3.1.1 f(x1, x2) = x1x2 para x1, x2 ∈ IR

f(x1, x2, x3) = x31 + 3x1x2x3 + x3

2 +√x3 para x1, x2, x3 ∈ IR

Se n ≥ 3 qualquer tentativa de visualizacao fica prejudicada, claro. Paran = 2 a funcao f se associa a superfıcies que se desenvolvem no IR3 e algumavisualizacao e possıvel, como na figura 3.1, onde se representa a superfıcieassociada a f(x1, x2) = x2

1 − x22. Exatamente por essa razao esse sera o caso

preferido para exemplos.O uso de curvas de nıvel, ou curvas de custo ou de valor constante facilita

muito as coisas, pois permite um estudo satisfatorio destas superfıcies tridi-mensionais olhando para curvas bidimensionais no IR2. No caso geral, uma

52

Page 59: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

f(x1, x2) = x21 − x2

2

-10-5

05

10 -10-5

05

10-100

0

100

Figura 3.1: Funcoes do IR2 em IR possibilitam a visualizacao de superfıciestridimensionais: superfıcie associada a funcao vetorial f(x1, x2) = x2

1 − x22.

superfıcie de nıvel ou custo constante e o lugar geometrico onde a funcaof assume um mesmo valor:

S = {x ∈ IRn | f(x) = c = cte.}

No caso do IR2 as curvas de nıvel permitem uma boa ideia de que aconteceno espaco tridimensional olhando apenas para o plano.

Exemplo 3.1.2 Para f(x1, x2) = x1x2, a relacao x1x2 = c determina hiper-boles equilateras no plano, como os leitores facilmente verificariam. A funcaoquadratica f(x1, x2) = x2

1+x22 tem circunferencias concentricas como curvas

de nıvel, e para a funcao f(x1, x2) = max{|x1|, |x2|} as curvas de nıvel sao. . . para voces, leitores.

3.1.1 Continuidade e Derivadas

Embora a visualizacao fique prejudicada, as ideias basicas sao as mesmasmostradas no caso escalar, e o formalismo e muito semelhante.

Definicao 3.1.1 A funcao f : IRn −→ IR e contınua no ponto x0 quando

limx→x

0f(x) = f(x0)

Ou entao, sem usar limites

Definicao 3.1.2 A funcao f : IRn −→ IR e contınua no ponto x0 quando,para todo real ε > 0 existe um real δ > 0 tal que, se ‖x − x0‖ < δ entao|f(x)− f(x0)| < ε.

53

Page 60: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

O mesmo desejo de antes: e possıvel chegar arbitrariamente proximo def(x0) desde que se chegue suficientemente perto de x0. Ou entao: os efeitosnao podem ser muito diferentes de suas causas. Um bom comportamento,valioso.

Definicao 3.1.3 Dada f : IRn −→ IR e um ponto x0 = [x01 x0

2 . . . x0n]

T ∈IRn, o limite

limh→0

f(x01, x

02, . . . x0

i + h, . . . x0n)− f(x0)

h,

quando existe, e a derivada parcial de f com relacao a xi no ponto x0 ∈ IRn,usualmente designada pelos sımbolos

f ′xi(x0) ou

∂f

∂xi

x0

A mesma ideia do caso escalar, apenas agora existem n causas indepen-dentes e e preciso medir o efeito de cada uma delas.

Definicao 3.1.4 A funcao f : IRn −→ IR e diferenciavel em x0 ∈ IRn

quando as derivadas parciais f ′i(x

0) existem ∀i = 1, 2, . . . n.

A derivada de uma funcao escalar em um ponto tem um significado vi-sual muito atraente, relacionado a tangente. Antes de generalizar esta in-terpretacao, e preciso definir um conceito unico para derivada, pois o que setem ate agora sao n ideias independentes.

Definicao 3.1.5 Dada f : IRn −→ IR diferenciavel no ponto x0 ∈ IRn, ovetor

f ′x1(x0)

f ′x2(x0)...

f ′xn(x0)

= g(x0) = ∇f(x0) ∈ IRn

e chamado de gradiente de f no ponto x0.

A notacao com o nabla ∇ e muito comum, mas o uso de g(x0) e maissimples, desde que nao exista possibilidade de confusao com outras funcoes.O gradiente g(x0) de uma funcao f em um dado ponto e sempre ortogonal asuperfıcie de nıvel nesse ponto, apontando na direcao de maior crescimentode f . Quando n = 2, essa propriedade tem uma interpretacao visual simplese util.

54

Page 61: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Fato 3.1.1 Dada f : IR2 −→ IR diferenciavel em x0 ∈ IRn, o gradiente nesteponto e perpendicular a curva de nıvel, apontando na direcao de crescimentoda funcao.

A demonstracao deste fato classico fica para outros textos, mas a ideia ebom guardar: o gradiente armazena informacoes sobre a direcao e a quanti-dade de crescimento de uma funcao em cada ponto.

Exemplo 3.1.3 Calcular o gradiente de f(x1, x2) = x1x2 nos pontos x0 =[1 1]T , x1 = [2 −2]T e x2 = [0 −1]T ; plota-los, juntamente com as curvas denıvel que passam pelos pontos. As funcoes derivada sao obtidas facilmente,como os leitores certamente sabem: f ′

x1(x1, x2) = x2 e f ′

x2(x1, x2) = x1.

Usando as coordenadas dos pontos dados chega-se a

∇f(x0) = g(x0) =

[

11

]

∇f(x1) = g(x1) =

[

−22

]

g(x2) =

[

−10

]

As visualizacoes ficam por conta dos leitores diligentes.

Como falar em intervalos no IRn?

Definicao 3.1.6 Dado x0 ∈ IRn e 0 < δ ∈ IR, o conjunto

B(x0, δ) ={

x ∈ IRn | ‖x− x0‖ < δ}

e uma bola ou esfera de raio δ centrada em x0, ou simplesmente uma vizi-nhanca de x0.

Definicao 3.1.7 Um conjunto de pontos do IRn e convexo quando, dadosdois pontos quaisquer nele, todos os pontos do segmento de reta que os unetambem pertencem a ele.

O segmento de reta entre xi e xf quaisquer do IRn e definido como oconjunto de pontos αxi + (1 − α)xf quando o escalar α varia entre 0 e 1, eassim a definicao acima pode ser tornada mais precisa.

Propriedade 3.1.1 Um conjunto de pontos do IRn e convexo se e somentese, dados xi e xf quaisquer pertencentes a ele entao, ∀α ∈ [0 1], afxi +(1− α)xf tambem pertence.

A ideia basica de convexidade, bem como este conceito formal, ja foramapresentados anteriormente, no caso escalar; mais a frente elres serao revis-tos, mais detalhadamente. De modo geral, conjuntos de pontos no IRn saochamados de domınios. Os conceitos de continuidade e diferenciabilidadepodem ser expandidos para domınios.

55

Page 62: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 3.1.8 Quando f e contınua em todos os pontos de um domınioD ⊂ IRn ela e contınua em D. Quando ela e diferenciavel em todos os pontosde D ela sera diferenciavel em D e pode-se definir a funcao gradiente:

g : D −→ IRn

x ∈ D 7→ g(x) = ∇f(x) ∈ IRn

A funcao gradiente e tambem representada pelos sımbolos ∇f ou ∇f .

Exemplo 3.1.4 Para f(x) = f(x1, x2) = x1x2:

g(x) = ∇f (x) = ∇f(x) =

[

x2

x1

]

Seja f : IRn −→ IR e um domınio aberto D no IRn. Se as derivadasparciais f ′

xipara i = 1, 2 . . . n sao contınuas em D, diz-se que f ∈ C1,

ou f e C1 contınua. Se as derivadas parciais de segunda ordem f′′

xixjpara

i, j = 1, 2 . . . n sao contınuas em D, entao f ∈ C2, etc. Estas ideias saogeneralizacoes das ideias escalares e correspondem a funcoes suaves, bemcomportadas, sem cantos ou quinas.

Definicao 3.1.9 Sendo f : IRn −→ IR ∈ C2 e x0 ∈ IRn, a matriz simetricacom as derivadas parciais de segunda ordem

f′′

x1x1(x0) f

′′

x1x2(x0) . . . f

′′

x1xn(x0)

f′′

x2x1(x0) f

′′

x2x2(x0) . . . f

′′

x2xn(x0)

.... . .

f′′

xnx1(x0) f

′′

xnx2(x0) . . . f

′′

xnxn(x0)

= ∇2f(x0) = H(x0)

e chamada de matriz Hessiana de f no ponto x0.

Alem do sımbolo H mostrado acima, muitas vezes usa-se para a Hessianaa notacao G. Se esta matriz e definida em todos os pontos de um domınioD, pode-se falar na funcao Hessiana.

Assim como acontece no caso escalar, quando uma funcao possui pro-priedades desejaveis, dado o seu valor em um dado x0 ∈ IRn, e possıvelprever o seu comportamento em outros pontos. O teorema de Taylor traduzdetalhadamente essa ideia.

Teorema 3.1.1 (Teorema de Taylor:) sendo x0 e x dois pontos em umdomınio aberto D ⊂ IRn onde uma funcao de variavel vetorial f e contınuade classe C2, entao existe um vetor z ∈ IRn no segmento de reta unindo x0

e x (ou seja: z = αx0 + (1− α)x para 0 < α < 1) tal que

f(x) = f(x0) + (x− x0)Tg(x0) + (1/2)(x− x0)TG(z)(x− x0) (3.1)

56

Page 63: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Este teorema poderia ser apresentado em um contexto mais geral, paraf ∈ Cp com p > 2; haveria um numero maior de termos na expressao de f(x).A versao acima, contendo apenas o gradiente e a Hessiana, e suficientementepoderosa para resolver as questoes de otimizacao. A expressao (3.1) e, muitasvezes, apresentada de modo diferente: o ponto desconhecido e caracterizadocomo x = x0+αd onde α ∈ IR e d ∈ IRn, ou seja, saindo do ponto conhecidox0 e “andando uma distancia” α na direcao d atinge-se o ponto x. O teoremada Taylor passa a ser representado por

f(x0 + αd) = f(x0) + αdTg(x0) + (α2/2)dTG(z)d (3.2)

Para garantir que tanto o gradiente como a Hessiana sejam calculados nomesmo ponto x0 a expressao pode ser apresentada em uma terceira versao:

f(x0 + αd) = f(x0) + αdTg(x0) + (α2/2)dTG(x0)d+R2(α) (3.3)

O termo adicionado, o resto de Taylor, e muitas vezes expresso apenascomo o(α2). Esta notacao indica um termo de ordem 2, que “cai a zero maisrapidamente” que termos de ordem 1, como por exemplo o termo associadoao gradiente. Em sımbolos: limα→0 o(α

2)/α = 0. Para justificar isto, epreciso usar a caracterizacao do resto de Taylor em sua forma mais bruta:

R2(α) = α2r2(α) onde limα→0

r2(α) = 0. (3.4)

Supondo que a funcao f e diferenciavel mais vezes, seria possıvel detalharainda mais este resto e mostrar que ele pode ser considerado como o(α3), oque nao sera necessario para os desenvolvimentos destas notas.

3.1.2 Funcoes Vetoriais de Variaveis Vetoriais

Dada a funcaof : IRn −→ IRm

x ∈ IRn 7→ y = f(x) ∈ IRm,

a Jacobiana de f e a matriz m× n de suas derivadas parciais. O elemento(i, j) da Jacobiana e

∂fi∂xj

Os conceitos basicos de otimizacao nao se aplicam a estas funcoes, poiscomo encontrar elementos do IRm, sendo m > 1, maximos ou mınimos?

57

Page 64: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3.2 Pontos Estacionarios e Especiais no IRn

O ponto xe ∈ IRn e um ponto estacionario da funcao f : IRn → IR quandoo gradiente nele se anula:

g(xe) = ∇f(xe) = 0

A mesma ideia de antes, mas agora quem se anula e um vetor. Os con-ceitos basicos a respeito dos pontos especiais de uma funcao ja foram apre-sentados antes, no caso escalar, onde as visualizacoes ajudam muito a fixaras ideias. As definicoes formais serao repetidas agora.

Definicao 3.2.1 O ponto x∗ ∈ IRn e um ponto de mınimo local forte

da funcao f : IRn → IR quando existe δ > 0 tal que

1. f(x) e definida ∀x tal que ‖x− x∗‖ < δ

2. f(x) > f(x∗) ∀x 6= x∗ tal que ‖x− x∗‖ < δ

Definicao 3.2.2 O ponto x∗ ∈ IRn e um ponto de mınimo local fraco

da funcao f : IRn → IR quando existe δ > 0 tal que

1. f(x) e definida ∀x tal que ‖x− x∗‖ < δ

2. f(x) ≥ f(x∗) ∀x 6= x∗ tal que ‖x− x∗‖ < δ

3. x∗ nao e um mınimo local forte

O ponto x∗ ∈ IRn e um ponto de mınimo global da funcao f quandoas desigualdades acima se verificam ∀x ∈ IRn, ou seja, globalmente e naoapenas em uma dada vizinhanca do ponto.

3.2.1 Condicoes analıticas

O problema agora e o de buscar os mınimos (ou maximos) para funcoesvetoriais. As relacoes entre pontos estacionarios e especiais, como era de seesperar, permanecem muito semelhantes as do caso univariavel. Os teoremasbasicos sao vistos a seguir.

Teorema 3.2.1 (Condicoes Necessarias de Otimalidade) Se a funcaof : IRn → IR e suficientemente suave, e se x∗ ∈ IRn e um mınimo local de fentao ele e estacionario, ou seja,

∇f(x∗) = g(x∗) = 0,

a ainda ∇2f(x∗) = G(x∗) ≥ 0

58

Page 65: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A demonstracao sera apresentada, para ilustrar sua simplicidade. Apli-cando Taylor, via expressao (3.2), ao minimizador x∗ e a um ponto x∗+αd,onde o escalar α e positivo vem

f(x∗ + αd) = f(x∗) + αdTg(x∗) + (α2/2)dTG(z)d.

Supondo α pequeno, o ponto x∗ + αd esta em uma vizinhanca do mini-mizador local x∗, logo

0 ≤ f(x∗ + αd)− f(x∗) = αdTg(x∗) + (α2/2)dTG(z)d.

Dividindo por α e fazendo α → 0, e como α > 0 por hipotese, entaodTg(x∗) ≥ 0. Este raciocınio e refeito para um novo ponto x∗−αd, levandoa outra conclusao: dTg(x∗) ≤ 0. Estas duas conclusoes sao simultaneamenteverdadeiras apenas quando g(x∗) = 0, o que demonstra que o minimizadore estacionario. Para a outra condicao, aplica-se Taylor, via expressao (3.3),ao minimizador x∗ e a um ponto x∗ + αd, onde α e positivo:

f(x∗ + αd) = f(x0) + αdTg(x∗) + (α2/2)dTG(x∗)d+R2(α).

Supondo mais uma vez α pequeno, e como x∗ e estacionario, entao

0 ≤ f(x∗ + αd)− f(x0) = (α2/2)dTG(x∗)d+R2(α)

onde se divide por α2 e se faz α → 0. Usando a propriedade do resto de Taylorvista em (3.4) conclui-se que dTG(x∗)d ≥ 0 e como isto vale ∀d ∈ IRn entaoa Hessiana e positiva semidefinida em x∗: G(x∗) ≥ 0. Q.E.D

Mais uma vez os mınimos locais sao pontos estacionarios de uma funcao.Como antes, as CNO restringem o universo da busca de solucoes, mas paragarantir que pontos deste universo reduzido realmente solucionam o PGO epreciso lancar mao das CSO.

Teorema 3.2.2 (Condicoes Suficientes de Otimalidade) Sendo a fun-cao f : IRn → IR suficientemente suave, se x∗ ∈ IRn e tal que

1. ∇f(x∗) = g(x∗) = 0

2. ∇2f(x∗) = G(x∗) > 0

entao x∗ sera um mınimo local forte de f .

59

Page 66: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A demostracao da validade deste resultado tambem e feita com o auxılioda formula de Taylor. Usando a versao (3.3) em x∗ e em um ponto x∗ + αdproximo, ou seja, para α pequeno, vem

f(x∗ + αd) = f(x∗) + αdTg(x∗) + (α2/2)dTG(x∗)d+R2(α).

Como g(x∗) = 0 e G(x∗) > 0 entao, para α → 0, f(x∗+αd)−f(x∗) > 0,e como isto vale ∀d ∈ IR, entao x∗ e um minimizador local forte. Q.E.D

Exemplo 3.2.1 Sendo f(x) = x3, suas derivadas sao f ′(x) = 3x2 e f′′

(x) =6x, o que garante que x∗ = 0 e um ponto estacionario onde f

′′

(x∗) ≥ 0, ouseja, satisfaz as CNO. Mas as CSO nao sao satisfeitas e este nao e ummınimo de f , mas um ponto de inflexao. Seja agora f(x1, x2) = x1x2. Efacil calcular

∂f

∂x1= x2;

∂2f

∂x21

= 0;∂2f

∂x1∂x2= 1

∂f

∂x2= x1;

∂2f

∂x22

= 0;∂2f

∂x2∂x1= 1

donde se obtem

∇f(x) = g(x1, x2) =

[

x2

x1

]

e ∇2f(x) = G(x1, x2) =

[

0 11 0

]

O ponto x∗ = [0 0]T e estacionario, pois anula o gradiente, mas a Hes-siana G(x∗) e indefinida, donde x∗ nao e mınimo. Trata-se de um ponto desela.

Exemplo 3.2.2 – Metodo dos mınimos quadrados. Foram medidasamostras de uma funcao escalar desconhecida d(x) em 3 pontos: x1 = 1 comd(x1) = 6 = d1, x2 = 3 com d(x2) = 10 = d2 e x3 = 6 com d(x3) = 2 =d3. Deseja-se aproximar d(x) por uma expressao do tipo g(x) = a + b/x.Determinar a e b para que a aproximacao seja otima.

E um problema classico de mınimos quadrados. O erro quadrado mediona amostra i e

(g(xi)− d(xi))2 =

(

a+b

xi

− di

)2

e a busca de a e b otimos se resume a minimizar a soma dos erros

min f =3∑

1

(

a+b

xi

− di

)2

60

Page 67: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Trata-se de um problema de minimizacao livre no IR2, com x = [a b]T .Desenvolvendo a expressao acima chega-se a f = 3a2 + 41b2/36 + 3ab −58b/3− 36a+ 140. Calculando o gradiente:

∇f =

[

f ′a

f ′b

]

=

[

6a+ 3b− 363a+ 41b/18− 58/3

]

Seria facil verificar que

∇f(xe) =

[

00

]

⇐⇒ xe =

[

a∗

b∗

]

=

[

5.14281.7143

]

Para checar se este PE e mesmo um minimizador, entra em cena a Hes-siana. Fazendo as contas:

∇2f(xe) = H(xe) =

[

6 33 41/18

]

Pelo criterio de Sylvester, verifica-se ser esta matriz positiva definida,donde o PE e realmente um mınimo.

Exemplo 3.2.3 Estudar a funcao f = 2x21 + 8x2

2 + 8x1x2 − 5x1. O calculodas derivadas parciais leva a funcao gradiente

g(x) = ∇f(x) =

[

4x1 + 8x2 − 58x1 + 16x2

]

E facil Verificar que este gradiente nao se anula, ou seja, a funcao naopossui PEs que possam ser maximos ou mınimos. A visualizacao, feita nafigura 3.2, ajuda a entender.

-300

30 -10

0

10

0

3000

6000

Figura 3.2: Superfıcie no IR3 sem PEs

61

Page 68: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3.3 Formas e Funcoes

Para ajudar e facilitar a analise de funcoes vetoriais em geral, e bom comecarcom uma recordacao dos casos mais simples e diretos. A seguir, serao apresen-tados, de maneira rapida, suscinta e geralmente sem provas, alguns resultadosmatematicos basicos que serao uteis para os desenvolvimentos posteriores.

3.3.1 Formas Lineares e Quadraticas

As ideias abaixo sao provavelmente conhecidas da maioria dos leitores.

Definicao 3.3.1 Por Forma, Combinacao ou Funcional Linear dasvariaveis x1, x2, . . . , xn entende-se a expressao

L(x1, x2, . . . , xn) = l1x1 + l2x2 + · · ·+ lnxn =n∑

i=1

lixi

onde, ∀i = 1, 2, . . . n, li ∈ IR (corpo dos reais).

Exemplo 3.3.1 L1 = x1 + x2 − x3 e L2 = 0, 5x1 − 7x2 + 0x3 − x4

Lembrando as propriedades do produto matricial pode-se escrever:

L(x1, x2, . . . , xn) = l1x1 + l2x2 + · · ·+ lnxn = [ l1 l2 · · · ln ]

x1

x2...xn

Agrupando as variaveis xi e os coeficientes li nos vetores x e L, comoabaixo,

L =

l1l2...ln

x =

x1

x2...xn

pode-se usar a compacta e economica notacao vetorial:

L(x1, x2, . . . , xn) = L(x) = LTx

onde o sımbolo LT denota a transposta da matrix L. E muito facil notarque a expressao acima e comutativa, ou seja, L(x) = LTx = xTL. Supondo

62

Page 69: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

que as variaveis xi sao variaveis reais, e possıvel encarar L(·) como umatransformacao linear

L : IRn −→ IRx 7→ L(x) = LTx = xTL

Dependendo dos valores das variaveis xi, a forma linear L(x) pode as-sumir valores positivos, negativos ou nulos. Deste modo, o IRn pode serparticionado em tres regioes: IRn = IRn

⊕⋃

IRn⊖⋃

IRn0 para as quais

x ∈ IRn⊕ ⇐⇒ L(x) > 0

x ∈ IRn⊖ ⇐⇒ L(x) < 0

x ∈ IRn0 ⇐⇒ L(x) = 0

Exemplo 3.3.2 Para a forma L(x) = x1 + x2 o plano e particionado comona figura 3.3. A regiao IRn

0 e sempre uma variedade linear: reta, plano, etc.

IR2⊕

IR2⊖

x2

x1

IR20

Figura 3.3: Como a forma linear L(x) = x1 + x2 particiona o IR2.

Mas isto tudo e terreno muitıssimo conhecido, de usos e utilidades jasabidos, e bem sabidos (espera-se).

Definicao 3.3.2 Chama-se de Forma ou Combinacao Quadratica dasvariaveis x1, x2, . . . , xn a expressao

Q(x1, x2, . . . , xn) = q11x1x1 + q12x1x2 + · · ·+ qnnxnxn =n∑

i=1

n∑

j=1

qijxixj

onde, ∀i, j = 1, 2, . . . n, qij ∈ IR.

Exemplo 3.3.3 Q1 = x21 + x1x2 − 5x2

2 e Q2 = x1x3 − x2x3 + 7x3x1 − x24

63

Page 70: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Para se obter uma notacao alternativa compacta e elegante, como feito nocaso anterior, deve-se desenvolver a expressao da forma quadratica definidaacima e depois aplicar as regras do produto matricial. Ao trabalho.

Q(x1, x2, . . . , xn) = q11x21 + q12x1x2 + · · ·+ q1nx1xn +

q21x2x1 + q22x22 + · · ·+ q2nx2xn

...

+qn1xnx1 + qn2xnx2 + · · ·+ qnnx2n

Colocando em evidencia a variavel xi em cada uma das i linhas acimavem:

Q(x1, x2, . . . , xn) = x1(q11x1 + q12x2 + · · ·+ q1nxn) +

x2(q21x1 + q22x2 + · · ·+ q2nxn) +...

+xn(qn1x1 + qn2x2 + · · ·+ qnnxn)

Observando que as expressoes entre parenteses sao funcionais lineares dotipo Qix = [qi1 qi2 · · · qin]x onde x e o vetor com componentes xi, pode-seescrever

Q(x1, x2, . . . , xn) = [ x1 x2 · · · xn ]

q11 q12 · · · q1nq21 q22 · · · q2n...

......

qn1 qn2 · · · qnn

x1

x2...xn

E finalmente, chamando de Q a matriz quadrada trazida pelo desenvol-vimento acima, e possıvel finalizar, escrevendo a procurada notacao vetorial:

Q(x1, x2, . . . , xn) = Q(x) = xTQx

onde, como ja deve ter dado para perceber, o sımboloMT denota a transpostada matrix M .

Exemplo 3.3.4

Q(x) = x21 + x1x2 + x2

2 = [ x1 x2 ]

[

1 10 1

] [

x1

x2

]

Como o produto de reais e comutativo, x1x2 = x2x1 e a forma acimatambem podem ser expressa de outra maneira:

Q(x) = x21 + x2x1 + x2

2 = [ x1 x2 ]

[

1 01 1

] [

x1

x2

]

64

Page 71: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Algo salta aos olhos no exemplo acima: o comportamento observado podeperfeitamente ser encontrado em outras situacoes. Isto sugere uma genera-lizacao, a qual, dada a sua trivialidade, sera apresentada sem provas:

Fato 3.3.1 Uma forma quadratica Q(x) pode admitir varias representacoesmatriciais:

Q(x) = xTQ1x = xTQ2x = · · ·

E bom lembrar que, a partir disto:

xTQ1x = xTQ2x 6=⇒ Q1 = Q2

Prosseguindo, seja a forma quadratica:

Q(x) = q11x21 + · · ·+ qijxixj + · · ·+ qjixjxi + · · ·

Como se trata de variaveis reais,

qijxixj + qjixjxi =qij + qji

2xixj +

qij + qji2

xjxi

donde, chamando

sij = sji =qij + qji

2sii = qii sjj = qjj

chega-se a

Q(x) = s11x21 + · · ·+ sijxixj + · · ·+ sjixjxi + · · ·

Proposicao 3.3.1 A uma forma quadraticaQ(x) pode-se associar uma unicarepresentacao matricial xTSx onde S e uma matriz simetrica.

A prova de que a representacao simetrica e unica e razoavelmente simples.Deste modo, dentre as infinitas representacoes matriciais para uma dadaforma quadratica, ha sempre uma unica muito particular, envolvendo umamatriz simetrica.

65

Page 72: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

+

++

+

−−

−−

x2

x1

IR20

IR20

Figura 3.4: Forma Q(x) = x21 − x2

2 e a particao do plano.

3.3.2 Sinal da Forma

A situacao agora e um pouco mais elaborada do que no caso das formaslineares, onde o espaco IRn sempre podia ser decomposto em tres regioes.Para as formas quadraticas a riqueza e maior, como pode ser visto no . . .

Exemplo 3.3.5 Para a forma Q(x) = x21−x2

2, o plano e particionado comona figura 3.4. Para este exemplo a forma pode assumir valores positivos,negativos, ou nulos dependendo de x.

As formas lineares tem sempre um comportamento como o do exemploacima: ha pontos x que as tornam positivas, ha pontos que as tornam nega-tivas e ha pontos que as anulam. As particoes IRn

⊕, IRn⊖, IR

n0 , do espaco IRn

sao sempre nao vazias. No caso das formas quadraticas pode haver outrassituacoes como por exemplo:

Q(x) = xT

[

1 00 1

]

x = x21 + x2

2

onde Q(x) > 0 ∀x 6= 0 e Q(x) = 0 para x = 0. Da para perceber o seguinte

Fato 3.3.2 Uma forma quadratica sempre se anula em x = 0:

Q(x) = 0 para x = 0

Dependendo do comportamento da forma para x 6= 0 pode-se reconhecervarios casos:

Definicao 3.3.3 A forma quadratica Q(x) e Identicamente Nula quandoQ(x) = 0 ∀x 6= 0 e se escreve Q(x) ≡ 0.

66

Page 73: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 3.3.4 A forma quadratica Q(x) e Positiva Definida quandoQ(x) > 0 ∀x 6= 0, caso denotado por Q(x) > 0. Uma forma quadraticaQ(x) e Negativa Definida quando Q(x) < 0 ∀x 6= 0, ou Q(x) < 0.

Definicao 3.3.5 A forma quadratica Q(x) e Positiva Semidefinida ou,semipositiva definida, quando Q(x) ≥ 0 ∀x 6= 0, caso designado por Q(x) ≥0. Uma forma quadratica Q(x) e Negativa Semidefinida quando Q(x) ≤0 ∀x 6= 0, ou Q(x) ≤ 0.

Definicao 3.3.6 A forma quadratica Q(x) e Indefinida quando nao seencaixar em uma das categorias acima.

3.3.3 Exercıcios

1. As formas abaixo sao do tipo xTQx. Classifica-las quanto ao sinal.Indicar, quando for o caso, as regioes IRn

⊕, IRn⊖ e IRn

0 .

(a) Q =

[

1 −1−1 0

]

(b) Q =

[

1 −1−1 1

]

(c) Q =

[

1 −1/2−1/2 1

]

(d) Q =

[

0 −1−1 0

]

(e) Q =

1 −1 0−1 1 10 1 0

2. Sendo M uma matriz quadrada qualquer mostrar que 12(M +MT ) sera

simetrica.

3.3.4 Criterios de definicao

As formas quadraticas definidas e semidefinidas sao muito importantes emum sem numero de problemas; assim, deve-se procurar metodos praticos paradescobrir o sinal de uma forma quadratica.

67

Page 74: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Teorema 3.3.1 (Sylvester) Uma forma Q(x) = xTSx , onde S e umamatriz simetrica, sera positiva definida se e somente se todos os seus menoresprincipais forem positivos:

Q(x) > 0 ⇐⇒ s11 > 0;

s11 s12s21 s22

> 0; · · ·

s11 · · · s1n...

...sn1 · · · snn

> 0;

Q(x) = xTSx sera negativa definida se e somente se −Q(x) for positivadefinida ou seja, os menores principais de S forem alternadamente positivose negativos:

Q(x) < 0 ⇐⇒ −Q(x) = xT (−S)x > 0

ou entao,

(menor de ordem k)(−1)k > 0, k = 1, 2, . . . n

Se nenhuma das condicoes for satisfeita a forma sera indefinida.

E bom notar que substituindo os sinais do teorema anterior por ≥ 0nao se obtem condicoes para o caso semidefinido. O proximo resultado,tambem classico, relaciona o sinal de uma forma com os autovalores da matrizsimetrica associada; mostra ainda um pouco da estrutura que tal matriz deveter. Antes de mais nada, deve-se ter em mente que autovalores de matrizessimetricas sao sempre reais.

Teorema 3.3.2 Cada uma das condicoes seguintes e necessaria e suficientepara que a forma Q(x) = xTSx , onde S e uma matriz simetrica, sejapositiva definida:

1. Os autovalores de S sao positivos.

2. E possıvel escrever S = CTC onde C e uma matriz com colunas line-armente independentes.

Embora os conceitos acima sejam definidos para formas quadraticas, comoa cada uma delas se pode associar uma unica matriz simetrica, pode-se falar,com abuso de linguagem, em matrizes simetricas positivas definidas, semide-finidas, etc. E, ao inves de se escrever Q(x) > 0 ou S(x) > 0 usa-se tambemQ > 0 ou S > 0, etc.

68

Page 75: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3.3.5 Normas, Metricas e “Tamanho”

Apesar de um espaco vetorial nao ser ordenado, pode-se classificar seus ve-tores de acordo com o “tamanho”. Para isso sao usadas as ideias de Normaou Modulo. Resumindo bastante uma teoria elaborada e bela, diz-se que aNorma Euclidiana, ou simplesmente Norma de um vetor x ∈ IRn e dadapor:

‖x‖ = x21 + x2

2 + · · ·+ x2n

Isto significa que a norma pode ser expressa como uma forma quadratica:

‖x‖ = xTx = xT Ix

onde I simboliza a matriz identidade. Aplicando o teorema de Sylvester amatriz I verifica-se trivialmente ser ela positiva definida, donde se concluique ‖x‖ = xTx > 0 ∀x ∈ IRn. Isto justifica a definicao de Modulo como

|x| =√

‖x‖ =√

x21 + x2

2 + · · ·+ x2n

Nas aplicacoes praticas, os elementos dos vetores sao grandezas fısicas,e muitas vezes algumas destas grandezas sao mais importantes que outras.Assim, seria interessante uma medida que evidenciasse isto, ja que a normaatribui um peso igual as componentes do vetor, quando seria desejavel privi-legiar algumas delas. Pode-se associar a ideia de norma a media aritmeticasimples, e dizer que existe interesse em algo parecido com uma media ponde-rada. Em outras palavras, se o tamanho de um vetor nos interessa mais emalgumas componentes, ou direcoes, do que em outras pode-se atribuir pesosa essas direcoes usando xTDx onde os elementos da matriz diagonal D refle-tiriam a importancia que se quer atribuir, ou retirar, de alguns componentesde x. De um modo mais geral:

Fato 3.3.3 Toda forma Q(x) = xTSx onde S > 0 ou S ≥ 0 permite as-sociar ao vetor x um escalar Q(x) que pode representar uma medida do“tamanho” do vetor x, da sua “distancia” ate a origem. Dependendo daescolha de S pode-se medir esse “tamanho” com enfase especial em algumasdirecoes.

3.3.6 Exercıcios

1. Seja a matriz simetrica Q > 0, com dimensao n × n. Sendo M umamatriz inversıvel, que se pode dizer de P = M−1QM? sera simetrica?e o seu sinal?

69

Page 76: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

2. Seja a matriz simetrica Q > 0, com dimensao n × n. Sendo D umamatriz (r × n), com r < n, que se pode dizer de P = DQDT ? serasimetrica? e o seu sinal?

3. Idem 4 para r > n

4. Idem 4 para r = n

3.3.7 Visao Geometrica das Formas Quadraticas

A operacao vTw pode representar o produto escalar entre os vetores v,w ∈IRn. Mas o produto escalar pode ser expresso em termos dos modulos dosvetores envolvidos e do angulo compreendido entre eles:

✲ v

✯ w

θ vTw = |v| |w| cos θ

Figura 3.5: Interpretacao visual do produto escalar entre vetores.

Desta maneira, o produto escalar carrega informacoes a respeito da po-sicao relativa entre os dois vetores. Assim, se vTw = 0 sabe-se que v e w

sao ortogonais. Se vTw > 0, o modulo do angulo entre eles e menor do queπ/2 e assim estes vetores “apontam na mesma direcao, estao em um mesmosemiespaco”. Se vTw < 0 entao cos θ negativo, θ > π/2 e os vetores v e w

“tentam seguir direcoes opostas”. A figura 3.6 ilustra bem a situacao. Paraum vetor v fixo, ha tres possibilidades para w:

vTw > 0 :mesma direcao, mesmo semiespaco

vTw = 0 : ortogonais

vTw > 0 :direcao oposta, semiespaco complementar

v

vTw > 0

vTw = 0

vTw < 0

Figura 3.6: Produto escalar medindo angulos entre vetores.

Com isto em mente, a forma quadratica xTQx pode ser encarada como oproduto escalar entre x e Qx, e assim xTQx mediria a deformacao angular

70

Page 77: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

causada pela aplicacao de Q a x, a quantidade de rotacao sofrida por x ate seobter Qx. Assim, se uma dada transformacao linear A : IRn → IRn e tal quexTAx > 0 ∀x ∈ IRn, entao A e um mapa que “preserva a direcao”, ou sejaum vetor x qualquer e sua imagem Ax estao sempre no mesmo semiplano.Se xTAx = 0 ∀x ∈ IRn entao cada elemento x e girado de π/2.

Neste ponto pode-se estabelecer a relacao entre duas formas quadraticasiguais. Sejam Q1 e Q2 tais que xTQ1x = xTQ2x ∀x ∈ IRn. ChamandoQ2 − Q1 = M vem xTQ1x = xT (Q1 + M)x = xTQ1x + xTMx, dondexTMx = 0 e M e ortogonal.

3.3.8 Miscelanea de Formulas

A colecao de resultados abaixo pode ser util em um grande numero de si-tuacoes. Eles virao sem demonstracoes. Os sımbolos A ≥ 0 ou A > 0 signifi-cam, como ja visto, que a forma quadratica xTAx e positiva semidefinida oupositiva definida respectivamente.

Fato 3.3.4 Seja C uma matriz m× n

A = CTC =⇒ A ≥ 0

Fato 3.3.5 Seja C uma matriz m× n com rank (C) ≥ n

A = CTC =⇒ A > 0

Fato 3.3.6 Seja C uma matriz n× n com det(C) 6= 0

A = CTC =⇒ A > 0

Fato 3.3.7 A ≥ B ⇐⇒ A−B ≥ 0

Fato 3.3.8 A ≥ 0, B ≥ 0 ⇐⇒ A +B ≥ 0

Fato 3.3.9 A ≥ 0, B ≥ 0 6⇐⇒ AB ≥ 0

Fato 3.3.10 Sendo λ um autovalor generico de A (n× n):

A ≥ 0 =⇒ Re(λ) ≥ 0A > 0 =⇒ Re(λ) > 0A simetrica =⇒ λ ∈ IRA simetrica, A > 0 =⇒ λ ∈ IR, λ > 0

71

Page 78: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Fato 3.3.11 Se A e simetrica seus autovetores sao ortogonais e assim:

A e simetrica =⇒ A=UTΛU onde U e unitaria (UTU=I) e Λ = diag(λi)

Definicao 3.3.7 A raiz quadrada matricial simetrica de A ≥ 0, designadapor A1/2 ou

√A e tal que

√A√A = A e

√A = (

√A)T

Fato 3.3.12√A = UTΛ1/2U . Como U e nao unica a raiz quadrada matri-

cial simetrica e tambem nao unica.

Fato 3.3.13 A ≥ 0 e simetrica, B ≥ 0 e simetrica 6=⇒ AB ≥ 0

A ≥ 0 e simetrica, B ≥ 0 e simetrica 6=⇒ ABsimetrica

A ≥ 0 e simetrica, B ≥ 0 e simetrica =⇒ λ(AB) ∈ IR, λ(AB) ≥ 0

Fato 3.3.14 Sendo λ o menor autovalor de uma matriz A ≥ 0 e simetricae λ o maior deles:

A ≥ 0 e simetrica =⇒ λ(A)|x|2 ≤ xTAx ≤ λ(A)|x|2, ∀x ∈ IRn

Fato 3.3.15 Define-se norma de uma matriz A como

‖A‖ = sup|x|=1

|Ax|

Com isto:A ≥ 0 e simetrica =⇒ ‖A‖ = λ(A)

A > 0 e simetrica =⇒ ‖A−1‖ = (λ(A))−1

3.3.9 Funcoes Lineares e Quadraticas

Uma funcao f : IRn −→ IR e chamada de linear quando existem constantesa ∈ IRn e β ∈ IR tais que

f(x) = aTx+ β = xTa + β ∀x ∈ IRn

Trata-se, basicamente, de uma forma linear associada a uma constante.Funcoes lineares sao contınuas e diferenciaveis em todo o IRn, e e facil verificarque

g(x) = ∇f(x) = a ∀x ∈ IRn e H(x) = ∇2f(x) = 0 ∀x ∈ IRn

No caso visualizavel n = 2 as funcoes lineares sao planos no IR3 e as curvasde nıvel sao retas paralelas no IR2, como mostra a figura 3.7. Funcoes lineares

72

Page 79: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

f(x) = 2x1 − x2 − 3

-10-5

05

10 -10-5

05

10

-30-20-100

1020

Figura 3.7: Plano no IR3 e curvas de nıvel

sempre assumem valores positivos, negativos e nulos, sao nao limitadas e naopossuem maximos ou mınimos.

Uma funcao q : IRn −→ IR e chamada de quadratica quando existemconstantes A ∈ IRn×n, uma matriz quadrada, b ∈ IRn e γ ∈ IR tais que

q(x) =1

2xTAx+ bTx+ γ ∀x ∈ IRn (3.5)

Trata-se de uma associacao entre formas quadraticas, lineares e constan-tes. O termo linear, como ja visto, tambem poderia ter sido escrito comoxTb. Funcoes quadraticas sao contınuas e diferenciaveis em todo o IRn; assimcomo as lineares, estas funcoes sao nao limitadas, mas as semelhancas ter-minam por aqui. As funcoes quadraticas podem ter maximos e/ou mınimos,podem assumir valores apenas positivos, apenas negativos, ou entao valorespositivos, negativos e nulos.

Em um numero razoavel de casos praticos de otimizacao a funcao obje-tivo e quadratica, como por exemplo nas interpolacoes via mınimos qua-drados. Isto e muito bem vindo, pois as funcoes quadraticas tem expressoesanalıticas relativamente simples e nelas os fatos basicos de otimizacao tem in-terpretacoes claras e diretas. Note-se que o termo independente γ, usado em(3.5), pode ser abandonado, pois nao tem papel em otimizacao, e que a matrizA pode, sem perda de generalidade, ser considerada simetrica: A = AT .

Propriedade 3.3.1 O gradiente e a Hessiana de uma funcao quadratica saodados por:

g(x) = ∇q(x) = Ax+ b e G(x) = ∇2q(x) = A

A demonstracao desta propriedade se faz expressando a funcao quadraticade (3.5) em termos das componentes x1, x2, . . . xn e calculando as derivadasparciais. Uma consequencia imediata e dada por

73

Page 80: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Propriedade 3.3.2 Os pontos estacionarios de uma funcao quadratica sao:

∇q(x) = 0 ⇐⇒ Ax = −b

Percebe-se que, quando a equacao Ax = −b nao admitir solucoes a funcaonao tem pontos estacionarios e, consequentemente, mınimos ou maximos,sendo portanto ilimitada.

Propriedade 3.3.3 Sendo x,p ∈ IRn e α ∈ IR

q(x+ αp) = q(x) + αpT (Ax+ b) +1

2α2pTAp

A expressao, cuja demonstracao e razoavelmente simples, mostra a queponto de uma quadratica se chega ao sair do ponto x e andar uma distanciaα na direcao dada pelo vetor p. Aplicando esta propriedade a um pontoestacionario vem

Propriedade 3.3.4 Seja um ponto x∗ tal que Ax∗ = −b e uma direcaodada pelo vetor p ∈ IRn:

q(x∗ + αp) = q(x∗) +1

2α2pTAp

Assim, o comportamento de uma funcao quadratica nas vizinhancas deum ponto estacionario depende apenas da Hessiana A = ∇2q(x). Como A esimetrica, seus autovalores sao reais, e os autovetores associados formam umabase ortonormal. Supondo que um objeto “sai” de um ponto estacionario x∗

ao longo de uma direcao dada pelo i-esimo autovetor de A, pode-se usar apropriedade acima com p = vi.

q(x∗ + αvi) = q(x∗) +1

2α2vi

TAvi

= q(x∗) +1

2α2λi

onde se usou a hipotese de que o autovetor vi tem norma unitaria, ou seja:vTi vi = 1. E facil concluir que

λi > 0 entao q e crescente com αλi < 0 entao q e decrescente com αλi = 0 entao q e constante e linear: q(x) = bTx

Uma funcao quadratica com Hessiana positiva definida tem um compor-tamento peculiar com respeito a otimizacao, visto que seus autovalores saotodos reais e positivos.

74

Page 81: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Propriedade 3.3.5 Supondo λi(A) > 0 ∀i = 1, 2, . . . n o ponto estacionariox∗ e o unico mınimo global da funcao.

O equivalente escalar seria uma parabola de segundo grau com concavi-dade para cima.

Exemplo 3.3.1 Seja a funcao quadratica q(x1, x2) = 2.5x21 + x2

2 + 3x1x2 −5.5x1 − 3.5x2, expressa em forma matricial como

q(x) =1

2xT

[

5 33 2

]

x+ [−5, 5 − 3, 5]x

Como a Hessiana A e inversıvel o PE e dado trivialmente por

x∗ = −A−1b =

[

0, 51, 0

]

Os autovalores e autovetores de A sao

λ1 = 6, 85 → v1 =

[

−0, 85−0, 53

]

λ2 = 0, 15 → v2 =

[

0, 53−0, 85

]

A funcao tem um mınimo global em x∗ e suas curvas de nıvel sao elipsescujos eixos principais sao os autovetores da Hessiana. Uma visao tridimen-sional desta funcao esta na figura 3.8

−10

12 −1

0

1

2

3

−4

0

4

8

12

16

Figura 3.8: Quadratica cuja Hessiana tem autovalores positivos

75

Page 82: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

O comportamento de uma funcao quadratica com Hessiana positiva se-midefinida e sintetizado pela

Propriedade 3.3.6 Supondo λi(A) ≥ 0 ∀i = 1, 2, . . . n o ponto estacionariox∗, se existir, e um mınimo local fraco da funcao.

Exemplo 3.3.2 Seja a funcao quadratica q(x1, x2) = 2x21 +0.5x2

2 + 2x1x2 −4x1 − 2x2, expressa em vorma matricial como

q(x) =1

2xT

[

4 22 1

]

x+ [−4 − 2]x

A Hessiana A nao e inversıvel, e a equacao Ax∗ = −b admite infinitassolucoes dadas por

x∗ =

[

02

]

+ α

[

1−2

]

Cada um dos pontos desta reta no IR2 e um mınimo local fraco. Estareta e tambem a direcao dos autovetores associados ao autovalor λ1 = 0. Aooutro autovalor, λ2 = 5, associa-se a direcao [2 1]T . A superfıcie de q e dotipo calha, e suas curvas de nıvel sao retas paralelas, como se pode visualizarna figura 3.9

-100

10 -2-1

01

0100200300400

Figura 3.9: Quadratica com Hessiana positiva semidefinida

Quando a Hessiana da funcao quadratica tem autovalores positivos e ne-gativos, ou seja, quando ela e indefinida, vale a:

Propriedade 3.3.7 Supondo autovalores maiores, menores ou iguais a 0, oponto estacionario x∗ e uma sela.

76

Page 83: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Exemplo 3.3.3 Seja a funcao quadratica abaixo, com seu ponto estacionario.

q(x) =1

2xT

[

3 −1−1 −8

]

x+ [−0, 5 8, 5]x; x∗ = −A−1b =

[

0, 51, 0

]

Os autovalores e autovetores de A sao

λ1 = 3, 09 → v1 =

[

−1, 00, 1

]

λ2 = −8, 09 → v2 =

[

−0, 1−1, 0

]

As curvas de nıvel (vide figura 3.10) sao hiperboles cujos eixos principaisestao associados aos autovetores da Hessiana.

−3−1

13

5 −3

−1

1

3

5

−70

−30

10

Figura 3.10: Quadratica com Hessiana indefinida

3.4 Convexidade

A importancia da convexidade nos problemas de otimizacao extrapola o casoescalar, e os resultados vistos nessa situacao podem ser generalizados. Antesdisso vale relembrar e repetir a definicao formal de convexidade de regioes.

Definicao 3.4.1 Um domınio D ⊂ IRn e convexo se para qualquer par deelementos x1,x2 ∈ D e qualquer real α ∈ [0 1] o ponto αx1+ (1−α)x2 ∈ D.

E a velha ideia de sempre, todos os pontos do segmento de reta unindopontos quaisquer de D tambem pertencem a este domınio. Note-se que o IRn

e convexo.

77

Page 84: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 3.4.2 A funcao f : IRn −→ IR e convexa em um domınio D ⊂IRn se, para qualquer par de pontos x1,x2 ∈ D e qualquer real α ∈ [0 1]

f(αx1 + (1− α)x2) ≤ αf(x1) + (1− α)f(x2)

Embora a visualizacao seja mais difıcil, e a mesma ideia anterior.

Propriedade 3.4.1 Se a funcao f : IRn −→ IR pertence a C1, entao ela seraconvexa em um domınio D ⊂ IRn se e somente se, para quaisquer x0,x ∈ D

f(x) ≥ f(x0) +∇f(x0)T (x− x0)

Olhando um pouco para tras, ate a figura 1.11, nota-se que se trata damesma situacao: o grafico da funcao esta acima de qualquer tangente.

Propriedade 3.4.2 Uma funcao f : IRn −→ IR pertencente a C2 sera con-vexa em um domınio convexo D ⊂ IRn se e somente se

∇2f(x) ≥ 0 ∀x ∈ DUm criterio para reconhecer a convexidade de uma funcao, baseado na

Hessiana. Esta deve ser PSD em todos o pontos internos de um domınioconvexo. Como a Hessiana de uma funcao quadratica e constante (estaolembrados, esta ha poucas paginas atras) a determinacao de sua convexidadee muito simples.

Propriedade 3.4.3 Se f : IRn −→ IR e convexa em D ⊂ IRn entao cadamınimo local sera tambem global em D.

Esta propriedade e uma das principais razoes da importancia da conve-xidade.

Propriedade 3.4.4 Se x∗ ∈ IRn e ponto estacionario de um funcao convexaf entao x∗ e um minimizador global de f .

No caso geral, a condicao de estacionariedade ∇f(x∗) = 0 e apenas ne-cessaria para x∗ ser minimizador, para garantir mesmo isto, a otimalidade dex∗, e preciso verificar ainda se ∇2f(x∗) ≥ 0. Mas quando f e convexa tudose simlifica e a condicao de estacionariedade tambem e suficiente, beleza!

Exemplo 3.4.1 Analisar a funcao f(x1, x2) = x1x2. Esta e uma quadraticasimples que pode ser colocada na forma padrao:

f(x) =1

2xT

[

0 22 0

]

x donde ∇2f(x) =

[

0 22 0

]

Como a Hessiana e indefinida nao ha convexidade. A visualizacao podeser feita na figura 3.11.

78

Page 85: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

−400

40−40

0

40

−2000

0

2000

Figura 3.11: Hessiana indefinida: nao ha convexidade

A teoria da minimizacao sem restricoes no caso geral e bela e rigorosa,mas as dificuldades operacionais de algumas aplicacoes podem torna-la im-praticavel, e uma pena . . . Este e um filme ja visto antes, no caso escalar, ea solucao estava nos metodos numericos. Aqui tambem.

79

Page 86: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 4

Metodos numericos paraminimizacao vetorial

Antes de comecar, um lembrete importante. Assim como as ferramentas ana-lıticas ja vistas, os metodos numericos descritos neste capıtulo foram projeta-dos para funcaos suaves, e aplicacoes fora deste caso sao feitas sem qualquergarantia. Estes metodos trabalham com sequencias de pontos convergentes:a sequencia de pontos x0,x1,x2, . . . ,xk no IRn deve se aproximar da solucaodesejada x∗. Algumas questoes basicas.

Onde comecar? Em qualquer metodo, comecando perto do final, o cami-nho ate ele sera mais curto. Bem . . . isto sera verdade se o metodofor razoavelmente esperto, o que certamente sera o caso. Deste modo,qualquer informacao a priori que se possa ter sobre a solucao sera muitoutil. Se nada se souber sobre ela, paciencia, o comeco sera de um lugarqualquer e cabe unicamente ao metodo a tarefa de, sem qualquer tipode pista, procurar x∗.

Como proceder? Nao ha muita escolha, dado um ponto xk ∈ IRn deve-seescolher uma direcao dk, tambem um vetor do IRn, e avancar uma certadistancia αk nela. Isto significa que um passo generico de um algoritmoqualquer se baseia na relacao xk+1 = xk + αkd

k ou, equivalentemente,no comportamento vetorial ilustrado pela figura 4.1.

As diferencas entre os possıveis metodos estao na maneira de se deter-minar a direcao de avanco, o vetor dk ∈ IRn, e a quantidade de avanco,o escalar αk ∈ IR.

Quando parar? As vezes e possıvel calcular o gradiente em cada ponto xi.Como o gradiente se anula no solucao x∗, e como as funcoes sao sua-ves, quando ∇f(xi) estiver suficientemente proximo de zero e hora de

80

Page 87: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

xk✕

✲dk

✲αkd

k

✲ xk+1

xk+1 = xk + αkdk

Figura 4.1: Comportamento vetorial dos metodos numericos

parar. Normalmente se usa a norma para medir esta proximidade dezero: se ‖∇f(xi)‖ < ε (uma tolerancia especificada) entao FIM. Outramaneira e monitorar o avanco de cada passo. De modo geral, quandoo avanco de varios passos consecutivos e pequeno, e cada vez menor,isto significa proximidade da solucao e pode-se parar. Em sımbolos, sexk+1 esta suficientemente proximo de xk: parada. Para medir proximi-dades, usa-se a norma: se ‖xk+1 −xk‖ < ε entao FIM. Pode-se pensarem criterios de parada sofisticados, detalhando e combinando as ideiasbasicas acima, como se vera mais a frente.

4.1 Metodo de descida maxima

Ou de maior descida, ou de descida ıngreme, ou, sendo bem nacionalistas,“steepest descent”. O mecanismo basico deste metodo e simples e intuitivo,e e conhecido desde a epoca de Cauchy: a direcao de avanco em cada iteracaodeve causar o maximo decrescimo possıvel na funcao f . Como achar um vetordk ∈ IRn com essa caracterıstica? Facil, basta lembrar a ideia de gradiente,explicada anteriormente. Partindo de um ponto qualquer do IRn e avancandona direcao do gradiente o aumento sera maximo. Como se deseja o efeitooposto, a escolha e clara, avancar na direcao oposta: dk = −∇f(xk). O outronome deste procedimento, metodo do gradiente, ja pode ser entendido.

Animais subindo e descendo morros entendem muito bem de gradientese de caminhos com maximas e mınimas inclinacoes. Seus objetivos sao os deminimizar o esforco, logo eles escolhem rotas de subida ou descida mınimas,quase perpendiculares ao gradiente. E o chamado caminho dos burrinhos. Aintuicao funciona bem e permite descobrir qual a direcao de descida maxima,mas as ferramentas analıticas tambem podem ser empregadas. Supondo umponto x ∈ IRn e um outro ponto obtido ao se avancar uma distancia α emuma direcao d qualquer: x + αd onde α ∈ IR e d ∈ IRn. Usando o teoremade Taylor para calcular o valor de uma funcao f no novo ponto:

f(x+ αd) = f(x) + α[∇f(x)]Td+R

81

Page 88: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

onde R e o resto de Taylor, que pode ser desprezado para valores pequenos deα. Sera exatamente esse o caso, considerar que os dois pontos estao proximos.Qual a variacao sofrida por f ao se passar de x ao outro ponto? Chamando-ade δf e facil estabelecer que

δf = f(x+ αd)− f(x) = α[∇f(x)]Td = αdT∇f(x)

O escalar α pode ser considerado positivo, logo o sinal de δf depende dosinal de dT∇f(x) que e o produto escalar entre os vetores d e ∇f(x). Variasconclusoes interessantes, e simples, podem ser tiradas.

• Como o produto escalar se anula quando o angulo entre os vetores ereto, conclui-se que uma direcao de avanco perpendicular ao gradientenao altera o valor da funcao, ou seja, esta e a direcao da curva de nıvelque passa pelo ponto.

• Como o produto escalar e positivo quando o angulo entre os vetores eagudo, um avanco que “aponta na mesma direcao do gradiente” causaaumento no valor de f . No caso limite de angulo nulo entre os vetores, oproduto escalar assume seu valor maximo, donde δf e maximo quandod = ∇f(x).

• Mudando o que deve ser mudado no paragrafo acima conclui-se que adirecao de maxima descida e d = −∇f(x).

Em resumo, sendo θ o angulo entre o gradiente ∇f(x) e a direcao de testeescolhida d:

θ = 0◦ direcao de maxima subida0 < θ < 90◦ direcao de subidaθ = 90◦ direcao de subida nula (CN)90◦ < θ < 180◦ direcao de descidaθ = 180◦ direcao de descida maxima

Exemplo 4.1.1 Para a funcao f = x1x22, dado o ponto x

0 = [1 2]T , verificarse d = [−1 2]T e uma direcao de descida e calcular a ddm (direcao de descidamaxima). O calculo das derivadas parciais fornece f ′

x1= x2

2 e f ′x2

= 2x1x2,donde

∇f(x) = g(x) =

[

x22

2x1x2

]

=⇒ g(x0) =

[

44

]

= 4

[

11

]

Como dTg(x0) = 4 > 0 a direcao dada e de subida e nao de descida. Addm e −4[1 1]T . E interessante notar que uma direcao no IRn pode ser dada

82

Page 89: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

por um vetor qualquer pertencente a ela e assim a resposta a este ıtem poderiaser γ[1 1]T para qualquer γ ∈ IR, γ < 0. E comum, mas nao obrigatorio,apresentar direcoes por meio de vetores com normas unitarias.

Voltando ao metodo do gradiente, estando a direcao de avanco dk em umaiteracao qualquer determinada, falta encontrar αk, a quantidade de avanconessa direcao. Sera usado o que se chama busca de linha ou em linha oulinear. Sendo xk e dk conhecidos, o proximo ponto xk+1 depende apenas doavanco αk ou, para simplificar, α.

xk+1 = xk + αdk = xk+1(α)

e assim f(xk + αdk) e uma funcao escalar que sera denotada por f(α). Oavanco αk que causa o maior decrescimo em f e aquele que minimiza f(α):

αk = min{

f(α) = f(xk + αdk)}

Mas este e um problema de otimizacao escalar que pode ser resolvidode maneira visual, analıtica, ou numerica, como ja visto, em detalhes, nocapıtulo 2.

Exemplo 4.1.2 Para a funcao f = x1x22, dado o ponto x0 = [1 2]T , calcular

o avanco α0 da primeira iteracao do metodo do gradiente. A ddm ja foicalculada no exemplo anterior: d0 = [−1 − 1]T

x0 + αd0 =

[

12

]

+ α

[

−1−1

]

=

[

1− α2− α

]

donde f(x0+αd0) = f(α) = (1−α)(2−α)2 = −α3+5α2−8α+4. Derivandoe igualando a zero:

f ′(α) = −3α2 + 10α− 8 = 0 ⇐⇒ α1 = 2 ou α2 = 4/3

O calculo da derivada segunda resolve a duvida:

f ′′(α) = −6α + 10 =⇒ f ′′(α1) = −2 < 0 e f ′′(α2) = 2 > 0

A minimizacao e portanto atingida com α0 = α2 = 4/3.

O raciocınio empregado para a busca em linha e especıfico para umaiteracao do metodo do gradiente, mas pode perfeitamente ser usado em umcontexto mais geral. Sendo x e d vetores do IRn, e f : IRn → IR uma funcaosuave, pode-se associar a ela a funcao escalar

f : IR −→ IR

α 7→ f(α) = f(x+ αd)

83

Page 90: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 4.1.1 A derivada f ′ = df /dα e chamada de derivada direcionalde f na direcao d.

Um algebrismo simples com o gradiente mostraria que a derivada direci-onal pode ser obtida de modo alternativo:

f ′(α0) =df

α0

= dT∇f(x+ α0d)

O valor α0 = 0 fornece a derivada direcional no proprio ponto x: f ′(0) =dT∇f(x). Se d e a ddm, entao f ′(0) = −[∇f(x)]T∇f(x) = −||∇f()

¯v||2

que e um valor certamente negativo o que comprova (como se ainda fossenecessario . . . ) que a direcao e de descida.

Algoritmo 4.1.1 (Metodo da Descida Maxima)

Dados: • f : IRn → IR, uma funcao suave

• x0 ∈ IRn, ponto de partida

• εg, εa, εr ∈ IR, tolerancias

Objetivo: Encontrar xk ∈ IRn suficientemente proximo do mınimox∗ de f

Operacoes

1. xk = x0

2. Calcule ∇f(xk) = g(xk)

3. ||g(xk)|| < εg −→ x∗ = xk −→ FIM

4. dk = −g(xk)||g(xk)||−1 ddm normalizada

5. f(α) = f(xk + αdk)

6. αk = min{f(α)}

7. xk+1 = xk + αkdk

8. f(xk+1) esta OK?

(a) sim: −→ x∗ = xk+1 −→ FIM

(b) nao: xk = xk+1 −→ volta para 2.)

84

Page 91: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Varios aspectos precisam ser explicados e comentados. O primeiro cri-terio de parada, encarado na etapa 3.) acima, e simples, gradiente pequenoem um dado passo indica proximidade do mınimo e a tarefa estaria feita. Ocriterio adicional aparece na etapa 8.) de modo muito vago; ele, na realidade,envolve dois pontos consecutivos suficientemente proximos, ou seja, quando

|f(xk+1)− f(xk)| < εa

pode-se parar. O escalar εa e uma tolerancia absoluta, mas tambem se podepensar em uma tolerancia relativa ou porcentual. Se

|f(xk+1)− f(xk)||f(xk)| < εr

entao se pode parar. Um modo de aproveitar os dois conceitos simultanea-mente e atraves do criterio

|f(xk+1)− f(xk)| < εa + εr|f(xk)|

onde se poderia usar, por exemplo, εa = 10−6 e εr = 0.01 ou 1%. Assim,o teste especıfico da etapa 8.) seria verificar a validade da expressao acima.Para aumentar a seguranca costuma-se exigir que o criterio acima seja veri-ficado em duas iteracoes consecutivas.

A etapa 2.) do metodo acima solicita o valor do gradiente em um dadoponto. Se a funcao f permitir, pode-se encontrar a expressao analıtica para∇f e aplica-la ao ponto xk, caso contrario deve-se usar uma rotina numericapara o calculo do gradiente. A etapa 6.) requer a minimizacao de uma funcaoescalar, e os mesmos comentarios acima se aplicam. Os metodos numericosvistos no capıtulo 2 podem ser utilizados. Falta comentar sobre o aspectomais importante, o algoritmo apresentado acima funciona, converge?

4.1.1 Convergencia do metodo de descida maxima

Justificativas detalhadas sobre a convergencia deste metodo — e de quasetodos os outros — nao serao vistas nestas notas. Aponta-se apenas que ometodo do gradiente converge. O avanco αk e obtido minimizando a funcaof(α) = f(xk + αkd

k) no k-esimo passo. Isto quer dizer que

df

αk

= 0 = [∇f(xk + αkdk)]Tdk

onde se emprega o conceito de derivada direcional. Mas xk + αkdk = xk+1

e isto acarreta [∇f(xk+1)]Tdk = 0 e consequentemente [dk+1]Tdk = 0, ou

85

Page 92: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

seja, duas direcoes de descida consecutivas quaisquer sao perpendiculares. Aconclusao e que o metodo avanca em zig-zag com angulos retos, como mostraa figura 4.2, e se os αk forem decrescentes a sequencia deve convergir.

x0

Figura 4.2: O metodo do gradiente avanca em zig-zag com angulos retos

Este arrazoado esta longe de ser uma demonstracao formal, mas servebem aos propositos atuais. Para ilustrar melhor estas ideias seja a funcaoquadratica

f(x) =1

2xT

[

2 00 2a

]

x = x21 + ax2

2 a ∈ IR

Este exemplo e muito simples, f e convexa (para a > 0) e a origem eo mınimo. As curvas de nıvel sao elipses concentricas e as direcoes dk saotangentes a elas nos pontos xk+1. A figura 4.3 mostra, para a = 1, a funcaono IR3 e as curvas de nıvel.

Figura 4.3: Visualizando o metodo do gradiente para uma quadratica

E imediato perceber que se a = 1 as elipses sao circunferencias e logo aprimeira direcao d0 aponta na direcao do mınimo, para qualquer x0. Quantomaior o valor de a mais as elipses se alongam e pode-se prever uma con-vergencia mais problematica. Alguns pontos continuam gerando raios diretosao mınimo, aqueles nos eixos principais das elipses, mas para um inicializadorx0 qualquer a convergencia fica mais lenta. A figura 4.4 mostra a superfıcieda funcao no IR3 e as curvas de nıvel para a > 1.

86

Page 93: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Figura 4.4: Quadratica e curvas de nıvel para a > 1

Demonstra-se que a convergencia se relaciona ao condicionamento da Hes-siana de f . Hessianas bem condicionadas nos pontos de interesse sao exce-lentes para o metodo, causando convergencias rapidas; no caso contrario halentidao. O numero de condicao, ou de condicionamento de uma matrizpode ser definido, sob algumas condicoes, como λ∗/λ∗ onde λ∗ e o maior deseus autovalores e λ∗ e o menor. Matrizes bem condicionadas apresentamnumeros de condicao proximos da unidade (seus autovalores estao proximos,agrupados, no plano complexo); matrizes mal condicionadas apresentam au-tovalores dispersos, numeros de condicao elevados. A Hessiana da quadraticaconsiderada pode ser obtida facilmente:

∇2(f) = H =

[

2 00 2a

]

onde a > 1 resulta em κ(H) = a, o que justifica analiticamente as ideiassugeridas graficamente. Muitas vezes, problemas de convergencia sao corri-gidos alterando-se o condicionamento da Hessiana associada. Se a funcao doexemplo fosse f(x) = x2

1 + 9x22, entao κ(H) = 9, aumentandoa possibilidade

de problemas. A escolha de novas variaveis w1 = x1 e w2 = 3x2 leva a

f(x) = x21 + 9x2

2 = w21 + w2

2 = g(w)

A nova funcao tem Hessiana bem condicionada e se presta muito bem aometodo de descida maxima. A solucao otima w∗ deve ser reconvertida paraas variaveis originais x, claro.

De modo geral, se um problema de minimizacao de uma funcao f(x)apresentar problemas, pode-se procurar uma matriz real T n × n inversıveltal que x = Tw ou, equivalentemente, w = T−1x. O problema relativo auma dada f e modificado lembrando que f(x) = f(Tw) = g(w).

min f(x)x ∈ IRn e equivalente a

min g(w)w ∈ IRn

87

Page 94: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Uma escolha criteriosa de T permite alterar condicionamentos e acelerarconvergencias. Isto se chama escalonar o problema. Segue, finalmente, umexemplo de aplicacao de metodo de descida maxima.

Exemplo 4.1.3 Efetuar uma iteracao do metodo de descida maxima paraa funcao f(x) = (x1 − 2)4 + (x1 − 2x2)

2 com x0 = [0 3]T . As derivadasparciais sao: f ′

x1= 4(x1 − 2)3 + 2(x1 − 2x2) e f ′

x2= −4(x1 − 2x2) com o que

se pode calcular o gradiente no ponto inicial:

∇f(x0) =

[

−4424

]

=⇒ d0 = −∇f(x0) =

[

11−6

]

Notem que a direcao e apenas uma das possıveis, e foi escolhida por apre-sentar numeros inteiros e pequenos. Avancando nesta direcao:

x0 + αd0 =

[

11α3− 6α

]

=⇒ f(α) = (11α− 2)4 + (11α− 6 + 12α)2

A derivada desta funcao e f ′ = 44(11α− 2)3 + 46(23α− 6), para a quala obtencao de raızes nao e das tarefas mais simples e pediria, talvez, ummetodo numerico.

4.2 Metodo do gradiente conjugado

O metodo do gradiente pode ter convergencia lenta, e alem disso, nem mesmonos casos considerados simples, como o das funcoes quadraticas, pode-segarantir que ele consiga convergencia exata em um numero finito de passos,e para qualquer ponto inicial. Como melhorar esses aspectos? Tal facanha econseguida, para funcoes quadraticas, pelo Metodo do Gradiente Conjugado,devido a Fletcher e Reeves. Dado o sucesso do MGC para estas funcoes,espera-se que ele funcione melhor do que o MDM no caso geral.

No metodo do gradiente a direcao de descida e sempre a direcao de descidamaxima: dk+1 = −∇f(xk+1) = −g(xk+1) = ddm. Duas direcoes de descidaconsecutivas dk e dk+1 sao sempre perpendiculares, e talvez aqui resida acausa das imperfeicoes do metodo. Fazendo dk+1 = ddm + desvio para adirecao anterior o efeito seria o de suavizar as mudancas de direcao e, espera-se, o de melhorar a convergencia. Pode-se atingir isso da seguinte maneira.

dk+1 = −g(xk+1) + βkdk (4.1)

onde o escalar βk mede uma certa inercia. Como encontrar este parametro?Valores pequenos de βk indicam pouca mudanca, ou seja, variacao ainda

88

Page 95: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

brusca de direcao (que pouco se afasta dos 90◦ originais), ao passo que va-lores elevados deixam a nova direcao mais proxima da antiga. No MGC adeterminacao de βk e feita impondo que dk e dk+1 sejam direcoes conjugadas.

Dada uma matriz real A n × n, positiva definida, os vetores v,w ∈ IRn

sao direcoes conjugadas com relacao a A quando vTAw = 0. No MGC asprimeiras direcoes de descida sao conjugadas: diTAdj = 0 para i 6= j ei, j < n e A a Hessiana da funcao no ponto. Os avancos αk sao obtidospor busca linear, como antes. O detalhamento sera feito para uma funcaoquadratica.

f(x) = q(x) =1

2xTAx+ bTx

onde b ∈ IRn e A > 0, para garantir a existencia do mınimo. Em um pontox ∈ IRn qualquer o gradiente e dado por ∇f(x) = g(x) = Ax+ b. Supondoque xk,dk ∈ IRn sao conhecidos, a determinacao do proximo ponto e regidapor xk+1 = xk + αkd

k onde αk e obtido por busca linear, minimizandof(α) = q(xk + αdk). Usando o conceito de derivada direcional e o fato de fser quadratica, o resultado e uma formula simples para esta etapa.

df

dα= [g(xk + αdk)]Tdk = dkT [A(xk + αdk) + b] = dkT [αAdk + g(xk)]

A quantidade de avanco pode ser obtida anulando esta expressao.

df

dα= 0 ⇔ αdkTAdk + dkTg(xk) = 0 ⇔ α = αk = − dkTg(xk)

dkTAdk

Ainda ha algo a estabelecer com as derivadas direcionais, que sera utilmais a frente. O valor αk e minimizador, entao

df

αk

= 0 ⇒ dkTg(xk + αkdk) = 0 ⇒ dkTg(xk+1) = 0 (4.2)

Agora o ponto crucial, a escolha da nova direcao dk+1. A equacao (4.1),aqui repetida por conveniencia, sera usada.

dk+1 = −g(xk+1) + βkdk

A determinacao exata de βk e feita impondo que dk e dk+1 sejam direcoesconjugadas. No que segue, g(xk+1) sera denotado por gk+1.

dkTAdk+1 = 0 ⇒ dkTA(βkdk − gk+1) = 0

⇒ βkdkTAdk = dkTAgk+1 = (gk+1)TAdk

⇒ βkdkTAdk = (gk+1)T (gk+1 − gk)/αk

89

Page 96: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

onde dk = (xk+1 − xk)/αk e, da expressao do gradiente de uma funcaoquadratica, Ax = g(x) − b ∀x. Entrando agora com a expressao deduzidaalgumas linhas acima para αk leva a

−βkdkTgk = (gk+1)T (gk+1 − gk) (4.3)

A equacao (4.2) diz que dkTgk+1 = 0, mas dk pode tambem ser obtidode 4.1, donde

1

βk(dk+1 + gk+1)Tgk+1 = 0 ⇒ (dk+1)Tgk+1 = −(gk+1)Tgk+1

Considerando esta relacao no passo anterior (ou seja, fazendo k = k − 1)chega-se a (dk)Tgk = −(gk)Tgk que pode ser substituıda em 4.3 fornecendo— finalmente! — uma expressao simpatica para βk, em funcao apenas dosgradientes.

βk =(gk+1)T (gk+1 − gk)

gkTgk=

||gk+1|| − [gk+1]Tgk

||gk|| (4.4)

O uso desta formula conduz ao MGC na sua forma de Polak-Rebiere. Nometodo da descida maxima, os gradientes em iteracoes consecutivas eramperpendiculares. Como ha muitas coisas em comum entre estes metodos,cabe uma analise sobre o que acontece aqui.

(gk+1)Tgk = (gk+1)T (−dk + βk−1dk−1)

= βk−1(gk+1)Tdk−1

= βk−1(Axk+1 + b)Tdk−1

= βk−1(Axk + αkAd

k + b)Tdk−1

= βk−1(gk + αkAd

k)Tdk−1

= βk−1(gkT + αkd

kTA)dk−1

= 0

Confiando em que os leitores diligentes aproveitarao a oportunidade paraexercitar seus dotes algebricos e perseguirao os detalhes desta demonstracaoate se convencerem de que o resultado final e mesmo nulo, o desenvolvimentoprosseguiria, levando ao resultado:

βk =(gk+1)Tgk

gkTgk=

||gk+1||||gk|| (4.5)

Esta e uma formula mais simples que a anterior, e as versoes do MGCbaseadas nela sao chamadas de Fletcher-Reeves. Falta apenas um pequenodetalhe com relacao a d0, a primeira direcao de descida. Ela e encontradada maneira natural, pelo gradiente: d0 = −g0.

90

Page 97: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Algoritmo 4.2.1 (Metodo do gradiente conjugado)

Dados: • f(x) = (1/2)xTAx+ bTx, quadratica com A > 0

• x0 ∈ IRn, ponto de partida

Objetivo: Encontrar o mınimo x∗ de f

Operacoes

• g0 = Ax0 + b; d0 = −g0; direcao inicial

• α0 = −d0Tg0/(d0TAd0); avanco inicial

• x1 = x0 + α0d0; ponto #1

• g1 = Ax1 + b; gradiente #1

• β0 = Polak-Rebiere ou Fletcher-Reeves

• d1 = −g1 + β0d0; direcao #1

• α1 = −d1Tg1/(d1TAd1); avanco # 1

• x2 = x1 + α1d1; ponto #2

• ...

Onde parar? Este e o aspecto notavel do metodo, cuja demonstracao estaausente, como quase sempre: o ponto xn e a solucao exata do problema! Nadade aproximacoes ou criterios de parada, o mınimo de funcoes quadraticas eobtido de modo exato e em um numero de passos finito e igual a dimensaon do problema. Beleza!

As expressoes para βk acima independem de A e de b, ou seja, da naturezaquadratica de f , e entao e lıcito pensar em usar este metodo para uma funcaoobjetivo qualquer. Mas ha precos a pagar . . . a busca linear deve ser resolvidapor um metodo numerico qualquer, ou pela derivacao analıtica de f , e naomais pela agradavel formuleta aplicada as quadraticas. Outro incomodo ea volta da natureza iterativa do processo, com a necessidade de criterios deparada, tolerancias e todo o bataclan. No caso de aplicacao geral do metodo,a cada n iteracoes um passo especial seria inserido, onde se usaria a direcaode descida maxima pura, dada pelo gradiente.

91

Page 98: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Exemplo 4.2.1 Usar o MGC para f(x) = x21 + 3x2

2 + 2x1 − 12x2 com x0 =[4 4]T . A forma canonica para a quadratica e sempre util:

f(x) =1

2xT

[

2 00 6

]

x+ xT

[

2−12

]

Os passos sao sempre diretos:

g0 =

[

1012

]

; d0 = −g0 = −2

[

56

]

; α0 = 61/266 = 0.2293

E o resto fica para quem? E, leitores . . .

O entusiasmo com a rapida convergencia do MGC no caso das quadraticasdeve ser encarado com a cabeca fria, pois afinal estas funcoes sao muitosimples e seus mınimos, quando existem, podem ser encontrados diretamente,sem qualquer necessidade de algoritmos ou iteracoes. Para a quadraticaf(x) = (1/2)xTAx + xTb com A > 0, o ponto x∗ = −A−1b e minimizador,e a convergencia em n passos e um desperdıcio de tempo e energia, e naouma vantagem do metodo. Se para funcoes quadraticas pode-se usar umaformula, por que um algoritmo? Os meritos do MGC devem ser julgados apartir de sua aplicacao a funcoes gerais.

4.3 Metodos de Newton

Os metodos de Newton sao baseados na facilidade de se minimizar umaquadratica. Em cada passo encontra-se uma aproximacao quadratica q(x)para a funcao objetivo f(x), cujo mınimo sera o proximo passo. Assim, parao vetor xk ∈ IRn e possıvel, lembrando o teorema de Taylor, escrever

q(x) = f(xk) + (x− xk)T∇f(xk) + (1/2)(x− xk)T∇2f(xk)(x− xk)

= f(xk) + (x− xk)Tgk + (1/2)(x− xk)TGk(x− xk)

onde os sımbolos gk e Gk denotam, respectivamente, o gradiente e a Hessianade f em xk. Supondo Gk > 0, a expressao acima e uma quadratica em(x− xk), com ponto de mınimo em

x− xk = −[Gk]−1gk

A lei de iteracao e clara, chamando xk+1 = x e facil escrever

xk+1 = xk + dk onde dk = −[Gk]−1gk = −[∇2f(xk)]−1∇f(xk)

92

Page 99: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Exemplo 4.3.1 Dada f = 2x21+x2

2+2x1x2+x1−x2 e x0 = [1 5]T determinar

a direcao de descida pelo metodo de Newton.

f(x) = xT

[

2 11 1

]

x+ xT

[

1−1

]

⇒ ∇2f =

[

4 22 2

]

= G0

O gradiente e a direcao procurada sao

∇f(x) =

[

4 22 2

]

x+

[

1−1

]

donde g0 =

[

1511

]

e

d0 = −[

4 22 2

]−1 [

1511

]

= −[

23.5

]

O mınimo de f , calculado pela formula analıtica, e

x∗ = −[∇2f ]−1b = −[

4 22 2

]−1 [

1−1

]

=

[

−11.5

]

que seria atingido na primeira iteracao: x0 + d0 = x∗.

O metodo de Newton, ao contrario dos anteriores, e considerado de se-gunda ordem, porque o calculo das direcoes dk depende da Hessiana, alem dogradiente. Quando a funcao objetivo e quadratica, como no exemplo acima,Newton garante convergencia em apenas uma iteracao! Nada que merecaespanto e exclamacao, pois, na realidade, o que ha neste caso e uma formulapara obtencao direta do mınimo e nao um metodo numerico.

No caso geral, partindo de um inicializador x0 a sequencia xk+1 = xk+dk

pode levar ao mınimo procurado x∗, e por ser este um metodo de segunda or-dem, ele converge rapidamente, quando converge. Este e o gargalo, estreito,do metodo de Newton, a convergencia. E facil entender o porque dos pro-blemas, eles estao associados com a Hessiana. Em primeiro lugar, a direcaodk = −[Gk]−1gk desce ao mınimo porque se supoe que a quadratica associadatenha um mınimo, ou seja, sua matriz A > 0. E perfeitamente possıvel quea funcao f nao tenha sido informada deste fato, e assim sua Hessiana em umdado ponto pode nao ser positiva definida.

O caso escalar permite uma visualizacao clara, como sempre acontece. Nafigura 4.5, grafico da esquerda, o ponto xk esta em uma regiao de “concavi-dade para baixo” e isto corresponde a derivada segunda (Hessiana) negativa.O metodo de Newton inicializado neste ponto nao convergira.

Outro caso problematico e ilustrado no grafico da direita da mesma figura.A Hessiana de q(x) e positiva, como deveria ser, mas e constante, ao passo

93

Page 100: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

f(x)✻

✲xxk x∗

✲x

q f

x∗

xk xk+1

Figura 4.5: Casos problematicos para o metodo de Newton

que a Hessiana de f(x) e positiva tambem, mas varia, e com isto a curvaturadesta linha e muito mais acentuada. O resultado e que o proximo ponto,xk+1, se afasta do mınimo x∗. Em resumo, este metodo e muito sensıvel comrelacao ao inicializador, e a situacao de falha na convergencia e comum. Jano calculo de raızes para o caso escalar Newton apresentava estas mesmasmazelas.

Exemplo 4.3.2 Aplicar o metodo de Newton para minimizar as funcoes:

1. f(x) = x3 − 6x2 + 9x+ 1, x0 = 0

2. f(x) = 5x4 − 20x3 + 30x2 − 20x+ 5, x0 = 0

4.4 Metodos de Newton modificados

Muitas variacoes existem, apenas um possıvel caminho sera mostrado. Ameta geral e corrigir os problemas de convergencia indicados, para que sepossa preservar a grande vantagem do metodo, sua rapidez. As iteracoes saogovernadas por

xk+1 = xk + dk onde dk = −[∇2f(xk)]−1∇f(xk) = −[Gk]−1gk

Aceita-se bem, intuitivamente, o fato de que a diminuicao do avanco emuma dada direcao dk evita a divergencia. Isto pode ser conseguido por umαk nao mais unitario como acima, mas obtido por uma busca linear.

xk+1 = xk + αkdk onde αk minimiza f(α) = f(xk + α dk)

Outro perigo apontado era o sinal de Hessiana Gk = ∇2f(xk). Esta ma-triz pode ser usada no metodo apenas se for positiva definida. A correcaode sinal e conseguida por um truque matricial simples, apresentado sem de-monstracao. Sendo In a matriz identidade de ordem n, e sempre possıvelencontrar γ ∈ IR tal que

F k = Gk + γIn

94

Page 101: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

tenha seus autovalores positivos e possa, assim, ser usada para gerar umadirecao dk que seja realmente de descida:

dk = −[F k]−1gk = −[∇2f(xk) + γIn]−1∇f(xk)

Some-se a uma quantidade negativa algo suficientemente positivo e o re-sultado sera positivo; este o princıpio, elementar, desse artifıcio. Para garan-tir boas propriedades numericas os autovalores de F k nao devem estar muitoproximos de zero, e a escolha de γ deve levar isto em conta.

Algoritmo 4.4.1 (Metodo de Newton modificado)

Dados: • f : IRn → IR, uma funcao suave

• x0 ∈ IRn, ponto de partida • 0 < δ ∈ IR,tolerancia para os λi(F

k)

Objetivo: Encontrar um mınimo x∗ de f

Operacoes

1. xk = x0;

2. gk = ∇f(xk); Gk = ∇2f(xk);

3. γ ∈ IR tal que λi(Gk + γIn) > 0;

4. F k = Gk + γIn;

5. dk = −[F k]−1gk;

6. f(α) = f(xk + αdk);

7. αk = min f(α);

8. xk+1 = xk + αkdk;

9. tudo OK:−→ x∗ = xk+1 −→ FIM

10. volta para 2.

A etapa desencorajadora deste metodo e, sem duvida, o calculo da Hessi-ana Gk e de seus autovalores. Fazer isto numericamente pode ser trabalhosoe cheio de armadilhas, e assim este metodo e recomendado apenas quando aobtencao analıtica da Hessiana for possıvel e comoda.

95

Page 102: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

4.5 Metodos de quase Newton

O tema basico destes metodos e o de facilitar o calculo da Hessiana. Deseja-se chegar a ela sem derivar duas vezes a funcao objetivo f , a partir dasinformacoes contidas no gradiente. As iteracoes seriam regidas por

xk+1 = xk + αkdk = xk − αk[F

k]−1gk

onde F k contem informacoes sobre a Hessiana Gk e deve ser obtida de modosimples e comodo. O avanco αk, como sempre, vem da busca linear, pelaminimizacao de f(α). A tarefa de obter F k e substituıda pela de obter suainversa Hk = [F k]−1. Em cada passo, esta matriz deve exibir, de algummodo,caracterısticas da Hessiana, ou melhor, de sua inversa. Em seguida, umapossıvel maneira de se conseguir isso. O gradiente de f pode ser expandidocom auxılio de Taylor em torno de xk:

∇f(x) = ∇f(xk) +∇2f(xk)(x− xk) + · · ·

Retendo apenas a parte linear e usando notacao simplificada:

g(x) = gk +Gk(x− xk)

Considerando que o ponto de teste x e o proximo vetor do algoritmo, ouseja, x = xk+1, vem

Gk(xk+1 − xk) = gk+1 − gk

Nota-se que H , em cada iteracao, pode ser delimitada pela relacao

Hk+1γk = δk onde

γk = gk+1 − gk

δk = xk+1 − xk

chamada de condicao de quase-Newton. Uma possibilidade para se gerarmatrizes H satisfazendo esta restricao e a apresentada por Davidon-Fletcher-Powell (DFP)

Hk+1 = Hk + αuuT + βvvT

onde α, β ∈ IR e u, v ∈ IRn devem ser determinados de modo a satisfazer acondicao de quase-Newton:

Hkγk + αuuTγk + βvvTγk = δk

Uma possıvel solucao e dada por

u = δk v = Hkγk α = (uTγk)−1 β = −(vTγk)−1

96

Page 103: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

como os leitores diligentes, sempre eles, verificarao. Com isto a lei DFP fica

Hk+1 = H − HγγTH

γTHγ+

δδT

δTγ

onde o ındice k foi omitido do lado direito. Esta lei de formacao temcaracterısticas interessantes: se Hk e simetrica e positiva definida entaoHk+1 tambem o sera. Isto e importante porque garante que as direcoesdk = −Hkgk serao efetivamente de descida. Para assegurar esta propriedadebasta escolher [H0]T = H0 > 0, o que e normalmente feito com H0 = I.

Quando aplicada a funcoes quadraticas, a lei acima garante queHn = A−1

e isto significa convergencia exata em n passos, como no metodo do gradienteconjugado. Outra formula de recorrencia baseada na condicao de quase-Newton e a de Broyden-Fletcher-Goldfarb-Shanno (BFGS):

Hk+1 = H − δγTH +HγδT

δTγ+

(

1 +γTHγ

δTγ

)

δδT

δTγ

Algoritmo 4.5.1 (Metodo de quase Newton)

Dados: • f : IRn → IR, uma funcao suave

• x0 ∈ IRn, ponto de partida

Objetivo: Encontrar um mınimo x∗ de f

Operacoes

1. xk = x0; Hk = H0 = I

2. gk = ∇f(xk);

3. dk = −Hkgk;

4. f(α) = f(xk + αdk);

5. αk = min f(α);

6. xk+1 = xk + αkdk;

7. tudo OK:−→ x∗ = xk+1 −→ FIM

8. δk = xk+1 − xk

9. gk+1 = ∇f(xk+1); γk = gk+1 − gk;

10. Hk+1 = DFP ou BFGS

11. k = k + 1 −→ vai para 3.

97

Page 104: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

4.6 Metodo do politopo

A generalizacao dos metodos escalares de intervalo (Fibonacci, secao aurea)para o caso vetorial e problematica, pois a carga computacional cresce ex-ponencialmente com n, e a praga da dimensao. O que existe e algo apenasinspirado na ideia: procura-se regioes R0, R1, . . . , Rk, . . . do IRn que se tor-nem cada vez menores e cada vez mais proximas da solucao, mas, e aqui entraa diferenca, Rk+1 nao deve estar necessariamente contida em Rk, e o valorprocurado x∗ nao precisa estar contido em uma dada regiao da sequencia.

98

Page 105: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 5

Otimizacao Geral I

As bases daOtimizacao Livre ou Irrestrita foram apresentadas em capıtulosanteriores, para os casos escalar e vetorial. A meta agora e mais sofisticada:minimizar uma funcao real da variavel vetorial x quando esta variavel naomais percorre o IRn de maneira livre, mas esta sujeita a determinadas res-tricoes, ou seja, deve pertencer a certas regioes dele. Este problema, tambemchamado de Problema de Minimizacao Nao Linear Com Restricoesou Problema Geral de Otimizacao — PGO — ou simplesmente Pro-blema de Programacao Nao Linear pode ser formulado como

minf(x) x ∈ RV ⊂ IRn

onde RV, a chamada Regiao Viavel, engloba os pontos do IRn por ondea variavel x pode excursionar livremente. Este conjunto e normalmentedelimitado pelas restricoes. Na proxima formulacao, mais detalhada, a RVe explicitamente definida pelas restricoes.

minf(x) x ∈ IRn s.a.

{

ci(x) = 0 i = 1, 2, . . . kci(x) ≥ 0 i = k + 1, . . . m

A funcao f(x) que se deseja minimizar e a funcao objetivo, o termo s.a.deve ser lido como “sujeito a”, as k primeiras restricoes sao as restricoesde igualdade, e as outras, obviamente, sao as de desigualdade. Quandose procura um maximo de uma funcao h(x), a mesma estrutura acima vale,desde que se use como funcao objetivo f(x) = −h(x). Pontos Viaveis saoos pontos que satisfazem as restricoes. A regiao viavel RV, o conjunto destespontos, pode ser definida formalmente:

RV = {v ∈ IRn | ci(v) = 0 ∀i = 1, . . . k e cj(v) ≥ 0 ∀j = k + 1, . . . m}

Apenas na RV sao buscadas as solucoes, e obvio.

99

Page 106: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Exemplo 5.0.1 Deseja-se minimizar f(x1, x2) = x21x2 com as restricoes

{

x1 + x2 = 0x21 + x2

2 ≥ 0

Os leitores devem identificar os pontos do IR2 que formam a RV acima des-crita. O que muda na RV quando a segunda restricao e uma desigualdade dotipo “menor ou igual”?

5.1 Solucoes do PGO

Mais uma vez recorre-se ao caso escalar, pela facilidade de visualizacao; asconclusoes, entretanto, sao gerais. A otimizacao livre da funcao esbocada nafigura 5.1 leva a um unico mınimo x∗, obtido trivialmente. Se a regiao viavele dada pelos pontos a ≤ x ≤ b entao ha mais solucoes alem do minimizadorx∗: os pontos a e b, as extremidades do intervalo, sao agora maximizadores.Quando a otimizacao e restrita ao intervalo a ≤ x ≤ c, o ponto f(a) sera ummaximo e f(c) um mınimo.

✻f(x)

✲xa c x∗ b

Figura 5.1: Solucoes quando x tem variacao restrita

Os mınimos globais ou locais de f sao as solucoes procuradas quandonao ha restricoes, mas quando elas existem, estes extremos podem nao seras unicas solucoes. Nestes casos o PGO pode ainda ter solucoes em pontosonde a funcao objetivo nao apresenta extremos, como ilustrado na figuraacima. Torna-se necessario definir o que seriam as solucoes do Problema deOtimizacao em seu caso mais geral, com restricoes.

Definicao 5.1.1 O ponto x∗ ∈ IRn e uma Solucao Local Forte do PGOquando existir um real δ > 0 tal que

f(x) e definida ∀x ∈ RV tal que ‖x− x∗‖ < δ

f(x) > f(x∗) ∀x ∈ RV, x 6= x∗ tal que ‖x− x∗‖ < δ

100

Page 107: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Ainda podem existir solucoes fracas:

Definicao 5.1.2 O ponto x∗ ∈ IRn e uma Solucao Local Fraca do PGOquando existir um real δ > 0 tal que

f(x) e definida ∀x ∈ RV tal que ‖x− x∗‖ < δ

f(x) ≥ f(x∗) ∀x ∈ RV, x 6= x∗, tal que ‖x− x∗‖ < δ

x∗ nao e uma solucao local forte

Buscar solucoes do PGO com base apenas nas definicoes acima podeser impraticavel, a menos de casos muito especiais com RVs pequenas. Maisteoria se faz necessaria, e ela passa a ser apresentada agora, a partir dos casosmais simples. De um modo geral ela se aplica quando as funcoes objetivoe as restricoes sao suficientemente suaves. Entende-se que uma funcao esuficientemente suave quando for diferenciavel pelo menos duas vezes.

5.2 Otimizacao com Restricoes

Os casos iniciais mais simples, quando as restricoes de igualdade e desigual-dade nao estao presentes, ja foram mostrados anteriormente. Os resultadosanalıticos serao reapresentados suscintamente nesta secao. Para funcoes es-calares o PGO e particularizado para

minf(x) x ∈ RV = IR

ou seja, nao existem restricoes e as solucoes sao os mınimos “normais” de f .

Teorema 5.2.1 (Condicoes Necessarias de Otimalidade) Sendo f su-ficientemente suave e x∗ ∈ IR um mınimo local de f entao

f ′(x∗) = 0

e ainda a condicao de segunda ordem f′′

(x∗) ≥ 0.

Os mınimos locais de uma funcao sao pontos estacionarios, e a derivadasegunda e nao negativa neles. Ao se procurar as solucoes do PGO, esteresultado restringe o universo da busca aos pontos estacionarios com segun-das derivadas nao negativas. Para efetivamente garantir que pontos desteuniverso solucionam o PGO precisa-se de outro resultado:

101

Page 108: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Teorema 5.2.2 (Condicoes Suficientes de Otimalidade) Sendo f su-ficientemente suave, seja x∗ ∈ IR tal que

1. f ′(x∗) = 0

2. f ′′(x∗) > 0

Entao x∗ sera um mınimo local forte de f .

Usar as CNO (condicoes necessarias de otimalidade) e depois as CSO(condicoes suficientes de otimalidade) leva a uma maneira formal e corretade encontrar os mınimos de uma dada f . Sao estes os teoremas que legitimama conhecida associacao entre mınimos e “derivar e igualar a zero”. Quandof nao e suficientemente suave, a situacao e mais complicada; algumas vezeso conceito de derivadas laterais pode ajudar. A generalizacao para o casovetorial, com gradientes entrando em lugar das derivadas e simples e diretae foi analisada anteriormente, na secao 3.2.1, onde as demonstracoes dosresultados foram feitas, com o auxılio da expansao de f em serie de Taylor.

Seja novamente o Problema Geral de Otimizacao — PGO — em suaformulacao mais geral, com todas as possıveis restricoes, aqui repetida.

minf(x) x ∈ IRn s.a.

{

ci(x) = 0 i = 1, 2, . . . kci(x) ≥ 0 i = k + 1, . . . m

Os casos mais simples de analisar e resolver acontecem quando as res-tricoes ci(x) sao funcoes lineares:

ci(x) = ai1x1 + ai2x2 + · · · ainxn + βi = xTai + βi (5.1)

onde ai = [ai1 ai2 · · · ain]T ∈ IRn e βi ∈ IR. As restricoes de igualdade e asde desigualdade ficam, respectivamente

xTai + βi = 0 ⇐⇒ xTai = −βi = bi (5.2)

xTai + βi ≥ 0 ⇐⇒ xTai ≥ −βi = bi (5.3)

5.3 Restricoes Lineares de Igualdade

Quando as m restricoes sao de igualdade e lineares, o seguinte problema,abreviadamente chamado de PGORLI ou apenas ORLI ou RLI e obtido:

minf(x) x ∈ IRn s.a. xTai + βi = 0 i = 1, 2, . . . m < n

102

Page 109: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A desigualdade m < n acima se explica porque se m = n as propriasrestricoes (supostas independentes) determinam um ponto unico no IRn enao “sobra espaco” para a otimizacao. Lembrando as equacoes (5.1) e (5.2)e possıvel escrever

ci(x) = xTai + βi = aiTx+ βi = [ ai1 ai2 · · · ain ]x+ βi (5.4)

o que leva a formacao das seguintes matrizes

a11 a12 a13 · · · a1na21 a22 · · · · · · a2n...

...am1 am2 · · · · · · amn

= A

β1

β2...βm

= −b

e permite a formulacao matricial do PGORLI:

minf(x) x ∈ IRn s.a. Ax = b

onde A e uma matriz m × n cujas linhas sao as restricoes aiT e b ∈ IRm

tem como elementos os bi = −βi. A hipotese, muito natural, de restricoeslinearmente independentes leva a ρ(A) = m ou seja, o posto da matriz A em, o seu numero de linhas.

Exemplo 5.3.1 Minimizar f(x1, x2) = x21+2x2

2−2x1−2x2 com a restricaoc(x1, x2) = x1 + x2 − 1 = 0. O uso de notacao matricial para a quadratica epara a restricao leva a

minf(x) = xT

[

1 00 2

]

x− 2xT

[

11

]

x ∈ IRn s.a. [ 1 1 ]x = 1

A quadratica tem mınimo em [2 1] e suas curvas de nıvel sao elipsescom eixos dados pelos autovetores da Hessiana A. A restricao e uma reta.A figura 5.2 mostra a restricao e algumas elipses. O valor da funcao objetivoem cada ponto da restricao pode ser obtido pela curva de nıvel que passa poresse ponto. Percebe-se facilmente que o mınimo procurado acontece no pontode tangencia entre a reta da restricao e uma das curvas de nıvel.

Essa visao geometrica da solucao como uma tangencia entre restricaoe curva de nıvel e muito importante e estara presente em varias outrassituacoes. Para complementa-la e preciso calcular de maneira analıtica eprecisa o exato ponto de tangencia. Uma maneira de conseguir isto serialembrando que a restricao, no caso deste exemplo, pode ser escrita comox2 = 1− x1; entrando com esta expressao na funcao objetivo traz

f(x1, x2) = x21 + 2(1− x1)

2 − 2x1 − 2(1− x1)

= 3x21 − 4x1 − 4 = h(x1)

103

Page 110: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Figura 5.2: Quadratica com uma restricao linear de igualdade

A minimizacao livre desta funcao escalar fornece o ponto de tangencia,ou seja, a solucao do problema vetorial com restricao.

h′(x1) = 6x1 − 4 = 0 ⇐⇒ x1 = 2/3 e x2 = 1/3

Este caminho envolve uma reducao de ordem e permite trabalhar emuma funcao objetivo mais simples que a original. Alem desta simplicidade,o novo problema e livre, sem restricoes. Todos os aspectos camaradas eintuitivos deste procedimento autorizariam a ideia de que esta reducao deordem e a base de qualquer metodo de solucao do PGORLI no caso geral.Nao e bem assim, ha um outro caminho possıvel. Sendo λ ∈ IR uma novavariavel, pode-se definir uma funcao expandida L(x, λ) = f(x)+ λc(x) ondef e a funcao objetivo e c e a restricao:

L(x, λ) = L(x1, x2, λ) = x21 + 2x2

2 − 2x1 − 2x2 + λ(x1 + x2 − 1)

L(x1, x2, λ) = x21 + 2x2

2 + (λ− 2)x1 + (λ− 2)x2 − λ

Esta e uma funcao real de uma variavel vetorial do IR3. Para calcularseus pontos estacionarios, deve-se obter o gradiente e iguala-lo a zero.

L′x1

= 2x1 + λ− 2 = 0

L′x2

= 4x2 + λ− 2 = 0

L′λ = x1 + x2 − 1 = 0

A solucao, unica, deste sistema linear leva ao ponto estacionario dafuncao expandida L(x1, x2, λ) : PE = [2/3 1/2 2/3]T . O calculo da Hes-siana ∇2L revelaria que este e um ponto de sela para L, mas e interessantenotar que suas duas primeiras componentes formam a solucao desejada parao PGORLI. Assim, pelo menos para este exemplo, o estudo dos pontos esta-cionarios livres, sem restricoes, de uma funcao em um espaco de dimensaoaumentada auxilia na busca de solucoes de um problema restrito.

104

Page 111: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

No exemplo acima tres aspectos foram enfocados:

1. a geometria da solucao

2. a sua obtencao por reducao de ordem

3. a sua obtencao por aumento de ordem

Estes aspectos aparecem neste particular exemplo ou sao algo geral, queocorre sempre? Ja foi mencionado que a imagem de curvas de nıvel tangen-ciando restricoes desempenha um papel importante no tratamento analıticoe rigoroso dos problemas gerais de otimizacao, e isto em breve se confirmara.E facil e intuitivo aceitar que a reducao de ordem funciona. A restricao linearAx = b amarra m das n variaveis e f pode ser encarada como uma aplicacaonao mais do IRn, mas do IRn−m em IR. Para os detalhes, seja xr ∈ IRm ovetor composto pelas m primeiras componentes de x, e xl ∈ IRn−m o vetorcomposto pelas suas n−m ultimas componentes.

xr =

x1

x2...xm

xl =

xm+1

xm+2...xn

Seja Ar a matriz formada pelas m primeiras colunas de A. Esta matrize quadrada e tambem inversıvel (se nao o for, e possıvel trocar a ordem dasvariaveis xi em x para que isto aconteca, pois o posto de A em por hipotese).Seja Al a matriz formada pelas n−m ultimas colunas de A. A equacao basicadas restricoes lineares de igualdade pode ser reescrita como

Ax = Arxr + Alxl = b =⇒ xr = A−1r b−A−1

r Alxl

ou seja, as variaveis xr sao restritas, fixas, amarradas, e apenas podem variarlivremente as m − n variaveis de xl. O procedimento acima mostra como esimples reduzir a ordem de um problema de otimizacao com restricoes linearesde igualdade. Se as restricoes de igualdade forem nao lineares a intuicao dizque a reducao de ordem ainda e possıvel, mas o problema de se encontrar asvariaveis livres pode ser formidavel . . .

Hora de analisar os metodos de aumento de ordem, de ver com maisdetalhes, mas ainda sem muito rigor, o que ha por tras deles. Sendo a funcaoobjetivo f : IRn → IR e c(x) = 0 uma unica restricao, nao necessariamentelinear, define-se a funcao L : IRn+1 → IR por meio da expressao

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

105

Page 112: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

onde λ e uma variavel real. As derivadas parciais de L com relacao a seusargumentos sao

∂L

∂x= L′

x

∂L

∂λ= L′

λ = c(x)

donde se conclui que os pontos estacionarios de L, aqueles onde ∇L se anula,satisfazem a restricao. Em outras palavras, se (xe, λe) e estacionario, entao∇L(xe, λe) = 0 e c(xe) = 0. Seja (x∗, λ∗) um mınimo livre, irrestrito de L.E facil perceber que

L(x∗, λ∗) ≤ L(x, λ) ∀x ∀λ =⇒ f(x∗) + λ∗c(x∗) ≤ f(x) + λc(x) ∀x ∀λ

Mas c(x∗) = 0, pois qualquer mınimo e estacionario, logo

f(x∗) ≤ f(x) + λc(x) ∀x ∈ IRn ∀λ ∈ IR

Esta expressao, para λ = 0, leva a f(x∗) ≤ f(x) ∀x ∈ IRn o que, comox∗ satisfaz a restricao, indica que ele soluciona o PGORLI. Este raciocınio,particular, pois considera apenas uma restricao, e apenas uma explicacaointuitiva dos mecanismos que atuam no aumento de ordem. Mais rigor viraem breve. A primeira posicao com relacao a estes metodos e de duvida ou atede desagrado, afinal por que trabalhar em espacos com dimensoes maiores se epossıvel faze-lo em dimensoes menores? Por menos natural que pareca, estesmetodos sao utilizados, mais mesmo que os de reducao de ordem, apesar deserem mais trabalhosos. A pedra de toque, o condao decisivo destes metodose que a generalizacao de seu uso para casos de restricoes nao lineares deigualdade ou de desigualdade e feita de maneira razoavelmente suave.

E interessante notar que, como se vera a frente, mesmo que estas funcoesde espacos com dimensoes aumentadas nao possuam mınimos ou maximos,seus pontos estacionarios podem auxiliar na busca de solucoes para problemascom restricoes.

5.3.1 Condicoes Analıticas para o PGORLI

Conforme visto anteriormente, o PGORLI consiste em minimizar f(x) quandox ∈ IRn e tambem esta sujeito as restricoes Ax = b. Pela conceituacao for-mal, sabe-se que x∗ e uma solucao quando

1. x∗ e viavel, ou seja, Ax∗ = b, e

2. f(x∗) ≤ f(x) para qualquer vizinho viavel x de x∗

106

Page 113: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Um bom inıcio inclui um estudo detalhado dos pontos viaveis, onde asrestricoes sao validas. O conjunto de todos eles e a regiao viavel RV, carac-terizada por

RV = {v ∈ IRn | Av = b}Dado um ponto viavel v ∈ RV, considere o problema de encontrar uma

direcao ou vetor p tal que v+p ∈ RV. Em outras palavras, deseja-se condicoespara, partindo da RV, nela permanecer. E facil deduzir que

v + p ∈ RV ⇐⇒ Ap = 0

Direcoes p tais que Ap = 0 sao chamadas de viaveis e sao as direcoes quepermitem que um movimento permaneca em RV.

Exemplo 5.3.2 Seja um problema de minimizacao no IR2 com uma unicarestricao de igualdade c1(x1, x2) = x1 + x2 = 1. A RV, como pode ser vistona figura 5.3, e a reta do IR2 cujos pontos sao [α 1 − α]T . Uma vez sobreesta reta, as direcoes viaveis sao dadas por x2 = −x1. As direcoes viaveispodem ser aplicadas a pontos dentro ou fora da RV.

Figura 5.3: Direcoes viaveis podem ser aplicadas a pontos fora da RV

O conjunto de todas as direcoes viaveis e dado pelo espaco nulo ou nucleo,ou kernel de A:

Z = kerA = {p ∈ IRn | Ap = 0}Este conjunto e um subespaco vetorial do IRn, ao passo que a RV pode

nao ter uma estrutura de subespaco. Supondo, como anteriormente, que asm restricoes sao linearmente independentes a matriz A tera posto completo,e a dimensao de Z estara determinada:

ρ(A) = m =⇒ dimZ = n−m = t

107

Page 114: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Seja Z uma matriz n × t cujas colunas formam uma base para Z. Apartir deste ponto e possıvel exprimir uma direcao viavel p qualquer comouma combinacao linear das colunas de Z.

Z = [ z1 z2 · · · zt ] p = Zpz, onde pz ∈ IRt

A recıproca e verdadeira, se uma direcao p satisfaz a condicao acima elasera viavel. Se x∗ e solucao do PGORLI, o valor da funcao objetivo em umvizinho viavel x∗ + εp, por meio da serie de Taylor, e

f(x∗ + εp) = f(x∗) + εpTg(x∗) +1

2ε2pTG(x∗)p+ · · ·

onde g e G denotam, como sempre, gradiente e Hessiana de f . Usando acaracterizacao das direcoes viaveis,

f(x∗ + εp)− f(x∗) = εpTz Z

Tg(x∗) +1

2ε2pT

z ZTG(x∗)Zpz + · · ·

Considerando valores pequenos de ε e seguindo um raciocınio analogo aoapresentado na secao 3.2.1 pode-se estabelecer o

Teorema 5.3.1 Condicoes Necessarias de Otimalidade. Sendo f sufi-cientemente suave e x∗ ∈ IRn uma solucao local do PGORLI, entao

1. Ax∗ = b

2. ZTg(x∗) = 0

e ainda ZTG(x∗)Z ≥ 0, uma condicao de segunda ordem.

A primeira condicao, bastante obvia, diz que as solucoes devem ser viaveis.A condicao seguinte e a do gradiente, ou de primeira ordem. A grandezaZTg(x) ∈ IRt e o gradiente projetado de f . Pontos nos quais o gradienteprojetado se anula sao pontos estacionarios com restricoes. Tambemneste caso ha um gradiente que deve se anular . . . A figura 5.4 permitevisualizar o gradiente projetado no IR2. Por um ponto x qualquer traca-se aparalela a restricao c(x) = 0 e nela se projeta, geometricamente, o gradienteda funcao objetivo. Esta paralela a restricao e caracterizada analiticamentepelo conjunto de pontos x+ p, onde p e uma direcao viavel.

O teorema 5.3.1 mostra, de maneira clara, a reducao de ordem funcio-nando, pois deve-se anular o gradiente projetado e este e um vetor em umespaco de dimensao t = n − m. Mas dentro deste mesmo teorema, codi-ficadas de maneira menos clara, ha ainda outras possibilidades. A matriz

108

Page 115: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x

g

ZTg

Figura 5.4: Visualizacao do gradiente projetado no IR2

Z, por definicao, e tal que AZ = 0 ou, equivalentemente, ZTAT = 0. Istosignifica que as colunas de AT varrem o espaco nulo da matriz ZT . Mas ogradiente projetado se anula na solucao, logo ZTg(x∗) = 0 o que garante queo gradiente “simples” g(x∗) e uma combinacao linear das colunas de AT :

ZTg(x∗) = 0 =⇒ g(x∗) = AT

λ∗1

λ∗2...λ∗m

= ATλ∗ onde λ∗ ∈ IRm

Os coeficientes λ∗i , componentes do vetor λ∗ ∈ IRm, sao os famosos mul-

tiplicadores de Lagrange. Estes multiplicadores permitem a formulacaodo resultado acima de maneira diferente.

Teorema 5.3.2 Condicoes Necessarias de Otimalidade. Sendo f sufi-cientemente suave e x∗ ∈ IRn uma solucao local do PGORLI, entao

1. Ax∗ = b

2. ∃λ∗ ∈ IRm | g(x∗) = ATλ∗

e ainda ZTG(x∗)Z ≥ 0, uma condicao de segunda ordem.

Apenas a segunda condicao mudou, garantindo a ausencia do tal gradienteprojetado, a situacao em que ele aparecia e agora expressa em termos dogradiente simples e dos multiplicadores de Lagrange. Mas ha mais a senotar. O leitor e convidado a deduzir que as duas primeiras condicoes acimaimplicam dizer que (x∗, λ∗) e um ponto estacionario da funcao L : IRn+m →IR dada por L(x, λ) = f(x) + λT (Ax + b) e chamada de Lagrangeana.Com o seu uso, as restricoes desaparecem, o trabalho passa a ser feito em umespaco com dimensao ampliada . . . eis o mecanismo de aumento de ordemse apresentando.

109

Page 116: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A terceira condicao dos teoremas acima e a condicao de segunda ordem,ou da Hessiana. A matriz ZTG(x∗)Z com dimensoes t × t e a HessianaProjetada, e deve ser positiva semidefinida. Assim como antes, as condicoesnecessarias permitem delimitar a busca de solucoes aos pontos que as satis-fazem. Para garantir que um destes pontos seja mesmo solucao do PGORLI,entra em cena o

Teorema 5.3.3 Condicoes Suficientes de Otimalidade. Sendo f sufi-cientemente suave, e x∗ ∈ IRn tal que

1. Ax∗ = b

2. ZTg(x∗) = 0 ou, equivalentemente, ∃λ∗ ∈ IRm | g(x∗) = ATλ∗

3. ZTG(x∗)Z > 0

Entao x∗ sera uma solucao local do PGORLI.

Exemplo 5.3.3 Considere novamente o exemplo 5.3.1, analisado anterior-mente de modo pouco rigoroso.

minf(x) = xT

[

1 00 2

]

x− 2xT

[

11

]

x ∈ IRn s.a. [1 1]x = 1

Algumas curvas de nıvel, assim como a restricao, aparecem na figura 5.2.A funcao objetivo f tem um mınimo global em x∗ = [2 1]T ; esta solucao teriaalgo a ver com a solucao que sera calculada agora de modo rigoroso e queleva em conta as restricoes? Dada a matriz das restricoes a e sua transpostaaT , e facil encontrar a matriz (coluna, no caso) Z tal que aTZ = ZTa = 0:o resultado e ZT = [ 1 − 1 ], donde os gradientes normal e projetado sao

g(x) =

[

2 00 4

]

x+

[

−2−2

]

e ZTg(x) = [ 2 − 4 ]x

Lembrando que a restricao deve ser satisfeita, e o gradiente projetadodeve se anular no ponto estacionario chega-se a

{

[ 1 1 ]x = 1[ 2 − 4 ]x = 0

ou

[

1 12 −4

]

x =

[

10

]

cuja unica solucao leva a [ 2/3 1/3 ]T , como antes. A aplicacao das condicoessuficientes de otimalidade — CSO — neste candidato (basta aplicar a terceiradelas, porque as outras automaticamente se verificam) leva a

ZTG(x∗)Z = [1 − 1]

[

2 00 4

] [

1−1

]

= 6 > 0

110

Page 117: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

donde se conclui que o ponto estacionario encontrado e uma solucao local,um mınimo.

Exemplo 5.3.4 Considere o PGORLI com restricoes lineares de igualdadedado por

min f(x) =1

2xT

[

5 33 2

]

x+1

2xT

[

117

]

s.a. aTx = [1 1]x = 1

Conforme visto anteriormente, a funcao objetivo f tem um mınimo globalem x∗ = [ 0.5 1.0 ]T e suas curvas de nıvel sao elipses cujos eixos principaissao os autovetores da Hessiana. A matriz Z tal que aTZ = ZTa = 0 e dadapor ZT = [ 1 − 1 ], donde os gradientes normal e projetado sao

g(x) =

[

5 33 2

]

x+1

2

[

117

]

e ZTg(x) = [ 2 1 ]x+ 2

Lembrando que a restricao deve ser satisfeita, e o gradiente projetadodeve se anular no ponto estacionario, e facil ver que

{

[ 1 1 ]x = 1[ 2 1 ]x = −2

ou

[

1 12 1

]

x =

[

1−2

]

cuja unica solucao e [−3 4 ]T . Aplicando as CSO neste candidato (basta aterceira delas):

ZTG(x∗)Z = [1 − 1]

[

5 33 2

] [

1−1

]

= 1 > 0

donde se conclui que o ponto estacionario encontrado e uma solucao local,um mınimo. Neste caso a visualizacao e possıvel, pois as curvas de nıvel eas restricoes sao linhas no IR2.

Exemplo 5.3.5 Seja agora o PGORLI com

min f(x) =1

2xT

[

4 22 1

]

x− xT

[

42

]

s.a. aTx = [1 − 1]x = 0

A funcao objetivo f e representada por uma superfıcie tipo calha e temseus mınimos locais na reta dada por

x∗ =

[

02

]

+ α

[

1−2

]

111

Page 118: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A matriz Z e os gradientes normal e projetado sao

Z =

[

11

]

; g(x) =

[

4 22 1

]

x−[

42

]

e ZTg(x) = [ 6 3]x− 6

Como a restricao e o gradiente projetado devem se anular no ponto esta-cionario,

{

[ 1 − 1 ]x = 0[ 6 3 ]x = 6

ou

[

1 −16 3

]

x =

[

06

]

cuja unica solucao e [ 2/3 2/3 ]T . Aplicando as CSO neste candidato (bastaaplicar a terceira delas, porque as outras automaticamente se verificam) vem

ZTG(x∗)Z = [1 1]

[

4 22 1

] [

11

]

= 9 > 0

donde se conclui que o ponto estacionario encontrado e uma solucao local,um mınimo. No caso sem restricoes havia toda uma reta de solucoes, aquiela e unica. Neste caso as curvas de nıvel sao retas paralelas e a “tangencia”entre elas e a restricao e na realidade uma intersecao.

Exemplo 5.3.6 Seja agora o PGORLI com

min f(x) =1

2xT

[

3 −1−1 −8

]

x+1

2xT

[

−117

]

s.a. aTx = [1 −1]x = −1/2

A funcao objetivo para este caso, situacao ja vista, e caracterizada por umponto de sela e nao admite mınimos ou maximos. A matriz Z e os gradientesnormal e projetado sao

Z =

[

11

]

; g(x) =

[

3 −1−1 −8

]

x+1

2

[

−117

]

e ZTg(x) = [ 2 −9 ]x+8

Lembrando que a restricao e o gradiente projetado devem se anular noponto estacionario chega-se a

{

[ 1 − 1 ]x = −1/2[ 2 − 9 ]x = −8

ou

[

1 −12 −9

]

x =

[

−1/2−8

]

cuja unica solucao e [ 1/2 1 ]T , exatamente o ponto de sela anterior. Aapliccao das CSO a este candidato (basta a terceira) leva a

ZTG(x∗)Z = [ 1 1 ]

[

3 −1−1 −8

] [

11

]

= −7 < 0

112

Page 119: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Nao se pode concluir que este ponto seja uma solucao do problema. Narealidade ele soluciona o problema de se encontrar o maximo de f com asrestricoes dadas. Os leitores sao convidados a repetir estes calculos (destaultima f) para as seguintes restricoes:

1. [1 2]x = 3/2

2. [1 − 2]x = −3/2

3. [1 2]x = 0

5.3.2 Problema da Projecao Ortogonal

Esta e uma construcao classica da geometria Euclidiana espacial: a partir deum ponto externo, lancar uma reta perpendicular a um plano determinandoassim a projecao ortogonal do ponto no plano. A figura 5.5 ilustra a situacaocom o uso de vetores; de um ponto xk no plano “sai” um vetor dm cujaprojecao ortogonal e d. Projecoes tambem podem ser feitas em retas do IR3.A distancia entre a “extremidade” P do vetor dm e um ponto qualquer doplano e mınima quando este ponto e a “extremidade” do vetor d, sendo estauma caracterıstica basica da projecao ortogonal.

xk

dm

d✲

Figura 5.5: Projecao Ortogonal no IR3

Seja agora o IRn, e uma matriz A (t×n) com t < n. O conjunto de vetoresd ∈ IRn tais que Ad = 0 (o espaco nulo de A) representa, dependendo det, “retas” ou “planos” ou “superfıcies lineares”; com um pouco de abusode nomenclatura, esses pontos serao chamados de hiperplanos. A distanciaentre as “extremidades” de dois vetores pode ser associada a norma euclidianade sua diferenca, ||dm − d||; na realidade, a distancia e a raiz quadradadesta norma. Com isto torna-se possıvel associar a projecao ortogonal a umproblema de otimizacao: dados dm ∈ IRn e um hiperplano nesse espaco,encontrar d ∈ IRn tal que d pertence ao hiperplano e ||dm − d|| e mınima.Em termos mais precisos, sendo dados dm ∈ IRn e A (t× n) com t < n,

min f(d) = ||dm − d|| = (dm − d)T (dm − d)

113

Page 120: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

d ∈ IRn s.a. Ad = 0

Este e um PGORLI; para soluciona-lo uma nova variavel β ∈ IRt e cri-ada, e se monta a Lagrangeana L(d, β) = f(d)− βT Ad (o sinal poderia serpositivo) que sera minimizada sem restricoes. Desenvolvendo vem

L(d, β) = (dm − d)T (dm − d)− βT Ad

= dTmdm − dT

md− dTdm + dTd− βT Ad

= ||dm|| − 2dTmd+ dTd− βT Ad

Para satisfazer as condicoes necessarias deve-se procurar os pontos esta-cionarios da Lagrangeana. Para anular as derivadas parciais e preciso que∂L/∂β = 0, que leva a Ad = 0, e ∂L/∂d = −2dm+2d− ATβ = 0 que leva a

d = ATγ + dm onde γ =1

2β ∈ IRt (5.5)

As condicoes suficientes garantem que este ponto estacionario e realmenteum mınimo e assim se resolve analiticamente o problema da projecao orto-gonal. A expressao para o vetor projetado d em (5.5) envolve um vetor doIRt e isto pode ser evitado. Multiplicando a equacao, pela esquerda, por A:

Ad = AATγ + Adm =⇒ γ = −(

AAT)−1

Adm

pois Ad = 0 (d e viavel) e a matriz AAT e inversıvel (supoe-se que as linhasde A sejam linearmente independentes). Agora e facil desenvolver:

d = −AT(

AAT)−1

Adm + dm

=[

In − AT(

AAT)−1

A]

dm

donde, finalmente,

d = Pdm onde P = In − AT(

AAT)−1

A (5.6)

Assim, por meio de (5.6), se consegue traduzir a operacao por meio deuma matriz projetiva P (n × n), o que e muito comodo nas aplicacoes.O problema da projecao ortogonal sera usado brevemente em um metodonumerico, onde se entendera o porque das notacoes A,dm,x

k etc.

114

Page 121: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

5.4 Restricoes Lineares de Desigualdade

Quando asm restricoes lineares sao de desigualdade, entra em cena o seguinteproblema, abreviadamente chamado de PGORLD ou apenas ORLD ou RLD:

minf(x) x ∈ IRn s.a. Ax ≥ b

onde A e uma matriz m × n cujas linhas sao as restricoes aiT para i =

1, 2, . . . m e b ∈ IRm tem como elementos os bi. A i-esima restricao e dadapor aT

i x = xTai ≥ bi.

A =

a11 a12 a13 · · · a1na21 a22 · · · · · · a2n...

...am1 am2 · · · · · · amn

=

a1T

a2T

...am

T

; ai ∈ IRn b =

b1b2...bm

Na modelagem de alguns problemas certas grandezas devem ser menoresou iguais determinados limites. No caso linear isto se traduziria por

αi1x1 + αi2x2 + · · · + αinxn ≤ βi

Uma restricao deste tipo deve se adequar ao modelo acima, o que se fazde modo trivial. Sendo aT

i = −[αi1x1 αi2x2 · · · αinxn ] e bi = −βi obtem-sea restricao “canonica” aT

i x ≥ bi do tipo das anteriores.

5.4.1 Geometria da Regiao Viavel

Uma unica restricao: aTx ≥ b. No IR2 a regiao viavel sera um semiplanodelimitado pela reta aTx−b = 0, como se ve na figura 5.6. Pode-se dizer quea RV possui uma fronteira, dada pela reta acima, e um “miolo” caracterizadopelos pontos x tais que aTx− b > 0. Em cada ponto da fronteira existe umadirecao perpendicular a esta fronteira e que aponta para dentro, para o miolo,chamada de normal de entrada na RV. E sempre util, nos esbocos, tracarpelo menos uma normal de entrada para cada fronteira, pois isso facilita apercepcao de qual lado da fronteira e viavel.

Para o caso de uma unica restricao linear no IR2 e facil ver que a normalde entrada em qualquer ponto e dada por a = ∇(aTx − b) ∈ IR2. No casogeral de varias restricoes, lineares ou nao, no IRn, esta ideia de associar anormal de entrada a um gradiente permanecera valida. No IR3, uma unicarestricao linear gera uma fronteira composta pelo plano aTx− b = 0; um dossemiespacos determinados por este plano sera o miolo. A normal de entradae a mesma em qualquer ponto, dada pelo gradiente da restricao: a. No IRn

115

Page 122: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Regiao proibida

a

Regiao viavel✠

Figura 5.6: Regiao viavel para uma restricao linear de desigualdade

para n > 3 usa-se o termo hiperplano para designar a fronteira de uma RVassociada a uma unica restricao linear.

Duas restricoes: aT1 x ≥ b1 e aT

2 x ≥ b2. No caso de as fronteirasse interceptarem as RVs serao setores, exemplos dos quais se pode ver nafigura 5.7. Os leitores sao convidados a estudar o caso de as fronteiras seremparalelas.

☛RV ✻

✣RV

Figura 5.7: Regiao viavel para duas restricoes lineares de desigualdade

Tres ou mais restricoes. E preciso supor que as m (m ≥ 3) restricoessejam compatıveis, ou seja, determinem uma RV nao vazia. Para m = 3 afigura 5.8 mostra algumas possibilidades.

Seria facil generalizar, no IR2, para m > 3: as fronteiras sao linhas poligo-nais abertas ou fechadas que dao origem a regioes viaveis finitas ou limitadase infinitas ou ilimitadas. Assim, no IR2, as RVs sao polıgonos; no IR3 saopoliedros e em espacos de dimensoes maiores serao politopos.

Seja qual for a dimensao n ou o numero de restricoes, um fato muito im-portante pode ser estabelecido para a regiao viavel delimitada por restricoesdo tipo Ax ≥ b:

Propriedade 5.4.1 A regiao viavel delimitada no IRn pelas restricoes line-ares de desigualdade do tipo Ax ≥ b e convexa.

116

Page 123: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

☛RV✻

RV

Figura 5.8: Regiao viavel para tres restricoes compatıveis no IR2

A demonstracao, simples, e deixada para os leitores. Antes de prosseguir,uma definicao que sera util mais tarde.

Definicao 5.4.1 O cone dos (ou gerado pelos) vetores v1, v2 · · · vk ∈ IRn

e o conjunto

Cv1,v2··· v

k = {x ∈ IRn | x =k∑

i=1

αivi quando αi ≥ 0 ∀i = 1, 2, . . . k}

Esse cone e formado pelas combinacoes lineares com coeficientes nao nega-tivos dos vetores. No plano, para dois vetores, a figura 5.9 ilustra o conceito.

v1

v2

x = α1v1 + α2v

2

onde α1 > 0 e α2 > 0

Figura 5.9: Cone gerado por dois vetores no IR2

Percebe-se que o cone e o setor angular compreendido entre os dois ve-tores. Ainda no IR2, os leitores sao convidados a analisar os seguintes casos:a.) angulo entre os dois vetores e π, b.) ha mais de dois vetores. Como ficamos cones no IR3, para dois ou mais vetores? Pede-se tambem que os leitoresdemonstrem a seguinte

Propriedade 5.4.2 Os cones gerados por vetores sao regioes convexas.

E facil ver que no IR2 a regiao viavel delimitada por Ax ≥ b e a intersecaode varios cones.

117

Page 124: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Atividade de pontos viaveis

No caso geral, a RV e o conjunto dos pontos que satisfazem as restricoes, oupontos viaveis, e e dada por

RV = {v ∈ IRn | Av ≥ b}

A visualizacao no IR2 fica mais facil, como sempre, e varios aspectos delaforam apresentados nas secoes anteriores. E necessario frizar novamente quepode ser impossıvel satisfazer certos conjuntos de restricoes ou, em outraspalavras, a regiao viavel RV pode ser vazia. Dado um ponto de teste x0 ∈ IRn,as opcoes sao: ou x0 e inviavel, ou e interno ou esta na fronteira. Para decidir,e preciso usar as restricoes.

aiTx0 = bi → restricao i e ativa em x0: x0 ∈ fronteira

aiTx0 > bi → restricao i e inativa em x0: x0 ∈ miolo∗

aiTx0 < bi → restricao i e violada em x0: x0 6∈ RV

Na segunda linha desta tabela o ponto x0 estara no miolo se a condicaoai

Tx0 > bi for valida ∀i = 1, 2, . . . m. Quando uma unica restricao estaativa em x0 ∈ IR2 este ponto pertence a uma aresta do polıgono (ou linhapoligonal) que e a fronteira da RV. Quando uma unica restricao esta ativaem x0 ∈ IR3 este ponto pertence a uma face do poliedro que e a fronteira daRV. Quando uma unica restricao esta ativa em x0 ∈ IRn, n > 3 este pontopertence a um hiperplano, que e uma “face” do politopo.

Quando duas restricoes estao ativas em x0 ∈ IR2 este ponto e um verticedo polıgono (ou linha poligonal) que e a fronteira da RV. Quando duas res-tricoes estao ativas em x0 ∈ IR3 este ponto pertence a uma aresta do poliedroque e a fronteira da RV. Quando tres restricoes estao ativas em x0 ∈ IR2 . . .ou uma delas e superflua ou nao existe RV. Quando tres restricoes estaoativas em x0 ∈ IR3 este ponto e um vertice do poliedro-fronteira da RV.

Cone Viavel de um ponto x0 ∈ RV

Quando todas as restricoes estao inativas em x0, pode-se partir de x0 ecaminhar em qualquer direcao, possivelmente pouco, sem violar qualquerrestricao: ∃α ∈ IR | x0+αp ∈ RV ∀p ∈ IRn. Quando a i-esima restricao estaativa em x0, os avancos que deixam este ponto devem ser bem escolhidospara que levem a pontos ainda na regiao viavel: ∃α ∈ IR | x0 + αp ∈RV para algumas direcoes p ∈ IRn. E possıvel caracterizar estes avancosbem comportados em linguagem matematica precisa, o que se fara no devidotempo. O proximo conceito legitima estas ideias.

118

Page 125: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definicao 5.4.2 O cone viavel de um ponto x0 ∈ RV e

CVx0 =

{

p ∈ IRn | x0 + αp ∈ RV para α adequado}

Na ilustracao da esquerda da figura 5.10 o ponto x0 esta no miolo da RVe seu CV e todo o IRn, no caso o IR2. Na ilustracao do meio o ponto x0 estana fronteira, em uma aresta, e seu CV e um semi-espaco. Na direita o pontox0 ocupa um vertice e seu CV e o setor angular mostrado, o cone gerado porvetores que estao nas arestas.

☛✲✛✻❄✒❘

■✠

✲✒✻■✛

✛❨

Figura 5.10: Cones viaveis no IR2

5.4.2 Geometria da funcao objetivo e do PGORLD

E bem sabido que o gradiente de uma funcao f em um dado ponto x indicaa direcao de maior subida ou acrescimo. E que a direcao de descida maxima,a ddm, e dada por −g(x). E tambem que uma direcao d ∈ IRn e de descidaquando dTg(x) < 0. O cone de descida de um ponto qualquer e o conjuntode suas direcoes de descida. Em linguagem formal:

Definicao 5.4.3 O cone de descida de um ponto x0 ∈ IRn e

CDx0 =

{

p ∈ IRn | pTg(x0) < 0}

E claro que para uma direcao p ∈ CD ha uma descida da funcao f :f(x0 + αp) < f(x0) para um α adequado. A visualizacao permitida pelafigura 5.11 ilustra que o cone de descida e o semi-espaco delimitado pelatangente a curva de nıvel e “oposto” ao gradiente.

Dado um ponto x0 ∈ IRn as direcoes simultaneamente viaveis e de descidasao muito importantes. O conjunto de todas estas direcoes e o

Definicao 5.4.4 O cone de descida viavel de um ponto x0 ∈ IRn e

CDVx0 = CD

x0 ∩ CV

x0

119

Page 126: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

■g(x0) tangente

✠❄❘✲✒

CD

Figura 5.11: Cone de descida no IR2

Reconhecendo as solucoes do PGORLD

Como saber se um dado ponto de teste x0 ∈ IRn e uma solucao do PGORLD?A resposta e clara: nao deve haver direcoes viaveis que sejam tambem dedescida. Os conceitos geometricos recem expostos tratam exatamente disto,e o fazem de um modo claro, intuitivo, suscinto e elegante. O cone de descidaviavel, CDV, nao deve existir! Neste ponto a tentacao e grande para exprimiresta condicao dizendo que CDV = φ ou seja, vazio, mas isto nao e verdade,pois o vetor nulo pertence a qualquer cone e assim a formulacao correta e

x0 ∈ IRn e solucao do PGORLD ⇐⇒ CDVx0 = {0}

O teste de pontos x0 na fronteira e muito elucidativo e conduz a conclusoesimportantes; na figura 5.12 os CDVs sao mostrados para algumas situacoesbasicas para pontos em uma aresta.

■g(x0)

③✠CDV

✠g(x0)

③❘

CDV

Figura 5.12: Cones de descida viavel para pontos em aresta

E facil perceber as condicoes para que um ponto de teste seja solucao doPGORLD: o gradiente g(x0) deve ser paralelo a normal de entradana RV. Ou, em outros termos, deve haver tangencia entre as curvas de nıvelda funcao objetivo e a aresta em consideracao. Em linguagem mais tecnic,∃λ∗ > 0 tal que g(x0) = λ∗n onde n e a normal de entrada da aresta. Afigura 5.13 mostra a situacao de pontos de teste ainda na fronteira, mas naomais em uma aresta e sim em um vertice.

O leitor deve se convencer de que, nestas condicoes, um ponto de teste esolucao do PGORLD quando o gradiente g(x0) pertence ao cone gerado

120

Page 127: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✎❖

❖ ✒

g(x0)

②✾CDV

Figura 5.13: Ponto de teste em um vertice

pelas normais de entrada no vertice. Esta condicao pode ser expressaem linguagem mais tecnica: ∃λ∗

1 > 0 e ∃λ∗2 > 0 tais que g(x0) = λ∗

1n1 +λ∗2n2 onde n1 e n2 sao as normais de entrada das arestas que formam o

vertice. O teste de pontos x0 no miolo da RV e muito simples e nem merecefigura, o reconhecimento de solucoes do PGORLD e feito pela condicao deestacionariedade velha de guerra: g(x0) = 0.

Estes ultimos paragrafos apresentaram conceitos teoricos cuja visualizacaogeometrica e simples, pelo menos no IR2. A grande utilidade destas ferram-netas e fazer com que os leitores aceitem de modo natural e intuitivo, e sem anecessidade de demonstracoes intrincadas e abstratas, as condicoes rigorosasdos proximos teoremas.

5.4.3 Algebra do PGORLD

Um ponto de teste x0, como ja visto, pertence a RV quando Ax0 ≥ b, ondeA e uma matriz m× n. Designando a i-esima linha de A por aT

i :

Ax0 ≥ b; A =

aT1

aT2...

aTm

onde a1,a2, · · · am ∈ IRn b ∈ IRm

Supondo t restricoes ativas em x0, retira-se das matrizes A e b as t linhascorrespondentes e com elas sao formadas as matrizes A e b. E claro que A et× n e b ∈ IRt, e ainda

Ax0 = b

As matrizes A e b sao as matrizes das (ou com as) restricoes ativas. Erazoavel supor que as t restricoes ativas sao independentes, o que garante queo posto de A e completo, ou seja, ρ(A) = t. Sejam os vetores zi ∈ IRn, i =1, 2, . . . n− t, linearmente independentes, tais que Azi = 0; eles formam umabase para ker(A), o espaco nulo (kernel) da matriz A. Colocando-os lado a

121

Page 128: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

lado forma-se a matriz Z = [ z1 z2 · · · zn−t ] com n linhas e n − t colunas,a matriz de projecao nas restricoes ativas. Alguns casos particulares ajudama entender. Se x0 e um ponto interno, entao nao ha restricoes ativas nele,t = 0, a matriz A nao tem sentido, e Z = ker(A) = IRn e Z = In. Outro casointeressante: como no IR2 pode haver, no maximo, t = 2 restricoes ativaspara um dado x0 em RV, se tres ou mais linhas retas passam por um mesmoponto, apenas duas delas definem uma regiao, e e possıvel ignorar a outra.Uma figurinha ajudaria.

Os proximos resultados virao sem demonstracoes, mas ha artifıcios queajudam a aceitar e entender as condicoes apresentadas neles. Os cones vistosnas secoes anteriores servem para isso, traduzir em termos intuitivos a fraseo-logia tecnica das ideias que serao (apenas) apresentadas. De modo informal,seja x∗ ∈ IRn uma solucao do PGORLD. Como x∗ ∈ RV, ou x∗ e interno ouesta na fronteira. Se x∗ e interno entao ele e um dos mınimos livres de f , epara ele valem os resultados ja vistos na minimizacao sem restricoes.

Se x∗ esta na fronteira, ou ele esta em uma aresta ou em um vertice. Seestiver em uma aresta, ha duas possibilidades: ou a curva de nıvel que passapor ele e tangente a aresta, ou ela a corta. Este raciocınio ja foi feito, com oauxılio dos CDVs, e leva a conclusao de que a curva de nıvel deve ser tangentea restricao, com o gradiente apontando para o miolo da RV. Ainda ha umapossibilidade, basta olhar alguns paragrafos acima, a solucao x∗ pode estarno encontro de duas arestas, em um vertice. Neste caso o gradiente ∇f(x∗)deve estar compreendido entre as normais as restricoes.

O formalismo rigoroso permite a explicacao teorica e a demonstracao davalidade de todos estes aspectos, e vale para o caso geral do IRn. Mas a ideiabasica de tudo pode ser visualizada com os artifıcios acima! Com estas novasbagagens ja se pode encarar mais teoria.

Teorema 5.4.1 Condicoes Necessarias de Otimalidade. Supondo fsuficientemente suave e sendo x∗ ∈ IRn uma solucao local do PGORLD,entao

1. Ax∗ ≥ b; Ax∗ = b (condicao de viabilidade)

2. ∃λ∗ ∈ IRt | g(x∗) = ATλ∗ (condicao de tangencia)

3. λ∗i ≥ 0, ∀i = 1, 2, . . . t (mesmo sentido das normais)

e ainda ZTG(x∗)Z ≥ 0, uma condicao de segunda ordem.

Muito parecido com o caso anterior, o das restricoes lineares de igual-dade. A matriz A, associada as restricoes ativas em x∗, aparece em alguns

122

Page 129: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

locais substituindo A. A segunda condicao, de tangencia, emprega os mul-tiplicadores de Lagrange λ∗

i ; ela e, como antes, equivalente a condicao dogradiente projetado, ZT∇f(x∗) = ZTg(x∗) = 0. Como sempre, as condicoesnecessarias fornecem um processo inicial de filtragem, selecionando os can-didatos (muitas vezes poucos, que bom!) que podem ser solucao. Paraefetivamente garantir a otimalidade, ainda se precisa das

Teorema 5.4.2 Condicoes Suficientes de Otimalidade. Supondo f su-ficientemente suave, seja x∗ ∈ IRn tal que

1. Ax∗ ≥ b; Ax∗ = b

2. ∃λ∗ ∈ IRm | g(x∗) = ATλ∗ (ou ZTg(x∗) = 0)

3. λ∗i > 0, ∀i = 1, 2, . . . t

4. ZTG(x∗)Z > 0

Entao x∗ sera uma solucao local forte do PGORLD.

5.4.4 Resumo do enredo e roteiro

Para um ponto qualquer x0 ∈ RV, seja A a matriz das restricoes ativas emx0, para a qual Ax0 = b e Z cujas colunas formam uma base para ker A,ou seja, uma matriz com o maximo numero possıvel de colunas linearmenteindependentes tal que AZ = 0. As condicoes necessarias de otimalidade,CNO, sao, em sımbolos:

dada f ∈ Ck

ex∗ solucao do RLD

=⇒

Ax∗ ≥ b; Ax∗ = b

∃λ∗ ∈ IRt | ATλ∗ = g(x∗) (≡ ZTg(x∗) = 0)λ∗i ≥ 0

ZTG(x∗)Z ≥ 0

As condicoes suficientes de otimalidade — CSO — sao, em sımbolos:

∃x∗ ∈ IRn |

Ax∗ ≥ b; Ax∗ = b

∃λ∗ ∈ IRt | ATλ∗ = g(x∗)λ∗i > 0

ZTG(x∗)Z > 0

=⇒ x∗ e solucao local forte

O uso das condicoes de otimalidade para problemas PGORLD pode serfeito atraves de um roteiro de operacoes. Como sempre as CNs geram oscandidatos e as CSs dao a palavra final.

123

Page 130: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Pontos com t = 0. Sao pontos internos e deve-se verificar quais deles satis-fazem as CNO e as CSO. Como sao pontos internos, isto e equivalentea usar a teoria para o caso sem restricoes e verificar se existem mınimosde f em RV (devem ser internos!).

Pontos com t = 1. Pontos onde ha apenas uma restricao ativa, sao arestasno IR2, faces no IR3, etc. Deve-se procurar tangencias entre as curvasde nıvel e as restricoes. Para isto considera-se, separadamente, cadauma das restricoes como sendo a unica restricao ativa ou, em outrostermos, para cada uma das linhas de A:

aTi = A e bi = b i = 1, 2, . . . m

Aplicando as CN e as CS verifica-se se ha tangencia com a restricaoconsiderada, e se o ponto candidato e solucao.

Pontos com t = 2. Duas restricoes ativas significam vertices no IR2, arestasno IR3, etc. Note-se que no IR2 apenas duas restricoes podem passarpor um dado ponto, qualquer outra seria redundante. Para cada umdos vertices deve-se identificar as restricoes que o formam, montar amatriz A e aplicar as CNO e as CSO.

Pontos com t = 3. . . .

Caramba, parece longo e complicado. E quase sempre e mesmo, trata-sede uma busca exaustiva que muitas vezes pode se tornar impraticavel. Boahora para exemplos que, obviamente, serao factıveis.

Exemplo 5.4.1 Minimizar uma quadratica com restricoes lineares de desi-gualdade:

f(x) =1

2xT

[

5 33 2

]

x− 1

2xT

[

117

]

s.a.

[

1 1−1 0

]

≥ 0

Esta quadratica e velha conhecida; a figura 5.14 ilustra as restricoes.O tracado das curvas de nıvel da funcao objetivo f mostra uma solucao

visual. A aplicacao do roteiro acima corresponde a um voo cego, por instru-mentos. Para t = 0, pontos internos. Por se tratar de uma quadratica, ogradiente e de obtencao imediata:

g(x) = ∇f(x) =

[

5 33 2

]

x− 1

2

[

117

]

= 0 ⇔ xe =

[

1/21

]

124

Page 131: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✻✒a1

✛a2

Figura 5.14: Minimizando uma quadratica com RLD

A Hessiana e obtida por inspecao, e como se revela positiva definida, pode-se concluir que o PE acima e um mınimo global de f , mas ele nao pertencea regiao viavel, pois

Axe =

[

1 1−1 0

]

xe =

[

3/2−1/2

]

6≥ 0

Para estudar o caso t = 1 supondo que apenas a restricao # 1 esta ativa.A matriz das restricoes ativas e a de projecao sao dadas por

aT1 = [ 1 1 ] = A =⇒ Z = Z1 =

[

1−1

]

Para pesquisar pontos de tangencia entre as curvas de nıvel de f e arestricao # 1 deve-se anular o gradiente projetado.

ZTg(x) = [ 1 − 1 ]

[

5 33 2

]

x− 1

2[ 1 − 1 ]

[

117

]

= 0

Esta equacao se reduz a [ 2 1 ]x−2 = 0 que, em conjunto com a restricaoativa Ax = aT

1 x = [ 1 1 ]x = b = 0 leva ao ponto de teste.[

2 11 1

]

x =

[

20

]

=⇒ x0 =

[

2−2

]

que, infelizmente, nao e viavel pois Ax0 6≥ 0, como os leitores certamenteverificarao. Isto significa que a tangencia se da fora da RV, ou seja, nao hasolucao na restricao #1. Mesmo assim e valido verificar se esta tangencia efavoravel, ou, em outras palavras, se o gradiente e ou nao paralelo a normalde entrada. Para isto e preciso analisar a equacao g(x) = λa1.

g(x) = λa1 ⇒[

5 33 2

]

x0 − 1

2

[

117

]

= λ

[

11

]

⇒ x0 =

[

0.5− λ1 + 2λ

]

125

Page 132: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Como a restricao e ativa neste ponto, aT1 x

0 = 0 o que levaria a x0 =[ 2 − 2 ]T , fora da RV, como esperado, e λ = −1.5 6> 0 o que significa que ogradiente, embora tenha a mesma direcao que a normal de entrada, apontapara o outro lado. Ainda no caso t = 1, agora apenas a restricao #2 e ativa.

Ax = aT2 x = [−1 0 ]x = 0 donde Z = Z2 =

[

01

]

A pesquisa de tangencia pode ser feita pelo gradiente projetado ou pelosmultiplicadores de Lagrange. Na primeira opcao depois deve-se verificar seo sentido do gradiente e o correto; esta tarefa ja esta embutida no segundoprocedimento.

g(x) = λa2 ⇒[

5 33 2

]

x0 − 1

2

[

117

]

= λ

[

10

]

⇒ x0 =

[

0.5− 2λ1 + 3λ

]

A restricao e ativa aqui, logo aT2 x

0 = 0 o que levaria a x0 = [ 0 7/4 ]T ,dentro da RV!, e λ∗ = 1/4 > 0 o que significa que o gradiente tem a mesmadirecao e o mesmo sentido da normal de entrada, apontando para o interiorda RV. Tangencia mais sentido correto significa que existe um candidato.Hora de as CSs entrarem em cena. As primeiras condicoes sao trivialmenteverificadas, faltando apenas a condicao de segunda ordem, a da Hessiana.

ZTG(x0)Z = [0 1]

[

5 33 2

] [

01

]

= 2 > 0

que termina a busca, o vetor x∗ = x0 = [0 7/4]T e solucao do PGORLD!Mas o trabalho ainda nao terminou, e preciso ainda estudar o caso t = 2,ou seja, as duas restricao ativas simultaneamente. E o vertice [ 0 0 ]T . Amatriz A = A tem duas linhas linearmente independentes, logo Z = 0 = ZT .A condicao a ser verificada e g(x0) = ATλ∗:

g(x0) = −(1/2)

[

117

]

= ATα∗ ⇒ λ∗ =

[

2−7/2

]

6> 0

e nao existe um candidato, muito menos uma solucao.

A resolucao analıtica do PGORLD, com o auxılio das Condicoes de Oti-malidade desenvolvidas, mostrou-se, confirmando os temores, muito traba-lhosa. E isto para um exemplo simples de uma quadratica no IR2. Qual-quer tentativa de usar este procedimento em exemplos menos triviais seria,e aceita-se isto bem, temerosa. E exatamente nestas horas que os metodosnumericos mostram seu valor. A eles, pois.

126

Page 133: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

5.5 Metodo do Gradiente Projetado

O PGORLD, Problema Geral de Otimizacao com Restricoes Lineares deDesigualdade, e: dadas f : IRn → IR suficientemente suave, uma matrizA (m× n) e b ∈ IRm deseja-se

min f(x) x ∈ IRn s.a. Ax ≥ b

Denotando a i-esima linha de A por aTi :

A =

aT1

aT2...

aTm

onde a1,a2, · · · am ∈ IRn e b =

b1b2...bm

∈ IRm

A hipotese basica de trabalho e: quando se considera um ponto viavelqualquer x0, as linhas de A e de b sao reordenadas de modo que as restricoesativas em x0 ocupem as t primeiras posicoes.

x0 ∈ RV ⇒ Ax0 ≥ b onde A =

[

AAr

]

e b =

[

b

br

]

A matriz A das restricoes ativas em x0 e t× n e a das restricoes inativasem x0, ou restantes, Ar, em−t×n; as particoes de b sao b ∈ IRt e br ∈ IRm−t.E obvio que

Ax0 = b e Arx0 > br

O Metodo de Rosen ou do gradiente projetado e um metodo numericoonde uma sequencia de pontos x0 x1 . . . xk . . . converge para uma solucaox∗ de um problema com restricoes gerais de desigualdade. Segue uma versaopara o caso linear, ou seja, o PGORLD. Ha, em todo o procedimento, variasetapas distintas.

MR 0) Inicializacao. O inicializador sera sempre um ponto viavel, x0 ∋Ax0 ≥ b. Embora este ponto inicial possa estar na fronteira, em geralsupoe-se que ele e interno: x0 ∋ Ax0 > b.

MR 1) Andando no miolo. Dado x0 ∈ RV com Ax0 > b, emprega-se ummetodo qualquer de otimizacao livre ou irrestrita, como por exemplo odo gradiente. Varias possibilidades podem ocorrer.

MR 1-1) Existe solucao livre x∗ e x∗ ∈ RV. O processo termina nestaprimeira fase e o uso de um metodo livre basta para solucionar oPGORLD. Embora o inicializador x0 e a solucao x∗ sejam viaveis,a sequencia de pontos x0 x1 . . . xk . . . x∗ pode, eventualmente, deixara RV e a ela retornar depois, como se ilustra na figura 5.15.

127

Page 134: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x0

x∗

x0

x∗❄ ❄

Figura 5.15: Pontos deixam a RV, mas voltam

MR 1-2) Existe solucao livre x∗ mas x∗ 6∈ RV. A sequencia de pontosx0 x1 . . . x∗ deixa a RV em alguma iteracao, para nao mais retornara ela. A solucao do PGORLD fica em algum ponto da fronteira ondepelo menos uma restricao esta ativa; a probabilidade de isto acontecere grande. Seja xk o ponto a partir do qual a sequencia nao mais retornaa RV, como a seguir se ilustra.

✠xk−1

✶dk−1

xkPela regra geral, xk = xk−1+αk−1d

k−1. Ao par-tir de xk−1 pela direcao dk−1 a fronteira da RV ecruzada. Diminuindo adequadamente o valor doavanco αk−1 pode-se trazer xk ate a fronteira, edeste ponto comecara a fase 2 do metodo.

Como entao encontrar αc tal que xk−1 + αcdk−1 apenas encosta na

fronteira? E sabido que xk = xk−1 + αk−1dk−1 6∈ RV, entao as linhas

de A e as de b podem ser reordenadas, colocando as restricoes violadasem xk nas primeiras posicoes. As primeiras linhas das “novas” matrizesA e b serao denotadas por Av e bv, e suas ultimas linhas, associadas arestricoes que permanecem satisfeitas em xk, serao As e bs. E imediatoperceber que

xk−1 ∈ RV :

{

Avxk−1 > bv

Asxk−1 > bsxk 6∈ RV :

{

Avxk−1 < bv

Asxk−1 ≥ bs

donde se conclui que αc e a solucao real para a equacao

Av(xk−1 + αcdk−1) = bv (5.7)

Esta expressao (5.7) finaliza o que se pode chamar de “procedimentopara encostar na fronteira”, com utilidade aqui e em outras partes,como se vera.

128

Page 135: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

MR 1-3) Nao existe solucao irrestrita mas xk ∈ RV ∀k. O metodo li-vre nao converge e (como nao convergiria para uma funcao objetivolinear, por exemplo) mas avanca sempre dentro da RV: o PGORLDnao tem solucao.

MR 1-4) Nao existe solucao livre mas xk sai da RV. O problema po-de ter solucoes mesmo para funcoes que nao apresentam minimizadoreslocais ou globais, como por exemplo as lineares. Neste caso a sequenciade pontos x0 x1 . . . xk . . . do algoritmo irrestrito fatalmente deixara aRV, e deve-se usar o procedimento visto no ıtem MR 1-2 para obrigarxk a encostar na fronteira, de onde comecara a fase 2.

Exemplo 5.5.1 Considere o PGORLD

min f(x) = [ 1 1 1 ]x x ∈ IR3 s. a.

1 −1 00 1 −1

−1 1 1

111

O gradiente de f , em qualquer x ∈ IR3 e ∇f = g = [ 1 1 1 ]T donde a ddm(direcao de descida maxima) em qualquer ponto e dm = −g = −[ 1 1 1 ]T .A primeira iteracao do metodo do gradiente a partir do ponto viavel x0 =[ 8 6 4 ]T leva a

x1 = x0 + αdm =

8− α6− α4− α

=⇒ Ax1 =

22

2− α

E facil ver que x1 encosta na fronteira da RV (na terceira restricao)quando 2− α = 1 ou seja, αc = 1 levando ao ponto de toque

x1 = xc = x0 + αcdm =

864

+

−1−1−1

=

753

Para as mesmas restricoes A e b seja agora f(x) = [−4 − 3 − 2 ]x.A ddm em qualquer ponto e dm = −g = [ 4 3 2 ]T . A primeira iteracao dometodo do gradiente a partir do mesmo ponto viavel x0 leva a

x1 = x0 + αdm =

8 + 4α6 + 3α4 + 2α

=⇒ Ax1 =

2 + α2 + α2 + α

> b ∀α > 0

O metodo do gradiente leva a pontos sempre viaveis, ou seja, o PGORLDnao apresenta solucoes.

129

Page 136: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

MR 2) Andando na fronteira. Dado xk na fronteira da RV busca-se umasequencia de pontos xk xk+1 xk+2 . . . , todos na fronteira, convergindopara uma solucao x∗ do PGORLD. E preciso aprender a caminhar“dentro” das restricoes como se ve na figura 5.16. Cada iteracao seraregida pela relacao tradicional xk+1 = xk + αkd

k. Quando nao houverproblemas de ambiguidade, αk ∈ IR e dk ∈ IRn serao designados por αe d, levando a xk+1 = xk + αd.

❄ ❄✠

xk+1 = xk + αd

xk

x∗

Figura 5.16: Andando na fronteira

MR 2-1) Direcao de avanco. O primeiro objetivo e encontrar uma direcaode avanco d ∈ IRn tal que o proximo ponto permaneca na fronteira ecause uma diminuicao no valor da funcao objetivo:

xk na fronteira . . . encontrar d ∋{

xk+1 = xk + αd na fronteiraf(xk+1) < f(xk)

Para garantir avancos sempre na fronteira e preciso escolher d ∈ IRn

tal que Ad = 0 onde A e a matriz das restricoes ativas em xk. Paraf decrescer e preciso escolher uma direcao de descida, ou seja, talque dT∇f(x

k) < 0. No caso livre, os decrescimos mais rapidos dafuncao objetivo sao conseguidos usando a ddm, velha conhecida: dm =−∇f (x

k) = −g(xk) = −gk. Para a situacao atual pode-se conseguirum avanco mais rapido usando a projecao da ddm na restricao.

❄ ❄

dm = −gk

xk

✲d

Examinando a representacao grafica aolado, no IR2, parece facil projetar dm, en-contrar a direcao de avanco d e cami-nhar dentro da restricao, mas e preciso ummetodo geral.

Uma possibilidade de conseguir isto ja e conhecida: para xk viavel, comAxk ≥ b, sejam A (t × n) a matriz das restricoes ativas em xk, composto t, e Z (n × n − t) tal que AZ = 0; o produto ZTv projeta um

130

Page 137: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

vetor qualquer v na restricao. Esta, entretanto, e uma projecao poucointeressante pois o resultado ZTv ∈ IRn−t e tem dimensao reduzida,menor que n. O problema da projecao ortogonal, visto na secao 5.3.2,pode ser aplicado nesta situacao, levando a

d = Pdm = −Pgk onde P = In − AT (AAT )−1A

A matriz projetiva P e (n× n), logo a direcao projetada d ∈ IRn comose desejava. A expressao acima e bastante simples e sera empregadano algoritmo; ela, porem, pode ser modificada:

d = Pdm = (In − AT (AAT )−1A)dm

= dm + AT (AAT )−1Agk = dm + ATγ

onde γ = (AAT )−1Agk ∈ IRt e ATγ e o vetor projetante, a linhatracejada na ilustracao anterior.

MR 2-2) Quantidade de avanco. Conhecida a direcao de avanco d =Pdm resta encontrar o passo, ou quantidade, ou distancia de avancoα. A tecnica de busca em linha, ou linear, sera adotada. Sendo xk ed grandezas fixas, o vetor xk + αd depende apenas do real α e assimf(xk + αd) se transforma em um funcao real da variavel real α.

xk✲d

xk + αdf(x) = f(xk + αd) = f(α)

Quando α ∈ [0 ∞) o ponto x = xk +αd sai de xk e percorre a direcaode avanco no sentido indicado por d; a derivada de f com relacao aα permite saber se f e crescente, decrescente ou estacionaria em x.Pode-se demonstrar que

f ′(α) = lim∆α→0+

f(xk + αd+∆αd)− f(xk + αd)

∆α= · · · = dTg(xk+αd)

E o produto escalar entre a direcao de avanco d e o gradiente no “novo”ponto x. O sinal de f ′ em α = 0 e obtido imediatamente: f ′(0) < 0pois a ddm projetada d e uma direcao de descida. O estudo do sinalde f ′(α) para α > 0, em particular os pontos em que f ′(α) se anula, emuito importante.

MR 2-2-1) Existe α∗ > 0 tal que f ′(α∗) = 0 e xk + α∗d ∈ RV. A derivadadirecional se anula em um ponto viavel: avancando mais a funcao ob-jetivo deixa de decrescer, logo

αk = α = α∗ −→ xk+1 = xk + αkd

131

Page 138: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

e o algoritmo prossegue.

MR 2-2-2) Existe α∗ > 0 tal que f ′(α∗) = 0 mas xk + α∗d 6∈ RV. A di-recao d encontra uma barreira e o avanco otimo estaria alem dela. Epreciso avancar menos, encontrar 0 < αc < α∗ tal que xk +αcd apenasencoste na quina. No IR2:

❄ ❄✠

xk✲d

xk + α∗d

αc

Para encontrar αc entra em cena, novamente, o procedimento de en-costar na fronteira resumido pela equacao (5.7) em MR 1-2.

αk = α = αc −→ xk+1 = xk + αkd

e o algoritmo prossegue.

MR 2-2-3) ∃/ α∗ > 0 tal que f ′(α∗) = 0 e xk + αd ∈ RV ∀α > 0. A dire-cao de avanco d e uma direcao de descida ilimitada. Se todos os pontosnela (para α > 0) sao viaveis isto significa que nao existe solucao parao PGORLD.

MR 2-2-4) ∃/ α∗ > 0 tal que f ′(α∗) = 0 mas ∃ α > 0 ∋ xk + α∗d 6∈ RV.A direcao d desce sem limites, mas encontra uma barreira, ou quina, eo procedimento devido e como em MR 2-2-2: encontrar αc . . .

αk = α = αc −→ xk+1 = xk + αkd

e o algoritmo prossegue.

MR 3) Quando parar? O mecanismo mostrado acima funciona desde qued = Pdm = −Pg(xk) 6= 0. Quando a direcao de avanco e nula . . .nao se pode avancar, claro. Isto significaria que se chegou ao destinoprocurado, ou seja, as CNO foram satisfeitas e o algoritmo terminou?A direcao de avanco e a projecao ortogonal da ddm:

d = Pdm = (In − AT (AAT )−1A)dm = −g(xk) + ATγ

onde γ ∈ IRt e ATγ e o vetor projetante, como visto ha poucas linhas.Se d = 0 em xk, entao

−g(xk) + ATγ = 0 ⇔ g(xk) = ATγ = a1γ1 + a2γ2 + · · ·+ atγt

132

Page 139: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Esta e uma das CNOs, a condicao de tangencia: a curva de nıvel etangente a restricao em xk. Alem disso os elementos γ1, γ2 . . . γt saoos multiplicadores de Lagrange associados. Ja ha, assim, indıcios deparada. . . mas nao ha certeza ainda, outras condicoes devem ser veri-ficadas.

MR 3-1) A direcao de avanco d = 0 e γi ≥ 0 ∀i = 1, 2 . . . t. Quando haapenas uma restricao ativa em xk, t = 1, a visualizacao, no IR2 comosempre, e factıvel, e e mostrada a seguir. Antes, porem, uma serie desentencas equivalentes, oriundas dos fundamentos teoricos do PGORLD:

d = 0, direcao de avanco nulatangencia entre curva de nıvel de f e restricao

paralelismo entre gradiente de f e normal de entradatransversalidade entre gradiente de f e restricao

❄ ❄❄gk

✻gk

γ > 0

γ < 0

xk

xk

Havendo paralelismo, γ < 0 indica um maximo e γ > 0 um mınimo.Quando t = 2 ainda se pode visualizar, no IR2, claro: o processo esta-cionou em uma esquina.

❄a1

❄a1

✙a2

✙a2

xkQuando γ1 ≥ 0 e γ2 ≥ 0 . . .

. . . gk fica entre as normais . . .

. . . e sinal de um mınimo!

✠gk

Quando t > 2 e muito difıcil visualizar como feito acima e as condicoesanalıticas devem ser empregadas: se d = 0 e γi ≥ 0 ∀i = 1, 2 . . . tsignifica que o algoritmo pode parar.

MR 3-2) A direcao de avanco d = 0 e ha elementos negativos em γ.Como sempre, a visualizacao no IR2 ajuda. Se t = 1 e γ < 0 e o casode um maximo, como ja visto; se t = 2 a figura a seguir ilustra que

133

Page 140: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

existe um CDV nao nulo, logo ainda nao se chegou a uma solucao e oalgoritmo deve continuar.

❄a1

❄a1

✙a2

✙a2

xkha elementos negativos nosγi . . .

. . . gk fica fora das normais . . .

. . . algoritmo deve continuar!

✾gk

Usando uma linguagem sugerida pelas ilustracoes, e preciso “sair da es-quina” e mais, “sair da esquina pela rua que desce”. Deve-se desativaruma restricao: retirar uma linha de A e recomecar. Qual restricaodesativar? Aquela correspondente ao “pior” γi, o mais negativo:

γ∗j = min{γ1, γ2 . . . γt} =⇒ desativar a j-esima restricao

Exemplo 5.5.2 Considere, novamente, o PGORLD

min f(x) = [ 1 1 1 ]x x ∈ IR3 s. a.

1 −1 00 1 −1

−1 1 1

111

No exemplo 5.5.1, a primeira iteracao do metodo do gradiente partia doponto viavel x0 = [ 8 6 4 ]T levando a um ponto x1 na fronteira da RV:

x1 = xc = x0 + αcdm =

864

+

−1−1−1

=

753

Como a restricao tocada era a terceira, a matriz A deve ter suas linhasreordenadas

A =

−1 1 11 −1 00 1 −1

onde A = [−1 1 1 ]

A matriz de projecao pode ser calculada

P = I3 −

−111

[−1 1 1 ]

−111

−1

[−1 1 1 ] =1

3

2 1 11 2 −11 −1 2

134

Page 141: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Como f e linear sua ddm e constante, logo

d = Pdm =1

3

2 1 11 2 −11 −1 2

−1−1−1

= −1

3

422

Para calcular a quantidade de avanco da iteracao, o proximo ponto ex2 = x1 + αd, e

f(x2) = f(x1 + αd) = [ 1 1 1 ]

7− 4α/35− 2α/33− 2α/3

= 15− 8α/3

um valor que diminui sempre! Isto significa que sera necessario “dobrar umaesquina”. Para encostar na proxima restricao:

A(x2) =

−1 1 11 −1 00 1 −1

7− 4α/35− 2α/33− 2α/3

=

12− 2α/3

2

A primeira componente deste vetor = 1 ∀α > 0, a segunda componente> 1 ∀α > 0; apenas a terceira componente pode inviabilizar x2, e o ponto detoque ocorre quando 2− 2α/3 = 1, ou seja, α = αc = 3/2. Com isto,

x2 = x1 + αd =

542

=⇒ Ax2 =

112

=⇒ A =

[

−1 1 11 −1 0

]

P = I3 − AT (AAT )−1A =1

2

1 1 01 1 00 0 0

=⇒ d = Pdm =

−1−10

f(x3) = f(x2 + αd) = [ 1 1 1 ]

5− α4− α2

= 11− 2α

um valor que, novamente, diminui sempre! Mais uma vez sera necessario“dobrar uma esquina”. Para encostar na proxima restricao:

A(x2 + αd) =

−1 1 11 −1 00 1 −1

5− α4− α2

=

11

2− α

135

Page 142: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

o que garante que o ponto de toque ocorre quando 2 − α = 1, ou seja, α =αc = 1. Esta iteracao fica

x3 = x2 + αd =

432

=⇒ Ax3 =

111

=⇒ A = A

P = I3 −AT (AAT )−1A = 0 =⇒ d = Pdm = 0

g(x3) = ATγ ⇒

111

=

−1 1 11 −1 00 1 −1

γ1γ2γ3

⇒ γ =

342

> 0

Isto mostra que x∗ = x3 = [ 4 3 2 ]T e solucao do PGORLD.

Exemplo 5.5.3 Minimizar a quadratica com restricoes lineares de desigual-dade:

f(x) =1

2xT

[

5 33 2

]

x− 1

2xT

[

117

]

s.a.

[

1 1−1 0

]

≥ 0

No exemplo 5.4.1 esta quadratica foi minimizada com a aplicacao dosresultados analıticos: tangencias entre curvas de nıvel e restricoes eram pro-curadas (pontos estacionarios) e as condicoes teoricas eram testadas. Agorao trabalho sera feito com o metodo de Rosen. Para um inicializador ja nafronteira:

x0 =

[

−22

]

; Ax0 =

[

02

]

⇒ A = [ 1 1 ]

dm = −g(x0) = −[

5 33 2

]

x0 +1

2

[

117

]

=1

2

[

1911

]

P = I2 − AT (AAT )−1A =1

2

[

1 −1−1 1

]

; d = Pdm = 2

[

1−1

]

f ′(α) = dTg(x0 + αd) = [ 4 − 4 ]

([

5 33 2

] [

α− 11− α

]

− 1

4

[

117

])

= 4α− 8

Esta derivada se anula em α = 2 o que levaria a x1 = x0+2d = [ 2 −2 ]T .Para testar a viabilidade: Ax1 = [ 0 − 2 ]T donde x1 6∈ RV e Av = [−1 0 ].Para encontrar o ponto de toque:

Av(x0 + αd) = 0 ⇒ [−1 0 ]

[

2α− 22− 2α

]

= 0 ⇔ α = αc = 1

136

Page 143: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x1 = x0 + αcd =

[

00

]

⇒ A = A =

[

1 1−1 0

]

⇒ P = 0; d = 0

E preciso verificar os multiplicadores de Lagrange para saber se este pontoe uma solucao, ou apenas uma etapa intermediaria.

g(x1) = ATγ ⇒[

5 33 2

]

x1−1

2

[

117

]

=

[

1 −11 0

]

γ ⇒ γ =1

2

[

−74

]

O ponto x1 e uma “esquina” e para prossegir e preciso desativar a piorrestricao, no caso a primeira, associada a γ1 < 0, o que traz A = [−1 0 ] e

P = I2 − AT (AAT )−1A =

[

0 00 1

]

; d = Pdm =1

2P

[

117

]

=

[

07/2

]

f ′(α) = dTg(x1 + αd) = 0 ⇔ · · · α = 1/2

A iteracao pode ser concluıda:

x2 = x1 + αd =7

4

[

01

]

⇒ A = [−1 0 ] ⇒ P =

[

0 00 1

]

g(x2) =1

4

[

5 33 2

] [

07

]

− 1

2

[

117

]

=1

4

[

−10

]

⇒ dm =1

4

[

10

]

E facil notar que d = Pdm = 0 e e necessario verificar, mais uma vez, osmultiplicadores de Lagrange

g(x2) = ATγ ⇒ 1

4

[

−10

]

=

[

−10

]

γ ⇒ γ =1

4> 0

o que termina o algoritmo! A figura abaixo ilustra a geometria dos passos doprocedimento

✒a1

✛a2

x0

x1

x∗

❘ ✻

x0 =

[

−22

]

x1 =

[

00

]

x2 = x∗[

07/4

]

Figura 5.17: Metodo de Rosen para quadratica com RLD

137

Page 144: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Hora de sistematizar. Note-se que, estando a solucao em alguma parteda fronteira, como ocorre na maior parte dos casos, o metodo busca umasolucao exata e os conceitos de tolerancias e xk suficientemente proximo dex∗ perdem um pouco o sentido. Assim, as instrucoes abaixo, embora possamser adaptadas ao caso mais geral, assumem movimentos na fronteira.

Algoritmo 5.5.1 (Metodo do Gradiente Projetado: Rosen)

Dados: • f : IRn → IR, uma funcao suave

• uma RV no IRn delimitada por Ax ≥ b

• inicializador x0 ∈ RV

Objetivo: Encontrar xk ∈ IRn suficientemente proximo do mınimox∗ de f , ou encontrar x∗ na fronteira.

Operacoes

1. xk = x0; armar o passo k

2. A;Ar; b; br; estabelecer atividade em xk

3. g = g(xk);dm = −g; encontrar a ddm

4. P = In − AT (AAT )−1A; matriz projetante

5. d = Pdm; ddm projetada

6. d = 0 . . . nao se pode avancar

(a) γ = (AAT )−1Ag; multiplicadores de Lagrange

(b) γi ≥ 0 ∀i −→ xk satisfaz CNO !!! parada!

(c) ∃γi < 0 −→ desativa pior restricao −→ volta ao passo 2.

7. d 6= 0 . . . avanco e possıvel

8. ∃ αc ∋ alguma linha de Ar(xk + αcd) = 0 avanco crıtico

(a) f ′(αc) < 0 → xk+1 = xk + αcd → xk = xk+1 → volta ao passo 2.

(b) f ′(αc) > 0 → vai ao passo 9.

9. ∃ α∗ ∋ f ′(α∗) = 0

10. xk+1 = xk + α∗d → xk = xk+1 → volta ao passo 2.

138

Page 145: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 6

Programacao Linear

Minimizar uma funcao linear com restricoes (de igualdade ou desigualdade)tambem lineares, e chamado de problema de Programacao Linear, PPL ousimplesmente PL. Uma funcao objetivo linear e dada por

f(x) = c1x1 + c2x2 + · · ·+ cnxn = xTc = cTx

onde c ∈ IRn e o vetor dos coeficientes ci. O PGO fica entao

min f(x) = cTx x ∈ IRn s.a. Ax ≥ b

6.1 Geometria basica

Como f e linear, ∀x ∈ IRn: ∇f(x) = g(x) = c e ∇2f(x) = 0. Funcoeslineares deste tipo, como ja mencionado, sao ilimitadas e nao apresentammaximos ou mınimos, logo a solucao do PPL sempre estara ou nas arestasou nos vertices. No IR2 a visualizacao e possıvel, e muito instrutiva. Sejaentao um PPL com apenas uma restricao: para x ∈ IR2, min f(x) = [ 1 1 ]xs.a. [ 1 − 1 ]x > 1. A figura 6.1 mostra as curvas de nıvel de f e a restricao.

A imagem e tao forte que permite uma generalizacao, valida, e bom frizar,no IR2: PPLs com uma unica restricao terao solucao apenas quando esta forperpendicular ao gradiente (paralela as curvas de nıvel), caso em que todosos pontos sao solucao. Agora duas restricoes sao colocadas para a mesmafuncao objetivo: para x ∈ IR2, min f(x) = [ 1 1 ]x s.a.

[

aT1

aT2

]

x > b

A figura 6.2 mostra as curvas de nıvel de f e tres tipos de combinacaoentre as duas restricoes. E facil perceber que as RVs sao convexas, e em um

139

Page 146: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✒∇f❘

Figura 6.1: Restricao unica paralela ao gradiente

dos casos (qual, leitores?) a solucao esta no vertice, em outro as solucoesestao em uma aresta, e no outro nao ha solucao, ou melhor, nao ha ummınimo, mas ha um maximo.

✒∇f

❘ ✛ ✒

③■

Figura 6.2: PPL no plano com duas restricoes

O que acontece quando as retas que definem as restricoes sao paralelas?Ha tres possibilidades basicas:

• A intersecao dos semiplanos e vazia e portanto nao existe RV.

• Um dos semiplanos esta contido no outro e portanto uma das restricoese superflua, pode ser descartada e se recai no caso anterior, de umaunica restricao.

• A intersecao dos semiplanos e a faixa ilimitada entre as duas retas. Queacontece com a solucao neste caso, leitores?

Seja ainda a mesma funcao objetivo no IR2, mas agora com tres restricoesde desigualdade. Supondo RV nao vazia, uma das possibilidades e que elaseja o triangulo delimitado pelas retas, uma regiao convexa e limitada. Esta

140

Page 147: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

situacao e muito interessante, pois sempre havera mınimos e maximos, emvertices ou arestas, como a figura 6.3 ajuda a visualizar. Algumas linhasacima foi sugerido que ainda ha outra possibilidade de RV nao vazia paratres restricoes. Esta fica para voces, leitores.

✒∇f

✶■

Figura 6.3: PPL no plano com tres restricoes

E o caso de mais de tres restricoes no IR2, como fica? Em primeiro lugar, aRV deve existir, a intersecao dos semiplanos deve ser nao vazia. Assim comotres retas podem levar a RVs triangulares, e facil perceber que mais restricoespodem levar tambem a regioes limitadas e convexas. Como as restricoes saoretas, estas regioes sao polıgonos, nao necessariamente regulares. As RVspoderao ser quadradas, pentagonais, hexagonais, etc. Uma funcao objetivolinear em RVs poligonais convexas sempre apresentara maximos e mınimos,que podem ser facilmente detectados. Este facilmente e porque ainda setrata do IR2, claro. Quando n ≥ 3 que se pode dizer?

Algumas generalizacoes parecem ser seguras. Se as RVs forem polito-pos convexos — os correspondentes n-dimensionais dos polıgonos convexosplanos — entao sempre havera solucoes que poderao se localizar nos corres-pondentes das arestas, ou dos vertices. Da para aceitar, mas como encontrarestas solucoes? Sera necessario efetuar um voo cego, pois nao ha condicoesde visibilidade. Seja o PPL: para x ∈ IR3, min f(x) = [ 1 1 1 ]x s.a.

1 −1 00 1 −1

−1 1 1

x ≥

111

Cada uma das restricoes sera nalisada individualmente. Se a i-esimadelas for perpendicular ao gradiente entao tudo bem, todos os pontos da“aresta” sao solucoes, caso contrario nada feito. Seja entao a restricao # 1,

141

Page 148: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

representada pela primeira linha de A:

[ 1 − 1 0 ]x = 1 ⇒ Z =

1 01 00 1

⇒ ZTg(x) =

[

1 1 00 0 1

]

111

=

[

21

]

Como este vetor nao e nulo, nao existe tangencia. Calculo analogo para asoutras duas restricoes levaria ao mesmo resultado o que nos permite concluirque as solucoes nao estao em planos do IR3. O proximo passo e combinar asrestricoes duas a duas. Para as duas primeiras linhas de A:

[

1 −1 00 1 −1

]

x =

[

11

]

⇒ Z =

111

⇒ ZTg(x) = · · ·

As CNO e as CSO seriam aplicada as restricoes i e j combinadas. Nestecaso as combinacoes representam retas do IR3, e ou estas retas nao contemsolucoes ou todos seus pontos sao solucoes. Ainda seria preciso combinaras tres restricoes simultaneamente, o que nos daria um ponto no IR3, umvertice. No atual caso numerico,

1 −1 00 1 −1

−1 1 1

x =

111

e o candidato unico e x =

432

Para aplicar as condicoes restantes, deve-se verificar se existe λ∗ ∈ IR3

tal que ATλ∗ = g(x) e se λ∗ > 0. A resposta seria positiva. A conclusao edireta: mesmo em um caso simples de n = 3 a solucao teorica do PPL podeficar impraticavel, sera preciso usar metodos numericos!

6.2 Programacao Linear, mais detalhes

Solucoes analıticas para o problema de otimizar uma funcao objetivo linearcom restricoes tambem lineares, de igualdade e desigualdade, ja foram apre-sentadas na teoria basica de capıtulos anteriores e tambem na ultima secao.As dificuldades operacionais decorrentes obrigam o emprego dos metodosnumericos. Ha metodos numericos de duas famılias distintas para resolverestes problemas, a famılia SIMPLEX, que envolve manipulacoes elementaresnos elementos de uma matriz e que tem sido usada quase com exclusividadedesde seu aparecimento em 1947, e as tecnicas mais modernas de pontos in-teriores, do final da decada de 1980. Antes de apresentar e detalhar estesmetodos, segue uma serie de situacoes praticas onde a aplicacao de tecnicasde PL pode ajudar.

142

Page 149: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

6.3 Exemplos praticos

6.3.1 Problema geral da dieta

Minimizar gasto com alimentos mantendo dieta equilibrada.

Compra-se xi unidades de cada um dos n alimentos.Custo de cada alimento e ci.Custo total = c1x1 + c2x2 + · · · + cnxn = cTx = f(x).Alimento i possui a1i gramas de proteınaTotal de proteına: a11x1 + a12x2 + · · · + a1nxn = aT

1 x

Necessidade mınima de proteına: b1Alimento i possui a2i gramas de carbohidratoTotal de carbohidrato: a21x1 + a22x2 + · · · + a2nxn = aT

2 x

Necessidade mınima de carbohidrato: b2

OK, ja deve ter dado para perceber o espırito da coisa. Supondo que, alemde proteına e carbohidratos, ha outros elementos essenciais tipo gorduras,fibras, vitaminas, etc, em um total de m. A meta do problema e minimizaro custo total

c1x1 + c2x2 + · · · + cnxn = cTx

satisfazendo as restricoes de equilıbrio alimentar

a11x1 + a12x2 + · · · + a1nxn ≥ b1

a21x1 + a22x2 + · · · + a2nxn ≥ b2...

am1x1 + am2x2 + · · · + amnxn ≥ bm

Ainda ha um outro tipo de restricao, quase sempre presente em problemaspraticos. Deseja-se realmente comprar os alimentos, ou seja, as quantidadesxi devem ser positivas! A menos, claro, que tambem se considere possıvel avenda dos produtos. Mas aı o modelo mudaria. Usando a notacao matricialmais densa e compacta pode-se formular o problema como

min f(x) = cTx x ∈ IRn s.a.

{

Ax ≥ b

x ≥ 0

Trata-se de um PPL de minimizacao, com restricoes (lineares, claro) dedesigualdade do tipo maior ou igual.

143

Page 150: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

6.3.2 Problema de refinaria

E uma simplificacao. Dois produtos sao refinados, gasolina e gas-oleo porexemplo. Sendo x1 e x2 a quantidade de cada um deles produzida em umdado perıodo e sendo $7 o lucro (preco de venda menos custo total de refino,em unidades monetarias por unidade do produto) associado a gasolina e $5o do gas-oleo, o lucro total obtido com estes dois produtos em um perıodo e

f(x1, x2) = 7x1 + 5x2 = [ 7 5 ]

[

x1

x2

]

= cTx

Na refinaria existe um tanque para a destilacao atmosferica. Se esse tan-que fosse empregado exclusivamente para o refino da gasolina a producaoseria de 500 000 toneladas em um perıodo; se apenas o gas-oleo fosse produ-zido seriam 600 000 toneladas desse produto, por perıodo. O importante anotar e que o tamanho do tanque limita a quantidade dos produtos em cadaperıodo. Os leitores sao convidados a usar uma regrinha de tres simples paraconcluir que

x1

500000+

x2

600000≤ 1

Tanto gasolina como gas-oleo precisam tambem ser dessulfurados. Oreservatorio de dessulfuracao da refinaria e capaz de processar 700 000 tone-ladas de gasolina por perıodo ou entao 500 000 toneladas de gas-oleo. Umraciocınio analogo levaria a

x1

700000+

x2

200000≤ 1

O refino da gasolina exige ainda o seu reforming catalıtico, cujo reser-vatorio tem capacidade maxima de 400 000 toneladas. O gas-oleo nao pre-cisa deste processo e nao compete assim com a gasolina neste ıtem, mas eleprecisa sofrer o cracking catalıtico, e a gasolina nao. A capacidade do tan-que de cracking e de 450 000 toneladas, por perıodo. Estas duas restricoesadicionais podem ser escritas como

x1 ≤ 400000 e x2 ≤ 450000

A meta do problema e maximizar o lucro com os dois produtos:

lucro = 7x1 + 5x2 = cTx

satisfazendo as restricoes de capacidade dos reservatorios

x1 + (5/6)x2 ≤ 500000

x1 + (7/5)x2 ≤ 700000

x1 + 0x2 ≤ 400000

0x1 + x2 ≤ 450000

144

Page 151: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Refinarias normalmente querem produzir, e isto significa x1 > 0 ex2 > 0. Valores negativos poderiam ser admitidos se a refinaria comprasseprodutos refinados. Usando a notacao matricial

min f(x) = cTx x ∈ IRn s.a.

{

Ax ≤ b

x ≥ 0

Trata-se de um PPL de maximizacao, com restricoes lineares de desigual-dade do tipo menor ou igual e tambem maior ou igual.

6.3.3 Producao de ligas metalicas

Uma industria metalurgica tem como materias primas cinco tipos diferentesde ligas metalicas. Ha no almoxarifado 500 Kg da variedade #1, e seu precopor Kg e $ 6. Esta primeira liga possui 10% de um certo elemento A e 90%de um outro elemento B. A tabela abaixo lista as propriedades de todas asligas em estoque.

Liga # qtd $/Kg %A %B

1 300 06 10 902 400 10 15 852 200 18 20 804 700 24 30 705 450 30 40 60

A meta e produzir, com o mınimo custo possıvel, 1000 Kg de um outrotipo de liga com 25% do metal A e 75% de B. Usando xi da liga existente io custo e facilmente encontrado:

6x1 + 10x2 + 18x3 + 24x4 + 30x5 = cTx

Para que o produto final tenha 25% de A em sua composicao e preciso (re-cordem Quımica!) que

0.1x1 + 0.15x2 + 0.2x3 + 0.30x4 + 0.4x5 = 250

As disponibilidades em estoque geram outras restricoes

x1 ≤ 300 x2 ≤ 400 x3 ≤ 200 x4 ≤ 700 x5 ≤ 450

E finalmente as resticoes naturais, xi > 0 ∀i porque se supoe que a fabricaqueira produzir e vai assim gastar seus estoques. Se se quisesse vender osestoques estas variaveis poderiam ser negativas. Usando notacao compacta

min f(x) = cTx x ∈ IRn s.a.

Ax = b

Ax ≤ b

x ≥ 0

145

Page 152: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

E um PPL de minimizacao, com restricoes lineares de igualdade, de de-sigualdade do tipo menor ou igual e tambem maior ou igual.

6.4 Resolucao grafica de um PPL

Seja um problema simples, no IR2. Uma certa fabrica lucra $5 ao venderuma unidade de um produto P1 e $6 por unidade de P2. A confeccao do 1.oproduto usa uma unidade de um recurso A, uma unidade de um outro recursoB e sete unidades de C. A confeccao do 2.o produto usa duas unidades de A,uma unidade de B e quatro unidades de C. Ha em estoque 14 unidades deA, 9 de B e 56 de C. Uma tabelinha sempre ajuda

Recurso qtd em P1 em P2

A 14 1 2B 09 1 1C 16 7 4

Escolher as quantidades x1 e x2 de cada produto que se deve fabricar paramaximizar os lucros.

6.5 Resolucao manual de um PPL

6.6 Resolucao numerica de um PPL

6.7 Dualidade em PL

146

Page 153: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Capıtulo 7

Otimizacao Geral II

Antes de se encarar o caso mais geral de funcao objetivo e restricoes naolineares ainda ha alguns casos gerais mais simples e importantes.

7.1 Programacao quadratica

Minimizar uma funcao quadratica com restricoes (de igualdade ou desigual-dade) lineares, e um problema de Programacao Quadratica. Uma funcaoobjetivo quadratica, em sua forma canonica, e caracterizada por uma matrizreal A (n× n) e um vetor b ∈ IRn. O PGO, sendo R e r os parametros dasrestricoes, fica entao reformulado como

min f(x) =1

2xTAx+ xTb x ∈ IRn s.a. Rx ≥ r

As quadraticas sao comodas e de manuseio relativamente facil (perdemapenas para as lineares) e assim a programacao quadratica tem a sua popu-laridade. Quando se deseja minimizar um funcao qualquer e as componentesde x tem limites superiores e inferiores:

min f(x) x ∈ IRn s.a. li ≤ xi ≤ ui, i = 1, 2, . . . n

As RVs sao hipercubos (retangulos no IR2) e isto facilita as coisas.

7.2 Restricoes Nao-Lineares de Igualdade

Quando ha t restricoes nao lineares de igualdade o problema e abreviada-mente chamado de PGORNLI ou apenas ORNLI ou RNLI:

min f(x) x ∈ IRn s.a. ci(x) = 0; i = 1, 2, . . . t

147

Page 154: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

que admite uma formulacao matricial quando se empilha as restricoes em umvetor C(x) ∈ IRt:

min f(x) x ∈ IRn s.a. C(x) = 0

Os comentarios feitos no inıcio da secao 5.3 continuam validos: as t restricoesdevem ser compatıveis, ou seja, devem levar a uma RV nao vazia.

O PGORLI, descrito nessa mesma secao 5.3, e um caso particular destePGORNLI, e muitas das intuicoes la desenvolvidas tambem valem aqui, comoa visao geometrica ligando tangencias entre restricoes e curvas de nıvel assolucoes. Tanto as tecnicas de projetar o gradiente quanto os metodos deaumento de ordem e seu elo com os multiplicadores de Lagrange continuamimportantes, cruciais mesmo, neste caso geral. Para ilustrar as conexoes, oexemplo 5.3.1 sera, a partir de agora, revisto e ampliado.

Exemplo 7.2.1 Casos Linear e Nao Linear no IR2. Minimizar afuncao objetivo quadratica

f(x) = xT

[

1 00 2

]

x− 2xT

[

11

]

para x ∈ IRn sujeito a restricao [ 1 1 ]x = 1. As curvas de nıvel elıpticas def e a restricao reta aparecem na figura 7.1.

x1

x2

Figura 7.1: Curvas de nıvel da funcao objetivo e restricao linear..

Era o caso de se encontrar tangencia entre a restricao e alguma curvade nıvel, como se mostra na figura 7.2. O significado de tangencia entrerestricao e curva de nıvel e conhecido: o gradiente ∇f(x) = g(x) no pontode tangencia deve ser simultaneamente perpendicular a restricao e a curvade nıvel, ou, em outras palavras, o gradiente projetado na restricao devese anular.

148

Page 155: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x1

x2

Figura 7.2: Significado de tangencia entre curvas de nıvel da funcao objetivoe restricao linear.

O que mudaria no caso nao linear? A restricao, claro, nao e mais umalinha reta, mas permanece a perpendicularidade entre gradiente, restricao ecurva de nıvel, ou entao, o gradiente projetado na tangente a restricao enulo. A figura 7.3 ilustra a situacao para uma restricao nao linear.

x1

x2

Figura 7.3: Significado de tangencia entre curvas de nıvel da funcao objetivoe restricao nao linear.

Fica claro que, tambem neste caso nao linear, ha uma conexao forteentre as solucoes do problema e a tangencia entre as curvas de nıvel e asrestricoes. Mas ainda ha mais aspectos a considerar. A figura 7.4 mostraduas situacoes de tangencia, no IR2, entre curva de nıvel, em azul e restricao,em vermelho. Os leitores sao convidados a analisar as direcoes de descidaviaveis e a concluir que os casos nao correspondem a mınimos. O fato e que,tangencias e curvaturas adequadas sao condicoes apenas necessarias paraexistir solucao do PGORNLI.

As intuicoes desenvolvidas acima, interessantes e uteis, sao bastante par-ticulares, pois baseadas em exemplos simples no IR2. A proxima secao trazas maneiras rigorosas e gerais de estabelecer os fatos.

149

Page 156: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x1

x2 g

x1

x2 g

Figura 7.4: Tangencia entre curvas de nıvel e restricao esta ligada as solucoes,mas pode nao garantir mınimos.

7.2.1 Algebra das restricoes e da funcao objetivo

Como as restricoes agora sao mais sofisticadas, um tratamento algebrico maisrigoroso se faz necessario. A possıvel aridez dos proximos desenvolvimentospode, e deve, ser atenuada pela lembranca, revivida no exemplo 7.2.1, dosatores geometricos fundamentais envolvidos na trama: tangencias e perpen-dicularidades

Uma restricao qualquer ci deve ser considerada nao apenas como umacurva ou superfıcie estaticamente talhada no IRn, mas como uma funcao realde variavel vetorial, como a funcao objetivo:

ci : IRn → IR

x 7→ ci(x)

A curva de nıvel associada ao valor 0 desta funcao fornece a visao tra-dicional, nao dinamica, da restricao. Supondo ci suficientemente suave, ogradiente da restricao i em um ponto x ∈ IRn e denotado por

∇ci(x) = ai(x) ∈ IRn

E sempre bom lembrar que o ponto x esta na restricao, e que o gradientedefinido acima e um vetor do IRn normal, ou perpendicular, a ela. Umadirecao p ∈ IRn e tangente a restricao i no ponto x quando

pTai(x) = aTi (x)p = 0

ou seja, p e perpendicular ao gradiente ai no ponto x. Estes conceitos seaplicam a qualquer ponto no IRn mas e comum associa-los a pontos x taisque ci(x) = 0 ou seja, o gradiente ai e a normal a restricao em x, e p e atangente nesse ponto. Em resumo: supondo a restricao

150

Page 157: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

x

p

a✠

c = 0 (restricao unica)

Figura 7.5: Tangente, gradiente e restricao no IR2

ci : IRn → IR x ∈ IRn 7→ ci(x) ∈ IR

suficientemente suave, entao a figura 7.5 ilustra a situacao no IR2.A tabela abaixo e valida para o caso geral do IRn.

o gradiente de ci em x, . . . . . . . . . . . . . . . . . . . . . . . . . . . . .∇ci(x) = ai(x) ∈ IRn,e um vetor do IRn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . normal a restricao ci em x.uma direcao p ∈ IRn e . . . . . . . . . . . . . . . . . . . . . . . . tangente a restricao ci em x

uma direcao p ∈ IRn e . . . . . . . . . . . . . normal ao gradiente restricao ai em x.

Algebra das restricoes: tangencias.

Para um ponto x ∈ IRn viavel qualquer, ha t restricoes ci associadas e t gra-dientes a1(x),a2(x) . . . at(x), onde ai(x) ∈ IRn ∀i = 1, 2 . . . t. Formandouma coluna com os ai(x) transpostos, a matriz obtida e a Jacobiana dasrestricoes, denotada por A.

aT1 (x)

aT2 (x)...

aTt (x)

= A(x) ∈ IRt×n Jacobiana das restricoes

Uma direcao z ∈ IRn e tangente simultanea as t restricoes em x ∈ IRn

quandoA(x)z = 0

No IR2 o conceito de tangentes simultaneas a varias curvas pode causarespanto, mas em espacos com dimensoes maiores nao: para esta ideia fazersentido, e preciso trabalhar no IRn, com n > 2. Um ponto x ∈ IRn sera

151

Page 158: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

chamado de regular quando as t linhas de A(x) forem linearmente indepen-dentes, ou, de modo equivalente, o posto de A(x) for igual a t:

x ∈ IRn e regular ⇐⇒ ρ(A(x)) = t

Deste modo, sendo x um ponto viavel e regular, havera n−t tangentes si-multaneas linearmente independentes: z1(x), z2(x), · · · zn−t(x). Colocando-as lado a lado chega-se a uma matriz (n× n− t), a matriz das tangentessimultaneas:

[ z1(x) z2(x) · · · zn−t(x) ] = Z(x) ∈ IRn×(n−t)

E trivial perceber que A(x)Z(x) = 0 e que ZT (x)AT (x) = 0. Estamatriz ZT projeta um vetor v ∈ IRn nas tangentes simultaneas. Hora demencionar as derivadas de segunda ordem, menos importantes: a Hessianada restricao i e definida como

∇2ci(x) = Gci(x) ∈ IRn×n

Lagrangeana

A Lagrangeana traz em si informacoes tanto da funcao objetivo como dasrestricoes, e desempenha um papel importante, ja sentido antes no caso li-near. Ela e uma funcao real de um espaco de dimensao aumentada, obtidaadicionando a funcao objetivo uma combinacao linear das restricoes:

L(x, λ1, λ2 . . . λt) = f(x)− λ1c1(x)− · · · − λtct(x) = f(x)−t∑

i=1

λici(x)

As t variaveis adicionais, os coeficientes da combinacao linear das res-tricoes, sao chamados de multiplicadores de Lagrange. Usando notacaovetorial para estes reais λi, e para as restricoes obtem-se um conceito formalda Lagrangeana:

L : IRn × IRt −→ IR

(x, λ) 7→ L(x, λ) = f(x)− λTC(x)

onde λ = [λ1 λ2 · · · λt]T ∈ IRt e o vetor dos multiplicadores de Lagrange eC(x) e a matriz t×1 das restricoes. As derivadas parciais de primeira ordemda Lagrangeana sao

∂xL(x, λ) = ∇f(x)−

t∑

i=1

λi∇ci(x) = g(x)−t∑

i=1

λiai(x)

= g(x)− [a1(x) a2(x) · · · at(x) ]λ

= g(x)− AT (x)λ

∂λL(x, λ) = C(x)

152

Page 159: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

A derivada parcial de segunda ordem, com relacao a x da Lagrangeana e

∂2

∂x2L(x, λ) = ∇2f(x)−

t∑

i=1

λi∇2ci(x)

= G(x)−t∑

i=1

λiGci(x) = W (x, λ)

Esta matriz W (x, λ), com algum abuso de notacao, e chamada de Hes-siana da Lagrangeana. E necessario esclarecer o porque deste abuso: aHessiana real da Lagrangeana, ∇2L(x, λ), leva em conta as derivadas parci-ais de segunda ordem de L com relacao a x e λ, sendo portanto diferente deW (x, λ). Ja e possıvel enunciar o primeiro teorema geral para este caso.Mesmo sem quaiquer demonstracoes formais, toda a intuicao acumuladadesde o caso linear, relacionando as solucoes otimizadoras com tangenciaentre curvas de nıvel e restricoes, ajuda a aceitar com naturalidade estesresultados.

Teorema 7.2.1 Condicoes Necessarias de Otimalidade, v I. Su-pondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . t, suficien-temente suaves e sendo x∗ ∈ IRn uma solucao local do PORNLI, entao

1. C(x∗) = 0

2. ZT (x∗)g(x∗) = 0

A segunda condicao pode ser interpretada como: o gradiente projetadose anula na solucao x∗. Ou entao, o gradiente de f deve ser perpendicularas tangentes comuns, porque as curvas de nıvel e as restricoes devem sertangentes. Transpondo esta condicao leva a

gT (x∗)Z(x∗) = 0

e como, supondo regularidade de x∗, A(x∗)Z(x∗) = 0, entao gT (x∗) e umacombinacao linear das linhas de A(x∗), ou, de modo equivalente, o gradiente“normal” g(x∗) e uma combinacao linear das colunas de AT (x∗). Isto podeser expresso de modo formal:

ZT (x∗)g(x∗) = 0 ⇐⇒ ∃λ∗ ∈ IRt | g(x∗) = AT (x∗)λ∗

o que permite estabelecer as Condicoes Necessarias de uma outra forma, ondenao aparece o gradiente projetado.

153

Page 160: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Teorema 7.2.2 Condicoes Necessarias de Otimalidade, v II. Su-pondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . t, suficiente-mente suaves e sendo x∗ ∈ IRn uma solucao local do PORNLI, entao

1. C(x∗) = 0

2. ∃λ∗ ∈ IRt | g(x∗) = AT (x∗)λ∗

Estas condicoes envolvem as restricoes e a funcao objetivo; a Lagrangeanatambem. Lembrando as derivadas de L deduzidas acima e facil concluir que

C(x∗) = 0 ⇐⇒ ∂

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

∃λ∗ | g(x∗) = AT (x∗)λ∗ ⇐⇒ ∂

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

e isto permite uma terceira versao, comoda e elegante, das CNOs:

Teorema 7.2.3 Condicoes Necessarias de Otimalidade, v III. Su-pondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . t, suficiente-mente suaves e sendo x∗ ∈ IRn uma solucao local do PORNLI, entao

1. ∇L(x∗, λ∗) = 0 para algum λ∗ ∈ IRt

Disto se conclui que as solucoes do PORNLI sao pontos estacionariosda Lagrangeana! Um problema de minimizacao com restricoes pode serauxiliado por um sem restricoes, uma consequencia notavel da Lagrange-ana. E preciso deixar claro que nao se trata aqui de minimizar L(x, λ), poisseus mınimos ou maximos podem nem mesmo existir, mas apenas de utili-zar seus pontos estacionarios como candidatos a solucoes do problema comrestricoes.

Como sempre, as condicoes necessarias fornecem um filtro inicial queseleciona os possıveis candidatos, os unicos pontos que tem chance de sersolucao. Para efetivamente eleger as solucoes definitivas devem entrar emcena as CSO, condicoes suficientes de otimalidade, ja na forma elegante daLagrangeana.

Teorema 7.2.4 Condicoes Suficientes de Otimalidade. Supondo afuncao objetivo f e as restricoes ci, para i = 1, 2 . . . t, suficientemente sua-ves, seja x∗ ∈ IRn tal que

1. ∇L(x∗, λ∗) = 0 para algum λ∗ ∈ IRt

2. ZT (x∗)W (x∗, λ∗)Z(x∗) > 0

154

Page 161: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Entao x∗ sera uma solucao local do RNLI.

A matriz ZT (x)W (x, λ)Z(x) e a Hessiana em x (ou Hessiana da Lagran-geana) projetada. E importante notar que (x∗, λ∗) e um ponto estacionarioda Lagrangeana L(x, λ) — pela condicao 1. — mas nao necessariamente ummınimo dela!

Exemplo 7.2.2 Minimizar uma quadratica no IR2, com uma restricao naolinear de igualdade:

f(x) = (1/2)xT

[

5 33 2

]

x− (1/2)xT

[

117

]

s.a. x21 − x2 = 0

A restricao, tambem quadratica, fornece

c = x21−x2, ∇c = a(x) =

[

2x1

−1

]

, A(x) = [2x1 −1], Z(x) =

[

12x1

]

.

A Lagrangeana e

L(x, λ) = f(x)− λc(x) = f(x)− 1

2xT

[

2λ 00 0

]

x+ xT

[

]

.

O calculo de suas derivadas parciais leva a

∂L

∂x1= (5− 2λ)x1 + 3x2 −

11

2,

∂L

∂x2= 3x1 + 2x2 −

7

2+ λ,

∂L

∂λ= x2 − x2

1,

de onde se pode formar o gradiente. Os pontos estacionarios da Lagrangeanasao obtidos igualando as expressao acima a zero:

P e1 = (−2.20, 4.84, 0.42), P e

2 = (−0.75, 0.56, 4.63),

P e3 = (0.75, 0.56, 0.13).

Para usar a condicao de suficienciado PGORNLI e preciso calcular Hp,a Hessiana em x (ou Hessiana da Lagrangeana) projetada

Hp = ZT (x)W (x, λ)Z(x) = · · · = 8x21 + 12x1 − 2λ+ 5

Aplicando aos pontos estacionarios da Lagrangeana:

Hp(Pe1 ) = 16.48, Hp(P

e2 ) = −8.76, Hp(P

e3 ) = 18.24.

155

Page 162: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

f(x,y) 0c(x,y) 0

-6 -4 -2 0 2 4 6

eixo x1

-6

-4

-2

0

2

4

6

8

10

eixo

x2

Figura 7.6: Uma curva de nıvel e a restricao,no IR2..

Percebe-se que as tres tangencias indicadas pelos PEs dao origem a doismınimos do RNLI. Para visualizar estas tangencias e possıvel plotar graficosno IR2, como se mostra na figura 7.6.

Sabendo que as outras curvas de nıvel sao elipses “paralelas” a mostradaem verde, e facil perceber como se dao as tangencias.

Os pontos estacionarios da Lagrangeana levam aos mınimos da funcaoobjetivo f , como visto. Estes PEs serao tambem mınimos da Lagrangeana,como se poderia supor? A resposta e nao, serao selas, os tres!

7.3 Restricoes Nao-Lineares de Desigualdade

Este e o caso mais completo e geral, sem qualquer particularizacao na funcaoobjetivo ou nas restricoes, levando ao seguinte problema, abreviadamentechamado de PGORNLD ou apenas ORNLD ou RNLD

min f(x) x ∈ IRn s.a. ci(x) ≥ 0; i = 1, 2, . . . m

que admite uma formulacao matricial quando as restricoes sao acomodadasem um vetor C(x):

min f(x) x ∈ IRn s.a. C(x) ≥ 0

onde C(x) = [ c1(x) c2(x) · · · cm(x) ]T ∈ IRm. Uma visita ao caso dasrestricoes lineares, nas secoes 5.3 e 5.4, ajuda, pois aqueles sao casos parti-culares deste, e tambem agora deve-se considerar pontos internos “puros” ou

156

Page 163: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

que tocam as fronteiras, restricoes ativas, etc. A figura 7.7 ilustra, no IR2, aslinhas, nao necessariamente retas, de duas restricoes; sao mostradas tambemduas normais de entrada na Regiao Viavel RV.

Regiao proibida

c1(x) = 0

c2(x) = 0

✠a2✲a1

RV

Figura 7.7: RV para duas restricoes nao lineares de desigualdade

E sempre bom ter em mente que tanto a funcao objetivo f quanto asrestricoes ci, i = 1, 2 . . . m sao funcoes do IRn em IR suficientemente suaves.As solucoes do PGORNLD podem ser internas ou tocar as fronteiras. Ateoria irrestrita ja apresentada cobre completamente os casos de solucoes in-ternas. Como a pratica mostra que, normalmente, ha uma ou mais restricoesativas nas solucoes, ha que se tratar com detalhes da interessante teoria deotimizacao nas fronteiras.

7.3.1 Geometria da funcao objetivo e das restricoes

Os conceitos a seguir, relacionados a funcao objetivo sao basicos e ja foramapresentados anteriormente neste texto; foram aqui colocados para reforcara notacao e facilitar a leitura.

Gradiente de f em x: . . . . . . . . . . . . . . . . . . . . . . . . . . . . g(x) = ∇f(x) ∈ IRn

Hessiana de f em x: . . . . . . . . . . . . . . . . . . . . . . . . . . G(x) = ∇2f(x) ∈ IRn×n

Direcao de descida em x: . . . . . . . . . . . . d ∈ IRn ∋ gT (x)d = dTg(x) < 0

Direcao de descida maxima em x: . . . . . . . . . . dm = −g(x) = −∇f(x)

Cone de descida em x0: . . . . . . . . . . . . CDx0 =

{

p ∈ IRn | pTg(x0) < 0}

O cone de descida e o conjunto de todas ds direcoes que partem de umponto e levam, pelo menos para pequenos avancos, a valores menores da

157

Page 164: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

funcao objetivo como se percebe na expressao a seguir

CDx0 =

{

p ∈ IRn | f(x0 + αp) < f(x0) para algum α ∈ IR}

.

Os proximos conceitos se referem as restricoes e sao tambem basicos e jaconhecidos. As secoes 5.4.1, 5.4.2 e 7.2.1 trataram inicialmente destas ideias.

Gradiente da restricao i em x: . . . . . . . . . . . . . . . . . ai(x) = ∇ci(x) ∈ IRn

Hessiana da restricao i em x: . . . . . . . . . . . . . . Gci(x) = ∇2ci(x) ∈ IRn×n

Tangente a restricao i em x: . . . . . . . . p ∈ IRn ∋ pTai(x) = aTi (x)p = 0

Cone viavel em x0: . . CVx0 = {p ∈ IRn | f(x0 + αp) ∈ RV para α ∈ IR}

Direcao viavel em x0 na restricao i: . . . . d ∋ dTai(x0) = aT

i (x0)d > 0

Note-se que os gradientes ai apontam para dentro da RV: sao as normaisde entrada. As intuicoes sobre cones geradas nas secoes 5.4.1 e 5.4.2 conti-nuam validas aqui, com a diferenca de que agora as normais de entrada naRV (os gradientes ai das restricoes) variam de ponto a ponto. Lembrandoque para um ponto viavel x0 interno, no miolo da RV, CV

x0 = IRn, o espaco

todo; quando apenas a restricao i esta ativa em x0 o conceito de direcaoviavel ajuda a caracterizar o cone:

CVx0 =

{

p ∈ IRn | pTai(x) > 0}

;

quando duas restricoes i e j estao ativas no ponto de teste x0, como naintersecao entre as curvas na figura 7.7,

CVx0 =

{

p ∈ IRn | pTai(x) > 0 e pTaj(x) > 0}

.

O cone de descida viavel de um ponto de teste x0 engloba as direcoesviaveis que fazem decrescer a funcao objetivo: CDV

x0 = CD

x0 ∩ CV

x0 . Se

o ponto x0 esta no miolo da RV entao CVx0 = IRn e CDV

x0 = CD

x0 e tudo

se passa como num problema de otimizacao livre, quando nao ha restricoes.Quando o ponto de teste x0 esta na fronteira da RV e preciso saber emquantas restricoes ele toca. Deve-se, neste ponto, supor que a lista das mrestricoes ci e reordenada de modo que aquelas ativas em x0 ocupem as tprimeiras posicoes. O CDV passa a ser caracterizado por

CDVx0 =

{

p ∈ IRn | pTg(x0) < 0 e pTai(x0) > 0; i = 1, 2, . . . t

}

.

158

Page 165: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Como visto na secao 5.4.2, se existe um cone de descida viavel partindode um ponto qualquer, este ponto nao e solucao de PORNLD; em outraspalavras, nao ha CDV fincado nas solucoes do problema, ou, em sımbolos

x∗ ∈ IRn e solucao do PGORLD ⇐⇒ CDVx∗ = {0} .

Usando a caracterizacao dos CDVs logo acima e possıvel reescrever estacondicao de existencia na seguinte forma: o ponto x∗ ∈ IRn e solucao doPGORLD se e somente se

6 ∃p ∈ IRn ∋ pTg(x∗) < 0 e pTai(x∗) > 0 para i = 1, 2, . . . t.

O proximo e um resultado sobre cones, classico de algebra linear, quepode ser adaptado para este problema vetorial no IRn. Usando a notacaopertinente:

Lema 7.3.1 (Lema de Farkas) Dados g,a1,a2, . . .at ∈ IRn, e possıvelexpressar g = λ1a1 + λ2a2 + · · ·λtat para reais λi ≥ 0 se e somente se

6 ∃p ∈ IRn ∋ pTg < 0 e pTai ≥ 0 para i = 1, 2, . . . t.

Como ja aconteceu antes, no caso das restricoes lineares, esta secao deaspectos geometricos tem a finalidade de apresentar de um modo (espera-se!) intuitivo e natural, e sem demonstracoes formais elaboradas, fatos queaparecerao nos teoremas proximos. Em outras palavras, as CNOs (condicoesnecessarias de otimizacao) e as CSOs (condicoes suficientes) ainda serao apre-sentadas, mas o material desta secao permitira aceita-las e entende-las bem.

7.3.2 Algebra do PGORNLD

Um ponto viavel x pode tocar simultaneamente em t restricoes, 1 ≤ t ≤m ≤ n; sendo ai(x) i = 1, 2, . . . t os gradientes dessas restricoes no ponto, amatriz das normais de entrada ou das restricoes ativas e definida como

aT1 (x)

aT2 (x)...

aTt (x)

= A(x) ∈ IRt×n

O conceito de tangentes simultaneas e a inicial estranheza que ele podeprovocar ja foram comentados anteriormente. Para o presente caso, umatangente simultanea as t restricoes ativas em x e uma direcao p ∈ IRn

tal que A(x)p = 0. Um ponto viavel x sera regular quando o posto de sua

159

Page 166: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

matriz de restricoes ativas for completo: ρ[A(x)] = t ou, em outras palavras,as linhas de A(x) sao linearmente independentes.

Para x ∈ IRn viavel e regular havera n− t tangentes simultaneas linear-mente independents, pois ρ[A(x)] = t implica que ker[A(x)], o espaco nulo(kernel) da matriz A(x), tem dimensao n− t. Sejam entao p1(x), p2(x) . . .pn−t(x) vetores do IRn que formam uma base para ker[A(x)]; com eles seforma a matriz das tangentes simultaneas as t restricoes ativas em x:

[ p1(x) p2(x) . . . pn−t(x) ] = Z(x) ∈ IRn×(n−t).

Uma tangente simultanea qualquer as t restricoes ativas em x e um vetordo IRn que pode ser expresso como p = Z(x)α para α ∈ IRn−t.

Uma maneira de olhar ao mesmo tempo para a funcao objetivo e para asrestricoes e atraves da Lagrangeana, uma funcao muito rica, pois traz emsi informacoes sobre f e sobre as ci. Sendo x um ponto viavel no qual as tprimeiras restricoes estao ativas, a Lagrangeana truncada e uma aplicacaode IRn × IRt em IR, definida como

Lt(x, λ1, λ2, . . . λt) = f(x)− λ1c1(x)− λ2c2(x)− · · · λtct(x).

O vetor das restricoes ativas e C(x) = [ c1(x) c2(x) · · · ct(x) ]T ∈ IRt;

como os escalares λi podem ser agrupados em um vetor λ = [λ1 λ2 · · · λt ]T ∈

IRt a Lagrangeana truncada admite uma expressao mais compacta

Lt(x, λ) = f(x)− λT C(x)

Algumas vezes a Lagrangeana pode ser apresentada com sinais positivosna combinacao linear das restricoes. As derivadas parciais da Lagrangeanatruncada sao:

∂xLt(x, λ) = ∇f(x)−

t∑

i=1

λi∇ci(x)

= g(x)−t∑

i=1

λiai(x) = g(x)− ATλ

∂λLt(x, λ) = C(x)

Derivando pela segunda vez com relacao a x aparece o que se chama, naomuito propriamente, de Hessiana da Lagrangeana truncada:

∂2

∂x2Lt(x, λ) = G(x)−

t∑

i=1

λiGci(x) = Wt(x, λ)

160

Page 167: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Para a obtencao da Hessiana real, seria necessario derivar tambem comrelacao a λ. Assim, o melhor nome para Wt(x, λ) seria Hessiana parcial,ou em x, da Lagrangeana truncada. Os conceitos apresentados nos ultimosparagrafos serao agora resumidos para facilitar futuras consultas a eles.

Restricoes em x: . . . . . . . . . . . . . . . .C(x) = [c1(x) c2(x) · · · cm(x)]T ∈ IRm

Restricoes ativas em x: . . . . . . . . . . C(x) = [c1(x) c2(x) · · · ct(x)]T ∈ IRt

Normais de entrada em x: . . . A(x) = [a1(x) a2(x) · · · at(x)]T ∈ IRt×n

Tangentes simultaneas em x: . . . . . . .Z(x) ∈ IRn×(n−t) ∋ A(x)Z(x) = 0

Lagrangeana truncada em x: . . . . . . . . . . . . . . .Lt(x, λ) = f(x)− λT C(x)

Nada garante que as t restricoes ativas em um dado ponto x sejam asprimeiras das m restricoes listadas em C(x), mas e pratica comum supor queisso acontece. Se nao for o caso, sempre se pode reordenar a lista para queisso ocorra. Outro aspecto da lista acima: varias das grandezas tem sentidoapenas para pontos viaveis que encostam em pelo menos uma restricao, enem podem ser definidos para pontos internos, no miolo da RV.

Seguem os resultados mais fortes e importantes, as Condicoes de Otima-lidade para o PGORNLD. Virao sem demonstracoes formais e rigorosas, maspara compensar essa falha confia-se que as intuicoes previamente colocadassejam capazes de fazer os leitores aceitarem e entenderem de modo naturala fraseologia matematica.

Teorema 7.3.1 Condicoes Necessarias de Otimalidade – versao I.

Supondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . m, suficien-temente suaves, e sendo x∗ ∈ IRn uma solucao local do PGORNLD onde ast primeiras restricoes estao ativas, entao

1. C(x∗) ≥ 0; C(x∗) = 0 (condicao de viabilidade)

2. ∃λ∗ ∈ IRt | g(x∗) = AT (x∗)λ∗ (condicao de tangencia)

3. λ∗ ≥ 0 ou seja, λ∗i ≥ 0, ∀i = 1, 2, . . . t (mesmo sentido das normais).

As semelhancas com o caso de restricoes lineares sao fortes, os leitores de-vem comparar este resultado ao teorema 5.4.1. Como acontece com condicoesnecessarias em geral, este resultado pode ajudar a encontrar candidatos asolucao. O procedimento seria arduo: investigar as varias possibilidades derestricoes ativas em um dado x ∈ IRn para verificar se ele e candidato. Esco-lhidos os candidatos, como decidir sobre eles? com as condicoes suficientes,como sempre.

161

Page 168: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Teorema 7.3.2 Condicoes Suficientes de Otimalidade – versao I.

Supondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . m, suficien-temente suaves, e sendo x∗ ∈ IRn um ponto onde as t primeiras restricoesestao ativas, e para o qual

1. C(x∗) ≥ 0; C(x∗) = 0 (condicao de viabilidade)

2. ∃λ∗ ∈ IRt | g(x∗) = AT (x∗)λ∗ (condicao de tangencia)

3. λ∗ ≥ 0 ou seja, λ∗i ≥ 0, ∀i = 1, 2 . . . t (mesmo sentido das normais)

4. ZT (x∗)Wt(x∗, λ∗)Z(x∗) > 0 (condicao de segunda ordem)

entao x∗ sera uma solucao local para o PGORNLD.

A quarta condicao envolve a matriz das tangentes simultaneas Z e a Hes-siana em x da Lagrangeana truncada. As tres primeiras condicoes tambemsao necessarias, e podem assumir formatos diferentes, e talvez mais interes-santes, como se ve a partir de agora. As derivadas parciais da Lagrangeanatruncada sao, como ja mostrado,

∂xLt(x, λ) = g(x)− ATλ e

∂λLt(x, λ) = C(x).

Igualando estas duas expressoes a zero, percebe-se que as condicoes 1b)e 2) dos teoremas podem ser fundidas em uma unica condicao:

C(x∗) = 0

∃λ∗ ∋ g(x∗) = AT (x∗)λ∗

}

⇐⇒ ∃λ∗ ∈ IRt ∋ ∇Lt(x∗, λ∗) = 0

Um gradiente deve se anular . . . esta e a mais tradicional e conhecidacondicao de otimalidade de primeira ordem, derivar e igualar a zero. Aquitambem ela esta presente, em um problema bem mais sofisticado, com res-tricoes, agora empregando a Lagrangeana truncada. Uma nova versao dasCNO pode ser apresentada.

Teorema 7.3.3 Condicoes Necessarias de Otimalidade – versao

II. Supondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . m,suficientemente suaves, e sendo x∗ ∈ IRn uma solucao local do PGORNLDonde as t primeiras restricoes estao ativas, entao

1. C(x∗) ≥ 0 (condicao de viabilidade)

2. ∃λ∗ ∈ IRt | ∇Lt(x∗, λ∗) = 0 (condicao de tangencia)

162

Page 169: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

3. λ∗ ≥ 0 ou seja, λ∗i ≥ 0, ∀i = 1, 2, . . . t (mesmo sentido das normais).

A Lagrangeana usada nos ultimos resultados e chamada de truncada porlevar em conta apenas as t restricoes ativas; como se pode considerar queestas sao as primeiras da lista,

Lt(x, λ1, λ2, . . . λt) = f(x)− λ1c1(x)− · · · − λtct(x) = f(x)−t∑

i=1

λici(x).

A Lagrangeana plena, ou total, leva em conta todas as m restricoes

L(x, λ1, . . . λt, . . . λm) = f(x)−t∑

i=1

λici(x)−m∑

j=t+1

λjcj(x).

E imediato perceber, supondo restricoes independentes, como e o casoatual, as condicoes para haver igualdade entre as Lagrangeanas:

L(x, λ1, . . . λm) = Lt(x, λ1, . . . λt) ⇐⇒ λj = 0 para j = t+ 1, t+ 2, . . .m.

Seja entao um vetor λ = [λ1 · · ·λt λt+1 · · ·λm]T ∈ IRm e o produto

λTC(x) = λ1c1(x) + · · ·+ λtct(x) + λt+1ct+1(x) + · · ·+ λmcm(x).

Lembrando novamente que as m restricoes sao independentes, e supondoque no ponto viavel x as t primeiras restricoes estao ativas, entao e facil verque

λTC(x) = 0 ⇐⇒ λj = 0 para j = t+ 1, t+ 2, . . .m.

o que fornece condicoes para a igualdade das Lagrangeanas e permite esta-belecer o

Teorema 7.3.4 Condicoes Necessarias de Otimalidade – versao

III. Supondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . m,suficientemente suficientemente suaves, e sendo x∗ ∈ IRn uma solucao lo-cal do PGORNLD onde as t primeiras restricoes estao ativas, entao existeλ∗ ∈ IRm tal que

1. ∇L(x∗, λ∗) = 0 (condicao de primeira ordem)

2. λ∗ ≥ 0 ou λ∗i ≥ 0, i = 1, 2, . . . m (condicao de nao negatividade)

3. λ∗TC(x∗) = 0 (condicao de transversalidade)

4. C(x∗) ≥ 0 (condicao de viabilidade).

163

Page 170: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Embora equivalente as outras, esta terceira versao das condicoes ne-cessarias e mais elegante e concisa, pois a Lagrangeana total leva em contatodas as restricoes e nao apenas as ativas (lembrar que, agora, λ ∈ IRm).A condicao de transversalidade, tambem chamada de complementaridade,fica com a tarefa de atribuir multiplicadores de Lagrange nulos as restricoesinativas.

Teorema 7.3.5 Condicoes Suficientes de Otimalidade – versao II.

Supondo a funcao objetivo f e as restricoes ci, para i = 1, 2 . . . m, suficien-temente suaves, e sendo x∗ ∈ IRn um ponto onde as t primeiras restricoesestao ativas, e para o qual

1. ∇L(x∗, λ∗) = 0 (condicao de primeira ordem)

2. λ∗ ≥ 0 ou λ∗i ≥ 0, i = 1, 2, . . . m (condicao de nao negatividade)

3. λ∗TC(x∗) = 0 (condicao de transversalidade)

4. C(x∗) ≥ 0 (condicao de viabilidade)

5. ZT (x∗)Wt(x∗, λ∗)Z(x∗) > 0 (uma condicao de segunda ordem)

entao x∗ sera uma solucao local para o PGORNLD.

Estes teoremas sao chamados de condicoes KKT para homenagear Ka-resh, Kuhn e Tucker, pioneiros em seu estudo. E quase desnecessario comen-tar sobre a concisao, elegancia, beleza e importancia deles. Mas e quanto aaplicabilidade destas condicoes, o que dizer? Estes resultados sao o rigorosoalicerce de toda a teoria matematica de Otimizacao, mas podem ser usadospara efetivamente encontrar solucoes de problemas especıficos?

As condicoes necessarias podem ser usadas para selecionar candidatos asolucao: verificar se um dado xc ∈ IRn qualquer satisfaz as CNOs. Esteprocedimento seria longo e tedioso:

1. supondo xc interno, no miolo da RV, aplicaras condicoes irrestritas deotimizacao,

2. supondo que xc toca apenas na restricao i, para i = 1, 2, . . .m, usarC(x) = ci(x). Se xc satisfizer as CNO, ele e um ponto na restricao ide onde nao saem direcoes de descida viaveis, ou seja, um candidato;

3. supondo que xc toca apenas nas restricoes i e j para i, j = 1, 2, . . .m,montar a matriz C(x) = correspondente e testar, pelas CNO, se ele eou nao um candidato;

164

Page 171: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

4. supondo que xc toca simultaneamente em tres restricoes . . .

5. · · ·

E depois ainda viria a aplicacao das CSOs para garantir se candidatos saorealmente solucao do problema . . . Parece desoladoramente longo e tedioso,o que e fato, a menos de casos trivialmente simples. Estes sao motivos forteso suficiente para justificar o uso de metodos numericos.

7.4 Metodos numericos

A teoria de otimizacao vetorial com restricoes e bela, rigorosa, digna deser conhecida. Mas aceita-se com muita naturalidade o fato de que a suaaplicacao a situcoes praticas seja difıcil, problematica, quase impensavel.Abre-se no horizonte, amplo e convidativo, a rota, talvez unica, dos metodosnumericos.

O metodo de Rosen, apresentado na secao 5.5 para o caso linear, podeser generalizado para este caso; o gradiente deveria ser projetado nas tangen-tes simultaneas. A sua aplicabilidade e mais simples no caso das restricoeslineares porque estas se confundem com as tangentes simultaneas.

7.4.1 Metodo das direcoes viaveis

Tambem chamado de metodo de Zoutendijk, e da decada de 60 do seculopassado, mas ainda popular e robusto. O problema tratado e o mais geralpossıvel, o PGORNLD:

min f(x) x ∈ IRn s.a. C(x) ≥ 0

onde o vetor das restricoes e

C(x) = [ c1(x) c2(x) · · · cm(x) ]T ∈ IRm

e se supoe que as t primeiras restricoes estejam ativas em um ponto de testex. A base mais comum para as iteracoes de qualquer metodo numerico e

xk+1 = xk + αdk

que leva a importante questao: dado xk viavel, como encontrar o avancodk = d? Para entender a ideia de Zoutendijk, os conceitos de cones e direcoesserao relembrados.

165

Page 172: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Direcao de avanco.

Dada uma funcao real f , o conceito de direcao de descida em um ponto emuito natural, trata-se de uma direcao que leva a valores menores de f , pelomenos para quantidades de avanco pequenas. Em sımblolos, uma direcaod ∈ IRn e de descida em xk quando existe α real, possivelmente pequeno, talque f(xk + αd) < f(xk). O cone de descida em xk e o conjunto de todas asdirecoes de descida no ponto:

CDxk =

{

d ∈ IRn | ∃α ∈ IR ∋ f(xk + αd) < f(xk)}

.

O conceito de gradiente, e as suas propridades basicas permitem descreveruma direcao de descida de modo distinto: a direcao d em xk e de descidaquando e apenas quando dTg(xk) = gT (xk)d < 0, onde g(xk) = ∇f(xk). Aideia de cone de descida pode ser reescrita como

CDxk =

{

d ∈ IRn | dTg(xk) = gT (xk)d < 0)}

.

Uma direcao viavel associada a um ponto viavel em um problema deotimizacao pode ser definida formalmente: d em xk ∈ RV e viavel quando eapenas quando quando existe α real, possivelmente pequeno, tal que f(xk +αd) tambem pertence a RV. O cone viavel em xk e o conjunto de todas asdirecoes viaveis no ponto:

CVxk =

{

d ∈ IRn | ∃α ∈ IR ∋ f(xk + αd) ∈ RV}

Se o ponto viavel xk esta no miolo da RV, ou seja, nao toca em qualquerfronteira, seu cone viavel e o espaco todo: CV

xk = IRn. Quando apenas uma

restricao esta ativa em xk, a i-esima, o gradiente dessa restricao, designadopor ai(x

k), e a normal de entrada na RV. Propriedades do produto escalarpermitem dizer que a direcao d em xk e viavel quando e apenas quandodTai(x

k) = aTi (x

k)d > 0. Para o caso geral, em que as t primeiras restricoesestao ativa em xk, o cone viavel sera

CVxk =

{

d ∈ IRn | dTai(xk) = aT

i (xk)d > 0 para i = 0, 1, 2 . . . t

}

O cone de descida viavel em xk e a intersecao dos cones basicos acima:CDV

xk = CD ∩ CV, e uma direcao d em xk ∈ RV e de descida viavel

quando e apenas quando pertencer ao CDV. E claro que, em qualquer metodonumerico, a direcao de avanco escolhida d estara no CDV do ponto.

A ideia central do metodo das Direcoes Viaveis e baseada no conceito deDVD, ou direcao de descida viavel. Pelo exposto nos paragrafos anteriores,

166

Page 173: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

e considerando direcoes d e pontos x como elementos do IRn, e facil aceitarque d e uma DVD em xk se e somente se

gTk d < 0 e − aT

i d < 0 ∀ i = 1, 2 . . . t,

ou seja, os t + 1 produtos escalares acima devem ser negativos. Sendo gk

o gradiente da funcao objetivo no ponto viavel xk ∈ IRn, e d ∈ IRn umadirecao qualquer, os t+ 1 valores reais gT

k d,−aT1 d,−aT

2 d, · · · −aTt d formam

um conjunto finito que, garantidamente, possui um elemento maximo

γ∗ = max{

gTk d,−aT

1 d,−aT2 d, · · · − aT

t d}

.

A patir disto, a caracterizacao das DVDs e imediata:

d ∈ IRn e uma DVD ⇐⇒ γ∗ < 0

Como encontrar γ∗? Se isto for simples, a tarefa de decidir se uma dadad e DVD tambem sera simples. Maximizar, ou minimizar, um conjuntofinito de numeros reais pode nao ser muito facil; uma possıvel estrategiapara contornar essa dificuldade e apresentada a seguir. Seja o conjunto Γ,com infinitos elementos reais, definido por

Γ ={

γ ∈ IR | γ ≥ gTk d, γ ≥ −aT

1 d, γ ≥ −aT2 d . . . γ ≥ aT

t d}

.

Os leitores devem se convencer que o elemento mınimo deste conjuntoΓ e exatamente o elemento maximo do conjunto finito discutido acima:

γ∗ = min {γ ∈ Γ ⊂ IR} = max{

gTk d,−aT

1 d,−aT2 d, · · ·aT

t d}

Este raciocınio min−max pode ser muito util em uma serie de situacoes.Muitas vezes, encontrar extremos, maximos ou mınimos, de conjuntos comcardinalidade finita e difıcil e problematico; trabalhar em conjuntos com in-finitos elementos e mais facil, e e o que se tem feito na Otimizacao estudadaate este ponto, basta lembrar que as solucoes buscadas devem sempre per-tencer ao IRn. Para mostrar como, afinal, esta mudanca de problema ajuda aencontrar γ∗, seja d = [d1 d2 · · · dn]T um vetor livre no IRn e γ uma variavelreal. Sejam ainda a funcao

h : IRn+1 → IR definida por h(d, γ) = 0d1 + 0d2 + · · · 0dn + γ,

e o seguinte problema de Otimizacao:

min h(d, γ) s.a. γ ≥ gTk d, γ ≥ −aT

1 d, γ ≥ −aT2 d . . . γ ≥ aT

t d.

167

Page 174: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Este e um PPL, um problema de Programacao Linear tradicional, quepode ser resolvido sem dificuldades, por um metodo qualquer dentre muitos.Como h(d, γ) = γ, isto levaria a γ∗, exatamente o que se desejava! Tendoem maos a solucao d∗ e γ∗ do PPL, e facil decidir:

γ∗ < 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d∗ e uma DVD otima

γ∗ > 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . nao existe DVD em xk

γ∗ = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xk e KKT !!!

A ultima linha se explica por ser d = 0 uma DVD.

Quantidade de avanco.

Como visto no procedimento da busca linear, ou unidimendional, dados xk

e d no IRn, o valor da funcao objetivo no ponto xk+1 e uma funcao escalarda quantidade de avanco α:

f(xk+1) = f(xk + αd) = f(α)

O valor de cada uma das m restricoes em xk+1, usando o mesmo ra-ciocınio, tambem sera uma funcao escalar da quantidade de avanco α:

ci(xk+1) = ci(x

k + αd) = ci(α) ∀i = 1, 2, . . .m

Neste ponto, e possıvel definir o problema da Busca Unidimensional comRestricoes, uma maneira otima para o calculo do avanco α:

min f(α) α ∈ IR s.a. c1(α) ≥ 0, c2(α) ≥ 0, · · · cm(α) ≥ 0.

A ideia de Zouten para atacar este problema e encontrar o real α tal quexk + αd encosta na restricao mais proxima. A figura 7.8 ilustra a ideia.

Como fazer isto? Nos casos cobertos pelo metodo de Rosen era facil, asrestricoes eram lineares. Outra situacao camarada acontece quando, alemdas ci(x) tradicionais, funcoes possivelmente complicadas, ha tambem res-tricoes simples e diretas. Em um destes casos, cada uma das componentes dovetor x pertence a um intervalo real bem determinado: mi ≤ xi ≤ Mi, ∀i =1, 2, . . . n. Estes limites mınimos e maximos para as componentes sao empi-lhados nos vetores xm = [m1 m2 · · · mn]

T e xM = [M1 M2 · · · Mn]T e as

restricoes diretas ou limites diretos sobre x sao designadas por xm ≤ x ≤ xM .Supondo entao que, alem das restricoes ci(x) costumeiras, ha tambem

restricoes diretas xm ≤ x ≤ xM no problema de otimizacao, eis a ideia basica:

e possıvel encontrar α1 tal que xk + α1d apenas encosta em xM ;

168

Page 175: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

✠a2✲a1

RV

c1(x) = 0

c2(x) = 0xk✿d

α

Figura 7.8: Ideia de Zouten: avanco ate encostar na restricao mais proxima.

isto garante que se tera andado o maximo possıvel em d. Em seguida, asoutras restricoes sao aplicadas no novo ponto, dando origem aos m reais:

c1(xk + α1d) = c11, c2(x

k + α1d) = c12, · · · cm(xk + α1d) = c1m;

Mais uma vez uma minimizacao de um conjunto finito de reais entra em cena:

min{

c1i para i = 1, 2, . . .m}

= min{

c11 c12 · · · c1m}

= c1∗

Pode-se considerar que

c1∗ > 0 significa que α = α1 entao fim da etapa!

c1∗ ≤ 0 significa que algumas ci foram violadas. . .

e, a quantidade de avanco foi excessiva . . . Uma das possibilidades para seandar menos e usar bissecao: α2 = α1/2 e testar de novo. No final, xk + αdtocou na ci mais proxima!

As iteracoes ainda nao terminaram. . . para encontrar o avanco efetivo αk,a derivada direcional dTg(xT + αd) = f ′(α) deve ser calculada, levando aostestes

f ′(α) < 0 significa que α = αk = α e o algoritmo prossegue

f ′(α) > 0 significa que ∃α ∈ [0 α] ∋ f ′(α) = 0 entao busca-se α,

por bissecao, por exemplo, e o algoritmo prossegue!

7.4.2 Outros metodos

O metodo de Zoutendjik tem um desempenho considerado fraco para res-tricoes ci(x) nao lineares de igualdade; para cuidar disto pode-se utilizar ometodo do Gradiente Reduzido Generalizado — GRG:

min f(x) x ∈ IRn s.a. c1(x) = 0, c2(x) = 0, . . . ct(x) = 0,xm ≤ x ≤ xM

169

Page 176: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Mais detalhes nao serao vistos aqui. Para tambem levar em conta asrestricoes adicionais de desigualdade, cj(x) ≥ 0 j = t + 1, . . .m deve-seconsiderar que

cj(x) ≥ 0 =⇒ ∃ xn+1 ≥ 0; | cj(x)− xn+1 = 0

onde entra em uso uma variavel real extra xn+1 chamada de variavel defolga. Isto permite transformar as restricoes ci(x) de desigualdade emrelacoes de igualdade. Esta e uma tecnica astuta, mas aumenta a ordemdo problema . . . Para transformar apenas uma restricao, o espaco de traba-lho passaria do IRn ao IRn+1. Se o metodo numerico for realmente bom, devecompensar!

Pode-se ainda considerar algoritmos de Programacao Quadratica Se-quencial — SQP, que utilizam metodos de Newton adaptados aos pro-blemas KKT; uma de suas caracterısticas e que o inicializador x0 nao pre-cisa ser viavel. Eles apresentam convergencia rapida e garantida (sob certascondicoes. Como um exemplo desta classe pode-se citar o metodo de Pheni-chny Danilin (1978).

7.5 Penalidades e Barreiras

Uma ideia importante para o entendimento dos mecanismos internos doPGORNLD

min f(x) x ∈ IRn s.a. x ∈ RV ⊂ IRn

e a Lagrangeana L(x, λ), cujos pontos estacionarios sao candidatos a solucaodo problema restrito. A Lagrangeana tem natureza hıbrida, pois traz em si,ao mesmo tempo, informacoes sobre os pilares basicos da otimizacao, a funcaoobjetivo, que se deseja minimizar, e as restricoes que devem ser respeitadas.Esta capacidade, certamente, ajuda a explicar o seu poder.

7.5.1 Metodos de penalidades

Ha outras ideias para se obter funcoes capazes de armazenar em si mesmasinformacoes sobre a funcao objetivo f(x) e sobre as restricoes ci(x). Umexemplo inportante sao as funcoes penalidade ou multa. Uma funcao p(x)e de multa ou penalidade se

p(x) = 0 quando x ∈ RVp(x) > 0 quando x 6∈ RV

p(x) cresce quando x se afasta da RV

170

Page 177: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

Definida uma penalidade p(x), a ideia e construir a funcao ponderadat(x) = f(x)+ rp(x), onde r ∈ IR+ (conjunto dos reais positivos) e minimiza-la, livremente, para valores altos de r.

Exemplo 7.5.1 O problema de otimizacao

min f(x) = −2x+ 15 x ∈ IR s.a. c(x) = 5− x ≥ 0

e escalar, e isto permite uma analise visual. A funcao

p(x) = (min[0, c(x)])2 =

{

0 x ∈ RV c(x) ≥ 0c2(x) x 6∈ RV c(x) < 0

apresenta os requisitos acima, como os leitores podem verificar, logo e umafuncao penalidade. A figura 7.9 mostra as funcoes objetivo, em azul, e pe-nalidade, em magenta. A regiao viavel esta a esquerda de 5 e a solucao x∗ ede obtencao imediata, na extremidade da RV.

x

f(x)

5 10 15

5

10

15

RV

x∗

p(x)

Figura 7.9: Funcoes objetivo e penalidade escalares.

Como p(x) e uma funcao penalidade, t(x) = f(x) + rp(x) onde r ∈ IR+

assume valores mais altos quanto mais se afasta da RV, e assim pode-se suporque seus mınimos livres estejam associados aos mınimos restritos de f . Afigura 7.10 ilustra a situacao para alguns valores de r.

Nota-se que, quando r cresce, o mınimo livre de t tende ao mınimo res-trito de f . Calculando analiticamente:

t(x) = 15− 2x+ r(x− 5)2 =⇒ t′(x) = 2r(x− 5)− 2

donde o ponto estacionario de t(x) sera

x∗ = 5 +1

r=⇒ lim

r→∞x∗ = 5.

Para usar a Lagrangeana, os pontos estacionarios de L(x.λ) = f(x) −λ(x) = −2x + 15 − λ(5 − x) seriam encontrados, no IR2, e depois testados,

171

Page 178: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

t(x) = f(x) na RVf(x) + rc2(x) fora da RV

x

f(x)

5 10 15

5

10

15

r = 0.1

r = 0.2

r = 0.4

Figura 7.10: Mınimos livres da funcao ponderada t(x).

pela condicao KKT de suficiencia. Neste caso escalar, tudo e muito simples,e considercoes analıticas diretas levariam ao mesmo resultado acima. E bomlembrar que, em casos menos triviais, os metodos numericos de otimizacaoque certamente se usaria, levam aos mınimos da Lagrangeana, ou a apenasalguns deles.

A teoria desenvolvida garante que os pontos estcionarios de L(x, λ) saoapenas candidatos a solucao do problema restrito, devendo ser ainda sub-metidos a condicao suficiente. Assim, por estranho que pareca, mınimosobtidos para a Lagrangeana nao podem ser considerados, sem trabalho adi-cional, solucoes do PGORNLD; pode nao haver qualquer relacao entre estespontos e os procurados mınimos do problema restrito. Pode mesmo acontecerde a Lagrangeana nao apresentar mınimos ou maximos, apenas selas comopontos estacionarios. . .

Quando penalidades sao usadas, nao ha aumento na ordem do espaco detrabalho, e o objetivo sao os mınimos da funcao ponderada e nao seus pontosestacionarios. Assim. os metodos numericos empregados dariam origem aosmınimos de t(x) que, apos levar ao limite r → ∞, fornecem os mınimosrestritos procurados.

Os comportamentos apontados acima sao gerais, como se poderia demons-trar.

Em resumo, o metodo das penalidades e: sendo p(x) uma funcao penali-dade para o problema

min f(x) x ∈ IRn s.a. x ∈ RV ⊂ IRn

deve-se efetuar uma minimizacao livre da funcao ponderada t(x) = f(x) +rc(x), onde r ∈ IR+,

min t(x) = f(x) + rc(x) x ∈ IRn

172

Page 179: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

e fazer r → ∞. Este procedimento pode ser chamado de metodo ideal ouanalıtico. Um metodo real envolve minimizar a funcao ponderada t(x) =f(x) + rp(x), sem restricoes, para um valor alto de r. Um inconvenientebastante comum e o aparecimento de dados numercos mal condicionados.Em seguida, algumas maneiras para corrigir este fato.

Metodo das penalidades exteriores.

Para um valor inicial r0 ∈ IR+, a funcao ponderada t0(x) = f(x) + r0p(x) eminimizada livremente, por um metodo qualquer

r0 ∈ IR+ min t0(x) = f(x) + r0p(x)

levando a uma solucao x∗0. Para r1 > r0, a funcao ponderada t1(x) =

f(x) + r1p(x) e minimizada livremente, por um metodo qualquer, partindodo inicializador x∗

0

r0 < r1 ∈ IR+ min t1(x) = f(x) + r1p(x)

levando a uma solucao x∗1. Para r2 > r1 . . . e assim se monta um processo

iterativo.

Metodos sem derivadas

Embora os conceitos apresentados neste paragrafo sejam gerais, para umamelhor compreensao deles, os leitores sao aconselhados a considerer IRn =IR2, ou seja, o espaco de trabalho e o plano. Restricoes de igualdade levam,intuitivamente, a regioes viaveis compostas por linhas e que podem ser consi-deradas “estreitas”. Isto pode simplificar as coisas nas aplicacoes do metodode penalidades. A figura 7.11 representa um PGORNLI no IR2.

x1

x2

c(x) = 0

Figura 7.11: Restricao de igualdadea e curvas de nıvel no IR2.

Uma escolha simples de funcao penalidade seria p(x) = c2(x), levandoa um vale longo e estreito, com mınimos fracos e nulos. Somando f(x) a

173

Page 180: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

isto chega-se a funcao ponderada t(x) = f(x) + rc2(x) que dara origem amınimos isolados e fortes.

Exemplo 7.5.2 Este e o exemplo 7.2.2, ja analisado anteriormente.

min f(x) =1

2

(

xT

[

5 33 2

]

x− xT

[

117

])

s.a. c(x) = x21 − x2 = 0

A Lagrangeana L(x, λ) tem 3 pontos estacionarios P e1 = (−2.20, 4.84, 0.42), P e

2 =(−0.75, 0.56, 4.63), P e

3 = (0.75, 0.56, 0.13), que sao pontos de sela, ou seja,nao apresenta maximos ou mınimos. No entanto, estes PEs geram 3 tangenciasno RNLI: P e

1 e P e3 geram mınimos e P e

2 gera maximo. No exemplo citado,ha graficos no IR2 para conferir as tangencias.

Escolhendo p(x) = c2(x) = (x12 − x2)

2,

t(x) = f(x)+rc2(x) =1

2

(

5x12 + 6x1x2 + 2x2

2 − 11x1 − 7x2

)

+r(

x12 − x2

)

2

O calculo do gradiente levaria a

∇t(x) = 0 ⇐⇒{

8x13 + 18x1

2 − 4x1 − 11 + ρ(x1 − 0.5) = 0x2 = (4x1

2 − 6ρx1 + 7ρ)/(4 + 4ρ) ; ρ = 1/r

onde a situacao ideal e ρ = 0, equivalente a r → ∞. A solucao analıticadestas equacoes nao e muito simples, mas um metodo numerico qualquerlevaria com facilidade aos mınimos (e maximos) desejados do RNLI.

No caso geral, com restricoes de igualdade e de desigualdade,

min f(x) x ∈ IRn s.a.

{

ci(x) = 0 i = 0, 1, . . . lci(x) ≥ 0 i = l, l + 1, . . .m

costuma-se usar a funcao penalidade quadratica:

p(x) = rl∑

i=1

ci2(x) + r

m∑

l+1

(min[0, ci(x)])2

Seria tambem possıvel encontrar funcoes penalidade de outros tipos. Osmetodos com funcoes penalidade sao uma excelente alternativa para proble-mas gerais de otimizacao com restricoes.

174

Page 181: Otimiza¸c˜ao - Federal University of Rio de Janeironero/notasotim.pdfOtimiza¸c˜ao: Aspectos Te´oricos e M´etodos Num´ericos Notas de aulas baseadas em: • Practical Optimization

7.5.2 Metodos de barreiras

Ainda outra ideia para o mesmo objetivo, resolver p PGORNLD

min f(x) x ∈ IRn s.a. x ∈ RV ⊂ IRn.

Assim como acontece com a Lagrangeana L(x, λ) e com as penalidadesp(x), uma barreira e uma funcao unica, cuja otimizacao livre ajuda na buscadas solucoes do problema restrito. Os metodos de barreira ou de pontosinteriores, sao apenas para restricoes de desigualdade; neles, partindo-se depontos interiores, chega-se ao otimo.

Uma funcao b(x) e de barreira se

b(x) e contınua em RVb(x) ≥ 0 ∀ x ∈ RV

b(x) → ∞ quando x → RV

Uma solucao conhecida e

funcao barreira inversa: b(x) =m∑

i=1

1

ci(x)

Definida uma barreira b(x), a ideia e construir a funcao ponderada t(x) =f(x) + r−1b(x), onde r ∈ IR+ (conjunto dos reais positivos) e minimiza-la, livremente, para valores altos de r. A dualidade com o metodo daspenalidades e clara.

7.6 Problemas basicos

7.7 Outras propostas

175