algoritmos numéricos de busca em otimização -...
TRANSCRIPT
Algoritmos Numéricos de Busca em Otimização
EA 044 Planejamento e Análisede Sistemas de Produção
DCA-FEEC-Unicamp
2
Tópicos
1-Introdução
2-Busca em otimização
3-Algoritmos numéricos de busca
4-Condições algébricas: melhor direção, factibilidade
5-Unimodalidade, convexidade, tratabilidade
6-Solução inicial factível
DCA-FEEC-Unicamp
3
1-Introdução
� Algoritmos de busca
– não informados (profundidade, largura,…)
– informados (gradiente, best-first,…)
� Características dos algoritmos de busca
– exatos (simplex, branch and bound, programação dinâmica,…)
– heurísticos (tabu, SA, AG, A, A*,… )
� Questões
– busca é a melhor maneira de resolver o problema?
– quais algoritmos de busca resolvem o problema?
– qual algoritmo é o mais eficiente para o problema?
DCA-FEEC-Unicamp
4
� Solução de um modelo de otimização
– uma escolha para os valores das variáveis de decisão
– em geral uma solução é um vetor do Rn
� Características dos algoritmos de busca
– melhoram soluções factíveis ao longo de direções factíveis
– baseiam-se em informações sobre a vizinhança da solução corrente
– vizinhanças dão uma natureza local às soluções
2-Busca em otimização
DCA-FEEC-Unicamp
� Vizinhança 0Rx},xy:y{)x( >∈<−= ε, N nε
ε
� Ponto interior
S∈⇒<−>∃ yεxy|0ε
SNSS n ⊂∃∈⊆ )x( seinteriorx,Rε
)(x 222
21 nxxx +++= L
||x|| norma (comprimento) de x
⇓
DCA-FEEC-Unicamp
5
DCA-FEEC-Unicamp
procedimentos que iniciam em uma solução factível e prosseguem ao longo de uma trajetória formada por soluções factíveis que sempre melhoram o valor da função objetivo (paradigma direção + passo).
xλxx 1 ∆+←+ tt
)(x)(x 1 tt ff ≤+
min ( x1− 4)2 + ( x2 − 4)2
sa 1.7 x1 + 3.0 x2 ≤ 152.2 x1 + 0.9 x2 ≤ 10x1, x2 ≥ 0
3-Algoritmos numéricos de busca
x1
x2
x*
y
f(x)
xo
x1
x2
x3
∆x direçãoλ > 0 passo
6
7
D
f
∈xsa
)x(max
∈∀∩∈∀
≥D
NDff ε
x
))x((x)x()x*(
D
f
∈xsa
)x(min
∈∀∩∈∀
≤D
NDf
x
))x((x)x(f)x*( ε
� Problemas de maximização
� Problemas de minimização
local
global
local
global
DCA-FEEC-Unicamp
8
� Ótimo local pode ser ótimo global
� Modelos mais tratáveis
– garantem ótimo local ≡ ótimo global
� Em geral ótimo local não é global
– executar algoritmos (busca) independentes
– melhor solução local → solução ótima
– ótimo aproximado (heurístico)
DCA-FEEC-Unicamp
925.0)4()(
25.0)3()1(
25.0)3()1(sa
)4()(1
30
)3()1(1
20
)3()1(1
60),(max
22
21
22
21
22
21
22
21
22
21
22
21
21
≥++
≥−+−
≥−++
++++
−+−++
−+++=
xx
xx
xx
xxxxxxxxf
Exemplo: problema de alocação
1 2
60.000 20.000
30.000
3
0 5−5
0
5
−5
x2
x1
DCA-FEEC-Unicamp
10
),( 21 xxf
x1
x2
DCA-FEEC-Unicamp
-6 -4 -2 0 2 4 6
-6
-4
-2
0
2
4
6
x1
x2x2
x1
DCA-FEEC-Unicamp
11
12
DCA-FEEC-Unicamp
Direção factível ∆x é uma direção factível em xt se
xt + λ ∆x ∈ Dλ > 0, suficientemente pequeno
λ = passo na direção ∆x x2
2 4 6 8 x1
2
4
6
8
0.3x1 + 0.4x2 ≥ 2.0
0.4x1 + 0.2x2 ≥ 1.5
0.2x1 + 0.3x2 ≥ 0.5
x1 ≤ 9
x2 ≤ 6
x1
x2
x3
x*D
13
Modelos ilimitados
x2
2 4 6 8 x1
2
4
6
8
x0
x1
D
∆x1
∆x2
∆x2: direção ilimitada
DCA-FEEC-Unicamp
DCA-FEEC-Unicamp
4-Condições algébricas: melhor direção
0x(x)
0x(x)
x)(xλ
λ)(xx)(xλ)(xx)λ(x
)/.../.../((x)
'
'
'
1
'
1
<∆∇
>∆∇
∆∇=∆
∆
∂+=∆∇+≈∆+
∂∂∂∂∂∂=∇
∑=
f
f
ff
xx
fffff
xfxfxff
t
n
jj
j
tttt
njgradiente de f(x) em x
melhora para max
melhora para min
14
15
DCA-FEEC-Unicamp
0x)((x)
(x)x
0)((x)
0(x)(x),x
' <∆∇
−∇=∆
>∆∇
≠∇∇=∆
f
f
xf
ff
'
Escolhendo
Escolhendo
melhora para max
melhora para min
Algoritmo busca local
Passo 0 Inicialização: com solução a factível x0 , t ← 0;
Passo 1 Direção e otimalidade: construir direção factível ∆xt+1 em xt; sedireção factível não existir, então parar; xt é um ótimo local;
Passo 2 Passo: se existir limites para valor de λ para o qual a função objetivomelhora, mantendo a factibilidade na direção ∆x, então escolher omaior valor λt+1; senão parar pois o modelo é ilimitado;
Passo 4 Avanço: determinar nova solução xt+1 = xt + λ∆xt+1; t = t + 1; ir para o Passo 1;
DCA-FEEC-Unicamp
16
17
-6 -4 -2 0 2 4 6
-6
-4
-2
0
2
4
6
x1
x2Exemplo: problema de alocação
x1
x2
DCA-FEEC-Unicamp
18
-2 -1.5 -1 -0.5 0
1
1.5
2
2.5
3
3.5
4
4.5
x1
x2
-6 -4 -2 0 2 4 6
-6
-4
-2
0
2
4
6
x1
x2
-1 -0.5 0 0.5 1-6
-5.5
-5
-4.5
-4
-3.5
-3
-2.5
-2
x1
x2x1
x2
DCA-FEEC-Unicamp
19
DCA-FEEC-Unicamp
Condições algébricas: factibilidade
0∆xafactível∆x;xa
0∆xafactível∆x;xa
0∆xafactível∆x;xa
1
'
1
'
1
'
1
'
1
'
1
'
=∆=⇔==
≤∆=⇔≤=
≥∆=⇔≥=
∑∑
∑∑
∑∑
==
==
==
n
jjj
n
jjj
n
jjj
n
jjj
n
jjj
n
jjj
xabxa
xabxa
xabxa
Restrição ativa:
Caso linear
bxan
jjj =∑
=1
20
5-Unimodalidade, convexidade, tratabilidade
� Características importantes do modelo
– unimodalidade
– convexidade
� Tratabilidade
– conveniência de análise do modelo
– modelos que garantem ótimo global = local
DCA-FEEC-Unicamp
21
Funções unimodais
x
f (x)
x
f (x)
)x(x,x 221 f∀
não é unimodal para max e min unimodal para maxnão unimodal para min
melhor que 121 xx∆x)x( −=⇒f melhora em x1
DCA-FEEC-Unicamp
22
DCA-FEEC-Unicamp
Conjuntos convexos
∀ x1, x2 ∈ D , x1 + λ (x2 − x1 ) ∈ D , 0 ≤ λ ≤1
convexo não convexos
D D
x1
x2
x1
x2
D
23
DCA-FEEC-Unicamp
2 4 6 8 x1
2
4
6
8
0.3x1 + 0.4x2 ≥ 2.0
0.4x1 + 0.2x2 ≥ 1.5
0.2x1 + 0.3x2 ≥ 0.5
x1 ≤ 9
x2 ≤ 6
D
x2
Todas restrições lineares ⇒ conjunto (espaço) factível convexo
D é convexo
24
� Ótimos locais são ótimos globais:
– funções objetivo unimodais
– modelos sem restrições
� Ótimos locais são ótimos globais quando:
– função objetivo é unimodal
– restrições são um conjunto convexo
– exemplos: modelos lineares, quadráticos
DCA-FEEC-Unicamp
25
6-Solução inicial factível
DCA-FEEC-Unicamp
Método de duas fases
0 - Modelo artificial: escolher uma solução inicial conveniente para o modelooriginal e construir modelo da Fase I adicionando (subtraindo) variáveisartificiais não negativas em cada uma das restrições violadas
1 - Fase I: atribuir valores para as variáveis artificiais para obter uma soluçãoinicial factível para o modelo artificial. Resolver problema de minimizar asomadas variáveis artificiais
2 -Teste de factibilidade: se a Fase I termina com soma= 0, ir para o passo 3pois a solução original é factível. Se soma> 0, parar: modelo original éinfactível. Caso contrário, repetir Fase 1 com diferentes valores iniciais.
3 - Fase II: construir solução inicial factível para o problema original eliminandoas componentes artificias do ótimo da Fase I.
26
DCA-FEEC-Unicamp
Método de duas fases: exemplo
Modelo da Refinaria de Petrolinea
min 20x1 + 15x2
sa 0.3x1 + 0.4x2 ≥ 2.00.4x1 + 0.2x2 ≥ 1.50.2x1 + 0.3x2 ≥ 0.5
x1 ≤ 9x2 ≤ 6
x1, x2 ≥ 0
escolha x1 = x2 = 0
viola as restrições desigualdade (1), (2) e (3)
(1)(2)(3)
DCA-FEEC-Unicamp
min x3 + x4 + x5
sa 0.3x1 + 0.4x2 + x3 ≥ 2.00.4x1 + 0.2x2 + x4 ≥ 1.50.2x1 + 0.3x2 + x5 ≥ 0.5
x1 ≤ 9x2 ≤ 6
x1, x2, x3, x4, x5 ≥ 0
Fase I: depois de fixar variáveis do problema original nos valores escolhidosinicializar as variáveis artificiais atribuindo-as os menores valoresnecessários para obter factibilidade
0.3 (0) + 0.4 (0) + x3 ≥ 2 ⇒ x3 = 20.4 (0) + 0.2 (0) + x4 ≥ 1.5 ⇒ x4 = 1.50.2 (0) + 0.3 (0) + x5 ≥ 0.5 ⇒ x5 = 0.5
solução da Fase I: ( 4 4 0 0 0 ) factível ⇒ ( 4 4 ) solução inicial para Fase II
Modelo artificial
28
DCA-FEEC-Unicamp
1 - Modelo auxiliar: max f − M ( soma das variáveis artificiais ) oumin f + M ( soma das variáveis artificiais )
1 - Teste I: Se Big-M termina em uma solução local com todas as variáveisartificiais nulas, então os componentes restantes constituem uma soluçãoótima para o problema original
2 -Teste II: se M é suficientemente grande e Big-M termina em um soluçãoótima global com alguma variável artificial positiva, então o problemaoriginalé infactível
3 - Teste III: se M é suficientemente grande e Big-M termina em um soluçãoótima local, com alguma variável artificial positiva, ou o muliplicador Mnão é grande o suficicente, nada se pode dizer. Repetir algoritmo ou comvalor M maior, ou com outra solução inicial.
Método Big-M
29
DCA-FEEC-Unicamp
Método Big-M: exemplo
min 20x1 + 15x2 + M (x3 + x4 + x5 )sa 0.3x1 + 0.4x2 + x3 ≥ 2.0
0.4x1 + 0.2x2 + x4 ≥ 1.50.2x1 + 0.3x2 + x5 ≥ 0.5
x1 ≤ 9x2 ≤ 6
x1, x2, x3, x4, x5 ≥ 0
xo = ( 0 0 2 1.5 0.5 )
M = 10.000 ⇒ x* = ( 2 3.5 0 0 0 )
30
Este material refere-se às notas de aula do curso EA 044 Planejamento e Análise de Sistemas de Produção da Faculdade de Engenharia Elétrica e de Computação da Unicamp. Não substitui o livro texto, as referências recomendadas e nem as aulas expositivas. Este material não pode ser reproduzido sem autorização prévia dos autores. Quando autorizado, seu uso é exclusivo para atividades de ensino e pesquisa em instituições sem fins lucrativos.
Observação
DCA-FEEC-UnicampProfFernandoGomide