Doctoral Thesis - Optimize - UFRJ
Doctoral Thesis - Optimize - UFRJ
Doctoral Thesis - Optimize - UFRJ
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
ALGORITMOS PARA PROBLEMAS DE COMPLEMENTARIDADE N ÃO<br />
LINEAR<br />
Sandro Rodrigues Mazorche<br />
TESE SUBMETIDA AO CORPO DOCENTE DA COORDENAÇ ÃO<br />
DOS PROGRAMAS DE PÓS-GRADUAÇÃO DE ENGENHARIA DA<br />
UNIVERSIDADE FEDERAL DO RIO DE JANEIRO COMO PARTE DOS<br />
REQUISITOS NECESSÁRIOS PARA A OBTENÇÃO DO GRAU DE DOUTOR<br />
EM CIÊNCIAS EM ENGENHARIA MECÂNICA.<br />
Aprovada por:<br />
Prof. José Herskovits Norman, D. Ing.<br />
Prof. Fernando Pereira Duda, D. Sc.<br />
Prof a . Susana Scheimberg de Makler, D. Sc.<br />
Prof a . Claudia Alejandra Sagastizábal, D. Habil.<br />
Prof. Anatoli Leontiev, D. Ing.<br />
RIO DE JANEIRO, RJ - BRASIL<br />
DEZEMBRO DE 2007
MAZORCHE, SANDRO RODRIGUES<br />
Algoritmos para Problemas de<br />
Complementaridade Não Linear [Rio de<br />
Janeiro] 2007<br />
vii, 132 p. 29,7 cm (COPPE/<strong>UFRJ</strong>,<br />
D.Sc., Engenharia Mecânica, 2007)<br />
Tese - Universidade Federal do Rio de<br />
Janeiro, COPPE<br />
1. Problema de Complementaridade.<br />
2. Otimização não linear.<br />
I. COPPE/<strong>UFRJ</strong> II. Título (série)<br />
ii
Agradecimentos<br />
Ao professor Herskovits, pela orientação e pelo grande apoio para a realização<br />
deste trabalho.<br />
A CAPES/PQI pelo apoio financeiro.<br />
Ao corpo docente do Programa de Engenharia Mecânica.<br />
Ao grande amigo Alfredo Canelas Botta, o qual trabalhou comigo muitas horas<br />
na frente do quadro, agradeço a ele pelas valiosas observações e comentários.<br />
Ao apoio dos colegas e amigos do Laboratório <strong>Optimize</strong>: Paulo, Veranise,<br />
Evandro, Passarella, Moisés, Gabriel, Miguel , Marcelo e Henry.<br />
Ao pessoal administrativo do Programa de Engenharia Mecânica.<br />
Aos meus queridos pais, Dálber e Marlene, minha irmã Aline e seu marido André<br />
pelo carinho, incentivo e apoio constantes.<br />
A minha amada família esposa Flávia e filhas Maria Julia e Eduarda que me<br />
apoiaram em todos os momentos.<br />
Às pessoas que colaboraram de forma direta ou indireta, por meio de incentivo,<br />
confiança e troca de experiências.<br />
iii
Resumo da Tese apresentada à COPPE/<strong>UFRJ</strong> como parte dos requisitos necessários<br />
para a obtenção do grau de Doutor em Ciências (D.Sc.)<br />
ALGORITMOS PARA PROBLEMAS DE COMPLEMENTARIDADE N ÃO<br />
Orientador: José Herskovits Norman<br />
Programa: Engenharia Mecânica<br />
LINEAR<br />
Sandro Rodrigues Mazorche<br />
Dezembro/2007<br />
Esta tese apresenta novas técnicas de ponto interior para resolver problemas de<br />
complementaridade não linear. Os algoritmos FDA-NCP, para complementaridade,<br />
e FDA-MNCP, para complementaridade mista, geram uma seqüência de pontos que<br />
verificam as desigualdades dos respectivos problemas e que decresce monotonamente<br />
o valor de uma função potencial convenientemente definida. Para ambos algoritmos<br />
são demonstrados resultados de convergência global e assintótica. São apresentados<br />
resultados numéricos para diversos problemas testes da literatura e problemas<br />
clássicos da engenharia mecânica. Estes resultados concordam com a análise<br />
assintótica de convergência e indicam que os algoritmos propostos são eficientes<br />
e robustos.<br />
iv
Abstract of <strong>Thesis</strong> presented to COPPE/<strong>UFRJ</strong> as a partial fulfillment of the<br />
requirements for the degree of Doctor of Science (D. Sc.)<br />
ALGORITHMS FOR NONLINEAR COMPLEMENTARITY PROBLEMS<br />
Advisor: José Herskovits Norman<br />
Department: Mechanical Engineering<br />
Sandro Rodrigues Mazorche<br />
December/2007<br />
This thesis presents new developed interior-point techniques for nonlinear<br />
complementarity problems. The algorithms FDA-NCP, for complementarity, and<br />
FDA-MNCP, for mixed complementarity, define a sequence of points that verify<br />
the problem inequalities and reduce monotonically a suitable potential function.<br />
Results about global and asymptotic convergence are obtained for both algorithms.<br />
Numerical results obtained for several benchmark problems and some classical<br />
problems in mechanical engineering are presented. These results agree with the<br />
asymptotic analysis and show that the proposed algorithms are efficient and robust.<br />
v
Índice<br />
1 Introdução 1<br />
1.1 Preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />
1.1.1 Conceitos básicos para problemas de otimização . . . . . . . . 4<br />
1.1.2 Buscas lineares inexatas . . . . . . . . . . . . . . . . . . . . . 6<br />
1.1.3 Condições de otimalidade . . . . . . . . . . . . . . . . . . . . 7<br />
1.1.4 O método de Newton para equações . . . . . . . . . . . . . . . 9<br />
1.1.5 Problema de Complementaridade . . . . . . . . . . . . . . . . 11<br />
2 Métodos para Resolução de Problemas de Complementaridade 14<br />
2.1 Método baseado em Problemas de Minimização - Funções de Mérito . 15<br />
2.2 Método baseado em Sistemas de Equações - Função-NCP . . . . . . . 16<br />
2.2.1 Método de Suavização . . . . . . . . . . . . . . . . . . . . . . 19<br />
2.3 Método de Ponto Interior . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />
2.4 Método tipo Projeção . . . . . . . . . . . . . . . . . . . . . . . . . . . 21<br />
3 Um Algoritmo de Ponto Interior Viável para NCP 22<br />
3.1 Idéias Básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br />
3.2 Descrição do Algoritmo FDA-NCP. . . . . . . . . . . . . . . . . . . . 28<br />
4 Convergência Global do FDA-NCP 30<br />
4.1 Resultados de Convergência . . . . . . . . . . . . . . . . . . . . . . . 31<br />
5 Problema de Complementaridade Mista 39<br />
5.1 Idéias Básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />
5.2 Descrição do Algoritmo FDA-MNCP. . . . . . . . . . . . . . . . . . . 41<br />
vi
5.3 Convergência Global para FDA-MNCP . . . . . . . . . . . . . . . . . 42<br />
6 Análise de Convergência Assintótica 51<br />
6.1 Resultados de Convergência Assintótica . . . . . . . . . . . . . . . . . 51<br />
7 Usando FAIPA para Resolver NCP 55<br />
7.1 FAIPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56<br />
7.2 Descrição do Algoritmo FAIPA . . . . . . . . . . . . . . . . . . . . . 59<br />
7.3 Reformulando NCP com Problema de Minimização com Restrição . . 60<br />
7.4 Uma nova atualização de λ no FAIPA . . . . . . . . . . . . . . . . . . 62<br />
8 Problema de Complementaridade Reformulado 67<br />
8.1 Reformulando o Problema de Complementaridade . . . . . . . . . . . 68<br />
9 Resultados Numéricos 72<br />
9.1 Coletânea de Problemas de Complementaridade . . . . . . . . . . . . 73<br />
9.2 Casos especiais para FDA-NCP . . . . . . . . . . . . . . . . . . . . . 87<br />
9.3 Problemas de Complementaridade Mista . . . . . . . . . . . . . . . . 97<br />
10 Aplicações - Inequações Variacionais 102<br />
10.1 O Problema do Obstáculo em duas dimensões . . . . . . . . . . . . . 105<br />
10.2 Problema clássico de infiltração em meio poroso . . . . . . . . . . . . 108<br />
10.3 Problema de Elasticidade Linear com Contato . . . . . . . . . . . . . 111<br />
10.3.1 Modelo de Elementos Finitos . . . . . . . . . . . . . . . . . . 112<br />
10.3.2 Modelo de Elementos de Contorno . . . . . . . . . . . . . . . 117<br />
11 Conclusões 124<br />
Bibliografia 126<br />
vii
Capítulo 1<br />
Introdução<br />
Os problemas de complementaridade estão presentes em várias aplicações [17] da<br />
Engenharia, Economia e outras ciências em geral. Em Engenharia Mecânica nós<br />
mencionamos os problemas de sólidos em contato e dinâmica Multi-Corpo.<br />
Neste trabalho apresentaremos um algoritmo de pontos interiores para<br />
a resolução numérica de problemas de complementaridade (FDA-NCP). O<br />
algoritmo proposto aqui segue a filosofia do algoritmo FAIPA [26] com respeito<br />
a geração da seqüência de pontos viáveis que converge a solução do problema de<br />
complementaridade. Esta seqüência de pontos tem a propriedade de verificar uma<br />
condição de viabilidade e uma condição de decrescimento para função potencial<br />
associada ao problema de complementaridade. Veremos resultados de convergência<br />
global para o algoritmo e uma variação deste para problemas de complementaridade<br />
mista (FDA-MNCP). Mostraremos a que taxa de convergência de ambos os<br />
algoritmos é superlinear e/ou quadrática sobre certas condições. Implementaremos<br />
o FAIPA para resolver o problema de complementaridade e ainda proporemos<br />
uma nova atualização para os multiplicadores de Lagrange para o problema<br />
de minimização com restrições associado ao problema de complementaridade.<br />
Verificaremos ainda que através desta atualização é possível aplicar uma busca<br />
em arco no FDA-NCP. Também proporemos uma reformulação no problema de<br />
complementaridade para facilitar a obtenção de um ponto inicial estritamente<br />
viável. E por fim realizaremos vários testes numéricos e algumas aplicações para<br />
1
mostrar a eficiência dos algoritmos FDA-NCP e FDA-MNCP.<br />
O trabalho é dividido em dez capítulos. No primeiro capítulo apresentaremos<br />
definições e resultados básicos para o entendimento do assunto aqui tratado. No<br />
segundo capítulo veremos uma breve apresentação de métodos e técnicas utilizadas<br />
para a resolução numérica do problema de complementaridade.<br />
No terceiro capítulo apresentaremos a filosofia de funcionamento do FDA-NCP<br />
e resultados que apontam que a seqüência gerada esta contida na região viável.<br />
Uma descrição do algoritmo FDA-NCP também é apresentada neste capítulo,<br />
destacaremos a estrutura do FDA-NCP para gerar pontos viáveis e verificaremos<br />
que a direção obtida é viável e de descida para uma função potencial associada ao<br />
problema de complementaridade.<br />
No quarto capítulo mostraremos a convergência global para o FDA-NCP.<br />
Resultados sobre a limitação da direção de busca, que a direção de busca é um<br />
campo uniformemente viável na região viável e que o passo da busca linear é finito<br />
e não nulo serão demonstrados.<br />
No quinto capítulo apresentaremos uma extensão do algoritmo FDA-NCP para<br />
problemas de complementaridade mista, o algoritmo FDA-MNCP. Uma descrição<br />
do algoritmo FDA-MNCP será apresentada bem como os correspondentes resultados<br />
de convergência global.<br />
No sexto capítulo será mostrado que ambos os algoritmos possuem um esquema de<br />
iteração do tipo Newton Amortecido e assim, sobre certas condições, terão taxa de<br />
convergência superlinear e/ou quadrática.<br />
No sétimo capítulo descreveremos o algoritmo FAIPA e o aplicaremos no problema<br />
de complementaridade. Também veremos que é possível tomar uma nova regra<br />
de atualização para os multiplicadores de Lagrange no algoritmo FAIPA. E esta<br />
nova regra de atualização permitirá, através de manipulações algébricas, chegarmos<br />
a sistemas lineares idênticos ao do algoritmo FDA-NCP. Com isso usaremos esta<br />
nova regra de atualização para o FAIPA e ainda utilizaremos para o FDA-NCP<br />
uma busca em arco motivado nestas mudanças.<br />
No oitavo capítulo apresentaremos uma reformulação no problema de<br />
2
complementaridade afim de facilitar a obtenção de um ponto inicial estritamente<br />
viável para o problema reformulado sem precisar alterar a estrutura do algoritmo.<br />
No nono capítulo temos os resultados numéricos com respeito aos algoritmos de<br />
complementaridade e complementaridade mista. Um conjuntos de problemas testes<br />
será usado para verificar o desempenho dos algoritmos de complementaridade onde<br />
comparamos o FDA-NCP com outros algoritmos de complementaridade e com o<br />
FAIPA nas duas versões.<br />
O décimo capítulo é composto por aplicações a inequações variacionais, que são<br />
os seguintes problemas: O Problema do obstáculo, O Problema do Dique e O<br />
Problema de Elasticidade linear com Contato sem atrito.<br />
O décimo primeiro capítulo é destinado as conclusões do trabalho e propostas de<br />
continuidade de estudo e pesquisa.<br />
3
1.1 Preliminares<br />
Neste capítulo apresentaremos resultados que consideramos pertinentes para a<br />
compreensão dos próximos capítulos. Aqui apresentaremos definições e resultados<br />
que ajudaram a formar uma base de conhecimento para tratarmos do problema em<br />
questão que é elaboração do algoritmo FDA-NCP bem como seus resultados de<br />
convergência.<br />
1.1.1 Conceitos básicos para problemas de otimização<br />
Seja, um problema de otimização não linear:<br />
min f(x)<br />
Sujeito a: gi(x) ≤ 0 ; i = 1, 2, ..., m<br />
e hi(x) = 0 ; i = 1, 2, ..., p,<br />
(1.1)<br />
onde temos f : IR n → IR, g : IR n → IR m e h : IR n → IR p são funções<br />
suaves em IR n e pelo menos uma destas funções é não-linear. Uma restrição<br />
de desigualdade é dita “ativa”se gi(x) = 0 e Inativa se gi(x) < 0. Denotamos<br />
g(x) = [g1(x), g2(x), ..., gm(x)] t e h(x) = [h1(x), h2(x), ..., hp(x)] t , assim nos temos<br />
1.2.<br />
min f(x)<br />
Sujeito a: g(x) ≤ 0<br />
e h(x) = 0.<br />
(1.2)<br />
Veremos agora algumas definições dirigidas ao problema de otimização não linear<br />
Definição 1.1.1 Um ponto x ∗ ∈ Ω ⊂ IR n é dito Mínimo Local (ou Mínimo<br />
Relativo) de f sobre Ω se existe uma vizinhança V ≡ {x ∈ Ω / x − x ∗ ≤ δ}<br />
tal que f(x) ≥ f(x ∗ ) para qualquer x ∈ V . Se f(x) > f(x ∗ ) para todo x ∈ V ,<br />
x = x ∗ , então dizemos que x ∗ é um Mínimo Local Estrito.<br />
Definição 1.1.2 Um ponto x ∗ ∈ Ω ⊂ IR n é dito Mínimo Global (ou Mínimo<br />
Absoluto) de f sobre Ω se f(x) ≥ f(x ∗ ) para qualquer x ∈ Ω. Se f(x) > f(x ∗ )<br />
para todo x ∈ Ω \ {x ∗ }, então dizemos que x ∗ é um Mínimo Global Estrito.<br />
4
A maioria dos métodos de Programação Não Linear (PNL) são iterativos. Dado<br />
um ponto inicial x 0 , uma seqüencia de pontos, {x k }, é obtida por repetidas aplicações<br />
de uma regra algoritmica. Esta seqüência deve convergir a uma solução x ∗ do<br />
problema. A convergência é dita assintótica quando a solução não é atingida antes<br />
de um numero finito de iterações.<br />
Definição 1.1.3 Um algoritmo iterativo é dito ser globalmente convergente se para<br />
qualquer ponto inicial x 0 ∈ IR n (ou x 0 ∈ Ω) este gera uma seqüencia de pontos que<br />
converge a uma solução do problema.<br />
Definição 1.1.4 Um algoritmo iterativo é dito ser localmente convergente se existe<br />
ɛ > 0 tal que para qualquer ponto inicial x 0 ∈ IR n (ou x 0 ∈ Ω) que verifica<br />
x 0 −x ∗ ≤ ɛ, a seqüência gerada de pontos converge para uma solução do problema.<br />
Agora segue uma definição que introduz um critério para medir a velocidade de<br />
convergência de métodos iterativos com convergência assintótica.<br />
Definição 1.1.5 A ordem de convergência de uma seqüência {x k } → x ∗ é o maior<br />
numero p dos números não negativos ρ que satisfazem:<br />
lim sup<br />
k→∞<br />
xk+1 − x∗ xk − x∗ = β < ∞.<br />
ρ Quando p = 1 nos dizemos que a Convergência é q-Linear com Raio de Convergência<br />
β < 1. Se β = 0 a convergência é dita Superlinear. A convergência é Quadrática<br />
quando p = 2.<br />
A relação entre o limite de k → ∞, p e β é uma forma de medir a velocidade<br />
assintótica da convergência. Uma seqüência pode ter uma boa ordem de<br />
convergência mas ir muito “devagar”para a solução. A convergência é rápida<br />
quando p é grande e β é pequeno.<br />
Nas provas de convergência, usaremos quando conveniente as seguintes notações<br />
O(.) e o(.) definidas abaixo.<br />
5
Dado uma função h : IR n → IR m , usamos a expressão O(h(x)) para representar as<br />
funções g : IR n → IR m que satisfazem<br />
g(x)<br />
lim<br />
x||→0 h(x)<br />
< ∞. (1.3)<br />
E a expressão o(h(x)) para representar as funções g : IR n → IR m que satisfazem<br />
g(x)<br />
lim<br />
x||→0 h(x)<br />
= 0. (1.4)<br />
A geração de pontos de uma seqüência é dada por uma regra algoritmica.<br />
Por exemplo, dado um ponto inicial, determinamos uma direção de busca para<br />
determinar o próximo ponto e assim sucessivamente. Para isso veremos algumas<br />
definições sobre direções.<br />
Definição 1.1.6 Um vetor d ∈ IR n é uma direção de descida para uma função real<br />
f em x ∈ IR n se existe um δ > 0 tal que f(x + td) < f(x) para qualquer t ∈ (0, δ).<br />
No caso de f ser diferenciável em x e d t ∇f(x) < 0 então d é uma direção de<br />
descida para f em x.<br />
Definição 1.1.7 Um vetor d ∈ IR n é uma direção de viável de um problema PNL<br />
1.2, em x ∈ Ω = {x ∈ IR n / g(x) ≤ 0}, se para algum θ > 0 nos temos x + td ∈ Ω<br />
para todo t ∈ [0, θ].<br />
É claro que qualquer direção d em um ponto interior a Ω é uma direção viável.<br />
Definição 1.1.8 Um campo vetorial d(.) definido em Ω é dito ser um campo<br />
uniforme de direções de viáveis do problema PNL 1.2, em Ω = {x ∈ IR n / g(x) ≤ 0},<br />
se existe um τ > 0 tal que x + td(x) ∈ Ω para todo t ∈ [0, τ] e para todo x ∈ Ω.<br />
1.1.2 Buscas lineares inexatas<br />
Uma vez definida a direção de busca podemos considerar critérios para determinar<br />
o próximo ponto por meio das buscas lineares inexatas. Apresentaremos dois tipos<br />
de buscas, Armijo e Wolfe.<br />
6
Definição 1.1.9 (Busca de Armijo) Dada uma função potencial f, definimos<br />
o tamanho do passo t como sendo o primeiro numero inteiro da seqüência<br />
{1, ν, ν 2 , ν 3 , .....} satisfazendo<br />
f(x + td) ≤ f(x) + tη∇f(x) T d,<br />
onde η ∈ (0, 1) e ν ∈ (0, 1) são parâmetros dados.<br />
O critério da busca linear inexata de Wolfe também estabelece limites no<br />
tamanho do passo, pedindo uma redução na função potencial e ao mesmo tempo<br />
uma redução em sua derivada direcional.<br />
Definição 1.1.10 (Busca de Wolfe) Dada uma função potencial f, o passo t é<br />
aceito se verificar:<br />
sendo o primeiro numero inteiro da seqüência {1, ν, ν 2 , ν 3 , .....}, satisfazendo<br />
f(x + td) ≤ f(x) + tη1∇f t (x)d,<br />
onde ν ∈ (0, 1), η1 ∈ (0, 1<br />
2 ) , η2 ∈ (η1, 1) são parâmetros dados e verificando<br />
∇f t (x + td)d ≥ η2∇f(x) T d.<br />
1.1.3 Condições de otimalidade<br />
O seguinte resultado nos dá uma interpretação geométrica da condições de<br />
otimalidade de uma grande classe de Problemas.<br />
Teorema 1.1.1 Condição necessaria Primeira e Segunda Ordem.<br />
Se x ∗ ∈ Ω é um mínimo local de f sobre Ω então, para qualquer direção viável<br />
d ∈ IR n , satisfaz:<br />
i) d t ∇f(x ∗ ) ≥ 0<br />
ii) se d t ∇f(x ∗ ) = 0, então d t ∇ 2 f(x ∗ )d ≥ 0.<br />
Se Ω = IR n , temos um problema de Otimização sem Restrição,<br />
min f(x), (1.5)<br />
x∈IRn 7
do teorema 1.1.1 e como toda direção não nula d ∈ IR n é uma direção viável temos<br />
o seguinte teorema:<br />
Teorema 1.1.2 Condição necessaria Primeira e Segunda Ordem.<br />
Se x ∗ é um mínimo local de f sobre IR n então:<br />
i) ∇f(x ∗ ) = 0<br />
ii) para todo d ∈ IR n , d t ∇ 2 f(x ∗ )d ≥ 0. Isto é, ∇ 2 f(x ∗ ) é semi definida positiva.<br />
A condição suficiente de otimalidade local o problema de Otimização sem<br />
Restrição 1.5.<br />
Teorema 1.1.3 Condição suficiente de otimalidade.<br />
Seja f uma função escalar duas vezes continuamente diferenciável em IR n e x ∗ tal<br />
que:<br />
i) ∇f(x ∗ ) = 0<br />
ii) ∇ 2 f(x ∗ ) é definida positiva.<br />
Então, x ∗ é um ponto de mínimo local estrito de f.<br />
As condições de otimalidade para o problema de Otimização com Restrição 1.2.<br />
Definição 1.1.11 Um ponto x ∈ Ω é um ponto regular das restrições do problema<br />
1.2 se os vetores ∇hi(x), para i = 1, 2, ...p, e ∇gi(x) para i ∈ I(x) são linearmente<br />
independente. (I(x) ≡ {i / gi(x) = 0} é chamado de Conjuntos das restrições Ativas<br />
em x.)<br />
Definição 1.1.12 (Espaço Tangente) Para o conjunto dos pontos regulares, x ∈ Ω,<br />
definido em 1.1.11 o espaço tangente se expressa como:<br />
T (x) = {d|∇gi(x) T d = 0 ∀ i ∈ I(x), ∇hi(x) T d = 0, ∀ i ∈ {1, 2, ..., p}}.<br />
Nos vamos introduzir agora as variáveis auxiliares λ ∈ IR m e µ ∈ IR p , chamadas<br />
de Variáveis Duais ou Multiplicadores de Lagrange e definimos a função Lagrangeana<br />
associada com o problema 1.2 como<br />
l(x, λ, µ) = f(x) + λ T g(x) + µ T h(x). (1.6)<br />
8
Teorema 1.1.4 Karush-Kuhn-Tucker (KKT) Condição Necessaria de Primeira<br />
Ordem.<br />
Seja x ∗ um ponto regular das restrições g(x) ≤ 0 e h(x) = 0, um Mínimo Local do<br />
problema 1.2. Então, existe um vetor λ ∗ ∈ IR m e um vetor µ ∗ ∈ IR p tal que<br />
onde G(x ∗ ) é uma matriz diagonal.<br />
∇f(x ∗ ) + ∇g(x ∗ )λ ∗ + ∇h(x ∗ )µ ∗ = 0 (1.7)<br />
Teorema 1.1.5 Condição Necessaria de Segunda Ordem.<br />
G(x ∗ )λ ∗ = 0 (1.8)<br />
h(x ∗ ) = 0 (1.9)<br />
g(x ∗ ) ≤ 0 (1.10)<br />
λ ∗ ≥ 0 (1.11)<br />
Seja x ∗ um ponto regular das restrições g(x) ≤ 0 e h(x) = 0, um Mínimo Local<br />
do problema 1.2. Então, existe um vetor λ ∗ ∈ IR m e um vetor µ ∗ ∈ IR p tal que as<br />
condições (1.7-1.11) é satisfeita e a matriz<br />
H(x ∗ , λ ∗ , µ ∗ ) = ∇ 2 f(x ∗ m<br />
) + λ<br />
i=1<br />
∗ i ∇ 2 gi(x ∗ p<br />
) + µ<br />
i=1<br />
∗ i ∇ 2 hi(x ∗ ) (1.12)<br />
é semi definida positiva no espaço do plano tangente T (x).<br />
Teorema 1.1.6 Condição Suficiente de Segunda Ordem.<br />
Seja x ∗ , um ponto satisfazendo g(x ∗ ) ≤ 0 e h(x ∗ ) = 0. Existe um vetor λ ∗ ∈ IR m ,<br />
λ ∗ ≥ 0 e um vetor µ ∗ ∈ IR p tal que<br />
∇f(x ∗ ) + ∇g(x ∗ )λ ∗ + ∇h(x ∗ )µ ∗ = 0 (1.13)<br />
G(x ∗ )λ ∗ = 0 (1.14)<br />
e H(x ∗ , λ ∗ , µ ∗ ) é definida positiva no espaço tangente T (x). Então x ∗ é um Mínimo<br />
Local Estrito do problema 1.2.<br />
1.1.4 O método de Newton para equações<br />
O método de Newton clássico é introduzido para resolver sistemas não lineares do<br />
tipo<br />
T (z) = 0, (1.15)<br />
9
onde T : IR n → IR n é diferenciável. Este método é muito utilizado em algoritmos<br />
de Programação Matemática. Para o método de Newton clássico é comum pedir as<br />
seguintes suposições:<br />
Suposição 1.1.1 Existe z ∗ ∈ IR n tal que T (z ∗ ) = 0.<br />
Suposição 1.1.2 A matriz jacobiana T ′ (z ∗ ) é não singular.<br />
Suposição 1.1.3 O operador jacobiano T ′ é continuo e localmente Lipschitz em x ∗ .<br />
Assim, determinar uma seqüência {z k } que se aproxima de alguma solução z ∗ do<br />
sistema (1.15) utilizamos a aproximação linear<br />
T (z k ) + T ′ (z k )(z − z k ) = 0.<br />
A relação acima chama-se a equação de iteração do método de Newton.<br />
O método de Newton pode ser escrito em forma do esquema iterativo<br />
z k+1 = z k − (T ′ (z k )) −1 T (z k ), k = 0, 1, 2, ... (1.16)<br />
Desta forma é de se esperar que a seqüência de pontos gerada acima se aproxima<br />
de uma solução do sistema (1.15). E quando isso ocorre podemos esperar uma<br />
convergência rápida.<br />
diferenciável e as suposições 1.1.1-1.1.3.<br />
É o diz no próximo resultado. Iremos assumir que T (z) é<br />
Teorema 1.1.7 Dado z 0 ∈ IR n suficientemente próximo de z ∗ , o Algoritmo definido<br />
por (1.16) gera uma seqüência {z k } bem definida que converge a z ∗ . A taxa de<br />
convergência é quadrática.<br />
A demonstração deste resultado pode ser vista em [29] e [13]. Portanto este<br />
teorema estabelece a convergência local do método de Newton. Dos vários métodos<br />
existentes para resolver numericamente problemas de Programação Matemática,<br />
muitos utilizam ou se baseiam na iteração de Newton para construir a seqüência<br />
de pontos que converge a uma solução destes problemas.<br />
10
1.1.5 Problema de Complementaridade<br />
Definição 1.1.13 Seja F : D ⊆ IR n → IR n uma função vetorial. O problema de<br />
complementaridade é:<br />
Encontrar x ∈ IR n tal que<br />
x ≥ 0, F (x) ≥ 0 e x • F (x) = 0 (1.17)<br />
onde x ≥ 0 ⇔ xi ≥ 0 para todo 1 ≤ i ≤ n , F (x) ≥ 0 ⇔ Fi(x) ≥ 0 para todo<br />
⎛ ⎞<br />
x1F1(x)<br />
⎜ ⎟<br />
⎜ ⎟<br />
1 ≤ i ≤ n e x • F (x) = ⎜ . ⎟ é o produto de Hadamard.<br />
⎝ ⎠<br />
xnFn(x)<br />
Quando F é uma função afim (F (x) = Ax + b , A ∈ IR n×n e b ∈ IR n ), temos um<br />
Problema de Complementaridade Linear (PCL), caso contrário temos um Problema<br />
de Complementaridade Não-Linear(PCN).<br />
Vamos definir conjunto de pontos viáveis para o problema 1.1.13 e solução não<br />
degenerada.<br />
Definição 1.1.14 Seja Ω ⊂ IR n . Chamaremos de conjunto de pontos viáveis do<br />
problema de complementaridade dado por F o seguinte conjunto:<br />
Ω := {x ∈ IR n |x ≥ 0 , F (x) ≥ 0}. (1.18)<br />
Definição 1.1.15 Se x ∈ Ω e verifica as seguintes condições x > 0 e F (x) ><br />
0 então diremos que este ponto é estritamente viável para o problema de<br />
complementaridade. E denotaremos o conjunto dos pontos estritamente viáveis por<br />
Ω 0 .<br />
Definição 1.1.16 Uma solução de 1.1.13 é dita solução degenerada se para algum<br />
índice i, xi = 0 e Fi(x) = 0.<br />
Definição 1.1.17 Uma solução de 1.1.13 é dita solução não degenerada se para<br />
todo índice i, xi + Fi(x) = 0.<br />
11
Vamos introduzir os seguintes conjuntos de indices para um dado x ∈ Ω:<br />
K = {i |xi = 0 e Fi(x) > 0}, (1.19)<br />
J = {i |xi > 0 e Fi(x) = 0}, (1.20)<br />
L = {i |xi > 0 e Fi(x) > 0}, (1.21)<br />
I0 = {i |xi = 0 e Fi(x) = 0}. (1.22)<br />
Um Problema de Complementaridade que vem agregado com uma restrição de<br />
igualdade é chamado de Problema de Complementaridade Mista e tem a seguinte<br />
definição.<br />
Definição 1.1.18 Sejam F : D ⊆ IR n → IR n × IR m e Q : D ⊆ IR m → IR n × IR m<br />
funções vetoriais. O Problema de Complementaridade Mista é:<br />
Encontrar (x, y) ∈ IR n × IR m tal que<br />
x ≥ 0, F (x, y) ≥ 0 e<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
x • F (x, y) = 0<br />
Q(x, y) = 0<br />
E da mesma forma como definimos para o caso de complementaridade temos:<br />
Conjunto de pontos viáveis com respeito as restrições x e F (x, y).<br />
Ω := {(x, y) ∈ IR n × IR m |x ≥ 0 e F (x, y) ≥ 0}.<br />
Conjunto de pontos estritamente viáveis<br />
Ω 0 := {(x, y) ∈ IR n × IR m |x > 0 e F (x, y) > 0}.<br />
(1.23)<br />
Definição 1.1.19 Uma solução de 1.23 é dita solução degenerada se para algum<br />
índice i, xi = 0 e Fi(x, y) = 0.<br />
Definição 1.1.20 Uma solução de 1.23 é dita solução não degenerada se para todo<br />
índice i, xi + Fi(x, y) = 0.<br />
Nas últimas décadas muitos pesquisadores tem estudado o Problema de<br />
Complementaridade e desenvolveram (ou adaptaram) métodos para resolver este<br />
12
problema. Alguns destes métodos e pesquisadores que trabalharam neles:<br />
Método baseado em Problema de Minimização sem restrições, podemos destacar<br />
aqui Mangasarian e Solodov, [40], Yamashita e Fukushima, [62], Geiger e Kanzow,<br />
[20], Kanzow, [31].<br />
Método baseado em Sistemas de Equações. Mangasarian foi quem propôs<br />
pela primeira vez em seu artigo, [39], a resolução de um problema de<br />
Complementaridade como a resolução de um sistema de equação associado<br />
ao problema de complementaridade. Outros autores que também trabalharam<br />
nessa linha: Subramanian, [54], Kanzow, [30], C. Chen e O. L. Mangasarian, [6].<br />
Método de Suavização, esta técnica é tanto aplicável ao primeiro caso quanto<br />
ao segundo caso, pois a idéia aqui é trazer a regularidade requerida para aplicar o<br />
método em questão. Destacamos os autores M. C. Ferris e C. Kanzow, [16], S. J.<br />
Wright, [59], C. Chen e O. L. Mangasarian, [6].<br />
Método de Ponto Interior, é utilizado uma variável de folga para definir a<br />
região IR 2n<br />
+ como a região viável para o problema de complementaridade com<br />
respeito a essa nova variável. Esta técnica é muito empregada para os casos de<br />
complementaridade linear. Podemos citar aqui os trabalhos de M. C. Ferris e C.<br />
Kanzow, [16], S. J. Wright, [59], P. Tseng , [[58], [57]].<br />
Método tipo Projeção, utiliza-se o teorema do ponto fixo de Banach para gerar a<br />
seqüencia de pontos e uma vantagem desta técnica é que não necessita de derivadas<br />
mas a convergência é lenta. Destacamos os seguintes autores A. Auslender, [1], G.<br />
M. Korpelevich, [36], E. M. Khobotov, [33], M. V. Solodov e B. F. Svaiter, [52], M.<br />
V. Solodov e P. Tseng, [53], D. Sun, [55].<br />
13
Capítulo 2<br />
Métodos para Resolução de<br />
Problemas de Complementaridade<br />
Vamos comentar sobre alguns métodos numéricos existentes para a resolução<br />
de problemas de complementaridade. Nas décadas de 60’s e inicio de 70’s<br />
utilizava-se muito o artifício de reescrever os problemas de complementaridade<br />
como um problema de minimização sem restrições em IR n , para isto usavam as<br />
funções especiais chamadas de Funções de Mérito. Uma vez que o problema de<br />
complementaridade foi reescrito como um problema de minimização sem restrições<br />
utiliza-se técnicas para resolver numericamente estes problemas de minimização.<br />
No ano de 1976 O.L. Mangasarian apresentou a equivalência do Problema de<br />
Complementaridade com a resolução de Sistema Não Linear em IR n , [39]. A partir<br />
dai foram desenvolvidos vários algoritmos baseados na resolução de sistemas não<br />
lineares de equações. Nesta técnica utiliza-se uma classe de funções conhecida como<br />
Funções-NCP que permitem estabelecer esta equivalência.<br />
Nos final dos anos 70’s em diante os métodos baseados na resolução de sistemas<br />
de equações foram melhorados com técnicas não diferenciáveis pois justamente as<br />
Funções-NCP utilizadas não tinham a suavidade requerida pelo método de Newton.<br />
Também nesta mesma época surgiram técnicas que utilizam variáveis de folga na<br />
restrição F (x) ≥ 0 transformando-a em uma restrição de igualdade e reescrevendo<br />
assim o problema de complementaridade em um grande sistema de equações em<br />
IR 2n<br />
+ . Nesta técnica utiliza-se algoritmos de pontos interiores, [59].<br />
14
Do teorema de Ponto Fixo de Banach temos a técnica de projeção que projeta um<br />
vetor v de IR n em IR n +.<br />
2.1 Método baseado em Problemas de<br />
Minimização - Funções de Mérito<br />
A idéia deste método é transformar um problema de complementaridade em um<br />
problema de minimização sem restrição. Vamos definir as propriedades que uma<br />
determinada função tem que satisfazer para que possamos reescrever o problema de<br />
complementaridade.<br />
Definição 2.1.1 Uma função φ(x) : IR n →IR é chamada função de mérito para um<br />
problema de complementaridade se satisfaz:<br />
a) φ(x) ≥ 0 para todo x ∈ IR n ;<br />
b) φ(x) = 0 se e somente se x é uma solução do Problema de Complementaridade<br />
1.1.13.<br />
Assim, podemos transformar o Problema de Complementaridade 1.1.13 em um<br />
problema de minimização sem restrições do tipo<br />
min φ(x). (1.1)<br />
x∈IRn Para aplicarmos as técnicas usuais de otimização a este problema de minimização,<br />
a função de mérito terá que satisfazer determinadas hipóteses de regularidade.<br />
Por exemplo, se utilizarmos algoritmos baseados na diferenciabilidade da função<br />
potencial devemos pedir que φ seja pelo menos uma vez continuamente diferenciável<br />
e se possível até duas vezes continuamente diferenciável. Alguns exemplos de funções<br />
de méritos.<br />
• Função Lagrangiana Implícita [40].<br />
n<br />
φ(x) := {xiFi(x)+<br />
i=1<br />
1<br />
2α (max{0, xi−αFi(x)} 2 −x 2 i +max{0, Fi(x)−αxi} 2 −Fi(x) 2 )}<br />
onde, α > 1 é um parâmetro fixo.<br />
15
• Função mérito de Fischer-Burmeister [14].<br />
φ(x) := 1<br />
2<br />
n <br />
( x<br />
i=1<br />
2 i + Fi(x) 2 − xi − Fi(x)) 2 .<br />
• Função mérito penalizada de Fischer-Burmeister [5].<br />
φ(x) := 1<br />
2<br />
n <br />
{λ( x<br />
i=1<br />
2 i + Fi(x) 2−xi−Fi(x)) 2 +(1−λ) max{0, xi} 2 max{0, Fi(x)} 2 }).<br />
onde, λ ∈ (0, 1) é um parâmetro fixo.<br />
As funções de mérito apresentadas são uma vez continuamente diferenciável em<br />
IR n . Portanto não é aconselhável minimizar diretamente estas funções de mérito<br />
com algoritmos clássicos para problemas de otimização diferenciáveis. Apesar disto,<br />
as funções de mérito são freqüentemente usadas para monitorar a convergência<br />
global de diversos algoritmos. A maioria dos algoritmos de otimização garantem<br />
que os pontos limite da seqüência gerada por eles são pontos estacionário de φ(x)<br />
satisfazendo ∇φ(x) = 0.<br />
2.2 Método baseado em Sistemas de Equações -<br />
Função-NCP<br />
A idéia de reformular um problema de complementaridade como um sistema de<br />
equações foi proposta por Mangasarian [39]. Ele utilizou uma classe de funções<br />
chamada de Funções-NCP que tem a seguinte propriedade.<br />
Definição 2.2.1 Uma função ψ : IR 2 → IR é chamada de Função-NCP para um<br />
problema de complementaridade se satisfaz a condição:<br />
Alguns exemplos de Funções-NCP.<br />
ψ(a, b) = 0 ⇔ a ≥ 0, b ≥ 0 e ab = 0<br />
• ψM(a, b) = (a − b) 2 − |a|a − |b|b, Função Mangasarian [39].<br />
16
• ψm(a, b) = min(a, b), Função Resíduo natural.<br />
• ψF B(a, b) = a + b − √ a 2 + b 2 , Função Fischer-Burmeister.<br />
• ψR(a, b) = −ab + 1<br />
2 min2 (0, a + b), Função “min”.<br />
Das Funções-NCP acima somente a primeira e a quarta são continuamente<br />
diferenciáveis em IR 2 . A terceira é diferenciável em IR n \ {(0, 0)}.<br />
Para uma dada Função-NCP ψ, definimos um operador Ψ : IR n → IR n como o<br />
sistema de equações associado a ele da seguinte forma:<br />
Ψ(x) :=<br />
⎛<br />
⎞<br />
ψ(x1, F1(x))<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎝<br />
⎠<br />
ψ(xn, Fn(x))<br />
, Ψ(x) = 0 (2.1)<br />
É claro que para cada Função-NCP, existe a função de mérito natural dada por:<br />
φ(x) = 1<br />
2 Ψ(x)t .Ψ(x) = 1<br />
2<br />
n<br />
Ψ<br />
i=1<br />
2 i (x)<br />
Chamaremos Ψ de operador das equações correspondente ao problema de<br />
complementaridade 1.1.13. Como conseqüência da definição 2.2.1 obtemos a seguinte<br />
caracterização do problema de complementaridade:<br />
Sejam ψ uma Função-NCP e Ψ seu operador de equações correspondente. Então<br />
x é uma solução do problema de complementaridade 1.1.13 se e somente se é uma<br />
solução do sistema de equações 2.1.<br />
Se F (x) e ψ(a, b) são funções continuamente diferenciáveis, então o operador Ψ<br />
também é. Neste caso, nós podemos aplicar o método clássico de Newton para achar<br />
x que verifica Ψ(x) = 0 e assim resolver o problema de complementaridade. Isto nos<br />
leva a iterações do tipo<br />
x k+1 := x k − [∇Ψ(x k )] −1 Ψ(x k ), k = 0, 1, 2, ...<br />
onde Ψ(x k )] −1 é a matriz jacobiana de Ψ(x k ).<br />
A matriz jacobiana ∇Ψ(x ∗ ) tem que ser não singular na solução x ∗ do problema<br />
de complementaridade para podermos ter pelo menos convergência local superlinear.<br />
Infelizmente, esta matriz é singular em qualquer solução degenerada, [32].<br />
17
Proposição 2.2.1 Sejam F (x) e ψ(a, b) funções diferenciáveis, seja Ψ(x) o<br />
operador de equações correspondente. Se x ∗ é uma solução degenerada do problema<br />
de complementaridade 1.1.13 então a Jacobiana ∇Ψ(x ∗ ) é singular.<br />
Nos casos em que ∇Ψ(x) não existe, podemos utilizar métodos para funções não<br />
diferenciáveis e neste caso normalmente pede-se que Ψ(x) seja no mínimo localmente<br />
lipschitziana, pois assim, Ψ(x) será diferenciável em quase todo ponto.<br />
Denotaremos de DΨ ao conjunto de pontos onde Ψ(x) é diferenciável. Então<br />
definimos o que chamamos de B-subdiferencial,<br />
∂BΨ(x) := {H ∈ IR n×n |∃{x k } ⊆ DΨ : x k → x e ∇Ψ(x k ) → H}<br />
bem como seu fecho convexo<br />
∂Ψ(x) := conv{∂BΨ(x)}<br />
que é chamado jacobiano generalizado, [9]. Elementos de ∂BΨ(x) e ∂Ψ(x) podem<br />
ser usados no lugar da jacobiana clássica ∇Ψ(x) (que em algumas situações não<br />
existe). Um método de Newton não suave típico consiste em realizar as seguintes<br />
iterações:<br />
x k+1 = x k − H −1<br />
k Ψ(xk ), k = 0, 1, 2, ...,<br />
onde Hk é um elemento arbitrário de ∂BΨ(x k ), não singular.<br />
Dois pontos importantes deste método são:<br />
1) O cálculo de um elemento do B-subdiferencial. Por isso é interessante utilizarmos<br />
determinados operadores Ψ, que seja fácil o cálculo de um elemento de seu<br />
B-subdiferencial, Hk ∈ ∂BΨ(x).<br />
2) Devemos ainda considerar o fato que este elemento Hk seja não singular.<br />
Quando se utiliza a Funcão-NCP de Fischer-Burmeister, resultados com respeito<br />
a 1) e 2) podem ser visto em Houyuan Jiang e Liqun Qi [28], [51] e T. De Luca, F.<br />
Facchinei, C. Kanzow [38]. Em suma se consegue o seguinte resultado:<br />
Todo elemento H ∈ ∂BΨ(x ∗ ) é não singular.<br />
18
Nos casos dos problemas de complementaridade monótona pode-se mostrar a<br />
convergência global destes métodos. Para isso, incluímos uma busca linear tomando<br />
como direção de busca o vetor<br />
d k := −H −1<br />
k Ψ(xk )<br />
e como função potencial a função de mérito natural correspondente. Assim<br />
executa-se uma busca linear ao longo desta direção pedindo o decrescimento da<br />
função potencial ([38] , [19] , [49] , [50]).<br />
2.2.1 Método de Suavização<br />
Os métodos de suavização para problemas de complementaridade basicamente fazem<br />
uma aproximação da Função-NCP não diferenciável ψ(a, b) por uma seqüência de<br />
funções diferenciáveis ψµ(a, b) que depende de um parâmetro de suavidade µ > 0.<br />
Por exemplo, uma possibilidade de aproximação da função de Fischer-Burmeister é:<br />
ψµ(a, b) :=<br />
<br />
a 2 + b 2 + 2µ − (a + b) (2.2)<br />
Usando técnicas similares, é possível suavizar a maioria das Funções-NCP<br />
conhecidas. Uma vez conhecida tal aproximação suave ψµ, podemos definir o<br />
operador de equações correspondente<br />
Ψµ(x) :=<br />
⎛<br />
⎞<br />
ψµ(x1, F1(x))<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎝<br />
⎠<br />
ψµ(xn, Fn(x))<br />
A aproximação Ψµ de Ψ será suave se a própria F (x) for suave.<br />
(2.3)<br />
A idéia principal de qualquer método de suavização é aplicar o método de Newton<br />
clássico para o sistema de equações não lineares Ψµ(x) = 0 e fazer com que o<br />
parâmetro µ de suavidade tenda a zero. Uma forma de fazer isso é indexar o valor<br />
de µ à iteração k através de µk. Assim, uma iteração do método de suavização é<br />
dada pela expressão<br />
x k+1 = x k − ∇Ψµk (xk ) −1 Ψµk (xk ), k = 0, 1, 2, ...<br />
19
Um ponto delicado para todo método de suavização é o modo que o parâmetro de<br />
suavidade µk é escolhido a cada iteração. Se isto é feito de um modo apropriado, é<br />
possível provar resultados de convergência global para problemas monótonos. (Ver,<br />
[7])<br />
2.3 Método de Ponto Interior<br />
Uma descrição de um algoritmo de pontos interiores para problemas de<br />
complementaridade pode ser vista no livro “Primal-Dual interior-Point Methods”,<br />
[59].<br />
O problema de complementaridade 1.1.13 é reescrito da seguinte forma:<br />
Dados x e y ∈ IR n temos<br />
F (x) − y = 0, x ≥ 0 , y ≥ 0 e x • y = 0 (3.1)<br />
onde F (x) é uma função monótona associada ao problema de complementaridade<br />
1.1.13. Então<br />
“(x, y) é uma solução do problema (3.1) ⇔ x é uma solução de 1.1.13.”<br />
Dado o seguinte sistema com as restrições x ≥ 0 e y ≥ 0:<br />
⎛ ⎞<br />
F (x) − y<br />
S(x, y) = ⎝ ⎠ = 0.<br />
y • x<br />
Uma iteração é definida pela resolução do sistema abaixo:<br />
⎛<br />
⎞ ⎛<br />
∇F (x) −Id<br />
⎝ ⎠ . ⎝<br />
Y X<br />
∆x<br />
⎞ ⎛<br />
⎞<br />
y − F (x)<br />
⎠ = ⎝ ⎠ ,<br />
∆y −y • x + µE<br />
onde Id é a matriz identidade de ordem n, X = diag(x), Y = diag(y), E = [1, ...1]<br />
um vetor coluna e µ = xT y<br />
n .<br />
A maioria dos métodos de ponto interior para problema de complementaridade é<br />
baseada nesta técnica que também pode ser vista em ([35], [58], [57]). Estes métodos<br />
são chamados de métodos de ponto-interior não viável pois a seqüência gerada de<br />
pontos cumpre a condição x ≥ 0 e não necessariamente cumpre a condição F (x) ≥ 0.<br />
Esta técnica é muito utilizada para problemas de complementaridade linear.<br />
20
2.4 Método tipo Projeção<br />
Os métodos tipo projeção são baseados na seguinte proposição.<br />
Proposição 2.4.1 Um vetor x ∗ é uma solução de 1.1.13 se e somente se x ∗ satisfaz<br />
a equação<br />
x = (x − λF (x))+,<br />
onde λ > 0 é uma constante arbitraria e z+ denota a projeção Euclidiana de um<br />
vetor z ∈ IR n sobre IR n<br />
+.<br />
Os métodos tipo projeção consistem em realizar a seguinte iteração<br />
x k+1 := (x k − λF (x k ))+, k = 0, 1, 2, ...<br />
onde x 0 ∈ IR n<br />
+ é um dado ponto inicial [1].<br />
Usando o Teorema de ponto fixo de Banach, se F for fortemente monótona,<br />
globalmente Lispschitz e λ > 0 seja suficientemente pequeno, pode-se mostrar que<br />
este método possui convergência global, além disso, a taxa de convergência é linear.<br />
Algumas modificações neste método de projeções permitem obter resultados de<br />
convergência global. Por exemplo, o método Extragradiente ([36] e [33]) gera<br />
iterações usando a fórmula<br />
x k+1 := (x k − λF ((x k − λF (x k ))+)+, k = 0, 1, 2, ...<br />
Para o método Extragradiente pode-se mostrar a convergência global se F for<br />
monótona e globalmente Lispschitz desde que λ > 0 seja suficientemente pequeno.<br />
O valor de λ suficientemente pequeno que garanta a convergência global não pode<br />
ser conhecido a priori. Isto implica que devemos escolher λ dinamicamente para<br />
conseguir resultados satisfatórios nos métodos de projeção.([52],[53],[55]).<br />
O método de projeção Extragradiente tem propriedades de convergência globais<br />
boas para problemas de complementaridade monótona, mas eles são na melhor das<br />
hipóteses de convergência linear. Devido ao número excessivo de iterações que eles<br />
realizam, em comparações aos outros métodos. Seria recomendado o uso destes<br />
métodos de projeção nos casos em que a dimensão de IR n seja suficientemente grande<br />
ou o cálculo de ∇F (x) seja muito complicado ou impossível.<br />
21
Capítulo 3<br />
Um Algoritmo de Ponto Interior<br />
Viável para NCP<br />
3.1 Idéias Básicas<br />
Neste capitulo apresentaremos um algoritmo ponto interior para problemas de<br />
complementaridade. Este algoritmo gera uma seqüência de pontos que satisfaz as<br />
desigualdades do problema de complementaridade 1.1.13. Relembrando da definição<br />
do Problema de Complementaridade 1.1.13.<br />
Determinar x ∈ IR n tal que x ≥ 0 , F (x) ≥ 0 e x • F (x) = 0 onde<br />
x • F (x) =<br />
⎛ ⎞<br />
x1F1(x)<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎝ ⎠<br />
xnFn(x)<br />
=<br />
⎛ ⎞<br />
0<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎝ ⎠<br />
0<br />
(1.1)<br />
A idéia do algoritmo é resolver o sistema de equações acima dentro da região<br />
Ω ⊂ IR n . Para isto utilizaremos a iteração de Newton para construir uma<br />
seqüência de “pontos viáveis”, a qual convergirá para a solução do problema de<br />
complementaridade 1.1.13.<br />
22
Considere o seguinte sistema:<br />
H(x) =<br />
⎛ ⎞<br />
x1F1(x)<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ . ⎟<br />
⎝ ⎠<br />
xnFn(x)<br />
= 0 (1.2)<br />
É claro que toda solução do problema de complementaridade 1.1.13 é uma solução do<br />
sistema de equações (1.2). Mas infelizmente não podemos afirmar que toda solução<br />
do sistema (1.2) seja uma solução do problema de complementaridade 1.1.13. Por<br />
outro lado, se restringirmos a resolução do sistema (1.2) na região de pontos viáveis<br />
Ω = {x ∈ IR n | x ≥ 0 e F (x) ≥ 0} podemos afirmar que uma solução deste sistema<br />
em Ω é uma solução do problema de complementaridade 1.1.13. Assim, temos que<br />
desenvolver um algoritmo que gere uma seqüência de pontos em Ω e convirja para<br />
a solução do sistema (1.2) e portanto convergirá para uma solução do problema de<br />
complementaridade 1.1.13.<br />
Para gerar esta seqüência utilizaremos uma iteração de Newton no sistema 1.2 mas<br />
veremos que isso não será suficiente para garantir que a seqüência gerada esta contida<br />
em Ω. Antes de começarmos a construção do algoritmo veremos algumas notações<br />
que auxiliaram no decorrer do texto.<br />
O Gradiente de H(x) é dado por<br />
∇H(x) = DF (x) + Dx∇F (x) (1.3)<br />
onde DF (x) e Dx são matrizes diagonais, [DF (x)](i,i) = Fi(x) , [Dx](i,i) = xi para todo<br />
1 ≤ i ≤ n e a matriz jacobiana de F (x) é<br />
∇F (x) =<br />
⎛ ∂F1(x)<br />
∂x1 ⎜ ∂F2(x)<br />
⎜ ∂x1<br />
⎜ .<br />
⎝<br />
∂F1(x)<br />
∂x2<br />
∂F2(x)<br />
∂x2<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
∂F1(x) ⎞<br />
∂xn ⎟<br />
∂F2(x) ⎟<br />
∂xn ⎟ .<br />
.<br />
⎟<br />
⎠<br />
∂Fn(x)<br />
∂x1<br />
∂Fn(x)<br />
∂x2<br />
. . .<br />
∂Fn(x)<br />
∂xn<br />
Observe que a i-ésima linha de ∇H(x) e definida por<br />
∇Hi(x) = Fi(x)ei + xi∇Fi(x) (1.4)<br />
23
onde ei é um vetor (linha) unitário com 1 na i-ésima coordenada e ∇Fi(x) é um<br />
vetor linha.<br />
Portando, dado um ponto x k em Ω, que não seja solução de (1.2), pela iteração de<br />
Newton em H(x) = 0 temos<br />
∇H(x k )d k 1 = −H(x k ) (1.5)<br />
Para que o sistema (1.5) esteja bem definido vamos supor que ∇H(x k ) seja não<br />
singular em x k . Então, se para algum índice i ∈ 1, 2, ..., n ocorrer que Hi(x k ) = 0 sem<br />
que seja solução do problema de complementaridade, teremos a seguinte situação.<br />
Seja a i-ésima linha do sistema (1.5) onde ocorre Hi(x k ) = 0,<br />
(Fi(x k )ei + x k i ∇Fi(x k ))d k 1 = 0,<br />
pela não singularidade da matriz ∇H(x k ) temos duas possibilidades:<br />
(1) x k i = 0 e Fi(x k ) > 0 isso implica que d k 1 é tangente a restrição xi ≥ 0.<br />
(2) Fi(x k ) = 0 e x k i > 0 isso implica que d k 1 é tangente a restrição Fi(x) ≥ 0.<br />
E em ambos os casos não temos garantido a viabilidade da direção d k 1 em Ω.<br />
A proposição abaixo nos fornece as condições para que uma direção d ∈ IR n tem que<br />
satisfazer para ser uma direção viável em Ω.<br />
Proposição 3.1.1 Seja d ∈ IR n e x ∈ Ω. Se a direção d satisfaz as condições:<br />
(1) di > 0 para todo índice i tal que xi = 0.<br />
(2) ∇Fi(x)d > 0 para todo índice i tal que Fi(x) = 0.<br />
então d é uma direção viável no ponto x.<br />
Portanto usaremos uma direção de restauração, para compor junto com a direção<br />
d1 de Newton uma nova direção d que seja viável em Ω. Para isso tome o seguinte<br />
sistema:<br />
∇H(x k )d k 2 = ρ k E (1.6)<br />
onde o vetor E ∈ IR n é composto por 1 ′ s e m parâmetro ρ k > 0. Então para todo<br />
ponto x k ∈ Ω que não seja solução do problema de complementaridade 1.1.13 mas<br />
que para algum índice i, temos Hi(x k ) = 0 segue que<br />
(1) xk i = 0 e Fi(xk ) > 0 isso implica que dk 2i > 0.<br />
24
(2) Fi(x k ) = 0 e x k i > 0 isso implica que ∇Fi(x k )d k 2 > 0.<br />
Assim a direção d k 2 é uma direção viável em Ω, pela proposição 3.1.1. Portanto, a<br />
seguinte combinação linear d = d k 1 + ρ k d k 2, com ρ k > 0 faz com que a direção d k seja<br />
uma direção viável em Ω. Como podemos ver na figura 3.1.<br />
Vamos definir ρ k = ρ0 φ(xk ) β<br />
Figura 1.1:<br />
n onde, ρ0 > 0 , φ(x k ) = x kT F (x k ) e β ∈ [1, 2].<br />
observe que ρ k > 0 para todo x k ∈ Ω que não seja solução do problema de<br />
complementaridade. Desta forma vamos calcular a direção de busca d k resolvendo<br />
o seguinte sistema<br />
∇H(x k )d k = −H(x k ) + ρ k E (1.7)<br />
em cada iteração. Veremos agora que a direção d k tem a propriedade de ser viável<br />
em Ω e de ser uma direção de descida para a seguinte função potencial<br />
φ(x) = x T F (x).<br />
Vamos considerar os conjuntos de indices dados em (1.19-1.22).<br />
Proposição 3.1.2 (Viabilidade da direção) Sejam x k ∈ Ω tal que φ(x k ) > 0 e<br />
∇H(x k ) não singular, então temos que a direção d k obtida pela resolução do sistema<br />
(1.7) é viável em Ω.<br />
Prova:<br />
Seja x k ∈ Ω, se o ponto x k é estritamente viável, qualquer direção d k é viável em<br />
25
Ω. Então basta verificar para os pontos x k em que os conjuntos de indices K = ∅ e<br />
J = ∅.<br />
Pelo sistema (1.7);<br />
∇H(x k )d k = −x k • F (x k ) + ρ k E,<br />
Observe que a i-ésima linha deste sistema é:<br />
Segue então que:<br />
(1) Para um índice i ∈ K temos:<br />
x k i = 0 e Fi(x k ) > 0 portanto:<br />
[eiFi(x k ) + x k i ∇Fi(x k )]d k = −x k i Fi(x k ) + ρ k .<br />
[eiFi(x k )]d k = Fi(x k )d k i = ρ k<br />
assim, d k i = ρk<br />
Fi(x k ) > 0 então, dk i > 0 para todo ρ k > 0.<br />
(2) Para um índice i ∈ J temos:<br />
xi > 0 e Fi(x) = 0 portanto:<br />
o que implica que ∇Fi(x k )d k > 0.<br />
[x k i ∇Fi(x k )]d k = x k i [∇Fi(x k )d k ] = ρ k<br />
Logo pela proposição 3.1.1 temos que d k é uma direção viável em Ω.<br />
A direção d k é uma direção de descida para a função potencial φ(x).<br />
Proposição 3.1.3 Em todo ponto x k ∈ Ω tal que φ(x k ) > 0, a direção d k obtida pela<br />
resolução do sistema (1.7) é uma direção de descida para φ(x k ) se ρ0φ(x k ) β−1 < 1.<br />
Prova:<br />
A função φ(x) é estritamente positiva para todo ponto x k em Ω que não seja<br />
solução do problema de complementaridade 1.1.13, e ainda, todo ponto x k ∈ Ω tal<br />
que φ(x k ) = 0 implica que x k é uma solução do problema de complementaridade<br />
1.1.13, ou seja, x k ≥ 0 , F (x k ) ≥ 0 e x k i Fi(x k ) = 0 para todo 0 ≤ i ≤ n.<br />
O gradiente de φ(x k ) é dado por<br />
26
∇φ(x k ) = E T [D F (x k ) + D x k∇F (x k )].<br />
Dada a direção d k obtida pela resolução do sistema (1.7) temos que<br />
∇φ(x k )d k = E t [D F (x k ) + D x k∇F (x k )]d k = E t (−x k • F (x k ) + ρ k E) =<br />
para todo ρ0φ(x k ) β−1 ∈ (0, 1).<br />
−φ(x k ) + ρ k n = −[1 − ρ0φ(x k ) β−1 ]φ(x k ) < 0<br />
Por tanto a direção d k é uma direção de descida para φ(x k ).<br />
Com estes dois resultados temos que a direção d k é de descida e viável para<br />
o problema de complementaridade desde que tenhamos ∇H(x k ) não singular e<br />
ρ0φ(x k ) β−1 < 1 para todo x k ∈ Ω. Assim vamos definir o seguinte conjunto<br />
Ωc = {x ∈ Ω | φ(x) ≤ c}<br />
onde c é uma constante positiva. Assim, podemos por exemplo definir ρ0 = α<br />
c β−1<br />
com α ∈ (0, 1). Veremos na próxima seção que a seqüência gerada está contida no<br />
conjunto Ωc. Mas vamos agora apresentar a descrição do algoritmo FDA-NCP.<br />
27
3.2 Descrição do Algoritmo FDA-NCP.<br />
O presente algoritmo produzirá uma seqüência de pontos interiores a região Ω que<br />
converge a uma solução do problema de complementaridade mediante a resolução<br />
de um sistema linear e uma busca linear nas restrições x ≥ 0 , F (x) ≥ 0 e na função<br />
potencial φ(x). A busca que iremos utilizar é a de Armijo. Vamos considerar os<br />
seguintes parâmetros:<br />
c, ɛ > 0, ρ0, η, ν ∈ (0, 1), β ∈ (1, 2]. Dados iniciais: x 0 ∈ Ω estritamente viável tal<br />
que φ(x 0 ) ≤ c e k = 0.<br />
1. Passo 1: Direção de Busca.<br />
Resolva o sistema<br />
onde ρ k = ρ0 φ(xk ) β<br />
n .<br />
2. Passo 2: Busca linear.<br />
[D F (x k ) + D x k∇F (x k )]d k = −H(x k ) + ρ k E,<br />
Define-se o tamanho do passo t k como sendo o primeiro valor da seqüência<br />
{1, ν, ν 2 , ν 3 , ...} satisfazendo<br />
1) x k + t k d k ≥ 0<br />
2) F (x k + t k d k ) ≥ 0<br />
3) φ(x k ) + t k η∇φ(x k ) t d k ≥ φ(x k + t k d k )<br />
3. Passo 3: Atualização dos Dados x k+1 := x k + t k d k e k := k + 1<br />
4. Passo 4: Critério de parada<br />
Se φ(x k+1 ) < ɛ , pare.<br />
caso contrário volte ao passo 1.<br />
Neste algoritmo podemos destacar dois pontos importantes. Primeiro é o calculo<br />
da direção de busca e o segundo é busca linear. No passo 1 determinamos a direção<br />
28
de busca d k por meio da resolução de um sistema linear. Este sistema fornece<br />
uma direção d k que é uma combinação da direção de Newton d k 1 e da direção de<br />
restauração d k 2.<br />
A direção de Newton d k 1 é uma direção de descida para a função potencial φ(x k )<br />
dentro da região Ω, como já visto o grande inconveniente de usarmos esta direção<br />
para achar o próximo ponto da seqüência é que esta direção não é em geral uma<br />
direção viável na região Ω. A direção d k 2 por sua vez é uma direção de restauração<br />
que tem a propriedade de ser viável na região Ω, porem não é em geral uma direção<br />
de descida para função potencial φ(x k ). Mas a combinação destas duas direções nos<br />
fornece uma direção d k que tem a propriedade de ser uma direção de descida da<br />
função potencial φ(x k ) e viável na região Ω como mostrado nas proposições 3.1.2 e<br />
3.1.3.<br />
Desta forma é possível gerar uma seqüência de pontos com a direção d k onde<br />
cada ponto desta seqüência esta contido em Ω e ainda decresce o valor da função<br />
potencial φ(x k ). Isto é possível por meio de uma busca linear na direção de d k<br />
que é justamente o segundo passo. A busca linear determina o próximo ponto<br />
da seqüência, x k+1 , que verifica duas condições x k+1 ∈ Ω e φ(x k+1 ) ≤ φ(x k ). É<br />
importante na busca linear que o comprimento do passo t k não tenda a zero pois<br />
isso comprometerá na convergência do algoritmo.<br />
Para a aplicação do algoritmo é muito importante termos as seguintes condições:<br />
• Um ponto inicial x 0 estritamente viável.<br />
• O conjunto Ω ⊂ IR n ter interior não vazio.<br />
• A matriz ∇H(x) ser não singular para x ∈ Ω.<br />
Portanto o que faremos a seguir é estabelecer condições para que os passos 1 e 2 do<br />
algoritmo FDA-NCP estejam bem definidos e ainda garanta que a seqüência gerada<br />
por eles convirja a uma solução do problema de complementaridade.<br />
29
Capítulo 4<br />
Convergência Global do<br />
FDA-NCP<br />
Nesta seção apresentaremos resultados teóricos sobre a convergência global<br />
do Algoritmo FDA-NCP a uma solução do problema de complementaridade.<br />
Lembrando que o Algoritmo deverá gerar uma seqüência de pontos {x k } ⊂ Ω, a<br />
partir de um ponto estritamente viável, e a cada iteração deverá reduzir o valor da<br />
função potencial φ(x k ). Para tal, o algoritmo produzirá uma direção de busca d k<br />
que tem as propriedades de ser uma direção viável em Ω e de descida para a função<br />
potencial φ(x). Mostraremos que esta direção d k é um campo uniforme de direções<br />
viáveis e limitado. O passo da busca de Armijo para a função potencial φ(x) é<br />
limitado inferiormente por um valor positivo.<br />
Assumiremos condições clássicas para a função F (x), a matriz ∇H(x) e o<br />
conjunto de pontos viáveis Ω.<br />
Suposição 4.0.1 O conjunto<br />
Ωc ≡ {x ∈ Ω | φ(x) ≤ c}<br />
é compacto e possui interior Ω 0 c = ∅, tal que para cada x ∈ Ω 0 c satisfaz x > 0 e<br />
F (x) > 0.<br />
Suposição 4.0.2 A função F (x) é continuamente diferenciável e ∇F (x) satisfaz a<br />
condição de Lipschitz,<br />
∇F (y) − ∇F (x) ≤ γ0y − x,<br />
30
para qualquer x, y ∈ Ωc, onde γ0 é uma constante positiva.<br />
Suposição 4.0.3 A matriz ∇H(x) é não singular para todo x ∈ Ωc, ou seja, existe<br />
(∇H(x)) −1 para todo x ∈ Ωc.<br />
A suposição 4.0.1 garante a existência de pontos estritamente viáveis em Ωc.<br />
Da suposição 4.0.3 temos que as componentes de x e F (x) não se anulam<br />
simultaneamente para nenhum x ∈ Ωc. Temos também que o sistema de equações<br />
do algoritmo<br />
∇H(x k )d k = −H(x k ) + ρ k E,<br />
possui solução única, logo a direção d k está bem definida.<br />
Como ∇F (x) é contínua segue que tanto ∇H(x) quanto (∇H(x)) −1 são aplicações<br />
contínuas e limitadas em Ωc. Ou seja existem constantes positivas κ0, κ tal que<br />
∇H(x) ≤ κ0 e (∇H(x)) −1 ≤ κ para todo x ∈ Ωc.<br />
4.1 Resultados de Convergência<br />
Nos resultados a seguir assumiremos as suposições (4.0.1 - 4.0.3). Primeiro veremos<br />
resultados com respeito a F (x) e a equação do sistema H(x) = x • F (x).<br />
Lema 4.1.1 Seja um subconjunto Γ ⊂ ℜ n compacto e não vazio. Então as funções<br />
F (x), H(x) = x • F (x) satisfazem a condição de Lipschitz em Γ.<br />
Prova.:<br />
Primeiro observe que como F (x) é de classe C 1 então H(x) = x•F (x) é de classe C 1<br />
também. Temos também que ∇Fi(x) é contínua para todo i ∈ {1, 2, ..., n} e como<br />
Γ é compacto então ∇Fi(x) é limitado em Γ. Existe CFi<br />
, ∇Fi(x) ≤ CFi<br />
constante positiva tal que<br />
para todo x ∈ Γ. Assim dados x , y em Γ tal que o seguimento<br />
x + t(y − x) ∈ Γ para todo t ∈ [0, 1] e para qualquer i ∈ {1, 2, ...n}. Segue pelo<br />
teorema do valor médio<br />
|Fi(y) − Fi(x)| = |∇Fi(x + τ(y − x))(y − x)|,<br />
31
para algum τ ∈ [0, 1]. Portanto, para qualquer i ∈ {1, 2, ...n}, Fi(x) satisfaz a<br />
condição de Lipschitz<br />
|Fi(y) − Fi(x)| ≤ CFiy − x.<br />
De forma análoga temos o mesmo resultado para Hi(x).<br />
|Hi(y) − Hi(x)| ≤ CHiy − x.<br />
Tomando CF = n i=1 CFi , podemos concluir que<br />
n<br />
n<br />
F (y) − F (x) ≤ |Fi(y) − Fi(x)| ≤ CFi<br />
i=1<br />
i=1<br />
y − x = CF y − x.<br />
Também de maneira análoga segue que<br />
n<br />
n<br />
H(y) − H(x) ≤ |Hi(y) − Hi(x)| ≤ CHi<br />
i=1<br />
i=1<br />
y − x = CHy − x,<br />
onde CH = n i=1 CHi .<br />
Lema 4.1.2 Seja um subconjunto Γ ⊂ ℜ n compacto e não vazio. Então a função<br />
∇H(x) satisfaz a condição de Lipschitz em Γ.<br />
Prova:<br />
Dados x , y em Γ então: (∇H(x) = DF (x) + Dx∇F (x))<br />
||∇H(y) − ∇H(x)|| = ||DF (y) + Dy∇F (y) − DF (x) − Dx∇F (x)|| ≤<br />
≤ ||DF (y) − DF (x)|| + ||Dy∇F (y) − Dx∇F (x)|| ≤<br />
≤ ||DF (y) − DF (x)|| + ||Dy(∇F (y) − ∇F (x))|| + ||(Dy − Dx)∇F (x)|| ≤<br />
≤ ||DF (y) − DF (x)|| + ||Dy||||∇F (y) − ∇F (x)|| + ||∇F (x)||||Dy − Dx||.<br />
Como Γ é compacto e ∇F (x) é uma função continua, então existem uma constante<br />
positiva tal que ||Dz|| ≤ c0 e ||∇F (z)|| ≤ c1∀z ∈ Γ e da suposição 4.0.2 temos<br />
||∇H(y) − ∇H(x)|| ≤ CF y − x + c0γ0y − x + c1y − x = γy − x,<br />
onde γ = CF + c0γ0 + c1.<br />
32
Lema 4.1.3 Para x, y ∈ Γ, se o seguimento de reta x + t(y − x) ∈ Γ para todo<br />
t ∈ [0, 1], segue as seguintes desigualdades:<br />
Hi(y) ≤ Hi(x) + ∇Hi(x)(y − x) + γ||y − x|| 2 ∀ 1 ≥ i ≥ n , (1.1)<br />
Hi(y) ≥ Hi(x) + ∇Hi(x)(y − x) − γ||y − x|| 2 ∀ 1 ≥ i ≥ n , (1.2)<br />
onde ∇Hi(x) é um vetor linha.<br />
Prova:<br />
Observe primeiro que: ∇H(x) é uma matriz com a i-esima linha igual a ∇Hi(x)<br />
logo<br />
Assim temos que<br />
∇Hi(x)d = [∇H(x)d]i.<br />
|∇Hi(x)d| ≤ ∇H(x)d ≤ ||∇H(x)||d. (1.3)<br />
Então pelo teorema do valor médio existe τ ∈ [0, 1] tal que<br />
Hi(y) = Hi(x) + ∇Hi(x + τ(y − x))(y − x).<br />
agora somando e subtraindo ∇Hi(x)(y − x) no segundo membro da igualdade temos<br />
Hi(y) = Hi(x) + ∇Hi(x)(y − x) + (∇Hi(x + τ(y − x)) − ∇Hi(x))(y − x). (1.4)<br />
Da equação (1.3) temos<br />
|(∇Hi(x + τ(y − x)) − ∇Hi(x))(y − x)| = |[(∇H(x + τ(y − x)) − ∇H(x))(y − x)]i| ≤<br />
e pelo lema 4.1.2 segue<br />
≤ ∇H(x + τ(y − x)) − ∇H(x)y − x,<br />
|(∇Hi(x + τ(y − x)) − ∇Hi(x))(y − x)| ≤ γτ(y − x)y − x ≤ γy − x 2 . (1.5)<br />
Portanto da equação (1.4) e da desigualdade (1.5) segue as duas desigualdades do<br />
lema (1.1) e (1.2).<br />
Os resultados a seguir provaram que a direção de busca gerada pelo algoritmo<br />
FDA-NCP é: limitada; uma direção de descida ; e constitui um campo uniforme<br />
33
de direções viáveis. Lembrando que ρ k = ρ0 φ(xk ) β<br />
β ∈ [1, 2] , α ∈ (0, 1) e x k ∈ Ωc.<br />
n onde ρ0 = α min{1, 1<br />
c β−1 } com<br />
Lema 4.1.4 Para qualquer x k ∈ Ωc, da direção de busca d k gerada pelo algoritmo<br />
satisfaz<br />
Como conseqüência, d k ≤ κc.<br />
Prova:<br />
d k ≤ κφ(x k ). (1.6)<br />
Seja x k ∈ Ωc. Como d k = M −1 (x k )[−H(x k ) + ρ k E], temos a seguinte desigualdade<br />
d k ≤ M −1 (x k )−H(x k )+ρ k E. Basta mostrar uma limitação para −H(x k )+<br />
ρ k E. Tome a seguinte igualdade<br />
− H(x k ) + ρ k E 2 = H(x k ) 2 − 2ρ k φ(x k ) + n(ρ k ) 2 .<br />
Como H(x k ) 2 ≤ φ 2 (x k ) para todo x k ∈ Ωc temos que<br />
− H(x k ) + ρ k E 2 ≤ φ 2 (x k ) − 2ρ k φ(x k ) + n(ρ k ) 2 = (n − 1)(ρ k ) 2 + (φ(x k ) − ρ k ) 2 ,<br />
como ρ k = ρ0φ(x k ) β<br />
n<br />
e ρ0φ(x k ) β−1 < 1 segue<br />
− H(x k ) + ρ k E 2 ≤ [ (n − 1)(ρ0φ(xk ) β−1 ) 2 + (n − ρ0φ(xk ) β−1 ) 2<br />
n2 ]φ(x k ) 2 ,<br />
observe que (n − 1) < (n − ρ0φ(x k ) β−1 ) < n e (ρ0φ(x k ) β−1 ) 2 < ρ0φ(x k ) β−1 < 1 então<br />
[ (n − 1)(ρ0φ(xk ) β−1 ) 2 + (n − ρ0φ(xk ) β−1 ) 2<br />
n2 ] < n − ρ0φ(xk ) β−1<br />
n<br />
Assim temos a seguinte desigualdade<br />
− H(x k ) + ρ k E ≤ φ(x k ) , ∀x k ∈ Ωc.<br />
< 1.<br />
Portando, segue daqui as desigualdades do lema d k ≤ κφ(x k ) e d k ≤ κc para<br />
todo x k ∈ Ωc.<br />
34
Lema 4.1.5 A direção de busca d k é uma direção de descida para φ(x k ) para<br />
qualquer x k ∈ Ωc tal que H(x k ) = 0.<br />
Prova:<br />
Como φ(x k ) é continuamente diferenciável basta verificarmos que ∇φ(x k )d k < 0<br />
para qualquer x k ∈ Ωc tal que H(x k ) = 0 para concluirmos que d k é direção de<br />
descida.<br />
Observe que ∇φ(x k ) = E t ∇H(x k ), assim<br />
∇φ(x k )d k = E t [∇H(x k )d k ] = E t [−H(x k ) + ρ k E] = −(1 − ρ0φ(x k ) β−1 )φ(x k ) < 0<br />
o que conclui o resultado.<br />
Lema 4.1.6 Sejam f e g funções reais contínuas no intervalo da reta [0, b]. Se<br />
f(t)g(t) > 0 ∀ t ∈ (0, b) então uma das duas condições ocorre:<br />
Prova.:<br />
1) f(t) ≥ 0 e g(t) ≥ 0 ∀ t ∈ [0, b],<br />
2) f(t) ≤ 0 e g(t) ≤ 0 ∀ t ∈ [0, b].<br />
É fácil ver que f e g tem o mesmo sinal no intervalo (0, b). Pois caso<br />
contrário, existiria um t ∈ (0, b) tal que f(t)) < 0 e g(t) > 0 o que implicaria<br />
f(t)g(t) < 0 que é uma contradição.<br />
Agora se existe um t ∈ (0, b) tal que<br />
f(t) > 0 e g(t) > 0 ∀ t ∈ (0, t),<br />
f(t) < 0 e g(t) < 0 ∀ t ∈ (t, b).<br />
Pela continuidade da f(t) (g(t)) temos que f(t) = 0 (g(t) = 0) o que é uma<br />
contradição pois por hipótese f(t)g(t) > 0 para todo t no intervalo (0, b). Logo f e<br />
g terão o mesmo sinal em todo intervalo (0, b).<br />
1 ′ ) f(t) > 0 e g(t) > 0 ∀ t ∈ (0, b),<br />
2 ′ ) f(t) < 0 e g(t) < 0 ∀ t ∈ (0, b).<br />
35
No caso de termos 1 ′ ) isto implica em f(0) , g(0) , f(b) e g(b) ≥ 0.<br />
No caso de termos 2 ′ ) isto implica em f(0) , g(0) , f(b) e g(b) ≤ 0.<br />
Isto é verdade pois, sem perda de generalidade, vamos assumir que estamos com<br />
a condição 1 ′ ) e supor f(b) < 0. Pela continuidade f existe um δ > 0 tal que para<br />
todo t que satisfaça |b − t| < δ implica que f(t) < 0, ou seja, existe um t < b tal que<br />
f(t) < 0 o que é uma contradição. Portanto concluímos que uma das duas condições<br />
se verifica:<br />
1) f(t) ≥ 0 e g(t) ≥ 0 ∀ t ∈ [0, b],<br />
2) f(t) ≤ 0 e g(t) ≤ 0 ∀ t ∈ [0, b].<br />
Lema 4.1.7 A seqüência de direção {d k } gerada pelo algoritmo FDA-NCP, consiste<br />
em um campo uniforme de direções viáveis do problema de complementaridade em<br />
Ω.<br />
Prova:<br />
Segue da equivalência de normas e do lema 4.1.2 que<br />
para todo x , y ∈ Ωc e 1 ≤ i ≤ n.<br />
∇Hi(y) − ∇Hi(x) ≤ γy − x<br />
Suponhamos que exista θ > 0 tal que para todo x k ∈ Ωc o seguimento<br />
[x k , x k + τd k ] ⊂ Ωc para τ ∈ [0, θ]. Do teorema do valor médio temos que<br />
Hi(x k + τd k ) ≥ Hi(x k ) + τ∇H t i (x k )d k − τ 2 γd k 2<br />
para qualquer τ ∈ [0, θ] e 1 ≤ i ≤ n. Como<br />
segue que<br />
∇Hi(x k )d k = −x k i Fi(x k ) + ρ k<br />
Hi(x k + τd k ) ≥ (1 − τ)Hi(x k ) + (ρ k − τγd k 2 )τ.<br />
36<br />
(1.7)
Em conseqüência,<br />
Hi(x k + τd k ) ≥ 0<br />
para todo 1 ≤ i ≤ n e qualquer τ ≤ min{1,<br />
concluímos que x k + τd k ∈ Ω.<br />
Considerando agora o lema 4.1.4, e pela definição de ρ k temos<br />
Como β ∈ [1, 2], basta escolher<br />
ρ k<br />
γd k 2 }. Portanto, pelo lema 4.1.6<br />
τ ≤ min{1, ρ0<br />
γnκ 2 φ(xk ) β−2 } (1.8)<br />
θ = min{1,<br />
β−2 ρ0c<br />
}.<br />
γnκ2 Lema 4.1.8 Existe ξ > 0 tal que, para todo x k ∈ Ωc, a condição de Armijo no<br />
algoritmo é satisfeita para qualquer t k ∈ [0, ξ].<br />
Prova:<br />
Seja t k ∈ (0, θ], onde θ foi obtido no lema anterior. Aplicando o Teorema do Valor<br />
Médio para i = 1, 2, ..., n e tomando x k+1 = x k + t k d k , nos temos<br />
Hi(x k+1 ) ≤ Hi(x k ) + t k ∇[H(x k )]id k + t k2<br />
γd k 2 .<br />
Somando as n inequações e considerando a equação (1.7), temos:<br />
φ(x k+1 ) ≤ [1 − (1 − ρk n<br />
φ(x k ) )tk ]φ(x k ) + nt k2<br />
γd k 2 .<br />
Considerando agora da condição de Armijo para φ(x k ) e pelo lema 4.1.5, deduzimos<br />
que se,<br />
[1 − (1 − ρk n<br />
φ(x k ) )tk ]φ(x k ) + nt k2<br />
γd k 2 ≤ [1 − t k η(1 − ρk n<br />
φ(x k ) )]φ(xk )<br />
é verificado, então a condição de Armijo no algoritmo é satisfeita. Assim, é suficiente<br />
tomarmos<br />
t k ≤ (1 − η)(1 − ρkn φ(xk ) )φ(xk )<br />
.<br />
γnd k 2<br />
37
Como no lema anterior, podemos tomar<br />
Assim, o lema fica provado para<br />
onde θ foi obtido no Lema 4.1.7.<br />
t k ≤ (1 − η)(1 − ρ0φ(x k ) β−1 ) φ(xk ) −1<br />
ξ = min{ (1 − η)(1 − ρ0cβ−1 )<br />
γnκ2 , θ},<br />
c<br />
γnκ 2 . (1.9)<br />
Como conseqüência dos lemas 4.1.7 e 4.1.8, podemos concluir que o passo da busca<br />
linear de Armijo no algoritmo FDA-NCP é limitado inferiormente por νξ > 0. Assim<br />
podemos enunciar o teorema que garante a convergência global do algoritmo a uma<br />
solução do problema de complementaridade.<br />
Teorema 4.1.1 Dado um ponto inicial estritamente viável, x 0 ∈ Ωc, existe uma<br />
subseqüência de {x k } gerada pelo Algoritmo FDA-NCP que converge para x ∗ , solução<br />
do problema de complementaridade.<br />
Prova:<br />
Segue dos lemas 4.1.4 a 4.1.8 que {x k } ⊂ Ωc. Como Ωc é compacto, a seqüência<br />
{x k } possui ponto de acumulação em Ωc. Seja x ∗ um ponto de acumulação desta<br />
seqüência. Como o tamanho do passo é sempre positivo e limitado inferiormente por<br />
νξ, concluímos que d k → 0. E do sistema do algoritmo temos que {φ(x k )} → 0.<br />
Assim, x ∗ é uma solução do problema de complementaridade.<br />
38
Capítulo 5<br />
Problema de Complementaridade<br />
Mista<br />
5.1 Idéias Básicas<br />
Vamos extender o FDA-NCP para problemas que envolvam mais variáveis e uma<br />
condição de igualdade além da condição de complementaridade. Este tipo de<br />
problema é chamado de Problema de Complementaridade Mista (MNCP). Que tem<br />
a seguinte definição:<br />
Definição 5.1.1 Sejam F : IR n × IR m → IR n e Q : IR n × IR m → IR m , aplicações de<br />
classe C1 em IR n × IR m então uma solução para este problema é:<br />
Encontrar (x, y) ∈ IR n × IR m ⎧<br />
⎪⎨ x • F (x, y) = 0<br />
tal que x ≥ 0 , F (x, y) ≥ 0 e<br />
⎪⎩ Q(x, y) = 0.<br />
Quando F (x, y) e Q(x, y) são lineares temos o Problema de Complementaridade<br />
Mista Linear (MLCP).<br />
Para a utilização do algoritmo FDA-NCP no problema 5.1.1 vamos agregar no<br />
sistema H(x, y) = 0, onde H(x, y) = x•F (x, y), a equação de igualdade Q(x, y) = 0.<br />
Assim o novo sistema fica da seguinte forma:<br />
⎛ ⎞ ⎛<br />
⎞<br />
H(x, y) x • F (x, y)<br />
S(x, y) = ⎝ ⎠ = ⎝ ⎠ = 0 (1.1)<br />
Q(x, y) Q(x, y)<br />
39
Tomando Ω = {(x, y) ∈ IR n × IR m / x ≥ 0 e F (x, y) ≥ 0} e a função potencial<br />
f(x, y) = φ(x, y) + Q(x, y) 2 , onde φ(x, y) = x T F (x, y). Vamos procurar uma<br />
solução para o sistema (1.1) na região Ωc = {(x, y) ∈ Ω / f(x, y) ≤ c}. Da mesma<br />
forma como no algoritmo FDA-NCP vamos construir uma seqüência de pontos que<br />
converge para uma solução do sistema (1.1).<br />
É fácil ver que:<br />
(x, y) é uma solução de MNCP ⇔ (x, y) é solução do sistema 1.1 em Ω.<br />
O gradiente de S(x, y) é dado pela expressão:<br />
∇S(x, y) =<br />
⎛<br />
⎝ ∇xH(x, y) Dx∇yF (x, y)<br />
∇xQ(x, y) ∇yQ(x, y)<br />
onde ∇xH(x, y) = DF (x,y) + Dx∇xF (x, y). Aplicando simplesmente uma iteração<br />
de Newton para o sistema (1.1) não garante que a direção d seja viável em Ω assim<br />
pelos mesmos argumentos apresentados no algoritmo FDA-NCP, podemos obter<br />
uma direção de busca viável em Ω resolvendo o seguinte sistema:<br />
⎛<br />
⎝ ∇xH(x k , y k ) D x k∇yF (x k , y k )<br />
∇xQ(x k , y k ) ∇yQ(x k , y k )<br />
⎞<br />
⎠ d k =<br />
⎛<br />
⎞<br />
⎠<br />
⎝ −xk • F (x k , y k ) + ρ k E1<br />
−Q(x k , y k )<br />
⎞<br />
⎠ (1.2)<br />
onde ρ k = ρ0φ(x k ,y k ) β<br />
n ∈ (0, 1), φ(x k , y k ) = x k • F (x k , y k ), ρ0 = α min{1, 1<br />
c β−1 },<br />
α ∈ (0, 1) e β ∈ [1, 2] para todo (xk , yk ⎛ ⎞<br />
) ∈ Ωc. Definimos o seguinte vetor coluna<br />
E =<br />
⎝ E1<br />
E0<br />
⎠ com E1 = [1, 1, ..., 1] T ∈ IR n e E0 = [0, 0, ..., 0] T ∈ IR m .<br />
Assim, o sistema na sua forma compacta é<br />
∇S(x k , y k )d k = −S(x k , y k ) + ρ k E.<br />
40
5.2 Descrição do Algoritmo FDA-MNCP.<br />
O presente algoritmo produzirá uma seqüência de pontos interiores a região Ω<br />
que converge a uma solução do problema de complementaridade mista mediante<br />
a resolução de um sistema de equações e uma busca linear nas restrições x ≥ 0 ,<br />
F (x, y) ≥ 0 e na função potencial f(x, y). A busca utilizada é a de Armijo. Vamos<br />
considerar os seguintes parâmetros:<br />
c, ɛ > 0, α, η, ν ∈ (0, 1), β ∈ (1, 2]. Dados iniciais: (x 0 , y 0 ) ∈ Ω estritamente viável<br />
tal que f(x 0 , y 0 ) ≤ c e k = 0.<br />
1. Passo 1: Direção de Busca.<br />
Resolva o sistema<br />
2. Passo 2: Busca linear.<br />
∇S(x k , y k )d k = −S(x k , y k ) + ρ k E,<br />
Define-se o tamanho do passo t k como sendo o primeiro valor da seqüência<br />
{1, ν, ν 2 , ν 3 , ...} satisfazendo<br />
1) x k i + t k d k i ≥ 0 para todo 1 ≤ i ≤ n.<br />
2) F ((x k , y k ) + t k d k ) ≥ 0<br />
3) f(x k , y k ) + t k η∇f(x k , y k )d k ≥ f((x k , y k ) + t k d k )<br />
3. Passo 3: Atualização dos Dados (x k+1 , y k+1 ) := (x k , y k ) + t k d k e k := k + 1<br />
4. Passo 4: Critério de parada<br />
Se f(x k+1 ) < ɛ , pare.<br />
caso contrário volte ao passo 1.<br />
41
5.3 Convergência Global para FDA-MNCP<br />
Da mesma forma como fizemos no capítulo 4.1, vamos assumir as seguintes<br />
suposições:<br />
Suposição 5.3.1 O conjunto<br />
Ωc ≡ {(x, y) ∈ Ω | f(x, y) ≤ c}<br />
é compacto e possui interior Ω 0 c = ∅, tal que para cada (x, y) ∈ Ω 0 c satisfaz x > 0 e<br />
F (x, y) > 0.<br />
Suposição 5.3.2 As funções F (x, y) e Q(x, y) são de classe C 1 (ℜ n × ℜ m ) e ainda<br />
∇F (x, y) e ∇Q(x, y) satisfazem a condição de Lipschitz,<br />
e<br />
||∇F (x2, y2) − ∇F (x1, y1)|| ≤ γ0(x2, y2) − (x1, y1)<br />
||∇Q(x2, y2) − ∇Q(x1, y1)|| ≤ L(x2, y2) − (x1, y1)<br />
para qualquer (x1, y1) e (x2, y2) ∈ Ωc, onde γ0 e L são constantes positivas.<br />
Suposição 5.3.3 A matriz ∇S(x, y) é não singular para todo (x, y) ∈ Ωc, ou seja,<br />
existe (∇S(x, y)) −1 para todo (x, y) ∈ Ωc.<br />
Suposição 5.3.4 Existe constante real σ > 0 tal que o seguinte subconjunto Ω ∗ é<br />
não vazio:<br />
Ω ∗ ≡ {(x, y) ∈ Ωc tal que σQ(x, y) ≤ φ(x, y)}.<br />
A suposição 5.3.1 garante a existência de pontos estritamente viáveis em Ωc.<br />
Da suposição 5.3.2 segue que ∇S(x, y) satisfaz a condição de Lipschitz e ainda temos<br />
que Q 2 i (x, y) para i = 1, ..., m também é Lipschitz então sem perda de generalidade<br />
podemos supor que existe uma mesma constante γ > 0 que verifica a condição de<br />
Lipschitz para ∇S(x, y) e Q 2 i (x, y), i = 1, ..., m.<br />
Pela suposição 5.3.3 concluímos que o sistema linear do algoritmo<br />
∇S(x k , y k )d k = −S(x k , y k ) + ρ k E,<br />
42
possui solução única, logo a direção d k esta bem definida. Temos também<br />
que ∇F (x, y) e ∇Q(x, y) são contínuas assim tanto para ∇S(x, y) quanto para<br />
(∇S(x, y)) −1 são aplicações contínuas e limitadas em Ωc. Ou seja existem constantes<br />
positivas κ0, κ tal que ∇S(x, y) ≤ κ0 e (∇S(x, y)) −1 ≤ κ para todo (x, y) ∈ Ωc.<br />
A suposição 5.3.4 garante que quando estamos em um ponto que satisfaz a<br />
complementaridade x • F (x, y) = 0 implica que também irá satisfazer Q(x, y) = 0.<br />
Assim podemos controlar a convergência do algoritmo somente pela condição de<br />
complementaridade x • F (x, y) = 0.<br />
Vamos agora a uma seqüência de resultados que provará a convergência global do<br />
algoritmo FDA-MNCP.<br />
Proposição 5.3.1 Dado um ponto em (x k , y k ) ∈ Ω ∗ , a direção d k dada pelo sistema<br />
(1.2), é viável em Ω desde que f(x k , y k ) = 0.<br />
Prova:<br />
Dado (x k , y k ) ∈ Ω ∗ , a direção d k cumpre:<br />
∇S(x k , y k )d k = −S(x k , y k ) + ρ k E,<br />
e como ρ k > 0. Então as linhas i-ésimas, i ∈ {1, 2, ..., m}, do sistema (1.2) fica<br />
definido da seguinte forma:<br />
[ei.Fi(x k , y k ) + x k i ∇Fi(x k , y k )]d k = −x k i Fi(x k , y k ) + ρ k ,<br />
onde ei é o vetor da base canônica de IR n × IR m e ∇Fi(x k , y k ) =<br />
[∇xFi(x k , y k ), ∇yFi(x k , y k )].<br />
(1) Para um índice i ∈ K temos:<br />
x k i = 0 e Fi(x k , y k ) > 0 portanto:<br />
Para a direção d k temos:<br />
assim, d k i =<br />
ρ k<br />
F k i (xk ,y k )<br />
> 0.<br />
Então, d k i (x k , y k ) > 0 para todo ρ k > 0.<br />
(2) Para um índice i ∈ J temos:<br />
[ei.Fi(x k , y k )]d k = Fi(x k , y k ).d k i = ρ k<br />
43
x k i > 0 e Fi(x k , y k ) = 0 portanto:<br />
Para a direção d k temos:<br />
o que implica que ∇Fi(x k , y k )d k = ρk<br />
x k i<br />
[x k i ∇Fi(x k , y k )]d k = ρ k<br />
> 0.<br />
Então, ∇Fi(x k , y k )d k > 0 para todo ρ k > 0.<br />
Logo pela proposição 3.1.1 temos que d k é uma direção viável no ponto (x k , y k ).<br />
Lema 5.3.1 Dado (x k , y k ) ∈ Ω ∗ , f(x k , y k ) = 0, a direção d k dada pelo sistema<br />
(1.2), é uma direção de descida para a função potencial<br />
f(x k , y k ) = φ(x k , y k ) + Q(x k , y k ) 2 n<br />
= x<br />
i=1<br />
k i Fi(x k , y k m<br />
) + Q<br />
j=1<br />
2 j(x k , y k ),<br />
com ρ0φ(x k , y k ) β−1 < 1 onde β ∈ [1, 2] , ρ0 = α min{1, 1<br />
c β−1 } e α ∈ (0, 1).<br />
Prova:<br />
A função f(x k , y k ) é estritamente positiva para todo ponto (x k , y k ) em Ω que<br />
não seja solução do problema 5.1.1, e ainda, todo ponto (x k , y k ) ∈ Ω tal que<br />
f(x k , y k ) = 0 implica que (x k , y k ) é uma solução do problema 5.1.1, ou seja, x k ≥ 0<br />
, F (x k , y k ) ≥ 0 , x k • F (x k , y k ) = 0 e Q(x k , y k ) = 0.<br />
O gradiente de f(x k , y k ) é dado por:<br />
= ( E T 1<br />
Dada a direção d k temos:<br />
∇f(x k , y k ) = ( ET 1<br />
⎛<br />
2Q T (x k , y k ) )<br />
∇f(x k , y k )d k = ( E T 1<br />
= ( E T 1<br />
2Q T (x k , y k ) ) ∇S(x k , y k ) =<br />
⎝ M(xk , y k ) D x k∇yF (x k , y k )<br />
∇xQ(x k , y k ) ∇yQ(x k , y k )<br />
2Q T (x k , y k ) ) W (x k , y k )d k =<br />
2Q T (x k , y k ) ) (−S(x k , y k ) + ρ k E) =<br />
= − ( E T 1 2Q T (x k , y k ) ) S(x k , y k ) + ρ k ( E T 1 2Q T (x k , y k ) ) E =<br />
= −φ(x k , y k ) − 2Q(x k , y k ) 2 + nρ k =<br />
= −2[f(x, y) − 1 + ρ0φ(xk , yk ) β−1<br />
φ(x<br />
2<br />
k , y k )] < 0.<br />
44<br />
⎞<br />
⎠ .
Por tanto a direção d k é uma direção de descida para f(x k , y k ).<br />
Da ultima equação deste lema obtemos a seguinte equação<br />
∇f(x k , y k )d k ≤ −(1 − ρ0φ(x k , y k ) β−1 )f(x k , y k )<br />
que é equivalente a proposição 3.1.3 do caso FDA-NCP.<br />
Lema 5.3.2 Dado um ponto (x k , y k ) ∈ Ω ∗ a direção d k calculada pelo FDA-MNCP,<br />
satisfaz a seguinte desigualdade:<br />
conseqüentemente, d k ≤ kc para todo (x k , y k ) ∈ Ω ∗ .<br />
Prova:<br />
Temos o seguinte sistema:<br />
d k ≤ kφ(x k , y k ), (3.1)<br />
∇S(x k , y k )d k = −S(x k , y k ) + ρ k E<br />
Como a matriz (∇S(x k , y k )) −1 é não singular, podemos estimar d k através da<br />
seguinte desigualdade:<br />
d k ≤ (∇S(x k , y k )) −1 − S(x k , y k ) + ρ k E.<br />
Então basta estimar um valor para − S(x k , y k ) + ρ k E. Assim segue que<br />
− S(x k , y k ) + ρ k E 2 = S(x k , y k ) 2 − 2ρ k φ(x k , y k ) + n(ρ k ) 2 =<br />
= [x k • F (x k , y k ) 2 − 2ρ k φ(x k , y k ) + n(ρ k ) 2 ] + Q(x k , y k ) 2<br />
pelos mesmos argumentos do lema 4.1.4 da seção 4 temos que<br />
x k • F (x k , y k ) 2 − 2ρ k φ(x k , y k ) + n(ρ k ) 2 ≤ φ(x k , y k ) 2 .<br />
Portanto pela suposição 5.3.4 segue que<br />
− S(x k , y k ) + ρ k E 2 ≤<br />
1 + σ2<br />
σ 2 φ(xk , y k ) 2<br />
<br />
1+σ2 o permite concluir a inequação (3.1) do lema onde κ = κ σ2 .<br />
45
Lema 5.3.3 A seqüência de direção {d k } gerada pelo algoritmo FDA-<br />
MNCP, consiste em um campo uniforme de direções viáveis do problema de<br />
complementaridade em Ω.<br />
Prova:<br />
Como ∇S(x k , y k ) é Lipschitz sem perda de generalidade temos que para cada<br />
i = 1, ..., n + m<br />
∇Si(x k 2, y k 2) − ∇Si(x k 1, y k 1) ≤ γ(x k 2, y k 2) − (x k 1, y k 1)<br />
para todo (x k 1, y k 1) , (x k 2, y k 2) ∈ Ω ∗ .<br />
Seja (x k , y k ) ∈ Ω ∗ e θ > 0 tal que o seguimento [(x k , y k ), (x k , y k ) + τd k ] ⊂ Ω para<br />
todo τ ∈ [0, θ].<br />
Do teorema do valor médio temos que<br />
Si((x k , y k ) + τd k ) ≥ Si(x k , y k ) + τ∇S T i (x k , y k )d k − τ 2 γd k 2<br />
para qualquer τ ∈ [0, θ] e 1 ≤ i ≤ n.<br />
Para cada i = 1, ..., n temos<br />
logo<br />
∇S T i (x k )d k = −x k i Fi(x k , y k ) + ρ k<br />
Si((x k , y k ) + τd k ) ≥ (1 − τ)Si(x k , y k ) + (ρ k − τγd k 2 )τ.<br />
Portanto, para todo i = 1, ..., n e qualquer τ ≤ min{1,<br />
Si((x k , y k ) + τd k ) ≥ 0.<br />
Assim, pelo lema 4.1.6 concluímos que (x k , y k ) + τd k ∈ Ω.<br />
Considerando agora o lema 3.1, e pela definição de ρ k temos<br />
Como β ∈ [1, 2], o lema é valido para<br />
ρ k<br />
γd k 2 } temos<br />
(3.2)<br />
τ ≤ min{1, ρ0<br />
γnκ 2 φ(xk , y k ) β−2 } (3.3)<br />
θ = min{1,<br />
46<br />
β−2 ρ0c<br />
}.<br />
γnκ2
Lema 5.3.4 Existe ξ > 0 tal que, para (x k , y k ) ∈ Ω ∗ , a condição de Armijo no<br />
algoritmo FDA-MNCP é satisfeita para qualquer t k ∈ [0, ξ].<br />
Prova:<br />
Seja t k ∈ (0, θ], onde θ foi obtido no lema anterior. Aplicando o Teorema do Valor<br />
Médio para i = 1, 2, ..., n e tomando (x k+1 , y k+1 ) = (x k , y k ) + t k d k , nos temos<br />
Si((x k+1 , y k+1 )) ≤ Si(x k , y k ) + t k ∇[S(x k , y k )]id k + t k2<br />
γd k 2 .<br />
Somando as n inequações e considerando a equação (3.2), temos:<br />
φ(x k+1 , y k+1 ) ≤ (1 − t k )φ(x k , y k ) + t k nρ k + nt k2<br />
γd k 2 .<br />
Do Teorema do Valor Médio para Q 2 i (x k , y k ), i = n + 1, ..., n + m, e como<br />
∇[S(x k , y k )]id k = −Qi(x k , y k ), obtemos a seguinte inequação<br />
Q 2 i (x k+1 , y k+1 ) ≤ (1 − t k )Q 2 i (x k , y k ) + t k2<br />
γd k 2 .<br />
Agora somando de 1 até m obtemos<br />
Q(x k+1 , y k+1 ) 2 ≤ (1 − t k )Q(x k , y k ) 2 + mt k2<br />
γd k 2 .<br />
Somando as duas expressões temos<br />
f(x k+1 , y k+1 ) ≤ (1 − t k )f(x k , y k ) + t k (nρ k + (n + m)t k γd k 2 ).<br />
Da definição de ρ k e da suposição 5.3.4 segue para (x k , y k ) ∈ Ω ∗ as seguintes<br />
desigualdades<br />
nρ k<br />
f(x k , y k ) ≤ ρ0φ(x k , y k ) β−1<br />
Das desigualdades acima obtemos<br />
f(x k+1 , y k+1 ) ≤ [1 − (1 − ρ0φ(x k , y k ) β−1 −<br />
e f(x k , y k ) ≤ (1 + cσ 2 )φ(x k , y k ).<br />
n + m<br />
1 + cσ2 γdk2 φ(xk , yk ) tk )t k )]f(x k , y k )<br />
Da busca linear do algoritmo FDA-MNCP aplicado na função f(x k , y k ) e pelo lema<br />
5.3.1 temos<br />
f(x k+1 , y k+1 ) ≤ [1 − t k η(1 − ρ0φ β−1 (x k , y k )]f(x k , y k )<br />
47
Assim para satisfazer a condição de Armijo basta que<br />
[1−(1−(ρ0φ(x k , y k ) β−1 n + m<br />
+<br />
1 + cσ2 γdk2 φ(xk , yk ) tk )t k )]f(x k , y k ) ≤ [1−t k η(1−ρ0φ(x k , y k ) β−1 ]f(x k , y k )<br />
segue<br />
(1 − ρ0φ(x k , y k ) β−1 ) −<br />
e portanto tomando<br />
n + m<br />
1 + cσ2 γdk2 φ(xk , yk ) tk ≥ η(1 − ρ0φ(x k , y k ) β−1 )<br />
t k ≤ (1 − η)(1 − ρ0φ(x k , y k ) β−1 1 + cσ2 φ(x<br />
)<br />
n + m<br />
k , yk )<br />
γdk2 temos a condição de Armijo satisfeita.<br />
Assim, o lema fica provado para<br />
onde θ foi obtido no Lema 5.3.3.<br />
ξ = min{(1 − η)(1 − ρ 0 c β−1 1 + cσ<br />
)<br />
2<br />
(n + m)γκ2 , θ},<br />
c<br />
(3.4)<br />
Como conseqüência dos lemas 5.3.3 e 5.3.4, temos que para todo (x k , y k ) ∈ Ω ∗ o<br />
próximo ponto (x k+1 , y k+1 ) = (x k , y k )+t k d k com t k ∈ [0, ξ] pertence ao conjunto Ωc.<br />
Assim antes de enunciar o teorema que garante a convergência global do algoritmo a<br />
uma solução do problema de complementaridade mista. Vamos mostrar que o passo<br />
da busca de Armijo é limitado inferiormente por νξ > no conjunto Ω ∗ .<br />
Lema 5.3.5 Existe ξ > 0 tal que, para (x k , y k ) ∈ Ω ∗ , o ponto (x k+1 , y k+1 ) =<br />
(x k , y k ) + t k d k pertence ao conjunto Ω ∗ para qualquer t k ∈ [0, ξ].<br />
Prova:<br />
Pelos lemas 5.3.3 e 5.3.4 temos que z k+1 = (x k , y k ) + t k d k ∈ Ωc para todo t k ∈ (0, ξ).<br />
Vamos mostrar que z k+1 ∈ Ω ∗ . Assim como no lema 5.3.3 temos<br />
para todo i ∈ {1, ...n}.<br />
Si(z k+1 ) ≥ (1 − t k )Si(x k , y k ) + t k ρ k − (t k ) 2 γd k 2 .<br />
Somando as n inequações acima obtemos;<br />
φ(z k+1 ) ≥ (1 − t k )φ(x k , y k ) + nρ k t k − n(t k ) 2 γd k 2<br />
48<br />
(3.5)
usando a Fórmula de Newton-Leibnitz, ver em [29], temos que<br />
Q(z k+1 ) = Q(x k , y k ) + t k 1<br />
[ ∇Q((x<br />
0<br />
k , y k ) + θt k d k )dθ]d k =<br />
= Q(x k , y k ) + t k ∇Q(x k , y k )d k + t k 1<br />
[ (∇Q((x k , y k ) + θt k d k ) − ∇Q(x k , y k ))d k )dθ]d k =<br />
0<br />
= (1 − t k )Q(x k , y k ) + t k 1<br />
[ (∇Q((x, y) + θt<br />
0<br />
k d k ) − ∇Q(x k , y k ))d k )dθ]d k<br />
como ∇Q(x k , y k ) é Lipschitz contínua, nos chegamos à seguinte expressão<br />
Q(z k+1 ) ≤ Q(x k , y k )(1 − t k ) + L(t k ) 2 d k 2<br />
Multiplicando a expressão acima por −σ, onde σ é a constante da suposição 5.3.4.<br />
−σQ(z k+1 ) ≥ −σQ(x k , y k )(1 − t k ) − σL(t k ) 2 d k 2<br />
Somando as duas equações 3.5 e 3.6<br />
(3.6)<br />
φ(z k+1 )−βγQ(z k+1 ) ≥ (1−t k )[φ(x k , y k )−σQ(x k , y k )]+[nρ k −(nγ+σL)t k d k 2 ]t k<br />
como [φ(x k , y k ) − σQ(x k , y k )] ≥ 0 basta que [nρ k − (nγ + σL)t k d 2 ] ≥ 0 ou seja<br />
onde δ = nγ<br />
nγ+σL<br />
t k ≤<br />
nρk (nγ + σL)dk ρk<br />
= δ<br />
2 γd2 ∈ (0, 1]. Logo basta tomar ξ = min{δ ρ0c β−2<br />
γnκ 2 , ξ} para termos<br />
φ(z k+1 ) − σQ(z k+1 ) ≥ 0 para todo t k ∈ (0, ξ) o que garante que z k+1 ∈ Ω ∗ .<br />
Um observação importante que destacamos para este resultado é que quando a<br />
função Q(x, y) for linear temos que L = 0 e portanto δ = 1 o que implica que ξ = ξ.<br />
Teorema 5.3.1 Dado um ponto inicial estritamente viável, (x 0 , y 0 ) ∈ Ω ∗ , existe<br />
uma subseqüência de {(x k , y k )} gerada pelo Algoritmo FDA-MNCP que converge<br />
para (x ∗ , y ∗ ), solução do problema de complementaridade mista.<br />
Prova:<br />
Segue dos lemas 3.1 a 5.3.5 que {(x k , y k )} ⊂ Ωc. Como Ωc é compacto, a<br />
seqüência {(x k , y k )} possui ponto de acumulação em Ωc. Seja (x ∗ , y ∗ ) um ponto<br />
de acumulação desta seqüência. Como o tamanho do passo é sempre positivo<br />
49
e limitado inferiormente por νξ, concluímos que d k → 0. E do sistema do<br />
algoritmo temos que {f(x k , y k )} → 0. Assim, (x ∗ , y ∗ ) é uma solução do problema<br />
de complementaridade.<br />
50
Capítulo 6<br />
Análise de Convergência<br />
Assintótica<br />
Agora veremos resultados sobre a taxa de convergência dos algoritmos FDA-NCP e<br />
FDA-MNCP. Primeiramente observaremos que uma iteração realizada em qualquer<br />
um dos algoritmos é uma iteração do tipo Newton Amortecido com uma pertubação<br />
e as suposições pedidas nos algoritmos, FDA-NCP(4.0.1-4.0.3) e FDA-MNCP<br />
(5.3.1-5.3.4), satisfazem as suposições do Método de Newton clássico (1.1.1-1.1.3) e<br />
que são utilizadas para o caso de Newton Amortecido com uma pertubação.<br />
6.1 Resultados de Convergência Assintótica<br />
Antes de enunciar o Teorema de convergência assintótica veremos o esquema<br />
iterativo do Método de Newton Amortecido com uma pertubação e compararemos<br />
com o esquema iterativo do algoritmo FDA-NCP (FDA-MNCP). Portanto, para<br />
resolver numericamente o sistema de equações (1.15), T (z) = 0, o Método de Newton<br />
Amortecido realiza a seguinte iteração<br />
z k+1 = z k − t k T ′−1 (z k )[T (z k ) − µ k P ] , k = 0, 1, 2, ... (1.1)<br />
onde 0 < t k ≤ 1, µ k > 0 e P um vetor fixo em IR p .<br />
51
Lembrando que a seqüência gerada pelos algoritmos FDA-NCP ou FDA-MNCP é<br />
baseada na resolução de um sistema de equações mais uma busca linear nas restrições<br />
de complementaridade e na função potencial associado ao problema. O que nos<br />
remete ao método de Newton Amortecido com uma pertubação (1.1): Observe que<br />
quando tomamos p = n, z k = x k , T (z k ) = H(x k ), T ′−1 (z k ) = (∇H(x k )) −1 , P = E<br />
, µ k = ρ k e t k como o passo da busca linear descrita no algoritmo FDA-NCP temos<br />
que a equação (1.1) é exatamente o esquema de iteração para o algoritmo FDA-NCP.<br />
onde ρ k = ρ0 φβ (x k )<br />
n<br />
x k+1 = x k − t k (∇H(x k )) −1 [H(x k ) − ρ k E] , k = 0, 1, 2, ... (1.2)<br />
e β ∈ [1, 2].<br />
Assim temos o seguinte teorema.<br />
Teorema 6.1.1 Considere a seqüência {x k } gerada pelo algoritmo FDA-NCP, que<br />
converge para uma solução x ∗ do problema de complementaridade. Então,<br />
(i) Tomando β ∈ (1, 2), t k = 1 para k suficientemente grande e a taxa de<br />
convergência do algoritmo é superlinear.<br />
(ii) Se t k = 1 para k suficientemente grande e β = 2, então a taxa de convergência<br />
é quadrática.<br />
Prova:<br />
Considerando o teorema 4.1.1, nos deduzimos das equações (1.8) e (1.9) que para k<br />
suficientemente grande, o comprimento do passo obtido da busca linear de armijo é<br />
t k = 1 se β ∈ (1, 2).<br />
A análise que faremos agora segue os mesmos procedimentos do Método de Newton<br />
usual e pode ser visto em [29] , [56].<br />
x k+1 −x ∗ = x k +t k d k −x ∗ = (1−t k )(x k −x ∗ )+t k (x k −x ∗ +(∇H(x k )) −1 [−H(x k )+ρ k E])<br />
x k+1 −x ∗ ≤ (1−t k )x k −x ∗ +t k (∇H(x k )) −1 ∇H(x k )(x k −x ∗ )−H(x k )+ρ k E<br />
da suposição 4.0.3, existe uma constante κ > 0 tal que M −1 (x k ) ≤ κ para todo<br />
x k ∈ Ωc.<br />
x k+1 − x ∗ ≤ (1 − t k )x k − x ∗ + κρ k E + κH(x k ) − ∇H(x k )(x k − x ∗ )<br />
52
como ∇H(x k ) é localmente Lipschitz contínuo e da formulá de Newton-Leidnitz<br />
temos que<br />
x k+1 − x ∗ ≤ (1 − t k )x k − x ∗ + κ √ nρ k + O(x k − x ∗ 2 )<br />
assim lembrando que ρ k = ρ0 φ(xk ) β<br />
n<br />
x k+1 − x ∗ ≤ (1 − t k )x k − x ∗ + κρ0φ(x k ) β<br />
√ n<br />
Do Teorema do Valor Médio segue que<br />
com β ∈ [1, 2] segue a seguinte desigualdade<br />
φ β (y) ≤ φ(x) β + βφ(x) β−1√ n O(y − x),<br />
+ O(x k − x ∗ 2 ), (1.3)<br />
onde x = x + ɛ(y − x) para algum ɛ ∈ (0, 1). tomando x = x ∗ e para todo y = x k<br />
suficientemente próximo de x ∗ temos<br />
φ(x k ) β ≤ βφ(x) β−1√ n O(x k − x ∗ ).<br />
A prova de (i) segue observando que para β ∈ (1, 2), φ(x k ) β = o(x k − x ∗ ) e por<br />
substituição em (1.3) concluímos que<br />
x<br />
lim<br />
k→∞<br />
k+1 − x∗ xk − x∗ Portanto, a taxa de convergência é superlinear.<br />
= 0.<br />
O resultado (ii) é obtido de forma similar. Observe que para β = 2 temos que<br />
φ(x k ) 2 = O(x k − x ∗ 2 ) e neste caso a equação (1.8) do lema 4.1.7 não assegura que<br />
t k = 1 para k suficientemente grande assim pedimos que t k ≡ 1 para todo k > k0<br />
com k0 suficientemente grande, logo<br />
lim<br />
k→∞<br />
xk+1 − x∗ xk − x∗ < ∞.<br />
2 Ficando assim provado a convergência quadrática.<br />
O teorema que acabamos de demonstrar também é valido para o caso de<br />
complementaridade mista. Basta tomar na equação (1.1) os seguintes valores:<br />
p = n + m, z k = (x k , y k ), T (z k ) = S(x k , y k ), T ′−1 (z k ) = S(x k , y k ) −1 , P = E ,<br />
µ k = ρ k e t k como o passo da busca linear descrita no algoritmo FDA-MNCP. Então<br />
o esquema de iteração para o algoritmo FDA-MNCP é<br />
(x k+1 , y k+1 ) = (x k , y k ) − t k S(x k , y k ) −1 [S(x k , y k ) − ρ k E] , k = 0, 1, 2, ... (1.4)<br />
53
onde ρ k = ρ0 φ(xk ,y k ) β<br />
n<br />
e β ∈ [1, 2].<br />
E o teorema equivalente para o algoritmo FDA-MNCP é:<br />
Teorema 6.1.2 Considere a seqüência {(x k , y k )} gerada pelo algoritmo FDA-<br />
MNCP, que converge para uma solução (x ∗ , y ∗ ) do problema de complementaridade<br />
mista. Então,<br />
(i) Tomando β ∈ (1, 2), t k = 1 para k suficientemente grande e a taxa de<br />
convergência do algoritmo é superlinear.<br />
(ii) Se t k = 1 para k suficientemente grande e β = 2, então a taxa de convergência<br />
é quadrática.<br />
Prova:<br />
Segue os mesmos argumentos usados na demonstração do teorema 6.1.1.<br />
54
Capítulo 7<br />
Usando FAIPA para Resolver<br />
NCP<br />
Os Algoritmos FAIPA, (Feasible Arc Interior Point Algorithm) [26] e FDIPA<br />
(Feasible Direct Interior Point Algorithm) [26] são métodos de pontos interiores<br />
utilizado para resolver problemas de otimização não linear do tipo 1.2:<br />
min f(x)<br />
Sugeito a: g(x) ≤ 0<br />
e h(x) = 0<br />
onde f : IR n → IR, g : IR n → IR m e h : IR n → IR p são funções suaves, não<br />
necessariamente convexa.<br />
Para resolver este problema, José Herskovits propôs em 1982 um algoritmo<br />
de primeira ordem de direções viáveis, [[22],[24]] que possui uma convergência<br />
super-linear mesmo incluindo uma estimativa quasi-Newton para a Hessiana da<br />
função Lagrangeana 1.6,[23]. O algoritmo requer um ponto inicial x, no interior<br />
da região definida pelas restrições de desigualdades, ele gera uma seqüência de<br />
pontos também no interior desta região. Quando temos somente restrições de<br />
desigualdades, a função objetivo é reduzida a cada iteração.<br />
Em ambos algoritmos FDIPA e FAIPA, o esquema das iterações é definido por:<br />
Primeiro estágio, define uma direção de descida por meio de resolução de um<br />
sistema linear nas variáveis primal e dual.<br />
55
No segundo estagio, o sistema linear é perturbado de tal forma a ter uma deflexão<br />
na direção de descida e assim obter uma direção de descida e viável para o problema.<br />
(FDIPA)<br />
No caso do FAIPA, um terceiro estágio é resolvido afim de obter um arco viável e<br />
assim evitar o efeito Maratos. No FAIPA, uma busca em arco é aplicada para obter<br />
um novo ponto interior a região viável e que reduz o valor da função potencial,<br />
assegurando assim a convergência Global.<br />
7.1 FAIPA<br />
Aplicaremos o FAIPA em problemas de complementaridade 1.1.13. Para tal<br />
consideraremos o problema de programação não linear com restrições dado abaixo.<br />
min f(x)<br />
Sujeito a: g(x) ≤ 0<br />
(1.1)<br />
Notação: Nos denotamos ∇g(x) ∈ IR n×m a matriz das derivadas de g e chamaremos<br />
λ ∈ IR m o vetor da variável dual, Ω ≡ {x ∈ IR n / g(x) ≤ 0} o conjunto viável, Ω o seu<br />
interior, L(x, λ) = f(x)+λ t g(x) a Lagrangeana e H(x, λ) = ∇ 2 f(x)+ m i=1 λi∇ 2 gi(x)<br />
sua Hessiana. G(x) denota a matriz diagonal tal que Gii(x) = gi(x).<br />
Então, as condições de otimalidade de primeira ordem de Karush-Kuhn-Tucker<br />
(KKT) são expressado da seguinte forma:<br />
∇f(x) + ∇g(x)λ = 0, (1.2)<br />
G(x)λ = 0, (1.3)<br />
g(x) ≤ 0, (1.4)<br />
λ ≥ 0. (1.5)<br />
Um vetor (x ∗ , λ ∗ ) satisfazendo as equações 1.2 e 1.3 é chamado um Par<br />
Estacionário do problema 1.1 e um Par KKT se este satisfizer as condições de KKT<br />
56
(1.2-1.5). Um vetor x ∗ é um Ponto Estacionário (Ponto KKT) se existe λ ∗ tal que<br />
(x ∗ , λ ∗ ) constituindo um par estacionário (par KKT).<br />
Para o problema de otimização não linear sem restrições de igualdade 1.1, o<br />
algoritmo FDIPA (Feasible Direct Interior Point Algorithm) proposto por Herskovits<br />
[22] é um algoritmo de direções viáveis. Em cada iteração é achada uma direção<br />
viável e de descida para a função objetivo. Uma busca linear inexata nessa direção<br />
para a função objetivo determina o próximo ponto viável. Para definir a direção de<br />
busca o algoritmo FDIPA baseia-se na direção da iteração de Newton na variável<br />
(x, λ) para o sistema de equações dado pelas igualdades das condições de otimalidade<br />
de primeira ordem Eqs. 1.2 e 1.2.<br />
A iteração de Newton (amortecida) é:<br />
onde a direção (dx, dλ) verifica:<br />
⎛<br />
(xk+1, λk+1) = (xk, λk) + t(dx, dλ)<br />
⎝ Hk −∇gk<br />
Λk∇gT k Gk<br />
⎞ ⎛<br />
⎠ ⎝ dx<br />
⎞ ⎛<br />
⎠ = ⎝<br />
dλ<br />
−∇xLT ⎞<br />
k<br />
⎠ (1.6)<br />
−Λkgk<br />
Na Eq. 1.6, Hk = H(xk, λk) é a Hessiana da função lagrangeana, Lk = L(xk, λk) é a<br />
função lagrangeana e Λk e Gk são as matrizes diagonais diag(λk) e diag(g(xk)).<br />
Definindo a variável λ = λk +dλ a direção dx pode-se achar resolvendo o sistema:<br />
⎛<br />
⎝ Hk ∇gk<br />
Λk∇gT ⎞ ⎛<br />
⎠ ⎝<br />
k Gk<br />
dx<br />
⎞ ⎛<br />
⎠ = ⎝<br />
λ<br />
−∇f T ⎞<br />
k<br />
⎠ (1.7)<br />
0<br />
Em geral o método de Newton não converge para um mínimo local do problema<br />
1.1 já que em alguns casos a direção dx não está bem definida pois a matriz de<br />
coeficientes das Eqs. 1.6 e 1.7 é singular. De qualquer forma, mesmo que a matriz<br />
seja não singular para todos os pontos da seqüência gerada, esta seqüência pode<br />
ser divergente ou convergir para um ponto que não seja mínimo local do problema<br />
1.1. Pode acontecer o caso no qual o algoritmo converge para um máximo local do<br />
problema 1.1, já que nesses pontos as equações de igualdade das condições de KKT<br />
verificam-se para valores não necessariamente positivos da variável λ. Para garantir<br />
convergência global para um ponto de KKT do problema 1.1 o algoritmo FDIPA<br />
modifica a forma em que calcula-se a direção de busca dx e introduz uma busca<br />
linear na função objetivo para achar o passo t. As principais modificações são:<br />
57
1. Modificação da matriz do sistema: Esta modificação é feita para que a matriz<br />
do sistema linear não seja singular e para garantir que a direção de busca<br />
seja de descida para a função objetivo. A matriz Hk é substituída por uma<br />
matriz Bk definida positiva. A direção achada resolvendo este sistema, d a x, é<br />
de descida para a função objetivo. A mesma calcula-se resolvendo o sistema:<br />
⎛<br />
⎝ Bk<br />
Λk∇g<br />
∇gk<br />
T k<br />
⎞ ⎛<br />
⎠ ⎝<br />
Gk<br />
da ⎞ ⎛<br />
x<br />
⎠ = ⎝<br />
λa<br />
−∇f T ⎞<br />
k<br />
⎠<br />
0<br />
(1.8)<br />
2. Deflexão da direção de busca: Ainda que a direção d a x seja de descida para a<br />
função objetivo, as restrições do problema podem obrigar o algoritmo a dar<br />
passos cada vez menores, levando a convergência da seqüência de pontos para<br />
um ponto na fronteira da região viável, não necessariamente mínimo local do<br />
problema. Para evitar este comportamento é necessário um desvio na direção<br />
de busca de forma que a nova direção aponte para dentro da região viável,<br />
permitindo um maior progresso á solução. A direção desviada calcula-se como:<br />
dx = d a x + ρd b x<br />
onde ρ é um valor suficientemente pequeno de modo que a direção dx seja<br />
também de descida para a função objetivo. Calcula-se a direção de desvio d b x<br />
resolvendo o seguinte sistema linear:<br />
⎛<br />
⎝ Bk ∇gk<br />
Λk∇gT ⎞ ⎛<br />
⎠<br />
k Gk<br />
onde ωk ∈ IR m +.<br />
⎝ db x<br />
λb<br />
⎞ ⎛<br />
⎠ = ⎝<br />
0<br />
⎞<br />
⎠ (1.9)<br />
−Λkωk<br />
3. Correção de segunda ordem: Outra modificação importante é uma correção<br />
de segunda ordem sobre a equação de complementaridade 1.1.5 para melhorar<br />
a convergência do algoritmo. Esta modificação é feita para evitar um efeito<br />
similar ao descrito por Maratos que afetaria a velocidade de convergência do<br />
algoritmo se não fora implementada.<br />
calcula-se a partir do seguinte sistema linear:<br />
⎛<br />
⎝ Bk −∇gT ⎞ ⎛<br />
k<br />
⎠ ⎝<br />
Λk∇gk Gk<br />
dc ⎞ ⎛<br />
x<br />
⎠ = ⎝<br />
λc<br />
0<br />
⎞<br />
⎠ (1.10)<br />
−Λk ˜ωk<br />
58
onde o vetor ˜ωk calcula-se com a fórmula:<br />
˜ωk = g(xk + dx) − g(xk) − ∇g(xk)dx<br />
(1.11)<br />
4. O novo ponto da seqüência se encontrará sobre o arco x(t) = xk + tdx + t 2 kd c x.<br />
5. Busca linear em arco: Consiste em achar t de modo a minimizar<br />
aproximadamente a função objetivo e satisfazendo as restrições de<br />
desigualdade do problema sobre o arco definido pelos vetores dx e dc.<br />
7.2 Descrição do Algoritmo FAIPA<br />
Parâmetros: ψ ∈ (0, 1), η ∈ (0, 1), φ > 0 e ν ∈ (0, 1).<br />
Dados: x0 ∈ Ω 0 , λ0 positivo, B0 ∈ IR n×n simétrica definida positiva e ω0 ∈ IR m<br />
positivo.<br />
Passo 1: Cálculo da direção<br />
1. Ache (d a x, λa) resolvendo o sistema linear da Eq. 1.8.<br />
Se d a x = 0, fim.<br />
2. Ache (d b x, λb) resolvendo o sistema linear da Eq. 1.9.<br />
3. Se ∇fkd b x > 0, defina:<br />
Se não, defina:<br />
4. A direção viável:<br />
também:<br />
ρ = min<br />
<br />
φd a x 2 ; (ψ − 1) ∇fkd a x<br />
∇fkd b x<br />
ρ = φd a x 2<br />
dx = d a x + ρd b x<br />
λ = λa + ρλb<br />
5. Ache a direção d c x resolvendo o sistema linear da Eq. 1.10.<br />
59
Passo 2: Busca linear em arco<br />
Calcule t como o primeiro número da seqüência {1, ν, ν 2 , ν 3 , ...} que satisfaça:<br />
Passo 3: Atualização<br />
f(xk + tdx + t 2 d c x) ≤ f(xk) + tη∇fkdx<br />
e para i = 1, .., m<br />
Defina xk+1 = xk + tdx + t 2 d c x.<br />
gi(xk + tdx + t 2 d c x) < 0 se λi ≥ 0<br />
ou<br />
gi(xk + tdx + t 2 d c x) ≤ gi(xk) se λi < 0<br />
Defina valores para λk+1 > 0, ωk+1 > 0 e Bk+1 simétrica definida positiva.<br />
Retorne ao Passo 1.<br />
Uma regra para a atualização de λ pose ser vista em Herskovits [25].<br />
7.3 Reformulando NCP com Problema de<br />
Minimização com Restrição<br />
Vamos formular o problema de complementaridade 1.1.13 em um problema de<br />
minímização com restrições de desigualdades 1.1.<br />
onde,<br />
min f(x) (3.1)<br />
x∈Ω<br />
f(x) = n i=1 xiFi(x), Ω = {x ∈ IR n ⎛ ⎞<br />
−F (x)<br />
/ g(x) ≤ 0} e g(x) = ⎝ ⎠ .<br />
−x<br />
portanto as condições de KKT dadas em (1.2-1.5) para o problema 3.1 ficam:<br />
∇f(x) − (∇F (x)) T λ 1 − Λ 2 = 0, (3.2)<br />
−F (x)λ 1 = 0,<br />
−Xλ 2 = 0,<br />
60<br />
(3.3)
−F (x) ≤ 0,<br />
−X ≤ 0,<br />
λ 1 ≥ 0,<br />
λ 2 ≥ 0,<br />
onde Λ2 é uma matriz diagonal e<br />
∇F (x) =<br />
⎛ ∂F1(x)<br />
∂x1 ⎜ ∂F2(x)<br />
⎜ ∂x1<br />
⎜ .<br />
⎝<br />
∂F1(x)<br />
∂x2<br />
∂F2(x)<br />
∂x2<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
.<br />
∂F1(x) ⎞<br />
∂xn ⎟<br />
∂F2(x) ⎟<br />
∂xn ⎟ .<br />
.<br />
⎟<br />
⎠<br />
∂Fn(x)<br />
∂x1<br />
∂Fn(x)<br />
∂x2<br />
. . .<br />
∂Fn(x)<br />
∂xn<br />
Logo a Matriz do sistema 1.7 fica da seguinte forma:<br />
⎛<br />
Hk<br />
⎜<br />
⎝<br />
−∇F T −Λ<br />
k −Id<br />
1 k∇Fk D−Fk 0<br />
−Λ2 ⎞<br />
⎟<br />
⎠<br />
kId 0 D−xk<br />
(3.4)<br />
(3.5)<br />
(3.6)<br />
onde Hk = ∇ 2 f(x k ) − n i=1 λ 1k<br />
i ∇ 2 Fi(x k ) e Id é a matriz identidade de ordem n.<br />
Considerações na utilização do FAIPA:<br />
1. Um ponto x ∗ é solução do problema de complementaridade 1.1.13 se e somente<br />
se f(x) = 0 e x ∈ Ω.<br />
2. O Algoritmo FAIPA converge a um par (x ∗ , λ ∗ ) de KKT. Assim pode ocorrer<br />
que o algoritmo convirja para um ponto x ∗ de mínimo local para o problema<br />
3.1 que não seja solução do problema de complementaridade 1.1.13, ou seja,<br />
f(x) > 0 .<br />
3. O problema de complementaridade 1.1.13 está definido em IR n enquanto o<br />
algoritmo FAIPA trabalha com um sistema em IR 3n , ou seja, o numero de<br />
varáveis é aumentado na ordem de 2n.<br />
4. Muitos métodos para problemas de complementaridade trabalha só com a<br />
primeira derivada de F (x). Já o FAIPA se utilizar a Hessiana H(x, λ) precisará<br />
da derivada segunda das Fi ′ s(x) ou então utilizar o método quase-Newton para<br />
substituir a matriz Hessiana H(x, λ).<br />
61
7.4 Uma nova atualização de λ no FAIPA<br />
Lembrando que o algoritmo FAIPA converge a um ponto (x ∗ , λ ∗ ) de KKT (1.2-1.5)<br />
do problema de minimização (1.1). Logo, ao aplicar o FAIPA no problema (3.1), irá<br />
convergir para um ponto (x ∗ , x ∗ , F (x ∗ )) que é de KKT (3.2-3.5) deste problema<br />
de minimização. Resta então garantir que x ∗ é uma solução do problema de<br />
complementaridade 1.1.13. Antes de enunciarmos o resultado que comprovará isto<br />
vamos a seguinte definição.<br />
Definição 7.4.1 Uma Função F : IR n → IR n é dita monótona em IR n se<br />
(x − y) T (F x) − F y)) ≥ 0 para todo x, y ∈ IR n .<br />
Uma observação importante aqui é o fato da jacobiana de F (x) ser semi definida<br />
positiva. (ver em [40],[10]).<br />
Teorema 7.4.1 Seja F (x) uma função diferenciável e monótona em algum<br />
conjunto aberto contendo IR n +. Se o ponto (x∗ , λ1∗, λ2∗) satisfaz as condições de KKT<br />
(3.2-3.5) do problema 3.1, então x ∗ é solução do problema de complementaridade<br />
1.1.13. Reciprocamente se x ∗ é solução do problema de complementaridade 1.1.13,<br />
então x∗ ,λ1∗ = x∗ e λ2∗ = F (x∗ ) formam uma tríplice que satisfaz as condições de<br />
KKT (3.2-3.5) do problema 3.1.<br />
Prova:<br />
Observe que ∇f(x ∗ ) = F (x ∗ ) + (∇F (x ∗ )) T x ∗ . Vamos mostrar a ida. Segue da<br />
equação (3.2) que<br />
F (x ∗ ) + (∇F (x ∗ )) T (x ∗ − λ 1∗<br />
) − λ 2∗<br />
= 0<br />
multiplicando nesta ultima equação (x∗ − λ1∗) T obtemos<br />
(x ∗ − λ 1∗<br />
) T F (x ∗ ) + (x ∗ − λ 1∗<br />
) T (∇F (x ∗ )) T (x ∗ − λ 1∗<br />
) − (x ∗ − λ 1∗<br />
) T λ 2∗<br />
= 0 (4.1)<br />
como (x∗ , λ1∗, λ2∗) satisfazem as condições de KKT da equação (3.3) temos que<br />
F (x∗ )λ1∗ = 0 e x∗λ2∗ = 0. Substituindo então estes valores na equação (4.1)<br />
(x ∗ ) T F (x ∗ ) + (λ 1∗<br />
) T λ 2∗<br />
+ (x ∗ − λ 1∗<br />
) T (∇F (x ∗ )) T (x ∗ − λ 1∗<br />
) = 0. (4.2)<br />
62
Como cada um dos três termo desta igualdade é positivo, pois segue das equações<br />
(3.4-3.5) x ∗ ≥ 0, F (x ∗ ) ≥ 0, λ 1∗<br />
≥ 0,λ2∗ ≥ 0 e da monotonicidade de F (x) segue que<br />
(x∗ −λ1∗ ) T (∇F (x∗ )) T (x∗ −λ1∗ ) ≥ 0. Portanto podemos concluir que x∗ •F (x∗ ) = 0,<br />
ou seja, x ∗ é uma solução do problema de complementaridade 1.1.13.<br />
A volta é imediata pois se x ∗ é uma solução do problema de complementaridade<br />
segue que x∗ ≥ 0, F (x∗ ) ≥ 0 e x∗T F (x∗ ) = 0. Assim tomando λ1∗ λ 2∗<br />
= x ∗ e<br />
= F (x ∗ ) e substituindo nas condições de KKT (3.2-3.5) obtemos o resultado<br />
esperado.<br />
Portanto com este resultado temos a garantia que a seqüência gerada pelo FAIPA<br />
converge para uma solução do problema de complementaridade e ainda quando x ∗<br />
for uma solução do problema de complementaridade 1.1.13 os pontos x ∗ e F (x ∗ )<br />
funcionam como os multiplicadores de Lagrange, λ 1∗<br />
e λ 2∗<br />
respectivamente, do<br />
problema (3.1). Assim como no algoritmo FAIPA existe uma familia de atualizações<br />
para os multiplicadores de Lagrange vamos propor a seguinte.<br />
Definição 7.4.2 Como as iterações ocorrem no interior da região viável, ou seja<br />
x > 0 e F (x) > 0 e da regra de atualização proposta em [25] vamos tomar<br />
λ 1 = x e λ 2 = F (x)<br />
Com atualização acima para λ 1 , a matriz Hessiana B que é definida por<br />
fica da seguinte forma<br />
B = ∇F + (∇F ) T n<br />
+ (xi − λ<br />
i=1<br />
1 i )∇ 2 Fi<br />
B = ∇F (x) + (∇F (x)) T<br />
(4.3)<br />
Observe que agora B só depende da primeira derivada que é o cálculo exato da<br />
Hessiana para esta atualização. Sendo ∇F (x) definida positiva, temos que B satisfaz<br />
as condições pedida pelo algoritmo FAIPA. Assim fazendo estas mudanças na matriz<br />
do sistema do FAIPA temos<br />
⎛<br />
∇F (x) + (∇F (x))<br />
⎜<br />
⎝<br />
T −(∇F ) T −X∇F −IF<br />
−I<br />
0<br />
⎞<br />
⎟<br />
⎠<br />
−IF 0 −X<br />
63<br />
(4.4)
onde I é a matriz identidade de ordem n, IF e X são matrizes diagonais definidas<br />
por IFi,i = Fi e Xi,i = xi para todo i = 1, ..., n.<br />
7.4.2.<br />
Vamos então calcular as três direções do algoritmo FAIPA através da atualização<br />
Para a direção d a x dada pelo sistema (1.8).<br />
ou<br />
⎛<br />
∇F (x) + (∇F (x))<br />
⎜<br />
⎝<br />
T −(∇F ) T −X∇F −IF<br />
−I<br />
0<br />
⎞<br />
⎟<br />
⎠<br />
−IF 0 −X<br />
⎛<br />
d<br />
⎜<br />
⎝<br />
a x<br />
λ1 a<br />
λ2 ⎞<br />
⎟<br />
⎠<br />
a<br />
=<br />
(∇F (x) + (∇F (x)) T )d a x −(∇F ) T λ 1 a −Iλ 2 a = −∇f<br />
−X∇F d a x −IFλ 1 a = 0<br />
−IFd a x −Xλ 2 a = 0<br />
⎛ ⎞<br />
−∇f<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ 0 ⎟<br />
⎝ ⎠<br />
0<br />
multiplicando a primeira linha do sistema acima pela matriz X e expressando a<br />
segunda linha em relação a IFλ 1 a e a terceira linha em relação a Xλ 2 a temos<br />
X(∇F (x) + (∇F (x)) T )d a x −X(∇F ) T IF −1 IFλa −Xλ 2 a = −X∇f<br />
e em seguida substituindo na primeira linha chegamos a<br />
IFλ 1 a = −X∇F d a x<br />
Xλ 2 a = −IFd a x<br />
[X∇F + X(∇F ) T + X(∇F ) T IF −1 X∇F + IF]d a x = −X∇f (4.5)<br />
Definindo M = IF + X∇F , segue que M T = IF + (∇F ) T X e ∇f = M T E segue<br />
da equação (4.5) e de manipulações algébricas que<br />
Md a x = −x • F (x)<br />
que é exatamente o sistema que fornece a direção de Newton para o algoritmo<br />
FDA-NCP.<br />
Para o sistema do calculo da direção desviada (1.9), d b x:<br />
64
(∇F (x) + (∇F (x)) T )d b x −(∇F ) T λ 1 b −λ 2 b = 0<br />
−X∇F d b x −IFλ 1 b = −Xω1<br />
−IFd b x −Xλ 2 b = −IFω2<br />
tomando a seguinte atualização para ω1 e ω2:<br />
Xω1 = ρ k E e IFω2 = ρ k E.<br />
(4.6)<br />
Segue da equação (4.6) e repetindo as mesmas contas acima que d b x pode ser<br />
calculado por:<br />
Md b x = ρ k E.<br />
que é o sistema da direção de restauração para o algoritmo FDA-NCP.<br />
Para a direção do arco d c x dada pelo sistema (1.10).<br />
(∇F (x) + (∇F (x)) T )d c x −(∇F ) T λ 1 c −λ 2 c = 0<br />
−X∇F d c x −IFλ 1 c = −X ˜ω1<br />
−IFd c x −Xλ 2 c = −IF ˜ω2<br />
e pela definição de ˜ω1 e ˜ω2 dada pela equação (1.11) podemos concluir que<br />
e<br />
pois a restrição x ≥ 0 é linear.<br />
˜ω1 = −F (x k + dx) + F (x k ) + ∇F (X)dx<br />
˜ω2 = 0<br />
(4.7)<br />
Segue da equação (4.7) e repetindo as mesmas contas acima temos que d c x é<br />
calculado por:<br />
Md c x = [I + X(∇F ) T IF −1 ] −1 X(∇F ) T IF −1 X ˜ω1.<br />
E como d c x é a direção que constitui o arco no FAIPA e ainda o sistema acima tem<br />
a mesma matriz do sistema do algoritmo FDA-NCP. Vamos propor então uma<br />
busca em arco no FDA-NCP usando a direção calculado por este sistema. Assim o<br />
65
algoritmo FDA-NCP modificado com uma busca linear em arco, que chamaremos<br />
de FAA-NCP, tem as seguintes mudanças no passo 1 e passo 2.<br />
Passo 1: Direção de Busca em arco.<br />
Resolva os sistemas:<br />
direção viável<br />
direção do arco<br />
[D F (x k ) + D x k∇F (x k )]d k = −H(x k ) + ρ k E,<br />
[D F (x k )+D x k∇F (x k )]d k a = [I+X k (∇F (x k )) T IF(x k ) −1 ] −1 X k (∇F (x k )) T IF(x k ) −1 X k ˜ ω k ,<br />
onde ˜ ω k = −F (x k + d k ) + F (x k ) + ∇F (x k )d k .<br />
Passo 2: Busca linear em arco.<br />
Define-se o tamanho do passo t k como sendo o primeiro valor da seqüência<br />
{1, ν, ν 2 , ν 3 , ...} satisfazendo<br />
1) xk + tkdk + tk2dk a ≥ 0<br />
2) F (xk + tkdk + tk2dk a) ≥ 0<br />
3) φ(xk ) + tkη∇φ(xk ) tdk ≥ φ(xk + tkdk + tk2dk a)<br />
xk+1 := xk + tkdk + tk2dk a e k := k + 1<br />
Também vamos propor uma modificação no algoritmo FAIPA. O que faremos é<br />
utilizaremos a atualização 7.4.2 e com isso a matriz Hessiana B será definida pela<br />
formula abaixo,<br />
B = ∇F (x) + (∇F (x)) T .<br />
No próximo capitulo apresentaremos resultado numéricos com os algoritmos aqui<br />
apresentados.<br />
66
Capítulo 8<br />
Problema de Complementaridade<br />
Reformulado<br />
Para a aplicação do algoritmo é muito importante termos as seguintes condições:<br />
• O conjunto Ω 0 ⊂ IR n ter interior não vazio para que o algoritmo possa gerar<br />
uma seqüência de pontos viáveis.<br />
• Achar um ponto inicial x 0 estritamente viável.<br />
• A matriz ∇H(x) ser não singular para x ∈ Ω.<br />
É claro que poderíamos formular exemplos onde não se verifica uma ou mais<br />
condições acima.<br />
Por exemplo:<br />
1. F (x) = (x − 1) 2 − 1. Seu conjunto de pontos viáveis é Ω = {0} ∪ [2, +∞)<br />
e o conjunto de pontos estritamente viáveis é Ω0 = (0, +∞). Existem<br />
duas soluções isoladas, x ∗ 1 = 0, solução degenerada, e x ∗ 2 = 2, solução não<br />
degenerada. Observe que não é possível gerar uma seqüência de pontos<br />
estritamente viáveis que converge para x∗ 1.<br />
⎛ ⎞<br />
2. F (x1, x2) :=<br />
⎝ ex2 1 −x2<br />
0<br />
⎠. Não possui pontos estritamente viáveis e a matriz<br />
∇H(x) é singular em IR 2 . O conjunto de pontos viáveis é Ω = IR 2 + e as<br />
soluções são x ∗ = [0; 0] degenerada e x ∗∗ = [0; 1] não degenerada.<br />
67
⎛<br />
3. F (x1, x2) := ⎝<br />
1<br />
⎞<br />
⎠. Não possui pontos estritamente viáveis, o<br />
− 1<br />
1<br />
(x1+x2−1) 2 +1<br />
conjunto de pontos viáveis é Ω = {(x ∈ IR 2 + |x1 + x2 = 1}, a matriz ∇H(x)<br />
é singular em Ω que tem interior vazio em IR 2 e a solução é x ∗ = [0; 1] não<br />
degenerada.<br />
Afim de resolver estes tipos de situações que por ventura podem ocorrer<br />
vamos propor uma reformulação do problema de complementaridade 1.1.13. Esta<br />
reformulação tem que possuir algumas condições básicas:<br />
• Uma solução do Problema de Complementaridade Reformulado, é sempre uma<br />
solução do Problema de Complementaridade 1.1.13.<br />
• Sempre é possível determinar um ponto inicial estritamente viável para o<br />
Problema de Complementaridade Reformulado.<br />
• O conjunto viável para o Problema de Complementaridade Reformulado tem<br />
interior não vazio.<br />
• A matriz jacobiana do sistema de equações associado ao Problema de<br />
Complementaridade Reformulado, seja não singular na região estritamente<br />
viável ou em algum subconjunto da região estritamente viável do Problema de<br />
Complementaridade Reformulado.<br />
8.1 Reformulando o Problema de<br />
Complementaridade<br />
Dado um Problema de Complementaridade definido como 1.1.13:<br />
Seja u ∈ IR n × IR, u = [x, z] e E ∈ IR n onde E = [1, ..., 1], então:<br />
Seja G : IR n × IR → IR n ⎛<br />
⎞<br />
F (x) + zE<br />
× IR, G(u) := G(x, z) := ⎝ ⎠.<br />
1<br />
Então dado um problema de complementaridade 1.1.13, chamaremos de<br />
Problema de Complementaridade Reformulado (PCR) o seguinte Problema de<br />
Complementaridade:<br />
68
Definição 8.1.1 O Problema PCR consiste em encontrar u ∈ IR n × IR tal que u<br />
satisfaz:<br />
onde<br />
G(u) = G(x, z) =<br />
É fácil ver que:<br />
u ≥ 0 , G(u) ≥ 0 e G(u) • u = 0.<br />
⎛<br />
⎞<br />
F (x) + zE<br />
⎝ ⎠ =<br />
1<br />
⎛<br />
⎞<br />
F1(x) + z<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ . ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ Fn(x) + z ⎟<br />
⎝<br />
⎠<br />
1<br />
• u ∗ = [x ∗ , z ∗ ] ∈ IR n+1 é uma solução do problema 8.1.1 se e somente se z ∗ = 0<br />
e x ∗ é uma solução de 1.1.13.<br />
• Um ponto estritamente viável para o problema 8.1.1 é obtido da seguinte<br />
forma:<br />
Dados x 0 ∈ IR n ++ e ɛ ∈ IR++,<br />
tome u 0 i = x 0 i e u 0 n+1 = z 0 = − mini=1,..,n{Fi(x 0 ), 0} + ɛ.<br />
É claro que ui > 0 e Gi(u) > 0 para todo i = 1, .., n, n + 1.<br />
• A matriz ∇G(u) é:<br />
⎛<br />
∇G(u) := ⎝ DF (x)+z + Dx∇xF (x)<br />
0E<br />
x<br />
T ⎞<br />
⎠ =<br />
1<br />
⎛<br />
= ⎝ ∇H(x) + Dz<br />
0E<br />
x<br />
T ⎞<br />
⎠<br />
1<br />
69<br />
(1.1)
• O conjunto ΩR = {u = (x, z) ∈ IR n × IR|u ≥ 0 e G(u) ≥ 0} tem interior não<br />
vazio, o que permite obter uma seqüência de pontos u k viáveis no interior de<br />
ΩR.<br />
A título de ilustração vamos aplicar esta técnica no exemplo (1):<br />
F (x) = (x − 1) 2 G(x, z) =<br />
− 1.<br />
⎛<br />
⎝ (x − 1)2 ⎞<br />
− 1 + z<br />
⎠<br />
1<br />
E o conjunto viável para G(x, z) é dado por<br />
ΩR = {(x, z) ∈ IR 2 |x ≥ 0 , z ≥ 0 e z ≥ 1 − (x − 1) 2 }<br />
3<br />
2.5<br />
2<br />
1.5<br />
1<br />
0.5<br />
0<br />
Região Viável<br />
Ω R<br />
0 0.5 1 1.5 2 2.5 3<br />
Figura 1.1: Região Viável ΩR<br />
Observe que nesta região temos duas soluções para o problema de<br />
complementaridade de G(x, z) que são pontos de acumulação em ΩR. Estes<br />
pontos são (0, 0), que é uma solução degenerada pois G(0, 0) = (0, 1), e (2, 0) que é<br />
uma solução não degenerada pois G(2, 0) = (0, 1).<br />
70
A Matriz ∇G(x, z) é dada por: ∇G(x, z) =<br />
⎛<br />
⎝ (x − 1)2 − 1 + 2(x − 1)x + z<br />
0<br />
⎞<br />
x<br />
⎠ .<br />
1<br />
Na solução (0, 0), ∇G(0, 0) é singular: ∇G(0, 0) =<br />
⎛<br />
0<br />
⎝<br />
0<br />
⎞<br />
0<br />
⎠<br />
1<br />
Já na solução (2, 0), ∇G(2, 0) é não singular: ∇G(2, 0) =<br />
⎛<br />
4<br />
⎝<br />
0<br />
⎞<br />
2<br />
⎠ .<br />
1<br />
71
Capítulo 9<br />
Resultados Numéricos<br />
Nesta seção aplicaremos os algoritmos proposto neste trabalho, FDA-NCP e<br />
FDA-MNCP, a uma bateria de problemas testes da literatura. Os problemas aqui<br />
tratados foram tirados de vários artigos como, [62], [20], [21], [47], [28], [8], [27], [17].<br />
Dividiremos este capítulo em três seções.<br />
A primeira será destinada a apresentação de uma coletânea de 16 problemas<br />
de complementaridade clássicos onde compararemos o desempenho do FDA-NCP<br />
com outros algoritmos. A segunda seção será destinada a casos especiais onde<br />
verificaremos a eficiência do uso da busca em arco, FAA-NCP, bem como a proposta<br />
de reformulação do problema de complementaridade apresentada no capítulo 8. Na<br />
terceira seção faremos uma bateria de problemas de complementaridade mista para<br />
verificar a eficiência do algoritmo FDA-MNCP.<br />
Para comparar os resultados numéricos com o FDA-NCP, utilizaremos o FAIPA e<br />
o algoritmo proposto em [28] que baseia-se na Função-NCP de Fischer-Burmeister<br />
[18]<br />
ψF B(a, b) = a + b − √ a 2 + b 2 .<br />
Chamaremos este algoritmo de FB. O FB usa a iteração de Newton para resolver o<br />
sistema (2.1),<br />
ΨF B(x) = 0<br />
72
apresentado no capítulo 2 e uma busca linear de Armijo na função potencial<br />
φF B(x) = ΨF B(x) 2 . O esquema de iteração é<br />
x k+1 = x k − t k [BF B(x k )] −1 ΨF B(x k ) t k ∈ {1, ν, ν 2 , ......}<br />
onde t k satisfaz φF B(x k+1 ) ≤ φF B(x k ) + t k η∇φF B(x k )d k e BF B pertence ao conjunto<br />
B-subdiferencial de ΨF B.<br />
Os algoritmos FDA-NCP e FAA-NCP utilizaram os seguintes parâmetros. O<br />
valor da constante que contribui com a direção de restauração é dada por ρ0 =<br />
α min[1, φ(x k ) β−1 ] onde α = 1<br />
4<br />
e β ∈ (1, 2]. Observe que quando aproximamos da<br />
solução o valor de ρ0 fica constante e igual a α. Os parâmetros com respeito a<br />
busca são η = 0.4, ν = 0.8 e serão usados em todos os algoritmos aqui tratados.<br />
Estudaremos dois casos para o parâmetro β, que influencia na taxa de convergência<br />
dos Algoritmos FDA-NCP e FDA-MNCP. Os valores são β = 1.1 e β = 2.<br />
O critério de parada utilizado foi φ(x k ) ≤ 10 −8 para os algoritmos FDA-NCP,<br />
FAA-NCP e FAIPA. Já para o algoritmo FB, como ele não é de pontos viáveis<br />
pedimos que ainda que |x k i | ≤ 10 −8 e |Fi(x k )| ≤ 10 −8 . Foi utilizado um notebook<br />
AcerSystem, AMD Turion(tm) 64 Moblie, Processador MK-36 2.0 GHz, 2GB de<br />
memória RAM e 512 KB L2 cache. O sistema operacional Windows XP e os<br />
algoritmos foram programados em MatLab.<br />
9.1 Coletânea de Problemas de<br />
Complementaridade<br />
Vamos descrever agora alguns problemas de complementaridade que compõem a<br />
primeira bateria de problemas testes.<br />
73
1. O Problema de Kojima-Josephy.<br />
Seja F : IR 4 → IR 4 definida por:<br />
F (x) :=<br />
⎛<br />
3x<br />
⎜<br />
⎝<br />
2 1 + 2x1x2 + 2x2 2 + x3 + 3x4 − 6<br />
2x2 1 + x2 2 + x1 + 3x3 + 2x4 − 2<br />
3x2 1 + x1x2 + 2x2 2 + 2x3 + 3x4 − 9<br />
x2 1 + 3x2 ⎞<br />
⎟<br />
⎠<br />
2 + 2x3 + 3x4 − 3<br />
Este problema tem uma solução x∗ = ( √ 6 1 , 0, 0, 2 2 ) com F (x∗ ) = (0, √ 6<br />
2<br />
(1.1)<br />
+2, 5, 0).<br />
A solução é não degenerada e a matriz ∇H(x ∗ ) é não singular. O ponto<br />
inicial usado é x 0 = [1, 1, 1, 1].<br />
2. O Problema de Kojima-Shindo.<br />
Seja F : IR 4 → IR 4 definida por:<br />
F (x) :=<br />
⎛<br />
3x<br />
⎜<br />
⎝<br />
2 1 + 2x1x2 + 2x2 2 + x3 + 3x4 − 6<br />
2x2 1 + x2 2 + x1 + 10x3 + 2x4 − 2<br />
3x2 1 + x1x2 + 2x2 2 + 2x3 + 9x4 − 9<br />
x2 1 + 3x2 ⎞<br />
⎟<br />
⎠<br />
2 + 2x3 + 3x4 − 3<br />
Este problema tem duas soluções x∗ = ( √ 6 1 , 0, 0, 2 2 ) com F (x∗ ) = (0, √ 6<br />
2<br />
(1.2)<br />
+2, 0, 0)<br />
e x ∗∗ = (1, 0, 3, 0) com F (x ∗∗ ) = (0, 31, 0, 4). A primeira solução é degenerada<br />
e a matriz ∇H(x ∗ ) é singular. A segunda solução é não degenerada e a matriz<br />
∇H(x ∗∗ ) é não singular.<br />
Pontos inicial um x0 = [1; .01; 3; .01].<br />
3. O Problema de Nash-Cournot, por Harker N = 5.<br />
Harker,[21], definiu este problema da seguinte forma:<br />
Vamos assumir que: Seja N o número de firmas . i = 1, ...N;<br />
x = (x1, x2, ..., xN) o vetor de produção . A firma i produz a quantidade xi<br />
da mercadoria.<br />
Q = N i=1 xi é a soma total da mercadoria produzida.<br />
p(Q) é a função demanda inversa.<br />
Ci(xi) é o custo de produção para a firma i.<br />
74
Neste exemplo, a função Ci(xi) e p(Q) são definidas da seguinte maneira.<br />
A função F é dada por:<br />
p(Q) = 5000 1 1<br />
− γ Q γ<br />
Ci(xi) = cixi + bi<br />
L<br />
1 + bi<br />
1 bi +1<br />
bi bi i xi<br />
Fi(x) = C ′<br />
i(xi) − p(Q) − xip ′<br />
(Q);<br />
Na forma vetorial a função F é dada como:<br />
com ci, Li, bi, γ ∈ IR + e γ ≥ 1.<br />
c = [10, 8, 6, 4, 2]<br />
b = [1.2, 1.1, 1, 0.9, 0.8]<br />
L = [5, 5, 5, 5, 5]<br />
e = [1, 1, 1, 1, 1]<br />
γ = 1.1<br />
F (x) = [c + L 1<br />
b x 1<br />
b − p(Q)(E − x<br />
γQ )]<br />
Tem solução x ∗ = [15.41, 12.50, 9.66, 7.16, 5.13] e a matriz ∇H(x ∗ ) é não<br />
singular.<br />
Ponto inicial x0 = [20; 20; 20; 20; 20].<br />
4. O Problema de Nash-Cournot, por Harker. N = 10.<br />
c = [5, 3, 8, 5, 1, 3, 7, 4, 6, 3]<br />
b = [1.2, 1, 0.9, 0.6, 1.5, 1, 0.7, 1.1, 0.95, 0.75]<br />
L = [10, 10, 10, 10, 10, 10, 10, 10, 10, 10]<br />
e = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]<br />
γ = 1.2<br />
Tem como solução x ∗ = [7.44, 4.09, 2.59, 0.93, 17.93, 4.09, 1.3, 5.59, 3.22, 1.67] e<br />
a matriz ∇H(x ∗ ) é não singular.<br />
Ponto inicial x0 = [20; 20; 20; 20; 20; 20; 20; 20; 20; 20].<br />
75<br />
.
5. O Problema de Nash-Cournot, por Pang e Murphy N = 5.<br />
A definição para este problema teste da seguinte da forma:<br />
Vamos assumir que: Seja N o número de firmas . i = 1, ...N;<br />
x = (x1, x2, ..., xN) o vetor de produção. A firma i produz a quantidade xi da<br />
mercadoria.<br />
Q = N i=1 xi é a soma total da mercadoria produzida.<br />
p(Q) é a função demanda inversa.<br />
Ci(xi) é o custo de produção para a firma i.<br />
Neste exemplo, a função Ci(xi) e p(Q) são definidas da seguinte maneira.<br />
p(Q) = 5000 1 1<br />
− γ Q γ<br />
Ci(xi) = cixi + bi<br />
1 + bi<br />
1<br />
− bi L<br />
i<br />
bi +1<br />
bi xi<br />
A diferença entre a versão de Harker para a de Pang e Murphy esta no sinal<br />
do expoente de Li.<br />
A função F é dada por:<br />
Fi(x) = C ′<br />
i(xi) − p(Q) − xip ′<br />
(Q);<br />
Na forma vetorial a função F pode ser dada como:<br />
com ci, Li, bi, γ ∈ IR+ e γ ≥ 1.<br />
c = [10, 8, 6, 4, 2]<br />
b = [1.2, 1.1, 1, 0.9, 0.8]<br />
L = [5, 5, 5, 5, 5]<br />
E = [1, 1, 1, 1, 1]<br />
γ = 1.1<br />
1<br />
−<br />
F (x) = [c + L b x 1<br />
b − p(Q)(E − x<br />
γQ )]<br />
Tem solução x ∗ = [36.92, 41.73, 43.68, 42.68, 39.19] e a matriz ∇H(x ∗ ) é não<br />
singular.<br />
Vamos tomar como ponto inicial x0 = [50; 50; 50; 50; 50].<br />
76<br />
.
6. O Problema de Nash-Cournot, por Pang e Murphy N = 10.<br />
c = [5, 3, 8, 5, 1, 3, 7, 4, 6, 3]<br />
b = [1.2, 1, 0.9, 0.6, 1.5, 1, 0.7, 1.1, 0.95, 0.75]<br />
L = [10, 10, 10, 10, 10, 10, 10, 10, 10, 10]<br />
E = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]<br />
γ = 1.2<br />
E solução x ∗ = [35.37, 46.57, 4.72, 19.91, 120.93, 46.57, 12, 42.56, 20.59, 32.98],<br />
com a matriz ∇H(x ∗ ) não singular.<br />
Ponto inicial x0 = [100; 100; 100; 100; 100; 100; 100; 100; 100; 100].<br />
7. O Exemplo de Mathiesen modificado [28].<br />
Seja<br />
F (x) :=<br />
⎛<br />
−x2 + x3 + x4<br />
⎜ x1 ⎜<br />
−<br />
⎜<br />
⎝<br />
4.5x3+2.7x4<br />
x2+1<br />
5 − x1 − 0.5x3+0.3x4<br />
x3+1<br />
3 − x1<br />
⎞<br />
⎟<br />
⎠<br />
(1.3)<br />
Neste exemplo temos infinitas soluções x ∗ = (x ∗ 1, 0, 0, 0), onde x ∗ 1 ∈ [0, 3]. Para<br />
x ∗ 1 = 0 ou 3, as soluções são degeneradas. Já para x ∗ 1 ∈ (0, 3) as soluções são<br />
não degeneradas.<br />
Para o ponto inicial x0 = [2.9; 2; 0.01; 3] temos como solução<br />
x ∗ = [2.5080, 0.0000, 0.0000, 0.0000].<br />
8. Exemplo de Programação não linear (Kanzow), [28].<br />
Considere o seguinte problema de programação convexa:<br />
5<br />
min θ(x) = exp ( (xi − i + 2)<br />
i=1<br />
2 ), sugeito a x ≥ 0.<br />
A condição de otimalidade de Kuhn-Tucker aplicado a este problema resulta<br />
no seguinte problema de complementaridade:<br />
77
F (x) := ∇θ(x) = 2 exp ( 5 i=1(xi − i + 2) 2 ⎛ ⎞<br />
x1 + 1<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ x2 ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
) ⎜ x3 − 1 ⎟<br />
⎜ ⎟<br />
⎜ ⎟<br />
⎜ x4 − 2 ⎟<br />
⎝ ⎠<br />
x5 − 3<br />
Este exemplo tem uma solução degenerada x ∗ = (0, 0, 1, 2, 3).<br />
Ponto inicial x0 = [5; 5; 5; 5; 5].<br />
9. Problema de Programação Não Linear de número 34 de Hock-Schittkowski<br />
[27]<br />
10. Problema de Programação Não Linear de número 35 de Hock-Schittkowski<br />
[27]<br />
11. Problema de Programação Não Linear de número 66 de Hock-Schittkowski<br />
[27]<br />
12. Problema de Programação Não Linear de número 76 de Hock-Schittkowski<br />
[27]<br />
13. Problema de Complementaridade Não linear de número 9 do Artigo [61]<br />
A função F (x) é definida por<br />
⎛<br />
x1 − 2<br />
⎜<br />
F (x) = ⎜ x<br />
⎝<br />
3 2 + x2 − x3 + 3<br />
x2 + 2x3 ⎞<br />
⎟<br />
⎠<br />
3 + x3 − 3<br />
.<br />
Este problema tem solução única, x ∗ = [2; 0; 1] com F (x ∗ ) = [0; 2; 0], logo é<br />
uma solução não degenerada. A matrix ∇H(x ∗ ) é não singular.<br />
Ponto inicial x 0 = [3; 3; 3].<br />
14. Problema de Complementaridade Não linear de número 10 do Artigo [61]<br />
A função F (x) é definida por<br />
⎛<br />
x1 − 2<br />
⎜<br />
F (x) = ⎜ x<br />
⎝<br />
3 2 + x2 − x3 + 1<br />
x2 + 2x3 ⎞<br />
⎟<br />
⎠<br />
3 + x3 − 3<br />
.<br />
78
Este problema tem solução única, x ∗ = [2; 0; 1] com F (x ∗ ) = [0; 0; 0], logo é<br />
uma solução degenerada. Portanto a matrix ∇H(x ∗ ) é singular.<br />
Ponto inicial x 0 = [3; 3; 3].<br />
15. Problema de Complementaridade Não linear de número 12 do Artigo [61]<br />
A função F (x) é definida por<br />
⎛<br />
⎜<br />
F (x) = ⎜<br />
⎝<br />
x3 1 − 8<br />
x2 + x3 2 + x2 − x3 + 3<br />
x2 + 2x3 ⎞<br />
⎟<br />
3 + x3 − 3<br />
⎟<br />
⎠<br />
x4 + 2x 3 4<br />
Este problema tem solução única, x ∗ = [2; 0; 1; 0] com F (x ∗ ) = [0; 2; 0; 0], logo<br />
é uma solução degenerada. Portanto a matrix ∇H(x ∗ ) é singular.<br />
Ponto inicial x 0 = [3; 3; 3; 3].<br />
16. Problema de complementaridade linear com a matriz B singular [8].<br />
⎛<br />
⎞<br />
⎛<br />
⎞ ⎛<br />
x2<br />
0 1 0<br />
⎜<br />
⎟<br />
⎜<br />
⎟ ⎜<br />
⎜<br />
⎟<br />
⎜<br />
⎟ ⎜<br />
F (x) = Bx + q = ⎜ x3 ⎟ com B = ⎜ 0 0 1 ⎟ , x = ⎜<br />
⎝<br />
⎠ ⎝<br />
⎠ ⎝<br />
⎛ ⎞<br />
0<br />
⎜ ⎟<br />
⎜ ⎟<br />
q = ⎜ 0 ⎟<br />
⎝ ⎠<br />
1<br />
x3 − x2 + 1<br />
0 −1 1<br />
.<br />
O conjunto de pontos viáveis, Ω = {(x1, x2, x3) ∈ IR 3<br />
+ | x3 ≥ x2 − 1}.<br />
.<br />
⎞<br />
x1<br />
⎟<br />
x2 ⎟<br />
Existem infinitas soluções: x ∗ = [0, λ ∗ , 0] com λ ∗ ∈ [0, 1] e x ∗∗ = [λ ∗∗ , 0, 0] com<br />
λ ∗∗ ≥ 0.<br />
Com λ ∗ = 0 e λ ∗ = 1, x ∗ é uma solução degenerada e para λ ∗ ∈ (0, 1) temos<br />
que x ∗ é uma solução não degenerada.<br />
Já a solução x∗∗ é sempre degenerada para todo λ∗∗ ⎛<br />
⎞ ≥ 0.<br />
x2 x1 0<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
A matriz ∇H(x) = ⎜ 0 x3 x2 ⎟<br />
⎝<br />
⎠<br />
0 −x3 2x3 − x2 + 1<br />
sempre não singular na região estritamente viável.<br />
E nas soluções ∇H(x) será sempre singular.<br />
∇H(x∗ ⎛<br />
λ<br />
⎜<br />
) = ⎜<br />
⎝<br />
∗ 0 0<br />
0 0 λ∗ 0 0 1 − λ∗ ⎞<br />
⎟<br />
⎠ e M∗∗<br />
⎛<br />
0 λ<br />
⎜<br />
= ⎜<br />
⎝<br />
∗∗ 0 0<br />
⎞<br />
0<br />
⎟<br />
0 ⎟<br />
⎠<br />
0 0 1<br />
.<br />
79<br />
x3<br />
⎠ e<br />
. Observe que ∇H(x) é
Para o ponto inicial x0 = [1, 1, 1], temos como solução x ∗∗ = [0, 0.5, 0].<br />
A tabela a seguir traz a relação dos problemas e o tamanho da variável x de cada<br />
um deles (n).<br />
Tabela 1.1: Coletânea de Problemas Teste<br />
No Problemas n No Problemas n<br />
1 Kojima-Josephy 4 9 PNL HS - 34 8<br />
2 Kojima-Shindo 4 10 PNL HS - 35 4<br />
3 Nash-Cournot (Harker) 5 11 PNL HS - 66 8<br />
4 Nash-Cournot (Harker) 10 12 PNL HS - 76 7<br />
5 Nash-Cournot (Pang e Murphy) 5 13 NCP - 01 3<br />
6 Nash-Cournot (Pang e Murphy) 10 14 NCP - 02 3<br />
7 Mathiesen Modificado 4 15 NCP - 03 4<br />
8 PNL Kanzow 5 16 Chen e Ye 3<br />
Agora segue a tabela com o históricos de cada um dos 16 problemas. Os dados<br />
na tabela são numero de iterações do algoritmo it, busca linear BL. O algoritmo<br />
FAIPA utilizaremos em dois casos o primeiro sem a atualização proposta nos<br />
multiplicadores de Lagrange (s/Atual.) e o segundo com a atualização proposta<br />
(c/Atual.).<br />
80
Tabela 1.2: Histórico dos Problemas Testes<br />
Alg FDA-NCP FAA-NCP FAIPA FB<br />
β 1.1 2 1.1 2 s/Atual. c/Atual. -<br />
Problema It BL It BL It BL It BL It BL It BL It BL<br />
1 11 0 8 0 11 0 7 0 10 11 9 14 5 6<br />
2 8 0 4 0 7 0 4 0 6 9 4 317 2 0<br />
3 15 0 12 0 16 0 12 0 11 14 11 170 7 11<br />
4 19 0 15 0 19 0 15 0 27 28 14 20 10 28<br />
5 13 0 9 0 13 0 9 0 10 12 7 9 4 0<br />
6 16 0 12 0 16 0 13 1 23 25 13 14 5 1<br />
7 10 7 9 12 14 49 15 57 13 15 9 12 4 20<br />
8 139 0 138 0 111 0 110 0 * * 85 86 * *<br />
9 19 39† 323 4572† 15 15 12 16 26 38 19 63 20 428<br />
10 11 0 13 9 11 0 13 9 14 17 12 14 9 44<br />
11 15 16† 121 1170† 15 16 13 17 35 162 15 18 21 270<br />
12 11 1 12 10 10 0 12 9 10 11 10 11 6 9<br />
13 14 0 10 0 14 0 10 0 15 16 9 10 5 1<br />
14 18 0 17 0 17 0 21 33 21 33 19 20 5 1<br />
15 18 0 17 0 17 0 17 0 22 23 19 20 6 5<br />
16 9 0 6 0 9 0 6 0 7 8 6 7 4 1<br />
O símbolo * indica que o algoritmo não convergiu a uma solução do problema<br />
de complementaridade. No problema 8 os algoritmos FAIPA s/Autal. e FB não<br />
convergiram. Nos demais casos os algoritmos convergiram a uma solução do<br />
problema de complementaridade.<br />
Nos problemas 9 e 11, onde aparece o símbolo † o passo da busca linear é muito<br />
pequeno, o que explica o número excessivo de busca linear. Nestes dois exemplos o<br />
que ocorre é que a seqüência gerada se “pega”em uma restrição do tipo Fi(x) = 0<br />
e xi = 0 o que complica o cálculo da direção já que a matriz fica muito mal<br />
condicionada. Então quando utilizamos a busca em arco, proposta no capítulo 7,<br />
o algoritmo FAA-NCP consegue se afastar das restrições e assim convergindo mais<br />
rápido a uma solução do problema de complementaridade.<br />
Apresentaremos um gráfico onde podemos verificar a convergência assintótica<br />
do algoritmo FDA-NCP, como vimos no Teorema 6.1.1. Usaremos os seguintes<br />
81
exemplos, Problema (1) Kojima-Josephy e Problema (13), com os valores para<br />
β = 1.1 e β = 2.<br />
Tx<br />
Tx<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0.3<br />
0.2<br />
0.1<br />
Tx= xk+1 −x ∗ <br />
x k −x ∗ <br />
0<br />
1 2 3 4 5 6 7 8 9 10<br />
2<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
Número de iterações<br />
Problema 13<br />
Problema 1<br />
Figura 1.1: Convergência Superlinear (β = 1.1)<br />
Problema 1<br />
Tx= xk+1 −x ∗ <br />
x k −x ∗ 2<br />
Problema 13<br />
0<br />
1 2 3 4 5 6 7 8<br />
Número de Iterações<br />
Figura 1.2: Convergência Quadrática (β = 2)<br />
Apresentaremos agora resultados obtidos, de quatro exemplos de<br />
complementaridade linear onde vamos tomar em cada um deles diferentes<br />
82
valores de n, dimensão do problema. Nos quatro problemas, a matriz jacobiaca<br />
∇F (x) é simétrica e definida positiva. E os quatro exemplos possui solução única.<br />
A função F destes exemplos é da forma F (x) = Cx + c, onde C é uma matriz<br />
quadrada de ordem n e c é um vetor fixo de IR n composto por 1 s em todas as<br />
coordenadas.<br />
No caso de complementaridade linear não faz muito sentido usarmos a versão<br />
FAA-NCP, pois ˜ω1 ≡ 0. Portanto aqui só compararemos os algoritmos FDA-NCP<br />
(β = 1.1 e β = 2), com o FB.<br />
Vamos definir cada um dos problemas.<br />
1. Problema 17 [20].<br />
A matriz C é construída da seguinte forma for<br />
e a matriz é definida por<br />
i = 2, 3, ..., n C(i − 1, i) = −1 , C(i, i − 1) = −1<br />
Ponto inicial é x 0 = [1; 1; ...; 1].<br />
2. Problema 18 [28].<br />
A matriz C é definida por<br />
C = C + 4Idn.<br />
i = 1, 2, ..., n C(i, i) = i<br />
n .<br />
Ponto inicial é x 0 = [n + 1; n; n − 1; ...; 2].<br />
3. Problema 19 [48], [60].<br />
A matriz C é definida por<br />
O ponto inicial é x 0 = [2; 2; ...; 2].<br />
⎛<br />
0 1 1 · · · 1<br />
⎞<br />
⎜ 0<br />
⎜<br />
C = ⎜ · · ·<br />
⎜ 0<br />
⎝<br />
0<br />
· · ·<br />
0<br />
1<br />
0<br />
1<br />
0<br />
· · ·<br />
· · ·<br />
· · ·<br />
⎟<br />
1 ⎟<br />
1 ⎟<br />
⎠<br />
0 0 0 0 · · · 0<br />
83
4. Problema 20 ([15], [60]).<br />
A matriz C é construída da seguinte forma<br />
i, j = 1, 2, ..., n se j = i ⇒ A(i, j) = 4(i − 1) + 1 e B(i, i) = A(i, i)<br />
Caso contrário<br />
e fica definida por<br />
A(i, j) = 4(i − 1) + 2<br />
C = triu(A) + triu(A) T − B<br />
onde triu(A) significa tomar a parte triangular superior de A.<br />
O ponto inicial é x 0 = [1, 1, ...1].<br />
Segue abaixo as tabelas referentes a cada um dos problemas acima.<br />
Tabela 1.3: Iterações para o Problema 17<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
8 12 0 7 0 5 2<br />
16 12 0 7 0 5 2<br />
32 13 0 8 0 6 1<br />
64 13 0 8 0 6 1<br />
128 14 0 10 2 6 1<br />
256 14 0 9 0 6 1<br />
512 15 0 11 2 6 1<br />
1024 15 0 10 0 6 1<br />
2048 16 0 12 2 6 1<br />
84
Tabela 1.4: Iterações para o Problema 18<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
8 13 0 8 0 4 0<br />
16 15 0 10 0 5 0<br />
32 17 0 12 0 5 0<br />
64 20 1 15 2 5 0<br />
128 22 4 17 5 5 0<br />
256 24 7 20 9 5 0<br />
512 26 10 22 12 5 0<br />
1024 28 13 24 15 5 0<br />
2048 30 16 27 19 5 0<br />
Tabela 1.5: Iterações para o Problema 19<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
8 15 1 10 1 4 0<br />
16 16 3 12 3 4 0<br />
32 18 6 13 6 4 0<br />
64 20 8 15 8 4 0<br />
128 21 11 12 11 4 0<br />
256 23 14 13 14 4 0<br />
512 24 17 15 17 4 0<br />
1024 26 20 16 20 4 0<br />
2048 27 24 17 24 4 0<br />
85
Tabela 1.6: Iterações para o Problema 20<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
8 17 0 14 0 7 16<br />
16 20 0 16 0 7 29<br />
32 23 0 19 0 8 54<br />
64 25 0 22 0 10 122<br />
128 28 0 24 0 9 77<br />
256 30 1 27 1 15 334<br />
512 33 1 30 1 7 39<br />
1024 35 1 32 1 12 232<br />
2048 38 2 35 2 10 139<br />
Com estes quatro problemas testes podemos ver que o desempenho do algoritmo<br />
FDA-NCP é muito satisfatório quando comparamos em cada problemas o número de<br />
iterações como respeito a variação do tamanho do problema. As iterações e buscas<br />
lineares aumentam muito pouco em relação a n. Em todos os caso o passo da busca<br />
terminou com t = 1.<br />
Para fechar esta etapa de problemas teste. Rodamos o problema 1,<br />
Kojima-Josephy (K-J), e o problema 2, Kojima-Shindo (K-S), para um conjuntos de<br />
100 pontos iniciais viáveis. Estes pontos foram gerados aleatoriamente no intervalo<br />
[1, 100]. O resultado se encontra na tabela abaixo.<br />
Tabela 1.7: Histórico dos Problemas Testes<br />
Alg FDA-NCP FAA-NCP FAIPA FB<br />
β 1.1 2 1.1 2 s/Atual. c/Atual. -<br />
Problema C NC C NC C NC C NC C NC C NC C NC<br />
K-J 100% - 100% - 100% - 100% - 38% 62% 99% 1% 32% 68%<br />
K-S 100% - 100% - 100% - 100% - 48% 52% 100% - 95% 5%<br />
Para o problema de Kojima-Josephy (K-J) o algoritmo FDA-NCP e FAA-NCP<br />
convergiu em todos os pontos gerados, enquanto os algoritmos FAIPA sem a<br />
atualização em λ convergiu só em 38% dos 100 pontos gerados e o FAIPA com<br />
86
atualização convergiu em 99% dos 100 pontos gerados e o algoritmo FB só convergiu<br />
em 32% dos 100 pontos gerados.<br />
Para o problema de Kojima-Shindo (K-S), que possui duas soluções uma degenerada<br />
e outra não degenerada. Os algoritmos FDA-NCP e FAA-NCP convergiu em 100%<br />
dos pontos gerados e todos para a solução degenerada. Já o algoritmo FAIPA sem<br />
a Atualização em λ convergiu em 48% dos 100 pontos gerados, sendo que 35%<br />
dos 100 pontos convergiu para a solução degenerada e 13% dos 100 pontos gerados<br />
convergiu para a solução não degenerada. Para o FAIPA com a atualização em λ<br />
a convergência se deu em todos 100 pontos gerados, sendo que 64% convergiu para<br />
a solução degenerada e 36% para a solução não degenerada. E por fim o algoritmo<br />
FB convergiu para em 95% dos pontos gerados sendo que 85% dos 100 pontos foi<br />
para a solução degenerada e 10% foi para a solução não degenerada.<br />
Com isso podemos verificar que os algoritmos FDA-NCP, FAA-NCP são muito mais<br />
robusto dentro da região viável dos os outros algoritmos. Reafirmado assim os<br />
resultados teóricos do capítulo 4 sobre convergência Global.<br />
Destacamos também o algoritmo FAIPA com a atualização em λ que obteve um<br />
desempenho muito superior ao FAIPA sem a atualização.<br />
9.2 Casos especiais para FDA-NCP<br />
Nesta seção veremos alguns exemplos em que o uso do arco se faz necessário<br />
e também alguns casos em que a reformulação proposta no capítulo 7 é útil.<br />
Nos casos em que os pontos da seqüência gerada pelo algoritmo FDA-NCP se<br />
pegam em uma restrição Fi(x) = 0 e/ou xi = 0 a velocidade de convergência fica<br />
comprometida. Este fato pode ser ocasionado pelo mal condicionamento da matriz<br />
do sistema próximo da solução, que acaba atrapalhando o calculo da direção de<br />
busca. Pode ocorrer também o efeito Maratos o que acarreta em um número grande<br />
de iterações e buscas lineares. Nestes casos nos iremos utilizar o FAA-NCP, que<br />
é a versão do FDA-NCP com a busca em arco como foi proposto no capítulo 7.<br />
Também aplicaremos a reformulação no problema de complementaridade proposta<br />
no capítulo 8 para casos em que não temos uma região estritamente viável com<br />
87
interior não vazio ou quando a matriz do sistema do FDA-NCP é singular na região<br />
viável.<br />
1. Problema da “Meia Lua”.<br />
⎛<br />
Seja F (x1, x2) := ⎝<br />
−1 +<br />
1 − (x1−1.5) 2<br />
(1.5) 2<br />
O conjunto de pontos viáveis é<br />
− (x2 − 1.5) 2<br />
⎞<br />
⎠ .<br />
(x1−3) 2<br />
(1.5) 2 + (x2 − 1.5) 2<br />
Ω = {(x1, x2) ∈ IR 2<br />
+ | 1 − (x1 − 3) 2<br />
(1.5) 2<br />
≤ (x2 − 1.5) 2 ≤ 1 − (x1 − 1.5) 2<br />
(1.5) 2<br />
Temos duas soluções x ∗ = [2.25; 2.366] e x ∗∗ = [2.25; 0.634]. A matriz M é não<br />
singular nas duas soluções.<br />
Aplicando o algoritmo FDA-NCP e o FAA-NCP para os seguintes pontos<br />
iniciais x 0∗<br />
= [1.5, 2.2] e x 0∗∗<br />
= [1, 1], veremos que a seqüência gerada pelos<br />
algoritmos convergem respectivamente para x ∗ e x ∗∗ como mostra a tabela<br />
abaixo.<br />
Tabela 2.1: Resumo dos iterações<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Ponto Inicial It BL It BL It BL It BL<br />
x 0∗<br />
x 0∗∗<br />
8 15 278 4001 5 5 10 12<br />
190 3459 4600 121959 7 11 12 18<br />
Como podemos notar na tabela (2.1), quando utilizamos o algoritmo<br />
FDA-NCP verificamos um grande número de iterações do algoritmo bem como<br />
um número excessivo de busca linear. Já para o algoritmo FAA-NCP vemos<br />
uma redução drástica nas iterações. Segue abaixo um gráfico com o esquema<br />
das iterações para o caso β = 2, onde podemos ver que no caso do FDA-NCP<br />
a seqüência gerada se arrasta pela restrição enquanto o FAA-NCP se afasta<br />
das restrições se mantendo mais no interior da região viável.<br />
88<br />
}
Eixo Y<br />
2.4<br />
2.2<br />
2<br />
1.8<br />
1.6<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
Região<br />
Viável<br />
x 0∗∗<br />
x 0∗<br />
Soluções<br />
do NCP<br />
0 0.5 1<br />
Eixo X<br />
1.5 2<br />
Figura 2.1:<br />
⎛<br />
2. O problema do peixe. Seja F (x1, x2) := ⎝ x2 − 2(x1 − 1) 2<br />
⎞<br />
⎠ .<br />
O conjunto de pontos viáveis é:<br />
−x1 − x 2 2 + 1<br />
Ω = {(x1, x2) ∈ IR 2 + | x1 ≤ −x 2 2 + 1 e x2 ≥ 2(x1 − 1) 2 }. Existem duas soluções<br />
x ∗ = [1 − 1<br />
3√ 4 ; 1<br />
3√ 2 ] não degenerada e x ∗∗ = [1; 0] degenerada. Logo a matriz do<br />
sistema na solução x ∗ é não singular e a matriz do sistema em x ∗∗ é singular.<br />
Aplicando o algoritmo FDA-NCP e o FAA-NCP para os seguintes pontos<br />
iniciais x0∗ = [0.6; 0.6] e x0∗∗ = [0.7; 0.4], veremos que a seqüência gerada pelos<br />
algoritmos convergem respectivamente para x ∗ e x ∗∗ como mostra a tabela<br />
abaixo.<br />
Tabela 2.2: Resumo dos iterações<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Ponto Inicial It BL It BL It BL It BL<br />
x 0∗<br />
x 0∗∗<br />
x ∗<br />
x ∗∗<br />
7 1 44 298 7 0 5 0<br />
940 21697 50001 2450471 29 173 1729 53285<br />
89
Como podemos notar na tabela (2.1), para a solução não degenerada, x ∗ ,<br />
houve uma melhora nas iterações quando usamos o algoritmo FAA-NCP. Para<br />
a solução que é degenerada a matriz do sistema fica mal condicionada a medida<br />
que a seqüência gerada se aproxima da solução x ∗∗ . Isso reflete no grande<br />
número de iterações do algoritmo FDA-NCP bem como um número excessivo<br />
de busca linear. E pelo fato do mal condicionamento do sistema linear próximo<br />
da solução x ∗∗ , mesmo quando usamos o FAA-NCP, temos ainda um número<br />
razoável de busca linear. Segue abaixo um gráfico com o esquema das iterações<br />
para o caso β = 2.<br />
Eixo Y<br />
0.8<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0.3<br />
0.2<br />
0.1<br />
x ∗<br />
FAA−NCP<br />
x 0∗<br />
x 0∗∗<br />
FDA−NCP<br />
x ∗∗<br />
0<br />
0.2 0.3 0.4 0.5 0.6 0.7<br />
Eixo X<br />
0.8 0.9 1 1.1<br />
Figura 2.2:<br />
3. Para F (x) := (x − 1) 2 − 1 temos o conjunto de pontos viáveis é<br />
Ω = {0}∪[2, +∞) e o conjunto de pontos estritamente viáveis é Ω0 = (2, +∞).<br />
Existem duas soluções isoladas, x ∗ = 0, solução degenerada, e x ∗∗ = 2, solução<br />
não degenerada.<br />
O problema ⎛ reformulado fica da seguinte forma:<br />
G(u) = ⎝ (x − 1)2 ⎞<br />
− 1 + z<br />
⎠, onde u = (x, z) e com o conjunto viável sendo<br />
1<br />
ΩR = {(x, z) ∈ IR 2 |x ≥ 0 , z ≥ 0 e z ≥ 1 − (x − 1) 2 }<br />
e o conjunto de pontos estritamente viável<br />
90
ΩR+ = {(x, z) ∈ IR 2 |x > 0 , z > 0 e z > 1 − (x − 1) 2 }.<br />
Existem duas soluções, u ∗ = (x ∗ , z ∗ ) = (0, 0) solução degenerada e u ∗∗ =<br />
(x ∗∗ , z ∗∗ ) = (2, 0) solução não degenerada.<br />
Aplicando o algoritmo FDA-NCP e o FAA-NCP para os seguintes pontos<br />
iniciais u 0∗<br />
= [0.15; 1.2775] e u 0∗∗<br />
= [3; 2], veremos que a seqüência gerada<br />
pelos algoritmos convergem respectivamente para u ∗ e u ∗∗ como mostra a<br />
tabela abaixo.<br />
Tabela 2.3: Resumo dos iterações<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Ponto Inicial It BL It BL It BL It BL<br />
u 0∗<br />
u 0∗∗<br />
1779 50425 15 51 1760 49739 12 33<br />
9 0 6 0 8 0 6 0<br />
Veja o gráfico das iterações com β = 2 e para o algoritmo FAA-NCP.<br />
2.5<br />
1.5<br />
1<br />
0.5<br />
4. Seja F (x1, x2) :=<br />
3<br />
2<br />
0<br />
u 0∗<br />
Região Viável<br />
u ∗ u ∗∗<br />
⎛<br />
0 0.5 1 1.5 2 2.5 3<br />
⎝ ex2 1 −x2<br />
0<br />
⎞<br />
⎠.<br />
Figura 2.3:<br />
u 0∗∗<br />
O conjunto de pontos viáveis é Ω = IR 2 + mas não existe ponto estritamente<br />
91
viável. Este problema tem infinitas soluções da forma x ∗ = (0, x ∗ 2) ∈ IR 2 para<br />
todo x ∗ 2 ≥ 0.<br />
Temos uma solução degenerada para x ∗ 2 = 0 e para x ∗ 2 > 0 tem infinitas<br />
soluções não ⎛ degenerada.<br />
A matriz<br />
0 0<br />
⎠ é singular para todo x ∈ IR 2 +.<br />
Portanto, reformulando este problema, teremos:<br />
⎝ (1 + 2x2 1)e x2 1 −x2 −x1e x2 1 −x2<br />
O conjunto de pontos viáveis: ΩG = IR 3 +.<br />
O conjunto de pontos estritamente: ΩG+ = IR 3 ++.<br />
⎛<br />
⎜<br />
MG(x, z) = ⎜<br />
⎝<br />
⎞<br />
⎛<br />
e<br />
⎜<br />
G(x, z) = ⎜<br />
⎝<br />
x2 1−x2 ⎞<br />
+ z<br />
⎟<br />
z ⎟<br />
⎠<br />
1<br />
(1 + 2x 2 1)e x2 1 −x2 + z −x1e x2 1 −x2 x1<br />
⎞<br />
0 z<br />
⎟<br />
x2 ⎟<br />
⎠<br />
0 0 1<br />
Observe que MG é não singular na região estritamente viável mas é singular<br />
nas soluções do problema em questão.<br />
Ponto inicial x0 = [1, 1, 1]; temos como solução o ponto x ∗ = [0, 1, 0]. Abaixo<br />
segue a tabela com o resumo das iterações.<br />
Tabela 2.4: Resumo dos iterações<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Ponto Inicial It BL It BL It BL It BL<br />
x 0 6 0 5 0 189 8992 369 17601<br />
92
Eixo Z<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
2<br />
1.5<br />
1<br />
Eixo Y<br />
Solução<br />
do PC<br />
0.5<br />
0<br />
0<br />
0.1<br />
0.2<br />
Ponto<br />
Inicial<br />
0.3<br />
Iterações<br />
0.4<br />
Eixo X<br />
Figura 2.4: Gráfico da seqüência de pontos<br />
Neste caso o arco não ajuda muito, pois, a matriz do sistema é singular na<br />
solução do problema.<br />
⎛<br />
5. Seja F (x1, x2) := ⎝<br />
1<br />
1<br />
(x1+x2−1) 2 +1<br />
⎞<br />
⎠.<br />
− 1<br />
Para esta função também não temos uma região estritamente viável. A região<br />
viável é Ω = {x ∈ IR 2 |x1 +x2 = 1}, que não tem interior vazio, e muito memos<br />
pontos estritamente viáveis, pois para todo x0 ∈ Ω temos que F (x0 ⎛<br />
) = ⎝ 1<br />
⎞<br />
⎠.<br />
0<br />
Este problema tem única solução x∗ = [0; 1]. E a matriz ∇H(x) para todo<br />
x ∈ Ω é:<br />
que é singular em Ω.<br />
⎛ ⎞ ⎛<br />
1 0<br />
⎝ ⎠ + ⎝<br />
0 0<br />
x1<br />
⎞ ⎛ ⎞ ⎛ ⎞<br />
0 0 0 1 0<br />
⎠ ⎝ ⎠ = ⎝ ⎠<br />
0 x2 0 0 0 0<br />
O problema reformulado fica da seguinte forma:<br />
O conjunto de pontos viáveis: ΩG = {(x, z) ∈ IR 2 + × IR+ | z ≥<br />
0.5<br />
0.6<br />
0.7<br />
0.8<br />
0.9<br />
1<br />
(x1+x2−1) 2<br />
(x1+x2−1) 2 +1 }.<br />
O conjunto de pontos estritamente viáveis: ΩG+ = {(x, z) ∈<br />
93
IR 2<br />
++ × IR++ | z ><br />
⎛<br />
⎜<br />
∇G(x, z) = ⎜<br />
⎝<br />
(x1+x2−1) 2<br />
(x1+x2−1) 2 +1 }.<br />
⎛<br />
⎜<br />
G(x, z) = ⎜<br />
⎝<br />
1 + z<br />
−(x1+x2−1) 2<br />
(x1+x2−1) 2 + z +1<br />
1<br />
1 + z 0<br />
(x1+x2−1) 2<br />
(x1+x2−1)<br />
x1<br />
2 2(x1+x2−1)<br />
− +1 ((x1+x2−1) 2 +1) 2 x2<br />
⎞<br />
⎟<br />
x2 ⎟<br />
⎠<br />
0 0 1<br />
−2(x1+x2−1)<br />
((x1+x2−1) 2 +1) 2 x2 z −<br />
Ponto inicial x0 = [1, 1, 0.9]; e solução x ∗ = [0, 1, 0].<br />
Tabela 2.5: Resumo dos iterações<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Ponto Inicial It BL It BL It BL It BL<br />
x 0 484 8082 5001 171054 55 369 2664 75139<br />
O fato da matriz do sistema na solução ser singular atrapalha o cálculo da<br />
direção de busca tanto para o algoritmo FDA-NCP quanto para o algoritmo<br />
FAA-NCP. E principalmente para β = 2. Segue o gráfico do esquema das<br />
iterações para o FAA-NCP com β = 1.1 onde temos a região viável acima da<br />
superfície Z definida no gráfico abaixo.<br />
Eixo Z<br />
1<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
0.8<br />
0.6<br />
Eixo Y<br />
Solução<br />
do PC<br />
0.4<br />
0.2<br />
0<br />
Superfície<br />
Z(x,y)<br />
Iterações<br />
⎞<br />
⎟<br />
⎠<br />
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1<br />
Eixo X<br />
Figura 2.5:<br />
94<br />
Ponto Inicial
Para os dois algoritmos é muito importante o fato da matriz ser não singular,<br />
principalmente nos casos em que ocorre o efeito Maratos. Já a idéia da reformulação<br />
do problema de complementaridade é evidente que não é uma boa técnica para<br />
resolver casos degenerados. Mas para determinar um ponto estritamente viável ela<br />
já ajuda muito.<br />
É o que veremos a seguir.<br />
Para fechar os testes numéricos com os algoritmos FDA-NCP e FAA-NCP. Nos<br />
reescrevemos todos os 16 problemas testes da seção 9.1 como proposto no capítulo<br />
8. E geramos aleatoriamente pontos estritamente viáveis conforme a regra (1.1)<br />
definida no capítulo 8. A tabela (2.6) mostra o número de iterações (It) e da busca<br />
linear (BL) de cada problema.<br />
95
Tabela 2.6: Problemas Testes Reformulados<br />
Alg FDA-NCP FAA-NCP<br />
β 1.1 2 1.1 2<br />
Problema It BL It BL It BL It BL<br />
1 23 30 19 30 57 445♯♯ 46 396<br />
2 13 8 9 8 12 6 8 6<br />
3 22 57 18 57 42 275♯ 38 275♯<br />
4 39 213♯ 35 213♯ 63 439♯ 59 439♯<br />
5 89 1019♯ 127 1306♯ 327 5117♯ 323 5117♯<br />
6 138 1796♯ 180 2125♯ 602 10984♯ 598 10984♯<br />
7 12 1 8 1 87 2205♯ 94 2330♯<br />
8 76 458♯ 76 463♯ 33 65 32 65<br />
9 32 168† 166 1785♯ 17 15 20 36<br />
10 10 0 12 8 10 0 12 8<br />
11 13 6 10 6 13 2 15 11<br />
12 11 2 9 6 11 2 11 8<br />
13 10 0 6 0 10 0 6 0<br />
14 15 1 14 1 15 0 32 173♯<br />
15 15 0 14 0 15 0 14 0<br />
16 10 0 6 0 10 0 6 0<br />
Em todos os problemas da tabela (2.6) tivemos a convergência dos algoritmos a<br />
um ponto solução. Apesar do numero excessivo de busca linear no problemas em<br />
que aparece o símbolo ♯, as buscas só ocorreram no inicio das iterações. Nas últimas<br />
iterações o tamanho do passo da busca foi igual a t = 1. Somente no problema em<br />
que aparece o símbolo †, é que o passo final foi menor que 1. E nos demais casos a<br />
busca linear sempre terminou com t = 1.<br />
96
9.3 Problemas de Complementaridade Mista<br />
Apresentaremos agora alguns problemas de complementaridade mista tirada da<br />
literatura afim de testar o algoritmo FDA-MNCP. Vamos a uma breve descrição<br />
dos problemas.<br />
Os quatro primeiros problemas são problemas de minimização com restrições (1.1).<br />
E das condições de KKT empregada neles, podemos descreve-los em problemas de<br />
complementaridade mista.<br />
1. Função Objetivo:<br />
Restrições:<br />
f(x) = (x1 − 2) 2 + (x2 − 1) 2<br />
h(x) = x1 − 2x2 + 1 = 0<br />
g(x) = 1<br />
4 x2 1 − x 2 2 + 1 ≥ 0<br />
Que em complementaridade mista fica sob a forma:<br />
F (x, λ, µ) = g(x),<br />
⎛<br />
⎞<br />
h(x)<br />
Q(x, λ, µ) = ⎝<br />
⎠<br />
∇f(x) + λ∇h(x) − µ∇g(x)<br />
onde λ e µ são os multiplicadores de Lagrange de h(x) e g(x) respectivamente.<br />
Temos o seguinte problema de complementaridade mista<br />
2. Função Objetivo:<br />
Restrições:<br />
µ ≥ 0 , F (x, λ, µ) ≥ 0 e<br />
µ • F (x, λ, µ) = 0<br />
Q(x, λ, µ) = 0<br />
f(x) = (x1 + 3x2 + x3) 2 + 4(x1 − x2) 2<br />
⎛<br />
⎞<br />
1 − x1 − x2 − x3<br />
h(x) = ⎝<br />
⎠ = 0<br />
6x2 + 4x3 − x1 − x4 − 3<br />
x ≥ 0<br />
Que em complementaridade mista fica sob a forma:<br />
F (x, λ) = ∇f(x) + λ∇h(x),<br />
97
Q(x, λ) = h(x)<br />
onde λ é o multiplicador de Lagrange de h(x).<br />
Temos o seguinte problema de complementaridade mista<br />
3. Função Objetivo:<br />
x ≥ 0 , F (x, λ) ≥ 0 e<br />
10<br />
<br />
f(x) = xi[ci + ln(<br />
i=1<br />
x • F (x, λ) = 0<br />
Q(x, λ) = 0<br />
xi<br />
10 i=1 xi<br />
onde c = −[6.089; 17.164; 34.054; 5.914; 24.721; 14.986; 24.1; 10.708; 26.662; 22.170].<br />
Restrições:<br />
⎛<br />
⎞<br />
x1 + 2x2 + 2x3 + x6 + x10 − 2<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
h(x) = ⎜ x4 + 2x5 + x6 + x7 − 1 ⎟ = 0<br />
⎝<br />
⎠<br />
x3 + 2x7 + x8 + 2x9 + x10 − 1<br />
x ≥ 0<br />
Que em complementaridade mista fica sob a forma:<br />
F (x, λ) = ∇f(x) + λ∇h(x),<br />
Q(x, λ) = h(x)<br />
onde λ é o multiplicador de Lagrange de h(x).<br />
Temos o seguinte problema de complementaridade mista<br />
4. Função Objetivo:<br />
onde x = [x1; x2; x3]<br />
Restrições:<br />
x ≥ 0 , F (x, λ) ≥ 0 e<br />
)]<br />
x • F (x, λ) = 0<br />
Q(x, λ) = 0<br />
f(x) = 1000 − x T x − x 2 2 − x1x2 − x1x3<br />
⎛<br />
x<br />
h(x) = ⎝<br />
T ⎞<br />
x − 25<br />
⎠ = 0<br />
8x1 + 14x2 + 7x3 − 56<br />
98<br />
x ≥ 0
Que em complementaridade mista fica sob a forma:<br />
F (x, λ) = ∇f(x) + λ∇h(x),<br />
Q(x, λ) = h(x)<br />
onde λ é o multiplicador de Lagrange de h(x).<br />
Temos o seguinte problema de complementaridade mista<br />
x ≥ 0 , F (x, λ) ≥ 0 e<br />
5. Problema de Kojima-Shindo-Modificado.<br />
x • F (x, λ) = 0<br />
Q(x, λ) = 0<br />
Seja F : IR 5 → IR 4 definida por:<br />
F (x, y) :=<br />
⎛<br />
3x<br />
⎜<br />
⎝<br />
2 1 + 2x1x2 + 2x2 2 + x3 + 3x4 − 2 − y<br />
2x2 1 + x2 2 + x1 + 10x3 + 2x4 + 2 − y<br />
3x2 1 + x1x2 + 2x2 2 + 2x3 + 9x4 − 5 − y<br />
x2 1 + 3x2 ⎞<br />
⎟<br />
⎠<br />
2 + 2x3 + 3x4 + 1 − y<br />
e Q : IR 5 → IR definida por :<br />
Q(x, y) =<br />
4<br />
xi − y<br />
i=1<br />
Tem como solução x ∗ = [1; 0; 3; 0] e y ∗ = 4.<br />
6. Problema de Kanzow-Modificado.<br />
Seja F : IR 6 → IR 5 definida por:<br />
F (x, y) := 2 exp ( 5 i=1(xi − i + 2) 2 ⎛<br />
⎞<br />
x1 + y − 5<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ x2 + y − 6 ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
) ⎜ x3 + y − 7 ⎟<br />
⎜<br />
⎟<br />
⎜<br />
⎟<br />
⎜ x4 + y − 8 ⎟<br />
⎝<br />
⎠<br />
x5 + y − 9<br />
e Q : IR 5 → IR definida por :<br />
Q(x, y) = (<br />
5<br />
xi − y) 2 + y − 6<br />
i=1<br />
Este exemplo tem uma solução degenerada x ∗ = (0, 0, 1, 2, 3) e y ∗ = 6.<br />
99
7. Um problema de Complementaridade Mista Linear.<br />
e<br />
⎛<br />
0.2 0.1 0 0 0 0 −0.1 0 0 0 0<br />
⎞<br />
⎜ 0<br />
⎜ 0.1<br />
A = ⎜ 0<br />
⎜<br />
⎝ 0<br />
0.2<br />
0<br />
0.1<br />
0<br />
0<br />
0.2<br />
0<br />
0<br />
0.1<br />
0<br />
0.2<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0.1<br />
−0.1<br />
0.1<br />
−1<br />
0<br />
0<br />
0<br />
−1<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
⎟<br />
1 ⎟<br />
−1 ⎟<br />
0 ⎟<br />
0 ⎠<br />
0 0 0 0 0 0 1 1 0 0 0<br />
⎛ ⎞<br />
⎛<br />
⎞ −100<br />
0 0 0 0 0 0 0 0 0 0 1 ⎜ ⎟<br />
⎜<br />
⎟ ⎜ −100 ⎟<br />
⎜ −1 0 −1 0 0 0 1 0 1 0 0 ⎟ ⎜ ⎟<br />
⎜<br />
⎟ ⎜ ⎟<br />
⎜<br />
⎟ ⎜ −100 ⎟<br />
B = ⎜ 0 −1 0 −1 0 0 −1 0 0 1 0 ⎟ e q = ⎜ ⎟<br />
⎜<br />
⎟ ⎜ ⎟ .<br />
⎜<br />
⎟ ⎜ −100 ⎟<br />
⎝ 0 1 −1 0 0 0 0 −1 0 0 0 ⎠ ⎜ ⎟<br />
⎜ ⎟<br />
⎝ 50 ⎠<br />
0 0 0 0 −1 1 0 0 0.1 −0.1 0<br />
50<br />
Assim temos as Funções:<br />
onde z = (x, y).<br />
F (z) = Az + q<br />
Q(z) = Bz<br />
8. Problema de Complementaridade Mista linear definido por:<br />
e<br />
F (x, y) = Ay + b<br />
Q(x, y) = Gx − Jy<br />
onde b é um vetor com 1 em todas as coordenadas, e as matrizes A, G e J<br />
são definidas da seguinte maneira:<br />
Tomamos A = [In×n : 0n×(p−n)], J = rand(n, p) e G = (G1 + G1 T )/2<br />
com G1 = rand(n, n) e p > n. (A função rand do MatLab gera uma<br />
matriz aleatoriamente com entradas entre [0, 1]). Assim vamos resolver este<br />
problemas para três valores de n e p diferentes.<br />
Problema 8: Para n = 50 e p = 100.<br />
Problema 9: Para n = 250 e p = 500.<br />
100
Problema 10: Para n = 500 e p = 1000.<br />
Os resultados numéricos para os 10 problemas de complementaridade mista<br />
descrito acima.<br />
Tabela 3.1: Problemas Testes Para FDA-MNCP<br />
Alg FDA-MNCP<br />
β 1.1 2<br />
Problema n It BL t It BL t<br />
1 4 6 1 1 7 6 0.8<br />
2 6 12 0 1 13 8 0.8<br />
3 13 14 6 1 65 485 0.134<br />
4 5 23 169 1 20 169 1<br />
5 5 11 10 1 8 11 1<br />
6 6 34 17 1 36 28 0.64<br />
7 11 17 0 1 15 0 1<br />
8 150 14 25 1 11 27 1<br />
9 750 19 61 1 16 61 1<br />
10 1500 23 106 1 21 106 1<br />
101
Capítulo 10<br />
Aplicações - Inequações<br />
Variacionais<br />
Neste capítulo vamos mostrar aplicações para o FDA-NCP e FDA-MNCP.<br />
Basicamente trabalharemos com inequações variacionais.<br />
As inequações variacionais constituem uma ferramenta natural, elegante e<br />
poderosa para tratamento de problemas de fronteira livre e seu desenvolvimento<br />
está ligado principalmente aos nomes de Fichera, Stampacchia, Lions, Baiocchi e<br />
Brezis.<br />
É conhecido que uma ampla classe de problemas de fronteira livre podem ser<br />
escritas como inequações variacionais. Entre eles estão os problemas de obstáculos<br />
em duas dimensões, o problema clássico do dique e o problema de contato entre um<br />
sólido elástico deformável e um obstáculo rígido.<br />
Uma rápida noção de inequação variacional. Seja V um espaço de Hilbert com<br />
produto interno (., .) e associado a ele uma norma .. Seja a(., .) : V ×V → IR uma<br />
forma bilinear contínua em V , isto significa que a(u, v) é linear em cada uma das<br />
variáveis (u, v) e que existe uma constate β > 0 tal que |a(u, v)| ≤ βuv para<br />
todo u, v ∈ V .<br />
Dizemos que a(., .) é coerciva se existe um α > 0 tal que<br />
e dizemos que é simétrica se<br />
a(v, v) ≥ αv 2<br />
, ∀ v ∈ V ,<br />
a(u, v) = a(v, u) ∀ u , v ∈ V.<br />
102
Note que uma forma bilinear simétrica e coerciva define um produto interno em<br />
V e [a(., .)] 1<br />
2 é uma norma equivalente para . no sentido que para todo v ∈ V ,<br />
α 1<br />
2 v ≤ [a(v, v)] 1<br />
2 ≤ β 1<br />
2 v.<br />
Seja l : V → IR uma aplicação linear contínua, ou seja, existe uma constante<br />
C > 0 tal que<br />
|l(v)| ≤ Cv , ∀ v ∈ V.<br />
Finalmente, nós dizemos que K, um subconjunto não vazio de V , é fechado se<br />
qualquer seqüência convergente em K tem seu limite em K.<br />
Agora vamos considerar a seguinte Inequação Variacional.<br />
[P (1)] Encontrar u em K tal que<br />
a(u, v − u) ≥ l(v − u) ∀ v ∈ K. (0.1)<br />
onde a(., .) é uma forma bilinear contínua coerciva, l(.) uma aplicação linear contínua<br />
e K um subconjunto não vazio convexo e fechado de V , como definido anteriormente.<br />
Se a(., .) é simétrica, nós também podemos considerar o seguinte problema de<br />
otimização.<br />
[P (2)] Encontrar u ∈ K tal que<br />
onde E[v] = 1a(v,<br />
v) − l(v).<br />
2<br />
E[u] = min E[v], (0.2)<br />
v ∈ K<br />
Resultado de existência e unicidade para o problema P (1) e a equivalência<br />
quando a(., .) é simétrica entre os problemas P (1) e P (2) pode ser visto em<br />
Stampacchia [34].<br />
Tomando V = H 1 g (Ω) = {v ∈ H 1 : v = g sobre ∂Ω} onde Ω é um subconjunto<br />
de IR n aberto e limitado e g ∈ L 2 (Ω). Seja f ∈ L 2 (Ω),<br />
<br />
a(u, v) =<br />
Ω<br />
<br />
∇u.∇v dx , l(v) =<br />
Ω<br />
f(x)v(x)dx e E[v] = 1<br />
<br />
v<br />
2 Ω<br />
2 <br />
dx− fv dx u, v ∈ V<br />
Ω<br />
e K = {v ∈ H 1 g (Ω) | v(x) ≥ ψ(x) em x ∈ Ω} onde ψ ∈ H 2 g (Ω).<br />
Assim, uma solução de P (1) é a mesma solução do seguinte problema:<br />
103
[P (3)] Encontrar u ∈ K tal que:<br />
u − ψ ≥ 0 em Ω, (0.3)<br />
−∆u − f ≥ 0 em Ω e (0.4)<br />
(u − ψ)(−∆u − f) = 0 em Ω. (0.5)<br />
Uma solução de P (3) particiona Ω em duas regiões:<br />
Ω0 = {x : u(x) = ψ(x)} , Ω+ = {x : u(x) > ψ(x)} e − ∆u = f em Ω+.<br />
Assim, considerando hipóteses de regularidade e suavidade para u e os conjuntos<br />
Ω+ e Ω0 temos que u é uma solução de P (1). Para mais detalhes ver [34], [11].<br />
As duas primeiras aplicações são de inequações variacionais que são equivalentes<br />
a uma formulação em complementaridade P (3). São, o problema do obstáculo e<br />
o problema clássico do Dique. Neste caso trabalharemos com o domínio Ω fixo e<br />
utilizaremos o Método das Diferenças Finitas (MDF).<br />
A terceira aplicação é o problema de elasticidade linear com contato sem atrito,<br />
aqui apresentaremos o modelo matemático do problema (Problema de Signorini).<br />
Para resolver este problema numericamente utilizaremos dois tipos de discretização,<br />
o Método dos Elementos Finitos (MEF) e o Método dos Elementos de Contorno<br />
(MEC).<br />
No primeiro caso transformamos o problema de Signorini em um problema de<br />
otimização, do tipo P (2), a partir da discretização deste problema de otimização,<br />
obtemos um problema de complementaridade.<br />
No segundo caso a discretização ocorre a partir das equações que compõem o<br />
Problema de Signorini, das equações de equilíbrio mais as condições de contorno<br />
e através do Método de Elemento de Contorno (MEC) obtemos duas formulações.<br />
Uma em complementaridade Mista onde utilizaremos o FDA-MNCP e outra em<br />
complementaridade na qual utilizaremos o FDA-NCP para obter um resultado<br />
numérico. As próximas seções trazem um resumo dos trabalhos apresentados em<br />
Congressos e Simpósios [41], [42], [44], [45], [46] e [43].<br />
104
10.1 O Problema do Obstáculo em duas<br />
dimensões<br />
Considere uma membrana elástica homogênea que, em sua posição de referência,<br />
ocupa a região limitada Ω de IR 2 suficientemente regular e tendo o seu bordo fixo<br />
em ∂Ω. A membrana quando sujeita à força externa f deforma-se. Porém, na<br />
presença de um obstáculo, que designaremos pela função ψ em Ω, assume sua<br />
posição de equilíbrio satisfazendo as equações abaixo.<br />
(1)<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
−∆u = f, em Ω + , ( Região onde não há contato)<br />
u(x, y) = ψ(x, y), em Ω 0 , ( Região onde há contato)<br />
u = g, sobre ∂Ω,<br />
u = ψ, ∇u = ∇ψ, sobre Γ = ∂Ω 0 ∩ ∂Ω + , (g − condição de fronteira)<br />
u ≥ ψ, em Ω = Ω + ∪ Ω 0 , (ψ − obstáculo)<br />
−∆u ≥ f, em Ω = Ω + ∪ Ω 0 .<br />
Este problema é equivalente ao problema abaixo:<br />
Encontrar u ∈ K = { v ∈ H 1 (Ω) / v ≥ ψ em Ω e v = g sobre ∂Ω } tal que:<br />
(2)<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
u − ψ ≥ 0 em Ω,<br />
−∆u − f ≥ 0 em Ω,<br />
(u − ψ)(−∆u − f) = 0 em Ω.<br />
A existência e unicidade da solução bem como a equivalência dos sistemas (1) e (2),<br />
ficam asseguradas quando assumimos condições de regularidade para os conjuntos<br />
Ω e Γ e para as funções ψ, g e f.<br />
Faremos um exemplo apresentado em [12].<br />
O conjunto Ω = [0, 1] × [0, 1].<br />
Onde f = 0 em Ω.<br />
E g sobre ∂Ω vale:<br />
⎧<br />
⎪⎨ 1 − (2x − 1)<br />
g(x, y) =<br />
⎪⎩<br />
2 , se y = 0 e y = 1,<br />
0 caso contrário.<br />
105
Para o obstáculo dado por:<br />
⎧<br />
⎪⎨ 1<br />
ψ1(x, y) =<br />
⎪⎩<br />
se |x − 1<br />
0<br />
1 | ≤ 2 4<br />
caso contrário.<br />
1.4<br />
1.2<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
0<br />
0.2<br />
Figura 1.1:<br />
0.4<br />
1 1<br />
, |y − | ≤ 2 4 ,<br />
O Gráfico da solução para uma malha 30 × 30 e usando diferenças finitas.<br />
Tabela 1.1: Resumo das iterações - Obstáculo ψ1<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
625 18 7 21 24 9 12<br />
2500 20 19 24 41 11 42<br />
5625 22 25 26 51 15 138<br />
10000 24 47 29 76 19 202<br />
15625 26 57 30 86 26 364<br />
22500 27 64 32 100 35 363<br />
30625 28 70 32 104 40 515<br />
106<br />
0.6<br />
0.8<br />
1
onde<br />
Para o obstáculo dado por:<br />
⎧<br />
⎪⎨ ψ∗<br />
ψ2(x, y) =<br />
⎪⎩<br />
se |x − 1<br />
0<br />
1 | ≤ 2 4<br />
caso contrário<br />
2<br />
1.5<br />
1<br />
0.5<br />
0<br />
1<br />
ψ∗ = 400(x − 1<br />
4<br />
0.5<br />
)(x − 3<br />
4<br />
0<br />
1 3<br />
)(y − )(y −<br />
4 4 ).<br />
0<br />
Figura 1.2:<br />
1 1<br />
, |y − | ≤ 2 4<br />
O Gráfico da solução para uma malha 50 × 50 e usando diferenças finitas.<br />
Tabela 1.2: Resumo das iterações - Obstáculo ψ2<br />
0.5<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
625 13 3 16 15 8 16<br />
2500 13 3 17 18 10 47<br />
5625 13 5 17 20 12 82<br />
10000 14 6 18 22 16 123<br />
15625 14 6 18 24 16 141<br />
22500 15 8 18 24 21 257<br />
30625 24 7 19 27 22 314<br />
107<br />
1
Nas duas tabelas 1.1 e 1.2, vemos que o algoritmo FDA-NCP tem um desempenho<br />
superior ao algoritmo FB, principalmente com relação a busca linear. Destacamos<br />
também, para o algoritmo FDA-NCP, que o numero de iterações e busca linear não<br />
varia muito em relação ao numero de variáveis n.<br />
10.2 Problema clássico de infiltração em meio<br />
poroso<br />
O modelo físico do problema clássico de infiltração consiste em encontrar o fluxo<br />
entre dois reservatórios com níveis H e h ( H > h), respectivamente, separados por<br />
um meio poroso R, de comprimento a e com a base impermeável. Como mostra a<br />
figura 2.2<br />
H<br />
Água<br />
Γ<br />
Parte Molhada<br />
Ω<br />
R - Ω<br />
Parte Seca<br />
0 a<br />
h<br />
Água<br />
Figura 2.1: Infiltração em meio poroso<br />
A diferença entre os níveis provocará um escoamento do fluido formando uma<br />
área saturada Ω em R, cuja parte da fronteira dada pela curva Γ é desconhecida à<br />
priori. A parte da fronteira Γ dado pelo segmento h1h = Γγ, de comprimento h0, é<br />
chamado superfície de percolação.<br />
Considere um fluido ideal, escoamento permanente, o meio poroso homogêneo<br />
com coeficiente de permeabilidade constante e igual a 1, [2], [11], [37].<br />
Temos a seguinte formulação matemática para o problema de infiltração em<br />
meio poroso:<br />
Dado a, h, H ∈ IR satisfazendo a > 0 e 0 < h < H, determinar uma<br />
108<br />
h1<br />
h0
função decrescente y = φ(x) definida para x ∈ [0, a] tal que φ(0) = H<br />
, φ(a) > h e uma função potencial de velocidade u(x, y) : Ω → IR onde<br />
Ω = {(x, y) ∈ R ; 0 < y < φ(x)} satisfazendo:<br />
⎧<br />
⎪⎨ u(x, y) harmônica em Ω e contínua em Ω,<br />
(i)<br />
⎪⎩ u(0, y) = H para 0 ≤ y ≤ H,<br />
⎧<br />
⎧<br />
⎪⎨ h para 0 ≤ y ≤ h,<br />
⎪⎨ u(a, y) =<br />
(ii)<br />
⎪⎩ y para h ≤ y ≤ φ(a),<br />
⎪⎩ uy(x, 0) = 0 para 0 < x < a ,<br />
⎧<br />
⎪⎨<br />
(iii)<br />
⎪⎩<br />
u(x, y) = y<br />
∂u(x,y)<br />
∂ν<br />
= 0<br />
para y = φ(x) , 0 < x < a,<br />
onde ν é o vetor normal externo ao domínio Ω para a curva y = φ(x).<br />
Através da transformação de Baiocchi w(x, y) = φ(x)<br />
y [u(x, t) − t]dt , (x, y) ∈ Ω,<br />
podemos reformular o problema de infiltração em meio poroso como um problema<br />
de complementaridade:<br />
Seja R = [0, a] × [0, H], Ω ⊂ R.<br />
Encontrar w ∈ K = { v ∈ H 1 (R) / v ≥ 0 em R e v = g sobre ∂R } tal que:<br />
Onde g(x, ⎧y)<br />
é definida sobre ∂R por<br />
⎪⎨<br />
g(x, y) =<br />
⎪⎩<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
w ≥ 0 em R<br />
1 − ∆w ≥ 0 em R<br />
w(1 − ∆w) = 0 em R<br />
1<br />
2 (H − y)2 + x<br />
2a [(h − y)2 − (H − y) 2 ] , 0 ≤ y ≤ h<br />
(2.1)<br />
1<br />
2 (H − y)2 − x<br />
2a (H − y)2 , h ≤ y ≤ H.<br />
Dessa forma a solução deste problema (2.1) é uma solução do problema de<br />
infiltração em meio poroso em questão e ainda temos que Ω w = {(x, y) ∈<br />
R / w(x, y) > 0 }.<br />
Considere o seguinte caso: H = 6.3014 , a = 6.1592 e h = 1.2359.<br />
109
6.3014<br />
5<br />
4<br />
3<br />
2.5227<br />
2<br />
1.2359<br />
1<br />
Ω w<br />
Parte Molhada<br />
Parte Seca<br />
0<br />
0 1 2 3 4 5 6.1592<br />
Figura 2.2: Solução do Problema (2.1).<br />
Solução para uma malha 700 × 700 e usando diferenças finitas. O comprimento<br />
de h0 ≈ 1.2868.<br />
Tabela 2.1: Resumo das iterações para o Problema (2.1)<br />
Alg FDA-NCP FB<br />
β 1.1 2 -<br />
n It BL It BL It BL<br />
10000 27 15 27 24 104 791<br />
40000 27 21 27 28 188 2939<br />
90000 27 22 27 30 331 6064<br />
160000 28 26 27 33 492 9822<br />
250000 28 22 27 78⋆ * *<br />
360000 28 29 27 101⋆ * *<br />
490000 28 30 27 155⋆ * *<br />
Na tabela 2.1 vemos que o algoritmo FDA-NCP teve um comportamento regular<br />
com respeito a variação n, número de variáveis na discretização. Para os caso em<br />
que aparece a marca ⋆ o passo final foi menor que 1 e nos outros caso tivemos a<br />
convergência com o passo igual a 1. O algoritmo FB não teve um bom desempenho<br />
e a medida que n aumenta o algoritmo FB realiza muitas iterações e buscas lineares<br />
e para os casos onde aparece ∗ não houve convergência a uma solução do problema<br />
110<br />
h1<br />
h<br />
h0
(2.1). Portanto, o algoritmo FDA-NCP teve um desempenho superior ao algoritmo<br />
FB.<br />
10.3 Problema de Elasticidade Linear com<br />
Contato<br />
O problema de elasticidade linear com contato consiste em determinar a função u<br />
que define os deslocamentos nos pontos de um domínio Ω ⊂ IR 2 (IR 3 ) do espaço<br />
euclidiano. O domínio Ω é ocupado por um corpo de material elástico linear.<br />
As condições de contorno são dadas pela função que define os deslocamentos<br />
prescritos, ū e pela função que define as forças de superfície prescritas ¯p, definidas,<br />
respectivamente, nas regiões Γ D e Γ N de Ω, e por uma condição de contato na região<br />
Γ C (ver Fig. 3.1). Chamando Γ ao contorno de Ω, as regiões Γ D , Γ N e Γ C verificam:<br />
Γ D ∪ Γ N ∪ Γ C = Γ.<br />
Figura 3.1: Problema de Signorini.<br />
Matematicamente, o problema de elasticidade linear com contato pode ser<br />
expresso como o problema de Signorini:<br />
a) ∇·( lC∇ S u) = 0 em Ω ,<br />
b) u = ū em Γ D ,<br />
c) p = ¯p em Γ N ,<br />
111<br />
(3.1)
mais a condição de complementaridade no contorno Γ C :<br />
a) u·¯n + ¯s ≥ 0 ,<br />
b) p·¯n ≥ 0 em Γ C ,<br />
c) (u·¯n + ¯s)·(p·¯n) = 0 ,<br />
(3.2)<br />
onde lC é o tensor elástico, ∇ S u = 1/2(∇u + (∇u) T ), p = ( lC∇ S u)n representa as<br />
forças de superfície atuando no contorno, ¯n é o vetor unitário normal à superfície<br />
sobre a qual tem-se o contato e ¯s é a folga do deslocamento máximo possível na<br />
direção do vetor unitário ¯n (ver Fig. 3.1).<br />
O problema de elasticidade linear com contato pode ser formulado como um<br />
problema de minimização de um funcional num campo de deslocamento admissíveis,<br />
= {u ∈ U|u·¯n + ¯s ≥ 0 em Γ C } onde U é o espaço de deslocamentos, ou seja:<br />
min<br />
u∈ f(u) , (3.3)<br />
onde f(u) = 1 <br />
2 Ω ∇Su·( lC∇ Su)dΩ − <br />
ΓN u·¯pdΓ.<br />
10.3.1 Modelo de Elementos Finitos<br />
Utilizando o método de elementos finitos para discretizar o problema (3.3) obtém-se:<br />
f(u) = 1<br />
2 ut Ku − F u , (3.4)<br />
g(u) = Au − s , (3.5)<br />
onde u ∈ ⇔ g(u) ≥ 0 e f(u) é o funcional quadrático que representa a energia<br />
total de deformação, K a matriz de rigidez do problema e −→ F vetor carregamento<br />
externo.<br />
Porém a solução deste problema verifica as condições de otimalidade de<br />
(Karush-Kunh-Tucker) de primeira ordem, as quais podem-se escrever da forma<br />
seguinte:<br />
G(λ) = (AK −1 A t )λ − AK −1 F + s ≥ 0; , (3.6)<br />
112<br />
λ ≥ 0 , (3.7)<br />
G(λ) • λ = 0 . (3.8)
Assim, tem-se um problema de complementaridade na variável dual λ, que<br />
representa fisicamente as forças de contato na superfície. Os sistemas K −1 A t e<br />
K −1 F são resolvidos uma única vez e de forma simultânea no ABAQUS através de<br />
uma interface com o algoritmo (FDA-NCP) [3] e [45].<br />
Apresentados dois exemplos de contato, o primeiro em duas dimensões (2D) e<br />
o segundo em três dimensões (3D). No primeiro exemplo (2D) é considerado um<br />
corpo semicilíndrico de material isotrópico submetido a um estado plano de tensões,<br />
em contato com uma fundação rígida. Devida à simetria axial o problema pode ser<br />
modelado em duas dimensões. Ver figura 3.2.<br />
Figura 3.2: Problema de contato 2D.<br />
Os dados do modelo são: r = 1cm , E = 207GPa , ν= 0.3 , q = 66KPa e a<br />
solução analítica das pressões de contato:<br />
p(x) = 2ρ <br />
1 − (x/b)<br />
πb<br />
2 <br />
4rρ(1 − ν<br />
b =<br />
2 )<br />
πE<br />
onde b largura da região de contato e r raio do cilindro.<br />
113<br />
ρ = 2rq
P(x)/B<br />
0.35<br />
0.3<br />
0.25<br />
0.2<br />
0.15<br />
0.1<br />
0.05<br />
Figura 3.3: Configuração deformada<br />
0<br />
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35<br />
x/r<br />
2<br />
3<br />
Analítica<br />
ABAQUS<br />
FDA−NCP<br />
FAIPA<br />
Figura 3.4: Curva pressão na região de contato<br />
114<br />
1
Tabela 3.1: Resultados numéricos<br />
Alg FDA-NCP FAIPA<br />
β 1.1 s/Atual.<br />
Problema It BL t It BL t<br />
(2D) 9 1 1 20 36 0.8<br />
Como podemos verificar na tabela 10.3.1 o desempenho do algoritmo FDA-NCP<br />
foi superior ao algoritmo FAIPA.<br />
Para o segundo exemplo (3D) resolvemos um problema de auto-contato, numa<br />
peça que encontra-se sujeita a forças externas num extremo e engastada na sua base<br />
como vemos na figura 3.5.<br />
3<br />
2<br />
1<br />
Z<br />
Y<br />
X<br />
Figura 3.5: Modelo com condições de contorno<br />
Dados do modelo E = 207GPa , ν = 0.3 e ρ = 130KPa.<br />
115
S, Mises<br />
(Ave. Crit.: 75%)<br />
3<br />
+3.908e-02<br />
+3.583e-02<br />
+3.258e-02<br />
+2.932e-02<br />
+2.607e-02<br />
+2.282e-02<br />
+1.956e-02<br />
+1.631e-02<br />
+1.306e-02<br />
+9.803e-03<br />
+6.549e-03<br />
+3.296e-03<br />
+4.294e-05<br />
2<br />
1<br />
S, Mises<br />
(Ave. Crit.: 75%)<br />
3<br />
+3.908e-02<br />
+3.583e-02<br />
+3.258e-02<br />
+2.932e-02<br />
+2.607e-02<br />
+2.282e-02<br />
+1.956e-02<br />
+1.631e-02<br />
+1.306e-02<br />
+9.803e-03<br />
+6.549e-03<br />
+3.296e-03<br />
+4.294e-05<br />
2<br />
1<br />
Figura 3.6: Configuração deformada<br />
Figura 3.7: Configuração da região de contato<br />
Tabela 3.2: Resultados numéricos<br />
Alg FDA-NCP FAIPA<br />
β 1.1 s/Atual.<br />
Problema It BL t It BL t<br />
(3D) 7 1 1 14 7 0.8<br />
Também neste caso vemos que o algoritmo FDA-NCP obteve um desempenho<br />
melhor que o algoritmo FAIPA.<br />
116
Podemos assim concluir que o algoritmo FDA-NCP adaptou-se melhor a interface<br />
criada por G. M. G. Bernadá [3] e [45].<br />
10.3.2 Modelo de Elementos de Contorno<br />
O Método dos Elementos de Contorno (MEC) é baseado em uma equação integral<br />
conhecida como identidade de Somigliana para os deslocamentos. Para forças de<br />
volume nulas pode ser escrita na forma matricial:<br />
c(ξ)u(ξ) = <br />
Γ u∗ (ξ, x)p(x) dΓ − <br />
Γ p∗ (ξ, x)u(x) dΓ . (3.9)<br />
A função u ∗ representa à solução fundamental em deslocamentos para o problema<br />
de elasticidade linear, p ∗ é sua correspondente força de superfície.<br />
Por exemplo, para estado plano de deformações, as componentes de deslocamento<br />
e forças de superfícies da solução fundamental são dados em notação indicial por:<br />
u ∗ ij(ξ, x) = −1<br />
8π(1−νm)Gm {(3 − 4νm) log(r)δij − r,ir,j} ,<br />
p ∗ ij(ξ, x) = −1<br />
4π(1−νm)r<br />
<br />
[(1 − νm)δij + 2r,ir,j] ∂r<br />
∂n − (1 − νm)(r,inj − r,jni) <br />
onde r = r(ξ, x) representa a distância entre o ponto ξ e o ponto x, r = x − ξ, e<br />
as derivadas r,i = ∂r/∂xi. Gm e νm são, respectivamente, os módulos de distorção<br />
transversal e de Poisson do material e n é a normal a Γ no ponto x.<br />
A matriz c é função da geometria do contorno no ponto ξ e a segunda integral à<br />
direita na Eq. 3.9 deve ser calculada no sentido do valor principal de Cauchy [4].<br />
Discretizando o contorno em elementos lineares e aplicando nos nós a Eq. 3.9<br />
tem-se a equação do MEC que pode ser escrita como:<br />
Hu − Gp = 0 , (3.10)<br />
onde as matrizes H e G são matrizes cheias não simétricas e os vetores u e p definem<br />
os deslocamentos e forças de superfície em todos os nós do contorno.<br />
Substituindo as variáveis de valores dados pelas condições de contorno, Eqs.<br />
(3.1.b) e (3.1.c), a Eq. 3.10 pode ser escrita como:<br />
Ax + By = f , (3.11)<br />
117<br />
,
onde o vetor x contém as incógnitas de força de superfície do contorno Γ C na direção<br />
do versor ¯n e y contém o resto das incógnitas do problema. Assim, as condições de<br />
contorno em Γ C das Eqs. (3.2.a) a (3.2.c) podem ser escritas como:<br />
F(y) ≥ 0 ,<br />
x ≥ 0 ,<br />
F(y) • x = 0 ,<br />
Definindo a função Q(x, y) = Ax + By − f tem-se o seguinte Problema de<br />
Complementaridade Mista (NCPM):<br />
F(y) ≥ 0 , (3.12)<br />
x ≥ 0 , (3.13)<br />
F(y) • x = 0 , (3.14)<br />
Q(x, y) = 0 . (3.15)<br />
A Eq. 3.11 permite expressar a variável y em função de x:<br />
By = f − Ax . (3.16)<br />
O sistema linear da Eq. 3.16 é o mesmo que o sistema linear que fornece o MEC<br />
quando em vez da condição de complementaridade tem-se uma condição de contorno<br />
de Newman em Γ C , ou seja, quando p é conhecido. Portanto, a matriz B é inversível<br />
e y pode ser expresso em função de x:<br />
y(x) = B −1 (f − Ax) . (3.17)<br />
Utilizando Eq. 3.17 para expressar o problema dado pelas Eqs. 3.12 a 3.15 na<br />
incógnita x tem-se o Problema de Complementaridade (NCP):<br />
F(y(x)) ≥ 0 , (3.18)<br />
x ≥ 0 , (3.19)<br />
F(y(x)) • x = 0 . (3.20)<br />
Apresentaremos dois exemplos. O primeiro em duas dimensões (2D) que foi<br />
resolvido por ambos os algoritmos FDA-NCP e FDA-MNCP. O segundo em três<br />
118
dimensões (3D) que foi resolvido com o algoritmo FDA-NCP. No exemplo 2D<br />
foi considerado o valor do parâmetro de parada ɛ = 10 −12 , no exemplo 3D foi<br />
considerado o valor ɛ = 10 −12 .<br />
O exemplo (2D) utilizado aqui é o mesmo exemplo para o caso (MEF), como<br />
descrito na figura 3.2.<br />
As discretizações utilizadas são descritas na Tabela 3.3 onde Ne é o número de<br />
elementos , Nvx é o número de variáveis do vetor x e Nvy é o número de variáveis<br />
do vetor y. Pela simetria em relação a um eixo vertical foi discretizada a metade da<br />
secção transversal como mostrado na Fig. 3.8.<br />
Tabela 3.3: Discretizações utilizadas para o Exemplo 2D<br />
Nome Ne Nvx Nvy<br />
Malha 1 54 16 108<br />
Malha 2 108 32 216<br />
Malha 3 216 64 432<br />
Malha 4 432 128 864<br />
Malha 5 864 256 1728<br />
Malha 6 1728 512 3456<br />
Figura 3.8: Exemplo da Malha 1<br />
119
A Tabela 3.4 mostra o desempenho dos algoritmos FDA-NCP e FDA-MNCP.<br />
Com o FDA-MNCP o exemplo é resolvido de duas formas diferentes: A primeira<br />
forma utiliza como ponto inicial x 0 = 1 e y 0 = 0 e a segunda utiliza como<br />
ponto inicial o resultado (interpolado) obtido com a malha anterior. Nas colunas<br />
“FDA-MNCP 1” e “FDA-MNCP 2” são apresentados os resultados para estas duas<br />
formas de resolver o problema. Com o FDA-NCP foi utilizado sempre o ponto inicial<br />
x 0 = 1. Na Tabela “Tempo” indica o tempo total de cálculo em segundos.<br />
Tabela 3.4: Resultados Numéricos para o Exemplo 2D<br />
FDA-MNCP 1 FDA-MNCP 2 FDA-NCP<br />
Nome It Tempo It Tempo (s) It Tempo (s)<br />
Malha 1 10 0.14 10 0.13 10 0.09<br />
Malha 2 10 0.31 3 0.16 15 0.03<br />
Malha 3 9 1.52 3 0.58 14 0.30<br />
Malha 4 9 7.55 2 1.80 13 0.64<br />
Malha 5 11 55.81 2 11.67 11 4.59<br />
Malha 6 11 398.02 1 47.52 11 33.61<br />
Como pode-se verificar na Tabela 3.4 o FDA-NCP obteve um desempenho melhor<br />
em relação ao tempo total de cálculo. No caso de utilizar a solução obtida de uma<br />
malha menor para a malha maior o FDA-MNCP 2 teve um desempenho semelhante<br />
ao FDA-NCP.<br />
O tempo total de cálculo do Algoritmo FDA-NCP é na maior parte devido ao<br />
cálculo de ∇xF = B −1 A, que é feito somente uma vez. O número total de iterações<br />
não faz muita diferença no tempo total de cálculo, portanto, não se justifica neste<br />
caso a técnica de malha variável.<br />
120
y (m)<br />
x 10−5<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
2<br />
0<br />
0 2 4 6 8 10 12 14 16 18 20<br />
x 10 −3<br />
x (m)<br />
Figura 3.9: Diagrama da configuração inicial e deformada para a malha 4.<br />
Pressão de contato (N/m)<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
−1<br />
Resultado para a malha 4<br />
Solução analítica<br />
0 2 4 6 8 10 12 14 16 18 20<br />
x 10 −3<br />
x (m)<br />
Figura 3.10: Força de contato obtida para a malha 4.<br />
Para o segundo exemplo (3D) resolvemos um problema de contato em três<br />
dimensões. Neste caso foi utilizado o FDA-NCP que mostrou um desempenho<br />
melhor no caso anterior. O Problema consiste em um corpo que tem a forma da<br />
metade de um toro de raio exterior igual a 2.5 m e raio interior igual a 1.5 m com<br />
121
condições de contorno mostradas na Fig. 3.11, o valor da força de contato por<br />
unidade de superfície considerada foi ρ = 0.02 Pa.<br />
Figura 3.11: Problema de contato 3D.<br />
Para este exemplo foram consideradas as seguintes propriedades para o material:<br />
Em = 2000 Pa e νm = 0. A discretização utilizada é uma malha de 2516 elementos<br />
mostrada na Fig. 3.12.<br />
Figura 3.12: Malha utilizada de 2516 elementos.<br />
Nas figuras 3.13 e 3.14 destacamos a região de contato, os pontos que ficam<br />
em contato são realçados em cor vermelha (figura 3.13). Pode-se observar a forma<br />
elíptica característica da região de contato (figura 3.14).<br />
122
x 2<br />
−0.08<br />
−0.06<br />
−0.04<br />
−0.02<br />
0<br />
0.02<br />
0.04<br />
0.06<br />
Figura 3.13: Região de contato.<br />
0.08<br />
−0.08 −0.06 −0.04 −0.02 0<br />
x<br />
1<br />
0.02 0.04 0.06<br />
Figura 3.14: Região de contato.<br />
Neste caso o Algoritmo FDA-NCP realizou 11 iterações para obter a solução do<br />
problema.<br />
123<br />
20<br />
15<br />
10<br />
5<br />
0
Capítulo 11<br />
Conclusões<br />
Neste trabalho vimos que o algoritmo de ponto interior viável FDA-NCP proposto<br />
no Capítulo 3 é uma boa técnica para resolver numericamente os problemas de<br />
complementaridade. Com sua estrutura simples e robusta quanto ao parâmetros<br />
contido foi possível extender o FDA-NCP para problemas de complementaridade<br />
mista, que originou o algoritmo FDA-MNCP, capítulo 5. Resultados teóricos<br />
dos algoritmos asseguram a convergência global feita no capítulo 4 e do fato da<br />
estrutura do dois algoritmos, FDA-NCP e FDA-MNCP serem similares, obtemos<br />
convergência assintótica, superlinear e quadrática, para ambos.<br />
Vimos também neste trabalho, capítulo 7, a implementação do FAIPA para<br />
resolver problemas de complementaridade e inclusive uma nova regra de atualização<br />
dos multiplicadores de Lagrange no algoritmo FAIPA que possibilitou trabalhar<br />
com a Hessiana exata no FAIPA. Com essa atualização chegamos a uma expressão<br />
para uma busca em arco no algoritmo FDA-NCP, que chamamos de FAA-NCP.<br />
Quanto a Reformulação do problema de complementaridade apresentada no<br />
Capítulo 8, vimos através dos resultados numéricos que é uma boa alternativa<br />
quando não é possível ou é difícil de obter um ponto estritamente viável.<br />
Os resultados numéricos, capítulo 9, evidenciaram a eficiência e robustez dos<br />
algoritmos FDA-NCP, FAA-NCP, FDA-MNCP e também da versão do FAIPA<br />
124
com a nova regra de atualização dos multiplicadores de Lagrange. Destacamos o<br />
resultado em que geramos aleatoriamente 100 pontos para os problemas de K-J e<br />
K-S onde os algoritmos FDA-NCP e FAA-NCP convergiram em todos os casos.<br />
Também vimos no primeiro problema dos casos especiais, seção 9.2, que a busca<br />
em arco evita que a seqüência gerada se pegue nas restrições o que melhora a<br />
velocidade de convergência.<br />
As aplicações apresentadas no capítulo 10, re-afirmam a eficiência e robustez<br />
dos algoritmos FDA-NCP e FDA-MNCP.<br />
Para o futuro vislumbramos a possibilidade de conseguir resultados teóricos<br />
para a busca em arco bem como uma nova forma de calcular o arco e/ou de<br />
melhorar a direção de busca afim de evitar que a seqüência se pegue nas restrições.<br />
E também da possibilidade de estender o algoritmo FDA-NCP para problemas de<br />
MPEC (Mathematical Programs with Equilibrium constraints).<br />
125
Bibliografia<br />
[1] A. Auslender. Optimization Méthodes Numériques. Masson, 1976.<br />
[2] C. Baiocchi and A. Capelo. Variational And Quasivariational Inequalities.<br />
Applications To Free-Boundary Problems. Wiley, 1984.<br />
[3] G.M.G. Bernadá. Técnicas de Otimização Aplicadas a Problemas de Contato<br />
Elástico. COPPE-<strong>UFRJ</strong>, dissertação de mestrado edition, 2006.<br />
[4] C.A. Brebbia, J.C.F. Telles, and L.C. Wrobel. Boundary Element Technique:<br />
Theory and Applications in Engineering. Springer - Verlag, 1984.<br />
[5] B. Chen, X. Chen, and C. Kanzow. A penalized fischer-burmeister ncp-function:<br />
Theoretical investigation and numerical results. Technical Report AMR 97/28,<br />
School of Mathematics, University of New South Wales, Sydney, 97(28), 1997.<br />
[6] C. Chen and O.L. Mangasarian. A class of smoothing functions for nonlinear<br />
and mixed complementarity problems. Comput. Optim. Appl., 5:97–138, 1996.<br />
[7] X. Chen. Smoothing methods for complementarity problems and their<br />
applications: A survey. Received november 1998, Revised May, July 1999, 1999.<br />
[8] X. Chen and Y. Ye. On smoothing methods for the p 0 matrix linear<br />
complementarity problem. SIAM J. Optimization, 11:341–363, 2000.<br />
[9] F.H. Clarke. Optimization and Nonsmooth Analysis. John Wiley & Sons, 1983.<br />
[10] R.W. Cottle, F. Giannessi, and J.L. Lions. Variational Inequalities and<br />
Complementariy Problems. John Wiley & Sons, 1980.<br />
[11] J. Crank. Free And Moving Boundary Problems. Oxford University Press, 1984.<br />
126
[12] E.D. Dolan and J.J. Moré. Benchmarking optimization software with cops.<br />
Mathematics and Computer Science Division Technical Report ANL/MCS-246,<br />
2000.<br />
[13] A.S. El-Bakry, R.A. Tapia, Y. Zhang, and T. Tsuchiya. On the formulation<br />
and theory of the newton interior-point method for nonlinear programming.<br />
Journal of Optimization Theory and Applications, 89(3):507–541, 1996.<br />
[14] F. Facchinei and J. Soares. A new merit function for nonlinear complementarity<br />
problems and a related algorithm. SIAM J. on Optimization, 7:225–247, 1997.<br />
[15] Y. Fathi. Computational complexity of lcps associated with positive definite<br />
symmetric matrices. Mathematical Programming, (17):335–344, 1979.<br />
[16] M.C. Ferris and C. Kanzow. Complementarity and related problems: A<br />
survey. In P. M. Pardalos and M. G. C. Resende, editors, Handbook of Applied<br />
Optimization. Oxford University Press, New York, pages 514–530, 2002.<br />
[17] M.C. Ferris and J.S. Pang. Engineering and economic applications of<br />
complementarity problems. SIAM Review, 39:669–713, 1997.<br />
[18] A. Fischer. A special newton-type optimization method. Optimization,<br />
24:269–284, 1992.<br />
[19] S.A. Gabriel and J.S. Pang. An inexact ne/sqp method for solving the nonlinear<br />
complementarity problem. Math. Programming, 1:67–91, 1992.<br />
[20] C. Geiger and C. Kanzow. On the resolution of monotone complementarity<br />
problems. Comput. Optim. Appl, 5:155–173, 1996.<br />
[21] P.T. Harker and J.S. Pang. Finite-dimensional variational inequality and<br />
nonlinear complementarity problem: A survey of theory, algorithms and<br />
applications. Comput. Optim. Appl, 48:161–220, 1990.<br />
[22] J.N. Herskovits. A two-stage feasible directions algorithm for non-linear<br />
constrained optimization. Research Report 103, INRIA, Le Chesnay, France,<br />
1982.<br />
127
[23] J.N. Herskovits. A two-stage feasible directions algorithm including variable<br />
metric techniques for nonlinear optimization. Research Report 118, INRIA, Le<br />
Chesnay, France, 1982.<br />
[24] J.N. Herskovits. A two-stage feasible directions algorithm for non-linear<br />
constrained optimization. Mathematical Progeamming, 36:19–38, 1986.<br />
[25] J.N. Herskovits. A view on nonlinear optimizaton. Advances in Structural<br />
Optimization, Edited by J. Herskovits, Kluwer Academic Publishers, Dordrecht,<br />
Holland, pages 71–117, 1995.<br />
[26] J.N. Herskovits and G. Santos. Feasible arc interior point algorithm<br />
for nonlinear optimization. Fourth World Congress on Computational<br />
Mechanics,(in CD-ROM), 1998.<br />
[27] W. Hock and K. Schittkowski. Test example for nonlinear programming codes.<br />
2006.<br />
[28] H. Jiang and L. Qi. A new nonsmooth equations approach to nonlinear<br />
complementarity problems. SIAM J. Control Optim, 35(1):178–193, 1997.<br />
[29] J.E. Dennis Jr and R.B. Schnabel. Numerical Methods for Unconstrained<br />
Optimization and Nonlinear Equations. Prentice-Hall, 1983.<br />
[30] C. Kanzow. Some equation-based methods for the nonlinear complementarity<br />
problem. Optim. Methods Software, 3:327–340, 1994.<br />
[31] C. Kanzow. Nonlinear complementarity as unconstrained optimization. JOTA,<br />
88:139–155, 1996.<br />
[32] C. Kanzow and H. Kleinmichel. A class of semismooth newton-type methods<br />
for equality and inequality constrained optimization. Optim. Methods Software,<br />
5:173–198, 1995.<br />
[33] E.M. Khobotov. A modification of the estragradient method for the<br />
solution of variational inequalities and some optimization problems. Zhurnal<br />
Vychislitel’noi Matematiki i Matematicheskoi Fiziki, 27:1462–1473, 1987.<br />
128
[34] D. Kinderlehrer and G. Stampacchia. An Introduction to Variational. Oxford<br />
University Press, 1984.<br />
[35] M. Kojima, N. Megiddo, and T. Noma. Homotopy continuation methods for<br />
nonlinear complementarity problems. Math. Oper. Res., 16:754–774, 1991.<br />
[36] G.M. Korpelevich. The estragradient method for finding saddle points and<br />
other problems. Matecon, 12:747–756, 1976.<br />
[37] A. Leontiev and W. Huacasi. Mathematical programming approach for<br />
unconfined seepage flow problem. Engineering Analysis with Boundary<br />
Elements, 25:49–56, 2001.<br />
[38] T. Luca, F. Facchinei, and C. Kanzow. A semismooth equation approach<br />
to the solution of nonlinear complementarity problems. Math. Programming,<br />
75:407–439, 1996.<br />
[39] O.L. Mangasarian. Equivalence of the complementarity problem to a system of<br />
nonlinear equations. SIAM J. Appl. Math., 31:89–92, 1976.<br />
[40] O.L. Mangasarian and M.V. Solodov. Nonlinear complementarity as<br />
unconstrainede and constrained minimization. Math. Programming (Serie B),<br />
62:277–297, 1993.<br />
[41] S.R. Mazorche and J.N. Herskovits. A new interior point algorithm for<br />
nonlinear complementarity problems. In Sixth World Congress on Structural<br />
and Multidisciplinary Optimization - CD Proceedings, pages 13–14, Rio de<br />
Janeiro, BR, 2005.<br />
[42] S.R. Mazorche and J.N. Herskovits. A new interior point algorithm for nonlinear<br />
complementarity problems. In 19th International Symposium on Mathematical<br />
Programming, page 71, Rio de Janeiro, BR, 2006.<br />
[43] S.R. Mazorche and J.N. Herskovits. A feasible point technique for mixed<br />
nonlinear complementarity problems. In Joint EUROPT-OMS Conference<br />
2007, 2nd Conference on Optimization Methods & Software and 6th EUROPT<br />
129
Workshop on Advances in Continuous Optimization, Prague, Czech Republic,<br />
2007.<br />
[44] S.R. Mazorche, J.N. Herskovits, and A. Canelas. Algoritmos de<br />
complementaridade para problemas de elasticidade linear com contato sem<br />
atrito. In CILAMCE XXVII - 27th Iberian Latin American Congresso in<br />
Computational Methods in Engineering - CD Proceedings, page 336, Belém-PA,<br />
BR, 2006.<br />
[45] S.R. Mazorche, J.N. Herskovits, G.M. Guerra, and A. Canelas.<br />
Desenvolvimento e implementação de interface entre um pacote comercial<br />
de (mef) e um algoritmo de complementaridade aplicado a problemas de<br />
contato. In CILAMCE XXVII - 27th Iberian Latin American Congresso in<br />
Computational Methods in Engineering - CD Proceedings, page 376, Belém-PA,<br />
BR, 2006.<br />
[46] S.R. Mazorche, J.N. Herskovits, G.M. Guerra, and A. Canelas. Solution of<br />
contact problems in linear elasticity using a feasible interior point algorithm for<br />
nonlinear complementarity problems. In Seventh World Congress on Structural<br />
and Multidisciplinary Optimization - CD Proceedings, COEX Seoul, Korea,<br />
2007.<br />
[47] F.H. Murphy, H.D. Sherali, and A.L. Soyster. A mathematical programming<br />
approach for determining oligopolistic market equilibrium. Mathematical<br />
Programming, 24:92–106, 1982.<br />
[48] K.G. Murty. Linear Complementarity, Linear and Nonlinear Programming.<br />
University of Michigan, internet edition, 1997.<br />
[49] J.S. Pang. Newton’s methods for b-differentiable equations. Math. Oper. Res.,<br />
15:311–341, 1990.<br />
[50] J.S. Pang. A b-differentiable equations based, globally and locally quadratically<br />
convergent algorithm for nonlinear programs, complementarity and variational<br />
inequality problems. Mathematical Programming, 51:101–132, 1991.<br />
130
[51] L. Qi. Convergence analysis of some algorithms for solving nonsmooth<br />
equations. Mathematical Programming, 18:227–244, 1993.<br />
[52] M.V. Solodov and B.F. Svaiter. A new projection method for variational<br />
inequality problems. SIAM J. on Control and Optimization, 37(3):765–776,<br />
1999.<br />
[53] M.V. Solodov and P. Tseng. Modified projection-type methods for monotone<br />
variational inequality. J. of Optimization Theory and applications, 91:126–140,<br />
1996.<br />
[54] P.K. Subramanian. Gauss-newton methods for the complementarity problem.<br />
J. Optim. Theory Appl., 77:467–482, 1993.<br />
[55] D. Sun. A class of iterative methods for nonlinear projection equations. SIAM<br />
J. on Control and Optimization, 34:1814–1830, 1996.<br />
[56] W. Sun and Y.X. Yuan. Optimization Theory And Methods, Nonlinear<br />
Programming. Springer, 2006.<br />
[57] P. Tseng. Analysis of an infeasible interior path-following method for<br />
complementarity problems. submitted to Math. Oper. Res., 1997.<br />
[58] P. Tseng. An infeasible path-following method for monotone complementarity<br />
problems. SIAM J. Optim., 7, 1997.<br />
[59] S.J. Wright. Primal-Dual Interior Point Methods. SIAM, 1997.<br />
[60] S. Xu. The global linear convergence of an infeasible non-interior path-following<br />
algorithm for complemenarity problems with uniform p-functions. Mathematical<br />
Programming, (87):501–517, 2000.<br />
[61] N. Yamashita, H. Dan, and M. Fukushima. On the identification of degenerate<br />
indices in the nonlinear complementarity problem with the proximal point<br />
algorithm. Mathematical Programming, Se. A(99):377–397, 2004.<br />
131
[62] N. Yamashita and M. Fukushima. On stationary points of the implicit<br />
lagrangian for nonlinear complementarity problems. J. Optim. Theory Appl.,<br />
84:653–663, 1995.<br />
132