Você está na página 1de 108

Otimização Multiobjetivo

Otimização Não Linear

Professores:

Eduardo G. Carrano
Frederico G. Guimarães
Lucas S. Batista

{egcarrano,fredericoguimaraes,lusoba}@ufmg.br
www.ppgee.ufmg.br/⇠lusoba

Universidade Federal de Minas Gerais


Programa de Pós-Graduação em Engenharia Elétrica, Brasil
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

2 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Problemas de otimização

Formulação geral de problemas de otimização:


min f (x) 2 R, x 2 F
x

8
<gi (x)  0;
> i = 1, . . . , p (restrições de desigualdade)
F = hj (x) = 0; j = 1, . . . , q (restrições de igualdade)
>
:
x2X

3 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Problemas de otimização

Formulação geral de problemas de otimização:


min f (x) 2 R, x 2 F
x

8
<g(x)  0 (restrições de desigualdade)
>
F = h(x) = 0 (restrições de igualdade)
>
:
x2X

4 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Definições de referência

Função-objetivo
A função-objetivo (ou função-custo ou critério de otimização) é a fun-
ção f (·) : X 7! Y, X ⇢ Rn , Y ⇢ R, que deve ser otimizada (minimi-
zada) pelo algoritmo de otimização.

Ótimo global ou Mínimo global


O ponto x⇤ 2 X é ótimo global da função f (·) : X 7! Y se, para
qualquer x 6= x⇤ , temos f (x⇤ ) < f (x).

5 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Definições de referência

Mínimo local não estrito (weak local minimum)


O ponto x⇤ 2 X é um mínimo local não estrito da função f (·) : X 7! Y
se, para qualquer x 2 V✏ (x⇤ ) e x 6= x⇤ , temos f (x⇤ )  f (x).

Mínimo local estrito (strong local minimum)


O ponto x⇤ 2 X é um mínimo local estrito da função f (·) : X 7! Y se,
para qualquer x 2 V✏ (x⇤ ) e x 6= x⇤ , temos f (x⇤ ) < f (x).

6 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Definições de referência

Conjuntos abertos
Um conjunto X ⇢ Rn é dito aberto se

x0 2 X ) 9 ✏ | x 2 X 8 kx x0 k < ✏

Conjuntos fechados
Um conjunto X ⇢ Rn é dito fechado se seu complemento em relação
ao espaço for aberto.

7 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Definições de referência

Conjuntos compactos
Seja o conjunto Q ⇢ Rn . Esse conjunto é dito compacto se para todo
x1 , x2 2 Q tem-se kx1 x2 k = < 1 (i.e., x1 e x2 estão a uma
distância finita).

Vizinhança
Seja um ponto x 2 Rn . Uma vizinhança de x é qualquer conjunto
aberto que contenha x.

8 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Fundamentos

Definições de referência

Conjuntos convexos
Seja o conjunto Q ⇢ Rn . Esse conjunto é dito convexo se, para todo
x1 , x2 2 Q e 0   1, verifica-se que para z = x1 + (1 )x2
tem-se z 2 Q.

Exemplo
1 A = {(x1 , x2 ) : x12 + x22  4} ⇢ R2
2 A = {x : Ax  b}

9 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

10 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Função e funcional

Função
Uma função é uma relação que associa de maneira única membros
de um conjunto A com membros de um conjunto B, i.e.,

f : A 7! B (f : Rn 7! Rm )

Funcional
Um funcional é uma função que retorna um único valor (escalar), i.e.,

f : Rn 7! R1

11 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Funções convexas

Definição
Uma função f (·) : X 7! Y é dita uma função convexa sobre X ⇢ Rn
se, 8 x1 , x2 2 X e 0   1, tem-se que

f [ x1 + (1 )x2 ]  f (x1 ) + (1 )f (x2 )

Uma função é estritamente convexa se, considerando 0 < < 1,


a desigualdade acima for estrita.

12 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Funções quase-convexas

Definição
Uma função f (·) : X 7! Y é dita uma função quase-convexa sobre
X ⇢ Rn se, 8 x1 , x2 2 X e 0   1, tem-se que

f [ x1 + (1 )x2 ]  max{f (x1 ), f (x2 )}

13 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Superfície de nível e região sub-nível

Superfície de nível
A superfície de nível (ou curva de nível) de uma função f (·) : X 7! Y,
X ⇢ Rn , é definida como:

S(f , ↵) = {x 2 X : f (x) = ↵}

Região de subnível
Associada à função f (·), existe o conjunto R(f , ↵) denominado região
de subnível:
R(f , ↵) = {x 2 X : f (x)  ↵}
Se f (·) é convexa, R(f , ↵) é um conjunto convexo.

14 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Modalidade de funções

Função unimodal
Uma função f (·) : X 7! Y, X ⇢ Rn , é dita unimodal se R(f , ↵) é um
conjunto conexo para todo ↵ 2 R.

A função f (·) é ainda estritamente unimodal se R(f , ↵) é um conjunto


compacto para todo ↵ 2 R.

Função multimodal
Uma função f (·) : X 7! Y, X ⇢ Rn , é dita multimodal se R(f , ↵) é um
conjunto desconexo para algum ↵ 2 R.

Quantos mínimos uma função unimodal pode apresentar?

15 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Bacias de atração

Ao redor de mínimos locais existem regiões nas quais a função se


comporta como unimodal. Tais regiões são denominadas bacias
de atração.

Bacia de atração
Seja f (·) : X 7! Y, X ⇢ Rn , e x⇤ 2 X um mínimo local de f (·). A bacia
de atração de x⇤ , representada por B(x⇤ ), é definida como a maior
região conexa R(f , ↵) que contém x⇤ . Restrita a essa região, f (·) é
unimodal.

Um método de busca local converge para x⇤ se o ponto inicial


x0 2 B(x⇤ ).

16 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Funções contínuas

Definição
Uma função contínua é aquela para a qual uma pequena variação na
entrada gera uma pequena variação no resultado da função.

Uma função f (·) : X 7! Y, X ⇢ Rn , é contínua se 8 x0 2 X :

1 f (x0 ) é definido;

2 lim f (x) = f (x0 ).


x!x0

17 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Diferenciabilidade

Uma função f (·) : X 7! Y, X ⇢ Rn , é diferenciável em x 2 X se


existe o vetor Gradiente dado por:
⇣ ⌘
@f @f @f
rf (x) = @x 1 @x 2
· · · @x n

Uma função f (·) : X 7! Y, X ⇢ Rn , é diferenciável de 2a ordem


em x 2 X se existe a matriz Hessiana dada por:
0 1
@ 2 f /@x12 · · · @ 2 f /@x1 @xn
H(x) = @
B .. .. .. C
. . . A
@ 2 f /@xn @x1 ··· @ 2 f /@xn2

18 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Diferenciabilidade

Exemplo
Seja a função f (x) = 100(x2 x12 )2 + (1 x1 )2 . Calcule seu vetor
gradiente e a matriz Hessiana.

19 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Diferenciabilidade

Exemplo
Seja a função f (x) = 100(x2 x12 )2 + (1 x1 )2 . Calcule seu vetor
gradiente e a matriz Hessiana.

Solução

@f
= 400x1 (x2 x12 ) 2(1 x1 )
@x1
@f
= 200(x2 x12 )
@x2

19 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Diferenciabilidade

Exemplo
Seja a função f (x) = 100(x2 x12 )2 + (1 x1 )2 . Calcule seu vetor
gradiente e a matriz Hessiana.

Solução

@2f
= 400x2 + 1200x12 + 2
@x12
@2f
= 200
@x22
@2f
= 400x1
@x1 @x2

20 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Séries de Taylor

Definição
Uma função continuamente diferenciável pode ser aproximada local-
mente por sua expansão em séries de Taylor:

1 ⇣ ⌘
3
f̄ (x) = f (x0 )+rf (x0 )0 (x x0 )+ (x x0 )0 H(x0 )(x x0 )+O kx x0 k
2

A função f̄ (·) representa a aproximação de f (·) em torno de x0 .

21 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Subgradiente

Definição
Seja uma função convexa f (·) : X 7! Y, X ⇢ Rn . Um funcional linear
f sb é um subgradiente de f (·) no ponto x0 se:

f (x) f (x0 ) + f sb (x x0 ) , 8 x

Por exemplo, o subgradiente de f (x) = |x| é qualquer número real no


intervalo [ 1, 1].

22 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Direções factíveis e direções minimizantes

Direções factíveis
Diz-se que d é uma direção factível a partir de um ponto x0 2 X ,
X ⇢ Rn , se existe um ↵
¯ > 0 tal que (x0 + ↵d) 2 X 8 ↵ 2 [0, ↵
¯ ].

Direções minimizantes
Seja f (·) : X 7! Y, X ⇢ Rn , uma função diferenciável e rf (x) o
gradiente de f (·) no ponto x 2 X . Seja ainda d 2 Rn . Então, se

d · rf (x) < 0

existe ✏ > 0 tal que:


f (x + ✏d) < f (x)
Diz-se que d é uma direção minimizante de f (·) no ponto x.

23 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Características gerais de funções convexas

Funções convexas
Seja f (·) uma função duas vezes diferenciável sobre um conjunto con-
vexo X ⇢ Rn . Então são equivalentes as seguintes afirmativas:

1 f [ x + (1 )y]  f (x) + (1 )f (y) 8 x, y 2 X e 2 [0, 1]


2 f (y) f (x) + rf (x)0 (y x) 8 x, y 2 X
3 H(x) 0 8x2X

Relação de implicabilidade
f (·) convexa , (1) ou (2) ou (3)

24 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Exemplos

25 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Exemplos

26 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Exemplos

27 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Caracterização de funções

Exemplos

28 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

29 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas irrestritos

Theorem (Condição necessária de 1a ordem)


Seja x⇤ 2 X um mínimo local da função f (·) : X 7! Y, X ⇢ Rn . O
vetor gradiente em x⇤ é nulo.

Demonstração.
Usando uma aproximação de 1a ordem, temos:
⇣ ⌘
2
f (x) = f (x⇤ ) + g⇤ 0 (x x⇤ ) + O kx x⇤ k

Se x⇤ é mínimo local, então f (x⇤ )  f (x), 8 x 2 V✏ (x⇤ ). Assim:

f (x) f (x⇤ )
⇣ ⌘
2
f (x⇤ ) + g⇤ 0 (x x⇤ ) + O kx x⇤ k f (x⇤ )

30 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas irrestritos

Theorem (Condição necessária de 1a ordem)


Seja x⇤ 2 X um mínimo local da função f (·) : X 7! Y, X ⇢ Rn . O
vetor gradiente em x⇤ é nulo.

Demonstração.
⇣ ⌘
2
g⇤ 0 ( ↵g⇤ ) + O kx x⇤ k 0
⇣ ⌘
2 2
↵ kg⇤ k + O kx x⇤ k 0

O (kx x⇤ k2 ) 2
Considerando que lim⇤ ↵ = 0, tem-se kg⇤ k  0, implicando
x!x

rf (x⇤ ) = 0

31 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas irrestritos

Theorem (Condição necessária de 2a ordem)


Seja x⇤ 2 X um mínimo local da função f (·) : X 7! Y, X ⇢ Rn . A
matriz Hessiana em x⇤ é semidefinida positiva.

Demonstração.
Usando uma aproximação de 2a ordem, temos:
⇣ ⌘
3
f (x) = f (x⇤ ) + g⇤ 0 (x x⇤ ) + 0.5(x x⇤ )0 H⇤ (x x⇤ ) + O kx x⇤ k

Se x⇤ é mínimo local, então f (x⇤ )  f (x), 8 x 2 V✏ (x⇤ ), e g⇤ = 0:

f (x) f (x⇤ )
⇣ ⌘
3
f (x⇤ ) + 0.5(x x⇤ )0 H⇤ (x x⇤ ) + O kx x⇤ k f (x⇤ )
⇣ ⌘
3
0.5(x x⇤ )0 H⇤ (x x⇤ ) + O kx x⇤ k 0
32 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas irrestritos

Theorem (Condição necessária de 2a ordem)


Seja x⇤ 2 X um mínimo local da função f (·) : X 7! Y, X ⇢ Rn . A
matriz Hessiana em x⇤ é semidefinida positiva.

Demonstração.
⇣ ⌘
3
1 1 O kx x⇤ k
(x x⇤ )0 H⇤ (x x⇤ ) + 0
2 kx x⇤ k2 kx x⇤ k
2

O (kx x⇤ k3 )
Considerando que lim⇤ kx x⇤ k2
= 0, tem-se:
x!x

u0 H⇤ u 0

implicando que H⇤ é semidefinida positiva.

33 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas irrestritos

Interpretando as condições necessárias


As condições necessárias devem ser verdadeiras para todo ótimo lo-
cal. Entretanto, um ponto que satisfaça estas condições não precisa
ser um ótimo.

Theorem (Condições suficientes)


Suponha f : Rn 7! R duas vezes diferenciável no ponto x⇤ . Se
rf (x⇤ ) = 0 e H(x⇤ ) é definida positiva (i.e., H(x⇤ ) > 0), x⇤ é um
mínimo local estrito.

34 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

E no caso de problemas restritos?

Como determinar as condições de otimalidade?

Exemplo
Seja o problema restrito a seguir:

min f (x) = x12 + x22 , sujeito a h(x) = (x1 4)2 + x22 4 = 0.

35 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

36 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

O mínimo global de f (x) sobre a curva h(x) = 0 é x⇤ = (2, 0).

Neste ponto, os vetores rf e rh são colineares e vale a relação:

rf (x⇤ ) = ⇤
rh(x⇤ )

Desenvolvendo, tem-se:

rf (x⇤ ) + ⇤
rh(x⇤ ) = 0

r [f (x) + h(x)]x=x⇤ = 0
rx L(x⇤ , ⇤
)=0

com L(x, ) = f (x) + h(x).

37 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

Este exemplo ilustra que a solução do problema restrito

min f (x) sujeito a h(x) = 0

é um ponto crítico da função

L(x, ) = f (x) + h(x)

Ponto crítico implica que:



rx L
=0
r L

38 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

Com relação a uma restrição de desigualdade, podemos conver-


ter g(x)  0 em g(x) + z 2 = 0, sendo z uma variável de folga:

min f (x) sujeito a {g(x)  0 ou g(x) + z 2 = 0}

A função Lagrangeana é dada por


⇥ ⇤
L(x, z, µ) = f (x) + µ g(x) + z 2

O ponto crítico fornece:


2 3 8
rx L < rf (x⇤ ) + µ⇤ rg(x⇤ ) = 0
4 rz L 5 = 0 ) 2µ⇤ z ⇤ = 0
:
rµ L g(x⇤ ) + z ⇤ 2 = 0

39 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

A condição 2µz = 0 implica que ou µ = 0 ou z = 0:

1 Se z = 0, temos g(x⇤ ) + z 2 = g(x⇤ ) = 0. A solução está na


fronteira da região factível e dizemos que a restrição g está ativa.

2 Se µ = 0, então z pode ser diferente de zero. Logo, g(x⇤ ) < 0 e


dizemos que a restrição g está inativa no ponto solução (restrição
satisfeita com folga).

3 Se rf (x⇤ ) = 0 e g(x⇤ ) = 0, então µ = 0 e z = 0. Neste caso, g é


dita fracamente ativa.

40 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade para problemas restritos

Podemos substituir a condição 2µ⇤ z ⇤ = 0 por uma condição equi-


valente µ⇤ g(x⇤ ) = 0, eliminando a necessidade de usar a variável
de folga z.

1 Se g(x⇤ ) = 0: restrição ativa e µ 0.

2 Se g(x⇤ ) < 0: restrição inativa e necessariamente µ = 0.

41 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade de Karush-Kuhn-Tucker

Seja o problema de otimização

x⇤ = arg min f (x) 2 R, x 2 F


x

8
<gi (x)  0;
> i = 1, . . . , p
F = hj (x) = 0; j = 1, . . . , q
>
:
x2X
x⇤ é solução ótima do problema de otimização se existem
multiplicadores de Lagrange µ⇤i 0 e ⇤j tais que:
8 Pp Pq
>
> rf (x⇤ ) + i=1 µ⇤i rgi (x⇤ ) + j=1 ⇤ ⇤
j rhj (x ) =0
>
<µ⇤ g (x⇤ ) = 0,
i i i = 1, . . . , p
>
>
> gi (x )  0,

i = 1, . . . , p
:
hj (x⇤ ) = 0, j = 1, . . . , q

42 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade de Karush-Kuhn-Tucker

Theorem (Condições de otimalidade)


O ponto x⇤ 2 X é mínimo global do problema primal se existe µ ⇤ 0
tal que (x⇤ , µ ⇤ ) satisfaça às seguintes condições:
⇥ ⇤
1 L(x⇤ , µ ⇤ ) = f (x⇤ ) + µ ⇤ 0 g(x⇤ ) = minx f (x) + µ ⇤ 0 g(x)
2 µ⇤i gi (x⇤ ) = 0
3 gi (x⇤ )  0

Demonstração.
Para uma outra solução viável z 2 X , z 6= x⇤ , temos:

f (x⇤ ) = f (x⇤ ) + µ⇤ 0 g(x⇤ )  f (z) + µ⇤ 0 g(z)  f (z)

em que a igualdade segue de (2), a primeira desigualdade segue de


(1) e a segunda desigualdade é válida porque µ⇤i gi (z)  0. Dessa
forma, f (x⇤ )  f (z), mostrando que x⇤ é a solução do problema.
43 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Condições de otimalidade de Karush-Kuhn-Tucker

Convém destacar que se as funções são diferenciáveis, podemos


substituir a condição (1) por:
p
X
rf (x⇤ ) + µ⇤i rgi (x⇤ ) = 0
i=1

levando às condições de Karush-Kuhn-Tucker;

Se, além disso, o problema for convexo, i.e., se f (·) for convexa e
as restrições definirem uma região viável convexa, então o ponto
de mínimo local é também mínimo global.

44 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Condições de otimalidade

Em resumo

Problemas irrestritos:
(
rf (x⇤ ) = 0
H(x⇤ ) > 0

Problemas restritos:

8 Pp Pq
> ⇤ ⇤ ⇤
>rf (x ) + i=1 µi rgi (x ) + j=1
⇤ ⇤
j rhj (x ) =0
>
>
>
>µ⇤i gi (x⇤ ) = 0, i = 1, . . . , p
<
µ⇤i 0, i = 1, . . . , p
>
>
>
> gi (x )  0,

i = 1, . . . , p
>
>
:h (x⇤ ) = 0, j = 1, . . . , q
j

45 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

46 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Problema de otimização unidimensional

Definição

↵⇤ = arg min ✓(↵) 2 R, ↵ 2 [0, +1]


✓(↵) = f (xk + ↵d) , xk e d 2 Rn

Exemplo
Determinar x1 que minimiza f (x) = 2x21 + x22 partindo de x0 = [1 1] na
direção d = rf (x0 ).

47 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Métodos de eliminação

Busca irrestrita;

Busca dicotômica;

Busca da bisseção;

Método de Fibonacci;

Método da Seção Áurea.

Exigem funções unimodais, porém não exigem diferenciabilidade.

48 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Busca irrestrita

Não exige que o espaço de busca seja conhecido.


Versão elementar:
Move-se numa direção minimizante d usando passo fixo s;
Determina-se uma sequência de pontos uk +1 = uk + s;
O passo usado deve ser pequeno em relação à precisão desejada;
Assume-se unimodalidade da função ao longo de d;
Limitação: pode exigir elevado número de avaliações de ✓(·) se u0
estiver distante de u ⇤ e s for pequeno.

Versão melhorada:
Usar sk +1 = sk , > 1, até “cercar” o intervalo que contém u ⇤ ;
Feito isto, reduzir o intervalo até uma precisão desejada.

49 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Busca dicotômica

Assume que o intervalo (a, b) que cerca u ⇤ seja conhecido.

Escolhe dois pontos próximos ao centro do intervalo

L0 L0
u= , v= + , >0
2 2 2 2
onde L0 é o tamanho do intervalo inicial.

Baseado na avaliação de ✓(·) nestes dois pontos, exclui-se quase


metade do intervalo.

O processo se repete até atingir a precisão desejada.

50 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Busca da bisseção

Exclui metade do intervalo de busca a cada iteração.

Especifica três pontos, u, c e v , igualmente espaçados no inter-


valo inicial (a, b);

Assumindo unimodalidade, tem-se:

Se ✓u < ✓c < ✓v , deleta (c, b), e faz-se b = c e c = u;

Se ✓u > ✓c > ✓v , deleta (a, c), e faz-se a = c e c = v ;

Se ✓u > ✓c e ✓v > ✓c , deleta (a, u) e (v , b), e faz-se a = u e b = v .

Especifica novos pontos u e v , e continua o processo até L  ✏.

51 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Método de Fibonacci

Assume unimodalidade de ✓(·) e o conhecimento do intervalo


[a, b] que contém o ótimo.

Define dois pontos u, v 2 [a, b]:

Se ✓(u) < ✓(v ), mínimo está em [a, v ];

Se ✓(u) > ✓(v ), mínimo está em [u, b].

Apenas um novo ponto precisará ser especificado nas iterações


subsequentes.

O número de avaliações de ✓ (ou a precisão desejada) deve ser


especificado.

52 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Método de Fibonacci

Os pontos u e v são definidos usando a série de Fibonacci:


F0 = F1 = 1 , Fi = Fi 1 + Fi 2 , i = 2, 3, . . . , n

Dado o intervalo inicial [a0 , b0 ], tem-se:


u0 = b0 (Fn 1 /Fn )(b0 a0 )
v0 = a0 + (Fn 1 /Fn )(b0 a0 )
Para uma iteração i qualquer (i = 0, . . . , n 2), tem-se:
ui = bi (Fn i 1 /Fn i )(bi ai )
vi = ai + (Fn i 1 /Fn i )(bi ai )
O comprimento do intervalo após k iterações é:
Lk = (Fn k /Fn )(b0 a0 )
53 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em reduções sucessivas de intervalos

Método da seção áurea

Similar ao método de Fibonacci, porém não exige que o número


de iterações seja especificado.
O processo termina ao atingir a precisão desejada.
Para uma iteração i qualquer (i = 0, 1, . . .), tem-se:

ui = bi F (bi ai ) , vi = ai + F (bi ai )
p
onde F = ( 5 1)/2 = 0.618.
O comprimento do intervalo após k iterações é:

Lk = (0.618)k (b0 a0 )

O tamanho do intervalo é multiplicado por 0.618 a cada iteração.


Os métodos de Fibonacci e seção áurea são os mais eficientes,
porém o segundo é mais prático.
54 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

55 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Métodos de interpolação

Método de interpolação quadrática;

Métodos de cálculo de raízes:

Método de Newton;

Método da Secante.

Exigem funções “bem comportadas” (convexas ou continuamente


diferenciáveis de 1a ou 2a ordem).

56 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Método de interpolação quadrática

A função ✓(↵) é aproximada por uma quadrática q(↵) e seu mí-


nimo ↵
¯ ⇤ é determinado.
Sendo q(↵) = a + b↵ + c↵2 , a condição de 1a ordem fornece

dq b
¯⇤ =
= b + 2c↵ = 0 , ou seja , ↵
d↵ 2c

Pela condição de 2a ordem q 00 (¯


↵⇤ ) > 0, i.e., c > 0.
Basta avaliar q(·) em três pontos distintos A < B < C, que satis-
façam c > 0, e calcular ↵¯ ⇤ . Para c > 0, ✓B < max{✓A , ✓C }.
Enquanto ↵
¯ ⇤ não for suficientemente próximo de ↵⇤ , estima-se
uma nova quadrática:
? ?
? q(¯ ⇤
↵⇤ ) ?
? ↵ ) ✓(¯ ?✏
? ↵⇤ )
✓(¯ ?

57 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Método de Newton

Considera uma aproximação quadrática usando séries de Taylor:

1 00
✓(↵) = ✓(↵k ) + ✓0 (↵k )(↵ ↵k ) + ✓ (↵k )(↵ ↵k )2
2

Baseando-se na condição de 1a ordem:

✓0 (↵) = ✓0 (↵k ) + ✓00 (↵k )(↵ ↵k ) = 0

✓0 (↵k )
↵k +1 = ↵k
✓00 (↵k )

A convergência do método pode ser verificada usando:

|✓0 (↵k +1 )|  ✏

58 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Método de Newton

As derivadas são aproximadas usando diferenças finitas:

✓(↵k + ↵) ✓(↵k ↵)
✓0 (↵k ) =
2 ↵
✓(↵k +2✓(↵k ) + ✓(↵k
↵) ↵)
✓00 (↵k ) =
↵2
em que ↵ representa uma pequena variação.

59 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Método da Secante

Utiliza uma aproximação similar ao método de Newton:

✓0 (↵) = ✓0 (↵k ) + s(↵ ↵k ) = 0

em que s representa a inclinação entre os pontos (A, ✓0 (A)) e


(B, ✓0 (B)):
✓0 (B) ✓0 (A)
s=
B A
em que A e B são estimativas de ↵⇤ .
O processo iterativo utiliza
✓0 (↵k )
↵k +1 = ↵k
s
A convergência do método pode ser verificada usando:

|✓0 (↵k +1 )|  ✏
60 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Considerações práticas

Métodos de interpolação:

São mais baratos, porém dependem da estimação de derivadas;

Podem falhar caso a função não seja “bem comportada”.

Métodos de eliminação:

São mais usuais e práticos;

Porém, precisam determinar o intervalo [a, b] que cerca ↵⇤ :

Comumente emprega-se Busca Irrestrita.

61 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Considerações práticas

Algoritmo 1: Busca irrestrita – algoritmo para cercar intervalo (a,b)


Input: xk 2 X , função-objetivo f (·)
1 a 0; b s;
2 calcule ✓(a) = ✓(0) = f (xk );
3 calcule ✓(b);
4 NFC1 2;
5 while ✓(b) < ✓(a) do
6 a b; ✓(a) ✓(b);
7 b 2b; calcule ✓(b);
8 NFC1 NFC1 + 1;
9 end
10 if NFC1  3 then
11 a 0;
12 else
13 a a/2;
14 end
15 return a, b;
62 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos baseados em interpolação

Considerações práticas

Algoritmo 2: Algoritmo da Seção Áurea


1 xa b 0.618(b a) e xb a + 0.618(b a);
2 ✓a ✓(xa ) e ✓b ✓(xb );
3 while (b a > ✏) do
4 if (✓a > ✓b ) then
5 a xa ;
6 xa xb e xb a + 0.618(b a);
7 ✓a ✓b e ✓b ✓(xb );
8 else
9 b xb ;
10 xb xa e xa b 0.618(b a);
11 ✓b ✓a e ✓ a ✓(xa );

12 ↵ (a + b)/2;

63 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

64 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos determinísticos

Métodos baseados em derivadas:

Método do Gradiente;

Método de Newton;

Métodos Quase-Newton;

Método de Gradientes Conjugados;

Métodos sem derivadas:

Método Nelder-Mead Simplex;

Método Hooke-Jeeves.

65 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos de direção de busca

Estrutura geral
A estrutura geral de métodos baseados em direção de busca é da
forma:
xk +1 xk + ↵k dk (1)

Os métodos variam na forma como o passo ↵k e a direção dk são


escolhidos.

66 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método do Gradiente

O Método do Gradiente ou Método da Descida Mais Íngreme


(Steepest Descent Method) é o método mais simples entre os
métodos de direção de busca.

dk = rf (xk )

67 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método do Gradiente

Algoritmo 3: Método do Gradiente


Input: x0 2 X , função-objetivo f (·)
1 k 0;
2 while ¬ critério de parada do
3 Estime rf (xk );
4 dk rf (xk );
5 ↵k arg min↵ f (xk + ↵dk );
6 xk +1 xk + ↵k dk ;
7 k k + 1;
8 end

68 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método do Gradiente

O algoritmo gera uma sequência monotônica {xk , f (xk )} tal que


rf (xk ) ! 0 quando k ! 1.

O passo ↵k é um escalar não negativo que minimiza f (xk + ↵dk ),


ou seja, representa um passo dado na direção minimizante dk .

Na prática, ↵k é obtido com um método de minimização unidire-


cional.

69 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método do Gradiente

Avaliação numérica do gradiente


Para avaliar o vetor gradiente numericamente, podemos usar a fór-
mula de diferenças finitas:

@f f (x + i ei ) f (x)
⇡ , i = 1, . . . , n
@xi x i

Uma fórmula mais precisa é a diferença finita central:

@f f (x + i ei ) f (x i ei )
⇡ , i = 1, . . . , n
@xi x 2 i

70 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método de Newton

Desenvolvimento
Seja f (·) : X 7! Y, f (·) 2 C 2 . Usando a expansão em séries de Taylor
em torno de xk , temos:
1 ⇣ ⌘
0 3
f (x) = f (xk ) + rf (xk ) (x xk ) + (x xk )0 Hk (x xk ) + O kx xk k
2
Assumindo a aproximação de 2a ordem, derivando e igualando a zero,
obtemos:
rf (xk ) + H(xk )(xk +1 xk ) = 0
1
xk +1 = xk H (xk )rf (xk )

71 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método de Newton

Se f (·) for quadrática, o método de Newton determina a solução


ótima em um passo.

A matriz H 1 (xk ) pode ser interpretada como uma “correção” apli-


cada à direção rf (xk ), levando em conta a curvatura da função.

Para casos gerais, com funções não quadráticas, deve-se deter-


minar o passo ótimo ↵k :
1
xk +1 xk + ↵k dk , dk = H (xk )rf (xk )

72 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método de Newton

Algoritmo 4: Método de Newton


Input: x0 2 X , função-objetivo f (·)
1 k 0;
2 while ¬ critério de parada do
3 Estime rf (xk );
4 Estime H(xk );
5 dk H 1 (xk )rf (xk );
6 ↵k arg min↵ f (xk + ↵dk );
7 xk +1 xk + ↵k dk ;
8 k k + 1;
9 end

73 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método de Newton

O método apresenta convergência quadrática;

A convergência do método de Newton é atendida sob duas pre-


missas:

1 que H(xk ) seja não singular, i.e., possua inversa;

2 que H(xk ) seja definida positiva, para garantir que dk = Hk 1 gk


seja uma direção minimizante.

74 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método de Newton

Dificuldades
Necessita do cálculo da matriz inversa;

Mal-condicionamento numérico da matriz Hessiana dificulta o cál-


culo de sua inversa;

Derivadas numéricas: maiores erros numéricos e muitas avalia-


ções de função para a aproximação por diferenças finitas.

75 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Motivação
Aproximar iterativamente a inversa da matriz Hessiana, evitando
o cálculo da inversa;

Evitar o cálculo numérico de derivadas segundas;

Manter a convergência quadrática do método de Newton.

76 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Aproximando a inversa da Hessiana


É possível aproximar iterativamente a inversa da Hessiana a partir de
uma recursão da forma:

Dk +1 = Dk + ↵k zk z0k

em que zk z0k é uma matriz simétrica definida positiva e Dk é uma es-


timativa de Hk 1 . A atualização dessa estimativa é construída em fun-
ção dos vetores xk e rf (xk ) das iterações anteriores.

77 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Dois métodos particularmente eficientes foram desenvolvidos para


produzir estimativas recursivas para Hk 1 :

Método DFP – Davidon-Fletcher-Powell;

Método BFGS – Broyden-Fletcher-Goldfarb-Shanno.

78 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Correção DFP
Dada por:
vk v0k Dk rk r0k Dk
CDFP
k =
v0k rk r0k Dk rk

vk = xk xk 1
rk = gk gk 1
gk = rf (xk )

79 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Correção BFGS
Dada por:
✓ ◆
r0 Dk rk vk v0k vk r0k Dk + Dk rk v0k
CBFGS
k = 1 + k0
rk vk v0k rk r0k vk

vk = xk xk 1
rk = gk gk 1
gk = rf (xk )

80 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Métodos Quase-Newton

Família Broyden
Posteriormente, Broyden agrupou os métodos DFP e BFGS numa es-
trutura mais geral, a família Broyden.

Ck = (1 )CDFP
k + CBFGS
k

A fórmula de atualização da estimativa da inversa da Hessiana é:

Dk +1 = Dk + Ck

81 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método Quase-Newton

Algoritmo 5: Família Broyden


Input: x0 2 X , função-objetivo f (·)
1 k 0, Dk I;
2 while ¬ critério de parada do
3 Estime gk = rf (xk );
4 dk Dk gk ;
5 ↵k arg min↵ f (xk + ↵dk );
6 xk +1 xk + ↵k dk ;
7 gk +1 rf (xk +1 );
8 Calcule CDFP
k e CBFGS
k ;
9 Ck (1 )Ck + CBFGS
DFP
k ;
10 Dk +1 = Dk + Ck ;
11 k k + 1;
12 end

82 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Histórico
Apresentado pela primeira vez em 1908 por Schmidt, reinventado
de forma independente em 1948 e aprimorado nos anos 1950;

Desenvolvido inicialmente para a solução de sistemas lineares,


ainda usado em sistemas com matrizes esparsas;

Em 1964, Fletcher e Reeves generalizaram o método para resol-


ver problemas de otimização não linear irrestrita.

83 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Solução de sistemas lineares


O método dos gradientes conjugados foi desenvolvido para resolver
iterativamente grandes sistemas lineares da forma

Ax = b

com A simétrica e definida positiva.

84 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Solução de sistemas lineares


Considere a forma quadrática:

1 0
f (x) = x Ax b0 x + c
2
O mínimo global dessa função pode ser obtido a partir da condição
de otimalidade de 1a ordem:

rf (x) = Ax b=0

O mínimo de f é também a solução do sistema linear Ax = b.

85 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Solução de sistemas lineares


O método atualiza a solução dando um passo ↵k na direção oposta
ao gradiente. A direção oposta ao gradiente é dada por:

rf (x) = b Ax = r (resíduo)

Assim:
dado xk ) rk = b Axk
xk +1 = xk + ↵k rk

86 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Solução de sistemas lineares


O tamanho do passo pode ser determinado analiticamente:

d d d
f (xk +1 ) = rf (xk +1 )0 xk +1 = rf (xk +1 )0 (xk + ↵k rk ) = r0k +1 rk
d↵ d↵ d↵
o que implica resíduos ortogonais:

r0k +1 rk = 0
(b Axk +1 )0 rk = 0
(b Axk ↵k Ark )0 rk = 0

que resulta em:


r0k rk
↵k =
r0k Ark

87 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Algoritmo 6: Método dos Gradientes Conjugados


Input: x0 , matriz de coeficientes A
1 k 0;
2 rk b Axk ; dk rk ;
3 while ¬ critério de parada do
r0k rk
4 ↵k d0 Adk ; k
5 xk +1 xk + ↵k dk ;
6 rk +1 rk ↵k Adk ;
r0k +1 rk +1
7 k r0k rk ;
8 dk +1 rk +1 + k dk ;
9 k k + 1;
10 end

88 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Gradientes conjugados para otimização não linear


A versão do método para otimização não linear apresenta três dife-
renças básicas:

O resíduo não pode ser calculado recursivamente;

O tamanho do passo não pode ser determinado analiticamente -


deve-se usar busca unidimensional;

Há diferentes escolhas para .

89 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Algoritmo 7: Método dos Gradientes Conjugados


Input: x0 2 X , função-objetivo f (·)
1 k 0;
2 r0 rf (x0 ); d0 r0 ;
3 while ¬ critério de parada do
4 ↵k arg min↵ f (xk + ↵dk ) ;
5 xk +1 xk + ↵k dk ;
6 rk +1 rf (xk +1 ) ;
7 Calcular k ;
8 dk +1 rk +1 + k dk ;
9 k k + 1;
10 end

90 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Gradientes conjugados para otimização não linear


Duas fórmulas bem conhecidas para k são:

FR r0k +1 rk +1
Fletcher-Reeves: k =
r0k rk

PR r0k +1 (rk +1 rk )
Polak-Ribière: k =
r0k rk

91 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos de direção de busca

Método dos Gradientes Conjugados

Como o método se baseia na geração de n direções conjugadas


no espaço n-dimensional, deve-se reiniciar o método a cada n
iterações em problemas não quadráticos;

Convergência em n iterações em funções quadráticas. Em fun-


ções não quadráticas, as direções deixam de ser conjugadas
após algumas iterações, sendo preciso reinício periódico;

Em geral, métodos quase-Newton convergem em menos itera-


ções, porém requerem mais computação e mais memória por
iteração. Portanto, gradientes conjugados é mais indicado em
problemas de elevada dimensão.

92 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Sumário

1 Otimização não linear


Fundamentos
Caracterização de funções
Condições de otimalidade

2 Métodos de busca unidimensional


Métodos baseados em reduções sucessivas de intervalos
Métodos baseados em interpolação

3 Métodos determinísticos
Métodos de direção de busca
Métodos determinísticos sem derivadas

93 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Métodos determinísticos

Métodos baseados em derivadas:

Método do Gradiente;

Método de Newton;

Métodos Quase-Newton;

Método de Gradientes Conjugados;

Métodos sem derivadas:

Método Nelder-Mead Simplex;

Método Hooke-Jeeves.

94 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Motivação

Métodos baseados em derivadas convergem mais rapidamente,


mas só podem ser usados em problemas caracterizados por fun-
ções continuamente diferenciáveis;

Em problemas com muitas variáveis, os erros numéricos introdu-


zidos por aproximações no cálculo do gradiente podem se tornar
significativos.

95 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

O método Nelder-Mead Simplex foi desenvolvido para otimização


não linear (não confundir com o método Simplex para programa-
ção linear);

O método trabalha com n + 1 pontos a cada iteração, e elimina o


“pior” ponto;

Um novo ponto é criado com base no ponto eliminado.

96 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Fecho convexo
O fecho convexo (ou invólucro convexo) de um conjunto A, denotado
por Ā, é definido como a interseção de todos os conjuntos convexos
que contêm A.

Politopo
O fecho convexo de um conjunto finito de pontos x1 , x2 , . . . , xk 2 Rn é
chamado politopo.

97 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Simplex
Se x2 x1 , x3 x1 , . . . , xk x1 são vetores linearmente independentes,
então o fecho convexo desse conjunto de pontos é chamado simplex.

O número máximo de vetores linearmente independentes em Rn


é n, portanto um simplex em Rn possui n + 1 vértices.

O simplex é assim chamado por ser o politopo mais simples de


sua dimensão.

98 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Usaremos a seguinte notação:

b 2 {1, . . . , n + 1} representa o índice do vértice com o melhor


valor de função-objetivo;

w 2 {1, . . . , n + 1} representa o índice do vértice com o pior valor


de função-objetivo;

s 2 {1, . . . , n + 1} representa o índice do vértice com o segundo


pior valor de função-objetivo.

O centróide da face oposta a xw é dado por:


n+1
1X
x̂ = xi
n
i=1
i6=w

99 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Reflexão: Visa rejeitar a pior solução e avançar o simplex na dire-


ção de melhora. Essa operação reflete o pior vértice do
simplex sobre a face oposta:

xr = x̂ + ↵ (x̂ xw ) , ↵ = 1

Expansão: Expande o simplex na direção de melhora:

xe = x̂ + (x̂ xw ) , =2

Contração externa: Contrai o simplex na direção de melhora:

xc+ = x̂ + (x̂ xw ) , = 0.5

Contração interna: Contrai o simplex internamente:

xc = x̂ (x̂ xw ) , = 0.5
100 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Algoritmo 8: Método Nelder-Mead Simplex


Input: {x1 , . . . , xn+1 } 2 X , função-objetivo f (·)
1 while ¬ critério de parada do
2 xr = x̂ + ↵ (x̂ xw ) ;
3 if f (xr ) < f (xb ) then Expansão
4 calcule e avalie xe ;
5 if f (xe ) < f (xr ) then xnew = xe ;
6 else xnew = xr ;
7 else if f (xr ) < f (xs ) then xnew = xr ;
8 else if f (xr ) < f (xw ) then Contração externa
9 calcule e avalie xc+ ;
10 if f (xc+ )  f (xw ) then xnew = xc+ ;
11 else if f (xr ) f (xw ) then Contração interna
12 calcule e avalie xc ;
13 if f (xc )  f (xw ) then xnew = xc ;
14 else
15 Encolhe o simplex
16 end
17 end

101 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Nelder-Mead Simplex

Critérios de parada do método são baseados no tamanho (volu-


me) do simplex;

Convergência para funções convexas provada apenas recente-


mente;

Inicialização do simplex pode ser obtida com perturbações orto-


gonais a x0 ;

Método usado na função fminsearch do MatlabTM .

102 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Hooke-Jeeves

O método Hooke-Jeeves testa pontos padrões a partir do ponto


atual;

Ele alterna direções de pesquisa na direção dos eixos coordena-


dos com direções de melhora do tipo xk +1 xk .

103 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Hooke-Jeeves

1 Seja x0 o ponto inicial e e1 , . . . , en as direções coordenadas. O


algoritmo testa os pontos x ± ei , fazendo um movimento na di-
reção de melhora ou ficando no ponto atual;

2 Após pesquisar todas as coordenadas, terminamos no ponto xk +1 ;

3 Neste ponto, efetuamos uma pesquisa na direção xk +1 xk :

z = xk +1 + ↵ (xk +1 xk )

4 A partir do melhor entre z e xk +1 , reinicia-se a pesquisa nas di-


reções coordenadas. Se a função não decrescer, então fazemos
/2 até que a precisão desejada seja atingida.

104 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Hooke-Jeeves

Algoritmo 9: Método Hooke-Jeeves


Input: x0 2 X , função-objetivo f (·), , ↵, ⇠
1 k 0, x x0 ;
2 while > ⇠ do
3 foreach i = 1 . . . , n do
4 if f (x + ei ) < f (x) then yi xi + ;
5 else if f (x ei ) < f (x) then yi xi ;
6 else yi xi ;
7 end
8 if f (y) < f (x) then
9 z y + ↵ (y x);
10 x best(z, y);
11 else
12 /2;
13 end
14 k k + 1;
15 end

105 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Métodos determinísticos sem derivadas

Método Hooke-Jeeves

O método Hooke-Jeeves é de fácil programação e é competitivo


computacionalmente com outros métodos;

Modificações podem ser incluídas, tais como um para cada va-


riável, ou acoplar métodos de busca unidirecional.

106 / 107
Otimização não linear Métodos de busca unidimensional Métodos determinísticos Literatura Especializada

Literatura Especializada

Singiresu S. Rao, Engineering Optimization: Theory and Practice, Wiley, 4th ed.,
2009.
Mokhtar S. Bazaraa, Hanif D. Sherali, C. M. Shetty, Nonlinear Programming: The-
ory and Algorithms, Wiley-Interscience, 3rd ed., 2006.
R. Fletcher, Practical Methods of Optimization, Wiley, 2000.

Geraldo R. Mateus, Henrique P. L. Luna, Programação Não Linear, V Escola de


Computação, Belo Horizonte, UFMG, 1986.

Início

107 / 107

Você também pode gostar