Вы находитесь на странице: 1из 146

ALGORITMOS DE DIREES VIVEIS PARA OTIMIZAO NO

DIFERENCIVEL

Mario Tanaka Filho

Tese de Doutorado apresentada ao Programa


de Ps-graduao em Engenharia Mecnica,
COPPE, da Universidade Federal do Rio
de Janeiro, como parte dos requisitos
necessrios obteno do ttulo de Doutor
em Engenharia Mecnica.
Orientadores: Jos Herskovits Norman
Anatoli Leontiev

Rio de Janeiro
Maro de 2011

ALGORITMOS DE DIREES VIVEIS PARA OTIMIZAO NO


DIFERENCIVEL
Mario Tanaka Filho
TESE SUBMETIDA AO CORPO DOCENTE DO INSTITUTO ALBERTO LUIZ
COIMBRA DE PS-GRADUAO E PESQUISA DE ENGENHARIA (COPPE)
DA UNIVERSIDADE FEDERAL DO RIO DE JANEIRO COMO PARTE DOS
REQUISITOS NECESSRIOS PARA A OBTENO DO GRAU DE DOUTOR
EM CINCIAS EM ENGENHARIA MECNICA.
Examinada por:

Prof. Jos Herskovits Norman, D.Ing.

Prof. Anatoli Leontiev, Ph.D.

Prof. Nestor Alberto Zouain Pereira, D.Sc.

Prof. Jean Rodolphe Roche , Ph.D.

Prof. Jos Mario Martnez, D.Sc.

RIO DE JANEIRO, RJ BRASIL


MARO DE 2011

Tanaka Filho, Mario


Algoritmos de Direes Viveis para Otimizao No
Diferencivel/Mario Tanaka Filho. Rio de Janeiro:
UFRJ/COPPE, 2011.
XII, 134 p.: il.; 29, 7cm.
Orientadores: Jos Herskovits Norman
Anatoli Leontiev
Tese (doutorado) UFRJ/COPPE/Programa de
Engenharia Mecnica, 2011.
Referncias Bibliogrcas: p. 110 116.
1. Otimizao no diferencivel.
2. Algoritmo de
direes viveis e ponto interior. 3. Mtodos de Plano de
corte. 4. Mtodos de Feixe. I. Norman , Jos Herskovits
et al. II. Universidade Federal do Rio de Janeiro, COPPE,
Programa de Engenharia Mecnica. III. Ttulo.

iii

A meu filho recm-nascido


LUCAS.
A meus pais, irmos
e a minha esposa Solange.

iv

Agradecimentos
A Deus, por permitir este momento to singular em minha vida.
Ao professor Jos Herskovits Norman pela orientao, amizade e conhecimentos
transmitidos ao longo da realizao deste trabalho, bem como, por seu exemplo
prossional e humano.
Ao Prof. Anatoli Leontiev pela orientao, por sua ateno ao me receber
quando ainda no tinha certeza de onde fazer o doutoramento e por me indicar
ao Laboratrio.
Aos Profs. Jean R. Roche (Nancy Universit, Frana) e Napsu Karmitsa
(University of Turku, Finlndia) pelo suporte, amizade e simpatia.
Aos professores, o pessoal do administrativo e amigos do Programa de Engenharia
Mecnica PEM-COOPE/UFRJ, sempre dispostos a ajudar e por proporcionar um
excelente ambiente de convvio.
Agradeo a meus pais: Mrio Tanaka e Djelma Neves Tanaka, por todo esforo e
dedicao em manter as condies necessrias para meus estudos. E portanto, hoje
sem dvida nenhuma, considero que este momento tambm deles.
A minha esposa, Solange Tanaka, por seu apoio, pela preocupao de sempre
tentar proporcionar um ambiente favorvel a meus estudos e por estar ao meu lado
me dando fora.
A famlia Penha: Sogro, sogra e cunhadas pelo constante incentivo.
A todos os colegas e amigos do Laboratrio OptimizE: Arminda, Alfredo Canelas,
Henry Corts, Miguel Aroztegui, Jorge Zerpa, Elmer, Pavel e Helena, Sandro,
Evandro e aos outros que passaram pelo Laboratrio, pelo agradvel e sempre
descontrado ambiente de estudo proporcionado.
Agradeo o auxlio nanceiro concedido pelo Conselho Nacional de
Desenvolvimento Cientco e Tecnolgico (CNPq), atravs das bolsas de doutorado
e Iniciao Cientca; A Coordenao de Aperfeioamento de Pessoal de Nvel
Superior (Capes), pela bolsa de Mestrado, fundamentais para o suporte de meus
estudos nestes longos anos de formao.

Resumo da Tese apresentada COPPE/UFRJ como parte dos requisitos necessrios


para a obteno do grau de Doutor em Cincias (D.Sc.)

ALGORITMOS DE DIREES VIVEIS PARA OTIMIZAO NO


DIFERENCIVEL

Mario Tanaka Filho


Maro/2011

Orientadores: Jos Herskovits Norman


Anatoli Leontiev
Programa: Engenharia Mecnica
Problemas de otimizao no diferencivel aparecem em muitas aplicaes
prticas, como por exemplo, em Mecnica, Economia e Controle timo. Contudo,
a aplicao direta de mtodos diferenciveis, ou seja, mtodos baseados em
informaes do gradiente, no recomendada devido a natureza no diferencivel
dos problemas. Com isso em vista, neste trabalho so apresentadas tcnicas para
a resoluo de trs problemas diferentes que envolvem funes no necessariamente
diferenciveis. Inicialmente, considera-se o caso convexo sem restries. Depois,
o mtodo estendido para abranger o caso no convexo, onde so consideradas
funes localmente Lipschitz contnuas. Em seguida, introduz-se o problema convexo
com restries convexas no diferenciveis. So tambm apresentados os resultados
numricos da experincia computacional preliminar e uma aplicao em Otimizao
Topolgica de estruturas reticuladas robustas.

vi

Abstract of Thesis presented to COPPE/UFRJ as a partial fulllment of the


requirements for the degree of Doctor of Science (D.Sc.)

FEASIBLE DIRECTIONS ALGORITHMS FOR NONSMOOTH


OPTIMIZATION

Mario Tanaka Filho


March/2011

Advisors: Jos Herskovits Norman


Anatoli Leontiev
Department: Mechanical Engineering
Nonsmooth optimization problems appear in many practical applications, such
as in Mechanics, Economics, Optimal Control and Engineering. However, the direct
application of methods dierentiable, i.e., methods based on gradient information,
is not recommended due to the nonsmooth nature of the problems. With this in
mind, this study presents techniques for solving three dierent problems involving
functions not necessarily dierentiable. Initially, we consider the convex case
without restrictions. Then the method is extended to cover the case non-convex,
where they are considered locally Lipschitz continuous functions. Then introduces
the problem convex with convex constraints not dierentiable. We also present
numerical results of preliminary computational experience and an application on
Robust Truss Topology Design.

vii

Sumrio
Lista de Figuras

Lista de Tabelas

xi

Lista de Smbolos

xii

Introduo

1 Preliminares
1.1 Notaes e Denies Bsicas . . . . . . . . . . . . . .
1.2 Anlise No Diferencivel . . . . . . . . . . . . . . . .
1.3 Condies de Otimalidade . . . . . . . . . . . . . . . .
1.4 Otimizao Convexa No Diferencivel . . . . . . . . .
1.5 Otimizao No Convexa No Diferencivel . . . . . .
1.6 Otimizao Convexa No Diferencivel com Restries
1.7 Algorimo de Pontos Interiores e Direes Viveis . . . .

.
.
.
.
.
.
.

4
4
8
11
13
25
27
29

2 Algoritmo para Otimizao Convexa No Diferencivel


2.1 Mtodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Anlise da Convergncia . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Resultados Numricos . . . . . . . . . . . . . . . . . . . . . . . . . .

35
35
41
48

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

3 Algoritmo para Otimizao No Convexa e No Diferencivel


54
3.1 Mtodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2 Anlise da convergncia . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3 Resultados Numricos . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4 Uma Tcnica para Otimizao Restrita
4.1 Mtodo . . . . . . . . . . . . . . . . .
4.2 Anlise da Convergncia . . . . . . . .
4.3 Resultados Numricos . . . . . . . . .

viii

No
. . .
. . .
. . .

Diferencivel
74
. . . . . . . . . . . . . . 75
. . . . . . . . . . . . . . 82
. . . . . . . . . . . . . . 89

5 Otimizao Topolgica Robusta de Estruturas Reticuladas


93
5.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2 Modelos em Otimizao Topolgica . . . . . . . . . . . . . . . . . . . 94
5.3 Modelo de Otimizao Topolgica Robusta . . . . . . . . . . . . . . . 97
6 Concluses
106
6.1 Contribuies deste trabalho . . . . . . . . . . . . . . . . . . . . . . . 106
6.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Referncias Bibliogrficas

110

A Problemas Irrestritos
117
A.1 Problemas Teste Convexos . . . . . . . . . . . . . . . . . . . . . . . . 118
A.2 Problemas Teste No Convexos . . . . . . . . . . . . . . . . . . . . . 122
B Problemas Com Restrio
126
B.1 Problemas com restries . . . . . . . . . . . . . . . . . . . . . . . . . 127

ix

Lista de Figuras
1.1
1.2
1.3
1.4
1.5

Semi-continuidade interior do -subdiferencil . . . . . .


Direes de descida: caso diferencivel e no diferencivel
Iteraes do mtodo de planos de corte . . . . . . . . . .
Introduo de uma funo am quase horizontal . . . .
Direo de busca do FDIPA . . . . . . . . . . . . . . . .

2.1
2.2

Performance Proles: nmero de iteraes . . . . . . . . . . . . . . . 53


Performance Proles: nmero de avaliaes da funo . . . . . . . . 53

3.1
3.2

Encontrando o prximo iterado do Algoritmo. . . . . . . . . . . . . . 57


Determinao de um plano vivel. . . . . . . . . . . . . . . . . . . . . 58

5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10

Trelia do Exemplo 1. . . . . . . . . . . . . . . . . . . . . . . . . .
Estrutura tima obtida no Exemplo 1. . . . . . . . . . . . . . . . .
Exemplo 1 - Evoluo dos quatro maiores auto-valores. . . . . . . .
Trelia do Exemplo 2. . . . . . . . . . . . . . . . . . . . . . . . . .
Estrutura tima obtida no Exemplo 2. . . . . . . . . . . . . . . . .
Evoluo dos quatro maiores auto-valores do sistema (QQT , K(x)).
Estrutura tima obtida no Exemplo 3 . . . . . . . . . . . . . . . . .
Evoluo dos seis maiores autovalores do sistema (QQT , K(x)). . .
Estrutura tima obtida no Exemplo 4. . . . . . . . . . . . . . . . .
Evoluo dos seis maiores auto-valores do sistema (QQT , K(x)). . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

16
17
19
20
32

100
101
101
102
102
102
103
103
104
104

Lista de Tabelas
2.1
2.2
2.3
2.4
2.5

Tabela de Problemas . . . . . . . . . . . .
Solvers utilizados na comparao . . . . .
Resultados para o nmero de iteraes . .
Resultados para o nmero de avaliaes da
Resultados para o valor da funo objetivo

. . . .
. . . .
. . . .
funo
. . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

49
49
50
50
51

3.1
3.2
3.3

Problemas teste. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Solvers utilizados na comparao . . . . . . . . . . . . . . . . . . . . 72
Resultados da Experincia Numrica. . . . . . . . . . . . . . . . . . . 73

4.1
4.2
4.3

Problemas Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Resultados Preliminares do NFDCA . . . . . . . . . . . . . . . . . . . 92
Valores do RELACC . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.1
5.2

Resultados dos exemplos de otimizao. . . . . . . . . . . . . . . . . . 105


Volumes das barras de estrutura tima. . . . . . . . . . . . . . . . . . 105

A.1 Tabela de Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . 117


B.1 Problemas Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
B.2 parmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

xi

Lista de Smbolos
A, B, G

matrizes, p. 7

B(x, r)

Bola aberta de centro x e raio r, p. 4

NC (
x)

cone normal, p. 5

TC (
x)

cone tangente, p. 5

Rn

Espao Euclidiano n-dimensional, p. 4

conv S

fecho convexo de S, p. 5

f (x)

gradiente de f em x, p. 6

2 f (x)
f (x)

matriz Hessiana, p. 7
subdiferencial de f em x, p. 9

x, y

vetores (coluna), p. 4

xT

vetor transposto, p. 4

xT y

produto interno, p. 4

{xk }, (xk )

sequencia, p. 6

f (x; d)

derivada direcional de f : Rn R em x na direo d, p. 6

f (x; d)

derivada direcional generalizada de f : Rn R em x na


direo d, p. 9

xi

componente i do vetor x, p. 4

xii

Introduo
A teoria clssica de otimizao presume certa diferenciabilidade e fortes hipteses
de regularidade como pode ser visto em Fletcher [1]. Contudo, estas hipteses esto
longe de acontecer na prtica, onde em muitos casos a prpria fsica do problema
impe um modelo no diferencivel. Problemas de otimizao no diferenciveis
aparecem em muitos campos de aplicao, como por exemplo, em Mecnica [2],
Economia [3], Controle timo [4]. A origem da no diferenciabilidade pode ser
dividida em quatro classes, [5]: inerente, tecnolgica, metodolgica e numrica.
No caso da no diferenciabilidade inerente, considera-se que o fenmeno original
contm nele mesmo vrias descontinuidades e irregularidades. Um exemplo tpico,
so as mudanas de fase do material no processo de moldagem contnua do ao (veja
[6]) e modelos lineares por parte em economia (veja [7]).
A no diferenciabilidade tecnolgica num modelo usualmente causada por
algumas restries tecnolgicas extras.
Estas restries podem causar uma
dependncia no diferencivel entre as varveis e as funes, ainda que, as funes
originais sejam continuamente diferenciveis. Estes tipos de exemplos so chamados
de problemas de obstculo em otimizao de formas (veja [8]).
Exemplos de no diferenciabilidade metodolgica aparecem no mtodos de funo
penalidade exata, e mtodos de decomposio de Lagrange.
Finalmente, existem problemas que podem ser analiticamente diferenciveis mas
numericamente no diferenciveis. Estes problemas so, em geral, chamados de stiff
problems os quais so numericamente instveis e se comportam como problemas no
diferenciveis.
Para problemas onde no se tem a diferenciabilidade em todos os pontos do
domnio da funo, existe uma rea da Programao Matemtica denominada
Otimizao No Diferencivel (Nonsmooth Optimization), que utiliza tcnicas, que
substituem o Clculo Diferencial clssico, oriundas de uma rea da Matemtica
chamada de Anlise Convexa, [9].
Existem grandes diculdades quando se lida com funes no diferenciveis e,
em muitos casos, essas funes tem mnimo onde o gradiente no est denido.
Raticando tal ideia, no preciso ir muito longe para entender melhor as
diculdades causadas pela no diferenciabilidade. Para tanto, basta considerar a
1

funo valor absoluto f (x) = |x|, com x R, nota-se que f no diferencivel na


origem, justamente o ponto onde ocorre o mnimo. Ento, se para esta funo, for
aplicado qualquer mtodo de otimizao diferencivel, este nem sequer reconhecer
= 0, pois nestes mtodos o mnimo precisa satisfazer o famoso
o ponto de mnimo x
resultado de Fermat
f (
x) = 0,
que , na verdade, uma condio de otimalidade necessria.
Diante do exposto, vem sendo desenvolvidos uma srie de mtodos para lidar com
este tipo de problema como pode ser visto, por exemplo, nos trabalhos de Kelley
[10], Kiwiel [11], Lemarchal [12] e Mkel [13], entre outros.
Os mtodos considerados mais ecientes e conveis quando a funo objetivo
convexa, so os mtodos de Feixes, (veja [11, 14] ou [15]), estes mtodos so
baseados na teoria de subdiferenciis desenvolvida por Rockafellar [9] e Clarke [16].
O que estes mtodos tem em comum que, em cada iterao, requerem a utilizao
de um nico subgradiente alm do valor da funo, onde suas ideias bsicas se
concentram em aproximar o subdiferencial (que o conjunto dos subgradientes) da
funo objetivo, usando informaes dos subgradientes armazenados em iteraes
anteriores no chamado feixe. A histria destes mtodos comea com o mtodo
chamado -steepest descent apresentado por Lemarchal em 1976, [17]. Para ter
uma melhor compreenso da discusso do caso convexo, veja [11] ou [18].
Problemas envolvendo funes no convexas e no diferenciveis so mais difceis
de lidar. Contudo, durante as ltimas trs dcadas, considerveis progressos tem
sido realizados nessa rea, Um passo crucial foi a tese de doutorado de Clarke em
1973. Corroborando com tal progresso sabe-se que um clculo eciente, bem como
condies de otimalidade aplicveis, em termos de construes convexas locais, pode
ser desenvolvido para a classe de funes localmente Lipschitz contnuas, veja [16],
[19] ou [20].
Problemas convexos com restries no diferenciveis so ainda mais complexos
e poucos mtodos so encontrados na literatura. Problemas convexos com restries
consideradas fceis, tais como restries lineares, podem ser resolvidos inserindose tais restries diretamente em cada problema quadrtico (veja [21, 22]). Para o
problema convexo com restries mais gerais, uma forma bem popular, para mtodos
de feixe, encontrar um mnimo irrestrito para a chamada improvement function
[23], esta abordagem foi utilizada em [24] e nos captulos 5 e 6 de [11]. Outra
estrategia resolver um problema irrestrito equivalente com o uso de uma funo
objetivo de penalidade exata [25]. Em [26, 27] uma estratgia de ltros [28] sugerida
como alternativa ao uso da funo de penalidade num mtodo de feixes.
Neste trabalho so apresentados trs alternativas de algoritmos para Otimizao
No Diferencivel: O primeiro algoritmo, considera o caso convexo sem restries,
2

o qual foi inicialmente proposto por Freire [29] em sua tese de doutoramento em
2005. Em seguida, apresenta-se um algoritmo que lida com problemas no convexos
sem restries. O terceiro e ltimo algoritmo considera problemas convexos com
restries de desigualdade convexas.
Os mtodos so hbridos, neles so utilizadas algumas ideias do mtodo clssico
de planos de corte de Kelley [10], para realizar aproximaes das funes no
diferenciveis. E em cada iterao, utiliza-se o mtodo de pontos interiores e direes
viveis FDIPA, desenvolvido por Herskovits em [30], para gerar direes de descida
viveis.
Este trabalho esta organizado da seguinte forma: No Captulo 1, reservado as
preliminares, so denidas a notao e alguns resultados bsicos da Anlise No
Diferencivel, generaliza-se as condies de otimalidade para o caso no diferencivel,
em seguida, faz-se uma reviso bibliogrca para Otimizao No Diferencivel onde
esto includas algumas tcnicas mais recentes e por m apresentado o Feasible
Direction Interior Point Algorithm (FDIPA).
No Captulo 2 apresenta-se o algoritmo para problemas no diferenciveis
convexos sem restries. No Captulo 3 propes-se um mtodo para a resoluo
do problema

minimize f (x)
sujeito a x Rn

onde f : Rn R uma funo localmente Lipschits contnua. Constam ainda,


o estudo da convergncia global e os resultados da experincia computacional. No
Captulo 4 prope-se um mtodo para a resoluo do problema restrito

minimize f (x)
n
xR

sujeito a c(x) 0

onde f, c : Rn R so funes convexas em geral no diferenciveis. Este


mtodo uma extenso direta do mtodo desenvolvido por Freire em [29], pois so
acrescentadas restries de desigualdade como acima e so resolvidas uma sequncia
de problemas auxiliares que vo sendo denidos a medida em que as restries
funcionais vo sendo aproximadas por planos de corte.
No Captulo 5 feita uma aplicao do mtodo apresentado no Captulo 2 para
Otimizao Topolgica de estruturas reticuladas robustas.
Finalmente, so apresentadas as concluses do trabalho obtidas at o presente
momento e os possveis trabalhos futuros.

Captulo 1
Preliminares
Neste Captulo, so introduzidas algumas notaes, conceitos e resultados bsicos
necessrios ao estudo da anlise no diferencivel, cujas ideias esto baseadas
principalmente nos trabalhos de Clarke [16], Makela [13] e Lemarechal [31]. Ento
generaliza-se os conceitos de diferencial para funes convexas e localmente Lipschitz
contnuas, respectivamente. Com isso, so generalizadas as condies clssicas
de otimalidade para o caso no diferencivel. Em seguida, faz-se uma pequena
descrio de alguns mtodos clssicos bem como alguns mtodos mais recentes, para
otimizao no diferencivel. E nalmente, apresenta-se o Feasible Direction Interior
Point Algorithm (FDIPA), um mtodo para otimizao no linear desenvolvido por
Herskovits em [30]. As demonstraes dos resultados apresentados neste captulo
podem ser encontradas nos trabalhos citados acima.

1.1

Notaes e Definies Bsicas

Todos os vetores so considerados como vetores coluna. Denota-se o produto


interno usual por xT y e por kxk a norma no espao Euclidiano n-dimensional,
i.e.,
1
2

kxk = (x x) =
T

n
X
i=1

xi2

!1

onde x Rn e xi R a i-sima componente do vetor x.


A bola unitria com centro em x Rn e raio r > 0 denotada por
B(x; r) = {y Rn | ky xk < r}.
Um conjunto S Rn dito convexo se x + (1 )y S, onde x e y S e
[0, 1]. Geometricamente, se esta dizendo que todo segmento de reta que une os
pontos x e y est inteiramente contido em S sempre que x, y S. Se S1 e S2 so
conjuntos convexos em Rn e 1 , 2 R, ento 1 S1 + 2 S2 tambm convexo. Se
4

Si Rn so conjuntos convexos para i = 1, 2, ..., m, ento sua interseo m


i=1 Si
tambm um conjunto convexo.
Denota-se por conv(S) o fecho convexo de S Rn , i.e., a interseo de todos
os conjuntos convexos que contm S, ou ainda,
conv(S) = {x Rn | x =

k
X

i xi ,

k
X
i=1

i=1

i = 1, xi Rn , i 0}.

O fecho convexo de um conjunto S o menor conjunto convexo contendo S e S


convexo se e somente se S = conv(S). Alm disso, o fecho convexo de um conjunto
compacto compacto.
Uma funo f : Rn R dita convexa se
f (x + (1 )y) f (x) + (1 )f (y),

(1.1)

onde x e y esto em Rn e [0, 1]. Se a desigualdade for estrita em (1.1) para todo
x, y Rn tal que x 6= y e (0, 1), a funo f dita estritamente convexa.
Um conjunto C denominado cone se contm todos os mltiplos positivos de
seus elementos, i.e., se x C e > 0, ento x C. Pela denio, se C um
cone no vazio, necessariamente 0 C.
O cone tangente (de direes tangentes) de um conjunto convexo C pode ser
denido como

{tk } R+ , {tk } 0+ ,

TC (
x) := d Rn | {dk } Rn , {dk } d, tal que .

+ tk dk C para todo k N
x

O cone normal (cone de direes normais) de um conjunto convexo C em


C o conjunto
x
n

) 0 x C .
NC (
x) := d Rn | dT (x x
Uma funo f : Rn R dita localmente Lipschitz continua com constante
L > 0 em x Rn se existe um nmero positivo tal que
|f (y) f (z)| L ky zk ,
para todo y, z B(x, ). No que segue utiliza-se a denominao curta localmente
Lipschitz.
Se f : Rn R uma funo convexa em x Rn , ento f localmente Lipschitz
em x.

Uma funo f : Rn R dita inferiormente semi-continua(resp. superior)


num ponto x Rn se, para cada sequncia (xk ) Rn com (xk ) x, tem-se
!

f (x) lim inf f (xk ) resp. f (x) lim inf f (xk ) .


k

Uma funo que semi-continua superior e inferior uma funo contnua.


Agora sero revistos alguns conceitos bsicos da teoria das funes diferenciveis:
Uma funo dita diferencivel em x Rn se existe um vetor f (x) Rn e uma
funo : Rn R tal que para todo d Rn ,
f (x + d) = f (x) + f (x)T d + kdk (d),
onde o vetor f (x) o vetor gradiente de f em x e (d) 0 sempre que kdk 0.
O vetor gradiente tem a seguinte frmula
f (x) =

f (x)
f (x)
, ...,
x1
xn

!T

, i = 1, 2, ..., n so as chamadas derivadas parciais


onde as componentes fx(x)
n
da funo f . Se uma funo diferencivel e suas derivadas parciais so todas
continuas, ento a funo dita continuamente diferencivel.
O limite
f (x + td) f (x)
f (x; d) = lim
t0
t
(se existe) chamado de derivada direcional de f em x Rn na direo d Rn .
Se uma funo f diferencivel em x, ento a derivada direcional existe em cada
direo d Rn e
f (x; d) = f (x)T d.
Se, ainda, f for convexa, ento para todo y Rn
f (y) f (x) + f (x)T (y x).
Uma funo f : Rn R dita duas vezes diferencivel em x Rn se
existe um vetor f (x) Rn , uma matriz simtrica 2 f (x) Rnn e uma funo
: Rn R tal que para todo d Rn ,
1
f (x + d) = f (x) + f (x)T d + dT 2 f (x)d + kdk (d),
2

onde (d) 0 sempre que kdk 0. A matriz 2 f (x) chamada de Hessiana de


f em x e denida por

2 f (x)
x21

2 f (x)
xn x1

2 f (x) =

..
.

...

2 f (x)
x1 xn

..
.

2 f (x)
x2n

f (x)
onde as componentes x
, i, j = 1, 2, ..., n so as chamadas derivadas parciais
i xj
de segunda ordem da funo f . Se uma funo duas vezes diferencivel e suas
derivadas parciais de segunda ordem so todas continuas, ento a funo dita duas
vezes continuamente diferencivel.
Uma matriz A Rnn chamada definida positiva se A = AT , i.e., A
simtrica e
xT Ax > 0

para todo vetor x Rn .


Considere um mapeamento F que associa cada x X Rn a um conjunto do
Rn , ou seja, x 7 F (x) Rn . Denomina-se tal mapeamento de multi-funo.
O domnio de F denido por dom F := {x X : F (x) 6= }.
Diz-se que F fechada se seu grco (i.e., a unio de {x} F (x) X Rn )
um conjunto fechado. Dize-se ainda que ela localmente limitada perto de
x se para alguma vizinhana V de x e algum conjunto limitado B Rn , tem-se
V dom F e F (V ) B.
Seja F uma multi-funo fechada e localmente limitada em x . Ento, F
semi-continua exterior(resp. semi-continua interior) se, para todo > 0, existe
uma vizinhana Vx de x tal que x Vx implica
!

F (x) F (x ) + B(0; ) F (x ) F (x) + B(0; ) .

Alm disso, se F semi-contnua exterior e interior, ento ela contnua.

1.2

Anlise No Diferencivel

A teoria da Anlise no diferencivel para funes convexas est baseada na


chamada Anlise Convexa, e por esta razo faz-se uma breve introduo baseada nos
conceitos de convexidade(veja Rockafellar [9]). Primeiramente dene-se o conceito
de subdiferencial de uma funo convexa e depois estende-se os resultados para
funes localmente Lipschitz no convexas.
Definio 1.1. O subdiferencial de uma funo convexa f : Rn R num ponto
x Rn o conjunto dos vetores s Rn tais que
o

c f (x) = s Rn | f (y) f (x) + sT (y x) para todo y Rn .


Teorema 1.2. Seja f : Rn R uma funo convexa. Ento a derivada direcional
existe em qualquer direo d Rn e satisfaz
f (x + td) f (x)
.
t

f (x; d) = inf

t>0

Apresenta-se algumas relaes existentes entre o subdiferencial e a derivada


direcional.
Teorema 1.3. Seja f : Rn R uma funo convexa. Ento para todo x Rn
n

(i) f (x; d) = max sT d | s c f (x)


n

para todo d Rn ,
o

(ii) c f (x) = s Rn | f (x; d) sT d para todo d Rn ,


(iii) c f (x) um conjunto no vazio, convexo e compacto tal que c f (x) B(0; L),
onde L > 0 a constante de Lipschitz de f em x.
O prximo teorema mostra que realmente o subdiferencial um generalizao
da derivada clssica.
Teorema 1.4. Se f : Rn R uma funo convexa e diferencivel em x, ento
c f (x) = {f (x)} .
Teorema 1.5. Se f : Rn R uma funo convexa ento para todo y Rn
n

f (y) = max f (x) + sT (y x) | x Rn , s c f (x) .

(1.2)

Em Otimizao no diferencivel, os chamados mtodos de feixe so baseados


na teoria do -subdiferencial, cuja denio uma adaptao do conceito de
subdiferencial.
8

Definio 1.6. Seja f : Rn R uma funo convexa. A -derivada direcional


de f em x Rn na direo de d Rn definida por
f (x + td) f (x) +
.
t>0
t

f (x; d) = inf

Definio 1.7. Seja > 0, o -subdiferencial de uma funo convexa f : Rn R


em x Rn o conjunto
n

f (x) = s Rn | f (y) f (x) + sT (y x) para todo y Rn .


Cada elemento s f (x) chamado -subgradiente de f em x.
Para funes localmente Lipschitz no necessariamente existe a noo de
derivada direcional clssica, por isso, primeiramente dene-se uma derivada
direcional generalizada (veja Clarke[16]). Dando sequncia estende-se o conceito
de subdiferencial para funes localmente Lipschitz.
Definio 1.8 (Clarke). Seja f : Rn R uma funo localmente Lipschitz em
x Rn . A derivada direcional generalizada de f em x na direo d Rn
definida por
f (y + td) f (y)
f (x; d) = yx
lim sup
.
t
t0
Definio 1.9 (Clarke). Seja f : Rn R uma funo localmente Lipschitz em
x Rn . O subdiferencial de f em x o conjunto de vetores s Rn tal que
n

f (x) = s Rn | f (x; d) sT d para todo d Rn .


Cada vetor s f (x) chamado de subgradiente de f em x.
Teorema 1.10. Seja f : Rn R uma funo localmente Lipschitz em x Rn com
constante L. Ento
n

(i) f (x; d) = max sT d | s f (x)

para todo d Rn ,

(ii) f (x) um conjunto no vazio, convexo e compacto tal que f (x) B(0; L).
O prximo teorema mostra que o subdiferencial para funes localmente
Lipschitz uma generalizao do subdiferencial de uma funo convexa.
Teorema 1.11. Seja f : Rn R uma funo convexa. Ento
(i) f (x; d) = f (x; d) para todo d Rn e
(ii) c f (x) = f (x).
9

Os dois seguintes teoremas mostram que o subdiferencial realmente uma


generalizao da derivada clssica.
Teorema 1.12. Seja f : Rn R uma funo localmente Lipschitz e diferencivel
em x Rn . Ento
f (x) f (x).
Teorema 1.13. Se f : Rn R continuamente diferencivel em x Rn . Ento
f (x) = {f (x)} .
Teorema 1.14 (Rademacher). Seja U Rn um conjunto aberto. U ma funo
f : U R que localmente Lipschitz em U diferencivel em quase todos os
pontos de U (i.e., diferencivel a menos de um conjunto de medida nula).
Devido ao Teorema de Rademacher sabe-se que para funes localmente Lipschitz
o gradiente existe em quase todos os pontos do domnio da funo. De posse desta
informao, pode-se reconstruir o subdiferencial como sendo o fecho convexo todos
os possveis limites de gradientes nos pontos {xk } que convergem a x.
E usa-se a notao f para representar o conjunto dos pontos onde f no
diferencivel.
Teorema 1.15. Seja f : Rn R uma funo localmente Lipschitz em x Rn .
Ento
n

f (x) = conv s Rn | existe {xk } Rn \ f tal que xk x e f (xk ) s .


(1.3)
Agora dene-se o Goldstein -subdiferencial de uma funo localmente
Lipschitz, de modo anlogo ao que zemos para funes convexas.
Definio 1.16. Seja f : Rn R uma funo localmente Lipschitz em x Rn e
seja > 0. Ento o Goldstein -subdiferencial de f o conjunto
G f (x) = conv {f (y) | y B(x; )} .
Cada elemento s G f (x) chamado -subgradiente de f em x.

10

1.3

Condies de Otimalidade

Nesta seo generaliza-se as condies de otimalidade de primeira ordem clssicas


para os casos de otimizao restrita e irrestrita. E mostra-se as condies necessrias
para uma funo localmente Lipschitz atingir um mnimo local.
Definio 1.17. Um ponto x Rn um mnimo local de f , se existir > 0 tal
que f (x) < f (y) para todo y B(x, ).
Definio 1.18. Um ponto x Rn um mnimo global de f , se satisfaz f (x) <
f (y) para todo y Rn .
Inicia-se com as condies necessrias bsicas para o problema de otimizao
irrestrito. Nota-se que para funes convexas as condies tambm so sucientes.
Teorema 1.19. Se f : Rn R Localmente Lipschitz em x e atinge um mnimo
local em x, ento
(i) 0 f (x),
(ii) f (x; d) 0 para todo d Rn .
Um ponto x Rn satisfazendo 0 f (x) chamado um ponto crtico ou
estacionrio de f .
Teorema 1.20. Se f : Rn R uma funo convexa, ento as seguintes condies
so equivalentes:
(i) f atinge um mnimo global em x,
(ii) 0 c f (x),
(iii) f (x; d) 0 para todo d Rn .
Teorema 1.21. Se f : Rn R Localmente Lipschitz em x e atinge um mnimo
local em x, ento
0 G f (x).
Teorema 1.22. Se f : Rn R uma funo convexa, ento as seguintes condies
so equivalentes:
(i) 0 G f (x),
(ii) x minimiza f com > 0, i.e., f (x) f (y) + para todo y Rn .
Agora, mostra-se as condies necessrias correspondentes para o caso de
problemas com restries. Uma diculdade existente em mtodos de otimizao
iterativos a de encontrar uma direo tal que os valores da funo objetivo vo
sempre decrescendo quando nos movimentamos naquela direo.
11

Definio 1.23. A direo d Rn uma direo de descida para uma funo


f : Rn R num ponto x Rn , se existe t > 0 tal que para todo t (0, t ],
f (x + td) < f (x).
Lema 1.24. Seja f : Rn R uma funo localmente Lipschitz contnua em x Rn .
A direo d Rn uma direo de descida para f em x se sT d < 0 para todo
s f (x).
Contudo, em otimizao
direo de descida, pois no
a noo de direo vivel.
desigualdade

com restries no suciente encontrar qualquer


se pode violar as restries. Logo, precisa-se denir
Considere o seguinte problema com restries de

minimize f (x)
n
xR

onde f, c : Rn R.

sujeito a c(x) 0

(1.4)

Definio 1.25. A direo d Rn uma direo vivel para um problema do tipo


(1.4) se existe t > 0 tal que para todo t (0, t ]
x + td
onde = {x Rn | c(x) 0} a regio vivel.
Lema 1.26. Seja c : Rn R, uma funo localmente Lipschitz contnua em x .
A direo d Rn uma direo vivel em x para o problema (1.4) se rT d < 0 para
todo r c(x) tal que c(x) = 0.
Teorema 1.27 (Condio de otimalidade para minimizar uma funo convexa num
conjunto convexo). Sejam f : Rn R uma funo convexa e C Rn um conjunto
Rn um minimizador de f em C se, e somente se,
convexo. Ento x
) 0 x C
s f (
x) tal que sT (x x

(1.5)

ou equivalentemente
0 f (
x) + NC (
x),

(1.6)

onde NC (
x) o cone de direes normais.
Demonstrao. Veja em Solodov [32], pgina 168.
De fato, na prtica, o conjunto C denido pela restrio tem uma forma
especial. O Corolrio generaliza as condies de otimalidade necessrias KarushKuhn-Tucker(KKT)
12

Corolrio 1.28. Seja c : Rn R uma funo tal que c(x) = max{ci (x) | i =
1, ..., m} onde cada ci : Rn R convexa e suponha que c(z) < 0 para algum
z Rn . Seja
C := {x Rn | c(x) 0}.
Suponha que f : Rn R convexa. Ento as seguintes condies so equivalentes:
,
(i) f atinge seu mnimo global sobre C em x
(ii) Existe i 0 para i = 1, ..., m tal que i ci (
x) = 0 e
0 f (
x) +

m
X

i ci (
x).

(1.7)

i=1

Demonstrao. Veja [13], pgina 74.


Um ponto x chamado um ponto KKT associado ao problema (1.4) se vivel
e satisfaz a condio de otimalidade KKT do Teorema 1.28.

1.4

Otimizao Convexa No Diferencivel

Inicia-se com uma pequena introduo aos mtodos clssicos para otimizao
convexa no diferencivel. A no diferenciabilidade produz uma srie de diculdades
adicionais: A primeira aparece na determinao da direo de busca, pois, nem
sempre, a direo obtida de descida e consequentemente, a busca linear no faz
sentido. Outra, a diculdade de estabelecer critrios de parada implementveis.
Os mtodos abordados nesta seo se concentram na resoluo do seguinte
problema irrestrito

minimize f (x)
(1.8)
sujeito a x Rn

onde f : Rn R uma funo convexa no necessariamente diferencivel.


De modo geral, os algoritmos que sero vistos esto baseados na gerao de
iterados xk atravs da busca de possveis direes de descida dk , tamanhos de passo
tk e consequente atualizao xk+1 = xk + tk dk . Nota-se ainda que estes mtodos
diferem principalmente nas estratgias que conduzem a determinao das direes
de descida.

1.4.1

Mtodos de Descida

Os mtodos de descida se baseiam na gerao de uma sequncia {xk } com a


garantia de decrscimo da funo objetivo f em cada iterao. As direes a serem
13

tomadas so, portanto, as de descida, caracterizadas na Seco 1.3. O Algoritmo


descrito a seguir:
Algoritmo 1.1. Mtodo de Descida
1. Tome x1 Rn e seja k = 1.
2.(critrio de parada formal) Se 0 f (xk ), pare.
3.(Descida) Encontre uma direo de descida dk de f em xk .
4.(Busca linear) Encontre um tamanho de passo tk > 0 tal que
f (xk + tk dk ) < f (xk ).
5.(Prximo iterado) Defina xk+1 = xk + tk dk .
6.(Loop) Tome k = k + 1 e v para o passo 2.
Observa-se que o critrio de parada oferecido pelo passo 2 puramente formal,
pois a obteno de todo o subdiferencial algo excessivo. Critrios de parada
implementveis sero vistos posteriormente com detalhes nos algoritmos de planos
de corte e mtodos de feixe. Por ora, nota-se apenas que num ponto x dado, a melhor
descida dk possvel (i.e., direo de mxima descida) a soluo do problema
min f (xk ; d)

kdk=1

ou

min max hs; di .

kdk=1 sf (x)

Geometricamente, isso signica que a direo de mxima descida justamente a


que est relacionada com ao hiperplano
H ortogonal a projeo de {0} em f (xk ).

Mais precisamente, dk = k / k , onde k = Pf (xk ) (0).
Contudo h um problema que norteia o mtodo de mxima descida, o fato
da sequncia de iterados {xk } poder oscilar e convergir para um ponto no timo.
Referindo-se a [31](seo VII.2.2) para vericar, atravs de um exemplo numrico,
que o mtodo pode, de fato no convergir. Para uma melhor compreenso, lembra-se
que o algoritmo de descida converge se (f (xk )) decrescente e se {xk } possui um
ponto de acumulao x , que minimizador de f . Considera-se, ento, a seguinte
sequncia:
n
o
k := dist(0; f (xk )) .
O subdiferencial f (x) visto como uma multi-funo, fechado, i.e., possui o
grco fechado:

xk x
= s f (x ).
(1.9)
sk f (xk ) s

Dessa forma, se k 0, ento 0 f (x ) e x ponto de mnimo. Para


assegurar que k 0, a multi-funo x 7 f (x) deveria ser contnua (i.e., semicontinua interior e exterior).
14

A semi-continuidade exterior est garantida pela propriedade (1.9). Contudo, o


subdiferencial no possui a propriedade da semi-continuidade interior, ou seja, no
verdade que

xk x
= existe sk s tal que s f (xk ).
s f (x )

(1.10)

para mais detalhes veja [15] seo 8.2.2.


Da a importncia do -subdiferencial, pois, alm de aproximar o subdiferencial
f (x), j que f (x) f (x), visto como uma multi-funo, semi-contnuo interior
e exterior: A semi-continuidade exterior est garantida, pois seu grco fechado:

xk x

sk f (xk ) s

= s f (x ).

(1.11)

Como f localmente Lipschitz continua, tem-se para > 0 xado que


r > 0, > 0 : xk x = f (x ) f (xk ) + B(0, r),

o que garante que (, x) 7 f (x) semi-contnua interior em x .


Portanto, uma possvel maneira de contornar a no convergncia do mtodo
de descida utilizar f (), com > 0, no lugar de f (x). Tais algoritmos so
denominados de -descida [18]. Desta forma, estes algoritmos geram sequncias
n
o
(xk ) tais que (f (xk )) decrescente e dist(0; k f (xk )) 0 com k 0.
Veja o algoritmo:
Algoritmo 1.2. Mtodo de -Descida
1. Tome x1 Rn , > 0 e seja k = 1.
2.(critrio de parada formal) Se 0 f (xk ), pare.
3.(Descida) Encontre uma direo de -descida dk de f em xk .
4.(Busca linear) Encontre um tamanho de passo tk > 0 tal que
f (xk + tk dk ) < f (xk ) .
5.(Prximo iterado) Defina xk+1 = xk + tk dk .
6.(Loop) Tome k = k + 1 e v para o passo 2.
Neste algoritmo, f (xk ) ou o algoritmo termina numa iterao k tal que
xk -timo. Esse o algoritmo de -descida mais simples, existem variantes do
mtodo que permitem escolhas de = k a cada iterao.

15

Nota-se que o -subdiferencial tambm no usualmente conhecido por inteiro e


portanto o algoritmo ainda no implementvel. Nas prximas sees, sero vistos
outros algoritmos que tentam contornar essa questo.
Conclu-se esta seo mostrando, atravs de um exemplo, que a propriedade de
semi-continuidade interior de f (x) vlida apenas para > 0. Considera-se a
funo modulo dada por f (x) = |x|.
Na gura abaixo o grco da esquerda ilustra a multi-funo f (x), enquanto
que a da direita representa f (x) para > 0 xo. Nota-se por exemplo, que o
conjunto f (0) = [1, 1] muito maior do que f (x) = {1}, quando x > 0. Por
outro lado, f (x) no explode quando x se aproxima do ponto 0.
s

s
1

x
1

Figura 1.1: Semi-continuidade interior do -subdiferencil

1.4.2

Mtodo de Subgradientes

Como observado na seo anterior, a determinao de todo o subgradiente algo


excessivo ou impossvel computacionalmente falando, e uma forma de contornar esse
problema exigir menos, ou seja, pedir o clculo de apenas um nico subgradiente.
Tal exigncia est relacionada ao que chama-se de caixa preta, que utilizado como
base em diversos algoritmos para problemas no diferenciveis, onde dado xk Rn ,
a caixa preta responsvel por gerar f (xk ) e um subgradiente sk f (xk ).
A ideia do mtodo de subgradientes provm do mtodo de Cauchy, lembre-se
portanto deste mtodo diferencivel: De posse das devidas hipteses, o mtodo de
Cauchy encontra uma direo dk tal que f (xk + dk ) < f (xk ). A inteno escrever
o problema (1.8) na forma

minimize f (xk + d) f (xk )


sujeito a d Rn

que tem uma soluo dk 6= 0. Devido a expanso de primeira ordem de Taylor


f (xk + d) f (xk ) = f (xk ; d) + kdk (d),

16

onde (d) 0 quando kdk 0 e a identidade f (xk ; d) = f (xk )T d, obtm-se as


seguintes verses equivalentes

minimize f (xk ; d)
sujeito a kdk 1

minimize f (xk )T d
sujeito a kdk 1.

onde a restrio adicional kdk 1 necessria, pois a funo f (xk ; )



k
k
k
positivamente homognea. Da considera-se a direo d = f (x )/ f (x ) .
Com isso, no caso no diferencivel, a ideia do mtodo de subgradientes
considerar o vetor oposto ao subgradiene fornecido pela caixa preta, i.e.,

dk = sk / sk .

Porm, tal direo no necessariamente de descida, conforme pode ser visto na


Figura 1.2 abaixo, que mostra curvas de nvel para funes minimizadas em zero,
direes de descida devem fazer produto escalar negativo com o subdiferencial f (x)
inteiro e no apenas com um nico subgradiente s.

f ( x )

f ( x)

Figura 1.2: Direes de descida: caso diferencivel e no diferencivel


A Figura da direita (caso no diferencivel), mostra um exemplo em que a direo
s, fornecida pela caixa preta, um vetor extremo do cone associado a f (x) e em
tal exemplo, a direo oposta s claramente no descida.
Apesar deste algoritmo no assegurar necessariamente o decrscimo da funo
objetivo a cada iterao, escolhas adequadas dos tamanhos de passo podem garantir
a convergncia ao mtodo. Contudo, a xao do comprimento de passo para uma
iterao k antes que o ponto xk seja calculado, dicilmente pode dar uma boa
escolha. Diante o exposto, esta maneira de remover a diculdade associada ao
decrscimo da funo objetivo puramente formal visto que se trata de uma medida
paliativa, apenas para resolver a anlise de convergncia terica.
Veja o algoritmo:

17

Algoritmo 1.3. Mtodo de Subgradientes


1. Tome x1 Rn e seja k = 1.
2.(caixa preta) Calcule sk e f (xk ).
3.(critrio de parada) Se 0 f (xk ), pare.
4.(Busca linear) Encontre um tamanho de passo tk > 0 adequado.
k
5.(Prximo iterado) Defina xk+1 = xk tk ssk .
k k
6.(Loop) Tome k = k + 1 e v para o passo 2.
Para compreender o Passo 4 do Algoritmo 1.3, dene-se primeiro x como o
conjunto de solues timas. Da denio de subdiferencial, se sk f (xk ) ento
f (x) f (xk ) (sk )T (x xk )
o que implica em (sk )T (x xk ) f (xk ) f (x ) 0 x Rn .
Desta observao, conclui-se que o ngulo entre sk e x xk agudo e, portanto,
para tk > 0 suciente pequeno, tem-se xk+1 mais prximo de x do que xk . E isso
motiva a escolha de uma sequncia {tk } satisfazendo lim tk = 0.
k
Mais precisamente vale o seguinte resultado:

Lema 1.29. Seja x uma soluo de minn f (x). Ento xk+1 x < xk x
xR

[f (xk )f (x )]
sempre que 0 < t < 2
.
ksk k
k

No entanto ressaltasse que essa estratgia no garante a convergncia


do mtodo.

k+1
k
k
k
Outra observao deve ser feita na escolha de t : Como x
x = t segue que



k
P
se x1 o ponto inicial, ento xk+1 x1
tj .
j=1

Logo, para todo, k N, xk B(x1 , r) onde r =

k=1

tk .

Assim, o mtodo encontrar a soluo x somente se xk B(x1 , r). Para

P
contornar este problema, impe-se
tk = +.
k=1

Teorema 1.30. Suponha que o conjunto x das solues do problema minn f (x),
xR

seja no vazio e limitado. Ento para qualquer ponto inicial x1 , a sequncia (xk )

P
k
tk = +
definida por xk = xk + tk ssk com tk satisfazendo lim tk = 0 e
k k
k
k=1
limitada e todos os seus pontos de acumulao pertencem a x .
Outra decincia consiste no fato dos mtodos de subgradiente no possurem
nenhuma
regra de parada convel. Por exemplo, um critrio de parada que utiliza



k
f (x ) < para algum > 0 xado, no podem ser utilizados em mtodos
no diferenciveis pois esta situao pode nunca acontecer.
Para
ver isto basta




considerar f : R R denida por f (x) = |x|. Tem-se f (xk ) = 1, xk 6= 0,
no importando o quanto xk esteja prximo da soluo x = 0.
18

A nica atrao de mtodos de subgradiente sua simplicidade (quando o clculo


de subgradientes fcil). Nem sequer requerem uma busca linear. Um estudo
profundo sobre os mtodos de subgradiente pode ser encontrado em [15], [14] ou
[18].

1.4.3

Mtodo de Planos de Corte

Ao contrrio do mtodo de subgradientes, a ideia do mtodo de planos de corte


aproveitar as informaes obtidas nas iteraes anteriores para denir um modelo da
funo objetivo. Esse modelo ser til para obter candidatos a direes de descida,
logo, a cada iterao k, tem-se um modelo linear por partes fk de f construdo da
seguinte forma:
n
o
fk (x) = max f (xi ) + (si )T (x xi ) .
(1.12)
i=1,...,k

Nota-se que a igualdade acima se deve ao teorema 1.5 e que a cada iterao k,
adiciona-se ao modelo uma funo am f (xk ) + (sk )T (x xk ).

f1

epi f

f ( x3 ) + s3 , x3
f ( x2 ) + s2 , x2

x2

x4

x3

x1

Figura 1.3: Iteraes do mtodo de planos de corte


O mximo de todas as funes que denem fk claramente uma funo convexa
e linear por partes. Alm disso,
fk fk+1

fk f

para todo k, ou seja, fk se aproxima de f por baixo a cada iterao.


Feito isso, pode-se utilizar o modelo fk para encontrar o prximo iterado xk+1 ,
como soluo do seguinte problema
xk+1 arg min fk (x),
xS

19

(1.13)

onde S um conjunto compacto, convexo que contm um ponto mnimo de f .


Ademais, o modelo ainda nos permite ter um critrio de parada implementvel
atravs do calculo do decrscimo nominal, denido por
k := f (xk ) fk1 (xk ).

(1.14)

Observa-se que o algoritmo termina quando k pequeno.


Vejamos agora como ca o algoritmo.
Algoritmo 1.4. Mtodo de Planos de Corte
1. Sejam tol 0 uma tolerncia dada e S Rn .
2. Tome x1 S e seja k = 1. Defina f0 .
3. (caixa preta) Calcule sk e f (xk ).
4. (Decrscimo nominal) Calcule k := f (xk ) fk1 (xk ).
5. (Critrio de parada) Se k tol, pare.
6. (Prximo iterado) Defina xk+1 arg min fk (x).
xS
7. (Loop) Tome k = k + 1 e v para o passo 3.
Assim como no mtodo de subgradientes, o mtodo de planos de corte no
garante o decrscimo da funo objetivo a cada iterao. Tal fato pode ser observado
quando introduz-se uma funo am quase horizontal ao modelo fk , por esse
motivo dize-se que o algoritmo no est livre de instabilidades. Veja a Figura 1.4
abaixo.

f ( x2 ) + s2 , x2

f1

epi f

f ( x3 ) + s3 , x3

x4
x2

x3

x1

Figura 1.4: Introduo de uma funo am quase horizontal


Observe que a introduo da funo am f (x3 ) + (s3 )T ( x3 ) gera um ponto
x4 tal que f (x4 ) > f (x3 ).
Verica-se ainda que o modelo acumula um nmero crescente de funes ans
que denem o modelo, o que diculta a resoluo dos problemas do passo 6, mesmo
20

se essas forem lineares. Alm disso, em alguns momentos vrias dessas restries
cam quase idnticas umas as outras.

1.4.4

Mtodo de Feixe

O mtodo de Feixe reconcilia as caractersticas dos mtodos de descida e


planos de corte, garantindo ao mesmo tempo o decrscimo da funo objetivo e
a estabilizao. O modelo construdo de modo anlogo ao utilizado no mtodo
de planos de corte. Porm, tenta-se evitar o acmulo grande de funes ans que
causam mau condicionamento. E isso feito adotando-se duas sequncias de pontos
distintas:
Uma sequncia formada pelos chamados centros de estabilizao {xk } Rn que
decrescem de fato a funo objetivo. E supe-se que, em adio para um ponto de
iterao corrente xk , tem-se alguns pontos testes yj Rn (das ltimas iteraes)
e subgradientes sj f (yj ) para j Jk , onde o conjunto de ndices Jk um
subconjunto no-vazio de {1, ..., k}. Assim como nos planos de corte, a funo
objetivo aproximada por um modelo de planos de corte
fk (x) = max f (yj ) + sTj (x yj ) .
jJk

(1.15)

O prximo iterado candidato ento denido por


yk+1 := xk + dk ,
onde a direo de busca dk calculada por
1
dk := arg minn fk (xk + d) + dT Mk d .
dR
2


(1.16)

O papel do termo de estabilizao 12 dT Mk d para garantir a existncia da soluo


dk e manter a aproximao local suciente. Como instabilidades ocorrem quando
o movimento a partir de xk muito grande, a matriz Mk simtrica regular n n
destina-se a acumular informao a respeito da curvatura de f numa bola ao redor
de xk .
Definio 1.31. Um iterado (ponto candidato) yk+1 torna-se um centro de
estabilizao (i.e., xk+1 := yk+1 ) somente se uma condio do tipo Armijo
satisfeita, ou seja,
f (yk+1 ) f (xk ) mk
onde k o decrscimo nominal calculado na iterao k e m (0, 1). Nesse caso, o
passo realizado chamado passo srio. Caso contrrio, tomado xk+1 := xk e o
passo denominado passo nulo.
21

O respectivo decrscimo nominal ser k = fk (yk+1 )f (xk ). Em ambos os casos,


na Denio 1.31, um plano de corte acrescentado ao modelo fk+1 , pois dene-se
S
o conjunto Jk+1 := Jk {k + 1}.
Com as denies acima possvel descrever o mtodo.
Algoritmo 1.5. Mtodo de Feixe
1. Sejam tol 0 uma tolerncia dada e m (0, 1).
2. Tome x1 e sejam k = 1 e k := .
3. (caixa preta) Calcule s1 e f (x1 ).
4. (Construo do modelo) Construa o modelo f1 .
5. (Critrio de parada) Se k tol, pare.
6. (Ponto candidato) Calcule yk+1 := xk + d.
7. (Decrscimo nominal) Defina k := fk (yk+1 ) f (xk ).
8. (Teste de Descida) Se f (yk+1 ) f (xk ) mk :
Faa xk+1 := yk+1 , (passo srio).
Caso contrrio faa xk+1 := xk (passo nulo).
9. (Atualizao do modelo) Construa fk+1 adicionando sk+1 ao modelo.
10. (Loop) Tome k = k + 1 e v para o passo 5.
Nota-se que o problema estabilizado (1.16) de programao quadrtica convexa,
usualmente resolvido atravs do seu dual, que possui um conjunto vivel com uma
estrutura mais simples. Para mostrar esse problema dual, convm antes considerar
o modelo fk referindo-o ao centro de estabilizao. Para isso, considere as seguintes
denies:
Definio 1.32. Dada uma iterao k do mtodo, o feixe o conjunto das
informaes obtidas, i.e.,
{(yj , f (yj ), sj ) : sj f (yj ), j Jk } .
Definio 1.33. Considere uma iterao k do mtodo. Para cada ndice j do feixe,
o erro de linearizao dado por ekj := f (xk ) f (yj ) sTj (xk yj ).
Feito isso, pode-se substituir a caracterizao do modelo fk dado em (1.15) pelo
seguinte modelo:
fk (x) = f (xk ) + max ekj + sTj (x xk ) .
iJk

(1.17)

Apesar do problema (1.16) ser um problema de otimizao no diferencivel,


devido a sua natureza linear por partes, possvel reescreve-lo como um

22

(diferencivel) subproblema de programao quadrtica

minimize + 1 dT M d
k
2
sujeito a ek + sT d
j
j

para todo j Jk

(PQ)

Dualizando este problema chega-se a um problema equivalente quando se


determina mltiplos kj para j Jk resolvendo o problema

minimize

sujeito a

1
2

"

jJk

jJk

kj sj

#T

j = 1,

Mk1

"

jJk

j 0

kj sj

jJk

j ekj

(PD)

Os problemas (PQ) e (PD) so equivalentes e tem solues nicas, para mais


detalhes veja [13]. Do ponto de vista computacional, a escolha do conjunto de
ndices um ponto crucial, pois se os mtodos armazenam todos os subgradientes
anteriores, ou seja, se Jk = {1, ..., k}, isso poderia causar grandes diculdades como
por exemplo um problema (PQ) muito grande.
No que segue, apresenta-se uma pequena descrio de alguns mtodos de feixe
onde possvel ver suas modicaes. Para evitar detalhes tcnicos, procura-se dar
foco as principais diferenas na escolha da aproximao por plano de cortes fk , o
erro de linearizao ekj ou a matriz de estabilizao Mk .

1.4.5

Mtodos de Feixe com Mtrica Varivel Diagonal

A ideia dos mtodos com mtrica varivel diagonal est baseada na introduo de
um parmetro de ponderao no termo quadrtico da funo objetivo do problema
quadrtico, para acumular alguma informao de segunda ordem sobre a curvatura
de f ao redor de xk . Portanto a matriz de mtrica varivel Mk considerada na
forma diagonal
Mk = uk I,
com o parmetro de ponderao uk > 0.
Baseado no algoritmo de ponto proximal de [33] e no trabalho de [23], o mtodo
de feixe proximal foi apresentado em [34], onde tambm uma tcnica de interpolao
quadrtica para atualizar uk foi introduzida.
Um resultado similar foi concludo em [19], onde o mtodo de feixe com regies
de confiana foi desenvolvido combinando a ideia do feixe com o clssico mtodo de
regies de conana de [35, 36].
Alm disso, o mtodo quase-Newton diagonal poor mans de [37] e o mtodo
de feixe proximal de [38] baseados na Regularizao de Moreau-Yosida esto nesta
classe de mtodos de feixe.
23

Estes mtodos diferenciam-se basicamente nas estrategias para atualizar o


parmetro uk .

1.4.6

Mtodos de Feixe com Mtrica Varivel

O desenvolvimento de mtodos de segunda ordem para otimizao no


diferencivel tem chamado a ateno de alguns pesquisadores durante toda a sua
histria. Vrias tentativas de empregar
Mk

como um matriz cheia

com algum tipo de atualizao tem sido propostos por alguns autores. J em
seu trabalho pioneiro [12], Lemarchal apresenta uma verso do mtodo de Feixe
com mtrica varivel, utilizando a formulao clssica do BFGS com atualizao
secante para otimizao diferencivel (veja [39], p.135). Devido ao desapontamento
com os resultados numricos obtidos em [40], esta ideia foi abandonada por
aproximadamente duas dcadas. Depois, baseado na regularizao de MoreauYosida, atualizao BFGS e na tcnica de busca em curva, um mtodo quase-Newton
foi proposto em [37]. De acordo com as experincias numricas em [41], v-se que os
mtodos de Feixe com mtrica varivel trabalham razoavelmente bem. Um trabalho
mais recente baseado no mtodo de feixe com mtricas variveis usando atualizao
BFGS, foi proposto em [42], a ideia do mtodo usar somente trs subgradientes
(dois calculados em xk e yk+1 , e um agregado, contendo informaes das ltimas
iteraes). O proposito disso, segue do fato que a dimenso do problema quadrtico
trs e, com isso, o problema pode ento ser resolvido com clculos simples. Os
testes numricos em [42] mostram que a tcnica comparvel com os mtodos de
feixe com mtrica varivel diagonal em nmero de avaliaes da funo, contudo o
tempo computacional pode ser signicativamente menor.

1.4.7

Mtodos de Feixe - Newton

Um avano na direo de mtodos de feixe com informaes de segunda ordem


foi dado em [43], onde ao invs de um modelo de planos de corte linear por partes
(1.15), os autores introduzem um modelo quadrtico da forma
1
fk (x) := max f (yj ) + sTj (x yj ) + j (x yj )T Mj (x yj )) .
jJk
2


24

(1.20)

onde j um parmetro de amortecimento. A direo de busca encontrada no


problema (1.16) foi ento trocada pelo problema
dk := arg minn fk (xk + d) .
dR

1.4.8

(1.21)

Mtodos de Feixe com Dados inexatos

Existe tambm variantes do mtodo de feixes para casos onde a funo objetivo
e o subgradiente possuem dados inexatos. Supe-se que para cada ponto x Rn e
> 0 possvel calcular o valor aproximado da funo f (x) satisfazendo
f (x) f (x) f (x)
e um -subgradiente s do -subdiferencial
f (x) = {s Rn | f (y) f (x) + sT (y x) , para todo y Rn }.
Ento o modelo de planos de corte em (1.15) pode ser substitudo por um modelo
de planos de corte aproximado
fk (x) = max fj (yj ) + (sj )T (x yj ) .
jJk

onde sj j f (yj ) para todo j Jk e 0.


Em [44] o modelo de plano de corte generalizado de [11] foi estendido para dados
inexatos, em outras palavras
Mk = I.
Depois o mtodo de feixe proximal de [34] com
Mk = u k I
foi estendido em [45] onde tambm alguma experincia numrica foi reportada.

1.5

Otimizao No Convexa No Diferencivel

Nesta seo considera-se o seguinte problema de otimizao irrestrito

minimize f (x)
sujeito a x Rn

25

(1.22)

onde a funo objetivo f : Rn R suposta localmente Lipschitz contnua. Note


que f no precisa ser convexa. O subdiferencial de f agora denido por
f (x) = conv{ lim f (xi ) | xi x and f (xi ) existe.}
i

(1.23)

Lembrando que para as funes localmente Lipschitz contnuas tem-se a seguinte


condio necessria de otimalidade: Se f , localmente Lipschitz contnua, atinge um
mnimo local em x , ento
0 f (x ).
(1.24)
A no convexidade trs algumas diculdades, como por exemplo: Os mtodos
no podem garantir a otimalidade local das solues, pois somente alguns
candidatos, chamados pontos estacionrios, satisfazem a condio (1.24). Outro
fato que deve ser levado em considerao, que no caso convexo, o modelo de
planos de corte era uma estimao da funo objetivo e o erro de linearizao no
negativo media o quo boa era a aproximao do problema original. No caso no
convexo, estas propriedades no so mais vlidas: ekj pode ser muito pequeno ou
negativo embora o ponto teste yj esteja longe do ponto de iterao corrente xk e
assim o subgradiente correspondente sj seria intil. Por estas razes, as principais
modicaes para os mtodos no convexos se concentram no erro de linearizao.

1.5.1

Regras de eliminao de subgradientes

Alguns mtodos so propostos simplesmente ignorando o erro de linearizao ekj ,


Denio (1.33). Este procedimento j era feito nos mtodos de gradiente conjugado
[46], onde por exemplo, o seguinte tipo de regra de eliminao proposta
Jk := {1 j k | kxk yj k k }
onde k tende para zero. Em [47] um mtodo de feixe transladado, proposto sem
qualquer tipo de regra de eliminao, pois o erro de linearizao sempre nonegativo, ou seja,
jk = f (yj ) f (xk ) 0.
Um regra de eliminao mais complicada proposta em [11], Captulo 4, para
mtodos de planos de corte generalizados. O erro de linearizao substitudo por
seu valor absoluto
jk := |ekj | = |f (xk ) f (yj ) sTj (xk yj )| para todo j Jk ,

26

e o algoritmo elimina a informao dos subgradientes anteriores sempre que


kdk k mS max{skj },
jJk

onde mS > 0 uma tolerncia para resetar, denida pelo usurio e


skj := kxj yj k +

k1
X
i=j

kxi+1 xi k

(1.25)

a medida da distncia estimada de kxk yj k sem a necessidade de armazenar os


pontos testes yj .

1.5.2

Subgradiente com medida local

No que segue, introduz-se outra estratgia popular para evitar as diculdades


causadas pela no convexidade. Para adicionar alguma informao local ao modelo,
o erro de linearizao substitudo pelo subgradiente com medida local
n

jk := max ekj , kxk yj k2

(1.26)

em [48] para o mtodo -steepest descent. O parmetro de medida da distncia 0


pode ser denido como zero quando a funo f convexa. Os autores tambm
prope o uso de uma medida da distncia (1.25) evitando o armazenamento dos
pontos testes yj , ou seja, trocando (1.26) por
n

jk := max ekj , (skj )2 .

1.6

Otimizao Convexa No Diferencivel com


Restries

Considera-se o seguinte problema de otimizao

minimize f (x)
n
xR

sujeito a ci (x) 0,

i = 1, ..., m,

(1.27)

onde a funo objetivo f : Rn R e as restries funcionais ci : Rn R so


supostas convexas. Para este problema, considera-se que ele satisfaz a Condio de
Qualificao de Slater, i.e., se
c(y) < 0

27

para algum y Rn , onde c : Rn R a funo restrio total, denida por


c(x) := max ci (x).

(1.28)

i=1,...,m

Teorema 1.34. Se o problema (1.27) convexo e satisfaz a condio de qualificao


de Slater, ento (1.27) atinge seu mnimo em x se e somente se existe o
multiplicador de Lagrange 0 Rm tal que i ci (x ) = 0 para todo i = 1, ..., m e
0 f (x ) +

m
X

i ci (x ).

i=1

Demonstrao. Veja [13].

1.6.1

Mtodo de Linearizao de Restries

Nos mtodos de feixe, a forma mais popular de se lidar com as restries


encontrar um minimo irrestrito da chamada improvement function [23],
H(x; y) = max{f (x) f (y), c(x)}.
O modelo, a partir de planos de corte, da funo H(x; y) determinado
linearizando a funo objetivo e a restrio, considerando
k (x) = max{f(x) f (xk ), ck (x)},
H

(1.29)

onde
n

ck (x) = max c(yj ) + rTj (x yj ) .


jJk

(1.30)

e rj c(yj ). A direo de busca encontrada em (1.16) substituda por


k (xk + d) + 1 dT Mk d .
dk := arg minn H
dR
2


(1.31)

Esta abordagem foi empregada no contexto do mtodo de plano de corte


generalizado, ou seja, para
Mk = I,
no trabalho de Miin [24]. Verses salvando e armazenando subgradientes com
estratgias de agregao foram introduzidas em [11], Captulos 5 e 6.
Em [13] a abordagem de linearizao da restrio foi usada com o mtodo de
feixe proximal, ou seja, com
Mk = uk I,
com uk > 0.
28

1.6.2

Mtodo de Funo Penalidade Exata

Uma outra estratgia em otimizao no diferencivel com restries utilizar a


funo de penalidade exata [49],
e(x; ) := f (x) +

m
X
i=1

i max{ci (x), 0}.

O modelo de planos de corte da funo de penalidade exata ento denido por


ek (x; k ) := fk (x) +

m
X
i=1

ik max{
cki (x), 0}.

onde
n

cki (x) = max ci (yj ) + rTi,j (x yj )


jJk

e ri,j ci (yj ). A direo de busca ento obtida por

1
dk := arg minn ek (xk + d) + dT Mk d .
dR
2


1.7

(1.32)

Algorimo de Pontos Interiores e Direes


Viveis

O algoritmo que apresentado nesta seo foi proposto por Jos Herkovits em [50,
51], e denominado FDIPA (Feasible Direction Interior Point Algorithm). Proposto
para lidar com problemas de otimizao no linear diferencivel, o FDIPA converge
globalmente para pontos Karush-Kuhn-Tucker. um mtodo diferenciado, pois no
necessria a soluo de subproblemas quadrticos, e no se trata de um mtodo
de penalidades ou barreira, ou ltros.
Apesar de ser uma tcnica para problemas diferenciveis, neste trabalho, os
sistemas internos do FDIPA so amplamente utilizados na determinao de direes
viveis de descida para os mtodos que esto sendo apresentados nos captulos
seguintes.
Considera-se o seguinte problema de otimizao no linear diferencivel com
restries de desigualdade:

minimize f (x)
n
xR

sujeito a g(x) 0

(1.33)

e caracteriza-se suas solues, onde f : Rn R e g : Rn Rm so funes


diferenciveis. Denota-se por g(x) Rnm a matriz das derivadas de g, =
29

{x Rn | g(x) 0} o conjunto vivel e introduzindo a varivel auxiliar Rm ,


chamada varivel dual ou multiplicador de Lagrange, deni-se a funo Lagrangiana
associada ao problema (1.33)
L(x, ) = f (x) + T g(x),
cuja matriz Hessiana dada por
m
P
H(x, ) = 2 f (x) +
i 2 g(x).
i=1

Representa-se por I(x) = {i | gi (x) = 0} o conjunto de ndices cujas restries


so ativas e se diz que x um ponto regular se os vetores gi (x) para i I(x) forem
linearmente independentes.
Dado um ponto interior inicial, o FDIPA gera uma sequncia {xk } de pontos
interiores tais que
f (xk+1 ) < f (xk ) e gi (xk ) < 0 para i = 1, ..., m

que converge para o conjunto de pontos KKT do problema. Em cada iterao uma
direo denida de modo que tambm seja de descida para a funo objetivo,
em seguida, o sistema perturbado para introduzir uma deexo na direo de
descida no sentido do interior da regio vivel de modo a obter ainda uma direo
de descida vivel de . Uma busca linear inexata nessa direo para a funo
objetivo determina o prximo ponto interior, garantindo a convergncia global.
Para isso, so assumidas as seguintes hipteses:
Hiptese 1.1. Seja {x Rn | g(x) 0} o conjunto vivel. Ento existe um
nmero real a tal que o conjunto a {x | f (x) a} compacto e tem interior
denotado por int(a ).
Hiptese 1.2. Cada x int(a ) satisfaz g(x) < 0.
Hiptese 1.3. As funes f e g so continuamente diferenciveis em a e suas
derivadas satisfazem uma condio de Lipschitz.
Hiptese 1.4. (Condio de Regularidade) Um ponto x a chamando regular
se os gradientes gi (x), para i tal que gi (x) = 0, so linearmente independentes. O
FDIPA requer a hiptese de regularidade numa soluo local de (1.33).
Definio 1.35. Um campo de direes d(x) definido em chamado um campo
uniforme de direes viveis do problema (1.33), se existe um tamanho de passo
> 0 tal que x + td(x) for all t [0, ] e para todo x .
Herkovits mostrou em [51] que d uma direo vivel se dT gi (x) < 0 para
qualquer i tal que gi (x) = 0. A Denio 1.35 introduz uma condio para que
um campo de vetores d(x), que mais forte do que simplesmente viabilidade de
30

qualquer elemento de d(x). Quando d(x) constitui um campo uniforme de direes


viveis, ele suporta um segmento vivel [x, x + (x)d(x)], tal que (x) limitado
inferiormente em por > 0.
Se x um ponto regular e mnimo local para o problema (1.33), ento existe
Rm tal que
f (x ) + g(x ) = 0

(1.34)

G(x ) = 0

(1.35)

(1.36)

g(x ) 0

(1.37)

onde G(x) = diag[g1 (x), ..., gm (x)] uma matriz m m.


Considerando as equaes (1.35) e (1.36), e fazendo
y = (x, ) e (y) = (f (x) + g(x), G(x))
obtm-se

H(x,
)
g(x)

(y) =
g(x)T G(x)

onde = diag[1 , ..., m ] uma matriz m m.


Uma iterao de Newton para resolver o sistema de equaes lineares (y) = 0,
com o ponto yk = (xk , k ) na iterao k, dene um novo ponto yk+1 = (xk+1 , k+1 )
soluo do sistema linear
(yk )(y yk )T = (yk )T
que pode ser reescrito como

Bk
g(xk ) x xk
f (xk ) + g(xk )k

=
,
k g(xk )T G(xk )
k
G(xk )k

(1.38)

onde substitui-se H k (xk , k ) por B k .


De fato, a matriz simtrica B k Rnn pode ser considerada como uma
aproximao da matriz Hessiana obtida por alguma tcnica quase-Newton ou pela
prpria matriz identidade. Contudo, como requerimento para a convergncia global
do presente algoritmo, B k deve ser denida positiva.
Introduzindo algumas modicaes na iterao (1.38) obtm-se, para um dado
par (xk , k ), uma nova estimativa com valor da funo objetivo menor. Com isto,
deni-se uma direo d no espao primal por d = xk+1 xk .
Ento obtm-se o sistema linear
B k d + g(xk ) = f (xk )
k g(xk )T d + G(xk ) = 0
31

(1.39)
(1.40)

A soluo (d , ) deste sistema, fornece uma direo d , e uma nova estimativa


para . Em [51], Herskovits provou que d uma direo de descida para f , ou
seja, que dT f (xk ) < 0.
Entretanto, d pode no ser uma direo vivel, pois quando alguma restrio
se aproxima de zero, d tende a uma direo tangente ao conjunto vivel.
De fato, reescrevendo a equao (1.40) tem-se
ki gi (xk )T d + gi (xk )i = 0 i = 1, ..., m
o que implica em gi (xk )T d = 0 para todo i tal que gi (xk ) = 0.
Para evitar este problema, adiciona-se um vetor negativo no lado direito de (1.40)

e dene-se um novo sistema em (d, )


= f (xk )
B k d + g(xk )
= k k
k g(xk )T d + G(xk )
a nova estimativa de .
onde k > 0, d a nova direo e
Neste caso, (1.42) equivalente a
ki gi (xk )T d + gi (xk )i = k ki para i = 1, ..., m
e, consequentemente
gi (xk )T d = k < 0
para as restries ativas tais que ki 6= 0. Logo d uma direo vivel.

Figura 1.5: Direo de busca do FDIPA


32

(1.41)
(1.42)

A incluso do termo negativo do lado direito da equao (1.40) produz uma


deexo em d, proporcional , na direo do interior da regio vivel. Para
garantir que d seja uma direo de descida, seve ser escolhido convenientemente,
veja [51].
podem ser obtidos resolvendo-se os sistemas de
Observa-se que direo d e
equao lineares (1.39)-(1.40) e (1.41)-(1.42) de modo que so denidos
= + .
d = d + d e
Agora se est em condies de apresentar o FDIPA.

1.7.1

Feasible Direction Interior Point Algorithm

ALGORITMO - FDIPA
Parmetros: , (0, 1), > 0, (0, 1).
Dados: (Inicializao)
x0 , 0 < 0 < Rn , B 0 Rnn simtrica e denida positiva.
Passo 1: (Calculo da direo de busca)
i) Calcule (d , ) resolvendo o sistema linear

Bd + g(x) = f (x)

g(xk )T d + G(x) = 0

Se d = 0 pare.

ii) Calcule (d , ) resolvendo o sistema linear

Bd + g(x) = 0

g(x)T d + G(x) =

iii) Se dT f (x) > 0 ento


= min

kd k22

Caso contrrio,

dT f (x)
; ( 1) T
d f (x)

= kd k22

= +
iv) Calcule a direo de busca d = d + d e
Passo 2: (Busca Linear)
Calcule t, o primeiro elemento da seqncia {1, , 2 , 3 , ...} que satisfaz

33

f (x + td) f (x) + tf (x)T d,


0,
gi (x + td) < 0
se
gi (x + td) gi (x) caso contrrio, onde i = 1, ..., m.

e
ou

Passo 3: (Atualizaes)
i) Faa
x := x + td
e dena os novos valores de > 0 e B simtrica, denida positiva.
ii) V para o passo 1.

A seguinte atualizao para foi considerada em [51],


i := max [i ; kd k2 ], > 0,

34

para i = 1, ..., m.

Captulo 2
Algoritmo para Otimizao
Convexa No Diferencivel
Introduz-se o algoritmo para otimizao convexa no diferencivel, que foi
apresentado inicialmente em 2005, na tese de doutorado de Freire [29]. Contudo,
neste trabalho, foram realizadas algumas modicaes em relao ao trabalho de
Freire, como por exemplo, a introduo do passo srio de descida mxima,
hipteses, e consequentemente partes da demonstrao da convergncia global do
algoritmo. Por m, foram feitos novos testes numricos e uma anlise comparativa
do desempenho com outros algoritmos traando seu performance proles, usando
como medida de performance o nmero de iteraes e avaliaes da funo.
Ressalta-se que no sero citados os detalhes das modicaes entre o algoritmo
apresentado por Freire e o que por hora est sendo apresentado, uma vez que, o
objetivo deste trabalho dar continuidade na pesquisa e no aprimoramento das
tcnicas inicialmente apresentadas por Freire em sua tese de doutoramento.

2.1

Mtodo

Neste estudo considera-se o seguinte problema de otimizao:

minimize f (x)
sujeito a x Rn ,

(P.1)

onde f : Rn R uma funo convexa, no necessariamente diferencivel. Seja


f (x) o subdiferencial [16] de f em x. No que segue, assumi-se que um subgradiente
arbitrrio s f (x) pode ser calculado em qualquer ponto x Rn .
Uma caracterstica especial da otimizao no diferencivel o fato de que
o gradiente f (x) pode mudar descontinuamente, e ainda, no precisa ser
necessariamente pequeno na vizinhana de um extremo local da funo objetivo,
35

como o leitor pode ver em [15, 31]. Por esta razo, que os mtodos de otimizao
clssicos, baseados no gradiente, no podem ser utilizados de forma direta. Tendo
isso em vista, novos mtodos tem sido propostos para resolver o problema (P.1),
como pode ser visto no captulo 2 ou, por exemplo, nos trabalhos de Kiwiel [11],
Makla [13].
Nesta nova proposta de algoritmo, so combinadas algumas ideias do clssico
mtodo de planos de corte de Kelley [10], os passos srio"e nulo"do mtodo de feixe
tradicional [11] com os sistemas internos do FDIPA - algoritmo de pontos interiores e
direes viveis desenvolvido por Herskovits [30, 50], para criar um mtodo adequado
a resoluo de problemas convexos no diferenciveis. A escolha desta abordagem foi
feita com base na no utilizao de qualquer tipo de subproblema de programao
quadrtica, funes de penalidade, barreira, ou mesmo ltros.
A metodologia utilizada est baseada na substituio do problema (P.1) por um
problema equivalente restrito (PE.1) com uma funo objetivo linear e com restries
de desigualdade no diferenciveis,

minimize F (x, z) = z

(PE.1)

(x,z)Rn+1

sujeito a

f (x) z.

onde z R uma varivel auxiliar. Dessa forma pretende-se criar um algoritmo


que gere uma sequncia decrescente de pontos viveis {(xk , z k )}kN int(epi f ) que
convirja para o mnimo de f (x). E para isso, o algoritmo gera uma sequencia que
satisfaz
z k+1 < z k , e f (xk ) < z k para todo k.
Utilizando as ideias do mtodo de planos de corte [10], o algoritmo gera uma
aproximao linear por partes das restries de (PE.1) da seguinte forma: Considere
o plano de corte
gi (x, z) = f (yi ) + (si )T (x yi ) z,

i = 0, 1, ...,

onde yi Rn so pontos auxiliares, si f (yi ) so subgradientes nestes pontos e


representa o nmero de planos corrente. Agora dena,
g (x, z) [g0 (x, z), ..., g (x, z)]T , g : Rn R R+1
e o problema auxiliar corrente

minimize F (x, z) = z
(x,z)

sujeito a

g (x, z) 0.

36

(PA.1)

Ao invs de resolver este problema, o presente algoritmo utiliza os sistemas


internos do FDIPA para determinar uma direo de busca dk para (PA.1). Com
o FDIPA a direo de descida dk pode ser calculada ainda se o problema auxiliar
(PA.1) no tiver um mnimo nito. E portanto, no necessria a utilizao de um
termo quadrtico estabilizante como feito nos mtodos de feixe, como pode ser
visto em [15].
Quando usado para lidar com problemas de programao linear (como (PA.1)),
o FDIPA se comporta de forma similar aos mtodos de ponto interiores para
programao linear [30], desta forma, esta uma boa alternativa para resolver este
tipo de problema.
Em cada iterao, um programa auxiliar (PA.1) linear denido substituindo a
restrio f (x) z por planos de corte. Com isso, obtm-se uma direo de descida
vivel para (PA.1), e um tamanho de passo calculado.
O maior passo vivel dado por t max{t | g k ((xk , z k ) + tdk ) 0}. Como t
no sempre nito, considera-se
tk := min{tmax , t}.
Ento, um novo iterado (xk+1 , z k+1 ) denido de acordo com o seguinte
procedimento: O algoritmo produz pontos auxiliares (y , w ) e quando um ponto
auxiliar est no interior do epgrafo de f , se diz que foi realizado um passo srio
e este ponto ser o novo iterado. Caso contrrio, continua-se com o mesmo iterado
e se diz que foi realizado um passo nulo. Em todos os casos, um novo plano de
corte adicionado e o procedimento se repete at que um passo srio seja obtido.
Com a direo de descida e um tamanho de passo calculados, um novo ponto
auxiliar com respeito a (PA.1) calculado. Para isso, considera-se os pontos da
forma:
k
k
(x+1
, z+1
) = (xk , z k ) + tk dk

(2.1)

viveis com respeito ao problema auxiliar (PA.1). Depois calcula-se o prximo ponto
auxiliar fazendo,
k
k
(y+1
, w+1
) = (xk , z k ) + tk dk ,
(2.2)
onde (0, 1). Se (y+1 , w+1 ) vivel com respeito a (PE.1) e descente para f ,
atualiza-se a soluo (i.e. faz-se (x+1 , z+1 ) = (y+1 , w+1 )) e diz-se que o passo
um passo srio de descida vivel.
Se o novo ponto auxiliar vivel com relao a (PE.1), mas no de descida
para f , considera-se que o ponto de iterao corrente (xk , z k ) est longe da fronteira
do epgrafo de f . E neste caso, ao invs de usar a direo calculada pelo FDIPA,

37

utiliza-se a direo de descida rpida ez (onde ez = [0, ..., 0, 1]T Rn+1 ) para
obter um ponto ainda estritamente vivel e sucientemente prximo da fronteira do
epgrafo. Assim, para a prxima iterao faz-se f (xk+1 ) = f (xk ) e pode-se provar
que a nova direo de busca gerada pelo FDIPA tambm de descida para f . Este
passo chamado de passo srio de mxima descida.
Se nenhum dos casos acima citados acontece, o algoritmo realiza um passo nulo.
Neste caso, a soluo no atualizada, mas um novo plano de corte calculado em
(y+1 , w+1 ) e uma nova direo vivel com respeito a (PA.1) calculada usando o
FDIPA. Ento o procedimento se inicia novamente.

2.1.1

Nonsmooth Feasible Direction Algorithm

ALGORITMO - NFDA
Parmetros: Escolha uma tolerncia aproximada nal > 0. Selecione os
parmetros de controle > 0 e (0, 1) para o limite da deexo. Selecione
os multiplicadores (1/2, 1) para o tamanho de passo e o tamanho mximo
de passo tmax > 0.
Dados: (Inicializao) Escolha um ponto estritamente vivel (x0 , z 0 )
int(epi f ), um vetor positivo inicial 0 R e uma matriz simtrica denida
positiva B 0 R(n+1)(n+1) . Seja y00 = x0 , k = 0 e = 0. Calcule f (x0 ).
Passo 1: (Plano de Corte inicial) Calcule sk0 f (xk ) e um novo plano de
corte
g0k (xk , z k ) = f (xk ) z k .
Considere

sk
0

g0k (xk , z k ) =

dena

Rn+1 ,

g k0 (xk , z k ) = [g0k (xk , z k )] R, e

g k0 (xk , z k ) = [g0k (xk , z k )] Rn+1 .


Passo 2: Calculo da Direo de Descida Vivel dk para (PA.1)
i) Calcule dk, e k, , resolvendo
B k dk, +
g k (xk , z k )k, = F (x, z)

k [
g k (xk , z k )]T dk, + Gk (xk , z k )k, = 0.
38

(2.3)
(2.4)

Calcule dk, e k, , resolvendo


B k dk, +
g k (xk , z k )k, = 0

(2.5)

k [
g k (xk , z k )]T dk, + Gk (xk , z k )k, = k ,

(2.6)

onde
k, := (k,1 , ..., k, ),

k, := (k,1 , ..., k, ),

k := (k1 , ..., k ),

k := diag[k1 , ..., k ],

Gk (x, z) := diag[g1k (x, z), ..., gk (x, z)].

ii) Se (dk, )T F (x, z) > 0, faa = kdk, k2 .


Caso contrrio, faa
= min

kdk, k2 ,

(dk, )T F (x, z)
.
( 1) k T
(d, ) F (x, z)
)

(2.7)

iii) Calcule a direo de descida vivel


dk = dk, + dk, .

(2.8)

Passo 3: Calcule um tamanho de passo


n

tk = min tmax , max{t | g k ((xk , z k ) + tdk ) 0} .

(2.9)

Se

k
d

ento pare com (xk , z k ) como sendo a soluo. Caso contrrio, faa
k
k
, w+1
) = (xk , z k ) + tk dk ,
(y+1

e calcule o valor correspondente f (yk ).


k
k
Se f (y+1
) w+1
, ento tem-se um passo nulo: v para o Passo 6). Caso
k
contrrio, faa d = dk , dk = dk , dk = dk , k = k , k = k e k = .
k
Se f (xk ) f (y+1
) v para o Passo 4, seno: v para o Passo 5.
k
k
Passo 4: (Passo srio de descida vivel) Faa (xk+1 , z k+1 ) = (y+1
, w+1
) e
k+1
k+1
k
k+1
f (x ) = f (y+1 ). Dena 0 > 0, a matriz B
simtrica e denida
k
k
positiva, faa k = k + 1, = 0, y0 = x e v para o Passo 1.

39

Passo 5: (Passo srio de mxima descida) Faa


(xk+1 , z k+1 ) = (xk , z k ) (z k f (xk ))f (x, z) e f (xk+1 ) = f (xk ). (2.10)
Dena k+1
> 0, a matriz B k+1 simtrica e denida positiva, faa k = k + 1,
0
= 0, y0k = xk e v para o Passo 1.
k
Passo 6: (Passo nulo) Faa (xk+1 , z k+1 ) = (xk , z k ), calcule sk+1 f (y+1
),
um novo plano de corte e seu gradiente
k
k
k
) + (sk+1 )T (xk y+1
) zk .
g+1
(xk , z k ) = f (y+1

Considere

sk
+1

g+1
(xk , z k ) =

determine

k
g k+1 (xk , z k ) = [g0k (xk , z k ), ..., gk (xk , z k ), g+1
(xk , z k )]T R+2 , e

g k+1 (xk , z k ) = [g0k (xk , z k ), ..., gk (xk , z k ), g+1


(xk , z k )] R(n+2)(+2) .

Dena = + 1 e v para o Passo 2.

Os valores de e B devem satisfazer as seguintes hipteses:


Hiptese 2.1. Existem nmeros positivos 1 e 2 tais que
1 kdk2 dT Bd 2 kdk2 ,

para

d Rn+1 .

Hiptese 2.2. Existem nmeros positivos I , S , tais que I i S , para


i = 0, 1, . . . , .

40

2.2

Anlise da Convergncia

Nesta seo, realiza-se a demonstrao da convergncia global do presente


algoritmo. Primeiramente, se mostra que a direo de busca dk uma direo
de descida vivel para a z. Ento, prova-se que o nmero de passo nulos em cada
iterao nito. Isto ; Como (xk , z k ) int(epi f ), depois de um nmero nito de
sub-iteraes, obtm-se (xk+1 , z k+1 ) int(epi f ). Consequentemente, a sequncia
n
o
(xk , z k )
limitada e est no interior do epgrafo de f . Ento, mostra-se
kN

que qualquer ponto de acumulao da sequncia (xk , z k )

uma soluo do

kN

problema (P.1). Tem-se ainda que dk = 0 somente num ponto estacionrio e que

k
d 0 quando k , fato este que justica o critrio de parada no passo 3).

Finalmente, mostra-se que para pontos de acumulao (x , z ) da sequncia


o
(xk , z k )
, a condio de otimalidade 0 f (x ) satisfeita.
kN
Em alguns momentos, alguns ndices sero omitidos para simplicar a notao.

Hiptese 2.3. O conjunto {x Rn | f (x) f (x0 )} compacto.


Hiptese 2.4. Para todo (x, z) int(epi f ) e todo i tal que gi (x, z) = 0 os vetores
gi (x, z) so linearmente independentes.
Observa-se que as solues d , , d , e dos sistemas lineares (2.3), (2.4), e
(2.5), (2.6) so nicas. Este fato uma consequncia do lema provado em [52, 53] e
enunciado como segue:
Lema 2.1. Para qualquer vetor (x, z) int(epi f ) e qualquer matriz positiva definida
B R(n+1)(n+1) , a matriz

g (x, z)

,
T
[
g (x, z)]
G(x, z)
no singular.
E segue do resultado anterior que d , d , e so limitados no conjunto
= +
denido na Hiptese 2.3. Como limitado superiormente, tem-se
limitado.
Lema 2.2. A direo d satisfaz

dT F (x, z) dT Bd .

Demonstrao. Veja a demonstrao do Lema 4.2. em [30].


Como consequncia, tem-se que a direo de busca d de descida para a funo
objetivo F (x, z), (i.e., para (PA.1) e (PE.1)).

41

Lema 2.3. A direo d definida no Passo 2, item iii) do algoritmo uma direo
de descida para (PE.1) e (PA.1).
Demonstrao. Por denio d = d + d , logo se pode escrever
dT F (x, z) = dT F (x, z) + dT F (x, z).
dT F (x, z)
, veja o Passo 2
No caso em que dT F (x, z) > 0, tem-se que ( 1) T
d F (x, z)
do algoritmo. E como d uma direo de descida para F , pelo Lema 2.2, obtm-se
dT F (x, z) dT F (x, z) + ( 1)dT F (x, z)
= dT F (x, z) 0.

(note que dT F (x, z) = 0 somente se d = 0). Agora, supondo que dT F (x, z)


0, tem-se que a inequao dT F (x, z) dT F (x, z) < 0 verdadeira. Portanto,
d uma direo de descida para F .
Embora a direo d, calculada no Passo 2 do algoritmo, seja de descida para
(PE.1) e (PA.1), isso no signica necessariamente que ela seja de descida para
(P.1). Na verdade, no prximo Lema mostra-se que o algoritmo descida em relao
a funo objetivo f . Em seguida, prova-se que, quando o ponto de iterao corrente
est sucientemente prximo da fronteira do epgrafo de f , a direo d tambm
de descida para o problema (P.1).
Lema 2.4. Seja (xk , z k ) int(epi f ) o ponto na k-sima iterao do algoritmo. Para
k 1, tem-se
f (xk+1 ) f (xk )
e
z k+1 < z k .
Alm disso, o prximo iterado (xk+1 , z k+1 ) int(epi f ).
Demonstrao. A atualizao do ponto (xk , z k ) feita no Passo 4 ou Passo 5 do
k
k
algoritmo. No Passo 4, faz-se (xk+1 , z k+1 ) = (y+1
, w+1
) somente se,
k
k
f (y+1
) w+1

k
e f (xk ) f (y+1
)

portanto aps a atualizao, tem-se que f (xk+1 ) z k+1 e f (xk+1 ) f (xk ).


Alm disso, tem-se que (dk )T F (x, z) < 0 pelo Lema 2.3 de onde dkz < 0 e como
o prximo componente z k+1 calculado pela formula
z k+1 = z k + tk dkz ,
com , tk > 0, segue que z k+1 z k .
Por outro lado, no Passo 5, usa-se a direo de descida rpida ez como direo
de busca. Logo, da equao (2.10) segue xk+1 = xk e z k+1 = z k (z k f (xk )),
42

para [0, 1] e z k f (xk ) > 0. De onde, novamente tem-se z k+1 z k e f (xk+1 ) =


f (xk ) < z k+1 .
Lema 2.5. A sequencia {(xk , z k )}kN gerada pelo algoritmo limitada.
Demonstrao. A sequencia {(xk , z k )}kN limitada, pois z k+1 < z k para todo k e
por ela estar contida no conjunto limitado dado por
epi(f ) {(x, z) Rn+1 | z < z 0 }.
Lema 2.6. Seja (xk , z k ) int(epi f ) um ponto suficientemente prximo da fronteira
do epgrafo de f (i.e. z k f (xk < tk dkz ) ). Se (xk , z k ) no um ponto estacionrio,
ento a direo dk definida em (2.8) uma direo de descida para o problema (P.1).
Demonstrao. Como (xk , z k ) int(epi f ), segue que z k = f (xk ) + 1 para algum
1 0. Tambm tem-se que dkz < 0 pelo Lema 2.3. O prximo iterado em z
calculado pela frmula z k+1 = z k + tk dkz com , tk > 0. Logo, se pode escrever
z k+1 = z k 2 = (f (xk )+1 )2 , onde 2 = tk dkz > 0. Quando 1 sucientemente
pequeno (i.e. 1 < 2 ) obtm-se que z k+1 f (xk ) < 0.
Agora f (xk+1 ) z k+1 , pois (xk+1 , z k+1 ) int(epi f ) pelo Lema 2.4.
Portanto combinando-se os resultados obtm-se que f (xk+1 ) z k+1 < f (xk ) e
dk uma direo de descida para f por denio.
Lema 2.7. A direo d definida em (2.8) limitada.
Demonstrao. A escolha de (veja (2.7)) assegura que se tenha
kd k2

para algum > 0.

(2.11)

Por outro lado, do Lema 2.2 e da Hiptese 2.1, obtm-se que


dT f (x, z) 1 kd k2 ,
e portanto, devido a (2.7),
min

(1 )1
, T
d f (x, z)

kd k2 ,

se dT f (x, z). Devido a (2.7) e como d limitada, existe um limite inferior


low > 0 tal que
low kd k2 .

43

Portanto, pela limitao de d , a deexo dada por positiva limitada como


acima. De (2.8) e (2.11), tem-se
kdk = kd + d k

kd k + kd k

kd k + kd k2 kd k

= (1 + kd k kd k) kd k .

Portanto, existe > 1 tal que kdk kd k vlida. E devido a limitao de d ,


temos que d limitada como acima.
O Lema seguinte apenas um exerccio que ser repetido aqui.
X.
Lema 2.8. Seja X Rn um conjunto convexo. Considere x0 int X e x
k
n
k
k
x
. Seja {x }kN Rn uma
Seja {
x }kN R \ X uma sequencia, tal que x
sequencia definida por xk = x0 + (
xk x0 ) com (0, 1). Ento existe k0 N
tal que xk int X, para todo k > k0 .
Demonstrao. Observa-se que xk = x0 + (
xk x0 ) x0 + (
x x0 ) = x
] X e (0, 1) temos que x int X
quando k . Como o segmento [x0 , x
e, como consequncia existe > 0 tal que B(x , ) int X. Como xk x existe
k0 N tal que xk B(x , ) int X, para todo k > k0 .
OBS 2.1: A sequencia {(xk , zk )}N denida em (2.1) para k xo, est num
conjunto limitado. De fato, pelo Lema 2.5, existe r > 0 tal que ||(x, z)|| < r para
todo ponto no conjunto dado por int(epi f ) {(x, z) Rn+1 | z < z 0 }. Ento para
qualquer passo srio tem-se ||(xk , z k )|| < r. Para a sequencia de baixo, dada por
(xk , zk ) = (xk , z k ) + td com t limitado por tmax e ||d|| limitado por um valor D,
segue que, pela desigualdade triangular ||(xk , zk )|| ||(xk , z k )|| + Dtmax , ento a
sequencia {(xk , zk )}N est numa bola centrada na origem e raio r + Dtmax .
Proposio 2.9. Considere a sequencia {(xik , zik )}iN definida em (2.1) para k
fixado. Se (
xk , zk ) um ponto de acumulao desta sequencia, ento zk = f (
xk ).
Demonstrao. Pela construo da sequencia {(xik , zik )}iN , segue que, num ponto
de acumulao tem-se que f (
xk ) zk . Logo, suponha que zk < f (
xk ) e considere
uma subsequencia convergente {(xik , zik )}iN (
xk , zk ) tal que {ski }iN sk , onde
N N. Estas sequencias existem porque, tanto {(xik , zik )}iN como {ski }iN esto
num conjunto compacto pela Hiptese 2.3. O plano de corte correspondente
representado por f (xik ) + sTi (x xik ) z = 0. Ento, z(
xk ) = f (xik ) + sTi (
xk xik )
a projeo vertical de (
xk , zk ) no plano de corte. Tomando o limite quando i ,
44

tem-se que z(
xk ) = f (
xk ). Assim, para i N > L sucientemente grande, (
xk , zk )
est sobre o i-simo plano de corte. O que contradiz a suposio inicial.
Proposio 2.10. Seja (xk , z k ) int(epi f ). O prximo iterado (xk+1 , z k+1 )
int(epi f ) obtido aps um nmero finito de sub-iteraes.
Demonstrao. A demonstrao inicia com a observao de que no passo 4 do
k
k
k
k
algoritmo, tem-se (xk+1 , z k+1 ) = (y+1
, w+1
) somente se, w+1
> f (y+1
) (i.e., num
k+1 k+1
passo srio ), e consequentemente (x , z ) int(epi f ).
Ento resta mostrar que este ponto encontrado aps um nmero nito de
iteraes. A sequencia {(xik , zik )}iN limitada por construo e, pela Proposio 2.9,
ele possui um ponto de acumulao (
xk , zk ) tal que zk = f (
xk ).
Considerando a sequncia denida em (2.2),

(yik , wik ) = (xk , z k ) + (xik , zik ) (xk , z k ) , (0, 1)

segue do Lema 2.8, que existe i0 N tal que (yik , wik ) int(epi f ), for i > i0 . Mas
esta exatamente a condio para um passo srio, o que completa a demonstrao.

Lema 2.11. Existe > 0 tal que g ((x, z) + td) 0, t [0, ] para qualquer
(x, z) int(epi f ) e qualquer direo d dada pelo algoritmo.
Demonstrao. Denote por b o vetor tal que bi = sTi xi f (xi ) for all i = 0, 1, ..., .
Ento, g ((x, z) + td) = (
g (x, z))T (x, z) b, pois
gi (x, z) = f (yi ) + sTi (x yi ) z

= f (yi ) + sTi x sTi yi z

= (sTi , 1)T (x, z) sTi yi + f (yi )


= (gi (x, z))T (x, z) bi

para todo i = 0, 1, ..., . O tamanho de passo t denido na equao (2.9) no Passo


3) do algoritmo. Como a restrio do problema auxiliar (PA.1) linear, para que
a condio de busca linear do lema seja satisfeita, a seguinte inequao deve ser
vericada:
gi ((x, z) + ti d) = (gi ((x, z) + ti d)T ((x, z) + ti d) bi
= (gi ((x, z))T ((x, z) + ti d) bi

= (gi ((x, z))T (x, z) bi + ti (gi ((x, z))T d

= gi (x, z) + ti (gi (x, z))T d 0, para todo i = 0, 1, ..., .

45

(2.12)

Se (gi (x, z))T d 0 a inquao satisfeita para todo t > 0. Caso contrrio,
segue de iii) no Passo 2) que, (gi (x, z))T d = (gi (x, z))T (d + d ).
Mas de (2.4) e (2.6) tem-se que
(gi (x, z))T d = gi (x, z)

,i
,
i

e
(gi (x, z))T d = 1 gi (x, z)

,i
.
i

Ento (2.12) equivalente a


gi (x, z)(1 ti

) ti 0.
i

i.
Como ti > 0, a ltima inequao ser satisfeita quando ti i /
limitado superiormente. Logo, existe
Por construo, > 0 limitado,
i para todo i = 0, 1, ..., . Portanto, para todo
0 < < tmax / tal que < i /
t [0, ] a condio de busca linear gi ((x, z) + td) 0 est satisfeita para todo
i = 0, 1, ..., .
Lema 2.12. Seja d um ponto de acumulao da sequncia {dk }kN . Ento d = 0.
Demonstrao. Do Passo 3) do algoritmo, tem-se que (xk+1 , z k+1 ) = (xk , z k ) +
tk (dkx , dkz ), logo
z k+1 = z k + tk dkz .
(2.13)
A sequncia {z k }kN decrescente e limitada pela Hiptese 2.3. Agora, denota-se
por z = lim z k e N N tal que {tk }kN t . E segue do Lema 2.11 que t > 0.
k
Quando k , k N na equao (2.13) tem-se que z = z + t dz , e portanto
dz = 0. Da Proposio 2.3 segue que
0 = dz = (d )T F (x, z) (d )T F (x, z) = dz 0,
para algum (0, 1) e portanto dz = 0. Alm disso, pelo Lema 2.2, tem-se que
0 = dz = (d )T F (x, z) (d )T Bd 0,
e como B denida positiva, tem-se que d = 0.
Segue do resultado anterior que dk = dk + k dk 0 quando k , k N ,
pois k 0 se dk 0.
Lema 2.13. Seja (sT , 1)T o gradiente de uma restrio ativa num ponto de
acumulao (x , z ) da sequncia {(xk , z k )}kN . Ento s f (x ).
46

Demonstrao. Note que no ponto de acumulao (x , z ), tem-se que f (x ) = z ,


logo a primeira restrio g0 (x , z ) ativa e s0 f (x ) por construo (veja o
Passo 1 do algoritmo).
Suponha que a restrio gi (x, z) = f (yi ) + (si )T (x yi ) z ativa em (x , z ),
para i > 1 e si f (yi ). Ento gi (x , z ) = f (yi ) + (si )T (x yi ) z = 0.
Como f convexa, se pode escrever
f (x) f (yi ) + (si )T (x yi )

= f (yi ) f (x ) + f (x ) + (si )T (x yi ) (si )T (x x ) + (si )T (x x )


= f (x ) + (si )T (x x ) + [f (yi ) + (si )T (x yi ) f (x )]
= f (x ) + (si )T (x x ) + gi (x , z ), pois f (x ) = z
= f (x ) + (si )T (x x ), pois g(x , z ) = 0.

Logo f (x) f (x ) + (si )T (x x ), e portanto si f (x )


Proposio 2.14. Para qualquer ponto de acumulao (x , z ) da sequencia
{(xk , z k )}kN , tem-se que 0 f (x ).
Demonstrao. Considere a sequencia
Y := {y00 , y10 , ..., y00 , y01 , y11 , ..., y11 , ....., y0k , y1k , ..., ykk , ....},
de todos os pontos obtidos nas sub-iteraes do algoritmo. Como esta sequencia
limitada, se pode encontrar subsequencias convergentes. Em particular, como
Y que converge para x .
xk+1 = ykk , pode-se armar que existe Y
k Y
{yk , yk , ..., ykk }. Ento segue de (2.3) no Passo 2) do
Considere Y
0
1

algoritmo, que
k

lim

ki ski

=0 e

i=0

lim

ki = 1.

(2.14)

i=0

k }. Consequentemente k > 0 para i Ik e k


Dena Ik = {i | yik Y
i
sucientemente grande. Ento,
lim

ki ski = 0 and

iIk

lim

ki = 1.

(2.15)

iIk

Considere o ponto auxiliar yik e o subgradiente ski f (yik ) tal que i Ik . Logo,
pela denio de subdiferencial [16], pode-se escrever
f (x) f (yik ) + (ski )T (x yik ) = f (xk ) + (ski )T (x xk ) ik ,

47

onde ik = f (xk ) f (yik ) (ski )T (xk yik ). Como xk x e yik x para


i Ik , tem-se que lim ik = 0. Portanto, ski ik f (xk ), onde f (x) representa o
k
-subdiferencial de f , [16]. Note que se pode escrever

iIk

ki f (x)

iIk

ki f (xk ) + (

f (x) f (xk ) + (

iIk

ki ik
. Como
k
iIk i

onde k = PiI

iIk

lim ik = 0 e

ki ski )T (x xk )

ki ik ,

iIk

ki
sk )T (x xk ) k ,
k i

k
iI
i

lim

ki = 1,

iIk

ki
sk .
k i
k
iIk i
Segue da equao (2.15) que sk k f (xk ) e que 0 f (x ).

tem-se que lim k = 0. Agora, considerando sk =

2.3

iIk

Resultados Numricos

O algoritmo NFDA foi implementado em MATLAB e os experimentos numricos


foram realizados num microcomputador com 2GB de RAM para um conjunto xado
de parmetros.
Na seo 2.3.1 utiliza-se uma coleo bem conhecida de problemas testes que
podem ser encontrados em [13] ou [54]. Para realizar comparaes de performance,
foram considerados alguns solvers clssicos. Por m, na Seo 2.3.2 realiza-se uma
anlise dos resultados obtidos, seguindo a metodologia do traamento do perl de
desempenho de cada mtodo, introduzida por Dolan e Mor [55].

2.3.1

Testes Numricos

Na Tabela 2.1 esto os problemas teste considerados para analisar a performance


do algoritmo. Estes problemas esto descritos em detalhes no Apndice A, ou nos
trabalhos [54] ou [13].
Os parmetros utilizados nos testes so:
B = I,

= 0.75,

= 0.1,

48

= 0.7,

and tmax = 1.

Tabela 2.1: Tabela de Problemas


No.
1
2
3
4
5
6
7
8
9
10
11
12
13

Problema
CB2
CB3
DEM
QL
LQ
Miin1
Rosen
Shor
Maxquad
Maxq
Maxl
TR48
Gon

n
f opt
2
1.9522245
2
2
2
-3
2
7.20
2 -1.4142136
2
-1
4
-44
5
22.600162
10 -0.8414083
20
0
20
0
48 -638565.0
50
0

Tabela 2.2: Solvers utilizados na comparao


Solver

Autor(s)

Mtodo

Referncia

M1FC1

Lemarechal

Steepest Descent

[56]

BTC

Schramm & Zowe

Bundle Trust

[19]

PB

Makela

Proximal Bundle

[13]

SBM

Lukan & Vlek

Standard Bundle

[42]

O algoritmo para quando dk = 104 . Este fato est justicado na


Proposio 2.12. A atualizao para o vetor de multiplicadores se da de acordo
com a seguinte formulao: Considere, para todo i = 0, 1, ..., ,
i := max [i ; kd k2 ], > 0.

(2.16)

Com o intuito de melhorar os resultados numricos em cada iterao k, adicionase ao conjunto de planos de corte denido pelo algoritmo os ltimos 5n planos
previamente computados a k-sima iterao. Ou seja, para a sub-iterao o
algoritmo trabalha com no mximo + 5n planos de corte.
O algoritmo foi comparado com os solvers citados na Tabela 2.2.
Para os resultados apresentados nas Tabelas 2.3, 2.4 e 2.5, considera-se a
seguinte notao:

49

NI - o nmero de iteraes,
NF - o nmero de avaliaes da funo e subgradientes computados,
f - o valor timo (conhecido) da funo,
f - o valor encontrado pelo algoritmo.
Tabela 2.3: Resultados para o nmero de iteraes
SBM

M1FC1

BTC

PB

NFDA

Problema

Solver
n

NI

NI

NI

NI

NI

CB2

31

11

13

15

13

CB3

14

12

13

15

24

DEM

17

10

09

07

22

QL

13

12

12

17

27

LQ

11

16

10

14

15

Mifflin1

66

143

49

22

21

Rosen

43

22

22

40

49

Shor

27

21

29

26

51

Maxquad

10

74

29

45

41

115

Maxq

20

150

144

125

158

272

Maxl

20

39

138

74

34

70

TR48

48

245

163

165

152

317

Goffin

50

52

72

51

51

79

Tabela 2.4: Resultados para o nmero de avaliaes da funo


SBM

M1FC1

BTC

PB

NFDA

Problema

Solver
n

NF

NF

NF

NF

NF

CB2

33

31

16

16

14

CB3

16

44

21

16

25

DEM

19

33

13

08

22

QL

15

30

17

18

28

LQ

12

52

11

15

16

Mifflin1

68

281

74

23

22

Rosen

45

61

32

41

50

Shor

29

71

30

27

52

Maxquad

10

75

69

56

42

116

Maxq

20

151

207

128

159

273

Maxl

20

40

213

84

35

71

TR48

48

251

284

179

153

318

Goffin

50

53

94

53

52

80

50

Tabela 2.5: Resultados para o valor da funo objetivo


Solver

SBM
f

M1FC1

BTC

PB
f

NFDA
f

Problema

CB2

1.95222

1.95225

1.95222

1.95222

1.9522

CB3

2.00000

2.00141

2.00000

2.00000

2.0001

DEM

-3.00000

-3.00000

-3.00000

-3.00000

-2,9863

-3

QL

7.20000

7.20001

7.20000

7.20001

7.2000

7.2

LQ

-1.41421

-1.14142

-1.41421

-1.41421

-1.4139

-1.41421

Mifflin1

-0.99999

-0.99996

-1.00000

-1.00000

-0.9998

-1

Rosen

-43.99999

-43.99998

-43.99998

-43.99994

-43.9999

-44

Shor

22.60016

22.60018

22.60016

22.60016

22.6002

22.60016

Maxquad

10

-0.84140

-0.84135

-0.84140

-0.84140

-0.8414

-0.84140

Maxq

20

0.16712e-06

0.00000

0.00000

0.00000

3.1780e-7

Maxl

20

0.12440e-12

0.00000

0.00000

0.00000

2.8315e-4

TR48

48

-638530.48

-633625.5

-638565.0

-63856

-638564.99

-638565

Goffin

50

0.11665e-11

0.00010

0.00000

0.00000

1.3372e-4

1.95222

Pelas tabelas acima, quando se compara os resultados do algoritmo NFDA com


os dos solvers da Tabela 2.2 percebe-se que o nmero de iteraes, o nmero de
avaliaes da funo e o valor nal da funo objetivo obtido pelo novo mtodo
compatvel com os resultados apresentados por estes algoritmos j estabelecidos na
literatura.
Contudo, ressaltamos que o novo algoritmo simples de ser implementado e
resolve os problemas de forma robusta e eciente, no sentido de que foram utilizados
os mesmos parmetros para resolver todos os problemas.
E como alternativa, a nova metodologia apresenta a diferena de no precisar
resolver subproblemas de programao quadrtica. Este fato, alude a possibilidade
de vantagens, como por exemplo, a diminuio do tempo computacional e outros
fatos que so abordados na concluso.

51

2.3.2

Performance Profile

Para uma boa apresentao visual da comparao entre a performance dos


solvers, utilizou-se o performance profiles, [55]. Como medidas de performance,
foram consideradas o nmero de iteraes e o nmero de avaliaes da funo.
As Figuras 2.1 e 2.2 mostram o performance proles para os solvers considerados
utilizando as medidas mencionadas. O performance prole [55], compara a
performance de ns solvers de um conjunto S com respeito a soluo de np problemas
de um conjunto P , utilizando algumas medidas de performance tais como nmero
de iteraes, nmero de avaliaes da funo, tempo de CPU, etc.
tp,s denota a medida de performance requerida para resolver o problema p com
o solver s. Para cada problema p e solver s, dene-se o performance ratio value
rp,s =

tp,s
min{tp,s : s S}

se o problema p resolvido pelo solver s; caso contrrio, rp,s = rM , onde rM um


parmetro sucientemente grande.
A funo de distribuio s : R [0, 1], para o performance ratio rp,s representa
a performance total do solver s para resolver o conjunto de problemas teste P . Esta
funo denida por
1
s ( ) = |{p : rp,s }|,
np
onde |{}| o nmero de elementos no conjunto {}. O valor de s (1) indica a
probabilidade do solver s ser o melhor mtodo (entre todos os que pertencem ao
conjunto S), utilizando tp,s como medida de performance.

52

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

M1FC1
BTC
PB
SBM
NFDA

0.1

Figura 2.1: Performance Proles: nmero de iteraes

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

M1FC1
BTC
PB
SBM
NFDA

0.1

10

12

14

Figura 2.2: Performance Proles: nmero de avaliaes da funo

53

Captulo 3
Algoritmo para Otimizao No
Convexa e No Diferencivel
Neste Captulo prope-se um algoritmo para resolver problemas de otimizao
irrestrita com funes no necessariamente diferenciveis ou convexas. Considera-se
o seguinte problema

minimize f (x)
(P.2)
sujeito a x Rn ,

onde f : Rn R uma funo localmente Lipschitz continua.


O mtodo proposto para resolver (P.2), combina o tradicional mtodo de planos
de corte de Kelley [10, 57], com o FDIPA, [51], apresentado na Seo 1.7 do
Captulo 1. E ainda, algumas ideias dos mtodos de feixe ([11, 13, 19]) so utilizadas.
De fato, usa-se o passo srio e nulo e armazenam-se os planos de corte num feixe.
Neste trabalho realiza-se uma extenso para o caso no convexo do algoritmo
apresentado no Captulo 2.
A teoria dos gradientes generalizados com Clarke [16] se mostrou um bom
instrumento para ir alm e generalizar as ideias quando se est lidando com funes
no diferenciveis e no convexas, (veja [13] ou [11]). Contudo, generalizar o mtodo
de planos de corte [10, 57] para o caso no convexo no uma tarefa simples,
mas aparente que algumas das ideias vlidas no caso convexo tambm sejam
teis no caso no convexo. Por exemplo, em [20], a no convexidade superada
construindo-se aproximaes poliedrais inferiores e superiores da funo objetivo, e
nos mtodos de feixe, a forma mais comum de lidar com as diculdades causadas
pela no convexidade usar o assim chamado subgradiente localmente mensurado
ao invs do erro de linearizao (veja [11, 13, 19]). No presente trabalho, o emprego
direto de um novo plano de corte pode, no caso no convexo, cortar o ponto de
iterao atual e, portanto, algumas regras adicionais para a utilizao dos planos de
corte so necessrios.

54

A no convexidade trs tambm algumas caractersticas adicionais para o


problema, uma das quais que a funo objetivo pode ter vrios mnimos e mximos
locais, Como em todo mtodo no-global de otimizao, prova-se a convergncia
para um ponto estacionrio. Isto , um ponto satisfazendo a condio necessria
de otimalidade 0 f (x), onde f (x) o subdiferencial de f , [16]. Alm disso,
prova-se que o algoritmo encontra um ponto estacionrio x tal que f (x ) = f (x1 ),
onde x1 um ponto de partida determinado. Em outras palavras, o algoritmo um
mtodo de descida. Naturalmente, no caso convexo, o ponto estacionrio tambm
um mnimo global do problema.

3.1

Mtodo

A no diferenciabilidade da funo objetivo gera uma serie de diculdades bem


conhecidas, logo como parte da metodologia, substitui-se o problema original (P.2)
por um problema equivalente (PE.2), linear sujeito a uma restrio no diferencivel

minimize F (x, z) = z
(x,z)Rn+1

sujeito a

f (x) z.

(PE.2)

Encontra-se a soluo de (PE.2) construindo uma sequncia de problemas


auxiliares lineares que vo sendo estabelecidos a medida em que se vai aproximando
o epgrafo da funo f (x) por planos de corte.
Na k-sima iterao, tem-se (xk , z k ) int(epi f ) e o seguinte problema auxiliar

minimize F (x, z) = z
(x,z)

sujeito a

g (x, z) 0.

(PA.2)

onde g : Rn+1 R dada por

g (x, z) = [g1 (x, z), ..., g (x, z)]T ,


para
g1 (x, z) = f (y1k ) + (sk1 )T (x y1k ) z, sk1 f (y1k ),
g2 (x, z) = f (y2k ) + (sk2 )T (x y2k ) z, sk2 f (y2k ),
..................................................................................
g (x, z) = f (yk ) + (sk1 )T (x yk ) z, sk f (yk ).
onde os pontos yik Rn para i = 1, ..., so pontos auxiliares, ski f (yik ) so
subgradientes arbitrrios nestes pontos e o nmero de planos de corte corrente
em uso.
55

O problema auxiliar (PA.2) no ser resolvido, na verdade possvel que ele nem
tenha soluo. Ento, como no FDIPA (veja Captulo 1.7), para cada problema
auxiliar (PA.2), o algoritmo gera uma direo de descida vivel dk = (dkx , dkz ) da
seguinte forma:
Resolve-se os dois sistemas lineares:

B k d +
g k (x, z) = ez

k [
g k (x, z)]T d + Gk (x, z)k = 0

B k d +
g k (x, z) = 0

onde

k [
g k (x, z)]T d + Gk (x, z) = k

ez = [0, 0, ..., 0, 1]T = F (x, z) Rn+1

k := (k,1 , ..., k, ),

k := diag[k1 , ..., k ],

k := (k,1 , ..., k, ),

k := (k1 , ..., k ),

Gk (x, z) := diag[g1k (x, z), ..., gk (x, z)].

Feito isso, dene-se


dk = d + d
onde
0 < < ( 1)

e
dT ez
,
dT ez

k = + ,

para (0, 1).

k
k
Um tamanho de passo e um novo ponto auxiliar (y+1
, w+1
) vivel com respeito
a (PA.2) so calculados de acordo com o que segue:
Quando o novo ponto vivel com respeito a (PE.2) e de descida para F , ai
k
k
atualiza-se a soluo, ou seja, faze-se (xk+1 , z k+1 ) = (y+1
, w+1
) e se diz que foi
realizado um passo srio de descida vivel.
Mas se o novo ponto vivel com respeito a (PE.2) e no de descida para
f , considera-se que o ponto de iterao corrente (xk , z k ) esta longe da fronteira do
epgrafo de f . E neste caso, ao invs de usar a direo calculada pelo FDIPA, usa-se
a direo de mxima descida ez (ez = [0, 0, ..., 0, 1]T Rn+1 ) para obter um ponto
estritamente vivel e que esteja prximo da fronteira do epgrafo. Desta forma,
tem-se f (xk+1 ) = f (xk ) no novo ponto e a prxima direo de busca gerada pelo
FDIPA ser de descida para f , e chama-se este passo de passo srio de mxima
descida.
No caso de um passo srio, o algoritmo limpa todas as informaes obtidas dos
planos de corte armazenadas at ento.

56

z
( xk , zk )

s2

s1

(x

(F ( xk ) + zk )
2

k +1

,z

k+1

d2

0.8 td

td

td

d1
xk

Figura 3.1: Encontrando o prximo iterado do Algoritmo.


Porm, se nenhuma dessas alternativas acontece, realiza-se o equivalente ao
passo nulo nos mtodos de feixe, ou seja, faz-se (xk+1 , z k+1 ) = (xk , z k ). No entanto,
no se atualiza a soluo, um novo plano de corte calculado e uma nova direo de
descida vivel com respeito a (PA+1 .2) calculada usando os sistemas do FDIPA.
Em seguida, o algoritmo recomea seu procedimento novamente.
Devido a no convexidade, pode acontecer que o novo plano de corte torne o
ponto de iterao corrente (xk , z k ) invivel(veja Figura 3.1). Neste caso, ignora-se o
plano de corte, retorna-se ao longo da direo de busca e calcula-se um novo plano de
corte. Este procedimento de retorno continua at que o ponto de iterao corrente
seja vivel com respeito ao plano de corte (para fazer com que o mtodo seja mais
eciente, de fato, verica-se viabilidade do ponto (xk , (f (xk ) + z k )/2)). Devido a
funo objetivo ser localmente Lipschitz continua, este tipo de plano pode sempre
ser encontrado, veja a Figura 3.2.

57

z
( x, z)

F
vivel

( F ( x) + z)
2

0.8 td

td

invivel

td

invivel

Figura 3.2: Determinao de um plano vivel.

3.1.1

Nonsmooth Feasible Direction Nonconvex Algorithm

Apresenta-se o algoritmo NFDNA para resolver problemas de minimizao do


tipo (P.2). No que segue, assumi-se que em cada ponto x Rn pode-se avaliar f (x)
e um correspondente subgradiente arbitrrio s f (x).
ALGORITMO - NFDNA
Parmetros: Escolha uma tolerncia aproximada nal > 0. Selecione os
parmetros de controle > 0 e (0, 1) para o limite da deexo. Selecione
os multiplicadores (1/2, 1) para o tamanho de passo e o tamanho mximo
de passo tmax > 0.
Dados: Seja k = 1 o contador de iteraes e = 1 o contador do nmero
de planos de corte. Escolha um ponto inicial estritamente vivel (x, z)
int(epi f ), um vetor positivo inicial 1 R e uma matriz simtrica denida
positiva B 1 R(n+1)(n+1) . Seja y11 = x1 . Calcule f (x).
Passo 1: (Plano de Corte inicial)
Calcule sk1 f (xk ), e o primeiro plano de corte
Faa

g1 (xk , z k ) = f (xk ) z k ,

g1 (x, z) R.

sk
1

g1 (xk , z k ) =

Rn+1 .

Dena
e

g 1 (xk , z k ) = [g1 (xk , z k )] R,

g 1 (xk , z k ) = [g1 (xk , z k )] Rn+1 .


58

Passo 2: (Encontrando a Direo) Calcule dk = (dkx , dkz ) Rn+1 , uma direo


de descida vivel para (PA.2):
i) (Direo de descida) Determine d Rn+1 e R resolvendo o sistema
de equaes lineares

B k d +
g (xk , z k ) = ez

(3.1)

k [
g (xk , z k )]T d + Gk (xk , z k ) = 0,

(3.2)

ii) (Direo vivel) Determine os valores d Rn+1 e R resolvendo os


sistema linear de equaes
B k d +
g (xk , z k ) = 0

(3.3)
k

k [
g (xk , z k )]T d + Gk (xk , z k ) = .

(3.4)

Se eTz d > 0, ento


= min

( 1)eTz d
kd k ,
eTz d

(3.5)

Caso contrrio,
= kd k2 .

(3.6)

iii) (Direo de descida vivel) Calcule a direo de busca


dk = d + d

k = + .

(3.7)

Passo 3: (Tamanho de passo e atualiza soluo) Calcule o tamanho de passo


tk = min{tmax , max{t | g ((xk , z k ) + tdk ) 0}}.
Se

k
d

tk < tmax ,

ento pare com (xk , z k ) como sendo a soluo nal. Caso contrrio, dena
k
k
(y+1
, w+1
) = (xk , z k ) + tk dk
k
e calcule o valor correspondente f (y+1
).
k
k
Se w+1
f (y+1
), o passo no srio: v para o Passo 6.

59

k
Caso contrrio, verique: Se f (xk ) f (y+1
), v para o Passo 4.

Seno, v para o Passo 5.


Passo 4: (Passo srio de descida vivel)
k
k
Faa (xk+1 , z k+1 ) = (y+1
, w+1
).

Apague todos os planos de corte e atualize B k e k .


Faa k = k + 1, = 1 e v para o Passo 1.
Passo 5: (Passo srio de mxima descida)
Dena (xk+1 , z k+1 ) = (xk , z k ) (z k f (xk ))ez e f (xk+1 ) = f (xk ).
Apague todos os planos de corte e atualize B k e k .
Faa k = k + 1, = 1 e v para o Passo 1.
Passo 6: (Passo Nulo)
k
i) (Erro de Linearizao) Calcule sk+1 f (y+1
) e um erro de linearizao
k
k
= f (xk ) f (y+1
) (sk+1 )T (xk y+1
).

ii) (Procedimento de retorno) Se < g1k (xk , z k )/2 retorne ao longo do vetor
dk at que um ponto vivel seja encontrado: ou seja , faa
k
k
(y+1
, w+1
) = (xk , z k ) + tk dk ,

= 0.8 e v para o Passo 6(i).


iii) (Planos de corte para passos nulos)
Calcule o novo plano de corte e seus derivados
k
g+1
(xk , z k ) = + f (xk ) z k
k
g+1
(xk , z k ) = ((sk+1 )T , 1)T .

Dena
k
g k+1 (xk , z k ) = [g1k (xk , z k ), ..., gk (xk , z k ), g+1
(xk , z k )]T R+1

e
k
(xk , z k )]

g k+1 (xk , z k ) = [g1k (xk , z k ), ..., gk (xk , z k ), g+1

g k+1 (x, z) R(n+1)(+1)


Faa = + 1 e v para o Passo 2.

60

3.2

Anlise da convergncia

Nesta seo, estuda-se anlise da convergncia do algoritmo NFDNA. Mostrase que direo de busca dk denida em (3.7) uma direo de descida para F (i.e.,
para (PA.2) e (PE.2)). Ento, prova-se que, quando o ponto de iterao corrente est
prximo o suciente da fronteira do epgrafo de f , dk ser uma direo de descida
tambm para f (i.e., para (P.2)). Em seguida, mostra-se que o nmero de passos
nulos em cada iterao nito, e que sequncia (xk , z k )kN limitada. Finalmente,
demonstra-se que todo ponto de acumulao (x , z ) da sequncia {(xk , z k )}kN
estacionrio para f (nota-se que, se funo objetivo convexa, ento o ponto ser
um mnimo global para o problema (P.2)).
Assumi-se que funo objetivo f localmente Lipschitz contnua, e as seguintes
hipteses so fabricadas:
Hiptese 3.1. Existem nmeros positivos 1 e 2 tais que 1 kdk2 dT Bd
2 kdk2 para todo d Rn+1 (veja [53] para menos condies restritivas para B).
Hiptese 3.2. Existem nmeros positivos I , S , e gmax tais que 0 < i S ,
i = 1, . . . , , e i I para todo i tal que gi (x, z) gmax .
Hiptese 3.3. O conjunto { x Rn | f (x) f (x1 ) } compacto.
Hiptese 3.4. Para todo (x, z) int(epi f ) e todo i tal que gi (x, z) = 0 os vetores
gi (x, z) so linearmente independentes.
Inicia-se a anlise terica do NFDNA observando que as solues d , , d , e
dos sistemas (3.1), (3.2), e (3.3), (3.4) so nicas. E isto uma consequncia do
Lema 3.1 em [52] enunciado como segue:
Lema 3.1. Dado um ponto (x, z) int(epi f ), qualquer matriz B R(n+1)(n+1)
definida positiva qualquer vetor no negativo R tal que i > 0 se gi (x, z) = 0,
a matriz

g (x, z)
M =
T

g (x, z)
G (x, z)
no singular.
Segue do resultado anterior que d , , d , e so limitados superiormente.
Lema 3.2. A direo d definida por (3.1) e(3.2) satisfaz
dT ez = dT F (x, z) dT Bd .
Demonstrao. Veja a prova do Lema 4.2. em [30].
61

Como consequncia do lema anterior, segue que a direo d uma direo de


descida para F (i.e. para (PE.2) e (PA.2)).
Proposio 3.3. A direo d definida em (3.7) uma direo de descida para
(PE.2) e (PA.2).
Demonstrao. Como consequncia de (3.7), e tendo em mente que ez = F (x, z),
dT F (x, z) = dT F (x, z) + dT F (x, z).
Como ( 1)dT F (x, z)/(dT F (x, z)) com (0, 1), se dT F (x, z) > 0
(veja (3.5)), e como d uma direo de descida para F pelo Lema 3.2, obtm-se
dT F (x, z) dT F (x, z) + ( 1)dT F (x, z)
= dT F (x, z)
0.
(nota-se que dT F (x, z) = 0 somente se d = 0).
Por outro lado, se dT F (x, z) 0 (veja (3.6)), obtm-se a inequao
dT F (x, z) dT F (x, z) < 0.
Portanto, d uma direo de descida para F .
Embora d, calculada no Passo 2 do algoritmo, seja uma direo de descida para
(PE.2) e (PA.2), ela no precisa necessariamente ser de descida para (P.2). Na
verdade, no prximo lema, mostra-se que d de descida tambm para (P.2), ou
seja, os valores da funo f em pontos gerados pelo algoritmo no crescem. Pois,
prova-se que, quando o ponto corrente est sucientemente prximo da fronteira do
epgrafo de f , a direo d, a partir deste ponto, uma direo de descida para (P.2).
Lema 3.4. Seja (xk , zk ) int(epi f ) um ponto corrente gerado pelo algoritmo. Para
todo k 1, segue que
f (xk+1 ) f (xk )

z k+1 < z k .

Alm disso, o prximo ponto (xk+1 , z k+1 ) int(epi f ).


Demonstrao. O ponto corrente (xk , z k ) atualizado no Passo 4 ou no Passo 5
k
k
do algoritmo. No Passo 4, tem-se que (xk+1 , z k+1 ) = (y+1
, w+1
) somente se
k
k
k
k
k+1
w+1 > f (y+1 ) e f (x ) f (y+1 ). Portanto, obviamente, tem-se z
> f (xk+1 )
(i.e. (xk+1 , z k+1 ) int(epi f )) e f (xk+1 ) f (xk ). Alm disso, (dk )T ez < 0 pela
Proposio 3.3. Portanto, dkz < 0 e o prximo componente z k+1 calculado pela

62

frmula (veja Passo 3 do algoritmo)


z k+1 = z k + tk dkz ,
onde , tk > 0. Portanto z k+1 < z k .
Por outro lado, no Passo 5, usa-se a direo de descida mxima ez como direo
de busca e portanto, xk+1 = xk e, naturalmente, f (xk+1 ) = f (xk ). Tem-se ainda
z k+1 = z k (z k f (xk )),
onde (0, 1) e z k f (xk ) > 0 pois (xk , z k ) int(epi f ). Portanto, tem-se
novamente que z k+1 < z k e z k+1 > f (xk ) = f (xk+1 ).
Lema 3.5. Seja (xk , z k ) int(epi f ) um ponto suficientemente prximo da fronteira
do epi f (i.e., z k f (xk ) < tk dkz ). Se (xk , z k ) no um ponto estacionrio, ento
a direo dk definida por (3.7) uma direo de descida para o problema (P.2) (i.e.
para f ).
Demonstrao. Como (xk , z k ) int(epi f ), tem-se que z k = f (xk ) + 1 para algum
1 0. Tambm tem-se que (dk )T ez < 0 pela Proposio 3.3, e portanto, dkz < 0. O
prximo iterado calculado pela frmula (xk+1 , z k+1 ) = (xk , z k ) + tk (dkx , dkz ) com
, tk > 0. Portanto, z k+1 = z k 2 = f (xk ) + 1 2 , onde denota-se 2 = tk dkz >
0. Quando 1 sucientemente pequeno (i.e. 1 < 2 ) tem-se obviamente que
z k+1 f (xk ) < 0. Tambm segue que f (xk+1 ) z k+1 , pois (xk+1 , z k+1 ) int(epi f )
pelo Lema 3.4. Agora combinando as duas coisas obtm-se f (xk+1 ) z k+1 < f (xk )
e dk uma direo de descida para f por denio.
Corolrio 3.6. A seqncia {(xk , z k )}kN gerada pelo algoritmo limitada.
Demonstrao. Como z k+1 < z k para todo k N e pela Hiptese 3.4 a sequncia
{(xk , z k )}kN est limitada no conjunto (epi f ) {(x, z) Rn+1 | z < z 1 }.
Lema 3.7. A direo d definida em (3.7) limitada.
Demonstrao. A escolha de (veja (3.5) e (3.6)) assegura que se tenha
kd k2

para algum > 0.

Por outro lado, do Lema 3.2 e da Hiptese 3.2, obtm-se que


dT ez 1 kd k2 ,

63

(3.8)

e portanto, devido a (3.5), tem-se


min

(1 )1
,
dT ez

kd k2 ,

se dT ez > 0.
Devido a (3.6) e como d limitada, existe um limite inferior low > 0 tal que
low kd k2 .
Portanto, pela limitao de d , a deexo dada por positiva limitada como
acima.
De (3.7) e (3.8), tem-se
kdk = kd + d k

kd k + kd k

kd k + kd k2 kd k

= (1 + kd k kd k) kd k .
Portanto, existe > 1 tal que kdk kd k vlida. E devido a limitao de d ,
tem-se que d limitada como acima.
No prximo lema, mostra-se que no Passo 6 do algoritmo, um ponto (y+1 , w+1 )
encontrado depois de um nmero nito de loops dentro do passo, de modo que, o
ponto corrente (x, z) int(epi f ) seja vivel com respeito ao plano de corte calculado
no ponto y+1 .
Lema 3.8. Existe (y+1 , w+1 ) Rn+1 tal que f (x) z , onde = f (x)
f (y+1 ) sT+1 (x y+1 ) e s+1 f (y+1 ). Este ponto encontrado aps um
nmero finito de loops.
Demonstrao. Suponha por contradio que (y+1 , w+1 ) vivel no pode ser
encontrado. Um ponto (y+1,i , w+1,i ) calculado pela frmula
(y+1,i , w+1,i ) = (x, z) + i td
onde , t > 0, 1 = 1 2 (1/2, 1), e i+1 = 0.8i (i = 2, 3, . . .). Como (y+1,i , w+1,i )
vivel no encontrado segue que
f (x) z > f (x) f (y+1,i ) sT+1,i (x y+1,i ) = i
para todo i N.
64

Como i+1 < i para todo i, tem-se i 0. Isto implica que y+1,i x. Como
f localmente Lipschitz contnua, segue que |f (y+1,i ) f (x)| 0 e, portanto,
tambm 0. Mas f (x)z < 0 pois (x, z) int(epi f ). O que uma contradio.
Lema 3.9. Existe > 0 tal que para todo (x, z) int(epi f ) e para todo d Rn+1
gerado pelo algoritmo, tem-se g ((x, z) + td) 0 para todo t [0, ].
Demonstrao. Denota-se por b um vetor tal que bi = sTi yi f (yi ) para todo
i = 1, . . . , . Agora g (x, z) = (
g (x, z))T (x, z) b, pois
gi (x, z) = f (yi ) + sTi (x yi ) z

= f (yi ) + sTi x sTi yi z

= (sTi , 1)T (x, z) sTi yi + f (yi )


= (gi (x, z))T (x, z) bi

para todo i = 1, . . . , . Por construo, tem-se que


t max{ti | gi ((x, z) + ti d) 0, i = 1, . . . , }.
Agora combinando estas duas observaes, e observando-se que gi (x, z) no
depende do ponto (x, z) mas dos pontos auxiliares yi (i = 1, . . . , ), obtm-se
gi ((x, z) + ti d) = (gi ((x, z) + ti d))T ((x, z) + ti d) bi
= (gi (x, z))T ((x, z) + ti d) bi

= (gi (x, z))T (x, z) bi + ti (gi (x, z))T d

(3.9)

= gi (x, z) + ti (gi (x, z))T d 0

para todo i = 1, . . . , . Se (gi (x, z))T d 0, a equao acima satisfeita com


qualquer ti > 0. Considera-se o caso quando (gi (x, z))T d > 0. Por (3.7), segue
que (gi (x, z))T d = (gi (x, z))T (d + d ), e de (3.2) e (3.4) obtm-se
gi (x, z)T d = gi (x, z)

,i
i

gi (x, z)T d = 1 gi (x, z)

e
,i
.
i

Agora combinando (3.9), (3.10), e (3.11) obtm-se


gi (x, z) ti gi (x, z)

,i + ,i
ti = gi (x, z)(1 ti ) ti 0,
i
i

65

(3.10)
(3.11)

i = ,i + ,i . Obviamente ti > 0 e gi (x, z) < 0.


onde se tinha denotado
Portanto, a inequao satisfeita se
ti

1.
i

Agora, limitado pela Hiptese 3.3, e , e so limitados (veja a prova


limitado e existe > 0 tal que i /
i > para todo
do Lema 3.7). Portanto,
i = 1, . . . , . Portanto, para todo t [0, ], segue que gi ((x, z) + td) 0.
O prximo lema mostra um resultado tcnico que ser usado posteriormente.
X. Seja {
Lema 3.10. Seja X um conjunto convexo e sejam x0 int X e x
xk }
k x
e seja xk definida por xk = x0 + (
Rn \ X uma sequncia tal que x
xk x0 )
para algum (0, 1). Ento existe k0 N tal que xk int X para todo k k0 .
Demonstrao. Veja o Captulo 2, Lema 2.8.
Lema 3.11. Seja (
y, w)
um ponto de acumulao da sequencia {(yi , wi )}iN gerada
pelo algoritmo. Ento w = f (
y).
Demonstrao. Um novo ponto auxiliar (yi , wi ) calculado no Passo 3 do algoritmo.
Se wi > f (yi ) realiza-se um passo srio (i.e. se vai para ao Passo 4 ou Passo 5).
Portanto, no ponto de acumulao tem-se w f (
y). Suponha agora que w < f (
y).

) para algum si f (
Considere o plano de corte fsi (x) = f (
y ) + si (x y
y). Seja
fsi uma nova restrio para (PA.2) (i.e. gi (x, z) = fsi (x) z).
y, w)
e o plano fsi .
Denota-se por r = D((
y, w);
fsi ) a distncia entre o ponto (
= B((
fs = .
Como w < f (
y) tem-se que r > 0. Seja B
y, w);
2r ). Obviamente, B
i
c

Agora, (yi , wi ) epi fsi para qualquer i e B (epi fsi ) . Portanto (yi , wi ) 6 B.
O que uma contradio.
Lema 3.12. Seja (xk , z k ) int(epi f ). O prximo iterado (xk+1 , z k+1 ) int(epi f )
encontrado aps um nmero finito de iteraes (i.e. loops do Passo 6 para o Passo
2 do algoritmo).
Demonstrao. O novo ponto (xk+1 , z k+1 ) est no interior do epi f pelo Lema 3.4.
Portanto, necessita-se mostrar somente que o novo ponto encontrado depois de um
nmero nito de iteraes.
Um novo ponto auxiliar (yi , wi ) encontrado aps um nmero nito de loops
dentro do Passo 6, pelo Lema 3.8. Se wi > f (yi ) tem-se um passo srio (Passo 4 ou
5) e, obviamente (xk+1 , z k+1 ) int(epi f ). A sequncia {(yi , wi )}iN limitada por
construo logo existe um ponto de acumulao (
y, w).
Pelo Lema 3.11 este ponto
de acumulao esta na fronteira do epgrafo de f .
66

Denota-se por fsi (x) = f (yi ) + sTi (x yi ) o plano de corte correspondente a


i-sima restrio e por f(x) = max{fsi (x) | i = 1, . . . , } a funo linear por partes
denida pelo mximo de todos os planos de corte no ponto de acumulao (
y, w).

Pelo Lema 3.10 existe i0 N tal que (yi0 , wi0 ) int(epi f). Mostrar-se-a que
(yi0 , wi0 ) int(epi f ) ainda que o epi f no seja convexo.
Por absurdo, supe-se que (yi0 , wi0 ) 6 int(epi f ), ou seja, que f (yi0 ) wi0 .
Um passo nulo ocorre e adiciona-se um novo plano de corte. Agora (yi0 , wi0 ) est
num segmento de reta que liga o ponto de acumulao (
y, w)
e o ponto de iterao
k k
corrente (x , z ), abaixo do epgrafo de f . Portanto, o novo plano de corte torna
o ponto (
y, w)
invivel (ele no pode tornar o ponto de iterao corrente invivel).
Mas ento (
y, w)
no pode ser um ponto de acumulao, o que um contradio.
Portanto, tem-se que (yi0 , wi0 ) int(epi f ) e ainda deni-se (xk+1 , z k+1 ) =
(yik , wik ) (no Passo 4 do algoritmo) ou um passo srio de mxima descida ocorre
(Passo 5 do algoritmo).
Lema 3.13. Seja d um ponto de acumulao da sequncia {dk }kN . Ento d = 0.
Demonstrao. Por construo tem-se que
(xk+1 , z k+1 ) = (xk , z k ) + tk dk

ou

(xk+1 , z k+1 ) = (xk , z k ) (z k f (xk ))ez .


A sequncia {(xk , z k )}kN limitada pelo Corolrio 3.6. Denotando x =
limk xk e z = limk z k e seja K N tal que {tk }kK t . Isto segue do
Lema 3.9 onde tem-se t > 0.
Quando k , k K segue que
z = z + t dz

ou

z = (1 )z + f (x ).
ou seja, tem-se que dz = 0 ou z = f (x ). Contudo, devido ao Lema 3.5, o ltimo
no acontece (d uma direo de descida para f ou d = 0). Portanto dz = 0.
Pela Proposio 3.3, segue que
0 = dz = (d )T ez = (d )T ez = d,z 0
com algum > 0 e assim d,z = 0. Alm disso, pelo Lema 3.2 tem-se
0 = d,z = (d )T ez (d )T Bd 0
e como B denida positiva, pode-se concluir que d = 0.
67

Lema 3.14. Seja (sTi , 1)T o gradiente de uma restrio ativa no ponto de
acumulao (x , z ) da sequncia {(xk , z k )}kN . Ento si f (x ).
Demonstrao. Como no ponto de acumulao (x , z ) tem-se que f (x ) = z a
primeira restrio g1 (x , z ) ativa e s1 f (x ) por construo (veja Passo 1 do
algoritmo).
Suponha agora que a restrio gi (x , z ), i > 1, ativa. Denota-se por fsi (x) =
f (yi ) + sTi (x yi ) o plano de corte correspondente na restrio ativa. Ou seja,
fsi (x ) = z . Na vizinhana do ponto de acumulao x B(x ; ), para algum >
0, tem-se que fsi (x) uma aproximao inferior da funo objetivo f (x) ou s1 = 0
(no caso do algoritmo j ter parado). Portanto tem-se que para todo x B(x ; ),
> 0, e si f (yi )
f (x) f (yi ) + sTi (x yi )

= f (yi ) f (x ) + f (x ) + sTi (x yi ) sTi (x x ) + sTi (x x )


= f (x ) + sTi (x x ) + f (yi ) + sTi (x yi ) f (x )
= f (x ) + sTi (x x ) + gi (x , z )
= f (x ) + sTi (x x ),

pois f (x ) = z e gi (x , z ) = 0.
Agora, se for utilizado x = x + tv, onde v Rn , t > 0 pode-se escrever
f (x) f (x ) sTi (x x ) = tsTi v
para todo x B(x ; ) e obtm-se
f (x ; v) = lim sup
x x

f (x + tv) f (x )
t

t0

f (x + tv) f (x )
t
t0
T
ts v
lim sup i = sTi v,
t
t0
lim sup

Portanto, pela denio de subdiferencial si f (x ).


No prximo Lema mostra-se que, devido ao problema auxiliar ser convexo, k
positivo ou zero na soluo.
Lema 3.15. Para k suficientemente grande, tem-se que k 0.

68

Demonstrao. Considera-se o seguinte problema de otimizao convexa


minimize (x, z) s.t. g (x, z) 0,
onde (x, z) = z + dT Bx. Um ponto KKT (x , z ) do problema satisfaz
z + Bd +
g (x , z ) = 0

(3.12)

G (x , z ) = 0

(3.13)

(3.14)

g (x, z) 0.

(3.15)

O sistema (3.1)-(3.2) no Passo 2 do algoritmo pode ser reescrito como


z + Bdk +
g k (xk , z k )k = 0
Gk (xk , z k )k = k ,

onde k = k [
g k (xk , z k )]T dk . Quando dk 0 tem-se que k 0 e ento, para
dado 1 > 0, existe K1 > 0 tal que
kk k < 1

para k > K1 .

Ento como 0 por (3.14) deduz-se que k 0 para k sucientemente grande.


Teorema 3.16. Para qualquer ponto de acumulao (x , z ) da sequencia
{(xk , z k )}kN tem-se que 0 f (x ).
Demonstrao. Considere as equaes (3.1) e (3.2). Quando k tem-se que
d = 0 pelo Lema 3.13. Portanto, obtm-se

g (x , z ) = ez

g (x , z ) = 0,

onde denota-se por o vetor de multiplicao de Lagrange correspondente a d e


por g (x , z ) a restrio correspondente.
Como

s1 s2 . . . s

g (x , z ) =
1 1 . . . 1

= [,1 , ,2 , . . . , , ]T ,

obtm-se

,i si = 0

X
i=1

i=1

69

,i = 1.

Agora denota-se por I = {i | g i (x , z ) = 0} o conjunto dos ndices das restries


ativas e por J = {j | g j (x , z ) < 0} o conjunto das restries inativas em (x , z ).
Com isso, segue que
g i (x , z ),i = 0

para todo i I e

g j (x , z ),j = 0

para todo j J .

Portanto ,j = 0 para todo j J e alm disso


X

,i si = 0

iI

,i = 1.

iI

Pelo Lema 3.14 tem-se que si f (x ) para todo i I. Pela convexidade do


subdiferencial e como ,i 0 pelo Lema 3.15 para todo i I obtm-se que
0=

X
iI

3.3

,i si f (x ).

Resultados Numricos

Nesta seo apresenta-se os resultados numricos obtidos com o mtodo NFDNA


desenvolvido na seo 3.1.1.
Assim como no FDIPA, possvel a obteno de diferentes verses do algoritmo
variando as regras para atualizao das matrizes
g k , B e do vetor .

3.3.1

Implementao

Apagando todos os planos de corte depois de cada passo srio, o algoritmo


trabalha bem na teoria. Na prtica, isso torna o mtodo menos eciente. Contudo,
quando o mtodo resolve problemas convexos no existe perda de toda a memria,
i.e., no necessrio apagar todos os planos de corte, pois no caso convexo os planos
so sempre aproximaes por baixo do epgrafo da funo objetivo e portanto isso
no causa qualquer problema.
No caso no convexo, os planos de corte no so necessariamente aproximaes
inferiores para a funo objetivo. E com isso, pode acontecer que um plano deixe
de fora o ponto de mnimo. Isto est ilustrado na Figura 3.1. Para preservar a
ecincia e evitar que um plano deixe um mnimo de fora da regio vivel quando
se est resolvendo um problema no convexo, o algoritmo limpa a memria somente
aps 10, 20, ou 40 iteraes (dependendo do problema).

70

O algoritmo foi implementado em MATLAB em um microcomputador Pentium


III de 500MHz com 2GB de RAM. Os parmetros considerados foram os seguintes:
Primeiro foram denidos B = I , = 0.1 , = 0.1 para todos os problemas e ento
foram selecionadas as melhores combinaes para os valores = 104 ou = 105 ,
=0.7, 0.75 ou 0.8 e tmax =1 ou 10. individualmente dependendo do problema.
O nmero mximo de planos de corte armazenados foi um conjunto de 5n sem
qualquer procedimento de agregao (veja [13, 58] para possveis procedimentos de
agregao). A atualizao considerada para o vetor k a mesma do FDIPA [30].

3.3.2

Resultados Obtidos

A performance do algoritmo NFDNA foi testada com um conjunto de problemas


teste que so amplamente utilizados para testar novos solvers em otimizao no
diferencivel. Estes problemas testes podem ser encontrados no trabalho de Lukan
e Vlek [54]. Todos os problemas, exceto o de Rosenbrock, so no diferenciveis.
Na Tabela 3.3 so apresentados os resultados da comparao com os solvers
citados na Tabela 3.2. Como possvel ver, o novo algoritmo resolve todos os
problemas de forma robusta e eciente. E em termos do nmero de avaliaes da
funo e valor obtido para a funo objetivo os algoritmos apresentam resultados
similares.
Alm disso, como parte da metodologia que est sendo proposta, tem-se a
diferena que nos outros solvers necessria a resoluo de um subproblema
quadrtico em cada iterao. Fato que evitado com o NFDNA. E como j
mencionado, isso sugere que em termos de uso de tempo computacional a ecincia
do NFDNA pode ser melhor do que a destes outros solvers. Naturalmente, mais
testes devem e vo ser realizados.
Na Tabela 3.1 so utilizadas as seguintes abreviaes:
n - representa a dimenso do problema em questo;
+ - representa problemas convexos;
- representa problemas no convexos;
ps - o nmero de passos srios;
pn - o nmero de passos nulos;
nf - o nmero de vezes que f (x) e s f (x) foram calculados;
f - valor nal da funo objetivo obtido com o algoritmo;
f opt - o valor timo do problema como relatado em [54].

71

Tabela 3.1: Problemas teste.


No.

Problema

n Convexo

ps

pn

nf

Rosenbrock

73

31

146

Crescent

33

CB2

14

CB3

DEM

QL

f opt

7.8129e7

43

0.0078

21

1.9522

1.9522

15

25

2.0001

17

20

-2.9997

-3

31

34

7.2000

7.20

LQ

12

-1.4139

-1.4142

Miin1

11

19

-0.9999

-1

Miin2

10

20

-0.9999

-1

10

Wolfe

43

10

54

-7.9999

-8

11

Rosen

45

14

60

-43.9999

-44

12

Shor

49

23

73

22.6001

22.6001

13

Colville 1

95

114

210

-32.3484

-32.3486

14

HS78

851

384

2048

-2.9194

-2.9197

15

El-Attar

200

287

1028

0.5599

0.5598

16

Maxquad

10

12

53

66

-0.8414

-0.8414

17

Gill

10

148

649

806

9.7859

9.7857

18

Steiner 2

12

26

65

92

16.7038

16.7038

19

Maxq

20

84

282

367

1.4695e8

20

Maxl

20

80

32

113

2.1196e

21

TR48

48

22

103

126

-638564.99

-638565.0

22

Gon

50

28

43

72

5.8786e5

23

MXHILB

50

197

206

2.9024e

24

L1HILB

50

66

39

106

1.6129e5

25

Shell Dual

15

536

856

1652

32.3489

32.3486

Tabela 3.2: Solvers utilizados na comparao


Solver

Autor(s)

Mtodo

Referncia

NCVX

Fuduli, Gaudioso & Giallombardo

Cutting Plane extension

[20]

NCNS

Gorgone

New Bundle Method

[59]

72

Tabela 3.3: Resultados da Experincia Numrica.


Solver

NCNS

NCVX

NFDNA

No.

nf

nf

nf

54

5.137e6

70

5.009e7

146

53

5.112e

22

8.022e

43

0.007

16

1.952

18

1.952

21

1.952

1.952

14

15

25

13 -3

21

-2.999

20

-2.999

-3

15

28

7.2

34

7.200

7.20

15 -1.414

-1.414

12

-1.413

-1.414

165 -0.999

127 -0.999

19

-0.999

-1

14 -0.999

13

-1

20

-0.999

-1

10

43 -7.999

21

-7.999

54

-7.999

-8

11

33 -43.999

29

-44

60

-43.999

-44

12

27

22.600

44

22.600

73

22.600

22.600

13

36 -32.348

47

-32.348

210

-32.348

-32.348

14

237 -2.919

159 -2.919

2048

-2.919

-2.919

15

172 0.559

152 0.559

1028

0.559

0.559

16

90 -0.841

56

66

17

308 9.785

164 9.785

806

9.785

9.785

18

96 16.703

196 16.703

92

16.703

16.703

19

187 1.561e6

293 1.660e7

367

1.469e8

20

23

44

1.110e15

113

2.119e4

21

1662 -638514.8

1662 -638565

126

-638564.99

-638565

22

56

1.984e

148 1.142e

72

23

24

1.764e5

33

1.768e5

206

2.902e5

24

30

1.709e5

104 6.978e7

106

1.612e5

25

642 32.348

1497 32.349

1652

32.348

7.2

4.493e15
13

-0.841

13

73

f opt

7.812e7

-0.841

-0.841

5.878e

32.348

Captulo 4
Uma Tcnica para otimizao
no diferencivel convexa com
restries
Neste captulo prope-se um mtodo que utiliza e estende a tcnica apresentada
no Captulo 2, para otimizao convexa e no diferencivel.
Considera-se o seguinte problema de otimizao

minimize f (x)
n
xR

sujeito a c(x) 0,

(P.3)

onde a funo objetivo e a restrio de desigualdade f, c : Rn R so supostas


convexas, e no necessariamente diferenciveis. Nota-se que no existe perda de
generalidade na formulao do problema (P.3) com somente uma restrio escalar,
pois se necessrio, c(x) pode ser denida como o mximo de uma quantidade
nita de funes convexas, e portanto respaldando o caso de mltiplas restries
de desigualdade.
Naturalmente, problemas de otimizao no diferencivel com restries so
mais complexos, e poucos mtodos prticos de resoluo podem ser encontrados
na literatura. Problemas convexos com restries consideradas fceis, tais como
restries lineares, podem ser resolvidos inserindo-se essas restries diretamente
no problema quadrtico, como pode ser visto num trabalho de Kiwiel, [60]. Para
problemas convexos com restries mais gerais, como no problema (P.3) acima, uma
possibilidade resolver um problema equivalente sem restries, denido com uma
funo de penalidade exata, como pode ser visto em [25]. Um algoritmo que combina
as ideias dos mtodos de feixe proximal com uma estratgia de ltro para avaliar
um ponto candidato proposto em [27]. Mais recentemente, um mtodo de feixe

74

proximal por pontos inviveis que no se utiliza de funes de penalidade ou um


ltro, foi apresentado em [61].
Neste trabalho, propes-se uma tcnica, para resolver o problema (P.3),
combinando as ideias do tradicional mtodo de planos de corte apresentado por
Kelley em [10], algumas ideias do mtodo de feixes [11, 13] com os sistemas internos
do FDIPA, [30].
A ideia substituir o problema convexo restrito e no diferencivel (P.3), por
um problema equivalente (PE.3) com duas restries no diferenciveis, ou seja,
considerar

minimize F (x, z) = z

(x,z)

sujeito a

f (x) z
c(x) 0.

(PE.3)

O mtodo se baseia na metodologia de aproximar as restries funcionais do


problema equivalente (PE.3) por planos de corte. Esta aproximao feita com a
construo de uma sequncia de problemas auxiliares (PA.3). Em cada iterao,
uma direo de busca, para o problema auxiliar corrente, calculada utilizando os
sistemas internos do FDIPA.
O algoritmo proposto est descrito na Seo 4.1 e os resultados numricos para
um conjunto de problemas teste so apresentados na Seo 4.3.

4.1

Mtodo

A descrio do mtodo segue com as seguintes ideias: O algoritmo gera uma


sequncia de pontos {(xk , z k )} int(), onde a regio vivel o domnio denido
por
= {(x, z) Rn+1 | f (x) z, e c(x) 0}.
A sequncia gerada satisfaz,
z k+1 < z k ,

c(xk+1 ) 0 para todo k,

e converge para a soluo global (x , z ) do problema (P.3). De fato, o algoritmo


gera uma sequncia de pontos auxiliares {(yi , wi )}, que contm {(xk , z k )} como uma
subsequncia. Os pontos pertencentes a {(xk , z k )}, so chamados pontos srios. Em
cada ponto srio (xk , z k ), criado um modelo aproximado de (PE.3) baseado nos
planos de corte no ponto corrente (xk , z k ), e alguns pontos auxiliares (yi , wi ).
So empregadas algumas ideias do mtodo de planos de corte para gerar
aproximaes lineares das restries do problema equivalente (PE.3). Sejam yi , i =
0, 1, ..., pontos auxiliares observados at -sima iterao, Com isso, pode-se
75

formular o seguinte problema:

minimize F (x, z) = z

(x,z)

sujeito a

z f (yi ) + sTi (x yi ) i = 0, 1, ...,


0 c(yi ) + rTi (x yi ) i = 0, 1, ...,

onde si f (yi ) e ri c(yi ) so subgradientes no ponto yi .


A partir disso, necessrio arrumar o problema de modo que seja possvel utilizar
as ideias do FDIPA. Ento dene-se os planos de corte da seguinte forma:
gi (x, z) = f (yi ) + (si )T (x yi ) z,
hi (x, z) = c(yi ) + (ri )T (x yi ),

i = 0, 1, ..., ,

i = 0, 1, ..., .

claro que tem-se algumas propriedades interessantes, tais como:


f (y) + sT (x y) f (x) e c(y) + rT (x y) c(x), s f (y), r c(y),
e
f(x) = max{f (yi ) + (si )T (x yi ) | i = 1, ..., } f (x),
c(x) = max{c(yi ) + (ri )T (x yi ) | i = 1, ..., } c(x).

Portanto, planos de corte podem ser utilizados para a construo de


aproximaes para as restries do problema equivalente. Ou seja, possvel
considerar uma aproximao poliedral da regio vivel do problema equivalente:
k = { (xk , z k ) Rn+1 | f (yi ) + (si )T (xk yi ) z k , i = 1, ...,
c(yi ) + (ri )T (xk yi ) 0, i = 1, ..., }.
No -th iterado, deni-se o conjunto de restries (lineares) funcionais por:
g (x, z) := [g0 (x, z), ..., g (x, z)]T , g : Rn R R+1
(x, z) := [h0 (x, z), ..., h (x, z)]T , h
: Rn R R+1 .
h
Ento o problema auxiliar pode ser expressado da seguinte forma,

minimize F (x, z) = z

(x,z)

sujeito a

g (x, z) 0
(x, z) 0.
h

76

(PA.3)

Gerando uma Direo de Descida Vivel. Como no FDIPA [30], o


algoritmo encontra uma direo de descida dk = (dkx , dkz ) Rn+1 para a funo
objetivo considerando a seguinte condio necessria de otimalidade Karush-KuhnTucker, para o problema (PA.3):
k , z k ) = 0
F (xk , z k ) +
g (xk , z k ) + h(x

(4.1)

G(xk , z k ) = 0

(4.2)

H(xk , z k ) = 0

(4.3)

g (xk , z k ) 0
k , zk ) 0
h(x
0
0.
onde e denotam os vetores de variveis duais
= (0 , ..., ),

= ( 0 , ..., ),

onde G(x, z) = diag[g0 (x, z), ..., g (x, z)] e H(x, z) = diag[h0 (x, z), ..., h (x, z)] so
matrizes diagonais. Uma iterao quasi-Newton para resolver o sistema de equaes
no-lineares (4.1)-(4.3) pode ser denida por

(xk , z k )
Bk

g (xk , z k ) h
k [
g (xk , z k )]T Gk (xk , z k ) 0
(xk , z k )]T 0
H k (xk , z k )
k [h

xk+1 xk
k+1
k

k+1
k

(xk , z k ) k
F (xk , z k ) +
g (xk , z k )k + h
G(xk , z k )k
H(xk , z k ) k

(4.4)

k+1
k
k
onde (xk , k , k ) o ponto atual, (xk+1 , k+1
, ) a nova estimativa, e so
as matrizes diagonais k = diag[0 , ..., ], k = diag[0 , ..., ], e B k uma matriz
denida positiva.
Fazendo dk = xk+1 xk , pode-se expressar (4.4) como um sistema linear em
termos de dk , k+1
e k+1
dado por

(xk , z k ) k+1 = F (xk , z k )


g (xk , z k )k+1
+ h
B k dk +

=0
g (xk , z k )]T dk + Gk (xk , z k )k+1
k [

(xk , z k )]T dk + H k (xk , z k ) k+1 = 0


k [h

e tem-se o seguinte resultado para dk :


77

(4.5)
(4.6)
(4.7)

Lema 4.1. Para a direo d , definida em pelo sistema (4.5)-(4.7), tem-se que
(d )T F (x, z) (d )T Bd .
Demonstrao. De fato, multiplicando a equao (4.5) por d , obtm-se
(x, z) = (d )T F (x, z)
(d )T Bd + (d )T
g (x, z) + (d )T h

(4.8)

E das equaes (4.6) e (4.7) tem-se que


(d )T
g (x, z) = ( )T ( )1 G(x, z)
e
(x, z) = ( )T ( )1 H(x, z)
(d )T h
donde, substituindo estas equaes em (4.8), obtm-se
(d )T F (x, z) = (d )T Bd + ( )T ( )1 G(x, z)

+ ( )T ( )1 H(x, z) .

e segue o resultado pelo fato de que ( )1 G e ( )1 H so negativa denidas


devido a viabilidade estrita de (xk , z k ).
Devido ao Lema anterior e por B k ser uma matriz denida positiva, tem-se que
dk uma direo de descida para F (i.e., para (PE.3) e (PA.3)).
Contudo, do sistema (4.6)-(4.7) segue que para qualquer restrio ativa, dk ser
ortogonal ao subgradiente associado e, consequentemente, pode ser uma direo
invivel. Portanto, necessria a realizao de uma deexo em dk , para o interior
da regio vivel por meio do vetor dk denido pelo seguinte sistema de equaes
lineares:
(xk , z k ) k = 0
B k dk +
g (xk , z k )k + h

k [
g (xk , z k )]T dk + Gk (xk , z k )k = k
(xk , z k )]T dk + H k (xk , z k ) k = k
k [h

(4.9)
(4.10)
(4.11)

A direo de busca calculada fazendo,


dk = dk + k dk .

(4.12)

k = k + k k ,

(4.13)

k = k + k k .

(4.14)

e tambm

78

Aqui, o limite de deexo k > 0 (veja (4.17)) selecionado de tal forma que a
condio
F (xk , z k )T dk F (xk , z k )T dk , for (0, 1),
com (0, 1) pr-denido, seja satisfeita (veja Lema 4.3 em [30]).
Portanto, tem-se que F (xk , z k )T dk < 0 e, de (4.6)-(4.7) e (4.10)-(4.12), e com
as denies de dk , k e k , possvel escrever
k [
g (xk , z k )]T dk + Gk (xk , z k )k = k
(xk , z k )]T dk + H k (xk , z k ) k = k
k [h

de onde se obtm que gi (xk , z k )T dk < 0 e hi (xk , z k )T dk < 0, i = 1, ..., para


as restries ativas. Portanto a direo dk denida em (4.12), uma direo de
descida vivel para (PE.3) e (PA.3).
Gerando um passo vivel. O nmero real tk > 0 denido como o maior
valor tal que:
g ((xk , z k ) + tk dk ) 0

((xk , z k ) + tk dk ) 0.
h

Se o ponto (xk , z k ) no timo, deni-se o ponto


k
k
(x+1
, z+1
) = (xk , z k ) + tk dk ,

(4.15)

e o novo ponto teste (y+1 , w+1 ) denido como:


(y+1 , w+1 ) = (xk , z k ) + tk dk ,
onde 0 < < 1 um parmetro xado.

79

(4.16)

Agora, o algoritmo tem os seguintes possveis cenrios:


a) O ponto auxiliar vivel para (PE.3). Ento este passo ser chamado de passo
srio, e o algoritmo dene (xk+1 , z k+1 ) = (y+1 , w+1 ), atualiza-se o valor de k
e dene-se um novo problema auxiliar (PA.3) considerando um plano de corte
no ponto (xk+1 , z k+1 ).
b) O ponto auxiliar invivel para (PE.3). O passo chamado de passo nulo,
o algoritmo faz (xk+1 , z k+1 ) = (xk , z k ), e dene-se um novo problema auxiliar
(PA.3) considerando um plano de corte no ponto (y+1 , w+1 ).

4.1.1

Nonsmooth Feasible Direction Constraint Algorithm

ALGORITMO - NFDCA
Parametros: Escolha a tolerncia aproximada nal > 0. Selecione os
parmetros de controle > 0 e (0, 1) para o limite de deexo. Selecione
os multiplicadores (1/2, 1) para o tamanho de passo e o tamanho mximo
de passo tmax > 0.
Dados: Escolha um ponto estritamente vivel (x0 , z 0 ) int(), vetores
positivos iniciais 0 e 0 R e uma matriz simtrica denida positiva
B 0 R(n+1)(n+1) .
Seja y0 = x0 , k = 0 e = 0. Calcule f (x0 ) e c(x0 ).
Passo 1: Calcule s f (y ), r c(y ) e os planos de corte
g (xk , z k ) = f (y ) + (s )T (xk y ) z k e h (xk , z k ) = c(y ) + (r )T (xk y ).
Dena

g (x , z ) =

Dena

h (x , z ) =

g (xk , z k ) = [g0 (xk , z k ), ..., g (xk , z k )]T R+1 ,

g (xk , z k ) = [g0 (xk , z k ), ..., g (xk , z k )] R(n+1)(+1) ,

(xk , z k ) = [h0 (xk , z k ), ..., h (xk , z k )]T R+1 ,


h
(xk , z k ) = [h0 (xk , z k ), ..., h (xk , z k )] R(n+1)(+1) .
h
80

Passo 2: (Direo de Busca) Calcule dk = (dkx , dkz ) Rn+1 , uma direo


vivel para (PA.3):
i) (Direo de Descida)
Determine dk , k e k atravs do sistema de equaes lineares (4.5)-(4.7).
ii) (Direo Vivel)
Determine dk , k e k atravs do sistema de equaes lineares (4.9)-(4.11).
iii) Faa
"
#

k k T k
F
(x
,
z
)
d

k 2

,
min kd k , ( 1)
k k T k

F (x , z ) d

kdk k2 ,

if F (xk , z k )T dk > 0
Caso contrrio.

iv) (Direo de Descida Vivel)


Calcule a direo de descida vivel dk , k e k
dk = dk + k dk ,
k = k + k k ,
k = k + k k .
Passo 3: Determine o tamanho do passo tk fazendo
(xk + tdk ) 0 ,
t = max t | g ((xk , z k ) + tdk ) 0 e h

tk = min{t, tmax }.
Se


k
d

ento pare com (xk , z k ) como soluo nal. Caso contrrio, faa
(y+1 , w+1 ) = (xk , z k ) + tk dk ,
e calcule os correspondentes valores f (y ) e c(y ).
Se
f (y+1 ) < w+1 e c(y+1 ) < 0,
v para o Passo 4, caso contrrio v para o Passo 5.
Passo 4: (Passo Srio) Dena (xk+1 , z k+1 ) = (y+1 , w+1 ).
Atualize B k e k .
Faa k = k + 1, = + 1, e v para o Passo 1.
81

(4.17)

Passo 5: (Passo Nulo) Compute s+1 f (y+1 ), r+1 c(y+1 ) e um novo


plano de corte em (y+1 , w+1 ),
g (xk , z k ) = f (y+1 ) + (s+1 )T (xk y+1 ) z k e
h (xk , z k ) = c(y+1 ) + (r+1 )T (xk y+1 ).

Atualize o vetor de restries:


g (xk , z k ) = [g0 (xk , z k ), ..., g (xk , z k ), g+1 (xk , z k )]T ,
(xk , z k ) = [h0 (xk , z k ), ..., h (xk , z k ), h+1 (xk , z k )]T , e
h

g (xk , z k ) = [g0 (xk , z k ), ..., g (xk , z k ), g+1 (xk , z k )],


(xk , z k ) = [h0 (xk , z k ), ..., h (xk , z k ), h+1 (xk , z k )].
h
Faa = + 1 e v para o Passo 2.

4.2

Anlise da Convergncia

Nesta seo demonstra-se a convergncia global do algoritmo proposto na


Seo 4.1.1. Para isso, so consideradas as seguintes hipteses:
Hiptese 4.1. O conjunto {(x, z) Rn+1 | z < z 0 } compacto.
Hiptese 4.2. Para o problema (P.3) vale a condio de qualificao de Slater [62].
Hiptese 4.3. Existem nmeros positivos 1 e 2 tais que 1 kdk2 dT Bd
2 kdk2 para quaisquer d Rn+1 .
Hiptese 4.4. Existem nmeros positivos I , S , e I , S tais que I i S e
I i S , para i = 0, 1, . . . , .
Hiptese 4.5. Para todo (x, z) int(), o conjunto
{hi (x, z), i = 0, 1, . . . , } {gi (x, z), para todo i tal que gi (x, z) = 0}
linearmente independente.
Inicia-se a anlise terica do mtodo observando que as solues dk , k , k , e
dk , k , k dos sistemas (4.5)-(4.7) e (4.9)-(4.11) so nicas. Este fato consequncia
direta do Lema 3.1 em [52] enunciado como seque, usando a notao do paper:
Lema 4.2. Para qualquer (x, z) int(), e B R(n+1)(n+1) definida positiva, a
matriz

g
(x,
z)

h(x,
z)

T
,
[
M (x, B, , ) =
g
(x,
z)]
G(x,
z)
0

[h(x,
z)]
0
H(x, z)
82

no singular.
Observa-se que, como a matriz B limitada por hiptese, xk est num conjunto
compacto, k e k so limitados (veja [30]), a matriz M (x, B, , ) limitada fora
do zero e portanto, dk , k , k , dk , k , k so limitados superiormente.
Lema 4.3. Seja (xk , z k ) int um ponto de iterao gerado pelo algoritmo. Para
todo k 1, tem-se que
z k+1 < z k e c(xk+1 ) < 0.
Alm disso, o prximo ponto iterado (xk+1 , z k+1 ) est no interior de .
Demonstrao. Quando o algoritmo gera a direo de descida (veja seo 4.1), temse a propriedade de que (dk )T F (x, z) < 0, de onde segue que dkz < 0. Pela
construo do novo ponto em (4.16), tem-se que
z k+1 = z k + tk dkz , onde , tk > 0,
logo, z k+1 < z k .
O ponto corrente (xk , z k ) atualizado no Passo 4 do algoritmo. Ao atualizar o
k
k
ponto corrente com um passo srio, faz-se (xk+1 , z k+1 ) = (y+1
, w+1
) somente se,
k
k
k
w+1
> f (y+1
) e c(y+1
) < 0. Donde obtm-se de imediato que
k+1
k
k
f (x ) = f (yk+1 ) < w+1
= z k+1 e c(xk+1 ) = c(y+1
) < 0.
Portanto, (xk+1 , z k+1 ) int().
OBS 4.1: Note que a sequencia {(xk , zk )}N denida em (4.15) para k xo,
est num conjunto limitado. De fato, pela Hiptese 4.1 e Lema 4.3, o conjunto
0 := {(x, z) | z z 0 } limitado. Logo, existe r > 0 tal que ||(x, z)|| < r para
todo ponto em (que o mesmo que dizer que 0 est numa bola centrada na origem
e de raio r). Ento para qualquer passo srio tem-se ||(xk , z k )|| < r. Para a sequencia
de baixo, dada por (xk , zk ) = (xk , z k )+td com t limitado por tmax e ||d|| limitado por
um valor D, segue que, pela desigualdade triangular ||(xk , zk )|| ||(xk , z k )||+Dtmax ,
ento a sequencia {(xk , zk )}N est numa bola centrada na origem e raio r + Dtmax .
Lema 4.4. Seja (
xk , zk ) um ponto de acumulao da sequencia {(xk , zk )}N definida
em (4.15) para k fixo. Ento (
xk , zk ) um ponto pertencente a fronteira de .
Demonstrao. Sem perda de generalidade, considere que a sequencia {(xk , zk )}N
converge para (
xk , zk ) (caso necessrio, considera-se uma subsequencia apropriada).
k
k
Pela denio da sequencia {(xk , zk )}N tem-se que o ponto (x+1
, z+1
) vivel
com respeito ao planos de corte 2 do problema auxiliar nmero . Logo se pode
escrever que

k
k
zm
> f (xk ) + sT (xm
xk )
m + 1 .
(4.18)
k
0 c(xk ) + rT (xm
xk )
83

Tomando o limite sobre esta expresso, quando m , obtm-se:


zk f (xk ) + sT (
xk xk ) ,
0 c(xk ) + rT (
xk xk ) .

(4.19)

Agora, considerando o limite quando , e levando em considerao que os


subgradients so limitados, tem-se:
zk f (
xk ) ,
0 c(
xk ) .

(4.20)

Portanto (
xk , zk ) . Pela denio da sequencia {(xk , zk )}N , nenhum dos pontos
(xk , zk ) esto no interior de . Ento, o limite (
xk , zk ) no pode estar no interior
de donde segue o resultado.
Lema 4.5. Seja (xk , z k ) int . O prximo ponto de iterao (xk+1 , z k+1 ) est no
interior de e encontrado aps um nmero finito de iteraes.
Demonstrao. Pelo Lema 4.3, um novo iterado (xk+1 , z k+1 ) est no interior de .
Ento, basta mostrar que ele encontrado aps um nmero nito de iteraes.
Considera-se a sequncia {(
xk , zk )}N denida em (4.15) e tal que, {(
xk , zk )}N
Rn r . Por construo, esta sequncia limitada e portanto possui um ponto
de acumulao, denotado por (
xk , zk ). Como (
xk , zk ) (veja o Lema 4.4), e
(xk , z k ) int , pode-se construir uma sequncia {(xk , zk )} tal que:
(xk , zk ) = (xk , z k ) + [(
xk , zk ) (xk , z k )],
para a qual (pelo Lema 2.8), tem-se que existe 0 N tal que (xk , zk ) int(),
para todo > 0 . Portanto, pode-se fazer xk+1 = xk e z k+1 = zk para > 0 , o que
completa a demonstrao.
OBS 4.2: Como consequncia do Lema 4.5, a sequencia {(xk , z k )}kN est
inteiramente contida no interior de . E pelo Lema 4.3, tem-se que z k+1 < z k < z 0 ,
Portanto, a sequencia {(xk , z k )}kN est contida no conjunto limitado 0 denido
na OBS 4.1.
Lema 4.6. Existe > 0 tal que para todo (x, z) int() e para toda direo

d Rn+1 gerada pelo algoritmo, tem-se que g ((x, z) + td) 0 e h((x,


z) + td) 0
para todo t [0, ].
Demonstrao. Como no lema 2.11, tem-se que g (x, z) = (
g (x, z))T (x, z) b,
onde bi = sTi yi f (yi ) e si f (yi ), para todo i = 0, 1, ..., .
84

E de modo anlogo, faz-se,


hi (x, z) = c(yi ) + rTi (x yi ),
= c(yi ) + rTi x rTi yi

para ri c(yi );

= ((ri )T , 0)T (x, z) rTi yi + c(yi )


= (hi (x, z))T (x, z) ci ,

onde ci = rTi yi c(yi ), i = 0, 1, ..., ,

(x, z) = (h
(x, z))T (x, z) c.
pode-se escrever: h
Por construo, o algoritmo dene o tamanho de passo t fazendo:
(x + tdk ) 0} .
t = min tmax , max{t | g ((x, z) + td ) 0 e h

Agora combinando estas duas observaes, e nota-se que gi (x, z) e hi (x, z) no


dependem do ponto (x, z), mas dos pontos auxiliares yi (i = 0, 1, . . . , ), obtm-se
gi ((x, z) + ti d) = [gi ((x, z) + ti d)]T ((x, z) + ti d) bi
e

= gi (x, z) + ti (gi (x, z))T d 0

(4.21)

hi ((x, z) + ti d) = [hi ((x, z) + ti d)]T ((x, z) + ti d) ci


= (hi (x, z))T ((x, z) + ti d) ci

= (hi (x, z))T (x, z) ci + ti (hi (x, z))T d

(4.22)

= hi (x, z) + ti (hi (x, z))T d 0, i = 0, 1, . . . , .

Se (gi (x, z))T d 0 e (hi (x, z))T d 0, as equaes do lema so satisfeitas


para qualquer ti > 0.
Portanto, considera-se que (gi (x, z))T d > 0 e (hi (x, z))T d > 0. Por (4.12),
tem-se que
(gi (x, z))T d = (gi (x, z))T (d + d ) e (hi (x, z))T d = (hi (x, z))T (d + d ).
Mas
gi (x, z)T d = gi (x, z)

,i
,i
e gi (x, z)T d = 1 gi (x, z)
,
i
i

(4.23)

hi (x, z)T d = hi (x, z)

,i
,i
e hi (x, z)T d = 1 hi (x, z)
.
i
i

(4.24)

85

Agora, combinado as equaes (4.23) com (4.21) e (4.24) com (4.22), obtm-se
que
i
,i + ,i

gi (x, z) ti gi (x, z)
ti = gi (x, z)(1 ti ) ti 0,
i
i
e
,i + ,i
i
hi (x, z) ti hi (x, z)
ti = hi (x, z)(1 ti ) ti 0.
i
i
i = ,i + ,i e i = ,i + ,i . Como ti > 0, gi (x, z) < 0 e hi (x, z) < 0,
onde
tem-se
i
i

ti 1 e ti 1.
i
i
Agora, e so limitados pela Hiptese 4.4, e , , , e so limitados.
e
i > e i /
so limitados e existe > 0 de modo que i /
Portanto,
i >
para todo i = 1, . . . , .
Portanto, para todo t [0, ], tem-se gi ((x, z)+td) 0 e hi ((x, z)+td) 0.
Lema 4.7. Seja d um ponto de acumulao da sequncia {dk }kN . Ento d = 0.
Demonstrao. A demonstrao anloga a do Lema 2.12.
Lema 4.8. Sejam (sT , 1)T e (rT , 0)T gradientes de restries ativas no ponto
de acumulao (x , z ) da sequncia gerada pelo algoritmo, ento s f (x ) e
r c(x ).
Demonstrao. A demonstrao de que s f (x ) j foi feita no Lema 2.13. Resta
mostra que r c(x ). Seja h(x, z) = c(y) + rT (x y) uma restrio ativa em
(x , z ), onde r c(y). Logo, h(x , z ) = c(y) + rT (x y) = 0.
Como a restrio c convexa, para todo x
c(x) c(y) + rT (x y)

= c(y) c(x ) + c(x ) + rT (x y) rT (x x ) + rT (x x )


= c(x ) + rT (x x ) + [c(y) + sT (x y)] c(x )

= c(x ) + rT (x x ) + h(x , z ) c(x )


= c(x ) + rT (x x ) c(x )

Como c(x ) 0 segue que c(x) c(x ) + rT (x x ), para todo x


e portanto r c(x ).
No lema seguinte mostra-se que, devido o problema auxiliar ser convexo, k e
k so no-negativos na soluo.
Lema 4.9. Para k suficientemente grande, tem-se que k 0, e k 0.
86

Demonstrao. Considere o seguinte problema de otimizao convexa


minimize (x, z) sujeito a g (x, z) 0,

(x, z) 0,
h

onde (x, z) = F (x, z) + dT Bx. Um ponto KKT (x , z ) deste problema satisfaz


(x , z ) = 0
F (x, z) + Bd +
g (x , z ) + h
G (x , z ) = 0

H (x , z ) = 0
0
0

(4.25)
(4.26)

g (x, z) 0,
(x, z) 0.
h
Nota-se que os sistemas (4.5), (4.6) e (4.7) do algoritmo podem ser reescritos como
k (xk , z k ) k = 0
F (x, z) + Bdk +
g k (xk , z k )k + h

k
k (xk , z k ) = k1 ,
G
k (xk , z k ) k = k2 ,
H
k (xk , z k )]T dk .
onde k1 = k [
g k (xk , z k )]T dk , e k2 = k [h

k
k
Quando d 0 tem-se que i 0 for i = 1, 2 e ento, para dados 1 , 2 > 0,
existem K1 , K2 > 0 tais que
kk k < 1

for k > K1

e k k k < 2

for k > K2 .

Ento como , 0 por (4.25) e (4.26) deduz-se que k , k 0 para k


sucientemente grande.
No prximo resultado mostra-se que todo ponto de acumulao (x , z ) da
sequencia {(xk , z k )}kN satisfaz a condio de otimalidade para minimizar uma
funo convexa num conjunto convexo, dada no Teorema 1.27.
Teorema 4.10. Seja (x , z ) um ponto de acumulao da sequncia {(xk , z k )}kN .
Ento, 0 f (x ) + N (x ), onde N (x ) o cone normal de em x . E portanto
x o minimizador de f em . (veja Teorema 1.27)
Demonstrao. Considere a sequencia
Y := {y00 , y10 , ..., y00 , y01 , y11 , ..., y11 , ....., y0k , y1k , ..., ykk , ....},
87

de todos os pontos obtidos nas sub-iteraes do algoritmo. Como esta sequencia


limitada, se pode encontrar uma subsequencia convergente. Em particular, como
Y que converge para
xk+1 = ykk , pode-se armar que existe uma subsequencia Y
k Y
{yk , yk , ..., ykk }. Agora, Dena Ik = {i | yk Y
k }.
x . Considere Y
0
1
i

Considerando as equaes (4.5), (4.6) e (4.7). Quando k tem-se que


d = 0, pelo Lema 4.7. Logo obtm-se,
(x , z ) = F (x , z ),

g (x , z ) + h

g (x , z ) = 0,
(x , z ) = 0,
h

onde denota-se por , os vetores multiplicadores de Lagrange correspondentes


(x , z ) as correspondentes restries.
a d e por g (x , z ) e h

Como

g (x , z )

s1 s2 . . . s
=
, e
1 1 . . . 1

(x , z )
h

r1 r2 . . . r
=
0 0 ... 0

T
= [,1 , ,2 , . . . , , ]T e = [,1
, ,2
, . . . , ,
]

obtm-se

X
i=1

,i si =

,i
ri

,i = 1.

i=1

i=1

E considerando apenas os ndices i I , e denindo


=

,i
,

,i
= ,i
/

iI

tem-se
X

iI

,i si +

,i
ri = 0

iI

iI

,i =

,i
= 1.

(4.27)

iI

Pelo Lema 3.14 tem-se que si f (x ) e ri c(x ) para todo i I e pela


convexidade do subdiferencial pode-se escrever
P
P

ri onde r c(x ).
s := iI ,i si onde s f (x ) e r := iI ,i
Com esta notao possvel notar que, pela equao (4.27), r f (x ).
Como r c(x ), pela denio de subdiferencial, tem-se que
c(x) c(x ) + rT (x x ),
88

para todo x .

(4.28)

Se c(x ) < 0, ento x int() e com isso, N (x ) = {0} e portanto tem-se que
0 f (x ) de forma anloga ao que foi feito no Captulo 2.
Agora, supondo que c(x ) = 0, como c(x) 0, pela equao (4.28), tem-se que
rT (x x ) 0 para todo x o que signica que r N (x ) (Veja denio
de cone normal no Captulo 1).
Portanto mostrou-se que existe r f (x ) tal que rT (x x ) 0 para todo
x , o que pelo Teorema 1.27 equivalente a 0 f (x ) + N (x ).
E com este resultado a prova da convergncia est completa.

4.3

Resultados Numricos

Nesta seo so apresentados os resultados preliminares obtidos com o mtodo


NFDCA descrito na Seo 4.1.1. Os detalhes dos problemas teste so apresentados
na Tabela 4.1, os resultados preliminares so apresentados na Tabela 4.2 e o resultado
da comparao com outros solvers est na Tabela 4.3.

4.3.1

Experincia Computacional Preliminar

Para validar a experincia computacional inicial do algoritmo NFDCA, realizouse uma implementao em MATLAB, num micro computador com 500MHz e 2 GB
de RAM. Para avaliar sua performance, foi utilizada uma bateria de problemas testes
que podem ser encontrados no trabalho de Schittkowski [63], Luk
san e Vl
cek [54],
Kiwiel [34], e esto descritos em detalhes no Apndice B. Esta coleo de problemas
considerada padro em otimizao convexa no diferencivel. Foram adicionados
alguns problemas do livro de Schittkowski [63] que foram identicados com convexos.
Note que estes problemas so originalmente diferenciveis. E foram transformados
em problemas no diferenciveis ao se considerar o mximo das restries.
Os parmetros utilizados nos testes foram os seguintes:
B = I, = 104 , = 0.8, = 1, = 0.1.
A performance do algoritmo avaliada com base no nmero de avaliaes das
restries e funo objetivo como em [27]. E para isso, est sendo utilizada a seguinte
expresso
 f (xbest ) f (
x) 
log10 |
|
f (
x)
RELACC :=
,
#ORcalls

89

onde xbest o melhor ponto encontrado pelo algoritmo e #ORcalls o nmero de


avaliaes necessrias para determinar o ponto xbest . E quando f (
x) = 0, troca-se
o denominador no logaritmo por 1.
O valor da expresso RELACC pode ser interpretado como o nmero exato de
dgitos adquiridos por chamada ao orculo utilizada.
Por exemplo, se o RELACC for 2 ento voc ganha 2 dgitos exatos a mais por
cada avaliao da funo. Quer dizer, se a soluo exata for: 1.23456789 e a soluo
atual for 1.2XXXXX (os X so dgitos no exatos da soluo aproximada) ento
chamando 2 vezes o orculo o algoritmo capaz de melhorar a soluo aproximada,
que ter ento 2x2 dgitos exatos a mais, ou seja, ser 1.23456XX.
Os seguintes solvers foram considerados para a comparao da performance do
algoritmo:
CLEVEL e NLEVEL - so duas variantes do Level Bundle Method em [64].
CPBFM - Constraint Proximal Bundle Filter Method em [27].
Todos os parmetros utilizados foram os parmetros sugeridos pelos respectivos
cdigos. E neste caso, tambm foram utilizados um conjunto mximo de 100
chamadas para o orculo, ou seja, avaliaes das funes objetivo, restries e
subgradientes. E uma tolerncia para a determinao do timo igual a 104 .
Os resultados obtidos mostram que para uma comparao inicial, o algoritmo
NFDCA obteve uma boa performance em relao aos trs solvers acima citados. Em
todo caso, o algoritmo resolveu todos os problemas testes da Tabela 4.1, onde foram
utilizados os mesmos parmetros. claro que mais testes devem ser realizados na
tentativa de melhorar o desempenho do algoritmo.
Para o NLEVEL observou-se algumas falhas, que aparecem como 0.000 na
Tabela 4.3.

90

Tabela 4.1: Problemas Teste


No.

Problema

c(x) Ponto Inicial

f (x )

Maxquad

10

lin

(0, 0, 0, 0, 0, 0, 0, 0, 0, 0)

-0.36816644

Rosen

cvx

(0, 0, 0, 0)

-44

Wong2

20

cvx

(2, 3, 5, 5, 1, 2, 7, 3, 6, 10)

24.306209

Wong3

20

cvx

(*)

133.72828

Prob12

dif

(0, 0)

-30

Prob29

dif

(1, 1, 1)

-22

Prob35

cvx

(0.5, 0.5, 0.5)

1/9

Prob76

cvx

(0.5, 0.5, 0.5, 0.5)

-4.6818

Prob100

cvx

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

680.630057

10

Prob113

10

cvx

(2, 3, 5, 5, 1, 2, 7, 3, 6, 10)

24.306209

11

Prob227

cvx

(0.5, 0.5)

12

Prob228

cvx

(0.0, 0.0)

-3

13

Prob264

cvx

(0.0, 0.0, 0.0, 0.0)

-44

14

Prob284

15

cvx

-1840

15

Prob285

15

cvx

-8252

16

MiniMax

cvx

(15, 22, 27, 11)

23.886767

17

MiniSum

cvx

(0, 0, 0, 0, 0, 0)

68.82856

18

Streit

cvx

(0, 0, 0, 0)

0.7071068

19

Colville

cvx

(0, 0, 0, 0, 0, 0)

-23.0448869

20

Ill-Conditioned LP 30

lin

(*) - (2, 3, 5, 5, 1, 2, 7, 3, 6, 10, 2, 2, 6, 15, 1, 2, 1, 2, 1, 3)


Na Tabela 4.1 utilizou-se a seguinte notao:
n - representa a dimenso do problema em questo;
lin - abreviao para linear;
cvx - abreviao para convexo;
dif - abreviao para diferencivel;
f opt - o valor timo conhecido do problema.

91

Tabela 4.2: Resultados Preliminares do NFDCA

Abreviaes:

Problema

ps

pn

nf

RELACC

Maxquad

19

29

48

-0.368

0.079

Rosen

23

27

30

-44.000

0.252

Wong2 106

112

218

24.306

0.028

Wong3 175

191

366

133.728

0.018

prob12

22

26

-30.000

0.360

prob35

23

27

50

0.111

0.087

prob76

22

13

35

-4.682

0.155

prob100

91

127

218

680.741

0.017

prob113

65

59

124

24.282

0.024

prob227

12

16

1.0000

0.393

prob228

14

18

-3.000

0.355

prob264

32

19

51

-44.000

0.162

prob284 190

248

438

-1840.000

0.019

prob285 200

218

418

-8252.000

0.019

ps - o nmero de passos srios;


pn - o nmero de passos nulos;
nf - o nmero de avaliaes da restries e funo objetivo;
f - o valor nal da funo objetivo.

Tabela 4.3: Valores do RELACC


CLEVEL NLEVEL CPBFM

NFDCA

Maxquad

0.09

0.09

0.15

0.079

Rosen

0.15

0.19

0.12

0.252

prob12

0.08

0.00

0.33

0.360

prob100

0.08

0.00

0.06

0.017

prob113

0.03

0.09

0.08

0.024

prob227

0.18

0.20

0.38

0.393

prob228

0.10

0.17

1.88

0.355

prob264

0.03

0.10

0.14

0.162

prob284

0.03

0.00

0.22

0.019

prob285

0.07

0.00

0.15

0.019

92

Captulo 5
Otimizao Topolgica Robusta de
Estruturas Reticuladas
Nesta seo apresenta-se uma aplicao do algoritmo NFDA, apresentado no
Captulo 2, para o problema de otimizao topolgica robusta.

5.1

Introduo

A otimizao estrutural pode ser aplicada a todos os tipos de estruturas, desde


estruturas bem simples at uma barra engastada ou at estruturas bem mais
complexas, como uma estao espacial. Essas estruturas podem ter uma, duas
ou trs dimenses. A princpio tratam-se apenas de estruturas reticuladas, que por
sua simplicidade so mais didticas e permitem um estudo sistemtico.
Uma estrutura reticulada, ou trelia, um dos principais tipos de estruturas
de engenharia. Ela oferece, ao mesmo tempo, uma soluo prtica e econmica a
muitas situaes, especialmente no projeto de pontes e edifcios. Uma trelia uma
construo 2D ou 3D composta por nas barras elsticas ligadas umas as outras por
ns - pontos de um conjunto nito, do plano ou do espao, inicialmente considerado.
Quando estas estruturas so sujeitadas a uma dada carga - distribuio de foras
externas aplicadas sobre os ns - a estrutura se deforma at que as foras internas
(axiais), compensem as cargas externas. A trelia deformada capacita certa energia
potencial, e esta energia - a complacncia - mede a rigidez da trelia, sua capacidade
de suportar a carga.
A otimizao topolgica de estruturas reticuladas busca selecionar uma
congurao tima de um sistema de estruturas (mecnica, engenharia civil,
aeroespacial). Este um tema clssico que vem crescendo rapidamente ao longo
dos ltimos anos. O problema tradicional consiste em encontrar a congurao
tima que minimiza a energia de deformao mxima da estrutura sujeita a um

93

conjunto de estados de carga. As variveis de projeto, em geral, so: o tamanho da


barra, o conjunto de coordenadas nodais da estrutura e o volume total das barras
consideradas inicialmente.
O projeto timo assegura o melhor comportamento possvel da estrutura sobre
determinadas cargas (ou foras). Contudo, pode acontecer que pequenas foras
no considerados na estrutura, causem uma deformao inapropriada da estrutura.
Portanto, um projeto robusto deve assegurar um comportamento razovel sobre
todos as possveis cargas de pequena magnitude.

5.2

Modelos em Otimizao Topolgica

No modelo supe-se n pontos nodais (m graus de liberdade), ou seja, pontos do


plano ou do espao tridimensional. So consideradas b barras ou arestas possveis, ou
seja, conexes entre os ns que podem ser barras da estrutura. Estas barras podem
ser todas as possveis entre os ns num subconjunto delas. So dados tambm
os apoios, isto , as restries ao deslocamento para cada um dos ns, e um ou
vrios estados de carga que a estrutura deve suportar. As variveis fundamentais
do problema so os volumes do material que se atribuem a cada aresta, podendo
dispor tambm de um dado volume mximo de material. O objetivo encontrar
a distribuio tima de material, i.e., a distribuio de volume que corresponde a
melhor estrutura reticulada de acordo com um determinado critrio. Na soluo
do problema, algumas das possveis arestas (ou barras) podem car com volume
de material nulo, por isso, se dizem que os modelos utilizados so de Otimizao
Topolgica.
Denota-se aj , lj a rea da seo transversal e o cumprimento da barra de nmero
j, respectivamente, e assume-se que todas as barras so feitas de material elstico
linear com coeciente de elasticidade (modulo de Young) Ej . Desse modo, o volume
P
da estrutura dado por V = bj=1 aj lj . Contudo, para simplicar a notao,
introduz-se o volume da barra, xj = aj lj , j = 1, ..., b, como as variveis de projeto.
Ento a condio de equilbrio ou equilbrio esttico expressada por
Bq = p.
onde q o vetor de foras e p o vetor de fora nodal. A estrutura escolhida de
modo que a matriz de equilbrio B tenha posto completo e ento que b m. A
matriz de rigidez da estrutura escrita da seguinte forma
K(x) =

b
X

j=1

94

xj Kj

onde xj Kj o elemento da matriz de rigidez para a barra de nmero j, escrita em


coordenadas globais. Nota-se que Kj = El2j bj bTj onde bj a j-sima coluna de B.
j
O problema de determinar a menor complacncia da estrutura para um dado
volume de material tem uma formulao bem conhecida, Bendse [65]
minimize
pT u
u,x
sujeito a

b
X

xj Kj u = p

(5.1)

j=1
b
X

xj = V

j=1

xj 0, j = 1, ..., b.
onde p representa o vetor global de cargas nodais atuando sobre a estrutura
reticulada, u o vetor global de deslocamentos nodais, Ki a contribuio da matriz
de rigidez da estrutura da barra de nmero i calculada para um volume unitrio.
Neste modelo as variveis so os deslocamentos u e os volumes das barras
expressados pela varivel vetorial x Rb . Como soluo, temos que x obtido,
a distribuio de volume que maximiza a rigidez da estrutura relativa a carga p.
P
A equao bj=1 xj Kj u = p a equao de equilbrio do problema. A equao
Pb
j=1 xj = V a uma restrio para a distribuio de volume, a qual expressa, que a
soma dos volumes igual a quantidade de volume de material que se deseja repartir
entre as barras. Essa equao pode ser substituda pela seguinte equao:
b
X

j=1

xj V,

(5.2)

e esta verso a utilizada neste trabalho e conduz sempre a mesma soluo, quando
se considera a do caso anterior.
Um problema considerado bem formulado se para reas unitrias a matriz de
rigidez no singular, ou seja, quando se tem que
b
X

j=1

Kj 0.

(5.3)

No que segue se utilizar esta notao para indicar que uma matriz denida
positiva e se indicar com o smbolo  quando a matriz for semidenida positiva.

95

Na referncia [65], Bendse dene o seguinte problema e mostra sua equivalncia


com o problema (5.1):
inf

x>0
b

j=1

xj =V

2pT u uT
(x) pT u = max
u

b
X

j=1

xj Kj u .

(5.4)

A funo (x) a energia de deformao da estrutura quando est na


congurao de equilbrio estando aplicada a carga p. Aqui, (x) valer innito
quando no existir uma congurao de equilbrio, ou seja, a estrutura no poder
suportar a carga p (para este caso necessrio que a matriz K(x) seja singular, isto
s pode acontecer se um ou vrios dos volumes xj for zero).
importante notar que para um valor da varivel x tal que a funo (x) seja
limitada superiormente pode ser encontrado o argumento u (no necessariamente
nico) para o qual se obtm o mximo de (x) em (5.4), por outro lado, esse
P
argumento u vericar necessariamente a equao de equilbrio bj=1 xj Kj u = p.
Neste trabalho, se optar por um procedimento que itere na varivel x (com x
estritamente positivo em cada iterao) e de modo a diminuir em cada iterao o
valor da funo (x) at chegar a soluo com uma certa tolerncia. Em cada passo
se dever encontrar um valor de u que seja argumento mximo na equao de em
(5.4) (isto sempre acontecer, dado que o valor da funo (x) limitado pelo valor
inicial) e portanto dena a funo (x). Este valor de u fcil de se achar quando
x estritamente positivo, pois segue de resolver o sistema dado pela equao (5.5)
onde a matriz K(x) denida positiva
K(x)u = p.

(5.5)

Estas consideraes nos permitem formular o seguinte problema:


minimize
(x) = pT u(x)
x
sujeito a

b
X

j=1

xj V

xj 0, j = 1, ..., b.

(5.6)
(5.7)
(5.8)

Salienta-se que o problema (5.4) convexo. Isto segue do fato de que a funo
complacncia (x), expressada como o supremo (mximo) sobre uma famlia de
funes (lineares neste caso) convexas.
Resta agora, achar uma expresso que proporcione um subgradiente da funo
(x). Contudo para valores onde x > 0, tem-se que a funo (x) diferencivel.

96

Ento considerando que (x) pT u(x) e K(x)u(x) = p, segue que

u(x)
u(x)
(x)
= pT
= u(x)T K(x)
xi
xi
xi

(5.9)

K(x)
u(x)
u(x) + K(x)
=0
xi
xi

(5.10)

Agora, substituindo a equao (5.10) na equao (5.9), obtm-se


K(x)
(x)
= u(x)T
u(x)
xi
xi
Alm disso, como K(x) =
Portanto, obtm-se que

Pb

i=1

xi Ki , tem-se que

K(x)
xi

(x)
= u(x)T Ki u(x).
xi

5.3

(5.11)
= Ki .

(5.12)

Modelo de Otimizao Topolgica Robusta

O modelo considerado aqui foi proposto inicialmente por Ben-Tal e Nemirovski


em [66], para um tratamento com programao semidenida. Nesta seo apresentase uma aplicao do Algoritmo NFDA (Captulo 2) no projeto de estruturas
reticuladas robustas.
Um modelo utilizado para otimizao topolgica considera estruturas submetidas
a um conjunto de carregamentos, que chamaremos de cargas primrias, e olha para
o volume de cada barra que minimiza a complacncia estrutural. Neste trabalho
considerada a robustez da estrutura. Uma estrutura pode ser considerada robusta
se razoavelmente rgida, para os estados de carga dados (cargas primrias) e
tambm para os estados de carga que compreendem todas as possveis cargas de
pequena magnitude (cargas secundrias) que podem eventualmente atuar sobre a
mesma, Ben-tal e Nemirovski [66].
A complacncia a ser minimizada a pior possvel produzida para uma carga
em um dos dois conjuntos. Nesta seo realiza-se uma formulao alternativa que
lida com o problema de otimizao convexa no diferencivel e resolvido com o
Algoritmo NFDA.
O modelo considera estruturas com duas ou trs dimenses com n ns e m
graus de liberdade, submetido a um conjunto nito de condies de carregamento
P {p1 , p2 , . . . , ps } tais que pi Rm para i = 1, 2, . . . , s, e seja b o nmero de
barras iniciais (ou possveis). As variveis de projeto so os volumes das barras,

97

denotados por xj , j = 1, 2, ..., b. A matriz de rigidez


K(x) =

b
X

xj Kj ,

(5.13)

j=1

onde Kj Rmm , j = 1, 2, ..., b, so as matrizes de rigidez reduzidas correspondentes


as barras de volume unitrio. Para obter um problema bem posto, a matriz
b
P

j=1

Kj deve ser denida positiva [66]. A complacncia relatada para a condio

de carregamento pi P pode ser denida como em [65]:


(x, pi ) = sup{2uT pi uT K(x)u, u Rm }.
u

(5.14)

Seja (x)
= sup{(x, pi ) , pi P } a pior complacncia possvel para o conjunto
pi

P . Um modelo de energia para otimizao topolgica com vrias condies de


carregamento pode ser colocada na seguinte forma:

min (x)

xRb

b
X
xj V ,
s.t.

j=1

xj 0 ,

(5.15)

j = 1, . . . , b

O valor V > 0 a quantidade mxima de material a ser distribuda na estrutura.


Ao invs de maximizar no domnio nito P , considera-se o modelo proposto
por Ben-Tal e Nemirovski [66] que maximiza no elipsoide M de condies de
carregamento, denido abaixo:
M = {Qe | e Rq , eT e 1} ,

(5.16)

[Q] = [p1 , . . . , ps , rf 1 , . . . , rf qs ].

(5.17)

onde
Os vetores {p1 , . . . , ps } devem ser linearmente independentes e rf i , representam o isimo carregamento secundrio. O valor r a magnitude do carregamento secundrio
e o conjunto {f 1 , . . . , f qs } deve ser escolhido como sendo uma base ortogonal de
um subespao linear ortogonal ao subespao gerado por P . O procedimento para
escolher uma base conveniente explicado com mais detalhes no Exemplo 1.
O procedimento para uma escolha base {f 1 , . . . , f qs } conveniente ser explicado
depois. Para este modelo tem-se que

(x)
= sup{(x, p) , p M }.
p

98


Um projeto robusto ento obtido resolvendo-se (5.15) com (x)
previamente
denida. Em [66], est demonstrada a equivalncia entre as duas seguintes
expresses:

(x)
(5.18)
e

Iq QT

 0,
A(, x) =
Q K(x)

(5.19)

onde Iq uma matriz identidade de tamanho Rq Rq , R e A  0 a notao


utilizada quando a matriz A semidenida positiva.
Como o epgrafo de coincide com o conjunto {(, x) | A(, x)  0}, e este
ltimo convexo, Vandenberghe and Boyd, [67], tem-se que uma funo convexa.
Desse modo para Otimizao Robusta possvel utilizar o modelo proposto
por Ben-Tal e Nemirovski [66], e resolver o problema (5.15) usando o algoritmo
NFDA para Otimizao No Diferencivel. Note que este problema tem restries
de desigualdade lineares. Logo, para resolver este problema necessrio incluir todo
o conjunto de restries do problema inicial no problema auxiliar (PA.1). E ainda,
o ponto inicial x0 deve ser interior para a regio vivel denida pelas restries de
desigualdade lineares. Resta mostrar como calcular a funo num ponto interior
x.
Segue que o problema (5.19) equivalente a:
K(x) QQT  0,

(veja [66]).

(5.20)

Ento, a equivalncia entre (5.18) e (5.20) mostra que (x)


igual a que resolve
o problema:

min

(5.21)
s.t. K(x) QQT  0 .

Como est sendo considerado K(x) 0, tem-se um chamado Problema de

autovalor generalisado. Consequentemente, (x)


o maior autovalor generalizado
T
do sistema (QQ , K(x)), [67]. Existem rotinas ecientes para avaliar os autovalores
generalizados, [68].
Se o maior autovalor simples, a funo diferencivel. Contudo, se este for
mltiplo, a funo geralmente no diferencivel. Em ambos os casos, possvel
calcular os subgradientes requeridos, veja [6971].
So considerados quatro problemas teste. Em todos os quais o mdulo de Young
do material E = 1.0 e o volume mximo V = 1.0.

99

Exemplos
Exemplo 1

Figura 5.1: Trelia do Exemplo 1.

O primeiro exemplo considera a estrutura reticulada da Figura 5.1. O tamanho


de cada barra horizontal e vertical igual a 1.0 e a magnitude das cargas
1.0. Os carregamentos secundrios tem magnitude r = 0.3 e dene-se uma base
do complemento ortogonal do subespao gerado por P (denotado por L(P )), no
subespao linear F gerado pelos graus de liberdade 2 e 4. De acordo com a
numerao dos graus de liberdade da Figura 5.1, o carregamento primrio e a matriz
A = [e1 , e2 , e3 , e4 ] de vetores da base de F so:

1
1

p =
,
0

0
A=

0
0
0
1
0
0
0
0

0
0
0
0
0
0
1
0

0
.

Determina-se uma base ortonormal {f1 , f2 , f3 } do complemento ortogonal de


L(P ) em F . Como cada um dos vetores f i est em F , eles satisfazem f i = Av i
para algum v i R4 . Como so normais a p1 , os vetores v i satisfazem (p1 )T Av i = 0.
Ento, se pode encontrar {v 1 , v 2 , v 3 } como sendo uma base ortonormal do ncleo
de (p1 )T A. Esta base pode ser encontrada utilizando a Decomposio
por Valores

1
0
0

0
0
0
1 T
i
1 2 3

.
Singulares, [72], de (p ) A. O resultado obtido para v [v , v , v ] =

0 1 0

0 0 1
100

O resultado nal :

1
1
1
2
3
Q = [p , rf , rf , rf ] =

0
0
0

0
0
0

0.3 0
0

0
0
0
.

0
0
0

0
0
0

0 0.3 0

0
0 0.3

A Figura 5.2 mostra a estrutura tima obtida para o Exemplo 1 e a Figura 5.3
mostra a evoluo dos quatro maiores autovalores dos sistema (QQT , K(x)).

Figura 5.2: Estrutura tima obtida no Exemplo 1.

500
1

Eigenvalues

450

400

350

300
250
200
150
100
50
0

10

15

20
25
Iteration

30

35

40

45

Figura 5.3: Exemplo 1 - Evoluo dos quatro maiores auto-valores.

101

Exemplo 2

Figura 5.4: Trelia do Exemplo 2.

Este exemplo considera a mesma estrutura reticulada do Exemplo 1, e uma


condio de carregamento como mostra a Figura 5.4, A magnitude das cargas
primrias 2.0 e as cargas secundrias tem magnitude r = 0.4 e dene-se uma
base do complemento ortogonal de L(P ) no subespao linear de F de todos os graus
de liberdade da estrutura.

Figura 5.5: Estrutura tima obtida no Exemplo 2.

700

600

Eigenvalues

500
400
300
200
100
0

10

15

20
Iteration

25

30

35

40

Figura 5.6: Evoluo dos quatro maiores auto-valores do sistema (QQT , K(x)).

102

Exemplo 3
Este exemplo consiste de uma estrutura tri-dimensional com ns xados no plano
horizontal z = 0 e ns livres no plano horizontal z = 2. A estrutura tem 8 ns de
coordenadas com N = 4.
x = cos(2i/N ),
y = sin(2i/N ),
z = 0,
1
1
x = 2 cos(2i/N ), y = 2 sin(2i/N ), z = 2,

i {1, . . . , N } ,
i {N + 1, . . . , 2N } ,

(5.22)

Todas as possveis barras entre os ns livre-livre ou livre-xo so considerados.


A condio de carregamento consiste de quatro foras atuando simultaneamente e
aplicadas nos ns no plano z = 2. A fora no n i com = 0.001.


pi = 1/ N (1 +

2 )

[sin(2i/N ), cos(2i/N ), ]T ,

i {N + 1, . . . 2N },

(5.23)
As cargas secundrias possuem uma magnitude r = 0.3 e denem uma base do
complemento ortogonal de L(P ) no espao linear F de todos os graus de liberdade
da estrutura.

Figura 5.7: Estrutura tima obtida no Exemplo 3

300
1
250

200

Eigenvalues

150

100

50

10

15

20

25

Iteration

Figura 5.8: Evoluo dos seis maiores autovalores do sistema (QQT , K(x)).

103

Exemplo 4
Este exemplo similar ao anterior. As coordenadas e foras nodais so dadas
pelas equaes (5.22) e (5.23), respectivamente, mas com N = 5 e = 0.01. As
cargas secundrias tem magnitude r = 0.3 e denem uma base para o complemento
ortogonal de L(P ) no espao linear F de todos os graus de liberdade da estrutura.

Figura 5.9: Estrutura tima obtida no Exemplo 4.

350
1
2

300

3
4

Eigenvalues

250

200

150
100
50
0

10

15
20
Iteration

25

30

35

Figura 5.10: Evoluo dos seis maiores auto-valores do sistema (QQT , K(x)).

104

Tabela 5.1: Resultados dos exemplos de otimizao.

Exemplo
Exemplo
Exemplo
Exemplo

1
2
3
4

NB

NI

NF

10
10
22
35

36
37
25
35

90
161
35
112

F
258.24
278.40
110.56
135.27

Notao: NB: nmero de barras;


NI: nmero de iteraes;
NF: nmero de avaliaes da funo;
F: valor timo da funo objetivo.
As Tabelas 5.1 e 5.2 mostram os resultados numricos obtidos.
Tabela 5.2: Volumes das barras de estrutura tima.
Exemplo 1
barra
53
64
42
54
63
32

volume
2.478e-1
1.276e-1
1.251e-1
3.715e-3
2.478e-1
2.478e-1

Exemplo 2
barra
53
31
64
42
54
63
32
41

Exemplo 3

volume
2.448e-1
1.195e-1
2.448e-1
1.195e-1
1.265e-2
1.265e-2
2.368e-1
9.195e-3

barra
16
18
25
27
36
38
45
47
56
57
58
67
68
78

105

volume
1.247e-1
1.246e-1
1.246e-1
1.247e-1
1.246e-1
1.247e-1
1.247e-1
1.246e-1
4.842e-4
4.343e-4
4.847e-4
4.847e-4
4.343e-4
4.842e-4

Exemplo 4
barra
17
110
26
28
37
39
48
410
56
59
67
68
69
610
78
79
710
89
810
910

volume
1.000e-1
9.926e-2
9.947e-2
1.003e-1
9.922e-2
1.002e-1
9.943e-2
1.001e-1
1.003e-1
9.935e-2
2.573e-4
2.169e-4
2.366e-4
2.530e-4
2.548e-4
2.345e-4
2.162e-4
2.728e-4
2.137e-4
2.669e-4

Captulo 6
Concluses
Este trabalho tem como principal objetivo apresentar uma alternativa
metodolgica, em forma de novos algoritmos, para resolver problemas de otimizao
no diferenciveis.
Inicialmente, procurou-se dar continuidade ao trabalho
apresentado por Freire em sua tese de doutoramento [29], onde o mesmo apresenta
um algoritmo de direes viveis e planos de corte para otimizao convexa
no diferencivel. Neste sentido, introduz-se um algoritmo para o problema
de otimizao no convexa e no diferencivel, e em seguida, apresenta-se um
algoritmo para otimizao convexa no diferencivel, com restries convexas no
diferenciveis. Finalmente, considera-se o problema de Otimizao Topolgica de
estruturas reticuladas robustas, como exemplo de aplicao desta nova metodologia
por hora proposta.

6.1

Contribuies deste trabalho

Com relao ao trabalho de Freire [29], como pode ser visto no Captulo 2,
realizou-se um novo estudo com relao as hipteses inicialmente utilizadas,
e consequentemente, uma nova prova da convergncia global do algoritmo foi
necessria. Com isso, novos testes numricos e uma comparao com alguns mtodos
bem conhecidos da literatura foi apresentada. Este Captulo resultou no artigo
intitulado: A Feasible Directions Method for Nonsmooth Convex Optimization, feito
em parceria com os professores Willhelm P. Freire (Universidade Federal de Juiz de
Fora - UFJF) e Alfredo Canelas (Universidad de la Repblica - UDELAR), que foi
aceito para publicao na revista: Structural and Multidisciplinary Optimization,
Springer.

106

No Captulo 3, introduziu-se um novo algoritmo para otimizao no


diferencivel no convexa, chamado NFDNA - Nonsmooth Feasible Direction
Non Convex Algoritmo.
Mostouse a convergncia global para funes
localmente Lipschitz continuas. Este Captulo resultou no artigo intitulado:
Globally Convergent Cutting Plane Method for Nonconvex Nonsmooth
Minimization, realizado em parceria com a professora Napsu Karmitsa
(Universidade de Turku, Finlndia), que foi aceito e ser publicado na
revista: Journal of Optimization Theory and Applications: Volume 148, Issue
3 (2011), Page 528. O artigo j est disponvel eletronicamente no Link:
http://www.springerlink.com/content/v680w60k616120x7.
Um novo algoritmo para a otimizao convexa no diferencivel com restries de
desigualdade convexas no diferenciveis foi apresentado no Captulo 4. Intitulado
NFDCA - Nonsmooth Feasible Direction Constrained Algoritmo, o algoritmo teve
sua convergncia global realizada, bem como, testes numricos e sua comparao
com outros algoritmos j estabelecidos.
Esta nova metodologia tem aspectos similares ao do tradicional mtodo de planos
de corte de Kelley [10]. Contudo, no mtodo de Kelley um conjunto compacto
S contendo o ponto de mnimo de f precisa ser determinado, para garantir a
existncia de uma direo que minimize o problema linear auxiliar. Por outro
lado, ao minimizar o problema linear auxiliar, este pode ser ilimitado inferiormente
na iterao inicial. Nos mtodos aqui apresentados, a direo de busca para o
problema auxiliar calculada usando o FDIPA. Com o FDIPA a direo de busca
pode ser computada ainda se o problema auxiliar no tiver mnimo. Portanto, no
necessrio determinar qualquer restrio articial.
Os algoritmos: NFDA, NFDNA e NFDCA so simples de implementar. Na
experincia computacional preliminar vericou-se que todos os problemas propostos
foram resolvidos de forma robusta e eciente, para cada algoritmo. A robustez,
no sentido de que foram utilizados o mesmo conjunto de parmetros, por cada
algoritmo, na resoluo de uma bateria de problemas teste, respectivamente
proposta. Fato preponderante para a resoluo de problemas de otimizao voltados
Engenharia.
Ressalta-se que, a principal caracterstica desta nova metodologia, a no
necessidade de resolver um subproblema de programao quadrtica em cada
iterao. Como no FDIPA, so considerados dois sistemas de equaes lineares, que
utilizam a mesma matriz, para determinar uma direo de descida vivel, e mais,
no se faz necessria a utilizao de qualquer tipo de funo penalidade, barreira ou
ltros.
Conclui-se que o estudo realizado neste trabalho, serve de base para a introduo
de uma nova metodologia para abordar problemas de otimizao no diferenciveis,
107

ou pelo menos de uma alternativa, atravs de planos de corte, pontos interiores


e direes viveis. Lembrando que hoje, a maioria dos mtodos existentes se
baseiam nas ideias dos mtodos de feixe. Ou que, pelo menos, precisam lidar com
subproblemas de programao quadrtica em cada iterao.

6.2

Trabalhos Futuros

Como parte dos estudos futuros esto os seguintes tpicos:


Estudar possveis regras de atualizao da matriz B;
Nenhum estudo sobre a velocidade da convergncia foi realizado e este um
assunto que merece mais ateno;
Desenvolver um algoritmo para otimizao no diferencivel com restries de
desigualdade para funes localmente Lipschitz contnuas.
A ausncia do subproblema quadrtico e a simples resoluo de sistemas
lineares internos (como no FDIPA) com a mesma matriz, alude a possibilidade
de lidarmos com problemas de larga escala. Neste contexto, j existem
alguns trabalhos, como [73] onde os autores descrevem um mtodo de feixe
com pontos interiores com memria limitada. Em 2008, Overton e Lewis [74]
utilizaram uma formulao BFGS para lidar com problemas no diferenciveis,
e mais recentemente, [75] props uma formulao BFGS com uma busca linear
inexata e memria limitada para problemas de larga escala.
O FDIPA se comporta bem na soluo de problemas no lineares, e portanto
pode ser interessante adicionar um termo quadrtico estabilizante, similar aos
usados por mtodos de feixe tradicionais, aos modelos aqui apresentados;
Aplicaes na Engenharia: Explorar mais problemas que possam ser resolvidos
com os algoritmos aqui apresentados, como por exemplo:
Minimizao do maior autovalor. Muitas aplicaes requerem a soluo
do problema
minimize f (x) := max (A(x));
(P )
onde A() uma matriz real simtrica m m, que depende linearmente de x
Rn , e max (A(x)) denota o maior autovalor de A(x). As seguintes propriedades
so vlidas (veja [19]):
f convexa;

108

f no diferencivel em x, se o maior autovalor f (x) tem multiplicidade


maior que 1;
se v um autovetor de A(x) para o autovalor f (x) e ||v||2 = 1, ento um
subgradiente de f em x pode ser calculado utilizando o produto interno
vvT .
Otimizao estrutural com autovalores. A maximizao do autovalor
fundamental de uma estrutura um problema clssico da engenharia
estrutural. Contudo, o problema de autovalores generalizado tipicamente
na forma:
K(x)w = M(x)w,
onde K(x) e M(x) so matrizes simtricas, semidenida positivas, que
dependem continuamente do parmetro x.
Este problema vem sendo
extensivamente tratado na literatura em engenharia desde os anos 60, veja
[76]. A principal diculdade a dependncia no diferencivel do autovalores
como funo da varivel de projeto x. Em Otimizao Topolgica, existe ainda
uma outra diculdade que o fato das componentes de x poderem ser zero.
Fato que pode tornar as matrizes correspondentes K(x) e M(x) singulares. O
problema de otimizao de autovalores generalizados tambm um problema
clssico de lgebra Linear, quando a matriz M(x) positiva denida para
todo x, veja [77].
Otimizao multi-objetivo: Estender as ideias aqui apresentadas para
considerar problemas da forma:

minimize f (x) = (f (x), ..., f (x))T


1
s
sujeito a g (x) 0 para i = 1, ..., m.
i

(PMO)

onde a funo objetivo fi : Rn R e as funes de restrio gi : Rn R so


supostas convexas.

109

Referncias Bibliogrficas
[1] FLETCHER, R. Practical Methods of Optimization. Jhon Wiley and Sons, 1987.
[2] MOREAU, J., PANAGIOTOPOULOS, P., STRANG, G. Topics in Nonsmooth
Mechanics. Birkhuser Verlag, Basel, 1988.
[3] OUTRATA, J., KOVARA, M., ZOWE, J.
Nonsmooth Approach
to Optimization Problems With Equilibrium Constraints. Theory,
Applications and Numerical Results. Kluwer Academic Publishers, 1998.
[4] CLARKE, F., LEDYAEV, Y. S., STERN, R., et al. Nonsmooth Analysis and
Control Theory. Springer, 1998.
[5] MKEL, M. M. Survey of Bundle Methods for Nonsmooth Optimization,
Optimization Methods and Software, v. 17, pp. 129, 2001.
[6] K. MIETTINEN, MKEL, M., MNNIKK, T. Optimal control of
continuous casting by nondierentiable multiobjective optimization,
Computational Optimization and Applications, v. 11, pp. 177 194, 1998.
[7] LEMARCHAL, C. Optimization. cap. VII - Nondierentiable optimization,
pp. 529572, Elsevier North-Holland, inc., New York, 1989.
[8] HASLINGER, J., NEITTAANMKI, P. Finite Element Approximation for
Optimal Shape, Material and Topology Design. J. Wiley & Sons, 1996.
[9] ROCKAFELLAR, R. T. Convex Analysis. Princeton University Press, 1970.
[10] KELLEY, J. J. E. The cutting-plane method for solving convex programs,
Journal of the Society for Industrial and Applied Mathematics, v. 8,
pp. 703712, 1960.
[11] KIWIEL, K. C. Methods of Descent for Nondifferentiable Optimization.
Springer-Verlag, 1985.
[12] LEMARCHAL, C. Nonsmooth Optimization and Descent Methods. Relatrio
tcnico, IIASA - report, 1978.
110

[13] MKEL, M., NEITTAANMKI, P. Nonsmooth Optimization, Analysis


and Algoritms with Applications to Optimal Control. Word Scientic
Publishing, 1992.
[14] IZMAILOV, A. F., SOLODOV, M. V.
Computacionais. IMPA, 2007.

Otimizao Volume 2 - Mtodos

[15] BONNANS, J. F., GILBERT, J. C., LEMARCHAL, C., et al. Numerical


Optimization: Theoretical and Practical Aspects. Springer Verlag, 2003.
[16] CLARKE, F. H. Optimization and Nonsmooth Analysis. John Wiley and Sons,
1983.
[17] LEMARCHAL, C. Combining Kelleys and conjugate gradient method. In:
Abstract of IX International Symposium on Mathematical Programming,
Budapest, Hungary, 1976.
[18] HIRIART URRUTY, J. B., LEMARCHAL, C. Convex Analysis and
Minimization Algorithms II: Advanced Theory and Bundle Methods.
Springer-Verlag, 1993.
[19] SCHRAMM, H., ZOWE, J. A version of the bundle idea for minimizing a
nonsmooth functions: conceptual idea, convergence analysis, numercial
results, SIAM Journal on Optimization, v. 2, pp. 121152, 1992.
[20] FUDULI, A., GAUDIOSO, M., GIALLOMBARDO, G. Minimizing nonconvex
nonsmooth functions via cutting planes and proximity control, SIAN
Journal Optimization, v. 14, pp. 743756, 2004.
[21] FRANGIONI, A.
Generalized bundle methods, SIAM Journal on
Optimization, v. 13(1), pp. 117156, 2002.
[22] KIWIEL, K. A constraint linearization method for nondierentiable convex
minimization, Numerische Mathematik, v. 51, pp. 395414, 1987.
[23] AUSLENDER, A.
Numerical methods for nondierentiable convex
optimization, Mathematical Programming Study, v. 30, pp. 102126,
1987.
[24] MIFFLIN, R. A Modication and an extension of Lemarechals algorithm
for nonsmooth minimization, Mathematical Programming Study, v. 17,
pp. 7790., 1982.

111

[25] KIWIEL, K. C. Exact penalty functions in proximal bundle methods


for constrained convex nondierentiable minimization, Mathematical
Programming, v. 52, pp. 285302, 1991.
[26] FLETCHER, R., LEYFFER, S. A bundle filter method for nonsmooth nonlinear
optimization. Relatrio tcnico, Numerical Analysis Report NA/195,
Dundee University, 1999.
[27] KARAS, E., RIBEIRO, A., SAGASTIZBAL, C., et al. A Bundle-Filter
Method for Nonsmooth Convex Constrained Opitmization, Mathematical
Programming, srie B, v. 116, pp. 297320, 2009.
[28] FLETCHER, R., LEYFFER, S. Nonlinear programming without a penalty
function, Mathematical Programming, v. 91, pp. 239269, 2002.
[29] FREIRE, P. W. Um Algoritmo de Direes Viveis para Otimizao Convexa
No Diferencivel. Tese de Doutorado, COPPE/PEM - Universidade
Federal do Rio de Janeiro, 2005.
[30] HERSKOVITS, J. Feasible direction interior-point technique for nonlinear
optimization, JOTA Journal of Optimization Theory and Applications,
v. 99, pp. 121146, 1998.
[31] HIRIART URRUTY, J. B., LEMARCHAL, C. Convex Analysis and
Minimization Algorithms I: Fundamentals. Springer-Verlag, 1993.
[32] IZMAILOV, A. F., SOLODOV, M. Otimizao - Volume 1. Condies de
Otimalidade, Elementos de Anlise Convexa e de Dualidade. IMPA, 2005.
[33] ROCKAFELLAR, R. Monotone operators and the proximal point algorithm,
SIAM Journal on Optimal Control and Optimization, v. 14, pp. 877898,
1976.
[34] KIWIEL, K. Proximity control in bundle methods for convex nondierentiable
optimization, Mathematical Programming, v. 46, pp. 105122, 1990.
[35] LEVENBERG, K. A method for the solution of certain nonlinear problems in
least squares, Quart. Appl. Math, v. 2, pp. 164166, 1944.
[36] MARQUARDT, D. An algorithm for least-squares estimation of nonlinear
parameters, SIAM Journal on Applied Mathematics, v. 11, pp. 431441,
1963.

112

[37] LEMARCHAL, C., SAGASTIZBAL, C. Variable metric bundle methods:


from conceptual to implementable forms, Mathematical Programming,
v. 76, pp. 393410, 1997.
[38] J.R. BIRGE, L. Q., WEI, Z. Convergence analysis of some methods for
minimizing a nonsmooth convex function, Journal of Optimization
Theory and Applications, v. 97, pp. 357383, 1998.
[39] BERTSEKAS, D. Nonlinear Programming. Athena Scientic, 1995.
[40] LEMARCHAL, C. Numerical experiments in nonsmooth optimization.
In: E.A. Nurminski (Ed.), Progress in Nondifferentiable Optimization,
v. IIASA-report, Laxemburg, Austria, pp. 6184, 1982.
[41] GAUDISO, M., MONACO, M. F. Variants to the cutting plane approach for
convex nondierentiable optimization, Optimization, v. 25, pp. 6575,
1992.

[42] LUKSAN,
L., VLCK, J. Globally convergent variable metric method for
convex nonsmooth unconstrained minimization, Journal of Optimization
Theory and Applications, v. 102, pp. 593613, 1999.

[43] LUKSAN,
L., VLCK, J. A Bundle-Newton Method for Nonsmooth
Unconstrained Minimization, Mathematical Programming, v. 83,
pp. 373391, 1998.
[44] KIWIEL, K. An algorithm for nonsmooth convex minimization with errors,
Mathematics of Computation, v. 45, pp. 173180, 1985.
[45] KIWIEL, K. Approximations in proximal bundle methods and decomposition
of convex programs, Journal of Optimization Theory and Applications,
v. 84, pp. 529548, 1995.
[46] WOLFE, P.
A method of conjugate subgradients for minimizing
nondierentiable functions, Mathematical Programming Study, v. 3,
pp. 145173, 1975.
[47] GAUDIOSO, M., MONACO, M. F.
A bundle type approach to
the unconstrained minimization of convex nonsmooth functions,
Mathematical Programming, v. 23, pp. 216226, 1982.
[48] LEMARECHAL, C., STRODIOT, J.-J., BIHAIN, A.
Nonlinear
Programming. cap. On a bundle algorithm for nonsmooth optimization,
pp. 245281, Academic Press, 1981.
113

[49] PSHENICHNYI, B., DANILIN, Y. M.


Problems. Mir, Moscow, 1978.

Numerical Methods for Extremal

[50] HERSKOVITS, J. A two-stage feasible directions algorithm for nonlinear


constrained optimization, Mathematical Programming, v. 36, pp. 1938,
1986.
[51] HERSKOVITS, J. Advances in Structural Optimization. cap. A View on
Nonlinear Optimization, pp. 71116, Kluwer Academic Publishers, 1995.
[52] PANIER, E., TITS, A., HERSKOVITS, J. A QP-free, globally convergent,
locally superlinearly convergent algorithm for inequality constrained
optimization, SIAM Journal on Control and Optimization, v. 26,
pp. 788811, 1988.
[53] TITS, A., WCHTER, A., BAKHTIARI, S., et al. A primal-dual interiorpoint method for nonlinear programming with strong global and local
convergence properties, SIAM Journal on Optimization, v. 14, pp. 173
199, 2003.
[54] LUKAN, L., VLEK, J. Test Problems for Nonsmooth Unconstrained and
Linearly Constrained Optimization, N-798. Relatrio tcnico, Institute of
Computer Science, Academy of Scienes of the Czech Republic, 2000.
[55] DOLAN, E. D., MOR, J. J. Benchmarking optimization software with
performance prole, Mathematical Programming, v. 91, pp. 201213,
2002.
[56] LEMARCHAL, C., IMBERT, M. B. Le module M1FC1. Relatrio tcnico,
Institut de Recherche dInformatique, Le Chesnay, 1985.
[57] CHENEY, E. W., GOLDSTEIN, A. A. Newtons method for convex
programming and Tchebyche approximation, Numeriche Mathematic,
v. 1, pp. 253268, 1959.
[58] FUDULI, A., GAUDIOSO, M., GIALLOMBARDO, G. A DC piecewise ane
model and a bundling technique in nonconvex nonsmooth minimization,
Optimization Methods and Software, v. 25, pp. 89102, 2004.
[59] GORGONE, E. Nonsmooth optimization: theory and algorithms. Tese de
Doutorado, Universit della Calabria, 2008.
[60] KIWIEL, K. C. A subgradient selection method for minimizing convex
functions subject to linear constraints, Computing, v. 39, pp. 293305,
1987.
114

[61] SAGASTIZBAL, C., SOLODOV, M.


An Infeasible Bundle Method
for Nonsmooth Convex Constrained Opitmization without a Penalty
Function or Filter, SIAM Journal on Optimization, v. 16, pp. 146169,
2005.
[62] MANGASARIAN, O. L. Nonlinear Programming. McGraw-Hill, 1969.
[63] HOCK, W., SCHITTKOWSKI, K. Test Examles for Nonlinear Programming
Codes(Lecture Notes in Economics and Mathematical Systems, N 187).
Springer-Verlag, 1981.
[64] LEMARCHAL, C., NEMIROVSKI, A. New variants of bundle methods,
Mathematical Programming, v. 69, pp. 111148, 1995.
[65] BENDSE, M. P. Optimization of structural topology, shape, and material.
Berlin, Springer-Verlag, 1995. ISBN: 3-540-59057-9.
[66] BEN-TAL, A., NEMIROVSKI, A.
Robust truss topology design via
semidenite programming, SIAM Journal on Optimization, v. 7, n. 4,
pp. 9911016, 1997. ISSN: 1052-6234.
[67] VANDENBERGHE, L., BOYD, S. Semidenite Programming, SIAM Review,
v. 38, n. 1, pp. 4995, 1996.
[68] Bai, Z., Demmel, J., Dongarra, J., et al. (Eds.). Templates for the solution
of algebraic eigenvalue problems, v. 11, Software, Environments, and
Tools. Philadelphia, PA, Society for Industrial and Applied Mathematics
(SIAM), 2000. ISBN: 0-89871-471-0. A practical guide.
[69] SEYRANIAN, A. P., LUND, E., OLHOFF, N. Multiple eigenvalues in
structural optimization problems, Structural Optimization, v. 8, n. 4,
pp. 207227, 1994.
[70] RODRIGUES, H. C., GUEDES, J. M., BENDSE, M. P. Necessary conditions
for optimal design of structures with a nonsmooth eigenvalue based
criterion, Structural Optimization, v. 9, n. 1, pp. 5256, 1995.
[71] CHOI, K. K., KIM, N. H. Structural sensitivity analysis and optimization 1:
linear systems. Springer, 2004.
[72] GOLUB, G. H., VAN LOAN, C. F. Matrix computations. Johns Hopkins
Studies in the Mathematical Sciences. Third ed. Baltimore, MD, Johns
Hopkins University Press, 1996. ISBN: 0-8018-5413-X; 0-8018-5414-8.

115

[73] KARMITSA, N., MKEL, M. M., ALI, M. M.


Limited memory
interior point bundle method for large inequality constrained nonsmooth
minimization, Applied Mathematics and Computation, v. 198, Issue 1,
pp. 382400, 2008.
[74] LEWIS, A. S., OVERTON, M. L. Nonsmooth Optimization via BFGS,
optimization online, 2008.
[75] SKAJAA, A. Limited Memory BFGS for Nonsmooth Opitmization. Tese de
Mestrado, Courant Institute of Matematical Science, 2010.
[76] ACHTZIGER, W., KOVARA, M.
Structural topology optimization
with eigenvalues, SIAM J. Optim., v. 18, n. 4, pp. 11291164,
2007. ISSN: 1052-6234. doi: 10.1137/060651446. Disponvel em:
<http://dx.doi.org/10.1137/060651446>.
[77] BOYD, S., GHAOUI, L., FERON, E., et al. Linear matrix inequalities in
sustem and control theory. SIAM, 1994.
[78] LEMARCHAL, C., MIFFLIN, R. Nonsmooth Optimization. Pergamon Press,
1978.

116

Apndice A
Problemas Irrestritos
Neste Apndice apresenta-se uma bateria de problemas testes que podem ser
encontrados nos trabalhos de [13, 54].
Tabela A.1: Tabela de Problemas
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

Problema
Rosenbrock
Crescent
CB2
CB3
DEM
QL
LQ
Miin1
Miin2
Wolfe
Rosen
Shor
Colville 1
HS78
El-Attar
Maxquad
Gill
Steiner 2
Maxq
Maxl
TR48
Gon
MXHILB
L1HILB
Shell Dual

n
2
2
2
2
2
2
2
2
2
2
4
5
5
5
6
10
10
12
20
20
48
50
50
50
15

Convexo

+
+
+
+
+
+

+
+
+

+
+
+
+
+
+
+

117

f opt
0
0
1.9522245
2
-3
7.20
-1.4142136
-1
-1
-8
-44
22.600162
-32.348679
-2.9197004
0.5598131
-0.8414083
9.7857
16.703838
0
0
-638565.0
0
0
0
32.348679

A.1

Problemas Teste Convexos

Abaixo esto descritos os problema testes convexos que foram utilizados, para
vericar a performance do algoritmo. Testou-se a conabilidade do cdigo atravs
de um conjunto de problemas acadmicos amplamente utilizados para testar novos
algoritmos.
CB2
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial

2
f (x) = max{x21 + x42 , (2 x1 )2 + (2 x2 )2 , 2ex1 +x2 }
x = (1.139286, 0.899365)
f (x ) = 1.9522245
x0 = (1, 0.1), f (x0 ) = 5.41.

CB3
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial

2
f (x) = max{x41 + x22 , (2 x1 )2 + (2 x2 )2 , 2ex1 +x2 }
x = (1, 1)
f (x ) = 2
x0 = (2, 2).

DEM
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial

2
f (x) = max{5x1 + x2 , 5x1 + x2 , x21 + x22 + 4x2 }
x = (0, 3)
f (x ) = 3
x0 = (1, 1), f (x0 ) = 6.

QL
Dimenso
Funo objetivo
onde

Ponto timo
Valor timo
Ponto inicial

2
f (x) = max{f1 (x), f2 (x), f3 (x)}
f1 (x) = x21 + x22
f2 (x) = x21 + x22 + 10(4x1 x2 + 4)
f3 (x) = x21 + x22 + 10(x1 2x2 + 6)
x = (1.2, 2.4)
f (x ) = 7.2
x0 = (1, 5), f (x0 ) = 56.

118

LQ
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial
Mifflin1
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial
Rosen-Suzuki
Dimenso
Funo objetivo
onde

Ponto timo
Valor timo
Ponto inicial
Shor
Dimenso
Funo objetivo
Valor timo
Ponto inicial

2
f (x) = max{x1 x2 , x1 x2 + (x21 + x22 1)}
x = ( 12 , 12 )

f (x ) = 2
x0 = (0.5, 0.5).
2
f (x) = x1 + 20 max{x21 + x22 1, 0}
x = (1, 0)
f (x ) = 1
x0 = (0.8, 0.6), f (x0 ) = 0.8.
4
f (x) = max{f1 , f1 + 10f2 , f1 + 10f3 , f1 + 10f4 }
f1 (x) = x21 + x22 + 2x23 + x24 5x1 5x2 21x3 + 7x4
f2 (x) = x21 + x22 + x23 + x24 + x1 x2 + x3 x4 8
f3 (x) = x21 + 2x22 + x23 + 2x24 x1 x4 10
f4 (x) = x21 + x22 + x23 + 2x1 x2 x4 5
x = (0, 1, 2, 1)
f (x ) = 44
x0 = (0, 0, 0, 0), f (x0 ) = 0..

5
5
P
f (x) = max {bi (xj aij )2 }
1i10

j=1

f (x ) = 22.60016
x0 = (0, 0, 0, 0, 1), f (x0 ) = 80

119

onde

3
A=

1
Maxquad
Dimenso
Funo objetivo

0
1
2
4
2
2
1
0
0
1

0
1
1
1
1
1
1
1
2
2

0
1
1
2
0
0
1
2
1
0

b=

1
5
10
2
4
3
1.7
2.5
6
3.5

10
f (x) = max {xT Ai x xT bi }
1i5

Aikj = Aijk = ej/k cos(jk) sin(i), j < k,


Aijj =
bij
Valor timo
Ponto inicial 1
Ponto inicial 2
Maxq
Dimenso
Funo objetivo
Valor timo
Ponto inicial

Maxl
Dimenso
Funo objetivo
Valor timo
Ponto inicial

j
| sin(i)|
10
j/i

=e

k6=j

|Aijk |,

sin(ij),

f (x ) = 0.8414084
x0 (i) = 1 , i = 1, ..., 10, f (x0 ) = 5337.1
x0 (i) = 0 , i = 1, ..., 10, f (x0 ) = 0

20
f (x) = max x2i
1i20

f (x ) = 0
x0 (i) = i , i = 1, ..., 10, x0 (i) = i , i = 11, ..., 20
f (x0 ) = 400.

20
f (x) = max |xi |
1i20

f (x ) = 0
x0 (i) = i , i = 1, ..., 10, x0 (i) = i , i = 11, ..., 20
f (x0 ) = 20.

120

TR48
Dimenso
Funo objetivo

48
48
48
P
P
f (x) =
dj max {xi aij }
s i xi
1i48

j=1

i=1

Valor timo
f (x ) = 638565
Ponto inicial
x0 (i) = 0 , i = 1, ..., 48, f (x0 ) = 464816.
Os coecientes aij , si , dj so dados em [78].
Goffin
Dimenso
Funo objetivo

50
50
P
f (x) = 50 max xi
xi
1i50

Valor timo
Ponto inicial

j=1

f (x ) = 0
x0 (i) = i 25.5 , i = 1, ..., 50, f (x0 ) = 1225.

Wolfe
Dimenso

Funo objetivo

5 (9x21 + 16x22 ),

f (x) = 9x1 + 16 |x2 | ,

9x + 16 |x | x9 ,
1
2
1

Valor timo
Ponto inicial

x1 |x2 |
0 < x1 < |x2 |
x1 0.

f (x ) = 8
x0 = (3, 2).

Steiner 2
Dimenso
Funo objetivo

12

f (x) = x21 + x21+m +


+

m
X

j=1

(
a21 xm )2 + (
a22 x2m )2 +

pj (aj1 xj )2 + (aj2 xj+m )2 +

m1
X
j=1

pj (xj xj+1 )2 + (xj+m xj+m+1 )2 ,

121

m=6

onde
a
21 = 5.5,

a
22 = 1.0

a11 = 0.0,

a12 = 2.0,

p1 = 2,

p1 = 1

a21 = 2.0,

a22 = 3.0,

p2 = 1,

p2 = 1

a31 = 3.0,

a32 = 1.0,

p3 = 1,

p3 = 2

a41 = 4.0,

a42 = 0.5,

p4 = 5,

p4 = 3

a51 = 5.0,

a52 = 2.0,

p5 = 1,

p5 = 2

a61 = 6.0,

a62 = 2.0,

p6 = 1

Valor timo
Ponto inicial

f (x ) = 16.703838
x0 tal que:

x0,1 = (a11 + a21 )/3

x0,(1+m) = (a12 + a22 )/3

x0,j = (
xj1 + aj1 + a(j+1)1 )/3 x0,(j+m) = (
xj1+m + aj2 + a(j+1)2 )/3, 2 j m 1
x0,m = (
xm1 + am1 + a
21 )/3

MXHILB
Dimenso
Funo objetivo
Valor timo
Ponto inicial
L1HILB
Dimenso
Funo objetivo
Valor timo
Ponto inicial

A.2

x0,(2m) = (
x2m1 + am2 + a
22 )/3

50


P
50
f (x) = max
1i50 j=1

xj

i+j1

f (x ) = 0
x0 (i) = 1 , i = 1, ..., 50.

50


50 P
P
50

f (x) =
i=1 j=1

xj

i+j1

f (x ) = 0
x0 (i) = 1 , i = 1, ..., 50.

Problemas Teste No Convexos

Nesta seo so apresentados os problema testes No Convexos. Todos os


problemas, exceto o Rosenbrock, so no diferenciveis.

122

Rosenbrock
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial
Crescente
Dimenso
Funo objetivo
onde
Ponto timo
Valor timo
Ponto inicial
Mifflin2
Dimenso
Funo objetivo
Ponto timo
Valor timo
Ponto inicial
El-Attar
Dimenso
Funo objetivo

2
f (x) = 100(x2 x21 )2 + (1 x1 )2
x = (1, 1)
f (x ) = 0
x0 = (1.2, 1).

2
f (x) = max{f1 (x), f2 (x)}
f1 (x) = x21 + (x2 1)2 + x2 1
f2 (x) = x21 (x2 1)2 + x2 + 1
x = (0, 0)
f (x ) = 0
x0 = (1.5, 2).

2
f (x) = x1 + 2(x21 + x22 1) + 1.75 |x21 + x22 1|
x = (1, 0)
f (x ) = 1
x0 = (1, 1).
6
51
P
f (x) =
|x1 ex2 ti cos(x3 ti + x4 ) + x5 ex6 ti yi |
i=1

ti

yi = 0.5e

e2ti + 0.5e3ti + 1.5e1.5ti sin(7ti ) + e2.5ti sin(5ti ),

ti = 0.1(i 1),
Valor timo
Ponto inicial
Colville 1
Dimenso
Funo objetivo

1 i 51

f (x ) = 0.5598131
x0 = (2, 2, 7, 0, 2, 1)
5
f (x) = f1 + f2 + f3 + f4 + f5
f1 (x) =

5
P

j=1

dj x3j ,
"

f2 (x) =

f4 (x) = 50 max 0, max

1i10

123

5 P
5
P

i=1 j=1

bi

cij xi xj ,

5
P

j=1

aij xj

!#

f3 (x) =

5
P

j=1

ej xj

onde

A=

C=

-16 2 0 1
0

0 -2 0 4
2

-3.5 0 2 0
0

0 -2 0 -4
-1

0 -9 -2 1 -2.8
,

2 0 -4 0
0

-1 -1 -1 -1
-1

-1 -2 -3 -2
-1

1 2 3 4
5

1 1 1 1
1

30
-20
-10
32
-10

b=

-20 -10 32 -10

39 -6 -31 32

,
-6 10 -6 -10

-31 -6 39 -20

32 -10 -20 30
i

Gill
Dimenso
Funo objetivo

f (x ) = 32.348679
x0 = (0, 0, 0, 0, 1).

f2 (x) =

10
P

i=1
30
P

(xi 1)2 + 103




10
P

i=2 j=2

xj (j 1)

10 
P

i=1

i1
29

+ x21 + (x2 x21 1)2 ,


f3 (x) =

HS78
Dimenso
Funo objetivo

4
8
105
6
2

2

10
f (x) = max{f1 (x), f2 (x), f3 (x)},
f1 (x) =

Valor timo
Ponto inicial

d=

eT = 15 27 36 18 12 ,
Valor timo
Ponto inicial

-40
-2
-0.25
-4
-4
-1
-40
-60
5
1

10 h
P

i=2

x2i

j2

1
4

(xi x2i1 )2 + (1 xi )2 ,

f (x ) = 9.7857721
x0 (i) = 0.1 , 1 i 10.
5
3
P
f (x) = x1 x2 x3 x4 x5 + 10 |fi (x)|
i=1

124

10
P

j=1

xj

i1
29

j1

!2

2

1 +

onde

f1 (x) = x21 + x22 + x23 + x24 + x25 10,


f1 (x) = x2 x3 5x4 x5 ,
f1 (x) = x31 + x32 + 1,

Valor timo
Ponto inicial

f (x ) = 2.9197004
x0 = (2, 1.5, 2, 1, 1).

Shell Dual
Dimenso
Funo objetivo

15
5

5 P
5
P
P
f (x) = 2 xi +
cij xi+10 xj+10
i=1

Pi (x) =
Q(x) =

10
P

i=1
15
P

i=1

10
P

i=1

i=1 j=1

bi xi + 100

aji xj 2

5
P

i=1

5
P

i=1

max(0, Pi (x)) Q(x)

cij xj+10 3di x2i+10 ei ,

min(0, xi ),

Valor timo
f (x ) = 0
Ponto inicial
x0 (i) = 104 , 1 i 15, i 6= 7, x7 = 60.
As Matrizes A, B, C, d, e so as mesmas como no Problema Colville 1.

125

1i5

Apndice B
Problemas Com Restrio
Para uma validao preliminar do cdigo cdigo desenvolvido na seo 4 utilizouse o seguinte conjunto de problemas testes. Estes problemas podem ser encontrados
nos trabalhos de Schittkowski [63], Luksan [54] e Kiwiel [34].
Tabela B.1: Problemas Teste
No.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Problema
Maxquad
Rosen
Wong2
Wong3
Prob12
Prob29
Prob35
Prob76
Prob100
Prob113
Prob227
Prob228
Prob264
Prob284
Prob285
MiniMax
MiniSum
Streit
Colville
Ill-Conditioned LP

n
10
4
20
20
2
3
3
4
7
10
2
2
4
15
15
4
6
4
6
30

c(x) Ponto Inicial


f (x )
lin
(0, 0, 0, 0, 0, 0, 0, 0, 0, 0) -0.36816644
cvx (0, 0, 0, 0)
-44
cvx (2, 3, 5, 5, 1, 2, 7, 3, 6, 10) 24.306209
cvx (*)
133.72828
dif
(0, 0)
-30
dif
(1, 1, 1)
-22
cvx (0.5, 0.5, 0.5)
1/9
cvx (0.5, 0.5, 0.5, 0.5)
-4.6818
cvx (1, 2, 0, 4, 0, 1, 1)
680.630057
cvx (2, 3, 5, 5, 1, 2, 7, 3, 6, 10) 24.306209
cvx (0.5, 0.5)
1
cvx (0.0, 0.0)
-3
cvx (0.0, 0.0, 0.0, 0.0)
-44
cvx 0
-1840
cvx 0
-8252
cvx (15, 22, 27, 11)
23.886767
cvx (0, 0, 0, 0, 0, 0)
68.82856
cvx (0, 0, 0, 0)
0.7071068
cvx (0, 0, 0, 0, 0, 0)
-23.0448869
lin
0
0

(*) - (2, 3, 5, 5, 1, 2, 7, 3, 6, 10, 2, 2, 6, 15, 1, 2, 1, 2, 1, 3)

126

B.1

Problemas com restries

MAXQUAD
Dimenso
10
Funo objetivo
f (x) = max {xAi xt bi xt }
1i20
Restrio
ci (x) = |xi | 0.05, para i = 1, ..., 10,
c11 (x) =
Valor timo
Ponto inicial

10
P

i=1

xi 0.05,

f (x ) = 0.36816644
x0 (i) = 0 , i = 1, ..., 10, f (x0 ) = 0.

ROSEN - O problema Rosen-Suzuki encontrado em [63], p.66.


Dimenso
4
Funo Objetivo f (x) = x21 + x22 + 2x23 + x24 5x1 5x2 21x3 + 7x4 .
Restrio

2
2
2
2

x
+
x
+
x
+
x
+
x

x
+
x

8
1
2
3
4

2
3
4

1
.
c(x)= max x21 + 2x22 + x23 + 2x24 x1 x4 10

2x2 + x2 + x2 + 2x x x 5
1
2
4
3
2
1
Valor timo
Ponto inicial

f (x ) = 44.
x0 = (0, 0, 0, 0).

Os problemas Wong2 e wong3 foram retirados do trabalho de Luk


san e Vl
cek
[54], p.24.
Wong2
Dimenso
Funo Objetivo

10
f (x) = max fi (x)
1i6

f1 (x) = x21 + x22 + x1 x2 14x1 16x2 + (x3 10)2 + 4(x4 5)2 +


+(x5 3)2 + 2(x6 1)2 + 5x27 + 7(x8 11)2 + 2(x9 10)2 + (x10 7)2 + 45,
f2 (x) = f1 (x) + 10(3(x1 2)2 + 4(x2 3)2 + 2x23 7x4 120),
f3 (x) = f1 (x) + 10(5x21 + 8x2 + (x3 6)2 2x4 40),
f4 (x) = f1 (x) + 10(0.5(x1 8)2 + 2(x2 4)2 + 3x25 x6 30),
f5 (x) = f1 (x) + 10(x21 + 2(x2 2)2 2x1 x2 + 14x5 6x6 ),
f6 (x) = f1 (x) + 10(3x1 + 6x2 + 12(x9 8)2 7x1 0).
Restrio

127

c(x) = max ci (x),


1i3

c1 (x) = 4x1 + 5x2 3x7 + 9x8 105 0,


c2 (x) = 10x1 8x2 17x7 + 2x8 0,
c3 (x) = 8x1 + 2x2 + 5x9 2x10 12 0.
Ponto inicial
Valor timo

Wong3
Dimenso
Funo Objetivo

x0 = (2, 3, 5, 5, 1, 2, 7, 3, 6, 10).
f (x ) = 24.306209.

20
f (x) = max fi (x),
1i14

f1 (x) = x21 + x22 + x1 x2 14x1 16x2 + (x3 10)2 + 4(x4 5)2 + (x5 3)2 +
+2(x6 1)2 + 5x27 + 7(x8 11)2 + 2(x9 10)2 + (x10 7)2 + (x11 9)2 +
+10(x12 1)2 +5(x13 7)2 +4(x14 14)2 +27(x15 1)2 +x416 +(x17 2)2 +
+13(x18 2)2 + (x19 3)2 + x220 + 95,
f2 (x) = f1 (x) + 10(3(x1 2)2 + 4(x2 3)2 + 2x23 7x4 120),
f3 (x) = f1 (x) + 10(5x21 + 8x2 + (x3 6)2 2x4 40),
f4 (x) = f1 (x) + 10(0.5(x1 8)2 + 2(x2 4)2 + 3x25 x6 30),
f5 (x) = f1 (x) + 10(x21 + 2(x2 2)2 2x1 x2 + 14x5 6x6 ),
f6 (x) = f1 (x) + 10(3x1 + 6x2 + 12(x9 8)2 7x1 0),
f7 (x) = f1 (x) + 10(x21 + 15x11 8x12 28),
f8 (x) = f1 (x) + 10(4x1 + 9x2 + 5x213 9x14 87),
f9 (x) = f1 (x) + 10(3x1 + 4x2 + 3(x13 6)2 14x14 10),
f10 (x) = f1 (x) + 10(14x21 + 35x15 79x16 92),
f11 (x) = f1 (x) + 10(15x22 + 11x15 61x16 54),
f12 (x) = f1 (x) + 10(5x21 + 2x2 + 9x217 x18 68),
f13 (x) = f1 (x) + 10(x21 x2 + 19x19 20x20 + 19),
f14 (x) = f1 (x) + 10(7x21 + 5x22 + x219 30x20 ).
Restrio
c(x) = max ci (x),
1i3

c1 (x) = 4x1 + 5x2 3x7 + 9x8 105 0,


c2 (x) = 10x1 8x2 17x7 + 2x8 0,
c3 (x) = 8x1 + 2x2 + 5x9 2x10 12 0.

128

Ponto inicial
Valor timo

x0 = (2, 3, 5, 5, 1, 2, 7, 3, 6, 10, 2, 2, 6, 15, 1, 2, 1, 2, 1, 3).


f (x ) = 133.72828.

Os problemas 12, 29, 35, 76, 100, 113, 227, 228, 264, 284 e 285 foram retirados
do livro de Schittkowski [63].
Problema 12
Dimenso
2
Funo Objetivo f (x) = 0.5x21 + x22 x1 x2 7x1 7x2 .
Restrio
c(x) = 25 + 4x21 + x22 .
Valor timo
Ponto inicial

f (x ) = 30
x0 = (0.0, 0.5).

Problema 29
Dimenso
3
Funo Objetivo f (x) = x1 x2 x3 .
Restrio
c(x) = x21 2x22 4x23 + 48.
Valor timo
Ponto inicial

f (x ) = 22.627417
x0 = (1, 1, 1).

Problema 35
Dimenso
Funo Objetivo
Restrio

3
f (x) = 9 8x1 6x2 4x3 + 2x21 + 2x22 + x23 + 2x1 x2 + 2x1 x3 .

x + x + 2x 3
1
2
3
.
c(x)= max

x , x , x
1

Valor timo
Ponto inicial

f (x ) = 0.11111111...
x0 = (0.5, 0.5, 0.5).

129

Problema 76
Dimenso
Funo Objetivo
Restrio

Valor timo
Ponto inicial

4
f (x) = x21 + .5x22 + x23 + .5x24 x1 x3 + x3 x4 x1 3x2 + x3 x4 .

x1 + 2x2 + x3 + x4 5

3x1 + x2 + 2x3 x4 4
c(x) = max

x2 4x3 + 1.5 0

x , x , x , x
1
2
3
4
f (x ) = 4.681818.
x0 = (0.5, 0.5, 0.5, 0.5).

Problema 100
Dimenso
7
Funo Objetivo
f (x) = (x1 10)2 +5(x1 12)2 +x43 +3(x4 11)2 +10x65 +7x26 +x47 4x6 x7 10x6 8x7 .
Restrio

2
4
2

2x
+
3x
+
x
+
4x
+
5x

127
3
5

1
2
4

7x + 3x + 10x2 + x x 282

1
2
4
5
3
c(x) = max
.
2
2

23x

x
+
6x

8x
1
7

2
6

4x2 + x2 3x x + 2x2 + 5x 11x

1
2
6
7
1
2
3
Valor timo
Ponto inicial

f (x ) = 4.681818.
x0 = (1.0, 2.0, 0.0, 4.0, 0.0, 1.0, 1.0).

Problema 113
Dimenso
10
Funo Objetivo
f (x) = x21 + x22 + x1 x2 14x1 16x2 + (x3 10)2 + 4(x4 5)2 + (x5 3)2 +
+2(x6 1)2 + 5x27 + 7(x8 11)2 + 2(x9 10)2 + (x10 7)2 + 45.
Restrio

4x1 + 5x2 3x7 + 9x8 105

10x

8x
+
17x
+
2x
1
2
7
8

8x
+
2x
+
5x

2x

12
1
2
9
10

3(x 2)2 + 4(x 3)2 + 2x2 7x 120

4
1
2
3
c(x)= max 2
.
2

+
8x
+
(x

6)
+
2x

40
5x
2
3
4

2
2
2

30
0.5(x

8)
+
2(x

4)
+
3x
6
1
2

2
2

+
2(x

2)

2x
x
+
14x

6x
x
2
1
2
5
6

3x + 6x + 12(x 8)2 7x

1
2
9
10

130

Valor timo
Ponto inicial

f (x ) = 24.3062091.
x0 = (2, 3, 5, 5, 1, 2, 7, 3, 6, 10)

Problema 227
Dimenso
Funo Objetivo
Restrio

2
f (x) = (x1 2)2 + (x2 1)2

x2 x

2
1
c(x)= max
.
x + x2
1

Valor timo
Ponto inicial

f (x ) = 1.00000
x0 = (0.5, 0.5).

Problema 228
Dimenso
Funo Objetivo
Restrio

Valor timo
Ponto inicial

2
f (x) = x21 + x2

x +x 1
1
2
.
c(x)= max 2
x1 + x22 9

f (x ) = 3.00000
x0 = (0.0, 0.0).

Problema 264
Dimenso
Funo Objetivo
Restrio

Valor timo
Ponto inicial

4
f (x) = x21 + x22 + 2x23 + x24 5x1 5x2 21x3 + 7x4

8 + x21 + x22 + x23 + x24 + x1 x2 + x3 x4

c(x)= max 9 + x21 + 2x22 + x23 + 2x24 x1 x4

5 + 2x2 + x2 + x2 + 2x x x
1
2
4
3
2
1
f (x ) = 44.00000
x0 = (0.0, 0.0, 0.0, 0.0).

Problema 284
Dimenso
15
Funo Objetivo f (x) = C x(1 : n 1)
Restrio
c(x) = max {h1 , h2 , h3 , h4 , h5 , h6 , h7 , h8 , h9 , h10 } .
onde
x2 = x(1 : n 1)2 ,
131

h1 = A(1, :) x2 B(1),
h2 = A(2, :) x2 B(2),
h3 = A(3, :) x2 B(3),
h4 = A(4, :) x2 B(4),
h5 = A(5, :) x2 B(5),
h6 = A(6, :) x2 B(6),
h7 = A(7, :) x2 B(7),
h8 = A(8, :) x2 B(8),
h9 = A(9, :) x2 B(9),
h10 = A(10, :) x2 B(10).
h

C = 20 40 400 20 80 20 40 140 380 280 80 40 140 40 120 ,


e
h

B = 385 470 560 565 6457 430 485 455 390 460 ,
e

A=

100 100 10
90 100 10
70 50
0
50
0
0
50 10 70
40
0 50
30 60 30
20 30 40
10 70 10
5 10 100

Valor timo
Ponto inicial

5
35
55
65
60
95
90
25
35
5

10
0 0 25 0 10 55
5 45
20
5 0 35 55 25 20
0 40
25 100 40 50 0 30 60 10 30
35 100 35 60 0 15 0 75 35
45 45 0 35 65 5 75 100 75
50 35 10 60 0 45 15 20 0
0 30 5 25 0 70 20 25 70
40 25 15 10 80 20 30 30 5
25 65 0 30 0 0 25
0 15
20
5 10 35 95 70 20 10 35

f (x ) = 1840
x0 (i) = 0.0 para 1 i 15.

Problema 285
Dimenso
15
Funo Objetivo f (x) = C x(1 : n 1)
Restrio
c(x) = max {h1 , h2 , h3 , h4 , h5 , h6 , h7 , h8 , h9 , h10 } .
132

20
25
0
30
10
5
15
65
50
10

0
10
40
65
0
5
15
20
55
30

onde hi , para 1 i 10, B e A so as mesmas do Problema 284 e C como segue


h

C = 486 640 758 776 477 707 175 619 627 614 475 377 524 468 529 .
Valor timo
Ponto inicial

f (x ) = 8252
x0 (i) = 0.0 para 1 i 15.

Problema Minimax Location


Dimenso
4
Funo Objetivo
f (x) = max {wi1 kai (x1 , x2 )kpi1 ; wi2 kai (x3 , x4 )kpi2 ; k(x1 , x2 ) (x3 , x4 )k}
1i9

Restries
2

c1 (x) = k(x1 , x2 ) a1 k 144,


2
c2 (x) = k(x1 , x2 ) a4 k 121,
2
c3 (x) = k(x3 , x4 ) a1 k 225,
2
c4 (x) = k(x3 , x4 ) a2 k 144
onde
Tabela B.2: parmetros

Valor timo
Ponto inicial

ai

wi1

pi1

wi2

pi2

(11.4, 11.6)

2.0

2.0

1.0

2.0

(35.3, 13.5)

1.0

2.0

2.0

2.0

(8.8, 37.2)

1.3

1.1

0.85

1.4

(20.9, 30.6)

1.1

1.5

1.0

1.9

(25.5, 28)

1.5

1.4

1.5

1.2

(29.7, 27.7)

1.0

2.0

1.5

2.0

(36.2, 27.8)

0.5

1.8

1.0

1.7

(45.5, 21.3)

0.5

2.0

0.5

2.0

(15.8, 28.2)

0.5

1.1

0.5

1.8

f (x ) = 23.886767,
x0 = (15, 22, 27, 11).

133

Problema Minisum Location


Dimenso
6
Funo Objetivo
f (x) =

3 P
5
P

i=1 j=1

wij k(x2i1 , x2i ) aj kp +

1i<j3

Restrio





(x2i1 , x2i) (x2j1 , x2j ) ;
p

c(x) = x5 + x6 3,
onde p = 1.78, a1 = (2, 3), a2 = (4, 2), a3 = (5, 4), a4 = (3, 5), a5 = (6, 7),
wij = 1, exceto para w13 = w15 = 6 e w21 = 2.
Valor timo
Ponto inicial

f (x ) = 68.82856,
x0 = (0, 0, 0, 0, 0, 0).

Colville
Dimenso
Funo objetivo

5
5 P
5
5
5
P
P
P
f (x) =
cij xi xj +
di xi +
ei xi
i=1 j=1

Restrio

ci (x) = bi

5
P

j=1

i=1

i=1

aij xj , onde i = 1, ..., 10,

c10+i (x) = xi , onde i = 1, ..., 10,


onde aij , bi , cij , di e ei so os mesmos do Problema Colville dado no Apndice A.
Valor timo
Ponto inicial

f (x ) = 23.0448869,
x0 = (0, 0, 0, 0, 1).

Ill conditioned LP
Dimenso
30
30
P
Funo Objetivo f (x) =
ci (xi 1)
i=1

Restrio
onde aij =

onde i = 1, ..., 30,,

c(x) = (ai )T x bi
1
i+j

Valor timo
Ponto inicial

, bi =

30
P

i=1

aij , ci = bi

1
.
1+i

f (x ) = 0,
x0 = 0.

134

Вам также может понравиться