Академический Документы
Профессиональный Документы
Культура Документы
DIFERENCIVEL
Rio de Janeiro
Maro de 2011
iii
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.
vi
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
35
35
41
48
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
viii
No
. . .
. . .
. . .
Diferencivel
74
. . . . . . . . . . . . . . 75
. . . . . . . . . . . . . . 82
. . . . . . . . . . . . . . 89
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
2.1
2.2
3.1
3.2
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
xi
Lista de Smbolos
A, B, G
matrizes, p. 7
B(x, r)
NC (
x)
cone normal, p. 5
TC (
x)
cone tangente, p. 5
Rn
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)
f (x; d)
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
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
minimize f (x)
n
xR
sujeito a c(x) 0
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
kxk = (x x) =
T
n
X
i=1
xi2
!1
k
X
i xi ,
k
X
i=1
i=1
i = 1, xi Rn , i 0}.
(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
) 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.
f (x)
f (x)
, ...,
x1
xn
!T
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
1.2
Anlise No Diferencivel
f (x; d) = inf
t>0
para todo d Rn ,
o
(1.2)
f (x; d) = inf
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
10
1.3
Condies de Otimalidade
minimize f (x)
n
xR
onde f, c : Rn R.
sujeito a c(x) 0
(1.4)
(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
1.4
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
1.4.1
Mtodos de Descida
kdk=1
ou
kdk=1 sf (x)
xk x
= s f (x ).
(1.9)
sk f (xk ) s
xk x
= existe sk s tal que s f (xk ).
s f (x )
(1.10)
xk x
sk f (xk ) s
= s f (x ).
(1.11)
15
s
1
x
1
1.4.2
Mtodo de Subgradientes
16
minimize f (xk ; d)
sujeito a kdk 1
minimize f (xk )T d
sujeito a kdk 1.
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 .
f ( x )
f ( x)
17
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
k
P
se x1 o ponto inicial, ento
xk+1 x1
tj .
j=1
k=1
tk .
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
1.4.3
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
fk f
19
(1.13)
(1.14)
f ( x2 ) + s2 , x2
f1
epi f
f ( x3 ) + s3 , x3
x4
x2
x3
x1
se essas forem lineares. Alm disso, em alguns momentos vrias dessas restries
cam quase idnticas umas as outras.
1.4.4
Mtodo de Feixe
(1.15)
(1.16)
(1.17)
22
minimize + 1 dT M d
k
2
sujeito a ek + sT d
j
j
para todo j Jk
(PQ)
minimize
sujeito a
1
2
"
jJk
jJk
kj sj
#T
j = 1,
Mk1
"
jJk
j 0
kj sj
jJk
j ekj
(PD)
1.4.5
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
1.4.6
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
24
(1.20)
1.4.8
(1.21)
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
1.5
minimize f (x)
sujeito a x Rn
25
(1.22)
(1.23)
1.5.1
26
k1
X
i=j
kxi+1 xi k
(1.25)
1.5.2
(1.26)
1.6
minimize f (x)
n
xR
sujeito a ci (x) 0,
i = 1, ..., m,
(1.27)
27
(1.28)
i=1,...,m
m
X
i ci (x ).
i=1
1.6.1
(1.29)
onde
n
(1.30)
(1.31)
1.6.2
m
X
i=1
m
X
i=1
ik max{
cki (x), 0}.
onde
n
1
dk := arg minn ek (xk + d) + dT Mk d .
dR
2
1.7
(1.32)
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)
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
(1.34)
G(x ) = 0
(1.35)
(1.36)
g(x ) 0
(1.37)
H(x,
)
g(x)
(y) =
g(x)T G(x)
Bk
g(xk ) x xk
f (xk ) + g(xk )k
=
,
k g(xk )T G(xk )
k
G(xk )k
(1.38)
(1.39)
(1.40)
(1.41)
(1.42)
1.7.1
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.
Bd + g(x) = 0
g(x)T d + G(x) =
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
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.
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
minimize f (x)
sujeito a x Rn ,
(P.1)
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.
i = 0, 1, ...,
minimize F (x, z) = z
(x,z)
sujeito a
g (x, z) 0.
36
(PA.1)
(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
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 ,
k [
g k (xk , z k )]T dk, + Gk (xk , z k )k, = 0.
38
(2.3)
(2.4)
(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 ],
kdk, k2 ,
(dk, )T F (x, z)
.
( 1) k T
(d, ) F (x, z)
)
(2.7)
(2.8)
(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
39
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
para
d Rn+1 .
40
2.2
Anlise da Convergncia
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).
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 .
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.
k
e f (xk ) f (y+1
)
(2.11)
(1 )1
, T
d f (x, z)
kd k2 ,
43
kd k + kd k
kd k + kd k2 kd k
= (1 + kd k kd k) kd k .
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),
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
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
) 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
algoritmo, que
k
lim
ki ski
=0 e
i=0
lim
ki = 1.
(2.14)
i=0
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
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 ).
2.3
iIk
Resultados Numricos
2.3.1
Testes Numricos
= 0.75,
= 0.1,
48
= 0.7,
and tmax = 1.
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
Autor(s)
Mtodo
Referncia
M1FC1
Lemarechal
Steepest Descent
[56]
BTC
Bundle Trust
[19]
PB
Makela
Proximal Bundle
[13]
SBM
Standard Bundle
[42]
(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
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
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
51
2.3.2
Performance Profile
tp,s
min{tp,s : s S}
52
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
M1FC1
BTC
PB
SBM
NFDA
0.1
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
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 ,
54
3.1
Mtodo
minimize F (x, z) = z
(x,z)Rn+1
sujeito a
f (x) z.
(PE.2)
minimize F (x, z) = z
(x,z)
sujeito a
g (x, z) 0.
(PA.2)
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
k := (k,1 , ..., k, ),
k := diag[k1 , ..., k ],
k := (k,1 , ..., k, ),
k := (k1 , ..., k ),
e
dT ez
,
dT ez
k = + ,
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
57
z
( x, z)
F
vivel
( F ( x) + z)
2
0.8 td
td
invivel
td
invivel
3.1.1
g1 (xk , z k ) = f (xk ) z k ,
g1 (x, z) R.
sk
1
g1 (xk , z k ) =
Rn+1 .
Dena
e
B k d +
g (xk , z k ) = ez
(3.1)
k [
g (xk , z k )]T d + Gk (xk , z k ) = 0,
(3.2)
(3.3)
k
k [
g (xk , z k )]T d + Gk (xk , z k ) = .
(3.4)
( 1)eTz d
kd k ,
eTz d
(3.5)
Caso contrrio,
= kd k2 .
(3.6)
k = + .
(3.7)
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.
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 ,
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 )]
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
z k+1 < z k .
62
63
(3.8)
(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
(3.9)
,i
i
e
,i
.
i
,i + ,i
ti = gi (x, z)(1 ti ) ti 0,
i
i
65
(3.10)
(3.11)
1.
i
) 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
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
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 )
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
68
(3.12)
G (x , z ) = 0
(3.13)
(3.14)
g (x, z) 0.
(3.15)
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 .
g (x , z ) = ez
g (x , z ) = 0,
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.
para todo i I e
g j (x , z ),j = 0
para todo j J .
,i si = 0
iI
,i = 1.
iI
X
iI
3.3
,i si f (x ).
Resultados Numricos
3.3.1
Implementao
70
3.3.2
Resultados Obtidos
71
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
Autor(s)
Mtodo
Referncia
NCVX
[20]
NCNS
Gorgone
[59]
72
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)
74
minimize F (x, z) = z
(x,z)
sujeito a
f (x) z
c(x) 0.
(PE.3)
4.1
Mtodo
minimize F (x, z) = z
(x,z)
sujeito a
i = 0, 1, ..., ,
i = 0, 1, ..., .
minimize F (x, z) = z
(x,z)
sujeito a
g (x, z) 0
(x, z) 0.
h
76
(PA.3)
(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
=0
g (xk , z k )]T dk + Gk (xk , z k )k+1
k [
(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)
+ ( )T ( )1 H(x, z) .
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)
(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
((xk , z k ) + tk dk ) 0.
h
(4.15)
79
(4.16)
4.1.1
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 ) =
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.
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)
4.2
Anlise da Convergncia
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
(4.19)
(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
para ri c(yi );
(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
(4.21)
(4.22)
,i
,i
e gi (x, z)T d = 1 gi (x, z)
,
i
i
(4.23)
,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)
(x, z) 0,
h
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 .
g (x , z ) + h
g (x , z ) = 0,
(x , z ) = 0,
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
,i
,
,i
= ,i
/
iI
tem-se
X
iI
,i si +
,i
ri = 0
iI
iI
,i =
,i
= 1.
(4.27)
iI
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
4.3.1
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
90
Problema
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
1/9
Prob76
cvx
-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
-44
14
Prob284
15
cvx
-1840
15
Prob285
15
cvx
-8252
16
MiniMax
cvx
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
91
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
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
93
5.2
b
X
j=1
94
xj Kj
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
x>0
b
j=1
xj =V
2pT u uT
(x) pT u = max
u
b
X
j=1
xj Kj u .
(5.4)
(5.5)
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
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)
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)
97
b
X
xj Kj ,
(5.13)
j=1
j=1
(5.14)
Seja (x)
= sup{(x, pi ) , pi P } a pior complacncia possvel para o conjunto
pi
min (x)
xRb
b
X
xj V ,
s.t.
j=1
xj 0 ,
(5.15)
j = 1, . . . , b
(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)
(veja [66]).
(5.20)
min
(5.21)
s.t. K(x) QQT 0 .
99
Exemplos
Exemplo 1
1
1
p =
,
0
0
A=
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
.
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)).
500
1
Eigenvalues
450
400
350
300
250
200
150
100
50
0
10
15
20
25
Iteration
30
35
40
45
101
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)
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.
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.
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
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
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
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
6.2
Trabalhos Futuros
108
(PMO)
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
111
112
[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
115
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
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
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 ),
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
m
X
j=1
(
a21 xm )2 + (
a22 x2m )2 +
m1
X
j=1
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,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.
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
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) =
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=
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
10
P
i=2 j=2
xj (j 1)
10
P
i=1
i1
29
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
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
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
126
B.1
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.
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).
10
f (x) = max fi (x)
1i6
127
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
128
Ponto inicial
Valor timo
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
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
10x
8x
+
17x
+
2x
1
2
7
8
8x
+
2x
+
5x
2x
12
1
2
9
10
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
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
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
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.
Restries
2
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
3 P
5
P
i=1 j=1
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
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 =
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